@veloceapps/sdk 8.0.0-166 → 8.0.0-168

Sign up to get free protection for your applications and to get access to all the features.
Files changed (28) hide show
  1. package/esm2020/cms/components/element-renderer/element-renderer.component.mjs +3 -3
  2. package/esm2020/cms/modules/migrations/migrations.mjs +2 -2
  3. package/esm2020/cms/modules/migrations/services/migrations.service.mjs +6 -2
  4. package/esm2020/cms/modules/runtime/services/compilation.service.mjs +3 -3
  5. package/esm2020/cms/plugins/configuration.plugin.mjs +8 -4
  6. package/esm2020/cms/services/io-provider.service.mjs +10 -9
  7. package/esm2020/cms/services/templates.service.mjs +10 -9
  8. package/esm2020/cms/utils/path.utils.mjs +3 -3
  9. package/esm2020/core/modules/configuration/services/configuration-state.service.mjs +7 -8
  10. package/esm2020/core/services/flow-state.service.mjs +8 -6
  11. package/esm2020/core/services/product-images.service.mjs +2 -2
  12. package/esm2020/core/utils/line-item.utils.mjs +2 -2
  13. package/esm2020/src/components/doc-gen/doc-gen.component.mjs +13 -8
  14. package/esm2020/src/pages/remote/remote.component.mjs +8 -7
  15. package/esm2020/src/services/flow-dialog.service.mjs +2 -2
  16. package/fesm2015/veloceapps-sdk-cms.mjs +38 -26
  17. package/fesm2015/veloceapps-sdk-cms.mjs.map +1 -1
  18. package/fesm2015/veloceapps-sdk-core.mjs +18 -14
  19. package/fesm2015/veloceapps-sdk-core.mjs.map +1 -1
  20. package/fesm2015/veloceapps-sdk.mjs +24 -19
  21. package/fesm2015/veloceapps-sdk.mjs.map +1 -1
  22. package/fesm2020/veloceapps-sdk-cms.mjs +34 -24
  23. package/fesm2020/veloceapps-sdk-cms.mjs.map +1 -1
  24. package/fesm2020/veloceapps-sdk-core.mjs +15 -14
  25. package/fesm2020/veloceapps-sdk-core.mjs.map +1 -1
  26. package/fesm2020/veloceapps-sdk.mjs +20 -14
  27. package/fesm2020/veloceapps-sdk.mjs.map +1 -1
  28. package/package.json +1 -1
@@ -88,7 +88,7 @@ export class ElementRendererComponent {
88
88
  if (!model) {
89
89
  return [];
90
90
  }
91
- if (property === 'ports' && !finalPath.property && parentPath !== path) {
91
+ if (property === 'ports' && !finalPath?.property && parentPath !== path) {
92
92
  return model.lineItems.filter(({ port }) => port === name) ?? [];
93
93
  }
94
94
  return [model];
@@ -98,7 +98,7 @@ export class ElementRendererComponent {
98
98
  });
99
99
  }
100
100
  processChildren(children) {
101
- this.runtimeService.moduleRefs[0].injector.runInContext(() => {
101
+ this.runtimeService.moduleRefs[0]?.injector.runInContext(() => {
102
102
  const refs = children.reduce((acc, data, index) => {
103
103
  const key = String(data?.id ?? UUID.UUID());
104
104
  const existingRef = this.refs[key];
@@ -170,4 +170,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
170
170
  }], meta: [{
171
171
  type: Input
172
172
  }] } });
173
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCxVQUFVLEVBQ1YsUUFBUSxFQUNSLEtBQUssRUFHTCxRQUFRLEVBRVIsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFjLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkQsT0FBTyxFQUFjLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVN4RCxNQUFNLE9BQU8sd0JBQXdCO0lBU25DLFlBQ3NCLGNBQXdCLEVBQ3BDLGNBQThC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bkMzQyxtQ0FDQTsyRkRpQ2Esd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLHlCQUF5QixtQkFHbEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLHFCQUFxQixDQUFDOzswQkFZL0IsUUFBUTt5T0FUdUQsRUFBRTtzQkFBbkUsU0FBUzt1QkFBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFekMsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFNraXBTZWxmLFxuICBUeXBlLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGluZUl0ZW0sIFVVSUQgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSwgaXNBcnJheSwgcHVsbCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnLi4vLi4vZW5naW5lL21vZGVscy9lbnRpdHknO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IElPUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaW8tcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgcGFyc2VCb3VuZFBhdGggfSBmcm9tICcuLi8uLi91dGlscy9wYXRoLnV0aWxzJztcbmltcG9ydCB7IEVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLi9lbGVtZW50LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWNtcy1lbGVtZW50LXJlbmRlcmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtFbGVtZW50Q29udGV4dFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ2VsJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSkgcHVibGljIGVsPzogVmlld0NvbnRhaW5lclJlZjtcblxuICBASW5wdXQoKSBwdWJsaWMgbWV0YSE6IEVsZW1lbnRNZXRhZGF0YTtcblxuICBwcml2YXRlIHR5cGU/OiBUeXBlPEVudGl0eT47XG4gIHByaXZhdGUgcmVmczogRGljdGlvbmFyeTxDb21wb25lbnRSZWY8RW50aXR5PiB8IHVuZGVmaW5lZD4gPSB7fTtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQFNraXBTZWxmKCkgcHJpdmF0ZSBwYXJlbnRJbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogUnVudGltZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbGVtZW50Q29udGV4dDogRWxlbWVudENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW9Qcm92aWRlclNlcnZpY2U6IElPUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWV0YS5pc1NoYXJlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZWxlbWVudENvbnRleHQubWV0YWRhdGEgPSB0aGlzLm1ldGE7XG4gICAgdGhpcy50eXBlID0gdGhpcy5tZXRhLnBhdGggPyB0aGlzLnJ1bnRpbWVTZXJ2aWNlLmNvbXBvbmVudFR5cGVzW3RoaXMubWV0YS5wYXRoXSA6IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50cygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveUNvbXBvbmVudHMoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNvbXBvbmVudHMoKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWxNZXRhID0gdGhpcy5tZXRhLm1vZGVsO1xuXG4gICAgaWYgKCFtb2RlbE1ldGEpIHtcbiAgICAgIHRoaXMucmVmc1tVVUlELlVVSUQoKV0gPSB0aGlzLmNyZWF0ZUNvbXBvbmVudCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChtb2RlbE1ldGEubGluZUl0ZW0pIHtcbiAgICAgIHRoaXMuY3JlYXRlRnJvbUxpbmVJdGVtKG1vZGVsTWV0YS5saW5lSXRlbSk7XG4gICAgfSBlbHNlIGlmIChtb2RlbE1ldGEucGF0aCkge1xuICAgICAgdGhpcy5jcmVhdGVGcm9tUGF0aChtb2RlbE1ldGEucGF0aCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGcm9tUGF0aChwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhcnJheSQgPSB0aGlzLmlvUHJvdmlkZXJTZXJ2aWNlLmNvbm5lY3QodGhpcy5tZXRhLCAnY2hpbGRyZW4kJywgcGF0aCk7XG5cbiAgICBhcnJheSQ/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoY2hpbGRyZW4gPT4ge1xuICAgICAgaWYgKCFpc0FycmF5KGNoaWxkcmVuKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJvY2Vzc0NoaWxkcmVuKGNoaWxkcmVuKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TW9kZWxDb21wb25lbnQoKTogRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50IHwgbnVsbCB7XG4gICAgbGV0IGNvbXBvbmVudDogRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50IHwgbnVsbCA9IG51bGw7XG4gICAgbGV0IGluamVjdG9yID0gdGhpcy5wYXJlbnRJbmplY3RvcjtcblxuICAgIHdoaWxlICghY29tcG9uZW50KSB7XG4gICAgICBjb25zdCBwYXJlbnRDb21wID0gaW5qZWN0b3IuZ2V0KEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCwgbnVsbCk7XG5cbiAgICAgIGlmIChwYXJlbnRDb21wPy5tZXRhLm1vZGVsKSB7XG4gICAgICAgIGNvbXBvbmVudCA9IHBhcmVudENvbXA7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBpZiAocGFyZW50Q29tcCkge1xuICAgICAgICBpbmplY3RvciA9IHBhcmVudENvbXAucGFyZW50SW5qZWN0b3I7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGcm9tTGluZUl0ZW0ocGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcGFyZW50Q29tcCA9IHRoaXMuZ2V0TW9kZWxDb21wb25lbnQoKTtcbiAgICBjb25zdCBwYXJlbnRQYXRoID0gcGFyZW50Q29tcD8ubWV0YS5tb2RlbD8ubGluZUl0ZW07XG5cbiAgICBjb25zdCBwYXRoQmxvY2tzID0gcGFyc2VCb3VuZFBhdGgocGF0aCkucmV2ZXJzZSgpO1xuICAgIGNvbnN0IHsgcHJvcGVydHksIG5hbWUgfSA9IHBhdGhCbG9ja3NbMV0gPz8ge307XG4gICAgY29uc3QgZmluYWxQYXRoID0gcGF0aEJsb2Nrc1swXTtcblxuICAgIGNvbnN0IGNoaWxkcmVuJCA9IHRoaXMuZ2V0UGFyZW50TGluZUl0ZW0kKHBhcmVudENvbXApLnBpcGUoXG4gICAgICBtYXAobW9kZWwgPT4ge1xuICAgICAgICBpZiAoIW1vZGVsKSB7XG4gICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHByb3BlcnR5ID09PSAncG9ydHMnICYmICFmaW5hbFBhdGgucHJvcGVydHkgJiYgcGFyZW50UGF0aCAhPT0gcGF0aCkge1xuICAgICAgICAgIHJldHVybiBtb2RlbC5saW5lSXRlbXMuZmlsdGVyKCh7IHBvcnQgfSkgPT4gcG9ydCA9PT0gbmFtZSkgPz8gW107XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW21vZGVsXTtcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBjaGlsZHJlbiQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShjaGlsZHJlbiA9PiB7XG4gICAgICB0aGlzLnByb2Nlc3NDaGlsZHJlbihjaGlsZHJlbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHByb2Nlc3NDaGlsZHJlbihjaGlsZHJlbjogYW55W10pOiB2b2lkIHtcbiAgICB0aGlzLnJ1bnRpbWVTZXJ2aWNlLm1vZHVsZVJlZnNbMF0uaW5qZWN0b3IucnVuSW5Db250ZXh0KCgpID0+IHtcbiAgICAgIGNvbnN0IHJlZnMgPSBjaGlsZHJlbi5yZWR1Y2UoKGFjYzogRGljdGlvbmFyeTxDb21wb25lbnRSZWY8RW50aXR5Pj4sIGRhdGEsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbnN0IGtleSA9IFN0cmluZyhkYXRhPy5pZCA/PyBVVUlELlVVSUQoKSk7XG4gICAgICAgIGNvbnN0IGV4aXN0aW5nUmVmID0gdGhpcy5yZWZzW2tleV07XG5cbiAgICAgICAgY29uc3QgcmVmID0gZXhpc3RpbmdSZWYgPz8gdGhpcy5jcmVhdGVDb21wb25lbnQoZGF0YSwgaW5kZXgpO1xuICAgICAgICBpZiAoZXhpc3RpbmdSZWYpIHtcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNvbXBvbmVudChleGlzdGluZ1JlZiwgZGF0YSwgaW5kZXgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlZiA/IHsgLi4uYWNjLCBba2V5XTogcmVmIH0gOiBhY2M7XG4gICAgICB9LCB7fSk7XG5cbiAgICAgIGNvbnN0IGV4aXN0aW5nS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMucmVmcyk7XG4gICAgICBjb25zdCBuZXdLZXlzID0gT2JqZWN0LmtleXMocmVmcyk7XG5cbiAgICAgIHB1bGwoZXhpc3RpbmdLZXlzLCAuLi5uZXdLZXlzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgIHRoaXMuZGVzdHJveUNvbXBvbmVudChrZXkpO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMucmVmcyA9IHJlZnM7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhcmVudExpbmVJdGVtJChwYXJlbnRDb21wOiBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgfCBudWxsKTogT2JzZXJ2YWJsZTxMaW5lSXRlbSB8IHVuZGVmaW5lZD4ge1xuICAgIGNvbnN0IHBhcmVudFJlZnMgPSBPYmplY3QudmFsdWVzKHBhcmVudENvbXA/LnJlZnMgPz8ge30pO1xuICAgIGNvbnN0IHBhcmVudFJlZiA9IHBhcmVudFJlZnMuZmluZChyZWYgPT5cbiAgICAgIChyZWY/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpPy5jb250YWlucyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCksXG4gICAgKTtcblxuICAgIGxldCBwYXJlbnRNb2RlbCQ7XG4gICAgaWYgKHBhcmVudFJlZj8uaW5zdGFuY2UgaW5zdGFuY2VvZiBFbGVtZW50Q29tcG9uZW50KSB7XG4gICAgICBwYXJlbnRNb2RlbCQgPSBwYXJlbnRSZWY/Lmluc3RhbmNlLm1vZGVsJDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyZW50TW9kZWwkID8/IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuZ2V0KCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNvbXBvbmVudChkYXRhPzogdW5rbm93biwgaW5kZXg/OiBudW1iZXIpOiBDb21wb25lbnRSZWY8RW50aXR5PiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLnR5cGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmVsPy5jcmVhdGVDb21wb25lbnQodGhpcy50eXBlLCB7IGluZGV4IH0pO1xuXG4gICAgaWYgKGNvbXBvbmVudFJlZikge1xuICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCduYW1lJywgdGhpcy5tZXRhLm5hbWUpO1xuICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdwYXRoJywgdGhpcy5tZXRhLnBhdGgpO1xuXG4gICAgICBpZiAoY29tcG9uZW50UmVmLmluc3RhbmNlIGluc3RhbmNlb2YgRWxlbWVudENvbXBvbmVudCkge1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UubW9kZWwkLm5leHQoZGF0YSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29tcG9uZW50KHJlZjogQ29tcG9uZW50UmVmPEVudGl0eT4sIGRhdGE6IHVua25vd24sIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAocmVmLmluc3RhbmNlIGluc3RhbmNlb2YgRWxlbWVudENvbXBvbmVudCkge1xuICAgICAgcmVmLmluc3RhbmNlLm1vZGVsJC5uZXh0KGRhdGEpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmVsICYmIHRoaXMuZWwuaW5kZXhPZihyZWYuaG9zdFZpZXcpICE9PSBpbmRleCkge1xuICAgICAgdGhpcy5lbC5tb3ZlKHJlZi5ob3N0VmlldywgaW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUNvbXBvbmVudChrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMucmVmc1trZXldPy5kZXN0cm95KCk7XG4gICAgZGVsZXRlIHRoaXMucmVmc1trZXldO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Q29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBPYmplY3QudmFsdWVzKHRoaXMucmVmcykuZm9yRWFjaChyZWYgPT4gcmVmPy5kZXN0cm95KCkpO1xuICAgIHRoaXMucmVmcyA9IHt9O1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2VsPjwvbmctdGVtcGxhdGU+XG4iXX0=
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCxVQUFVLEVBQ1YsUUFBUSxFQUNSLEtBQUssRUFHTCxRQUFRLEVBRVIsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFjLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkQsT0FBTyxFQUFjLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVN4RCxNQUFNLE9BQU8sd0JBQXdCO0lBU25DLFlBQ3NCLGNBQXdCLEVBQ3BDLGNBQThC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bkMzQyxtQ0FDQTsyRkRpQ2Esd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLHlCQUF5QixtQkFHbEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLHFCQUFxQixDQUFDOzswQkFZL0IsUUFBUTt5T0FUdUQsRUFBRTtzQkFBbkUsU0FBUzt1QkFBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFekMsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFNraXBTZWxmLFxuICBUeXBlLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGluZUl0ZW0sIFVVSUQgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSwgaXNBcnJheSwgcHVsbCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnLi4vLi4vZW5naW5lL21vZGVscy9lbnRpdHknO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IElPUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaW8tcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgcGFyc2VCb3VuZFBhdGggfSBmcm9tICcuLi8uLi91dGlscy9wYXRoLnV0aWxzJztcbmltcG9ydCB7IEVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLi9lbGVtZW50LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWNtcy1lbGVtZW50LXJlbmRlcmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtFbGVtZW50Q29udGV4dFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ2VsJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSkgcHVibGljIGVsPzogVmlld0NvbnRhaW5lclJlZjtcblxuICBASW5wdXQoKSBwdWJsaWMgbWV0YSE6IEVsZW1lbnRNZXRhZGF0YTtcblxuICBwcml2YXRlIHR5cGU/OiBUeXBlPEVudGl0eT47XG4gIHByaXZhdGUgcmVmczogRGljdGlvbmFyeTxDb21wb25lbnRSZWY8RW50aXR5PiB8IHVuZGVmaW5lZD4gPSB7fTtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQFNraXBTZWxmKCkgcHJpdmF0ZSBwYXJlbnRJbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogUnVudGltZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbGVtZW50Q29udGV4dDogRWxlbWVudENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW9Qcm92aWRlclNlcnZpY2U6IElPUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWV0YS5pc1NoYXJlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZWxlbWVudENvbnRleHQubWV0YWRhdGEgPSB0aGlzLm1ldGE7XG4gICAgdGhpcy50eXBlID0gdGhpcy5tZXRhLnBhdGggPyB0aGlzLnJ1bnRpbWVTZXJ2aWNlLmNvbXBvbmVudFR5cGVzW3RoaXMubWV0YS5wYXRoXSA6IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50cygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveUNvbXBvbmVudHMoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNvbXBvbmVudHMoKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWxNZXRhID0gdGhpcy5tZXRhLm1vZGVsO1xuXG4gICAgaWYgKCFtb2RlbE1ldGEpIHtcbiAgICAgIHRoaXMucmVmc1tVVUlELlVVSUQoKV0gPSB0aGlzLmNyZWF0ZUNvbXBvbmVudCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChtb2RlbE1ldGEubGluZUl0ZW0pIHtcbiAgICAgIHRoaXMuY3JlYXRlRnJvbUxpbmVJdGVtKG1vZGVsTWV0YS5saW5lSXRlbSk7XG4gICAgfSBlbHNlIGlmIChtb2RlbE1ldGEucGF0aCkge1xuICAgICAgdGhpcy5jcmVhdGVGcm9tUGF0aChtb2RlbE1ldGEucGF0aCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGcm9tUGF0aChwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhcnJheSQgPSB0aGlzLmlvUHJvdmlkZXJTZXJ2aWNlLmNvbm5lY3QodGhpcy5tZXRhLCAnY2hpbGRyZW4kJywgcGF0aCk7XG5cbiAgICBhcnJheSQ/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoY2hpbGRyZW4gPT4ge1xuICAgICAgaWYgKCFpc0FycmF5KGNoaWxkcmVuKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJvY2Vzc0NoaWxkcmVuKGNoaWxkcmVuKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TW9kZWxDb21wb25lbnQoKTogRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50IHwgbnVsbCB7XG4gICAgbGV0IGNvbXBvbmVudDogRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50IHwgbnVsbCA9IG51bGw7XG4gICAgbGV0IGluamVjdG9yID0gdGhpcy5wYXJlbnRJbmplY3RvcjtcblxuICAgIHdoaWxlICghY29tcG9uZW50KSB7XG4gICAgICBjb25zdCBwYXJlbnRDb21wID0gaW5qZWN0b3IuZ2V0KEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCwgbnVsbCk7XG5cbiAgICAgIGlmIChwYXJlbnRDb21wPy5tZXRhLm1vZGVsKSB7XG4gICAgICAgIGNvbXBvbmVudCA9IHBhcmVudENvbXA7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBpZiAocGFyZW50Q29tcCkge1xuICAgICAgICBpbmplY3RvciA9IHBhcmVudENvbXAucGFyZW50SW5qZWN0b3I7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGcm9tTGluZUl0ZW0ocGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcGFyZW50Q29tcCA9IHRoaXMuZ2V0TW9kZWxDb21wb25lbnQoKTtcbiAgICBjb25zdCBwYXJlbnRQYXRoID0gcGFyZW50Q29tcD8ubWV0YS5tb2RlbD8ubGluZUl0ZW07XG5cbiAgICBjb25zdCBwYXRoQmxvY2tzID0gcGFyc2VCb3VuZFBhdGgocGF0aCkucmV2ZXJzZSgpO1xuICAgIGNvbnN0IHsgcHJvcGVydHksIG5hbWUgfSA9IHBhdGhCbG9ja3NbMV0gPz8ge307XG4gICAgY29uc3QgZmluYWxQYXRoID0gcGF0aEJsb2Nrc1swXTtcblxuICAgIGNvbnN0IGNoaWxkcmVuJCA9IHRoaXMuZ2V0UGFyZW50TGluZUl0ZW0kKHBhcmVudENvbXApLnBpcGUoXG4gICAgICBtYXAobW9kZWwgPT4ge1xuICAgICAgICBpZiAoIW1vZGVsKSB7XG4gICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHByb3BlcnR5ID09PSAncG9ydHMnICYmICFmaW5hbFBhdGg/LnByb3BlcnR5ICYmIHBhcmVudFBhdGggIT09IHBhdGgpIHtcbiAgICAgICAgICByZXR1cm4gbW9kZWwubGluZUl0ZW1zLmZpbHRlcigoeyBwb3J0IH0pID0+IHBvcnQgPT09IG5hbWUpID8/IFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFttb2RlbF07XG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgY2hpbGRyZW4kLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoY2hpbGRyZW4gPT4ge1xuICAgICAgdGhpcy5wcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW4pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW46IGFueVtdKTogdm9pZCB7XG4gICAgdGhpcy5ydW50aW1lU2VydmljZS5tb2R1bGVSZWZzWzBdPy5pbmplY3Rvci5ydW5JbkNvbnRleHQoKCkgPT4ge1xuICAgICAgY29uc3QgcmVmcyA9IGNoaWxkcmVuLnJlZHVjZSgoYWNjOiBEaWN0aW9uYXJ5PENvbXBvbmVudFJlZjxFbnRpdHk+PiwgZGF0YSwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3Qga2V5ID0gU3RyaW5nKGRhdGE/LmlkID8/IFVVSUQuVVVJRCgpKTtcbiAgICAgICAgY29uc3QgZXhpc3RpbmdSZWYgPSB0aGlzLnJlZnNba2V5XTtcblxuICAgICAgICBjb25zdCByZWYgPSBleGlzdGluZ1JlZiA/PyB0aGlzLmNyZWF0ZUNvbXBvbmVudChkYXRhLCBpbmRleCk7XG4gICAgICAgIGlmIChleGlzdGluZ1JlZikge1xuICAgICAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50KGV4aXN0aW5nUmVmLCBkYXRhLCBpbmRleCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVmID8geyAuLi5hY2MsIFtrZXldOiByZWYgfSA6IGFjYztcbiAgICAgIH0sIHt9KTtcblxuICAgICAgY29uc3QgZXhpc3RpbmdLZXlzID0gT2JqZWN0LmtleXModGhpcy5yZWZzKTtcbiAgICAgIGNvbnN0IG5ld0tleXMgPSBPYmplY3Qua2V5cyhyZWZzKTtcblxuICAgICAgcHVsbChleGlzdGluZ0tleXMsIC4uLm5ld0tleXMpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgdGhpcy5kZXN0cm95Q29tcG9uZW50KGtleSk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5yZWZzID0gcmVmcztcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGFyZW50TGluZUl0ZW0kKHBhcmVudENvbXA6IEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCB8IG51bGwpOiBPYnNlcnZhYmxlPExpbmVJdGVtIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgcGFyZW50UmVmcyA9IE9iamVjdC52YWx1ZXMocGFyZW50Q29tcD8ucmVmcyA/PyB7fSk7XG4gICAgY29uc3QgcGFyZW50UmVmID0gcGFyZW50UmVmcy5maW5kKHJlZiA9PlxuICAgICAgKHJlZj8ubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk/LmNvbnRhaW5zKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSxcbiAgICApO1xuXG4gICAgbGV0IHBhcmVudE1vZGVsJDtcbiAgICBpZiAocGFyZW50UmVmPy5pbnN0YW5jZSBpbnN0YW5jZW9mIEVsZW1lbnRDb21wb25lbnQpIHtcbiAgICAgIHBhcmVudE1vZGVsJCA9IHBhcmVudFJlZj8uaW5zdGFuY2UubW9kZWwkO1xuICAgIH1cblxuICAgIHJldHVybiBwYXJlbnRNb2RlbCQgPz8gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5nZXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50KGRhdGE/OiB1bmtub3duLCBpbmRleD86IG51bWJlcik6IENvbXBvbmVudFJlZjxFbnRpdHk+IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMudHlwZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMuZWw/LmNyZWF0ZUNvbXBvbmVudCh0aGlzLnR5cGUsIHsgaW5kZXggfSk7XG5cbiAgICBpZiAoY29tcG9uZW50UmVmKSB7XG4gICAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ25hbWUnLCB0aGlzLm1ldGEubmFtZSk7XG4gICAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3BhdGgnLCB0aGlzLm1ldGEucGF0aCk7XG5cbiAgICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2UgaW5zdGFuY2VvZiBFbGVtZW50Q29tcG9uZW50KSB7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5tb2RlbCQubmV4dChkYXRhKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb21wb25lbnQocmVmOiBDb21wb25lbnRSZWY8RW50aXR5PiwgZGF0YTogdW5rbm93biwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmIChyZWYuaW5zdGFuY2UgaW5zdGFuY2VvZiBFbGVtZW50Q29tcG9uZW50KSB7XG4gICAgICByZWYuaW5zdGFuY2UubW9kZWwkLm5leHQoZGF0YSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZWwgJiYgdGhpcy5lbC5pbmRleE9mKHJlZi5ob3N0VmlldykgIT09IGluZGV4KSB7XG4gICAgICB0aGlzLmVsLm1vdmUocmVmLmhvc3RWaWV3LCBpbmRleCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Q29tcG9uZW50KGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5yZWZzW2tleV0/LmRlc3Ryb3koKTtcbiAgICBkZWxldGUgdGhpcy5yZWZzW2tleV07XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lDb21wb25lbnRzKCk6IHZvaWQge1xuICAgIE9iamVjdC52YWx1ZXModGhpcy5yZWZzKS5mb3JFYWNoKHJlZiA9PiByZWY/LmRlc3Ryb3koKSk7XG4gICAgdGhpcy5yZWZzID0ge307XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjZWw+PC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -7,7 +7,7 @@ export const migrations = {
7
7
  3: uiDef => {
8
8
  const startingPage = metadataToElement(constructPage(STARTING_PAGE_NAME, STARTING_PAGE_TYPE, STARTING_PAGE_LAYOUT, STARTING_PAGE_STYLES));
9
9
  // overwrite children if provided from the UI Definition
10
- if (uiDef.children && uiDef.children.length > 0) {
10
+ if (startingPage.children[0] && uiDef.children && uiDef.children.length > 0) {
11
11
  // the starting page has the One Region Layout
12
12
  startingPage.children[0].children = uiDef.children;
13
13
  }
@@ -19,4 +19,4 @@ export const migrations = {
19
19
  };
20
20
  },
21
21
  };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9tb2R1bGVzL21pZ3JhdGlvbnMvbWlncmF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2SCxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRy9ELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBNEM7SUFDakUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtRQUNOLE1BQU0scURBQXFELENBQUM7SUFDOUQsQ0FBQztJQUNELENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtRQUNULE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUNwQyxhQUFhLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUMsQ0FDbEcsQ0FBQztRQUVGLHdEQUF3RDtRQUN4RCxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQy9DLDhDQUE4QztZQUM5QyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1NBQ3BEO1FBRUQsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLFFBQVEsRUFBRSxTQUFTO1lBQ25CLEtBQUssRUFBRSxDQUFDLFlBQVksQ0FBQztZQUNyQixPQUFPLEVBQUUsQ0FBQztTQUNYLENBQUM7SUFDSixDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNUQVJUSU5HX1BBR0VfTEFZT1VULCBTVEFSVElOR19QQUdFX05BTUUsIFNUQVJUSU5HX1BBR0VfU1RZTEVTLCBTVEFSVElOR19QQUdFX1RZUEUgfSBmcm9tICcuLi8uLi9kZWZpbml0aW9ucyc7XG5pbXBvcnQgeyBjb25zdHJ1Y3RQYWdlLCBtZXRhZGF0YVRvRWxlbWVudCB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IFVJRGVmaW5pdGlvbk1pZ3JhdGlvbkZuIH0gZnJvbSAnLi90eXBlcy9taWdyYXRpb25zLnR5cGVzJztcblxuZXhwb3J0IGNvbnN0IG1pZ3JhdGlvbnM6IFJlY29yZDxudW1iZXIsIFVJRGVmaW5pdGlvbk1pZ3JhdGlvbkZuPiA9IHtcbiAgMjogKCkgPT4ge1xuICAgIHRocm93ICdNaWdyYXRpb24gZnJvbSBMZWdhY3kgVUkgZGVmaW5pdGlvbiBpcyBub3QgcG9zc2libGUnO1xuICB9LFxuICAzOiB1aURlZiA9PiB7XG4gICAgY29uc3Qgc3RhcnRpbmdQYWdlID0gbWV0YWRhdGFUb0VsZW1lbnQoXG4gICAgICBjb25zdHJ1Y3RQYWdlKFNUQVJUSU5HX1BBR0VfTkFNRSwgU1RBUlRJTkdfUEFHRV9UWVBFLCBTVEFSVElOR19QQUdFX0xBWU9VVCwgU1RBUlRJTkdfUEFHRV9TVFlMRVMpLFxuICAgICk7XG5cbiAgICAvLyBvdmVyd3JpdGUgY2hpbGRyZW4gaWYgcHJvdmlkZWQgZnJvbSB0aGUgVUkgRGVmaW5pdGlvblxuICAgIGlmICh1aURlZi5jaGlsZHJlbiAmJiB1aURlZi5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAvLyB0aGUgc3RhcnRpbmcgcGFnZSBoYXMgdGhlIE9uZSBSZWdpb24gTGF5b3V0XG4gICAgICBzdGFydGluZ1BhZ2UuY2hpbGRyZW5bMF0uY2hpbGRyZW4gPSB1aURlZi5jaGlsZHJlbjtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4udWlEZWYsXG4gICAgICBjaGlsZHJlbjogdW5kZWZpbmVkLFxuICAgICAgcGFnZXM6IFtzdGFydGluZ1BhZ2VdLFxuICAgICAgdmVyc2lvbjogMyxcbiAgICB9O1xuICB9LFxufTtcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9tb2R1bGVzL21pZ3JhdGlvbnMvbWlncmF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2SCxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRy9ELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBNEM7SUFDakUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtRQUNOLE1BQU0scURBQXFELENBQUM7SUFDOUQsQ0FBQztJQUNELENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtRQUNULE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUNwQyxhQUFhLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUMsQ0FDbEcsQ0FBQztRQUVGLHdEQUF3RDtRQUN4RCxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDM0UsOENBQThDO1lBQzlDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7U0FDcEQ7UUFFRCxPQUFPO1lBQ0wsR0FBRyxLQUFLO1lBQ1IsUUFBUSxFQUFFLFNBQVM7WUFDbkIsS0FBSyxFQUFFLENBQUMsWUFBWSxDQUFDO1lBQ3JCLE9BQU8sRUFBRSxDQUFDO1NBQ1gsQ0FBQztJQUNKLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU1RBUlRJTkdfUEFHRV9MQVlPVVQsIFNUQVJUSU5HX1BBR0VfTkFNRSwgU1RBUlRJTkdfUEFHRV9TVFlMRVMsIFNUQVJUSU5HX1BBR0VfVFlQRSB9IGZyb20gJy4uLy4uL2RlZmluaXRpb25zJztcbmltcG9ydCB7IGNvbnN0cnVjdFBhZ2UsIG1ldGFkYXRhVG9FbGVtZW50IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgVUlEZWZpbml0aW9uTWlncmF0aW9uRm4gfSBmcm9tICcuL3R5cGVzL21pZ3JhdGlvbnMudHlwZXMnO1xuXG5leHBvcnQgY29uc3QgbWlncmF0aW9uczogUmVjb3JkPG51bWJlciwgVUlEZWZpbml0aW9uTWlncmF0aW9uRm4+ID0ge1xuICAyOiAoKSA9PiB7XG4gICAgdGhyb3cgJ01pZ3JhdGlvbiBmcm9tIExlZ2FjeSBVSSBkZWZpbml0aW9uIGlzIG5vdCBwb3NzaWJsZSc7XG4gIH0sXG4gIDM6IHVpRGVmID0+IHtcbiAgICBjb25zdCBzdGFydGluZ1BhZ2UgPSBtZXRhZGF0YVRvRWxlbWVudChcbiAgICAgIGNvbnN0cnVjdFBhZ2UoU1RBUlRJTkdfUEFHRV9OQU1FLCBTVEFSVElOR19QQUdFX1RZUEUsIFNUQVJUSU5HX1BBR0VfTEFZT1VULCBTVEFSVElOR19QQUdFX1NUWUxFUyksXG4gICAgKTtcblxuICAgIC8vIG92ZXJ3cml0ZSBjaGlsZHJlbiBpZiBwcm92aWRlZCBmcm9tIHRoZSBVSSBEZWZpbml0aW9uXG4gICAgaWYgKHN0YXJ0aW5nUGFnZS5jaGlsZHJlblswXSAmJiB1aURlZi5jaGlsZHJlbiAmJiB1aURlZi5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAvLyB0aGUgc3RhcnRpbmcgcGFnZSBoYXMgdGhlIE9uZSBSZWdpb24gTGF5b3V0XG4gICAgICBzdGFydGluZ1BhZ2UuY2hpbGRyZW5bMF0uY2hpbGRyZW4gPSB1aURlZi5jaGlsZHJlbjtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4udWlEZWYsXG4gICAgICBjaGlsZHJlbjogdW5kZWZpbmVkLFxuICAgICAgcGFnZXM6IFtzdGFydGluZ1BhZ2VdLFxuICAgICAgdmVyc2lvbjogMyxcbiAgICB9O1xuICB9LFxufTtcbiJdfQ==
@@ -24,7 +24,11 @@ export class MigrationsService {
24
24
  try {
25
25
  let result = cloneDeep(uiDef);
26
26
  for (const version of migrateVersions) {
27
- result = migrations[version](result);
27
+ const migration = migrations[version];
28
+ if (!migration) {
29
+ throw `V=${version} migration strategy is not defined`;
30
+ }
31
+ result = migration(result);
28
32
  }
29
33
  return result;
30
34
  }
@@ -40,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
40
44
  type: Injectable,
41
45
  args: [{ providedIn: 'root' }]
42
46
  }], ctorParameters: function () { return [{ type: i1.ToastService }]; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL21vZHVsZXMvbWlncmF0aW9ucy9zZXJ2aWNlcy9taWdyYXRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRzNDLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBb0IsWUFBMEI7UUFBMUIsaUJBQVksR0FBWixZQUFZLENBQWM7SUFBRyxDQUFDO0lBRTNDLG1CQUFtQixDQUFDLEtBQW1CO1FBQzVDLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDckMsTUFBTSxhQUFhLEdBQUcscUJBQXFCLENBQUM7UUFFNUMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDNUMsTUFBTSxDQUFDLENBQUMsR0FBYSxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ2pDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsR0FBRyxjQUFjLElBQUksQ0FBQyxJQUFJLGFBQWEsRUFBRTtnQkFDNUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiO1lBRUQsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQ0wsSUFBSSxFQUFFLENBQUM7UUFFVixJQUFJO1lBQ0YsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRTlCLEtBQUssTUFBTSxPQUFPLElBQUksZUFBZSxFQUFFO2dCQUNyQyxNQUFNLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RDO1lBRUQsT0FBTyxNQUFNLENBQUM7U0FDZjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN6RSxPQUFPO1NBQ1I7SUFDSCxDQUFDOzs4R0E5QlUsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FESixNQUFNOzJGQUNuQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlLCBUb2FzdFR5cGUgfSBmcm9tICdAdmVsb2NlYXBwcy9jb21wb25lbnRzJztcbmltcG9ydCB7IFVJRGVmaW5pdGlvbiB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgVUlfREVGSU5JVElPTl9WRVJTSU9OIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IG1pZ3JhdGlvbnMgfSBmcm9tICcuLi9taWdyYXRpb25zJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNaWdyYXRpb25zU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIG1pZ3JhdGVVSURlZmluaXRpb24odWlEZWY6IFVJRGVmaW5pdGlvbik6IFVJRGVmaW5pdGlvbiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgY3VycmVudFZlcnNpb24gPSB1aURlZi52ZXJzaW9uO1xuICAgIGNvbnN0IHRhcmdldFZlcnNpb24gPSBVSV9ERUZJTklUSU9OX1ZFUlNJT047XG5cbiAgICBjb25zdCBtaWdyYXRlVmVyc2lvbnMgPSBPYmplY3Qua2V5cyhtaWdyYXRpb25zKVxuICAgICAgLnJlZHVjZSgoYWNjOiBudW1iZXJbXSwgdmVyc2lvbikgPT4ge1xuICAgICAgICBjb25zdCB2ID0gTnVtYmVyKHZlcnNpb24pO1xuICAgICAgICBpZiAodiA+IGN1cnJlbnRWZXJzaW9uICYmIHYgPD0gdGFyZ2V0VmVyc2lvbikge1xuICAgICAgICAgIGFjYy5wdXNoKHYpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH0sIFtdKVxuICAgICAgLnNvcnQoKTtcblxuICAgIHRyeSB7XG4gICAgICBsZXQgcmVzdWx0ID0gY2xvbmVEZWVwKHVpRGVmKTtcblxuICAgICAgZm9yIChjb25zdCB2ZXJzaW9uIG9mIG1pZ3JhdGVWZXJzaW9ucykge1xuICAgICAgICByZXN1bHQgPSBtaWdyYXRpb25zW3ZlcnNpb25dKHJlc3VsdCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2UuYWRkKHsgc3VtbWFyeTogU3RyaW5nKGUpLCBzZXZlcml0eTogVG9hc3RUeXBlLmVycm9yIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxufVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL21vZHVsZXMvbWlncmF0aW9ucy9zZXJ2aWNlcy9taWdyYXRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRzNDLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBb0IsWUFBMEI7UUFBMUIsaUJBQVksR0FBWixZQUFZLENBQWM7SUFBRyxDQUFDO0lBRTNDLG1CQUFtQixDQUFDLEtBQW1CO1FBQzVDLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDckMsTUFBTSxhQUFhLEdBQUcscUJBQXFCLENBQUM7UUFFNUMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDNUMsTUFBTSxDQUFDLENBQUMsR0FBYSxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ2pDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsR0FBRyxjQUFjLElBQUksQ0FBQyxJQUFJLGFBQWEsRUFBRTtnQkFDNUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiO1lBRUQsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQ0wsSUFBSSxFQUFFLENBQUM7UUFFVixJQUFJO1lBQ0YsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRTlCLEtBQUssTUFBTSxPQUFPLElBQUksZUFBZSxFQUFFO2dCQUNyQyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxTQUFTLEVBQUU7b0JBQ2QsTUFBTSxLQUFLLE9BQU8sb0NBQW9DLENBQUM7aUJBQ3hEO2dCQUVELE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDNUI7WUFFRCxPQUFPLE1BQU0sQ0FBQztTQUNmO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ3pFLE9BQU87U0FDUjtJQUNILENBQUM7OzhHQW5DVSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQURKLE1BQU07MkZBQ25CLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UsIFRvYXN0VHlwZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgVUlEZWZpbml0aW9uIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBVSV9ERUZJTklUSU9OX1ZFUlNJT04gfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgbWlncmF0aW9ucyB9IGZyb20gJy4uL21pZ3JhdGlvbnMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1pZ3JhdGlvbnNTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSkge31cblxuICBwdWJsaWMgbWlncmF0ZVVJRGVmaW5pdGlvbih1aURlZjogVUlEZWZpbml0aW9uKTogVUlEZWZpbml0aW9uIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBjdXJyZW50VmVyc2lvbiA9IHVpRGVmLnZlcnNpb247XG4gICAgY29uc3QgdGFyZ2V0VmVyc2lvbiA9IFVJX0RFRklOSVRJT05fVkVSU0lPTjtcblxuICAgIGNvbnN0IG1pZ3JhdGVWZXJzaW9ucyA9IE9iamVjdC5rZXlzKG1pZ3JhdGlvbnMpXG4gICAgICAucmVkdWNlKChhY2M6IG51bWJlcltdLCB2ZXJzaW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHYgPSBOdW1iZXIodmVyc2lvbik7XG4gICAgICAgIGlmICh2ID4gY3VycmVudFZlcnNpb24gJiYgdiA8PSB0YXJnZXRWZXJzaW9uKSB7XG4gICAgICAgICAgYWNjLnB1c2godik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwgW10pXG4gICAgICAuc29ydCgpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGxldCByZXN1bHQgPSBjbG9uZURlZXAodWlEZWYpO1xuXG4gICAgICBmb3IgKGNvbnN0IHZlcnNpb24gb2YgbWlncmF0ZVZlcnNpb25zKSB7XG4gICAgICAgIGNvbnN0IG1pZ3JhdGlvbiA9IG1pZ3JhdGlvbnNbdmVyc2lvbl07XG4gICAgICAgIGlmICghbWlncmF0aW9uKSB7XG4gICAgICAgICAgdGhyb3cgYFY9JHt2ZXJzaW9ufSBtaWdyYXRpb24gc3RyYXRlZ3kgaXMgbm90IGRlZmluZWRgO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVzdWx0ID0gbWlncmF0aW9uKHJlc3VsdCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2UuYWRkKHsgc3VtbWFyeTogU3RyaW5nKGUpLCBzZXZlcml0eTogVG9hc3RUeXBlLmVycm9yIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { DragDropModule } from '@angular/cdk/drag-drop';
3
3
  import { ScrollingModule } from '@angular/cdk/scrolling';
4
4
  import { CommonModule } from '@angular/common';
5
- import { Injectable, Injector, NgModule, createNgModule } from '@angular/core';
5
+ import { createNgModule, Injectable, Injector, NgModule } from '@angular/core';
6
6
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
7
7
  import { ErrorTooltipModule, HiddenTextTooltipModule, LetDirectiveModule } from '@veloceapps/components';
8
8
  import { SdkPipesModule } from '@veloceapps/sdk/core';
@@ -27,7 +27,7 @@ export class CompilationService {
27
27
  const sharedElements = components ?? [];
28
28
  return [elements, sharedElements];
29
29
  }), switchMap(elementsChunks => combineLatest(elementsChunks.map(chunk => new ElementMetadataWorker(chunk).get$()))), switchMap(dataChunks => combineLatest(dataChunks.map(chunk => new TranspilationWorker(chunk).get$()))), map(([metadata, sharedMetadata]) => {
30
- this.elementsResolver = new ElementsResolver(uiDefinition, metadata, sharedMetadata, config);
30
+ this.elementsResolver = new ElementsResolver(uiDefinition, metadata ?? [], sharedMetadata, config);
31
31
  const componentTypes = this.elementsResolver.getNgComponents();
32
32
  const module = this.getModule(componentTypes);
33
33
  return {
@@ -90,4 +90,4 @@ CompilationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", v
90
90
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CompilationService, decorators: [{
91
91
  type: Injectable
92
92
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvY29tcGlsYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFRLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFjLGFBQWEsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUNyRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUVyRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUk5RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBR25FLE1BQU0sT0FBTyxrQkFBa0I7SUFJN0IsWUFBb0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUFHLENBQUM7SUFFbkMsb0JBQW9CLENBQUMsWUFBMEIsRUFBRSxNQUF5QjtRQUMvRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2hCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDUCxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsR0FBRyxnQkFBZ0IsRUFBRSxHQUFHLFlBQVksQ0FBQztZQUMxRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7WUFFekMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN6RCxNQUFNLGNBQWMsR0FBRyxVQUFVLElBQUksRUFBRSxDQUFDO1lBQ3hDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUNoSCxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQ3RHLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLGNBQWMsQ0FBQyxFQUFFLEVBQUU7WUFDakMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLENBQUMsWUFBWSxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDN0YsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQy9ELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7WUFFOUMsT0FBTztnQkFDTCxTQUFTLEVBQUUsY0FBYyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUNoRCxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFFBQVEsSUFBSSxFQUFFO2dCQUMvQyxjQUFjO2FBQ2YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sZUFBZSxDQUFDLE9BQXdCO1FBQzdDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUIsTUFBTSwwQkFBMEIsQ0FBQztTQUNsQztRQUVELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksQ0FDbkMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ2pCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksZ0JBQWdCLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pGLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQyxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMxRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRTlDLE9BQU87Z0JBQ0wsU0FBUyxFQUFFLGNBQWMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQztnQkFDaEQsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLElBQUksRUFBRTtnQkFDL0MsY0FBYzthQUNmLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxTQUFTLENBQUMsVUFBd0M7UUFzQnhELElBQU0sYUFBYSxHQUFuQixNQUFNLGFBQWE7U0FBRyxDQUFBO1FBQWhCLGFBQWE7WUFyQmxCLFFBQVEsQ0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLG1CQUFtQjtvQkFDbkIsY0FBYztvQkFDZCxTQUFTO29CQUNULGVBQWU7b0JBQ2YscUJBQXFCO29CQUNyQixxQkFBcUI7b0JBQ3JCLHVCQUF1QjtvQkFDdkIsNkJBQTZCO29CQUM3QixlQUFlO29CQUNmLGNBQWM7b0JBQ2Qsa0JBQWtCO29CQUNsQix1QkFBdUI7b0JBQ3ZCLGtCQUFrQjtpQkFDbkI7Z0JBQ0QsWUFBWSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO2dCQUN2QyxHQUFHLEVBQUUsSUFBSTthQUNWLENBQUM7V0FDSSxhQUFhLENBQUc7UUFFdEIsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQzs7K0dBbEZVLGtCQUFrQjttSEFBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgU2Nyb2xsaW5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIE5nTW9kdWxlLCBUeXBlLCBjcmVhdGVOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFcnJvclRvb2x0aXBNb2R1bGUsIEhpZGRlblRleHRUb29sdGlwTW9kdWxlLCBMZXREaXJlY3RpdmVNb2R1bGUgfSBmcm9tICdAdmVsb2NlYXBwcy9jb21wb25lbnRzJztcbmltcG9ydCB7IFVJRGVmaW5pdGlvbiwgVUlEZWZpbml0aW9uTWV0YWRhdGEgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IFNka1BpcGVzTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRG5kTW9kdWxlIH0gZnJvbSAnbmd4LWRyYWctZHJvcCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBtYXAsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVsZW1lbnRDaGlsZHJlbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZWxlbWVudC1jaGlsZHJlbi9lbGVtZW50LWNoaWxkcmVuLm1vZHVsZSc7XG5pbXBvcnQgeyBFbGVtZW50RHJvcEhhbmRsZU1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZWxlbWVudC1kcm9wLWhhbmRsZS9lbGVtZW50LWRyb3AtaGFuZGxlLm1vZHVsZSc7XG5pbXBvcnQgeyBFbGVtZW50UmVuZGVyZXJNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2VsZW1lbnQtcmVuZGVyZXIvZWxlbWVudC1yZW5kZXJlci5tb2R1bGUnO1xuaW1wb3J0IHsgQ01TUHJldmlld0NvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvcHJldmlldyc7XG5pbXBvcnQgeyBDdXN0b21UZW1wbGF0ZURpcmVjdGl2ZU1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvY3VzdG9tLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuLi8uLi8uLi9lbmdpbmUvbW9kZWxzL2VudGl0eSc7XG5pbXBvcnQgeyBDb21waWxhdGlvblJlc3VsdCB9IGZyb20gJy4uLy4uLy4uL21vZHVsZXMvcnVudGltZS90eXBlcy9jb21waWxhdGlvbi50eXBlcyc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgRWxlbWVudE1ldGFkYXRhV29ya2VyLCBFbGVtZW50c1Jlc29sdmVyLCBUcmFuc3BpbGF0aW9uV29ya2VyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgRmVkZXJhdGVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vZmVkZXJhdGVkL2ZlZGVyYXRlZC5tb2R1bGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29tcGlsYXRpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSB1aURlZmluaXRpb25NZXRhPzogVUlEZWZpbml0aW9uTWV0YWRhdGE7XG4gIHByaXZhdGUgZWxlbWVudHNSZXNvbHZlcj86IEVsZW1lbnRzUmVzb2x2ZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XG5cbiAgcHVibGljIGNvbXBpbGVVSURlZmluaXRpb24kKHVpRGVmaW5pdGlvbjogVUlEZWZpbml0aW9uLCBjb25maWc/OiBDTVNQcmV2aWV3Q29uZmlnKTogT2JzZXJ2YWJsZTxDb21waWxhdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiBvZihbXSkucGlwZShcbiAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgY2hpbGRyZW4sIHBhZ2VzLCBjb21wb25lbnRzLCAuLi51aURlZmluaXRpb25NZXRhIH0gPSB1aURlZmluaXRpb247XG4gICAgICAgIHRoaXMudWlEZWZpbml0aW9uTWV0YSA9IHVpRGVmaW5pdGlvbk1ldGE7XG5cbiAgICAgICAgY29uc3QgZWxlbWVudHMgPSBbLi4uKGNoaWxkcmVuID8/IFtdKSwgLi4uKHBhZ2VzID8/IFtdKV07XG4gICAgICAgIGNvbnN0IHNoYXJlZEVsZW1lbnRzID0gY29tcG9uZW50cyA/PyBbXTtcbiAgICAgICAgcmV0dXJuIFtlbGVtZW50cywgc2hhcmVkRWxlbWVudHNdO1xuICAgICAgfSksXG4gICAgICBzd2l0Y2hNYXAoZWxlbWVudHNDaHVua3MgPT4gY29tYmluZUxhdGVzdChlbGVtZW50c0NodW5rcy5tYXAoY2h1bmsgPT4gbmV3IEVsZW1lbnRNZXRhZGF0YVdvcmtlcihjaHVuaykuZ2V0JCgpKSkpLFxuICAgICAgc3dpdGNoTWFwKGRhdGFDaHVua3MgPT4gY29tYmluZUxhdGVzdChkYXRhQ2h1bmtzLm1hcChjaHVuayA9PiBuZXcgVHJhbnNwaWxhdGlvbldvcmtlcihjaHVuaykuZ2V0JCgpKSkpLFxuICAgICAgbWFwKChbbWV0YWRhdGEsIHNoYXJlZE1ldGFkYXRhXSkgPT4ge1xuICAgICAgICB0aGlzLmVsZW1lbnRzUmVzb2x2ZXIgPSBuZXcgRWxlbWVudHNSZXNvbHZlcih1aURlZmluaXRpb24sIG1ldGFkYXRhLCBzaGFyZWRNZXRhZGF0YSwgY29uZmlnKTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50VHlwZXMgPSB0aGlzLmVsZW1lbnRzUmVzb2x2ZXIuZ2V0TmdDb21wb25lbnRzKCk7XG4gICAgICAgIGNvbnN0IG1vZHVsZSA9IHRoaXMuZ2V0TW9kdWxlKGNvbXBvbmVudFR5cGVzKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1vZHVsZVJlZjogY3JlYXRlTmdNb2R1bGUobW9kdWxlLCB0aGlzLmluamVjdG9yKSxcbiAgICAgICAgICBlbGVtZW50czogdGhpcy5lbGVtZW50c1Jlc29sdmVyPy5lbGVtZW50cyA/PyBbXSxcbiAgICAgICAgICBjb21wb25lbnRUeXBlcyxcbiAgICAgICAgfTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY29tcGlsZUVsZW1lbnQkKGVsZW1lbnQ6IEVsZW1lbnRNZXRhZGF0YSk6IE9ic2VydmFibGU8Q29tcGlsYXRpb25SZXN1bHQ+IHtcbiAgICBpZiAoIXRoaXMudWlEZWZpbml0aW9uTWV0YSkge1xuICAgICAgdGhyb3cgJ05vIFVJIERlZmluaXRpb24gY29udGV4dCc7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9mKHRoaXMudWlEZWZpbml0aW9uTWV0YSkucGlwZShcbiAgICAgIG1hcCh1aURlZmluaXRpb24gPT4ge1xuICAgICAgICBjb25zdCBlbGVtZW50c1Jlc29sdmVyID0gdGhpcy5lbGVtZW50c1Jlc29sdmVyID8/IG5ldyBFbGVtZW50c1Jlc29sdmVyKHVpRGVmaW5pdGlvbiwgW10pO1xuICAgICAgICBlbGVtZW50c1Jlc29sdmVyLmFkZEVsZW1lbnQoZWxlbWVudCk7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFR5cGVzID0gZWxlbWVudHNSZXNvbHZlci5nZXROZ0NvbXBvbmVudHMoKTtcbiAgICAgICAgY29uc3QgbW9kdWxlID0gdGhpcy5nZXRNb2R1bGUoY29tcG9uZW50VHlwZXMpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbW9kdWxlUmVmOiBjcmVhdGVOZ01vZHVsZShtb2R1bGUsIHRoaXMuaW5qZWN0b3IpLFxuICAgICAgICAgIGVsZW1lbnRzOiB0aGlzLmVsZW1lbnRzUmVzb2x2ZXI/LmVsZW1lbnRzID8/IFtdLFxuICAgICAgICAgIGNvbXBvbmVudFR5cGVzLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLnVpRGVmaW5pdGlvbk1ldGEgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldE1vZHVsZShjb21wb25lbnRzOiBSZWNvcmQ8c3RyaW5nLCBUeXBlPEVudGl0eT4+KTogVHlwZTxOZ01vZHVsZT4ge1xuICAgIEBOZ01vZHVsZSh7XG4gICAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIERyYWdEcm9wTW9kdWxlLFxuICAgICAgICBEbmRNb2R1bGUsXG4gICAgICAgIFNjcm9sbGluZ01vZHVsZSxcbiAgICAgICAgRWxlbWVudENoaWxkcmVuTW9kdWxlLFxuICAgICAgICBFbGVtZW50UmVuZGVyZXJNb2R1bGUsXG4gICAgICAgIEVsZW1lbnREcm9wSGFuZGxlTW9kdWxlLFxuICAgICAgICBDdXN0b21UZW1wbGF0ZURpcmVjdGl2ZU1vZHVsZSxcbiAgICAgICAgRmVkZXJhdGVkTW9kdWxlLFxuICAgICAgICBTZGtQaXBlc01vZHVsZSxcbiAgICAgICAgTGV0RGlyZWN0aXZlTW9kdWxlLFxuICAgICAgICBIaWRkZW5UZXh0VG9vbHRpcE1vZHVsZSxcbiAgICAgICAgRXJyb3JUb29sdGlwTW9kdWxlLFxuICAgICAgXSxcbiAgICAgIGRlY2xhcmF0aW9uczogT2JqZWN0LnZhbHVlcyhjb21wb25lbnRzKSxcbiAgICAgIGppdDogdHJ1ZSxcbiAgICB9KVxuICAgIGNsYXNzIER5bmFtaWNNb2R1bGUge31cblxuICAgIHJldHVybiBEeW5hbWljTW9kdWxlO1xuICB9XG59XG4iXX0=
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvY29tcGlsYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUNyRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUVyRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUk5RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxn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QUFJLEVBQUU7Z0JBQy9DLGNBQWM7YUFDZixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sU0FBUyxDQUFDLFVBQXdDO1FBc0J4RCxJQUFNLGFBQWEsR0FBbkIsTUFBTSxhQUFhO1NBQUcsQ0FBQTtRQUFoQixhQUFhO1lBckJsQixRQUFRLENBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxtQkFBbUI7b0JBQ25CLGNBQWM7b0JBQ2QsU0FBUztvQkFDVCxlQUFlO29CQUNmLHFCQUFxQjtvQkFDckIscUJBQXFCO29CQUNyQix1QkFBdUI7b0JBQ3ZCLDZCQUE2QjtvQkFDN0IsZUFBZTtvQkFDZixjQUFjO29CQUNkLGtCQUFrQjtvQkFDbEIsdUJBQXVCO29CQUN2QixrQkFBa0I7aUJBQ25CO2dCQUNELFlBQVksRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztnQkFDdkMsR0FBRyxFQUFFLElBQUk7YUFDVixDQUFDO1dBQ0ksYUFBYSxDQUFHO1FBRXRCLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7OytHQWxGVSxrQkFBa0I7bUhBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IFNjcm9sbGluZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGNyZWF0ZU5nTW9kdWxlLCBJbmplY3RhYmxlLCBJbmplY3RvciwgTmdNb2R1bGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXJyb3JUb29sdGlwTW9kdWxlLCBIaWRkZW5UZXh0VG9vbHRpcE1vZHVsZSwgTGV0RGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBVSURlZmluaXRpb24sIFVJRGVmaW5pdGlvbk1ldGFkYXRhIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBTZGtQaXBlc01vZHVsZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL3Nkay9jb3JlJztcbmltcG9ydCB7IERuZE1vZHVsZSB9IGZyb20gJ25neC1kcmFnLWRyb3AnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFbGVtZW50Q2hpbGRyZW5Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2VsZW1lbnQtY2hpbGRyZW4vZWxlbWVudC1jaGlsZHJlbi5tb2R1bGUnO1xuaW1wb3J0IHsgRWxlbWVudERyb3BIYW5kbGVNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2VsZW1lbnQtZHJvcC1oYW5kbGUvZWxlbWVudC1kcm9wLWhhbmRsZS5tb2R1bGUnO1xuaW1wb3J0IHsgRWxlbWVudFJlbmRlcmVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIubW9kdWxlJztcbmltcG9ydCB7IENNU1ByZXZpZXdDb25maWcgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL3ByZXZpZXcnO1xuaW1wb3J0IHsgQ3VzdG9tVGVtcGxhdGVEaXJlY3RpdmVNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2N1c3RvbS10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnLi4vLi4vLi4vZW5naW5lL21vZGVscy9lbnRpdHknO1xuaW1wb3J0IHsgQ29tcGlsYXRpb25SZXN1bHQgfSBmcm9tICcuLi8uLi8uLi9tb2R1bGVzL3J1bnRpbWUvdHlwZXMvY29tcGlsYXRpb24udHlwZXMnO1xuaW1wb3J0IHsgRWxlbWVudE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvY29tbW9uLnR5cGVzJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YVdvcmtlciwgRWxlbWVudHNSZXNvbHZlciwgVHJhbnNwaWxhdGlvbldvcmtlciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IEZlZGVyYXRlZE1vZHVsZSB9IGZyb20gJy4uLy4uL2ZlZGVyYXRlZC9mZWRlcmF0ZWQubW9kdWxlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbXBpbGF0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgdWlEZWZpbml0aW9uTWV0YT86IFVJRGVmaW5pdGlvbk1ldGFkYXRhO1xuICBwcml2YXRlIGVsZW1lbnRzUmVzb2x2ZXI/OiBFbGVtZW50c1Jlc29sdmVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG4gIHB1YmxpYyBjb21waWxlVUlEZWZpbml0aW9uJCh1aURlZmluaXRpb246IFVJRGVmaW5pdGlvbiwgY29uZmlnPzogQ01TUHJldmlld0NvbmZpZyk6IE9ic2VydmFibGU8Q29tcGlsYXRpb25SZXN1bHQ+IHtcbiAgICByZXR1cm4gb2YoW10pLnBpcGUoXG4gICAgICBtYXAoKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGNoaWxkcmVuLCBwYWdlcywgY29tcG9uZW50cywgLi4udWlEZWZpbml0aW9uTWV0YSB9ID0gdWlEZWZpbml0aW9uO1xuICAgICAgICB0aGlzLnVpRGVmaW5pdGlvbk1ldGEgPSB1aURlZmluaXRpb25NZXRhO1xuXG4gICAgICAgIGNvbnN0IGVsZW1lbnRzID0gWy4uLihjaGlsZHJlbiA/PyBbXSksIC4uLihwYWdlcyA/PyBbXSldO1xuICAgICAgICBjb25zdCBzaGFyZWRFbGVtZW50cyA9IGNvbXBvbmVudHMgPz8gW107XG4gICAgICAgIHJldHVybiBbZWxlbWVudHMsIHNoYXJlZEVsZW1lbnRzXTtcbiAgICAgIH0pLFxuICAgICAgc3dpdGNoTWFwKGVsZW1lbnRzQ2h1bmtzID0+IGNvbWJpbmVMYXRlc3QoZWxlbWVudHNDaHVua3MubWFwKGNodW5rID0+IG5ldyBFbGVtZW50TWV0YWRhdGFXb3JrZXIoY2h1bmspLmdldCQoKSkpKSxcbiAgICAgIHN3aXRjaE1hcChkYXRhQ2h1bmtzID0+IGNvbWJpbmVMYXRlc3QoZGF0YUNodW5rcy5tYXAoY2h1bmsgPT4gbmV3IFRyYW5zcGlsYXRpb25Xb3JrZXIoY2h1bmspLmdldCQoKSkpKSxcbiAgICAgIG1hcCgoW21ldGFkYXRhLCBzaGFyZWRNZXRhZGF0YV0pID0+IHtcbiAgICAgICAgdGhpcy5lbGVtZW50c1Jlc29sdmVyID0gbmV3IEVsZW1lbnRzUmVzb2x2ZXIodWlEZWZpbml0aW9uLCBtZXRhZGF0YSA/PyBbXSwgc2hhcmVkTWV0YWRhdGEsIGNvbmZpZyk7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFR5cGVzID0gdGhpcy5lbGVtZW50c1Jlc29sdmVyLmdldE5nQ29tcG9uZW50cygpO1xuICAgICAgICBjb25zdCBtb2R1bGUgPSB0aGlzLmdldE1vZHVsZShjb21wb25lbnRUeXBlcyk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtb2R1bGVSZWY6IGNyZWF0ZU5nTW9kdWxlKG1vZHVsZSwgdGhpcy5pbmplY3RvciksXG4gICAgICAgICAgZWxlbWVudHM6IHRoaXMuZWxlbWVudHNSZXNvbHZlcj8uZWxlbWVudHMgPz8gW10sXG4gICAgICAgICAgY29tcG9uZW50VHlwZXMsXG4gICAgICAgIH07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGNvbXBpbGVFbGVtZW50JChlbGVtZW50OiBFbGVtZW50TWV0YWRhdGEpOiBPYnNlcnZhYmxlPENvbXBpbGF0aW9uUmVzdWx0PiB7XG4gICAgaWYgKCF0aGlzLnVpRGVmaW5pdGlvbk1ldGEpIHtcbiAgICAgIHRocm93ICdObyBVSSBEZWZpbml0aW9uIGNvbnRleHQnO1xuICAgIH1cblxuICAgIHJldHVybiBvZih0aGlzLnVpRGVmaW5pdGlvbk1ldGEpLnBpcGUoXG4gICAgICBtYXAodWlEZWZpbml0aW9uID0+IHtcbiAgICAgICAgY29uc3QgZWxlbWVudHNSZXNvbHZlciA9IHRoaXMuZWxlbWVudHNSZXNvbHZlciA/PyBuZXcgRWxlbWVudHNSZXNvbHZlcih1aURlZmluaXRpb24sIFtdKTtcbiAgICAgICAgZWxlbWVudHNSZXNvbHZlci5hZGRFbGVtZW50KGVsZW1lbnQpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRUeXBlcyA9IGVsZW1lbnRzUmVzb2x2ZXIuZ2V0TmdDb21wb25lbnRzKCk7XG4gICAgICAgIGNvbnN0IG1vZHVsZSA9IHRoaXMuZ2V0TW9kdWxlKGNvbXBvbmVudFR5cGVzKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1vZHVsZVJlZjogY3JlYXRlTmdNb2R1bGUobW9kdWxlLCB0aGlzLmluamVjdG9yKSxcbiAgICAgICAgICBlbGVtZW50czogdGhpcy5lbGVtZW50c1Jlc29sdmVyPy5lbGVtZW50cyA/PyBbXSxcbiAgICAgICAgICBjb21wb25lbnRUeXBlcyxcbiAgICAgICAgfTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy51aURlZmluaXRpb25NZXRhID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2R1bGUoY29tcG9uZW50czogUmVjb3JkPHN0cmluZywgVHlwZTxFbnRpdHk+Pik6IFR5cGU8TmdNb2R1bGU+IHtcbiAgICBATmdNb2R1bGUoe1xuICAgICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBEcmFnRHJvcE1vZHVsZSxcbiAgICAgICAgRG5kTW9kdWxlLFxuICAgICAgICBTY3JvbGxpbmdNb2R1bGUsXG4gICAgICAgIEVsZW1lbnRDaGlsZHJlbk1vZHVsZSxcbiAgICAgICAgRWxlbWVudFJlbmRlcmVyTW9kdWxlLFxuICAgICAgICBFbGVtZW50RHJvcEhhbmRsZU1vZHVsZSxcbiAgICAgICAgQ3VzdG9tVGVtcGxhdGVEaXJlY3RpdmVNb2R1bGUsXG4gICAgICAgIEZlZGVyYXRlZE1vZHVsZSxcbiAgICAgICAgU2RrUGlwZXNNb2R1bGUsXG4gICAgICAgIExldERpcmVjdGl2ZU1vZHVsZSxcbiAgICAgICAgSGlkZGVuVGV4dFRvb2x0aXBNb2R1bGUsXG4gICAgICAgIEVycm9yVG9vbHRpcE1vZHVsZSxcbiAgICAgIF0sXG4gICAgICBkZWNsYXJhdGlvbnM6IE9iamVjdC52YWx1ZXMoY29tcG9uZW50cyksXG4gICAgICBqaXQ6IHRydWUsXG4gICAgfSlcbiAgICBjbGFzcyBEeW5hbWljTW9kdWxlIHt9XG5cbiAgICByZXR1cm4gRHluYW1pY01vZHVsZTtcbiAgfVxufVxuIl19
@@ -1,6 +1,6 @@
1
1
  import { Directive } from '@angular/core';
2
- import { ConfigurationService, generateLineItem, getAttributeValue, LineItemWorker } from '@veloceapps/sdk/core';
3
- import { map, Subject, takeUntil } from 'rxjs';
2
+ import { ConfigurationService, LineItemWorker, generateLineItem, getAttributeValue } from '@veloceapps/sdk/core';
3
+ import { Subject, map, takeUntil } from 'rxjs';
4
4
  import { ELEMENT_METADATA } from '../injection-tokens';
5
5
  import { parseBoundPath } from '../utils/path.utils';
6
6
  import * as i0 from "@angular/core";
@@ -13,7 +13,11 @@ export class ConfigurationPlugin {
13
13
  if (this.elementMetadata.model?.lineItem) {
14
14
  this.host.model$.pipe(takeUntil(this.destroy$)).subscribe(model => (this.modelSnapshot = model));
15
15
  const pathBlocks = parseBoundPath(this.elementMetadata.model?.lineItem);
16
- const { type, property, name } = pathBlocks.reverse()[0];
16
+ const firstPathBlock = pathBlocks.reverse()[0];
17
+ if (!firstPathBlock) {
18
+ return;
19
+ }
20
+ const { type, property, name } = firstPathBlock;
17
21
  this.host.boundName = name ?? type;
18
22
  this.register(type, property, name);
19
23
  }
@@ -102,4 +106,4 @@ ConfigurationPlugin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", ve
102
106
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationPlugin, decorators: [{
103
107
  type: Directive
104
108
  }], ctorParameters: function () { return [{ type: undefined }]; } });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvcGx1Z2lucy9jb25maWd1cmF0aW9uLnBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqSCxPQUFPLEVBQUUsR0FBRyxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUdyRCxNQUFNLE9BQU8sbUJBQW1CO0lBTzlCLFlBQW1CLElBQTZDO1FBQTdDLFNBQUksR0FBSixJQUFJLENBQXlDO1FBTHhELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBTXJDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRXpFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUss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QUFpQixDQUFDLEtBQUssRUFBRSxVQUFVLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVyRyxNQUFNLEtBQUssR0FBRyxDQUFDLEtBQVUsRUFBUSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN2QixPQUFPO2FBQ1I7WUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0csQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBWSxhQUFhO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLElBQTJDLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFzQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFZLFFBQVE7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBc0MsQ0FBQztJQUNyRCxDQUFDOztnSEF0SFUsbUJBQW1CO29HQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFEL0IsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaW5lSXRlbSB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblNlcnZpY2UsIGdlbmVyYXRlTGluZUl0ZW0sIGdldEF0dHJpYnV0ZVZhbHVlLCBMaW5lSXRlbVdvcmtlciB9IGZyb20gJ0B2ZWxvY2VhcHBzL3Nkay9jb3JlJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9lbGVtZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbHVnaW5Db21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3BsdWdpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRUxFTUVOVF9NRVRBREFUQSB9IGZyb20gJy4uL2luamVjdGlvbi10b2tlbnMnO1xuaW1wb3J0IHsgQXR0cmlidXRlRWxlbWVudCwgQ29uZmlndXJhdGlvbkVsZW1lbnQsIFBvcnRFbGVtZW50LCBUeXBlRWxlbWVudCB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5pbXBvcnQgeyBwYXJzZUJvdW5kUGF0aCB9IGZyb20gJy4uL3V0aWxzL3BhdGgudXRpbHMnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uUGx1Z2luIGltcGxlbWVudHMgUGx1Z2luQ29tcG9uZW50LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIG1vZGVsU25hcHNob3Q/OiBMaW5lSXRlbTtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBlbGVtZW50TWV0YWRhdGE6IEVsZW1lbnRNZXRhZGF0YTtcbiAgcHJpdmF0ZSBjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGhvc3Q6IEVsZW1lbnRDb21wb25lbnQgJiBDb25maWd1cmF0aW9uRWxlbWVudCkge1xuICAgIHRoaXMuZWxlbWVudE1ldGFkYXRhID0gdGhpcy5ob3N0LmluamVjdG9yLmdldChFTEVNRU5UX01FVEFEQVRBKTtcbiAgICB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlID0gdGhpcy5ob3N0LmluamVjdG9yLmdldChDb25maWd1cmF0aW9uU2VydmljZSk7XG5cbiAgICBpZiAodGhpcy5lbGVtZW50TWV0YWRhdGEubW9kZWw/LmxpbmVJdGVtKSB7XG4gICAgICB0aGlzLmhvc3QubW9kZWwkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUobW9kZWwgPT4gKHRoaXMubW9kZWxTbmFwc2hvdCA9IG1vZGVsKSk7XG5cbiAgICAgIGNvbnN0IHBhdGhCbG9ja3MgPSBwYXJzZUJvdW5kUGF0aCh0aGlzLmVsZW1lbnRNZXRhZGF0YS5tb2RlbD8ubGluZUl0ZW0pO1xuICAgICAgY29uc3QgeyB0eXBlLCBwcm9wZXJ0eSwgbmFtZSB9ID0gcGF0aEJsb2Nrcy5yZXZlcnNlKClbMF07XG5cbiAgICAgIHRoaXMuaG9zdC5ib3VuZE5hbWUgPSBuYW1lID8/IHR5cGU7XG5cbiAgICAgIHRoaXMucmVnaXN0ZXIodHlwZSwgcHJvcGVydHksIG5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyKHR5cGU/OiBzdHJpbmcsIHByb3BlcnR5Pzogc3RyaW5nLCBuYW1lPzogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0eXBlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wZXJ0eSkge1xuICAgICAgdGhpcy5yZWdpc3RlclR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHByb3BlcnR5ID09PSAncG9ydHMnICYmIG5hbWUpIHtcbiAgICAgIHRoaXMucmVnaXN0ZXJQb3J0KG5hbWUpO1xuICAgIH0gZWxzZSBpZiAocHJvcGVydHkgPT09ICdhdHRyaWJ1dGVzJyAmJiBuYW1lKSB7XG4gICAgICB0aGlzLnJlZ2lzdGVyQXR0cmlidXRlKG5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVnaXN0ZXJUeXBlKCk6IHZvaWQge1xuICAgIGNvbnN0IHJlbW92ZSA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGNvbnN0IHJvb3RMaW5lSXRlbSA9IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuZ2V0U25hcHNob3QoKTtcbiAgICAgIGlmICghcm9vdExpbmVJdGVtIHx8ICF0aGlzLm1vZGVsU25hcHNob3QpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5wYXRjaChuZXcgTGluZUl0ZW1Xb3JrZXIocm9vdExpbmVJdGVtKS5yZW1vdmUodGhpcy5tb2RlbFNuYXBzaG90LmlkKS5saSk7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZVF0eSA9IChxdHk6IG51bWJlcik6IHZvaWQgPT4ge1xuICAgICAgY29uc3Qgcm9vdExpbmVJdGVtID0gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5nZXRTbmFwc2hvdCgpO1xuICAgICAgaWYgKCFyb290TGluZUl0ZW0gfHwgIXRoaXMubW9kZWxTbmFwc2hvdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLnBhdGNoKG5ldyBMaW5lSXRlbVdvcmtlcihyb290TGluZUl0ZW0pLnJlcGxhY2UoeyAuLi50aGlzLm1vZGVsU25hcHNob3QsIHF0eSB9KS5saSk7XG4gICAgfTtcblxuICAgIHRoaXMudHlwZUhvc3QucmVtb3ZlID0gcmVtb3ZlO1xuICAgIHRoaXMudHlwZUhvc3QudXBkYXRlUXR5ID0gdXBkYXRlUXR5O1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3RlclBvcnQobmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWwkID0gdGhpcy5ob3N0Lm1vZGVsJCBhcyBPYnNlcnZhYmxlPExpbmVJdGVtIHwgdW5kZWZpbmVkPjtcblxuICAgIGNvbnN0IHBvcnRJdGVtcyQgPSBtb2RlbCQucGlwZShtYXAobW9kZWwgPT4gbW9kZWw/LmxpbmVJdGVtcy5maWx0ZXIobGkgPT4gbGkucG9ydCA9PT0gdGhpcy5ob3N0LmJvdW5kTmFtZSkgPz8gW10pKTtcbiAgICBjb25zdCBwb3J0RG9tYWluJCA9IG1vZGVsJC5waXBlKG1hcChtb2RlbCA9PiBtb2RlbD8ucG9ydERvbWFpbnNbdGhpcy5ob3N0LmJvdW5kTmFtZV0pKTtcblxuICAgIGNvbnN0IGFkZCA9ICh0eXBlOiBzdHJpbmcsIGF0dHJpYnV0ZXM6IHsgbmFtZTogc3RyaW5nOyB2YWx1ZTogYW55IH1bXSA9IFtdKTogdm9pZCA9PiB7XG4gICAgICBpZiAoIXRoaXMubW9kZWxTbmFwc2hvdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBvcnREb21haW4gPSB0aGlzLm1vZGVsU25hcHNob3QucG9ydERvbWFpbnNbbmFtZV07XG4gICAgICBpZiAoIXBvcnREb21haW4pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBnZW5lcmF0ZWQgPSBnZW5lcmF0ZUxpbmVJdGVtKHBvcnREb21haW4ubmFtZSwgdHlwZSwgdGhpcy5tb2RlbFNuYXBzaG90LmlkLCBhdHRyaWJ1dGVzKTtcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UucGF0Y2goXG4gICAgICAgIG5ldyBMaW5lSXRlbVdvcmtlcih0aGlzLm1vZGVsU25hcHNob3QpLmluc2VydCh0aGlzLm1vZGVsU25hcHNob3QuaWQsIGdlbmVyYXRlZCkubGksXG4gICAgICApO1xuICAgIH07XG5cbiAgICB0aGlzLnBvcnRIb3N0LnBvcnRJdGVtcyQgPSBwb3J0SXRlbXMkO1xuICAgIHRoaXMucG9ydEhvc3QucG9ydERvbWFpbiQgPSBwb3J0RG9tYWluJDtcbiAgICB0aGlzLnBvcnRIb3N0LmFkZFBvcnRJdGVtID0gYWRkO1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3RlckF0dHJpYnV0ZShuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaG9zdC5tb2RlbCQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSQgPSB0aGlzLmhvc3QubW9kZWwkLnBpcGUobWFwKG1vZGVsID0+IGdldEF0dHJpYnV0ZVZhbHVlKG1vZGVsPy5hdHRyaWJ1dGVzID8/IFtdLCBuYW1lKSkpO1xuXG4gICAgY29uc3QgcGF0Y2ggPSAodmFsdWU6IGFueSk6IHZvaWQgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1vZGVsU25hcHNob3QpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5wYXRjaChuZXcgTGluZUl0ZW1Xb3JrZXIodGhpcy5tb2RlbFNuYXBzaG90KS5wYXRjaEF0dHJpYnV0ZShbeyBuYW1lLCB2YWx1ZSB9XSkubGkpO1xuICAgIH07XG5cbiAgICB0aGlzLmF0dHJpYnV0ZUhvc3QudmFsdWUkID0gdmFsdWUkO1xuICAgIHRoaXMuYXR0cmlidXRlSG9zdC5wYXRjaCA9IHBhdGNoO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgYXR0cmlidXRlSG9zdCgpOiBFbGVtZW50Q29tcG9uZW50ICYgQXR0cmlidXRlRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdCBhcyBFbGVtZW50Q29tcG9uZW50ICYgQXR0cmlidXRlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHR5cGVIb3N0KCk6IEVsZW1lbnRDb21wb25lbnQgJiBUeXBlRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdCBhcyBFbGVtZW50Q29tcG9uZW50ICYgVHlwZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBwb3J0SG9zdCgpOiBFbGVtZW50Q29tcG9uZW50ICYgUG9ydEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmhvc3QgYXMgRWxlbWVudENvbXBvbmVudCAmIFBvcnRFbGVtZW50O1xuICB9XG59XG4iXX0=
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvcGx1Z2lucy9jb25maWd1cmF0aW9uLnBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqSCxPQUFPLEVBQWMsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUdyRCxNQUFNLE9BQU8sbUJBQW1CO0lBTzlCLFlBQW1CLElBQTZDO1FBQTdDLFNBQUksR0FBSixJQUFJLENBQXlDO1FBTHhELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBTXJDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRXpFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFakcsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3hFLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNuQixPQUFPO2FBQ1I7WUFFRCxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxjQUFjLENBQUM7WUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxJQUFJLElBQUksQ0FBQztZQUVuQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLFFBQVEsQ0FBQyxJQUFZLEVBQUUsUUFBaUIsRUFBRSxJQUFhO1FBQzdELElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3JCO2FBQU0sSUFBSSxRQUFRLEtBQUssT0FBTyxJQUFJLElBQUksRUFBRTtZQUN2QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3pCO2FBQU0sSUFBSSxRQUFRLEtBQUssWUFBWSxJQUFJLElBQUksRUFBRTtZQUM1QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRU8sWUFBWTtRQUNsQixNQUFNLE1BQU0sR0FBRyxHQUFTLEVBQUU7WUFDeEIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzdELElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN4QyxPQUFPO2FBQ1I7WUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JHLENBQUMsQ0FBQztRQUVGLE1BQU0sU0FBUyxHQUFHLENBQUMsR0FBVyxFQUFRLEVBQUU7WUFDdEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzdELElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN4QyxPQUFPO2FBQ1I7WUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9HLENBQUMsQ0FBQztRQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDdEMsQ0FBQztJQUVPLFlBQVksQ0FBQyxJQUFZO1FBQy9CLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBMEMsQ0FBQztRQUVwRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbkgsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXZGLE1BQU0sR0FBRyxHQUFHLENBQUMsSUFBWSxFQUFFLGFBQTZDLEVBQUUsRUFBUSxFQUFFO1lBQ2xGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN2QixPQUFPO2FBQ1I7WUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4RCxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNmLE9BQU87YUFDUjtZQUVELE1BQU0sU0FBUyxHQUFHLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzdGLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQzdCLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUNuRixDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUM7SUFDbEMsQ0FBQztJQUVPLGlCQUFpQixDQUFDLElBQVk7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3JCLE9BQU87U0FDUjtRQUVELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsVUFBVSxJQUFJLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFckcsTUFBTSxLQUFLLEdBQUcsQ0FBQyxLQUFVLEVBQVEsRUFBRTtZQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDdkIsT0FBTzthQUNSO1lBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9HLENBQUMsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQVksYUFBYTtRQUN2QixPQUFPLElBQUksQ0FBQyxJQUEyQyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFZLFFBQVE7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBc0MsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQXNDLENBQUM7SUFDckQsQ0FBQzs7Z0hBMUhVLG1CQUFtQjtvR0FBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGluZUl0ZW0gfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlLCBMaW5lSXRlbVdvcmtlciwgZ2VuZXJhdGVMaW5lSXRlbSwgZ2V0QXR0cmlidXRlVmFsdWUgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZWxlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGx1Z2luQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9wbHVnaW4uY29tcG9uZW50JztcbmltcG9ydCB7IEVMRU1FTlRfTUVUQURBVEEgfSBmcm9tICcuLi9pbmplY3Rpb24tdG9rZW5zJztcbmltcG9ydCB7IEF0dHJpYnV0ZUVsZW1lbnQsIENvbmZpZ3VyYXRpb25FbGVtZW50LCBQb3J0RWxlbWVudCwgVHlwZUVsZW1lbnQgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgcGFyc2VCb3VuZFBhdGggfSBmcm9tICcuLi91dGlscy9wYXRoLnV0aWxzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvblBsdWdpbiBpbXBsZW1lbnRzIFBsdWdpbkNvbXBvbmVudCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBtb2RlbFNuYXBzaG90PzogTGluZUl0ZW07XG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgZWxlbWVudE1ldGFkYXRhOiBFbGVtZW50TWV0YWRhdGE7XG4gIHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBob3N0OiBFbGVtZW50Q29tcG9uZW50ICYgQ29uZmlndXJhdGlvbkVsZW1lbnQpIHtcbiAgICB0aGlzLmVsZW1lbnRNZXRhZGF0YSA9IHRoaXMuaG9zdC5pbmplY3Rvci5nZXQoRUxFTUVOVF9NRVRBREFUQSk7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZSA9IHRoaXMuaG9zdC5pbmplY3Rvci5nZXQoQ29uZmlndXJhdGlvblNlcnZpY2UpO1xuXG4gICAgaWYgKHRoaXMuZWxlbWVudE1ldGFkYXRhLm1vZGVsPy5saW5lSXRlbSkge1xuICAgICAgdGhpcy5ob3N0Lm1vZGVsJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKG1vZGVsID0+ICh0aGlzLm1vZGVsU25hcHNob3QgPSBtb2RlbCkpO1xuXG4gICAgICBjb25zdCBwYXRoQmxvY2tzID0gcGFyc2VCb3VuZFBhdGgodGhpcy5lbGVtZW50TWV0YWRhdGEubW9kZWw/LmxpbmVJdGVtKTtcbiAgICAgIGNvbnN0IGZpcnN0UGF0aEJsb2NrID0gcGF0aEJsb2Nrcy5yZXZlcnNlKClbMF07XG4gICAgICBpZiAoIWZpcnN0UGF0aEJsb2NrKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyB0eXBlLCBwcm9wZXJ0eSwgbmFtZSB9ID0gZmlyc3RQYXRoQmxvY2s7XG4gICAgICB0aGlzLmhvc3QuYm91bmROYW1lID0gbmFtZSA/PyB0eXBlO1xuXG4gICAgICB0aGlzLnJlZ2lzdGVyKHR5cGUsIHByb3BlcnR5LCBuYW1lKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3Rlcih0eXBlOiBzdHJpbmcsIHByb3BlcnR5Pzogc3RyaW5nLCBuYW1lPzogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0eXBlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wZXJ0eSkge1xuICAgICAgdGhpcy5yZWdpc3RlclR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHByb3BlcnR5ID09PSAncG9ydHMnICYmIG5hbWUpIHtcbiAgICAgIHRoaXMucmVnaXN0ZXJQb3J0KG5hbWUpO1xuICAgIH0gZWxzZSBpZiAocHJvcGVydHkgPT09ICdhdHRyaWJ1dGVzJyAmJiBuYW1lKSB7XG4gICAgICB0aGlzLnJlZ2lzdGVyQXR0cmlidXRlKG5hbWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVnaXN0ZXJUeXBlKCk6IHZvaWQge1xuICAgIGNvbnN0IHJlbW92ZSA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGNvbnN0IHJvb3RMaW5lSXRlbSA9IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuZ2V0U25hcHNob3QoKTtcbiAgICAgIGlmICghcm9vdExpbmVJdGVtIHx8ICF0aGlzLm1vZGVsU25hcHNob3QpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5wYXRjaChuZXcgTGluZUl0ZW1Xb3JrZXIocm9vdExpbmVJdGVtKS5yZW1vdmUodGhpcy5tb2RlbFNuYXBzaG90LmlkKS5saSk7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZVF0eSA9IChxdHk6IG51bWJlcik6IHZvaWQgPT4ge1xuICAgICAgY29uc3Qgcm9vdExpbmVJdGVtID0gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5nZXRTbmFwc2hvdCgpO1xuICAgICAgaWYgKCFyb290TGluZUl0ZW0gfHwgIXRoaXMubW9kZWxTbmFwc2hvdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLnBhdGNoKG5ldyBMaW5lSXRlbVdvcmtlcihyb290TGluZUl0ZW0pLnJlcGxhY2UoeyAuLi50aGlzLm1vZGVsU25hcHNob3QsIHF0eSB9KS5saSk7XG4gICAgfTtcblxuICAgIHRoaXMudHlwZUhvc3QucmVtb3ZlID0gcmVtb3ZlO1xuICAgIHRoaXMudHlwZUhvc3QudXBkYXRlUXR5ID0gdXBkYXRlUXR5O1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3RlclBvcnQobmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWwkID0gdGhpcy5ob3N0Lm1vZGVsJCBhcyBPYnNlcnZhYmxlPExpbmVJdGVtIHwgdW5kZWZpbmVkPjtcblxuICAgIGNvbnN0IHBvcnRJdGVtcyQgPSBtb2RlbCQucGlwZShtYXAobW9kZWwgPT4gbW9kZWw/LmxpbmVJdGVtcy5maWx0ZXIobGkgPT4gbGkucG9ydCA9PT0gdGhpcy5ob3N0LmJvdW5kTmFtZSkgPz8gW10pKTtcbiAgICBjb25zdCBwb3J0RG9tYWluJCA9IG1vZGVsJC5waXBlKG1hcChtb2RlbCA9PiBtb2RlbD8ucG9ydERvbWFpbnNbdGhpcy5ob3N0LmJvdW5kTmFtZV0pKTtcblxuICAgIGNvbnN0IGFkZCA9ICh0eXBlOiBzdHJpbmcsIGF0dHJpYnV0ZXM6IHsgbmFtZTogc3RyaW5nOyB2YWx1ZTogYW55IH1bXSA9IFtdKTogdm9pZCA9PiB7XG4gICAgICBpZiAoIXRoaXMubW9kZWxTbmFwc2hvdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBvcnREb21haW4gPSB0aGlzLm1vZGVsU25hcHNob3QucG9ydERvbWFpbnNbbmFtZV07XG4gICAgICBpZiAoIXBvcnREb21haW4pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBnZW5lcmF0ZWQgPSBnZW5lcmF0ZUxpbmVJdGVtKHBvcnREb21haW4ubmFtZSwgdHlwZSwgdGhpcy5tb2RlbFNuYXBzaG90LmlkLCBhdHRyaWJ1dGVzKTtcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UucGF0Y2goXG4gICAgICAgIG5ldyBMaW5lSXRlbVdvcmtlcih0aGlzLm1vZGVsU25hcHNob3QpLmluc2VydCh0aGlzLm1vZGVsU25hcHNob3QuaWQsIGdlbmVyYXRlZCkubGksXG4gICAgICApO1xuICAgIH07XG5cbiAgICB0aGlzLnBvcnRIb3N0LnBvcnRJdGVtcyQgPSBwb3J0SXRlbXMkO1xuICAgIHRoaXMucG9ydEhvc3QucG9ydERvbWFpbiQgPSBwb3J0RG9tYWluJDtcbiAgICB0aGlzLnBvcnRIb3N0LmFkZFBvcnRJdGVtID0gYWRkO1xuICB9XG5cbiAgcHJpdmF0ZSByZWdpc3RlckF0dHJpYnV0ZShuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaG9zdC5tb2RlbCQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSQgPSB0aGlzLmhvc3QubW9kZWwkLnBpcGUobWFwKG1vZGVsID0+IGdldEF0dHJpYnV0ZVZhbHVlKG1vZGVsPy5hdHRyaWJ1dGVzID8/IFtdLCBuYW1lKSkpO1xuXG4gICAgY29uc3QgcGF0Y2ggPSAodmFsdWU6IGFueSk6IHZvaWQgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1vZGVsU25hcHNob3QpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5wYXRjaChuZXcgTGluZUl0ZW1Xb3JrZXIodGhpcy5tb2RlbFNuYXBzaG90KS5wYXRjaEF0dHJpYnV0ZShbeyBuYW1lLCB2YWx1ZSB9XSkubGkpO1xuICAgIH07XG5cbiAgICB0aGlzLmF0dHJpYnV0ZUhvc3QudmFsdWUkID0gdmFsdWUkO1xuICAgIHRoaXMuYXR0cmlidXRlSG9zdC5wYXRjaCA9IHBhdGNoO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgYXR0cmlidXRlSG9zdCgpOiBFbGVtZW50Q29tcG9uZW50ICYgQXR0cmlidXRlRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdCBhcyBFbGVtZW50Q29tcG9uZW50ICYgQXR0cmlidXRlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHR5cGVIb3N0KCk6IEVsZW1lbnRDb21wb25lbnQgJiBUeXBlRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdCBhcyBFbGVtZW50Q29tcG9uZW50ICYgVHlwZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBwb3J0SG9zdCgpOiBFbGVtZW50Q29tcG9uZW50ICYgUG9ydEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmhvc3QgYXMgRWxlbWVudENvbXBvbmVudCAmIFBvcnRFbGVtZW50O1xuICB9XG59XG4iXX0=
@@ -30,18 +30,19 @@ export class IOProviderService {
30
30
  return this.createSubjectSafe(absolutePath ?? '', finalName, undefined);
31
31
  }
32
32
  createSubjectSafe(path, name, subject) {
33
+ const pathInputs = this.inputs[path] ?? {};
33
34
  if (!this.inputs[path]) {
34
- this.inputs[path] = {};
35
+ this.inputs[path] = pathInputs;
35
36
  }
36
- const subjectAlreadyExists = Boolean(this.inputs[path][name]);
37
- if (!this.inputs[path][name]) {
38
- this.inputs[path][name] = subject ?? new BehaviorSubject(undefined);
39
- }
40
- if (subject && subjectAlreadyExists) {
37
+ const actual = pathInputs[name] ?? subject ?? new BehaviorSubject(undefined);
38
+ if (subject && pathInputs[name]) {
41
39
  // push delayed value to workaround 'changed after it was checked' issue
42
- setTimeout(() => this.inputs[path][name].next(subject.value));
40
+ setTimeout(() => actual.next(subject.value));
41
+ }
42
+ if (!pathInputs[name]) {
43
+ pathInputs[name] = actual;
43
44
  }
44
- return this.inputs[path][name];
45
+ return actual;
45
46
  }
46
47
  }
47
48
  IOProviderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IOProviderService, deps: [{ token: i1.RuntimeService }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -49,4 +50,4 @@ IOProviderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ve
49
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: IOProviderService, decorators: [{
50
51
  type: Injectable
51
52
  }], ctorParameters: function () { return [{ type: i1.RuntimeService }]; } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW8tcHJvdmlkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9zZXJ2aWNlcy9pby1wcm92aWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBR2pFLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRjFDLFdBQU0sR0FBaUQsRUFBRSxDQUFDO0lBRWIsQ0FBQztJQUUvQyxPQUFPLENBQUMsRUFBbUIsRUFBRSxJQUFZLEVBQUUsTUFBc0I7UUFDdEUsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVNLE9BQU8sQ0FBQyxFQUFtQixFQUFFLElBQVksRUFBRSxNQUFzQjtRQUN0RSxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sYUFBYSxDQUFDLEVBQW1CLEVBQUUsSUFBWSxFQUFFLE1BQXNCO1FBQzdFLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDO1FBRXZCLElBQUksTUFBTSxFQUFFO1lBQ1YsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDcEQ7UUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkUsSUFBSSxXQUFXLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN4RjtRQUVELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQztRQUMxQyxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXRGLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBWSxFQUFFLE9BQThCO1FBQ2xGLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ3hCO1FBRUQsTUFBTSxvQkFBb0IsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRTlELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxJQUFJLElBQUksZUFBZSxDQUFNLFNBQVMsQ0FBQyxDQUFDO1NBQzFFO1FBRUQsSUFBSSxPQUFPLElBQUksb0JBQW9CLEVBQUU7WUFDbkMsd0VBQXdFO1lBQ3hFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMvRDtRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDOzs4R0FqRFUsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSdW50aW1lU2VydmljZSB9IGZyb20gJy4uL21vZHVsZXMvcnVudGltZS9zZXJ2aWNlcy9ydW50aW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgRWxlbWVudE1ldGFkYXRhIH0gZnJvbSAnLi4vdHlwZXMvY29tbW9uLnR5cGVzJztcbmltcG9ydCB7IGdldEFic29sdXRlUGF0aCwgcGFyc2VQYXRoIH0gZnJvbSAnLi4vdXRpbHMvcGF0aC51dGlscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJT1Byb3ZpZGVyU2VydmljZSB7XG4gIHByaXZhdGUgaW5wdXRzOiBEaWN0aW9uYXJ5PERpY3Rpb25hcnk8QmVoYXZpb3JTdWJqZWN0PGFueT4+PiA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcnVudGltZVNlcnZpY2U6IFJ1bnRpbWVTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBjb25uZWN0KGVsOiBFbGVtZW50TWV0YWRhdGEsIG5hbWU6IHN0cmluZywgdGFyZ2V0Pzogc3RyaW5nIHwgbnVsbCk6IE9ic2VydmFibGU8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZVRhcmdldChlbCwgbmFtZSwgdGFyZ2V0KT8uYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgcHJvdmlkZShlbDogRWxlbWVudE1ldGFkYXRhLCBuYW1lOiBzdHJpbmcsIHRhcmdldD86IHN0cmluZyB8IG51bGwpOiBCZWhhdmlvclN1YmplY3Q8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZVRhcmdldChlbCwgbmFtZSwgdGFyZ2V0KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZVRhcmdldChlbDogRWxlbWVudE1ldGFkYXRhLCBuYW1lOiBzdHJpbmcsIHRhcmdldD86IHN0cmluZyB8IG51bGwpOiBCZWhhdmlvclN1YmplY3Q8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgaXNIb3N0ID0gIXRhcmdldDtcblxuICAgIGlmIChpc0hvc3QpIHtcbiAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVN1YmplY3RTYWZlKGVsLnBhdGggPz8gJycsIG5hbWUpO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGhJc1ZhbHVlID0gdGFyZ2V0LnN0YXJ0c1dpdGgoJ1wiJykgJiYgdGFyZ2V0LmVuZHNXaXRoKCdcIicpO1xuICAgIGlmIChwYXRoSXNWYWx1ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU3ViamVjdFNhZmUoZWwucGF0aCwgbmFtZSwgbmV3IEJlaGF2aW9yU3ViamVjdCh0YXJnZXQuc2xpY2UoMSwgLTEpKSk7XG4gICAgfVxuXG4gICAgY29uc3QgZWxQYXRoID0gcGFyc2VQYXRoKHRhcmdldCk7XG4gICAgY29uc3QgZmluYWxOYW1lID0gZWxQYXRoLnZhcmlhYmxlID8/IG5hbWU7XG4gICAgY29uc3QgYWJzb2x1dGVQYXRoID0gZ2V0QWJzb2x1dGVQYXRoKHRoaXMucnVudGltZVNlcnZpY2UuYXBwbGljYXRpb25UcmVlLCBlbCwgZWxQYXRoKTtcblxuICAgIHJldHVybiB0aGlzLmNyZWF0ZVN1YmplY3RTYWZlKGFic29sdXRlUGF0aCA/PyAnJywgZmluYWxOYW1lLCB1bmRlZmluZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVTdWJqZWN0U2FmZShwYXRoOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgc3ViamVjdD86IEJlaGF2aW9yU3ViamVjdDxhbnk+KTogQmVoYXZpb3JTdWJqZWN0PGFueT4ge1xuICAgIGlmICghdGhpcy5pbnB1dHNbcGF0aF0pIHtcbiAgICAgIHRoaXMuaW5wdXRzW3BhdGhdID0ge307XG4gICAgfVxuXG4gICAgY29uc3Qgc3ViamVjdEFscmVhZHlFeGlzdHMgPSBCb29sZWFuKHRoaXMuaW5wdXRzW3BhdGhdW25hbWVdKTtcblxuICAgIGlmICghdGhpcy5pbnB1dHNbcGF0aF1bbmFtZV0pIHtcbiAgICAgIHRoaXMuaW5wdXRzW3BhdGhdW25hbWVdID0gc3ViamVjdCA/PyBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4odW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAoc3ViamVjdCAmJiBzdWJqZWN0QWxyZWFkeUV4aXN0cykge1xuICAgICAgLy8gcHVzaCBkZWxheWVkIHZhbHVlIHRvIHdvcmthcm91bmQgJ2NoYW5nZWQgYWZ0ZXIgaXQgd2FzIGNoZWNrZWQnIGlzc3VlXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuaW5wdXRzW3BhdGhdW25hbWVdLm5leHQoc3ViamVjdC52YWx1ZSkpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmlucHV0c1twYXRoXVtuYW1lXTtcbiAgfVxufVxuIl19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW8tcHJvdmlkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9zZXJ2aWNlcy9pby1wcm92aWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBR2pFLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRjFDLFdBQU0sR0FBaUQsRUFBRSxDQUFDO0lBRWIsQ0FBQztJQUUvQyxPQUFPLENBQUMsRUFBbUIsRUFBRSxJQUFZLEVBQUUsTUFBc0I7UUFDdEUsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVNLE9BQU8sQ0FBQyxFQUFtQixFQUFFLElBQVksRUFBRSxNQUFzQjtRQUN0RSxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sYUFBYSxDQUFDLEVBQW1CLEVBQUUsSUFBWSxFQUFFLE1BQXNCO1FBQzdFLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDO1FBRXZCLElBQUksTUFBTSxFQUFFO1lBQ1YsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDcEQ7UUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkUsSUFBSSxXQUFXLEVBQUU7WUFDZixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN4RjtRQUVELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQztRQUMxQyxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXRGLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBWSxFQUFFLE9BQThCO1FBQ2xGLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDO1NBQ2hDO1FBRUQsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLE9BQU8sSUFBSSxJQUFJLGVBQWUsQ0FBTSxTQUFTLENBQUMsQ0FBQztRQUVsRixJQUFJLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0Isd0VBQXdFO1lBQ3hFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzlDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNyQixVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDO1NBQzNCO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7OEdBbERVLGlCQUFpQjtrSEFBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5pbXBvcnQgeyBnZXRBYnNvbHV0ZVBhdGgsIHBhcnNlUGF0aCB9IGZyb20gJy4uL3V0aWxzL3BhdGgudXRpbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSU9Qcm92aWRlclNlcnZpY2Uge1xuICBwcml2YXRlIGlucHV0czogRGljdGlvbmFyeTxEaWN0aW9uYXJ5PEJlaGF2aW9yU3ViamVjdDxhbnk+Pj4gPSB7fTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJ1bnRpbWVTZXJ2aWNlOiBSdW50aW1lU2VydmljZSkge31cblxuICBwdWJsaWMgY29ubmVjdChlbDogRWxlbWVudE1ldGFkYXRhLCBuYW1lOiBzdHJpbmcsIHRhcmdldD86IHN0cmluZyB8IG51bGwpOiBPYnNlcnZhYmxlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVUYXJnZXQoZWwsIG5hbWUsIHRhcmdldCk/LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIHByb3ZpZGUoZWw6IEVsZW1lbnRNZXRhZGF0YSwgbmFtZTogc3RyaW5nLCB0YXJnZXQ/OiBzdHJpbmcgfCBudWxsKTogQmVoYXZpb3JTdWJqZWN0PGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVUYXJnZXQoZWwsIG5hbWUsIHRhcmdldCk7XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVUYXJnZXQoZWw6IEVsZW1lbnRNZXRhZGF0YSwgbmFtZTogc3RyaW5nLCB0YXJnZXQ/OiBzdHJpbmcgfCBudWxsKTogQmVoYXZpb3JTdWJqZWN0PGFueT4gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGlzSG9zdCA9ICF0YXJnZXQ7XG5cbiAgICBpZiAoaXNIb3N0KSB7XG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVTdWJqZWN0U2FmZShlbC5wYXRoID8/ICcnLCBuYW1lKTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXRoSXNWYWx1ZSA9IHRhcmdldC5zdGFydHNXaXRoKCdcIicpICYmIHRhcmdldC5lbmRzV2l0aCgnXCInKTtcbiAgICBpZiAocGF0aElzVmFsdWUpIHtcbiAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVN1YmplY3RTYWZlKGVsLnBhdGgsIG5hbWUsIG5ldyBCZWhhdmlvclN1YmplY3QodGFyZ2V0LnNsaWNlKDEsIC0xKSkpO1xuICAgIH1cblxuICAgIGNvbnN0IGVsUGF0aCA9IHBhcnNlUGF0aCh0YXJnZXQpO1xuICAgIGNvbnN0IGZpbmFsTmFtZSA9IGVsUGF0aC52YXJpYWJsZSA/PyBuYW1lO1xuICAgIGNvbnN0IGFic29sdXRlUGF0aCA9IGdldEFic29sdXRlUGF0aCh0aGlzLnJ1bnRpbWVTZXJ2aWNlLmFwcGxpY2F0aW9uVHJlZSwgZWwsIGVsUGF0aCk7XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVTdWJqZWN0U2FmZShhYnNvbHV0ZVBhdGggPz8gJycsIGZpbmFsTmFtZSwgdW5kZWZpbmVkKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlU3ViamVjdFNhZmUocGF0aDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHN1YmplY3Q/OiBCZWhhdmlvclN1YmplY3Q8YW55Pik6IEJlaGF2aW9yU3ViamVjdDxhbnk+IHtcbiAgICBjb25zdCBwYXRoSW5wdXRzID0gdGhpcy5pbnB1dHNbcGF0aF0gPz8ge307XG4gICAgaWYgKCF0aGlzLmlucHV0c1twYXRoXSkge1xuICAgICAgdGhpcy5pbnB1dHNbcGF0aF0gPSBwYXRoSW5wdXRzO1xuICAgIH1cblxuICAgIGNvbnN0IGFjdHVhbCA9IHBhdGhJbnB1dHNbbmFtZV0gPz8gc3ViamVjdCA/PyBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4odW5kZWZpbmVkKTtcblxuICAgIGlmIChzdWJqZWN0ICYmIHBhdGhJbnB1dHNbbmFtZV0pIHtcbiAgICAgIC8vIHB1c2ggZGVsYXllZCB2YWx1ZSB0byB3b3JrYXJvdW5kICdjaGFuZ2VkIGFmdGVyIGl0IHdhcyBjaGVja2VkJyBpc3N1ZVxuICAgICAgc2V0VGltZW91dCgoKSA9PiBhY3R1YWwubmV4dChzdWJqZWN0LnZhbHVlKSk7XG4gICAgfVxuXG4gICAgaWYgKCFwYXRoSW5wdXRzW25hbWVdKSB7XG4gICAgICBwYXRoSW5wdXRzW25hbWVdID0gYWN0dWFsO1xuICAgIH1cblxuICAgIHJldHVybiBhY3R1YWw7XG4gIH1cbn1cbiJdfQ==
@@ -6,21 +6,22 @@ export class TemplatesService {
6
6
  this.templates = {};
7
7
  }
8
8
  register(name, templateRef) {
9
- this.ensureStorage(name);
10
- this.templates[name].next(templateRef);
9
+ this.ensureStorage(name).next(templateRef);
11
10
  }
12
11
  get(name) {
13
- this.ensureStorage(name);
14
- return this.templates[name].value;
12
+ return this.ensureStorage(name).value;
15
13
  }
16
14
  get$(name) {
17
- this.ensureStorage(name);
18
- return this.templates[name].asObservable();
15
+ return this.ensureStorage(name).asObservable();
19
16
  }
20
17
  ensureStorage(name) {
21
- if (!this.templates[name]) {
22
- this.templates[name] = new BehaviorSubject(undefined);
18
+ const storage = this.templates[name];
19
+ if (storage) {
20
+ return storage;
23
21
  }
22
+ const newStorage = new BehaviorSubject(undefined);
23
+ this.templates[name] = newStorage;
24
+ return newStorage;
24
25
  }
25
26
  }
26
27
  TemplatesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TemplatesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
@@ -28,4 +29,4 @@ TemplatesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ver
28
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TemplatesService, decorators: [{
29
30
  type: Injectable
30
31
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvc2VydmljZXMvdGVtcGxhdGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUtuRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRVUsY0FBUyxHQUEwQyxFQUFFLENBQUM7S0FzQi9EO0lBcEJRLFFBQVEsQ0FBQyxJQUFZLEVBQUUsV0FBNkI7UUFDekQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU0sR0FBRyxDQUFDLElBQVk7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxJQUFJLENBQUMsSUFBWTtRQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRU8sYUFBYSxDQUFDLElBQVk7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLGVBQWUsQ0FBVyxTQUFTLENBQUMsQ0FBQztTQUNqRTtJQUNILENBQUM7OzZHQXRCVSxnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbnR5cGUgVGVtcGxhdGUgPSBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGVtcGxhdGVzU2VydmljZSB7XG4gIHByaXZhdGUgdGVtcGxhdGVzOiBEaWN0aW9uYXJ5PEJlaGF2aW9yU3ViamVjdDxUZW1wbGF0ZT4+ID0ge307XG5cbiAgcHVibGljIHJlZ2lzdGVyKG5hbWU6IHN0cmluZywgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLmVuc3VyZVN0b3JhZ2UobmFtZSk7XG4gICAgdGhpcy50ZW1wbGF0ZXNbbmFtZV0ubmV4dCh0ZW1wbGF0ZVJlZik7XG4gIH1cblxuICBwdWJsaWMgZ2V0KG5hbWU6IHN0cmluZyk6IFRlbXBsYXRlIHtcbiAgICB0aGlzLmVuc3VyZVN0b3JhZ2UobmFtZSk7XG4gICAgcmV0dXJuIHRoaXMudGVtcGxhdGVzW25hbWVdLnZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCQobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxUZW1wbGF0ZT4ge1xuICAgIHRoaXMuZW5zdXJlU3RvcmFnZShuYW1lKTtcbiAgICByZXR1cm4gdGhpcy50ZW1wbGF0ZXNbbmFtZV0uYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIGVuc3VyZVN0b3JhZ2UobmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnRlbXBsYXRlc1tuYW1lXSkge1xuICAgICAgdGhpcy50ZW1wbGF0ZXNbbmFtZV0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRlbXBsYXRlPih1bmRlZmluZWQpO1xuICAgIH1cbiAgfVxufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvc2VydmljZXMvdGVtcGxhdGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUtuRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBRVUsY0FBUyxHQUEwQyxFQUFFLENBQUM7S0F3Qi9EO0lBdEJRLFFBQVEsQ0FBQyxJQUFZLEVBQUUsV0FBNkI7UUFDekQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLEdBQUcsQ0FBQyxJQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQUVNLElBQUksQ0FBQyxJQUFZO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRU8sYUFBYSxDQUFDLElBQVk7UUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sT0FBTyxDQUFDO1NBQ2hCO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxlQUFlLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUM7UUFDbEMsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQzs7NkdBeEJVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxudHlwZSBUZW1wbGF0ZSA9IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZXNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSB0ZW1wbGF0ZXM6IERpY3Rpb25hcnk8QmVoYXZpb3JTdWJqZWN0PFRlbXBsYXRlPj4gPSB7fTtcblxuICBwdWJsaWMgcmVnaXN0ZXIobmFtZTogc3RyaW5nLCB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55Pik6IHZvaWQge1xuICAgIHRoaXMuZW5zdXJlU3RvcmFnZShuYW1lKS5uZXh0KHRlbXBsYXRlUmVmKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQobmFtZTogc3RyaW5nKTogVGVtcGxhdGUge1xuICAgIHJldHVybiB0aGlzLmVuc3VyZVN0b3JhZ2UobmFtZSkudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0JChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRlbXBsYXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuZW5zdXJlU3RvcmFnZShuYW1lKS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZW5zdXJlU3RvcmFnZShuYW1lOiBzdHJpbmcpOiBCZWhhdmlvclN1YmplY3Q8VGVtcGxhdGU+IHtcbiAgICBjb25zdCBzdG9yYWdlID0gdGhpcy50ZW1wbGF0ZXNbbmFtZV07XG4gICAgaWYgKHN0b3JhZ2UpIHtcbiAgICAgIHJldHVybiBzdG9yYWdlO1xuICAgIH1cblxuICAgIGNvbnN0IG5ld1N0b3JhZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRlbXBsYXRlPih1bmRlZmluZWQpO1xuICAgIHRoaXMudGVtcGxhdGVzW25hbWVdID0gbmV3U3RvcmFnZTtcbiAgICByZXR1cm4gbmV3U3RvcmFnZTtcbiAgfVxufVxuIl19
@@ -4,7 +4,7 @@ export const parseBoundPath = (path) => {
4
4
  const regexp = new RegExp(`(?:\\/)(?:\\w+)(?:\\/)(?:ports|attributes)(?:\\/)(?:\\w+)|(?:\\/)(?:\\w+)`, 'g');
5
5
  const blocks = path.match(regexp)?.map(match => {
6
6
  const [type, property, name] = compact(match.split('/'));
7
- return { type, property, name };
7
+ return { type: type ?? '', property, name };
8
8
  }) ?? [];
9
9
  return blocks;
10
10
  };
@@ -32,7 +32,7 @@ export const parsePath = (path) => {
32
32
  };
33
33
  export const getAbsolutePath = (elements, subject, path) => {
34
34
  if (path.module) {
35
- return findElementByModule(elements, path.module, path.segments[0])?.path;
35
+ return findElementByModule(elements, path.module, path.segments[0] ?? '')?.path;
36
36
  }
37
37
  const subjectSegments = subject.path?.split('/') ?? [];
38
38
  const segments = [...path.segments];
@@ -50,4 +50,4 @@ export const getAbsolutePath = (elements, subject, path) => {
50
50
  }
51
51
  return subjectSegments.join('/');
52
52
  };
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy91dGlscy9wYXRoLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBWSxFQUFlLEVBQUU7SUFDMUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsMkVBQTJFLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDNUcsTUFBTSxNQUFNLEdBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDOUIsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFWCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFZLEVBQWUsRUFBRTtJQUNyRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLElBQUksTUFBMEIsQ0FBQztJQUMvQixJQUFJLFFBQTRCLENBQUM7SUFFakMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ2hDLE1BQU0sR0FBRyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3pDO0lBRUQsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRTtRQUM5QyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6QztJQUVELE1BQU0sVUFBVSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUVsRCxJQUFJLENBQUMsVUFBVSxJQUFJLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRTtRQUM5QyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUMxQjtJQUVELE9BQU87UUFDTCxVQUFVO1FBQ1YsUUFBUSxFQUFFLGdCQUFnQjtRQUMxQixNQUFNO1FBQ04sUUFBUTtLQUNULENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FDN0IsUUFBMkIsRUFDM0IsT0FBd0IsRUFDeEIsSUFBaUIsRUFDRyxFQUFFO0lBQ3RCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNmLE9BQU8sbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQztLQUMzRTtJQUVELE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2RCxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXBDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtRQUNuQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDM0I7SUFFRCxPQUFPLFFBQVEsQ0FBQyxNQUFNLEVBQUU7UUFDdEIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWpDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtZQUNwQixlQUFlLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDdkI7YUFBTSxJQUFJLE9BQU8sRUFBRTtZQUNsQixlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO0tBQ0Y7SUFFRCxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcGFjdCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEsIEVsZW1lbnRQYXRoLCBQYXRoQmxvY2sgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBmaW5kRWxlbWVudEJ5TW9kdWxlIH0gZnJvbSAnLi91aS1kZWZpbml0aW9uLnV0aWxzJztcblxuZXhwb3J0IGNvbnN0IHBhcnNlQm91bmRQYXRoID0gKHBhdGg6IHN0cmluZyk6IFBhdGhCbG9ja1tdID0+IHtcbiAgY29uc3QgcmVnZXhwID0gbmV3IFJlZ0V4cChgKD86XFxcXC8pKD86XFxcXHcrKSg/OlxcXFwvKSg/OnBvcnRzfGF0dHJpYnV0ZXMpKD86XFxcXC8pKD86XFxcXHcrKXwoPzpcXFxcLykoPzpcXFxcdyspYCwgJ2cnKTtcbiAgY29uc3QgYmxvY2tzOiBQYXRoQmxvY2tbXSA9XG4gICAgcGF0aC5tYXRjaChyZWdleHApPy5tYXAobWF0Y2ggPT4ge1xuICAgICAgY29uc3QgW3R5cGUsIHByb3BlcnR5LCBuYW1lXSA9IGNvbXBhY3QobWF0Y2guc3BsaXQoJy8nKSk7XG4gICAgICByZXR1cm4geyB0eXBlLCBwcm9wZXJ0eSwgbmFtZSB9O1xuICAgIH0pID8/IFtdO1xuXG4gIHJldHVybiBibG9ja3M7XG59O1xuXG5leHBvcnQgY29uc3QgcGFyc2VQYXRoID0gKHBhdGg6IHN0cmluZyk6IEVsZW1lbnRQYXRoID0+IHtcbiAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJyk7XG4gIGxldCBtb2R1bGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgbGV0IHZhcmlhYmxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgaWYgKHNlZ21lbnRzWzBdPy5zdGFydHNXaXRoKCdAJykpIHtcbiAgICBtb2R1bGUgPSBzZWdtZW50cy5zaGlmdCgpPy5zdWJzdHJpbmcoMSk7XG4gIH1cblxuICBpZiAoc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0/LlswXSA9PT0gJzonKSB7XG4gICAgdmFyaWFibGUgPSBzZWdtZW50cy5wb3AoKT8uc3Vic3RyaW5nKDEpO1xuICB9XG5cbiAgY29uc3QgaXNBYnNvbHV0ZSA9ICFzZWdtZW50c1swXTtcbiAgY29uc3Qgbm9uRW1wdHlTZWdtZW50cyA9IHNlZ21lbnRzLmZpbHRlcihCb29sZWFuKTtcblxuICBpZiAoIWlzQWJzb2x1dGUgJiYgbm9uRW1wdHlTZWdtZW50c1swXSA9PT0gJy4nKSB7XG4gICAgbm9uRW1wdHlTZWdtZW50cy5zaGlmdCgpO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBpc0Fic29sdXRlLFxuICAgIHNlZ21lbnRzOiBub25FbXB0eVNlZ21lbnRzLFxuICAgIG1vZHVsZSxcbiAgICB2YXJpYWJsZSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRBYnNvbHV0ZVBhdGggPSAoXG4gIGVsZW1lbnRzOiBFbGVtZW50TWV0YWRhdGFbXSxcbiAgc3ViamVjdDogRWxlbWVudE1ldGFkYXRhLFxuICBwYXRoOiBFbGVtZW50UGF0aCxcbik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChwYXRoLm1vZHVsZSkge1xuICAgIHJldHVybiBmaW5kRWxlbWVudEJ5TW9kdWxlKGVsZW1lbnRzLCBwYXRoLm1vZHVsZSwgcGF0aC5zZWdtZW50c1swXSk/LnBhdGg7XG4gIH1cblxuICBjb25zdCBzdWJqZWN0U2VnbWVudHMgPSBzdWJqZWN0LnBhdGg/LnNwbGl0KCcvJykgPz8gW107XG4gIGNvbnN0IHNlZ21lbnRzID0gWy4uLnBhdGguc2VnbWVudHNdO1xuXG4gIGlmIChwYXRoLmlzQWJzb2x1dGUpIHtcbiAgICByZXR1cm4gc2VnbWVudHMuam9pbignLycpO1xuICB9XG5cbiAgd2hpbGUgKHNlZ21lbnRzLmxlbmd0aCkge1xuICAgIGNvbnN0IHNlZ21lbnQgPSBzZWdtZW50cy5zaGlmdCgpO1xuXG4gICAgaWYgKHNlZ21lbnQgPT09ICcuLicpIHtcbiAgICAgIHN1YmplY3RTZWdtZW50cy5wb3AoKTtcbiAgICB9IGVsc2UgaWYgKHNlZ21lbnQpIHtcbiAgICAgIHN1YmplY3RTZWdtZW50cy5wdXNoKHNlZ21lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdWJqZWN0U2VnbWVudHMuam9pbignLycpO1xufTtcbiJdfQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy91dGlscy9wYXRoLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBWSxFQUFlLEVBQUU7SUFDMUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsMkVBQTJFLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDNUcsTUFBTSxNQUFNLEdBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDOUIsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzlDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVYLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLElBQVksRUFBZSxFQUFFO0lBQ3JELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsSUFBSSxNQUEwQixDQUFDO0lBQy9CLElBQUksUUFBNEIsQ0FBQztJQUVqQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDaEMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDekM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO1FBQzlDLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3pDO0lBRUQsTUFBTSxVQUFVLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEMsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRWxELElBQUksQ0FBQyxVQUFVLElBQUksZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO1FBQzlDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO0tBQzFCO0lBRUQsT0FBTztRQUNMLFVBQVU7UUFDVixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLE1BQU07UUFDTixRQUFRO0tBQ1QsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUM3QixRQUEyQixFQUMzQixPQUF3QixFQUN4QixJQUFpQixFQUNHLEVBQUU7SUFDdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ2YsT0FBTyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQztLQUNqRjtJQUVELE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2RCxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXBDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtRQUNuQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDM0I7SUFFRCxPQUFPLFFBQVEsQ0FBQyxNQUFNLEVBQUU7UUFDdEIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWpDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtZQUNwQixlQUFlLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDdkI7YUFBTSxJQUFJLE9BQU8sRUFBRTtZQUNsQixlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9CO0tBQ0Y7SUFFRCxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcGFjdCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEsIEVsZW1lbnRQYXRoLCBQYXRoQmxvY2sgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBmaW5kRWxlbWVudEJ5TW9kdWxlIH0gZnJvbSAnLi91aS1kZWZpbml0aW9uLnV0aWxzJztcblxuZXhwb3J0IGNvbnN0IHBhcnNlQm91bmRQYXRoID0gKHBhdGg6IHN0cmluZyk6IFBhdGhCbG9ja1tdID0+IHtcbiAgY29uc3QgcmVnZXhwID0gbmV3IFJlZ0V4cChgKD86XFxcXC8pKD86XFxcXHcrKSg/OlxcXFwvKSg/OnBvcnRzfGF0dHJpYnV0ZXMpKD86XFxcXC8pKD86XFxcXHcrKXwoPzpcXFxcLykoPzpcXFxcdyspYCwgJ2cnKTtcbiAgY29uc3QgYmxvY2tzOiBQYXRoQmxvY2tbXSA9XG4gICAgcGF0aC5tYXRjaChyZWdleHApPy5tYXAobWF0Y2ggPT4ge1xuICAgICAgY29uc3QgW3R5cGUsIHByb3BlcnR5LCBuYW1lXSA9IGNvbXBhY3QobWF0Y2guc3BsaXQoJy8nKSk7XG4gICAgICByZXR1cm4geyB0eXBlOiB0eXBlID8/ICcnLCBwcm9wZXJ0eSwgbmFtZSB9O1xuICAgIH0pID8/IFtdO1xuXG4gIHJldHVybiBibG9ja3M7XG59O1xuXG5leHBvcnQgY29uc3QgcGFyc2VQYXRoID0gKHBhdGg6IHN0cmluZyk6IEVsZW1lbnRQYXRoID0+IHtcbiAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJyk7XG4gIGxldCBtb2R1bGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgbGV0IHZhcmlhYmxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgaWYgKHNlZ21lbnRzWzBdPy5zdGFydHNXaXRoKCdAJykpIHtcbiAgICBtb2R1bGUgPSBzZWdtZW50cy5zaGlmdCgpPy5zdWJzdHJpbmcoMSk7XG4gIH1cblxuICBpZiAoc2VnbWVudHNbc2VnbWVudHMubGVuZ3RoIC0gMV0/LlswXSA9PT0gJzonKSB7XG4gICAgdmFyaWFibGUgPSBzZWdtZW50cy5wb3AoKT8uc3Vic3RyaW5nKDEpO1xuICB9XG5cbiAgY29uc3QgaXNBYnNvbHV0ZSA9ICFzZWdtZW50c1swXTtcbiAgY29uc3Qgbm9uRW1wdHlTZWdtZW50cyA9IHNlZ21lbnRzLmZpbHRlcihCb29sZWFuKTtcblxuICBpZiAoIWlzQWJzb2x1dGUgJiYgbm9uRW1wdHlTZWdtZW50c1swXSA9PT0gJy4nKSB7XG4gICAgbm9uRW1wdHlTZWdtZW50cy5zaGlmdCgpO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBpc0Fic29sdXRlLFxuICAgIHNlZ21lbnRzOiBub25FbXB0eVNlZ21lbnRzLFxuICAgIG1vZHVsZSxcbiAgICB2YXJpYWJsZSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRBYnNvbHV0ZVBhdGggPSAoXG4gIGVsZW1lbnRzOiBFbGVtZW50TWV0YWRhdGFbXSxcbiAgc3ViamVjdDogRWxlbWVudE1ldGFkYXRhLFxuICBwYXRoOiBFbGVtZW50UGF0aCxcbik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChwYXRoLm1vZHVsZSkge1xuICAgIHJldHVybiBmaW5kRWxlbWVudEJ5TW9kdWxlKGVsZW1lbnRzLCBwYXRoLm1vZHVsZSwgcGF0aC5zZWdtZW50c1swXSA/PyAnJyk/LnBhdGg7XG4gIH1cblxuICBjb25zdCBzdWJqZWN0U2VnbWVudHMgPSBzdWJqZWN0LnBhdGg/LnNwbGl0KCcvJykgPz8gW107XG4gIGNvbnN0IHNlZ21lbnRzID0gWy4uLnBhdGguc2VnbWVudHNdO1xuXG4gIGlmIChwYXRoLmlzQWJzb2x1dGUpIHtcbiAgICByZXR1cm4gc2VnbWVudHMuam9pbignLycpO1xuICB9XG5cbiAgd2hpbGUgKHNlZ21lbnRzLmxlbmd0aCkge1xuICAgIGNvbnN0IHNlZ21lbnQgPSBzZWdtZW50cy5zaGlmdCgpO1xuXG4gICAgaWYgKHNlZ21lbnQgPT09ICcuLicpIHtcbiAgICAgIHN1YmplY3RTZWdtZW50cy5wb3AoKTtcbiAgICB9IGVsc2UgaWYgKHNlZ21lbnQpIHtcbiAgICAgIHN1YmplY3RTZWdtZW50cy5wdXNoKHNlZ21lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdWJqZWN0U2VnbWVudHMuam9pbignLycpO1xufTtcbiJdfQ==