@micropermit/client-angular 0.4.4-alpha → 0.4.4-alpha2

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.
@@ -38,8 +38,6 @@ export class LinkFieldDirective {
38
38
  */
39
39
  set linkFieldFrom(from) {
40
40
  this._from = from;
41
- this.clear();
42
- this.load();
43
41
  }
44
42
  /**
45
43
  * @param {?} loadingTemplate
@@ -119,11 +117,6 @@ export class LinkFieldDirective {
119
117
  */
120
118
  ngDoCheck() {
121
119
  this.updateIfDirty();
122
- if (this._from) {
123
- if (this._from instanceof LinkField && this.lastObs !== this._from.listenObs()) {
124
- this.load();
125
- }
126
- }
127
120
  }
128
121
  /**
129
122
  * @return {?}
@@ -140,6 +133,10 @@ export class LinkFieldDirective {
140
133
  if (!(this._from instanceof LinkField)) {
141
134
  this._from = LinkField.from((/** @type {?} */ (this._from)));
142
135
  }
136
+ if (changes.linkFieldFrom.previousValue !== changes.linkFieldFrom.currentValue) {
137
+ this.clear();
138
+ this.load();
139
+ }
143
140
  }
144
141
  if (changes.linkFieldParams && this.linkFieldParams) {
145
142
  /** @type {?} */
@@ -362,4 +359,4 @@ if (false) {
362
359
  /** @type {?} */
363
360
  LinkFieldContext.prototype.$implicit;
364
361
  }
365
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2ZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBR2IsaUJBQWlCLEVBQy9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUc3QyxPQUFPLEVBQUMsb0NBQW9DLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFNeEMsTUFBTSxPQUFPLGtCQUFrQjs7Ozs7OztJQWlCM0IsWUFDWSxjQUFnQyxFQUNoQyxTQUEyQyxFQUMzQyxpQkFBMkMsRUFDM0MsaUJBQW9DO1FBSHBDLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFrQztRQUMzQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO1FBQzNDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFkeEMsWUFBTyxHQUFHLElBQUksQ0FBQztRQUNmLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsaUJBQVksR0FBTSxJQUFJLENBQUM7UUFDdkIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdsQixpQkFBWSxHQUFpQixJQUFJLENBQUM7UUE2QzFDLGtDQUE2QixHQUFHLEtBQUssQ0FBQztRQU10QyxvQkFBZSxHQUFXLElBQUksQ0FBQztRQXpDM0IsSUFBSSxDQUFDLHdCQUF3QixHQUFHLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDLG9DQUFv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NEM7O0lBMEM1QywyREFDc0M7O0lBRXRDLGtEQUNrQzs7SUFFbEMsNkNBQytCOzs7OztJQTlDM0IsNENBQXdDOzs7OztJQUN4Qyx1Q0FBbUQ7Ozs7O0lBQ25ELCtDQUFtRDs7Ozs7SUFDbkQsK0NBQTRDOzs7OztBQTRLcEQsTUFBTSxPQUFPLGdCQUFnQjs7OztJQUV6QixZQUFtQixTQUFZO1FBQVosY0FBUyxHQUFULFNBQVMsQ0FBRztJQUMvQixDQUFDO0NBQ0o7OztJQUZlLHFDQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIElucHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIENvbXBvbmVudEZhY3RvcnksXG4gICAgRG9DaGVjayxcbiAgICBPbkRlc3Ryb3ksIENoYW5nZURldGVjdG9yUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMaW5rRmllbGR9IGZyb20gJy4uL2xpbmtzL2xpbmtmaWVsZCc7XG5pbXBvcnQge01pY3JvT2JqZWN0fSBmcm9tICcuLi9taWNyb29iamVjdCc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge01pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9sb2FkaW5naW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge01pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnR9IGZyb20gJy4uL2NvbXBvbmVudHMvZXJyb3JpbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7ZmluYWxpemV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TWljcm9DbGllbnRMb2FkRXJyb3J9IGZyb20gJy4uL21pY3JvY2xpZW50LnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tsaW5rRmllbGRdW2xpbmtGaWVsZEZyb21dJ1xufSlcbmV4cG9ydCBjbGFzcyBMaW5rRmllbGREaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBEb0NoZWNrLCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gICAgcHJpdmF0ZSBfZnJvbTogTGlua0ZpZWxkPFQ+IHwgVDtcbiAgICBwcml2YXRlIF9sb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcHJpdmF0ZSBfZXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwcml2YXRlIF9kZWZhdWx0TG9hZGluZ0NvbXBvbmVudDogQ29tcG9uZW50RmFjdG9yeTxNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQ+O1xuICAgIHByaXZhdGUgX2RlZmF1bHRFcnJvckNvbXBvbmVudDogQ29tcG9uZW50RmFjdG9yeTxNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50PjtcblxuICAgIHByaXZhdGUgaXNEaXJ0eSA9IHRydWU7XG4gICAgcHJpdmF0ZSBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgICBwcml2YXRlIGxvYWRlZFJlc3VsdDogVCA9IG51bGw7XG4gICAgcHJpdmF0ZSBoYXNSZXN1bHQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgbGFzdE9iczogT2JzZXJ2YWJsZTxUPjtcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uID0gbnVsbDtcblxuICAgIHByaXZhdGUgY3VycmVudENvbnRleHQ6IExpbmtGaWVsZENvbnRleHQ8VD47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBfdGVtcGxhdGU6IFRlbXBsYXRlUmVmPExpbmtGaWVsZENvbnRleHQ8VD4+LFxuICAgICAgICBwcml2YXRlIGNvbXBvbmVudFJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX2RlZmF1bHRMb2FkaW5nQ29tcG9uZW50ID0gY29tcG9uZW50UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoTWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50KTtcbiAgICAgICAgdGhpcy5fZGVmYXVsdEVycm9yQ29tcG9uZW50ID0gY29tcG9uZW50UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoTWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgbGlua0ZpZWxkRnJvbShmcm9tOiBMaW5rRmllbGQ8VD4gfCBUKSB7XG4gICAgICAgIHRoaXMuX2Zyb20gPSBmcm9tO1xuICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgIHRoaXMubG9hZCgpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGxpbmtGaWVsZExvYWRpbmdUZW1wbGF0ZShsb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgaWYgKGxvYWRpbmdUZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fbG9hZGluZ1RlbXBsYXRlID0gbG9hZGluZ1RlbXBsYXRlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlSWZEaXJ0eSh0cnVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBsaW5rRmllbGRFcnJvclRlbXBsYXRlKGVycm9yVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgaWYgKGVycm9yVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yVGVtcGxhdGUgPSBlcnJvclRlbXBsYXRlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlSWZEaXJ0eSh0cnVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBsaW5rRmllbGRUZW1wbGF0ZSh2YWx1ZTogVGVtcGxhdGVSZWY8TGlua0ZpZWxkQ29udGV4dDxUPj4pIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBsaW5rRmllbGREZWZhdWx0RXJyb3JIYW5kbGluZyA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBsaW5rRmllbGRWYWx1ZUNoYW5nZTogKFQpID0+IHZvaWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIGxpbmtGaWVsZFBhcmFtczogb2JqZWN0ID0gbnVsbDtcblxuXG4gICAgcHJpdmF0ZSBsb2FkKCkge1xuICAgICAgICBpZiAodGhpcy5fZnJvbSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2Zyb20gaW5zdGFuY2VvZiBMaW5rRmllbGQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5sYXN0T2JzID0gdGhpcy5fZnJvbS5saXN0ZW5PYnMoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmxhc3RPYnMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApLnN1YnNjcmliZSgobG9hZGVkUmVzdWx0OiBUKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGVkUmVzdWx0KGxvYWRlZFJlc3VsdCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmxpbmtGaWVsZFZhbHVlQ2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxpbmtGaWVsZFZhbHVlQ2hhbmdlKGxvYWRlZFJlc3VsdCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LCAobG9hZEVycm9yOiBNaWNyb0NsaWVudExvYWRFcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMubGlua0ZpZWxkRGVmYXVsdEVycm9ySGFuZGxpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRFcnJvci5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RXJyb3IobG9hZEVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkZWRSZXN1bHQodGhpcy5fZnJvbSk7XG4gICAgICAgICAgICAgICAgLy8gdGhpcy5zZXRMb2FkZWRSZXN1bHQodGhpcy5fZnJvbSk7XG4gICAgICAgICAgICAgICAgLy8gdGhyb3cgbmV3IEVycm9yKCdDYW5cXCd0IHVzZSB0aGUgbGlua0ZpZWxkIGRpcmVjdGl2ZSB3aXRoIGEgZnJvbSB2YWx1ZSB3aGljaCBpc25cXCd0IGFuIGluc3RhbmNlIG9mIExpbmtGaWVsZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBuZ0RvQ2hlY2soKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSWZEaXJ0eSgpO1xuICAgICAgICBpZiAodGhpcy5fZnJvbSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2Zyb20gaW5zdGFuY2VvZiBMaW5rRmllbGQgJiYgdGhpcy5sYXN0T2JzICE9PSB0aGlzLl9mcm9tLmxpc3Rlbk9icygpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMubGlua0ZpZWxkRnJvbSkge1xuICAgICAgICAgICAgaWYgKCEodGhpcy5fZnJvbSBpbnN0YW5jZW9mIExpbmtGaWVsZCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9mcm9tID0gTGlua0ZpZWxkLmZyb20odGhpcy5fZnJvbSBhcyBhbnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNoYW5nZXMubGlua0ZpZWxkUGFyYW1zICYmIHRoaXMubGlua0ZpZWxkUGFyYW1zKSB7XG4gICAgICAgICAgICBsZXQgbGluayA9IHRoaXMuX2Zyb20gYXMgTGlua0ZpZWxkPFQ+O1xuICAgICAgICAgICAgdGhpcy5fZnJvbSA9IGxpbmsud2l0aENhbGxQYXJhbXModGhpcy5saW5rRmllbGRQYXJhbXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRFcnJvcihlcnJvcjogTWljcm9DbGllbnRMb2FkRXJyb3IpIHtcbiAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5yZW1vdmUoKTtcbiAgICAgICAgaWYgKHRoaXMuX2Vycm9yVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX2Vycm9yVGVtcGxhdGUsIHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGVycm9yXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBlcnJvckNvbXBvbmVudEluc3RhbmNlID0gdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQodGhpcy5fZGVmYXVsdEVycm9yQ29tcG9uZW50KTtcbiAgICAgICAgICAgIGVycm9yQ29tcG9uZW50SW5zdGFuY2UuaW5zdGFuY2VbJ2Vycm9yJ10gPSBlcnJvcjtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBsb2FkaW5nO1xuICAgICAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9sb2FkaW5nVGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX2xvYWRpbmdUZW1wbGF0ZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQodGhpcy5fZGVmYXVsdExvYWRpbmdDb21wb25lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkZWRSZXN1bHQocmVzdWx0OiBUKSB7XG4gICAgICAgIHRoaXMuaGFzUmVzdWx0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5sb2FkZWRSZXN1bHQgPSByZXN1bHQ7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRDb250ZXh0ID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudENvbnRleHQgPSBuZXcgTGlua0ZpZWxkQ29udGV4dDxUPihyZXN1bHQpO1xuICAgICAgICAgICAgdGhpcy5pc0RpcnR5ID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudENvbnRleHQuJGltcGxpY2l0ID0gcmVzdWx0O1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuX3ZpZXdDb250YWluZXIgfHwgIXRoaXMuX3RlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLmlzRGlydHkgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNEaXJ0eSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fdGVtcGxhdGUsIHRoaXMuY3VycmVudENvbnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVJZkRpcnR5KGlnbm9yZURpcnR5OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKCh0aGlzLmlzRGlydHkgfHwgaWdub3JlRGlydHkpICYmIHRoaXMuX2xvYWRpbmdUZW1wbGF0ZSAmJiB0aGlzLl9mcm9tICYmIHRoaXMuX3RlbXBsYXRlICYmIHRoaXMuX3ZpZXdDb250YWluZXIpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhhc1Jlc3VsdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGVkUmVzdWx0KHRoaXMubG9hZGVkUmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5oYXNSZXN1bHQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZWRSZXN1bHQgPSBudWxsO1xuICAgICAgICB0aGlzLmlzRGlydHkgPSBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubGFzdE9icyA9IG51bGw7XG4gICAgICAgIHRoaXMuY3VycmVudENvbnRleHQgPSBudWxsO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExpbmtGaWVsZENvbnRleHQ8VD4ge1xuXG4gICAgY29uc3RydWN0b3IocHVibGljICRpbXBsaWNpdDogVCkge1xuICAgIH1cbn1cbiJdfQ==
362
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2ZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBR2IsaUJBQWlCLEVBQy9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUc3QyxPQUFPLEVBQUMsb0NBQW9DLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFNeEMsTUFBTSxPQUFPLGtCQUFrQjs7Ozs7OztJQWlCM0IsWUFDWSxjQUFnQyxFQUNoQyxTQUEyQyxFQUMzQyxpQkFBMkMsRUFDM0MsaUJBQW9DO1FBSHBDLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFrQztRQUMzQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO1FBQzNDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFkeEMsWUFBTyxHQUFHLElBQUksQ0FBQztRQUNmLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsaUJBQVksR0FBTSxJQUFJLENBQUM7UUFDdkIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdsQixpQkFBWSxHQUFpQixJQUFJLENBQUM7UUEyQzFDLGtDQUE2QixHQUFHLEtBQUssQ0FBQztRQU10QyxvQkFBZSxHQUFXLElBQUksQ0FBQztRQXZDM0IsSUFBSSxDQUFDLHdCQUF3QixHQUFHLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDLG9DQUFv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LCtDQUFtRDs7Ozs7SUFDbkQsK0NBQTRDOzs7OztBQXlLcEQsTUFBTSxPQUFPLGdCQUFnQjs7OztJQUV6QixZQUFtQixTQUFZO1FBQVosY0FBUyxHQUFULFNBQVMsQ0FBRztJQUMvQixDQUFDO0NBQ0o7OztJQUZlLHFDQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIElucHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIENvbXBvbmVudEZhY3RvcnksXG4gICAgRG9DaGVjayxcbiAgICBPbkRlc3Ryb3ksIENoYW5nZURldGVjdG9yUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMaW5rRmllbGR9IGZyb20gJy4uL2xpbmtzL2xpbmtmaWVsZCc7XG5pbXBvcnQge01pY3JvT2JqZWN0fSBmcm9tICcuLi9taWNyb29iamVjdCc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge01pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9sb2FkaW5naW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge01pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnR9IGZyb20gJy4uL2NvbXBvbmVudHMvZXJyb3JpbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7ZmluYWxpemV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TWljcm9DbGllbnRMb2FkRXJyb3J9IGZyb20gJy4uL21pY3JvY2xpZW50LnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tsaW5rRmllbGRdW2xpbmtGaWVsZEZyb21dJ1xufSlcbmV4cG9ydCBjbGFzcyBMaW5rRmllbGREaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBEb0NoZWNrLCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gICAgcHJpdmF0ZSBfZnJvbTogTGlua0ZpZWxkPFQ+IHwgVDtcbiAgICBwcml2YXRlIF9sb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcHJpdmF0ZSBfZXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwcml2YXRlIF9kZWZhdWx0TG9hZGluZ0NvbXBvbmVudDogQ29tcG9uZW50RmFjdG9yeTxNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQ+O1xuICAgIHByaXZhdGUgX2RlZmF1bHRFcnJvckNvbXBvbmVudDogQ29tcG9uZW50RmFjdG9yeTxNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50PjtcblxuICAgIHByaXZhdGUgaXNEaXJ0eSA9IHRydWU7XG4gICAgcHJpdmF0ZSBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgICBwcml2YXRlIGxvYWRlZFJlc3VsdDogVCA9IG51bGw7XG4gICAgcHJpdmF0ZSBoYXNSZXN1bHQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgbGFzdE9iczogT2JzZXJ2YWJsZTxUPjtcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uID0gbnVsbDtcblxuICAgIHByaXZhdGUgY3VycmVudENvbnRleHQ6IExpbmtGaWVsZENvbnRleHQ8VD47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBfdGVtcGxhdGU6IFRlbXBsYXRlUmVmPExpbmtGaWVsZENvbnRleHQ8VD4+LFxuICAgICAgICBwcml2YXRlIGNvbXBvbmVudFJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX2RlZmF1bHRMb2FkaW5nQ29tcG9uZW50ID0gY29tcG9uZW50UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoTWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50KTtcbiAgICAgICAgdGhpcy5fZGVmYXVsdEVycm9yQ29tcG9uZW50ID0gY29tcG9uZW50UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoTWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgbGlua0ZpZWxkRnJvbShmcm9tOiBMaW5rRmllbGQ8VD4gfCBUKSB7XG4gICAgICAgIHRoaXMuX2Zyb20gPSBmcm9tO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGxpbmtGaWVsZExvYWRpbmdUZW1wbGF0ZShsb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgaWYgKGxvYWRpbmdUZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fbG9hZGluZ1RlbXBsYXRlID0gbG9hZGluZ1RlbXBsYXRlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlSWZEaXJ0eSh0cnVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBsaW5rRmllbGRFcnJvclRlbXBsYXRlKGVycm9yVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgaWYgKGVycm9yVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yVGVtcGxhdGUgPSBlcnJvclRlbXBsYXRlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlSWZEaXJ0eSh0cnVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBsaW5rRmllbGRUZW1wbGF0ZSh2YWx1ZTogVGVtcGxhdGVSZWY8TGlua0ZpZWxkQ29udGV4dDxUPj4pIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBsaW5rRmllbGREZWZhdWx0RXJyb3JIYW5kbGluZyA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBsaW5rRmllbGRWYWx1ZUNoYW5nZTogKFQpID0+IHZvaWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIGxpbmtGaWVsZFBhcmFtczogb2JqZWN0ID0gbnVsbDtcblxuXG4gICAgcHJpdmF0ZSBsb2FkKCkge1xuICAgICAgICBpZiAodGhpcy5fZnJvbSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2Zyb20gaW5zdGFuY2VvZiBMaW5rRmllbGQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5sYXN0T2JzID0gdGhpcy5fZnJvbS5saXN0ZW5PYnMoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmxhc3RPYnMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApLnN1YnNjcmliZSgobG9hZGVkUmVzdWx0OiBUKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGVkUmVzdWx0KGxvYWRlZFJlc3VsdCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmxpbmtGaWVsZFZhbHVlQ2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxpbmtGaWVsZFZhbHVlQ2hhbmdlKGxvYWRlZFJlc3VsdCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LCAobG9hZEVycm9yOiBNaWNyb0NsaWVudExvYWRFcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMubGlua0ZpZWxkRGVmYXVsdEVycm9ySGFuZGxpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRFcnJvci5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RXJyb3IobG9hZEVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkZWRSZXN1bHQodGhpcy5fZnJvbSk7XG4gICAgICAgICAgICAgICAgLy8gdGhpcy5zZXRMb2FkZWRSZXN1bHQodGhpcy5fZnJvbSk7XG4gICAgICAgICAgICAgICAgLy8gdGhyb3cgbmV3IEVycm9yKCdDYW5cXCd0IHVzZSB0aGUgbGlua0ZpZWxkIGRpcmVjdGl2ZSB3aXRoIGEgZnJvbSB2YWx1ZSB3aGljaCBpc25cXCd0IGFuIGluc3RhbmNlIG9mIExpbmtGaWVsZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBuZ0RvQ2hlY2soKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSWZEaXJ0eSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5saW5rRmllbGRGcm9tKSB7XG4gICAgICAgICAgICBpZiAoISh0aGlzLl9mcm9tIGluc3RhbmNlb2YgTGlua0ZpZWxkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Zyb20gPSBMaW5rRmllbGQuZnJvbSh0aGlzLl9mcm9tIGFzIGFueSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZihjaGFuZ2VzLmxpbmtGaWVsZEZyb20ucHJldmlvdXNWYWx1ZSAhPT0gY2hhbmdlcy5saW5rRmllbGRGcm9tLmN1cnJlbnRWYWx1ZSl7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNoYW5nZXMubGlua0ZpZWxkUGFyYW1zICYmIHRoaXMubGlua0ZpZWxkUGFyYW1zKSB7XG4gICAgICAgICAgICBsZXQgbGluayA9IHRoaXMuX2Zyb20gYXMgTGlua0ZpZWxkPFQ+O1xuICAgICAgICAgICAgdGhpcy5fZnJvbSA9IGxpbmsud2l0aENhbGxQYXJhbXModGhpcy5saW5rRmllbGRQYXJhbXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRFcnJvcihlcnJvcjogTWljcm9DbGllbnRMb2FkRXJyb3IpIHtcbiAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5yZW1vdmUoKTtcbiAgICAgICAgaWYgKHRoaXMuX2Vycm9yVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX2Vycm9yVGVtcGxhdGUsIHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGVycm9yXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBlcnJvckNvbXBvbmVudEluc3RhbmNlID0gdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQodGhpcy5fZGVmYXVsdEVycm9yQ29tcG9uZW50KTtcbiAgICAgICAgICAgIGVycm9yQ29tcG9uZW50SW5zdGFuY2UuaW5zdGFuY2VbJ2Vycm9yJ10gPSBlcnJvcjtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBsb2FkaW5nO1xuICAgICAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9sb2FkaW5nVGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX2xvYWRpbmdUZW1wbGF0ZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQodGhpcy5fZGVmYXVsdExvYWRpbmdDb21wb25lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkZWRSZXN1bHQocmVzdWx0OiBUKSB7XG4gICAgICAgIHRoaXMuaGFzUmVzdWx0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5sb2FkZWRSZXN1bHQgPSByZXN1bHQ7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRDb250ZXh0ID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudENvbnRleHQgPSBuZXcgTGlua0ZpZWxkQ29udGV4dDxUPihyZXN1bHQpO1xuICAgICAgICAgICAgdGhpcy5pc0RpcnR5ID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudENvbnRleHQuJGltcGxpY2l0ID0gcmVzdWx0O1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuX3ZpZXdDb250YWluZXIgfHwgIXRoaXMuX3RlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLmlzRGlydHkgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNEaXJ0eSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fdGVtcGxhdGUsIHRoaXMuY3VycmVudENvbnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVJZkRpcnR5KGlnbm9yZURpcnR5OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKCh0aGlzLmlzRGlydHkgfHwgaWdub3JlRGlydHkpICYmIHRoaXMuX2xvYWRpbmdUZW1wbGF0ZSAmJiB0aGlzLl9mcm9tICYmIHRoaXMuX3RlbXBsYXRlICYmIHRoaXMuX3ZpZXdDb250YWluZXIpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhhc1Jlc3VsdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGVkUmVzdWx0KHRoaXMubG9hZGVkUmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5oYXNSZXN1bHQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZWRSZXN1bHQgPSBudWxsO1xuICAgICAgICB0aGlzLmlzRGlydHkgPSBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubGFzdE9icyA9IG51bGw7XG4gICAgICAgIHRoaXMuY3VycmVudENvbnRleHQgPSBudWxsO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExpbmtGaWVsZENvbnRleHQ8VD4ge1xuXG4gICAgY29uc3RydWN0b3IocHVibGljICRpbXBsaWNpdDogVCkge1xuICAgIH1cbn1cbiJdfQ==
@@ -33,8 +33,6 @@ var LinkFieldDirective = /** @class */ (function () {
33
33
  */
34
34
  function (from) {
35
35
  this._from = from;
36
- this.clear();
37
- this.load();
38
36
  },
39
37
  enumerable: true,
40
38
  configurable: true
@@ -137,11 +135,6 @@ var LinkFieldDirective = /** @class */ (function () {
137
135
  */
138
136
  function () {
139
137
  this.updateIfDirty();
140
- if (this._from) {
141
- if (this._from instanceof LinkField && this.lastObs !== this._from.listenObs()) {
142
- this.load();
143
- }
144
- }
145
138
  };
146
139
  /**
147
140
  * @return {?}
@@ -165,6 +158,10 @@ var LinkFieldDirective = /** @class */ (function () {
165
158
  if (!(this._from instanceof LinkField)) {
166
159
  this._from = LinkField.from((/** @type {?} */ (this._from)));
167
160
  }
161
+ if (changes.linkFieldFrom.previousValue !== changes.linkFieldFrom.currentValue) {
162
+ this.clear();
163
+ this.load();
164
+ }
168
165
  }
169
166
  if (changes.linkFieldParams && this.linkFieldParams) {
170
167
  /** @type {?} */
@@ -419,4 +416,4 @@ if (false) {
419
416
  /** @type {?} */
420
417
  LinkFieldContext.prototype.$implicit;
421
418
  }
422
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2ZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBR2IsaUJBQWlCLEVBQy9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUc3QyxPQUFPLEVBQUMsb0NBQW9DLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHeEM7SUFvQkksNEJBQ1ksY0FBZ0MsRUFDaEMsU0FBMkMsRUFDM0MsaUJBQTJDLEVBQzNDLGlCQUFvQztRQUhwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBa0I7UUFDaEMsY0FBUyxHQUFULFNBQVMsQ0FBa0M7UUFDM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtRQUMzQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBZHhDLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDZixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQU0sSUFBSSxDQUFDO1FBQ3ZCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFHbEIsaUJBQVksR0FBaUIsSUFBSSxDQUFDO1FBNkMxQyxrQ0FBNkIsR0FBRyxLQUFLLENBQUM7UUFNdEMsb0JBQWUsR0FBVyxJQUFJLENBQUM7UUF6QzNCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ2hILElBQUks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O0lBQ2hDLDhDQUEyQzs7Ozs7SUFDM0MsNENBQXlDOzs7OztJQUN6QyxzREFBeUY7Ozs7O0lBQ3pGLG9EQUFxRjs7Ozs7SUFFckYscUNBQXVCOzs7OztJQUN2Qix1Q0FBMEI7Ozs7O0lBQzFCLDBDQUErQjs7Ozs7SUFDL0IsdUNBQTBCOzs7OztJQUUxQixxQ0FBK0I7Ozs7O0lBQy9CLDBDQUEwQzs7Ozs7SUFFMUMsNENBQTRDOztJQTBDNUMsMkRBQ3NDOztJQUV0QyxrREFDa0M7O0lBRWxDLDZDQUMrQjs7Ozs7SUE5QzNCLDRDQUF3Qzs7Ozs7SUFDeEMsdUNBQW1EOzs7OztJQUNuRCwrQ0FBbUQ7Ozs7O0lBQ25ELCtDQUE0Qzs7Ozs7QUE0S3BEOzs7O0lBRUksMEJBQW1CLFNBQVk7UUFBWixjQUFTLEdBQVQsU0FBUyxDQUFHO0lBQy9CLENBQUM7SUFDTCx1QkFBQztBQUFELENBQUMsQUFKRCxJQUlDOzs7Ozs7O0lBRmUscUNBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgSW5wdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgQ29tcG9uZW50RmFjdG9yeSxcbiAgICBEb0NoZWNrLFxuICAgIE9uRGVzdHJveSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xpbmtGaWVsZH0gZnJvbSAnLi4vbGlua3MvbGlua2ZpZWxkJztcbmltcG9ydCB7TWljcm9PYmplY3R9IGZyb20gJy4uL21pY3Jvb2JqZWN0JztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7TWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL2xvYWRpbmdpbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7TWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9lcnJvcmluZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtmaW5hbGl6ZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtNaWNyb0NsaWVudExvYWRFcnJvcn0gZnJvbSAnLi4vbWljcm9jbGllbnQuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2xpbmtGaWVsZF1bbGlua0ZpZWxkRnJvbV0nXG59KVxuZXhwb3J0IGNsYXNzIExpbmtGaWVsZERpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIERvQ2hlY2ssIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIF9mcm9tOiBMaW5rRmllbGQ8VD4gfCBUO1xuICAgIHByaXZhdGUgX2xvYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwcml2YXRlIF9lcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIHByaXZhdGUgX2RlZmF1bHRMb2FkaW5nQ29tcG9uZW50OiBDb21wb25lbnRGYWN0b3J5PE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudD47XG4gICAgcHJpdmF0ZSBfZGVmYXVsdEVycm9yQ29tcG9uZW50OiBDb21wb25lbnRGYWN0b3J5PE1pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnQ+O1xuXG4gICAgcHJpdmF0ZSBpc0RpcnR5ID0gdHJ1ZTtcbiAgICBwcml2YXRlIGlzTG9hZGluZyA9IGZhbHNlO1xuICAgIHByaXZhdGUgbG9hZGVkUmVzdWx0OiBUID0gbnVsbDtcbiAgICBwcml2YXRlIGhhc1Jlc3VsdCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBsYXN0T2JzOiBPYnNlcnZhYmxlPFQ+O1xuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBudWxsO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50Q29udGV4dDogTGlua0ZpZWxkQ29udGV4dDxUPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIF90ZW1wbGF0ZTogVGVtcGxhdGVSZWY8TGlua0ZpZWxkQ29udGV4dDxUPj4sXG4gICAgICAgIHByaXZhdGUgY29tcG9uZW50UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgdGhpcy5fZGVmYXVsdExvYWRpbmdDb21wb25lbnQgPSBjb21wb25lbnRSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQpO1xuICAgICAgICB0aGlzLl9kZWZhdWx0RXJyb3JDb21wb25lbnQgPSBjb21wb25lbnRSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBsaW5rRmllbGRGcm9tKGZyb206IExpbmtGaWVsZDxUPiB8IFQpIHtcbiAgICAgICAgdGhpcy5fZnJvbSA9IGZyb207XG4gICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgbGlua0ZpZWxkTG9hZGluZ1RlbXBsYXRlKGxvYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgICAgICBpZiAobG9hZGluZ1RlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLl9sb2FkaW5nVGVtcGxhdGUgPSBsb2FkaW5nVGVtcGxhdGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVJZkRpcnR5KHRydWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGxpbmtGaWVsZEVycm9yVGVtcGxhdGUoZXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgICAgICBpZiAoZXJyb3JUZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fZXJyb3JUZW1wbGF0ZSA9IGVycm9yVGVtcGxhdGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVJZkRpcnR5KHRydWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGxpbmtGaWVsZFRlbXBsYXRlKHZhbHVlOiBUZW1wbGF0ZVJlZjxMaW5rRmllbGRDb250ZXh0PFQ+Pikge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3RlbXBsYXRlID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGxpbmtGaWVsZERlZmF1bHRFcnJvckhhbmRsaW5nID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGxpbmtGaWVsZFZhbHVlQ2hhbmdlOiAoVCkgPT4gdm9pZDtcblxuICAgIEBJbnB1dCgpXG4gICAgbGlua0ZpZWxkUGFyYW1zOiBvYmplY3QgPSBudWxsO1xuXG5cbiAgICBwcml2YXRlIGxvYWQoKSB7XG4gICAgICAgIGlmICh0aGlzLl9mcm9tKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZnJvbSBpbnN0YW5jZW9mIExpbmtGaWVsZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxhc3RPYnMgPSB0aGlzLl9mcm9tLmxpc3Rlbk9icygpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMubGFzdE9icy5waXBlKFxuICAgICAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICkuc3Vic2NyaWJlKChsb2FkZWRSZXN1bHQ6IFQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkZWRSZXN1bHQobG9hZGVkUmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubGlua0ZpZWxkVmFsdWVDaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGlua0ZpZWxkVmFsdWVDaGFuZ2UobG9hZGVkUmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIChsb2FkRXJyb3I6IE1pY3JvQ2xpZW50TG9hZEVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5saW5rRmllbGREZWZhdWx0RXJyb3JIYW5kbGluZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZEVycm9yLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRFcnJvcihsb2FkRXJyb3IpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRlZFJlc3VsdCh0aGlzLl9mcm9tKTtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnNldExvYWRlZFJlc3VsdCh0aGlzLl9mcm9tKTtcbiAgICAgICAgICAgICAgICAvLyB0aHJvdyBuZXcgRXJyb3IoJ0NhblxcJ3QgdXNlIHRoZSBsaW5rRmllbGQgZGlyZWN0aXZlIHdpdGggYSBmcm9tIHZhbHVlIHdoaWNoIGlzblxcJ3QgYW4gaW5zdGFuY2Ugb2YgTGlua0ZpZWxkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIG5nRG9DaGVjaygpIHtcbiAgICAgICAgdGhpcy51cGRhdGVJZkRpcnR5KCk7XG4gICAgICAgIGlmICh0aGlzLl9mcm9tKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZnJvbSBpbnN0YW5jZW9mIExpbmtGaWVsZCAmJiB0aGlzLmxhc3RPYnMgIT09IHRoaXMuX2Zyb20ubGlzdGVuT2JzKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5saW5rRmllbGRGcm9tKSB7XG4gICAgICAgICAgICBpZiAoISh0aGlzLl9mcm9tIGluc3RhbmNlb2YgTGlua0ZpZWxkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Zyb20gPSBMaW5rRmllbGQuZnJvbSh0aGlzLl9mcm9tIGFzIGFueSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2hhbmdlcy5saW5rRmllbGRQYXJhbXMgJiYgdGhpcy5saW5rRmllbGRQYXJhbXMpIHtcbiAgICAgICAgICAgIGxldCBsaW5rID0gdGhpcy5fZnJvbSBhcyBMaW5rRmllbGQ8VD47XG4gICAgICAgICAgICB0aGlzLl9mcm9tID0gbGluay53aXRoQ2FsbFBhcmFtcyh0aGlzLmxpbmtGaWVsZFBhcmFtcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEVycm9yKGVycm9yOiBNaWNyb0NsaWVudExvYWRFcnJvcikge1xuICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLnJlbW92ZSgpO1xuICAgICAgICBpZiAodGhpcy5fZXJyb3JUZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fZXJyb3JUZW1wbGF0ZSwge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogZXJyb3JcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IGVycm9yQ29tcG9uZW50SW5zdGFuY2UgPSB0aGlzLl92aWV3Q29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCh0aGlzLl9kZWZhdWx0RXJyb3JDb21wb25lbnQpO1xuICAgICAgICAgICAgZXJyb3JDb21wb25lbnRJbnN0YW5jZS5pbnN0YW5jZVsnZXJyb3InXSA9IGVycm9yO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHNldExvYWRpbmcobG9hZGluZzogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGxvYWRpbmc7XG4gICAgICAgIGlmICh0aGlzLmlzTG9hZGluZykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2xvYWRpbmdUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fbG9hZGluZ1RlbXBsYXRlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCh0aGlzLl9kZWZhdWx0TG9hZGluZ0NvbXBvbmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldExvYWRlZFJlc3VsdChyZXN1bHQ6IFQpIHtcbiAgICAgICAgdGhpcy5oYXNSZXN1bHQgPSB0cnVlO1xuICAgICAgICB0aGlzLmxvYWRlZFJlc3VsdCA9IHJlc3VsdDtcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudENvbnRleHQgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29udGV4dCA9IG5ldyBMaW5rRmllbGRDb250ZXh0PFQ+KHJlc3VsdCk7XG4gICAgICAgICAgICB0aGlzLmlzRGlydHkgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29udGV4dC4kaW1wbGljaXQgPSByZXN1bHQ7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5fdmlld0NvbnRhaW5lciB8fCAhdGhpcy5fdGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuaXNEaXJ0eSA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0RpcnR5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLl90ZW1wbGF0ZSwgdGhpcy5jdXJyZW50Q29udGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUlmRGlydHkoaWdub3JlRGlydHk6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgICAgICBpZiAoKHRoaXMuaXNEaXJ0eSB8fCBpZ25vcmVEaXJ0eSkgJiYgdGhpcy5fbG9hZGluZ1RlbXBsYXRlICYmIHRoaXMuX2Zyb20gJiYgdGhpcy5fdGVtcGxhdGUgJiYgdGhpcy5fdmlld0NvbnRhaW5lcikge1xuICAgICAgICAgICAgaWYgKHRoaXMuaGFzUmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkZWRSZXN1bHQodGhpcy5sb2FkZWRSZXN1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pc0RpcnR5ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyKCkge1xuICAgICAgICB0aGlzLmhhc1Jlc3VsdCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvYWRlZFJlc3VsdCA9IG51bGw7XG4gICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sYXN0T2JzID0gbnVsbDtcbiAgICAgICAgdGhpcy5jdXJyZW50Q29udGV4dCA9IG51bGw7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGlua0ZpZWxkQ29udGV4dDxUPiB7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgJGltcGxpY2l0OiBUKSB7XG4gICAgfVxufVxuIl19
419
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2ZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBR2IsaUJBQWlCLEVBQy9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUc3QyxPQUFPLEVBQUMsb0NBQW9DLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHeEM7SUFvQkksNEJBQ1ksY0FBZ0MsRUFDaEMsU0FBMkMsRUFDM0MsaUJBQTJDLEVBQzNDLGlCQUFvQztRQUhwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBa0I7UUFDaEMsY0FBUyxHQUFULFNBQVMsQ0FBa0M7UUFDM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtRQUMzQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBZHhDLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDZixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQU0sSUFBSSxDQUFDO1FBQ3ZCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFHbEIsaUJBQVksR0FBaUIsSUFBSSxDQUFDO1FBMkMxQyxrQ0FBNkIsR0FBRyxLQUFLLENBQUM7UUFNdEMsb0JBQWUsR0FBVyxJQUFJLENBQUM7UUF2QzNCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ2hILElBQUks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Qix1Q0FBMEI7Ozs7O0lBQzFCLDBDQUErQjs7Ozs7SUFDL0IsdUNBQTBCOzs7OztJQUUxQixxQ0FBK0I7Ozs7O0lBQy9CLDBDQUEwQzs7Ozs7SUFFMUMsNENBQTRDOztJQXdDNUMsMkRBQ3NDOztJQUV0QyxrREFDa0M7O0lBRWxDLDZDQUMrQjs7Ozs7SUE1QzNCLDRDQUF3Qzs7Ozs7SUFDeEMsdUNBQW1EOzs7OztJQUNuRCwrQ0FBbUQ7Ozs7O0lBQ25ELCtDQUE0Qzs7Ozs7QUF5S3BEOzs7O0lBRUksMEJBQW1CLFNBQVk7UUFBWixjQUFTLEdBQVQsU0FBUyxDQUFHO0lBQy9CLENBQUM7SUFDTCx1QkFBQztBQUFELENBQUMsQUFKRCxJQUlDOzs7Ozs7O0lBRmUscUNBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgSW5wdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgQ29tcG9uZW50RmFjdG9yeSxcbiAgICBEb0NoZWNrLFxuICAgIE9uRGVzdHJveSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xpbmtGaWVsZH0gZnJvbSAnLi4vbGlua3MvbGlua2ZpZWxkJztcbmltcG9ydCB7TWljcm9PYmplY3R9IGZyb20gJy4uL21pY3Jvb2JqZWN0JztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7TWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL2xvYWRpbmdpbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7TWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9lcnJvcmluZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtmaW5hbGl6ZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtNaWNyb0NsaWVudExvYWRFcnJvcn0gZnJvbSAnLi4vbWljcm9jbGllbnQuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2xpbmtGaWVsZF1bbGlua0ZpZWxkRnJvbV0nXG59KVxuZXhwb3J0IGNsYXNzIExpbmtGaWVsZERpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIERvQ2hlY2ssIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIF9mcm9tOiBMaW5rRmllbGQ8VD4gfCBUO1xuICAgIHByaXZhdGUgX2xvYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwcml2YXRlIF9lcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIHByaXZhdGUgX2RlZmF1bHRMb2FkaW5nQ29tcG9uZW50OiBDb21wb25lbnRGYWN0b3J5PE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudD47XG4gICAgcHJpdmF0ZSBfZGVmYXVsdEVycm9yQ29tcG9uZW50OiBDb21wb25lbnRGYWN0b3J5PE1pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnQ+O1xuXG4gICAgcHJpdmF0ZSBpc0RpcnR5ID0gdHJ1ZTtcbiAgICBwcml2YXRlIGlzTG9hZGluZyA9IGZhbHNlO1xuICAgIHByaXZhdGUgbG9hZGVkUmVzdWx0OiBUID0gbnVsbDtcbiAgICBwcml2YXRlIGhhc1Jlc3VsdCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBsYXN0T2JzOiBPYnNlcnZhYmxlPFQ+O1xuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBudWxsO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50Q29udGV4dDogTGlua0ZpZWxkQ29udGV4dDxUPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIF90ZW1wbGF0ZTogVGVtcGxhdGVSZWY8TGlua0ZpZWxkQ29udGV4dDxUPj4sXG4gICAgICAgIHByaXZhdGUgY29tcG9uZW50UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgdGhpcy5fZGVmYXVsdExvYWRpbmdDb21wb25lbnQgPSBjb21wb25lbnRSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQpO1xuICAgICAgICB0aGlzLl9kZWZhdWx0RXJyb3JDb21wb25lbnQgPSBjb21wb25lbnRSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBsaW5rRmllbGRGcm9tKGZyb206IExpbmtGaWVsZDxUPiB8IFQpIHtcbiAgICAgICAgdGhpcy5fZnJvbSA9IGZyb207XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgbGlua0ZpZWxkTG9hZGluZ1RlbXBsYXRlKGxvYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgICAgICBpZiAobG9hZGluZ1RlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLl9sb2FkaW5nVGVtcGxhdGUgPSBsb2FkaW5nVGVtcGxhdGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVJZkRpcnR5KHRydWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGxpbmtGaWVsZEVycm9yVGVtcGxhdGUoZXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgICAgICBpZiAoZXJyb3JUZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fZXJyb3JUZW1wbGF0ZSA9IGVycm9yVGVtcGxhdGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVJZkRpcnR5KHRydWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGxpbmtGaWVsZFRlbXBsYXRlKHZhbHVlOiBUZW1wbGF0ZVJlZjxMaW5rRmllbGRDb250ZXh0PFQ+Pikge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3RlbXBsYXRlID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGxpbmtGaWVsZERlZmF1bHRFcnJvckhhbmRsaW5nID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGxpbmtGaWVsZFZhbHVlQ2hhbmdlOiAoVCkgPT4gdm9pZDtcblxuICAgIEBJbnB1dCgpXG4gICAgbGlua0ZpZWxkUGFyYW1zOiBvYmplY3QgPSBudWxsO1xuXG5cbiAgICBwcml2YXRlIGxvYWQoKSB7XG4gICAgICAgIGlmICh0aGlzLl9mcm9tKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZnJvbSBpbnN0YW5jZW9mIExpbmtGaWVsZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxhc3RPYnMgPSB0aGlzLl9mcm9tLmxpc3Rlbk9icygpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMubGFzdE9icy5waXBlKFxuICAgICAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICkuc3Vic2NyaWJlKChsb2FkZWRSZXN1bHQ6IFQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkZWRSZXN1bHQobG9hZGVkUmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubGlua0ZpZWxkVmFsdWVDaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGlua0ZpZWxkVmFsdWVDaGFuZ2UobG9hZGVkUmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIChsb2FkRXJyb3I6IE1pY3JvQ2xpZW50TG9hZEVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5saW5rRmllbGREZWZhdWx0RXJyb3JIYW5kbGluZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZEVycm9yLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRFcnJvcihsb2FkRXJyb3IpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRlZFJlc3VsdCh0aGlzLl9mcm9tKTtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnNldExvYWRlZFJlc3VsdCh0aGlzLl9mcm9tKTtcbiAgICAgICAgICAgICAgICAvLyB0aHJvdyBuZXcgRXJyb3IoJ0NhblxcJ3QgdXNlIHRoZSBsaW5rRmllbGQgZGlyZWN0aXZlIHdpdGggYSBmcm9tIHZhbHVlIHdoaWNoIGlzblxcJ3QgYW4gaW5zdGFuY2Ugb2YgTGlua0ZpZWxkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIG5nRG9DaGVjaygpIHtcbiAgICAgICAgdGhpcy51cGRhdGVJZkRpcnR5KCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmxpbmtGaWVsZEZyb20pIHtcbiAgICAgICAgICAgIGlmICghKHRoaXMuX2Zyb20gaW5zdGFuY2VvZiBMaW5rRmllbGQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZnJvbSA9IExpbmtGaWVsZC5mcm9tKHRoaXMuX2Zyb20gYXMgYW55KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmKGNoYW5nZXMubGlua0ZpZWxkRnJvbS5wcmV2aW91c1ZhbHVlICE9PSBjaGFuZ2VzLmxpbmtGaWVsZEZyb20uY3VycmVudFZhbHVlKXtcbiAgICAgICAgICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2hhbmdlcy5saW5rRmllbGRQYXJhbXMgJiYgdGhpcy5saW5rRmllbGRQYXJhbXMpIHtcbiAgICAgICAgICAgIGxldCBsaW5rID0gdGhpcy5fZnJvbSBhcyBMaW5rRmllbGQ8VD47XG4gICAgICAgICAgICB0aGlzLl9mcm9tID0gbGluay53aXRoQ2FsbFBhcmFtcyh0aGlzLmxpbmtGaWVsZFBhcmFtcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEVycm9yKGVycm9yOiBNaWNyb0NsaWVudExvYWRFcnJvcikge1xuICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLnJlbW92ZSgpO1xuICAgICAgICBpZiAodGhpcy5fZXJyb3JUZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fZXJyb3JUZW1wbGF0ZSwge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogZXJyb3JcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IGVycm9yQ29tcG9uZW50SW5zdGFuY2UgPSB0aGlzLl92aWV3Q29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCh0aGlzLl9kZWZhdWx0RXJyb3JDb21wb25lbnQpO1xuICAgICAgICAgICAgZXJyb3JDb21wb25lbnRJbnN0YW5jZS5pbnN0YW5jZVsnZXJyb3InXSA9IGVycm9yO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHNldExvYWRpbmcobG9hZGluZzogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGxvYWRpbmc7XG4gICAgICAgIGlmICh0aGlzLmlzTG9hZGluZykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2xvYWRpbmdUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fbG9hZGluZ1RlbXBsYXRlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCh0aGlzLl9kZWZhdWx0TG9hZGluZ0NvbXBvbmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldExvYWRlZFJlc3VsdChyZXN1bHQ6IFQpIHtcbiAgICAgICAgdGhpcy5oYXNSZXN1bHQgPSB0cnVlO1xuICAgICAgICB0aGlzLmxvYWRlZFJlc3VsdCA9IHJlc3VsdDtcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudENvbnRleHQgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29udGV4dCA9IG5ldyBMaW5rRmllbGRDb250ZXh0PFQ+KHJlc3VsdCk7XG4gICAgICAgICAgICB0aGlzLmlzRGlydHkgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Q29udGV4dC4kaW1wbGljaXQgPSByZXN1bHQ7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5fdmlld0NvbnRhaW5lciB8fCAhdGhpcy5fdGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuaXNEaXJ0eSA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0RpcnR5KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lci5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl92aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLl90ZW1wbGF0ZSwgdGhpcy5jdXJyZW50Q29udGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUlmRGlydHkoaWdub3JlRGlydHk6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgICAgICBpZiAoKHRoaXMuaXNEaXJ0eSB8fCBpZ25vcmVEaXJ0eSkgJiYgdGhpcy5fbG9hZGluZ1RlbXBsYXRlICYmIHRoaXMuX2Zyb20gJiYgdGhpcy5fdGVtcGxhdGUgJiYgdGhpcy5fdmlld0NvbnRhaW5lcikge1xuICAgICAgICAgICAgaWYgKHRoaXMuaGFzUmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkZWRSZXN1bHQodGhpcy5sb2FkZWRSZXN1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pc0RpcnR5ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyKCkge1xuICAgICAgICB0aGlzLmhhc1Jlc3VsdCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvYWRlZFJlc3VsdCA9IG51bGw7XG4gICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sYXN0T2JzID0gbnVsbDtcbiAgICAgICAgdGhpcy5jdXJyZW50Q29udGV4dCA9IG51bGw7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGlua0ZpZWxkQ29udGV4dDxUPiB7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgJGltcGxpY2l0OiBUKSB7XG4gICAgfVxufVxuIl19
@@ -1668,8 +1668,6 @@ class LinkFieldDirective {
1668
1668
  */
1669
1669
  set linkFieldFrom(from) {
1670
1670
  this._from = from;
1671
- this.clear();
1672
- this.load();
1673
1671
  }
1674
1672
  /**
1675
1673
  * @param {?} loadingTemplate
@@ -1749,11 +1747,6 @@ class LinkFieldDirective {
1749
1747
  */
1750
1748
  ngDoCheck() {
1751
1749
  this.updateIfDirty();
1752
- if (this._from) {
1753
- if (this._from instanceof LinkField && this.lastObs !== this._from.listenObs()) {
1754
- this.load();
1755
- }
1756
- }
1757
1750
  }
1758
1751
  /**
1759
1752
  * @return {?}
@@ -1770,6 +1763,10 @@ class LinkFieldDirective {
1770
1763
  if (!(this._from instanceof LinkField)) {
1771
1764
  this._from = LinkField.from((/** @type {?} */ (this._from)));
1772
1765
  }
1766
+ if (changes.linkFieldFrom.previousValue !== changes.linkFieldFrom.currentValue) {
1767
+ this.clear();
1768
+ this.load();
1769
+ }
1773
1770
  }
1774
1771
  if (changes.linkFieldParams && this.linkFieldParams) {
1775
1772
  /** @type {?} */