@provoly/dashboard 0.22.9 → 0.22.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -59,10 +59,11 @@ export class WidgetFactoryService {
59
59
  return datasourcesArray
60
60
  .filter((datasource) => {
61
61
  const matching = this.datasources.find((ds) => ds.id === datasource);
62
- return (widgetDefinition.autoLoadDatasource === undefined ||
63
- widgetDefinition.autoLoadDatasource === 'all' ||
64
- (widgetDefinition.autoLoadDatasource === 'geo' && DatasourceUtils.isGeo(matching)) ||
65
- (widgetDefinition.autoLoadDatasource === 'not-geo' && !DatasourceUtils.isGeo(matching)));
62
+ return (!!matching &&
63
+ (widgetDefinition.autoLoadDatasource === undefined ||
64
+ widgetDefinition.autoLoadDatasource === 'all' ||
65
+ (widgetDefinition.autoLoadDatasource === 'geo' && DatasourceUtils.isGeo(matching)) ||
66
+ (widgetDefinition.autoLoadDatasource === 'not-geo' && !DatasourceUtils.isGeo(matching))));
66
67
  })
67
68
  .map((ds) => ({ datasetId: ds, excludeGeo: manifest.type !== 'map' }));
68
69
  }
@@ -100,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
100
101
  type: Inject,
101
102
  args: [WIDGET_DEFINITION]
102
103
  }] }, { type: i1.Store }] });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9kYXNoYm9hcmQvY29tcG9uZW50cy93aWRnZXRzL3dpZGdldC1pbnN0YW5jaWF0b3Ivd2lkZ2V0LWZhY3Rvcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFaEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7QUFJL0YsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQVMsb0JBQW9CLENBQUMsQ0FBQztBQUtsRixNQUFNLE9BQU8sb0JBQW9CO0lBUS9CLFlBQ1UsUUFBa0IsRUFDQyxTQUE4QyxFQUNqRSxLQUFZO1FBRlosYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUVsQixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBVnRCLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBc0M7WUFDcEUsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsMEJBQTBCLEVBQUU7WUFDM0UsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7U0FDN0QsQ0FBQyxDQUFDO1FB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VUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFXSSxNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIEluamVjdG9yLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZyb20sIG1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdsb2JhbE1hbmlmZXN0LCBXaWRnZXRNYW5pZmVzdCB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvbW9kZWwvbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhc2VXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0RmlsbGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vd2lkZ2V0LWZpbGxlci93aWRnZXQtZmlsbGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRQbGFjZWhvbGRlckNvbXBvbmVudCB9IGZyb20gJy4uL3dpZGdldC1wbGFjZWhvbGRlci93aWRnZXQtcGxhY2Vob2xkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFdpZGdldERlZmluaXRpb24sIFdpZGdldExhenlEZWZpbml0aW9uLCBXaWRnZXRTdGF0aWNEZWZpbml0aW9uIH0gZnJvbSAnLi93aWRnZXRzLWRlZmluaXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgRGF0YXNvdXJjZVV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhc291cmNlLXV0aWxzJztcbmltcG9ydCB7IERhdGFTb3VyY2VTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3N0b3JlL2RhdGEtc291cmNlL2RhdGEtc291cmNlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3N0b3JlL2RhdGEtc291cmNlL2RhdGEtc291cmNlLm1vZGVsJztcblxuZXhwb3J0IGNvbnN0IFdJREdFVF9ERUZJTklUSU9OID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ1dpZGdldHMgZGVmaW5pdGlvbicpO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBXaWRnZXRGYWN0b3J5U2VydmljZSB7XG4gIHJlZmVyZW5jZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgW2tleTogc3RyaW5nXTogV2lkZ2V0RGVmaW5pdGlvbiB9Pih7XG4gICAgcGxhY2Vob2xkZXI6IHsgbmFtZTogJ3BsYWNlaG9sZGVyJywgY29tcG9uZW50OiBXaWRnZXRQbGFjZWhvbGRlckNvbXBvbmVudCB9LFxuICAgIGZpbGxlcjogeyBuYW1lOiAnZmlsbGVyJywgY29tcG9uZW50OiBXaWRnZXRGaWxsZXJDb21wb25lbnQgfVxuICB9KTtcbiAgbW9kdWxlUmVmQ2FjaGUgPSB7fSBhcyB7IFttYW5pZmVzdFR5cGU6IHN0cmluZ106IFR5cGU8QmFzZVdpZGdldENvbXBvbmVudD4gfTtcbiAgZGF0YXNvdXJjZXM6IERhdGFTb3VyY2VbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIEBJbmplY3QoV0lER0VUX0RFRklOSVRJT04pIHJlZmVyZW5jZTogeyBba2V5OiBzdHJpbmddOiBXaWRnZXREZWZpbml0aW9uIH0sXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmVcbiAgKSB7XG4gICAgdGhpcy5wdXREZWZpbml0aW9ucyhyZWZlcmVuY2UpO1xuICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuZ2V0RGF0YVNvdXJjZXMpLnN1YnNjcmliZSgoZGF0YXNvdXJjZXMpID0+ICh0aGlzLmRhdGFzb3VyY2VzID0gZGF0YXNvdXJjZXMpKTtcbiAgfVxuXG4gIHJlc29sdmVDb21wb25lbnQobWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KSB7XG4gICAgaWYgKHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV0pIHtcbiAgICAgIHJldHVybiBvZih0aGlzLm1vZHVsZVJlZkNhY2hlW21hbmlmZXN0LnR5cGVdKTtcbiAgICB9XG4gICAgaWYgKCEhbWFuaWZlc3QgJiYgdGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbbWFuaWZlc3QudHlwZV0pIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmICh0aGlzLnJlZmVyZW5jZSQuZ2V0VmFsdWUoKVttYW5pZmVzdC50eXBlXS5sb2FkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5tb2R1bGVSZWZDYWNoZVttYW5pZmVzdC50eXBlXSA9IChcbiAgICAgICAgICB0aGlzLnJlZmVyZW5jZSQuZ2V0VmFsdWUoKVttYW5pZmVzdC50eXBlXSBhcyBXaWRnZXRTdGF0aWNEZWZpbml0aW9uXG4gICAgICAgICkuY29tcG9uZW50O1xuICAgICAgICByZXR1cm4gb2YodGhpcy5tb2R1bGVSZWZDYWNoZVttYW5pZmVzdC50eXBlXSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZnJvbShcbiAgICAgICAgICAodGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbbWFuaWZlc3QudHlwZV0gYXMgV2lkZ2V0TGF6eURlZmluaXRpb24pLmxvYWQoKS50aGVuKChmbikgPT4ge1xuICAgICAgICAgICAgdGhpcy5tb2R1bGVSZWZDYWNoZVttYW5pZmVzdC50eXBlXSA9IGZuKHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV07XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb2R1bGVSZWZDYWNoZVttYW5pZmVzdC50eXBlXSA9IChcbiAgICAgICAgdGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbJ3BsYWNlaG9sZGVyJ10gYXMgV2lkZ2V0U3RhdGljRGVmaW5pdGlvblxuICAgICAgKS5jb21wb25lbnQ7XG4gICAgICByZXR1cm4gb2YodGhpcy5tb2R1bGVSZWZDYWNoZVttYW5pZmVzdC50eXBlXSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwdXREZWZpbml0aW9ucyhkZWZpbml0aW9uczogeyBba2V5OiBzdHJpbmddOiBXaWRnZXREZWZpbml0aW9uIH0pIHtcbiAgICB0aGlzLnJlZmVyZW5jZSQubmV4dCh7XG4gICAgICAuLi50aGlzLnJlZmVyZW5jZSQuZ2V0VmFsdWUoKSxcbiAgICAgIC4uLmRlZmluaXRpb25zXG4gICAgfSk7XG4gIH1cblxuICBpc01vZHVsZUxvYWRlZCh0eXBlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2UkLnBpcGUobWFwKChjb21wb25lbnREZWZzKSA9PiAhIWNvbXBvbmVudERlZnNbdHlwZV0pKTtcbiAgfVxuXG4gIGRhdGFzb3VyY2VzVG9BdXRvTG9hZChtYW5pZmVzdDogV2lkZ2V0TWFuaWZlc3QpIHtcbiAgICBjb25zdCB3aWRnZXREZWZpbml0aW9uID0gdGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbbWFuaWZlc3QudHlwZV07XG4gICAgY29uc3QgZGF0YXNvdXJjZXNBcnJheTogc3RyaW5nW10gPSBBcnJheS5pc0FycmF5KG1hbmlmZXN0LmRhdGFzb3VyY2UgPz8gW10pXG4gICAgICA/ICgobWFuaWZlc3QuZGF0YXNvdXJjZSA/PyBbXSkgYXMgc3RyaW5nW10pXG4gICAgICA6IChbbWFuaWZlc3QuZGF0YXNvdXJjZV0gYXMgc3RyaW5nW10pO1xuICAgIHJldHVybiBkYXRhc291cmNlc0FycmF5XG4gICAgICAuZmlsdGVyKChkYXRhc291cmNlKSA9PiB7XG4gICAgICAgIGNvbnN0IG1hdGNoaW5nID0gdGhpcy5kYXRhc291cmNlcy5maW5kKChkcykgPT4gZHMuaWQgPT09IGRhdGFzb3VyY2UpITtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICB3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgd2lkZ2V0RGVmaW5pdGlvbi5hdXRvTG9hZERhdGFzb3VyY2UgPT09ICdhbGwnIHx8XG4gICAgICAgICAgKHdpZGdldERlZmluaXRpb24uYXV0b0xvYWREYXRhc291cmNlID09PSAnZ2VvJyAmJiBEYXRhc291cmNlVXRpbHMuaXNHZW8obWF0Y2hpbmcpKSB8fFxuICAgICAgICAgICh3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gJ25vdC1nZW8nICYmICFEYXRhc291cmNlVXRpbHMuaXNHZW8obWF0Y2hpbmcpKVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICAgIC5tYXAoKGRzKSA9PiAoeyBkYXRhc2V0SWQ6IGRzLCBleGNsdWRlR2VvOiBtYW5pZmVzdC50eXBlICE9PSAnbWFwJyB9KSk7XG4gIH1cblxuICBhZ2dyZWdhdGVzVG9BdXRvTG9hZChtYW5pZmVzdDogV2lkZ2V0TWFuaWZlc3QpIHtcbiAgICBjb25zdCB3aWRnZXREZWZpbml0aW9uID0gdGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbbWFuaWZlc3QudHlwZV07XG4gICAgY29uc3QgZGF0YXNvdXJjZXNBcnJheTogc3RyaW5nW10gPSBBcnJheS5pc0FycmF5KG1hbmlmZXN0LmRhdGFzb3VyY2UgPz8gW10pXG4gICAgICA/ICgobWFuaWZlc3QuZGF0YXNvdXJjZSA/PyBbXSkgYXMgc3RyaW5nW10pXG4gICAgICA6IChbbWFuaWZlc3QuZGF0YXNvdXJjZV0gYXMgc3RyaW5nW10pO1xuICAgIHJldHVybiBkYXRhc291cmNlc0FycmF5LmZpbHRlcihcbiAgICAgICgpID0+IHdpZGdldERlZmluaXRpb24uYXV0b0xvYWREYXRhc291cmNlID09PSB1bmRlZmluZWQgfHwgd2lkZ2V0RGVmaW5pdGlvbi5hdXRvTG9hZERhdGFzb3VyY2UgPT09ICdhZ2dyZWdhdGUnXG4gICAgKTtcbiAgfVxuXG4gIGdldE9iamVjdHNUb0F1dG9Mb2FkKG1hbmlmZXN0OiBHbG9iYWxNYW5pZmVzdCkge1xuICAgIGNvbnN0IGRhdGFzb3VyY2VzOiB7IGRhdGFzZXRJZDogc3RyaW5nOyBleGNsdWRlR2VvOiBib29sZWFuIH1bXSA9IFtdO1xuICAgIGNvbnN0IGFnZ3JlZ2F0ZXM6IHN0cmluZ1tdID0gW107XG5cbiAgICBtYW5pZmVzdC53aW5kb3dzLmZvckVhY2goKHdpbmRvd01hbmlmZXN0KSA9PiB7XG4gICAgICB3aW5kb3dNYW5pZmVzdC53aWRnZXRzLmZvckVhY2goKHdpZGdldE1hbmlmZXN0KSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YXNvdXJjZXNUb0F1dG9Mb2FkKHdpZGdldE1hbmlmZXN0KS5mb3JFYWNoKChyZXM6IHsgZGF0YXNldElkOiBzdHJpbmc7IGV4Y2x1ZGVHZW86IGJvb2xlYW4gfSkgPT4ge1xuICAgICAgICAgIGlmIChyZXMuZGF0YXNldElkKSB7XG4gICAgICAgICAgICBkYXRhc291cmNlcy5wdXNoKHJlcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmFnZ3JlZ2F0ZXNUb0F1dG9Mb2FkKHdpZGdldE1hbmlmZXN0KS5mb3JFYWNoKChkczogc3RyaW5nKSA9PiBhZ2dyZWdhdGVzLnB1c2goZHMpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHsgZGF0YXNvdXJjZXMsIGFnZ3JlZ2F0ZXMgfTtcbiAgfVxufVxuIl19
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9kYXNoYm9hcmQvY29tcG9uZW50cy93aWRnZXRzL3dpZGdldC1pbnN0YW5jaWF0b3Ivd2lkZ2V0LWZhY3Rvcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFaEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7QUFJL0YsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQVMsb0JBQW9CLENBQUMsQ0FBQztBQUtsRixNQUFNLE9BQU8sb0JBQW9CO0lBUS9CLFlBQ1UsUUFBa0IsRUFDQyxTQUE4QyxFQUNqRSxLQUFZO1FBRlosYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUVsQixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBVnRCLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBc0M7WUFDcEUsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsMEJBQTBCLEVBQUU7WUFDM0UsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7U0FDN0QsQ0FBQyxDQUFDO1FB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b0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBV0ksTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBJbmplY3RvciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tLCBtYXAsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHbG9iYWxNYW5pZmVzdCwgV2lkZ2V0TWFuaWZlc3QgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL21vZGVsL21hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBCYXNlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7IFdpZGdldEZpbGxlckNvbXBvbmVudCB9IGZyb20gJy4uL3dpZGdldC1maWxsZXIvd2lkZ2V0LWZpbGxlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0UGxhY2Vob2xkZXJDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQtcGxhY2Vob2xkZXIvd2lkZ2V0LXBsYWNlaG9sZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXREZWZpbml0aW9uLCBXaWRnZXRMYXp5RGVmaW5pdGlvbiwgV2lkZ2V0U3RhdGljRGVmaW5pdGlvbiB9IGZyb20gJy4vd2lkZ2V0cy1kZWZpbml0aW9uLm1vZGVsJztcbmltcG9ydCB7IERhdGFzb3VyY2VVdGlscyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvc3RvcmUvZGF0YS1zb3VyY2UvZGF0YXNvdXJjZS11dGlscyc7XG5pbXBvcnQgeyBEYXRhU291cmNlU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5tb2RlbCc7XG5cbmV4cG9ydCBjb25zdCBXSURHRVRfREVGSU5JVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdXaWRnZXRzIGRlZmluaXRpb24nKTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgV2lkZ2V0RmFjdG9yeVNlcnZpY2Uge1xuICByZWZlcmVuY2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7IFtrZXk6IHN0cmluZ106IFdpZGdldERlZmluaXRpb24gfT4oe1xuICAgIHBsYWNlaG9sZGVyOiB7IG5hbWU6ICdwbGFjZWhvbGRlcicsIGNvbXBvbmVudDogV2lkZ2V0UGxhY2Vob2xkZXJDb21wb25lbnQgfSxcbiAgICBmaWxsZXI6IHsgbmFtZTogJ2ZpbGxlcicsIGNvbXBvbmVudDogV2lkZ2V0RmlsbGVyQ29tcG9uZW50IH1cbiAgfSk7XG4gIG1vZHVsZVJlZkNhY2hlID0ge30gYXMgeyBbbWFuaWZlc3RUeXBlOiBzdHJpbmddOiBUeXBlPEJhc2VXaWRnZXRDb21wb25lbnQ+IH07XG4gIGRhdGFzb3VyY2VzOiBEYXRhU291cmNlW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBASW5qZWN0KFdJREdFVF9ERUZJTklUSU9OKSByZWZlcmVuY2U6IHsgW2tleTogc3RyaW5nXTogV2lkZ2V0RGVmaW5pdGlvbiB9LFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlXG4gICkge1xuICAgIHRoaXMucHV0RGVmaW5pdGlvbnMocmVmZXJlbmNlKTtcbiAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmdldERhdGFTb3VyY2VzKS5zdWJzY3JpYmUoKGRhdGFzb3VyY2VzKSA9PiAodGhpcy5kYXRhc291cmNlcyA9IGRhdGFzb3VyY2VzKSk7XG4gIH1cblxuICByZXNvbHZlQ29tcG9uZW50KG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdCkge1xuICAgIGlmICh0aGlzLm1vZHVsZVJlZkNhY2hlW21hbmlmZXN0LnR5cGVdKSB7XG4gICAgICByZXR1cm4gb2YodGhpcy5tb2R1bGVSZWZDYWNoZVttYW5pZmVzdC50eXBlXSk7XG4gICAgfVxuICAgIGlmICghIW1hbmlmZXN0ICYmIHRoaXMucmVmZXJlbmNlJC5nZXRWYWx1ZSgpW21hbmlmZXN0LnR5cGVdKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBpZiAodGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbbWFuaWZlc3QudHlwZV0ubG9hZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV0gPSAoXG4gICAgICAgICAgdGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKClbbWFuaWZlc3QudHlwZV0gYXMgV2lkZ2V0U3RhdGljRGVmaW5pdGlvblxuICAgICAgICApLmNvbXBvbmVudDtcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZyb20oXG4gICAgICAgICAgKHRoaXMucmVmZXJlbmNlJC5nZXRWYWx1ZSgpW21hbmlmZXN0LnR5cGVdIGFzIFdpZGdldExhenlEZWZpbml0aW9uKS5sb2FkKCkudGhlbigoZm4pID0+IHtcbiAgICAgICAgICAgIHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV0gPSBmbih0aGlzLmluamVjdG9yKTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm1vZHVsZVJlZkNhY2hlW21hbmlmZXN0LnR5cGVdO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV0gPSAoXG4gICAgICAgIHRoaXMucmVmZXJlbmNlJC5nZXRWYWx1ZSgpWydwbGFjZWhvbGRlciddIGFzIFdpZGdldFN0YXRpY0RlZmluaXRpb25cbiAgICAgICkuY29tcG9uZW50O1xuICAgICAgcmV0dXJuIG9mKHRoaXMubW9kdWxlUmVmQ2FjaGVbbWFuaWZlc3QudHlwZV0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHV0RGVmaW5pdGlvbnMoZGVmaW5pdGlvbnM6IHsgW2tleTogc3RyaW5nXTogV2lkZ2V0RGVmaW5pdGlvbiB9KSB7XG4gICAgdGhpcy5yZWZlcmVuY2UkLm5leHQoe1xuICAgICAgLi4udGhpcy5yZWZlcmVuY2UkLmdldFZhbHVlKCksXG4gICAgICAuLi5kZWZpbml0aW9uc1xuICAgIH0pO1xuICB9XG5cbiAgaXNNb2R1bGVMb2FkZWQodHlwZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlJC5waXBlKG1hcCgoY29tcG9uZW50RGVmcykgPT4gISFjb21wb25lbnREZWZzW3R5cGVdKSk7XG4gIH1cblxuICBkYXRhc291cmNlc1RvQXV0b0xvYWQobWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KSB7XG4gICAgY29uc3Qgd2lkZ2V0RGVmaW5pdGlvbiA9IHRoaXMucmVmZXJlbmNlJC5nZXRWYWx1ZSgpW21hbmlmZXN0LnR5cGVdO1xuICAgIGNvbnN0IGRhdGFzb3VyY2VzQXJyYXk6IHN0cmluZ1tdID0gQXJyYXkuaXNBcnJheShtYW5pZmVzdC5kYXRhc291cmNlID8/IFtdKVxuICAgICAgPyAoKG1hbmlmZXN0LmRhdGFzb3VyY2UgPz8gW10pIGFzIHN0cmluZ1tdKVxuICAgICAgOiAoW21hbmlmZXN0LmRhdGFzb3VyY2VdIGFzIHN0cmluZ1tdKTtcbiAgICByZXR1cm4gZGF0YXNvdXJjZXNBcnJheVxuICAgICAgLmZpbHRlcigoZGF0YXNvdXJjZSkgPT4ge1xuICAgICAgICBjb25zdCBtYXRjaGluZyA9IHRoaXMuZGF0YXNvdXJjZXMuZmluZCgoZHMpID0+IGRzLmlkID09PSBkYXRhc291cmNlKSE7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgISFtYXRjaGluZyAmJlxuICAgICAgICAgICh3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICB3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gJ2FsbCcgfHxcbiAgICAgICAgICAgICh3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gJ2dlbycgJiYgRGF0YXNvdXJjZVV0aWxzLmlzR2VvKG1hdGNoaW5nKSkgfHxcbiAgICAgICAgICAgICh3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gJ25vdC1nZW8nICYmICFEYXRhc291cmNlVXRpbHMuaXNHZW8obWF0Y2hpbmcpKSlcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgICAubWFwKChkcykgPT4gKHsgZGF0YXNldElkOiBkcywgZXhjbHVkZUdlbzogbWFuaWZlc3QudHlwZSAhPT0gJ21hcCcgfSkpO1xuICB9XG5cbiAgYWdncmVnYXRlc1RvQXV0b0xvYWQobWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KSB7XG4gICAgY29uc3Qgd2lkZ2V0RGVmaW5pdGlvbiA9IHRoaXMucmVmZXJlbmNlJC5nZXRWYWx1ZSgpW21hbmlmZXN0LnR5cGVdO1xuICAgIGNvbnN0IGRhdGFzb3VyY2VzQXJyYXk6IHN0cmluZ1tdID0gQXJyYXkuaXNBcnJheShtYW5pZmVzdC5kYXRhc291cmNlID8/IFtdKVxuICAgICAgPyAoKG1hbmlmZXN0LmRhdGFzb3VyY2UgPz8gW10pIGFzIHN0cmluZ1tdKVxuICAgICAgOiAoW21hbmlmZXN0LmRhdGFzb3VyY2VdIGFzIHN0cmluZ1tdKTtcbiAgICByZXR1cm4gZGF0YXNvdXJjZXNBcnJheS5maWx0ZXIoXG4gICAgICAoKSA9PiB3aWRnZXREZWZpbml0aW9uLmF1dG9Mb2FkRGF0YXNvdXJjZSA9PT0gdW5kZWZpbmVkIHx8IHdpZGdldERlZmluaXRpb24uYXV0b0xvYWREYXRhc291cmNlID09PSAnYWdncmVnYXRlJ1xuICAgICk7XG4gIH1cblxuICBnZXRPYmplY3RzVG9BdXRvTG9hZChtYW5pZmVzdDogR2xvYmFsTWFuaWZlc3QpIHtcbiAgICBjb25zdCBkYXRhc291cmNlczogeyBkYXRhc2V0SWQ6IHN0cmluZzsgZXhjbHVkZUdlbzogYm9vbGVhbiB9W10gPSBbXTtcbiAgICBjb25zdCBhZ2dyZWdhdGVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgbWFuaWZlc3Qud2luZG93cy5mb3JFYWNoKCh3aW5kb3dNYW5pZmVzdCkgPT4ge1xuICAgICAgd2luZG93TWFuaWZlc3Qud2lkZ2V0cy5mb3JFYWNoKCh3aWRnZXRNYW5pZmVzdCkgPT4ge1xuICAgICAgICB0aGlzLmRhdGFzb3VyY2VzVG9BdXRvTG9hZCh3aWRnZXRNYW5pZmVzdCkuZm9yRWFjaCgocmVzOiB7IGRhdGFzZXRJZDogc3RyaW5nOyBleGNsdWRlR2VvOiBib29sZWFuIH0pID0+IHtcbiAgICAgICAgICBpZiAocmVzLmRhdGFzZXRJZCkge1xuICAgICAgICAgICAgZGF0YXNvdXJjZXMucHVzaChyZXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5hZ2dyZWdhdGVzVG9BdXRvTG9hZCh3aWRnZXRNYW5pZmVzdCkuZm9yRWFjaCgoZHM6IHN0cmluZykgPT4gYWdncmVnYXRlcy5wdXNoKGRzKSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHJldHVybiB7IGRhdGFzb3VyY2VzLCBhZ2dyZWdhdGVzIH07XG4gIH1cbn1cbiJdfQ==