UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

301 lines 28.5 kB
/** * @fileoverview added by tsickle * Generated from: popconfirm.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { __decorate, __extends, __metadata } from "tslib"; /** * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE */ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ComponentFactoryResolver, Directive, ElementRef, EventEmitter, Host, Input, Optional, Output, Renderer2, ViewContainerRef, ViewEncapsulation } from '@angular/core'; import { zoomBigMotion } from 'ng-zorro-antd/core/animation'; import { NzNoAnimationDirective } from 'ng-zorro-antd/core/no-animation'; import { InputBoolean } from 'ng-zorro-antd/core/util'; import { NzTooltipBaseDirective, NzToolTipComponent } from 'ng-zorro-antd/tooltip'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; var NzPopconfirmDirective = /** @class */ (function (_super) { __extends(NzPopconfirmDirective, _super); function NzPopconfirmDirective(elementRef, hostView, resolver, renderer, noAnimation) { var _this = _super.call(this, elementRef, hostView, resolver, renderer, noAnimation) || this; _this.nzCondition = false; _this.nzPopconfirmShowArrow = true; /** * @deprecated 10.0.0. This is deprecated and going to be removed in 10.0.0. * Please use a more specific API. Like `nzTooltipTrigger`. */ _this.nzTrigger = 'click'; // tslint:disable-next-line:no-output-rename _this.specificVisibleChange = new EventEmitter(); _this.nzOnCancel = new EventEmitter(); _this.nzOnConfirm = new EventEmitter(); _this.componentFactory = _this.resolver.resolveComponentFactory(NzPopconfirmComponent); _this.needProxyProperties = [ 'nzOverlayClassName', 'nzOverlayStyle', 'nzMouseEnterDelay', 'nzMouseLeaveDelay', 'nzVisible', 'nzOkText', 'nzOkType', 'nzCancelText', 'nzCondition', 'nzIcon', 'nzPopconfirmShowArrow' ]; return _this; } /** * @override */ /** * @override * @protected * @return {?} */ NzPopconfirmDirective.prototype.createComponent = /** * @override * @protected * @return {?} */ function () { var _this = this; _super.prototype.createComponent.call(this); ((/** @type {?} */ (this.component))).nzOnCancel.pipe(takeUntil(this.destroy$)).subscribe((/** * @return {?} */ function () { _this.nzOnCancel.emit(); })); ((/** @type {?} */ (this.component))).nzOnConfirm.pipe(takeUntil(this.destroy$)).subscribe((/** * @return {?} */ function () { _this.nzOnConfirm.emit(); })); }; NzPopconfirmDirective.decorators = [ { type: Directive, args: [{ selector: '[nz-popconfirm]', exportAs: 'nzPopconfirm', host: { '[class.ant-popover-open]': 'visible' } },] } ]; /** @nocollapse */ NzPopconfirmDirective.ctorParameters = function () { return [ { type: ElementRef }, { type: ViewContainerRef }, { type: ComponentFactoryResolver }, { type: Renderer2 }, { type: NzNoAnimationDirective, decorators: [{ type: Host }, { type: Optional }] } ]; }; NzPopconfirmDirective.propDecorators = { specificTitle: [{ type: Input, args: ['nzPopconfirmTitle',] }], directiveNameTitle: [{ type: Input, args: ['nz-popconfirm',] }], specificTrigger: [{ type: Input, args: ['nzPopconfirmTrigger',] }], specificPlacement: [{ type: Input, args: ['nzPopconfirmPlacement',] }], specificOrigin: [{ type: Input, args: ['nzPopconfirmOrigin',] }], specificMouseEnterDelay: [{ type: Input, args: ['nzPopconfirmMouseEnterDelay',] }], specificMouseLeaveDelay: [{ type: Input, args: ['nzPopconfirmMouseLeaveDelay',] }], specificOverlayClassName: [{ type: Input, args: ['nzPopconfirmOverlayClassName',] }], specificOverlayStyle: [{ type: Input, args: ['nzPopconfirmOverlayStyle',] }], nzOkText: [{ type: Input }], nzOkType: [{ type: Input }], nzCancelText: [{ type: Input }], nzIcon: [{ type: Input }], nzCondition: [{ type: Input }], nzPopconfirmShowArrow: [{ type: Input }], nzTrigger: [{ type: Input }], specificVisible: [{ type: Input, args: ['nzPopconfirmVisible',] }], specificVisibleChange: [{ type: Output, args: ['nzPopconfirmVisibleChange',] }], nzOnCancel: [{ type: Output }], nzOnConfirm: [{ type: Output }] }; __decorate([ InputBoolean(), __metadata("design:type", Boolean) ], NzPopconfirmDirective.prototype, "nzCondition", void 0); __decorate([ InputBoolean(), __metadata("design:type", Boolean) ], NzPopconfirmDirective.prototype, "nzPopconfirmShowArrow", void 0); return NzPopconfirmDirective; }(NzTooltipBaseDirective)); export { NzPopconfirmDirective }; if (false) { /** @type {?} */ NzPopconfirmDirective.ngAcceptInputType_nzCondition; /** @type {?} */ NzPopconfirmDirective.ngAcceptInputType_nzPopconfirmShowArrow; /** @type {?} */ NzPopconfirmDirective.prototype.specificTitle; /** @type {?} */ NzPopconfirmDirective.prototype.directiveNameTitle; /** @type {?} */ NzPopconfirmDirective.prototype.specificTrigger; /** @type {?} */ NzPopconfirmDirective.prototype.specificPlacement; /** @type {?} */ NzPopconfirmDirective.prototype.specificOrigin; /** @type {?} */ NzPopconfirmDirective.prototype.specificMouseEnterDelay; /** @type {?} */ NzPopconfirmDirective.prototype.specificMouseLeaveDelay; /** @type {?} */ NzPopconfirmDirective.prototype.specificOverlayClassName; /** @type {?} */ NzPopconfirmDirective.prototype.specificOverlayStyle; /** @type {?} */ NzPopconfirmDirective.prototype.nzOkText; /** @type {?} */ NzPopconfirmDirective.prototype.nzOkType; /** @type {?} */ NzPopconfirmDirective.prototype.nzCancelText; /** @type {?} */ NzPopconfirmDirective.prototype.nzIcon; /** @type {?} */ NzPopconfirmDirective.prototype.nzCondition; /** @type {?} */ NzPopconfirmDirective.prototype.nzPopconfirmShowArrow; /** * @deprecated 10.0.0. This is deprecated and going to be removed in 10.0.0. * Please use a more specific API. Like `nzTooltipTrigger`. * @type {?} */ NzPopconfirmDirective.prototype.nzTrigger; /** @type {?} */ NzPopconfirmDirective.prototype.specificVisible; /** @type {?} */ NzPopconfirmDirective.prototype.specificVisibleChange; /** @type {?} */ NzPopconfirmDirective.prototype.nzOnCancel; /** @type {?} */ NzPopconfirmDirective.prototype.nzOnConfirm; /** * @type {?} * @protected */ NzPopconfirmDirective.prototype.componentFactory; /** * @type {?} * @protected */ NzPopconfirmDirective.prototype.needProxyProperties; } var NzPopconfirmComponent = /** @class */ (function (_super) { __extends(NzPopconfirmComponent, _super); function NzPopconfirmComponent(cdr, noAnimation) { var _this = _super.call(this, cdr, noAnimation) || this; _this.noAnimation = noAnimation; _this.nzCondition = false; _this.nzPopconfirmShowArrow = true; _this.nzOkType = 'primary'; _this.nzOnCancel = new Subject(); _this.nzOnConfirm = new Subject(); _this._trigger = 'click'; _this._prefix = 'ant-popover-placement'; _this._hasBackdrop = true; return _this; } /** * @return {?} */ NzPopconfirmComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { _super.prototype.ngOnDestroy.call(this); this.nzOnCancel.complete(); this.nzOnConfirm.complete(); }; /** * @override */ /** * @override * @return {?} */ NzPopconfirmComponent.prototype.show = /** * @override * @return {?} */ function () { if (!this.nzCondition) { _super.prototype.show.call(this); } else { this.onConfirm(); } }; /** * @return {?} */ NzPopconfirmComponent.prototype.onCancel = /** * @return {?} */ function () { this.nzOnCancel.next(); _super.prototype.hide.call(this); }; /** * @return {?} */ NzPopconfirmComponent.prototype.onConfirm = /** * @return {?} */ function () { this.nzOnConfirm.next(); _super.prototype.hide.call(this); }; NzPopconfirmComponent.decorators = [ { type: Component, args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, selector: 'nz-popconfirm', exportAs: 'nzPopconfirmComponent', preserveWhitespaces: false, animations: [zoomBigMotion], template: "\n <ng-template\n #overlay=\"cdkConnectedOverlay\"\n cdkConnectedOverlay\n nzConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayHasBackdrop]=\"_hasBackdrop\"\n (backdropClick)=\"hide()\"\n (detach)=\"hide()\"\n (positionChange)=\"onPositionChange($event)\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayOpen]=\"_visible\"\n >\n <div\n class=\"ant-popover\"\n [ngClass]=\"_classMap\"\n [ngStyle]=\"nzOverlayStyle\"\n [@.disabled]=\"noAnimation?.nzNoAnimation\"\n [nzNoAnimation]=\"noAnimation?.nzNoAnimation\"\n [@zoomBigMotion]=\"'active'\"\n >\n <div class=\"ant-popover-content\">\n <div class=\"ant-popover-arrow\" *ngIf=\"nzPopconfirmShowArrow\"></div>\n <div class=\"ant-popover-inner\">\n <div>\n <div class=\"ant-popover-inner-content\">\n <div class=\"ant-popover-message\">\n <ng-container *nzStringTemplateOutlet=\"nzTitle\">\n <ng-container *nzStringTemplateOutlet=\"nzIcon; let icon\">\n <i nz-icon [nzType]=\"icon || 'exclamation-circle'\" nzTheme=\"fill\"></i>\n </ng-container>\n <div class=\"ant-popover-message-title\">{{ nzTitle }}</div>\n </ng-container>\n </div>\n <div class=\"ant-popover-buttons\">\n <button nz-button [nzSize]=\"'small'\" (click)=\"onCancel()\">\n <ng-container *ngIf=\"nzCancelText\">{{ nzCancelText }}</ng-container>\n <ng-container *ngIf=\"!nzCancelText\">{{ 'Modal.cancelText' | nzI18n }}</ng-container>\n </button>\n <button nz-button [nzSize]=\"'small'\" [nzType]=\"nzOkType\" (click)=\"onConfirm()\">\n <ng-container *ngIf=\"nzOkText\">{{ nzOkText }}</ng-container>\n <ng-container *ngIf=\"!nzOkText\">{{ 'Modal.okText' | nzI18n }}</ng-container>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n " }] } ]; /** @nocollapse */ NzPopconfirmComponent.ctorParameters = function () { return [ { type: ChangeDetectorRef }, { type: NzNoAnimationDirective, decorators: [{ type: Host }, { type: Optional }] } ]; }; return NzPopconfirmComponent; }(NzToolTipComponent)); export { NzPopconfirmComponent }; if (false) { /** @type {?} */ NzPopconfirmComponent.prototype.nzCancelText; /** @type {?} */ NzPopconfirmComponent.prototype.nzCondition; /** @type {?} */ NzPopconfirmComponent.prototype.nzPopconfirmShowArrow; /** @type {?} */ NzPopconfirmComponent.prototype.nzIcon; /** @type {?} */ NzPopconfirmComponent.prototype.nzOkText; /** @type {?} */ NzPopconfirmComponent.prototype.nzOkType; /** @type {?} */ NzPopconfirmComponent.prototype.nzOnCancel; /** @type {?} */ NzPopconfirmComponent.prototype.nzOnConfirm; /** * @type {?} * @protected */ NzPopconfirmComponent.prototype._trigger; /** @type {?} */ NzPopconfirmComponent.prototype._prefix; /** @type {?} */ NzPopconfirmComponent.prototype._hasBackdrop; /** @type {?} */ NzPopconfirmComponent.prototype.noAnimation; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wY29uZmlybS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXpvcnJvLWFudGQvcG9wY29uZmlybS8iLCJzb3VyY2VzIjpbInBvcGNvbmZpcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUtBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCx3QkFBd0IsRUFDeEIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osSUFBSSxFQUNKLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFFVCxnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUd6RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFvQixNQUFNLHVCQUF1QixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDO0lBTzJDLHlDQUFzQjtJQW1EL0QsK0JBQ0UsVUFBc0IsRUFDdEIsUUFBMEIsRUFDMUIsUUFBa0MsRUFDbEMsUUFBbUIsRUFDQyxXQUFvQztRQUwxRCxZQU9FLGtCQUFNLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsU0FDN0Q7UUExQ3dCLGlCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLDJCQUFxQixHQUFZLElBQUksQ0FBQzs7Ozs7UUFNdEQsZUFBUyxHQUFxQixPQUFPLENBQUM7O1FBS0QsMkJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUMvRSxnQkFBVSxHQUFH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aUJBQWlCLENBQUMsSUFBSTtvQkFDckMsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLG1CQUFtQixFQUFFLEtBQUs7b0JBQzFCLFVBQVUsRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDM0IsUUFBUSxFQUFFLGd0RUFrRFQ7aUJBQ0Y7Ozs7Z0JBeEtDLGlCQUFpQjtnQkFtQlYsc0JBQXNCLHVCQXNLUSxJQUFJLFlBQUksUUFBUTs7SUErQnZELDRCQUFDO0NBQUEsQUExR0QsQ0EyRDJDLGtCQUFrQixHQStDNUQ7U0EvQ1kscUJBQXFCOzs7SUFDaEMsNkNBQXNCOztJQUN0Qiw0Q0FBb0I7O0lBQ3BCLHNEQUE2Qjs7SUFDN0IsdUNBQW9DOztJQUNwQyx5Q0FBa0I7O0lBQ2xCLHlDQUFtQzs7SUFFbkMsMkNBQTBDOztJQUMxQyw0Q0FBMkM7Ozs7O0lBRTNDLHlDQUErQzs7SUFFL0Msd0NBQWtDOztJQUNsQyw2Q0FBb0I7O0lBRWdCLDRDQUErRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9naXRodWIuY29tL05HLVpPUlJPL25nLXpvcnJvLWFudGQvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE56QnV0dG9uVHlwZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvYnV0dG9uJztcbmltcG9ydCB7IHpvb21CaWdNb3Rpb24gfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvYW5pbWF0aW9uJztcbmltcG9ydCB7IE56Tm9BbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvbm8tYW5pbWF0aW9uJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgTmdTdHlsZUludGVyZmFjZSwgTnpUU1R5cGUgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQgeyBJbnB1dEJvb2xlYW4gfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdXRpbCc7XG5pbXBvcnQgeyBOelRvb2x0aXBCYXNlRGlyZWN0aXZlLCBOelRvb2xUaXBDb21wb25lbnQsIE56VG9vbHRpcFRyaWdnZXIgfSBmcm9tICduZy16b3Jyby1hbnRkL3Rvb2x0aXAnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbnotcG9wY29uZmlybV0nLFxuICBleHBvcnRBczogJ256UG9wY29uZmlybScsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmFudC1wb3BvdmVyLW9wZW5dJzogJ3Zpc2libGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTnpQb3Bjb25maXJtRGlyZWN0aXZlIGV4dGVuZHMgTnpUb29sdGlwQmFzZURpcmVjdGl2ZSB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9uekNvbmRpdGlvbjogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbnpQb3Bjb25maXJtU2hvd0Fycm93OiBCb29sZWFuSW5wdXQ7XG5cbiAgQElucHV0KCduelBvcGNvbmZpcm1UaXRsZScpIHNwZWNpZmljVGl0bGU/OiBOelRTVHlwZTtcbiAgQElucHV0KCduei1wb3Bjb25maXJtJykgZGlyZWN0aXZlTmFtZVRpdGxlPzogTnpUU1R5cGUgfCBudWxsO1xuICBASW5wdXQoJ256UG9wY29uZmlybVRyaWdnZXInKSBzcGVjaWZpY1RyaWdnZXI/OiBOelRvb2x0aXBUcmlnZ2VyO1xuICBASW5wdXQoJ256UG9wY29uZmlybVBsYWNlbWVudCcpIHNwZWNpZmljUGxhY2VtZW50Pzogc3RyaW5nO1xuICBASW5wdXQoJ256UG9wY29uZmlybU9yaWdpbicpIHNwZWNpZmljT3JpZ2luPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gIEBJbnB1dCgnbnpQb3Bjb25maXJtTW91c2VFbnRlckRlbGF5Jykgc3BlY2lmaWNNb3VzZUVudGVyRGVsYXk/OiBudW1iZXI7XG4gIEBJbnB1dCgnbnpQb3Bjb25maXJtTW91c2VMZWF2ZURlbGF5Jykgc3BlY2lmaWNNb3VzZUxlYXZlRGVsYXk/OiBudW1iZXI7XG4gIEBJbnB1dCgnbnpQb3Bjb25maXJtT3ZlcmxheUNsYXNzTmFtZScpIHNwZWNpZmljT3ZlcmxheUNsYXNzTmFtZT86IHN0cmluZztcbiAgQElucHV0KCduelBvcGNvbmZpcm1PdmVybGF5U3R5bGUnKSBzcGVjaWZpY092ZXJsYXlTdHlsZT86IE5nU3R5bGVJbnRlcmZhY2U7XG4gIEBJbnB1dCgpIG56T2tUZXh0Pzogc3RyaW5nO1xuICBASW5wdXQoKSBuek9rVHlwZT86IHN0cmluZztcbiAgQElucHV0KCkgbnpDYW5jZWxUZXh0Pzogc3RyaW5nO1xuICBASW5wdXQoKSBuekljb24/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx2b2lkPjtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIG56Q29uZGl0aW9uOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBuelBvcGNvbmZpcm1TaG93QXJyb3c6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCAxMC4wLjAuIFRoaXMgaXMgZGVwcmVjYXRlZCBhbmQgZ29pbmcgdG8gYmUgcmVtb3ZlZCBpbiAxMC4wLjAuXG4gICAqIFBsZWFzZSB1c2UgYSBtb3JlIHNwZWNpZmljIEFQSS4gTGlrZSBgbnpUb29sdGlwVHJpZ2dlcmAuXG4gICAqL1xuICBASW5wdXQoKSBuelRyaWdnZXI6IE56VG9vbHRpcFRyaWdnZXIgPSAnY2xpY2snO1xuXG4gIEBJbnB1dCgnbnpQb3Bjb25maXJtVmlzaWJsZScpIHNwZWNpZmljVmlzaWJsZT86IGJvb2xlYW47XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLW91dHB1dC1yZW5hbWVcbiAgQE91dHB1dCgnbnpQb3Bjb25maXJtVmlzaWJsZUNoYW5nZScpIHJlYWRvbmx5IHNwZWNpZmljVmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IG56T25DYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBuek9uQ29uZmlybSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29tcG9uZW50RmFjdG9yeTogQ29tcG9uZW50RmFjdG9yeTxOelBvcGNvbmZpcm1Db21wb25lbnQ+ID0gdGhpcy5yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShcbiAgICBOelBvcGNvbmZpcm1Db21wb25lbnRcbiAgKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmVlZFByb3h5UHJvcGVydGllcyA9IFtcbiAgICAnbnpPdmVybGF5Q2xhc3NOYW1lJyxcbiAgICAnbnpPdmVybGF5U3R5bGUnLFxuICAgICduek1vdXNlRW50ZXJEZWxheScsXG4gICAgJ256TW91c2VMZWF2ZURlbGF5JyxcbiAgICAnbnpWaXNpYmxlJyxcbiAgICAnbnpPa1RleHQnLFxuICAgICduek9rVHlwZScsXG4gICAgJ256Q2FuY2VsVGV4dCcsXG4gICAgJ256Q29uZGl0aW9uJyxcbiAgICAnbnpJY29uJyxcbiAgICAnbnpQb3Bjb25maXJtU2hvd0Fycm93J1xuICBdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgaG9zdFZpZXc6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgbm9BbmltYXRpb24/OiBOek5vQW5pbWF0aW9uRGlyZWN0aXZlXG4gICkge1xuICAgIHN1cGVyKGVsZW1lbnRSZWYsIGhvc3RWaWV3LCByZXNvbHZlciwgcmVuZGVyZXIsIG5vQW5pbWF0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3ZlcnJpZGVcbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVDb21wb25lbnQoKTogdm9pZCB7XG4gICAgc3VwZXIuY3JlYXRlQ29tcG9uZW50KCk7XG5cbiAgICAodGhpcy5jb21wb25lbnQgYXMgTnpQb3Bjb25maXJtQ29tcG9uZW50KS5uek9uQ2FuY2VsLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5uek9uQ2FuY2VsLmVtaXQoKTtcbiAgICB9KTtcbiAgICAodGhpcy5jb21wb25lbnQgYXMgTnpQb3Bjb25maXJtQ29tcG9uZW50KS5uek9uQ29uZmlybS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMubnpPbkNvbmZpcm0uZW1pdCgpO1xuICAgIH0pO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc2VsZWN0b3I6ICduei1wb3Bjb25maXJtJyxcbiAgZXhwb3J0QXM6ICduelBvcGNvbmZpcm1Db21wb25lbnQnLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgYW5pbWF0aW9uczogW3pvb21CaWdNb3Rpb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgI292ZXJsYXk9XCJjZGtDb25uZWN0ZWRPdmVybGF5XCJcbiAgICAgIGNka0Nvbm5lY3RlZE92ZXJsYXlcbiAgICAgIG56Q29ubmVjdGVkT3ZlcmxheVxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcmlnaW5dPVwib3JpZ2luXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5SGFzQmFja2Ryb3BdPVwiX2hhc0JhY2tkcm9wXCJcbiAgICAgIChiYWNrZHJvcENsaWNrKT1cImhpZGUoKVwiXG4gICAgICAoZGV0YWNoKT1cImhpZGUoKVwiXG4gICAgICAocG9zaXRpb25DaGFuZ2UpPVwib25Qb3NpdGlvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25zXT1cIl9wb3NpdGlvbnNcIlxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cIl92aXNpYmxlXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYW50LXBvcG92ZXJcIlxuICAgICAgICBbbmdDbGFzc109XCJfY2xhc3NNYXBcIlxuICAgICAgICBbbmdTdHlsZV09XCJuek92ZXJsYXlTdHlsZVwiXG4gICAgICAgIFtALmRpc2FibGVkXT1cIm5vQW5pbWF0aW9uPy5uek5vQW5pbWF0aW9uXCJcbiAgICAgICAgW256Tm9BbmltYXRpb25dPVwibm9BbmltYXRpb24/Lm56Tm9BbmltYXRpb25cIlxuICAgICAgICBbQHpvb21CaWdNb3Rpb25dPVwiJ2FjdGl2ZSdcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LXBvcG92ZXItY29udGVudFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtcG9wb3Zlci1hcnJvd1wiICpuZ0lmPVwibnpQb3Bjb25maXJtU2hvd0Fycm93XCI+PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFudC1wb3BvdmVyLWlubmVyXCI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LXBvcG92ZXItaW5uZXItY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtcG9wb3Zlci1tZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuelN0cmluZ1RlbXBsYXRlT3V0bGV0PVwibnpUaXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuelN0cmluZ1RlbXBsYXRlT3V0bGV0PVwibnpJY29uOyBsZXQgaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxpIG56LWljb24gW256VHlwZV09XCJpY29uIHx8ICdleGNsYW1hdGlvbi1jaXJjbGUnXCIgbnpUaGVtZT1cImZpbGxcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW50LXBvcG92ZXItbWVzc2FnZS10aXRsZVwiPnt7IG56VGl0bGUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnQtcG9wb3Zlci1idXR0b25zXCI+XG4gICAgICAgICAgICAgICAgICA8YnV0dG9uIG56LWJ1dHRvbiBbbnpTaXplXT1cIidzbWFsbCdcIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibnpDYW5jZWxUZXh0XCI+e3sgbnpDYW5jZWxUZXh0IH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbnpDYW5jZWxUZXh0XCI+e3sgJ01vZGFsLmNhbmNlbFRleHQnIHwgbnpJMThuIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDxidXR0b24gbnotYnV0dG9uIFtuelNpemVdPVwiJ3NtYWxsJ1wiIFtuelR5cGVdPVwibnpPa1R5cGVcIiAoY2xpY2spPVwib25Db25maXJtKClcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm56T2tUZXh0XCI+e3sgbnpPa1RleHQgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFuek9rVGV4dFwiPnt7ICdNb2RhbC5va1RleHQnIHwgbnpJMThuIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgXG59KVxuZXhwb3J0IGNsYXNzIE56UG9wY29uZmlybUNvbXBvbmVudCBleHRlbmRzIE56VG9vbFRpcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIG56Q2FuY2VsVGV4dD86IHN0cmluZztcbiAgbnpDb25kaXRpb24gPSBmYWxzZTtcbiAgbnpQb3Bjb25maXJtU2hvd0Fycm93ID0gdHJ1ZTtcbiAgbnpJY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dm9pZD47XG4gIG56T2tUZXh0Pzogc3RyaW5nO1xuICBuek9rVHlwZTogTnpCdXR0b25UeXBlID0gJ3ByaW1hcnknO1xuXG4gIHJlYWRvbmx5IG56T25DYW5jZWwgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICByZWFkb25seSBuek9uQ29uZmlybSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJvdGVjdGVkIF90cmlnZ2VyOiBOelRvb2x0aXBUcmlnZ2VyID0gJ2NsaWNrJztcblxuICBfcHJlZml4ID0gJ2FudC1wb3BvdmVyLXBsYWNlbWVudCc7XG4gIF9oYXNCYWNrZHJvcCA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgQEhvc3QoKSBAT3B0aW9uYWwoKSBwdWJsaWMgbm9BbmltYXRpb24/OiBOek5vQW5pbWF0aW9uRGlyZWN0aXZlKSB7XG4gICAgc3VwZXIoY2RyLCBub0FuaW1hdGlvbik7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuXG4gICAgdGhpcy5uek9uQ2FuY2VsLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5uek9uQ29uZmlybS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvdmVycmlkZVxuICAgKi9cbiAgc2hvdygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubnpDb25kaXRpb24pIHtcbiAgICAgIHN1cGVyLnNob3coKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbkNvbmZpcm0oKTtcbiAgICB9XG4gIH1cblxuICBvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICB0aGlzLm56T25DYW5jZWwubmV4dCgpO1xuICAgIHN1cGVyLmhpZGUoKTtcbiAgfVxuXG4gIG9uQ29uZmlybSgpOiB2b2lkIHtcbiAgICB0aGlzLm56T25Db25maXJtLm5leHQoKTtcbiAgICBzdXBlci5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==