@sumaris-net/ngx-components 0.27.21 → 0.27.22

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.
@@ -191,7 +191,7 @@ export class AppForm {
191
191
  }
192
192
  }
193
193
  markAsReady(opts) {
194
- if (!this._$ready.value) {
194
+ if (this._$ready.value !== true) {
195
195
  this._$ready.next(true);
196
196
  // If subclasses implements OnReady
197
197
  if (typeof this['ngOnReady'] === 'function') {
@@ -262,4 +262,4 @@ AppForm.propDecorators = {
262
262
  onCancel: [{ type: Output }],
263
263
  onSubmit: [{ type: Output }]
264
264
  };
265
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9mb3JtL2Zvcm0uY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBb0IsTUFBTSxjQUFjLENBQUM7QUFDN0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFDLDJCQUEyQixFQUE2RCxNQUFNLDBEQUEwRCxDQUFDO0FBQ2pLLE9BQU8sRUFBQyxnQkFBZ0IsRUFBaUIsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRSxPQUFPLEVBQUMsbUJBQW1CLEVBQXlELE1BQU0saURBQWlELENBQUM7QUFDNUksT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFHckQsa0VBQWtFO0FBQ2xFLE1BQU0sT0FBZ0IsT0FBTztJQXNHM0IsWUFDRSxRQUFrQixFQUNsQixJQUFnQjtRQXBHbEIsVUFBSyxHQUFXLElBQUksQ0FBQztRQUtYLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsWUFBTyxHQUFJLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9DLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsb0JBQWUsR0FBVyxJQUFJLENBQUM7UUFFakMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2xDLFVBQUssR0FBRyxL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LElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLGtCQUNuRCxxQkFBcUIsRUFBRSxJQUFJLElBQ3hCLElBQUksRUFDUCxDQUFDO0lBQ0wsQ0FBQztJQUVTLGdCQUFnQixDQUFDLElBQVk7UUFDckMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkYsQ0FBQztJQUVTLG9CQUFvQixDQUFDLEdBQWlCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVTLHlCQUF5QixDQUFtQixTQUFpQixFQUNqQixJQUEyQztRQUMvRixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFUyxZQUFZO1FBQ3BCLHNDQUFzQztRQUN0QyxPQUFPLENBQUMsSUFBSSxDQUFDLHNFQUFzRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0csQ0FBQzs7O1lBeFNGLFNBQVM7OztZQVh1QixRQUFRO1lBQ2pDLFNBQVM7OztvQkE2QmQsS0FBSzt1QkFDTCxLQUFLO3FDQUNMLEtBQUs7bUJBb0VMLEtBQUs7dUJBU0wsTUFBTTt1QkFHTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7QXBwRm9ybVV0aWxzLCBJQXBwRm9ybSwgT25SZWFkeX0gZnJvbSAnLi9mb3JtLnV0aWxzJztcbmltcG9ydCB7TG9jYWxTZXR0aW5nc1NlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2VzL2xvY2FsLXNldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVDb25maWdIb2xkZXIsIE1hdEF1dG9jb21wbGV0ZUZpZWxkQWRkT3B0aW9ucywgTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWd9IGZyb20gJy4uLy4uL3NoYXJlZC9tYXRlcmlhbC9hdXRvY29tcGxldGUvbWF0ZXJpYWwuYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7Zmlyc3RUcnVlUHJvbWlzZSwgV2FpdEZvck9wdGlvbnN9IGZyb20gJy4uLy4uL3NoYXJlZC9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge0Zvcm1FcnJvclRyYW5zbGF0b3IsIEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zLCBJRm9ybUNvbnRyb2xQYXRoVHJhbnNsYXRvcn0gZnJvbSAnLi4vLi4vc2hhcmVkL3ZhbGlkYXRvci9mb3JtLWVycm9yLWFkYXB0ZXIuY2xhc3MnO1xuaW1wb3J0IHtjaGFuZ2VDYXNlVG9VbmRlcnNjb3JlfSBmcm9tICcuLi8uLi9zaGFyZWQvZnVuY3Rpb25zJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbkBEaXJlY3RpdmUoKVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtY2xhc3Mtc3VmZml4XG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQXBwRm9ybTxUPiBpbXBsZW1lbnRzIElBcHBGb3JtLCBPbkluaXQsIE9uRGVzdHJveSwgSUZvcm1Db250cm9sUGF0aFRyYW5zbGF0b3Ige1xuXG4gIGF1dG9jb21wbGV0ZUhlbHBlcjogTWF0QXV0b2NvbXBsZXRlQ29uZmlnSG9sZGVyO1xuICBhdXRvY29tcGxldGVGaWVsZHM6IHtba2V5OiBzdHJpbmddOiBNYXRBdXRvY29tcGxldGVGaWVsZENvbmZpZ307XG4gIGVycm9yOiBzdHJpbmcgPSBudWxsO1xuXG4gIHByb3RlY3RlZCB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2U7XG4gIHByb3RlY3RlZCBzZXR0aW5nczogTG9jYWxTZXR0aW5nc1NlcnZpY2U7XG4gIHByb3RlY3RlZCBlcnJvclRyYW5zbGF0b3I6IEZvcm1FcnJvclRyYW5zbGF0b3I7XG4gIHByb3RlY3RlZCBfZW5hYmxlID0gZmFsc2U7XG4gIHByb3RlY3RlZCBfJHJlYWR5ICA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcm90ZWN0ZWQgX2xvYWRpbmcgPSB0cnVlO1xuICBwcm90ZWN0ZWQgaTE4bkZpZWxkUHJlZml4OiBzdHJpbmcgPSBudWxsO1xuXG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgcHJpdmF0ZSBfZm9ybTogRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpIGRlYnVnID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRhYmluZGV4OiBudW1iZXI7XG4gIEBJbnB1dCgpIGVycm9yVHJhbnNsYXRvck9wdGlvbnM6IEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zO1xuXG4gIHByb3RlY3RlZCBnZXQgX3JlYWR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl8kcmVhZHkudmFsdWUgPT0gdHJ1ZTtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmZvcm0udmFsdWU7XG4gIH1cblxuICBzZXQgdmFsdWUoZGF0YTogYW55KSB7XG4gICAgdGhpcy5zZXRWYWx1ZShkYXRhKTtcbiAgfVxuXG4gIGdldCBkaXJ0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtICYmIHRoaXMuZm9ybS5kaXJ0eTtcbiAgfVxuXG4gIGdldCBpbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5mb3JtIHx8IHRoaXMuZm9ybS5pbnZhbGlkO1xuICB9XG5cbiAgZ2V0IHBlbmRpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmZvcm0gfHwgKHRoaXMuZm9ybS5kaXJ0eSAmJiB0aGlzLmZvcm0ucGVuZGluZyk7XG4gIH1cblxuICBnZXQgdmFsaWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybSAmJiB0aGlzLmZvcm0udmFsaWQ7XG4gIH1cblxuICBnZXQgZW1wdHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmZvcm0gfHwgKCF0aGlzLmZvcm0uZGlydHkgJiYgIXRoaXMuZm9ybS50b3VjaGVkKTtcbiAgfVxuXG4gIGdldCB1bnRvdWNoZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmZvcm0gfHwgdGhpcy5mb3JtLnVudG91Y2hlZDtcbiAgfVxuXG4gIGdldCBlbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbmFibGU7XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLl9lbmFibGU7XG4gIH1cblxuICBkaXNhYmxlKG9wdHM/OiB7XG4gICAgb25seVNlbGY/OiBib29sZWFuO1xuICAgIGVtaXRFdmVudD86IGJvb2xlYW47XG4gIH0pOiB2b2lkIHtcbiAgICB0aGlzLmZvcm0/LmRpc2FibGUob3B0cyk7XG4gICAgaWYgKHRoaXMuX2VuYWJsZSkge1xuICAgICAgdGhpcy5fZW5hYmxlID0gZmFsc2U7XG4gICAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IHRydWUpIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgZW5hYmxlKG9wdHM/OiB7XG4gICAgb25seVNlbGY/OiBib29sZWFuO1xuICAgIGVtaXRFdmVudD86IGJvb2xlYW47XG4gIH0pOiB2b2lkIHtcbiAgICB0aGlzLmZvcm0/LmVuYWJsZShvcHRzKTtcbiAgICBpZiAoIXRoaXMuX2VuYWJsZSkge1xuICAgICAgdGhpcy5fZW5hYmxlID0gdHJ1ZTtcbiAgICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gdHJ1ZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgZm9ybSh2YWx1ZTogRm9ybUdyb3VwKSB7XG4gICAgdGhpcy5zZXRGb3JtKHZhbHVlKTtcbiAgfVxuXG4gIGdldCBmb3JtKCk6IEZvcm1Hcm91cCB7XG4gICAgcmV0dXJuIHRoaXMuX2Zvcm07XG4gIH1cblxuICBAT3V0cHV0KClcbiAgb25DYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBAT3V0cHV0KClcbiAgb25TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIGZvcm0/OiBGb3JtR3JvdXBcbiAgKSB7XG4gICAgaWYgKGZvcm0pIHRoaXMuc2V0Rm9ybShmb3JtKTtcbiAgICB0aGlzLnRyYW5zbGF0ZSA9IGluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlKTtcbiAgICB0aGlzLnNldHRpbmdzID0gaW5qZWN0b3IuZ2V0KExvY2FsU2V0dGluZ3NTZXJ2aWNlKTtcbiAgICB0aGlzLmVycm9yVHJhbnNsYXRvciA9IGluamVjdG9yLmdldChGb3JtRXJyb3JUcmFuc2xhdG9yKTtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUhlbHBlciA9IG5ldyBNYXRBdXRvY29tcGxldGVDb25maWdIb2xkZXIodGhpcy5zZXR0aW5ncyAmJiB7XG4gICAgICBnZXRVc2VyQXR0cmlidXRlczogKGEsIGIpID0+IHRoaXMuc2V0dGluZ3MuZ2V0RmllbGREaXNwbGF5QXR0cmlidXRlcyhhLCBiKVxuICAgIH0pO1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlRmllbGRzID0gdGhpcy5hdXRvY29tcGxldGVIZWxwZXIuZmllbGRzO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5fZW5hYmxlID8gdGhpcy5lbmFibGUoKSA6IHRoaXMuZGlzYWJsZSgpO1xuICAgIHRoaXMuZXJyb3JUcmFuc2xhdG9yT3B0aW9ucyA9IHRoaXMuZXJyb3JUcmFuc2xhdG9yT3B0aW9ucyB8fCB7XG4gICAgICBjb250cm9sUGF0aFRyYW5zbGF0b3I6IHRoaXNcbiAgICB9O1xuXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLm9uQ2FuY2VsLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5vbkNhbmNlbC51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMub25TdWJtaXQuY29tcGxldGUoKTtcbiAgICB0aGlzLm9uU3VibWl0LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fJHJlYWR5LmNvbXBsZXRlKCk7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5vbkNhbmNlbC5lbWl0KCk7XG4gIH1cblxuICBkb1N1Ym1pdChldmVudDogYW55KSB7XG4gICAgaWYgKCF0aGlzLmZvcm0gfHwgIXRoaXMuZm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkKHtlbWl0RXZlbnQ6IHRydWV9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vblN1Ym1pdC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHNldEZvcm0oZm9ybTogRm9ybUdyb3VwKSB7XG4gICAgaWYgKHRoaXMuX2Zvcm0gIT09IGZvcm0pIHtcbiAgICAgIHRoaXMuX2Zvcm0gPSBmb3JtO1xuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgICAgdGhpcy5fZm9ybS5zdGF0dXNDaGFuZ2VzLnN1YnNjcmliZShzdGF0dXMgPT4gdGhpcy5tYXJrRm9yQ2hlY2soKSkpO1xuICAgIH1cbiAgfVxuXG4gIHNldFZhbHVlKGRhdGE6IFQsIG9wdHM/OiB7ZW1pdEV2ZW50PzogYm9vbGVhbjsgb25seVNlbGY/OiBib29sZWFuIH0pOiBQcm9taXNlPHZvaWQ+IHwgdm9pZCB7XG4gICAgaWYgKCFkYXRhKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1tmb3JtXSBUcnlpbmcgdG8gc2V0IGFuIGVtcHR5IHZhbHVlIHRvIGZvcm0uIFNraXBwaW5nJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZGVidWcpIGNvbnNvbGUuZGVidWcoJ1tmb3JtXSBVcGRhdGluZyBmb3JtICh1c2luZyBlbnRpdHkpJywgZGF0YSk7XG5cbiAgICAvLyBDb252ZXJ0IG9iamVjdCB0byBqc29uLCB0aGVuIGFwcGx5IGl0IHRvIGZvcm0gKGUuZy4gY29udmVydCAndW5kZWZpbmVkJyBpbnRvICdudWxsJylcbiAgICBBcHBGb3JtVXRpbHMuY29weUVudGl0eTJGb3JtKGRhdGEsIHRoaXMuZm9ybSwge2VtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlLCAuLi5vcHRzfSk7XG5cbiAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IHRydWUpIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICByZXNldChkYXRhPzogVCwgb3B0cz86IHtlbWl0RXZlbnQ/OiBib29sZWFuOyBvbmx5U2VsZj86IGJvb2xlYW4gfSkge1xuICAgIGlmIChkYXRhKSB7XG4gICAgICBpZiAodGhpcy5kZWJ1ZykgY29uc29sZS5kZWJ1ZygnW2Zvcm1dIFJlc2V0dGluZyBmb3JtICh1c2luZyBlbnRpdHkpJywgZGF0YSk7XG5cbiAgICAgIC8vIENvbnZlcnQgb2JqZWN0IHRvIGpzb24sIHRoZW4gYXBwbHkgaXQgdG8gZm9ybSAoZS5nLiBjb252ZXJ0ICd1bmRlZmluZWQnIGludG8gJ251bGwnKVxuICAgICAgY29uc3QganNvbiA9IEFwcEZvcm1VdGlscy5nZXRGb3JtVmFsdWVGcm9tRW50aXR5KGRhdGEsIHRoaXMuZm9ybSk7XG4gICAgICB0aGlzLmZvcm0ucmVzZXQoanNvbiwge2VtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlfSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5mb3JtLnJlc2V0KG51bGwsIHtlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZX0pO1xuICAgIH1cblxuICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gdHJ1ZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG1hcmtBc1ByaXN0aW5lKG9wdHM/OiB7b25seVNlbGY/OiBib29sZWFuOyBlbWl0RXZlbnQ/OiBib29sZWFuO30pIHtcbiAgICB0aGlzLmZvcm0ubWFya0FzUHJpc3RpbmUob3B0cyk7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSBmYWxzZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG1hcmtBc1VudG91Y2hlZChvcHRzPzoge29ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbjt9KSB7XG4gICAgdGhpcy5mb3JtLm1hcmtBc1VudG91Y2hlZChvcHRzKTtcbiAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IGZhbHNlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHByZWZlciB0byB1c2UgbWFya0FsbEFzVG91Y2hlZCgpXG4gICAqIEBwYXJhbSBvcHRzXG4gICAqL1xuICBtYXJrQXNUb3VjaGVkKG9wdHM/OiB7b25seVNlbGY/OiBib29sZWFuOyBlbWl0RXZlbnQ/OiBib29sZWFuO30pIHtcbiAgICAvLyB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpIC8vIFRoaXMgaXMgbm90IHdvcmtpbmcgd2VsbCAoZS5nLiBpbiBUcmlwRm9ybSlcbiAgICBjb25zb2xlLndhcm4oJ1RPRE86IFJlcGxhY2UgdGhpcyBjYWxsIGJ5IG1hcmtBbGxBc1RvdWNoZWQoKSAtIGJlY2F1c2Ugb2YgY2hhbmdlcyBpbiBuZ3gtY29tcG9uZW50cyA+PSAwLjE2LjAnKTtcbiAgICBBcHBGb3JtVXRpbHMubWFya0FzVG91Y2hlZCh0aGlzLmZvcm0sIG9wdHMpO1xuICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gZmFsc2UpIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBtYXJrQWxsQXNUb3VjaGVkKG9wdHM/OiB7IGVtaXRFdmVudD86IGJvb2xlYW4gfSkge1xuICAgIC8vIHRoaXMuZm9ybS5tYXJrQWxsQXNUb3VjaGVkKCkgLy8gVGhpcyBpcyBub3Qgd29ya2luZyB3ZWxsIChlLmcuIGluIFRyaXBGb3JtKVxuICAgIEFwcEZvcm1VdGlscy5tYXJrQWxsQXNUb3VjaGVkKHRoaXMuZm9ybSwgb3B0cyk7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSBmYWxzZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG1hcmtBc0RpcnR5KG9wdHM/OiB7b25seVNlbGY/OiBib29sZWFuOyBlbWl0RXZlbnQ/OiBib29sZWFuO30pIHtcbiAgICB0aGlzLmZvcm0ubWFya0FzRGlydHkob3B0cyk7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSBmYWxzZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG1hcmtBc0xvYWRpbmcob3B0cz86IHtvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW47fSkge1xuICAgIGlmICghdGhpcy5fbG9hZGluZykge1xuICAgICAgdGhpcy5fbG9hZGluZyA9IHRydWU7XG4gICAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IGZhbHNlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIG1hcmtBc0xvYWRlZChvcHRzPzoge29ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbjt9KSB7XG4gICAgaWYgKHRoaXMuX2xvYWRpbmcpIHtcbiAgICAgIHRoaXMuX2xvYWRpbmcgPSBmYWxzZTtcbiAgICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gZmFsc2UpIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgbWFya0FzUmVhZHkob3B0cz86IHtvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW47fSkge1xuICAgIGlmICghdGhpcy5fJHJlYWR5LnZhbHVlKSB7XG4gICAgICB0aGlzLl8kcmVhZHkubmV4dCh0cnVlKTtcblxuICAgICAgLy8gSWYgc3ViY2xhc3NlcyBpbXBsZW1lbnRzIE9uUmVhZHlcbiAgICAgIGlmICh0eXBlb2YgdGhpc1snbmdPblJlYWR5J10gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgKHRoaXMgYXMgYW55IGFzIE9uUmVhZHkpLm5nT25SZWFkeSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXYWl0IGZvcm0gaXMgcmVhZHlcbiAgICogQHBhcmFtIG9wdHNcbiAgICovXG4gIGFzeW5jIHJlYWR5KG9wdHM/OiBXYWl0Rm9yT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IGZpcnN0VHJ1ZVByb21pc2UodGhpcy5fJHJlYWR5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXYWl0IGZvcm0gaXMgaWRsZSAobm90IGxvYWRpbmcpXG4gICAqIEBwYXJhbSBvcHRzXG4gICAqL1xuICBhc3luYyB3YWl0SWRsZShvcHRzPzogV2FpdEZvck9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gQXBwRm9ybVV0aWxzLndhaXRJZGxlKHRoaXMsIG9wdHMpO1xuICB9XG5cbiAgdXBkYXRlVmFsdWVBbmRWYWxpZGl0eShvcHRzPzoge1xuICAgIG9ubHlTZWxmPzogYm9vbGVhbjtcbiAgICBlbWl0RXZlbnQ/OiBib29sZWFuO1xuICB9KSB7XG4gICAgQXBwRm9ybVV0aWxzLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkodGhpcy5mb3JtLCBvcHRzKTtcbiAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IGZhbHNlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgdHJhbnNsYXRlQ29udHJvbFBhdGgocGF0aDogc3RyaW5nKSB7XG4gICAgY29uc3QgaTE4bkZpZWxkTmFtZSA9IHRoaXMuZ2V0STE4bkZpZWxkTmFtZShwYXRoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGU/Lmluc3RhbnQoaTE4bkZpZWxkTmFtZSkgfHwgaTE4bkZpZWxkTmFtZTtcbiAgfVxuXG4gIC8qIC0tIHByb3RlY3RlZCBtZXRob2RzIC0tICovXG5cbiAgcHJvdGVjdGVkIGdldEZvcm1FcnJvcihmb3JtOiBGb3JtR3JvdXAsIG9wdHM/OiBGb3JtRXJyb3JUcmFuc2xhdG9yT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgaWYgKCFmb3JtIHx8ICF0aGlzLmVycm9yVHJhbnNsYXRvcikgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICByZXR1cm4gdGhpcy5lcnJvclRyYW5zbGF0b3IudHJhbnNsYXRlRXJyb3JzKHRoaXMuZm9ybSwge1xuICAgICAgY29udHJvbFBhdGhUcmFuc2xhdG9yOiB0aGlzLFxuICAgICAgLi4ub3B0c1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldEkxOG5GaWVsZE5hbWUocGF0aDogc3RyaW5nKSB7XG4gICAgcmV0dXJuICh0aGlzLmkxOG5GaWVsZFByZWZpeCB8fCAnJykgKyBjaGFuZ2VDYXNlVG9VbmRlcnNjb3JlKHBhdGgpLnRvVXBwZXJDYXNlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVnaXN0ZXJTdWJzY3JpcHRpb24oc3ViOiBTdWJzY3JpcHRpb24pOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLl9zdWJzY3JpcHRpb24uYWRkKHN1Yik7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVnaXN0ZXJBdXRvY29tcGxldGVGaWVsZDxUID0gYW55LCBGID0gYW55PihmaWVsZE5hbWU6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0cz86IE1hdEF1dG9jb21wbGV0ZUZpZWxkQWRkT3B0aW9uczxULCBGPik6IE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnPFQsIEY+IHtcbiAgICByZXR1cm4gdGhpcy5hdXRvY29tcGxldGVIZWxwZXIuYWRkKGZpZWxkTmFtZSwgb3B0cyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbWFya0ZvckNoZWNrKCkge1xuICAgIC8vIFNob3VsZCBiZSBvdmVyd3JpdHRlbiBieSBzdWJjbGFzc2VzXG4gICAgY29uc29sZS53YXJuKCdtYXJrRm9yQ2hlY2soKSBoYXMgYmVlbiBjYWxsZWQsIGJ1dCBpcyBub3Qgb3ZlcndyaXR0ZW4gYnkgY29tcG9uZW50ICcgKyB0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuICB9XG59XG4iXX0=
265
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9mb3JtL2Zvcm0uY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBb0IsTUFBTSxjQUFjLENBQUM7QUFDN0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFDLDJCQUEyQixFQUE2RCxNQUFNLDBEQUEwRCxDQUFDO0FBQ2pLLE9BQU8sRUFBQyxnQkFBZ0IsRUFBaUIsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRSxPQUFPLEVBQUMsbUJBQW1CLEVBQXlELE1BQU0saURBQWlELENBQUM7QUFDNUksT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFHckQsa0VBQWtFO0FBQ2xFLE1BQU0sT0FBZ0IsT0FBTztJQXNHM0IsWUFDRSxRQUFrQixFQUNsQixJQUFnQjtRQXBHbEIsVUFBSyxHQUFXLElBQUksQ0FBQztRQUtYLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsWUFBTyxHQUFJLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9DLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsb0JBQWUsR0FBVyxJQUFJLENBQUM7UUFFakMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2xDLFVBQUssR0FBRyxL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LE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksa0JBQ25ELHFCQUFxQixFQUFFLElBQUksSUFDeEIsSUFBSSxFQUNQLENBQUM7SUFDTCxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsSUFBWTtRQUNyQyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUMsR0FBRyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuRixDQUFDO0lBRVMsb0JBQW9CLENBQUMsR0FBaUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRVMseUJBQXlCLENBQW1CLFNBQWlCLEVBQ2pCLElBQTJDO1FBQy9GLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVTLFlBQVk7UUFDcEIsc0NBQXNDO1FBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0VBQXNFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRyxDQUFDOzs7WUF4U0YsU0FBUzs7O1lBWHVCLFFBQVE7WUFDakMsU0FBUzs7O29CQTZCZCxLQUFLO3VCQUNMLEtBQUs7cUNBQ0wsS0FBSzttQkFvRUwsS0FBSzt1QkFTTCxNQUFNO3VCQUdOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBcHBGb3JtVXRpbHMsIElBcHBGb3JtLCBPblJlYWR5fSBmcm9tICcuL2Zvcm0udXRpbHMnO1xuaW1wb3J0IHtMb2NhbFNldHRpbmdzU2VydmljZX0gZnJvbSAnLi4vc2VydmljZXMvbG9jYWwtc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZUNvbmZpZ0hvbGRlciwgTWF0QXV0b2NvbXBsZXRlRmllbGRBZGRPcHRpb25zLCBNYXRBdXRvY29tcGxldGVGaWVsZENvbmZpZ30gZnJvbSAnLi4vLi4vc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS9tYXRlcmlhbC5hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtmaXJzdFRydWVQcm9taXNlLCBXYWl0Rm9yT3B0aW9uc30gZnJvbSAnLi4vLi4vc2hhcmVkL29ic2VydmFibGVzJztcbmltcG9ydCB7Rm9ybUVycm9yVHJhbnNsYXRvciwgRm9ybUVycm9yVHJhbnNsYXRvck9wdGlvbnMsIElGb3JtQ29udHJvbFBhdGhUcmFuc2xhdG9yfSBmcm9tICcuLi8uLi9zaGFyZWQvdmFsaWRhdG9yL2Zvcm0tZXJyb3ItYWRhcHRlci5jbGFzcyc7XG5pbXBvcnQge2NoYW5nZUNhc2VUb1VuZGVyc2NvcmV9IGZyb20gJy4uLy4uL3NoYXJlZC9mdW5jdGlvbnMnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuQERpcmVjdGl2ZSgpXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBcHBGb3JtPFQ+IGltcGxlbWVudHMgSUFwcEZvcm0sIE9uSW5pdCwgT25EZXN0cm95LCBJRm9ybUNvbnRyb2xQYXRoVHJhbnNsYXRvciB7XG5cbiAgYXV0b2NvbXBsZXRlSGVscGVyOiBNYXRBdXRvY29tcGxldGVDb25maWdIb2xkZXI7XG4gIGF1dG9jb21wbGV0ZUZpZWxkczoge1trZXk6IHN0cmluZ106IE1hdEF1dG9jb21wbGV0ZUZpZWxkQ29uZmlnfTtcbiAgZXJyb3I6IHN0cmluZyA9IG51bGw7XG5cbiAgcHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZTtcbiAgcHJvdGVjdGVkIHNldHRpbmdzOiBMb2NhbFNldHRpbmdzU2VydmljZTtcbiAgcHJvdGVjdGVkIGVycm9yVHJhbnNsYXRvcjogRm9ybUVycm9yVHJhbnNsYXRvcjtcbiAgcHJvdGVjdGVkIF9lbmFibGUgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIF8kcmVhZHkgID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByb3RlY3RlZCBfbG9hZGluZyA9IHRydWU7XG4gIHByb3RlY3RlZCBpMThuRmllbGRQcmVmaXg6IHN0cmluZyA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICBwcml2YXRlIF9mb3JtOiBGb3JtR3JvdXA7XG5cbiAgQElucHV0KCkgZGVidWcgPSBmYWxzZTtcbiAgQElucHV0KCkgdGFiaW5kZXg6IG51bWJlcjtcbiAgQElucHV0KCkgZXJyb3JUcmFuc2xhdG9yT3B0aW9uczogRm9ybUVycm9yVHJhbnNsYXRvck9wdGlvbnM7XG5cbiAgcHJvdGVjdGVkIGdldCBfcmVhZHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuXyRyZWFkeS52YWx1ZSA9PSB0cnVlO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybS52YWx1ZTtcbiAgfVxuXG4gIHNldCB2YWx1ZShkYXRhOiBhbnkpIHtcbiAgICB0aGlzLnNldFZhbHVlKGRhdGEpO1xuICB9XG5cbiAgZ2V0IGRpcnR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZvcm0gJiYgdGhpcy5mb3JtLmRpcnR5O1xuICB9XG5cbiAgZ2V0IGludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmZvcm0gfHwgdGhpcy5mb3JtLmludmFsaWQ7XG4gIH1cblxuICBnZXQgcGVuZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZm9ybSB8fCAodGhpcy5mb3JtLmRpcnR5ICYmIHRoaXMuZm9ybS5wZW5kaW5nKTtcbiAgfVxuXG4gIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtICYmIHRoaXMuZm9ybS52YWxpZDtcbiAgfVxuXG4gIGdldCBlbXB0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZm9ybSB8fCAoIXRoaXMuZm9ybS5kaXJ0eSAmJiAhdGhpcy5mb3JtLnRvdWNoZWQpO1xuICB9XG5cbiAgZ2V0IHVudG91Y2hlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZm9ybSB8fCB0aGlzLmZvcm0udW50b3VjaGVkO1xuICB9XG5cbiAgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZTtcbiAgfVxuXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuX2VuYWJsZTtcbiAgfVxuXG4gIGRpc2FibGUob3B0cz86IHtcbiAgICBvbmx5U2VsZj86IGJvb2xlYW47XG4gICAgZW1pdEV2ZW50PzogYm9vbGVhbjtcbiAgfSk6IHZvaWQge1xuICAgIHRoaXMuZm9ybT8uZGlzYWJsZShvcHRzKTtcbiAgICBpZiAodGhpcy5fZW5hYmxlKSB7XG4gICAgICB0aGlzLl9lbmFibGUgPSBmYWxzZTtcbiAgICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gdHJ1ZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBlbmFibGUob3B0cz86IHtcbiAgICBvbmx5U2VsZj86IGJvb2xlYW47XG4gICAgZW1pdEV2ZW50PzogYm9vbGVhbjtcbiAgfSk6IHZvaWQge1xuICAgIHRoaXMuZm9ybT8uZW5hYmxlKG9wdHMpO1xuICAgIGlmICghdGhpcy5fZW5hYmxlKSB7XG4gICAgICB0aGlzLl9lbmFibGUgPSB0cnVlO1xuICAgICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSB0cnVlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBmb3JtKHZhbHVlOiBGb3JtR3JvdXApIHtcbiAgICB0aGlzLnNldEZvcm0odmFsdWUpO1xuICB9XG5cbiAgZ2V0IGZvcm0oKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBvbkNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBPdXRwdXQoKVxuICBvblN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgZm9ybT86IEZvcm1Hcm91cFxuICApIHtcbiAgICBpZiAoZm9ybSkgdGhpcy5zZXRGb3JtKGZvcm0pO1xuICAgIHRoaXMudHJhbnNsYXRlID0gaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICAgIHRoaXMuc2V0dGluZ3MgPSBpbmplY3Rvci5nZXQoTG9jYWxTZXR0aW5nc1NlcnZpY2UpO1xuICAgIHRoaXMuZXJyb3JUcmFuc2xhdG9yID0gaW5qZWN0b3IuZ2V0KEZvcm1FcnJvclRyYW5zbGF0b3IpO1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlSGVscGVyID0gbmV3IE1hdEF1dG9jb21wbGV0ZUNvbmZpZ0hvbGRlcih0aGlzLnNldHRpbmdzICYmIHtcbiAgICAgIGdldFVzZXJBdHRyaWJ1dGVzOiAoYSwgYikgPT4gdGhpcy5zZXR0aW5ncy5nZXRGaWVsZERpc3BsYXlBdHRyaWJ1dGVzKGEsIGIpXG4gICAgfSk7XG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZHMgPSB0aGlzLmF1dG9jb21wbGV0ZUhlbHBlci5maWVsZHM7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9lbmFibGUgPyB0aGlzLmVuYWJsZSgpIDogdGhpcy5kaXNhYmxlKCk7XG4gICAgdGhpcy5lcnJvclRyYW5zbGF0b3JPcHRpb25zID0gdGhpcy5lcnJvclRyYW5zbGF0b3JPcHRpb25zIHx8IHtcbiAgICAgIGNvbnRyb2xQYXRoVHJhbnNsYXRvcjogdGhpc1xuICAgIH07XG5cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMub25DYW5jZWwuY29tcGxldGUoKTtcbiAgICB0aGlzLm9uQ2FuY2VsLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5vblN1Ym1pdC5jb21wbGV0ZSgpO1xuICAgIHRoaXMub25TdWJtaXQudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl8kcmVhZHkuY29tcGxldGUoKTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLm9uQ2FuY2VsLmVtaXQoKTtcbiAgfVxuXG4gIGRvU3VibWl0KGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoIXRoaXMuZm9ybSB8fCAhdGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLm1hcmtBbGxBc1RvdWNoZWQoe2VtaXRFdmVudDogdHJ1ZX0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9uU3VibWl0LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgc2V0Rm9ybShmb3JtOiBGb3JtR3JvdXApIHtcbiAgICBpZiAodGhpcy5fZm9ybSAhPT0gZm9ybSkge1xuICAgICAgdGhpcy5fZm9ybSA9IGZvcm07XG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgICB0aGlzLl9mb3JtLnN0YXR1c0NoYW5nZXMuc3Vic2NyaWJlKHN0YXR1cyA9PiB0aGlzLm1hcmtGb3JDaGVjaygpKSk7XG4gICAgfVxuICB9XG5cbiAgc2V0VmFsdWUoZGF0YTogVCwgb3B0cz86IHtlbWl0RXZlbnQ/OiBib29sZWFuOyBvbmx5U2VsZj86IGJvb2xlYW4gfSk6IFByb21pc2U8dm9pZD4gfCB2b2lkIHtcbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIGNvbnNvbGUud2FybignW2Zvcm1dIFRyeWluZyB0byBzZXQgYW4gZW1wdHkgdmFsdWUgdG8gZm9ybS4gU2tpcHBpbmcnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kZWJ1ZykgY29uc29sZS5kZWJ1ZygnW2Zvcm1dIFVwZGF0aW5nIGZvcm0gKHVzaW5nIGVudGl0eSknLCBkYXRhKTtcblxuICAgIC8vIENvbnZlcnQgb2JqZWN0IHRvIGpzb24sIHRoZW4gYXBwbHkgaXQgdG8gZm9ybSAoZS5nLiBjb252ZXJ0ICd1bmRlZmluZWQnIGludG8gJ251bGwnKVxuICAgIEFwcEZvcm1VdGlscy5jb3B5RW50aXR5MkZvcm0oZGF0YSwgdGhpcy5mb3JtLCB7ZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWUsIC4uLm9wdHN9KTtcblxuICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gdHJ1ZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHJlc2V0KGRhdGE/OiBULCBvcHRzPzoge2VtaXRFdmVudD86IGJvb2xlYW47IG9ubHlTZWxmPzogYm9vbGVhbiB9KSB7XG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIGlmICh0aGlzLmRlYnVnKSBjb25zb2xlLmRlYnVnKCdbZm9ybV0gUmVzZXR0aW5nIGZvcm0gKHVzaW5nIGVudGl0eSknLCBkYXRhKTtcblxuICAgICAgLy8gQ29udmVydCBvYmplY3QgdG8ganNvbiwgdGhlbiBhcHBseSBpdCB0byBmb3JtIChlLmcuIGNvbnZlcnQgJ3VuZGVmaW5lZCcgaW50byAnbnVsbCcpXG4gICAgICBjb25zdCBqc29uID0gQXBwRm9ybVV0aWxzLmdldEZvcm1WYWx1ZUZyb21FbnRpdHkoZGF0YSwgdGhpcy5mb3JtKTtcbiAgICAgIHRoaXMuZm9ybS5yZXNldChqc29uLCB7ZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWV9KTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmZvcm0ucmVzZXQobnVsbCwge2VtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlfSk7XG4gICAgfVxuXG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSB0cnVlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgbWFya0FzUHJpc3RpbmUob3B0cz86IHtvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW47fSkge1xuICAgIHRoaXMuZm9ybS5tYXJrQXNQcmlzdGluZShvcHRzKTtcbiAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IGZhbHNlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgbWFya0FzVW50b3VjaGVkKG9wdHM/OiB7b25seVNlbGY/OiBib29sZWFuOyBlbWl0RXZlbnQ/OiBib29sZWFuO30pIHtcbiAgICB0aGlzLmZvcm0ubWFya0FzVW50b3VjaGVkKG9wdHMpO1xuICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gZmFsc2UpIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcHJlZmVyIHRvIHVzZSBtYXJrQWxsQXNUb3VjaGVkKClcbiAgICogQHBhcmFtIG9wdHNcbiAgICovXG4gIG1hcmtBc1RvdWNoZWQob3B0cz86IHtvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW47fSkge1xuICAgIC8vIHRoaXMuZm9ybS5tYXJrQWxsQXNUb3VjaGVkKCkgLy8gVGhpcyBpcyBub3Qgd29ya2luZyB3ZWxsIChlLmcuIGluIFRyaXBGb3JtKVxuICAgIGNvbnNvbGUud2FybignVE9ETzogUmVwbGFjZSB0aGlzIGNhbGwgYnkgbWFya0FsbEFzVG91Y2hlZCgpIC0gYmVjYXVzZSBvZiBjaGFuZ2VzIGluIG5neC1jb21wb25lbnRzID49IDAuMTYuMCcpO1xuICAgIEFwcEZvcm1VdGlscy5tYXJrQXNUb3VjaGVkKHRoaXMuZm9ybSwgb3B0cyk7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSBmYWxzZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG1hcmtBbGxBc1RvdWNoZWQob3B0cz86IHsgZW1pdEV2ZW50PzogYm9vbGVhbiB9KSB7XG4gICAgLy8gdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKSAvLyBUaGlzIGlzIG5vdCB3b3JraW5nIHdlbGwgKGUuZy4gaW4gVHJpcEZvcm0pXG4gICAgQXBwRm9ybVV0aWxzLm1hcmtBbGxBc1RvdWNoZWQodGhpcy5mb3JtLCBvcHRzKTtcbiAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IGZhbHNlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgbWFya0FzRGlydHkob3B0cz86IHtvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW47fSkge1xuICAgIHRoaXMuZm9ybS5tYXJrQXNEaXJ0eShvcHRzKTtcbiAgICBpZiAoIW9wdHMgfHwgb3B0cy5lbWl0RXZlbnQgIT09IGZhbHNlKSB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgbWFya0FzTG9hZGluZyhvcHRzPzoge29ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbjt9KSB7XG4gICAgaWYgKCF0aGlzLl9sb2FkaW5nKSB7XG4gICAgICB0aGlzLl9sb2FkaW5nID0gdHJ1ZTtcbiAgICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCAhPT0gZmFsc2UpIHRoaXMubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgbWFya0FzTG9hZGVkKG9wdHM/OiB7b25seVNlbGY/OiBib29sZWFuOyBlbWl0RXZlbnQ/OiBib29sZWFuO30pIHtcbiAgICBpZiAodGhpcy5fbG9hZGluZykge1xuICAgICAgdGhpcy5fbG9hZGluZyA9IGZhbHNlO1xuICAgICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSBmYWxzZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBtYXJrQXNSZWFkeShvcHRzPzoge29ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbjt9KSB7XG4gICAgaWYgKHRoaXMuXyRyZWFkeS52YWx1ZSAhPT0gdHJ1ZSkge1xuICAgICAgdGhpcy5fJHJlYWR5Lm5leHQodHJ1ZSk7XG5cbiAgICAgIC8vIElmIHN1YmNsYXNzZXMgaW1wbGVtZW50cyBPblJlYWR5XG4gICAgICBpZiAodHlwZW9mIHRoaXNbJ25nT25SZWFkeSddID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICh0aGlzIGFzIGFueSBhcyBPblJlYWR5KS5uZ09uUmVhZHkoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogV2FpdCBmb3JtIGlzIHJlYWR5XG4gICAqIEBwYXJhbSBvcHRzXG4gICAqL1xuICBhc3luYyByZWFkeShvcHRzPzogV2FpdEZvck9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBmaXJzdFRydWVQcm9taXNlKHRoaXMuXyRyZWFkeSk7XG4gIH1cblxuICAvKipcbiAgICogV2FpdCBmb3JtIGlzIGlkbGUgKG5vdCBsb2FkaW5nKVxuICAgKiBAcGFyYW0gb3B0c1xuICAgKi9cbiAgYXN5bmMgd2FpdElkbGUob3B0cz86IFdhaXRGb3JPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIEFwcEZvcm1VdGlscy53YWl0SWRsZSh0aGlzLCBvcHRzKTtcbiAgfVxuXG4gIHVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkob3B0cz86IHtcbiAgICBvbmx5U2VsZj86IGJvb2xlYW47XG4gICAgZW1pdEV2ZW50PzogYm9vbGVhbjtcbiAgfSkge1xuICAgIEFwcEZvcm1VdGlscy51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHRoaXMuZm9ybSwgb3B0cyk7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50ICE9PSBmYWxzZSkgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHRyYW5zbGF0ZUNvbnRyb2xQYXRoKHBhdGg6IHN0cmluZykge1xuICAgIGNvbnN0IGkxOG5GaWVsZE5hbWUgPSB0aGlzLmdldEkxOG5GaWVsZE5hbWUocGF0aCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlPy5pbnN0YW50KGkxOG5GaWVsZE5hbWUpIHx8IGkxOG5GaWVsZE5hbWU7XG4gIH1cblxuICAvKiAtLSBwcm90ZWN0ZWQgbWV0aG9kcyAtLSAqL1xuXG4gIHByb3RlY3RlZCBnZXRGb3JtRXJyb3IoZm9ybTogRm9ybUdyb3VwLCBvcHRzPzogRm9ybUVycm9yVHJhbnNsYXRvck9wdGlvbnMpOiBzdHJpbmcge1xuICAgIGlmICghZm9ybSB8fCAhdGhpcy5lcnJvclRyYW5zbGF0b3IpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3JUcmFuc2xhdG9yLnRyYW5zbGF0ZUVycm9ycyh0aGlzLmZvcm0sIHtcbiAgICAgIGNvbnRyb2xQYXRoVHJhbnNsYXRvcjogdGhpcyxcbiAgICAgIC4uLm9wdHNcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRJMThuRmllbGROYW1lKHBhdGg6IHN0cmluZykge1xuICAgIHJldHVybiAodGhpcy5pMThuRmllbGRQcmVmaXggfHwgJycpICsgY2hhbmdlQ2FzZVRvVW5kZXJzY29yZShwYXRoKS50b1VwcGVyQ2FzZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlZ2lzdGVyU3Vic2NyaXB0aW9uKHN1YjogU3Vic2NyaXB0aW9uKTogU3Vic2NyaXB0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fc3Vic2NyaXB0aW9uLmFkZChzdWIpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlZ2lzdGVyQXV0b2NvbXBsZXRlRmllbGQ8VCA9IGFueSwgRiA9IGFueT4oZmllbGROYW1lOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdHM/OiBNYXRBdXRvY29tcGxldGVGaWVsZEFkZE9wdGlvbnM8VCwgRj4pOiBNYXRBdXRvY29tcGxldGVGaWVsZENvbmZpZzxULCBGPiB7XG4gICAgcmV0dXJuIHRoaXMuYXV0b2NvbXBsZXRlSGVscGVyLmFkZChmaWVsZE5hbWUsIG9wdHMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG1hcmtGb3JDaGVjaygpIHtcbiAgICAvLyBTaG91bGQgYmUgb3ZlcndyaXR0ZW4gYnkgc3ViY2xhc3Nlc1xuICAgIGNvbnNvbGUud2FybignbWFya0ZvckNoZWNrKCkgaGFzIGJlZW4gY2FsbGVkLCBidXQgaXMgbm90IG92ZXJ3cml0dGVuIGJ5IGNvbXBvbmVudCAnICsgdGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcbiAgfVxufVxuIl19
@@ -1,17 +1,41 @@
1
- import { Injectable, Pipe } from '@angular/core';
1
+ import { ChangeDetectorRef, Injectable, Pipe } from '@angular/core';
2
2
  import { TranslateContextService } from '../services/translate-context.service';
3
3
  import { changeCaseToUnderscore } from '../functions';
4
+ import { equals } from '@ngx-translate/core/lib/util';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "../services/translate-context.service";
6
7
  export class TranslateContextPipe {
7
- constructor(translateContext) {
8
- this.translateContext = translateContext;
8
+ constructor(translate, _ref) {
9
+ this.translate = translate;
10
+ this._ref = _ref;
11
+ this.value = '';
12
+ this.lastKey = null;
13
+ this.lastSuffix = null;
14
+ this.lastParams = [];
9
15
  }
10
- transform(key, context) {
11
- return this.translateContext.instant(key, context);
16
+ transform(query, ...params) {
17
+ if (!query || !query.length) {
18
+ return query;
19
+ }
20
+ const suffix = (params === null || params === void 0 ? void 0 : params.length) > 1 ? params.shift() : '';
21
+ // if we ask another time for the same key, return the last value
22
+ if (equals(query, this.lastKey)
23
+ && equals(suffix, this.lastSuffix)
24
+ && equals(params, this.lastParams)) {
25
+ return this.value;
26
+ }
27
+ // store the query, in case it changes
28
+ this.lastKey = query;
29
+ // store the params, in case they change
30
+ this.lastParams = params;
31
+ // store the params, in case they change
32
+ this.lastSuffix = suffix;
33
+ // set the value
34
+ this.value = this.translate.instant(query, suffix, params);
35
+ return this.value;
12
36
  }
13
37
  }
14
- TranslateContextPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextPipe_Factory() { return new TranslateContextPipe(i0.ɵɵinject(i1.TranslateContextService)); }, token: TranslateContextPipe, providedIn: "root" });
38
+ TranslateContextPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextPipe_Factory() { return new TranslateContextPipe(i0.ɵɵinject(i1.TranslateContextService), i0.ɵɵinject(i0.ChangeDetectorRef)); }, token: TranslateContextPipe, providedIn: "root" });
15
39
  TranslateContextPipe.decorators = [
16
40
  { type: Pipe, args: [{
17
41
  name: 'translateContext'
@@ -19,7 +43,8 @@ TranslateContextPipe.decorators = [
19
43
  { type: Injectable, args: [{ providedIn: 'root' },] }
20
44
  ];
21
45
  TranslateContextPipe.ctorParameters = () => [
22
- { type: TranslateContextService }
46
+ { type: TranslateContextService },
47
+ { type: ChangeDetectorRef }
23
48
  ];
24
49
  export class TranslatablePipe {
25
50
  transform(value) {
@@ -35,4 +60,4 @@ TranslatablePipe.decorators = [
35
60
  },] },
36
61
  { type: Injectable, args: [{ providedIn: 'root' },] }
37
62
  ];
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWNvbnRleHQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL3RyYW5zbGF0ZS1jb250ZXh0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxzQkFBc0IsRUFBZSxNQUFNLGNBQWMsQ0FBQzs7O0FBTWxFLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsWUFDWSxnQkFBeUM7UUFBekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtJQUVyRCxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVcsRUFBRSxPQUFnQjtRQUNyQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JELENBQUM7Ozs7WUFiRixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGtCQUFrQjthQUMzQjtZQUNBLFVBQVUsU0FBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OztZQU54Qix1QkFBdUI7O0FBd0IvQixNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFNBQVMsQ0FBQyxLQUFhOztRQUNyQiw2RkFBNkY7UUFDN0YsYUFBTyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsMENBQUUsV0FBVyxHQUFHO0lBQ3RELENBQUM7Ozs7WUFSRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLGNBQWM7YUFDckI7WUFDQSxVQUFVLFNBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlQ29udGV4dFNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2VzL3RyYW5zbGF0ZS1jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHtjaGFuZ2VDYXNlVG9VbmRlcnNjb3JlLCBpc05pbE9yQmxhbmt9IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAndHJhbnNsYXRlQ29udGV4dCdcbn0pXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVDb250ZXh0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCB0cmFuc2xhdGVDb250ZXh0OiBUcmFuc2xhdGVDb250ZXh0U2VydmljZVxuICApIHtcbiAgfVxuXG4gIHRyYW5zZm9ybShrZXk6IHN0cmluZywgY29udGV4dD86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlQ29udGV4dC5pbnN0YW50KGtleSwgY29udGV4dCk7XG4gIH1cbn1cblxuXG5AUGlwZSh7XG4gIG5hbWU6ICd0cmFuc2xhdGFibGUnXG59KVxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRhYmxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgLy8gdHJhbnNmb3JtIGEgc3RyaW5nIHRvIGEgaTE4biBjb21wYXRpYmxlIHN0cmluZyAoZXg6IFF1YWxpdGF0aXZlVmFsdWUgLT4gUVVBTElUQVRJVkVfVkFMVUUpXG4gICAgcmV0dXJuIGNoYW5nZUNhc2VUb1VuZGVyc2NvcmUodmFsdWUpPy50b1VwcGVyQ2FzZSgpO1xuICB9XG59XG5cbiJdfQ==
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWNvbnRleHQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL3RyYW5zbGF0ZS1jb250ZXh0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2pGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUNwRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7OztBQU1wRCxNQUFNLE9BQU8sb0JBQW9CO0lBTy9CLFlBQ1UsU0FBa0MsRUFBVSxJQUF1QjtRQUFuRSxjQUFTLEdBQVQsU0FBUyxDQUF5QjtRQUFVLFNBQUksR0FBSixJQUFJLENBQW1CO1FBTjdFLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsWUFBTyxHQUFrQixJQUFJLENBQUM7UUFDOUIsZUFBVSxHQUFrQixJQUFJLENBQUM7UUFDakMsZUFBVSxHQUFVLEVBQUUsQ0FBQztJQUt2QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWEsRUFBRSxHQUFHLE1BQWE7UUFDdkMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDM0IsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE1BQU0sTUFBTSxHQUFHLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE1BQU0sSUFBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRXhELGlFQUFpRTtRQUNqRSxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztlQUN4QixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7ZUFDL0IsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ25CO1FBQ0Qsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXJCLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUV6Qix3Q0FBd0M7UUFDeEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7UUFFekIsZ0JBQWdCO1FBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUzRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs7OztZQTFDRixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGtCQUFrQjthQUMzQjtZQUNBLFVBQVUsU0FBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OztZQVB4Qix1QkFBdUI7WUFEdkIsaUJBQWlCOztBQXlEekIsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixTQUFTLENBQUMsS0FBYTs7UUFDckIsNkZBQTZGO1FBQzdGLGFBQU8sc0JBQXNCLENBQUMsS0FBSyxDQUFDLDBDQUFFLFdBQVcsR0FBRztJQUN0RCxDQUFDOzs7O1lBUkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxjQUFjO2FBQ3JCO1lBQ0EsVUFBVSxTQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVDb250ZXh0U2VydmljZX0gZnJvbSAnLi4vc2VydmljZXMvdHJhbnNsYXRlLWNvbnRleHQuc2VydmljZSc7XG5pbXBvcnQge2NoYW5nZUNhc2VUb1VuZGVyc2NvcmV9IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5pbXBvcnQge2VxdWFsc30gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZS9saWIvdXRpbCc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAndHJhbnNsYXRlQ29udGV4dCdcbn0pXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVDb250ZXh0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHZhbHVlOiBzdHJpbmcgPSAnJztcbiAgbGFzdEtleTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIGxhc3RTdWZmaXg6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBsYXN0UGFyYW1zOiBhbnlbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVDb250ZXh0U2VydmljZSwgcHJpdmF0ZSBfcmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgfVxuXG4gIHRyYW5zZm9ybShxdWVyeTogc3RyaW5nLCAuLi5wYXJhbXM6IGFueVtdKTogc3RyaW5nIHtcbiAgICBpZiAoIXF1ZXJ5IHx8ICFxdWVyeS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBxdWVyeTtcbiAgICB9XG5cbiAgICBjb25zdCBzdWZmaXggPSBwYXJhbXM/Lmxlbmd0aCA+IDEgPyBwYXJhbXMuc2hpZnQoKSA6ICcnO1xuXG4gICAgLy8gaWYgd2UgYXNrIGFub3RoZXIgdGltZSBmb3IgdGhlIHNhbWUga2V5LCByZXR1cm4gdGhlIGxhc3QgdmFsdWVcbiAgICBpZiAoZXF1YWxzKHF1ZXJ5LCB0aGlzLmxhc3RLZXkpXG4gICAgICAgICYmIGVxdWFscyhzdWZmaXgsIHRoaXMubGFzdFN1ZmZpeClcbiAgICAgICAgJiYgZXF1YWxzKHBhcmFtcywgdGhpcy5sYXN0UGFyYW1zKSkge1xuICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gICAgfVxuICAgIC8vIHN0b3JlIHRoZSBxdWVyeSwgaW4gY2FzZSBpdCBjaGFuZ2VzXG4gICAgdGhpcy5sYXN0S2V5ID0gcXVlcnk7XG5cbiAgICAvLyBzdG9yZSB0aGUgcGFyYW1zLCBpbiBjYXNlIHRoZXkgY2hhbmdlXG4gICAgdGhpcy5sYXN0UGFyYW1zID0gcGFyYW1zO1xuXG4gICAgLy8gc3RvcmUgdGhlIHBhcmFtcywgaW4gY2FzZSB0aGV5IGNoYW5nZVxuICAgIHRoaXMubGFzdFN1ZmZpeCA9IHN1ZmZpeDtcblxuICAgIC8vIHNldCB0aGUgdmFsdWVcbiAgICB0aGlzLnZhbHVlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChxdWVyeSwgc3VmZml4LCBwYXJhbXMpO1xuXG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cblxuXG59XG5cblxuQFBpcGUoe1xuICBuYW1lOiAndHJhbnNsYXRhYmxlJ1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0YWJsZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIC8vIHRyYW5zZm9ybSBhIHN0cmluZyB0byBhIGkxOG4gY29tcGF0aWJsZSBzdHJpbmcgKGV4OiBRdWFsaXRhdGl2ZVZhbHVlIC0+IFFVQUxJVEFUSVZFX1ZBTFVFKVxuICAgIHJldHVybiBjaGFuZ2VDYXNlVG9VbmRlcnNjb3JlKHZhbHVlKT8udG9VcHBlckNhc2UoKTtcbiAgfVxufVxuXG4iXX0=
@@ -3,15 +3,18 @@ import { TranslateService } from '@ngx-translate/core';
3
3
  import { mergeMap } from 'rxjs/operators';
4
4
  import { of } from 'rxjs';
5
5
  import { isNilOrBlank } from '../functions';
6
+ import { isDefined } from '@ngx-translate/core/lib/util';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@ngx-translate/core";
8
9
  export class TranslateContextService {
9
10
  constructor(translate) {
10
11
  this.translate = translate;
11
12
  }
13
+ getParsedResult(translations, key, interpolateParams) {
14
+ }
12
15
  get(key, context, interpolateParams) {
13
16
  // No context: do a normal translate
14
- if (isNilOrBlank(context))
17
+ if (!isDefined(context))
15
18
  return this.translate.get(key, interpolateParams);
16
19
  // Compute a contextual i18n key, using the context as suffix
17
20
  const contextKey = this.contextualKey(key, context);
@@ -55,4 +58,4 @@ TranslateContextService.decorators = [
55
58
  TranslateContextService.ctorParameters = () => [
56
59
  { type: TranslateService }
57
60
  ];
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWNvbnRleHQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzL3RyYW5zbGF0ZS1jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxFQUFDLEVBQUUsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sY0FBYyxDQUFDOzs7QUFJMUMsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQyxZQUNZLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBRXZDLENBQUM7SUFFRCxHQUFHLENBQUMsR0FBVyxFQUFFLE9BQWdCLEVBQUUsaUJBQTBCO1FBQzNELG9DQUFvQztRQUNwQyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBRTdFLDZEQUE2RDtRQUM3RCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCw4REFBOEQ7UUFDOUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLENBQUM7YUFDckQsSUFBSSxDQUNILFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ2xHLENBQUM7SUFDTixDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQVcsRUFBRSxPQUFnQixFQUFFLGlCQUEwQjtRQUMvRCxvQ0FBb0M7UUFDcEMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUVqRiw2REFBNkQ7UUFDN0QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFdkQsOERBQThEO1FBQzlELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzdFLE9BQU8sQ0FBQyxXQUFXLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILGFBQWEsQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUV4QyxxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDMUIsT0FBTyxHQUFHLE9BQU8sR0FBRyxHQUFHLENBQUM7U0FDekI7UUFFRCw2REFBNkQ7UUFDN0QsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QixPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7WUFDekIsQ0FBQyxDQUFDLEdBQUcsT0FBTyxHQUFHLEdBQUcsRUFBRTtZQUNwQixDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNGLENBQUM7Ozs7WUFyREYsVUFBVSxTQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7O1lBTnhCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHttZXJnZU1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtvZiwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2lzTmlsT3JCbGFua30gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVDb250ZXh0U2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZVxuICApIHtcbiAgfVxuXG4gIGdldChrZXk6IHN0cmluZywgY29udGV4dD86IHN0cmluZywgaW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIC8vIE5vIGNvbnRleHQ6IGRvIGEgbm9ybWFsIHRyYW5zbGF0ZVxuICAgIGlmIChpc05pbE9yQmxhbmsoY29udGV4dCkpIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5nZXQoa2V5LCBpbnRlcnBvbGF0ZVBhcmFtcyk7XG5cbiAgICAvLyBDb21wdXRlIGEgY29udGV4dHVhbCBpMThuIGtleSwgdXNpbmcgdGhlIGNvbnRleHQgYXMgc3VmZml4XG4gICAgY29uc3QgY29udGV4dEtleSA9IHRoaXMuY29udGV4dHVhbEtleShrZXksIGNvbnRleHQpO1xuXG4gICAgLy8gUmV0dXJuIHRoZSBjb250ZXh0dWFsIHRyYW5zbGF0aW9uLCBvciBkZWZhdWx0IG9mIG5vdCBleGlzdHNcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuZ2V0KGNvbnRleHRLZXksIGludGVycG9sYXRlUGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKHRyYW5zbGF0aW9uID0+ICh0cmFuc2xhdGlvbiAhPT0gY29udGV4dEtleSkgPyBvZih0cmFuc2xhdGlvbikgOiB0aGlzLnRyYW5zbGF0ZS5nZXQoa2V5KSlcbiAgICAgICk7XG4gIH1cblxuICBpbnN0YW50KGtleTogc3RyaW5nLCBjb250ZXh0Pzogc3RyaW5nLCBpbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCk6IGFueSB7XG4gICAgLy8gTm8gY29udGV4dDogZG8gYSBub3JtYWwgdHJhbnNsYXRlXG4gICAgaWYgKGlzTmlsT3JCbGFuayhjb250ZXh0KSkgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoa2V5LCBpbnRlcnBvbGF0ZVBhcmFtcyk7XG5cbiAgICAvLyBDb21wdXRlIGEgY29udGV4dHVhbCBpMThuIGtleSwgdXNpbmcgdGhlIGNvbnRleHQgYXMgc3VmZml4XG4gICAgY29uc3QgY29udGV4dHVhbEtleSA9IHRoaXMuY29udGV4dHVhbEtleShrZXksIGNvbnRleHQpO1xuXG4gICAgLy8gUmV0dXJuIHRoZSBjb250ZXh0dWFsIHRyYW5zbGF0aW9uLCBvciBkZWZhdWx0IG9mIG5vdCBleGlzdHNcbiAgICBjb25zdCB0cmFuc2xhdGlvbiA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoY29udGV4dHVhbEtleSwgaW50ZXJwb2xhdGVQYXJhbXMpO1xuICAgIHJldHVybiAodHJhbnNsYXRpb24gIT09IGNvbnRleHR1YWxLZXkpID8gdHJhbnNsYXRpb24gOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGtleSwgaW50ZXJwb2xhdGVQYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGUgYSBjb250ZXh0dWFsIGkxOG4ga2V5LCB1c2luZyB0aGUgY29udGV4dCBhcyBzdWZmaXhcbiAgICpcbiAgICogQHBhcmFtIGtleVxuICAgKiBAcGFyYW0gY29udGV4dFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgY29udGV4dHVhbEtleShrZXk6IHN0cmluZywgY29udGV4dDogc3RyaW5nKSB7XG5cbiAgICAvLyBBcHBlbmQgYSBkb3Qgb24gY29udGV4dCBpZiBtaXNzaW5nXG4gICAgaWYgKCFjb250ZXh0LmVuZHNXaXRoKCcuJykpIHtcbiAgICAgIGNvbnRleHQgPSBjb250ZXh0ICsgJy4nO1xuICAgIH1cblxuICAgIC8vIENvbXB1dGUgYSBjb250ZXh0dWFsIGkxOG4ga2V5LCB1c2luZyB0aGUgY29udGV4dCBhcyBzdWZmaXhcbiAgICBjb25zdCBwYXJ0cyA9IGtleS5zcGxpdCgnLicpO1xuICAgIHJldHVybiAocGFydHMubGVuZ3RoID09PSAxKVxuICAgICAgPyBgJHtjb250ZXh0fSR7a2V5fWBcbiAgICAgIDogcGFydHMuc2xpY2UoMCwgcGFydHMubGVuZ3RoIC0gMSkuY29uY2F0KGNvbnRleHQgKyBwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXSkuam9pbignLicpO1xuICB9XG59XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWNvbnRleHQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzL3RyYW5zbGF0ZS1jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsUUFBUSxFQUFZLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFDLEVBQUUsRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBSXZELE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsWUFDWSxTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtJQUV2QyxDQUFDO0lBRUQsZUFBZSxDQUFDLFlBQWlCLEVBQUUsR0FBUSxFQUFFLGlCQUEwQjtJQUV2RSxDQUFDO0lBRUQsR0FBRyxDQUFDLEdBQVcsRUFBRSxPQUFnQixFQUFFLGlCQUEwQjtRQUMzRCxvQ0FBb0M7UUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBRTNFLDZEQUE2RDtRQUM3RCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCw4REFBOEQ7UUFDOUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLENBQUM7YUFDckQsSUFBSSxDQUNILFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ2xHLENBQUM7SUFDTixDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQVcsRUFBRSxPQUFnQixFQUFFLGlCQUEwQjtRQUMvRCxvQ0FBb0M7UUFDcEMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUVqRiw2REFBNkQ7UUFDN0QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFdkQsOERBQThEO1FBQzlELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzdFLE9BQU8sQ0FBQyxXQUFXLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILGFBQWEsQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUV4QyxxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDMUIsT0FBTyxHQUFHLE9BQU8sR0FBRyxHQUFHLENBQUM7U0FDekI7UUFFRCw2REFBNkQ7UUFDN0QsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QixPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7WUFDekIsQ0FBQyxDQUFDLEdBQUcsT0FBTyxHQUFHLEdBQUcsRUFBRTtZQUNwQixDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNGLENBQUM7Ozs7WUF6REYsVUFBVSxTQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7O1lBUHhCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHttZXJnZU1hcCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge29mLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7aXNOaWxPckJsYW5rfSBmcm9tICcuLi9mdW5jdGlvbnMnO1xuaW1wb3J0IHtpc0RlZmluZWR9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUvbGliL3V0aWwnO1xuXG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZUNvbnRleHRTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgZ2V0UGFyc2VkUmVzdWx0KHRyYW5zbGF0aW9uczogYW55LCBrZXk6IGFueSwgaW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QpOiBhbnkge1xuXG4gIH1cblxuICBnZXQoa2V5OiBzdHJpbmcsIGNvbnRleHQ/OiBzdHJpbmcsIGludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAvLyBObyBjb250ZXh0OiBkbyBhIG5vcm1hbCB0cmFuc2xhdGVcbiAgICBpZiAoIWlzRGVmaW5lZChjb250ZXh0KSkgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmdldChrZXksIGludGVycG9sYXRlUGFyYW1zKTtcblxuICAgIC8vIENvbXB1dGUgYSBjb250ZXh0dWFsIGkxOG4ga2V5LCB1c2luZyB0aGUgY29udGV4dCBhcyBzdWZmaXhcbiAgICBjb25zdCBjb250ZXh0S2V5ID0gdGhpcy5jb250ZXh0dWFsS2V5KGtleSwgY29udGV4dCk7XG5cbiAgICAvLyBSZXR1cm4gdGhlIGNvbnRleHR1YWwgdHJhbnNsYXRpb24sIG9yIGRlZmF1bHQgb2Ygbm90IGV4aXN0c1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5nZXQoY29udGV4dEtleSwgaW50ZXJwb2xhdGVQYXJhbXMpXG4gICAgICAucGlwZShcbiAgICAgICAgbWVyZ2VNYXAodHJhbnNsYXRpb24gPT4gKHRyYW5zbGF0aW9uICE9PSBjb250ZXh0S2V5KSA/IG9mKHRyYW5zbGF0aW9uKSA6IHRoaXMudHJhbnNsYXRlLmdldChrZXkpKVxuICAgICAgKTtcbiAgfVxuXG4gIGluc3RhbnQoa2V5OiBzdHJpbmcsIGNvbnRleHQ/OiBzdHJpbmcsIGludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0KTogYW55IHtcbiAgICAvLyBObyBjb250ZXh0OiBkbyBhIG5vcm1hbCB0cmFuc2xhdGVcbiAgICBpZiAoaXNOaWxPckJsYW5rKGNvbnRleHQpKSByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChrZXksIGludGVycG9sYXRlUGFyYW1zKTtcblxuICAgIC8vIENvbXB1dGUgYSBjb250ZXh0dWFsIGkxOG4ga2V5LCB1c2luZyB0aGUgY29udGV4dCBhcyBzdWZmaXhcbiAgICBjb25zdCBjb250ZXh0dWFsS2V5ID0gdGhpcy5jb250ZXh0dWFsS2V5KGtleSwgY29udGV4dCk7XG5cbiAgICAvLyBSZXR1cm4gdGhlIGNvbnRleHR1YWwgdHJhbnNsYXRpb24sIG9yIGRlZmF1bHQgb2Ygbm90IGV4aXN0c1xuICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChjb250ZXh0dWFsS2V5LCBpbnRlcnBvbGF0ZVBhcmFtcyk7XG4gICAgcmV0dXJuICh0cmFuc2xhdGlvbiAhPT0gY29udGV4dHVhbEtleSkgPyB0cmFuc2xhdGlvbiA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoa2V5LCBpbnRlcnBvbGF0ZVBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcHV0ZSBhIGNvbnRleHR1YWwgaTE4biBrZXksIHVzaW5nIHRoZSBjb250ZXh0IGFzIHN1ZmZpeFxuICAgKlxuICAgKiBAcGFyYW0ga2V5XG4gICAqIEBwYXJhbSBjb250ZXh0XG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBjb250ZXh0dWFsS2V5KGtleTogc3RyaW5nLCBjb250ZXh0OiBzdHJpbmcpIHtcblxuICAgIC8vIEFwcGVuZCBhIGRvdCBvbiBjb250ZXh0IGlmIG1pc3NpbmdcbiAgICBpZiAoIWNvbnRleHQuZW5kc1dpdGgoJy4nKSkge1xuICAgICAgY29udGV4dCA9IGNvbnRleHQgKyAnLic7XG4gICAgfVxuXG4gICAgLy8gQ29tcHV0ZSBhIGNvbnRleHR1YWwgaTE4biBrZXksIHVzaW5nIHRoZSBjb250ZXh0IGFzIHN1ZmZpeFxuICAgIGNvbnN0IHBhcnRzID0ga2V5LnNwbGl0KCcuJyk7XG4gICAgcmV0dXJuIChwYXJ0cy5sZW5ndGggPT09IDEpXG4gICAgICA/IGAke2NvbnRleHR9JHtrZXl9YFxuICAgICAgOiBwYXJ0cy5zbGljZSgwLCBwYXJ0cy5sZW5ndGggLSAxKS5jb25jYXQoY29udGV4dCArIHBhcnRzW3BhcnRzLmxlbmd0aCAtIDFdKS5qb2luKCcuJyk7XG4gIH1cbn1cbiJdfQ==
@@ -46,6 +46,7 @@ import * as momentImported from 'moment';
46
46
  import { isMoment } from 'moment';
47
47
  import * as i1 from '@angular/material-moment-adapter';
48
48
  import { MomentDateAdapter, MatMomentDateModule } from '@angular/material-moment-adapter';
49
+ import { isDefined, equals } from '@ngx-translate/core/lib/util';
49
50
  import { Keyboard } from '@ionic-native/keyboard/ngx';
50
51
  import { TextMaskModule } from 'angular2-text-mask';
51
52
  import { NgxMaterialTimepickerModule } from 'ngx-material-timepicker';
@@ -2375,9 +2376,11 @@ class TranslateContextService {
2375
2376
  constructor(translate) {
2376
2377
  this.translate = translate;
2377
2378
  }
2379
+ getParsedResult(translations, key, interpolateParams) {
2380
+ }
2378
2381
  get(key, context, interpolateParams) {
2379
2382
  // No context: do a normal translate
2380
- if (isNilOrBlank(context))
2383
+ if (!isDefined(context))
2381
2384
  return this.translate.get(key, interpolateParams);
2382
2385
  // Compute a contextual i18n key, using the context as suffix
2383
2386
  const contextKey = this.contextualKey(key, context);
@@ -2423,14 +2426,37 @@ TranslateContextService.ctorParameters = () => [
2423
2426
  ];
2424
2427
 
2425
2428
  class TranslateContextPipe {
2426
- constructor(translateContext) {
2427
- this.translateContext = translateContext;
2428
- }
2429
- transform(key, context) {
2430
- return this.translateContext.instant(key, context);
2431
- }
2432
- }
2433
- TranslateContextPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextPipe_Factory() { return new TranslateContextPipe(i0.ɵɵinject(TranslateContextService)); }, token: TranslateContextPipe, providedIn: "root" });
2429
+ constructor(translate, _ref) {
2430
+ this.translate = translate;
2431
+ this._ref = _ref;
2432
+ this.value = '';
2433
+ this.lastKey = null;
2434
+ this.lastSuffix = null;
2435
+ this.lastParams = [];
2436
+ }
2437
+ transform(query, ...params) {
2438
+ if (!query || !query.length) {
2439
+ return query;
2440
+ }
2441
+ const suffix = (params === null || params === void 0 ? void 0 : params.length) > 1 ? params.shift() : '';
2442
+ // if we ask another time for the same key, return the last value
2443
+ if (equals(query, this.lastKey)
2444
+ && equals(suffix, this.lastSuffix)
2445
+ && equals(params, this.lastParams)) {
2446
+ return this.value;
2447
+ }
2448
+ // store the query, in case it changes
2449
+ this.lastKey = query;
2450
+ // store the params, in case they change
2451
+ this.lastParams = params;
2452
+ // store the params, in case they change
2453
+ this.lastSuffix = suffix;
2454
+ // set the value
2455
+ this.value = this.translate.instant(query, suffix, params);
2456
+ return this.value;
2457
+ }
2458
+ }
2459
+ TranslateContextPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function TranslateContextPipe_Factory() { return new TranslateContextPipe(i0.ɵɵinject(TranslateContextService), i0.ɵɵinject(i0.ChangeDetectorRef)); }, token: TranslateContextPipe, providedIn: "root" });
2434
2460
  TranslateContextPipe.decorators = [
2435
2461
  { type: Pipe, args: [{
2436
2462
  name: 'translateContext'
@@ -2438,7 +2464,8 @@ TranslateContextPipe.decorators = [
2438
2464
  { type: Injectable, args: [{ providedIn: 'root' },] }
2439
2465
  ];
2440
2466
  TranslateContextPipe.ctorParameters = () => [
2441
- { type: TranslateContextService }
2467
+ { type: TranslateContextService },
2468
+ { type: ChangeDetectorRef }
2442
2469
  ];
2443
2470
  class TranslatablePipe {
2444
2471
  transform(value) {
@@ -16756,7 +16783,7 @@ class AppForm {
16756
16783
  }
16757
16784
  }
16758
16785
  markAsReady(opts) {
16759
- if (!this._$ready.value) {
16786
+ if (this._$ready.value !== true) {
16760
16787
  this._$ready.next(true);
16761
16788
  // If subclasses implements OnReady
16762
16789
  if (typeof this['ngOnReady'] === 'function') {