@eo-sdk/client 11.0.0-beta.1 → 11.0.0-rc.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
  2. package/app/eo-client/dashboard/dashboard.component.d.ts +2 -23
  3. package/app/eo-client/dashboard/dashboard.component.d.ts.map +1 -1
  4. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts +28 -5
  5. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -1
  6. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts +33 -21
  7. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts.map +1 -1
  8. package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts +9 -0
  9. package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts.map +1 -1
  10. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.d.ts +3 -2
  11. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.d.ts.map +1 -1
  12. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.d.ts +2 -0
  13. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.d.ts.map +1 -1
  14. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.d.ts +1 -0
  15. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.d.ts.map +1 -1
  16. package/app/eo-client/dashboard/widgets/hitlist-widget/IHitlist.d.ts +7 -0
  17. package/app/eo-client/dashboard/widgets/hitlist-widget/IHitlist.d.ts.map +1 -1
  18. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.d.ts +9 -4
  19. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.d.ts.map +1 -1
  20. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.d.ts +2 -2
  21. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.d.ts.map +1 -1
  22. package/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.d.ts +3 -2
  23. package/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.d.ts.map +1 -1
  24. package/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.d.ts +3 -2
  25. package/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.d.ts.map +1 -1
  26. package/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.d.ts +3 -2
  27. package/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.d.ts.map +1 -1
  28. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.d.ts +25 -0
  29. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.d.ts.map +1 -0
  30. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.d.ts +15 -6
  31. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.d.ts.map +1 -1
  32. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.d.ts +7 -0
  33. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.d.ts.map +1 -0
  34. package/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.d.ts +18 -0
  35. package/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.d.ts.map +1 -0
  36. package/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.d.ts +10 -0
  37. package/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.d.ts.map +1 -0
  38. package/app/eo-client/dashboard/widgets/search-widget/search-widget.component.d.ts +1 -2
  39. package/app/eo-client/dashboard/widgets/search-widget/search-widget.component.d.ts.map +1 -1
  40. package/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.d.ts +24 -0
  41. package/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.d.ts.map +1 -0
  42. package/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.d.ts +34 -0
  43. package/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.d.ts.map +1 -0
  44. package/app/eo-client/eo-client.module.d.ts +29 -23
  45. package/app/eo-client/eo-client.module.d.ts.map +1 -1
  46. package/app/eo-client/inbox-state/inbox-state/inbox-state.component.d.ts.map +1 -1
  47. package/app/eo-client/login/login.component.d.ts +3 -1
  48. package/app/eo-client/login/login.component.d.ts.map +1 -1
  49. package/app/eo-client/process-state/process-state.component.d.ts +3 -5
  50. package/app/eo-client/process-state/process-state.component.d.ts.map +1 -1
  51. package/app/eo-client/settings/settings.component.d.ts +4 -11
  52. package/app/eo-client/settings/settings.component.d.ts.map +1 -1
  53. package/app/eo-client/stored-queries-state/stored-queries-state.component.d.ts.map +1 -1
  54. package/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.d.ts +5 -1
  55. package/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.d.ts.map +1 -1
  56. package/app/eo-framework/actions/actions/signature-action/signature-action.component.d.ts.map +1 -1
  57. package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts +7 -3
  58. package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts.map +1 -1
  59. package/app/eo-framework/app-shell/app-shell.module.d.ts +17 -16
  60. package/app/eo-framework/app-shell/app-shell.module.d.ts.map +1 -1
  61. package/app/eo-framework/app-shell/index.d.ts +1 -0
  62. package/app/eo-framework/app-shell/index.d.ts.map +1 -1
  63. package/app/eo-framework/app-shell/license-warning/license-warning.component.d.ts +10 -0
  64. package/app/eo-framework/app-shell/license-warning/license-warning.component.d.ts.map +1 -0
  65. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts +4 -4
  66. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts.map +1 -1
  67. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.d.ts.map +1 -1
  68. package/app/eo-framework/form-elements/string/string.component.d.ts +1 -0
  69. package/app/eo-framework/form-elements/string/string.component.d.ts.map +1 -1
  70. package/app/eo-framework/frame/frame.component.d.ts +2 -1
  71. package/app/eo-framework/frame/frame.component.d.ts.map +1 -1
  72. package/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.d.ts.map +1 -1
  73. package/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.d.ts.map +1 -1
  74. package/app/eo-framework/grid/filters/codesystem-filter.component.d.ts.map +1 -1
  75. package/app/eo-framework/grid/filters/datetime-filter.component.d.ts +0 -8
  76. package/app/eo-framework/grid/filters/datetime-filter.component.d.ts.map +1 -1
  77. package/app/eo-framework/grid/filters/dynamic-list-filter.component.d.ts.map +1 -1
  78. package/app/eo-framework/grid/grid.component.d.ts +1 -1
  79. package/app/eo-framework/grid/grid.component.d.ts.map +1 -1
  80. package/app/eo-framework/inbox-details/inbox-details.component.d.ts.map +1 -1
  81. package/app/eo-framework/media/media.component.d.ts +15 -1
  82. package/app/eo-framework/media/media.component.d.ts.map +1 -1
  83. package/app/eo-framework/object-details/object-details.component.d.ts +9 -3
  84. package/app/eo-framework/object-details/object-details.component.d.ts.map +1 -1
  85. package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts +2 -0
  86. package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts.map +1 -1
  87. package/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.d.ts.map +1 -1
  88. package/app/eo-framework/object-form/object-form-helper.service.d.ts.map +1 -1
  89. package/app/eo-framework/prepare-details/prepare-details.component.d.ts.map +1 -1
  90. package/app/eo-framework/result-list/result-list.component.d.ts +3 -2
  91. package/app/eo-framework/result-list/result-list.component.d.ts.map +1 -1
  92. package/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.d.ts.map +1 -1
  93. package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts +2 -1
  94. package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts.map +1 -1
  95. package/app/eo-framework/util/services/utilities.service.d.ts +195 -0
  96. package/app/eo-framework/util/services/utilities.service.d.ts.map +1 -1
  97. package/app/eo-framework-core/api/grid.service.d.ts +1 -5
  98. package/app/eo-framework-core/api/grid.service.d.ts.map +1 -1
  99. package/app/eo-framework-core/api/plugins.service.d.ts +6 -0
  100. package/app/eo-framework-core/api/plugins.service.d.ts.map +1 -1
  101. package/app/eo-framework-core/error-handler/error-handler.service.d.ts.map +1 -1
  102. package/assets/_default/config/main.json +1 -1
  103. package/assets/_default/i18n/de.json +48 -11
  104. package/assets/_default/i18n/en.json +50 -13
  105. package/assets/_default/svg/ic_noImage.svg +1 -0
  106. package/assets/_default/svg/ic_photo_library.svg +1 -0
  107. package/assets/_default/svg/ic_task.svg +1 -0
  108. package/esm2022/app/eo-client/about-state/about-state.component.mjs +3 -3
  109. package/esm2022/app/eo-client/dashboard/dashboard.component.mjs +21 -69
  110. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +183 -78
  111. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +142 -36
  112. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/icharts.mjs +1 -1
  113. package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.mjs +21 -13
  114. package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.mjs +7 -3
  115. package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.mjs +1 -1
  116. package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/IHitlist.mjs +1 -1
  117. package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +68 -53
  118. package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +7 -8
  119. package/esm2022/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.mjs +16 -10
  120. package/esm2022/app/eo-client/dashboard/widgets/iframe-widget/iframe-widget.component.mjs +3 -4
  121. package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.mjs +15 -9
  122. package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.mjs +3 -3
  123. package/esm2022/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.mjs +16 -10
  124. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.mjs +85 -0
  125. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +101 -32
  126. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.mjs +2 -0
  127. package/esm2022/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.mjs +54 -0
  128. package/esm2022/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.mjs +24 -0
  129. package/esm2022/app/eo-client/dashboard/widgets/search-widget/search-widget.component.mjs +4 -7
  130. package/esm2022/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.mjs +74 -0
  131. package/esm2022/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.mjs +103 -0
  132. package/esm2022/app/eo-client/eo-client.module.mjs +25 -6
  133. package/esm2022/app/eo-client/favorite-state/favorite-state.component.mjs +4 -4
  134. package/esm2022/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +25 -11
  135. package/esm2022/app/eo-client/login/login.component.mjs +14 -11
  136. package/esm2022/app/eo-client/notifications-state/notifications-state.component.mjs +5 -5
  137. package/esm2022/app/eo-client/object-state/object-state/object-state.component.mjs +3 -3
  138. package/esm2022/app/eo-client/prepare-state/prepare-state/prepare-state.component.mjs +6 -6
  139. package/esm2022/app/eo-client/process-state/process-state.component.mjs +12 -17
  140. package/esm2022/app/eo-client/recyclebin-state/recyclebin-state.component.mjs +6 -6
  141. package/esm2022/app/eo-client/result-state/result-state.component.mjs +1 -1
  142. package/esm2022/app/eo-client/settings/settings.component.mjs +34 -40
  143. package/esm2022/app/eo-client/stored-queries-state/stored-queries-state.component.mjs +4 -5
  144. package/esm2022/app/eo-client/version-state/version-state.component.mjs +5 -5
  145. package/esm2022/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.mjs +6 -6
  146. package/esm2022/app/eo-framework/actions/actions/custom-actions/custom-actions.component.mjs +3 -3
  147. package/esm2022/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.mjs +23 -3
  148. package/esm2022/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +3 -3
  149. package/esm2022/app/eo-framework/actions/actions/signature-action/signature-action.component.mjs +5 -2
  150. package/esm2022/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +5 -4
  151. package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +44 -24
  152. package/esm2022/app/eo-framework/app-shell/app-bar/context-search/context-search.component.mjs +3 -3
  153. package/esm2022/app/eo-framework/app-shell/app-shell.module.mjs +13 -7
  154. package/esm2022/app/eo-framework/app-shell/index.mjs +2 -1
  155. package/esm2022/app/eo-framework/app-shell/license-warning/license-warning.component.mjs +26 -0
  156. package/esm2022/app/eo-framework/form-elements/codesystem/codesystem.component.mjs +3 -3
  157. package/esm2022/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +35 -28
  158. package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +7 -4
  159. package/esm2022/app/eo-framework/form-elements/id-reference/id-reference.component.mjs +2 -2
  160. package/esm2022/app/eo-framework/form-elements/organization/organization.component.mjs +2 -2
  161. package/esm2022/app/eo-framework/form-elements/reference/reference.component.mjs +2 -2
  162. package/esm2022/app/eo-framework/form-elements/string/string.component.mjs +8 -5
  163. package/esm2022/app/eo-framework/frame/frame.component.mjs +3 -2
  164. package/esm2022/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.mjs +7 -2
  165. package/esm2022/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.mjs +3 -3
  166. package/esm2022/app/eo-framework/grid/filters/codesystem-filter.component.mjs +1 -14
  167. package/esm2022/app/eo-framework/grid/filters/datetime-filter.component.mjs +6 -33
  168. package/esm2022/app/eo-framework/grid/filters/dynamic-list-filter.component.mjs +3 -19
  169. package/esm2022/app/eo-framework/grid/filters/filesize-filter.component.mjs +2 -2
  170. package/esm2022/app/eo-framework/grid/grid.component.mjs +11 -12
  171. package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +5 -3
  172. package/esm2022/app/eo-framework/media/media.component.mjs +68 -19
  173. package/esm2022/app/eo-framework/object-details/object-details.component.mjs +53 -15
  174. package/esm2022/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +3 -3
  175. package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +19 -28
  176. package/esm2022/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +3 -3
  177. package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.mjs +4 -4
  178. package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-scripting-scope.mjs +11 -7
  179. package/esm2022/app/eo-framework/object-form/object-form/object-form.component.mjs +3 -3
  180. package/esm2022/app/eo-framework/object-form/object-form-helper.service.mjs +6 -1
  181. package/esm2022/app/eo-framework/prepare-details/prepare-details.component.mjs +15 -4
  182. package/esm2022/app/eo-framework/process/history/process-history.component.mjs +2 -2
  183. package/esm2022/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +3 -3
  184. package/esm2022/app/eo-framework/recyclebin-details/recyclebin-details.component.mjs +1 -1
  185. package/esm2022/app/eo-framework/result-list/result-list.component.mjs +34 -5
  186. package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.mjs +18 -5
  187. package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +6 -3
  188. package/esm2022/app/eo-framework/ui/overlay/overlay.component.mjs +2 -2
  189. package/esm2022/app/eo-framework/util/services/utilities.service.mjs +4 -1
  190. package/esm2022/app/eo-framework-core/api/grid.service.mjs +34 -45
  191. package/esm2022/app/eo-framework-core/api/plugins.service.mjs +44 -2
  192. package/esm2022/app/eo-framework-core/error-handler/error-handler.service.mjs +6 -6
  193. package/fesm2022/eo-sdk-client.mjs +1589 -805
  194. package/fesm2022/eo-sdk-client.mjs.map +1 -1
  195. package/misc/scripts/exclude-core-ng-package.js +11 -0
  196. package/misc/scripts/prebuild-about-state.js +2 -3
  197. package/package.json +6 -6
  198. package/proxy.config.json +15 -0
@@ -43,7 +43,7 @@ let SearchWidgetComponent = class SearchWidgetComponent {
43
43
  this.selectedQuery = q;
44
44
  }
45
45
  // user changed input of quickSearch component
46
- onQuickSearchInputChange(term) {
46
+ onQuickSearchInputChange() {
47
47
  this.quickSearchResult = null;
48
48
  }
49
49
  // quickSearch component is returning results
@@ -73,9 +73,6 @@ let SearchWidgetComponent = class SearchWidgetComponent {
73
73
  badges: [{ value: group.count }]
74
74
  }));
75
75
  }
76
- trackByFn(item) {
77
- return item.id;
78
- }
79
76
  onEmitQueryClick(event, q) {
80
77
  delete q.fields;
81
78
  const uriParam = encodeURIComponent(Utils.formDataStringify(q.getQueryJson()));
@@ -98,7 +95,7 @@ let SearchWidgetComponent = class SearchWidgetComponent {
98
95
  }
99
96
  }
100
97
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SearchWidgetComponent, deps: [{ token: i1.UserService }, { token: i2.PageTitleService }, { token: i3.Router }, { token: i1.Config }, { token: i1.CapabilitiesService }, { token: i1.StoredQueriesService }], target: i0.ɵɵFactoryTarget.Component }); }
101
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SearchWidgetComponent, selector: "eo-search-widget", inputs: { widgetConfig: "widgetConfig" }, host: { listeners: { "window:keyup": "onKey($event)" } }, viewQueries: [{ propertyName: "quickSearchEl", first: true, predicate: ["quickSearch"], descendants: true }], ngImport: i0, template: "<div class=\"db-content\" [ngClass]=\"{centerFocus: (quickSearchResult && quickSearchResult.total > 0) || selectedQuery}\">\n <div class=\"db-center\">\n <div class=\"top\">\n <div class=\"quick-search\" [ngClass]=\"{disabled: selectedQuery}\">\n\n <div class=\"count\" *ngIf=\"quickSearchResult && quickSearchResult.total !== -1\" (click)=\"executeSearch()\">\n <div *ngIf=\"quickSearchResult.total\">\n <span class=\"count-total\">{{quickSearchResult.total | localeDecimal}}</span>\n <span class=\"label\" translate>eo.quicksearch.hits</span>\n </div>\n <span class=\"label\" *ngIf=\"!quickSearchResult.total\" translate>eo.quicksearch.reults.empty</span>\n </div>\n\n <div class=\"input\">\n <eo-quick-search (onResult)=\"onQuickSearchResult($event)\" (onInputChange)=\"onQuickSearchInputChange($event)\"\n #quickSearch></eo-quick-search>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\">\n <div class=\"quick-search-results\" *ngIf=\"quickSearchResult && quickSearchResult.total > 0; else storedqueries\">\n\n <div class=\"group\" *ngFor=\"let key of quickSearchResult.groups | keys; index as i\">\n <h2 *ngIf=\"key !== '0'; else maingroup\">{{key}}</h2>\n <ng-template #maingroup>\n <h2 translate>eo.quicksearch.result.group.global</h2>\n </ng-template>\n\n <eo-tree [tree]=\"tree[key]\" [(ngModel)]=\"selectedQuickSearchResultItem\"\n (onSelected)=\"executeSearch($event.data)\" (expandedNodesChanged)=\"executeSearch($event.data)\"\n [selectionKey]=\"'Enter'\">\n </eo-tree>\n </div>\n </div>\n\n <ng-template #storedqueries>\n\n <div class=\"stored-queries\" *ngIf=\"capabilities.storedqueries && storedQueries.length\">\n\n <div class=\"query\" *ngIf=\"selectedQuery; else querylist\">\n <div>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"\n (click)=\"selectStoredQuery(null)\"></eo-icon>\n </div>\n <eo-stored-query [query]=\"selectedQuery\" (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </div>\n\n <ng-template #querylist>\n <div class=\"queries\" [@listAnimation]=\"storedQueries.length\">\n <a class=\"sq lead\" [routerLink]=\"['/stored-queries']\" translate>eo.view.navigation.storedqueries</a>\n\n <div class=\"sq\" *ngFor=\"let q of storedQueries; trackBy: trackByFn\" \n (keyup.enter)=\"selectStoredQuery(q)\" tabindex=\"0\">\n <div class=\"icon\">\n <eo-icon class=\"button primary\" (click)=\"onEmitQueryClick($event, q)\"\n [iconSrc]=\"'assets/_default/svg/ic_saved_search.svg'\"\n [iconTitle]=\"('eo.storedquery.run'| translate)\"></eo-icon>\n </div>\n <span (click)=\"selectStoredQuery(q)\">{{q.name}}</span>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-template>\n </div>\n </div>\n</div>", styles: [".db-content{display:block;height:100%;overflow:auto}@media screen and (max-width: 800px){.db-content{flex-flow:column}}.db-content.centerFocus .db-left,.db-content.centerFocus .db-right{opacity:.3}.db-content .db-left{flex:0 1 20%;padding-top:10vh;display:flex;flex-flow:column;align-items:flex-start}.db-content .db-left .info{color:var(--color-primary-2);padding:0 var(--app-pane-padding);margin-bottom:calc(var(--app-pane-padding) * 2);text-decoration:none;cursor:pointer}.db-content .db-left .info:focus,.db-content .db-left .info:hover{color:var(--color-accent)}.db-content .db-left .info:focus eo-icon,.db-content .db-left .info:hover eo-icon{background-color:var(--color-accent)}.db-content .db-left .info>div{display:flex;align-items:center}.db-content .db-left .info eo-icon{border-radius:2px;background-color:var(--color-primary-2);color:#ffffffb3;padding:2px}.db-content .db-left .info .count{font-size:40px;line-height:1em;padding:0 var(--app-pane-padding);text-align:right}.db-content .db-center{flex:1 1 auto;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding) * 2)}.db-content .db-center .top{flex:0 0 30%;box-sizing:border-box;padding-bottom:var(--app-pane-padding);flex-flow:column;display:flex;justify-content:flex-end;align-items:center}.db-content .db-center .bottom{flex:1 1 auto;overflow-y:auto;display:flex;justify-content:center;align-items:baseline}.db-content .db-right{flex:0 0 20%;padding:10vh var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding);box-sizing:border-box;min-width:300px}@media screen and (max-width: 800px){.db-content .db-right{height:40%;padding:0 var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}}.db-content .db-right .lastEdits{display:flex;flex-flow:column;max-height:100%}.db-content .db-right .lastEdits .header{flex:0 0 auto;border-radius:2px;color:#fff;background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}.db-content .db-right .lastEdits .header h2{margin:0;padding:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal)}.db-content .db-right .lastEdits .header .total{font-size:var(--font-caption);opacity:.7}.db-content .db-right .lastEdits .body{flex:1 1 auto;overflow-y:auto}.db-content .db-right .lastEdits .body .item{border-radius:2px;display:flex;flex-flow:row nowrap;color:var(--text-color-caption);padding:calc(var(--app-pane-padding) / 2);margin:calc(var(--app-pane-padding) / 4) 0;align-items:center;background-color:var(--panel-background);text-decoration:none;cursor:pointer}.db-content .db-right .lastEdits .body .item:focus,.db-content .db-right .lastEdits .body .item:hover{background-color:var(--list-item-hover-background)}.db-content .db-right .lastEdits .body .item eo-icon{flex:0 0 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item>div{flex:1 1 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item .title{font-weight:var(--font-weight-bold)}.db-content .db-right .lastEdits .body .item .modified,.db-content .db-right .lastEdits .body .item .description{font-size:var(--font-hint)}.db-content .stored-queries .query{display:flex;max-height:45vh}.db-content .stored-queries .query>div{background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);margin:0 1px;border-radius:2px 0 0 2px}.db-content .stored-queries .query>div eo-icon{padding:calc(var(--app-pane-padding) / 4);color:var(--text-color-caption)}.db-content .stored-queries .query eo-stored-query{border-radius:0 2px 2px 0;background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);overflow:hidden}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query{display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .title{flex:0}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform{flex:1;overflow:hidden;display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .query-form{flex:1;overflow-y:auto}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .actions{flex:0}.db-content .stored-queries .queries{display:flex;flex-flow:row wrap;padding:0 calc(var(--app-pane-padding) / 4)}.db-content .stored-queries .queries .sq{border-radius:2px;padding:calc(var(--app-pane-padding) / 4);margin:0 calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 4) 0;background-color:var(--panel-background);color:var(--text-color-caption);text-decoration:none;cursor:pointer;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;display:flex;flex-flow:row;align-items:center}.db-content .stored-queries .queries .sq .icon>eo-icon.button.primary:hover{background-color:rgba(var(--color-black-rgb),.2);cursor:pointer;color:var(--color-white)}.db-content .stored-queries .queries .sq>span{padding:0 calc(var(--app-pane-padding) / 2)}.db-content .stored-queries .queries .sq:not(.lead):focus,.db-content .stored-queries .queries .sq:not(.lead):hover{background-color:var(--list-item-hover-background)}.db-content .stored-queries .queries .sq.lead{color:#fff;background-color:var(--color-primary-2);padding-left:calc(var(--app-pane-padding) / 2);padding-right:calc(var(--app-pane-padding) / 2);transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}.db-content .stored-queries .queries .sq.lead:focus,.db-content .stored-queries .queries .sq.lead:hover{background-color:var(--color-accent)}.db-content .quick-search .input{width:50%;min-width:600px}@media screen and (max-width: 800px){.db-content .quick-search .input{width:100%;min-width:inherit;padding-top:4vh}}.db-content .quick-search .count{animation:eoFadeInUp var(--app-default-transition-duration);background-color:var(--color-primary-2);border-radius:2px;margin-bottom:4px;padding:calc(var(--app-pane-padding) / 4) var(--app-pane-padding);color:#fff;display:inline-block;cursor:pointer}.db-content .quick-search .count span{padding:0 calc(var(--app-pane-padding) / 4)}.db-content .quick-search .count span.count-total{font-size:var(--font-display)}.db-content .quick-search .count:hover{background-color:var(--color-accent)}.db-content .quick-search.disabled{pointer-events:none;opacity:.3}.db-content .quick-search-results{display:flex;flex-flow:row wrap;width:100%;justify-content:center;margin:0px calc(var(--app-pane-padding) / -2 + 0px)}.db-content .quick-search-results>*{margin-left:calc(var(--app-pane-padding) / 2);margin-right:calc(var(--app-pane-padding) / 2)}.db-content .quick-search-results .group{background:#ffffffb3;padding:calc(var(--app-pane-padding) / 2);margin-bottom:var(--app-pane-padding);opacity:0;animation:eoFadeIn var(--app-default-transition-duration);animation-fill-mode:forwards;border-radius:2px}.db-content .quick-search-results .group h2{margin-top:0;padding-top:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption)}.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .node-line,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .ico,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .spacer{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i7.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i8.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "component", type: i9.TreeComponent, selector: "eo-tree", inputs: ["options", "isDisplayed", "readonly", "emptyMessage", "selectionKey", "highlightedNodes", "tree", "treeUpdate"], outputs: ["expandedNodesChanged", "onSelected"] }, { kind: "component", type: i10.QuickSearchComponent, selector: "eo-quick-search", inputs: ["showResults"], outputs: ["onResult", "onInputChange"] }, { kind: "component", type: i11.StoredQueryComponent, selector: "eo-stored-query", inputs: ["query", "formOnly"], outputs: ["onQueryLoaded", "onQueryExecute"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }, { kind: "pipe", type: i12.LocaleDecimalPipe, name: "localeDecimal" }, { kind: "pipe", type: i13.KeysPipe, name: "keys" }], animations: [
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: SearchWidgetComponent, selector: "eo-search-widget", inputs: { widgetConfig: "widgetConfig" }, host: { listeners: { "window:keyup": "onKey($event)" } }, viewQueries: [{ propertyName: "quickSearchEl", first: true, predicate: ["quickSearch"], descendants: true }], ngImport: i0, template: "<div class=\"db-content\" [ngClass]=\"{centerFocus: (quickSearchResult && quickSearchResult.total > 0) || selectedQuery}\">\n <div class=\"db-center\">\n <div class=\"top\">\n <div class=\"quick-search\" [ngClass]=\"{disabled: selectedQuery}\">\n\n @if (quickSearchResult && quickSearchResult.total !== -1) {\n <div class=\"count\" (click)=\"executeSearch()\">\n @if (quickSearchResult.total) {\n <div>\n <span class=\"count-total\">{{quickSearchResult.total | localeDecimal}}</span>\n <span class=\"label\" translate>eo.quicksearch.hits</span>\n </div>\n } @else {\n <span class=\"label\" translate>eo.quicksearch.reults.empty</span>\n }\n </div>\n }\n\n <div class=\"input\">\n <eo-quick-search (onResult)=\"onQuickSearchResult($event)\" (onInputChange)=\"onQuickSearchInputChange()\"\n #quickSearch></eo-quick-search>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\">\n @if (quickSearchResult && quickSearchResult.total > 0) {\n <div class=\"quick-search-results\">\n @for (key of quickSearchResult.groups | keys; track $index) {\n <div class=\"group\">\n <h2>\n @if (key !== '0') {\n {{key}}\n } @else {\n {{'eo.quicksearch.result.group.global' | translate}}\n }\n </h2>\n\n <eo-tree [tree]=\"tree[key]\" [(ngModel)]=\"selectedQuickSearchResultItem\"\n (onSelected)=\"executeSearch($event.data)\" (expandedNodesChanged)=\"executeSearch($event.data)\"\n [selectionKey]=\"'Enter'\">\n </eo-tree>\n </div>\n }\n </div>\n } @else {\n @if (capabilities.storedqueries && storedQueries.length) {\n <div class=\"stored-queries\">\n @if (selectedQuery) {\n <div class=\"query\">\n <div>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"\n (click)=\"selectStoredQuery(null)\"></eo-icon>\n </div>\n <eo-stored-query [query]=\"selectedQuery\" (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </div>\n } @else {\n <div class=\"queries\" [@listAnimation]=\"storedQueries.length\">\n <a class=\"sq lead\" [routerLink]=\"['/stored-queries']\" translate>eo.view.navigation.storedqueries</a>\n @for (q of storedQueries; track q.id) {\n <div class=\"sq\" (keyup.enter)=\"selectStoredQuery(q)\" tabindex=\"0\">\n <div class=\"icon\">\n <eo-icon class=\"button primary\" (click)=\"onEmitQueryClick($event, q)\"\n [iconSrc]=\"'assets/_default/svg/ic_saved_search.svg'\"\n [iconTitle]=\"('eo.storedquery.run'| translate)\"></eo-icon>\n </div>\n <span (click)=\"selectStoredQuery(q)\">{{q.name}}</span>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: [".db-content{display:block;height:100%;overflow:auto}@media screen and (max-width: 800px){.db-content{flex-flow:column}}.db-content.centerFocus .db-left,.db-content.centerFocus .db-right{opacity:.3}.db-content .db-left{flex:0 1 20%;padding-top:10vh;display:flex;flex-flow:column;align-items:flex-start}.db-content .db-left .info{color:var(--color-primary-2);padding:0 var(--app-pane-padding);margin-bottom:calc(var(--app-pane-padding) * 2);text-decoration:none;cursor:pointer}.db-content .db-left .info:focus,.db-content .db-left .info:hover{color:var(--color-accent)}.db-content .db-left .info:focus eo-icon,.db-content .db-left .info:hover eo-icon{background-color:var(--color-accent)}.db-content .db-left .info>div{display:flex;align-items:center}.db-content .db-left .info eo-icon{border-radius:2px;background-color:var(--color-primary-2);color:#ffffffb3;padding:2px}.db-content .db-left .info .count{font-size:40px;line-height:1em;padding:0 var(--app-pane-padding);text-align:right}.db-content .db-center{flex:1 1 auto;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding) * 2)}.db-content .db-center .top{flex:0 0 30%;box-sizing:border-box;padding-bottom:var(--app-pane-padding);flex-flow:column;display:flex;justify-content:flex-end;align-items:center}.db-content .db-center .bottom{flex:1 1 auto;overflow-y:auto;display:flex;justify-content:center;align-items:baseline}.db-content .db-right{flex:0 0 20%;padding:10vh var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding);box-sizing:border-box;min-width:300px}@media screen and (max-width: 800px){.db-content .db-right{height:40%;padding:0 var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}}.db-content .db-right .lastEdits{display:flex;flex-flow:column;max-height:100%}.db-content .db-right .lastEdits .header{flex:0 0 auto;border-radius:2px;color:#fff;background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}.db-content .db-right .lastEdits .header h2{margin:0;padding:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal)}.db-content .db-right .lastEdits .header .total{font-size:var(--font-caption);opacity:.7}.db-content .db-right .lastEdits .body{flex:1 1 auto;overflow-y:auto}.db-content .db-right .lastEdits .body .item{border-radius:2px;display:flex;flex-flow:row nowrap;color:var(--text-color-caption);padding:calc(var(--app-pane-padding) / 2);margin:calc(var(--app-pane-padding) / 4) 0;align-items:center;background-color:var(--panel-background);text-decoration:none;cursor:pointer}.db-content .db-right .lastEdits .body .item:focus,.db-content .db-right .lastEdits .body .item:hover{background-color:var(--list-item-hover-background)}.db-content .db-right .lastEdits .body .item eo-icon{flex:0 0 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item>div{flex:1 1 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item .title{font-weight:var(--font-weight-bold)}.db-content .db-right .lastEdits .body .item .modified,.db-content .db-right .lastEdits .body .item .description{font-size:var(--font-hint)}.db-content .stored-queries .query{display:flex;max-height:45vh}.db-content .stored-queries .query>div{background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);margin:0 1px;border-radius:2px 0 0 2px}.db-content .stored-queries .query>div eo-icon{padding:calc(var(--app-pane-padding) / 4);color:var(--text-color-caption)}.db-content .stored-queries .query eo-stored-query{border-radius:0 2px 2px 0;background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);overflow:hidden}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query{display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .title{flex:0}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform{flex:1;overflow:hidden;display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .query-form{flex:1;overflow-y:auto}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .actions{flex:0}.db-content .stored-queries .queries{display:flex;flex-flow:row wrap;padding:0 calc(var(--app-pane-padding) / 4)}.db-content .stored-queries .queries .sq{border-radius:2px;padding:calc(var(--app-pane-padding) / 4);margin:0 calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 4) 0;background-color:var(--panel-background);color:var(--text-color-caption);text-decoration:none;cursor:pointer;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;display:flex;flex-flow:row;align-items:center}.db-content .stored-queries .queries .sq .icon>eo-icon.button.primary:hover{background-color:rgba(var(--color-black-rgb),.2);cursor:pointer;color:var(--color-white)}.db-content .stored-queries .queries .sq>span{padding:0 calc(var(--app-pane-padding) / 2)}.db-content .stored-queries .queries .sq:not(.lead):focus,.db-content .stored-queries .queries .sq:not(.lead):hover{background-color:var(--list-item-hover-background)}.db-content .stored-queries .queries .sq.lead{color:#fff;background-color:var(--color-primary-2);padding-left:calc(var(--app-pane-padding) / 2);padding-right:calc(var(--app-pane-padding) / 2);transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}.db-content .stored-queries .queries .sq.lead:focus,.db-content .stored-queries .queries .sq.lead:hover{background-color:var(--color-accent)}.db-content .quick-search .input{width:50%;min-width:600px}@media screen and (max-width: 800px){.db-content .quick-search .input{width:100%;min-width:inherit;padding-top:4vh}}.db-content .quick-search .count{animation:eoFadeInUp var(--app-default-transition-duration);background-color:var(--color-primary-2);border-radius:2px;margin-bottom:4px;padding:calc(var(--app-pane-padding) / 4) var(--app-pane-padding);color:#fff;display:inline-block;cursor:pointer}.db-content .quick-search .count span{padding:0 calc(var(--app-pane-padding) / 4)}.db-content .quick-search .count span.count-total{font-size:var(--font-display)}.db-content .quick-search .count:hover{background-color:var(--color-accent)}.db-content .quick-search.disabled{pointer-events:none;opacity:.3}.db-content .quick-search-results{display:flex;flex-flow:row wrap;width:100%;justify-content:center;margin:0px calc(var(--app-pane-padding) / -2 + 0px)}.db-content .quick-search-results>*{margin-left:calc(var(--app-pane-padding) / 2);margin-right:calc(var(--app-pane-padding) / 2)}.db-content .quick-search-results .group{background:#ffffffb3;padding:calc(var(--app-pane-padding) / 2);margin-bottom:var(--app-pane-padding);opacity:0;animation:eoFadeIn var(--app-default-transition-duration);animation-fill-mode:forwards;border-radius:2px}.db-content .quick-search-results .group h2{margin-top:0;padding-top:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption)}.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .node-line,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .ico,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .spacer{display:none}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i6.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i7.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i8.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "component", type: i9.TreeComponent, selector: "eo-tree", inputs: ["options", "isDisplayed", "readonly", "emptyMessage", "selectionKey", "highlightedNodes", "tree", "treeUpdate"], outputs: ["expandedNodesChanged", "onSelected"] }, { kind: "component", type: i10.QuickSearchComponent, selector: "eo-quick-search", inputs: ["showResults"], outputs: ["onResult", "onInputChange"] }, { kind: "component", type: i11.StoredQueryComponent, selector: "eo-stored-query", inputs: ["query", "formOnly"], outputs: ["onQueryLoaded", "onQueryExecute"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }, { kind: "pipe", type: i12.LocaleDecimalPipe, name: "localeDecimal" }, { kind: "pipe", type: i13.KeysPipe, name: "keys" }], animations: [
102
99
  listAnimation
103
100
  ] }); }
104
101
  };
@@ -110,7 +107,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
110
107
  type: Component,
111
108
  args: [{ selector: 'eo-search-widget', animations: [
112
109
  listAnimation
113
- ], template: "<div class=\"db-content\" [ngClass]=\"{centerFocus: (quickSearchResult && quickSearchResult.total > 0) || selectedQuery}\">\n <div class=\"db-center\">\n <div class=\"top\">\n <div class=\"quick-search\" [ngClass]=\"{disabled: selectedQuery}\">\n\n <div class=\"count\" *ngIf=\"quickSearchResult && quickSearchResult.total !== -1\" (click)=\"executeSearch()\">\n <div *ngIf=\"quickSearchResult.total\">\n <span class=\"count-total\">{{quickSearchResult.total | localeDecimal}}</span>\n <span class=\"label\" translate>eo.quicksearch.hits</span>\n </div>\n <span class=\"label\" *ngIf=\"!quickSearchResult.total\" translate>eo.quicksearch.reults.empty</span>\n </div>\n\n <div class=\"input\">\n <eo-quick-search (onResult)=\"onQuickSearchResult($event)\" (onInputChange)=\"onQuickSearchInputChange($event)\"\n #quickSearch></eo-quick-search>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\">\n <div class=\"quick-search-results\" *ngIf=\"quickSearchResult && quickSearchResult.total > 0; else storedqueries\">\n\n <div class=\"group\" *ngFor=\"let key of quickSearchResult.groups | keys; index as i\">\n <h2 *ngIf=\"key !== '0'; else maingroup\">{{key}}</h2>\n <ng-template #maingroup>\n <h2 translate>eo.quicksearch.result.group.global</h2>\n </ng-template>\n\n <eo-tree [tree]=\"tree[key]\" [(ngModel)]=\"selectedQuickSearchResultItem\"\n (onSelected)=\"executeSearch($event.data)\" (expandedNodesChanged)=\"executeSearch($event.data)\"\n [selectionKey]=\"'Enter'\">\n </eo-tree>\n </div>\n </div>\n\n <ng-template #storedqueries>\n\n <div class=\"stored-queries\" *ngIf=\"capabilities.storedqueries && storedQueries.length\">\n\n <div class=\"query\" *ngIf=\"selectedQuery; else querylist\">\n <div>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"\n (click)=\"selectStoredQuery(null)\"></eo-icon>\n </div>\n <eo-stored-query [query]=\"selectedQuery\" (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </div>\n\n <ng-template #querylist>\n <div class=\"queries\" [@listAnimation]=\"storedQueries.length\">\n <a class=\"sq lead\" [routerLink]=\"['/stored-queries']\" translate>eo.view.navigation.storedqueries</a>\n\n <div class=\"sq\" *ngFor=\"let q of storedQueries; trackBy: trackByFn\" \n (keyup.enter)=\"selectStoredQuery(q)\" tabindex=\"0\">\n <div class=\"icon\">\n <eo-icon class=\"button primary\" (click)=\"onEmitQueryClick($event, q)\"\n [iconSrc]=\"'assets/_default/svg/ic_saved_search.svg'\"\n [iconTitle]=\"('eo.storedquery.run'| translate)\"></eo-icon>\n </div>\n <span (click)=\"selectStoredQuery(q)\">{{q.name}}</span>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-template>\n </div>\n </div>\n</div>", styles: [".db-content{display:block;height:100%;overflow:auto}@media screen and (max-width: 800px){.db-content{flex-flow:column}}.db-content.centerFocus .db-left,.db-content.centerFocus .db-right{opacity:.3}.db-content .db-left{flex:0 1 20%;padding-top:10vh;display:flex;flex-flow:column;align-items:flex-start}.db-content .db-left .info{color:var(--color-primary-2);padding:0 var(--app-pane-padding);margin-bottom:calc(var(--app-pane-padding) * 2);text-decoration:none;cursor:pointer}.db-content .db-left .info:focus,.db-content .db-left .info:hover{color:var(--color-accent)}.db-content .db-left .info:focus eo-icon,.db-content .db-left .info:hover eo-icon{background-color:var(--color-accent)}.db-content .db-left .info>div{display:flex;align-items:center}.db-content .db-left .info eo-icon{border-radius:2px;background-color:var(--color-primary-2);color:#ffffffb3;padding:2px}.db-content .db-left .info .count{font-size:40px;line-height:1em;padding:0 var(--app-pane-padding);text-align:right}.db-content .db-center{flex:1 1 auto;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding) * 2)}.db-content .db-center .top{flex:0 0 30%;box-sizing:border-box;padding-bottom:var(--app-pane-padding);flex-flow:column;display:flex;justify-content:flex-end;align-items:center}.db-content .db-center .bottom{flex:1 1 auto;overflow-y:auto;display:flex;justify-content:center;align-items:baseline}.db-content .db-right{flex:0 0 20%;padding:10vh var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding);box-sizing:border-box;min-width:300px}@media screen and (max-width: 800px){.db-content .db-right{height:40%;padding:0 var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}}.db-content .db-right .lastEdits{display:flex;flex-flow:column;max-height:100%}.db-content .db-right .lastEdits .header{flex:0 0 auto;border-radius:2px;color:#fff;background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}.db-content .db-right .lastEdits .header h2{margin:0;padding:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal)}.db-content .db-right .lastEdits .header .total{font-size:var(--font-caption);opacity:.7}.db-content .db-right .lastEdits .body{flex:1 1 auto;overflow-y:auto}.db-content .db-right .lastEdits .body .item{border-radius:2px;display:flex;flex-flow:row nowrap;color:var(--text-color-caption);padding:calc(var(--app-pane-padding) / 2);margin:calc(var(--app-pane-padding) / 4) 0;align-items:center;background-color:var(--panel-background);text-decoration:none;cursor:pointer}.db-content .db-right .lastEdits .body .item:focus,.db-content .db-right .lastEdits .body .item:hover{background-color:var(--list-item-hover-background)}.db-content .db-right .lastEdits .body .item eo-icon{flex:0 0 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item>div{flex:1 1 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item .title{font-weight:var(--font-weight-bold)}.db-content .db-right .lastEdits .body .item .modified,.db-content .db-right .lastEdits .body .item .description{font-size:var(--font-hint)}.db-content .stored-queries .query{display:flex;max-height:45vh}.db-content .stored-queries .query>div{background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);margin:0 1px;border-radius:2px 0 0 2px}.db-content .stored-queries .query>div eo-icon{padding:calc(var(--app-pane-padding) / 4);color:var(--text-color-caption)}.db-content .stored-queries .query eo-stored-query{border-radius:0 2px 2px 0;background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);overflow:hidden}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query{display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .title{flex:0}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform{flex:1;overflow:hidden;display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .query-form{flex:1;overflow-y:auto}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .actions{flex:0}.db-content .stored-queries .queries{display:flex;flex-flow:row wrap;padding:0 calc(var(--app-pane-padding) / 4)}.db-content .stored-queries .queries .sq{border-radius:2px;padding:calc(var(--app-pane-padding) / 4);margin:0 calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 4) 0;background-color:var(--panel-background);color:var(--text-color-caption);text-decoration:none;cursor:pointer;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;display:flex;flex-flow:row;align-items:center}.db-content .stored-queries .queries .sq .icon>eo-icon.button.primary:hover{background-color:rgba(var(--color-black-rgb),.2);cursor:pointer;color:var(--color-white)}.db-content .stored-queries .queries .sq>span{padding:0 calc(var(--app-pane-padding) / 2)}.db-content .stored-queries .queries .sq:not(.lead):focus,.db-content .stored-queries .queries .sq:not(.lead):hover{background-color:var(--list-item-hover-background)}.db-content .stored-queries .queries .sq.lead{color:#fff;background-color:var(--color-primary-2);padding-left:calc(var(--app-pane-padding) / 2);padding-right:calc(var(--app-pane-padding) / 2);transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}.db-content .stored-queries .queries .sq.lead:focus,.db-content .stored-queries .queries .sq.lead:hover{background-color:var(--color-accent)}.db-content .quick-search .input{width:50%;min-width:600px}@media screen and (max-width: 800px){.db-content .quick-search .input{width:100%;min-width:inherit;padding-top:4vh}}.db-content .quick-search .count{animation:eoFadeInUp var(--app-default-transition-duration);background-color:var(--color-primary-2);border-radius:2px;margin-bottom:4px;padding:calc(var(--app-pane-padding) / 4) var(--app-pane-padding);color:#fff;display:inline-block;cursor:pointer}.db-content .quick-search .count span{padding:0 calc(var(--app-pane-padding) / 4)}.db-content .quick-search .count span.count-total{font-size:var(--font-display)}.db-content .quick-search .count:hover{background-color:var(--color-accent)}.db-content .quick-search.disabled{pointer-events:none;opacity:.3}.db-content .quick-search-results{display:flex;flex-flow:row wrap;width:100%;justify-content:center;margin:0px calc(var(--app-pane-padding) / -2 + 0px)}.db-content .quick-search-results>*{margin-left:calc(var(--app-pane-padding) / 2);margin-right:calc(var(--app-pane-padding) / 2)}.db-content .quick-search-results .group{background:#ffffffb3;padding:calc(var(--app-pane-padding) / 2);margin-bottom:var(--app-pane-padding);opacity:0;animation:eoFadeIn var(--app-default-transition-duration);animation-fill-mode:forwards;border-radius:2px}.db-content .quick-search-results .group h2{margin-top:0;padding-top:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption)}.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .node-line,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .ico,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .spacer{display:none}\n"] }]
110
+ ], template: "<div class=\"db-content\" [ngClass]=\"{centerFocus: (quickSearchResult && quickSearchResult.total > 0) || selectedQuery}\">\n <div class=\"db-center\">\n <div class=\"top\">\n <div class=\"quick-search\" [ngClass]=\"{disabled: selectedQuery}\">\n\n @if (quickSearchResult && quickSearchResult.total !== -1) {\n <div class=\"count\" (click)=\"executeSearch()\">\n @if (quickSearchResult.total) {\n <div>\n <span class=\"count-total\">{{quickSearchResult.total | localeDecimal}}</span>\n <span class=\"label\" translate>eo.quicksearch.hits</span>\n </div>\n } @else {\n <span class=\"label\" translate>eo.quicksearch.reults.empty</span>\n }\n </div>\n }\n\n <div class=\"input\">\n <eo-quick-search (onResult)=\"onQuickSearchResult($event)\" (onInputChange)=\"onQuickSearchInputChange()\"\n #quickSearch></eo-quick-search>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\">\n @if (quickSearchResult && quickSearchResult.total > 0) {\n <div class=\"quick-search-results\">\n @for (key of quickSearchResult.groups | keys; track $index) {\n <div class=\"group\">\n <h2>\n @if (key !== '0') {\n {{key}}\n } @else {\n {{'eo.quicksearch.result.group.global' | translate}}\n }\n </h2>\n\n <eo-tree [tree]=\"tree[key]\" [(ngModel)]=\"selectedQuickSearchResultItem\"\n (onSelected)=\"executeSearch($event.data)\" (expandedNodesChanged)=\"executeSearch($event.data)\"\n [selectionKey]=\"'Enter'\">\n </eo-tree>\n </div>\n }\n </div>\n } @else {\n @if (capabilities.storedqueries && storedQueries.length) {\n <div class=\"stored-queries\">\n @if (selectedQuery) {\n <div class=\"query\">\n <div>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"\n (click)=\"selectStoredQuery(null)\"></eo-icon>\n </div>\n <eo-stored-query [query]=\"selectedQuery\" (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </div>\n } @else {\n <div class=\"queries\" [@listAnimation]=\"storedQueries.length\">\n <a class=\"sq lead\" [routerLink]=\"['/stored-queries']\" translate>eo.view.navigation.storedqueries</a>\n @for (q of storedQueries; track q.id) {\n <div class=\"sq\" (keyup.enter)=\"selectStoredQuery(q)\" tabindex=\"0\">\n <div class=\"icon\">\n <eo-icon class=\"button primary\" (click)=\"onEmitQueryClick($event, q)\"\n [iconSrc]=\"'assets/_default/svg/ic_saved_search.svg'\"\n [iconTitle]=\"('eo.storedquery.run'| translate)\"></eo-icon>\n </div>\n <span (click)=\"selectStoredQuery(q)\">{{q.name}}</span>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: [".db-content{display:block;height:100%;overflow:auto}@media screen and (max-width: 800px){.db-content{flex-flow:column}}.db-content.centerFocus .db-left,.db-content.centerFocus .db-right{opacity:.3}.db-content .db-left{flex:0 1 20%;padding-top:10vh;display:flex;flex-flow:column;align-items:flex-start}.db-content .db-left .info{color:var(--color-primary-2);padding:0 var(--app-pane-padding);margin-bottom:calc(var(--app-pane-padding) * 2);text-decoration:none;cursor:pointer}.db-content .db-left .info:focus,.db-content .db-left .info:hover{color:var(--color-accent)}.db-content .db-left .info:focus eo-icon,.db-content .db-left .info:hover eo-icon{background-color:var(--color-accent)}.db-content .db-left .info>div{display:flex;align-items:center}.db-content .db-left .info eo-icon{border-radius:2px;background-color:var(--color-primary-2);color:#ffffffb3;padding:2px}.db-content .db-left .info .count{font-size:40px;line-height:1em;padding:0 var(--app-pane-padding);text-align:right}.db-content .db-center{flex:1 1 auto;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding) * 2)}.db-content .db-center .top{flex:0 0 30%;box-sizing:border-box;padding-bottom:var(--app-pane-padding);flex-flow:column;display:flex;justify-content:flex-end;align-items:center}.db-content .db-center .bottom{flex:1 1 auto;overflow-y:auto;display:flex;justify-content:center;align-items:baseline}.db-content .db-right{flex:0 0 20%;padding:10vh var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding);box-sizing:border-box;min-width:300px}@media screen and (max-width: 800px){.db-content .db-right{height:40%;padding:0 var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}}.db-content .db-right .lastEdits{display:flex;flex-flow:column;max-height:100%}.db-content .db-right .lastEdits .header{flex:0 0 auto;border-radius:2px;color:#fff;background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding) var(--app-pane-padding) var(--app-pane-padding)}.db-content .db-right .lastEdits .header h2{margin:0;padding:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal)}.db-content .db-right .lastEdits .header .total{font-size:var(--font-caption);opacity:.7}.db-content .db-right .lastEdits .body{flex:1 1 auto;overflow-y:auto}.db-content .db-right .lastEdits .body .item{border-radius:2px;display:flex;flex-flow:row nowrap;color:var(--text-color-caption);padding:calc(var(--app-pane-padding) / 2);margin:calc(var(--app-pane-padding) / 4) 0;align-items:center;background-color:var(--panel-background);text-decoration:none;cursor:pointer}.db-content .db-right .lastEdits .body .item:focus,.db-content .db-right .lastEdits .body .item:hover{background-color:var(--list-item-hover-background)}.db-content .db-right .lastEdits .body .item eo-icon{flex:0 0 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item>div{flex:1 1 auto;padding:0 calc(var(--app-pane-padding) / 2)}.db-content .db-right .lastEdits .body .item .title{font-weight:var(--font-weight-bold)}.db-content .db-right .lastEdits .body .item .modified,.db-content .db-right .lastEdits .body .item .description{font-size:var(--font-hint)}.db-content .stored-queries .query{display:flex;max-height:45vh}.db-content .stored-queries .query>div{background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);margin:0 1px;border-radius:2px 0 0 2px}.db-content .stored-queries .query>div eo-icon{padding:calc(var(--app-pane-padding) / 4);color:var(--text-color-caption)}.db-content .stored-queries .query eo-stored-query{border-radius:0 2px 2px 0;background-color:var(--panel-background);padding:calc(var(--app-pane-padding) / 2);overflow:hidden}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query{display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .title{flex:0}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform{flex:1;overflow:hidden;display:flex;flex-flow:column;height:100%}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .query-form{flex:1;overflow-y:auto}.db-content .stored-queries .query eo-stored-query ::ng-deep .eo-stored-query .qform .actions{flex:0}.db-content .stored-queries .queries{display:flex;flex-flow:row wrap;padding:0 calc(var(--app-pane-padding) / 4)}.db-content .stored-queries .queries .sq{border-radius:2px;padding:calc(var(--app-pane-padding) / 4);margin:0 calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 4) 0;background-color:var(--panel-background);color:var(--text-color-caption);text-decoration:none;cursor:pointer;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;display:flex;flex-flow:row;align-items:center}.db-content .stored-queries .queries .sq .icon>eo-icon.button.primary:hover{background-color:rgba(var(--color-black-rgb),.2);cursor:pointer;color:var(--color-white)}.db-content .stored-queries .queries .sq>span{padding:0 calc(var(--app-pane-padding) / 2)}.db-content .stored-queries .queries .sq:not(.lead):focus,.db-content .stored-queries .queries .sq:not(.lead):hover{background-color:var(--list-item-hover-background)}.db-content .stored-queries .queries .sq.lead{color:#fff;background-color:var(--color-primary-2);padding-left:calc(var(--app-pane-padding) / 2);padding-right:calc(var(--app-pane-padding) / 2);transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}.db-content .stored-queries .queries .sq.lead:focus,.db-content .stored-queries .queries .sq.lead:hover{background-color:var(--color-accent)}.db-content .quick-search .input{width:50%;min-width:600px}@media screen and (max-width: 800px){.db-content .quick-search .input{width:100%;min-width:inherit;padding-top:4vh}}.db-content .quick-search .count{animation:eoFadeInUp var(--app-default-transition-duration);background-color:var(--color-primary-2);border-radius:2px;margin-bottom:4px;padding:calc(var(--app-pane-padding) / 4) var(--app-pane-padding);color:#fff;display:inline-block;cursor:pointer}.db-content .quick-search .count span{padding:0 calc(var(--app-pane-padding) / 4)}.db-content .quick-search .count span.count-total{font-size:var(--font-display)}.db-content .quick-search .count:hover{background-color:var(--color-accent)}.db-content .quick-search.disabled{pointer-events:none;opacity:.3}.db-content .quick-search-results{display:flex;flex-flow:row wrap;width:100%;justify-content:center;margin:0px calc(var(--app-pane-padding) / -2 + 0px)}.db-content .quick-search-results>*{margin-left:calc(var(--app-pane-padding) / 2);margin-right:calc(var(--app-pane-padding) / 2)}.db-content .quick-search-results .group{background:#ffffffb3;padding:calc(var(--app-pane-padding) / 2);margin-bottom:var(--app-pane-padding);opacity:0;animation:eoFadeIn var(--app-default-transition-duration);animation-fill-mode:forwards;border-radius:2px}.db-content .quick-search-results .group h2{margin-top:0;padding-top:0;font-size:var(--font-subhead);font-weight:var(--font-weight-normal);color:var(--text-color-caption)}.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .node-line,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .ico,.db-content .quick-search-results .group ::ng-deep eo-tree .tree-node .spacer{display:none}\n"] }]
114
111
  }], ctorParameters: () => [{ type: i1.UserService }, { type: i2.PageTitleService }, { type: i3.Router }, { type: i1.Config }, { type: i1.CapabilitiesService }, { type: i1.StoredQueriesService }], propDecorators: { quickSearchEl: [{
115
112
  type: ViewChild,
116
113
  args: ['quickSearch']
@@ -120,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
120
117
  type: HostListener,
121
118
  args: ['window:keyup', ['$event']]
122
119
  }] } });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9zZWFyY2gtd2lkZ2V0L3NlYXJjaC13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvc2VhcmNoLXdpZGdldC9zZWFyY2gtd2lkZ2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFVLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS2hGLE9BQU8sRUFBZ0gsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRWxKLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFXNUQsSUFBTSxxQkFBcUIsR0FBM0IsTUFBTSxxQkFBcUI7SUFtQmhDLEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQW1CLFdBQXdCLEVBQ2pDLFlBQThCLEVBQzlCLE1BQWMsRUFDZCxNQUFjLEVBQ2QsaUJBQXNDLEVBQ3RDLG9CQUEwQztRQUxqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNqQyxpQkFBWSxHQUFaLFlBQVksQ0FBa0I7UUFDOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FB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SSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9JLENBQUM7SUFDSCxDQUFDOzhHQXBHVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiwwUUNwQmxDLHdyR0FvRU0sb2xURHBEUTtZQUNWLGFBQWE7U0FDZDs7QUFFVSxxQkFBcUI7SUFUakMsWUFBWSxFQUFFO0dBU0YscUJBQXFCLENBcUdqQzs7MkZBckdZLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxrQkFBa0IsY0FHaEI7d0JBQ1YsYUFBYTtxQkFDZDs4TkFnQnlCLGFBQWE7c0JBQXRDLFNBQVM7dUJBQUMsYUFBYTtnQkFFeEIsWUFBWTtzQkFEWCxLQUFLO2dCQUlOLEtBQUs7c0JBREosWUFBWTt1QkFBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1RyZWVOb2RlfSBmcm9tICcuLi8uLi8uLi8uLi9lby1mcmFtZXdvcmsvdHJlZS90cmVlLmNvbXBvbmVudC5pbnRlcmZhY2UnO1xuaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkLCBIb3N0TGlzdGVuZXIsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyLCBOYXZpZ2F0aW9uRXh0cmFzfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQYWdlVGl0bGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZS90aXRsZS9wYWdlLXRpdGxlLnNlcnZpY2UnO1xuaW1wb3J0IHtRdWlja1NlYXJjaENvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrL3F1aWNrLXNlYXJjaC9xdWljay1zZWFyY2gvcXVpY2stc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQge1F1aWNrU2VhcmNoUmVzdWx0fSBmcm9tICcuLi8uLi8uLi8uLi9lby1mcmFtZXdvcmsvcXVpY2stc2VhcmNoL3F1aWNrLXNlYXJjaC9xdWljay1zZWFyY2gtcmVzdWx0LmludGVyZmFjZSc7XG5pbXBvcnQge1VzZXJTZXJ2aWNlLCBDYXBhYmlsaXRpZXMsIFN0b3JlZFF1ZXJ5LCBFb1VzZXIsIENvbmZpZywgT2JqZWN0VHlwZSwgQ2FwYWJpbGl0aWVzU2VydmljZSwgU3RvcmVkUXVlcmllc1NlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtJV2lkZ2V0Q29tcG9uZW50fSBmcm9tICdAeXV1dmlzL3dpZGdldC1ncmlkJztcbmltcG9ydCB7bGlzdEFuaW1hdGlvbn0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrL2FuaW1hdGlvbnMvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tc2VhcmNoLXdpZGdldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLXdpZGdldC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgbGlzdEFuaW1hdGlvblxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaFdpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgSVdpZGdldENvbXBvbmVudCB7XG5cbiAgY2FwYWJpbGl0aWVzOiBDYXBhYmlsaXRpZXM7XG4gIHN0b3JlZFF1ZXJpZXM6IFN0b3JlZFF1ZXJ5W10gPSBbXTtcbiAgc2VsZWN0ZWRRdWVyeTogU3RvcmVkUXVlcnk7XG4gIHF1aWNrU2VhcmNoUmVzdWx0OiBRdWlja1NlYXJjaFJlc3VsdDtcbiAgc2VsZWN0ZWRRdWlja1NlYXJjaFJlc3VsdEl0ZW0gPSB7XG4gICAgaW5kZXg6IC0xLFxuICAgIG5hbWU6IG51bGxcbiAgfTtcbiAgdHJlZSA9IHt9O1xuICB1c2VyOiBFb1VzZXI7XG4gIGJhY2tncm91bmRJbWFnZTogc3RyaW5nO1xuXG4gIEBWaWV3Q2hpbGQoJ3F1aWNrU2VhcmNoJykgcXVpY2tTZWFyY2hFbDogUXVpY2tTZWFyY2hDb21wb25lbnQ7XG4gIEBJbnB1dCgpXG4gIHdpZGdldENvbmZpZzogYW55O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cCcsIFsnJGV2ZW50J10pXG4gIG9uS2V5KGV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LndoaWNoID09PSAyNykge1xuICAgICAgdGhpcy5zZWxlY3RTdG9yZWRRdWVyeShudWxsKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGl0bGVTZXJ2aWNlOiBQYWdlVGl0bGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZyxcbiAgICBwcml2YXRlIGNhcGFiaWxpdHlTZXJ2aWNlOiBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmVkUXVlcmllc1NlcnZpY2U6IFN0b3JlZFF1ZXJpZXNTZXJ2aWNlKSB7XG4gICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0RGVmYXVsdFRpdGxlKCk7XG4gICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy5jb25maWcuZ2V0RGFzaGJvYXJkQmFja2dyb3VuZEltYWdlKCl9KWA7XG4gIH1cbiAgc2VsZWN0U3RvcmVkUXVlcnkocTogU3RvcmVkUXVlcnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkUXVlcnkgPSBxO1xuICB9XG5cbiAgLy8gdXNlciBjaGFuZ2VkIGlucHV0IG9mIHF1aWNrU2VhcmNoIGNvbXBvbmVudFxuICBvblF1aWNrU2VhcmNoSW5wdXRDaGFuZ2UodGVybSkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSBudWxsO1xuICB9XG5cbiAgLy8gcXVpY2tTZWFyY2ggY29tcG9uZW50IGlzIHJldHVybmluZyByZXN1bHRzXG4gIG9uUXVpY2tTZWFyY2hSZXN1bHQocmVzdWx0OiBRdWlja1NlYXJjaFJlc3VsdCkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSByZXN1bHQ7XG4gICAgT2JqZWN0LmtleXModGhpcy5xdWlja1NlYXJjaFJlc3VsdC5ncm91cHMpLm1hcChrZXkgPT4gKHRoaXMudHJlZVtrZXldID0gdGhpcy5nZXRUcmVlTm9kZXMoa2V5KSkpO1xuICB9XG5cbiAgb25TdG9yZWRRdWVyeUxvYWRlZCgpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7b3V0bGV0czoge21vZGFsOiAnc2VhcmNoJ319XSk7XG4gIH1cblxuICBvblN0b3JlZFF1ZXJ5RXhlY3V0ZShldnQpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIGNvbnN0IHVyaVBhcmFtID0gZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGV2dC5xdWVyeUpzb24pKTtcbiAgICBjb25zdCB1cmlQYXJhbVF1ZXJ5OiBOYXZpZ2F0aW9uRXh0cmFzID0ge3F1ZXJ5UGFyYW1zOiB7J3F1ZXJ5JzogdXJpUGFyYW19fTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9yZXN1bHQnXSwgdXJpUGFyYW1RdWVyeSk7XG4gIH1cblxuICBleGVjdXRlU2VhcmNoKG9iamVjdFR5cGU/OiBPYmplY3RUeXBlKSB7XG4gICAgdGhpcy5xdWlja1NlYXJjaEVsLmV4ZWN1dGVTZWFyY2gob2JqZWN0VHlwZSk7XG4gIH1cblxuICBnZXRUcmVlTm9kZXMoa2V5KTogVHJlZU5vZGVbXSB7XG4gICAgcmV0dXJuIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQuZ3JvdXBzW2tleV0ubWFwKGdyb3VwID0+ICh7XG4gICAgICBpZDogZ3JvdXAuZGF0YS5pZCxcbiAgICAgIG5hbWU6IGdyb3VwLmxhYmVsLFxuICAgICAgc2VsZWN0YWJsZTogdHJ1ZSxcbiAgICAgIGRhdGE6IGdyb3VwLmRhdGEsXG4gICAgICBiYWRnZXM6IFt7dmFsdWU6IGdyb3VwLmNvdW50fV1cbiAgICB9KSk7XG4gIH1cblxuICB0cmFja0J5Rm4oaXRlbSkge1xuICAgIHJldHVybiBpdGVtLmlkO1xuICB9XG4gIFxuICBvbkVtaXRRdWVyeUNsaWNrKGV2ZW50LCBxKSB7ICAgIFxuICAgIGRlbGV0ZSBxLmZpZWxkcztcbiAgICBjb25zdCB1cmlQYXJhbSA9IGVuY29kZVVSSUNvbXBvbmVudChVdGlscy5mb3JtRGF0YVN0cmluZ2lmeShxLmdldFF1ZXJ5SnNvbigpKSk7XG4gICAgY29uc3QgdXJpUGFyYW1RdWVyeTogTmF2aWdhdGlvbkV4dHJhcyA9IHtxdWVyeVBhcmFtczogeydxdWVyeSc6IHVyaVBhcmFtfX07XG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHVyaVBhcmFtUXVlcnkucXVlcnlQYXJhbXMpLnRvU3RyaW5nKCk7XG4gICAgY29uc3QgdXJsID0gd2luZG93LmxvY2F0aW9uLmhyZWYuc3BsaXQoJy9kYXNoYm9hcmQnKVswXSArICcvcmVzdWx0PycgKyBxdWVyeVBhcmFtcztcbiAgICB3aW5kb3cub3Blbih1cmwsIChldmVudCAmJiBldmVudD8uY3RybEtleSkgPyAnX2JsYW5rJyA6ICdfc2VsZicpOyAgXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVzZXJTZXJ2aWNlLnVzZXIkXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUodXNlciA9PiB7XG4gICAgICAgIHRoaXMudXNlciA9IHVzZXI7XG4gICAgICB9KTtcbiAgICB0aGlzLmNhcGFiaWxpdGllcyA9IHRoaXMuY2FwYWJpbGl0eVNlcnZpY2UuZ2V0Q2FwYWJpbGl0aWVzKCk7XG4gICAgaWYgKHRoaXMuY2FwYWJpbGl0aWVzLnN0b3JlZHF1ZXJpZXMpIHtcbiAgICAgIHRoaXMuc3RvcmVkUXVlcmllc1NlcnZpY2UuZ2V0U3RvcmVkUXVlcmllcyQoKVxuICAgICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnN1YnNjcmliZShxdWVyaWVzU3Vic2NyaXB0aW9uID0+IHRoaXMuc3RvcmVkUXVlcmllcyA9IHF1ZXJpZXNTdWJzY3JpcHRpb24ucXVlcmllcy5maWx0ZXIocSA9PiBxLmZhdm9yaXRlKS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ25hbWUnKSkpO1xuICAgIH1cbiAgfVxufVxuXG5cbiIsIjxkaXYgY2xhc3M9XCJkYi1jb250ZW50XCIgW25nQ2xhc3NdPVwie2NlbnRlckZvY3VzOiAocXVpY2tTZWFyY2hSZXN1bHQgJiYgcXVpY2tTZWFyY2hSZXN1bHQudG90YWwgPiAwKSB8fCBzZWxlY3RlZFF1ZXJ5fVwiPlxuICA8ZGl2IGNsYXNzPVwiZGItY2VudGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cInRvcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInF1aWNrLXNlYXJjaFwiIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogc2VsZWN0ZWRRdWVyeX1cIj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY291bnRcIiAqbmdJZj1cInF1aWNrU2VhcmNoUmVzdWx0ICYmIHF1aWNrU2VhcmNoUmVzdWx0LnRvdGFsICE9PSAtMVwiIChjbGljayk9XCJleGVjdXRlU2VhcmNoKClcIj5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwicXVpY2tTZWFyY2hSZXN1bHQudG90YWxcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnQtdG90YWxcIj57e3F1aWNrU2VhcmNoUmVzdWx0LnRvdGFsIHwgbG9jYWxlRGVjaW1hbH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbFwiIHRyYW5zbGF0ZT5lby5xdWlja3NlYXJjaC5oaXRzPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGFiZWxcIiAqbmdJZj1cIiFxdWlja1NlYXJjaFJlc3VsdC50b3RhbFwiIHRyYW5zbGF0ZT5lby5xdWlja3NlYXJjaC5yZXVsdHMuZW1wdHk8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dFwiPlxuICAgICAgICAgIDxlby1xdWljay1zZWFyY2ggKG9uUmVzdWx0KT1cIm9uUXVpY2tTZWFyY2hSZXN1bHQoJGV2ZW50KVwiIChvbklucHV0Q2hhbmdlKT1cIm9uUXVpY2tTZWFyY2hJbnB1dENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICNxdWlja1NlYXJjaD48L2VvLXF1aWNrLXNlYXJjaD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJib3R0b21cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJxdWljay1zZWFyY2gtcmVzdWx0c1wiICpuZ0lmPVwicXVpY2tTZWFyY2hSZXN1bHQgJiYgcXVpY2tTZWFyY2hSZXN1bHQudG90YWwgPiAwOyBlbHNlIHN0b3JlZHF1ZXJpZXNcIj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JvdXBcIiAqbmdGb3I9XCJsZXQga2V5IG9mIHF1aWNrU2VhcmNoUmVzdWx0Lmdyb3VwcyB8IGtleXM7IGluZGV4IGFzIGlcIj5cbiAgICAgICAgICA8aDIgKm5nSWY9XCJrZXkgIT09ICcwJzsgZWxzZSBtYWluZ3JvdXBcIj57e2tleX19PC9oMj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI21haW5ncm91cD5cbiAgICAgICAgICAgIDxoMiB0cmFuc2xhdGU+ZW8ucXVpY2tzZWFyY2gucmVzdWx0Lmdyb3VwLmdsb2JhbDwvaDI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgIDxlby10cmVlIFt0cmVlXT1cInRyZWVba2V5XVwiIFsobmdNb2RlbCldPVwic2VsZWN0ZWRRdWlja1NlYXJjaFJlc3VsdEl0ZW1cIlxuICAgICAgICAgICAgKG9uU2VsZWN0ZWQpPVwiZXhlY3V0ZVNlYXJjaCgkZXZlbnQuZGF0YSlcIiAoZXhwYW5kZWROb2Rlc0NoYW5nZWQpPVwiZXhlY3V0ZVNlYXJjaCgkZXZlbnQuZGF0YSlcIlxuICAgICAgICAgICAgW3NlbGVjdGlvbktleV09XCInRW50ZXInXCI+XG4gICAgICAgICAgPC9lby10cmVlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8bmctdGVtcGxhdGUgI3N0b3JlZHF1ZXJpZXM+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInN0b3JlZC1xdWVyaWVzXCIgKm5nSWY9XCJjYXBhYmlsaXRpZXMuc3RvcmVkcXVlcmllcyAmJiBzdG9yZWRRdWVyaWVzLmxlbmd0aFwiPlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInF1ZXJ5XCIgKm5nSWY9XCJzZWxlY3RlZFF1ZXJ5OyBlbHNlIHF1ZXJ5bGlzdFwiPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPGVvLWljb24gY2xhc3M9XCJidXR0b25cIiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19jbGVhci5zdmcnXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0U3RvcmVkUXVlcnkobnVsbClcIj48L2VvLWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxlby1zdG9yZWQtcXVlcnkgW3F1ZXJ5XT1cInNlbGVjdGVkUXVlcnlcIiAob25RdWVyeUxvYWRlZCk9XCJvblN0b3JlZFF1ZXJ5TG9hZGVkKClcIlxuICAgICAgICAgICAgICAob25RdWVyeUV4ZWN1dGUpPVwib25TdG9yZWRRdWVyeUV4ZWN1dGUoJGV2ZW50KVwiPjwvZW8tc3RvcmVkLXF1ZXJ5PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNxdWVyeWxpc3Q+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVlcmllc1wiIFtAbGlzdEFuaW1hdGlvbl09XCJzdG9yZWRRdWVyaWVzLmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8YSBjbGFzcz1cInNxIGxlYWRcIiBbcm91dGVyTGlua109XCJbJy9zdG9yZWQtcXVlcmllcyddXCIgdHJhbnNsYXRlPmVvLnZpZXcubmF2aWdhdGlvbi5zdG9yZWRxdWVyaWVzPC9hPlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcVwiICpuZ0Zvcj1cImxldCBxIG9mIHN0b3JlZFF1ZXJpZXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiIFxuICAgICAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJzZWxlY3RTdG9yZWRRdWVyeShxKVwiIHRhYmluZGV4PVwiMFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uXCI+XG4gICAgICAgICAgICAgICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiBwcmltYXJ5XCIgKGNsaWNrKT1cIm9uRW1pdFF1ZXJ5Q2xpY2soJGV2ZW50LCBxKVwiXG4gICAgICAgICAgICAgICAgICAgIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX3NhdmVkX3NlYXJjaC5zdmcnXCJcbiAgICAgICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCIoJ2VvLnN0b3JlZHF1ZXJ5LnJ1bid8IHRyYW5zbGF0ZSlcIj48L2VvLWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHNwYW4gKGNsaWNrKT1cInNlbGVjdFN0b3JlZFF1ZXJ5KHEpXCI+e3txLm5hbWV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+Il19
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9zZWFyY2gtd2lkZ2V0L3NlYXJjaC13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvc2VhcmNoLXdpZGdldC9zZWFyY2gtd2lkZ2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFVLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS2hGLE9BQU8sRUFBZ0gsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRWxKLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFXNUQsSUFBTSxxQkFBcUIsR0FBM0IsTUFBTSxxQkFBcUI7SUFtQmhDLEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQW1CLFdBQXdCLEVBQ2pDLFlBQThCLEVBQzlCLE1BQWMsRUFDZCxNQUFjLEVBQ2QsaUJBQXNDLEVBQ3RDLG9CQUEwQztRQUxqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNqQyxpQkFBWSxHQUFaLFlBQVksQ0FBa0I7UUFDOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FB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Qzs4R0FoR1UscUJBQXFCO2tHQUFyQixxQkFBcUIsMFFDcEJsQyxrM0dBOEVBLG0zU0Q5RGM7WUFDVixhQUFhO1NBQ2Q7O0FBRVUscUJBQXFCO0lBVGpDLFlBQVksRUFBRTtHQVNGLHFCQUFxQixDQWlHakM7OzJGQWpHWSxxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCO3dCQUNWLGFBQWE7cUJBQ2Q7OE5BZ0J5QixhQUFhO3NCQUF0QyxTQUFTO3VCQUFDLGFBQWE7Z0JBRXhCLFlBQVk7c0JBRFgsS0FBSztnQkFJTixLQUFLO3NCQURKLFlBQVk7dUJBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUcmVlTm9kZX0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrL3RyZWUvdHJlZS5jb21wb25lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgSG9zdExpc3RlbmVyLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlciwgTmF2aWdhdGlvbkV4dHJhc30gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7UGFnZVRpdGxlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvdGl0bGUvcGFnZS10aXRsZS5zZXJ2aWNlJztcbmltcG9ydCB7UXVpY2tTZWFyY2hDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2VvLWZyYW1ld29yay9xdWljay1zZWFyY2gvcXVpY2stc2VhcmNoL3F1aWNrLXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHtRdWlja1NlYXJjaFJlc3VsdH0gZnJvbSAnLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrL3F1aWNrLXNlYXJjaC9xdWljay1zZWFyY2gvcXVpY2stc2VhcmNoLXJlc3VsdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHtVc2VyU2VydmljZSwgQ2FwYWJpbGl0aWVzLCBTdG9yZWRRdWVyeSwgRW9Vc2VyLCBDb25maWcsIE9iamVjdFR5cGUsIENhcGFiaWxpdGllc1NlcnZpY2UsIFN0b3JlZFF1ZXJpZXNTZXJ2aWNlLCBVdGlsc30gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudH0gZnJvbSAnQHl1dXZpcy93aWRnZXQtZ3JpZCc7XG5pbXBvcnQge2xpc3RBbmltYXRpb259IGZyb20gJy4uLy4uLy4uLy4uL2VvLWZyYW1ld29yay9hbmltYXRpb25zL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXNlYXJjaC13aWRnZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLXdpZGdldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC13aWRnZXQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIGxpc3RBbmltYXRpb25cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIElXaWRnZXRDb21wb25lbnQge1xuXG4gIGNhcGFiaWxpdGllczogQ2FwYWJpbGl0aWVzO1xuICBzdG9yZWRRdWVyaWVzOiBTdG9yZWRRdWVyeVtdID0gW107XG4gIHNlbGVjdGVkUXVlcnk6IFN0b3JlZFF1ZXJ5O1xuICBxdWlja1NlYXJjaFJlc3VsdDogUXVpY2tTZWFyY2hSZXN1bHQ7XG4gIHNlbGVjdGVkUXVpY2tTZWFyY2hSZXN1bHRJdGVtID0ge1xuICAgIGluZGV4OiAtMSxcbiAgICBuYW1lOiBudWxsXG4gIH07XG4gIHRyZWUgPSB7fTtcbiAgdXNlcjogRW9Vc2VyO1xuICBiYWNrZ3JvdW5kSW1hZ2U6IHN0cmluZztcblxuICBAVmlld0NoaWxkKCdxdWlja1NlYXJjaCcpIHF1aWNrU2VhcmNoRWw6IFF1aWNrU2VhcmNoQ29tcG9uZW50O1xuICBASW5wdXQoKVxuICB3aWRnZXRDb25maWc6IGFueTtcblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleShldmVudCkge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gMjcpIHtcbiAgICAgIHRoaXMuc2VsZWN0U3RvcmVkUXVlcnkobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogUGFnZVRpdGxlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWcsXG4gICAgcHJpdmF0ZSBjYXBhYmlsaXR5U2VydmljZTogQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgICBwcml2YXRlIHN0b3JlZFF1ZXJpZXNTZXJ2aWNlOiBTdG9yZWRRdWVyaWVzU2VydmljZSkge1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldERlZmF1bHRUaXRsZSgpO1xuICAgIHRoaXMuYmFja2dyb3VuZEltYWdlID0gYHVybCgke3RoaXMuY29uZmlnLmdldERhc2hib2FyZEJhY2tncm91bmRJbWFnZSgpfSlgO1xuICB9XG4gIHNlbGVjdFN0b3JlZFF1ZXJ5KHE6IFN0b3JlZFF1ZXJ5KSB7XG4gICAgdGhpcy5zZWxlY3RlZFF1ZXJ5ID0gcTtcbiAgfVxuXG4gIC8vIHVzZXIgY2hhbmdlZCBpbnB1dCBvZiBxdWlja1NlYXJjaCBjb21wb25lbnRcbiAgb25RdWlja1NlYXJjaElucHV0Q2hhbmdlKCkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSBudWxsO1xuICB9XG5cbiAgLy8gcXVpY2tTZWFyY2ggY29tcG9uZW50IGlzIHJldHVybmluZyByZXN1bHRzXG4gIG9uUXVpY2tTZWFyY2hSZXN1bHQocmVzdWx0OiBRdWlja1NlYXJjaFJlc3VsdCkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSByZXN1bHQ7XG4gICAgT2JqZWN0LmtleXModGhpcy5xdWlja1NlYXJjaFJlc3VsdC5ncm91cHMpLm1hcChrZXkgPT4gKHRoaXMudHJlZVtrZXldID0gdGhpcy5nZXRUcmVlTm9kZXMoa2V5KSkpO1xuICB9XG5cbiAgb25TdG9yZWRRdWVyeUxvYWRlZCgpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7b3V0bGV0czoge21vZGFsOiAnc2VhcmNoJ319XSk7XG4gIH1cblxuICBvblN0b3JlZFF1ZXJ5RXhlY3V0ZShldnQpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIGNvbnN0IHVyaVBhcmFtID0gZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGV2dC5xdWVyeUpzb24pKTtcbiAgICBjb25zdCB1cmlQYXJhbVF1ZXJ5OiBOYXZpZ2F0aW9uRXh0cmFzID0ge3F1ZXJ5UGFyYW1zOiB7J3F1ZXJ5JzogdXJpUGFyYW19fTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9yZXN1bHQnXSwgdXJpUGFyYW1RdWVyeSk7XG4gIH1cblxuICBleGVjdXRlU2VhcmNoKG9iamVjdFR5cGU/OiBPYmplY3RUeXBlKSB7XG4gICAgdGhpcy5xdWlja1NlYXJjaEVsLmV4ZWN1dGVTZWFyY2gob2JqZWN0VHlwZSk7XG4gIH1cblxuICBnZXRUcmVlTm9kZXMoa2V5KTogVHJlZU5vZGVbXSB7XG4gICAgcmV0dXJuIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQuZ3JvdXBzW2tleV0ubWFwKGdyb3VwID0+ICh7XG4gICAgICBpZDogZ3JvdXAuZGF0YS5pZCxcbiAgICAgIG5hbWU6IGdyb3VwLmxhYmVsLFxuICAgICAgc2VsZWN0YWJsZTogdHJ1ZSxcbiAgICAgIGRhdGE6IGdyb3VwLmRhdGEsXG4gICAgICBiYWRnZXM6IFt7dmFsdWU6IGdyb3VwLmNvdW50fV1cbiAgICB9KSk7XG4gIH1cblxuICBvbkVtaXRRdWVyeUNsaWNrKGV2ZW50LCBxKSB7XG4gICAgZGVsZXRlIHEuZmllbGRzO1xuICAgIGNvbnN0IHVyaVBhcmFtID0gZW5jb2RlVVJJQ29tcG9uZW50KFV0aWxzLmZvcm1EYXRhU3RyaW5naWZ5KHEuZ2V0UXVlcnlKc29uKCkpKTtcbiAgICBjb25zdCB1cmlQYXJhbVF1ZXJ5OiBOYXZpZ2F0aW9uRXh0cmFzID0ge3F1ZXJ5UGFyYW1zOiB7J3F1ZXJ5JzogdXJpUGFyYW19fTtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXModXJpUGFyYW1RdWVyeS5xdWVyeVBhcmFtcykudG9TdHJpbmcoKTtcbiAgICBjb25zdCB1cmwgPSB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnL2Rhc2hib2FyZCcpWzBdICsgJy9yZXN1bHQ/JyArIHF1ZXJ5UGFyYW1zO1xuICAgIHdpbmRvdy5vcGVuKHVybCwgKGV2ZW50ICYmIGV2ZW50Py5jdHJsS2V5KSA/ICdfYmxhbmsnIDogJ19zZWxmJyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVzZXJTZXJ2aWNlLnVzZXIkXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUodXNlciA9PiB7XG4gICAgICAgIHRoaXMudXNlciA9IHVzZXI7XG4gICAgICB9KTtcbiAgICB0aGlzLmNhcGFiaWxpdGllcyA9IHRoaXMuY2FwYWJpbGl0eVNlcnZpY2UuZ2V0Q2FwYWJpbGl0aWVzKCk7XG4gICAgaWYgKHRoaXMuY2FwYWJpbGl0aWVzLnN0b3JlZHF1ZXJpZXMpIHtcbiAgICAgIHRoaXMuc3RvcmVkUXVlcmllc1NlcnZpY2UuZ2V0U3RvcmVkUXVlcmllcyQoKVxuICAgICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnN1YnNjcmliZShxdWVyaWVzU3Vic2NyaXB0aW9uID0+IHRoaXMuc3RvcmVkUXVlcmllcyA9IHF1ZXJpZXNTdWJzY3JpcHRpb24ucXVlcmllcy5maWx0ZXIocSA9PiBxLmZhdm9yaXRlKS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ25hbWUnKSkpO1xuICAgIH1cbiAgfVxufVxuXG5cbiIsIjxkaXYgY2xhc3M9XCJkYi1jb250ZW50XCIgW25nQ2xhc3NdPVwie2NlbnRlckZvY3VzOiAocXVpY2tTZWFyY2hSZXN1bHQgJiYgcXVpY2tTZWFyY2hSZXN1bHQudG90YWwgPiAwKSB8fCBzZWxlY3RlZFF1ZXJ5fVwiPlxuICA8ZGl2IGNsYXNzPVwiZGItY2VudGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cInRvcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInF1aWNrLXNlYXJjaFwiIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogc2VsZWN0ZWRRdWVyeX1cIj5cblxuICAgICAgICBAaWYgKHF1aWNrU2VhcmNoUmVzdWx0ICYmIHF1aWNrU2VhcmNoUmVzdWx0LnRvdGFsICE9PSAtMSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb3VudFwiIChjbGljayk9XCJleGVjdXRlU2VhcmNoKClcIj5cbiAgICAgICAgICAgIEBpZiAocXVpY2tTZWFyY2hSZXN1bHQudG90YWwpIHtcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvdW50LXRvdGFsXCI+e3txdWlja1NlYXJjaFJlc3VsdC50b3RhbCB8IGxvY2FsZURlY2ltYWx9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImxhYmVsXCIgdHJhbnNsYXRlPmVvLnF1aWNrc2VhcmNoLmhpdHM8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGFiZWxcIiB0cmFuc2xhdGU+ZW8ucXVpY2tzZWFyY2gucmV1bHRzLmVtcHR5PC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0XCI+XG4gICAgICAgICAgPGVvLXF1aWNrLXNlYXJjaCAob25SZXN1bHQpPVwib25RdWlja1NlYXJjaFJlc3VsdCgkZXZlbnQpXCIgKG9uSW5wdXRDaGFuZ2UpPVwib25RdWlja1NlYXJjaElucHV0Q2hhbmdlKClcIlxuICAgICAgICAgICAgI3F1aWNrU2VhcmNoPjwvZW8tcXVpY2stc2VhcmNoPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImJvdHRvbVwiPlxuICAgICAgQGlmIChxdWlja1NlYXJjaFJlc3VsdCAmJiBxdWlja1NlYXJjaFJlc3VsdC50b3RhbCA+IDApIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInF1aWNrLXNlYXJjaC1yZXN1bHRzXCI+XG4gICAgICAgICAgQGZvciAoa2V5IG9mIHF1aWNrU2VhcmNoUmVzdWx0Lmdyb3VwcyB8IGtleXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyb3VwXCI+XG4gICAgICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgICAgICBAaWYgKGtleSAhPT0gJzAnKSB7XG4gICAgICAgICAgICAgICAgICB7e2tleX19XG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICB7eydlby5xdWlja3NlYXJjaC5yZXN1bHQuZ3JvdXAuZ2xvYmFsJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2gyPlxuXG4gICAgICAgICAgICAgIDxlby10cmVlIFt0cmVlXT1cInRyZWVba2V5XVwiIFsobmdNb2RlbCldPVwic2VsZWN0ZWRRdWlja1NlYXJjaFJlc3VsdEl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICAob25TZWxlY3RlZCk9XCJleGVjdXRlU2VhcmNoKCRldmVudC5kYXRhKVwiIChleHBhbmRlZE5vZGVzQ2hhbmdlZCk9XCJleGVjdXRlU2VhcmNoKCRldmVudC5kYXRhKVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3Rpb25LZXldPVwiJ0VudGVyJ1wiPlxuICAgICAgICAgICAgICA8L2VvLXRyZWU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpZiAoY2FwYWJpbGl0aWVzLnN0b3JlZHF1ZXJpZXMgJiYgc3RvcmVkUXVlcmllcy5sZW5ndGgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RvcmVkLXF1ZXJpZXNcIj5cbiAgICAgICAgICAgIEBpZiAoc2VsZWN0ZWRRdWVyeSkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVlcnlcIj5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgPGVvLWljb24gY2xhc3M9XCJidXR0b25cIiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19jbGVhci5zdmcnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RTdG9yZWRRdWVyeShudWxsKVwiPjwvZW8taWNvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZW8tc3RvcmVkLXF1ZXJ5IFtxdWVyeV09XCJzZWxlY3RlZFF1ZXJ5XCIgKG9uUXVlcnlMb2FkZWQpPVwib25TdG9yZWRRdWVyeUxvYWRlZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvblF1ZXJ5RXhlY3V0ZSk9XCJvblN0b3JlZFF1ZXJ5RXhlY3V0ZSgkZXZlbnQpXCI+PC9lby1zdG9yZWQtcXVlcnk+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJxdWVyaWVzXCIgW0BsaXN0QW5pbWF0aW9uXT1cInN0b3JlZFF1ZXJpZXMubGVuZ3RoXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJzcSBsZWFkXCIgW3JvdXRlckxpbmtdPVwiWycvc3RvcmVkLXF1ZXJpZXMnXVwiIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24uc3RvcmVkcXVlcmllczwvYT5cbiAgICAgICAgICAgICAgICBAZm9yIChxIG9mIHN0b3JlZFF1ZXJpZXM7IHRyYWNrIHEuaWQpIHtcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcVwiIChrZXl1cC5lbnRlcik9XCJzZWxlY3RTdG9yZWRRdWVyeShxKVwiIHRhYmluZGV4PVwiMFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxlby1pY29uIGNsYXNzPVwiYnV0dG9uIHByaW1hcnlcIiAoY2xpY2spPVwib25FbWl0UXVlcnlDbGljaygkZXZlbnQsIHEpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19zYXZlZF9zZWFyY2guc3ZnJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCIoJ2VvLnN0b3JlZHF1ZXJ5LnJ1bid8IHRyYW5zbGF0ZSlcIj48L2VvLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0U3RvcmVkUXVlcnkocSlcIj57e3EubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,74 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import { WidgetGridUtils } from '@yuuvis/widget-grid';
4
+ import { Validators } from '@angular/forms';
5
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
6
+ import { debounceTime } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/forms";
9
+ import * as i2 from "@yuuvis/widget-grid";
10
+ import * as i3 from "@ngx-translate/core";
11
+ import * as i4 from "../../../../../eo-framework/form-elements/form-input/form-input.component";
12
+ import * as i5 from "../../../../../eo-framework/form-elements/string/string.component";
13
+ import * as i6 from "../todo-widget.component";
14
+ let TodoSetupComponent = class TodoSetupComponent {
15
+ set widgetConfig(wc) {
16
+ this._widgetConfig = wc;
17
+ this.setupForm.patchValue({
18
+ headline: wc ? wc.headline : '',
19
+ });
20
+ }
21
+ get widgetConfig() {
22
+ return this._widgetConfig;
23
+ }
24
+ constructor(fb, widgetGridRegistry) {
25
+ this.fb = fb;
26
+ this.widgetGridRegistry = widgetGridRegistry;
27
+ this.subscriptions = [];
28
+ this.labels = {};
29
+ this.widgetConfigChange = new EventEmitter();
30
+ this.widgetConfigStateChange = new EventEmitter();
31
+ this.setupForm = this.fb.group({
32
+ headline: ['', [Validators.maxLength(50)]]
33
+ });
34
+ this.setupForm.valueChanges.pipe(debounceTime(1000), untilDestroyed(this)).subscribe((_) => {
35
+ this.setWidgetConfig();
36
+ this.setupForm.statusChanges.pipe(untilDestroyed(this)).subscribe((v) => {
37
+ this.widgetConfigStateChange.emit(v);
38
+ });
39
+ });
40
+ this.subscriptions.push(this.widgetGridRegistry.labels$.subscribe({
41
+ next: (labels) => (this.labels = labels),
42
+ }));
43
+ }
44
+ setWidgetConfig() {
45
+ if (this.setupForm.valid) {
46
+ this._widgetConfig = {
47
+ id: this._widgetConfig?.id || WidgetGridUtils.uuid(),
48
+ todos: this._widgetConfig?.todos || [],
49
+ ...this.setupForm.value,
50
+ };
51
+ this.widgetConfigChange.emit(this._widgetConfig);
52
+ }
53
+ }
54
+ ngOnInit() {
55
+ this.setWidgetConfig();
56
+ }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TodoSetupComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.WidgetGridRegistry }], target: i0.ɵɵFactoryTarget.Component }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: TodoSetupComponent, selector: "eo-todo-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange", widgetConfigStateChange: "widgetConfigStateChange" }, ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input tabindex=\"0\" [label]=\"'eo.workspace.widget.setup.title' | translate\" [skipToggle]=\"true\">\n <eo-string autocomplete=\"true\" formControlName=\"headline\"></eo-string>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('headline').errors) {\n <div class=\"err-msg\" [translateParams]=\"{maxlength: 50}\" translate>\n eo.form.property.maxlength\n </div>\n }\n </form>\n</div>\n<div class=\"preview\">\n <eo-todo-widget [widgetConfig]=\"widgetConfig\"></eo-todo-widget>\n</div>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding);pointer-events:none}:host .preview eo-todo-widget{border:1px transparent var(--panel-divider-color)}:host .empty{background-color:var(--main-background);padding:var(--app-pane-padding)}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i5.StringComponent, selector: "eo-string", inputs: ["autocomplete", "multiselect", "multiline", "readonly", "autofocus", "classification", "situation", "regex", "qname", "size", "minLength", "maxLength"] }, { kind: "component", type: i6.TodoWidgetComponent, selector: "eo-todo-widget", inputs: ["widgetConfig"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
59
+ };
60
+ TodoSetupComponent = __decorate([
61
+ UntilDestroy()
62
+ ], TodoSetupComponent);
63
+ export { TodoSetupComponent };
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TodoSetupComponent, decorators: [{
65
+ type: Component,
66
+ args: [{ selector: 'eo-todo-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input tabindex=\"0\" [label]=\"'eo.workspace.widget.setup.title' | translate\" [skipToggle]=\"true\">\n <eo-string autocomplete=\"true\" formControlName=\"headline\"></eo-string>\n </eo-form-input>\n @if (setupForm.dirty && setupForm.get('headline').errors) {\n <div class=\"err-msg\" [translateParams]=\"{maxlength: 50}\" translate>\n eo.form.property.maxlength\n </div>\n }\n </form>\n</div>\n<div class=\"preview\">\n <eo-todo-widget [widgetConfig]=\"widgetConfig\"></eo-todo-widget>\n</div>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding);pointer-events:none}:host .preview eo-todo-widget{border:1px transparent var(--panel-divider-color)}:host .empty{background-color:var(--main-background);padding:var(--app-pane-padding)}\n"] }]
67
+ }], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i2.WidgetGridRegistry }], propDecorators: { widgetConfigChange: [{
68
+ type: Output
69
+ }], widgetConfigStateChange: [{
70
+ type: Output
71
+ }], widgetConfig: [{
72
+ type: Input
73
+ }] } });
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9kby1zZXR1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy90b2Rvd2lkZ2V0L3RvZG8tc2V0dXAvdG9kby1zZXR1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy90b2Rvd2lkZ2V0L3RvZG8tc2V0dXAvdG9kby1zZXR1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQXlELGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVHLE9BQU8sRUFBMEQsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkcsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQWUsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQVN6QyxJQUFNLGtCQUFrQixHQUF4QixNQUFNLGtCQUFrQjtJQWE3QixJQUFhLFlBQVksQ0FBQyxFQUFvQjtRQUM1QyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztZQUN4QixRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ2hDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELFlBQ1UsRUFBc0IsRUFDdEIsa0JBQXNDO1FBRHRDLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUF4QnhDLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUMzQyxXQUFNLEdBQThCLEVBQUUsQ0FBQztRQUc3Qix1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUMxRCw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUUxRSxjQUFTLEdBQXFCLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQzFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzQyxDQUFDLENBQUM7UUFpQkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN6RixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFFdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUN0RSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFDeEMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1NBQ3pDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUc7Z0JBQ25CLEVBQUUsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxlQUFlLENBQUMsSUFBSSxFQUFFO2dCQUNwRCxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLElBQUksRUFBRTtnQkFDdEMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUs7YUFDeEIsQ0FBQztZQUNGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDOzhHQXhEVSxrQkFBa0I7a0dBQWxCLGtCQUFrQiwwTUNiL0IsMmxCQWVBOztBREZhLGtCQUFrQjtJQUY5QixZQUFZLEVBQUU7R0FFRixrQkFBa0IsQ0F5RDlCOzsyRkF6RFksa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLGVBQWU7d0hBWWYsa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFNTSxZQUFZO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SVdpZGdldENvbXBvbmVudCwgVG9kb1dpZGdldENvbmZpZywgV2lkZ2V0R3JpZFJlZ2lzdHJ5LCBXaWRnZXRHcmlkVXRpbHN9IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtGb3JtQ29udHJvbFN0YXR1cywgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge1N1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tdG9kby1zZXR1cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2RvLXNldHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9kby1zZXR1cC5jb21wb25lbnQuc2NzcyddXG59KVxuQFVudGlsRGVzdHJveSgpXG5cbmV4cG9ydCBjbGFzcyBUb2RvU2V0dXBDb21wb25lbnQgaW1wbGVtZW50cyBJV2lkZ2V0Q29tcG9uZW50LCBPbkluaXQge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgbGFiZWxzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG5cbiAgcHJpdmF0ZSBfd2lkZ2V0Q29uZmlnOiBUb2RvV2lkZ2V0Q29uZmlnO1xuICBAT3V0cHV0KCkgd2lkZ2V0Q29uZmlnQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUb2RvV2lkZ2V0Q29uZmlnPigpO1xuICBAT3V0cHV0KCkgd2lkZ2V0Q29uZmlnU3RhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Db250cm9sU3RhdHVzPigpO1xuXG4gIHNldHVwRm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgIGhlYWRsaW5lOiBbJycsIFtWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldXVxuICB9KTtcblxuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKHdjOiBUb2RvV2lkZ2V0Q29uZmlnKSB7XG4gICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0gd2M7XG4gICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICBoZWFkbGluZTogd2MgPyB3Yy5oZWFkbGluZSA6ICcnLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHdpZGdldENvbmZpZygpIHtcbiAgICByZXR1cm4gdGhpcy5fd2lkZ2V0Q29uZmlnO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgd2lkZ2V0R3JpZFJlZ2lzdHJ5OiBXaWRnZXRHcmlkUmVnaXN0cnksXG4gICkge1xuICAgIHRoaXMuc2V0dXBGb3JtLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSgxMDAwKSwgdW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5zZXRXaWRnZXRDb25maWcoKTtcblxuICAgICAgdGhpcy5zZXR1cEZvcm0uc3RhdHVzQ2hhbmdlcy5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKHYpID0+IHtcbiAgICAgICAgdGhpcy53aWRnZXRDb25maWdTdGF0ZUNoYW5nZS5lbWl0KHYpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LmxhYmVscyQuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKGxhYmVscykgPT4gKHRoaXMubGFiZWxzID0gbGFiZWxzKSxcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0V2lkZ2V0Q29uZmlnKCkge1xuICAgIGlmICh0aGlzLnNldHVwRm9ybS52YWxpZCkge1xuICAgICAgdGhpcy5fd2lkZ2V0Q29uZmlnID0ge1xuICAgICAgICBpZDogdGhpcy5fd2lkZ2V0Q29uZmlnPy5pZCB8fCBXaWRnZXRHcmlkVXRpbHMudXVpZCgpLFxuICAgICAgICB0b2RvczogdGhpcy5fd2lkZ2V0Q29uZmlnPy50b2RvcyB8fCBbXSxcbiAgICAgICAgLi4udGhpcy5zZXR1cEZvcm0udmFsdWUsXG4gICAgICB9O1xuICAgICAgdGhpcy53aWRnZXRDb25maWdDaGFuZ2UuZW1pdCh0aGlzLl93aWRnZXRDb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0V2lkZ2V0Q29uZmlnKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzZXR1cFwiPlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cInNldHVwRm9ybVwiPlxuICAgIDxlby1mb3JtLWlucHV0IHRhYmluZGV4PVwiMFwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5zZXR1cC50aXRsZScgfCB0cmFuc2xhdGVcIiBbc2tpcFRvZ2dsZV09XCJ0cnVlXCI+XG4gICAgICA8ZW8tc3RyaW5nIGF1dG9jb21wbGV0ZT1cInRydWVcIiBmb3JtQ29udHJvbE5hbWU9XCJoZWFkbGluZVwiPjwvZW8tc3RyaW5nPlxuICAgIDwvZW8tZm9ybS1pbnB1dD5cbiAgICBAaWYgKHNldHVwRm9ybS5kaXJ0eSAmJiBzZXR1cEZvcm0uZ2V0KCdoZWFkbGluZScpLmVycm9ycykge1xuICAgICAgPGRpdiBjbGFzcz1cImVyci1tc2dcIiBbdHJhbnNsYXRlUGFyYW1zXT1cInttYXhsZW5ndGg6IDUwfVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgZW8uZm9ybS5wcm9wZXJ0eS5tYXhsZW5ndGhcbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgPC9mb3JtPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwicHJldmlld1wiPlxuICA8ZW8tdG9kby13aWRnZXQgW3dpZGdldENvbmZpZ109XCJ3aWRnZXRDb25maWdcIj48L2VvLXRvZG8td2lkZ2V0PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,103 @@
1
+ import { __decorate } from "tslib";
2
+ import { moveItemInArray } from '@angular/cdk/drag-drop';
3
+ import { Component, Input } from '@angular/core';
4
+ import { Validators } from '@angular/forms';
5
+ import { UntilDestroy } from '@ngneat/until-destroy';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@eo-sdk/core";
8
+ import * as i2 from "@yuuvis/widget-grid";
9
+ import * as i3 from "@angular/forms";
10
+ import * as i4 from "@angular/common";
11
+ import * as i5 from "@ngx-translate/core";
12
+ import * as i6 from "../../../../eo-framework/ui/error-message/error-message.component";
13
+ import * as i7 from "../../../../eo-framework/form-elements/form-input/form-input.component";
14
+ import * as i8 from "../../../../eo-framework/form-elements/string/string.component";
15
+ import * as i9 from "@angular/cdk/drag-drop";
16
+ let TodoWidgetComponent = class TodoWidgetComponent {
17
+ set widgetConfig(c) {
18
+ this._widgetConfig = c;
19
+ this.todos = c ? c.todos : [];
20
+ if (this._widgetConfig?.id) {
21
+ this.loadTaskList(this._widgetConfig?.id);
22
+ }
23
+ }
24
+ get widgetConfig() {
25
+ return this._widgetConfig;
26
+ }
27
+ constructor(userService, widgetGridRegistry, fb) {
28
+ this.userService = userService;
29
+ this.widgetGridRegistry = widgetGridRegistry;
30
+ this.fb = fb;
31
+ this.subscriptions = [];
32
+ this.labels = {};
33
+ this.showForm = true;
34
+ this.addForm = this.fb.group({
35
+ task: ['', [Validators.required, Validators.maxLength(50)]],
36
+ });
37
+ this.todoWidgets = [];
38
+ this.subscriptions.push(this.widgetGridRegistry.labels$.subscribe({
39
+ next: (labels) => (this.labels = labels),
40
+ }));
41
+ }
42
+ addTask() {
43
+ if (!this.todos) {
44
+ this.todos = [];
45
+ }
46
+ if (this.addForm.valid) {
47
+ this.todos.push({
48
+ title: this.addForm.value.task,
49
+ });
50
+ this.addForm.reset();
51
+ this.emitChange(this._widgetConfig.id);
52
+ }
53
+ }
54
+ loadTaskList(id) {
55
+ this.todoWidgets = this.userService.getCurrentUser().userSettings.tasks;
56
+ if (this.todoWidgets) {
57
+ const todoItem = this.todoWidgets?.find(item => item.id === id);
58
+ return this.todos = todoItem ? todoItem.todos : [];
59
+ }
60
+ }
61
+ removeTask(idx) {
62
+ this.todos.splice(idx, 1);
63
+ this.emitChange();
64
+ }
65
+ toggleDone(t) {
66
+ t.done = !t.done;
67
+ this.emitChange();
68
+ }
69
+ drop(event) {
70
+ moveItemInArray(this.todos, event.previousIndex, event.currentIndex);
71
+ this.emitChange();
72
+ }
73
+ emitChange(id) {
74
+ if (!this.todoWidgets) {
75
+ this.todoWidgets = [];
76
+ }
77
+ const currentIndex = this.todoWidgets.findIndex(item => item.id === id);
78
+ if (currentIndex !== -1) {
79
+ this.todoWidgets[currentIndex].todos = this.todos;
80
+ }
81
+ else {
82
+ this._widgetConfig.todos = this.todos;
83
+ this.todoWidgets.push(this._widgetConfig);
84
+ }
85
+ return this.userService.saveTodoWidget(this.todoWidgets).subscribe();
86
+ }
87
+ ngOnDestroy() {
88
+ this.subscriptions.forEach((s) => s.unsubscribe());
89
+ }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TodoWidgetComponent, deps: [{ token: i1.UserService }, { token: i2.WidgetGridRegistry }, { token: i3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
91
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: TodoWidgetComponent, selector: "eo-todo-widget", inputs: { widgetConfig: "widgetConfig" }, ngImport: i0, template: "<div class=\"container\">\n\n <header>\n <div class=\"header-title\">\n @if (widgetConfig?.headline) {\n <div class=\"title\">{{ widgetConfig?.headline }}</div>\n }\n </div>\n </header>\n\n <main class=\"todos\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n @if (todos.length > 0) {\n @for (t of todos; track $index) {\n <div class=\"todo\" cdkDrag [ngClass]=\"{done: t.done}\">\n <div class=\"dragHandle\" cdkDragHandle>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\">\n <path\n d=\"M9 20q-.825 0-1.412-.587Q7 18.825 7 18q0-.825.588-1.413Q8.175 16 9 16t1.413.587Q11 17.175 11 18q0 .825-.587 1.413Q9.825 20 9 20Zm6 0q-.825 0-1.412-.587Q13 18.825 13 18q0-.825.588-1.413Q14.175 16 15 16t1.413.587Q17 17.175 17 18q0 .825-.587 1.413Q15.825 20 15 20Zm-6-6q-.825 0-1.412-.588Q7 12.825 7 12t.588-1.413Q8.175 10 9 10t1.413.587Q11 11.175 11 12q0 .825-.587 1.412Q9.825 14 9 14Zm6 0q-.825 0-1.412-.588Q13 12.825 13 12t.588-1.413Q14.175 10 15 10t1.413.587Q17 11.175 17 12q0 .825-.587 1.412Q15.825 14 15 14ZM9 8q-.825 0-1.412-.588Q7 6.825 7 6t.588-1.412Q8.175 4 9 4t1.413.588Q11 5.175 11 6t-.587 1.412Q9.825 8 9 8Zm6 0q-.825 0-1.412-.588Q13 6.825 13 6t.588-1.412Q14.175 4 15 4t1.413.588Q17 5.175 17 6t-.587 1.412Q15.825 8 15 8Z\"/>\n </svg>\n </div>\n <button class=\"checkbox\" (click)=\"toggleDone(t)\"></button>\n <div class=\"task\" (click)=\"toggleDone(t)\">{{ t.title }}</div>\n <button class=\"remove\" *ngIf=\"t.done\" (click)=\"removeTask($index)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">\n <path d=\"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\"/>\n </svg>\n </button>\n </div>\n }\n } @else {\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_task.svg', text: 'eo.workspace.widget.todo.noTasks'}\"></eo-error-message>\n </div>\n }\n </main>\n\n <footer>\n <form [formGroup]=\"addForm\">\n <eo-form-input tabindex=\"0\" [invalid]=\"addForm.dirty && addForm.get('task').invalid\"\n [label]=\"'eo.workspace.widget.todo.taskTitle' | translate\" [skipToggle]=\"true\">\n <eo-string [autofocus]=\"true\" [size]=\"'large'\" [maxlength]=\"50\" autocomplete=\"true\" (keyup.enter)=\"addTask()\"\n formControlName=\"task\"></eo-string>\n </eo-form-input>\n\n <button class=\"primary add\" [disabled]=\"!addForm.dirty\" (click)=\"addTask()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n <path d=\"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7z\"/>\n </svg>\n </button>\n\n @if (addForm.dirty && addForm.get('task').invalid) {\n <div class=\"err-msg\" [translateParams]=\"{maxlength: 50}\" translate>\n eo.form.property.maxlength\n </div>\n }\n </form>\n </footer>\n</div>\n", styles: [":host .container{height:100%;display:grid;grid-template-rows:auto 1fr;grid-template-columns:1fr;grid-template-areas:\"header\" \"main\" \"footer\";background:var(--panel-background);color:var(--text-color-body)}:host .container header{grid-area:header;grid-row:1;color:#fff;display:grid;height:40px}:host .container header .header-title{background-color:var(--color-primary-2);display:flex;justify-content:space-between;align-items:center}:host .container header .title{text-align:center;flex-grow:1;justify-content:center}:host .container .todos{grid-area:main;grid-row:2;max-width:100%;min-height:60px;display:block;overflow-y:auto}:host .container .todos .todo{padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding);border-bottom:solid 1px var(--panel-divider-color);color:var(--text-color-body);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box}:host .container .todos .todo:last-child{border:none}:host .container .todos .todo.done .checkbox:after{content:\"\";width:50%;height:50%;background-color:var(--text-color-body);border-radius:50%}:host .container .todos .todo.done .task{text-decoration:line-through}:host .container .todos .todo .dragHandle{cursor:move}:host .container .todos .todo .remove{padding:0}:host .container .todos .todo .checkbox{border:2px solid var(--text-color-hint);width:24px;height:24px;margin:0 var(--app-pane-padding);padding:0;display:flex;align-items:center;justify-content:center}:host .container .todos .todo .task{flex:1;word-break:break-all;line-height:1.5em}:host .container .todos .empty{display:contents}:host .container footer{grid-area:footer;grid-row:3;display:flex}:host .container footer form{display:flex;flex:1;padding:calc(var(--app-pane-padding) / 8) 0 calc(var(--app-pane-padding) / 8) calc(var(--app-pane-padding) / 2);border-bottom:1px solid var(--panel-divider-color);background-color:var(--panel-divider-color);justify-content:space-between}:host .container footer form eo-form-input{flex:1;padding:calc(var(--app-pane-padding) / 4)}:host .container footer form .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .container footer form>button{display:flex;align-items:center;margin:calc(var(--app-pane-padding) / 4);border-radius:calc(var(--app-pane-padding) / 4)}:host .container footer form label{width:100%;color:var(--text-color-body);flex:1;align-items:center;display:flex}:host .container footer form label input{color:var(--text-color-body);border:0;flex:1;padding:.5em;background-color:var(--panel-background);margin:calc(var(--app-pane-padding) / 2);border-radius:2px;box-shadow:0 1px 3px #0003}:host .cdk-drag-placeholder{opacity:.5}:host .cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}:host .todos.cdk-drop-list-dragging .todo:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.ErrorMessageComponent, selector: "eo-error-message", inputs: ["emptyState"] }, { kind: "component", type: i7.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i8.StringComponent, selector: "eo-string", inputs: ["autocomplete", "multiselect", "multiline", "readonly", "autofocus", "classification", "situation", "regex", "qname", "size", "minLength", "maxLength"] }, { kind: "directive", type: i9.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i9.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i9.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
92
+ };
93
+ TodoWidgetComponent = __decorate([
94
+ UntilDestroy()
95
+ ], TodoWidgetComponent);
96
+ export { TodoWidgetComponent };
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TodoWidgetComponent, decorators: [{
98
+ type: Component,
99
+ args: [{ selector: 'eo-todo-widget', template: "<div class=\"container\">\n\n <header>\n <div class=\"header-title\">\n @if (widgetConfig?.headline) {\n <div class=\"title\">{{ widgetConfig?.headline }}</div>\n }\n </div>\n </header>\n\n <main class=\"todos\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n @if (todos.length > 0) {\n @for (t of todos; track $index) {\n <div class=\"todo\" cdkDrag [ngClass]=\"{done: t.done}\">\n <div class=\"dragHandle\" cdkDragHandle>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\">\n <path\n d=\"M9 20q-.825 0-1.412-.587Q7 18.825 7 18q0-.825.588-1.413Q8.175 16 9 16t1.413.587Q11 17.175 11 18q0 .825-.587 1.413Q9.825 20 9 20Zm6 0q-.825 0-1.412-.587Q13 18.825 13 18q0-.825.588-1.413Q14.175 16 15 16t1.413.587Q17 17.175 17 18q0 .825-.587 1.413Q15.825 20 15 20Zm-6-6q-.825 0-1.412-.588Q7 12.825 7 12t.588-1.413Q8.175 10 9 10t1.413.587Q11 11.175 11 12q0 .825-.587 1.412Q9.825 14 9 14Zm6 0q-.825 0-1.412-.588Q13 12.825 13 12t.588-1.413Q14.175 10 15 10t1.413.587Q17 11.175 17 12q0 .825-.587 1.412Q15.825 14 15 14ZM9 8q-.825 0-1.412-.588Q7 6.825 7 6t.588-1.412Q8.175 4 9 4t1.413.588Q11 5.175 11 6t-.587 1.412Q9.825 8 9 8Zm6 0q-.825 0-1.412-.588Q13 6.825 13 6t.588-1.412Q14.175 4 15 4t1.413.588Q17 5.175 17 6t-.587 1.412Q15.825 8 15 8Z\"/>\n </svg>\n </div>\n <button class=\"checkbox\" (click)=\"toggleDone(t)\"></button>\n <div class=\"task\" (click)=\"toggleDone(t)\">{{ t.title }}</div>\n <button class=\"remove\" *ngIf=\"t.done\" (click)=\"removeTask($index)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">\n <path d=\"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\"/>\n </svg>\n </button>\n </div>\n }\n } @else {\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_task.svg', text: 'eo.workspace.widget.todo.noTasks'}\"></eo-error-message>\n </div>\n }\n </main>\n\n <footer>\n <form [formGroup]=\"addForm\">\n <eo-form-input tabindex=\"0\" [invalid]=\"addForm.dirty && addForm.get('task').invalid\"\n [label]=\"'eo.workspace.widget.todo.taskTitle' | translate\" [skipToggle]=\"true\">\n <eo-string [autofocus]=\"true\" [size]=\"'large'\" [maxlength]=\"50\" autocomplete=\"true\" (keyup.enter)=\"addTask()\"\n formControlName=\"task\"></eo-string>\n </eo-form-input>\n\n <button class=\"primary add\" [disabled]=\"!addForm.dirty\" (click)=\"addTask()\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n <path d=\"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7z\"/>\n </svg>\n </button>\n\n @if (addForm.dirty && addForm.get('task').invalid) {\n <div class=\"err-msg\" [translateParams]=\"{maxlength: 50}\" translate>\n eo.form.property.maxlength\n </div>\n }\n </form>\n </footer>\n</div>\n", styles: [":host .container{height:100%;display:grid;grid-template-rows:auto 1fr;grid-template-columns:1fr;grid-template-areas:\"header\" \"main\" \"footer\";background:var(--panel-background);color:var(--text-color-body)}:host .container header{grid-area:header;grid-row:1;color:#fff;display:grid;height:40px}:host .container header .header-title{background-color:var(--color-primary-2);display:flex;justify-content:space-between;align-items:center}:host .container header .title{text-align:center;flex-grow:1;justify-content:center}:host .container .todos{grid-area:main;grid-row:2;max-width:100%;min-height:60px;display:block;overflow-y:auto}:host .container .todos .todo{padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding);border-bottom:solid 1px var(--panel-divider-color);color:var(--text-color-body);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box}:host .container .todos .todo:last-child{border:none}:host .container .todos .todo.done .checkbox:after{content:\"\";width:50%;height:50%;background-color:var(--text-color-body);border-radius:50%}:host .container .todos .todo.done .task{text-decoration:line-through}:host .container .todos .todo .dragHandle{cursor:move}:host .container .todos .todo .remove{padding:0}:host .container .todos .todo .checkbox{border:2px solid var(--text-color-hint);width:24px;height:24px;margin:0 var(--app-pane-padding);padding:0;display:flex;align-items:center;justify-content:center}:host .container .todos .todo .task{flex:1;word-break:break-all;line-height:1.5em}:host .container .todos .empty{display:contents}:host .container footer{grid-area:footer;grid-row:3;display:flex}:host .container footer form{display:flex;flex:1;padding:calc(var(--app-pane-padding) / 8) 0 calc(var(--app-pane-padding) / 8) calc(var(--app-pane-padding) / 2);border-bottom:1px solid var(--panel-divider-color);background-color:var(--panel-divider-color);justify-content:space-between}:host .container footer form eo-form-input{flex:1;padding:calc(var(--app-pane-padding) / 4)}:host .container footer form .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .container footer form>button{display:flex;align-items:center;margin:calc(var(--app-pane-padding) / 4);border-radius:calc(var(--app-pane-padding) / 4)}:host .container footer form label{width:100%;color:var(--text-color-body);flex:1;align-items:center;display:flex}:host .container footer form label input{color:var(--text-color-body);border:0;flex:1;padding:.5em;background-color:var(--panel-background);margin:calc(var(--app-pane-padding) / 2);border-radius:2px;box-shadow:0 1px 3px #0003}:host .cdk-drag-placeholder{opacity:.5}:host .cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}:host .todos.cdk-drop-list-dragging .todo:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
100
+ }], ctorParameters: () => [{ type: i1.UserService }, { type: i2.WidgetGridRegistry }, { type: i3.UntypedFormBuilder }], propDecorators: { widgetConfig: [{
101
+ type: Input
102
+ }] } });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9kby13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL3dpZGdldHMvdG9kb3dpZGdldC90b2RvLXdpZGdldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy90b2Rvd2lkZ2V0L3RvZG8td2lkZ2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWMsZUFBZSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDcEUsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFDLFVBQVUsRUFBdUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUtoRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7O0FBVTVDLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBYzlCLElBQWEsWUFBWSxDQUFDLENBQW1CO1FBQzNDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUIsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFDUyxXQUF3QixFQUN2QixrQkFBc0MsRUFDdEMsRUFB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QUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUV4RSxJQUFJLFlBQVksS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDcEQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDdkUsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQzs4R0EzRlUsbUJBQW1CO2tHQUFuQixtQkFBbUIsZ0dDakJoQyxpa0dBNkRBOztBRDVDYSxtQkFBbUI7SUFOL0IsWUFBWSxFQUFFO0dBTUYsbUJBQW1CLENBNEYvQjs7MkZBNUZZLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxnQkFBZ0I7a0pBa0JiLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Nka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXl9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtWYWxpZGF0b3JzLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIFVzZXJTZXJ2aWNlXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge1RvZG8sIFRvZG9XaWRnZXRDb25maWd9IGZyb20gJ0Blby1zZGsvY29yZS9saWIvaW50ZXJmYWNlL3RvZG8uaW50ZXJmYWNlJztcbmltcG9ydCB7VW50aWxEZXN0cm95fSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtJV2lkZ2V0Q29tcG9uZW50LCBXaWRnZXRHcmlkUmVnaXN0cnl9IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXRvZG8td2lkZ2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvZG8td2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9kby13aWRnZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUb2RvV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgSVdpZGdldENvbXBvbmVudCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gIHByaXZhdGUgX3dpZGdldENvbmZpZzogVG9kb1dpZGdldENvbmZpZztcbiAgbGFiZWxzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gIHRvZG9zOiBUb2RvW107XG4gIHNob3dGb3JtID0gdHJ1ZTtcblxuICBhZGRGb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgdGFzazogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXV0sXG4gIH0pO1xuXG4gIHRvZG9XaWRnZXRzOiBUb2RvV2lkZ2V0Q29uZmlnW10gPSBbXTtcblxuICBASW5wdXQoKSBzZXQgd2lkZ2V0Q29uZmlnKGM6IFRvZG9XaWRnZXRDb25maWcpIHtcbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSBjO1xuICAgIHRoaXMudG9kb3MgPSBjID8gYy50b2RvcyA6IFtdO1xuICAgIGlmICh0aGlzLl93aWRnZXRDb25maWc/LmlkKSB7XG4gICAgICB0aGlzLmxvYWRUYXNrTGlzdCh0aGlzLl93aWRnZXRDb25maWc/LmlkKTtcbiAgICB9XG4gIH1cblxuICBnZXQgd2lkZ2V0Q29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLl93aWRnZXRDb25maWc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgd2lkZ2V0R3JpZFJlZ2lzdHJ5OiBXaWRnZXRHcmlkUmVnaXN0cnksXG4gICAgcHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyXG4gICkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy53aWRnZXRHcmlkUmVnaXN0cnkubGFiZWxzJC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAobGFiZWxzKSA9PiAodGhpcy5sYWJlbHMgPSBsYWJlbHMpLFxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgYWRkVGFzaygpIHtcbiAgICBpZiAoIXRoaXMudG9kb3MpIHtcbiAgICAgIHRoaXMudG9kb3MgPSBbXTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYWRkRm9ybS52YWxpZCkge1xuICAgICAgdGhpcy50b2Rvcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6IHRoaXMuYWRkRm9ybS52YWx1ZS50YXNrLFxuICAgICAgfSk7XG4gICAgICB0aGlzLmFkZEZvcm0ucmVzZXQoKTtcbiAgICAgIHRoaXMuZW1pdENoYW5nZSh0aGlzLl93aWRnZXRDb25maWcuaWQpO1xuICAgIH1cbiAgfVxuXG4gIGxvYWRUYXNrTGlzdChpZDogc3RyaW5nKSB7XG4gICAgdGhpcy50b2RvV2lkZ2V0cyA9IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3MudGFza3M7XG4gICAgaWYgKHRoaXMudG9kb1dpZGdldHMpIHtcbiAgICAgIGNvbnN0IHRvZG9JdGVtID0gdGhpcy50b2RvV2lkZ2V0cz8uZmluZChpdGVtID0+IGl0ZW0uaWQgPT09IGlkKTtcbiAgICAgIHJldHVybiB0aGlzLnRvZG9zID0gdG9kb0l0ZW0gPyB0b2RvSXRlbS50b2RvcyA6IFtdO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZVRhc2soaWR4OiBudW1iZXIpIHtcbiAgICB0aGlzLnRvZG9zLnNwbGljZShpZHgsIDEpO1xuICAgIHRoaXMuZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgdG9nZ2xlRG9uZSh0OiBUb2RvKSB7XG4gICAgdC5kb25lID0gIXQuZG9uZTtcbiAgICB0aGlzLmVtaXRDaGFuZ2UoKTtcbiAgfVxuXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLnRvZG9zLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgIHRoaXMuZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0Q2hhbmdlKGlkPzogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLnRvZG9XaWRnZXRzKSB7XG4gICAgICB0aGlzLnRvZG9XaWRnZXRzID0gW107XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IHRoaXMudG9kb1dpZGdldHMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gaWQpO1xuXG4gICAgaWYgKGN1cnJlbnRJbmRleCAhPT0gLTEpIHtcbiAgICAgIHRoaXMudG9kb1dpZGdldHNbY3VycmVudEluZGV4XS50b2RvcyA9IHRoaXMudG9kb3M7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3dpZGdldENvbmZpZy50b2RvcyA9IHRoaXMudG9kb3M7XG4gICAgICB0aGlzLnRvZG9XaWRnZXRzLnB1c2godGhpcy5fd2lkZ2V0Q29uZmlnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvZG9XaWRnZXQodGhpcy50b2RvV2lkZ2V0cykuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaCgocykgPT4gcy51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuXG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG5cbiAgPGhlYWRlcj5cbiAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXRpdGxlXCI+XG4gICAgICBAaWYgKHdpZGdldENvbmZpZz8uaGVhZGxpbmUpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgd2lkZ2V0Q29uZmlnPy5oZWFkbGluZSB9fTwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L2hlYWRlcj5cblxuICA8bWFpbiBjbGFzcz1cInRvZG9zXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIj5cbiAgICBAaWYgKHRvZG9zLmxlbmd0aCA+IDApIHtcbiAgICAgIEBmb3IgKHQgb2YgdG9kb3M7IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwidG9kb1wiIGNka0RyYWcgW25nQ2xhc3NdPVwie2RvbmU6IHQuZG9uZX1cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJhZ0hhbmRsZVwiIGNka0RyYWdIYW5kbGU+XG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyNFwiIHdpZHRoPVwiMjRcIj5cbiAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICBkPVwiTTkgMjBxLS44MjUgMC0xLjQxMi0uNTg3UTcgMTguODI1IDcgMThxMC0uODI1LjU4OC0xLjQxM1E4LjE3NSAxNiA5IDE2dDEuNDEzLjU4N1ExMSAxNy4xNzUgMTEgMThxMCAuODI1LS41ODcgMS40MTNROS44MjUgMjAgOSAyMFptNiAwcS0uODI1IDAtMS40MTItLjU4N1ExMyAxOC44MjUgMTMgMThxMC0uODI1LjU4OC0xLjQxM1ExNC4xNzUgMTYgMTUgMTZ0MS40MTMuNTg3UTE3IDE3LjE3NSAxNyAxOHEwIC44MjUtLjU4NyAxLjQxM1ExNS44MjUgMjAgMTUgMjBabS02LTZxLS44MjUgMC0xLjQxMi0uNTg4UTcgMTIuODI1IDcgMTJ0LjU4OC0xLjQxM1E4LjE3NSAxMCA5IDEwdDEuNDEzLjU4N1ExMSAxMS4xNzUgMTEgMTJxMCAuODI1LS41ODcgMS40MTJROS44MjUgMTQgOSAxNFptNiAwcS0uODI1IDAtMS40MTItLjU4OFExMyAxMi44MjUgMTMgMTJ0LjU4OC0xLjQxM1ExNC4xNzUgMTAgMTUgMTB0MS40MTMuNTg3UTE3IDExLjE3NSAxNyAxMnEwIC44MjUtLjU4NyAxLjQxMlExNS44MjUgMTQgMTUgMTRaTTkgOHEtLjgyNSAwLTEuNDEyLS41ODhRNyA2LjgyNSA3IDZ0LjU4OC0xLjQxMlE4LjE3NSA0IDkgNHQxLjQxMy41ODhRMTEgNS4xNzUgMTEgNnQtLjU4NyAxLjQxMlE5LjgyNSA4IDkgOFptNiAwcS0uODI1IDAtMS40MTItLjU4OFExMyA2LjgyNSAxMyA2dC41ODgtMS40MTJRMTQuMTc1IDQgMTUgNHQxLjQxMy41ODhRMTcgNS4xNzUgMTcgNnQtLjU4NyAxLjQxMlExNS44MjUgOCAxNSA4WlwiLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjaGVja2JveFwiIChjbGljayk9XCJ0b2dnbGVEb25lKHQpXCI+PC9idXR0b24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhc2tcIiAoY2xpY2spPVwidG9nZ2xlRG9uZSh0KVwiPnt7IHQudGl0bGUgfX08L2Rpdj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwicmVtb3ZlXCIgKm5nSWY9XCJ0LmRvbmVcIiAoY2xpY2spPVwicmVtb3ZlVGFzaygkaW5kZXgpXCI+XG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNiAxOWMwIDEuMS45IDIgMiAyaDhjMS4xIDAgMi0uOSAyLTJWN0g2djEyek0xOSA0aC0zLjVsLTEtMWgtNWwtMSAxSDV2MmgxNFY0elwiLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgICAgICA8ZW8tZXJyb3ItbWVzc2FnZVxuICAgICAgICAgIFtlbXB0eVN0YXRlXT1cIntpY29uOiAnaWNfdGFzay5zdmcnLCB0ZXh0OiAnZW8ud29ya3NwYWNlLndpZGdldC50b2RvLm5vVGFza3MnfVwiPjwvZW8tZXJyb3ItbWVzc2FnZT5cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgPC9tYWluPlxuXG4gIDxmb290ZXI+XG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJhZGRGb3JtXCI+XG4gICAgICA8ZW8tZm9ybS1pbnB1dCB0YWJpbmRleD1cIjBcIiBbaW52YWxpZF09XCJhZGRGb3JtLmRpcnR5ICYmIGFkZEZvcm0uZ2V0KCd0YXNrJykuaW52YWxpZFwiXG4gICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQudG9kby50YXNrVGl0bGUnIHwgdHJhbnNsYXRlXCIgW3NraXBUb2dnbGVdPVwidHJ1ZVwiPlxuICAgICAgICA8ZW8tc3RyaW5nIFthdXRvZm9jdXNdPVwidHJ1ZVwiIFtzaXplXT1cIidsYXJnZSdcIiBbbWF4bGVuZ3RoXT1cIjUwXCIgYXV0b2NvbXBsZXRlPVwidHJ1ZVwiIChrZXl1cC5lbnRlcik9XCJhZGRUYXNrKClcIlxuICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRhc2tcIj48L2VvLXN0cmluZz5cbiAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgPGJ1dHRvbiBjbGFzcz1cInByaW1hcnkgYWRkXCIgW2Rpc2FibGVkXT1cIiFhZGRGb3JtLmRpcnR5XCIgKGNsaWNrKT1cImFkZFRhc2soKVwiPlxuICAgICAgICA8c3ZnXG4gICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cbiAgICAgICAgICA8cGF0aCBkPVwiTTAgMGgyNHYyNEgwVjB6XCIgZmlsbD1cIm5vbmVcIi8+XG4gICAgICAgICAgPHBhdGggZD1cIk0xMyA3aC0ydjRIN3YyaDR2NGgydi00aDR2LTJoLTRWN3pcIi8+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIEBpZiAoYWRkRm9ybS5kaXJ0eSAmJiBhZGRGb3JtLmdldCgndGFzaycpLmludmFsaWQpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImVyci1tc2dcIiBbdHJhbnNsYXRlUGFyYW1zXT1cInttYXhsZW5ndGg6IDUwfVwiIHRyYW5zbGF0ZT5cbiAgICAgICAgICBlby5mb3JtLnByb3BlcnR5Lm1heGxlbmd0aFxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Zvcm0+XG4gIDwvZm9vdGVyPlxuPC9kaXY+XG4iXX0=