@coolon/angular-ui-powerups 0.0.34 → 0.0.35

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.
@@ -17,6 +17,8 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
17
17
  var _this = _super.call(this) || this;
18
18
  _this.activityTabs = new MutableListModel();
19
19
  _this.obsoleteTabs = [];
20
+ var _a = Dsl.disposeWith(_this), chain = _a.chain, valueOf = _a.valueOf, before = _a.before, when = _a.when, after = _a.after, observe = _a.observe, switchOn = _a.switchOn;
21
+ _this.lastActivityTab = chain(_this.activityTabs).last();
20
22
  return _this;
21
23
  }
22
24
  /**
@@ -39,7 +41,7 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
39
41
  observe.valuesFrom(this.tabs.animationDone).subscribe((/**
40
42
  * @return {?}
41
43
  */
42
- function () { return _this.cleanUpTabs(); }));
44
+ function () { return _this.onAnimationFinished(); }));
43
45
  };
44
46
  /**
45
47
  * @template D, R, E
@@ -114,12 +116,13 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
114
116
  * @private
115
117
  * @return {?}
116
118
  */
117
- ActivityContainerComponent.prototype.cleanUpTabs = /**
119
+ ActivityContainerComponent.prototype.onAnimationFinished = /**
118
120
  * @private
119
121
  * @return {?}
120
122
  */
121
123
  function () {
122
124
  var _this = this;
125
+ // TODO: notify selected tab they are ready. activty.afterAnimationComplete
123
126
  this.activityTabs.value = this.activityTabs.value.filter((/**
124
127
  * @param {?} tab
125
128
  * @return {?}
@@ -127,6 +130,9 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
127
130
  function (tab) {
128
131
  return !_this.obsoleteTabs.includes(tab);
129
132
  }));
133
+ if (this.lastActivityTab.value && this.lastActivityTab.value['onActivityReady']) {
134
+ this.lastActivityTab.value['onActivityReady']();
135
+ }
130
136
  };
131
137
  ActivityContainerComponent.decorators = [
132
138
  { type: Component, args: [{
@@ -159,6 +165,11 @@ if (false) {
159
165
  * @private
160
166
  */
161
167
  ActivityContainerComponent.prototype.obsoleteTabs;
168
+ /**
169
+ * @type {?}
170
+ * @private
171
+ */
172
+ ActivityContainerComponent.prototype.lastActivityTab;
162
173
  }
163
174
  (function (ActivityContainerComponent) {
164
175
  /**
@@ -178,4 +189,4 @@ if (false) {
178
189
  ActivityContext.prototype.onCancel;
179
190
  }
180
191
  })(ActivityContainerComponent || (ActivityContainerComponent = {}));
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFpQixHQUFHLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFLL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFbkc7SUFLZ0Qsc0RBQW1CO0lBY2pFO1FBQUEsWUFDRSxpQkFBTyxTQUNSO1FBTFEsa0JBQVksR0FBRyxJQUFJLGdCQUFnQixFQUF3QyxDQUFDO1FBQzdFLGtCQUFZLEdBQTJDLEVBQUUsQ0FBQzs7SUFJbEUsQ0FBQzs7OztJQUVELDZDQUFROzs7SUFBUjtJQUNBLENBQUM7Ozs7SUFFRCxvREFBZTs7O0lBQWY7UUFBQSxpQkFHQztRQUZTLElBQUEsdUNBQU87UUFDZixPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsU0FBUzs7O1FBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxXQUFXLEVBQUUsRUFBbEIsQ0FBa0IsRUFBQyxDQUFDO0lBQ2xGLENBQUM7Ozs7OztJQUVELCtDQUFVOzs7OztJQUFWLFVBQW9CLE9BQTREO1FBQzlFLElBQUksQ0FBQyxlQUFlLHdCQUNmLE9BQU8sSUFDVixrQkFBa0IsRUFBRSxJQUFJLEdBQ3pCLENBQUM7SUFDSixDQUFDOzs7Ozs7O0lBRUQsa0RBQWE7Ozs7OztJQUFiLFVBQXVCLFlBQThDLEVBQUUsSUFBUTtRQUEvRSxpQkFlQzs7WUFkTyxRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBSzs7WUFDOUIsT0FBTyxHQUFHO1lBQ2Qsa0JBQWtCLEVBQUUsSUFBSTtZQUN4QixhQUFhLEVBQUUsWUFBWTtZQUMzQixZQUFZLEVBQUUsSUFBSTtZQUNsQixNQUFNLEVBQUUsUUFBUSxDQUFDLE9BQU87WUFDeEIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxNQUFNO1NBQzFCO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDbkQsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU87OztRQUFDO1lBQzlCLEtBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2hDLEtBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUN6RCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7O0lBRUQsMENBQUs7Ozs7SUFBTCxVQUFNLEtBQVk7UUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7Ozs7O0lBRUQsNENBQU87Ozs7SUFBUCxVQUFRLE9BQWdCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQywyQkFBMkIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNsRSxDQUFDOzs7OztJQUVPLGdEQUFXOzs7O0lBQW5CO1FBQUEsaUJBSUM7UUFIQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxNQUFNOzs7O1FBQUMsVUFBQSxHQUFHO1lBQzFELE9BQU8sQ0FBQyxLQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQyxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7O2dCQW5FRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQseWRBQWtEOztpQkFFbkQ7Ozs7OzJDQUdFLEtBQUs7a0NBR0wsS0FBSzt1QkFHTCxTQUFTLFNBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7SUF1RHJDLGlDQUFDO0NBQUEsQUFwRUQsQ0FLZ0QsbUJBQW1CLEdBK0RsRTtTQS9EWSwwQkFBMEI7OztJQUVyQyw4REFDNkM7O0lBRTdDLHFEQUNzRDs7SUFFdEQsMENBQ2tCOztJQUVsQixrREFBcUY7Ozs7O0lBQ3JGLGtEQUFrRTs7QUFxRHBFLFdBQWlCLDBCQUEwQjs7Ozs7SUFFekMsOEJBS0M7Ozs7UUFKQyx3Q0FBZ0Q7O1FBQ2hELHVDQUFnQjs7UUFDaEIsaUNBQTRCOztRQUM1QixtQ0FBNkI7O0FBRWpDLENBQUMsRUFSZ0IsMEJBQTBCLEtBQTFCLDBCQUEwQixRQVExQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUYWJHcm91cCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IENvbnN0cnVjdGFibGUsIERzbCwgTXV0YWJsZUxpc3RNb2RlbCB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IERlZmVycmVkIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4vbGliL3Byb21pc2UvZGVmZXJyZWQuY2xhc3MnO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBBY3Rpdml0eSB9IGZyb20gJy4uLy4uL2FjdGl2aXR5JztcbmltcG9ydCB7IEFsZXJ0IH0gZnJvbSAnLi4vLi4vYWxlcnQnO1xuaW1wb3J0IHsgQ29uZmlybSB9IGZyb20gJy4uLy4uL2NvbmZpcm0nO1xuaW1wb3J0IHsgSW50ZXJhY3Rpb25Db250ZXh0IH0gZnJvbSAnLi4vLi4vaW50ZXJhY3Rpb24tY29udGV4dCc7XG5pbXBvcnQgeyBBY3Rpdml0eU91dGxldENvbnRleHQgfSBmcm9tICcuLi9hY3Rpdml0eS1vdXRsZXQvYWN0aXZpdHktb3V0bGV0LWNvbnRleHQnO1xuaW1wb3J0IHsgQWxlcnREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9hbGVydC1kaWFsb2cvYWxlcnQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYW5ndWxhci11aS1wb3dlcnVwcy1hY3Rpdml0eS1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBJbnRlcmFjdGlvbkNvbnRleHQge1xuXG4gIEBJbnB1dCgpXG4gIHBhcmVudEludGVyYWN0aW9uQ29udGV4dDogSW50ZXJhY3Rpb25Db250ZXh0O1xuXG4gIEBJbnB1dCgpXG4gIGluaXRpYWxBY3Rpdml0eTogQWN0aXZpdHlPdXRsZXRDb250ZXh0PGFueSwgYW55LCBhbnk+O1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYnMnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB0YWJzOiBNYXRUYWJHcm91cDtcblxuICByZWFkb25seSBhY3Rpdml0eVRhYnMgPSBuZXcgTXV0YWJsZUxpc3RNb2RlbDxBY3Rpdml0eU91dGxldENvbnRleHQ8YW55LCBhbnksIGFueT4+KCk7XG4gIHByaXZhdGUgb2Jzb2xldGVUYWJzOiBBY3Rpdml0eU91dGxldENvbnRleHQ8YW55LCBhbnksIGFueT5bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB7IG9ic2VydmUgfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICBvYnNlcnZlLnZhbHVlc0Zyb20odGhpcy50YWJzLmFuaW1hdGlvbkRvbmUpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsZWFuVXBUYWJzKCkpO1xuICB9XG5cbiAgaW5pdGlhbGlzZTxELCBSLCBFPihvcHRpb25zOiBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudC5BY3Rpdml0eUNvbnRleHQ8RCwgUiwgRT4pIHtcbiAgICB0aGlzLmluaXRpYWxBY3Rpdml0eSA9IHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBpbnRlcmFjdGlvbkNvbnRleHQ6IHRoaXNcbiAgICB9O1xuICB9XG5cbiAgc3RhcnRBY3Rpdml0eTxELCBSLCBFPihhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhPzogRCk6IFByb21pc2U8Uj4ge1xuICAgIGNvbnN0IGRlZmVycmVkID0gRGVmZXJyZWQuZGVmZXI8Uj4oKTtcbiAgICBjb25zdCBjb250ZXh0ID0ge1xuICAgICAgaW50ZXJhY3Rpb25Db250ZXh0OiB0aGlzLFxuICAgICAgYWN0aXZpdHlDbGFzczogYWN0aXZpdHlUeXBlLFxuICAgICAgYWN0aXZpdHlEYXRhOiBkYXRhLFxuICAgICAgb25Eb25lOiBkZWZlcnJlZC5yZXNvbHZlLFxuICAgICAgb25DYW5jZWw6IGRlZmVycmVkLnJlamVjdFxuICAgIH07XG4gICAgdGhpcy5hY3Rpdml0eVRhYnMucHVzaChjb250ZXh0KTtcbiAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuYWN0aXZpdHlUYWJzLmxlbmd0aDtcbiAgICByZXR1cm4gZGVmZXJyZWQucHJvbWlzZS5maW5hbGx5KCgpID0+IHtcbiAgICAgIHRoaXMub2Jzb2xldGVUYWJzLnB1c2goY29udGV4dCk7XG4gICAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuYWN0aXZpdHlUYWJzLmxlbmd0aCAtIDE7XG4gICAgfSk7XG4gIH1cblxuICBhbGVydChhbGVydDogQWxlcnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdGFydEFjdGl2aXR5KEFsZXJ0RGlhbG9nQ29tcG9uZW50LCBhbGVydCk7XG4gIH1cblxuICBjb25maXJtKGNvbmZpcm06IENvbmZpcm0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGFydEFjdGl2aXR5KENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwgY29uZmlybSk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFuVXBUYWJzKCkge1xuICAgIHRoaXMuYWN0aXZpdHlUYWJzLnZhbHVlID0gdGhpcy5hY3Rpdml0eVRhYnMudmFsdWUuZmlsdGVyKHRhYiA9PiB7XG4gICAgICByZXR1cm4gIXRoaXMub2Jzb2xldGVUYWJzLmluY2x1ZGVzKHRhYik7XG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudCB7XG5cbiAgZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eUNvbnRleHQ8RCwgUiwgRT4ge1xuICAgIGFjdGl2aXR5Q2xhc3M6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LFxuICAgIGFjdGl2aXR5RGF0YTogRCxcbiAgICBvbkRvbmU6IChyZXN1bHQ6IFIpID0+IHZvaWQsXG4gICAgb25DYW5jZWw6IChlcnJvcjogRSkgPT4gdm9pZCxcbiAgfVxufVxuIl19
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFpQixHQUFHLEVBQUUsZ0JBQWdCLEVBQW1CLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBSy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBRW5HO0lBS2dELHNEQUFtQjtJQWVqRTtRQUFBLFlBQ0UsaUJBQU8sU0FHUjtRQVJRLGtCQUFZLEdBQUcsSUFBSSxnQkFBZ0IsRUFBd0MsQ0FBQztRQUM3RSxrQkFBWSxHQUEyQyxFQUFFLENBQUM7UUFLMUQsSUFBQSwyQkFBa0YsRUFBaEYsZ0JBQUssRUFBRSxvQkFBTyxFQUFFLGtCQUFNLEVBQUUsY0FBSSxFQUFFLGdCQUFLLEVBQUUsb0JBQU8sRUFBRSxzQkFBa0M7UUFDeEYsS0FBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsS0FBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDOztJQUN6RCxD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OEJBS0M7Ozs7UUFKQyx3Q0FBZ0Q7O1FBQ2hELHVDQUFnQjs7UUFDaEIsaUNBQTRCOztRQUM1QixtQ0FBNkI7O0FBRWpDLENBQUMsRUFSZ0IsMEJBQTBCLEtBQTFCLDBCQUEwQixRQVExQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUYWJHcm91cCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IENvbnN0cnVjdGFibGUsIERzbCwgTXV0YWJsZUxpc3RNb2RlbCwgVmFsdWVNb2RlbENoYWluIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgRGVmZXJyZWQgfSBmcm9tICdAY29vbG9uL3BlY3Rpbi9saWIvcHJvbWlzZS9kZWZlcnJlZC5jbGFzcyc7XG5pbXBvcnQgeyBEaXNwb3NhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5cbmltcG9ydCB7IEFjdGl2aXR5IH0gZnJvbSAnLi4vLi4vYWN0aXZpdHknO1xuaW1wb3J0IHsgQWxlcnQgfSBmcm9tICcuLi8uLi9hbGVydCc7XG5pbXBvcnQgeyBDb25maXJtIH0gZnJvbSAnLi4vLi4vY29uZmlybSc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvbkNvbnRleHQgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbi1jb250ZXh0JztcbmltcG9ydCB7IEFjdGl2aXR5T3V0bGV0Q29udGV4dCB9IGZyb20gJy4uL2FjdGl2aXR5LW91dGxldC9hY3Rpdml0eS1vdXRsZXQtY29udGV4dCc7XG5pbXBvcnQgeyBBbGVydERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhbmd1bGFyLXVpLXBvd2VydXBzLWFjdGl2aXR5LWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudCBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIEludGVyYWN0aW9uQ29udGV4dCB7XG5cbiAgQElucHV0KClcbiAgcGFyZW50SW50ZXJhY3Rpb25Db250ZXh0OiBJbnRlcmFjdGlvbkNvbnRleHQ7XG5cbiAgQElucHV0KClcbiAgaW5pdGlhbEFjdGl2aXR5OiBBY3Rpdml0eU91dGxldENvbnRleHQ8YW55LCBhbnksIGFueT47XG5cbiAgQFZpZXdDaGlsZCgndGFicycsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHRhYnM6IE1hdFRhYkdyb3VwO1xuXG4gIHJlYWRvbmx5IGFjdGl2aXR5VGFicyA9IG5ldyBNdXRhYmxlTGlzdE1vZGVsPEFjdGl2aXR5T3V0bGV0Q29udGV4dDxhbnksIGFueSwgYW55Pj4oKTtcbiAgcHJpdmF0ZSBvYnNvbGV0ZVRhYnM6IEFjdGl2aXR5T3V0bGV0Q29udGV4dDxhbnksIGFueSwgYW55PltdID0gW107XG4gIHByaXZhdGUgbGFzdEFjdGl2aXR5VGFiOiBWYWx1ZU1vZGVsQ2hhaW48QWN0aXZpdHlPdXRsZXRDb250ZXh0PGFueSwgYW55LCBhbnk+PjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGNvbnN0IHsgY2hhaW4sIHZhbHVlT2YsIGJlZm9yZSwgd2hlbiwgYWZ0ZXIsIG9ic2VydmUsIHN3aXRjaE9uIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgdGhpcy5sYXN0QWN0aXZpdHlUYWIgPSBjaGFpbih0aGlzLmFjdGl2aXR5VGFicykubGFzdCgpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgeyBvYnNlcnZlIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgb2JzZXJ2ZS52YWx1ZXNGcm9tKHRoaXMudGFicy5hbmltYXRpb25Eb25lKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkFuaW1hdGlvbkZpbmlzaGVkKCkpO1xuICB9XG5cbiAgaW5pdGlhbGlzZTxELCBSLCBFPihvcHRpb25zOiBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudC5BY3Rpdml0eUNvbnRleHQ8RCwgUiwgRT4pIHtcbiAgICB0aGlzLmluaXRpYWxBY3Rpdml0eSA9IHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBpbnRlcmFjdGlvbkNvbnRleHQ6IHRoaXNcbiAgICB9O1xuICB9XG5cbiAgc3RhcnRBY3Rpdml0eTxELCBSLCBFPihhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhPzogRCk6IFByb21pc2U8Uj4ge1xuICAgIGNvbnN0IGRlZmVycmVkID0gRGVmZXJyZWQuZGVmZXI8Uj4oKTtcbiAgICBjb25zdCBjb250ZXh0ID0ge1xuICAgICAgaW50ZXJhY3Rpb25Db250ZXh0OiB0aGlzLFxuICAgICAgYWN0aXZpdHlDbGFzczogYWN0aXZpdHlUeXBlLFxuICAgICAgYWN0aXZpdHlEYXRhOiBkYXRhLFxuICAgICAgb25Eb25lOiBkZWZlcnJlZC5yZXNvbHZlLFxuICAgICAgb25DYW5jZWw6IGRlZmVycmVkLnJlamVjdFxuICAgIH07XG4gICAgdGhpcy5hY3Rpdml0eVRhYnMucHVzaChjb250ZXh0KTtcbiAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuYWN0aXZpdHlUYWJzLmxlbmd0aDtcbiAgICByZXR1cm4gZGVmZXJyZWQucHJvbWlzZS5maW5hbGx5KCgpID0+IHtcbiAgICAgIHRoaXMub2Jzb2xldGVUYWJzLnB1c2goY29udGV4dCk7XG4gICAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuYWN0aXZpdHlUYWJzLmxlbmd0aCAtIDE7XG4gICAgfSk7XG4gIH1cblxuICBhbGVydChhbGVydDogQWxlcnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdGFydEFjdGl2aXR5KEFsZXJ0RGlhbG9nQ29tcG9uZW50LCBhbGVydCk7XG4gIH1cblxuICBjb25maXJtKGNvbmZpcm06IENvbmZpcm0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGFydEFjdGl2aXR5KENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwgY29uZmlybSk7XG4gIH1cblxuICBwcml2YXRlIG9uQW5pbWF0aW9uRmluaXNoZWQoKSB7XG4gICAgLy8gVE9ETzogbm90aWZ5IHNlbGVjdGVkIHRhYiB0aGV5IGFyZSByZWFkeS4gIGFjdGl2dHkuYWZ0ZXJBbmltYXRpb25Db21wbGV0ZVxuICAgIHRoaXMuYWN0aXZpdHlUYWJzLnZhbHVlID0gdGhpcy5hY3Rpdml0eVRhYnMudmFsdWUuZmlsdGVyKHRhYiA9PiB7XG4gICAgICByZXR1cm4gIXRoaXMub2Jzb2xldGVUYWJzLmluY2x1ZGVzKHRhYik7XG4gICAgfSk7XG4gICAgaWYodGhpcy5sYXN0QWN0aXZpdHlUYWIudmFsdWUgJiYgdGhpcy5sYXN0QWN0aXZpdHlUYWIudmFsdWVbJ29uQWN0aXZpdHlSZWFkeSddKSB7XG4gICAgICB0aGlzLmxhc3RBY3Rpdml0eVRhYi52YWx1ZVsnb25BY3Rpdml0eVJlYWR5J10oKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudCB7XG5cbiAgZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eUNvbnRleHQ8RCwgUiwgRT4ge1xuICAgIGFjdGl2aXR5Q2xhc3M6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LFxuICAgIGFjdGl2aXR5RGF0YTogRCxcbiAgICBvbkRvbmU6IChyZXN1bHQ6IFIpID0+IHZvaWQsXG4gICAgb25DYW5jZWw6IChlcnJvcjogRSkgPT4gdm9pZCxcbiAgfVxufVxuIl19
@@ -5,7 +5,7 @@ import { MatDialog, MatButtonModule, MatDialogModule, MatTabsModule, MatProgress
5
5
  import { BrowserModule } from '@angular/platform-browser';
6
6
  import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
7
7
  import { __decorate, __metadata, __awaiter } from 'tslib';
8
- import { GarbageCollector, DelegatingFormValueModel, UseDelegate, ValueModel, assert, UnaryCommand, lang, Dsl, Logger, ListModel, StoreInListModel, EventListenerList, DelegatingValueModel, MutableListModel, StoreInValueModel, Trace, MutableValueModel, TransactionObserver, Binding, OptionsHelper, ValueHolder } from '@coolon/pectin';
8
+ import { GarbageCollector, DelegatingFormValueModel, UseDelegate, ValueModel, assert, UnaryCommand, lang, Dsl, Logger, ListModel, StoreInListModel, EventListenerList, DelegatingValueModel, Trace, MutableListModel, StoreInValueModel, MutableValueModel, TransactionObserver, Binding, OptionsHelper, ValueHolder } from '@coolon/pectin';
9
9
  import { PortalModule } from '@angular/cdk/portal';
10
10
  import { Deferred } from '@coolon/pectin/lib/promise/deferred.class';
11
11
  import { assert as assert$1, Klass, Opts } from '@coolon/typescript-utilities';
@@ -744,6 +744,11 @@ class AbstractActivity extends DisposableComponent {
744
744
  */
745
745
  () => this.finalizeAndDispose()));
746
746
  }
747
+ /**
748
+ * @return {?}
749
+ */
750
+ onActivityReady() {
751
+ }
747
752
  /**
748
753
  * @private
749
754
  * @return {?}
@@ -787,6 +792,12 @@ class AbstractActivity extends DisposableComponent {
787
792
  return this._busyModel.value;
788
793
  }
789
794
  }
795
+ __decorate([
796
+ Trace(),
797
+ __metadata("design:type", Function),
798
+ __metadata("design:paramtypes", []),
799
+ __metadata("design:returntype", void 0)
800
+ ], AbstractActivity.prototype, "onActivityReady", null);
790
801
  if (false) {
791
802
  /**
792
803
  * @type {?}
@@ -921,6 +932,8 @@ class ActivityContainerComponent extends DisposableComponent {
921
932
  super();
922
933
  this.activityTabs = new MutableListModel();
923
934
  this.obsoleteTabs = [];
935
+ const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
936
+ this.lastActivityTab = chain(this.activityTabs).last();
924
937
  }
925
938
  /**
926
939
  * @return {?}
@@ -935,7 +948,7 @@ class ActivityContainerComponent extends DisposableComponent {
935
948
  observe.valuesFrom(this.tabs.animationDone).subscribe((/**
936
949
  * @return {?}
937
950
  */
938
- () => this.cleanUpTabs()));
951
+ () => this.onAnimationFinished()));
939
952
  }
940
953
  /**
941
954
  * @template D, R, E
@@ -990,7 +1003,8 @@ class ActivityContainerComponent extends DisposableComponent {
990
1003
  * @private
991
1004
  * @return {?}
992
1005
  */
993
- cleanUpTabs() {
1006
+ onAnimationFinished() {
1007
+ // TODO: notify selected tab they are ready. activty.afterAnimationComplete
994
1008
  this.activityTabs.value = this.activityTabs.value.filter((/**
995
1009
  * @param {?} tab
996
1010
  * @return {?}
@@ -998,6 +1012,9 @@ class ActivityContainerComponent extends DisposableComponent {
998
1012
  tab => {
999
1013
  return !this.obsoleteTabs.includes(tab);
1000
1014
  }));
1015
+ if (this.lastActivityTab.value && this.lastActivityTab.value['onActivityReady']) {
1016
+ this.lastActivityTab.value['onActivityReady']();
1017
+ }
1001
1018
  }
1002
1019
  }
1003
1020
  ActivityContainerComponent.decorators = [
@@ -1028,6 +1045,11 @@ if (false) {
1028
1045
  * @private
1029
1046
  */
1030
1047
  ActivityContainerComponent.prototype.obsoleteTabs;
1048
+ /**
1049
+ * @type {?}
1050
+ * @private
1051
+ */
1052
+ ActivityContainerComponent.prototype.lastActivityTab;
1031
1053
  }
1032
1054
  (function (ActivityContainerComponent) {
1033
1055
  /**