@provoly/dashboard 1.4.21 → 1.4.23

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.
Files changed (25) hide show
  1. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +1 -1
  2. package/esm2022/lib/core/store/search/search.effects.mjs +2 -2
  3. package/esm2022/lib/core/store/search/search.service.mjs +14 -5
  4. package/esm2022/lib/dashboard/components/dashboard.component.mjs +36 -17
  5. package/esm2022/lib/dashboard/components/widgets/data-widget.component.mjs +4 -2
  6. package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +1 -1
  7. package/esm2022/lib/dashboard/filter/components/filter-group/filter-group.component.mjs +6 -4
  8. package/esm2022/lib/dashboard/resultset-utils.mjs +18 -11
  9. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +2 -2
  10. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +6 -4
  11. package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +5 -2
  12. package/esm2022/toolbox/components/select-grid-layout/select-grid-layout.component.mjs +1 -1
  13. package/fesm2022/provoly-dashboard-dataset.mjs +1 -1
  14. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  15. package/fesm2022/provoly-dashboard-toolbox.mjs +1 -1
  16. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  17. package/fesm2022/provoly-dashboard.mjs +84 -40
  18. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  19. package/lib/core/store/search/search.service.d.ts +2 -2
  20. package/lib/dashboard/components/dashboard.component.d.ts +11 -5
  21. package/lib/dashboard/filter/components/filter-group/filter-group.component.d.ts +2 -1
  22. package/lib/dashboard/resultset-utils.d.ts +1 -0
  23. package/lib/dashboard/store/dashboard.actions.d.ts +11 -1
  24. package/lib/dashboard/store/dashboard.effects.d.ts +1 -0
  25. package/package.json +13 -13
@@ -43,7 +43,9 @@ export class DataWidgetComponent extends BaseWidgetComponent {
43
43
  return resultSetArray.reduce((rs1, rs2) => ResultsetUtils.mergeResultSets(rs1, rs2), {
44
44
  items: {},
45
45
  relations: [],
46
- merged: resultSetArray.length
46
+ merged: resultSetArray.length,
47
+ sourceItems: {},
48
+ destinationItems: {}
47
49
  });
48
50
  }), distinctUntilChanged((p, v) => equal(p, v)));
49
51
  }
@@ -58,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
58
60
  }], staticResultSet: [{
59
61
  type: Input
60
62
  }] } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2Rhc2hib2FyZC9jb21wb25lbnRzL3dpZGdldHMvZGF0YS13aWRnZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sS0FBSyxNQUFNLHFCQUFxQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSTlHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7O0FBR3RGLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxtQkFBbUI7SUFRMUQsSUFBYSxlQUFlLENBQUMsU0FBb0I7UUFDL0MsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFBWSxLQUFpQixFQUFFLEVBQWM7UUFDM0MsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQVhuQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBbUIsSUFBSSxDQUFDLENBQUM7UUFLdEQsY0FBUyxHQUFxQyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBT3pFLElBQUks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Z0JBQ1QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsTUFBTSxFQUFFLGNBQWMsQ0FBQyxNQUFNO2FBQzlCLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxFQUNGLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUM1QyxDQUFDO0lBQ0osQ0FBQzs4R0FuRVUsbUJBQW1CO2tHQUFuQixtQkFBbUIsc0pBRG9CLEVBQUU7OzJGQUN6QyxtQkFBbUI7a0JBRC9CLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTttR0FRN0MsU0FBUztzQkFBakIsS0FBSztnQkFDTyxlQUFlO3NCQUEzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgZXF1YWwgZnJvbSAnZmFzdC1kZWVwLWVxdWFsL2VzNic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVzdWx0U2V0IH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbC9yZXN1bHQtc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXRhU291cmNlU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgUmVzdWx0c2V0VXRpbHMgfSBmcm9tICcuLi8uLi9yZXN1bHRzZXQtdXRpbHMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vc3RvcmUvZGFzaGJvYXJkLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBCYXNlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVU5LTk9XTl9EQVRBU09VUkNFIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhc291cmNlLXV0aWxzJztcblxuQENvbXBvbmVudCh7IHNlbGVjdG9yOiAncHJ5LWRhdGEtd2lkZ2V0JywgdGVtcGxhdGU6ICcnIH0pXG5leHBvcnQgY2xhc3MgRGF0YVdpZGdldENvbXBvbmVudCBleHRlbmRzIEJhc2VXaWRnZXRDb21wb25lbnQge1xuICByZXN1bHRTZXQkOiBPYnNlcnZhYmxlPFJlc3VsdFNldD47XG4gIHN0YXRpY1Jlc3VsdFNldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFJlc3VsdFNldCB8IG51bGw+KG51bGwpO1xuICBkYXRhc291cmNlSWRzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG4gIGFsbEl0ZW1zJDogT2JzZXJ2YWJsZTxJdGVtW10+O1xuICB1c2VkRGF0YXNvdXJjZXMkOiBPYnNlcnZhYmxlPERhdGFTb3VyY2VbXT47XG5cbiAgQElucHV0KCkgb3BlbkRhdGEkOiBPYnNlcnZhYmxlPHZvaWQ+IHwgU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIEBJbnB1dCgpIHNldCBzdGF0aWNSZXN1bHRTZXQocmVzdWx0U2V0OiBSZXN1bHRTZXQpIHtcbiAgICB0aGlzLnN0YXRpY1Jlc3VsdFNldCQubmV4dChyZXN1bHRTZXQpO1xuICB9XG5cbiAgY29uc3RydWN0b3Ioc3RvcmU6IFN0b3JlPGFueT4sIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoc3RvcmUsIGVsKTtcbiAgICB0aGlzLmRhdGFzb3VyY2VJZHMkID0gdGhpcy5tYW5pZmVzdCQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKG1hbmlmZXN0KSA9PlxuICAgICAgICAgIChBcnJheS5pc0FycmF5KG1hbmlmZXN0LmRhdGFzb3VyY2UpID8gbWFuaWZlc3QuZGF0YXNvdXJjZSA6IFttYW5pZmVzdC5kYXRhc291cmNlXSkuZmlsdGVyKFxuICAgICAgICAgICAgKGlkKSA9PiAhIWlkXG4gICAgICAgICAgKSBhcyBzdHJpbmdbXVxuICAgICAgKVxuICAgICk7XG4gICAgdGhpcy51c2VkRGF0YXNvdXJjZXMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmRhdGFzb3VyY2VJZHMkLFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5nZXREYXRhU291cmNlcylcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2lkcywgZGF0YXNvdXJjZXNdKSA9PlxuICAgICAgICAgIGlkc1xuICAgICAgICAgICAgLm1hcCgoaWQpID0+IGRhdGFzb3VyY2VzLmZpbmQoKGRzKSA9PiBkcy5pZCA9PT0gaWQpID8/IGlkKVxuICAgICAgICAgICAgLm1hcCgobnEpID0+ICh0eXBlb2YgbnEgIT09ICdzdHJpbmcnID8gbnEgOiBVTktOT1dOX0RBVEFTT1VSQ0UobnEpKSkgYXMgRGF0YVNvdXJjZVtdXG4gICAgICApXG4gICAgKTtcbiAgICB0aGlzLnJlc3VsdFNldCQgPSB0aGlzLmluaXRSZXN1bHRTZXQkKCk7XG5cbiAgICB0aGlzLmFsbEl0ZW1zJCA9IHRoaXMucmVzdWx0U2V0JC5waXBlKFxuICAgICAgZmlsdGVyKChyZXN1bHRTZXQpID0+ICEhcmVzdWx0U2V0KSxcbiAgICAgIG1hcChcbiAgICAgICAgKHJlc3VsdFNldCkgPT5cbiAgICAgICAgICBPYmplY3Qua2V5cyhyZXN1bHRTZXQ/Lml0ZW1zKVxuICAgICAgICAgICAgLm1hcCgoY2xhc3NJZCkgPT4gcmVzdWx0U2V0Lml0ZW1zW2NsYXNzSWRdKVxuICAgICAgICAgICAgLnJlZHVjZSgocHJldiwgY3VycikgPT4gWy4uLnByZXYsIC4uLmN1cnJdLCBbXSkgYXMgSXRlbVtdXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGluaXRSZXN1bHRTZXQkKCkge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5yZXN1bHRTZXRzKSxcbiAgICAgIHRoaXMuZGF0YXNvdXJjZUlkcyQsXG4gICAgICB0aGlzLnN0YXRpY1Jlc3VsdFNldCRcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbcmVzdWx0U2V0cywgcmVzdWx0U2V0TmFtZXNBcnJheSwgc3RhdGljUmVzdWx0U2V0XSkgPT4ge1xuICAgICAgICBpZiAoISFzdGF0aWNSZXN1bHRTZXQpIHtcbiAgICAgICAgICByZXR1cm4gc3RhdGljUmVzdWx0U2V0O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlc3VsdFNldEFycmF5ID0gcmVzdWx0U2V0TmFtZXNBcnJheVxuICAgICAgICAgIC5tYXAoKHJzTmFtZSkgPT4gcmVzdWx0U2V0c1tyc05hbWUgPz8gJyddKVxuICAgICAgICAgIC5maWx0ZXIoKHJzTmFtZSkgPT4gISFyc05hbWUpO1xuICAgICAgICByZXR1cm4gcmVzdWx0U2V0QXJyYXkucmVkdWNlKChyczEsIHJzMikgPT4gUmVzdWx0c2V0VXRpbHMubWVyZ2VSZXN1bHRTZXRzKHJzMSwgcnMyKSwge1xuICAgICAgICAgIGl0ZW1zOiB7fSxcbiAgICAgICAgICByZWxhdGlvbnM6IFtdLFxuICAgICAgICAgIG1lcmdlZDogcmVzdWx0U2V0QXJyYXkubGVuZ3RoXG4gICAgICAgIH0pO1xuICAgICAgfSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgocCwgdikgPT4gZXF1YWwocCwgdikpXG4gICAgKTtcbiAgfVxufVxuIl19
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2Rhc2hib2FyZC9jb21wb25lbnRzL3dpZGdldHMvZGF0YS13aWRnZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdELE9BQU8sS0FBSyxNQUFNLHFCQUFxQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSTlHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7O0FBR3RGLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxtQkFBbUI7SUFRMUQsSUFBYSxlQUFlLENBQUMsU0FBb0I7UUFDL0MsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFBWSxLQUFpQixFQUFFLEVBQWM7UUFDM0MsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQVhuQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBbUIsSUFBSSxDQUFDLENBQUM7UUFLdEQsY0FBUyxHQUFxQyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBT3pFLElBQUks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Z0JBQ1QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsTUFBTSxFQUFFLGNBQWMsQ0FBQyxNQUFNO2dCQUM3QixXQUFXLEVBQUUsRUFBRTtnQkFDZixnQkFBZ0IsRUFBRSxFQUFFO2FBQ3JCLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxFQUNGLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUM1QyxDQUFDO0lBQ0osQ0FBQzs4R0FyRVUsbUJBQW1CO2tHQUFuQixtQkFBbUIsc0pBRG9CLEVBQUU7OzJGQUN6QyxtQkFBbUI7a0JBRC9CLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTttR0FRN0MsU0FBUztzQkFBakIsS0FBSztnQkFDTyxlQUFlO3NCQUEzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgZXF1YWwgZnJvbSAnZmFzdC1kZWVwLWVxdWFsL2VzNic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVzdWx0U2V0IH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbC9yZXN1bHQtc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXRhU291cmNlU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgUmVzdWx0c2V0VXRpbHMgfSBmcm9tICcuLi8uLi9yZXN1bHRzZXQtdXRpbHMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vc3RvcmUvZGFzaGJvYXJkLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBCYXNlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVU5LTk9XTl9EQVRBU09VUkNFIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zdG9yZS9kYXRhLXNvdXJjZS9kYXRhc291cmNlLXV0aWxzJztcblxuQENvbXBvbmVudCh7IHNlbGVjdG9yOiAncHJ5LWRhdGEtd2lkZ2V0JywgdGVtcGxhdGU6ICcnIH0pXG5leHBvcnQgY2xhc3MgRGF0YVdpZGdldENvbXBvbmVudCBleHRlbmRzIEJhc2VXaWRnZXRDb21wb25lbnQge1xuICByZXN1bHRTZXQkOiBPYnNlcnZhYmxlPFJlc3VsdFNldD47XG4gIHN0YXRpY1Jlc3VsdFNldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFJlc3VsdFNldCB8IG51bGw+KG51bGwpO1xuICBkYXRhc291cmNlSWRzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG4gIGFsbEl0ZW1zJDogT2JzZXJ2YWJsZTxJdGVtW10+O1xuICB1c2VkRGF0YXNvdXJjZXMkOiBPYnNlcnZhYmxlPERhdGFTb3VyY2VbXT47XG5cbiAgQElucHV0KCkgb3BlbkRhdGEkOiBPYnNlcnZhYmxlPHZvaWQ+IHwgU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIEBJbnB1dCgpIHNldCBzdGF0aWNSZXN1bHRTZXQocmVzdWx0U2V0OiBSZXN1bHRTZXQpIHtcbiAgICB0aGlzLnN0YXRpY1Jlc3VsdFNldCQubmV4dChyZXN1bHRTZXQpO1xuICB9XG5cbiAgY29uc3RydWN0b3Ioc3RvcmU6IFN0b3JlPGFueT4sIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoc3RvcmUsIGVsKTtcbiAgICB0aGlzLmRhdGFzb3VyY2VJZHMkID0gdGhpcy5tYW5pZmVzdCQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKG1hbmlmZXN0KSA9PlxuICAgICAgICAgIChBcnJheS5pc0FycmF5KG1hbmlmZXN0LmRhdGFzb3VyY2UpID8gbWFuaWZlc3QuZGF0YXNvdXJjZSA6IFttYW5pZmVzdC5kYXRhc291cmNlXSkuZmlsdGVyKFxuICAgICAgICAgICAgKGlkKSA9PiAhIWlkXG4gICAgICAgICAgKSBhcyBzdHJpbmdbXVxuICAgICAgKVxuICAgICk7XG4gICAgdGhpcy51c2VkRGF0YXNvdXJjZXMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmRhdGFzb3VyY2VJZHMkLFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5nZXREYXRhU291cmNlcylcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2lkcywgZGF0YXNvdXJjZXNdKSA9PlxuICAgICAgICAgIGlkc1xuICAgICAgICAgICAgLm1hcCgoaWQpID0+IGRhdGFzb3VyY2VzLmZpbmQoKGRzKSA9PiBkcy5pZCA9PT0gaWQpID8/IGlkKVxuICAgICAgICAgICAgLm1hcCgobnEpID0+ICh0eXBlb2YgbnEgIT09ICdzdHJpbmcnID8gbnEgOiBVTktOT1dOX0RBVEFTT1VSQ0UobnEpKSkgYXMgRGF0YVNvdXJjZVtdXG4gICAgICApXG4gICAgKTtcbiAgICB0aGlzLnJlc3VsdFNldCQgPSB0aGlzLmluaXRSZXN1bHRTZXQkKCk7XG5cbiAgICB0aGlzLmFsbEl0ZW1zJCA9IHRoaXMucmVzdWx0U2V0JC5waXBlKFxuICAgICAgZmlsdGVyKChyZXN1bHRTZXQpID0+ICEhcmVzdWx0U2V0KSxcbiAgICAgIG1hcChcbiAgICAgICAgKHJlc3VsdFNldCkgPT5cbiAgICAgICAgICBPYmplY3Qua2V5cyhyZXN1bHRTZXQ/Lml0ZW1zKVxuICAgICAgICAgICAgLm1hcCgoY2xhc3NJZCkgPT4gcmVzdWx0U2V0Lml0ZW1zW2NsYXNzSWRdKVxuICAgICAgICAgICAgLnJlZHVjZSgocHJldiwgY3VycikgPT4gWy4uLnByZXYsIC4uLmN1cnJdLCBbXSkgYXMgSXRlbVtdXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGluaXRSZXN1bHRTZXQkKCkge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5yZXN1bHRTZXRzKSxcbiAgICAgIHRoaXMuZGF0YXNvdXJjZUlkcyQsXG4gICAgICB0aGlzLnN0YXRpY1Jlc3VsdFNldCRcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbcmVzdWx0U2V0cywgcmVzdWx0U2V0TmFtZXNBcnJheSwgc3RhdGljUmVzdWx0U2V0XSkgPT4ge1xuICAgICAgICBpZiAoISFzdGF0aWNSZXN1bHRTZXQpIHtcbiAgICAgICAgICByZXR1cm4gc3RhdGljUmVzdWx0U2V0O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlc3VsdFNldEFycmF5ID0gcmVzdWx0U2V0TmFtZXNBcnJheVxuICAgICAgICAgIC5tYXAoKHJzTmFtZSkgPT4gcmVzdWx0U2V0c1tyc05hbWUgPz8gJyddKVxuICAgICAgICAgIC5maWx0ZXIoKHJzTmFtZSkgPT4gISFyc05hbWUpO1xuICAgICAgICByZXR1cm4gcmVzdWx0U2V0QXJyYXkucmVkdWNlKChyczEsIHJzMikgPT4gUmVzdWx0c2V0VXRpbHMubWVyZ2VSZXN1bHRTZXRzKHJzMSwgcnMyKSwge1xuICAgICAgICAgIGl0ZW1zOiB7fSxcbiAgICAgICAgICByZWxhdGlvbnM6IFtdLFxuICAgICAgICAgIG1lcmdlZDogcmVzdWx0U2V0QXJyYXkubGVuZ3RoLFxuICAgICAgICAgIHNvdXJjZUl0ZW1zOiB7fSxcbiAgICAgICAgICBkZXN0aW5hdGlvbkl0ZW1zOiB7fVxuICAgICAgICB9KTtcbiAgICAgIH0pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHAsIHYpID0+IGVxdWFsKHAsIHYpKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -390,7 +390,7 @@ export class PryWidgetHeaderComponent extends SubscriptionnerDirective {
390
390
  this.openSub?.unsubscribe();
391
391
  }
392
392
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PryWidgetHeaderComponent, deps: [{ token: i1.Store }, { token: i2.Overlay }, { token: i0.ViewContainerRef }, { token: i3.ToolboxMenuService }], target: i0.ɵɵFactoryTarget.Component }); }
393
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: PryWidgetHeaderComponent, selector: "pry-widget-header", inputs: { manifest: "manifest", openData$: "openData$", additionalOptions: "additionalOptions", headerOptions: "headerOptions", displayCount: "displayCount", datasourceIds: "datasourceIds", widgetIndex: "widgetIndex" }, outputs: { manifestModified: "manifestModified" }, viewQueries: [{ propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef }, { propertyName: "templateModal", first: true, predicate: ["templateModal"], descendants: true, read: TemplateRef }, { propertyName: "toggle", first: true, predicate: ["toggle"], descendants: true, read: TemplateRef }, { propertyName: "overlayMenu", first: true, predicate: ["overlayMenu"], descendants: true, read: TemplateRef }, { propertyName: "overlayCatalog", first: true, predicate: ["overlayCatalog"], descendants: true, read: TemplateRef }, { propertyName: "overlaySpot", first: true, predicate: ["overlaySpot"], descendants: true, read: TemplateRef }, { propertyName: "togglePanel", first: true, predicate: ["togglePanel"], descendants: true }, { propertyName: "cross", first: true, predicate: ["cross"], descendants: true }, { propertyName: "validate", first: true, predicate: ["validate"], descendants: true }, { propertyName: "validateCatalog", first: true, predicate: ["validateCatalog"], descendants: true }, { propertyName: "cancel", first: true, predicate: ["cancel"], descendants: true }, { propertyName: "crossCatalog", first: true, predicate: ["crossCatalog"], descendants: true }, { propertyName: "inputCatalog", first: true, predicate: ["inputCatalog"], descendants: true }, { propertyName: "menuList", first: true, predicate: ["menuList"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-widget__header\">\n <div class=\"o-widget__header__content\">\n @if ((manifest$ | async)?.title) {\n <h2 class=\"o-widget__header__content__title\">\n {{ (manifest$ | async)?.title }}\n </h2>\n } @else {\n @for (ds of usedDatasources$ | async; track ds) {\n <div class=\"o-widget__header__content__query\">\n @if (ds.id | translateId: { type: 'datasource', output: 'icon', noDefault: true } | async; as url) {\n <img [height]=\"20\" [src]=\"url\" [width]=\"20\" alt=\"\" class=\"o-widget__header__content__query__icon\" />\n }\n <h3 class=\"o-widget__header__content__query__name\">{{ ds.name }}</h3>\n @if (displayCount && !isGeo(ds)) {\n <h3 class=\"o-widget__header__content__query__name\">\n ({{ [ds.id] | resultSetSize | async }})\n </h3>\n }\n </div>\n }\n @if (((usedDatasources$ | async) ?? []).length === 0) {\n <div class=\"o-widget__header__content__no-data\">\n <h2 class=\"o-widget__header__content__title\">{{ '@pry.widget.noData' | i18n }}</h2>\n </div>\n }\n }\n </div>\n @if (displayContextMenu$ | async; as options) {\n <div class=\"m-btn-group\">\n <button\n type=\"button\"\n id=\"dialog_Menu\"\n aria-controls=\"menu\"\n [attr.aria-expanded]=\"this.menu\"\n #togglePanel\n class=\"a-btn a-btn--more\"\n (click)=\"menuOpen($event)\"\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.action.openMenuWidget' | i18n }}</span>\n </button>\n </div>\n }\n</div>\n\n<ng-template #overlayMenu>\n @if (displayContextMenu$ | async; as options) {\n <div class=\"m-context-menu\">\n <ul\n class=\"m-context-menu__list\"\n #menuList\n id=\"menu\"\n role=\"menu\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog_Menu\"\n (keydown.arrowDown)=\"onArrowDown()\"\n (keydown.arrowUp)=\"onArrowUp()\"\n (keydown.escape)=\"menuOpen()\"\n >\n @if (options === true || options['datasourceSelection'] === true) {\n <li\n class=\"m-context-menu__list__item\"\n role=\"none\"\n >\n <button\n type=\"button\"\n role=\"menuitem\"\n tabindex=\"-1\"\n id=\"toggleActions\"\n (click)=\"toggleDatasourceSelection()\"\n *pryAccess=\"{ module: 'dashboard', page: 'widget', action: 'select_named_query' }\"\n class=\"a-btn\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"stack-fill\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.readSearch' | i18n }}</span>\n </button>\n </li>\n }\n @if (options === true || options!['parameters'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <ng-content></ng-content>\n </li>\n }\n @if (options === true || options!['window'] === true) {\n @for (targetIndex of targetIndexes$ | async; track targetIndex) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n (click)=\"moveInNewWindow(_widgetIndex, targetIndex)\"\n class=\"a-btn\"\n role=\"menuitem\"\n tabindex=\"-1\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"launch\"></pry-icon>\n {{\n (targetIndex !== -1 ? '@pry.widget.target.existing' : '@pry.widget.target.new')\n | i18n: { targetIndex: this.targetIndex + 1 }\n }}\n </button>\n </li>\n }\n }\n @if (hasGrid && (options === true || options!['changeSpot'] === true)) {\n <li\n class=\"m-context-menu__list__item\"\n role=\"none\"\n >\n <button type=\"button\" role=\"menuitem\" (click)=\"toggleChangeSpot()\" class=\"a-btn\" tabindex=\"-1\">\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"move\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.changeSpot' | i18n }}</span>\n </button>\n </li>\n }\n @if (options === true || options!['maximize'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n role=\"menuitem\"\n tabindex=\"-1\"\n (click)=\"maximize(_widgetIndex)\"\n class=\"a-btn\"\n (keydown.escape)=\"menuOpen()\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"fullscreen\"></pry-icon>\n {{ '@pry.widget.target.maximize' | i18n }}\n </button>\n </li>\n }\n @if (options === true || options!['addToCatalog'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button type=\"button\" role=\"menuitem\" tabindex=\"-1\" (click)=\"toggleCatalog()\" class=\"a-btn\">\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"library_add\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.catalogWidget' | i18n }}</span>\n </button>\n </li>\n }\n @if (options === true || options!['delete'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n role=\"menuitem\"\n tabindex=\"-1\"\n (click)=\"toggleRemoveConfirm($event)\"\n class=\"a-btn\"\n (keydown.tab)=\"menuOpen()\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"delete\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.deleteWidget' | i18n }}</span>\n </button>\n </li>\n }\n @for (option of additionalOptions; track option) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n class=\"a-btn\"\n role=\"menuitem\"\n tabindex=\"-1\"\n (click)=\"executeAction(option)\"\n [disabled]=\"isActionDisabled(option)\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" [iconSvg]=\"option.icon\"></pry-icon>\n {{ option.label | i18n }}\n </button>\n </li>\n }\n </ul>\n </div>\n }\n</ng-template>\n\n<ng-template #templateModal>\n <div\n class=\"o-modal\"\n (keydown.escape)=\"cancelRemoveConfirm()\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog confirm delete presentation\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\" id=\"dialog_title\">\n {{ '@pry.widget.modalTitle' | i18n }}\n </h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button class=\"a-btn a-btn--icon-only\" #cross (click)=\"cancelRemoveConfirm()\">\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <div class=\"m-btn-group\">\n <button type=\"button\" (click)=\"cancelRemoveConfirm()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button type=\"submit\" (click)=\"confirmRemove()\" class=\"a-btn a-btn--primary\" (keydown.tab)=\"focusCrossElement()\">\n {{ '@pry.toolbox.manifest.validate' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #template>\n <pry-datasource-selector\n [manifest]=\"manifest$ | async\"\n (cancel)=\"toggleDatasourceSelection()\"\n (validated)=\"emitManifest()\"\n (nextTab)=\"focusInputCatalog()\"\n (previousTab)=\"focusValidation()\"\n (itemsChanged)=\"datasourcesChanged($event)\"\n ></pry-datasource-selector>\n</ng-template>\n\n<ng-template #overlayCatalog>\n <div\n class=\"o-modal\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog_Catalog\"\n (keydown.escape)=\"toggleCatalog()\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\">\n {{ '@pry.widget.defineCatalog' | i18n }}\n </h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button\n class=\"a-btn a-btn--icon-only\"\n (keydown.shift.tab)=\"focusValidation()\"\n #crossCatalog\n (click)=\"toggleCatalog()\"\n >\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"name\">{{ '@pry.toolbox.catalog.label' | i18n }}</label>\n <input [(ngModel)]=\"catalogInfo.name\" id=\"name\" type=\"text\" class=\"a-form-field\" required />\n </div>\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"description\">{{ '@pry.toolbox.catalog.description' | i18n }}</label>\n <input [(ngModel)]=\"catalogInfo.description\" id=\"description\" type=\"text\" class=\"a-form-field\" required />\n </div>\n <div class=\"m-form-label-field\">\n <pry-select-image\n [iconUrl]=\"catalogInfo.image\"\n (changed)=\"catalogInfo.image = $event\"\n [mode]=\"type\"\n ></pry-select-image>\n </div>\n <div class=\"m-btn-group\">\n <button\n type=\"button\"\n (click)=\"toggleCatalog()\"\n #cancel\n (keydown.tab)=\"disableValidation()\"\n class=\"a-btn a-btn--secondary\"\n >\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"submit\"\n #validateCatalog\n (click)=\"confirmCatalog()\"\n [disabled]=\"!toolboxMenuService.isValidForCatalog(catalogInfo.name)\"\n class=\"a-btn a-btn--primary\"\n (keydown.tab)=\"focusCrossElement()\"\n >\n {{ '@pry.toolbox.manifest.validate' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #overlaySpot>\n <div class=\"o-modal -place\">\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\">\n {{ '@pry.widget.tooltip.changeSpot' | i18n }}\n </h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button class=\"a-btn a-btn--icon-only\" (click)=\"toggleChangeSpot()\">\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <pry-dashboard\n [staticDashboard]=\"targetManifest!\"\n [breakpoint]=\"10\"\n [noBackground]=\"true\"\n [forceModeEdition]=\"false\"\n ></pry-dashboard>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i6.PryAccessDirective, selector: "[pryAccess]", inputs: ["pryAccess"] }, { kind: "component", type: i7.PrySelectImageComponent, selector: "pry-select-image", inputs: ["iconUrl", "size", "mode"], outputs: ["toggled", "changed"] }, { kind: "component", type: i8.DashboardComponent, selector: "pry-dashboard", inputs: ["staticDashboard", "forceModeEdition", "CloseOnDragOut", "displayOptions", "noBackground", "breakpoint"], outputs: ["rowHeight", "rows"] }, { kind: "component", type: i9.DatasourceSelectorComponent, selector: "pry-datasource-selector", inputs: ["showButtons", "showTitle", "manifest"], outputs: ["previousTab", "nextTab", "cancel", "validated", "itemsChanged"] }, { kind: "pipe", type: i10.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslateIdPipe, name: "translateId" }, { kind: "pipe", type: i12.I18nPipe, name: "i18n" }, { kind: "pipe", type: i13.ResultSetSizePipe, name: "resultSetSize" }] }); }
393
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: PryWidgetHeaderComponent, selector: "pry-widget-header", inputs: { manifest: "manifest", openData$: "openData$", additionalOptions: "additionalOptions", headerOptions: "headerOptions", displayCount: "displayCount", datasourceIds: "datasourceIds", widgetIndex: "widgetIndex" }, outputs: { manifestModified: "manifestModified" }, viewQueries: [{ propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef }, { propertyName: "templateModal", first: true, predicate: ["templateModal"], descendants: true, read: TemplateRef }, { propertyName: "toggle", first: true, predicate: ["toggle"], descendants: true, read: TemplateRef }, { propertyName: "overlayMenu", first: true, predicate: ["overlayMenu"], descendants: true, read: TemplateRef }, { propertyName: "overlayCatalog", first: true, predicate: ["overlayCatalog"], descendants: true, read: TemplateRef }, { propertyName: "overlaySpot", first: true, predicate: ["overlaySpot"], descendants: true, read: TemplateRef }, { propertyName: "togglePanel", first: true, predicate: ["togglePanel"], descendants: true }, { propertyName: "cross", first: true, predicate: ["cross"], descendants: true }, { propertyName: "validate", first: true, predicate: ["validate"], descendants: true }, { propertyName: "validateCatalog", first: true, predicate: ["validateCatalog"], descendants: true }, { propertyName: "cancel", first: true, predicate: ["cancel"], descendants: true }, { propertyName: "crossCatalog", first: true, predicate: ["crossCatalog"], descendants: true }, { propertyName: "inputCatalog", first: true, predicate: ["inputCatalog"], descendants: true }, { propertyName: "menuList", first: true, predicate: ["menuList"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-widget__header\">\n <div class=\"o-widget__header__content\">\n @if ((manifest$ | async)?.title) {\n <h2 class=\"o-widget__header__content__title\">\n {{ (manifest$ | async)?.title }}\n </h2>\n } @else {\n @for (ds of usedDatasources$ | async; track ds) {\n <div class=\"o-widget__header__content__query\">\n @if (ds.id | translateId: { type: 'datasource', output: 'icon', noDefault: true } | async; as url) {\n <img [height]=\"20\" [src]=\"url\" [width]=\"20\" alt=\"\" class=\"o-widget__header__content__query__icon\" />\n }\n <h3 class=\"o-widget__header__content__query__name\">{{ ds.name }}</h3>\n @if (displayCount && !isGeo(ds)) {\n <h3 class=\"o-widget__header__content__query__name\">\n ({{ [ds.id] | resultSetSize | async }})\n </h3>\n }\n </div>\n }\n @if (((usedDatasources$ | async) ?? []).length === 0) {\n <div class=\"o-widget__header__content__no-data\">\n <h2 class=\"o-widget__header__content__title\">{{ '@pry.widget.noData' | i18n }}</h2>\n </div>\n }\n }\n </div>\n @if (displayContextMenu$ | async; as options) {\n <div class=\"m-btn-group\">\n <button\n type=\"button\"\n id=\"dialog_Menu\"\n aria-controls=\"menu\"\n [attr.aria-expanded]=\"this.menu\"\n #togglePanel\n class=\"a-btn a-btn--more\"\n (click)=\"menuOpen($event)\"\n >\n <pry-icon [height]=\"25\" [width]=\"25\" iconSvg=\"more_horiz\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.action.openMenuWidget' | i18n }}</span>\n </button>\n </div>\n }\n</div>\n\n<ng-template #overlayMenu>\n @if (displayContextMenu$ | async; as options) {\n <div class=\"m-context-menu\">\n <ul\n class=\"m-context-menu__list\"\n #menuList\n id=\"menu\"\n role=\"menu\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog_Menu\"\n (keydown.arrowDown)=\"onArrowDown()\"\n (keydown.arrowUp)=\"onArrowUp()\"\n (keydown.escape)=\"menuOpen()\"\n >\n @if (options === true || options['datasourceSelection'] === true) {\n <li\n class=\"m-context-menu__list__item\"\n role=\"none\"\n >\n <button\n type=\"button\"\n role=\"menuitem\"\n tabindex=\"-1\"\n id=\"toggleActions\"\n (click)=\"toggleDatasourceSelection()\"\n *pryAccess=\"{ module: 'dashboard', page: 'widget', action: 'select_named_query' }\"\n class=\"a-btn\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"stack-fill\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.readSearch' | i18n }}</span>\n </button>\n </li>\n }\n @if (options === true || options!['parameters'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <ng-content></ng-content>\n </li>\n }\n @if (options === true || options!['window'] === true) {\n @for (targetIndex of targetIndexes$ | async; track targetIndex) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n (click)=\"moveInNewWindow(_widgetIndex, targetIndex)\"\n class=\"a-btn\"\n role=\"menuitem\"\n tabindex=\"-1\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"launch\"></pry-icon>\n {{\n (targetIndex !== -1 ? '@pry.widget.target.existing' : '@pry.widget.target.new')\n | i18n: { targetIndex: this.targetIndex + 1 }\n }}\n </button>\n </li>\n }\n }\n @if (hasGrid && (options === true || options!['changeSpot'] === true)) {\n <li\n class=\"m-context-menu__list__item\"\n role=\"none\"\n >\n <button type=\"button\" role=\"menuitem\" (click)=\"toggleChangeSpot()\" class=\"a-btn\" tabindex=\"-1\">\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"move\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.changeSpot' | i18n }}</span>\n </button>\n </li>\n }\n @if (options === true || options!['maximize'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n role=\"menuitem\"\n tabindex=\"-1\"\n (click)=\"maximize(_widgetIndex)\"\n class=\"a-btn\"\n (keydown.escape)=\"menuOpen()\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"fullscreen\"></pry-icon>\n {{ '@pry.widget.target.maximize' | i18n }}\n </button>\n </li>\n }\n @if (options === true || options!['addToCatalog'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button type=\"button\" role=\"menuitem\" tabindex=\"-1\" (click)=\"toggleCatalog()\" class=\"a-btn\">\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"library_add\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.catalogWidget' | i18n }}</span>\n </button>\n </li>\n }\n @if (options === true || options!['delete'] === true) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n role=\"menuitem\"\n tabindex=\"-1\"\n (click)=\"toggleRemoveConfirm($event)\"\n class=\"a-btn\"\n (keydown.tab)=\"menuOpen()\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" iconSvg=\"delete\"></pry-icon>\n <span>{{ '@pry.widget.tooltip.deleteWidget' | i18n }}</span>\n </button>\n </li>\n }\n @for (option of additionalOptions; track option) {\n <li class=\"m-context-menu__list__item\" role=\"none\">\n <button\n type=\"button\"\n class=\"a-btn\"\n role=\"menuitem\"\n tabindex=\"-1\"\n (click)=\"executeAction(option)\"\n [disabled]=\"isActionDisabled(option)\"\n >\n <pry-icon [height]=\"17\" [width]=\"17\" [iconSvg]=\"option.icon\"></pry-icon>\n {{ option.label | i18n }}\n </button>\n </li>\n }\n </ul>\n </div>\n }\n</ng-template>\n\n<ng-template #templateModal>\n <div\n class=\"o-modal\"\n (keydown.escape)=\"cancelRemoveConfirm()\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog confirm delete presentation\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\" id=\"dialog_title\">\n {{ '@pry.widget.modalTitle' | i18n }}\n </h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button class=\"a-btn a-btn--icon-only\" #cross (click)=\"cancelRemoveConfirm()\">\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <div class=\"m-btn-group\">\n <button type=\"button\" (click)=\"cancelRemoveConfirm()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button type=\"submit\" (click)=\"confirmRemove()\" class=\"a-btn a-btn--primary\" (keydown.tab)=\"focusCrossElement()\">\n {{ '@pry.toolbox.manifest.validate' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #template>\n <pry-datasource-selector\n [manifest]=\"manifest$ | async\"\n (cancel)=\"toggleDatasourceSelection()\"\n (validated)=\"emitManifest()\"\n (nextTab)=\"focusInputCatalog()\"\n (previousTab)=\"focusValidation()\"\n (itemsChanged)=\"datasourcesChanged($event)\"\n ></pry-datasource-selector>\n</ng-template>\n\n<ng-template #overlayCatalog>\n <div\n class=\"o-modal\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog_Catalog\"\n (keydown.escape)=\"toggleCatalog()\"\n >\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\">\n {{ '@pry.widget.defineCatalog' | i18n }}\n </h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button\n class=\"a-btn a-btn--icon-only\"\n (keydown.shift.tab)=\"focusValidation()\"\n #crossCatalog\n (click)=\"toggleCatalog()\"\n >\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"name\">{{ '@pry.toolbox.catalog.label' | i18n }}</label>\n <input [(ngModel)]=\"catalogInfo.name\" id=\"name\" type=\"text\" class=\"a-form-field\" required />\n </div>\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"description\">{{ '@pry.toolbox.catalog.description' | i18n }}</label>\n <input [(ngModel)]=\"catalogInfo.description\" id=\"description\" type=\"text\" class=\"a-form-field\" required />\n </div>\n <div class=\"m-form-label-field\">\n <pry-select-image\n [iconUrl]=\"catalogInfo.image\"\n (changed)=\"catalogInfo.image = $event\"\n [mode]=\"type\"\n ></pry-select-image>\n </div>\n <div class=\"m-btn-group\">\n <button\n type=\"button\"\n (click)=\"toggleCatalog()\"\n #cancel\n (keydown.tab)=\"disableValidation()\"\n class=\"a-btn a-btn--secondary\"\n >\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"submit\"\n #validateCatalog\n (click)=\"confirmCatalog()\"\n [disabled]=\"!toolboxMenuService.isValidForCatalog(catalogInfo.name)\"\n class=\"a-btn a-btn--primary\"\n (keydown.tab)=\"focusCrossElement()\"\n >\n {{ '@pry.toolbox.manifest.validate' | i18n }}\n </button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #overlaySpot>\n <div class=\"o-modal -place\">\n <div class=\"o-modal__top\">\n <div class=\"o-modal__top__title\">\n <h2 class=\"a-h2\">\n {{ '@pry.widget.tooltip.changeSpot' | i18n }}\n </h2>\n </div>\n <div class=\"o-modal__top__close\">\n <button class=\"a-btn a-btn--icon-only\" (click)=\"toggleChangeSpot()\">\n <pry-icon iconSvg=\"close\" [height]=\"35\" [width]=\"35\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.toolbox.close' | i18n }}</span>\n </button>\n </div>\n </div>\n <pry-dashboard\n [staticDashboard]=\"targetManifest!\"\n [breakpoint]=\"10\"\n [noBackground]=\"true\"\n [forceModeEdition]=\"false\"\n ></pry-dashboard>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i6.PryAccessDirective, selector: "[pryAccess]", inputs: ["pryAccess"] }, { kind: "component", type: i7.PrySelectImageComponent, selector: "pry-select-image", inputs: ["iconUrl", "size", "mode"], outputs: ["toggled", "changed"] }, { kind: "component", type: i8.DashboardComponent, selector: "pry-dashboard", inputs: ["staticDashboard", "forceModeEdition", "CloseOnDragOut", "displayOptions", "noBackground", "breakpoint", "linkedItems"], outputs: ["rowHeight", "rows"] }, { kind: "component", type: i9.DatasourceSelectorComponent, selector: "pry-datasource-selector", inputs: ["showButtons", "showTitle", "manifest"], outputs: ["previousTab", "nextTab", "cancel", "validated", "itemsChanged"] }, { kind: "pipe", type: i10.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslateIdPipe, name: "translateId" }, { kind: "pipe", type: i12.I18nPipe, name: "i18n" }, { kind: "pipe", type: i13.ResultSetSizePipe, name: "resultSetSize" }] }); }
394
394
  }
395
395
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PryWidgetHeaderComponent, decorators: [{
396
396
  type: Component,
@@ -22,10 +22,10 @@ export class FilterGroupComponent {
22
22
  }
23
23
  filter() {
24
24
  this.apply$.next();
25
- this.store.dispatch(DashboardActions.dispatchFilters({}));
25
+ this.store.dispatch(DashboardActions.dispatchFilters({ linkedItems: this.linkedItems }));
26
26
  }
27
27
  clearFilters() {
28
- this.store.dispatch(DashboardActions.clearAllFilterValues());
28
+ this.store.dispatch(DashboardActions.clearAllFilterValues({ linkedItems: this.linkedItems }));
29
29
  }
30
30
  openSelect() {
31
31
  this.isSelectOpen =
@@ -44,7 +44,7 @@ export class FilterGroupComponent {
44
44
  }
45
45
  }
46
46
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FilterGroupComponent, deps: [{ token: i1.Store }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
47
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FilterGroupComponent, selector: "pry-filter-group", inputs: { enterTriggerFilter: "enterTriggerFilter", clearTriggerFilter: "clearTriggerFilter" }, ngImport: i0, template: "<pry-filter-group-css></pry-filter-group-css>\n@if (globalManifest$ | async; as manifest) {\n @if (manifest.filters && manifest.filters.length > 0) {\n <div class=\"o-container__filters\">\n <div class=\"o-container__filter-container\" (click)=\"openSelect()\">\n @for (filterDescription of manifest.filters; track filterDescription.id) {\n @if (filterDescription.type !== 'invisible') {\n <pry-filter-instanciator\n [filter]=\"filterDescription\"\n [applyFilter$]=\"apply$\"\n (pressedEnter)=\"enterPressed()\"\n (cleared)=\"cleared()\"\n ></pry-filter-instanciator>\n }\n }\n </div>\n <div class=\"o-container__filter-actions\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"clearFilters()\">\n <pry-icon iconSvg=\"clear_filter\" [width]=\"30\" [height]=\"30\"></pry-icon>\n </button>\n <button type=\"button\" class=\"a-btn a-btn--primary\" (click)=\"filter()\">\n {{ '@pry.toolbox.apply' | i18n }}\n <pry-icon iconSvg=\"refresh_filter\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n </div>\n </div>\n }\n}\n", dependencies: [{ kind: "component", type: i2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i3.FilterInstanciatorComponent, selector: "pry-filter-instanciator", inputs: ["filter", "applyFilter$"], outputs: ["pressedEnter", "cleared"] }, { kind: "component", type: i4.PryFilterGroupCssComponent, selector: "pry-filter-group-css" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.I18nPipe, name: "i18n" }] }); }
47
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FilterGroupComponent, selector: "pry-filter-group", inputs: { enterTriggerFilter: "enterTriggerFilter", clearTriggerFilter: "clearTriggerFilter", linkedItems: "linkedItems" }, ngImport: i0, template: "<pry-filter-group-css></pry-filter-group-css>\n@if (globalManifest$ | async; as manifest) {\n @if (manifest.filters && manifest.filters.length > 0) {\n <div class=\"o-container__filters\">\n <div class=\"o-container__filter-container\" (click)=\"openSelect()\">\n @for (filterDescription of manifest.filters; track filterDescription.id) {\n @if (filterDescription.type !== 'invisible') {\n <pry-filter-instanciator\n [filter]=\"filterDescription\"\n [applyFilter$]=\"apply$\"\n (pressedEnter)=\"enterPressed()\"\n (cleared)=\"cleared()\"\n ></pry-filter-instanciator>\n }\n }\n </div>\n <div class=\"o-container__filter-actions\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"clearFilters()\">\n <pry-icon iconSvg=\"clear_filter\" [width]=\"30\" [height]=\"30\"></pry-icon>\n </button>\n <button type=\"button\" class=\"a-btn a-btn--primary\" (click)=\"filter()\">\n {{ '@pry.toolbox.apply' | i18n }}\n <pry-icon iconSvg=\"refresh_filter\" [width]=\"18\" [height]=\"18\"></pry-icon>\n </button>\n </div>\n </div>\n }\n}\n", dependencies: [{ kind: "component", type: i2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i3.FilterInstanciatorComponent, selector: "pry-filter-instanciator", inputs: ["filter", "applyFilter$"], outputs: ["pressedEnter", "cleared"] }, { kind: "component", type: i4.PryFilterGroupCssComponent, selector: "pry-filter-group-css" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.I18nPipe, name: "i18n" }] }); }
48
48
  }
49
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FilterGroupComponent, decorators: [{
50
50
  type: Component,
@@ -56,5 +56,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
56
56
  type: Input
57
57
  }], clearTriggerFilter: [{
58
58
  type: Input
59
+ }], linkedItems: [{
60
+ type: Input
59
61
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9kYXNoYm9hcmQvZmlsdGVyL2NvbXBvbmVudHMvZmlsdGVyLWdyb3VwL2ZpbHRlci1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL2ZpbHRlci9jb21wb25lbnRzL2ZpbHRlci1ncm91cC9maWx0ZXItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFHbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7OztBQU0zQyxNQUFNLE9BQU8sb0JBQW9CO0lBTy9CLFlBQ1ksS0FBWSxFQUNJLFFBQWtCO1FBRGxDLFVBQUssR0FBTCxLQUFLLENBQU87UUFDSSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBUDlDLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBTyxTQUFTLENBQUMsQ0FBQztRQUM5QyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNaLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUMzQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFNbEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsWUFBWTtZQUNmLElBQUksQ0FBQyxRQUFRO2lCQUNWLGFBQWEsQ0FBQyxnQ0FBZ0MsQ0FBQztnQkFDaEQsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7OEdBeENVLG9CQUFvQix1Q0FTckIsUUFBUTtrR0FUUCxvQkFBb0Isd0pDWmpDLG90Q0E0QkE7OzJGRGhCYSxvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkFZekIsTUFBTTsyQkFBQyxRQUFRO3lDQUxULGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBHbG9iYWxNYW5pZmVzdCB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvbW9kZWwvbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IERhc2hib2FyZFNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2Rhc2hib2FyZC5hY3Rpb25zJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWZpbHRlci1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItZ3JvdXAuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlckdyb3VwQ29tcG9uZW50IHtcbiAgZ2xvYmFsTWFuaWZlc3QkOiBPYnNlcnZhYmxlPEdsb2JhbE1hbmlmZXN0PjtcbiAgYXBwbHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx2b2lkPih1bmRlZmluZWQpO1xuICBpc1NlbGVjdE9wZW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZW50ZXJUcmlnZ2VyRmlsdGVyID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNsZWFyVHJpZ2dlckZpbHRlciA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBzdG9yZTogU3RvcmUsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnRcbiAgKSB7XG4gICAgdGhpcy5nbG9iYWxNYW5pZmVzdCQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuZ2xvYmFsTWFuaWZlc3QpO1xuICB9XG5cbiAgZmlsdGVyKCkge1xuICAgIHRoaXMuYXBwbHkkLm5leHQoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKERhc2hib2FyZEFjdGlvbnMuZGlzcGF0Y2hGaWx0ZXJzKHt9KSk7XG4gIH1cblxuICBjbGVhckZpbHRlcnMoKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLmNsZWFyQWxsRmlsdGVyVmFsdWVzKCkpO1xuICB9XG5cbiAgb3BlblNlbGVjdCgpIHtcbiAgICB0aGlzLmlzU2VsZWN0T3BlbiA9XG4gICAgICB0aGlzLmRvY3VtZW50XG4gICAgICAgIC5xdWVyeVNlbGVjdG9yKCcuby1jb250YWluZXJfX2ZpbHRlci1jb250YWluZXInKVxuICAgICAgICA/LmNvbnRhaW5zKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ25nLWRyb3Bkb3duLXBhbmVsLm5nLWRyb3Bkb3duLXBhbmVsJykpIHx8IGZhbHNlO1xuICB9XG5cbiAgZW50ZXJQcmVzc2VkKCkge1xuICAgIGlmICh0aGlzLmVudGVyVHJpZ2dlckZpbHRlcikge1xuICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICB9XG4gIH1cblxuICBjbGVhcmVkKCkge1xuICAgIGlmICh0aGlzLmNsZWFyVHJpZ2dlckZpbHRlcikge1xuICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxwcnktZmlsdGVyLWdyb3VwLWNzcz48L3ByeS1maWx0ZXItZ3JvdXAtY3NzPlxuQGlmIChnbG9iYWxNYW5pZmVzdCQgfCBhc3luYzsgYXMgbWFuaWZlc3QpIHtcbiAgQGlmIChtYW5pZmVzdC5maWx0ZXJzICYmIG1hbmlmZXN0LmZpbHRlcnMubGVuZ3RoID4gMCkge1xuICAgIDxkaXYgY2xhc3M9XCJvLWNvbnRhaW5lcl9fZmlsdGVyc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cIm8tY29udGFpbmVyX19maWx0ZXItY29udGFpbmVyXCIgKGNsaWNrKT1cIm9wZW5TZWxlY3QoKVwiPlxuICAgICAgICBAZm9yIChmaWx0ZXJEZXNjcmlwdGlvbiBvZiBtYW5pZmVzdC5maWx0ZXJzOyB0cmFjayBmaWx0ZXJEZXNjcmlwdGlvbi5pZCkge1xuICAgICAgICAgIEBpZiAoZmlsdGVyRGVzY3JpcHRpb24udHlwZSAhPT0gJ2ludmlzaWJsZScpIHtcbiAgICAgICAgICAgIDxwcnktZmlsdGVyLWluc3RhbmNpYXRvclxuICAgICAgICAgICAgICBbZmlsdGVyXT1cImZpbHRlckRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgW2FwcGx5RmlsdGVyJF09XCJhcHBseSRcIlxuICAgICAgICAgICAgICAocHJlc3NlZEVudGVyKT1cImVudGVyUHJlc3NlZCgpXCJcbiAgICAgICAgICAgICAgKGNsZWFyZWQpPVwiY2xlYXJlZCgpXCJcbiAgICAgICAgICAgID48L3ByeS1maWx0ZXItaW5zdGFuY2lhdG9yPlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiby1jb250YWluZXJfX2ZpbHRlci1hY3Rpb25zXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjbGVhckZpbHRlcnMoKVwiPlxuICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xlYXJfZmlsdGVyXCIgW3dpZHRoXT1cIjMwXCIgW2hlaWdodF09XCIzMFwiPjwvcHJ5LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCIgKGNsaWNrKT1cImZpbHRlcigpXCI+XG4gICAgICAgICAge3sgJ0BwcnkudG9vbGJveC5hcHBseScgfCBpMThuIH19XG4gICAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJyZWZyZXNoX2ZpbHRlclwiIFt3aWR0aF09XCIxOFwiIFtoZWlnaHRdPVwiMThcIj48L3ByeS1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG59XG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9kYXNoYm9hcmQvZmlsdGVyL2NvbXBvbmVudHMvZmlsdGVyLWdyb3VwL2ZpbHRlci1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL2ZpbHRlci9jb21wb25lbnRzL2ZpbHRlci1ncm91cC9maWx0ZXItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFHbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7OztBQU0zQyxNQUFNLE9BQU8sb0JBQW9CO0lBUS9CLFlBQ1ksS0FBWSxFQUNJLFFBQWtCO1FBRGxDLFVBQUssR0FBTCxLQUFLLENBQU87UUFDSSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBUjlDLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBTyxTQUFTLENBQUMsQ0FBQztRQUM5QyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNaLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUMzQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFPbEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFlBQVk7WUFDZixJQUFJLENBQUMsUUFBUTtpQkFDVixhQUFhLENBQUMsZ0NBQWdDLENBQUM7Z0JBQ2hELEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMscUNBQXFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUN6RixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDOzhHQXpDVSxvQkFBb0IsdUNBVXJCLFFBQVE7a0dBVlAsb0JBQW9CLG9MQ1pqQyxvdENBNEJBOzsyRkRoQmEsb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBYXpCLE1BQU07MkJBQUMsUUFBUTt5Q0FOVCxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBHbG9iYWxNYW5pZmVzdCB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvbW9kZWwvbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IERhc2hib2FyZFNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2Rhc2hib2FyZC5hY3Rpb25zJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWZpbHRlci1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItZ3JvdXAuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlckdyb3VwQ29tcG9uZW50IHtcbiAgZ2xvYmFsTWFuaWZlc3QkOiBPYnNlcnZhYmxlPEdsb2JhbE1hbmlmZXN0PjtcbiAgYXBwbHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx2b2lkPih1bmRlZmluZWQpO1xuICBpc1NlbGVjdE9wZW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZW50ZXJUcmlnZ2VyRmlsdGVyID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNsZWFyVHJpZ2dlckZpbHRlciA9IGZhbHNlO1xuICBASW5wdXQoKSBsaW5rZWRJdGVtcz86ICgnZGVzdGluYXRpb24nIHwgJ3NvdXJjZScpW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHN0b3JlOiBTdG9yZSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudFxuICApIHtcbiAgICB0aGlzLmdsb2JhbE1hbmlmZXN0JCA9IHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5nbG9iYWxNYW5pZmVzdCk7XG4gIH1cblxuICBmaWx0ZXIoKSB7XG4gICAgdGhpcy5hcHBseSQubmV4dCgpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGFzaGJvYXJkQWN0aW9ucy5kaXNwYXRjaEZpbHRlcnMoeyBsaW5rZWRJdGVtczogdGhpcy5saW5rZWRJdGVtcyB9KSk7XG4gIH1cblxuICBjbGVhckZpbHRlcnMoKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLmNsZWFyQWxsRmlsdGVyVmFsdWVzKHsgbGlua2VkSXRlbXM6IHRoaXMubGlua2VkSXRlbXMgfSkpO1xuICB9XG5cbiAgb3BlblNlbGVjdCgpIHtcbiAgICB0aGlzLmlzU2VsZWN0T3BlbiA9XG4gICAgICB0aGlzLmRvY3VtZW50XG4gICAgICAgIC5xdWVyeVNlbGVjdG9yKCcuby1jb250YWluZXJfX2ZpbHRlci1jb250YWluZXInKVxuICAgICAgICA/LmNvbnRhaW5zKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ25nLWRyb3Bkb3duLXBhbmVsLm5nLWRyb3Bkb3duLXBhbmVsJykpIHx8IGZhbHNlO1xuICB9XG5cbiAgZW50ZXJQcmVzc2VkKCkge1xuICAgIGlmICh0aGlzLmVudGVyVHJpZ2dlckZpbHRlcikge1xuICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICB9XG4gIH1cblxuICBjbGVhcmVkKCkge1xuICAgIGlmICh0aGlzLmNsZWFyVHJpZ2dlckZpbHRlcikge1xuICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxwcnktZmlsdGVyLWdyb3VwLWNzcz48L3ByeS1maWx0ZXItZ3JvdXAtY3NzPlxuQGlmIChnbG9iYWxNYW5pZmVzdCQgfCBhc3luYzsgYXMgbWFuaWZlc3QpIHtcbiAgQGlmIChtYW5pZmVzdC5maWx0ZXJzICYmIG1hbmlmZXN0LmZpbHRlcnMubGVuZ3RoID4gMCkge1xuICAgIDxkaXYgY2xhc3M9XCJvLWNvbnRhaW5lcl9fZmlsdGVyc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cIm8tY29udGFpbmVyX19maWx0ZXItY29udGFpbmVyXCIgKGNsaWNrKT1cIm9wZW5TZWxlY3QoKVwiPlxuICAgICAgICBAZm9yIChmaWx0ZXJEZXNjcmlwdGlvbiBvZiBtYW5pZmVzdC5maWx0ZXJzOyB0cmFjayBmaWx0ZXJEZXNjcmlwdGlvbi5pZCkge1xuICAgICAgICAgIEBpZiAoZmlsdGVyRGVzY3JpcHRpb24udHlwZSAhPT0gJ2ludmlzaWJsZScpIHtcbiAgICAgICAgICAgIDxwcnktZmlsdGVyLWluc3RhbmNpYXRvclxuICAgICAgICAgICAgICBbZmlsdGVyXT1cImZpbHRlckRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgW2FwcGx5RmlsdGVyJF09XCJhcHBseSRcIlxuICAgICAgICAgICAgICAocHJlc3NlZEVudGVyKT1cImVudGVyUHJlc3NlZCgpXCJcbiAgICAgICAgICAgICAgKGNsZWFyZWQpPVwiY2xlYXJlZCgpXCJcbiAgICAgICAgICAgID48L3ByeS1maWx0ZXItaW5zdGFuY2lhdG9yPlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiby1jb250YWluZXJfX2ZpbHRlci1hY3Rpb25zXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjbGVhckZpbHRlcnMoKVwiPlxuICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xlYXJfZmlsdGVyXCIgW3dpZHRoXT1cIjMwXCIgW2hlaWdodF09XCIzMFwiPjwvcHJ5LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCIgKGNsaWNrKT1cImZpbHRlcigpXCI+XG4gICAgICAgICAge3sgJ0BwcnkudG9vbGJveC5hcHBseScgfCBpMThuIH19XG4gICAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJyZWZyZXNoX2ZpbHRlclwiIFt3aWR0aF09XCIxOFwiIFtoZWlnaHRdPVwiMThcIj48L3ByeS1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG59XG4iXX0=
@@ -5,17 +5,10 @@ export class ResultsetUtils {
5
5
  if (!rs2)
6
6
  return rs1;
7
7
  const rs1Copy = structuredClone(rs1);
8
- Object.keys(rs2.items ?? {}).forEach((key) => {
9
- if (!rs1Copy.items[key]) {
10
- rs1Copy.items[key] = [];
11
- }
12
- rs1Copy.items[key].push(...rs2.items[key]);
13
- });
8
+ this.mergeItems(rs1Copy, rs2, (rs) => rs.items);
9
+ this.mergeItems(rs1Copy, rs2, (rs) => rs.sourceItems ?? {});
10
+ this.mergeItems(rs1Copy, rs2, (rs) => rs.destinationItems ?? {});
14
11
  /* Make items and relations unique in resulted dataset */
15
- Object.keys(rs1Copy.items).forEach((key) => {
16
- const uniqueList = [...new Set(rs1Copy.items[key].map((it) => it.id))];
17
- rs1Copy.items[key] = uniqueList.map((id) => rs1Copy.items[key].find((it) => it.id === id));
18
- });
19
12
  rs1Copy.relations = [
20
13
  ...new Set([
21
14
  ...([...(rs1Copy.relations ?? []), ...(rs2.relations ?? [])] ?? []).map((rel) => `${rel.relationType}|${rel.source}|${rel.destination}`),
@@ -40,5 +33,19 @@ export class ResultsetUtils {
40
33
  rs1Copy.searchAfter = rs2.searchAfter ?? rs1Copy.searchAfter;
41
34
  return rs1Copy;
42
35
  }
36
+ static mergeItems(rs1, rs2, getItemsToMerge) {
37
+ const rs1Items = getItemsToMerge(rs1);
38
+ const rs2Items = getItemsToMerge(rs2);
39
+ Object.keys(rs2Items).forEach((key) => {
40
+ if (!rs1Items[key]) {
41
+ rs1Items[key] = [];
42
+ }
43
+ rs1Items[key].push(...rs2Items[key]);
44
+ });
45
+ Object.keys(rs1Items).forEach((key) => {
46
+ const uniqueList = [...new Set(rs1Items[key].map((it) => it.id))];
47
+ rs1Items[key] = uniqueList.map((id) => (rs1Items ? rs1Items[key].find((it) => it.id === id) : []));
48
+ });
49
+ }
43
50
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0c2V0LXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2Rhc2hib2FyZC9yZXN1bHRzZXQtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFjLEVBQUUsR0FBYztRQUNuRCxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU8sR0FBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFDckIsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBYyxDQUFDO1FBQ2xELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN4QixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUMxQixDQUFDO1lBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFFSCx5REFBeUQ7UUFDekQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDekMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZFLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQVcsQ0FBQztRQUN2RyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxTQUFTLEdBQUc7WUFDbEIsR0FBRyxJQUFJLEdBQUcsQ0FBQztnQkFDVCxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FDckUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLFlBQVksSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FDaEU7Z0JBQ0QsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxZQUFZLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDOUYsQ0FBQztTQUNILENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDWixNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQy9GLENBQUMsQ0FBZSxDQUFDO1FBRWpCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkIsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6QixPQUFPLENBQUMsS0FBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDckQsQ0FBQztZQUNELE9BQU8sQ0FBQyxLQUFNLENBQUMsR0FBRyxDQUFDLEdBQUc7Z0JBQ3BCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUs7Z0JBQ3hELFFBQVEsRUFBRSxPQUFPLENBQUMsS0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsSUFBSSxHQUFHLENBQUMsS0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVE7YUFDbkUsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsV0FBVyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFFN0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4uL2NvcmUvbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVsYXRpb24gfSBmcm9tICcuLi9jb3JlL21vZGVsL3JlbGF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBSZXN1bHRTZXQgfSBmcm9tICcuLi9jb3JlL21vZGVsL3Jlc3VsdC1zZXQuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNsYXNzIFJlc3VsdHNldFV0aWxzIHtcbiAgc3RhdGljIG1lcmdlUmVzdWx0U2V0cyhyczE6IFJlc3VsdFNldCwgcnMyOiBSZXN1bHRTZXQpOiBSZXN1bHRTZXQge1xuICAgIGlmICghcnMxKSByZXR1cm4gcnMyO1xuICAgIGlmICghcnMyKSByZXR1cm4gcnMxO1xuICAgIGNvbnN0IHJzMUNvcHkgPSBzdHJ1Y3R1cmVkQ2xvbmUocnMxKSBhcyBSZXN1bHRTZXQ7XG4gICAgT2JqZWN0LmtleXMocnMyLml0ZW1zID8/IHt9KS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmICghcnMxQ29weS5pdGVtc1trZXldKSB7XG4gICAgICAgIHJzMUNvcHkuaXRlbXNba2V5XSA9IFtdO1xuICAgICAgfVxuICAgICAgcnMxQ29weS5pdGVtc1trZXldLnB1c2goLi4ucnMyLml0ZW1zW2tleV0pO1xuICAgIH0pO1xuXG4gICAgLyogTWFrZSBpdGVtcyBhbmQgcmVsYXRpb25zIHVuaXF1ZSBpbiByZXN1bHRlZCBkYXRhc2V0ICovXG4gICAgT2JqZWN0LmtleXMocnMxQ29weS5pdGVtcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBjb25zdCB1bmlxdWVMaXN0ID0gWy4uLm5ldyBTZXQocnMxQ29weS5pdGVtc1trZXldLm1hcCgoaXQpID0+IGl0LmlkKSldO1xuICAgICAgcnMxQ29weS5pdGVtc1trZXldID0gdW5pcXVlTGlzdC5tYXAoKGlkKSA9PiByczFDb3B5Lml0ZW1zW2tleV0uZmluZCgoaXQpID0+IGl0LmlkID09PSBpZCkpIGFzIEl0ZW1bXTtcbiAgICB9KTtcblxuICAgIHJzMUNvcHkucmVsYXRpb25zID0gW1xuICAgICAgLi4ubmV3IFNldChbXG4gICAgICAgIC4uLihbLi4uKHJzMUNvcHkucmVsYXRpb25zID8/IFtdKSwgLi4uKHJzMi5yZWxhdGlvbnMgPz8gW10pXSA/PyBbXSkubWFwKFxuICAgICAgICAgIChyZWwpID0+IGAke3JlbC5yZWxhdGlvblR5cGV9fCR7cmVsLnNvdXJjZX18JHtyZWwuZGVzdGluYXRpb259YFxuICAgICAgICApLFxuICAgICAgICAuLi4ocnMyLnJlbGF0aW9ucyA/PyBbXSkubWFwKChyZWwpID0+IGAke3JlbC5yZWxhdGlvblR5cGV9fCR7cmVsLnNvdXJjZX18JHtyZWwuZGVzdGluYXRpb259YClcbiAgICAgIF0pXG4gICAgXS5tYXAoKGtleSkgPT4ge1xuICAgICAgY29uc3Qgc3BsaXR0ZWRLZXkgPSBrZXkuc3BsaXQoJ3wnKTtcbiAgICAgIHJldHVybiB7IHJlbGF0aW9uVHlwZTogc3BsaXR0ZWRLZXlbMF0sIHNvdXJjZTogc3BsaXR0ZWRLZXlbMV0sIGRlc3RpbmF0aW9uOiBzcGxpdHRlZEtleVsyXSB9O1xuICAgIH0pIGFzIFJlbGF0aW9uW107XG5cbiAgICBpZiAoIXJzMUNvcHkuY291bnQpIHtcbiAgICAgIHJzMUNvcHkuY291bnQgPSB7fTtcbiAgICB9XG4gICAgT2JqZWN0LmtleXMocnMyLmNvdW50ID8/IHt9KS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmICghcnMxQ29weS5jb3VudCFba2V5XSkge1xuICAgICAgICByczFDb3B5LmNvdW50IVtrZXldID0geyBjb3VudDogMCwgYWNjdXJhdGU6IHRydWUgfTtcbiAgICAgIH1cbiAgICAgIHJzMUNvcHkuY291bnQhW2tleV0gPSB7XG4gICAgICAgIGNvdW50OiByczFDb3B5LmNvdW50IVtrZXldLmNvdW50ICsgcnMyLmNvdW50IVtrZXldLmNvdW50LFxuICAgICAgICBhY2N1cmF0ZTogcnMxQ29weS5jb3VudCFba2V5XS5hY2N1cmF0ZSAmJiByczIuY291bnQhW2tleV0uYWNjdXJhdGVcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICByczFDb3B5LnNlYXJjaEFmdGVyID0gcnMyLnNlYXJjaEFmdGVyID8/IHJzMUNvcHkuc2VhcmNoQWZ0ZXI7XG5cbiAgICByZXR1cm4gcnMxQ29weTtcbiAgfVxufVxuIl19
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0c2V0LXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2Rhc2hib2FyZC9yZXN1bHRzZXQtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFjLEVBQUUsR0FBYztRQUNuRCxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU8sR0FBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFDckIsTUFBTSxPQUFPLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXJDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVqRSx5REFBeUQ7UUFDekQsT0FBTyxDQUFDLFNBQVMsR0FBRztZQUNsQixHQUFHLElBQUksR0FBRyxDQUFDO2dCQUNULEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUNyRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsWUFBWSxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUNoRTtnQkFDRCxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLFlBQVksSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUM5RixDQUFDO1NBQ0gsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNaLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbkMsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDL0YsQ0FBQyxDQUFlLENBQUM7UUFFakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNuQixPQUFPLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNyQixDQUFDO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sQ0FBQyxLQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUNyRCxDQUFDO1lBQ0QsT0FBTyxDQUFDLEtBQU0sQ0FBQyxHQUFHLENBQUMsR0FBRztnQkFDcEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSztnQkFDeEQsUUFBUSxFQUFFLE9BQU8sQ0FBQyxLQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxLQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUTthQUNuRSxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUU3RCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sTUFBTSxDQUFDLFVBQVUsQ0FDdkIsR0FBYyxFQUNkLEdBQWMsRUFDZCxlQUVDO1FBRUQsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sUUFBUSxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0QyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbkIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNwQyxNQUFNLFVBQVUsR0FBRyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsRSxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFXLENBQUM7UUFDL0csQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJdGVtIH0gZnJvbSAnLi4vY29yZS9tb2RlbC9pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBSZWxhdGlvbiB9IGZyb20gJy4uL2NvcmUvbW9kZWwvcmVsYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFJlc3VsdFNldCB9IGZyb20gJy4uL2NvcmUvbW9kZWwvcmVzdWx0LXNldC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgUmVzdWx0c2V0VXRpbHMge1xuICBzdGF0aWMgbWVyZ2VSZXN1bHRTZXRzKHJzMTogUmVzdWx0U2V0LCByczI6IFJlc3VsdFNldCk6IFJlc3VsdFNldCB7XG4gICAgaWYgKCFyczEpIHJldHVybiByczI7XG4gICAgaWYgKCFyczIpIHJldHVybiByczE7XG4gICAgY29uc3QgcnMxQ29weSA9IHN0cnVjdHVyZWRDbG9uZShyczEpO1xuXG4gICAgdGhpcy5tZXJnZUl0ZW1zKHJzMUNvcHksIHJzMiwgKHJzKSA9PiBycy5pdGVtcyk7XG4gICAgdGhpcy5tZXJnZUl0ZW1zKHJzMUNvcHksIHJzMiwgKHJzKSA9PiBycy5zb3VyY2VJdGVtcyA/PyB7fSk7XG4gICAgdGhpcy5tZXJnZUl0ZW1zKHJzMUNvcHksIHJzMiwgKHJzKSA9PiBycy5kZXN0aW5hdGlvbkl0ZW1zID8/IHt9KTtcblxuICAgIC8qIE1ha2UgaXRlbXMgYW5kIHJlbGF0aW9ucyB1bmlxdWUgaW4gcmVzdWx0ZWQgZGF0YXNldCAqL1xuICAgIHJzMUNvcHkucmVsYXRpb25zID0gW1xuICAgICAgLi4ubmV3IFNldChbXG4gICAgICAgIC4uLihbLi4uKHJzMUNvcHkucmVsYXRpb25zID8/IFtdKSwgLi4uKHJzMi5yZWxhdGlvbnMgPz8gW10pXSA/PyBbXSkubWFwKFxuICAgICAgICAgIChyZWwpID0+IGAke3JlbC5yZWxhdGlvblR5cGV9fCR7cmVsLnNvdXJjZX18JHtyZWwuZGVzdGluYXRpb259YFxuICAgICAgICApLFxuICAgICAgICAuLi4ocnMyLnJlbGF0aW9ucyA/PyBbXSkubWFwKChyZWwpID0+IGAke3JlbC5yZWxhdGlvblR5cGV9fCR7cmVsLnNvdXJjZX18JHtyZWwuZGVzdGluYXRpb259YClcbiAgICAgIF0pXG4gICAgXS5tYXAoKGtleSkgPT4ge1xuICAgICAgY29uc3Qgc3BsaXR0ZWRLZXkgPSBrZXkuc3BsaXQoJ3wnKTtcbiAgICAgIHJldHVybiB7IHJlbGF0aW9uVHlwZTogc3BsaXR0ZWRLZXlbMF0sIHNvdXJjZTogc3BsaXR0ZWRLZXlbMV0sIGRlc3RpbmF0aW9uOiBzcGxpdHRlZEtleVsyXSB9O1xuICAgIH0pIGFzIFJlbGF0aW9uW107XG5cbiAgICBpZiAoIXJzMUNvcHkuY291bnQpIHtcbiAgICAgIHJzMUNvcHkuY291bnQgPSB7fTtcbiAgICB9XG4gICAgT2JqZWN0LmtleXMocnMyLmNvdW50ID8/IHt9KS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmICghcnMxQ29weS5jb3VudCFba2V5XSkge1xuICAgICAgICByczFDb3B5LmNvdW50IVtrZXldID0geyBjb3VudDogMCwgYWNjdXJhdGU6IHRydWUgfTtcbiAgICAgIH1cbiAgICAgIHJzMUNvcHkuY291bnQhW2tleV0gPSB7XG4gICAgICAgIGNvdW50OiByczFDb3B5LmNvdW50IVtrZXldLmNvdW50ICsgcnMyLmNvdW50IVtrZXldLmNvdW50LFxuICAgICAgICBhY2N1cmF0ZTogcnMxQ29weS5jb3VudCFba2V5XS5hY2N1cmF0ZSAmJiByczIuY291bnQhW2tleV0uYWNjdXJhdGVcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICByczFDb3B5LnNlYXJjaEFmdGVyID0gcnMyLnNlYXJjaEFmdGVyID8/IHJzMUNvcHkuc2VhcmNoQWZ0ZXI7XG5cbiAgICByZXR1cm4gcnMxQ29weTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG1lcmdlSXRlbXMoXG4gICAgcnMxOiBSZXN1bHRTZXQsXG4gICAgcnMyOiBSZXN1bHRTZXQsXG4gICAgZ2V0SXRlbXNUb01lcmdlOiAocnM6IFJlc3VsdFNldCkgPT4ge1xuICAgICAgW2tleTogc3RyaW5nXTogSXRlbVtdO1xuICAgIH1cbiAgKTogdm9pZCB7XG4gICAgY29uc3QgcnMxSXRlbXMgPSBnZXRJdGVtc1RvTWVyZ2UocnMxKTtcbiAgICBjb25zdCByczJJdGVtcyA9IGdldEl0ZW1zVG9NZXJnZShyczIpO1xuXG4gICAgT2JqZWN0LmtleXMocnMySXRlbXMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgaWYgKCFyczFJdGVtc1trZXldKSB7XG4gICAgICAgIHJzMUl0ZW1zW2tleV0gPSBbXTtcbiAgICAgIH1cbiAgICAgIHJzMUl0ZW1zW2tleV0ucHVzaCguLi5yczJJdGVtc1trZXldKTtcbiAgICB9KTtcblxuICAgIE9iamVjdC5rZXlzKHJzMUl0ZW1zKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGNvbnN0IHVuaXF1ZUxpc3QgPSBbLi4ubmV3IFNldChyczFJdGVtc1trZXldLm1hcCgoaXQpID0+IGl0LmlkKSldO1xuICAgICAgcnMxSXRlbXNba2V5XSA9IHVuaXF1ZUxpc3QubWFwKChpZCkgPT4gKHJzMUl0ZW1zID8gcnMxSXRlbXNba2V5XS5maW5kKChpdCkgPT4gaXQuaWQgPT09IGlkKSA6IFtdKSkgYXMgSXRlbVtdO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -74,7 +74,7 @@ export const DashboardActions = {
74
74
  removeFilter: createAction('[Dashboard] (bus) remove filter in presentation', props()),
75
75
  removeFilters: createAction('[Dashboard] (bus) remove filters'),
76
76
  updateFilterValue: createAction('[Dashboard] (bus) update filter value', props()),
77
- clearAllFilterValues: createAction('[Dashboard] (bus) clear all filter values'),
77
+ clearAllFilterValues: createAction('[Dashboard] (bus) clear all filter values', props()),
78
78
  dispatchFilters: createAction('[Dashboard] (bus) apply filters to presentation datasources', props()),
79
79
  resetWmsFeatures: createAction('[Widget map] Reset Wms layer features', props()),
80
80
  getWmsFeatures: createAction('[Widget map] Get Wms layer features', props()),
@@ -89,4 +89,4 @@ export const DashboardActions = {
89
89
  triggerAggregate: createAction('[Dashboard] (bus) Triggering aggregates for datasource', props()),
90
90
  loadPresentation: createAction('[Dashboard] load presentation', props())
91
91
  };
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBNkJsRCxNQUFNLENBQU4sSUFBWSxRQVFYO0FBUkQsV0FBWSxRQUFRO0lBQ2xCLCtCQUFtQixDQUFBO0lBQ25CLCtCQUFtQixDQUFBO0lBQ25CLGlDQUFxQixDQUFBO0lBQ3JCLCtCQUFtQixDQUFBO0lBQ25CLDZCQUFpQixDQUFBO0lBQ2pCLDZCQUFpQixDQUFBO0lBQ2pCLDZCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFSVyxRQUFRLEtBQVIsUUFBUSxRQVFuQjtBQUVELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLElBQUksRUFBRSxZQUFZLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxFQUFzQixDQUFDO0lBQ3JFLEtBQUssRUFBRSxZQUFZLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxFQUFzQixDQUFDO0lBQ3JFLGNBQWMsRUFBRSxZQUFZLENBQzFCLHFDQUFxQyxFQUNyQyxLQUFLLEVBT0QsQ0FDTDtJQUNELHdCQUF3QixFQUFFLFlBQVksQ0FDcEMsaURBQWlELEVBQ2pELEtBQUssRUFPRCxDQUNMO0lBQ0QsK0JBQStCLEVBQUUsWUFBWSxDQUMzQyw0REFBNEQsRUFDNUQsS0FBSyxFQU9ELENBQ0w7SUFDRCw2QkFBNkIsRUFBRSxZQUFZLENBQ3pDLHVEQUF1RCxFQUN2RCxLQUFLLEVBU0QsQ0FDTDtJQUNELDhCQUE4QixFQUFFLFlBQVksQ0FDMUMsd0RBQXdELEVBQ3hELEtBQUssRUFPRCxDQUNMO0lBQ0Qsa0JBQWtCLEVBQUUsWUFBWSxDQUM5QixzQ0FBc0MsRUFDdEMs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QUNELGdCQUFnQixFQUFFLFlBQVksQ0FBQyx3REFBd0QsRUFBRSxLQUFLLEVBQWtCLENBQUM7SUFDakgsZ0JBQWdCLEVBQUUsWUFBWSxDQUM1QiwrQkFBK0IsRUFDL0IsS0FBSyxFQUE2RCxDQUNuRTtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUHJ5U25hY2tNZXNzYWdlIH0gZnJvbSAnLi4vLi4vY29yZS9jb21wb25lbnRzL3NuYWNrYmFyL3NuYWNrLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEaXNwbGF5T3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvZGlzcGxheS1vcHRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL2ZpbHRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgRGFzaGJvYXJkTWFuaWZlc3QsXG4gIEdsb2JhbE1hbmlmZXN0LFxuICBNYW5pZmVzdERlc2NyaXB0aW9uLFxuICBXaWRnZXRNYW5pZmVzdFxufSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL21hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBSZWxhdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvcmVsYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9yZGVyVmFsdWUgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL3Jlc3VsdC1vcmRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVzdWx0U2V0LCBSZXN1bHRTZXRzIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbC9yZXN1bHQtc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBHZXRDYXBhYmlsaXRpZXNSZXNwb25zZSB9IGZyb20gJy4vd21zLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBEYXNoYm9hcmRDZWxsUGFyYW1zID0ge1xuICBncmlkV2lkdGg6IG51bWJlcjtcbiAgZ3JpZEhlaWdodDogbnVtYmVyO1xuICBncmlkR2FwOiBudW1iZXI7XG4gIGNvbHVtbnM6IG51bWJlcjtcbiAgY2VsbEhlaWdodDogbnVtYmVyO1xuICByb3dzOiBudW1iZXI7XG4gIGNlbGxXaWR0aDogbnVtYmVyO1xuICBvZmZzZXRMZWZ0OiBudW1iZXI7XG4gIG9mZnNldFRvcDogbnVtYmVyO1xuICBtb2JpbGVNb2RlOiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gVmlld01vZGUge1xuICBDQVRBTE9HID0gJ2NhdGFsb2cnLFxuICBDT05TVUxUID0gJ2NvbnN1bHQnLFxuICBDUkVBVElPTiA9ICdjcmVhdGlvbicsXG4gIEVESVRJT04gPSAnZWRpdGlvbicsXG4gIEVESVRPUiA9ICdlZGl0b3InLFxuICBTRUFSQ0ggPSAnc2VhcmNoJyxcbiAgQ1VTVE9NID0gJ2N1c3RvbSdcbn1cblxuZXhwb3J0IGNvbnN0IERhc2hib2FyZEFjdGlvbnMgPSB7XG4gIGpvaW46IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gam9pbmVkJywgcHJvcHM8eyBzZW5kZXI6IHN0cmluZyB9PigpKSxcbiAgbGVhdmU6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gbGVhdmUnLCBwcm9wczx7IHNlbmRlcjogc3RyaW5nIH0+KCkpLFxuICB1cGRhdGVNYW5pZmVzdDogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSB1cGRhdGluZyBtYW5pZmVzdCcsXG4gICAgcHJvcHM8e1xuICAgICAgdGVuYW50cz86IHN0cmluZ1tdO1xuICAgICAgbWFuaWZlc3Q6IEdsb2JhbE1hbmlmZXN0O1xuICAgICAgcmVzdWx0U2V0cz86IFJlc3VsdFNldHM7XG4gICAgICBqb2luaW5nPzogYm9vbGVhbjtcbiAgICAgIG1hbmlmZXN0SWQ/OiBzdHJpbmc7XG4gICAgICBzZWxlY3RlZElkczogc3RyaW5nW107XG4gICAgfT4oKVxuICApLFxuICB1cGRhdGVNYW5pZmVzdEFmdGVyRmV0Y2g6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgdXBkYXRpbmcgbWFuaWZlc3QgYWZ0ZXIgZmV0Y2gnLFxuICAgIHByb3BzPHtcbiAgICAgIHRlbmFudHM/OiBzdHJpbmdbXTtcbiAgICAgIG1hbmlmZXN0OiBHbG9iYWxNYW5pZmVzdDtcbiAgICAgIHJlc3VsdFNldHM/OiBSZXN1bHRTZXRzO1xuICAgICAgam9pbmluZz86IGJvb2xlYW47XG4gICAgICBtYW5pZmVzdElkPzogc3RyaW5nO1xuICAgICAgc2VsZWN0ZWRJZHM6IHN0cmluZ1tdO1xuICAgIH0+KClcbiAgKSxcbiAgdXBkYXRlTWFuaWZlc3RXaXRob3V0QWN0aXZhdGlvbjogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSB1cGRhdGluZyBtYW5pZmVzdCBidXQgZG8gbm90IGFjdGl2YXRlIGl0JyxcbiAgICBwcm9wczx7XG4gICAgICB0ZW5hbnRzPzogc3RyaW5nW107XG4gICAgICBtYW5pZmVzdDogR2xvYmFsTWFuaWZlc3Q7XG4gICAgICByZXN1bHRTZXRzPzogUmVzdWx0U2V0cztcbiAgICAgIGpvaW5pbmc/OiBib29sZWFuO1xuICAgICAgbWFuaWZlc3RJZD86IHN0cmluZztcbiAgICAgIHNlbGVjdGVkSWRzOiBzdHJpbmdbXTtcbiAgICB9PigpXG4gICksXG4gIHVwZGF0ZU1hbmlmZXN0QWZ0ZXJUZW5hbnRKb2luOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0aW5nIG1hbmlmZXN0IGFmdGVyIHRlbmFudCBqb2luJyxcbiAgICBwcm9wczx7XG4gICAgICB0ZW5hbnRzPzogc3RyaW5nW107XG4gICAgICBtYW5pZmVzdDogR2xvYmFsTWFuaWZlc3Q7XG4gICAgICByZXN1bHRTZXRzPzogUmVzdWx0U2V0cztcbiAgICAgIGpvaW5pbmc/OiBib29sZWFuO1xuICAgICAgbWFuaWZlc3RJZD86IHN0cmluZztcbiAgICAgIHNlbGVjdGVkSWRzOiBzdHJpbmdbXTtcbiAgICAgIHByZXNlbnRhdGlvbj86IHsgY3VycmVudD86IE1hbmlmZXN0RGVzY3JpcHRpb247IGluaXRpYWw/OiBHbG9iYWxNYW5pZmVzdDsgdmlld01vZGU/OiBWaWV3TW9kZSB9O1xuICAgICAgZGlzcGxheT86IERpc3BsYXlPcHRpb25zO1xuICAgIH0+KClcbiAgKSxcbiAgdXBkYXRlTWFuaWZlc3RBZnRlclRlbmFudExlYXZlOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0aW5nIG1hbmlmZXN0IGFmdGVyIHRlbmFudCBsZWF2ZScsXG4gICAgcHJvcHM8e1xuICAgICAgdGVuYW50cz86IHN0cmluZ1tdO1xuICAgICAgbWFuaWZlc3Q6IEdsb2JhbE1hbmlmZXN0O1xuICAgICAgcmVzdWx0U2V0cz86IFJlc3VsdFNldHM7XG4gICAgICBqb2luaW5nPzogYm9vbGVhbjtcbiAgICAgIG1hbmlmZXN0SWQ/OiBzdHJpbmc7XG4gICAgICBzZWxlY3RlZElkczogc3RyaW5nW107XG4gICAgfT4oKVxuICApLFxuICBzZWxlY3RQcmVzZW50YXRpb246IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgc2VsZWN0UHJlc2VudGF0aW9uJyxcbiAgICBwcm9wczx7XG4gICAgICBwcmVzZW50YXRpb246IE1hbmlmZXN0RGVzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICAgICB2aWV3TW9kZT86IFZpZXdNb2RlO1xuICAgIH0+KClcbiAgKSxcbiAgc2V0SW5pdGlhbFByZXNlbnRhdGlvbjogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBzZXQgaW5pdGlhbCBwcmVzZW50YXRpb24nLFxuICAgIHByb3BzPHtcbiAgICAgIGluaXRpYWw/OiBHbG9iYWxNYW5pZmVzdDtcbiAgICB9PigpXG4gICksXG4gIGRlY2xhcmVTZW5kZXJJZDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBzZWxmLXVwZGF0aW5nIG1hbmlmZXN0JywgcHJvcHM8eyB0ZW5hbnRzOiBzdHJpbmdbXTsgc2VuZGVyOiBzdHJpbmcgfT4oKSksXG4gIHVwZGF0ZURhc2hib2FyZE1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHVwZGF0aW5nIGRhc2hib2FyZCB2aWV3JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0OiBEYXNoYm9hcmRNYW5pZmVzdCB9PigpXG4gICksXG4gIHVwZGF0ZVdpZGdldE1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHVwZGF0aW5nIHdpZGdldCB2aWV3JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdDsgaW5kZXg6IG51bWJlciB9PigpXG4gICksXG4gIGFkZFdpZGdldFRvUHJlc2VudGF0aW9uOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIGFkZCB3aWRnZXQgdG8gcHJlc2VudGF0aW9uJyxcbiAgICBwcm9wczx7IGlkPzogc3RyaW5nIHwgc3RyaW5nW107IHdpZGdldFR5cGU6IHN0cmluZzsgYWRkaXRpb25hbE9wdGlvbnM/OiBhbnk7IGFsZXJ0PzogYm9vbGVhbiB9PigpXG4gICksXG4gIHVwZGF0ZVdpZGdldEluUHJlc2VudGF0aW9uOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHVwZGF0ZSB3aWRnZXQgaW4gcHJlc2VudGF0aW9uJyxcbiAgICBwcm9wczx7IGlkPzogc3RyaW5nIHwgc3RyaW5nW107IHdpZGdldFR5cGU6IHN0cmluZzsgYWRkaXRpb25hbE9wdGlvbnM/OiBhbnkgfT4oKVxuICApLFxuICByZXF1ZXN0QWxsUm91dGVzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHJlcXVlc3Rpbmcgcm91dGUgdXBkYXRlJyksXG4gIHJlcXVlc3RNYW5pZmVzdHNUb0VtaXQ6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgcHJlLXNhdmUgbWFuaWZlc3QsIGFza2luZyBhbGwgd2lkZ2V0cyB0byBlbWl0JyksXG4gIHVwZGF0ZVJvdXRlTWFuaWZlc3Q6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgdXBkYXRpbmcgcm91dGUnLCBwcm9wczx7IHNlbmRlcj86IHN0cmluZzsgcm91dGU6IHN0cmluZyB9PigpKSxcbiAgZmV0Y2hNYW5pZmVzdHNMaXN0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGZldGNoaW5nIGF2YWlsYWJsZSBtYW5pZmVzdHMnKSxcbiAgc2V0UmVmcmVzaFJhdGU6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgc2V0dGluZyByZWZyZXNoUmF0ZScsIHByb3BzPHsgaWQ6IHN0cmluZzsgcmF0ZTogbnVtYmVyIH0+KCkpLFxuICB1cGRhdGVNYW5pZmVzdHNMaXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHJlY2VpdmVkIG1hbmlmZXN0cyBsaXN0JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0czogTWFuaWZlc3REZXNjcmlwdGlvbltdIH0+KClcbiAgKSxcbiAgZmV0Y2hTdGF0aWNNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBmZXRjaGluZyBzdGF0aWNNYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgZmV0Y2hNb3JlSXRlbXM6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgZmV0Y2hpbmcgbW9yZSBpdGVtcycsIHByb3BzPHsgaWQ6IHN0cmluZzsgd2lkZ2V0VHlwZTogc3RyaW5nIH0+KCkpLFxuICBlbmRMb2FkaW5nOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIGVuZCBsb2FkaW5nJyksXG4gIHVwZGF0ZVN0YXRpY01hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHJlY2VpdmVkIHN0YXRpY01hbmlmZXN0JyxcbiAgICBwcm9wczx7IHN0YXRpY01hbmlmZXN0OiBHbG9iYWxNYW5pZmVzdCB9PigpXG4gICksXG4gIGxvYWRNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBsb2FkIG1hbmlmZXN0JywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICBsb2FkQW5kQWN0aXZhdGVNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBsb2FkIGFuZCBhY3RpdmF0ZSBtYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgZG93bmxvYWRNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBkb3dubG9hZCBtYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH0+KCkpLFxuICBjb25maXJtTWFuaWZlc3REZWxldGlvbjogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBjb25maXJtIG1hbmlmZXN0IGRlbGV0aW9uJywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICBkZWxldGVNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBkZWxldGluZyBtYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgc2F2ZU1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHNhdmUgbWFuaWZlc3QnLFxuICAgIHByb3BzPHtcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgIG1hbmlmZXN0PzogR2xvYmFsTWFuaWZlc3Q7XG4gICAgICBpZDogc3RyaW5nO1xuICAgICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgICBpbWFnZT86IHN0cmluZztcbiAgICAgIG1ldGFkYXRhPzogeyBtZXRhZGF0YURlZklkOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfVtdO1xuICAgICAgYWNjZXNzUmlnaHRzQnlHcm91cD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nW10gfTtcbiAgICAgIGFkZGl0aW9uYWxJbmZvcm1hdGlvbj86IHN0cmluZztcbiAgICB9PigpXG4gICksXG4gIHNvbHZlQ29sbGlzaW9uczogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBzb2x2aW5nIGNvbGxpc2lvbnMnKSxcbiAgY2xlYXJNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBjbGVhciBtYW5pZmVzdCcpLFxuICBmb2xsb3dNYW5pZmVzdFJvdXRlOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGZvbGxvdyBtYW5pZmVzdCByb3V0ZScpLFxuICBtb3ZlV2lkZ2V0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIG1vdmluZyB3aWRnZXQnLCBwcm9wczx7IHdpZGdldEluZGV4OiBudW1iZXI7IHRhcmdldEluZGV4OiBudW1iZXIgfT4oKSksXG4gIG1heGltaXplV2lkZ2V0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIG1heGltaXplIHdpZGdldCcsIHByb3BzPHsgd2lkZ2V0SW5kZXg6IG51bWJlciB9PigpKSxcbiAgYXNzZXJ0UmVzdWx0U2V0czogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBhc3NlcnQgcmVzdWx0U2V0JywgcHJvcHM8eyBzdGF0aWNNYW5pZmVzdD86IERhc2hib2FyZE1hbmlmZXN0IH0+KCkpLFxuICB1cGRhdGVSZXN1bHRTZXQ6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgcmVjZWl2ZWQgbmFtZWQgcmVzdWx0U2V0IChub3QtYWN0aXZlLWFjdGlvbiknLFxuICAgIHByb3BzPHsgaWQ6IHN0cmluZzsgcmVzdWx0U2V0OiBSZXN1bHRTZXQ7IHBhcmFtcz86IHN0cmluZzsgbmV4dD86IGJvb2xlYW4gfT4oKVxuICApLFxuICBhZGRSZWxhdGlvbnNUb1Jlc3VsdFNldHM6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgYWRkIHJlbGF0aW9ucyB0byByZXN1bHRTZXQnLFxuICAgIHByb3BzPHsgcmVsYXRpb25zOiBSZWxhdGlvbltdIH0+KClcbiAgKSxcbiAgcmVtb3ZlUmVsYXRpb25zRnJvbVJlc3VsdFNldHM6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgcmVtb3ZlIHJlbGF0aW9ucyBmcm9tIHJlc3VsdFNldCcsXG4gICAgcHJvcHM8eyByZWxhdGlvbjogUmVsYXRpb24gfT4oKVxuICApLFxuICBhZGRJdGVtVG9SZXN1bHRTZXRzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIGFkZCBpdGVtIHRvIHJlc3VsdFNldCcsXG4gICAgcHJvcHM8eyBpdGVtOiBJdGVtOyByZXN1bHRTZXQ/OiBzdHJpbmcgfT4oKVxuICApLFxuICBzdGFydGluZ01pc3NpbmdWaWV3czogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBvcGVuaW5nIG1pc3Npbmcgdmlld3MgZm9yIG1hbmlmZXN0JyksXG4gIHNldEF2YWlsYWJsZU5hbWVkUXVlcmllczogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBzZXQgYXZhaWxhYmxlIHJzIG5hbWVzJywgcHJvcHM8eyBuYW1lczogc3RyaW5nW10gfT4oKSksXG4gIHNldERlZmF1bHREYXRhc291cmNlOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIHNldCBjdXJyZW50IHJzIG5hbWUnLCBwcm9wczx7IG5hbWVzOiBzdHJpbmdbXSB9PigpKSxcbiAgdXBkYXRlRGFzaGJvYXJkUGFyYW1zOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHNldCBkYXNoYm9hcmQgY2VsbCBwYXJhbXMnLFxuICAgIHByb3BzPHsgcGFyYW1zOiBQYXJ0aWFsPERhc2hib2FyZENlbGxQYXJhbXM+IH0+KClcbiAgKSxcbiAgdG9nZ2xlRWRpdGlvbk1vZGU6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gdG9nZ2xlIGVkaXRpb24gbW9kZScsIHByb3BzPHsgZm9yY2U/OiBib29sZWFuIH0+KCkpLFxuICBzZWxlY3Q6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgc2VsZWN0IGl0ZW0nLCBwcm9wczx7IGlkOiBzdHJpbmc7IGN1bXVsYXRpdmU6IGJvb2xlYW4gfT4oKSksXG4gIHNlbGVjdE1hbnk6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgc2VsZWN0IGl0ZW1zJywgcHJvcHM8eyBpZHM6IHN0cmluZ1tdIH0+KCkpLFxuICBpbnZlcnRTZWxlY3Rpb246IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgaW52ZXJ0IHNlbGVjdGlvbicpLFxuICBmZXRjaE9iamVjdHNEZXRhaWxzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIGZldGNoIG9iamVjdHMgZGV0YWlscycsIHByb3BzPHsgaWRzOiBzdHJpbmdbXSB9PigpKSxcbiAgdXBkYXRlT2JqZWN0c0RldGFpbHM6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgdXBkYXRlIG9iamVjdHMgZGV0YWlscycsXG4gICAgcHJvcHM8eyBsaXN0OiB7IFtpZDogc3RyaW5nXTogSXRlbSB9IH0+KClcbiAgKSxcbiAgZXhwbG9yZTogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBpc29sYXRlIGluIGRhdGEgc2V0JywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICBkZXRhaWw6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgYWRkIGRldGFpbCB2aWV3JywgcHJvcHM8eyBpZHM6IHN0cmluZ1tdIH0+KCkpLFxuICBwcm94aW1pdHk6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gcHJveGltaXR5IHNlYXJjaCcsIHByb3BzPHsgaWQ6IHN0cmluZzsgdGFyZ2V0UmVzdWx0U2V0OiBzdHJpbmcgfT4oKSksXG4gIG11bHRpU25hY2tCYXI6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgZGlzcGxheSBzbmFjayBtZXNzYWdlJywgcHJvcHM8eyBtZXNzYWdlOiBQcnlTbmFja01lc3NhZ2UgfT4oKSksXG4gIHF1aWNrT3JkZXI6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgcXVpY2sgb3JkZXInLFxuICAgIHByb3BzPHsgZGF0YXNvdXJjZUlkOiBzdHJpbmc7IGF0dHJpYnV0ZTogc3RyaW5nOyBhc2M6IE9yZGVyVmFsdWUgfT4oKVxuICApLFxuICBzZXRHcmlkTGF5b3V0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIHNldCBncmlkIGxheW91dCcsIHByb3BzPHsgbGF5b3V0OiBzdHJpbmcgfT4oKSksXG4gIHByb3BhZ2F0ZUdyaWRMYXlvdXQ6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgY2hhbmdlIGdyaWQgbGF5b3V0JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0OiBEYXNoYm9hcmRNYW5pZmVzdDsgcmFuazogbnVtYmVyIH0+KClcbiAgKSxcbiAgY3JlYXRlVGFiOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGNyZWF0ZSBuZXcgdGFiJyksXG4gIHJlc3RvcmVJbml0aWFsTWFuaWZlc3Q6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgcmVzdG9yaW5nIG1pc3NpbmcgdGFicycpLFxuICBzZXRGaWx0ZXJzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHNldCBkYXRhc291cmNlIGZpbHRlcnMnLCBwcm9wczx7IGZpbHRlcnM6IEZpbHRlcltdIH0+KCkpLFxuICB1cGRhdGVGaWx0ZXJzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0ZSBkYXRhc291cmNlIGZpbHRlcnMnLCBwcm9wczx7IGZpbHRlcjogRmlsdGVyIH0+KCkpLFxuICByZW1vdmVGaWx0ZXI6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgcmVtb3ZlIGZpbHRlciBpbiBwcmVzZW50YXRpb24nLCBwcm9wczx7IGlkOiBzdHJpbmcgfT4oKSksXG4gIHJlbW92ZUZpbHRlcnM6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgcmVtb3ZlIGZpbHRlcnMnKSxcbiAgdXBkYXRlRmlsdGVyVmFsdWU6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgdXBkYXRlIGZpbHRlciB2YWx1ZScsXG4gICAgcHJvcHM8eyBpZDogc3RyaW5nOyB2YWx1ZTogYW55OyBkYXRhc291cmNlSWQ6IHN0cmluZyB9PigpXG4gICksXG4gIGNsZWFyQWxsRmlsdGVyVmFsdWVzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGNsZWFyIGFsbCBmaWx0ZXIgdmFsdWVzJyksXG4gIGRpc3BhdGNoRmlsdGVyczogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBhcHBseSBmaWx0ZXJzIHRvIHByZXNlbnRhdGlvbiBkYXRhc291cmNlcycsXG4gICAgcHJvcHM8eyBzdGF0aWNNYW5pZmVzdD86IERhc2hib2FyZE1hbmlmZXN0IH0+KClcbiAgKSxcbiAgcmVzZXRXbXNGZWF0dXJlczogY3JlYXRlQWN0aW9uKCdbV2lkZ2V0IG1hcF0gUmVzZXQgV21zIGxheWVyIGZlYXR1cmVzJywgcHJvcHM8eyBjb21wb25lbnRJZDogc3RyaW5nIH0+KCkpLFxuICBnZXRXbXNGZWF0dXJlczogY3JlYXRlQWN0aW9uKFxuICAgICdbV2lkZ2V0IG1hcF0gR2V0IFdtcyBsYXllciBmZWF0dXJlcycsXG4gICAgcHJvcHM8eyB1cmw6IHN0cmluZzsgb0NsYXNzOiBzdHJpbmc7IGNvb3JkaW5hdGVzOiBudW1iZXJbXTsgY29tcG9uZW50SWQ6IHN0cmluZyB9PigpXG4gICksXG4gIGFkZFdtc0ZlYXR1cmVzOiBjcmVhdGVBY3Rpb24oJ1tXaWRnZXQgbWFwXSBTZXQgV21zIGxheWVyIGZlYXR1cmVzJywgcHJvcHM8eyBmZWF0dXJlczogYW55OyBjb21wb25lbnRJZDogc3RyaW5nIH0+KCkpLFxuICBnZXRXZnNGZWF0dXJlczogY3JlYXRlQWN0aW9uKFxuICAgICdbV2lkZ2V0IG1hcF0gR2V0IHdmcyBGZWF0dXJlcyBmb3IgcG9pbnQnLFxuICAgIHByb3BzPHsgdXJsOiBzdHJpbmc7IG9DbGFzczogc3RyaW5nOyBjb29yZGluYXRlczogbnVtYmVyW107IHN0eWxlOiBzdHJpbmcgfT4oKVxuICApLFxuICBnZXRXZnNGZWF0dXJlc0ZvclBvaW50U3RhY2tUb29sdGlwczogY3JlYXRlQWN0aW9uKFxuICAgICdbV2lkZ2V0IG1hcF0gR2V0IHdmcyBGZWF0dXJlcyBmb3Igc2hvd2luZyBzdGFjayB0b29sdGlwcycsXG4gICAgcHJvcHM8eyB1cmw6IHN0cmluZzsgb0NsYXNzOiBzdHJpbmc7IGNvb3JkaW5hdGVzOiBudW1iZXJbXTsgY29tcG9uZW50SWQ6IHN0cmluZyB9PigpXG4gICksXG4gIHVwZGF0ZURpc3BsYXlPcHRpb25zOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmQvRGlzcGxheV0gKGJ1cykgVXBkYXRlIGRpc3BsYXllZCBkYXNoYm9hcmQgbWFuYWdlbWVudCBmZWF0dXJlcycsXG4gICAgcHJvcHM8eyBtb2RlOiBWaWV3TW9kZTsgY3VzdG9tRGlzcGxheT86IERpc3BsYXlPcHRpb25zIH0+KClcbiAgKSxcbiAgZ2V0Q2FwYWJpbGl0eTogY3JlYXRlQWN0aW9uKCdbV2lkZ2V0IG1hcF0gR2V0IFdtcyBjYXBhYmlsaXR5JywgcHJvcHM8eyB1cmw6IHN0cmluZzsgZm9yY2U/OiBib29sZWFuIH0+KCkpLFxuICB1cGRhdGVDYXBhYmlsaXR5OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tXaWRnZXQgbWFwXSBTdG9yZSBXbXMgY2FwYWJpbGl0eScsXG4gICAgcHJvcHM8eyB1cmw6IHN0cmluZzsgY2FwYWJpbGl0eTogR2V0Q2FwYWJpbGl0aWVzUmVzcG9uc2UgfCBudWxsIH0+KClcbiAgKSxcbiAgYWRkTWFuaWZlc3RNZXRhZGF0YTogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSBBZGQgbWFuaWZlc3QgbWV0YWRhdGEnLFxuICAgIHByb3BzPHsgcHJlc2VudGF0aW9uSWQ6IHN0cmluZzsgbWV0YWRhdGFJZDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+KClcbiAgKSxcbiAgZGVsZXRlTWFuaWZlc3RNZXRhZGF0YTogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSBEZWxldGUgbWFuaWZlc3QgbWV0YWRhdGEnLFxuICAgIHByb3BzPHsgcHJlc2VudGF0aW9uSWQ6IHN0cmluZzsgbWV0YWRhdGFJZDogc3RyaW5nIH0+KClcbiAgKSxcbiAgdHJpZ2dlckFnZ3JlZ2F0ZTogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBUcmlnZ2VyaW5nIGFnZ3JlZ2F0ZXMgZm9yIGRhdGFzb3VyY2UnLCBwcm9wczx7IGlkOiBzdHJpbmcgfT4oKSksXG4gIGxvYWRQcmVzZW50YXRpb246IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gbG9hZCBwcmVzZW50YXRpb24nLFxuICAgIHByb3BzPHsgcHJlc2VudGF0aW9uOiBNYW5pZmVzdERlc2NyaXB0aW9uOyB2aWV3TW9kZTogVmlld01vZGUgfT4oKVxuICApXG59O1xuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBNkJsRCxNQUFNLENBQU4sSUFBWSxRQVFYO0FBUkQsV0FBWSxRQUFRO0lBQ2xCLCtCQUFtQixDQUFBO0lBQ25CLCtCQUFtQixDQUFBO0lBQ25CLGlDQUFxQixDQUFBO0lBQ3JCLCtCQUFtQixDQUFBO0lBQ25CLDZCQUFpQixDQUFBO0lBQ2pCLDZCQUFpQixDQUFBO0lBQ2pCLDZCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFSVyxRQUFRLEtBQVIsUUFBUSxRQVFuQjtBQUVELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLElBQUksRUFBRSxZQUFZLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxFQUFzQixDQUFDO0lBQ3JFLEtBQUssRUFBRSxZQUFZLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxFQUFzQixDQUFDO0lBQ3JFLGNBQWMsRUFBRSxZQUFZLENBQzFCLHFDQUFxQyxFQUNyQyxLQUFLLEVBT0QsQ0FDTDtJQUNELHdCQUF3QixFQUFFLFlBQVksQ0FDcEMsaURBQWlELEVBQ2pELEtBQUssRUFPRCxDQUNMO0lBQ0QsK0JBQStCLEVBQUUsWUFBWSxDQUMzQyw0REFBNEQsRUFDNUQsS0FBSyxFQU9ELENBQ0w7SUFDRCw2QkFBNkIsRUFBRSxZQUFZLENBQ3pDLHVEQUF1RCxFQUN2RCxLQUFLLEVBU0QsQ0FDTDtJQUNELDhCQUE4QixFQUFFLFlBQVksQ0FDMUMsd0RBQXdELEVBQ3hELEtBQUssRUFPRCxDQUNMO0lBQ0Qsa0JBQWtCLEVBQUUsWUFBWSxDQUM5QixzQ0FBc0MsRUFDdEMs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QUFrRCxDQUN4RDtJQUNELGdCQUFnQixFQUFFLFlBQVksQ0FBQyx3REFBd0QsRUFBRSxLQUFLLEVBQWtCLENBQUM7SUFDakgsZ0JBQWdCLEVBQUUsWUFBWSxDQUM1QiwrQkFBK0IsRUFDL0IsS0FBSyxFQUE2RCxDQUNuRTtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUHJ5U25hY2tNZXNzYWdlIH0gZnJvbSAnLi4vLi4vY29yZS9jb21wb25lbnRzL3NuYWNrYmFyL3NuYWNrLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEaXNwbGF5T3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvZGlzcGxheS1vcHRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL2ZpbHRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgRGFzaGJvYXJkTWFuaWZlc3QsXG4gIEdsb2JhbE1hbmlmZXN0LFxuICBNYW5pZmVzdERlc2NyaXB0aW9uLFxuICBXaWRnZXRNYW5pZmVzdFxufSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL21hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBSZWxhdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWwvcmVsYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9yZGVyVmFsdWUgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVsL3Jlc3VsdC1vcmRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVzdWx0U2V0LCBSZXN1bHRTZXRzIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbC9yZXN1bHQtc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBHZXRDYXBhYmlsaXRpZXNSZXNwb25zZSB9IGZyb20gJy4vd21zLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBEYXNoYm9hcmRDZWxsUGFyYW1zID0ge1xuICBncmlkV2lkdGg6IG51bWJlcjtcbiAgZ3JpZEhlaWdodDogbnVtYmVyO1xuICBncmlkR2FwOiBudW1iZXI7XG4gIGNvbHVtbnM6IG51bWJlcjtcbiAgY2VsbEhlaWdodDogbnVtYmVyO1xuICByb3dzOiBudW1iZXI7XG4gIGNlbGxXaWR0aDogbnVtYmVyO1xuICBvZmZzZXRMZWZ0OiBudW1iZXI7XG4gIG9mZnNldFRvcDogbnVtYmVyO1xuICBtb2JpbGVNb2RlOiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gVmlld01vZGUge1xuICBDQVRBTE9HID0gJ2NhdGFsb2cnLFxuICBDT05TVUxUID0gJ2NvbnN1bHQnLFxuICBDUkVBVElPTiA9ICdjcmVhdGlvbicsXG4gIEVESVRJT04gPSAnZWRpdGlvbicsXG4gIEVESVRPUiA9ICdlZGl0b3InLFxuICBTRUFSQ0ggPSAnc2VhcmNoJyxcbiAgQ1VTVE9NID0gJ2N1c3RvbSdcbn1cblxuZXhwb3J0IGNvbnN0IERhc2hib2FyZEFjdGlvbnMgPSB7XG4gIGpvaW46IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gam9pbmVkJywgcHJvcHM8eyBzZW5kZXI6IHN0cmluZyB9PigpKSxcbiAgbGVhdmU6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gbGVhdmUnLCBwcm9wczx7IHNlbmRlcjogc3RyaW5nIH0+KCkpLFxuICB1cGRhdGVNYW5pZmVzdDogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSB1cGRhdGluZyBtYW5pZmVzdCcsXG4gICAgcHJvcHM8e1xuICAgICAgdGVuYW50cz86IHN0cmluZ1tdO1xuICAgICAgbWFuaWZlc3Q6IEdsb2JhbE1hbmlmZXN0O1xuICAgICAgcmVzdWx0U2V0cz86IFJlc3VsdFNldHM7XG4gICAgICBqb2luaW5nPzogYm9vbGVhbjtcbiAgICAgIG1hbmlmZXN0SWQ/OiBzdHJpbmc7XG4gICAgICBzZWxlY3RlZElkczogc3RyaW5nW107XG4gICAgfT4oKVxuICApLFxuICB1cGRhdGVNYW5pZmVzdEFmdGVyRmV0Y2g6IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgdXBkYXRpbmcgbWFuaWZlc3QgYWZ0ZXIgZmV0Y2gnLFxuICAgIHByb3BzPHtcbiAgICAgIHRlbmFudHM/OiBzdHJpbmdbXTtcbiAgICAgIG1hbmlmZXN0OiBHbG9iYWxNYW5pZmVzdDtcbiAgICAgIHJlc3VsdFNldHM/OiBSZXN1bHRTZXRzO1xuICAgICAgam9pbmluZz86IGJvb2xlYW47XG4gICAgICBtYW5pZmVzdElkPzogc3RyaW5nO1xuICAgICAgc2VsZWN0ZWRJZHM6IHN0cmluZ1tdO1xuICAgIH0+KClcbiAgKSxcbiAgdXBkYXRlTWFuaWZlc3RXaXRob3V0QWN0aXZhdGlvbjogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSB1cGRhdGluZyBtYW5pZmVzdCBidXQgZG8gbm90IGFjdGl2YXRlIGl0JyxcbiAgICBwcm9wczx7XG4gICAgICB0ZW5hbnRzPzogc3RyaW5nW107XG4gICAgICBtYW5pZmVzdDogR2xvYmFsTWFuaWZlc3Q7XG4gICAgICByZXN1bHRTZXRzPzogUmVzdWx0U2V0cztcbiAgICAgIGpvaW5pbmc/OiBib29sZWFuO1xuICAgICAgbWFuaWZlc3RJZD86IHN0cmluZztcbiAgICAgIHNlbGVjdGVkSWRzOiBzdHJpbmdbXTtcbiAgICB9PigpXG4gICksXG4gIHVwZGF0ZU1hbmlmZXN0QWZ0ZXJUZW5hbnRKb2luOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0aW5nIG1hbmlmZXN0IGFmdGVyIHRlbmFudCBqb2luJyxcbiAgICBwcm9wczx7XG4gICAgICB0ZW5hbnRzPzogc3RyaW5nW107XG4gICAgICBtYW5pZmVzdDogR2xvYmFsTWFuaWZlc3Q7XG4gICAgICByZXN1bHRTZXRzPzogUmVzdWx0U2V0cztcbiAgICAgIGpvaW5pbmc/OiBib29sZWFuO1xuICAgICAgbWFuaWZlc3RJZD86IHN0cmluZztcbiAgICAgIHNlbGVjdGVkSWRzOiBzdHJpbmdbXTtcbiAgICAgIHByZXNlbnRhdGlvbj86IHsgY3VycmVudD86IE1hbmlmZXN0RGVzY3JpcHRpb247IGluaXRpYWw/OiBHbG9iYWxNYW5pZmVzdDsgdmlld01vZGU/OiBWaWV3TW9kZSB9O1xuICAgICAgZGlzcGxheT86IERpc3BsYXlPcHRpb25zO1xuICAgIH0+KClcbiAgKSxcbiAgdXBkYXRlTWFuaWZlc3RBZnRlclRlbmFudExlYXZlOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0aW5nIG1hbmlmZXN0IGFmdGVyIHRlbmFudCBsZWF2ZScsXG4gICAgcHJvcHM8e1xuICAgICAgdGVuYW50cz86IHN0cmluZ1tdO1xuICAgICAgbWFuaWZlc3Q6IEdsb2JhbE1hbmlmZXN0O1xuICAgICAgcmVzdWx0U2V0cz86IFJlc3VsdFNldHM7XG4gICAgICBqb2luaW5nPzogYm9vbGVhbjtcbiAgICAgIG1hbmlmZXN0SWQ/OiBzdHJpbmc7XG4gICAgICBzZWxlY3RlZElkczogc3RyaW5nW107XG4gICAgfT4oKVxuICApLFxuICBzZWxlY3RQcmVzZW50YXRpb246IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gKGJ1cykgc2VsZWN0UHJlc2VudGF0aW9uJyxcbiAgICBwcm9wczx7XG4gICAgICBwcmVzZW50YXRpb246IE1hbmlmZXN0RGVzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICAgICB2aWV3TW9kZT86IFZpZXdNb2RlO1xuICAgIH0+KClcbiAgKSxcbiAgc2V0SW5pdGlhbFByZXNlbnRhdGlvbjogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBzZXQgaW5pdGlhbCBwcmVzZW50YXRpb24nLFxuICAgIHByb3BzPHtcbiAgICAgIGluaXRpYWw/OiBHbG9iYWxNYW5pZmVzdDtcbiAgICB9PigpXG4gICksXG4gIGRlY2xhcmVTZW5kZXJJZDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBzZWxmLXVwZGF0aW5nIG1hbmlmZXN0JywgcHJvcHM8eyB0ZW5hbnRzOiBzdHJpbmdbXTsgc2VuZGVyOiBzdHJpbmcgfT4oKSksXG4gIHVwZGF0ZURhc2hib2FyZE1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHVwZGF0aW5nIGRhc2hib2FyZCB2aWV3JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0OiBEYXNoYm9hcmRNYW5pZmVzdCB9PigpXG4gICksXG4gIHVwZGF0ZVdpZGdldE1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHVwZGF0aW5nIHdpZGdldCB2aWV3JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0OiBXaWRnZXRNYW5pZmVzdDsgaW5kZXg6IG51bWJlciB9PigpXG4gICksXG4gIGFkZFdpZGdldFRvUHJlc2VudGF0aW9uOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIGFkZCB3aWRnZXQgdG8gcHJlc2VudGF0aW9uJyxcbiAgICBwcm9wczx7IGlkPzogc3RyaW5nIHwgc3RyaW5nW107IHdpZGdldFR5cGU6IHN0cmluZzsgYWRkaXRpb25hbE9wdGlvbnM/OiBhbnk7IGFsZXJ0PzogYm9vbGVhbiB9PigpXG4gICksXG4gIHVwZGF0ZVdpZGdldEluUHJlc2VudGF0aW9uOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHVwZGF0ZSB3aWRnZXQgaW4gcHJlc2VudGF0aW9uJyxcbiAgICBwcm9wczx7IGlkPzogc3RyaW5nIHwgc3RyaW5nW107IHdpZGdldFR5cGU6IHN0cmluZzsgYWRkaXRpb25hbE9wdGlvbnM/OiBhbnkgfT4oKVxuICApLFxuICByZXF1ZXN0QWxsUm91dGVzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHJlcXVlc3Rpbmcgcm91dGUgdXBkYXRlJyksXG4gIHJlcXVlc3RNYW5pZmVzdHNUb0VtaXQ6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgcHJlLXNhdmUgbWFuaWZlc3QsIGFza2luZyBhbGwgd2lkZ2V0cyB0byBlbWl0JyksXG4gIHVwZGF0ZVJvdXRlTWFuaWZlc3Q6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgdXBkYXRpbmcgcm91dGUnLCBwcm9wczx7IHNlbmRlcj86IHN0cmluZzsgcm91dGU6IHN0cmluZyB9PigpKSxcbiAgZmV0Y2hNYW5pZmVzdHNMaXN0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGZldGNoaW5nIGF2YWlsYWJsZSBtYW5pZmVzdHMnKSxcbiAgc2V0UmVmcmVzaFJhdGU6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgc2V0dGluZyByZWZyZXNoUmF0ZScsIHByb3BzPHsgaWQ6IHN0cmluZzsgcmF0ZTogbnVtYmVyIH0+KCkpLFxuICB1cGRhdGVNYW5pZmVzdHNMaXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHJlY2VpdmVkIG1hbmlmZXN0cyBsaXN0JyxcbiAgICBwcm9wczx7IG1hbmlmZXN0czogTWFuaWZlc3REZXNjcmlwdGlvbltdIH0+KClcbiAgKSxcbiAgZmV0Y2hTdGF0aWNNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBmZXRjaGluZyBzdGF0aWNNYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgZmV0Y2hNb3JlSXRlbXM6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgZmV0Y2hpbmcgbW9yZSBpdGVtcycsIHByb3BzPHsgaWQ6IHN0cmluZzsgd2lkZ2V0VHlwZTogc3RyaW5nIH0+KCkpLFxuICBlbmRMb2FkaW5nOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIGVuZCBsb2FkaW5nJyksXG4gIHVwZGF0ZVN0YXRpY01hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHJlY2VpdmVkIHN0YXRpY01hbmlmZXN0JyxcbiAgICBwcm9wczx7IHN0YXRpY01hbmlmZXN0OiBHbG9iYWxNYW5pZmVzdCB9PigpXG4gICksXG4gIGxvYWRNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBsb2FkIG1hbmlmZXN0JywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICBsb2FkQW5kQWN0aXZhdGVNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBsb2FkIGFuZCBhY3RpdmF0ZSBtYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgZG93bmxvYWRNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBkb3dubG9hZCBtYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH0+KCkpLFxuICBjb25maXJtTWFuaWZlc3REZWxldGlvbjogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBjb25maXJtIG1hbmlmZXN0IGRlbGV0aW9uJywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICBkZWxldGVNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBkZWxldGluZyBtYW5pZmVzdCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgc2F2ZU1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIHNhdmUgbWFuaWZlc3QnLFxuICAgIHByb3BzPHtcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgIG1hbmlmZXN0PzogR2xvYmFsTWFuaWZlc3Q7XG4gICAgICBpZDogc3RyaW5nO1xuICAgICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgICBpbWFnZT86IHN0cmluZztcbiAgICAgIG1ldGFkYXRhPzogeyBtZXRhZGF0YURlZklkOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfVtdO1xuICAgICAgYWNjZXNzUmlnaHRzQnlHcm91cD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nW10gfTtcbiAgICAgIGFkZGl0aW9uYWxJbmZvcm1hdGlvbj86IHN0cmluZztcbiAgICB9PigpXG4gICksXG4gIHNvbHZlQ29sbGlzaW9uczogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBzb2x2aW5nIGNvbGxpc2lvbnMnKSxcbiAgY2xlYXJNYW5pZmVzdDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBjbGVhciBtYW5pZmVzdCcpLFxuICBmb2xsb3dNYW5pZmVzdFJvdXRlOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGZvbGxvdyBtYW5pZmVzdCByb3V0ZScpLFxuICBtb3ZlV2lkZ2V0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIG1vdmluZyB3aWRnZXQnLCBwcm9wczx7IHdpZGdldEluZGV4OiBudW1iZXI7IHRhcmdldEluZGV4OiBudW1iZXIgfT4oKSksXG4gIG1heGltaXplV2lkZ2V0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIG1heGltaXplIHdpZGdldCcsIHByb3BzPHsgd2lkZ2V0SW5kZXg6IG51bWJlciB9PigpKSxcbiAgYXNzZXJ0UmVzdWx0U2V0czogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSBhc3NlcnQgcmVzdWx0U2V0JyxcbiAgICBwcm9wczx7XG4gICAgICBzdGF0aWNNYW5pZmVzdD86IERhc2hib2FyZE1hbmlmZXN0O1xuICAgICAgbGlua2VkSXRlbXM/OiAoJ2Rlc3RpbmF0aW9uJyB8ICdzb3VyY2UnKVtdO1xuICAgIH0+KClcbiAgKSxcbiAgdXBkYXRlUmVzdWx0U2V0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHJlY2VpdmVkIG5hbWVkIHJlc3VsdFNldCAobm90LWFjdGl2ZS1hY3Rpb24pJyxcbiAgICBwcm9wczx7IGlkOiBzdHJpbmc7IHJlc3VsdFNldDogUmVzdWx0U2V0OyBwYXJhbXM/OiBzdHJpbmc7IG5leHQ/OiBib29sZWFuIH0+KClcbiAgKSxcbiAgYWRkUmVsYXRpb25zVG9SZXN1bHRTZXRzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIGFkZCByZWxhdGlvbnMgdG8gcmVzdWx0U2V0JyxcbiAgICBwcm9wczx7IHJlbGF0aW9uczogUmVsYXRpb25bXSB9PigpXG4gICksXG4gIHJlbW92ZVJlbGF0aW9uc0Zyb21SZXN1bHRTZXRzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHJlbW92ZSByZWxhdGlvbnMgZnJvbSByZXN1bHRTZXQnLFxuICAgIHByb3BzPHsgcmVsYXRpb246IFJlbGF0aW9uIH0+KClcbiAgKSxcbiAgYWRkSXRlbVRvUmVzdWx0U2V0czogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBhZGQgaXRlbSB0byByZXN1bHRTZXQnLFxuICAgIHByb3BzPHsgaXRlbTogSXRlbTsgcmVzdWx0U2V0Pzogc3RyaW5nIH0+KClcbiAgKSxcbiAgc3RhcnRpbmdNaXNzaW5nVmlld3M6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gb3BlbmluZyBtaXNzaW5nIHZpZXdzIGZvciBtYW5pZmVzdCcpLFxuICBzZXRBdmFpbGFibGVOYW1lZFF1ZXJpZXM6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgc2V0IGF2YWlsYWJsZSBycyBuYW1lcycsIHByb3BzPHsgbmFtZXM6IHN0cmluZ1tdIH0+KCkpLFxuICBzZXREZWZhdWx0RGF0YXNvdXJjZTogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBzZXQgY3VycmVudCBycyBuYW1lJywgcHJvcHM8eyBuYW1lczogc3RyaW5nW10gfT4oKSksXG4gIHVwZGF0ZURhc2hib2FyZFBhcmFtczogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSBzZXQgZGFzaGJvYXJkIGNlbGwgcGFyYW1zJyxcbiAgICBwcm9wczx7IHBhcmFtczogUGFydGlhbDxEYXNoYm9hcmRDZWxsUGFyYW1zPiB9PigpXG4gICksXG4gIHRvZ2dsZUVkaXRpb25Nb2RlOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIHRvZ2dsZSBlZGl0aW9uIG1vZGUnLCBwcm9wczx7IGZvcmNlPzogYm9vbGVhbiB9PigpKSxcbiAgc2VsZWN0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHNlbGVjdCBpdGVtJywgcHJvcHM8eyBpZDogc3RyaW5nOyBjdW11bGF0aXZlOiBib29sZWFuIH0+KCkpLFxuICBzZWxlY3RNYW55OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHNlbGVjdCBpdGVtcycsIHByb3BzPHsgaWRzOiBzdHJpbmdbXSB9PigpKSxcbiAgaW52ZXJ0U2VsZWN0aW9uOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGludmVydCBzZWxlY3Rpb24nKSxcbiAgZmV0Y2hPYmplY3RzRGV0YWlsczogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBmZXRjaCBvYmplY3RzIGRldGFpbHMnLCBwcm9wczx7IGlkczogc3RyaW5nW10gfT4oKSksXG4gIHVwZGF0ZU9iamVjdHNEZXRhaWxzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0ZSBvYmplY3RzIGRldGFpbHMnLFxuICAgIHByb3BzPHsgbGlzdDogeyBbaWQ6IHN0cmluZ106IEl0ZW0gfSB9PigpXG4gICksXG4gIGV4cGxvcmU6IGNyZWF0ZUFjdGlvbignW0Rhc2hib2FyZF0gKGJ1cykgaXNvbGF0ZSBpbiBkYXRhIHNldCcsIHByb3BzPHsgaWQ6IHN0cmluZyB9PigpKSxcbiAgZGV0YWlsOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGFkZCBkZXRhaWwgdmlldycsIHByb3BzPHsgaWRzOiBzdHJpbmdbXSB9PigpKSxcbiAgcHJveGltaXR5OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIHByb3hpbWl0eSBzZWFyY2gnLCBwcm9wczx7IGlkOiBzdHJpbmc7IHRhcmdldFJlc3VsdFNldDogc3RyaW5nIH0+KCkpLFxuICBtdWx0aVNuYWNrQmFyOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIGRpc3BsYXkgc25hY2sgbWVzc2FnZScsIHByb3BzPHsgbWVzc2FnZTogUHJ5U25hY2tNZXNzYWdlIH0+KCkpLFxuICBxdWlja09yZGVyOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHF1aWNrIG9yZGVyJyxcbiAgICBwcm9wczx7XG4gICAgICBkYXRhc291cmNlSWQ6IHN0cmluZztcbiAgICAgIGF0dHJpYnV0ZTogc3RyaW5nO1xuICAgICAgYXNjOiBPcmRlclZhbHVlO1xuICAgICAgbGlua2VkSXRlbXM/OiAoJ2Rlc3RpbmF0aW9uJyB8ICdzb3VyY2UnKVtdO1xuICAgIH0+KClcbiAgKSxcbiAgc2V0R3JpZExheW91dDogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSBzZXQgZ3JpZCBsYXlvdXQnLCBwcm9wczx7IGxheW91dDogc3RyaW5nIH0+KCkpLFxuICBwcm9wYWdhdGVHcmlkTGF5b3V0OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIGNoYW5nZSBncmlkIGxheW91dCcsXG4gICAgcHJvcHM8eyBtYW5pZmVzdDogRGFzaGJvYXJkTWFuaWZlc3Q7IHJhbms6IG51bWJlciB9PigpXG4gICksXG4gIGNyZWF0ZVRhYjogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBjcmVhdGUgbmV3IHRhYicpLFxuICByZXN0b3JlSW5pdGlhbE1hbmlmZXN0OiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHJlc3RvcmluZyBtaXNzaW5nIHRhYnMnKSxcbiAgc2V0RmlsdGVyczogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBzZXQgZGF0YXNvdXJjZSBmaWx0ZXJzJywgcHJvcHM8eyBmaWx0ZXJzOiBGaWx0ZXJbXSB9PigpKSxcbiAgdXBkYXRlRmlsdGVyczogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSB1cGRhdGUgZGF0YXNvdXJjZSBmaWx0ZXJzJywgcHJvcHM8eyBmaWx0ZXI6IEZpbHRlciB9PigpKSxcbiAgcmVtb3ZlRmlsdGVyOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHJlbW92ZSBmaWx0ZXIgaW4gcHJlc2VudGF0aW9uJywgcHJvcHM8eyBpZDogc3RyaW5nIH0+KCkpLFxuICByZW1vdmVGaWx0ZXJzOiBjcmVhdGVBY3Rpb24oJ1tEYXNoYm9hcmRdIChidXMpIHJlbW92ZSBmaWx0ZXJzJyksXG4gIHVwZGF0ZUZpbHRlclZhbHVlOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHVwZGF0ZSBmaWx0ZXIgdmFsdWUnLFxuICAgIHByb3BzPHsgaWQ6IHN0cmluZzsgdmFsdWU6IGFueTsgZGF0YXNvdXJjZUlkOiBzdHJpbmcgfT4oKVxuICApLFxuICBjbGVhckFsbEZpbHRlclZhbHVlczogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBjbGVhciBhbGwgZmlsdGVyIHZhbHVlcycsXG4gICAgcHJvcHM8e1xuICAgICAgbGlua2VkSXRlbXM/OiAoJ2Rlc3RpbmF0aW9uJyB8ICdzb3VyY2UnKVtdO1xuICAgIH0+KClcbiAgKSxcbiAgZGlzcGF0Y2hGaWx0ZXJzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIGFwcGx5IGZpbHRlcnMgdG8gcHJlc2VudGF0aW9uIGRhdGFzb3VyY2VzJyxcbiAgICBwcm9wczx7XG4gICAgICBzdGF0aWNNYW5pZmVzdD86IERhc2hib2FyZE1hbmlmZXN0O1xuICAgICAgbGlua2VkSXRlbXM/OiAoJ2Rlc3RpbmF0aW9uJyB8ICdzb3VyY2UnKVtdO1xuICAgIH0+KClcbiAgKSxcbiAgcmVzZXRXbXNGZWF0dXJlczogY3JlYXRlQWN0aW9uKCdbV2lkZ2V0IG1hcF0gUmVzZXQgV21zIGxheWVyIGZlYXR1cmVzJywgcHJvcHM8eyBjb21wb25lbnRJZDogc3RyaW5nIH0+KCkpLFxuICBnZXRXbXNGZWF0dXJlczogY3JlYXRlQWN0aW9uKFxuICAgICdbV2lkZ2V0IG1hcF0gR2V0IFdtcyBsYXllciBmZWF0dXJlcycsXG4gICAgcHJvcHM8eyB1cmw6IHN0cmluZzsgb0NsYXNzOiBzdHJpbmc7IGNvb3JkaW5hdGVzOiBudW1iZXJbXTsgY29tcG9uZW50SWQ6IHN0cmluZyB9PigpXG4gICksXG4gIGFkZFdtc0ZlYXR1cmVzOiBjcmVhdGVBY3Rpb24oJ1tXaWRnZXQgbWFwXSBTZXQgV21zIGxheWVyIGZlYXR1cmVzJywgcHJvcHM8eyBmZWF0dXJlczogYW55OyBjb21wb25lbnRJZDogc3RyaW5nIH0+KCkpLFxuICBnZXRXZnNGZWF0dXJlczogY3JlYXRlQWN0aW9uKFxuICAgICdbV2lkZ2V0IG1hcF0gR2V0IHdmcyBGZWF0dXJlcyBmb3IgcG9pbnQnLFxuICAgIHByb3BzPHsgdXJsOiBzdHJpbmc7IG9DbGFzczogc3RyaW5nOyBjb29yZGluYXRlczogbnVtYmVyW107IHN0eWxlOiBzdHJpbmcgfT4oKVxuICApLFxuICBnZXRXZnNGZWF0dXJlc0ZvclBvaW50U3RhY2tUb29sdGlwczogY3JlYXRlQWN0aW9uKFxuICAgICdbV2lkZ2V0IG1hcF0gR2V0IHdmcyBGZWF0dXJlcyBmb3Igc2hvd2luZyBzdGFjayB0b29sdGlwcycsXG4gICAgcHJvcHM8eyB1cmw6IHN0cmluZzsgb0NsYXNzOiBzdHJpbmc7IGNvb3JkaW5hdGVzOiBudW1iZXJbXTsgY29tcG9uZW50SWQ6IHN0cmluZyB9PigpXG4gICksXG4gIHVwZGF0ZURpc3BsYXlPcHRpb25zOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmQvRGlzcGxheV0gKGJ1cykgVXBkYXRlIGRpc3BsYXllZCBkYXNoYm9hcmQgbWFuYWdlbWVudCBmZWF0dXJlcycsXG4gICAgcHJvcHM8eyBtb2RlOiBWaWV3TW9kZTsgY3VzdG9tRGlzcGxheT86IERpc3BsYXlPcHRpb25zIH0+KClcbiAgKSxcbiAgZ2V0Q2FwYWJpbGl0eTogY3JlYXRlQWN0aW9uKCdbV2lkZ2V0IG1hcF0gR2V0IFdtcyBjYXBhYmlsaXR5JywgcHJvcHM8eyB1cmw6IHN0cmluZzsgZm9yY2U/OiBib29sZWFuIH0+KCkpLFxuICB1cGRhdGVDYXBhYmlsaXR5OiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tXaWRnZXQgbWFwXSBTdG9yZSBXbXMgY2FwYWJpbGl0eScsXG4gICAgcHJvcHM8eyB1cmw6IHN0cmluZzsgY2FwYWJpbGl0eTogR2V0Q2FwYWJpbGl0aWVzUmVzcG9uc2UgfCBudWxsIH0+KClcbiAgKSxcbiAgYWRkTWFuaWZlc3RNZXRhZGF0YTogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSBBZGQgbWFuaWZlc3QgbWV0YWRhdGEnLFxuICAgIHByb3BzPHsgcHJlc2VudGF0aW9uSWQ6IHN0cmluZzsgbWV0YWRhdGFJZDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+KClcbiAgKSxcbiAgZGVsZXRlTWFuaWZlc3RNZXRhZGF0YTogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSBEZWxldGUgbWFuaWZlc3QgbWV0YWRhdGEnLFxuICAgIHByb3BzPHsgcHJlc2VudGF0aW9uSWQ6IHN0cmluZzsgbWV0YWRhdGFJZDogc3RyaW5nIH0+KClcbiAgKSxcbiAgdHJpZ2dlckFnZ3JlZ2F0ZTogY3JlYXRlQWN0aW9uKCdbRGFzaGJvYXJkXSAoYnVzKSBUcmlnZ2VyaW5nIGFnZ3JlZ2F0ZXMgZm9yIGRhdGFzb3VyY2UnLCBwcm9wczx7IGlkOiBzdHJpbmcgfT4oKSksXG4gIGxvYWRQcmVzZW50YXRpb246IGNyZWF0ZUFjdGlvbihcbiAgICAnW0Rhc2hib2FyZF0gbG9hZCBwcmVzZW50YXRpb24nLFxuICAgIHByb3BzPHsgcHJlc2VudGF0aW9uOiBNYW5pZmVzdERlc2NyaXB0aW9uOyB2aWV3TW9kZTogVmlld01vZGUgfT4oKVxuICApXG59O1xuIl19