@coolon/angular-ui-powerups 16.1.0-aplpha.141 → 16.1.0-aplpha.143

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/esm2022/lib/directives/command.directive.mjs +2 -9
  2. package/esm2022/lib/interaction/activity-context.mjs +3 -0
  3. package/esm2022/lib/interaction/activity.mjs +20 -17
  4. package/esm2022/lib/interaction/components/abstract-confirm-dialog.component.mjs +4 -5
  5. package/esm2022/lib/interaction/components/abstract-dialog.component.mjs +1 -41
  6. package/esm2022/lib/interaction/components/activity-actions/activity-actions.component.mjs +19 -13
  7. package/esm2022/lib/interaction/components/activity-container/activity-container.component.mjs +11 -3
  8. package/esm2022/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.mjs +49 -15
  9. package/esm2022/lib/interaction/components/alert-dialog/alert-dialog.component.mjs +10 -10
  10. package/esm2022/lib/interaction/components/alert-renderer/alert-renderer.component.mjs +55 -0
  11. package/esm2022/lib/interaction/components/confirm-renderer/confirm-renderer.component.mjs +54 -0
  12. package/esm2022/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.mjs +4 -8
  13. package/esm2022/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.mjs +4 -8
  14. package/esm2022/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.mjs +7 -9
  15. package/esm2022/lib/interaction/confirm.mjs +26 -2
  16. package/esm2022/lib/interaction/exports.mjs +4 -1
  17. package/esm2022/lib/interaction/interaction-context-provider.mjs +4 -1
  18. package/esm2022/lib/interaction/interaction-context.mjs +1 -1
  19. package/esm2022/lib/interaction/interaction.module.mjs +18 -8
  20. package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.mjs +7 -2
  21. package/fesm2022/coolon-angular-ui-powerups.mjs +353 -226
  22. package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
  23. package/lib/interaction/activity-context.d.ts +8 -0
  24. package/lib/interaction/activity.d.ts +9 -6
  25. package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +1 -1
  26. package/lib/interaction/components/abstract-dialog.component.d.ts +5 -14
  27. package/lib/interaction/components/activity-actions/activity-actions.component.d.ts +4 -6
  28. package/lib/interaction/components/activity-container/activity-container.component.d.ts +1 -0
  29. package/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.d.ts +3 -3
  30. package/lib/interaction/components/alert-dialog/alert-dialog.component.d.ts +6 -1
  31. package/lib/interaction/components/alert-renderer/alert-renderer.component.d.ts +17 -0
  32. package/lib/interaction/components/confirm-renderer/confirm-renderer.component.d.ts +15 -0
  33. package/lib/interaction/confirm.d.ts +4 -0
  34. package/lib/interaction/exports.d.ts +3 -0
  35. package/lib/interaction/interaction-context-provider.d.ts +6 -0
  36. package/lib/interaction/interaction-context.d.ts +3 -0
  37. package/lib/interaction/interaction.module.d.ts +16 -14
  38. package/package.json +2 -2
@@ -6,6 +6,7 @@ import { findLast } from "lodash-es";
6
6
  import { PlaceRouter } from "../../../place/place-router";
7
7
  import { AbstractInteractionContext } from "../../abstract-interaction-context";
8
8
  import { ActivityRef } from "../../activity-ref";
9
+ import { INTERACTION_CONTEXT } from "../../interaction-context";
9
10
  import { ActivityOutletComponent } from "./activity-outlet/activity-outlet.component";
10
11
  import * as i0 from "@angular/core";
11
12
  import * as i1 from "../../../place/place-router";
@@ -93,6 +94,9 @@ export class ActivityContainerComponent extends AbstractInteractionContext {
93
94
  }
94
95
  return findLast(this.activityRefs, tab => !tab.isComplete());
95
96
  }
97
+ get disableClose() {
98
+ return this.getActiveActivityRef().activity.disableClose;
99
+ }
96
100
  /**
97
101
  * Cancels the current activity and returns true the context is no longer active, false if
98
102
  * there is still another activity running.
@@ -248,11 +252,15 @@ export class ActivityContainerComponent extends AbstractInteractionContext {
248
252
  this.finaliseActivityStates();
249
253
  }
250
254
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityContainerComponent, deps: [{ token: i1.PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
251
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: { dynamicHeight: "dynamicHeight", animationDuration: "animationDuration" }, viewQueries: [{ propertyName: "tabs", first: true, predicate: ["tabs"], descendants: true, static: true }, { propertyName: "activityOutlets", predicate: ActivityOutletComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\"\n [animationDuration]=\"getTabAnimationDuration()\"\n (animationDone)=\"onAnimationDone()\"\n>\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busy$]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.BusyOverlayComponent, selector: "aup-busy-overlay", inputs: ["busy$", "busy"] }, { kind: "directive", type: i5.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: i6.ActivityOutletComponent, selector: "aup-activity-outlet", inputs: ["nestedInteractionContext", "activityRef"] }] });
255
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: { dynamicHeight: "dynamicHeight", animationDuration: "animationDuration" }, providers: [
256
+ { provide: INTERACTION_CONTEXT, useClass: ActivityContainerComponent },
257
+ ], viewQueries: [{ propertyName: "tabs", first: true, predicate: ["tabs"], descendants: true, static: true }, { propertyName: "activityOutlets", predicate: ActivityOutletComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\"\n [animationDuration]=\"getTabAnimationDuration()\"\n (animationDone)=\"onAnimationDone()\"\n>\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busy$]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.BusyOverlayComponent, selector: "aup-busy-overlay", inputs: ["busy$", "busy"] }, { kind: "directive", type: i5.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: i6.ActivityOutletComponent, selector: "aup-activity-outlet", inputs: ["nestedInteractionContext", "activityRef"] }] });
252
258
  }
253
259
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityContainerComponent, decorators: [{
254
260
  type: Component,
255
- args: [{ selector: "aup-activity-container", template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\"\n [animationDuration]=\"getTabAnimationDuration()\"\n (animationDone)=\"onAnimationDone()\"\n>\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busy$]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"] }]
261
+ args: [{ selector: "aup-activity-container", providers: [
262
+ { provide: INTERACTION_CONTEXT, useClass: ActivityContainerComponent },
263
+ ], template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\"\n [animationDuration]=\"getTabAnimationDuration()\"\n (animationDone)=\"onAnimationDone()\"\n>\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busy$]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"] }]
256
264
  }], ctorParameters: function () { return [{ type: i1.PlaceRouter }]; }, propDecorators: { dynamicHeight: [{
257
265
  type: Input
258
266
  }], tabs: [{
@@ -264,4 +272,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
264
272
  }], animationDuration: [{
265
273
  type: Input
266
274
  }] } });
267
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2ludGVyYWN0aW9uL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBZSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFDTCxNQUFNLEVBR04sb0JBQW9CLEVBRXBCLEdBQUcsRUFDSCxnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRWxELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3hELE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBRTlFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7Ozs7QUFPcEYsTUFBTSxPQUFPLDBCQUFvQyxTQUFRLDBCQUEwQjtJQW9DNUQ7SUFq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Q0FBQTtJQUMvQixDQUFDO3VHQW5SVSwwQkFBMEI7MkZBQTFCLDBCQUEwQixtUkFRdkIsdUJBQXVCLHVFQ25DdkMseWdDQW9CQTs7MkZET2EsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHdCQUF3QjtrR0FPbEMsYUFBYTtzQkFEWixLQUFLO2dCQUlOLElBQUk7c0JBREgsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUlqQyxlQUFlO3NCQURkLFlBQVk7dUJBQUMsdUJBQXVCO2dCQU1yQyxpQkFBaUI7c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZCwgVmlld0NoaWxkcmVufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtNYXRUYWJHcm91cH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3RhYnNcIjtcbmltcG9ydCB7XG4gIGFzc2VydCxcbiAgQm9vbGVhblZhbHVlTW9kZWxDaGFpbixcbiAgQ29uc3RydWN0YWJsZSxcbiAgRGVsZWdhdGluZ1ZhbHVlTW9kZWwsXG4gIERpc3Bvc2FibGUsXG4gIERzbCxcbiAgR2FyYmFnZUNvbGxlY3RvcixcbiAgTXV0YWJsZVZhbHVlTW9kZWwsIFRyYWNlXG59IGZyb20gXCJAY29vbG9uL3BlY3RpblwiO1xuaW1wb3J0IHtsYW5nfSBmcm9tIFwiQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllc1wiO1xuXG5pbXBvcnQge2ZpbmRMYXN0fSBmcm9tIFwibG9kYXNoLWVzXCI7XG5pbXBvcnQge1BsYWNlUm91dGVyfSBmcm9tIFwiLi4vLi4vLi4vcGxhY2UvcGxhY2Utcm91dGVyXCI7XG5pbXBvcnQge0Fic3RyYWN0SW50ZXJhY3Rpb25Db250ZXh0fSBmcm9tIFwiLi4vLi4vYWJzdHJhY3QtaW50ZXJhY3Rpb24tY29udGV4dFwiO1xuaW1wb3J0IHtBY3Rpdml0eX0gZnJvbSBcIi4uLy4uL2FjdGl2aXR5XCI7XG5pbXBvcnQge0FjdGl2aXR5UmVmfSBmcm9tIFwiLi4vLi4vYWN0aXZpdHktcmVmXCI7XG5pbXBvcnQge0ludGVyYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2ludGVyYWN0aW9uLnNlcnZpY2VcIjtcbmltcG9ydCB7QWN0aXZpdHlPdXRsZXRDb21wb25lbnR9IGZyb20gXCIuL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhdXAtYWN0aXZpdHktY29udGFpbmVyXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQ8RCwgUiwgRT4gZXh0ZW5kcyBBYnN0cmFjdEludGVyYWN0aW9uQ29udGV4dCB7XG5cbiAgQElucHV0KClcbiAgZHluYW1pY0hlaWdodCA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoXCJ0YWJzXCIsIHtzdGF0aWM6IHRydWV9KVxuICB0YWJzOiBNYXRUYWJHcm91cDtcblxuICBAVmlld0NoaWxkcmVuKEFjdGl2aXR5T3V0bGV0Q29tcG9uZW50KVxuICBhY3Rpdml0eU91dGxldHM6IFF1ZXJ5TGlzdDxBY3Rpdml0eU91dGxldENvbXBvbmVudDxhbnksIGFueSwgYW55Pj47XG5cbiAgYWN0aXZpdHlSZWZzOiBBY3Rpdml0eVJlZjxhbnksIGFueSwgYW55PltdID0gW107XG5cbiAgQElucHV0KClcbiAgYW5pbWF0aW9uRHVyYXRpb24gPSBcIjUwMG1zXCJcblxuICBwcml2YXRlIF9pZGVudGlmaWVyOiBzdHJpbmc7XG4gIHByaXZhdGUgX2RlZmVycmVkQ2xlYW5VcDogUHJvbWlzZTxhbnk+O1xuXG4gIHByaXZhdGUgaW50ZXJhY3Rpb25TZXJ2aWNlQXBpOiBJbnRlcmFjdGlvblNlcnZpY2UuQXBpO1xuXG4gIHByaXZhdGUgZ2FyYmFnZSA9IG5ldyBHYXJiYWdlQ29sbGVjdG9yKCk7XG4gIHByaXZhdGUgc3luY1NlbGVjdGVkVGFiVGltZW91dDogYW55O1xuICBwcml2YXRlIG9uQW5pbWF0aW9uRmluaXNoZWRKb2I6ICgpID0+IHZvaWQ7XG5cbiAgcmVhZG9ubHkgX3N0YXJ0ZWQkID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgX3JlYWR5JCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IF9hbmltYXRpbmckID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPGJvb2xlYW4+KGZhbHNlKTtcblxuICByZWFkb25seSBidXN5ID0gdGhpcy5yZWdpc3RlckRpc3Bvc2FibGUobmV3IERlbGVnYXRpbmdWYWx1ZU1vZGVsPGJvb2xlYW4+KCkud2l0aERlZmF1bHQoZmFsc2UpKTtcblxuICByZWFkb25seSBzeW5jVGFic0pvYjogKCkgPT4gdm9pZCA9IHVuZGVmaW5lZDtcblxuICByZWFkb25seSBzdGFibGUkOiBCb29sZWFuVmFsdWVNb2RlbENoYWluO1xuICBwcml2YXRlIHdhc0FjdGl2ZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHBsYWNlUm91dGVyOiBQbGFjZVJvdXRlcikge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3Qge2NoYWluLCB2YWx1ZU9mLCB3aGVufSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICB3aGVuKHRoaXMucmVhZHkkKS5iZWNvbWVzVHJ1dGh5KCgpID0+IHRoaXMuZmluYWxpc2VBY3Rpdml0eVN0YXRlcygpKVxuICAgIHRoaXMuc3RhYmxlJCA9IHZhbHVlT2YuYWxsKFxuICAgICAgdGhpcy5yZWFkeSQsXG4gICAgICB0aGlzLl9zdGFydGVkJCxcbiAgICAgIGNoYWluKHRoaXMuYW5pbWF0aW5nJCkuaXNGYWxzZXkoKVxuICAgICkuYXJlVHJ1dGh5KCk7XG4gIH1cblxuICBnZXQgc3RhcnRlZCQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXJ0ZWQkLnJlYWRvbmx5JDtcbiAgfVxuXG4gIGdldCByZWFkeSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWR5JC5yZWFkb25seSQ7XG4gIH1cblxuICBnZXQgYW5pbWF0aW5nJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYW5pbWF0aW5nJC5yZWFkb25seSQ7XG4gIH1cblxuICBpbml0aWFsaXNlKGlkZW50aWZpZXI6IHN0cmluZywgYXBpOiBJbnRlcmFjdGlvblNlcnZpY2UuQXBpKSB7XG4gICAgYXNzZXJ0LmlzRmFsc2V5KHRoaXMuaXNJbml0aWFsaXNlZCgpKTtcbiAgICBhc3NlcnQubm90TmlsKGlkZW50aWZpZXIpO1xuICAgIGFzc2VydC5ub3ROaWwoYXBpKTtcbiAgICB0aGlzLl9pZGVudGlmaWVyID0gaWRlbnRpZmllcjtcbiAgICB0aGlzLmludGVyYWN0aW9uU2VydmljZUFwaSA9IGFwaTtcbiAgfVxuXG4gIG5vdGlmeVJlYWR5KHJlYWR5OiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVhZHkkLnZhbHVlID0gcmVhZHk7XG4gIH1cblxuICBnZXQgaWRlbnRpZmllcigpIHtcbiAgICByZXR1cm4gdGhpcy5faWRlbnRpZmllcjtcbiAgfVxuXG4gIGlzSW5pdGlhbGlzZWQoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5pZGVudGlmaWVyO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiBhbiBhY3Rpdml0eSBpcyBjdXJyZW50bHkgcnVubmluZy5cbiAgICovXG4gIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGlzQWN0aXZlID0gdGhpcy5nZXRBY3RpdmVBY3Rpdml0eUNvdW50KCkgPiAwO1xuICAgIC8vIGlmICh0aGlzLndhc0FjdGl2ZSAhPT0gaXNBY3RpdmUpIHtcbiAgICAvLyAgIGNvbnNvbGUubG9nKHt3YXM6IHRoaXMud2FzQWN0aXZlLCBpczogaXNBY3RpdmV9KTtcbiAgICAvLyB9XG4gICAgLy8gdGhpcy53YXNBY3RpdmUgPSBpc0FjdGl2ZVxuICAgIHJldHVybiBpc0FjdGl2ZTtcbiAgfVxuXG4gIHJlZ2lzdGVyRGlzcG9zYWJsZTxUIGV4dGVuZHMgRGlzcG9zYWJsZT4oZGlzcG9zYWJsZTogVCk6IFQge1xuICAgIHJldHVybiB0aGlzLmdhcmJhZ2UucmVnaXN0ZXJEaXNwb3NhYmxlKGRpc3Bvc2FibGUpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICAvLyBUT0RPOiB0aGluayBhYm91dCBhdXRvIGNhbmNlbGxpbmcgYW55IG91dHN0YW5kaW5nIGFjdGl2aXR5IG9uIGRpc3Bvc2UuXG4gICAgLy8gICAgICAgU2VlIE5hdmlnYXRpb25TdGF0ZS5OYXZpZ2F0aW5nIGZvciBhIHVzZS1jYXNlLlxuICAgIGFzc2VydC5pc0ZhbHNleSh0aGlzLmlzQWN0aXZlKCkpO1xuICAgIHRoaXMuZ2FyYmFnZS5kaXNwb3NlKCk7XG4gIH1cblxuICBnZXRBY3RpdmVBY3Rpdml0eVJlZigpOiBBY3Rpdml0eVJlZjxhbnksIGFueSwgYW55PiB7XG4gICAgaWYgKCF0aGlzLmlzQWN0aXZlKCkpIHtcbiAgICAgIGxhbmcuaWxsZWdhbFN0YXRlKFwibm8gYWN0aXZpdHkgaW4gcHJvZ3Jlc3NcIik7XG4gICAgfVxuICAgIHJldHVybiBmaW5kTGFzdCh0aGlzLmFjdGl2aXR5UmVmcywgdGFiID0+ICF0YWIuaXNDb21wbGV0ZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYW5jZWxzIHRoZSBjdXJyZW50IGFjdGl2aXR5IGFuZCByZXR1cm5zIHRydWUgdGhlIGNvbnRleHQgaXMgbm8gbG9uZ2VyIGFjdGl2ZSwgZmFsc2UgaWZcbiAgICogdGhlcmUgaXMgc3RpbGwgYW5vdGhlciBhY3Rpdml0eSBydW5uaW5nLlxuICAgKi9cbiAgLy8gQFRyYWNlKClcbiAgYXN5bmMgY2FuY2VsQWN0aXZlQWN0aXZpdHkoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgYWN0aXZpdHkgPSB0aGlzLmdldEFjdGl2ZUFjdGl2aXR5UmVmKCk7XG4gICAgYWN0aXZpdHkuY2FuY2VsKCk7XG4gICAgaWYgKHRoaXMuaXNDbGVhbmluZ1VwKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLndhaXRGb3JJbnRlcmFjdGlvbkNvbnRleHRDbGVhbnVwVG9GaW5pc2goKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICF0aGlzLmlzQWN0aXZlKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogdGhpcyBoYW5kbGluZyBvZiBtdWx0aXBsZSBuZXN0ZWQgYWN0aXZpdGllcyBpcyBvbmx5IHVzZWQgYnkgdGhlIGFjdGl2aXR5IGNvbXBvbmVudCBhbmQgaXMgbm90IGEgZ2VuZXJhbCBjYXNlLlxuICAvLyBAVHJhY2UoKVxuICBwcm90ZWN0ZWQgYXN5bmMgY3JlYXRlQW5kTGF1bmNoQWN0aXZpdHk8RDEsIFIxLCBFMT4oYWN0aXZpdHlUeXBlOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQxLCBSMSwgRTE+PiwgZGF0YTogRDEsIGRpc2FibGVDbG9zZTogYm9vbGVhbik6IFByb21pc2U8UjE+IHtcbiAgICBhc3NlcnQuaXNUcnV0aHkodGhpcy5pc0luaXRpYWxpc2VkKCkpOyAvLyBtYWtlIHN1cmUgd2UndmUgYmVlbiBpbml0aWFsaXNlZFxuICAgIGNvbnN0IGFjdGl2aXR5UmVmID0gbmV3IEFjdGl2aXR5UmVmPEQxLCBSMSwgRTE+KGFjdGl2aXR5VHlwZSwgZGF0YSwgKCkgPT4ge1xuICAgICAgY29uc3QgaXNBY3RpdmUgPSB0aGlzLmdldEFjdGl2ZUFjdGl2aXR5Q291bnQoKSA+IDA7XG4gICAgICBpZiAoaXNBY3RpdmUpIHtcbiAgICAgICAgdGhpcy50cmlnZ2VyVGFiU3luY2hyb25pc2F0aW9uKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmZpbmlzaEFuZFN0YXJ0Q2xlYW51cCgpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMubGF1bmNoQWN0aXZpdHkoYWN0aXZpdHlSZWYpO1xuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBhY3Rpdml0eVJlZi5hY3Rpdml0eVJlc3VsdDtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgLy8gY29uc29sZS5sb2coXCJjbG9zaW5nIGFjdGl2aXR5XCIsIGFjdGl2aXR5VHlwZS5uYW1lLCB0aGlzLmFjdGl2aXR5UmVmcylcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSgpKSB7XG4gICAgICAgIC8vIHdhaXQgdW50aWwgdGhlIGFjdGl2aXR5IHJvdXRlIHN5bmNpbmcgaGFzIGZpbmlzaGVkXG4gICAgICAgIGF3YWl0IHRoaXMucGxhY2VSb3V0ZXIud2FpdEFjdGl2aXRpZXNTeW5jaHJvbmlzZWQoKTtcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJhY3Rpdml0eSBzeW5jaW5nIGZpbmlzaGVkXCIpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRBY3RpdmVBY3Rpdml0eUNvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZpdHlSZWZzLmZpbHRlcihyZWYgPT4gIXJlZi5pc0NvbXBsZXRlKCkpLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhpcyBpbnRlcmFjdGlvbiBjb250ZXh0IGhhcyBmaW5pc2hlZCBhbiBpcyBpbiB0aGUgcHJvY2VzcyBvZiB3YWl0aW5nXG4gICAqIGZvciBhbGwgdGhlIGluZnJhc3RydWN0dXJlIChpbmNsdWRpbmcgcm91dGUgdXBkYXRlcykgdG8gYmUgY29tcGxldGVkLlxuICAgKi9cbiAgaXNDbGVhbmluZ1VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX2RlZmVycmVkQ2xlYW5VcDtcbiAgfVxuXG4gIGFzeW5jIHdhaXRGb3JJbnRlcmFjdGlvbkNvbnRleHRDbGVhbnVwVG9GaW5pc2goKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fZGVmZXJyZWRDbGVhblVwID9cbiAgICAgIHRoaXMuX2RlZmVycmVkQ2xlYW5VcCA6XG4gICAgICB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5pc2hBbmRTdGFydENsZWFudXAoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9kZWZlcnJlZENsZWFuVXApIHtcbiAgICAgIC8vIEltcG9ydGFudDpcbiAgICAgIC8vIENsZWFyIG91ciB0YWJzIHNvIHRoZSBuZXh0IGFjdGl2aXR5IHRyaWdnZXJzIGEgdGFiIGNoYW5nZS5cbiAgICAgIC8vIFdpdGhvdXQgdGhpcyBvdXIgYW5pbWF0aW9uIGRvbmUgd2Fzbid0IGNhbGxlZCB3aGVuIGEgc2luZ2xlXG4gICAgICAvLyBuZXcgYWN0aXZpdHkgZm9sbG93ZWQgYSBzaW5nbGUgdGFiIGFjdGl2aXR5IChzaW5jZSB3ZSdyZSB0cmFja2luZ1xuICAgICAgLy8gYnkgYWN0aXZpdHkgaW5kZXgpXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5hY3Rpdml0eVJlZnMgPSBbXTsgLy8gd2UgaGF2ZSB0byBkbyBpdCBhZnRlciB0aGUgYW5pbWF0aW9uIHRpbWVvdXQgb3IgdGhlIGFjdGl2aXR5IGRpc2FwcGVhcnMgYmVmb3JlIHRoZSBhbmltYXRpbiBmaW5zaWhlc1xuICAgICAgfSwgdGhpcy5nZXRUYWJBbmltYXRpb25EdXJhdGlvbkluTWlsbGlzKCkpO1xuICAgICAgY29uc3QgcHJvbWlzZSA9IHRoaXMuaW50ZXJhY3Rpb25TZXJ2aWNlQXBpLm5vdGlmeUZpbmlzaGVkKHRoaXMpO1xuICAgICAgdGhpcy5fZGVmZXJyZWRDbGVhblVwID0gcHJvbWlzZVxuICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZGVmZXJyZWRDbGVhblVwID0gbnVsbDtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbi8vIEBUcmFjZSgpXG4gIGxhdW5jaEFjdGl2aXR5PEQxLCBSMSwgRTE+KGFjdGl2aXR5UmVmOiBBY3Rpdml0eVJlZjxEMSwgUjEsIEUxPikge1xuICAgIC8vIGlmIHRoaXMgaXMgdGhlIGZpcnN0IGFjdGl2aXR5IGxldCB0aGUgaW50ZXJhY3Rpb24gc2VydmljZSBrbm93LlxuICAgIGNvbnN0IGNsZWFuZWRUYWJzID0gdGhpcy5hY3Rpdml0eVJlZnMuZmlsdGVyKHRhYiA9PiAhdGFiLmlzQ29tcGxldGUoKSk7XG4gICAgdGhpcy5hY3Rpdml0eVJlZnMgPSBjbGVhbmVkVGFicy5jb25jYXQoYWN0aXZpdHlSZWYpO1xuICAgIGNvbnN0IGZpcnN0VGltZSA9IHRoaXMuYWN0aXZpdHlSZWZzLmxlbmd0aCA9PT0gMTtcbiAgICBpZiAoZmlyc3RUaW1lKSB7XG4gICAgICB0aGlzLmludGVyYWN0aW9uU2VydmljZUFwaS5ub3RpZnlBY3RpdmUodGhpcyk7XG4gICAgfVxuICAgIHRoaXMuc3luY2hyb25pc2VTZWxlY3RlZFRhYkluZGV4KCk7XG4gIH1cblxuICBhY3Rpdml0eUluZGV4KGluZGV4OiBudW1iZXIsIGFjdGl2aXR5UmVmOiBBY3Rpdml0eVJlZjxhbnksIGFueSwgYW55Pikge1xuICAgIHJldHVybiBpbmRleDtcbiAgfTtcblxuICAvKipcbiAgICogU3luY2hyb25pc2VzIHRoZSBzZWxlY3RlZCB0YWIgaW5kZXguXG4gICAqL1xuICBwcml2YXRlIHN5bmNocm9uaXNlU2VsZWN0ZWRUYWJJbmRleCgpOiB2b2lkIHtcbiAgICBhc3NlcnQuaXNUcnV0aHkodGhpcy5pc0FjdGl2ZSgpKTtcbiAgICBjb25zdCBwcmV2aW91c0luZGV4ID0gdGhpcy50YWJzLnNlbGVjdGVkSW5kZXg7XG4gICAgY29uc3QgbmV3SW5kZXggPSB0aGlzLmdldEFjdGl2ZUFjdGl2aXR5Q291bnQoKSAtIDE7XG4gICAgY29uc3QgYW5pbWF0ZSA9IHRoaXMuYWN0aXZpdHlSZWZzLmxlbmd0aCA+IDE7XG4gICAgaWYgKHByZXZpb3VzSW5kZXggIT09IG5ld0luZGV4KSB7XG4gICAgICB0aGlzLl9hbmltYXRpbmckLnZhbHVlID0gYW5pbWF0ZTtcbiAgICAgIGNvbnN0IGFjdGl2aXR5UmVmID0gdGhpcy5hY3Rpdml0eVJlZnNbbmV3SW5kZXhdO1xuICAgICAgYWN0aXZpdHlSZWYuc2V0Rm9jdXNlZChmYWxzZSk7XG4gICAgICB0aGlzLmJ1c3kuc2V0RGVsZWdhdGUoYWN0aXZpdHlSZWYuYWN0aXZpdHlCdXN5KTtcbiAgICAgIHRoaXMudGFicy5zZWxlY3RlZEluZGV4ID0gbmV3SW5kZXg7XG4gICAgICAvLyBpZiAodGhpcy5yZWFkeSQudmFsdWUpIHtcbiAgICAgIC8vICAgLy8gTm90ZTogV2UncmUgbm90IHVzaW5nIHRoZSBhbmltYXRpb24gZG9uZSBldmVudCBhcyBpdCdzIGZpcmluZyBhbG1vc3QgaW1tZWFkaWF0ZWx5LlxuICAgICAgLy8gICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZmluYWxpc2VBY3Rpdml0eVN0YXRlcygpLCBhbmltYXRlID8gdGhpcy5nZXRUYWJBbmltYXRpb25EdXJhdGlvbkluTWlsbGlzKCkgOiAwKTtcbiAgICAgIC8vIH1cbiAgICB9XG4gIH1cblxuICBmaW5hbGlzZUFjdGl2aXR5U3RhdGVzKCkge1xuICAgIHRoaXMuX2FuaW1hdGluZyQudmFsdWUgPSBmYWxzZTtcbiAgICB0aGlzLmFjdGl2aXR5UmVmcyA9IHRoaXMuYWN0aXZpdHlSZWZzLmZpbHRlcih0YWIgPT4gIXRhYi5pc0NvbXBsZXRlKCkpO1xuICAgIHRoaXMuYWN0aXZpdHlSZWZzLmZvckVhY2goKHJlZiwgaW5kZXgpID0+IHtcbiAgICAgIHJlZi5zZXRGb2N1c2VkKGluZGV4ID09PSB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFNlbGVjdGVkT3V0bGV0KCkge1xuICAgIHJldHVybiB0aGlzLmFjdGl2aXR5T3V0bGV0cy50b0FycmF5KClbdGhpcy50YWJzLnNlbGVjdGVkSW5kZXhdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFRhYkFuaW1hdGlvbkR1cmF0aW9uKCk6IHN0cmluZyB7XG4gICAgLy8gY29uc3QgcyA9IHRoaXMuX3N0YXJ0ZWQkLnZhbHVlID8gdGhpcy5hbmltYXRpb25EdXJhdGlvbiA6IFwiMFwiO1xuICAgIC8vIHJldHVybiBzXG4gICAgcmV0dXJuIHRoaXMuYW5pbWF0aW9uRHVyYXRpb247XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0VGFiQW5pbWF0aW9uRHVyYXRpb25Jbk1pbGxpcygpOiBudW1iZXIge1xuICAgIGNvbnN0IG1hdGNoID0gdGhpcy5hbmltYXRpb25EdXJhdGlvbi5tYXRjaCgvKFxcZCspKC4qKS8pO1xuICAgIGNvbnN0IG51bWVyaWNWYWx1ZSA9IHBhcnNlRmxvYXQobWF0Y2hbMV0pO1xuICAgIHN3aXRjaCAobWF0Y2hbMl0udHJpbSgpKSB7XG4gICAgICBjYXNlIFwibXNcIjpcbiAgICAgICAgcmV0dXJuIG51bWVyaWNWYWx1ZTtcbiAgICAgIGNhc2UgXCJzXCI6XG4gICAgICAgIHJldHVybiAxMDAwICogbnVtZXJpY1ZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gbGFuZy5pbGxlZ2FsU3RhdGUoYHVuc3VwcG9ydGVkIGR1cmF0aW9uIHN0cmluZzogJHt0aGlzLnRhYnMuYW5pbWF0aW9uRHVyYXRpb259YCk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBnZXRTZWxlY3RlZFRhYkluZGV4KCkge1xuICAgIHJldHVybiB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleDtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIHByaXZhdGUgdHJpZ2dlclRhYlN5bmNocm9uaXNhdGlvbigpIHtcbiAgICBpZiAodGhpcy5zeW5jU2VsZWN0ZWRUYWJUaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5zeW5jU2VsZWN0ZWRUYWJUaW1lb3V0KTtcbiAgICB9XG4gICAgdGhpcy5zeW5jU2VsZWN0ZWRUYWJUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnN5bmNTZWxlY3RlZFRhYlRpbWVvdXQgPSBudWxsO1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUoKSkge1xuICAgICAgICB0aGlzLnN5bmNocm9uaXNlU2VsZWN0ZWRUYWJJbmRleCgpO1xuICAgICAgfVxuICAgIH0sIDc1KTtcbiAgfVxuXG4gIG9uQW5pbWF0aW9uRG9uZSgpIHtcbiAgICB0aGlzLl9zdGFydGVkJC52YWx1ZSA9IHRydWVcbiAgICB0aGlzLmZpbmFsaXNlQWN0aXZpdHlTdGF0ZXMoKVxuICB9XG59XG4iLCI8bWF0LXRhYi1ncm91cCAjdGFicyBuby10YWItaGVhZGVyXG4gICAgICAgICAgICAgICBbZHluYW1pY0hlaWdodF09XCJkeW5hbWljSGVpZ2h0XCJcbiAgICAgICAgICAgICAgIFtjbGFzcy5mdWxsLWhlaWdodC10YWJzXT1cIiFkeW5hbWljSGVpZ2h0XCJcbiAgICAgICAgICAgICAgIFthbmltYXRpb25EdXJhdGlvbl09XCJnZXRUYWJBbmltYXRpb25EdXJhdGlvbigpXCJcbiAgICAgICAgICAgICAgIChhbmltYXRpb25Eb25lKT1cIm9uQW5pbWF0aW9uRG9uZSgpXCJcbj5cbiAgPG1hdC10YWIgKm5nRm9yPVwibGV0IGFjdGl2aXR5UmVmIG9mIGFjdGl2aXR5UmVmczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogYWN0aXZpdHlJbmRleFwiPlxuICAgIDxhdXAtYnVzeS1vdmVybGF5IFtidXN5JF09XCJidXN5XCIgY2RrVHJhcEZvY3VzIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlPlxuICAgICAgPCEtLVxuICAgICAgV2UgaGF2ZSBpc3N1ZXMgd2hlcmUgYW5ndWxhciBpcyB0cmlnZ2VyaW5nIGEgbGVhdmUgYW5pbWF0aW9uIHdoZW4gYW5cbiAgICAgIG5ldyBhY3Rpdml0eSBpcyBzdGFydGVkLCBidXQgaXMgbm90IHJ1bm5pbmcgdGhlIGVudGVyIGFuaW1hdGlvblxuICAgICAgd2hlbiBpdCBpcyBzY3JvbGxlZCBiYWNrIGludG8gdmlldy4gIFNvIHdlIHRyYWNrIHRoZSB0YWIgY2hhbmdlcyBhbmRcbiAgICAgIGRpc2FibGUgYWxsIGFuaW1hdGlvbnMgaW5zaWRlIHRoZSB0YWIgd2hpbGUgd2UncmUgYW5pbWF0aW5nLlxuICAgICAgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWN0aXZpdHktb3V0bGV0LXdyYXBwZXJcIiBbQC5kaXNhYmxlZF09XCIhYWN0aXZpdHlSZWYuZm9jdXNlZFwiPlxuICAgICAgICA8YXVwLWFjdGl2aXR5LW91dGxldCBbbmVzdGVkSW50ZXJhY3Rpb25Db250ZXh0XT1cInRoaXNcIiBbYWN0aXZpdHlSZWZdPVwiYWN0aXZpdHlSZWZcIj48L2F1cC1hY3Rpdml0eS1vdXRsZXQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2F1cC1idXN5LW92ZXJsYXk+XG4gIDwvbWF0LXRhYj5cbjwvbWF0LXRhYi1ncm91cD5cbiJdfQ==
275
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2ludGVyYWN0aW9uL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBZSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFDTCxNQUFNLEVBR04sb0JBQW9CLEVBRXBCLEdBQUcsRUFDSCxnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRWxELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3hELE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBRTlFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQXFCLE1BQU0sMkJBQTJCLENBQUM7QUFFbEYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7Ozs7Ozs7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YUFDcEM7UUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDVCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQTtRQUMzQixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQTtJQUMvQixDQUFDO3VHQXZSVSwwQkFBMEI7MkZBQTFCLDBCQUEwQixxSUFKM0I7WUFDUixFQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUM7U0FDckUsMkpBVWEsdUJBQXVCLHVFQ3ZDdkMseWdDQW9CQTs7MkZEV2EsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNFLHdCQUF3QixhQUd4Qjt3QkFDUixFQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxRQUFRLDRCQUE0QixFQUFDO3FCQUNyRTtrR0FLRCxhQUFhO3NCQURaLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBSWpDLGVBQWU7c0JBRGQsWUFBWTt1QkFBQyx1QkFBdUI7Z0JBTXJDLGlCQUFpQjtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge01hdFRhYkdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdGFic1wiO1xuaW1wb3J0IHtcbiAgYXNzZXJ0LFxuICBCb29sZWFuVmFsdWVNb2RlbENoYWluLFxuICBDb25zdHJ1Y3RhYmxlLFxuICBEZWxlZ2F0aW5nVmFsdWVNb2RlbCxcbiAgRGlzcG9zYWJsZSxcbiAgRHNsLFxuICBHYXJiYWdlQ29sbGVjdG9yLFxuICBNdXRhYmxlVmFsdWVNb2RlbCwgVHJhY2Vcbn0gZnJvbSBcIkBjb29sb24vcGVjdGluXCI7XG5pbXBvcnQge2xhbmd9IGZyb20gXCJAY29vbG9uL3R5cGVzY3JpcHQtdXRpbGl0aWVzXCI7XG5cbmltcG9ydCB7ZmluZExhc3R9IGZyb20gXCJsb2Rhc2gtZXNcIjtcbmltcG9ydCB7UGxhY2VSb3V0ZXJ9IGZyb20gXCIuLi8uLi8uLi9wbGFjZS9wbGFjZS1yb3V0ZXJcIjtcbmltcG9ydCB7QWJzdHJhY3RJbnRlcmFjdGlvbkNvbnRleHR9IGZyb20gXCIuLi8uLi9hYnN0cmFjdC1pbnRlcmFjdGlvbi1jb250ZXh0XCI7XG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tIFwiLi4vLi4vYWN0aXZpdHlcIjtcbmltcG9ydCB7QWN0aXZpdHlSZWZ9IGZyb20gXCIuLi8uLi9hY3Rpdml0eS1yZWZcIjtcbmltcG9ydCB7SU5URVJBQ1RJT05fQ09OVEVYVCwgSW50ZXJhY3Rpb25Db250ZXh0fSBmcm9tIFwiLi4vLi4vaW50ZXJhY3Rpb24tY29udGV4dFwiO1xuaW1wb3J0IHtJbnRlcmFjdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9pbnRlcmFjdGlvbi5zZXJ2aWNlXCI7XG5pbXBvcnQge0FjdGl2aXR5T3V0bGV0Q29tcG9uZW50fSBmcm9tIFwiLi9hY3Rpdml0eS1vdXRsZXQvYWN0aXZpdHktb3V0bGV0LmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYXVwLWFjdGl2aXR5LWNvbnRhaW5lclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2FjdGl2aXR5LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5zY3NzXCJdLFxuICBwcm92aWRlcnM6W1xuICAgIHtwcm92aWRlOiBJTlRFUkFDVElPTl9DT05URVhULCB1c2VDbGFzczogQWN0aXZpdHlDb250YWluZXJDb21wb25lbnR9LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEFjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50PEQsIFIsIEU+IGV4dGVuZHMgQWJzdHJhY3RJbnRlcmFjdGlvbkNvbnRleHQge1xuXG4gIEBJbnB1dCgpXG4gIGR5bmFtaWNIZWlnaHQgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKFwidGFic1wiLCB7c3RhdGljOiB0cnVlfSlcbiAgdGFiczogTWF0VGFiR3JvdXA7XG5cbiAgQFZpZXdDaGlsZHJlbihBY3Rpdml0eU91dGxldENvbXBvbmVudClcbiAgYWN0aXZpdHlPdXRsZXRzOiBRdWVyeUxpc3Q8QWN0aXZpdHlPdXRsZXRDb21wb25lbnQ8YW55LCBhbnksIGFueT4+O1xuXG4gIGFjdGl2aXR5UmVmczogQWN0aXZpdHlSZWY8YW55LCBhbnksIGFueT5bXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIGFuaW1hdGlvbkR1cmF0aW9uID0gXCI1MDBtc1wiXG5cbiAgcHJpdmF0ZSBfaWRlbnRpZmllcjogc3RyaW5nO1xuICBwcml2YXRlIF9kZWZlcnJlZENsZWFuVXA6IFByb21pc2U8YW55PjtcblxuICBwcml2YXRlIGludGVyYWN0aW9uU2VydmljZUFwaTogSW50ZXJhY3Rpb25TZXJ2aWNlLkFwaTtcblxuICBwcml2YXRlIGdhcmJhZ2UgPSBuZXcgR2FyYmFnZUNvbGxlY3RvcigpO1xuICBwcml2YXRlIHN5bmNTZWxlY3RlZFRhYlRpbWVvdXQ6IGFueTtcbiAgcHJpdmF0ZSBvbkFuaW1hdGlvbkZpbmlzaGVkSm9iOiAoKSA9PiB2b2lkO1xuXG4gIHJlYWRvbmx5IF9zdGFydGVkJCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IF9yZWFkeSQgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBfYW5pbWF0aW5nJCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxib29sZWFuPihmYWxzZSk7XG5cbiAgcmVhZG9ubHkgYnVzeSA9IHRoaXMucmVnaXN0ZXJEaXNwb3NhYmxlKG5ldyBEZWxlZ2F0aW5nVmFsdWVNb2RlbDxib29sZWFuPigpLndpdGhEZWZhdWx0KGZhbHNlKSk7XG5cbiAgcmVhZG9ubHkgc3luY1RhYnNKb2I6ICgpID0+IHZvaWQgPSB1bmRlZmluZWQ7XG5cbiAgcmVhZG9ubHkgc3RhYmxlJDogQm9vbGVhblZhbHVlTW9kZWxDaGFpbjtcbiAgcHJpdmF0ZSB3YXNBY3RpdmUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIpIHtcbiAgICBzdXBlcigpO1xuICAgIGNvbnN0IHtjaGFpbiwgdmFsdWVPZiwgd2hlbn0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgd2hlbih0aGlzLnJlYWR5JCkuYmVjb21lc1RydXRoeSgoKSA9PiB0aGlzLmZpbmFsaXNlQWN0aXZpdHlTdGF0ZXMoKSlcbiAgICB0aGlzLnN0YWJsZSQgPSB2YWx1ZU9mLmFsbChcbiAgICAgIHRoaXMucmVhZHkkLFxuICAgICAgdGhpcy5fc3RhcnRlZCQsXG4gICAgICBjaGFpbih0aGlzLmFuaW1hdGluZyQpLmlzRmFsc2V5KClcbiAgICApLmFyZVRydXRoeSgpO1xuICB9XG5cbiAgZ2V0IHN0YXJ0ZWQkKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGFydGVkJC5yZWFkb25seSQ7XG4gIH1cblxuICBnZXQgcmVhZHkkKCkge1xuICAgIHJldHVybiB0aGlzLl9yZWFkeSQucmVhZG9ubHkkO1xuICB9XG5cbiAgZ2V0IGFuaW1hdGluZyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FuaW1hdGluZyQucmVhZG9ubHkkO1xuICB9XG5cbiAgaW5pdGlhbGlzZShpZGVudGlmaWVyOiBzdHJpbmcsIGFwaTogSW50ZXJhY3Rpb25TZXJ2aWNlLkFwaSkge1xuICAgIGFzc2VydC5pc0ZhbHNleSh0aGlzLmlzSW5pdGlhbGlzZWQoKSk7XG4gICAgYXNzZXJ0Lm5vdE5pbChpZGVudGlmaWVyKTtcbiAgICBhc3NlcnQubm90TmlsKGFwaSk7XG4gICAgdGhpcy5faWRlbnRpZmllciA9IGlkZW50aWZpZXI7XG4gICAgdGhpcy5pbnRlcmFjdGlvblNlcnZpY2VBcGkgPSBhcGk7XG4gIH1cblxuICBub3RpZnlSZWFkeShyZWFkeTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlYWR5JC52YWx1ZSA9IHJlYWR5O1xuICB9XG5cbiAgZ2V0IGlkZW50aWZpZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkZW50aWZpZXI7XG4gIH1cblxuICBpc0luaXRpYWxpc2VkKCkge1xuICAgIHJldHVybiAhIXRoaXMuaWRlbnRpZmllcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgYW4gYWN0aXZpdHkgaXMgY3VycmVudGx5IHJ1bm5pbmcuXG4gICAqL1xuICBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc0FjdGl2ZSA9IHRoaXMuZ2V0QWN0aXZlQWN0aXZpdHlDb3VudCgpID4gMDtcbiAgICAvLyBpZiAodGhpcy53YXNBY3RpdmUgIT09IGlzQWN0aXZlKSB7XG4gICAgLy8gICBjb25zb2xlLmxvZyh7d2FzOiB0aGlzLndhc0FjdGl2ZSwgaXM6IGlzQWN0aXZlfSk7XG4gICAgLy8gfVxuICAgIC8vIHRoaXMud2FzQWN0aXZlID0gaXNBY3RpdmVcbiAgICByZXR1cm4gaXNBY3RpdmU7XG4gIH1cblxuICByZWdpc3RlckRpc3Bvc2FibGU8VCBleHRlbmRzIERpc3Bvc2FibGU+KGRpc3Bvc2FibGU6IFQpOiBUIHtcbiAgICByZXR1cm4gdGhpcy5nYXJiYWdlLnJlZ2lzdGVyRGlzcG9zYWJsZShkaXNwb3NhYmxlKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGRpc3Bvc2UoKTogdm9pZCB7XG4gICAgLy8gVE9ETzogdGhpbmsgYWJvdXQgYXV0byBjYW5jZWxsaW5nIGFueSBvdXRzdGFuZGluZyBhY3Rpdml0eSBvbiBkaXNwb3NlLlxuICAgIC8vICAgICAgIFNlZSBOYXZpZ2F0aW9uU3RhdGUuTmF2aWdhdGluZyBmb3IgYSB1c2UtY2FzZS5cbiAgICBhc3NlcnQuaXNGYWxzZXkodGhpcy5pc0FjdGl2ZSgpKTtcbiAgICB0aGlzLmdhcmJhZ2UuZGlzcG9zZSgpO1xuICB9XG5cbiAgZ2V0QWN0aXZlQWN0aXZpdHlSZWYoKTogQWN0aXZpdHlSZWY8YW55LCBhbnksIGFueT4ge1xuICAgIGlmICghdGhpcy5pc0FjdGl2ZSgpKSB7XG4gICAgICBsYW5nLmlsbGVnYWxTdGF0ZShcIm5vIGFjdGl2aXR5IGluIHByb2dyZXNzXCIpO1xuICAgIH1cbiAgICByZXR1cm4gZmluZExhc3QodGhpcy5hY3Rpdml0eVJlZnMsIHRhYiA9PiAhdGFiLmlzQ29tcGxldGUoKSk7XG4gIH1cblxuICBnZXQgZGlzYWJsZUNsb3NlKCkge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZUFjdGl2aXR5UmVmKCkuYWN0aXZpdHkuZGlzYWJsZUNsb3NlXG4gIH1cblxuICAvKipcbiAgICogQ2FuY2VscyB0aGUgY3VycmVudCBhY3Rpdml0eSBhbmQgcmV0dXJucyB0cnVlIHRoZSBjb250ZXh0IGlzIG5vIGxvbmdlciBhY3RpdmUsIGZhbHNlIGlmXG4gICAqIHRoZXJlIGlzIHN0aWxsIGFub3RoZXIgYWN0aXZpdHkgcnVubmluZy5cbiAgICovXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIGNhbmNlbEFjdGl2ZUFjdGl2aXR5KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGFjdGl2aXR5ID0gdGhpcy5nZXRBY3RpdmVBY3Rpdml0eVJlZigpO1xuICAgIGFjdGl2aXR5LmNhbmNlbCgpO1xuICAgIGlmICh0aGlzLmlzQ2xlYW5pbmdVcCgpKSB7XG4gICAgICByZXR1cm4gdGhpcy53YWl0Rm9ySW50ZXJhY3Rpb25Db250ZXh0Q2xlYW51cFRvRmluaXNoKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAhdGhpcy5pc0FjdGl2ZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRPRE86IHRoaXMgaGFuZGxpbmcgb2YgbXVsdGlwbGUgbmVzdGVkIGFjdGl2aXRpZXMgaXMgb25seSB1c2VkIGJ5IHRoZSBhY3Rpdml0eSBjb21wb25lbnQgYW5kIGlzIG5vdCBhIGdlbmVyYWwgY2FzZS5cbiAgLy8gQFRyYWNlKClcbiAgcHJvdGVjdGVkIGFzeW5jIGNyZWF0ZUFuZExhdW5jaEFjdGl2aXR5PEQxLCBSMSwgRTE+KGFjdGl2aXR5VHlwZTogQ29uc3RydWN0YWJsZTxBY3Rpdml0eTxEMSwgUjEsIEUxPj4sIGRhdGE6IEQxLCBkaXNhYmxlQ2xvc2U6IGJvb2xlYW4pOiBQcm9taXNlPFIxPiB7XG4gICAgYXNzZXJ0LmlzVHJ1dGh5KHRoaXMuaXNJbml0aWFsaXNlZCgpKTsgLy8gbWFrZSBzdXJlIHdlJ3ZlIGJlZW4gaW5pdGlhbGlzZWRcbiAgICBjb25zdCBhY3Rpdml0eVJlZiA9IG5ldyBBY3Rpdml0eVJlZjxEMSwgUjEsIEUxPihhY3Rpdml0eVR5cGUsIGRhdGEsICgpID0+IHtcbiAgICAgIGNvbnN0IGlzQWN0aXZlID0gdGhpcy5nZXRBY3RpdmVBY3Rpdml0eUNvdW50KCkgPiAwO1xuICAgICAgaWYgKGlzQWN0aXZlKSB7XG4gICAgICAgIHRoaXMudHJpZ2dlclRhYlN5bmNocm9uaXNhdGlvbigpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5maW5pc2hBbmRTdGFydENsZWFudXAoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLmxhdW5jaEFjdGl2aXR5KGFjdGl2aXR5UmVmKTtcblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgYWN0aXZpdHlSZWYuYWN0aXZpdHlSZXN1bHQ7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiY2xvc2luZyBhY3Rpdml0eVwiLCBhY3Rpdml0eVR5cGUubmFtZSwgdGhpcy5hY3Rpdml0eVJlZnMpXG4gICAgICBpZiAoIXRoaXMuaXNBY3RpdmUoKSkge1xuICAgICAgICAvLyB3YWl0IHVudGlsIHRoZSBhY3Rpdml0eSByb3V0ZSBzeW5jaW5nIGhhcyBmaW5pc2hlZFxuICAgICAgICBhd2FpdCB0aGlzLnBsYWNlUm91dGVyLndhaXRBY3Rpdml0aWVzU3luY2hyb25pc2VkKCk7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwiYWN0aXZpdHkgc3luY2luZyBmaW5pc2hlZFwiKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWN0aXZlQWN0aXZpdHlDb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmFjdGl2aXR5UmVmcy5maWx0ZXIocmVmID0+ICFyZWYuaXNDb21wbGV0ZSgpKS5sZW5ndGg7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoaXMgaW50ZXJhY3Rpb24gY29udGV4dCBoYXMgZmluaXNoZWQgYW4gaXMgaW4gdGhlIHByb2Nlc3Mgb2Ygd2FpdGluZ1xuICAgKiBmb3IgYWxsIHRoZSBpbmZyYXN0cnVjdHVyZSAoaW5jbHVkaW5nIHJvdXRlIHVwZGF0ZXMpIHRvIGJlIGNvbXBsZXRlZC5cbiAgICovXG4gIGlzQ2xlYW5pbmdVcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLl9kZWZlcnJlZENsZWFuVXA7XG4gIH1cblxuICBhc3luYyB3YWl0Rm9ySW50ZXJhY3Rpb25Db250ZXh0Q2xlYW51cFRvRmluaXNoKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX2RlZmVycmVkQ2xlYW5VcCA/XG4gICAgICB0aGlzLl9kZWZlcnJlZENsZWFuVXAgOlxuICAgICAgdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZmluaXNoQW5kU3RhcnRDbGVhbnVwKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fZGVmZXJyZWRDbGVhblVwKSB7XG4gICAgICAvLyBJbXBvcnRhbnQ6XG4gICAgICAvLyBDbGVhciBvdXIgdGFicyBzbyB0aGUgbmV4dCBhY3Rpdml0eSB0cmlnZ2VycyBhIHRhYiBjaGFuZ2UuXG4gICAgICAvLyBXaXRob3V0IHRoaXMgb3VyIGFuaW1hdGlvbiBkb25lIHdhc24ndCBjYWxsZWQgd2hlbiBhIHNpbmdsZVxuICAgICAgLy8gbmV3IGFjdGl2aXR5IGZvbGxvd2VkIGEgc2luZ2xlIHRhYiBhY3Rpdml0eSAoc2luY2Ugd2UncmUgdHJhY2tpbmdcbiAgICAgIC8vIGJ5IGFjdGl2aXR5IGluZGV4KVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuYWN0aXZpdHlSZWZzID0gW107IC8vIHdlIGhhdmUgdG8gZG8gaXQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiB0aW1lb3V0IG9yIHRoZSBhY3Rpdml0eSBkaXNhcHBlYXJzIGJlZm9yZSB0aGUgYW5pbWF0aW4gZmluc2loZXNcbiAgICAgIH0sIHRoaXMuZ2V0VGFiQW5pbWF0aW9uRHVyYXRpb25Jbk1pbGxpcygpKTtcbiAgICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLmludGVyYWN0aW9uU2VydmljZUFwaS5ub3RpZnlGaW5pc2hlZCh0aGlzKTtcbiAgICAgIHRoaXMuX2RlZmVycmVkQ2xlYW5VcCA9IHByb21pc2VcbiAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2RlZmVycmVkQ2xlYW5VcCA9IG51bGw7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4vLyBAVHJhY2UoKVxuICBsYXVuY2hBY3Rpdml0eTxEMSwgUjEsIEUxPihhY3Rpdml0eVJlZjogQWN0aXZpdHlSZWY8RDEsIFIxLCBFMT4pIHtcbiAgICAvLyBpZiB0aGlzIGlzIHRoZSBmaXJzdCBhY3Rpdml0eSBsZXQgdGhlIGludGVyYWN0aW9uIHNlcnZpY2Uga25vdy5cbiAgICBjb25zdCBjbGVhbmVkVGFicyA9IHRoaXMuYWN0aXZpdHlSZWZzLmZpbHRlcih0YWIgPT4gIXRhYi5pc0NvbXBsZXRlKCkpO1xuICAgIHRoaXMuYWN0aXZpdHlSZWZzID0gY2xlYW5lZFRhYnMuY29uY2F0KGFjdGl2aXR5UmVmKTtcbiAgICBjb25zdCBmaXJzdFRpbWUgPSB0aGlzLmFjdGl2aXR5UmVmcy5sZW5ndGggPT09IDE7XG4gICAgaWYgKGZpcnN0VGltZSkge1xuICAgICAgdGhpcy5pbnRlcmFjdGlvblNlcnZpY2VBcGkubm90aWZ5QWN0aXZlKHRoaXMpO1xuICAgIH1cbiAgICB0aGlzLnN5bmNocm9uaXNlU2VsZWN0ZWRUYWJJbmRleCgpO1xuICB9XG5cbiAgYWN0aXZpdHlJbmRleChpbmRleDogbnVtYmVyLCBhY3Rpdml0eVJlZjogQWN0aXZpdHlSZWY8YW55LCBhbnksIGFueT4pIHtcbiAgICByZXR1cm4gaW5kZXg7XG4gIH07XG5cbiAgLyoqXG4gICAqIFN5bmNocm9uaXNlcyB0aGUgc2VsZWN0ZWQgdGFiIGluZGV4LlxuICAgKi9cbiAgcHJpdmF0ZSBzeW5jaHJvbmlzZVNlbGVjdGVkVGFiSW5kZXgoKTogdm9pZCB7XG4gICAgYXNzZXJ0LmlzVHJ1dGh5KHRoaXMuaXNBY3RpdmUoKSk7XG4gICAgY29uc3QgcHJldmlvdXNJbmRleCA9IHRoaXMudGFicy5zZWxlY3RlZEluZGV4O1xuICAgIGNvbnN0IG5ld0luZGV4ID0gdGhpcy5nZXRBY3RpdmVBY3Rpdml0eUNvdW50KCkgLSAxO1xuICAgIGNvbnN0IGFuaW1hdGUgPSB0aGlzLmFjdGl2aXR5UmVmcy5sZW5ndGggPiAxO1xuICAgIGlmIChwcmV2aW91c0luZGV4ICE9PSBuZXdJbmRleCkge1xuICAgICAgdGhpcy5fYW5pbWF0aW5nJC52YWx1ZSA9IGFuaW1hdGU7XG4gICAgICBjb25zdCBhY3Rpdml0eVJlZiA9IHRoaXMuYWN0aXZpdHlSZWZzW25ld0luZGV4XTtcbiAgICAgIGFjdGl2aXR5UmVmLnNldEZvY3VzZWQoZmFsc2UpO1xuICAgICAgdGhpcy5idXN5LnNldERlbGVnYXRlKGFjdGl2aXR5UmVmLmFjdGl2aXR5QnVzeSk7XG4gICAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IG5ld0luZGV4O1xuICAgICAgLy8gaWYgKHRoaXMucmVhZHkkLnZhbHVlKSB7XG4gICAgICAvLyAgIC8vIE5vdGU6IFdlJ3JlIG5vdCB1c2luZyB0aGUgYW5pbWF0aW9uIGRvbmUgZXZlbnQgYXMgaXQncyBmaXJpbmcgYWxtb3N0IGltbWVhZGlhdGVseS5cbiAgICAgIC8vICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmZpbmFsaXNlQWN0aXZpdHlTdGF0ZXMoKSwgYW5pbWF0ZSA/IHRoaXMuZ2V0VGFiQW5pbWF0aW9uRHVyYXRpb25Jbk1pbGxpcygpIDogMCk7XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG5cbiAgZmluYWxpc2VBY3Rpdml0eVN0YXRlcygpIHtcbiAgICB0aGlzLl9hbmltYXRpbmckLnZhbHVlID0gZmFsc2U7XG4gICAgdGhpcy5hY3Rpdml0eVJlZnMgPSB0aGlzLmFjdGl2aXR5UmVmcy5maWx0ZXIodGFiID0+ICF0YWIuaXNDb21wbGV0ZSgpKTtcbiAgICB0aGlzLmFjdGl2aXR5UmVmcy5mb3JFYWNoKChyZWYsIGluZGV4KSA9PiB7XG4gICAgICByZWYuc2V0Rm9jdXNlZChpbmRleCA9PT0gdGhpcy50YWJzLnNlbGVjdGVkSW5kZXgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTZWxlY3RlZE91dGxldCgpIHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eU91dGxldHMudG9BcnJheSgpW3RoaXMudGFicy5zZWxlY3RlZEluZGV4XTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRUYWJBbmltYXRpb25EdXJhdGlvbigpOiBzdHJpbmcge1xuICAgIC8vIGNvbnN0IHMgPSB0aGlzLl9zdGFydGVkJC52YWx1ZSA/IHRoaXMuYW5pbWF0aW9uRHVyYXRpb24gOiBcIjBcIjtcbiAgICAvLyByZXR1cm4gc1xuICAgIHJldHVybiB0aGlzLmFuaW1hdGlvbkR1cmF0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFRhYkFuaW1hdGlvbkR1cmF0aW9uSW5NaWxsaXMoKTogbnVtYmVyIHtcbiAgICBjb25zdCBtYXRjaCA9IHRoaXMuYW5pbWF0aW9uRHVyYXRpb24ubWF0Y2goLyhcXGQrKSguKikvKTtcbiAgICBjb25zdCBudW1lcmljVmFsdWUgPSBwYXJzZUZsb2F0KG1hdGNoWzFdKTtcbiAgICBzd2l0Y2ggKG1hdGNoWzJdLnRyaW0oKSkge1xuICAgICAgY2FzZSBcIm1zXCI6XG4gICAgICAgIHJldHVybiBudW1lcmljVmFsdWU7XG4gICAgICBjYXNlIFwic1wiOlxuICAgICAgICByZXR1cm4gMTAwMCAqIG51bWVyaWNWYWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGxhbmcuaWxsZWdhbFN0YXRlKGB1bnN1cHBvcnRlZCBkdXJhdGlvbiBzdHJpbmc6ICR7dGhpcy50YWJzLmFuaW1hdGlvbkR1cmF0aW9ufWApO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgZ2V0U2VsZWN0ZWRUYWJJbmRleCgpIHtcbiAgICByZXR1cm4gdGhpcy50YWJzLnNlbGVjdGVkSW5kZXg7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBwcml2YXRlIHRyaWdnZXJUYWJTeW5jaHJvbmlzYXRpb24oKSB7XG4gICAgaWYgKHRoaXMuc3luY1NlbGVjdGVkVGFiVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc3luY1NlbGVjdGVkVGFiVGltZW91dCk7XG4gICAgfVxuICAgIHRoaXMuc3luY1NlbGVjdGVkVGFiVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zeW5jU2VsZWN0ZWRUYWJUaW1lb3V0ID0gbnVsbDtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKCkpIHtcbiAgICAgICAgdGhpcy5zeW5jaHJvbmlzZVNlbGVjdGVkVGFiSW5kZXgoKTtcbiAgICAgIH1cbiAgICB9LCA3NSk7XG4gIH1cblxuICBvbkFuaW1hdGlvbkRvbmUoKSB7XG4gICAgdGhpcy5fc3RhcnRlZCQudmFsdWUgPSB0cnVlXG4gICAgdGhpcy5maW5hbGlzZUFjdGl2aXR5U3RhdGVzKClcbiAgfVxufVxuIiwiPG1hdC10YWItZ3JvdXAgI3RhYnMgbm8tdGFiLWhlYWRlclxuICAgICAgICAgICAgICAgW2R5bmFtaWNIZWlnaHRdPVwiZHluYW1pY0hlaWdodFwiXG4gICAgICAgICAgICAgICBbY2xhc3MuZnVsbC1oZWlnaHQtdGFic109XCIhZHluYW1pY0hlaWdodFwiXG4gICAgICAgICAgICAgICBbYW5pbWF0aW9uRHVyYXRpb25dPVwiZ2V0VGFiQW5pbWF0aW9uRHVyYXRpb24oKVwiXG4gICAgICAgICAgICAgICAoYW5pbWF0aW9uRG9uZSk9XCJvbkFuaW1hdGlvbkRvbmUoKVwiXG4+XG4gIDxtYXQtdGFiICpuZ0Zvcj1cImxldCBhY3Rpdml0eVJlZiBvZiBhY3Rpdml0eVJlZnM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IGFjdGl2aXR5SW5kZXhcIj5cbiAgICA8YXVwLWJ1c3ktb3ZlcmxheSBbYnVzeSRdPVwiYnVzeVwiIGNka1RyYXBGb2N1cyBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZT5cbiAgICAgIDwhLS1cbiAgICAgIFdlIGhhdmUgaXNzdWVzIHdoZXJlIGFuZ3VsYXIgaXMgdHJpZ2dlcmluZyBhIGxlYXZlIGFuaW1hdGlvbiB3aGVuIGFuXG4gICAgICBuZXcgYWN0aXZpdHkgaXMgc3RhcnRlZCwgYnV0IGlzIG5vdCBydW5uaW5nIHRoZSBlbnRlciBhbmltYXRpb25cbiAgICAgIHdoZW4gaXQgaXMgc2Nyb2xsZWQgYmFjayBpbnRvIHZpZXcuICBTbyB3ZSB0cmFjayB0aGUgdGFiIGNoYW5nZXMgYW5kXG4gICAgICBkaXNhYmxlIGFsbCBhbmltYXRpb25zIGluc2lkZSB0aGUgdGFiIHdoaWxlIHdlJ3JlIGFuaW1hdGluZy5cbiAgICAgIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImFjdGl2aXR5LW91dGxldC13cmFwcGVyXCIgW0AuZGlzYWJsZWRdPVwiIWFjdGl2aXR5UmVmLmZvY3VzZWRcIj5cbiAgICAgICAgPGF1cC1hY3Rpdml0eS1vdXRsZXQgW25lc3RlZEludGVyYWN0aW9uQ29udGV4dF09XCJ0aGlzXCIgW2FjdGl2aXR5UmVmXT1cImFjdGl2aXR5UmVmXCI+PC9hdXAtYWN0aXZpdHktb3V0bGV0PlxuICAgICAgPC9kaXY+XG4gICAgPC9hdXAtYnVzeS1vdmVybGF5PlxuICA8L21hdC10YWI+XG48L21hdC10YWItZ3JvdXA+XG4iXX0=
@@ -1,14 +1,46 @@
1
- import { Component, ComponentFactoryResolver, Injector, Input, ViewContainerRef } from '@angular/core';
1
+ import { Component, Inject, Injector, Input, ViewContainerRef } from '@angular/core';
2
+ import { DelegatingCommand } from "@coolon/pectin";
2
3
  import { lang } from '@coolon/typescript-utilities';
3
4
  import { ACTIVITY_DATA } from '../../../activity';
5
+ import { ActivityContext } from "../../../activity-context";
4
6
  import { ActivityRef } from '../../../activity-ref';
7
+ import { INTERACTION_CONTEXT } from '../../../interaction-context';
8
+ import { INTERACTION_CONTEXT_PROVIDER } from "../../../interaction-context-provider";
5
9
  import * as i0 from "@angular/core";
10
+ class ActivityContextImpl extends ActivityContext {
11
+ activityContainer;
12
+ readyListeners = [];
13
+ confirmCommand = new DelegatingCommand();
14
+ cancelCommand = new DelegatingCommand();
15
+ activity;
16
+ constructor(activityContainer) {
17
+ super();
18
+ this.activityContainer = activityContainer;
19
+ }
20
+ init(activity) {
21
+ this.activity = activity;
22
+ this.confirmCommand.setDelegate(activity.confirmCommand);
23
+ this.cancelCommand.setDelegate(activity.cancelCommand);
24
+ this.readyListeners.forEach((listener) => listener(this.activity));
25
+ }
26
+ get interactionContext() {
27
+ return this.activityContainer;
28
+ }
29
+ onActivityReady(callback) {
30
+ if (this.activity) {
31
+ this.activity.onActivityReady(callback);
32
+ }
33
+ else {
34
+ this.readyListeners.push(callback);
35
+ }
36
+ }
37
+ }
6
38
  /**
7
39
  * ActivityOutletComponent creates and displays an activity and delegates the interaction context functionality to an
8
40
  * external service.
9
41
  */
10
42
  export class ActivityOutletComponent {
11
- componentFactoryResolver;
43
+ interactionContext;
12
44
  viewContainerRef;
13
45
  injector;
14
46
  activityComponentRef;
@@ -25,39 +57,41 @@ export class ActivityOutletComponent {
25
57
  get activityRef() {
26
58
  return this._activityRef;
27
59
  }
28
- constructor(componentFactoryResolver, viewContainerRef, injector) {
29
- this.componentFactoryResolver = componentFactoryResolver;
60
+ constructor(interactionContext, viewContainerRef, injector) {
61
+ this.interactionContext = interactionContext;
30
62
  this.viewContainerRef = viewContainerRef;
31
63
  this.injector = injector;
32
64
  }
33
65
  loadActivity(activityRef) {
66
+ this.viewContainerRef.clear();
67
+ const activityContext = new ActivityContextImpl(this.interactionContext);
34
68
  const injector = Injector.create({
35
69
  providers: [
36
- {
37
- provide: ACTIVITY_DATA,
38
- useValue: activityRef.activityData
39
- }
70
+ { provide: ACTIVITY_DATA, useValue: activityRef.activityData },
71
+ { provide: ActivityContext, useValue: activityContext },
72
+ { provide: INTERACTION_CONTEXT_PROVIDER, useValue: activityContext }
40
73
  ],
41
74
  parent: this.injector
42
75
  });
43
- const componentFactory = this.componentFactoryResolver.resolveComponentFactory(activityRef.activityClass);
44
- this.viewContainerRef.clear();
45
- // console.log(`creating component -> ${activityRef.activityClass.name}`);
46
- this.activityComponentRef = this.viewContainerRef.createComponent(componentFactory, 0, injector);
76
+ this.activityComponentRef = this.viewContainerRef.createComponent(activityRef.activityClass, { index: 0, injector });
77
+ activityContext.init(this.activityComponentRef.instance);
47
78
  this.activityRef.notifyActivityCreated(this.activityComponentRef.instance, this.nestedInteractionContext);
48
79
  }
49
80
  get component() {
50
81
  return this.activityComponentRef.instance;
51
82
  }
52
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityOutletComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
83
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityOutletComponent, deps: [{ token: INTERACTION_CONTEXT }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
53
84
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityOutletComponent, selector: "aup-activity-outlet", inputs: { nestedInteractionContext: "nestedInteractionContext", activityRef: "activityRef" }, ngImport: i0, template: '', isInline: true, styles: [":host{display:block}\n"] });
54
85
  }
55
86
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityOutletComponent, decorators: [{
56
87
  type: Component,
57
88
  args: [{ selector: 'aup-activity-outlet', template: '', styles: [":host{display:block}\n"] }]
58
- }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: i0.Injector }]; }, propDecorators: { nestedInteractionContext: [{
89
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
90
+ type: Inject,
91
+ args: [INTERACTION_CONTEXT]
92
+ }] }, { type: i0.ViewContainerRef }, { type: i0.Injector }]; }, propDecorators: { nestedInteractionContext: [{
59
93
  type: Input
60
94
  }], activityRef: [{
61
95
  type: Input
62
96
  }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2ludGVyYWN0aW9uL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsd0JBQXdCLEVBRXhCLFFBQVEsRUFDUixLQUFLLEVBRUwsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRCxPQUFPLEVBQVcsYUFBYSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQUdsRDs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sdUJBQXVCO0lBdUJ4QjtJQUNBO0lBQ0E7SUF2QkYsb0JBQW9CLENBQWtDO0lBRzlELHdCQUF3QixDQUFxQjtJQUVyQyxZQUFZLENBQXVCO0lBRTNDLElBQ0ksV0FBVyxDQUFDLFdBQWlDO1FBQy9DLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1NBQzFFO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQUEsQ0FBQztJQUVGLElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsWUFDVSx3QkFBa0QsRUFDbEQsZ0JBQWtDLEVBQ2xDLFFBQWtCO1FBRmxCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxhQUFRLEdBQVIsUUFBUSxDQUFVO0lBRTVCLENBQUM7SUFFRCxZQUFZLENBQUMsV0FBaUM7UUFDNUMsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMvQixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGFBQWE7b0JBQ3RCLFFBQVEsRUFBRSxXQUFXLENBQUMsWUFBWTtpQkFDbkM7YUFDRjtZQUNELE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN0QixDQUFDLENBQUM7UUFDSCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDMUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLDBFQUEwRTtRQUMxRSxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDakcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7SUFDNUMsQ0FBQzt1R0FoRFUsdUJBQXVCOzJGQUF2Qix1QkFBdUIseUpBSHhCLEVBQUU7OzJGQUdELHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxxQkFBcUIsWUFDckIsRUFBRTtxS0FRWix3QkFBd0I7c0JBRHZCLEtBQUs7Z0JBTUYsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIENvbXBvbmVudFJlZixcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2xhbmd9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHtBY3Rpdml0eSwgQUNUSVZJVFlfREFUQX0gZnJvbSAnLi4vLi4vLi4vYWN0aXZpdHknO1xuaW1wb3J0IHtBY3Rpdml0eVJlZn0gZnJvbSAnLi4vLi4vLi4vYWN0aXZpdHktcmVmJztcbmltcG9ydCB7SW50ZXJhY3Rpb25Db250ZXh0fSBmcm9tICcuLi8uLi8uLi9pbnRlcmFjdGlvbi1jb250ZXh0JztcblxuLyoqXG4gKiBBY3Rpdml0eU91dGxldENvbXBvbmVudCBjcmVhdGVzIGFuZCBkaXNwbGF5cyBhbiBhY3Rpdml0eSBhbmQgZGVsZWdhdGVzIHRoZSBpbnRlcmFjdGlvbiBjb250ZXh0IGZ1bmN0aW9uYWxpdHkgdG8gYW5cbiAqIGV4dGVybmFsIHNlcnZpY2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1hY3Rpdml0eS1vdXRsZXQnLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlVXJsczogWycuL2FjdGl2aXR5LW91dGxldC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFjdGl2aXR5T3V0bGV0Q29tcG9uZW50PEQsIFIsIEU+ICB7XG5cbiAgcHJpdmF0ZSBhY3Rpdml0eUNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEFjdGl2aXR5PEQsIFIsIEU+PjtcblxuICBASW5wdXQoKVxuICBuZXN0ZWRJbnRlcmFjdGlvbkNvbnRleHQ6IEludGVyYWN0aW9uQ29udGV4dDtcblxuICBwcml2YXRlIF9hY3Rpdml0eVJlZjogQWN0aXZpdHlSZWY8RCwgUiwgRT47XG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2aXR5UmVmKGFjdGl2aXR5UmVmOiBBY3Rpdml0eVJlZjxELCBSLCBFPikge1xuICAgIGlmICh0aGlzLmFjdGl2aXR5UmVmICYmICF0aGlzLmFjdGl2aXR5UmVmLmlzQ29tcGxldGUoKSkge1xuICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoJ2NoYW5naW5nIGFjdGl2aXR5IGJlZm9yZSBwcmV2aW91cyBvbmUgaGFzIGNvbXBsZXRlZCcpO1xuICAgIH1cbiAgICB0aGlzLl9hY3Rpdml0eVJlZiA9IGFjdGl2aXR5UmVmO1xuICAgIHRoaXMubG9hZEFjdGl2aXR5KGFjdGl2aXR5UmVmKTtcbiAgfTtcblxuICBnZXQgYWN0aXZpdHlSZWYoKTogQWN0aXZpdHlSZWY8RCwgUiwgRT4ge1xuICAgIHJldHVybiB0aGlzLl9hY3Rpdml0eVJlZjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yXG4gICkge1xuICB9XG5cbiAgbG9hZEFjdGl2aXR5KGFjdGl2aXR5UmVmOiBBY3Rpdml0eVJlZjxELCBSLCBFPikge1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQUNUSVZJVFlfREFUQSxcbiAgICAgICAgICB1c2VWYWx1ZTogYWN0aXZpdHlSZWYuYWN0aXZpdHlEYXRhXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3JcbiAgICB9KTtcbiAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoYWN0aXZpdHlSZWYuYWN0aXZpdHlDbGFzcyk7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XG4gICAgLy8gY29uc29sZS5sb2coYGNyZWF0aW5nIGNvbXBvbmVudCAtPiAke2FjdGl2aXR5UmVmLmFjdGl2aXR5Q2xhc3MubmFtZX1gKTtcbiAgICB0aGlzLmFjdGl2aXR5Q29tcG9uZW50UmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRGYWN0b3J5LCAwLCBpbmplY3Rvcik7XG4gICAgdGhpcy5hY3Rpdml0eVJlZi5ub3RpZnlBY3Rpdml0eUNyZWF0ZWQodGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZSwgdGhpcy5uZXN0ZWRJbnRlcmFjdGlvbkNvbnRleHQpO1xuICB9XG5cbiAgZ2V0IGNvbXBvbmVudCgpOiBBY3Rpdml0eTxELCBSLCBFPiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZpdHlDb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gIH1cblxufVxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2ludGVyYWN0aW9uL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWdCLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRCxPQUFPLEVBQVcsYUFBYSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsbUJBQW1CLEVBQXFCLE1BQU0sOEJBQThCLENBQUM7QUFDckYsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7O0FBR25GLE1BQU0sbUJBQW9CLFNBQVEsZUFBZTtJQVMzQjtJQVBaLGNBQWMsR0FBa0QsRUFBRSxDQUFDO0lBRWxFLGNBQWMsR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUE7SUFDeEMsYUFBYSxHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQTtJQUV4QyxRQUFRLENBQXFCO0lBRXJDLFlBQW9CLGlCQUFxQztRQUN2RCxLQUFLLEVBQUUsQ0FBQztRQURVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBb0I7SUFFekQsQ0FBQztJQUVELElBQUksQ0FBQyxRQUE0QjtR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QUFvQixDQUFDLFFBQVEsQ0FBQztJQUM1QyxDQUFDO3VHQTVDVSx1QkFBdUIsa0JBc0JkLG1CQUFtQjsyRkF0QjVCLHVCQUF1Qix5SkFIeEIsRUFBRTs7MkZBR0QsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQixZQUNyQixFQUFFOzswQkF5QkMsTUFBTTsyQkFBQyxtQkFBbUI7a0dBakJ2Qyx3QkFBd0I7c0JBRHZCLEtBQUs7Z0JBTUYsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENvbXBvbmVudFJlZiwgSW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEZWxlZ2F0aW5nQ29tbWFuZH0gZnJvbSBcIkBjb29sb24vcGVjdGluXCI7XG5pbXBvcnQge2xhbmd9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHtBY3Rpdml0eSwgQUNUSVZJVFlfREFUQX0gZnJvbSAnLi4vLi4vLi4vYWN0aXZpdHknO1xuaW1wb3J0IHtBY3Rpdml0eUNvbnRleHR9IGZyb20gXCIuLi8uLi8uLi9hY3Rpdml0eS1jb250ZXh0XCI7XG5pbXBvcnQge0FjdGl2aXR5UmVmfSBmcm9tICcuLi8uLi8uLi9hY3Rpdml0eS1yZWYnO1xuaW1wb3J0IHtJTlRFUkFDVElPTl9DT05URVhULCBJbnRlcmFjdGlvbkNvbnRleHR9IGZyb20gJy4uLy4uLy4uL2ludGVyYWN0aW9uLWNvbnRleHQnO1xuaW1wb3J0IHtJTlRFUkFDVElPTl9DT05URVhUX1BST1ZJREVSfSBmcm9tIFwiLi4vLi4vLi4vaW50ZXJhY3Rpb24tY29udGV4dC1wcm92aWRlclwiO1xuXG5cbmNsYXNzIEFjdGl2aXR5Q29udGV4dEltcGwgZXh0ZW5kcyBBY3Rpdml0eUNvbnRleHQge1xuXG4gIHByaXZhdGUgcmVhZHlMaXN0ZW5lcnM6IEFycmF5PChhY3Rpdml0eTogQWN0aXZpdHk8YW55LCBhbnk+KSA9PiB2b2lkPiA9IFtdO1xuXG4gIHJlYWRvbmx5IGNvbmZpcm1Db21tYW5kID0gbmV3IERlbGVnYXRpbmdDb21tYW5kKClcbiAgcmVhZG9ubHkgY2FuY2VsQ29tbWFuZCA9IG5ldyBEZWxlZ2F0aW5nQ29tbWFuZCgpXG5cbiAgcHJpdmF0ZSBhY3Rpdml0eTogQWN0aXZpdHk8YW55LCBhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aXZpdHlDb250YWluZXI6IEludGVyYWN0aW9uQ29udGV4dCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBpbml0KGFjdGl2aXR5OiBBY3Rpdml0eTxhbnksIGFueT4pIHtcbiAgICB0aGlzLmFjdGl2aXR5ID0gYWN0aXZpdHk7XG4gICAgdGhpcy5jb25maXJtQ29tbWFuZC5zZXREZWxlZ2F0ZShhY3Rpdml0eS5jb25maXJtQ29tbWFuZCk7XG4gICAgdGhpcy5jYW5jZWxDb21tYW5kLnNldERlbGVnYXRlKGFjdGl2aXR5LmNhbmNlbENvbW1hbmQpO1xuICAgIHRoaXMucmVhZHlMaXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IGxpc3RlbmVyKHRoaXMuYWN0aXZpdHkpKTtcbiAgfVxuXG4gIGdldCBpbnRlcmFjdGlvbkNvbnRleHQoKTogSW50ZXJhY3Rpb25Db250ZXh0IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eUNvbnRhaW5lcjtcbiAgfVxuXG4gIG9uQWN0aXZpdHlSZWFkeShjYWxsYmFjazogKGFjdGl2aXR5OiBBY3Rpdml0eTxhbnksIGFueT4pID0+IHZvaWQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hY3Rpdml0eSkge1xuICAgICAgdGhpcy5hY3Rpdml0eS5vbkFjdGl2aXR5UmVhZHkoY2FsbGJhY2spO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlYWR5TGlzdGVuZXJzLnB1c2goY2FsbGJhY2spO1xuICAgIH1cbiAgfVxuXG59XG5cbi8qKlxuICogQWN0aXZpdHlPdXRsZXRDb21wb25lbnQgY3JlYXRlcyBhbmQgZGlzcGxheXMgYW4gYWN0aXZpdHkgYW5kIGRlbGVnYXRlcyB0aGUgaW50ZXJhY3Rpb24gY29udGV4dCBmdW5jdGlvbmFsaXR5IHRvIGFuXG4gKiBleHRlcm5hbCBzZXJ2aWNlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtYWN0aXZpdHktb3V0bGV0JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpdml0eU91dGxldENvbXBvbmVudDxELCBSLCBFPiB7XG5cbiAgcHJpdmF0ZSBhY3Rpdml0eUNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEFjdGl2aXR5PEQsIFIsIEU+PjtcblxuICBASW5wdXQoKVxuICBuZXN0ZWRJbnRlcmFjdGlvbkNvbnRleHQ6IEludGVyYWN0aW9uQ29udGV4dDtcblxuICBwcml2YXRlIF9hY3Rpdml0eVJlZjogQWN0aXZpdHlSZWY8RCwgUiwgRT47XG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2aXR5UmVmKGFjdGl2aXR5UmVmOiBBY3Rpdml0eVJlZjxELCBSLCBFPikge1xuICAgIGlmICh0aGlzLmFjdGl2aXR5UmVmICYmICF0aGlzLmFjdGl2aXR5UmVmLmlzQ29tcGxldGUoKSkge1xuICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoJ2NoYW5naW5nIGFjdGl2aXR5IGJlZm9yZSBwcmV2aW91cyBvbmUgaGFzIGNvbXBsZXRlZCcpO1xuICAgIH1cbiAgICB0aGlzLl9hY3Rpdml0eVJlZiA9IGFjdGl2aXR5UmVmO1xuICAgIHRoaXMubG9hZEFjdGl2aXR5KGFjdGl2aXR5UmVmKTtcbiAgfTtcblxuICBnZXQgYWN0aXZpdHlSZWYoKTogQWN0aXZpdHlSZWY8RCwgUiwgRT4ge1xuICAgIHJldHVybiB0aGlzLl9hY3Rpdml0eVJlZjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoSU5URVJBQ1RJT05fQ09OVEVYVCkgcHJpdmF0ZSBpbnRlcmFjdGlvbkNvbnRleHQ6IEludGVyYWN0aW9uQ29udGV4dCwgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xuICB9XG5cbiAgbG9hZEFjdGl2aXR5KGFjdGl2aXR5UmVmOiBBY3Rpdml0eVJlZjxELCBSLCBFPikge1xuICAgIHRoaXMudmlld0NvbnRhaW5lclJlZi5jbGVhcigpO1xuICAgIGNvbnN0IGFjdGl2aXR5Q29udGV4dCA9IG5ldyBBY3Rpdml0eUNvbnRleHRJbXBsKHRoaXMuaW50ZXJhY3Rpb25Db250ZXh0KTtcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge3Byb3ZpZGU6IEFDVElWSVRZX0RBVEEsIHVzZVZhbHVlOiBhY3Rpdml0eVJlZi5hY3Rpdml0eURhdGF9LFxuICAgICAgICB7cHJvdmlkZTogQWN0aXZpdHlDb250ZXh0LCB1c2VWYWx1ZTogYWN0aXZpdHlDb250ZXh0fSxcbiAgICAgICAge3Byb3ZpZGU6IElOVEVSQUNUSU9OX0NPTlRFWFRfUFJPVklERVIsIHVzZVZhbHVlOiBhY3Rpdml0eUNvbnRleHR9XG4gICAgICBdLFxuICAgICAgcGFyZW50OiB0aGlzLmluamVjdG9yXG4gICAgfSk7XG5cbiAgICB0aGlzLmFjdGl2aXR5Q29tcG9uZW50UmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChhY3Rpdml0eVJlZi5hY3Rpdml0eUNsYXNzLCB7aW5kZXg6IDAsIGluamVjdG9yfSk7XG4gICAgYWN0aXZpdHlDb250ZXh0LmluaXQodGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZSk7XG4gICAgdGhpcy5hY3Rpdml0eVJlZi5ub3RpZnlBY3Rpdml0eUNyZWF0ZWQodGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZSwgdGhpcy5uZXN0ZWRJbnRlcmFjdGlvbkNvbnRleHQpO1xuICB9XG5cbiAgZ2V0IGNvbXBvbmVudCgpOiBBY3Rpdml0eTxELCBSLCBFPiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZpdHlDb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gIH1cblxufVxuIl19
@@ -4,13 +4,13 @@ import { ACTIVITY_DATA } from '../../activity';
4
4
  import { Alert } from '../../alert';
5
5
  import { AbstractDialogComponent } from '../abstract-dialog.component';
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- import * as i2 from "../../../components/text/markdown/markdown.component";
9
- import * as i3 from "../activity-actions/activity-actions.component";
10
- import * as i4 from "../activity-title/activity-title.component";
11
- import * as i5 from "../activity-body/activity-body.component";
12
- import * as i6 from "../../alert";
7
+ import * as i1 from "../alert-renderer/alert-renderer.component";
8
+ import * as i2 from "../../alert";
13
9
  export class AlertDialogComponent extends AbstractDialogComponent {
10
+ confirmFace;
11
+ title;
12
+ content;
13
+ color;
14
14
  constructor(alert) {
15
15
  super(alert);
16
16
  this.confirmCommand = Command.create(() => {
@@ -18,13 +18,13 @@ export class AlertDialogComponent extends AbstractDialogComponent {
18
18
  });
19
19
  }
20
20
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AlertDialogComponent, deps: [{ token: ACTIVITY_DATA }], target: i0.ɵɵFactoryTarget.Component });
21
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AlertDialogComponent, selector: "aup-alert-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: i3.ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align", "alignContent"] }, { kind: "component", type: i4.ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: i5.ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AlertDialogComponent, selector: "aup-alert-dialog", usesInheritance: true, ngImport: i0, template: "<aup-alert-renderer [config]=\"activityData\"></aup-alert-renderer>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "component", type: i1.AlertRendererComponent, selector: "aup-alert-renderer", inputs: ["config", "confirmCommand"] }] });
22
22
  }
23
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AlertDialogComponent, decorators: [{
24
24
  type: Component,
25
- args: [{ selector: 'aup-alert-dialog', template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"] }]
26
- }], ctorParameters: function () { return [{ type: i6.Alert, decorators: [{
25
+ args: [{ selector: 'aup-alert-dialog', template: "<aup-alert-renderer [config]=\"activityData\"></aup-alert-renderer>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"] }]
26
+ }], ctorParameters: function () { return [{ type: i2.Alert, decorators: [{
27
27
  type: Inject,
28
28
  args: [ACTIVITY_DATA]
29
29
  }] }]; } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2ludGVyYWN0aW9uL2NvbXBvbmVudHMvYWxlcnQtZGlhbG9nL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQU9yRSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsdUJBQW9DO0lBRTVFLFlBQW1DLEtBQVk7UUFDN0MsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBUFUsb0JBQW9CLGtCQUVYLGFBQWE7MkZBRnRCLG9CQUFvQiwrRUNYakMsNlZBS0E7OzJGRE1hLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQU1mLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tYW5kfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQge0FDVElWSVRZX0RBVEF9IGZyb20gJy4uLy4uL2FjdGl2aXR5JztcbmltcG9ydCB7QWxlcnR9IGZyb20gJy4uLy4uL2FsZXJ0JztcbmltcG9ydCB7QWJzdHJhY3REaWFsb2dDb21wb25lbnR9IGZyb20gJy4uL2Fic3RyYWN0LWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtYWxlcnQtZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFsZXJ0RGlhbG9nQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REaWFsb2dDb21wb25lbnQ8QWxlcnQsIHZvaWQ+IHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEFDVElWSVRZX0RBVEEpIGFsZXJ0OiBBbGVydCkge1xuICAgIHN1cGVyKGFsZXJ0KTtcbiAgICB0aGlzLmNvbmZpcm1Db21tYW5kID0gQ29tbWFuZC5jcmVhdGUoKCkgPT4ge1xuICAgICAgdGhpcy5kb25lKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxhdXAtYWN0aXZpdHktdGl0bGUgKm5nSWY9XCJ0aXRsZVwiIFtjb2xvcl09XCJjb2xvclwiPjxhdXAtbWFya2Rvd24gW2NvbnRlbnRdPVwidGl0bGVcIiBbaW5saW5lXT1cInRydWVcIj48L2F1cC1tYXJrZG93bj48L2F1cC1hY3Rpdml0eS10aXRsZT5cbjxhdXAtYWN0aXZpdHktYm9keT5cbiAgPGF1cC1tYXJrZG93biAqbmdGb3I9XCJsZXQgbGluZSBvZiBjb250ZW50XCIgW2NvbnRlbnRdPVwibGluZVwiPjwvYXVwLW1hcmtkb3duPlxuPC9hdXAtYWN0aXZpdHktYm9keT5cbjxhdXAtYWN0aXZpdHktYWN0aW9ucyBbY29uZmlybUZhY2VdPVwiY29uZmlybUZhY2VcIj48L2F1cC1hY3Rpdml0eS1hY3Rpb25zPlxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2ludGVyYWN0aW9uL2NvbXBvbmVudHMvYWxlcnQtZGlhbG9nL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXZDLE9BQU8sRUFBVyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDOzs7O0FBT3JFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx1QkFBMkM7SUFFMUUsV0FBVyxDQUFjO0lBQ3pCLEtBQUssQ0FBUztJQUNkLE9BQU8sQ0FBVztJQUNsQixLQUFLLENBQWlDO0lBRS9DLFlBQW1DLEtBQVk7UUFDN0MsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBWlUsb0JBQW9CLGtCQU9YLGFBQWE7MkZBUHRCLG9CQUFvQiwrRUNaakMsdUVBQ0E7OzJGRFdhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQVdmLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tYW5kfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQge0NvbW1hbmRGYWNlfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9jb21tYW5kcy9jb21tYW5kLWZhY2VcIjtcbmltcG9ydCB7QWN0aXZpdHksIEFDVElWSVRZX0RBVEF9IGZyb20gJy4uLy4uL2FjdGl2aXR5JztcbmltcG9ydCB7QWxlcnR9IGZyb20gJy4uLy4uL2FsZXJ0JztcbmltcG9ydCB7QWJzdHJhY3REaWFsb2dDb21wb25lbnR9IGZyb20gJy4uL2Fic3RyYWN0LWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtYWxlcnQtZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFsZXJ0RGlhbG9nQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REaWFsb2dDb21wb25lbnQ8QWxlcnQsIEFsZXJ0LCB2b2lkPiB7XG5cbiAgcmVhZG9ubHkgY29uZmlybUZhY2U6IENvbW1hbmRGYWNlO1xuICByZWFkb25seSB0aXRsZTogc3RyaW5nO1xuICByZWFkb25seSBjb250ZW50OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgY29sb3I/OiAncHJpbWFyeScgfCAnYWNjZW50JyB8ICd3YXJuJztcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEFDVElWSVRZX0RBVEEpIGFsZXJ0OiBBbGVydCkge1xuICAgIHN1cGVyKGFsZXJ0KTtcbiAgICB0aGlzLmNvbmZpcm1Db21tYW5kID0gQ29tbWFuZC5jcmVhdGUoKCkgPT4ge1xuICAgICAgdGhpcy5kb25lKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxhdXAtYWxlcnQtcmVuZGVyZXIgW2NvbmZpZ109XCJhY3Rpdml0eURhdGFcIj48L2F1cC1hbGVydC1yZW5kZXJlcj5cbiJdfQ==
@@ -0,0 +1,55 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Component, Input, Optional } from '@angular/core';
3
+ import { assert, Command, proxify, Proxify } from "@coolon/pectin";
4
+ import { DisposableComponent } from "../../../components/disposable-component";
5
+ import { ActivityContext } from "../../activity-context";
6
+ import { Alert } from "../../alert";
7
+ import { Confirm } from "../../confirm";
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../activity-context";
10
+ import * as i2 from "@angular/common";
11
+ import * as i3 from "../../../components/text/markdown/markdown.component";
12
+ import * as i4 from "../activity-actions/activity-actions.component";
13
+ import * as i5 from "../activity-title/activity-title.component";
14
+ import * as i6 from "../activity-body/activity-body.component";
15
+ export class AlertRendererComponent extends DisposableComponent {
16
+ config;
17
+ #confirmCommand_accessor_storage = proxify(Command);
18
+ get confirmCommand() { return this.#confirmCommand_accessor_storage; }
19
+ set confirmCommand(value) { this.#confirmCommand_accessor_storage = value; }
20
+ confirmFace;
21
+ title;
22
+ content;
23
+ color;
24
+ constructor(activityContext) {
25
+ super();
26
+ this.onInit(() => {
27
+ assert.notNil(this.config);
28
+ this.title = Alert.getTitle(this.config);
29
+ this.color = Confirm.checkColor(this.config);
30
+ this.content = Alert.getContent(this.config);
31
+ this.confirmFace = {
32
+ text: () => this.config.ok(),
33
+ color: () => this.color || 'primary',
34
+ style: () => 'raised'
35
+ };
36
+ });
37
+ }
38
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AlertRendererComponent, deps: [{ token: i1.ActivityContext, optional: true }], target: i0.ɵɵFactoryTarget.Component });
39
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AlertRendererComponent, selector: "aup-alert-renderer", inputs: { config: "config", confirmCommand: "confirmCommand" }, usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\"></aup-activity-actions>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: i4.ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align", "alignContent"] }, { kind: "component", type: i5.ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: i6.ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
40
+ }
41
+ __decorate([
42
+ Proxify(),
43
+ __metadata("design:type", Command)
44
+ ], AlertRendererComponent.prototype, "confirmCommand", null);
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AlertRendererComponent, decorators: [{
46
+ type: Component,
47
+ args: [{ selector: 'aup-alert-renderer', template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\"></aup-activity-actions>\n" }]
48
+ }], ctorParameters: function () { return [{ type: i1.ActivityContext, decorators: [{
49
+ type: Optional
50
+ }] }]; }, propDecorators: { config: [{
51
+ type: Input
52
+ }], confirmCommand: [{
53
+ type: Input
54
+ }] } });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvaW50ZXJhY3Rpb24vY29tcG9uZW50cy9hbGVydC1yZW5kZXJlci9hbGVydC1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FsZXJ0LXJlbmRlcmVyL2FsZXJ0LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWpFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7O0FBT3RDLE1BQU0sT0FBTyxzQkFBZ0QsU0FBUSxtQkFBbUI7SUFFdEYsTUFBTSxDQUFHO0lBR0EsbUNBQTBCLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUEzQyxJQUFBLGNBQWMsb0RBQTZCO0lBQTNDLElBQUEsY0FBYywwREFBNkI7SUFFMUMsV0FBVyxDQUFjO0lBRXpCLEtBQUssQ0FBUztJQUNkLE9BQU8sQ0FBVztJQUNsQixLQUFLLENBQWlDO0lBRWhELFlBQXdCLGVBQWdDO1FBQ3RELEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDZixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pDLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUU3QyxJQUFJLENBQUMsV0FBVyxHQUFHO2dCQUNqQixJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUU7Z0JBQzVCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLFNBQVM7Z0JBQ3BDLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRO2FBQ3RCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7dUdBNUJVLHNCQUFzQjsyRkFBdEIsc0JBQXNCLGlKQ2JuQyw2VkFLQTs7QURhVztJQURDLE9BQU8sRUFBRTs4QkFDTSxPQUFPOzREQUFvQjsyRkFMekMsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG9CQUFvQjs7MEJBaUJqQixRQUFROzRDQVhyQixNQUFNO3NCQURMLEtBQUs7Z0JBSUcsY0FBYztzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHthc3NlcnQsIENvbW1hbmQsIHByb3hpZnksIFByb3hpZnl9IGZyb20gXCJAY29vbG9uL3BlY3RpblwiO1xuaW1wb3J0IHtDb21tYW5kRmFjZX0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvY29tbWFuZHMvY29tbWFuZC1mYWNlXCI7XG5pbXBvcnQge0Rpc3Bvc2FibGVDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL2Rpc3Bvc2FibGUtY29tcG9uZW50XCI7XG5pbXBvcnQge0FjdGl2aXR5Q29udGV4dH0gZnJvbSBcIi4uLy4uL2FjdGl2aXR5LWNvbnRleHRcIjtcbmltcG9ydCB7QWxlcnR9IGZyb20gXCIuLi8uLi9hbGVydFwiO1xuaW1wb3J0IHtDb25maXJtfSBmcm9tIFwiLi4vLi4vY29uZmlybVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtYWxlcnQtcmVuZGVyZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbGVydC1yZW5kZXJlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBbGVydFJlbmRlcmVyQ29tcG9uZW50PFQgZXh0ZW5kcyBBbGVydCA9IEFsZXJ0PiBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBjb25maWc6IFRcblxuICBASW5wdXQoKSBAUHJveGlmeSgpXG4gIGFjY2Vzc29yIGNvbmZpcm1Db21tYW5kOiBDb21tYW5kID0gcHJveGlmeShDb21tYW5kKTtcblxuICBwcm90ZWN0ZWQgY29uZmlybUZhY2U6IENvbW1hbmRGYWNlO1xuXG4gIHByb3RlY3RlZCB0aXRsZTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgY29udGVudDogc3RyaW5nW107XG4gIHByb3RlY3RlZCBjb2xvcj86ICdwcmltYXJ5JyB8ICdhY2NlbnQnIHwgJ3dhcm4nO1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIGFjdGl2aXR5Q29udGV4dDogQWN0aXZpdHlDb250ZXh0KSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMub25Jbml0KCgpID0+IHtcbiAgICAgIGFzc2VydC5ub3ROaWwodGhpcy5jb25maWcpO1xuICAgICAgdGhpcy50aXRsZSA9IEFsZXJ0LmdldFRpdGxlKHRoaXMuY29uZmlnKTtcbiAgICAgIHRoaXMuY29sb3IgPSBDb25maXJtLmNoZWNrQ29sb3IodGhpcy5jb25maWcpO1xuICAgICAgdGhpcy5jb250ZW50ID0gQWxlcnQuZ2V0Q29udGVudCh0aGlzLmNvbmZpZyk7XG5cbiAgICAgIHRoaXMuY29uZmlybUZhY2UgPSB7XG4gICAgICAgIHRleHQ6ICgpID0+IHRoaXMuY29uZmlnLm9rKCksXG4gICAgICAgIGNvbG9yOiAoKSA9PiB0aGlzLmNvbG9yIHx8ICdwcmltYXJ5JyxcbiAgICAgICAgc3R5bGU6ICgpID0+ICdyYWlzZWQnXG4gICAgICB9O1xuICAgIH0pXG4gIH1cblxuXG59XG4iLCI8YXVwLWFjdGl2aXR5LXRpdGxlICpuZ0lmPVwidGl0bGVcIiBbY29sb3JdPVwiY29sb3JcIj48YXVwLW1hcmtkb3duIFtjb250ZW50XT1cInRpdGxlXCIgW2lubGluZV09XCJ0cnVlXCI+PC9hdXAtbWFya2Rvd24+PC9hdXAtYWN0aXZpdHktdGl0bGU+XG48YXVwLWFjdGl2aXR5LWJvZHk+XG4gIDxhdXAtbWFya2Rvd24gKm5nRm9yPVwibGV0IGxpbmUgb2YgY29udGVudFwiIFtjb250ZW50XT1cImxpbmVcIj48L2F1cC1tYXJrZG93bj5cbjwvYXVwLWFjdGl2aXR5LWJvZHk+XG48YXVwLWFjdGl2aXR5LWFjdGlvbnMgW2NvbmZpcm1GYWNlXT1cImNvbmZpcm1GYWNlXCI+PC9hdXAtYWN0aXZpdHktYWN0aW9ucz5cbiJdfQ==
@@ -0,0 +1,54 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Component, Input, Optional, ViewChild } from '@angular/core';
3
+ import { Command, proxify, Proxify } from "@coolon/pectin";
4
+ import { ActivityContext } from "../../activity-context";
5
+ import { Confirm } from "../../confirm";
6
+ import { ActivityActionsComponent } from "../activity-actions/activity-actions.component";
7
+ import { AlertRendererComponent } from "../alert-renderer/alert-renderer.component";
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../activity-context";
10
+ import * as i2 from "@angular/common";
11
+ import * as i3 from "../../../components/text/markdown/markdown.component";
12
+ import * as i4 from "../activity-actions/activity-actions.component";
13
+ import * as i5 from "../activity-title/activity-title.component";
14
+ import * as i6 from "../activity-body/activity-body.component";
15
+ export class ConfirmRendererComponent extends AlertRendererComponent {
16
+ #cancelCommand_accessor_storage = proxify(Command);
17
+ get cancelCommand() { return this.#cancelCommand_accessor_storage; }
18
+ set cancelCommand(value) { this.#cancelCommand_accessor_storage = value; }
19
+ activityActions;
20
+ cancelFace;
21
+ constructor(activityContext) {
22
+ super(activityContext);
23
+ if (activityContext) {
24
+ activityContext.onActivityReady(() => {
25
+ if (this.activityActions) {
26
+ Confirm.isDestructive(this.config) ? this.activityActions.focusCancel() : this.activityActions.focusConfirm();
27
+ }
28
+ });
29
+ }
30
+ this.onInit(() => {
31
+ this.cancelFace = {
32
+ text: () => this.config.cancel(),
33
+ };
34
+ });
35
+ }
36
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmRendererComponent, deps: [{ token: i1.ActivityContext, optional: true }], target: i0.ɵɵFactoryTarget.Component });
37
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmRendererComponent, selector: "aup-confirm-renderer", inputs: { cancelCommand: "cancelCommand" }, viewQueries: [{ propertyName: "activityActions", first: true, predicate: ActivityActionsComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: i4.ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align", "alignContent"] }, { kind: "component", type: i5.ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: i6.ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
38
+ }
39
+ __decorate([
40
+ Proxify(),
41
+ __metadata("design:type", Command)
42
+ ], ConfirmRendererComponent.prototype, "cancelCommand", null);
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmRendererComponent, decorators: [{
44
+ type: Component,
45
+ args: [{ selector: 'aup-confirm-renderer', template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n\n" }]
46
+ }], ctorParameters: function () { return [{ type: i1.ActivityContext, decorators: [{
47
+ type: Optional
48
+ }] }]; }, propDecorators: { cancelCommand: [{
49
+ type: Input
50
+ }], activityActions: [{
51
+ type: ViewChild,
52
+ args: [ActivityActionsComponent]
53
+ }] } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2NvbmZpcm0tcmVuZGVyZXIvY29uZmlybS1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2NvbmZpcm0tcmVuZGVyZXIvY29uZmlybS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQVMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUlqRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUN4RixPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7Ozs7QUFPbEYsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHNCQUErQjtJQUdsRSxrQ0FBeUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQTFDLElBQUEsYUFBYSxtREFBNkI7SUFBMUMsSUFBQSxhQUFhLHlEQUE2QjtJQUd6QyxlQUFlLENBQTJCO0lBRTFDLFVBQVUsQ0FBYztJQUVsQyxZQUF3QixlQUFnQztRQUN0RCxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFdkIsSUFBSSxlQUFlLEVBQUU7WUFDbkIsZUFBZSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ25DLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtvQkFDeEIsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUE7aUJBQzlHO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDSDtRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRztnQkFDaEIsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO2FBQ2pDLENBQUM7UUFFSixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7dUdBM0JVLHdCQUF3QjsyRkFBeEIsd0JBQXdCLHlKQUt4Qix3QkFBd0IsdUVDckJyQywyWEFNQTs7QURhVztJQURDLE9BQU8sRUFBRTs4QkFDSyxPQUFPOzZEQUFvQjsyRkFIeEMsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHNCQUFzQjs7MEJBY25CLFFBQVE7NENBUFosYUFBYTtzQkFEckIsS0FBSztnQkFJSSxlQUFlO3NCQUR4QixTQUFTO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT3B0aW9uYWwsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Fzc2VydCwgQ29tbWFuZCwgcHJveGlmeSwgUHJveGlmeX0gZnJvbSBcIkBjb29sb24vcGVjdGluXCI7XG5pbXBvcnQge0NvbW1hbmRGYWNlfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9jb21tYW5kcy9jb21tYW5kLWZhY2VcIjtcbmltcG9ydCB7RGlzcG9zYWJsZUNvbXBvbmVudH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnRcIjtcbmltcG9ydCB7QWN0aXZpdHl9IGZyb20gXCIuLi8uLi9hY3Rpdml0eVwiO1xuaW1wb3J0IHtBY3Rpdml0eUNvbnRleHR9IGZyb20gXCIuLi8uLi9hY3Rpdml0eS1jb250ZXh0XCI7XG5pbXBvcnQge0FsZXJ0fSBmcm9tIFwiLi4vLi4vYWxlcnRcIjtcbmltcG9ydCB7Q29uZmlybX0gZnJvbSBcIi4uLy4uL2NvbmZpcm1cIjtcbmltcG9ydCB7QWN0aXZpdHlBY3Rpb25zQ29tcG9uZW50fSBmcm9tIFwiLi4vYWN0aXZpdHktYWN0aW9ucy9hY3Rpdml0eS1hY3Rpb25zLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtBbGVydFJlbmRlcmVyQ29tcG9uZW50fSBmcm9tIFwiLi4vYWxlcnQtcmVuZGVyZXIvYWxlcnQtcmVuZGVyZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1jb25maXJtLXJlbmRlcmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpcm0tcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb25maXJtLXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1SZW5kZXJlckNvbXBvbmVudCBleHRlbmRzIEFsZXJ0UmVuZGVyZXJDb21wb25lbnQ8Q29uZmlybT4ge1xuXG4gIEBJbnB1dCgpIEBQcm94aWZ5KClcbiAgYWNjZXNzb3IgY2FuY2VsQ29tbWFuZDogQ29tbWFuZCA9IHByb3hpZnkoQ29tbWFuZCk7XG5cbiAgQFZpZXdDaGlsZChBY3Rpdml0eUFjdGlvbnNDb21wb25lbnQpXG4gIHByb3RlY3RlZCBhY3Rpdml0eUFjdGlvbnM6IEFjdGl2aXR5QWN0aW9uc0NvbXBvbmVudDtcblxuICBwcm90ZWN0ZWQgY2FuY2VsRmFjZTogQ29tbWFuZEZhY2U7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgYWN0aXZpdHlDb250ZXh0OiBBY3Rpdml0eUNvbnRleHQpIHtcbiAgICBzdXBlcihhY3Rpdml0eUNvbnRleHQpO1xuXG4gICAgaWYgKGFjdGl2aXR5Q29udGV4dCkge1xuICAgICAgYWN0aXZpdHlDb250ZXh0Lm9uQWN0aXZpdHlSZWFkeSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmFjdGl2aXR5QWN0aW9ucykge1xuICAgICAgICAgIENvbmZpcm0uaXNEZXN0cnVjdGl2ZSh0aGlzLmNvbmZpZykgPyB0aGlzLmFjdGl2aXR5QWN0aW9ucy5mb2N1c0NhbmNlbCgpIDogdGhpcy5hY3Rpdml0eUFjdGlvbnMuZm9jdXNDb25maXJtKClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICB0aGlzLm9uSW5pdCgoKSA9PiB7XG4gICAgICB0aGlzLmNhbmNlbEZhY2UgPSB7XG4gICAgICAgIHRleHQ6ICgpID0+IHRoaXMuY29uZmlnLmNhbmNlbCgpLFxuICAgICAgfTtcblxuICAgIH0pXG4gIH1cblxuXG59XG4iLCI8YXVwLWFjdGl2aXR5LXRpdGxlICpuZ0lmPVwidGl0bGVcIiBbY29sb3JdPVwiY29sb3JcIj48YXVwLW1hcmtkb3duIFtjb250ZW50XT1cInRpdGxlXCIgW2lubGluZV09XCJ0cnVlXCI+PC9hdXAtbWFya2Rvd24+PC9hdXAtYWN0aXZpdHktdGl0bGU+XG48YXVwLWFjdGl2aXR5LWJvZHk+XG4gIDxhdXAtbWFya2Rvd24gKm5nRm9yPVwibGV0IGxpbmUgb2YgY29udGVudFwiIFtjb250ZW50XT1cImxpbmVcIj48L2F1cC1tYXJrZG93bj5cbjwvYXVwLWFjdGl2aXR5LWJvZHk+XG48YXVwLWFjdGl2aXR5LWFjdGlvbnMgW2NvbmZpcm1GYWNlXT1cImNvbmZpcm1GYWNlXCIgW2NhbmNlbEZhY2VdPVwiY2FuY2VsRmFjZVwiPjwvYXVwLWFjdGl2aXR5LWFjdGlvbnM+XG5cbiJdfQ==
@@ -3,11 +3,7 @@ import { Command } from '@coolon/pectin';
3
3
  import { ACTIVITY_DATA } from '../../activity';
4
4
  import { AbstractConfirmDialogComponent } from '../abstract-confirm-dialog.component';
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "../../../components/text/markdown/markdown.component";
8
- import * as i3 from "../activity-actions/activity-actions.component";
9
- import * as i4 from "../activity-title/activity-title.component";
10
- import * as i5 from "../activity-body/activity-body.component";
6
+ import * as i1 from "../confirm-renderer/confirm-renderer.component";
11
7
  export class ConfirmThenDialogComponent extends AbstractConfirmDialogComponent {
12
8
  constructor(config) {
13
9
  super(config.confirm);
@@ -18,13 +14,13 @@ export class ConfirmThenDialogComponent extends AbstractConfirmDialogComponent {
18
14
  });
19
15
  }
20
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmThenDialogComponent, deps: [{ token: ACTIVITY_DATA }], target: i0.ɵɵFactoryTarget.Component });
21
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmThenDialogComponent, selector: "aup-confirmation-then-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: i3.ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align", "alignContent"] }, { kind: "component", type: i4.ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: i5.ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
17
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmThenDialogComponent, selector: "aup-confirmation-then-dialog", usesInheritance: true, ngImport: i0, template: "<aup-confirm-renderer [config]=\"config\" [confirmCommand]=\"confirmCommand\" [cancelCommand]=\"cancelCommand\"></aup-confirm-renderer>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "component", type: i1.ConfirmRendererComponent, selector: "aup-confirm-renderer", inputs: ["cancelCommand"] }] });
22
18
  }
23
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmThenDialogComponent, decorators: [{
24
20
  type: Component,
25
- args: [{ selector: 'aup-confirmation-then-dialog', template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"] }]
21
+ args: [{ selector: 'aup-confirmation-then-dialog', template: "<aup-confirm-renderer [config]=\"config\" [confirmCommand]=\"confirmCommand\" [cancelCommand]=\"cancelCommand\"></aup-confirm-renderer>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"] }]
26
22
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
27
23
  type: Inject,
28
24
  args: [ACTIVITY_DATA]
29
25
  }] }]; } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsT0FBTyxFQUFnQixNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBVyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQzs7Ozs7OztBQU9wRixNQUFNLE9BQU8sMEJBQW9DLFNBQVEsOEJBQThFO0lBRXJJLFlBQW1DLE1BQWdEO1FBQ2pGLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQztpQkFDcEUsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUNuQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQVZVLDBCQUEwQixrQkFFakIsYUFBYTsyRkFGdEIsMEJBQTBCLDJGQ1h2Qyx5WEFLQTs7MkZETWEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLDhCQUE4Qjs7MEJBTTNCLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tYW5kLCBDb25zdHJ1Y3RhYmxlfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQge0FjdGl2aXR5LCBBQ1RJVklUWV9EQVRBfSBmcm9tICcuLi8uLi9hY3Rpdml0eSc7XG5pbXBvcnQge0NvbmZpcm19IGZyb20gJy4uLy4uL2NvbmZpcm0nO1xuaW1wb3J0IHtBYnN0cmFjdENvbmZpcm1EaWFsb2dDb21wb25lbnR9IGZyb20gJy4uL2Fic3RyYWN0LWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1jb25maXJtYXRpb24tdGhlbi1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbmZpcm0tdGhlbi1kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudDxELCBSLCBFPiBleHRlbmRzIEFic3RyYWN0Q29uZmlybURpYWxvZ0NvbXBvbmVudDxDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudC5EYXRhPEQsIFIsIEU+LCBSLCBFPiB7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChBQ1RJVklUWV9EQVRBKSBjb25maWc6IENvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50LkRhdGE8RCwgUiwgRT4pIHtcbiAgICBzdXBlcihjb25maWcuY29uZmlybSk7XG5cbiAgICB0aGlzLmNvbmZpcm1Db21tYW5kID0gQ29tbWFuZC5jcmVhdGUoKCkgPT4ge1xuICAgICAgdGhpcy5pbnRlcmFjdGlvbkNvbnRleHQuc3RhcnRBY3Rpdml0eShjb25maWcuYWN0aXZpdHlUeXBlLCBjb25maWcuZGF0YSlcbiAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4gdGhpcy5kb25lKHJlc3VsdCkpXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB0aGlzLmNhbmNlbChlcnJvcikpO1xuICAgIH0pO1xuICB9XG5cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudCB7XG4gIGV4cG9ydCBpbnRlcmZhY2UgRGF0YTxELCBSLCBFPiB7XG4gICAgY29uZmlybTogQ29uZmlybSxcbiAgICBhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LFxuICAgIGRhdGE6IERcbiAgfVxufVxuIiwiPGF1cC1hY3Rpdml0eS10aXRsZSAqbmdJZj1cInRpdGxlXCIgW2NvbG9yXT1cImNvbG9yXCI+PGF1cC1tYXJrZG93biBbY29udGVudF09XCJ0aXRsZVwiIFtpbmxpbmVdPVwidHJ1ZVwiPjwvYXVwLW1hcmtkb3duPjwvYXVwLWFjdGl2aXR5LXRpdGxlPlxuPGF1cC1hY3Rpdml0eS1ib2R5PlxuICA8YXVwLW1hcmtkb3duICpuZ0Zvcj1cImxldCBsaW5lIG9mIGNvbnRlbnRcIiBbY29udGVudF09XCJsaW5lXCI+PC9hdXAtbWFya2Rvd24+XG48L2F1cC1hY3Rpdml0eS1ib2R5PlxuPGF1cC1hY3Rpdml0eS1hY3Rpb25zIFtjb25maXJtRmFjZV09XCJjb25maXJtRmFjZVwiIFtjYW5jZWxGYWNlXT1cImNhbmNlbEZhY2VcIj48L2F1cC1hY3Rpdml0eS1hY3Rpb25zPlxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsT0FBTyxFQUFnQixNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBVyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBT3BGLE1BQU0sT0FBTywwQkFBb0MsU0FBUSw4QkFBOEU7SUFFckksWUFBbUMsTUFBZ0Q7UUFDakYsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV0QixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDO2lCQUNwRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQ25DLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBVlUsMEJBQTBCLGtCQUVqQixhQUFhOzJGQUZ0QiwwQkFBMEIsMkZDWHZDLDJJQUNBOzsyRkRVYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsOEJBQThCOzswQkFNM0IsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1hbmQsIENvbnN0cnVjdGFibGV9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7QWN0aXZpdHksIEFDVElWSVRZX0RBVEF9IGZyb20gJy4uLy4uL2FjdGl2aXR5JztcbmltcG9ydCB7Q29uZmlybX0gZnJvbSAnLi4vLi4vY29uZmlybSc7XG5pbXBvcnQge0Fic3RyYWN0Q29uZmlybURpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi4vYWJzdHJhY3QtY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLWNvbmZpcm1hdGlvbi10aGVuLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtLXRoZW4tZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50PEQsIFIsIEU+IGV4dGVuZHMgQWJzdHJhY3RDb25maXJtRGlhbG9nQ29tcG9uZW50PENvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50LkRhdGE8RCwgUiwgRT4sIFIsIEU+IHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEFDVElWSVRZX0RBVEEpIGNvbmZpZzogQ29uZmlybVRoZW5EaWFsb2dDb21wb25lbnQuRGF0YTxELCBSLCBFPikge1xuICAgIHN1cGVyKGNvbmZpZy5jb25maXJtKTtcblxuICAgIHRoaXMuY29uZmlybUNvbW1hbmQgPSBDb21tYW5kLmNyZWF0ZSgoKSA9PiB7XG4gICAgICB0aGlzLmludGVyYWN0aW9uQ29udGV4dC5zdGFydEFjdGl2aXR5KGNvbmZpZy5hY3Rpdml0eVR5cGUsIGNvbmZpZy5kYXRhKVxuICAgICAgICAudGhlbigocmVzdWx0KSA9PiB0aGlzLmRvbmUocmVzdWx0KSlcbiAgICAgICAgLmNhdGNoKGVycm9yID0+IHRoaXMuY2FuY2VsKGVycm9yKSk7XG4gICAgfSk7XG4gIH1cblxufVxuXG5leHBvcnQgbmFtZXNwYWNlIENvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50IHtcbiAgZXhwb3J0IGludGVyZmFjZSBEYXRhPEQsIFIsIEU+IHtcbiAgICBjb25maXJtOiBDb25maXJtLFxuICAgIGFjdGl2aXR5VHlwZTogQ29uc3RydWN0YWJsZTxBY3Rpdml0eTxELCBSLCBFPj4sXG4gICAgZGF0YTogRFxuICB9XG59XG4iLCI8YXVwLWNvbmZpcm0tcmVuZGVyZXIgW2NvbmZpZ109XCJjb25maWdcIiBbY29uZmlybUNvbW1hbmRdPVwiY29uZmlybUNvbW1hbmRcIiBbY2FuY2VsQ29tbWFuZF09XCJjYW5jZWxDb21tYW5kXCI+PC9hdXAtY29uZmlybS1yZW5kZXJlcj5cbiJdfQ==