@coolon/angular-ui-powerups 0.0.62 → 0.0.65

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 (46) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +738 -582
  2. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  3. package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
  4. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  5. package/coolon-angular-ui-powerups.d.ts +10 -10
  6. package/coolon-angular-ui-powerups.metadata.json +1 -1
  7. package/esm2015/coolon-angular-ui-powerups.js +10 -10
  8. package/esm2015/index.js +2 -2
  9. package/esm2015/lib/interaction/abstract-activity.js +5 -68
  10. package/esm2015/lib/interaction/activity.js +71 -11
  11. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +213 -120
  12. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.js +6 -7
  13. package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.js +19 -43
  14. package/esm2015/lib/interaction/index.js +2 -2
  15. package/esm2015/lib/interaction/interaction-context.js +15 -10
  16. package/esm2015/lib/interaction/services/dialog-interaction.service.js +99 -86
  17. package/esm2015/lib/place/guards/leave-place.guard.js +95 -115
  18. package/esm2015/lib/place/place-router.js +87 -6
  19. package/esm2015/public_api.js +2 -2
  20. package/esm5/coolon-angular-ui-powerups.js +10 -10
  21. package/esm5/index.js +2 -2
  22. package/esm5/lib/interaction/abstract-activity.js +10 -96
  23. package/esm5/lib/interaction/activity.js +110 -11
  24. package/esm5/lib/interaction/components/activity-container/activity-container.component.js +285 -143
  25. package/esm5/lib/interaction/components/activity-outlet/activity-outlet-context.js +6 -7
  26. package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.js +19 -67
  27. package/esm5/lib/interaction/index.js +2 -2
  28. package/esm5/lib/interaction/interaction-context.js +24 -21
  29. package/esm5/lib/interaction/services/dialog-interaction.service.js +120 -85
  30. package/esm5/lib/place/guards/leave-place.guard.js +53 -123
  31. package/esm5/lib/place/place-router.js +96 -6
  32. package/esm5/public_api.js +2 -2
  33. package/fesm2015/coolon-angular-ui-powerups.js +591 -449
  34. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  35. package/fesm5/coolon-angular-ui-powerups.js +711 -556
  36. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  37. package/lib/interaction/abstract-activity.d.ts +4 -13
  38. package/lib/interaction/activity.d.ts +13 -6
  39. package/lib/interaction/components/activity-container/activity-container.component.d.ts +37 -25
  40. package/lib/interaction/components/activity-outlet/activity-outlet-context.d.ts +2 -5
  41. package/lib/interaction/components/activity-outlet/activity-outlet.component.d.ts +1 -10
  42. package/lib/interaction/interaction-context.d.ts +7 -7
  43. package/lib/interaction/services/dialog-interaction.service.d.ts +5 -6
  44. package/lib/place/guards/leave-place.guard.d.ts +6 -7
  45. package/lib/place/place-router.d.ts +14 -1
  46. package/package.json +1 -1
@@ -5,6 +5,7 @@
5
5
  import { Component, ComponentFactoryResolver, Injector, Input, ViewContainerRef } from '@angular/core';
6
6
  import { ACTIVITY_DATA } from '../../activity';
7
7
  import { InteractionContext } from '../../interaction-context';
8
+ import { assert } from '@coolon/pectin';
8
9
  /**
9
10
  * ActivityOutletComponent creates and displays an activity and delegates the interaction context functionality to an
10
11
  * external service.
@@ -20,11 +21,19 @@ var ActivityOutletComponent = /** @class */ (function () {
20
21
  this.injector = injector;
21
22
  }
22
23
  Object.defineProperty(ActivityOutletComponent.prototype, "activityContext", {
24
+ get: /**
25
+ * @return {?}
26
+ */
27
+ function () {
28
+ return this._activityContext;
29
+ },
23
30
  set: /**
24
31
  * @param {?} activityContext
25
32
  * @return {?}
26
33
  */
27
34
  function (activityContext) {
35
+ assert.isNil(this._activityContext);
36
+ this._activityContext = activityContext;
28
37
  this.loadActivity(activityContext);
29
38
  },
30
39
  enumerable: true,
@@ -53,7 +62,7 @@ var ActivityOutletComponent = /** @class */ (function () {
53
62
  providers: [
54
63
  {
55
64
  provide: InteractionContext,
56
- useValue: this
65
+ useValue: this.interactionContext
57
66
  },
58
67
  { provide: ACTIVITY_DATA, useValue: activityContext.activityData }
59
68
  ],
@@ -64,6 +73,9 @@ var ActivityOutletComponent = /** @class */ (function () {
64
73
  this.viewContainerRef.clear();
65
74
  this.activityComponentRef = this.viewContainerRef.createComponent(componentFactory, 0, injector);
66
75
  this.activityComponentRef.instance.initialise(activityContext);
76
+ if (this.activityContext.componentReady) {
77
+ this.activityContext.componentReady(this.component);
78
+ }
67
79
  };
68
80
  Object.defineProperty(ActivityOutletComponent.prototype, "component", {
69
81
  get: /**
@@ -75,71 +87,6 @@ var ActivityOutletComponent = /** @class */ (function () {
75
87
  enumerable: true,
76
88
  configurable: true
77
89
  });
78
- /**
79
- * @param {?} alert
80
- * @return {?}
81
- */
82
- ActivityOutletComponent.prototype.alert = /**
83
- * @param {?} alert
84
- * @return {?}
85
- */
86
- function (alert) {
87
- return this.interactionContext.alert(alert);
88
- };
89
- /**
90
- * @param {?} confirm
91
- * @return {?}
92
- */
93
- ActivityOutletComponent.prototype.confirm = /**
94
- * @param {?} confirm
95
- * @return {?}
96
- */
97
- function (confirm) {
98
- return this.interactionContext.confirm(confirm);
99
- };
100
- /**
101
- * @template D1, R1, E1
102
- * @param {?} confirm
103
- * @param {?} activityType
104
- * @param {?=} data
105
- * @return {?}
106
- */
107
- ActivityOutletComponent.prototype.confirmThen = /**
108
- * @template D1, R1, E1
109
- * @param {?} confirm
110
- * @param {?} activityType
111
- * @param {?=} data
112
- * @return {?}
113
- */
114
- function (confirm, activityType, data) {
115
- return this.interactionContext.confirmThen(confirm, activityType, data);
116
- };
117
- /**
118
- * @template D1, R1, E1
119
- * @param {?} activityType
120
- * @param {?=} data
121
- * @return {?}
122
- */
123
- ActivityOutletComponent.prototype.startActivity = /**
124
- * @template D1, R1, E1
125
- * @param {?} activityType
126
- * @param {?=} data
127
- * @return {?}
128
- */
129
- function (activityType, data) {
130
- return this.interactionContext.startActivity(activityType, data);
131
- };
132
- /**
133
- * @return {?}
134
- */
135
- ActivityOutletComponent.prototype.notifyReady = /**
136
- * @return {?}
137
- */
138
- function () {
139
- if (this.activityComponentRef.instance['onActivityReady']) {
140
- this.activityComponentRef.instance['onActivityReady']();
141
- }
142
- };
143
90
  ActivityOutletComponent.decorators = [
144
91
  { type: Component, args: [{
145
92
  selector: 'angular-ui-powerups-activity-outlet',
@@ -163,6 +110,11 @@ export { ActivityOutletComponent };
163
110
  if (false) {
164
111
  /** @type {?} */
165
112
  ActivityOutletComponent.prototype.interactionContext;
113
+ /**
114
+ * @type {?}
115
+ * @private
116
+ */
117
+ ActivityOutletComponent.prototype._activityContext;
166
118
  /**
167
119
  * @type {?}
168
120
  * @private
@@ -185,4 +137,4 @@ if (false) {
185
137
  ActivityOutletComponent.prototype.injector;
186
138
  /* Skipping unhandled member: ;*/
187
139
  }
188
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHdCQUF3QixFQUV4QixRQUFRLEVBQ1IsS0FBSyxFQUVMLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQVksYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7OztBQVUvRDtJQWlCRSxpQ0FDVSx3QkFBa0QsRUFDbEQsZ0JBQWtDLEVBQ2xDLFFBQWtCO1FBRmxCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxhQUFRLEdBQVIsUUFBUSxDQUFVO0lBRTVCLENBQUM7SUFaRCxzQkFDSSxvREFBZTs7Ozs7UUFEbkIsVUFDb0IsZUFBK0M7WUFDakUsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNyQyxDQUFDOzs7T0FBQTtJQUFBLENBQUM7Ozs7SUFXRiwwQ0FBUTs7O0lBQVI7SUFDQSxDQUFDOzs7OztJQUVELDhDQUFZOzs7O0lBQVosVUFBYSxlQUErQzs7WUFDcEQsUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDL0IsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLFFBQVEsRUFBRSxJQUFJO2lCQUNmO2dCQUNELEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDLFlBQVksRUFBRTthQUNuRTtZQUNELE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN0QixDQUFDOztZQUNJLGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDO1FBQzdHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDakcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELHNCQUFJLDhDQUFTOzs7O1FBQWI7WUFDRSxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7UUFDNUMsQ0FBQzs7O09BQUE7Ozs7O0lBRUQsdUNBQUs7Ozs7SUFBTCxVQUFNLEtBQVk7UUFDaEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlDLENBQUM7Ozs7O0lBRUQseUNBQU87Ozs7SUFBUCxVQUFRLE9BQWdCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRCxDQUFDOzs7Ozs7OztJQUVELDZDQUFXOzs7Ozs7O0lBQVgsVUFBd0IsT0FBZ0IsRUFBRSxZQUFpRCxFQUFFLElBQVM7UUFDcEcsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUUsQ0FBQzs7Ozs7OztJQUVELCtDQUFhOzs7Ozs7SUFBYixVQUEwQixZQUFpRCxFQUFFLElBQVM7UUFDcEYsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDOzs7O0lBRUQsNkNBQVc7OztJQUFYO1FBQ0UsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7WUFDekQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7U0FDekQ7SUFDSCxDQUFDOztnQkFwRUYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxxQ0FBcUM7b0JBQy9DLFFBQVEsRUFBRSxFQUFFOztpQkFFYjs7OztnQkF6QkMsd0JBQXdCO2dCQUt4QixnQkFBZ0I7Z0JBSGhCLFFBQVE7OztxQ0EwQlAsS0FBSztrQ0FHTCxLQUFLOztJQTJEUiw4QkFBQztDQUFBLEFBckVELElBcUVDO1NBaEVZLHVCQUF1Qjs7O0lBRWxDLHFEQUN1Qzs7Ozs7SUFPdkMsdURBQThEOzs7OztJQUc1RCwyREFBMEQ7Ozs7O0lBQzFELG1EQUEwQzs7Ozs7SUFDMUMsMkNBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIENvbXBvbmVudFJlZixcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3RhYmxlLCBsYW5nLCBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IEFjdGl2aXR5LCBBQ1RJVklUWV9EQVRBIH0gZnJvbSAnLi4vLi4vYWN0aXZpdHknO1xuaW1wb3J0IHsgQWxlcnQgfSBmcm9tICcuLi8uLi9hbGVydCc7XG5pbXBvcnQgeyBDb25maXJtIH0gZnJvbSAnLi4vLi4vY29uZmlybSc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvbkNvbnRleHQgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbi1jb250ZXh0JztcbmltcG9ydCB7IEFjdGl2aXR5T3V0bGV0Q29udGV4dCB9IGZyb20gJy4vYWN0aXZpdHktb3V0bGV0LWNvbnRleHQnO1xuXG4vKipcbiAqIEFjdGl2aXR5T3V0bGV0Q29tcG9uZW50IGNyZWF0ZXMgYW5kIGRpc3BsYXlzIGFuIGFjdGl2aXR5IGFuZCBkZWxlZ2F0ZXMgdGhlIGludGVyYWN0aW9uIGNvbnRleHQgZnVuY3Rpb25hbGl0eSB0byBhblxuICogZXh0ZXJuYWwgc2VydmljZS5cbiAqXG4gKiBJdCBtaWdodCBiZSBuaWNlIHRvIGhhdmUgd3JhcHBlciBjb21wb25lbnQgdGhhdCBhbGxvd3MgbW9yZSBkZWNsYXJhdGl2ZSB1c2UsIGkuZS5cbiAqIDxhY3Rpdml0eS12aWV3IFthY3Rpdml0eUNsYXNzXT1cIi4uLlwiLCBbYWN0aXZpdHlEYXRhXT1cIi4uLlwiIChkb25lKT1cIi4uXCIgKGNhbmNlbCk9XCIuLi5cIj48L2FjdGl2aXR5LXZpZXc+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FuZ3VsYXItdWktcG93ZXJ1cHMtYWN0aXZpdHktb3V0bGV0JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpdml0eU91dGxldENvbXBvbmVudDxELCBSLCBFPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgaW50ZXJhY3Rpb25Db250ZXh0OiBJbnRlcmFjdGlvbkNvbnRleHQ7XG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2aXR5Q29udGV4dChhY3Rpdml0eUNvbnRleHQ6IEFjdGl2aXR5T3V0bGV0Q29udGV4dDxELCBSLCBFPikge1xuICAgIHRoaXMubG9hZEFjdGl2aXR5KGFjdGl2aXR5Q29udGV4dCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBhY3Rpdml0eUNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEFjdGl2aXR5PEQsIFIsIEU+PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvclxuICApIHtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgbG9hZEFjdGl2aXR5KGFjdGl2aXR5Q29udGV4dDogQWN0aXZpdHlPdXRsZXRDb250ZXh0PEQsIFIsIEU+KSB7XG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBJbnRlcmFjdGlvbkNvbnRleHQsXG4gICAgICAgICAgdXNlVmFsdWU6IHRoaXNcbiAgICAgICAgfSxcbiAgICAgICAgeyBwcm92aWRlOiBBQ1RJVklUWV9EQVRBLCB1c2VWYWx1ZTogYWN0aXZpdHlDb250ZXh0LmFjdGl2aXR5RGF0YSB9XG4gICAgICBdLFxuICAgICAgcGFyZW50OiB0aGlzLmluamVjdG9yXG4gICAgfSk7XG4gICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGFjdGl2aXR5Q29udGV4dC5hY3Rpdml0eUNsYXNzKTtcbiAgICB0aGlzLnZpZXdDb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICB0aGlzLmFjdGl2aXR5Q29tcG9uZW50UmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRGYWN0b3J5LCAwLCBpbmplY3Rvcik7XG4gICAgdGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZS5pbml0aWFsaXNlKGFjdGl2aXR5Q29udGV4dCk7XG4gIH1cblxuICBnZXQgY29tcG9uZW50KCk6QWN0aXZpdHk8RCxSLEU+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgfVxuXG4gIGFsZXJ0KGFsZXJ0OiBBbGVydCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmludGVyYWN0aW9uQ29udGV4dC5hbGVydChhbGVydCk7XG4gIH1cblxuICBjb25maXJtKGNvbmZpcm06IENvbmZpcm0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGlvbkNvbnRleHQuY29uZmlybShjb25maXJtKTtcbiAgfVxuXG4gIGNvbmZpcm1UaGVuPEQxLCBSMSwgRTE+KGNvbmZpcm06IENvbmZpcm0sIGFjdGl2aXR5VHlwZTogQ29uc3RydWN0YWJsZTxBY3Rpdml0eTxEMSwgUjEsIEUxPj4sIGRhdGE/OiBEMSk6IFByb21pc2U8UjE+IHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGlvbkNvbnRleHQuY29uZmlybVRoZW4oY29uZmlybSwgYWN0aXZpdHlUeXBlLCBkYXRhKTtcbiAgfVxuXG4gIHN0YXJ0QWN0aXZpdHk8RDEsIFIxLCBFMT4oYWN0aXZpdHlUeXBlOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQxLCBSMSwgRTE+PiwgZGF0YT86IEQxKTogUHJvbWlzZTxSMT4ge1xuICAgIHJldHVybiB0aGlzLmludGVyYWN0aW9uQ29udGV4dC5zdGFydEFjdGl2aXR5KGFjdGl2aXR5VHlwZSwgZGF0YSk7XG4gIH1cblxuICBub3RpZnlSZWFkeSgpIHtcbiAgICBpZiAodGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZVsnb25BY3Rpdml0eVJlYWR5J10pIHtcbiAgICAgIHRoaXMuYWN0aXZpdHlDb21wb25lbnRSZWYuaW5zdGFuY2VbJ29uQWN0aXZpdHlSZWFkeSddKCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgQWN0aXZpdHlPdXRsZXRDb21wb25lbnQge1xuXG4gIC8vIGV4cG9ydCBjbGFzcyBPdXRsZXRJbnRlcmFjdGlvbkNvbnRleHQ8RCwgUiwgRT4gaW1wbGVtZW50cyBJbnRlcmFjdGlvbkNvbnRleHQge1xuICAvL1xuICAvLyAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogQWN0aXZpdHlPdXRsZXRDb250ZXh0PEQsIFIsIEU+KSB7XG4gIC8vICAgfVxuICAvL1xuICAvLyAgIGFsZXJ0KGFsZXJ0OiBBbGVydCk6IFByb21pc2U8dm9pZD4ge1xuICAvLyAgICAgcmV0dXJuIGxhbmcubm90SW1wbGVtZW50ZWQoKTtcbiAgLy8gICB9XG4gIC8vXG4gIC8vICAgY29uZmlybShjb25maXJtOiBDb25maXJtKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgICByZXR1cm4gbGFuZy5ub3RJbXBsZW1lbnRlZCgpO1xuICAvLyAgIH1cbiAgLy9cbiAgLy8gICBjb25maXJtVGhlbjxEMSwgUjEsIEUxPihjb25maXJtOiBDb25maXJtLCBhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RDEsIFIxLCBFMT4+LCBkYXRhPzogRDEpOiBQcm9taXNlPFIxPiB7XG4gIC8vICAgICByZXR1cm4gbGFuZy5ub3RJbXBsZW1lbnRlZCgpO1xuICAvLyAgIH1cbiAgLy9cbiAgLy9cbiAgLy8gICBzdGFydEFjdGl2aXR5PEQxLCBSMSwgRTE+KGFjdGl2aXR5VHlwZTogQ29uc3RydWN0YWJsZTxBY3Rpdml0eTxEMSwgUjEsIEUxPj4sIGRhdGE/OiBEMSk6IFByb21pc2U8UjE+IHtcbiAgLy8gICAgIHJldHVybiBsYW5nLm5vdEltcGxlbWVudGVkKCk7XG4gIC8vICAgfVxuICAvLyB9XG5cbn1cbiJdfQ==
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHdCQUF3QixFQUV4QixRQUFRLEVBQ1IsS0FBSyxFQUVMLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFTeEM7SUF3QkUsaUNBQ1Usd0JBQWtELEVBQ2xELGdCQUFrQyxFQUNsQyxRQUFrQjtRQUZsQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUU1QixDQUFDO0lBbEJELHNCQUNJLG9EQUFlOzs7O1FBS25CO1lBQ0UsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDL0IsQ0FBQzs7Ozs7UUFSRCxVQUNvQixlQUErQztZQUNqRSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7WUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNyQyxDQUFDOzs7T0FBQTtJQUFBLENBQUM7Ozs7SUFlRiwwQ0FBUTs7O0lBQVI7SUFDQSxDQUFDOzs7OztJQUVELDhDQUFZOzs7O0lBQVosVUFBYSxlQUErQzs7WUFDcEQsUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDL0IsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsa0JBQWtCO2lCQUNsQztnQkFDRCxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLGVBQWUsQ0FBQyxZQUFZLEVBQUU7YUFDbkU7WUFDRCxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDdEIsQ0FBQzs7WUFDSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQztRQUM3RyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQy9ELElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztJQUVELHNCQUFJLDhDQUFTOzs7O1FBQWI7WUFDRSxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7UUFDNUMsQ0FBQzs7O09BQUE7O2dCQXhERixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHFDQUFxQztvQkFDL0MsUUFBUSxFQUFFLEVBQUU7O2lCQUViOzs7O2dCQXZCQyx3QkFBd0I7Z0JBS3hCLGdCQUFnQjtnQkFIaEIsUUFBUTs7O3FDQXdCUCxLQUFLO2tDQUlMLEtBQUs7O0lBK0NSLDhCQUFDO0NBQUEsQUExREQsSUEwREM7U0FyRFksdUJBQXVCOzs7SUFFbEMscURBQ3VDOzs7OztJQUN2QyxtREFBeUQ7Ozs7O0lBYXpELHVEQUE4RDs7Ozs7SUFHNUQsMkRBQTBEOzs7OztJQUMxRCxtREFBMEM7Ozs7O0lBQzFDLDJDQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBDb21wb25lbnRSZWYsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZpdHksIEFDVElWSVRZX0RBVEEgfSBmcm9tICcuLi8uLi9hY3Rpdml0eSc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvbkNvbnRleHQgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbi1jb250ZXh0JztcbmltcG9ydCB7IEFjdGl2aXR5T3V0bGV0Q29udGV4dCB9IGZyb20gJy4vYWN0aXZpdHktb3V0bGV0LWNvbnRleHQnO1xuaW1wb3J0IHsgYXNzZXJ0IH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuXG4vKipcbiAqIEFjdGl2aXR5T3V0bGV0Q29tcG9uZW50IGNyZWF0ZXMgYW5kIGRpc3BsYXlzIGFuIGFjdGl2aXR5IGFuZCBkZWxlZ2F0ZXMgdGhlIGludGVyYWN0aW9uIGNvbnRleHQgZnVuY3Rpb25hbGl0eSB0byBhblxuICogZXh0ZXJuYWwgc2VydmljZS5cbiAqXG4gKiBJdCBtaWdodCBiZSBuaWNlIHRvIGhhdmUgd3JhcHBlciBjb21wb25lbnQgdGhhdCBhbGxvd3MgbW9yZSBkZWNsYXJhdGl2ZSB1c2UsIGkuZS5cbiAqIDxhY3Rpdml0eS12aWV3IFthY3Rpdml0eUNsYXNzXT1cIi4uLlwiLCBbYWN0aXZpdHlEYXRhXT1cIi4uLlwiIChkb25lKT1cIi4uXCIgKGNhbmNlbCk9XCIuLi5cIj48L2FjdGl2aXR5LXZpZXc+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FuZ3VsYXItdWktcG93ZXJ1cHMtYWN0aXZpdHktb3V0bGV0JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpdml0eU91dGxldENvbXBvbmVudDxELCBSLCBFPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgaW50ZXJhY3Rpb25Db250ZXh0OiBJbnRlcmFjdGlvbkNvbnRleHQ7XG4gIHByaXZhdGUgX2FjdGl2aXR5Q29udGV4dDogQWN0aXZpdHlPdXRsZXRDb250ZXh0PEQsIFIsIEU+O1xuXG4gIEBJbnB1dCgpXG4gIHNldCBhY3Rpdml0eUNvbnRleHQoYWN0aXZpdHlDb250ZXh0OiBBY3Rpdml0eU91dGxldENvbnRleHQ8RCwgUiwgRT4pIHtcbiAgICBhc3NlcnQuaXNOaWwodGhpcy5fYWN0aXZpdHlDb250ZXh0KTtcbiAgICB0aGlzLl9hY3Rpdml0eUNvbnRleHQgPSBhY3Rpdml0eUNvbnRleHQ7XG4gICAgdGhpcy5sb2FkQWN0aXZpdHkoYWN0aXZpdHlDb250ZXh0KTtcbiAgfTtcbiAgZ2V0IGFjdGl2aXR5Q29udGV4dCgpOkFjdGl2aXR5T3V0bGV0Q29udGV4dDxELFIsRT4ge1xuICAgIHJldHVybiB0aGlzLl9hY3Rpdml0eUNvbnRleHQ7XG4gIH1cblxuXG4gIHByaXZhdGUgYWN0aXZpdHlDb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxBY3Rpdml0eTxELCBSLCBFPj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIGxvYWRBY3Rpdml0eShhY3Rpdml0eUNvbnRleHQ6IEFjdGl2aXR5T3V0bGV0Q29udGV4dDxELCBSLCBFPikge1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogSW50ZXJhY3Rpb25Db250ZXh0LFxuICAgICAgICAgIHVzZVZhbHVlOiB0aGlzLmludGVyYWN0aW9uQ29udGV4dFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFDVElWSVRZX0RBVEEsIHVzZVZhbHVlOiBhY3Rpdml0eUNvbnRleHQuYWN0aXZpdHlEYXRhIH1cbiAgICAgIF0sXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3JcbiAgICB9KTtcbiAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoYWN0aXZpdHlDb250ZXh0LmFjdGl2aXR5Q2xhc3MpO1xuICAgIHRoaXMudmlld0NvbnRhaW5lclJlZi5jbGVhcigpO1xuICAgIHRoaXMuYWN0aXZpdHlDb21wb25lbnRSZWYgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnksIDAsIGluamVjdG9yKTtcbiAgICB0aGlzLmFjdGl2aXR5Q29tcG9uZW50UmVmLmluc3RhbmNlLmluaXRpYWxpc2UoYWN0aXZpdHlDb250ZXh0KTtcbiAgICBpZiAodGhpcy5hY3Rpdml0eUNvbnRleHQuY29tcG9uZW50UmVhZHkpIHtcbiAgICAgIHRoaXMuYWN0aXZpdHlDb250ZXh0LmNvbXBvbmVudFJlYWR5KHRoaXMuY29tcG9uZW50KTtcbiAgICB9XG4gIH1cblxuICBnZXQgY29tcG9uZW50KCk6IEFjdGl2aXR5PEQsIFIsIEU+IHtcbiAgICByZXR1cm4gdGhpcy5hY3Rpdml0eUNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgfVxuXG59XG4iXX0=
@@ -6,7 +6,7 @@
6
6
  * @file Automatically generated by barrelsby.
7
7
  */
8
8
  export { AbstractActivity } from "./abstract-activity";
9
- export { ACTIVITY_DATA } from "./activity";
9
+ export { ACTIVITY_DATA, Activity } from "./activity";
10
10
  export {} from "./alert";
11
11
  export {} from "./confirm";
12
12
  export { InteractionContext } from "./interaction-context";
@@ -20,4 +20,4 @@ export { ConfirmThenDialogComponent } from "./components/confirm-then-dialog/con
20
20
  export { ConfirmationDialogComponent } from "./components/confirmation-dialog/confirmation-dialog.component";
21
21
  export { CloseInteractionGuard } from "./guards/close-interaction.guard";
22
22
  export { DIALOG_INTERACTION_SERVICE_DEFAULTS, DialogInteractionService } from "./services/dialog-interaction.service";
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLGlDQUFjLHFCQUFxQixDQUFDO0FBQ3BDLDhCQUFjLFlBQVksQ0FBQztBQUMzQixlQUFjLFNBQVMsQ0FBQztBQUN4QixlQUFjLFdBQVcsQ0FBQztBQUMxQixtQ0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxrQ0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxlQUFjLFVBQVUsQ0FBQztBQUN6QiwyQ0FBYyw4REFBOEQsQ0FBQztBQUM3RSxlQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLHdDQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLHFDQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLDJDQUFjLGdFQUFnRSxDQUFDO0FBQy9FLDRDQUFjLGdFQUFnRSxDQUFDO0FBQy9FLHNDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELDhFQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZSBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBiYXJyZWxzYnkuXG4gKi9cblxuZXhwb3J0ICogZnJvbSBcIi4vYWJzdHJhY3QtYWN0aXZpdHlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2FjdGl2aXR5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hbGVydFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlybVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJhY3Rpb24tY29udGV4dFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJhY3Rpb24ubW9kdWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXN1bHRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LWNvbnRhaW5lci5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvYWN0aXZpdHktb3V0bGV0L2FjdGl2aXR5LW91dGxldC1jb250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZ3VhcmRzL2Nsb3NlLWludGVyYWN0aW9uLmd1YXJkXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZXJ2aWNlcy9kaWFsb2ctaW50ZXJhY3Rpb24uc2VydmljZVwiO1xuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLGlDQUFjLHFCQUFxQixDQUFDO0FBQ3BDLHdDQUFjLFlBQVksQ0FBQztBQUMzQixlQUFjLFNBQVMsQ0FBQztBQUN4QixlQUFjLFdBQVcsQ0FBQztBQUMxQixtQ0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxrQ0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxlQUFjLFVBQVUsQ0FBQztBQUN6QiwyQ0FBYyw4REFBOEQsQ0FBQztBQUM3RSxlQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLHdDQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLHFDQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLDJDQUFjLGdFQUFnRSxDQUFDO0FBQy9FLDRDQUFjLGdFQUFnRSxDQUFDO0FBQy9FLHNDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELDhFQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZSBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBiYXJyZWxzYnkuXG4gKi9cblxuZXhwb3J0ICogZnJvbSBcIi4vYWJzdHJhY3QtYWN0aXZpdHlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2FjdGl2aXR5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hbGVydFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uZmlybVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJhY3Rpb24tY29udGV4dFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJhY3Rpb24ubW9kdWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXN1bHRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LWNvbnRhaW5lci5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvYWN0aXZpdHktb3V0bGV0L2FjdGl2aXR5LW91dGxldC1jb250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZ3VhcmRzL2Nsb3NlLWludGVyYWN0aW9uLmd1YXJkXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZXJ2aWNlcy9kaWFsb2ctaW50ZXJhY3Rpb24uc2VydmljZVwiO1xuIl19
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
6
  import { GarbageCollector } from '@coolon/pectin';
7
+ import * as _ from 'lodash';
7
8
  /**
8
9
  * @abstract
9
10
  */
@@ -15,20 +16,22 @@ InteractionContext = /** @class */ (function (_super) {
15
16
  function InteractionContext() {
16
17
  return _super.call(this) || this;
17
18
  }
18
- /**
19
- * Returns true if an activity is currently running.
20
- */
21
- /**
22
- * Returns true if an activity is currently running.
23
- * @return {?}
24
- */
25
- InteractionContext.prototype.isActive = /**
26
- * Returns true if an activity is currently running.
27
- * @return {?}
28
- */
29
- function () {
30
- return this.activityList.length > 0;
31
- };
19
+ Object.defineProperty(InteractionContext.prototype, "currentActivity", {
20
+ /**
21
+ * Returns the activity that is currently active.
22
+ * This model is only updated in the next tick after the view has been updated.
23
+ */
24
+ get: /**
25
+ * Returns the activity that is currently active.
26
+ * This model is only updated in the next tick after the view has been updated.
27
+ * @return {?}
28
+ */
29
+ function () {
30
+ return _.last(this.activityList.value);
31
+ },
32
+ enumerable: true,
33
+ configurable: true
34
+ });
32
35
  return InteractionContext;
33
36
  }(GarbageCollector));
34
37
  /**
@@ -36,18 +39,18 @@ InteractionContext = /** @class */ (function (_super) {
36
39
  */
37
40
  export { InteractionContext };
38
41
  if (false) {
39
- /**
40
- * Returns the activity that is currently active.
41
- * This model is only updated in the next tick after the view has been updated.
42
- * @type {?}
43
- */
44
- InteractionContext.prototype.currentActivity;
45
42
  /**
46
43
  * Returns the current list of activities that are in progress.
47
44
  * This model is only updated in the next tick after the view has been updated.
48
45
  * @type {?}
49
46
  */
50
47
  InteractionContext.prototype.activityList;
48
+ /**
49
+ * Returns true if an activity is currently running.
50
+ * @abstract
51
+ * @return {?}
52
+ */
53
+ InteractionContext.prototype.isActive = function () { };
51
54
  /**
52
55
  * @abstract
53
56
  * @template D, R, E
@@ -79,4 +82,4 @@ if (false) {
79
82
  */
80
83
  InteractionContext.prototype.alert = function (alert) { };
81
84
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24tY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9pbnRlcmFjdGlvbi1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFpQixnQkFBZ0IsRUFBeUIsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUt4Rjs7OztJQUFpRCw4Q0FBZ0I7SUFjL0Q7ZUFDRSxpQkFBTztJQUNULENBQUM7SUFFRDs7T0FFRzs7Ozs7SUFDSCxxQ0FBUTs7OztJQUFSO1FBQ0UsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQWdCSCx5QkFBQztBQUFELENBQUMsQUF2Q0QsQ0FBaUQsZ0JBQWdCLEdBdUNoRTs7Ozs7Ozs7Ozs7SUFqQ0MsNkNBQWtFOzs7Ozs7SUFNbEUsMENBQThEOzs7Ozs7OztJQWE5RCwrRUFBc0c7Ozs7OztJQUV0Ryw4REFBa0Q7Ozs7Ozs7Ozs7SUFRbEQsc0ZBQXNIOzs7Ozs7SUFFdEgsMERBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgR2FyYmFnZUNvbGxlY3RvciwgTGlzdE1vZGVsLCBWYWx1ZU1vZGVsIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgQWN0aXZpdHkgfSBmcm9tICcuL2FjdGl2aXR5JztcbmltcG9ydCB7IEFsZXJ0IH0gZnJvbSAnLi9hbGVydCc7XG5pbXBvcnQgeyBDb25maXJtIH0gZnJvbSAnLi9jb25maXJtJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEludGVyYWN0aW9uQ29udGV4dCBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3Ige1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBhY3Rpdml0eSB0aGF0IGlzIGN1cnJlbnRseSBhY3RpdmUuXG4gICAqIFRoaXMgbW9kZWwgaXMgb25seSB1cGRhdGVkIGluIHRoZSBuZXh0IHRpY2sgYWZ0ZXIgdGhlIHZpZXcgaGFzIGJlZW4gdXBkYXRlZC5cbiAgICovXG4gIGFic3RyYWN0IHJlYWRvbmx5IGN1cnJlbnRBY3Rpdml0eTogVmFsdWVNb2RlbDxBY3Rpdml0eTxhbnksIGFueT4+O1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgYWN0aXZpdGllcyB0aGF0IGFyZSBpbiBwcm9ncmVzcy5cbiAgICogVGhpcyBtb2RlbCBpcyBvbmx5IHVwZGF0ZWQgaW4gdGhlIG5leHQgdGljayBhZnRlciB0aGUgdmlldyBoYXMgYmVlbiB1cGRhdGVkLlxuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgYWN0aXZpdHlMaXN0OiBMaXN0TW9kZWw8QWN0aXZpdHk8YW55LCBhbnk+PjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiBhbiBhY3Rpdml0eSBpcyBjdXJyZW50bHkgcnVubmluZy5cbiAgICovXG4gIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2aXR5TGlzdC5sZW5ndGggPiAwO1xuICB9XG5cbiAgYWJzdHJhY3Qgc3RhcnRBY3Rpdml0eTxELCBSLCBFPihhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhPzogRCk6IFByb21pc2U8Uj47XG5cbiAgYWJzdHJhY3QgY29uZmlybShjb25maXJtOiBDb25maXJtKTogUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogUHJlc2VudHMgdGhlIGNvbmZpcm1hdGlvbiB0byB0aGUgdXNlciBhbmQgcnVucyB0aGUgYWN0aXZpdHkgb25seSBpZiB0aGUgdXNlciBjb25maXJtcy5cbiAgICogQHBhcmFtIGNvbmZpcm06Q29uZmlybSB0aGUgY29uZmlybWF0aW9uIHRvIGRpc3BsYXkuXG4gICAqIEBwYXJhbSBhY3Rpdml0eVR5cGUgdGhlIGFjdGl2aXR5IHRvIHJ1biBpZiBjb25maXJtZWQuXG4gICAqIEBwYXJhbSBkYXRhIHRoZSBhY3Rpdml0eSBkYXRhLlxuICAgKi9cbiAgYWJzdHJhY3QgY29uZmlybVRoZW48RCwgUiwgRT4oY29uZmlybTogQ29uZmlybSwgYWN0aXZpdHlUeXBlOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQsIFIsIEU+PiwgZGF0YT86IEQpOiBQcm9taXNlPFI+O1xuXG4gIGFic3RyYWN0IGFsZXJ0KGFsZXJ0OiBBbGVydCk6IFByb21pc2U8dm9pZD47XG5cbn1cblxuIl19
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24tY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9pbnRlcmFjdGlvbi1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFpQixnQkFBZ0IsRUFBZ0MsTUFBTSxnQkFBZ0IsQ0FBQztBQUkvRixPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQzs7OztBQUU1Qjs7OztJQUFpRCw4Q0FBZ0I7SUFRL0Q7ZUFDRSxpQkFBTztJQUNULENBQUM7SUFNRCxzQkFBSSwrQ0FBZTtRQUpuQjs7O1dBR0c7Ozs7OztRQUNIO1lBQ0UsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQzs7O09BQUE7SUFxQkgseUJBQUM7QUFBRCxDQUFDLEFBdkNELENBQWlELGdCQUFnQixHQXVDaEU7Ozs7Ozs7Ozs7O0lBakNDLDBDQUE4RDs7Ozs7O0lBaUI5RCx3REFBNkI7Ozs7Ozs7O0lBRTdCLCtFQUFzRzs7Ozs7O0lBRXRHLDhEQUFrRDs7Ozs7Ozs7OztJQVFsRCxzRkFBc0g7Ozs7OztJQUV0SCwwREFBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RhYmxlLCBHYXJiYWdlQ29sbGVjdG9yLCBMaXN0TW9kZWwsIFRyYWNlLCBWYWx1ZU1vZGVsIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgQWN0aXZpdHkgfSBmcm9tICcuL2FjdGl2aXR5JztcbmltcG9ydCB7IEFsZXJ0IH0gZnJvbSAnLi9hbGVydCc7XG5pbXBvcnQgeyBDb25maXJtIH0gZnJvbSAnLi9jb25maXJtJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEludGVyYWN0aW9uQ29udGV4dCBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3Ige1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgYWN0aXZpdGllcyB0aGF0IGFyZSBpbiBwcm9ncmVzcy5cbiAgICogVGhpcyBtb2RlbCBpcyBvbmx5IHVwZGF0ZWQgaW4gdGhlIG5leHQgdGljayBhZnRlciB0aGUgdmlldyBoYXMgYmVlbiB1cGRhdGVkLlxuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgYWN0aXZpdHlMaXN0OiBMaXN0TW9kZWw8QWN0aXZpdHk8YW55LCBhbnk+PjtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBhY3Rpdml0eSB0aGF0IGlzIGN1cnJlbnRseSBhY3RpdmUuXG4gICAqIFRoaXMgbW9kZWwgaXMgb25seSB1cGRhdGVkIGluIHRoZSBuZXh0IHRpY2sgYWZ0ZXIgdGhlIHZpZXcgaGFzIGJlZW4gdXBkYXRlZC5cbiAgICovXG4gIGdldCBjdXJyZW50QWN0aXZpdHkoKTogQWN0aXZpdHk8YW55LCBhbnk+IHtcbiAgICByZXR1cm4gXy5sYXN0KHRoaXMuYWN0aXZpdHlMaXN0LnZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgYW4gYWN0aXZpdHkgaXMgY3VycmVudGx5IHJ1bm5pbmcuXG4gICAqL1xuICBhYnN0cmFjdCBpc0FjdGl2ZSgpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IHN0YXJ0QWN0aXZpdHk8RCwgUiwgRT4oYWN0aXZpdHlUeXBlOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQsIFIsIEU+PiwgZGF0YT86IEQpOiBQcm9taXNlPFI+O1xuXG4gIGFic3RyYWN0IGNvbmZpcm0oY29uZmlybTogQ29uZmlybSk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIFByZXNlbnRzIHRoZSBjb25maXJtYXRpb24gdG8gdGhlIHVzZXIgYW5kIHJ1bnMgdGhlIGFjdGl2aXR5IG9ubHkgaWYgdGhlIHVzZXIgY29uZmlybXMuXG4gICAqIEBwYXJhbSBjb25maXJtOkNvbmZpcm0gdGhlIGNvbmZpcm1hdGlvbiB0byBkaXNwbGF5LlxuICAgKiBAcGFyYW0gYWN0aXZpdHlUeXBlIHRoZSBhY3Rpdml0eSB0byBydW4gaWYgY29uZmlybWVkLlxuICAgKiBAcGFyYW0gZGF0YSB0aGUgYWN0aXZpdHkgZGF0YS5cbiAgICovXG4gIGFic3RyYWN0IGNvbmZpcm1UaGVuPEQsIFIsIEU+KGNvbmZpcm06IENvbmZpcm0sIGFjdGl2aXR5VHlwZTogQ29uc3RydWN0YWJsZTxBY3Rpdml0eTxELCBSLCBFPj4sIGRhdGE/OiBEKTogUHJvbWlzZTxSPjtcblxuICBhYnN0cmFjdCBhbGVydChhbGVydDogQWxlcnQpOiBQcm9taXNlPHZvaWQ+O1xuXG59XG5cbiJdfQ==
@@ -6,9 +6,9 @@ import * as tslib_1 from "tslib";
6
6
  import { Inject, Injectable, InjectionToken, Optional } from '@angular/core';
7
7
  import { MatDialog } from '@angular/material';
8
8
  import { MAT_DIALOG_DEFAULT_OPTIONS, MatDialogConfig } from '@angular/material/dialog';
9
- import { Router } from '@angular/router';
10
- import { DelegatingListModel, Dsl, lang } from '@coolon/pectin';
9
+ import { DelegatingListModel, lang, ValueModel } from '@coolon/pectin';
11
10
  import { assert } from '@coolon/typescript-utilities';
11
+ import * as uuid from 'uuid';
12
12
  import { ActivityContainerComponent } from '../components/activity-container/activity-container.component';
13
13
  import { AlertDialogComponent } from '../components/alert-dialog/alert-dialog.component';
14
14
  import { ConfirmThenDialogComponent } from '../components/confirm-then-dialog/confirm-then-dialog.component';
@@ -16,46 +16,81 @@ import { ConfirmationDialogComponent } from '../components/confirmation-dialog/c
16
16
  import { InteractionContext } from '../interaction-context';
17
17
  import * as i0 from "@angular/core";
18
18
  import * as i1 from "@angular/material/dialog";
19
- import * as i2 from "@angular/router";
20
19
  /** @type {?} */
21
20
  export var DIALOG_INTERACTION_SERVICE_DEFAULTS = new InjectionToken('DIALOG_INTERACTION_SERVICE_DEFAULTS');
21
+ var Guard = /** @class */ (function (_super) {
22
+ tslib_1.__extends(Guard, _super);
23
+ function Guard() {
24
+ return _super.call(this, { initialValue: false }) || this;
25
+ }
26
+ Object.defineProperty(Guard.prototype, "value", {
27
+ get: /**
28
+ * @return {?}
29
+ */
30
+ function () {
31
+ return this.store.read();
32
+ },
33
+ enumerable: true,
34
+ configurable: true
35
+ });
36
+ /**
37
+ * @template R
38
+ * @param {?} fun
39
+ * @return {?}
40
+ */
41
+ Guard.prototype.whileTrue = /**
42
+ * @template R
43
+ * @param {?} fun
44
+ * @return {?}
45
+ */
46
+ function (fun) {
47
+ this.startTransaction().commit(true);
48
+ try {
49
+ return fun();
50
+ }
51
+ finally {
52
+ this.startTransaction().commit(false);
53
+ }
54
+ };
55
+ /**
56
+ * @template R
57
+ * @param {?} fun
58
+ * @param {?=} defaultValue
59
+ * @return {?}
60
+ */
61
+ Guard.prototype.runIfFalse = /**
62
+ * @template R
63
+ * @param {?} fun
64
+ * @param {?=} defaultValue
65
+ * @return {?}
66
+ */
67
+ function (fun, defaultValue) {
68
+ if (defaultValue === void 0) { defaultValue = null; }
69
+ return !this.value ? fun() : defaultValue;
70
+ };
71
+ return Guard;
72
+ }(ValueModel));
22
73
  var DialogInteractionService = /** @class */ (function (_super) {
23
74
  tslib_1.__extends(DialogInteractionService, _super);
24
- function DialogInteractionService(dialogService, router, dialogServiceDefaults, matDialogDefaultConfig) {
75
+ function DialogInteractionService(dialogService, dialogServiceDefaults, matDialogDefaultConfig) {
25
76
  var _this = _super.call(this) || this;
26
77
  _this.dialogService = dialogService;
27
- _this.router = router;
28
78
  _this.dialogServiceDefaults = dialogServiceDefaults;
29
79
  _this.matDialogDefaultConfig = matDialogDefaultConfig;
30
80
  _this._activityList = new DelegatingListModel();
31
- _this._active = false;
81
+ _this.startingGuard = new Guard();
32
82
  assert.notNil(dialogService);
33
- var _a = Dsl.disposeWith(_this), chain = _a.chain, observe = _a.observe;
34
- _this.currentActivity = chain(_this.activityList).last();
35
83
  return _this;
36
- // observe.valuesFrom(this.router.events)
37
- // .tap((event:RouterEvent) => {
38
- // const nav = router.getCurrentNavigation();
39
- // console.log({
40
- // previousUrl: nav.previousNavigation && nav.previousNavigation.finalUrl,
41
- // initialUrl: nav.initialUrl,
42
- // finalUrl: nav.finalUrl,
43
- // });
44
- //
45
- // })
46
- // .filter(event => event instanceof NavigationStart)
47
- // .subscribe((event: NavigationStart) => {
48
- // console.log(event.navigationTrigger);
49
- // if (event.navigationTrigger === 'popstate' && this.isActive()) {
50
- // const prev = router.getCurrentNavigation().previousNavigation.finalUrl;
51
- // // this.router.navigateByUrl(prev.toString(), {
52
- // // replaceUrl: true,
53
- // // skipLocationChange: false
54
- // // });
55
- // // this.cancelActivity();
56
- // }
57
- // });
58
84
  }
85
+ /**
86
+ * @return {?}
87
+ */
88
+ DialogInteractionService.prototype.isActive = /**
89
+ * @return {?}
90
+ */
91
+ function () {
92
+ return !!this.currentActivityId;
93
+ };
59
94
  /**
60
95
  * @return {?}
61
96
  */
@@ -63,7 +98,7 @@ var DialogInteractionService = /** @class */ (function (_super) {
63
98
  * @return {?}
64
99
  */
65
100
  function () {
66
- this.currentActivity.value.cancel(null);
101
+ this.currentActivity.cancel(null);
67
102
  };
68
103
  Object.defineProperty(DialogInteractionService.prototype, "activityList", {
69
104
  get: /**
@@ -116,56 +151,59 @@ var DialogInteractionService = /** @class */ (function (_super) {
116
151
  */
117
152
  function (a) { return a.constructor.name; })).join(', '));
118
153
  }
119
- this._active = true;
120
- /** @type {?} */
121
- var self = this;
122
- /** @type {?} */
123
- var config = tslib_1.__assign({ autoFocus: false, hasBackdrop: true, closeOnNavigation: false }, this.matDialogDefaultConfig, this.dialogServiceDefaults, {
124
- data: data,
125
- disableClose: disableClose,
126
- panelClass: 'dialog-interaction-service'
127
- });
128
- /** @type {?} */
129
- var matDialogRef = (/** @type {?} */ (this.dialogService.open(ActivityContainerComponent, config)));
130
- return new Promise((/**
131
- * @param {?} resolve
132
- * @param {?} reject
154
+ return this.startingGuard.whileTrue((/**
133
155
  * @return {?}
134
156
  */
135
- function (resolve, reject) {
157
+ function () {
158
+ _this.currentActivityId = uuid.v1();
136
159
  /** @type {?} */
137
- var activityContainer = matDialogRef.componentInstance;
138
- activityContainer.parentInteractionContext = _this;
139
- self.safelyUpdateActivityListDelegate(activityContainer.activityList);
140
- activityContainer.initialise({
141
- activityClass: activityType,
142
- activityData: data,
143
- onDone: /**
144
- * @param {?} result
145
- * @return {?}
146
- */
147
- function (result) {
148
- // TODO: should I be calling resolve after close?
149
- resolve(result);
150
- matDialogRef.close(result);
151
- },
152
- onCancel: /**
153
- * @param {?} error
154
- * @return {?}
155
- */
156
- function (error) {
157
- // TODO: should I be calling reject after close?
158
- reject(error);
159
- matDialogRef.close(error);
160
- }
160
+ var self = _this;
161
+ /** @type {?} */
162
+ var config = tslib_1.__assign({ autoFocus: false, hasBackdrop: true, closeOnNavigation: false }, _this.matDialogDefaultConfig, _this.dialogServiceDefaults, {
163
+ data: data,
164
+ disableClose: disableClose,
165
+ panelClass: 'dialog-interaction-service'
161
166
  });
162
- matDialogRef.updateSize();
163
- })).finally((/**
164
- * @return {?}
165
- */
166
- function () {
167
- self.safelyUpdateActivityListDelegate(null);
168
- self._active = false;
167
+ /** @type {?} */
168
+ var matDialogRef = (/** @type {?} */ (_this.dialogService.open(ActivityContainerComponent, config)));
169
+ return new Promise((/**
170
+ * @param {?} resolve
171
+ * @param {?} reject
172
+ * @return {?}
173
+ */
174
+ function (resolve, reject) {
175
+ /** @type {?} */
176
+ var activityContainer = matDialogRef.componentInstance;
177
+ activityContainer.parentInteractionContext = _this;
178
+ self.safelyUpdateActivityListDelegate(activityContainer.activityList);
179
+ activityContainer.initialActivityOutletContext = {
180
+ activityClass: activityType,
181
+ activityData: data,
182
+ onDone: /**
183
+ * @param {?} result
184
+ * @return {?}
185
+ */
186
+ function (result) {
187
+ resolve(result);
188
+ matDialogRef.close(result);
189
+ },
190
+ onCancel: /**
191
+ * @param {?} error
192
+ * @return {?}
193
+ */
194
+ function (error) {
195
+ reject(error);
196
+ matDialogRef.close(error);
197
+ }
198
+ };
199
+ matDialogRef.updateSize();
200
+ })).finally((/**
201
+ * @return {?}
202
+ */
203
+ function () {
204
+ _this.currentActivityId = null;
205
+ self.safelyUpdateActivityListDelegate(null);
206
+ }));
169
207
  }));
170
208
  };
171
209
  /**
@@ -240,17 +278,14 @@ var DialogInteractionService = /** @class */ (function (_super) {
240
278
  /** @nocollapse */
241
279
  DialogInteractionService.ctorParameters = function () { return [
242
280
  { type: MatDialog },
243
- { type: Router },
244
281
  { type: MatDialogConfig, decorators: [{ type: Optional }, { type: Inject, args: [DIALOG_INTERACTION_SERVICE_DEFAULTS,] }] },
245
282
  { type: MatDialogConfig, decorators: [{ type: Optional }, { type: Inject, args: [MAT_DIALOG_DEFAULT_OPTIONS,] }] }
246
283
  ]; };
247
- /** @nocollapse */ DialogInteractionService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function DialogInteractionService_Factory() { return new DialogInteractionService(i0.ɵɵinject(i1.MatDialog), i0.ɵɵinject(i2.Router), i0.ɵɵinject(DIALOG_INTERACTION_SERVICE_DEFAULTS, 8), i0.ɵɵinject(i1.MAT_DIALOG_DEFAULT_OPTIONS, 8)); }, token: DialogInteractionService, providedIn: "root" });
284
+ /** @nocollapse */ DialogInteractionService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function DialogInteractionService_Factory() { return new DialogInteractionService(i0.ɵɵinject(i1.MatDialog), i0.ɵɵinject(DIALOG_INTERACTION_SERVICE_DEFAULTS, 8), i0.ɵɵinject(i1.MAT_DIALOG_DEFAULT_OPTIONS, 8)); }, token: DialogInteractionService, providedIn: "root" });
248
285
  return DialogInteractionService;
249
286
  }(InteractionContext));
250
287
  export { DialogInteractionService };
251
288
  if (false) {
252
- /** @type {?} */
253
- DialogInteractionService.prototype.currentActivity;
254
289
  /**
255
290
  * @type {?}
256
291
  * @private
@@ -260,20 +295,20 @@ if (false) {
260
295
  * @type {?}
261
296
  * @private
262
297
  */
263
- DialogInteractionService.prototype._active;
298
+ DialogInteractionService.prototype.startingGuard;
264
299
  /**
265
300
  * @type {?}
266
301
  * @private
267
302
  */
268
- DialogInteractionService.prototype.dialogService;
303
+ DialogInteractionService.prototype.currentActivityId;
269
304
  /**
270
305
  * @type {?}
271
306
  * @private
272
307
  */
273
- DialogInteractionService.prototype.router;
308
+ DialogInteractionService.prototype.dialogService;
274
309
  /** @type {?} */
275
310
  DialogInteractionService.prototype.dialogServiceDefaults;
276
311
  /** @type {?} */
277
312
  DialogInteractionService.prototype.matDialogDefaultConfig;
278
313
  }
279
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWludGVyYWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vc2VydmljZXMvZGlhbG9nLWludGVyYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQWlCLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQXlCLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBR3RELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBRTlHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQUU1RCxNQUFNLEtBQU8sbUNBQW1DLEdBQUcsSUFBSSxjQUFjLENBQXVCLHFDQUFxQyxDQUFDO0FBRWxJO0lBRzhDLG9EQUFrQjtJQU05RCxrQ0FBNkIsYUFBd0IsRUFDeEIsTUFBYyxFQUNtQyxxQkFBMkMsRUFDcEQsc0JBQTRDO1FBSGpILFlBS0UsaUJBQU8sU0Ew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UTtRQUM3RixPQUFPLElBQUksQ0FBQyxjQUFjLENBQWlELDBCQUEwQixFQUFFO1lBQ3JHLE9BQU8sU0FBQTtZQUNQLFlBQVksRUFBRSxZQUFZO1lBQzFCLElBQUksRUFBRSxJQUFJO1NBQ1gsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7O2dCQXhIRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQWxCUSxTQUFTO2dCQUVULE1BQU07Z0JBRHNCLGVBQWUsdUJBMEJyQyxRQUFRLFlBQUksTUFBTSxTQUFDLG1DQUFtQztnQkExQmhDLGVBQWUsdUJBMkJyQyxRQUFRLFlBQUksTUFBTSxTQUFDLDBCQUEwQjs7O21DQTdCNUQ7Q0EySUMsQUExSEQsQ0FHOEMsa0JBQWtCLEdBdUgvRDtTQXZIWSx3QkFBd0I7OztJQUVuQyxtREFBeUQ7Ozs7O0lBQ3pELGlEQUErRTs7Ozs7SUFDL0UsMkNBQXdCOzs7OztJQUVaLGlEQUF5Qzs7Ozs7SUFDekMsMENBQStCOztJQUMvQix5REFBNkc7O0lBQzdHLDBEQUFxRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IE1BVF9ESUFMT0dfREVGQVVMVF9PUFRJT05TLCBNYXREaWFsb2dDb25maWcgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENvbnN0cnVjdGFibGUsIERlbGVnYXRpbmdMaXN0TW9kZWwsIERzbCwgbGFuZywgTGlzdE1vZGVsLCBWYWx1ZU1vZGVsIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgYXNzZXJ0IH0gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5pbXBvcnQgeyBBY3Rpdml0eSB9IGZyb20gJy4uL2FjdGl2aXR5JztcbmltcG9ydCB7IEFsZXJ0IH0gZnJvbSAnLi4vYWxlcnQnO1xuaW1wb3J0IHsgQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFsZXJ0RGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9hbGVydC1kaWFsb2cvYWxlcnQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvY29uZmlybS10aGVuLWRpYWxvZy9jb25maXJtLXRoZW4tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlybSB9IGZyb20gJy4uL2NvbmZpcm0nO1xuaW1wb3J0IHsgSW50ZXJhY3Rpb25Db250ZXh0IH0gZnJvbSAnLi4vaW50ZXJhY3Rpb24tY29udGV4dCc7XG5cbmV4cG9ydCBjb25zdCBESUFMT0dfSU5URVJBQ1RJT05fU0VSVklDRV9ERUZBVUxUUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxNYXREaWFsb2dDb25maWc8YW55Pj4oJ0RJQUxPR19JTlRFUkFDVElPTl9TRVJWSUNFX0RFRkFVTFRTJyk7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERpYWxvZ0ludGVyYWN0aW9uU2VydmljZSBleHRlbmRzIEludGVyYWN0aW9uQ29udGV4dCB7XG5cbiAgcmVhZG9ubHkgY3VycmVudEFjdGl2aXR5OiBWYWx1ZU1vZGVsPEFjdGl2aXR5PGFueSwgYW55Pj47XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2aXR5TGlzdCA9IG5ldyBEZWxlZ2F0aW5nTGlzdE1vZGVsPEFjdGl2aXR5PGFueSwgYW55Pj4oKTtcbiAgcHJpdmF0ZSBfYWN0aXZlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBkaWFsb2dTZXJ2aWNlOiBNYXREaWFsb2csXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRElBTE9HX0lOVEVSQUNUSU9OX1NFUlZJQ0VfREVGQVVMVFMpIHJlYWRvbmx5IGRpYWxvZ1NlcnZpY2VEZWZhdWx0czogTWF0RGlhbG9nQ29uZmlnPGFueT4sXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTUFUX0RJQUxPR19ERUZBVUxUX09QVElPTlMpIHJlYWRvbmx5IG1hdERpYWxvZ0RlZmF1bHRDb25maWc6IE1hdERpYWxvZ0NvbmZpZzxhbnk+XG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgYXNzZXJ0Lm5vdE5pbChkaWFsb2dTZXJ2aWNlKTtcbiAgICBjb25zdCB7IGNoYWluLCBvYnNlcnZlIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgdGhpcy5jdXJyZW50QWN0aXZpdHkgPSBjaGFpbih0aGlzLmFjdGl2aXR5TGlzdCkubGFzdCgpO1xuICAgIC8vIG9ic2VydmUudmFsdWVzRnJvbSh0aGlzLnJvdXRlci5ldmVudHMpXG4gICAgLy8gICAudGFwKChldmVudDpSb3V0ZXJFdmVudCkgPT4ge1xuICAgIC8vICAgICBjb25zdCBuYXYgPSByb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcbiAgICAvLyAgICAgY29uc29sZS5sb2coe1xuICAgIC8vICAgICAgIHByZXZpb3VzVXJsOiBuYXYucHJldmlvdXNOYXZpZ2F0aW9uICYmIG5hdi5wcmV2aW91c05hdmlnYXRpb24uZmluYWxVcmwsXG4gICAgLy8gICAgICAgaW5pdGlhbFVybDogbmF2LmluaXRpYWxVcmwsXG4gICAgLy8gICAgICAgZmluYWxVcmw6IG5hdi5maW5hbFVybCxcbiAgICAvLyAgICAgfSk7XG4gICAgLy9cbiAgICAvLyAgIH0pXG4gICAgLy8gICAuZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KVxuICAgIC8vICAgLnN1YnNjcmliZSgoZXZlbnQ6IE5hdmlnYXRpb25TdGFydCkgPT4ge1xuICAgIC8vICAgICBjb25zb2xlLmxvZyhldmVudC5uYXZpZ2F0aW9uVHJpZ2dlcik7XG4gICAgLy8gICAgIGlmIChldmVudC5uYXZpZ2F0aW9uVHJpZ2dlciA9PT0gJ3BvcHN0YXRlJyAmJiB0aGlzLmlzQWN0aXZlKCkpIHtcbiAgICAvLyAgICAgICBjb25zdCBwcmV2ID0gcm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCkucHJldmlvdXNOYXZpZ2F0aW9uLmZpbmFsVXJsO1xuICAgIC8vICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwocHJldi50b1N0cmluZygpLCB7XG4gICAgLy8gICAgICAgLy8gICByZXBsYWNlVXJsOiB0cnVlLFxuICAgIC8vICAgICAgIC8vICAgc2tpcExvY2F0aW9uQ2hhbmdlOiBmYWxzZVxuICAgIC8vICAgICAgIC8vIH0pO1xuICAgIC8vICAgICAgIC8vIHRoaXMuY2FuY2VsQWN0aXZpdHkoKTtcbiAgICAvLyAgICAgfVxuICAgIC8vICAgfSk7XG4gIH1cblxuICBjYW5jZWxBY3Rpdml0eSgpIHtcbiAgICB0aGlzLmN1cnJlbnRBY3Rpdml0eS52YWx1ZS5jYW5jZWwobnVsbCk7XG4gIH1cblxuICBnZXQgYWN0aXZpdHlMaXN0KCk6IExpc3RNb2RlbDxBY3Rpdml0eTxhbnksIGFueT4+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZpdHlMaXN0LnJlYWRvbmx5O1xuICB9XG5cbiAgc3RhcnRBY3Rpdml0eTxELCBSLCBFPihhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhPzogRCk6IFByb21pc2U8Uj4ge1xuICAgIHJldHVybiB0aGlzLl9zdGFydEFjdGl2aXR5KGFjdGl2aXR5VHlwZSwgZGF0YSk7XG4gIH1cblxuICBwcml2YXRlIF9zdGFydEFjdGl2aXR5PEQsIFIsIEU+KGFjdGl2aXR5VHlwZTogQ29uc3RydWN0YWJsZTxBY3Rpdml0eTxELCBSLCBFPj4sIGRhdGE6IEQsIGRpc2FibGVDbG9zZTogYm9vbGVhbiA9IHRydWUpIHtcbiAgICBpZiAodGhpcy5pc0FjdGl2ZSgpKSB7XG4gICAgICBsYW5nLmlsbGVnYWxTdGF0ZShgQWN0aXZpdHkgYWxyZWFkeSBpbiBwcm9ncmVzczogJHt0aGlzLmFjdGl2aXR5TGlzdC52YWx1ZS5tYXAoYSA9PiBhLmNvbnN0cnVjdG9yLm5hbWUpLmpvaW4oJywgJyl9YCk7XG4gICAgfVxuICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7XG5cbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICBjb25zdCBjb25maWc6IE1hdERpYWxvZ0NvbmZpZyA9IHtcbiAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIGNsb3NlT25OYXZpZ2F0aW9uOiBmYWxzZSxcbiAgICAgIC4uLnRoaXMubWF0RGlhbG9nRGVmYXVsdENvbmZpZyxcbiAgICAgIC4uLnRoaXMuZGlhbG9nU2VydmljZURlZmF1bHRzLFxuICAgICAgLi4ue1xuICAgICAgICBkYXRhLFxuICAgICAgICBkaXNhYmxlQ2xvc2UsXG4gICAgICAgIHBhbmVsQ2xhc3M6ICdkaWFsb2ctaW50ZXJhY3Rpb24tc2VydmljZSdcbiAgICAgIH1cbiAgICB9O1xuICAgIGNvbnN0IG1hdERpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKEFjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50LCBjb25maWcpIGFzIE1hdERpYWxvZ1JlZjxBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudD47XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPFI+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGFjdGl2aXR5Q29udGFpbmVyID0gbWF0RGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlO1xuICAgICAgYWN0aXZpdHlDb250YWluZXIucGFyZW50SW50ZXJhY3Rpb25Db250ZXh0ID0gdGhpcztcbiAgICAgIHNlbGYuc2FmZWx5VXBkYXRlQWN0aXZpdHlMaXN0RGVsZWdhdGUoYWN0aXZpdHlDb250YWluZXIuYWN0aXZpdHlMaXN0KTtcbiAgICAgIGFjdGl2aXR5Q29udGFpbmVyLmluaXRpYWxpc2Uoe1xuICAgICAgICBhY3Rpdml0eUNsYXNzOiBhY3Rpdml0eVR5cGUsXG4gICAgICAgIGFjdGl2aXR5RGF0YTogZGF0YSxcbiAgICAgICAgb25Eb25lKHJlc3VsdCkge1xuICAgICAgICAgIC8vIFRPRE86IHNob3VsZCBJIGJlIGNhbGxpbmcgcmVzb2x2ZSBhZnRlciBjbG9zZT9cbiAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgICAgbWF0RGlhbG9nUmVmLmNsb3NlKHJlc3VsdCk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uQ2FuY2VsKGVycm9yKSB7XG4gICAgICAgICAgLy8gVE9ETzogc2hvdWxkIEkgYmUgY2FsbGluZyByZWplY3QgYWZ0ZXIgY2xvc2U/XG4gICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICBtYXREaWFsb2dSZWYuY2xvc2UoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIG1hdERpYWxvZ1JlZi51cGRhdGVTaXplKCk7XG4gICAgfSkuZmluYWxseSgoKSA9PiB7XG4gICAgICBzZWxmLnNhZmVseVVwZGF0ZUFjdGl2aXR5TGlzdERlbGVnYXRlKG51bGwpO1xuICAgICAgc2VsZi5fYWN0aXZlID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGVoIGRlbGVnYXRlIG9uIHRoZSBuZXh0IHRpY2sgdG8gYXZvaWQgbW9kaWZ5aW5nIHN0YXRlIGR1cmluZyB0aGUgY3VycmVudCBjaGFuZ2UgZGV0ZWN0aW9uIGN5Y2xlLlxuICAgKiBAcGFyYW0gZGVsZWdhdGVcbiAgICovXG4gIHNhZmVseVVwZGF0ZUFjdGl2aXR5TGlzdERlbGVnYXRlKGRlbGVnYXRlOiBMaXN0TW9kZWw8QWN0aXZpdHk8YW55LCBhbnk+Pikge1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fYWN0aXZpdHlMaXN0LnNldERlbGVnYXRlKGRlbGVnYXRlKSk7XG4gIH1cblxuICBhbGVydChhbGVydDogQWxlcnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcnRBY3Rpdml0eShBbGVydERpYWxvZ0NvbXBvbmVudCwgYWxlcnQsIGZhbHNlKTtcbiAgfVxuXG4gIGNvbmZpcm0oY29uZmlybTogQ29uZmlybSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl9zdGFydEFjdGl2aXR5KENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwgY29uZmlybSwgdHJ1ZSk7XG4gIH1cblxuICBjb25maXJtVGhlbjxELCBSLCBFPihjb25maXJtOiBDb25maXJtLCBhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhPzogRCk6IFByb21pc2U8Uj4ge1xuICAgIHJldHVybiB0aGlzLl9zdGFydEFjdGl2aXR5PENvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50LkRhdGE8RCwgUiwgRT4sIFIsIEU+KENvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICBjb25maXJtLFxuICAgICAgYWN0aXZpdHlUeXBlOiBhY3Rpdml0eVR5cGUsXG4gICAgICBkYXRhOiBkYXRhXG4gICAgfSwgdHJ1ZSk7XG4gIH1cblxufVxuIl19
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWludGVyYWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vc2VydmljZXMvZGlhbG9nLWludGVyYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZGLE9BQU8sRUFBaUIsbUJBQW1CLEVBQUUsSUFBSSxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RCxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUc3QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMzRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUU5RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQUU1RCxNQUFNLEtBQU8sbUNBQW1DLEdBQUcsSUFBSSxjQUFjLENBQXVCLHFDQUFxQyxDQUFDO0FBRWxJO0lBQW9CLGlDQUFtQjtJQUVyQztlQUNFLGtCQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxzQkFBSSx3QkFBSzs7OztRQUFUO1lB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LENBQUM7Ozs7O0lBRUQsd0NBQUs7Ozs7SUFBTCxVQUFNLEtBQVk7UUFDaEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRSxDQUFDOzs7OztJQUVELDBDQUFPOzs7O0lBQVAsVUFBUSxPQUFnQjtRQUN0QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsMkJBQTJCLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7Ozs7Ozs7O0lBRUQsOENBQVc7Ozs7Ozs7SUFBWCxVQUFxQixPQUFnQixFQUFFLFlBQThDLEVBQUUsSUFBUTtRQUM3RixPQUFPLElBQUksQ0FBQyxjQUFjLENBQWlELDBCQUEwQixFQUFFO1lBQ3JHLE9BQU8sU0FBQTtZQUNQLFlBQVksRUFBRSxZQUFZO1lBQzFCLElBQUksRUFBRSxJQUFJO1NBQ1gsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7O2dCQXJHRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQTNDUSxTQUFTO2dCQUNtQixlQUFlLHVCQWtEckMsUUFBUSxZQUFJLE1BQU0sU0FBQyxtQ0FBbUM7Z0JBbERoQyxlQUFlLHVCQW1EckMsUUFBUSxZQUFJLE1BQU0sU0FBQywwQkFBMEI7OzttQ0FyRDVEO0NBZ0pDLEFBdEdELENBRzhDLGtCQUFrQixHQW1HL0Q7U0FuR1ksd0JBQXdCOzs7Ozs7SUFFbkMsaURBQStFOzs7OztJQUMvRSxpREFBb0M7Ozs7O0lBQ3BDLHFEQUFrQzs7Ozs7SUFFdEIsaURBQXlDOztJQUN6Qyx5REFBNkc7O0lBQzdHLDBEQUFxRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IE1BVF9ESUFMT0dfREVGQVVMVF9PUFRJT05TLCBNYXREaWFsb2dDb25maWcgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgRGVsZWdhdGluZ0xpc3RNb2RlbCwgbGFuZywgTGlzdE1vZGVsLCBWYWx1ZU1vZGVsIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgYXNzZXJ0IH0gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgQWN0aXZpdHkgfSBmcm9tICcuLi9hY3Rpdml0eSc7XG5pbXBvcnQgeyBBbGVydCB9IGZyb20gJy4uL2FsZXJ0JztcbmltcG9ydCB7IEFjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9hY3Rpdml0eS1jb250YWluZXIvYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbGVydERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvYWxlcnQtZGlhbG9nL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlybVRoZW5EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1kaWFsb2cvY29uZmlybS10aGVuLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbmZpcm0gfSBmcm9tICcuLi9jb25maXJtJztcbmltcG9ydCB7IEludGVyYWN0aW9uQ29udGV4dCB9IGZyb20gJy4uL2ludGVyYWN0aW9uLWNvbnRleHQnO1xuXG5leHBvcnQgY29uc3QgRElBTE9HX0lOVEVSQUNUSU9OX1NFUlZJQ0VfREVGQVVMVFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48TWF0RGlhbG9nQ29uZmlnPGFueT4+KCdESUFMT0dfSU5URVJBQ1RJT05fU0VSVklDRV9ERUZBVUxUUycpO1xuXG5jbGFzcyBHdWFyZCBleHRlbmRzIFZhbHVlTW9kZWw8Ym9vbGVhbj4ge1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKHsgaW5pdGlhbFZhbHVlOiBmYWxzZSB9KTtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5yZWFkKCk7XG4gIH1cblxuICB3aGlsZVRydWU8Uj4oZnVuOiAoKSA9PiBSKTogUiB7XG4gICAgdGhpcy5zdGFydFRyYW5zYWN0aW9uKCkuY29tbWl0KHRydWUpO1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gZnVuKCk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhcnRUcmFuc2FjdGlvbigpLmNvbW1pdChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgcnVuSWZGYWxzZTxSPihmdW46ICgpID0+IFIsIGRlZmF1bHRWYWx1ZTogUiA9IG51bGwpOiBSIHtcbiAgICByZXR1cm4gIXRoaXMudmFsdWUgPyBmdW4oKSA6IGRlZmF1bHRWYWx1ZTtcbiAgfVxufVxuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERpYWxvZ0ludGVyYWN0aW9uU2VydmljZSBleHRlbmRzIEludGVyYWN0aW9uQ29udGV4dCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZpdHlMaXN0ID0gbmV3IERlbGVnYXRpbmdMaXN0TW9kZWw8QWN0aXZpdHk8YW55LCBhbnk+PigpO1xuICBwcml2YXRlIHN0YXJ0aW5nR3VhcmQgPSBuZXcgR3VhcmQoKTtcbiAgcHJpdmF0ZSBjdXJyZW50QWN0aXZpdHlJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nU2VydmljZTogTWF0RGlhbG9nLFxuICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERJQUxPR19JTlRFUkFDVElPTl9TRVJWSUNFX0RFRkFVTFRTKSByZWFkb25seSBkaWFsb2dTZXJ2aWNlRGVmYXVsdHM6IE1hdERpYWxvZ0NvbmZpZzxhbnk+LFxuICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9ESUFMT0dfREVGQVVMVF9PUFRJT05TKSByZWFkb25seSBtYXREaWFsb2dEZWZhdWx0Q29uZmlnOiBNYXREaWFsb2dDb25maWc8YW55PlxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIGFzc2VydC5ub3ROaWwoZGlhbG9nU2VydmljZSk7XG4gIH1cblxuICBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmN1cnJlbnRBY3Rpdml0eUlkO1xuICB9XG5cbiAgY2FuY2VsQWN0aXZpdHkoKSB7XG4gICAgdGhpcy5jdXJyZW50QWN0aXZpdHkuY2FuY2VsKG51bGwpO1xuICB9XG5cbiAgZ2V0IGFjdGl2aXR5TGlzdCgpOiBMaXN0TW9kZWw8QWN0aXZpdHk8YW55LCBhbnk+PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2aXR5TGlzdC5yZWFkb25seTtcbiAgfVxuXG4gIHN0YXJ0QWN0aXZpdHk8RCwgUiwgRT4oYWN0aXZpdHlUeXBlOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQsIFIsIEU+PiwgZGF0YT86IEQpOiBQcm9taXNlPFI+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcnRBY3Rpdml0eShhY3Rpdml0eVR5cGUsIGRhdGEpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc3RhcnRBY3Rpdml0eTxELCBSLCBFPihhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhOiBELCBkaXNhYmxlQ2xvc2U6IGJvb2xlYW4gPSB0cnVlKSB7XG4gICAgaWYgKHRoaXMuaXNBY3RpdmUoKSkge1xuICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYEFjdGl2aXR5IGFscmVhZHkgaW4gcHJvZ3Jlc3M6ICR7dGhpcy5hY3Rpdml0eUxpc3QudmFsdWUubWFwKGEgPT4gYS5jb25zdHJ1Y3Rvci5uYW1lKS5qb2luKCcsICcpfWApO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zdGFydGluZ0d1YXJkLndoaWxlVHJ1ZSgoKSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRBY3Rpdml0eUlkID0gdXVpZC52MSgpO1xuXG4gICAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICAgIGNvbnN0IGNvbmZpZzogTWF0RGlhbG9nQ29uZmlnID0ge1xuICAgICAgICBhdXRvRm9jdXM6IGZhbHNlLFxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgICAgY2xvc2VPbk5hdmlnYXRpb246IGZhbHNlLFxuICAgICAgICAuLi50aGlzLm1hdERpYWxvZ0RlZmF1bHRDb25maWcsXG4gICAgICAgIC4uLnRoaXMuZGlhbG9nU2VydmljZURlZmF1bHRzLFxuICAgICAgICAuLi57XG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBkaXNhYmxlQ2xvc2UsXG4gICAgICAgICAgcGFuZWxDbGFzczogJ2RpYWxvZy1pbnRlcmFjdGlvbi1zZXJ2aWNlJ1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgY29uc3QgbWF0RGlhbG9nUmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW4oQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQsIGNvbmZpZykgYXMgTWF0RGlhbG9nUmVmPEFjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50PEQsUixFPj47XG4gICAgICByZXR1cm4gbmV3IFByb21pc2U8Uj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBjb25zdCBhY3Rpdml0eUNvbnRhaW5lciA9IG1hdERpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZTtcbiAgICAgICAgYWN0aXZpdHlDb250YWluZXIucGFyZW50SW50ZXJhY3Rpb25Db250ZXh0ID0gdGhpcztcbiAgICAgICAgc2VsZi5zYWZlbHlVcGRhdGVBY3Rpdml0eUxpc3REZWxlZ2F0ZShhY3Rpdml0eUNvbnRhaW5lci5hY3Rpdml0eUxpc3QpO1xuXG4gICAgICAgIGFjdGl2aXR5Q29udGFpbmVyLmluaXRpYWxBY3Rpdml0eU91dGxldENvbnRleHQgPSB7XG4gICAgICAgICAgYWN0aXZpdHlDbGFzczogYWN0aXZpdHlUeXBlLFxuICAgICAgICAgIGFjdGl2aXR5RGF0YTogZGF0YSxcbiAgICAgICAgICBvbkRvbmUocmVzdWx0KSB7XG4gICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgICAgICBtYXREaWFsb2dSZWYuY2xvc2UocmVzdWx0KTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIG9uQ2FuY2VsKGVycm9yKSB7XG4gICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgbWF0RGlhbG9nUmVmLmNsb3NlKGVycm9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIG1hdERpYWxvZ1JlZi51cGRhdGVTaXplKCk7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgdGhpcy5jdXJyZW50QWN0aXZpdHlJZCA9IG51bGw7XG4gICAgICAgIHNlbGYuc2FmZWx5VXBkYXRlQWN0aXZpdHlMaXN0RGVsZWdhdGUobnVsbCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRlaCBkZWxlZ2F0ZSBvbiB0aGUgbmV4dCB0aWNrIHRvIGF2b2lkIG1vZGlmeWluZyBzdGF0ZSBkdXJpbmcgdGhlIGN1cnJlbnQgY2hhbmdlIGRldGVjdGlvbiBjeWNsZS5cbiAgICogQHBhcmFtIGRlbGVnYXRlXG4gICAqL1xuICBzYWZlbHlVcGRhdGVBY3Rpdml0eUxpc3REZWxlZ2F0ZShkZWxlZ2F0ZTogTGlzdE1vZGVsPEFjdGl2aXR5PGFueSwgYW55Pj4pIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX2FjdGl2aXR5TGlzdC5zZXREZWxlZ2F0ZShkZWxlZ2F0ZSkpO1xuICB9XG5cbiAgYWxlcnQoYWxlcnQ6IEFsZXJ0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXJ0QWN0aXZpdHkoQWxlcnREaWFsb2dDb21wb25lbnQsIGFsZXJ0LCBmYWxzZSk7XG4gIH1cblxuICBjb25maXJtKGNvbmZpcm06IENvbmZpcm0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcnRBY3Rpdml0eShDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQsIGNvbmZpcm0sIHRydWUpO1xuICB9XG5cbiAgY29uZmlybVRoZW48RCwgUiwgRT4oY29uZmlybTogQ29uZmlybSwgYWN0aXZpdHlUeXBlOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQsIFIsIEU+PiwgZGF0YT86IEQpOiBQcm9taXNlPFI+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhcnRBY3Rpdml0eTxDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudC5EYXRhPEQsIFIsIEU+LCBSLCBFPihDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgY29uZmlybSxcbiAgICAgIGFjdGl2aXR5VHlwZTogYWN0aXZpdHlUeXBlLFxuICAgICAgZGF0YTogZGF0YVxuICAgIH0sIHRydWUpO1xuICB9XG59XG4iXX0=