Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Bower components Debian packages RPM packages NuGet packages

vipera-npm-registry / motif-web-admin-core   js

Repository URL to install this package:

Version: 0.3.1 

/ esm2015 / lib / sections / WebContent / components / dialog / webcontent-update-dialog.js

/**
 * @fileoverview added by tsickle
 * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
 */
import { ApplicationSelectorComboBoxComponent } from './../../../../components/UI/selectors/application-selector-combobox-component';
import { DomainSelectorComboBoxComponent } from './../../../../components/UI/selectors/domain-selector-combobox-component';
import { Component, ViewChild, EventEmitter, Output } from '@angular/core';
import { NGXLogger } from 'web-console-core';
/** @type {?} */
const LOG_TAG = '[WebContentUpdateDialogComponent]';
/**
 * @record
 */
export function UpdateDialogResult() { }
if (false) {
    /** @type {?} */
    UpdateDialogResult.prototype.domain;
    /** @type {?} */
    UpdateDialogResult.prototype.application;
    /** @type {?} */
    UpdateDialogResult.prototype.context;
    /** @type {?} */
    UpdateDialogResult.prototype.bundleVersion;
    /** @type {?} */
    UpdateDialogResult.prototype.bundleName;
}
export class WebContentUpdateDialogComponent {
    /**
     * @param {?} logger
     */
    constructor(logger) {
        this.logger = logger;
        this.contextEditingWarningDisplay = false;
        this.confirm = new EventEmitter();
        this.cancel = new EventEmitter();
    }
    /**
     * @return {?}
     */
    ngOnInit() {
        this.logger.debug(LOG_TAG, 'Initializing...');
    }
    /**
     * @param {?} bundleName
     * @param {?} bundleVersion
     * @param {?} domain
     * @param {?} application
     * @param {?} context
     * @return {?}
     */
    show(bundleName, bundleVersion, domain, application, context) {
        this.logger.debug(LOG_TAG, 'show called for: ', bundleName, bundleVersion, domain, application, context);
        this.prepare(bundleName, bundleVersion, domain, application, context);
        this.display = true;
        this.dirty = false;
    }
    /**
     * @return {?}
     */
    hide() {
        this.display = false;
    }
    /**
     * @private
     * @param {?} bundleName
     * @param {?} bundleVersion
     * @param {?} domain
     * @param {?} application
     * @param {?} context
     * @return {?}
     */
    prepare(bundleName, bundleVersion, domain, application, context) {
        this.logger.debug(LOG_TAG, 'prepare called for: ', bundleName, bundleVersion, domain, application, context);
        // fill the fields
        this.domain = domain;
        this.application = application;
        this.context = context ? '/' + context : undefined;
        this.bundleName = bundleName;
        this.bundleVersion = bundleVersion;
        if (domain) {
            this.domainSelector.selectedDomainName = domain;
        }
        else {
            this.domainSelector.selectedDomain = null;
        }
        if (application) {
            this.applicationSelector.selectedApplicationName = application;
        }
        else {
            this.applicationSelector.selectedApplication = null;
        }
    }
    /**
     * @return {?}
     */
    onCancel() {
        this.display = false;
        this.cancel.emit();
    }
    /**
     * @return {?}
     */
    onConfirm() {
        this.display = false;
        this.confirm.emit({
            application: this.selectedApplication.name,
            bundleName: this.bundleName,
            bundleVersion: this.bundleVersion,
            domain: this.selectedDomain.name,
            context: this.context
        });
    }
    /**
     * @return {?}
     */
    onRemove() {
        this.display = false;
        this.confirm.emit({
            application: undefined,
            bundleName: this.bundleName,
            bundleVersion: this.bundleVersion,
            domain: undefined,
            context: undefined
        });
    }
    /**
     * @return {?}
     */
    onContextChange() {
        this.dirty = true;
    }
}
WebContentUpdateDialogComponent.decorators = [
    { type: Component, args: [{
                selector: 'wa-webcontent-update-dialog',
                template: "<p-dialog\n  #updateDialog\n  [(visible)]=\"display\"\n  [modal]=\"true\"\n  [responsive]=\"true\"\n  [style]=\"{ width: '450px', minWidth: '400px' }\"\n  [minY]=\"70\"\n  [baseZIndex]=\"10000\"\n>\n  <p-header> Update Web Content </p-header>\n\n  <label class=\"switch-control-label\"> \n    Domain\n</label>\n  <wc-domain-selector-combobox #domainSelector [(ngModel)]=\"selectedDomain\" [disabled]=\"domain?true:null\"></wc-domain-selector-combobox>\n\n  <label class=\"switch-control-label\"> \n    Application\n  </label>\n  <wc-application-selector-combobox #applicationSelector [domain]=\"(selectedDomain ? selectedDomain.name : null)\" [(ngModel)]=\"selectedApplication\"  [disabled]=\"application?true:null\"></wc-application-selector-combobox>\n\n<kendo-textbox-container\nfloatingLabel=\"Context\"\nstyle=\"width: 100%;\"\n>\n<input kendoTextBox [(ngModel)]=\"context\" required (keydown)=\"onContextChange()\"/>\n</kendo-textbox-container>\n<label class=\"warning-label\" *ngIf=\"contextEditingWarningDisplay\">Invalid Context</label>\n\n<p-footer>\n  <kendo-buttongroup look=\"flat\">\n    <button kendoButton [toggleable]=\"false\" (click)=\"onCancel();\">Cancel</button>\n    <button kendoButton [toggleable]=\"false\" [primary]=\"true\" (click)=\"onConfirm();\">Update</button>\n    <button kendoButton [disabled]=\"(context&&!dirty)?false:true\" [toggleable]=\"false\" [primary]=\"true\" (click)=\"onRemove();\">Remove</button>\n  </kendo-buttongroup>\n</p-footer>\n\n</p-dialog>\n",
                styles: [""]
            }] }
];
/** @nocollapse */
WebContentUpdateDialogComponent.ctorParameters = () => [
    { type: NGXLogger }
];
WebContentUpdateDialogComponent.propDecorators = {
    confirm: [{ type: Output }],
    cancel: [{ type: Output }],
    domainSelector: [{ type: ViewChild, args: ['domainSelector',] }],
    applicationSelector: [{ type: ViewChild, args: ['applicationSelector',] }]
};
if (false) {
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.bundleName;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.bundleVersion;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.display;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.domain;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.application;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.context;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.dirty;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.selectedDomain;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.selectedApplication;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.contextEditingWarningDisplay;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.confirm;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.cancel;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.domainSelector;
    /** @type {?} */
    WebContentUpdateDialogComponent.prototype.applicationSelector;
    /**
     * @type {?}
     * @private
     */
    WebContentUpdateDialogComponent.prototype.logger;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViY29udGVudC11cGRhdGUtZGlhbG9nLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbW90aWYtd2ViLWFkbWluLWNvcmUvIiwic291cmNlcyI6WyJsaWIvc2VjdGlvbnMvV2ViQ29udGVudC9jb21wb25lbnRzL2RpYWxvZy93ZWJjb250ZW50LXVwZGF0ZS1kaWFsb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLCtFQUErRSxDQUFDO0FBQ3JJLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQzNILE9BQU8sRUFBRSxTQUFTLEVBQWlCLFNBQVMsRUFBeUIsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O01BR3ZDLE9BQU8sR0FBRyxtQ0FBbUM7Ozs7QUFFbkQsd0NBTUM7OztJQUxHLG9DQUFlOztJQUNmLHlDQUFvQjs7SUFDcEIscUNBQWdCOztJQUNoQiwyQ0FBc0I7O0lBQ3RCLHdDQUFtQjs7QUFRdkIsTUFBTSxPQUFPLCtCQUErQjs7OztJQXFCeEMsWUFBb0IsTUFBaUI7UUFBakIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQVJyQyxpQ0FBNEIsR0FBRyxLQUFLLENBQUM7UUFFM0IsWUFBTyxHQUFxQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9ELFdBQU0sR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUtsQixDQUFDOzs7O0lBRXpDLFFBQVE7UUFDSixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUNsRCxDQUFDOzs7Ozs7Ozs7SUFFTSxJQUFJLENBQUMsVUFBa0IsRUFBRSxhQUFxQixFQUFFLE1BQWMsRUFBRSxXQUFtQixFQUFFLE9BQWU7UUFDdkcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxF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O2tDQUMxQixTQUFTLFNBQUMscUJBQXFCOzs7O0lBakJoQyxxREFBbUI7O0lBQ25CLHdEQUFzQjs7SUFDdEIsa0RBQWlCOztJQUNqQixpREFBZTs7SUFDZixzREFBb0I7O0lBQ3BCLGtEQUFnQjs7SUFDaEIsZ0RBQWU7O0lBRWYseURBQW9COztJQUNwQiw4REFBeUI7O0lBRXpCLHVFQUFxQzs7SUFFckMsa0RBQXlFOztJQUN6RSxpREFBMEQ7O0lBRTFELHlEQUE0RTs7SUFDNUUsOERBQTJGOzs7OztJQUUvRSxpREFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHBsaWNhdGlvblNlbGVjdG9yQ29tYm9Cb3hDb21wb25lbnQgfSBmcm9tICcuLy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvVUkvc2VsZWN0b3JzL2FwcGxpY2F0aW9uLXNlbGVjdG9yLWNvbWJvYm94LWNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb21haW5TZWxlY3RvckNvbWJvQm94Q29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzL1VJL3NlbGVjdG9ycy9kb21haW4tc2VsZWN0b3ItY29tYm9ib3gtY29tcG9uZW50JztcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBSZW5kZXJlcjIsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR1hMb2dnZXIgfSBmcm9tICd3ZWItY29uc29sZS1jb3JlJztcbmltcG9ydCB7IFN0cmluZ01hcCB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb21waWxlcl9mYWNhZGVfaW50ZXJmYWNlJztcblxuY29uc3QgTE9HX1RBRyA9ICdbV2ViQ29udGVudFVwZGF0ZURpYWxvZ0NvbXBvbmVudF0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZURpYWxvZ1Jlc3VsdCB7XG4gICAgZG9tYWluOiBzdHJpbmc7XG4gICAgYXBwbGljYXRpb246IHN0cmluZztcbiAgICBjb250ZXh0OiBzdHJpbmc7XG4gICAgYnVuZGxlVmVyc2lvbjogc3RyaW5nO1xuICAgIGJ1bmRsZU5hbWU6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd3YS13ZWJjb250ZW50LXVwZGF0ZS1kaWFsb2cnLFxuICAgIHN0eWxlVXJsczogWycuL3dlYmNvbnRlbnQtdXBkYXRlLWRpYWxvZy5zY3NzJ10sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3dlYmNvbnRlbnQtdXBkYXRlLWRpYWxvZy5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBXZWJDb250ZW50VXBkYXRlRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAgIGJ1bmRsZU5hbWU6IHN0cmluZztcbiAgICBidW5kbGVWZXJzaW9uOiBzdHJpbmc7XG4gICAgZGlzcGxheTogYm9vbGVhbjtcbiAgICBkb21haW46IHN0cmluZztcbiAgICBhcHBsaWNhdGlvbjogc3RyaW5nO1xuICAgIGNvbnRleHQ6IHN0cmluZztcbiAgICBkaXJ0eTogYm9vbGVhbjtcblxuICAgIHNlbGVjdGVkRG9tYWluOiBhbnk7XG4gICAgc2VsZWN0ZWRBcHBsaWNhdGlvbjogYW55O1xuXG4gICAgY29udGV4dEVkaXRpbmdXYXJuaW5nRGlzcGxheSA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpIGNvbmZpcm06IEV2ZW50RW1pdHRlcjxVcGRhdGVEaWFsb2dSZXN1bHQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSBjYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2RvbWFpblNlbGVjdG9yJykgZG9tYWluU2VsZWN0b3I6RG9tYWluU2VsZWN0b3JDb21ib0JveENvbXBvbmVudDtcbiAgICBAVmlld0NoaWxkKCdhcHBsaWNhdGlvblNlbGVjdG9yJykgYXBwbGljYXRpb25TZWxlY3RvcjpBcHBsaWNhdGlvblNlbGVjdG9yQ29tYm9Cb3hDb21wb25lbnQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvZ2dlcjogTkdYTG9nZ2VyKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKExPR19UQUcsICdJbml0aWFsaXppbmcuLi4nKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvdyhidW5kbGVOYW1lOiBzdHJpbmcsIGJ1bmRsZVZlcnNpb246IHN0cmluZywgZG9tYWluOiBzdHJpbmcsIGFwcGxpY2F0aW9uOiBzdHJpbmcsIGNvbnRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhMT0dfVEFHLCAnc2hvdyBjYWxsZWQgZm9yOiAnLGJ1bmRsZU5hbWUsIGJ1bmRsZVZlcnNpb24sIGRvbWFpbiwgYXBwbGljYXRpb24sIGNvbnRleHQpO1xuICAgICAgICB0aGlzLnByZXBhcmUoYnVuZGxlTmFtZSwgYnVuZGxlVmVyc2lvbiwgZG9tYWluLCBhcHBsaWNhdGlvbiwgY29udGV4dCk7XG4gICAgICAgIHRoaXMuZGlzcGxheSA9IHRydWU7XG4gICAgICAgIHRoaXMuZGlydHkgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGlkZSgpIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcmVwYXJlKGJ1bmRsZU5hbWU6IHN0cmluZywgYnVuZGxlVmVyc2lvbjogc3RyaW5nLCBkb21haW46IHN0cmluZywgYXBwbGljYXRpb246IHN0cmluZywgY29udGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKExPR19UQUcsICdwcmVwYXJlIGNhbGxlZCBmb3I6ICcsIGJ1bmRsZU5hbWUsIGJ1bmRsZVZlcnNpb24sIGRvbWFpbiwgYXBwbGljYXRpb24sIGNvbnRleHQpO1xuICAgICAgICAvLyBmaWxsIHRoZSBmaWVsZHNcbiAgICAgICAgdGhpcy5kb21haW4gPSBkb21haW47XG4gICAgICAgIHRoaXMuYXBwbGljYXRpb24gPSBhcHBsaWNhdGlvbjtcbiAgICAgICAgdGhpcy5jb250ZXh0ID0gY29udGV4dCA/ICcvJyArIGNvbnRleHQgOiB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuYnVuZGxlTmFtZSA9IGJ1bmRsZU5hbWU7XG4gICAgICAgIHRoaXMuYnVuZGxlVmVyc2lvbiA9IGJ1bmRsZVZlcnNpb247XG4gICAgICAgIGlmIChkb21haW4pe1xuICAgICAgICAgICAgdGhpcy5kb21haW5TZWxlY3Rvci5zZWxlY3RlZERvbWFpbk5hbWUgPSBkb21haW47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRvbWFpblNlbGVjdG9yLnNlbGVjdGVkRG9tYWluID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYXBwbGljYXRpb24pe1xuICAgICAgICAgICAgdGhpcy5hcHBsaWNhdGlvblNlbGVjdG9yLnNlbGVjdGVkQXBwbGljYXRpb25OYW1lID0gYXBwbGljYXRpb247XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmFwcGxpY2F0aW9uU2VsZWN0b3Iuc2VsZWN0ZWRBcHBsaWNhdGlvbiA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcbiAgICB9XG5cbiAgICBvbkNvbmZpcm0oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbmZpcm0uZW1pdCh7XG4gICAgICAgICAgICBhcHBsaWNhdGlvbiA6IHRoaXMuc2VsZWN0ZWRBcHBsaWNhdGlvbi5uYW1lLFxuICAgICAgICAgICAgYnVuZGxlTmFtZTogdGhpcy5idW5kbGVOYW1lLFxuICAgICAgICAgICAgYnVuZGxlVmVyc2lvbiA6IHRoaXMuYnVuZGxlVmVyc2lvbixcbiAgICAgICAgICAgIGRvbWFpbiA6IHRoaXMuc2VsZWN0ZWREb21haW4ubmFtZSxcbiAgICAgICAgICAgIGNvbnRleHQgOiB0aGlzLmNvbnRleHRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25SZW1vdmUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbmZpcm0uZW1pdCh7XG4gICAgICAgICAgICBhcHBsaWNhdGlvbiA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGJ1bmRsZU5hbWU6IHRoaXMuYnVuZGxlTmFtZSxcbiAgICAgICAgICAgIGJ1bmRsZVZlcnNpb24gOiB0aGlzLmJ1bmRsZVZlcnNpb24sXG4gICAgICAgICAgICBkb21haW4gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBjb250ZXh0IDogdW5kZWZpbmVkXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uQ29udGV4dENoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXJ0eSA9IHRydWU7XG4gICAgfVxufSJdfQ==