@elderbyte/ngx-starter 17.5.0 → 17.6.0

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 (505) hide show
  1. package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +3 -3
  2. package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +3 -3
  3. package/esm2022/lib/common/forms/elder-from-field-base.mjs +3 -3
  4. package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +3 -3
  5. package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +3 -3
  6. package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +3 -3
  7. package/esm2022/lib/common/forms/form-field-base.component.mjs +3 -3
  8. package/esm2022/lib/common/forms/multi-model-base.component.mjs +3 -3
  9. package/esm2022/lib/common/forms/template-composite-control.mjs +3 -3
  10. package/esm2022/lib/common/forms/value-accessor-base.mjs +3 -3
  11. package/esm2022/lib/common/http/http-client-builder.service.mjs +3 -3
  12. package/esm2022/lib/common/http/http-client-pristine.mjs +3 -3
  13. package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +3 -3
  14. package/esm2022/lib/common/url/elder-router.service.mjs +3 -3
  15. package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +3 -3
  16. package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +7 -7
  17. package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +11 -11
  18. package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +12 -11
  19. package/esm2022/lib/components/auditing/elder-audit.module.mjs +11 -11
  20. package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +20 -18
  21. package/esm2022/lib/components/badge/elder-badge.directive.mjs +6 -5
  22. package/esm2022/lib/components/badge/elder-badge.module.mjs +17 -17
  23. package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +5 -5
  24. package/esm2022/lib/components/button-group/elder-button-group.module.mjs +9 -8
  25. package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +7 -7
  26. package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +8 -5
  27. package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +13 -12
  28. package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +11 -9
  29. package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +6 -6
  30. package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +31 -26
  31. package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +14 -15
  32. package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +6 -5
  33. package/esm2022/lib/components/chips/elder-chips.module.mjs +8 -9
  34. package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +10 -10
  35. package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +3 -3
  36. package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +10 -10
  37. package/esm2022/lib/components/containers/elder-containers.module.mjs +7 -8
  38. package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +6 -6
  39. package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +7 -7
  40. package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +3 -3
  41. package/esm2022/lib/components/csv/elder-csv.module.mjs +10 -10
  42. package/esm2022/lib/components/currency/elder-currency.module.mjs +7 -8
  43. package/esm2022/lib/components/currency/elder-currency.pipe.mjs +6 -5
  44. package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +17 -14
  45. package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +3 -3
  46. package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +10 -10
  47. package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +8 -8
  48. package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +13 -13
  49. package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +10 -10
  50. package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +3 -3
  51. package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +9 -8
  52. package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +18 -15
  53. package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +24 -13
  54. package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +11 -10
  55. package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +6 -5
  56. package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +8 -8
  57. package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +33 -28
  58. package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +12 -12
  59. package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +10 -10
  60. package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +8 -5
  61. package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +5 -4
  62. package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +7 -7
  63. package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +19 -19
  64. package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +3 -3
  65. package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +6 -5
  66. package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +5 -5
  67. package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +8 -7
  68. package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +6 -5
  69. package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +6 -5
  70. package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +6 -5
  71. package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +3 -3
  72. package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +8 -5
  73. package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +17 -20
  74. package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +6 -5
  75. package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +6 -5
  76. package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +6 -5
  77. package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +6 -5
  78. package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +8 -5
  79. package/esm2022/lib/components/data-view/table/elder-table.module.mjs +19 -19
  80. package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +3 -3
  81. package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +13 -11
  82. package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +15 -13
  83. package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +3 -3
  84. package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +16 -14
  85. package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +10 -9
  86. package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +6 -5
  87. package/esm2022/lib/components/errors/elder-error.module.mjs +11 -11
  88. package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +10 -10
  89. package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +8 -8
  90. package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +8 -8
  91. package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +6 -6
  92. package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +9 -8
  93. package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +3 -3
  94. package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +6 -5
  95. package/esm2022/lib/components/files/elder-file-select.directive.mjs +6 -5
  96. package/esm2022/lib/components/files/elder-file.module.mjs +16 -14
  97. package/esm2022/lib/components/files/file-select/file-select.component.mjs +8 -8
  98. package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +13 -13
  99. package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +3 -3
  100. package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +3 -3
  101. package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +6 -5
  102. package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +6 -5
  103. package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +5 -4
  104. package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +6 -5
  105. package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +6 -5
  106. package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +6 -5
  107. package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +8 -11
  108. package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +6 -5
  109. package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +6 -5
  110. package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +6 -5
  111. package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +6 -5
  112. package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +6 -5
  113. package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +6 -5
  114. package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +6 -5
  115. package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +6 -5
  116. package/esm2022/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +6 -5
  117. package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +6 -5
  118. package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +3 -3
  119. package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +3 -3
  120. package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +3 -3
  121. package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +6 -5
  122. package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +6 -5
  123. package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +6 -5
  124. package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +6 -5
  125. package/esm2022/lib/components/forms/elder-forms.module.mjs +4 -4
  126. package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +3 -3
  127. package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +6 -5
  128. package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +3 -3
  129. package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +6 -5
  130. package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +6 -5
  131. package/esm2022/lib/components/forms/search/elder-search.module.mjs +15 -15
  132. package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +21 -19
  133. package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +6 -5
  134. package/esm2022/lib/components/global-search/elder-global-search.component.mjs +13 -12
  135. package/esm2022/lib/components/global-search/elder-global-search.module.mjs +6 -9
  136. package/esm2022/lib/components/global-search/elder-global-search.service.mjs +3 -3
  137. package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +6 -6
  138. package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +8 -9
  139. package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +6 -5
  140. package/esm2022/lib/components/headers/elder-header.module.mjs +10 -9
  141. package/esm2022/lib/components/http-support/elder-http-client.service.mjs +3 -3
  142. package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +24 -22
  143. package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +15 -13
  144. package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +14 -13
  145. package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +3 -3
  146. package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +20 -18
  147. package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +8 -5
  148. package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +6 -5
  149. package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +6 -5
  150. package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +6 -5
  151. package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +3 -3
  152. package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +3 -3
  153. package/esm2022/lib/components/i18n/language/elder-language.module.mjs +11 -11
  154. package/esm2022/lib/components/i18n/language/elder-language.service.mjs +3 -3
  155. package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +16 -14
  156. package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +4 -4
  157. package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +5 -6
  158. package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +6 -5
  159. package/esm2022/lib/components/iframes/elder-iframe.module.mjs +18 -15
  160. package/esm2022/lib/components/iframes/iframe-close.directive.mjs +5 -4
  161. package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +7 -7
  162. package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +11 -11
  163. package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +7 -7
  164. package/esm2022/lib/components/iframes/iframe.service.mjs +3 -3
  165. package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +6 -5
  166. package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +8 -5
  167. package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +8 -11
  168. package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +12 -12
  169. package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +6 -5
  170. package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +6 -5
  171. package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +14 -14
  172. package/esm2022/lib/components/labels/elder-labels.module.mjs +10 -8
  173. package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +16 -15
  174. package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +9 -8
  175. package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +6 -5
  176. package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +6 -5
  177. package/esm2022/lib/components/measures/elder-measures.module.mjs +24 -22
  178. package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +6 -5
  179. package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +6 -5
  180. package/esm2022/lib/components/measures/elder-unit.service.mjs +3 -3
  181. package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +11 -10
  182. package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +11 -8
  183. package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +6 -5
  184. package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +6 -5
  185. package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +3 -3
  186. package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +17 -17
  187. package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +10 -10
  188. package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +16 -15
  189. package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +8 -8
  190. package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +11 -11
  191. package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +5 -5
  192. package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +6 -5
  193. package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +13 -12
  194. package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +3 -3
  195. package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +9 -9
  196. package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +8 -7
  197. package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +3 -3
  198. package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +6 -5
  199. package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +6 -5
  200. package/esm2022/lib/components/overlays/elder-overlay.component.mjs +6 -5
  201. package/esm2022/lib/components/overlays/elder-overlay.module.mjs +9 -10
  202. package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +5 -5
  203. package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +5 -5
  204. package/esm2022/lib/components/panels/elder-panel.module.mjs +8 -9
  205. package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +5 -5
  206. package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +6 -5
  207. package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +20 -14
  208. package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +6 -5
  209. package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +6 -6
  210. package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +6 -5
  211. package/esm2022/lib/components/select/elder-select-base.mjs +3 -3
  212. package/esm2022/lib/components/select/elder-select-chip.directive.mjs +16 -13
  213. package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +6 -5
  214. package/esm2022/lib/components/select/elder-select-value.directive.mjs +8 -5
  215. package/esm2022/lib/components/select/elder-select.module.mjs +26 -23
  216. package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +5 -5
  217. package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +3 -3
  218. package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +14 -15
  219. package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +16 -18
  220. package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +3 -3
  221. package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +6 -5
  222. package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +5 -4
  223. package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +6 -5
  224. package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +13 -12
  225. package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +6 -5
  226. package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +18 -16
  227. package/esm2022/lib/components/select/single/elder-select-form-field.mjs +3 -3
  228. package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +8 -8
  229. package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +10 -10
  230. package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +3 -3
  231. package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +3 -3
  232. package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +6 -5
  233. package/esm2022/lib/components/shell/elder-shell.module.mjs +18 -16
  234. package/esm2022/lib/components/shell/elder-shell.service.mjs +3 -3
  235. package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +8 -8
  236. package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +34 -25
  237. package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +8 -8
  238. package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +6 -5
  239. package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +6 -5
  240. package/esm2022/lib/components/tabs/elder-tab.module.mjs +8 -9
  241. package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +6 -5
  242. package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +3 -3
  243. package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +10 -9
  244. package/esm2022/lib/components/theme/elder-theme.directive.mjs +6 -5
  245. package/esm2022/lib/components/theme/elder-theme.module.mjs +12 -12
  246. package/esm2022/lib/components/theme/elder-theme.service.mjs +3 -3
  247. package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +3 -3
  248. package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +10 -9
  249. package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +11 -10
  250. package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +10 -8
  251. package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +14 -12
  252. package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +15 -14
  253. package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +10 -8
  254. package/esm2022/lib/components/time/elder-time.module.mjs +23 -17
  255. package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +11 -11
  256. package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +6 -5
  257. package/esm2022/lib/components/toasts/elder-toast.module.mjs +6 -7
  258. package/esm2022/lib/components/toasts/elder-toast.service.mjs +3 -3
  259. package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +8 -8
  260. package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +11 -11
  261. package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +10 -10
  262. package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +5 -5
  263. package/esm2022/lib/components/viewers/elder-viewers.module.mjs +8 -9
  264. package/esm2022/lib/features/event-source/elder-event-source.service.mjs +3 -3
  265. package/esm2022/lib/features/kafent/access-token-provider.mjs +3 -3
  266. package/esm2022/lib/features/kafent/kafent-config.mjs +3 -3
  267. package/esm2022/lib/features/kafent/kafent-event-stream.mjs +3 -3
  268. package/esm2022/lib/features/kafent/kafent-event.service.mjs +3 -3
  269. package/esm2022/lib/features/kafent/kafent.module.mjs +4 -4
  270. package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +3 -3
  271. package/esm2022/lib/pipes/bytes.pipe.mjs +8 -5
  272. package/esm2022/lib/pipes/elder-pipes.module.mjs +21 -18
  273. package/esm2022/lib/pipes/elder-repeat.pipe.mjs +8 -5
  274. package/esm2022/lib/pipes/elder-round.pipe.mjs +6 -5
  275. package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +6 -5
  276. package/esm2022/lib/pipes/elder-truncate.pipe.mjs +6 -5
  277. package/esm2022/lib/pipes/iso-duration.pipe.mjs +6 -5
  278. package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +6 -5
  279. package/esm2022/lib/pipes/iso-interval.pipe.mjs +6 -5
  280. package/esm2022/lib/pipes/time-ago.pipe.mjs +6 -5
  281. package/esm2022/lib/pipes/time-duration.pipe.mjs +6 -5
  282. package/esm2022/lib/pipes/weight.pipe.mjs +8 -5
  283. package/fesm2022/elderbyte-ngx-starter.mjs +2008 -1854
  284. package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
  285. package/lib/components/access-denied/elder-access-denied.component.d.ts +1 -1
  286. package/lib/components/access-denied/elder-access-denied.module.d.ts +5 -5
  287. package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +1 -1
  288. package/lib/components/auditing/elder-audit.module.d.ts +7 -7
  289. package/lib/components/badge/elder-badge/elder-badge.component.d.ts +3 -3
  290. package/lib/components/badge/elder-badge.directive.d.ts +1 -1
  291. package/lib/components/badge/elder-badge.module.d.ts +8 -8
  292. package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +1 -1
  293. package/lib/components/button-group/elder-button-group.module.d.ts +6 -6
  294. package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +1 -1
  295. package/lib/components/card-organizer/card-organizer/elder-stack-card.directive.d.ts +1 -1
  296. package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +1 -1
  297. package/lib/components/card-organizer/elder-card-organizer.module.d.ts +12 -12
  298. package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +1 -1
  299. package/lib/components/cards/elder-card/elder-card.component.d.ts +6 -6
  300. package/lib/components/cards/elder-card/elder-card.module.d.ts +7 -7
  301. package/lib/components/chips/elder-chip-label.directive.d.ts +1 -1
  302. package/lib/components/chips/elder-chips.module.d.ts +6 -6
  303. package/lib/components/connectivity/elder-connectivity.module.d.ts +8 -8
  304. package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +1 -1
  305. package/lib/components/containers/elder-containers.module.d.ts +3 -3
  306. package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +1 -1
  307. package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +1 -1
  308. package/lib/components/csv/elder-csv.module.d.ts +5 -5
  309. package/lib/components/currency/elder-currency.module.d.ts +3 -3
  310. package/lib/components/currency/elder-currency.pipe.d.ts +1 -1
  311. package/lib/components/data-transfer/elder-data-transfer.module.d.ts +17 -17
  312. package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +1 -1
  313. package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +1 -1
  314. package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +1 -1
  315. package/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.d.ts +1 -1
  316. package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +1 -1
  317. package/lib/components/data-view/common/elder-data-common.module.d.ts +19 -19
  318. package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +2 -2
  319. package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +1 -1
  320. package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +1 -1
  321. package/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.d.ts +1 -1
  322. package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +3 -3
  323. package/lib/components/data-view/grid/elder-grid.module.d.ts +19 -19
  324. package/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.d.ts +1 -1
  325. package/lib/components/data-view/master-detail/elder-detail.directive.d.ts +1 -1
  326. package/lib/components/data-view/master-detail/elder-master-activation.directive.d.ts +1 -1
  327. package/lib/components/data-view/master-detail/elder-master-detail.component.d.ts +1 -1
  328. package/lib/components/data-view/master-detail/elder-master-detail.module.d.ts +23 -23
  329. package/lib/components/data-view/master-detail/elder-master.directive.d.ts +1 -1
  330. package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.d.ts +1 -1
  331. package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +22 -22
  332. package/lib/components/data-view/table/activation/elder-delete-active.directive.d.ts +1 -1
  333. package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +1 -1
  334. package/lib/components/data-view/table/elder-number-cell.directive.d.ts +1 -1
  335. package/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.d.ts +1 -1
  336. package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +1 -1
  337. package/lib/components/data-view/table/elder-table-column.directive.d.ts +1 -1
  338. package/lib/components/data-view/table/elder-table-extension.directive.d.ts +1 -1
  339. package/lib/components/data-view/table/elder-table-root.directive.d.ts +1 -1
  340. package/lib/components/data-view/table/elder-table-row.directive.d.ts +1 -1
  341. package/lib/components/data-view/table/elder-table-sort.directive.d.ts +1 -1
  342. package/lib/components/data-view/table/elder-table.module.d.ts +32 -32
  343. package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +1 -1
  344. package/lib/components/dialogs/elder-dialog.module.d.ts +16 -16
  345. package/lib/components/dialogs/question-dialog/elder-question-dialog.component.d.ts +1 -1
  346. package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +1 -1
  347. package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +1 -1
  348. package/lib/components/errors/elder-error.module.d.ts +6 -6
  349. package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +1 -1
  350. package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +1 -1
  351. package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +6 -6
  352. package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +1 -1
  353. package/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.d.ts +1 -1
  354. package/lib/components/files/elder-file-drop-zone.directive.d.ts +1 -1
  355. package/lib/components/files/elder-file-select.directive.d.ts +1 -1
  356. package/lib/components/files/elder-file.module.d.ts +14 -14
  357. package/lib/components/files/file-select/file-select.component.d.ts +1 -1
  358. package/lib/components/files/file-upload/file-upload.component.d.ts +1 -1
  359. package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +1 -1
  360. package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +1 -1
  361. package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +1 -1
  362. package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +1 -1
  363. package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +1 -1
  364. package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +1 -1
  365. package/lib/components/forms/directives/elder-forms-directives.module.d.ts +22 -22
  366. package/lib/components/forms/directives/elder-initial-value.directive.d.ts +1 -1
  367. package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +1 -1
  368. package/lib/components/forms/directives/elder-key-event.directive.d.ts +1 -1
  369. package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +1 -1
  370. package/lib/components/forms/directives/elder-plug-parent-form.directive.d.ts +1 -1
  371. package/lib/components/forms/directives/elder-stop-event-propagation.directive.d.ts +1 -1
  372. package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +1 -1
  373. package/lib/components/forms/directives/elder-touched.directive.d.ts +1 -1
  374. package/lib/components/forms/directives/elder-triple-state-checkbox.directive.d.ts +1 -1
  375. package/lib/components/forms/directives/validation/elder-validation-error.directive.d.ts +1 -1
  376. package/lib/components/forms/directives/validation/validators/elder-max.validator.d.ts +1 -1
  377. package/lib/components/forms/directives/validation/validators/elder-min.validator.d.ts +1 -1
  378. package/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.d.ts +1 -1
  379. package/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.d.ts +1 -1
  380. package/lib/components/forms/search/domain/url/elder-search-url.directive.d.ts +1 -1
  381. package/lib/components/forms/search/elder-search-context.directive.d.ts +1 -1
  382. package/lib/components/forms/search/elder-search-input.directive.d.ts +1 -1
  383. package/lib/components/forms/search/elder-search.module.d.ts +18 -18
  384. package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +1 -1
  385. package/lib/components/forms/search/search-box/elder-search-panel.component.d.ts +1 -1
  386. package/lib/components/global-search/elder-global-search.component.d.ts +1 -1
  387. package/lib/components/global-search/elder-global-search.module.d.ts +8 -8
  388. package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +1 -1
  389. package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +3 -3
  390. package/lib/components/headers/elder-header/elder-header.component.d.ts +1 -1
  391. package/lib/components/headers/elder-header.module.d.ts +5 -5
  392. package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +24 -24
  393. package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +1 -1
  394. package/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.d.ts +1 -1
  395. package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +1 -1
  396. package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +1 -1
  397. package/lib/components/i18n/entities/elder-localized-texts.directive.d.ts +1 -1
  398. package/lib/components/i18n/entities/picker/i18n-pick-async.pipe.d.ts +1 -1
  399. package/lib/components/i18n/entities/picker/i18n-pick.pipe.d.ts +1 -1
  400. package/lib/components/i18n/language/elder-language.module.d.ts +10 -10
  401. package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +1 -1
  402. package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +1 -1
  403. package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +1 -1
  404. package/lib/components/iframes/elder-iframe.module.d.ts +16 -16
  405. package/lib/components/iframes/iframe-close.directive.d.ts +1 -1
  406. package/lib/components/iframes/iframe-dialog/iframe-dialog.component.d.ts +1 -1
  407. package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +1 -1
  408. package/lib/components/iframes/iframe-side-content/iframe-side-content.component.d.ts +1 -1
  409. package/lib/components/infinitescroll/elder-infinite-autocomplete.directive.d.ts +1 -1
  410. package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +1 -1
  411. package/lib/components/infinitescroll/elder-infinite-scroll.module.d.ts +4 -4
  412. package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +1 -1
  413. package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +1 -1
  414. package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +1 -1
  415. package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +11 -11
  416. package/lib/components/labels/elder-labels.module.d.ts +9 -9
  417. package/lib/components/labels/labels-input/labels-input.component.d.ts +1 -1
  418. package/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.d.ts +1 -1
  419. package/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.d.ts +1 -1
  420. package/lib/components/measures/directives/elder-unit-select.directive.d.ts +1 -1
  421. package/lib/components/measures/elder-measures.module.d.ts +17 -17
  422. package/lib/components/measures/elder-quantity-transform.pipe.d.ts +1 -1
  423. package/lib/components/measures/elder-quantity.pipe.d.ts +1 -1
  424. package/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.d.ts +1 -1
  425. package/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.d.ts +1 -1
  426. package/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.d.ts +1 -1
  427. package/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.d.ts +1 -1
  428. package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +1 -1
  429. package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +11 -11
  430. package/lib/components/navigation/nav/elder-nav.module.d.ts +12 -12
  431. package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +1 -1
  432. package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +1 -1
  433. package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +1 -1
  434. package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +1 -1
  435. package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +13 -13
  436. package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +1 -1
  437. package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.d.ts +1 -1
  438. package/lib/components/overlays/elder-overlay-origin.directive.d.ts +1 -1
  439. package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +1 -1
  440. package/lib/components/overlays/elder-overlay.component.d.ts +1 -1
  441. package/lib/components/overlays/elder-overlay.module.d.ts +6 -6
  442. package/lib/components/panels/card-panel/elder-card-panel.component.d.ts +1 -1
  443. package/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.d.ts +1 -1
  444. package/lib/components/panels/elder-panel.module.d.ts +8 -8
  445. package/lib/components/panels/flat/elder-panel.component.d.ts +1 -1
  446. package/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.d.ts +1 -1
  447. package/lib/components/panels/toggle-panel/elder-toggle-panel.component.d.ts +3 -3
  448. package/lib/components/scrollbar/elder-scrollbar.directive.d.ts +1 -1
  449. package/lib/components/scrollbar/elder-scrollbar.module.d.ts +1 -1
  450. package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +1 -1
  451. package/lib/components/select/elder-select-chip.directive.d.ts +3 -3
  452. package/lib/components/select/elder-select-on-tab.directive.d.ts +1 -1
  453. package/lib/components/select/elder-select-value.directive.d.ts +1 -1
  454. package/lib/components/select/elder-select.module.d.ts +37 -37
  455. package/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.d.ts +1 -1
  456. package/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.d.ts +1 -1
  457. package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +1 -1
  458. package/lib/components/select/multi/elder-mutli-select-all-directive.d.ts +1 -1
  459. package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +1 -1
  460. package/lib/components/select/popup/selection-model-popup.directive.d.ts +1 -1
  461. package/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.d.ts +1 -1
  462. package/lib/components/select/single/elder-clear-select.directive.d.ts +1 -1
  463. package/lib/components/select/single/elder-select/elder-select.component.d.ts +1 -1
  464. package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +1 -1
  465. package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +6 -6
  466. package/lib/components/shell/elder-shell-slot.directive.d.ts +1 -1
  467. package/lib/components/shell/elder-shell.module.d.ts +16 -16
  468. package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +1 -1
  469. package/lib/components/shell/shell/elder-shell.component.d.ts +4 -4
  470. package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +1 -1
  471. package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +1 -1
  472. package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +1 -1
  473. package/lib/components/tabs/elder-tab.module.d.ts +5 -5
  474. package/lib/components/theme/elder-theme-applier.directive.d.ts +1 -1
  475. package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +1 -1
  476. package/lib/components/theme/elder-theme.directive.d.ts +1 -1
  477. package/lib/components/theme/elder-theme.module.d.ts +8 -8
  478. package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +1 -1
  479. package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +1 -1
  480. package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +1 -1
  481. package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +1 -1
  482. package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +1 -1
  483. package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +1 -1
  484. package/lib/components/time/elder-time.module.d.ts +19 -19
  485. package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +1 -1
  486. package/lib/components/time/pipes/to-iso-date-string.pipe.d.ts +1 -1
  487. package/lib/components/toasts/elder-toast.module.d.ts +6 -6
  488. package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +1 -1
  489. package/lib/components/url-fragment/elder-url-fragment.module.d.ts +10 -10
  490. package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +1 -1
  491. package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +1 -1
  492. package/lib/components/viewers/elder-viewers.module.d.ts +3 -3
  493. package/lib/pipes/bytes.pipe.d.ts +1 -1
  494. package/lib/pipes/elder-pipes.module.d.ts +15 -15
  495. package/lib/pipes/elder-repeat.pipe.d.ts +1 -1
  496. package/lib/pipes/elder-round.pipe.d.ts +1 -1
  497. package/lib/pipes/elder-safe-url.pipe.d.ts +1 -1
  498. package/lib/pipes/elder-truncate.pipe.d.ts +1 -1
  499. package/lib/pipes/iso-duration.pipe.d.ts +1 -1
  500. package/lib/pipes/iso-interval-parse.pipe.d.ts +1 -1
  501. package/lib/pipes/iso-interval.pipe.d.ts +1 -1
  502. package/lib/pipes/time-ago.pipe.d.ts +1 -1
  503. package/lib/pipes/time-duration.pipe.d.ts +1 -1
  504. package/lib/pipes/weight.pipe.d.ts +1 -1
  505. package/package.json +1 -1
@@ -30,17 +30,18 @@ export class ElderShellSlotDirective {
30
30
  ngOnDestroy() {
31
31
  this.elderShellService.deregisterColumn(this.templateRef, this.elderShellSlot);
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellSlotDirective, deps: [{ token: i0.ViewContainerRef }, { token: i1.ElderShellService }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
34
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: ElderShellSlotDirective, selector: "[elderShellSlot]", inputs: { elderShellSlot: "elderShellSlot", elderShellSlotDefault: "elderShellSlotDefault" }, ngImport: i0 }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellSlotDirective, deps: [{ token: i0.ViewContainerRef }, { token: i1.ElderShellService }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
34
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: ElderShellSlotDirective, isStandalone: true, selector: "[elderShellSlot]", inputs: { elderShellSlot: "elderShellSlot", elderShellSlotDefault: "elderShellSlotDefault" }, ngImport: i0 }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellSlotDirective, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellSlotDirective, decorators: [{
37
37
  type: Directive,
38
38
  args: [{
39
- selector: '[elderShellSlot]'
39
+ selector: '[elderShellSlot]',
40
+ standalone: true
40
41
  }]
41
42
  }], ctorParameters: () => [{ type: i0.ViewContainerRef }, { type: i1.ElderShellService }, { type: i0.TemplateRef }], propDecorators: { elderShellSlot: [{
42
43
  type: Input
43
44
  }], elderShellSlotDefault: [{
44
45
  type: Input
45
46
  }] } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2hlbGwtc2xvdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoZWxsL2VsZGVyLXNoZWxsLXNsb3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFtRCxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7OztBQU9uRCxNQUFNLE9BQU8sdUJBQXVCO0lBbUJsQzs7OztnRkFJNEU7SUFFNUUsWUFDVSxhQUErQixFQUMvQixpQkFBb0MsRUFDckMsV0FBNkI7UUFGNUIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBekJ0Qzs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQW9CckUsQ0FBQztJQUVMOzs7O2dGQUk0RTtJQUVyRSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FDbkMsSUFBSSxDQUFDLGNBQWMsRUFDbkIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUNyQyxJQUFJLENBQUMsV0FBVyxFQUNoQixJQUFJLENBQUMsY0FBYyxDQUNwQixDQUFDO0lBQ0osQ0FBQzs4R0FsRFUsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtpQkFDN0I7K0lBY1EsY0FBYztzQkFEcEIsS0FBSztnQkFLQyxxQkFBcUI7c0JBRDNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7U2hlbGxDb250ZW50U2xvdH0gZnJvbSAnLi9zaGVsbC1jb250ZW50LXNsb3QnO1xuaW1wb3J0IHtFbGRlclNoZWxsU2VydmljZX0gZnJvbSAnLi9lbGRlci1zaGVsbC5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyU2hlbGxTbG90XSdcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbFNsb3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgLyoqIFNsb3QgYXQgd2hpY2ggdGVtcGxhdGUgc2hvdWxkIGJlIHBsYWNlZC4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVsZGVyU2hlbGxTbG90OiBTaGVsbENvbnRlbnRTbG90O1xuXG4gIC8qKiBJZiB0aGUgY29sdW1uIHNob3VsZCBiZSBjb25zaWRlcmVkIGFzIGRlZmF1bHQgKGZhbGxiYWNrKS4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVsZGVyU2hlbGxTbG90RGVmYXVsdDogYm9vbGVhbjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBlbGRlclNoZWxsU2VydmljZTogRWxkZXJTaGVsbFNlcnZpY2UsXG4gICAgcHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICApIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZGVyU2hlbGxTZXJ2aWNlLnJlZ2lzdGVyQ29sdW1uKFxuICAgICAgdGhpcy5lbGRlclNoZWxsU2xvdCxcbiAgICAgIHRoaXMudGVtcGxhdGVSZWYsXG4gICAgICB0aGlzLmVsZGVyU2hlbGxTbG90RGVmYXVsdFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5lbGRlclNoZWxsU2VydmljZS5kZXJlZ2lzdGVyQ29sdW1uKFxuICAgICAgdGhpcy50ZW1wbGF0ZVJlZixcbiAgICAgIHRoaXMuZWxkZXJTaGVsbFNsb3RcbiAgICApO1xuICB9XG5cbn1cbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2hlbGwtc2xvdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoZWxsL2VsZGVyLXNoZWxsLXNsb3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFtRCxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7OztBQVFuRCxNQUFNLE9BQU8sdUJBQXVCO0lBbUJsQzs7OztnRkFJNEU7SUFFNUUsWUFDVSxhQUErQixFQUMvQixpQkFBb0MsRUFDckMsV0FBNkI7UUFGNUIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBekJ0Qzs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQW9CckUsQ0FBQztJQUVMOzs7O2dGQUk0RTtJQUVyRSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FDbkMsSUFBSSxDQUFDLGNBQWMsRUFDbkIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUNyQyxJQUFJLENBQUMsV0FBVyxFQUNoQixJQUFJLENBQUMsY0FBYyxDQUNwQixDQUFDO0lBQ0osQ0FBQzs4R0FsRFUsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ25COytJQWNRLGNBQWM7c0JBRHBCLEtBQUs7Z0JBS0MscUJBQXFCO3NCQUQzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge1NoZWxsQ29udGVudFNsb3R9IGZyb20gJy4vc2hlbGwtY29udGVudC1zbG90JztcbmltcG9ydCB7RWxkZXJTaGVsbFNlcnZpY2V9IGZyb20gJy4vZWxkZXItc2hlbGwuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VsZGVyU2hlbGxTbG90XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclNoZWxsU2xvdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICAvKiogU2xvdCBhdCB3aGljaCB0ZW1wbGF0ZSBzaG91bGQgYmUgcGxhY2VkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZWxkZXJTaGVsbFNsb3Q6IFNoZWxsQ29udGVudFNsb3Q7XG5cbiAgLyoqIElmIHRoZSBjb2x1bW4gc2hvdWxkIGJlIGNvbnNpZGVyZWQgYXMgZGVmYXVsdCAoZmFsbGJhY2spLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZWxkZXJTaGVsbFNsb3REZWZhdWx0OiBib29sZWFuO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIGVsZGVyU2hlbGxTZXJ2aWNlOiBFbGRlclNoZWxsU2VydmljZSxcbiAgICBwdWJsaWMgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICkgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZWxkZXJTaGVsbFNlcnZpY2UucmVnaXN0ZXJDb2x1bW4oXG4gICAgICB0aGlzLmVsZGVyU2hlbGxTbG90LFxuICAgICAgdGhpcy50ZW1wbGF0ZVJlZixcbiAgICAgIHRoaXMuZWxkZXJTaGVsbFNsb3REZWZhdWx0XG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZGVyU2hlbGxTZXJ2aWNlLmRlcmVnaXN0ZXJDb2x1bW4oXG4gICAgICB0aGlzLnRlbXBsYXRlUmVmLFxuICAgICAgdGhpcy5lbGRlclNoZWxsU2xvdFxuICAgICk7XG4gIH1cblxufVxuIl19
@@ -24,14 +24,8 @@ export { ElderShellService } from './elder-shell.service';
24
24
  export { ElderShellSlotDirective } from './elder-shell-slot.directive';
25
25
  export { ElderAppHeaderComponent } from './header/elder-app-header/elder-app-header.component';
26
26
  export class ElderShellModule {
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.1", ngImport: i0, type: ElderShellModule, declarations: [ElderShellComponent,
29
- ElderShellSideLeftDirective,
30
- ElderShellSideRightDirective,
31
- ElderShellCenterDirective,
32
- ElderShellNavigationToggleComponent,
33
- ElderShellSlotDirective,
34
- ElderAppHeaderComponent], imports: [CommonModule, RouterModule,
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: ElderShellModule, imports: [CommonModule, RouterModule,
35
29
  MatSidenavModule,
36
30
  MatToolbarModule,
37
31
  MatIconModule,
@@ -40,14 +34,21 @@ export class ElderShellModule {
40
34
  ElderToolbarModule,
41
35
  ElderPanelModule,
42
36
  ElderThemeModule,
43
- TranslateModule], exports: [ElderShellComponent,
37
+ TranslateModule,
38
+ ElderShellComponent,
39
+ ElderShellSideLeftDirective,
40
+ ElderShellSideRightDirective,
41
+ ElderShellCenterDirective,
42
+ ElderShellNavigationToggleComponent,
43
+ ElderShellSlotDirective,
44
+ ElderAppHeaderComponent], exports: [ElderShellComponent,
44
45
  ElderShellSideLeftDirective,
45
46
  ElderShellSideRightDirective,
46
47
  ElderShellCenterDirective,
47
48
  ElderShellNavigationToggleComponent,
48
49
  ElderShellSlotDirective,
49
50
  ElderAppHeaderComponent] }); }
50
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellModule, imports: [CommonModule, RouterModule,
51
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellModule, imports: [CommonModule, RouterModule,
51
52
  MatSidenavModule,
52
53
  MatToolbarModule,
53
54
  MatIconModule,
@@ -56,9 +57,12 @@ export class ElderShellModule {
56
57
  ElderToolbarModule,
57
58
  ElderPanelModule,
58
59
  ElderThemeModule,
59
- TranslateModule] }); }
60
+ TranslateModule,
61
+ ElderShellComponent,
62
+ ElderShellNavigationToggleComponent,
63
+ ElderAppHeaderComponent] }); }
60
64
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellModule, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellModule, decorators: [{
62
66
  type: NgModule,
63
67
  args: [{
64
68
  imports: [
@@ -72,15 +76,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
72
76
  ElderPanelModule,
73
77
  ElderThemeModule,
74
78
  TranslateModule,
75
- ],
76
- declarations: [
77
79
  ElderShellComponent,
78
80
  ElderShellSideLeftDirective,
79
81
  ElderShellSideRightDirective,
80
82
  ElderShellCenterDirective,
81
83
  ElderShellNavigationToggleComponent,
82
84
  ElderShellSlotDirective,
83
- ElderAppHeaderComponent
85
+ ElderAppHeaderComponent,
84
86
  ],
85
87
  exports: [
86
88
  ElderShellComponent,
@@ -93,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
93
95
  ]
94
96
  }]
95
97
  }] });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2hlbGwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zaGVsbC9lbGRlci1zaGVsbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLDRCQUE0QixFQUM3QixNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sbUVBQW1FLENBQUM7QUFDdEgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDL0YsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7O0FBRTdELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sbUVBQW1FLENBQUM7QUFDdEgsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDMUYsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFckUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sc0RBQXNELENBQUM7QUF1QzdGLE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQWxCekIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiw0QkFBNEI7WUFDNUIseUJBQXlCO1lBQ3pCLG1DQUFtQztZQUNuQyx1QkFBdUI7WUFDdkIsdUJBQXVCLGFBdkJ2QixZQUFZLEVBQUUsWUFBWTtZQUUxQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUdmLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBRWhCLGVBQWUsYUFhZixtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLDRCQUE0QjtZQUM1Qix5QkFBeUI7WUFDekIsbUNBQW1DO1lBQ25DLHVCQUF1QjtZQUN2Qix1QkFBdUI7K0dBR2QsZ0JBQWdCLFlBbkN6QixZQUFZLEVBQUUsWUFBWTtZQUUxQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUdmLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBRWhCLGVBQWU7OzJGQXNCTixnQkFBZ0I7a0JBckM1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZLEVBQUUsWUFBWTt3QkFFMUIsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixlQUFlO3dCQUdmLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBRWhCLGVBQWU7cUJBRWhCO29CQUNELFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLDJCQUEyQjt3QkFDM0IsNEJBQTRCO3dCQUM1Qix5QkFBeUI7d0JBQ3pCLG1DQUFtQzt3QkFDbkMsdUJBQXVCO3dCQUN2Qix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxtQkFBbUI7d0JBQ25CLDJCQUEyQjt3QkFDM0IsNEJBQTRCO3dCQUM1Qix5QkFBeUI7d0JBQ3pCLG1DQUFtQzt3QkFDbkMsdUJBQXVCO3dCQUN2Qix1QkFBdUI7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBFbGRlclNoZWxsQ2VudGVyRGlyZWN0aXZlLFxuICBFbGRlclNoZWxsQ29tcG9uZW50LFxuICBFbGRlclNoZWxsU2lkZUxlZnREaXJlY3RpdmUsXG4gIEVsZGVyU2hlbGxTaWRlUmlnaHREaXJlY3RpdmVcbn0gZnJvbSAnLi9zaGVsbC9lbGRlci1zaGVsbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7RWxkZXJUb29sYmFyTW9kdWxlfSBmcm9tICcuLi9uYXZpZ2F0aW9uL3Rvb2xiYXIvZWxkZXItdG9vbGJhci5tb2R1bGUnO1xuaW1wb3J0IHtSb3V0ZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0VsZGVyU2hlbGxOYXZpZ2F0aW9uVG9nZ2xlQ29tcG9uZW50fSBmcm9tICcuL3NoZWxsLW5hdmlnYXRpb24tdG9nZ2xlL2VsZGVyLXNoZWxsLW5hdmlnYXRpb24tdG9nZ2xlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbGRlclNoZWxsU2xvdERpcmVjdGl2ZSB9IGZyb20gJy4vZWxkZXItc2hlbGwtc2xvdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWxkZXJBcHBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci9lbGRlci1hcHAtaGVhZGVyL2VsZGVyLWFwcC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7RWxkZXJQYW5lbE1vZHVsZX0gZnJvbSAnLi4vcGFuZWxzL2VsZGVyLXBhbmVsLm1vZHVsZSc7XG5pbXBvcnQge0VsZGVyVGhlbWVNb2R1bGV9IGZyb20gJy4uL3RoZW1lL2VsZGVyLXRoZW1lLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2hlbGwvZWxkZXItc2hlbGwuY29tcG9uZW50JztcbmV4cG9ydCB7RWxkZXJTaGVsbE5hdmlnYXRpb25Ub2dnbGVDb21wb25lbnR9IGZyb20gJy4vc2hlbGwtbmF2aWdhdGlvbi10b2dnbGUvZWxkZXItc2hlbGwtbmF2aWdhdGlvbi10b2dnbGUuY29tcG9uZW50JztcbmV4cG9ydCB7RHJhd2VyT3V0bGV0QmluZGluZ30gZnJvbSAnLi9kcmF3ZXJzL2RyYXdlci1vdXRsZXQtYmluZGluZyc7XG5leHBvcnQge0VsZGVyUm91dGVPdXRsZXREcmF3ZXJTZXJ2aWNlfSBmcm9tICcuL2RyYXdlcnMvZWxkZXItcm91dGUtb3V0bGV0LWRyYXdlci5zZXJ2aWNlJztcbmV4cG9ydCB7RWxkZXJSb3V0ZXJPdXRsZXRTZXJ2aWNlfSBmcm9tICcuL2RyYXdlcnMvZWxkZXItcm91dGVyLW91dGxldC5zZXJ2aWNlJztcbmV4cG9ydCB7RWxkZXJTaGVsbFNlcnZpY2V9IGZyb20gJy4vZWxkZXItc2hlbGwuc2VydmljZSc7XG5leHBvcnQge0VsZGVyU2hlbGxTbG90RGlyZWN0aXZlfSBmcm9tICcuL2VsZGVyLXNoZWxsLXNsb3QuZGlyZWN0aXZlJztcbmV4cG9ydCB7U2hlbGxDb250ZW50U2xvdH0gZnJvbSAnLi9zaGVsbC1jb250ZW50LXNsb3QnO1xuZXhwb3J0IHtFbGRlckFwcEhlYWRlckNvbXBvbmVudH0gZnJvbSAnLi9oZWFkZXIvZWxkZXItYXBwLWhlYWRlci9lbGRlci1hcHAtaGVhZGVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsIFJvdXRlck1vZHVsZSxcblxuICAgIE1hdFNpZGVuYXZNb2R1bGUsXG4gICAgTWF0VG9vbGJhck1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuXG5cbiAgICBFbGRlclRvb2xiYXJNb2R1bGUsXG4gICAgRWxkZXJQYW5lbE1vZHVsZSxcbiAgICBFbGRlclRoZW1lTW9kdWxlLFxuXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEVsZGVyU2hlbGxDb21wb25lbnQsXG4gICAgRWxkZXJTaGVsbFNpZGVMZWZ0RGlyZWN0aXZlLFxuICAgIEVsZGVyU2hlbGxTaWRlUmlnaHREaXJlY3RpdmUsXG4gICAgRWxkZXJTaGVsbENlbnRlckRpcmVjdGl2ZSxcbiAgICBFbGRlclNoZWxsTmF2aWdhdGlvblRvZ2dsZUNvbXBvbmVudCxcbiAgICBFbGRlclNoZWxsU2xvdERpcmVjdGl2ZSxcbiAgICBFbGRlckFwcEhlYWRlckNvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRWxkZXJTaGVsbENvbXBvbmVudCxcbiAgICBFbGRlclNoZWxsU2lkZUxlZnREaXJlY3RpdmUsXG4gICAgRWxkZXJTaGVsbFNpZGVSaWdodERpcmVjdGl2ZSxcbiAgICBFbGRlclNoZWxsQ2VudGVyRGlyZWN0aXZlLFxuICAgIEVsZGVyU2hlbGxOYXZpZ2F0aW9uVG9nZ2xlQ29tcG9uZW50LFxuICAgIEVsZGVyU2hlbGxTbG90RGlyZWN0aXZlLFxuICAgIEVsZGVyQXBwSGVhZGVyQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbE1vZHVsZSB7IH1cbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2hlbGwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zaGVsbC9lbGRlci1zaGVsbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLDRCQUE0QixFQUM3QixNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sbUVBQW1FLENBQUM7QUFDdEgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDL0YsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7O0FBRTdELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0sbUVBQW1FLENBQUM7QUFDdEgsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDMUYsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFckUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFnQzdGLE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLFlBNUJyQixZQUFZLEVBQUUsWUFBWTtZQUMxQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLDRCQUE0QjtZQUM1Qix5QkFBeUI7WUFDekIsbUNBQW1DO1lBQ25DLHVCQUF1QjtZQUN2Qix1QkFBdUIsYUFHdkIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiw0QkFBNEI7WUFDNUIseUJBQXlCO1lBQ3pCLG1DQUFtQztZQUNuQyx1QkFBdUI7WUFDdkIsdUJBQXVCOytHQUdsQixnQkFBZ0IsWUE1QnJCLFlBQVksRUFBRSxZQUFZO1lBQzFCLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGFBQWE7WUFDYixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLG1CQUFtQjtZQUluQixtQ0FBbUM7WUFFbkMsdUJBQXVCOzsyRkFZbEIsZ0JBQWdCO2tCQTlCNUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWSxFQUFFLFlBQVk7d0JBQzFCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQiw0QkFBNEI7d0JBQzVCLHlCQUF5Qjt3QkFDekIsbUNBQW1DO3dCQUNuQyx1QkFBdUI7d0JBQ3ZCLHVCQUF1QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQiw0QkFBNEI7d0JBQzVCLHlCQUF5Qjt3QkFDekIsbUNBQW1DO3dCQUNuQyx1QkFBdUI7d0JBQ3ZCLHVCQUF1QjtxQkFDMUI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEVsZGVyU2hlbGxDZW50ZXJEaXJlY3RpdmUsXG4gIEVsZGVyU2hlbGxDb21wb25lbnQsXG4gIEVsZGVyU2hlbGxTaWRlTGVmdERpcmVjdGl2ZSxcbiAgRWxkZXJTaGVsbFNpZGVSaWdodERpcmVjdGl2ZVxufSBmcm9tICcuL3NoZWxsL2VsZGVyLXNoZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0U2lkZW5hdk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtFbGRlclRvb2xiYXJNb2R1bGV9IGZyb20gJy4uL25hdmlnYXRpb24vdG9vbGJhci9lbGRlci10b29sYmFyLm1vZHVsZSc7XG5pbXBvcnQge1JvdXRlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7RWxkZXJTaGVsbE5hdmlnYXRpb25Ub2dnbGVDb21wb25lbnR9IGZyb20gJy4vc2hlbGwtbmF2aWdhdGlvbi10b2dnbGUvZWxkZXItc2hlbGwtbmF2aWdhdGlvbi10b2dnbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEVsZGVyU2hlbGxTbG90RGlyZWN0aXZlIH0gZnJvbSAnLi9lbGRlci1zaGVsbC1zbG90LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFbGRlckFwcEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyL2VsZGVyLWFwcC1oZWFkZXIvZWxkZXItYXBwLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtFbGRlclBhbmVsTW9kdWxlfSBmcm9tICcuLi9wYW5lbHMvZWxkZXItcGFuZWwubW9kdWxlJztcbmltcG9ydCB7RWxkZXJUaGVtZU1vZHVsZX0gZnJvbSAnLi4vdGhlbWUvZWxkZXItdGhlbWUubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9zaGVsbC9lbGRlci1zaGVsbC5jb21wb25lbnQnO1xuZXhwb3J0IHtFbGRlclNoZWxsTmF2aWdhdGlvblRvZ2dsZUNvbXBvbmVudH0gZnJvbSAnLi9zaGVsbC1uYXZpZ2F0aW9uLXRvZ2dsZS9lbGRlci1zaGVsbC1uYXZpZ2F0aW9uLXRvZ2dsZS5jb21wb25lbnQnO1xuZXhwb3J0IHtEcmF3ZXJPdXRsZXRCaW5kaW5nfSBmcm9tICcuL2RyYXdlcnMvZHJhd2VyLW91dGxldC1iaW5kaW5nJztcbmV4cG9ydCB7RWxkZXJSb3V0ZU91dGxldERyYXdlclNlcnZpY2V9IGZyb20gJy4vZHJhd2Vycy9lbGRlci1yb3V0ZS1vdXRsZXQtZHJhd2VyLnNlcnZpY2UnO1xuZXhwb3J0IHtFbGRlclJvdXRlck91dGxldFNlcnZpY2V9IGZyb20gJy4vZHJhd2Vycy9lbGRlci1yb3V0ZXItb3V0bGV0LnNlcnZpY2UnO1xuZXhwb3J0IHtFbGRlclNoZWxsU2VydmljZX0gZnJvbSAnLi9lbGRlci1zaGVsbC5zZXJ2aWNlJztcbmV4cG9ydCB7RWxkZXJTaGVsbFNsb3REaXJlY3RpdmV9IGZyb20gJy4vZWxkZXItc2hlbGwtc2xvdC5kaXJlY3RpdmUnO1xuZXhwb3J0IHtTaGVsbENvbnRlbnRTbG90fSBmcm9tICcuL3NoZWxsLWNvbnRlbnQtc2xvdCc7XG5leHBvcnQge0VsZGVyQXBwSGVhZGVyQ29tcG9uZW50fSBmcm9tICcuL2hlYWRlci9lbGRlci1hcHAtaGVhZGVyL2VsZGVyLWFwcC1oZWFkZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSwgUm91dGVyTW9kdWxlLFxuICAgICAgICBNYXRTaWRlbmF2TW9kdWxlLFxuICAgICAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRMaXN0TW9kdWxlLFxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIEVsZGVyVG9vbGJhck1vZHVsZSxcbiAgICAgICAgRWxkZXJQYW5lbE1vZHVsZSxcbiAgICAgICAgRWxkZXJUaGVtZU1vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgICAgICBFbGRlclNoZWxsQ29tcG9uZW50LFxuICAgICAgICBFbGRlclNoZWxsU2lkZUxlZnREaXJlY3RpdmUsXG4gICAgICAgIEVsZGVyU2hlbGxTaWRlUmlnaHREaXJlY3RpdmUsXG4gICAgICAgIEVsZGVyU2hlbGxDZW50ZXJEaXJlY3RpdmUsXG4gICAgICAgIEVsZGVyU2hlbGxOYXZpZ2F0aW9uVG9nZ2xlQ29tcG9uZW50LFxuICAgICAgICBFbGRlclNoZWxsU2xvdERpcmVjdGl2ZSxcbiAgICAgICAgRWxkZXJBcHBIZWFkZXJDb21wb25lbnQsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEVsZGVyU2hlbGxDb21wb25lbnQsXG4gICAgICAgIEVsZGVyU2hlbGxTaWRlTGVmdERpcmVjdGl2ZSxcbiAgICAgICAgRWxkZXJTaGVsbFNpZGVSaWdodERpcmVjdGl2ZSxcbiAgICAgICAgRWxkZXJTaGVsbENlbnRlckRpcmVjdGl2ZSxcbiAgICAgICAgRWxkZXJTaGVsbE5hdmlnYXRpb25Ub2dnbGVDb21wb25lbnQsXG4gICAgICAgIEVsZGVyU2hlbGxTbG90RGlyZWN0aXZlLFxuICAgICAgICBFbGRlckFwcEhlYWRlckNvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbE1vZHVsZSB7IH1cbiJdfQ==
@@ -133,10 +133,10 @@ export class ElderShellService {
133
133
  this.clickOutsideToClose = clickOutsideToClose;
134
134
  return this.routerOutletService.activate(this.detailContentOutlet, args, extras);
135
135
  }
136
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellService, deps: [{ token: i1.Router }, { token: i2.ElderRouterOutletService }], target: i0.ɵɵFactoryTarget.Injectable }); }
137
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellService, providedIn: 'root' }); }
136
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellService, deps: [{ token: i1.Router }, { token: i2.ElderRouterOutletService }], target: i0.ɵɵFactoryTarget.Injectable }); }
137
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellService, providedIn: 'root' }); }
138
138
  }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellService, decorators: [{
139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellService, decorators: [{
140
140
  type: Injectable,
141
141
  args: [{
142
142
  providedIn: 'root'
@@ -1,11 +1,11 @@
1
1
  import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
2
2
  import { debounceTime, takeUntil } from 'rxjs/operators';
3
3
  import { BehaviorSubject, Subject } from 'rxjs';
4
+ import { NgIf, AsyncPipe } from '@angular/common';
5
+ import { MatIcon } from '@angular/material/icon';
6
+ import { ElderPanelComponent } from '../../../panels/flat/elder-panel.component';
4
7
  import * as i0 from "@angular/core";
5
8
  import * as i1 from "../../../theme/elder-theme.service";
6
- import * as i2 from "@angular/common";
7
- import * as i3 from "@angular/material/icon";
8
- import * as i4 from "../../../panels/flat/elder-panel.component";
9
9
  export class ElderAppHeaderComponent {
10
10
  /***************************************************************************
11
11
  * *
@@ -49,12 +49,12 @@ export class ElderAppHeaderComponent {
49
49
  set iconColor(c) {
50
50
  this.iconColor$.next(c);
51
51
  }
52
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderAppHeaderComponent, deps: [{ token: i1.ElderThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: ElderAppHeaderComponent, selector: "elder-app-header", inputs: { icon: "icon", title: "title", subTitle: "subTitle", subTitleLink: "subTitleLink", version: "version", color: "color", iconColor: "iconColor" }, ngImport: i0, template: "<mat-panel [color]=\"color$ | async\" class=\"layout-col full light\">\n <div class=\"layout-row flex-none p-lg\">\n <div class=\"layout-row place-center-center\">\n <mat-icon class=\"noselect title-icon\" [color]=\"iconColor$ | async\">{{icon}}</mat-icon>\n </div>\n <div class=\"layout-col place-center-start\">\n <div class=\"layout-col place-center-center\" style=\"width: 100%\">\n <div class=\"layout-row place-start-end gap-xs\">\n <span id=\"title\" class=\"noselect\" style=\"font-size: 28px\">{{title}}</span>\n <span class=\"mat-caption noselect\"><small>{{version}}</small></span>\n </div>\n </div>\n <div class=\"layout-row place-start-center\">\n <span class=\"mat-caption noselect\">\n <span *ngIf=\"!subTitleLink\">{{subTitle}}</span>\n <a *ngIf=\"subTitleLink\" [href]=\"subTitleLink\" target=\"_blank\" style=\"text-decoration:none; color: inherit\">{{subTitle}}</a>\n </span>\n </div>\n </div>\n </div>\n\n <!-- Project child content here -->\n <ng-content></ng-content>\n\n</mat-panel>\n", styles: [".title-icon{font-size:42px;width:42px;height:42px;padding:20px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.ElderPanelComponent, selector: "elder-panel, mat-panel", inputs: ["color"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
52
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderAppHeaderComponent, deps: [{ token: i1.ElderThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
53
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: ElderAppHeaderComponent, isStandalone: true, selector: "elder-app-header", inputs: { icon: "icon", title: "title", subTitle: "subTitle", subTitleLink: "subTitleLink", version: "version", color: "color", iconColor: "iconColor" }, ngImport: i0, template: "<mat-panel [color]=\"color$ | async\" class=\"layout-col full light\">\n <div class=\"layout-row flex-none p-lg\">\n <div class=\"layout-row place-center-center\">\n <mat-icon class=\"noselect title-icon\" [color]=\"iconColor$ | async\">{{icon}}</mat-icon>\n </div>\n <div class=\"layout-col place-center-start\">\n <div class=\"layout-col place-center-center\" style=\"width: 100%\">\n <div class=\"layout-row place-start-end gap-xs\">\n <span id=\"title\" class=\"noselect\" style=\"font-size: 28px\">{{title}}</span>\n <span class=\"mat-caption noselect\"><small>{{version}}</small></span>\n </div>\n </div>\n <div class=\"layout-row place-start-center\">\n <span class=\"mat-caption noselect\">\n <span *ngIf=\"!subTitleLink\">{{subTitle}}</span>\n <a *ngIf=\"subTitleLink\" [href]=\"subTitleLink\" target=\"_blank\" style=\"text-decoration:none; color: inherit\">{{subTitle}}</a>\n </span>\n </div>\n </div>\n </div>\n\n <!-- Project child content here -->\n <ng-content></ng-content>\n\n</mat-panel>\n", styles: [".title-icon{font-size:42px;width:42px;height:42px;padding:20px}\n"], dependencies: [{ kind: "component", type: ElderPanelComponent, selector: "elder-panel, mat-panel", inputs: ["color"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
54
  }
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderAppHeaderComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderAppHeaderComponent, decorators: [{
56
56
  type: Component,
57
- args: [{ selector: 'elder-app-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-panel [color]=\"color$ | async\" class=\"layout-col full light\">\n <div class=\"layout-row flex-none p-lg\">\n <div class=\"layout-row place-center-center\">\n <mat-icon class=\"noselect title-icon\" [color]=\"iconColor$ | async\">{{icon}}</mat-icon>\n </div>\n <div class=\"layout-col place-center-start\">\n <div class=\"layout-col place-center-center\" style=\"width: 100%\">\n <div class=\"layout-row place-start-end gap-xs\">\n <span id=\"title\" class=\"noselect\" style=\"font-size: 28px\">{{title}}</span>\n <span class=\"mat-caption noselect\"><small>{{version}}</small></span>\n </div>\n </div>\n <div class=\"layout-row place-start-center\">\n <span class=\"mat-caption noselect\">\n <span *ngIf=\"!subTitleLink\">{{subTitle}}</span>\n <a *ngIf=\"subTitleLink\" [href]=\"subTitleLink\" target=\"_blank\" style=\"text-decoration:none; color: inherit\">{{subTitle}}</a>\n </span>\n </div>\n </div>\n </div>\n\n <!-- Project child content here -->\n <ng-content></ng-content>\n\n</mat-panel>\n", styles: [".title-icon{font-size:42px;width:42px;height:42px;padding:20px}\n"] }]
57
+ args: [{ selector: 'elder-app-header', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ElderPanelComponent, MatIcon, NgIf, AsyncPipe], template: "<mat-panel [color]=\"color$ | async\" class=\"layout-col full light\">\n <div class=\"layout-row flex-none p-lg\">\n <div class=\"layout-row place-center-center\">\n <mat-icon class=\"noselect title-icon\" [color]=\"iconColor$ | async\">{{icon}}</mat-icon>\n </div>\n <div class=\"layout-col place-center-start\">\n <div class=\"layout-col place-center-center\" style=\"width: 100%\">\n <div class=\"layout-row place-start-end gap-xs\">\n <span id=\"title\" class=\"noselect\" style=\"font-size: 28px\">{{title}}</span>\n <span class=\"mat-caption noselect\"><small>{{version}}</small></span>\n </div>\n </div>\n <div class=\"layout-row place-start-center\">\n <span class=\"mat-caption noselect\">\n <span *ngIf=\"!subTitleLink\">{{subTitle}}</span>\n <a *ngIf=\"subTitleLink\" [href]=\"subTitleLink\" target=\"_blank\" style=\"text-decoration:none; color: inherit\">{{subTitle}}</a>\n </span>\n </div>\n </div>\n </div>\n\n <!-- Project child content here -->\n <ng-content></ng-content>\n\n</mat-panel>\n", styles: [".title-icon{font-size:42px;width:42px;height:42px;padding:20px}\n"] }]
58
58
  }], ctorParameters: () => [{ type: i1.ElderThemeService }], propDecorators: { icon: [{
59
59
  type: Input
60
60
  }], title: [{
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
70
70
  }], iconColor: [{
71
71
  type: Input
72
72
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXBwLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoZWxsL2hlYWRlci9lbGRlci1hcHAtaGVhZGVyL2VsZGVyLWFwcC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zaGVsbC9oZWFkZXIvZWxkZXItYXBwLWhlYWRlci9lbGRlci1hcHAtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsS0FBSyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRzNGLE9BQU8sRUFBQyxZQUFZLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7OztBQVE5QyxNQUFNLE9BQU8sdUJBQXVCO0lBNEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsWUFBK0I7UUFBL0IsaUJBQVksR0FBWixZQUFZLENBQW1CO1FBcEIzQyxhQUFRLEdBQUcsY0FBYyxDQUFDO1FBRzFCLGlCQUFZLEdBQUcsdUJBQXVCLENBQUM7UUFLOUIsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFlLFNBQVMsQ0FBQyxDQUFDO1FBQ3RELGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBZSxRQUFRLENBQUMsQ0FBQztRQUV4RCxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVU1QyxDQUFDO0lBRUw7Ozs7Z0ZBSTRFO0lBRXJFLFFBQVE7UUFDYixJQUFJLENBQUMsWUFBWTthQUNkLFlBQVk7YUFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDeEIsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLHVCQUF1QjtTQUMxQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFDVyxLQUFLLENBQUMsQ0FBZTtRQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFDVyxTQUFTLENBQUMsQ0FBZTtRQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQTNFVSx1QkFBdUI7a0dBQXZCLHVCQUF1QixrTkNacEMsMGxDQXlCQTs7MkZEYmEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNO3NGQVd4QyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFnREssS0FBSztzQkFEZixLQUFLO2dCQU1LLFNBQVM7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQsIE9uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RoZW1lUGFsZXR0ZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0VsZGVyVGhlbWVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi90aGVtZS9lbGRlci10aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYXBwLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1hcHAtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItYXBwLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckFwcEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdWJUaXRsZSA9ICdieSBFbGRlckJ5dGUnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdWJUaXRsZUxpbmsgPSAnaHR0cHM6Ly9lbGRlcmJ5dGUuY29tJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdmVyc2lvbjogc3RyaW5nO1xuXG4gIHB1YmxpYyByZWFkb25seSBjb2xvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRoZW1lUGFsZXR0ZT4oJ3ByaW1hcnknKTtcbiAgcHVibGljIHJlYWRvbmx5IGljb25Db2xvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRoZW1lUGFsZXR0ZT4oJ2FjY2VudCcpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGhlbWVTZXJ2aWNlOiBFbGRlclRoZW1lU2VydmljZVxuICApIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRoZW1lU2VydmljZVxuICAgICAgLmFjdGl2ZVRoZW1lJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCkgLy8gRml4IGZvciBORzAxMDAgZXJyb3JcbiAgICAgICkuc3Vic2NyaWJlKHRoZW1lID0+IHtcbiAgICAgIHRoaXMuY29sb3IgPSB0aGVtZS5oZXJvQmFja2dyb3VuZDtcbiAgICAgIHRoaXMuaWNvbkNvbG9yID0gdGhlbWUuaGVyb0ljb25Db2xvcjtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGNvbG9yKGM6IFRoZW1lUGFsZXR0ZSl7XG4gICAgdGhpcy5jb2xvciQubmV4dChjKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaWNvbkNvbG9yKGM6IFRoZW1lUGFsZXR0ZSl7XG4gICAgdGhpcy5pY29uQ29sb3IkLm5leHQoYyk7XG4gIH1cbn1cbiIsIjxtYXQtcGFuZWwgW2NvbG9yXT1cImNvbG9yJCB8IGFzeW5jXCIgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGwgbGlnaHRcIj5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgZmxleC1ub25lIHAtbGdcIj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1jZW50ZXItY2VudGVyXCI+XG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJub3NlbGVjdCB0aXRsZS1pY29uXCIgW2NvbG9yXT1cImljb25Db2xvciQgfCBhc3luY1wiPnt7aWNvbn19PC9tYXQtaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBwbGFjZS1jZW50ZXItc3RhcnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIHBsYWNlLWNlbnRlci1jZW50ZXJcIiBzdHlsZT1cIndpZHRoOiAxMDAlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWVuZCBnYXAteHNcIj5cbiAgICAgICAgICA8c3BhbiBpZD1cInRpdGxlXCIgY2xhc3M9XCJub3NlbGVjdFwiIHN0eWxlPVwiZm9udC1zaXplOiAyOHB4XCI+e3t0aXRsZX19PC9zcGFuPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0LWNhcHRpb24gbm9zZWxlY3RcIj48c21hbGw+e3t2ZXJzaW9ufX08L3NtYWxsPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdC1jYXB0aW9uIG5vc2VsZWN0XCI+XG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCIhc3ViVGl0bGVMaW5rXCI+e3tzdWJUaXRsZX19PC9zcGFuPlxuICAgICAgICAgIDxhICpuZ0lmPVwic3ViVGl0bGVMaW5rXCIgW2hyZWZdPVwic3ViVGl0bGVMaW5rXCIgdGFyZ2V0PVwiX2JsYW5rXCIgc3R5bGU9XCJ0ZXh0LWRlY29yYXRpb246bm9uZTsgY29sb3I6IGluaGVyaXRcIj57e3N1YlRpdGxlfX08L2E+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIFByb2plY3QgY2hpbGQgY29udGVudCBoZXJlIC0tPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbjwvbWF0LXBhbmVsPlxuIl19
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXBwLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoZWxsL2hlYWRlci9lbGRlci1hcHAtaGVhZGVyL2VsZGVyLWFwcC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zaGVsbC9oZWFkZXIvZWxkZXItYXBwLWhlYWRlci9lbGRlci1hcHAtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsS0FBSyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRzNGLE9BQU8sRUFBQyxZQUFZLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7OztBQVVqRixNQUFNLE9BQU8sdUJBQXVCO0lBNEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsWUFBK0I7UUFBL0IsaUJBQVksR0FBWixZQUFZLENBQW1CO1FBcEIzQyxhQUFRLEdBQUcsY0FBYyxDQUFDO1FBRzFCLGlCQUFZLEdBQUcsdUJBQXVCLENBQUM7UUFLOUIsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFlLFNBQVMsQ0FBQyxDQUFDO1FBQ3RELGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBZSxRQUFRLENBQUMsQ0FBQztRQUV4RCxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVU1QyxDQUFDO0lBRUw7Ozs7Z0ZBSTRFO0lBRXJFLFFBQVE7UUFDYixJQUFJLENBQUMsWUFBWTthQUNkLFlBQVk7YUFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDeEIsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLHVCQUF1QjtTQUMxQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFDVyxLQUFLLENBQUMsQ0FBZTtRQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFDVyxTQUFTLENBQUMsQ0FBZTtRQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQTNFVSx1QkFBdUI7a0dBQXZCLHVCQUF1QixzT0NqQnBDLDBsQ0F5QkEsMkhEVmMsbUJBQW1CLHNGQUFFLE9BQU8sMklBQUUsSUFBSSx3RkFBRSxTQUFTOzsyRkFFOUMsdUJBQXVCO2tCQVJuQyxTQUFTOytCQUNJLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDO3NGQVduRCxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFnREssS0FBSztzQkFEZixLQUFLO2dCQU1LLFNBQVM7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQsIE9uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RoZW1lUGFsZXR0ZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0VsZGVyVGhlbWVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi90aGVtZS9lbGRlci10aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE5nSWYsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBFbGRlclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vcGFuZWxzL2ZsYXQvZWxkZXItcGFuZWwuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlbGRlci1hcHAtaGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItYXBwLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZWxkZXItYXBwLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0VsZGVyUGFuZWxDb21wb25lbnQsIE1hdEljb24sIE5nSWYsIEFzeW5jUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJBcHBIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc3ViVGl0bGUgPSAnYnkgRWxkZXJCeXRlJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc3ViVGl0bGVMaW5rID0gJ2h0dHBzOi8vZWxkZXJieXRlLmNvbSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHZlcnNpb246IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgY29sb3IkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUaGVtZVBhbGV0dGU+KCdwcmltYXJ5Jyk7XG4gIHB1YmxpYyByZWFkb25seSBpY29uQ29sb3IkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUaGVtZVBhbGV0dGU+KCdhY2NlbnQnKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRoZW1lU2VydmljZTogRWxkZXJUaGVtZVNlcnZpY2VcbiAgKSB7IH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50aGVtZVNlcnZpY2VcbiAgICAgIC5hY3RpdmVUaGVtZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGRlYm91bmNlVGltZSgyMDApIC8vIEZpeCBmb3IgTkcwMTAwIGVycm9yXG4gICAgICApLnN1YnNjcmliZSh0aGVtZSA9PiB7XG4gICAgICB0aGlzLmNvbG9yID0gdGhlbWUuaGVyb0JhY2tncm91bmQ7XG4gICAgICB0aGlzLmljb25Db2xvciA9IHRoZW1lLmhlcm9JY29uQ29sb3I7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBjb2xvcihjOiBUaGVtZVBhbGV0dGUpe1xuICAgIHRoaXMuY29sb3IkLm5leHQoYyk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGljb25Db2xvcihjOiBUaGVtZVBhbGV0dGUpe1xuICAgIHRoaXMuaWNvbkNvbG9yJC5uZXh0KGMpO1xuICB9XG59XG4iLCI8bWF0LXBhbmVsIFtjb2xvcl09XCJjb2xvciQgfCBhc3luY1wiIGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsIGxpZ2h0XCI+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IGZsZXgtbm9uZSBwLWxnXCI+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2UtY2VudGVyLWNlbnRlclwiPlxuICAgICAgPG1hdC1pY29uIGNsYXNzPVwibm9zZWxlY3QgdGl0bGUtaWNvblwiIFtjb2xvcl09XCJpY29uQ29sb3IkIHwgYXN5bmNcIj57e2ljb259fTwvbWF0LWljb24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgcGxhY2UtY2VudGVyLXN0YXJ0XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBwbGFjZS1jZW50ZXItY2VudGVyXCIgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1lbmQgZ2FwLXhzXCI+XG4gICAgICAgICAgPHNwYW4gaWQ9XCJ0aXRsZVwiIGNsYXNzPVwibm9zZWxlY3RcIiBzdHlsZT1cImZvbnQtc2l6ZTogMjhweFwiPnt7dGl0bGV9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdC1jYXB0aW9uIG5vc2VsZWN0XCI+PHNtYWxsPnt7dmVyc2lvbn19PC9zbWFsbD48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXJcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvbiBub3NlbGVjdFwiPlxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIXN1YlRpdGxlTGlua1wiPnt7c3ViVGl0bGV9fTwvc3Bhbj5cbiAgICAgICAgICA8YSAqbmdJZj1cInN1YlRpdGxlTGlua1wiIFtocmVmXT1cInN1YlRpdGxlTGlua1wiIHRhcmdldD1cIl9ibGFua1wiIHN0eWxlPVwidGV4dC1kZWNvcmF0aW9uOm5vbmU7IGNvbG9yOiBpbmhlcml0XCI+e3tzdWJUaXRsZX19PC9hPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBQcm9qZWN0IGNoaWxkIGNvbnRlbnQgaGVyZSAtLT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG48L21hdC1wYW5lbD5cbiJdfQ==
@@ -1,55 +1,64 @@
1
1
  import { ChangeDetectionStrategy, Component, ContentChild, Directive, Input, TemplateRef, ViewChild } from '@angular/core';
2
+ import { MatSidenav, MatSidenavContainer, MatSidenavContent } from '@angular/material/sidenav';
2
3
  import { LoggerFactory } from '@elderbyte/ts-logger';
3
4
  import { BehaviorSubject, Subject } from 'rxjs';
4
5
  import { takeUntil, tap } from 'rxjs/operators';
6
+ import { MatIcon } from '@angular/material/icon';
7
+ import { MatIconButton } from '@angular/material/button';
8
+ import { MatToolbar } from '@angular/material/toolbar';
9
+ import { ElderToolbarComponent } from '../../navigation/toolbar/toolbar/elder-toolbar.component';
10
+ import { RouterOutlet } from '@angular/router';
11
+ import { NgTemplateOutlet, NgIf, AsyncPipe } from '@angular/common';
12
+ import { ElderThemeApplierDirective } from '../../theme/elder-theme-applier.directive';
5
13
  import * as i0 from "@angular/core";
6
14
  import * as i1 from "../elder-shell.service";
7
15
  import * as i2 from "../drawers/elder-route-outlet-drawer.service";
8
16
  import * as i3 from "../../theme/elder-theme.service";
9
17
  import * as i4 from "../../files/drag-n-drop/global-drag-drop.service";
10
- import * as i5 from "@angular/common";
11
- import * as i6 from "@angular/router";
12
- import * as i7 from "@angular/material/sidenav";
13
- import * as i8 from "@angular/material/toolbar";
14
- import * as i9 from "@angular/material/icon";
15
- import * as i10 from "@angular/material/button";
16
- import * as i11 from "../../navigation/toolbar/toolbar/elder-toolbar.component";
17
- import * as i12 from "../../theme/elder-theme-applier.directive";
18
18
  export class ElderShellSideLeftDirective {
19
19
  constructor(templateRef, viewContainer) {
20
20
  this.templateRef = templateRef;
21
21
  this.viewContainer = viewContainer;
22
22
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellSideLeftDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
24
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: ElderShellSideLeftDirective, selector: "[elderShellSideLeft]", ngImport: i0 }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellSideLeftDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
24
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: ElderShellSideLeftDirective, isStandalone: true, selector: "[elderShellSideLeft]", ngImport: i0 }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellSideLeftDirective, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellSideLeftDirective, decorators: [{
27
27
  type: Directive,
28
- args: [{ selector: '[elderShellSideLeft]' }]
28
+ args: [{
29
+ selector: '[elderShellSideLeft]',
30
+ standalone: true
31
+ }]
29
32
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }] });
30
33
  export class ElderShellSideRightDirective {
31
34
  constructor(templateRef, viewContainer) {
32
35
  this.templateRef = templateRef;
33
36
  this.viewContainer = viewContainer;
34
37
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellSideRightDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
36
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: ElderShellSideRightDirective, selector: "[elderShellSideRight]", ngImport: i0 }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellSideRightDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
39
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: ElderShellSideRightDirective, isStandalone: true, selector: "[elderShellSideRight]", ngImport: i0 }); }
37
40
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellSideRightDirective, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellSideRightDirective, decorators: [{
39
42
  type: Directive,
40
- args: [{ selector: '[elderShellSideRight]' }]
43
+ args: [{
44
+ selector: '[elderShellSideRight]',
45
+ standalone: true
46
+ }]
41
47
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }] });
42
48
  export class ElderShellCenterDirective {
43
49
  constructor(templateRef, viewContainer) {
44
50
  this.templateRef = templateRef;
45
51
  this.viewContainer = viewContainer;
46
52
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellCenterDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
48
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: ElderShellCenterDirective, selector: "[elderShellCenter]", ngImport: i0 }); }
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellCenterDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
54
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.2", type: ElderShellCenterDirective, isStandalone: true, selector: "[elderShellCenter]", ngImport: i0 }); }
49
55
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellCenterDirective, decorators: [{
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellCenterDirective, decorators: [{
51
57
  type: Directive,
52
- args: [{ selector: '[elderShellCenter]' }]
58
+ args: [{
59
+ selector: '[elderShellCenter]',
60
+ standalone: true
61
+ }]
53
62
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }] });
54
63
  export class ElderShellComponent {
55
64
  /***************************************************************************
@@ -175,12 +184,12 @@ export class ElderShellComponent {
175
184
  this.changeDetectorRef.markForCheck();
176
185
  }, 5);
177
186
  }
178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellComponent, deps: [{ token: i1.ElderShellService }, { token: i2.ElderRouteOutletDrawerService }, { token: i0.ChangeDetectorRef }, { token: i3.ElderThemeService }, { token: i4.GlobalDragDropService }], target: i0.ɵɵFactoryTarget.Component }); }
179
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: ElderShellComponent, selector: "elder-shell", inputs: { sideNavToggleEnabled: "sideNavToggleEnabled", leftSideAutoFocus: "leftSideAutoFocus", rightSideAutoFocus: "rightSideAutoFocus", color: "color", menuColor: "menuColor", menuIconColor: "menuIconColor" }, queries: [{ propertyName: "sideContentLeft", first: true, predicate: ElderShellSideLeftDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "sideContentRight", first: true, predicate: ElderShellSideRightDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "centerContent", first: true, predicate: ElderShellCenterDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "rightSideDrawer", first: true, predicate: ["rightSideDetail"], descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container\n elderThemeApplier\n class=\"full-width\"\n (backdropClick)=\"onBackdropClick($event)\"\n>\n\n <!-- Left Side Nav -->\n <mat-sidenav position=\"start\"\n mode=\"over\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"leftSideAutoFocus\"\n [opened]=\"leftSideContentOpen$ | async\"\n (closed)=\"closeLeftSideContent()\">\n <div class=\"layout-col full elder-side-nav\">\n <ng-container *ngTemplateOutlet=\"sideContentLeft || fallbackSideContentLeft;\"></ng-container>\n </div>\n </mat-sidenav>\n\n <!-- Main Content -->\n <mat-sidenav-content>\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"centerContent || fallbackCenterContent;\"></ng-container>\n </div>\n </mat-sidenav-content>\n\n <!-- Right Side Detail -->\n <mat-sidenav mode=\"over\" #rightSideDetail id=\"elder-right-side-detail\"\n position=\"end\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"rightSideAutoFocus\"\n [disableClose]=\"true\" (keydown.escape)=\"onEscapeRightSide($event)\">\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"sideContentRight || fallbackSideContentRight;\"></ng-container>\n </div>\n </mat-sidenav>\n\n</mat-sidenav-container>\n\n<ng-template #fallbackSideContentLeft>\n <div class=\"layout-col flex\">\n <p class=\"noselect\">No Left Side Content Defined!</p>\n </div>\n</ng-template>\n\n<ng-template #fallbackSideContentRight>\n <router-outlet name=\"side\" class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #fallbackCenterContent>\n <div class=\"layout-col full\">\n\n <!-- Header -->\n <ng-container *ngTemplateOutlet=\"(headerTemplate$ | async) || defaultHeaderTemplate\"></ng-container>\n\n <!-- Center -->\n <ng-container *ngTemplateOutlet=\"(centerTemplate$ | async) || defaultCenterTemplate\"></ng-container>\n\n <!-- Footer -->\n <ng-container *ngTemplateOutlet=\"(footerTemplate$ | async) || defaultFooterTemplate\"></ng-container>\n\n </div>\n</ng-template>\n\n\n<ng-template #defaultHeaderTemplate>\n <elder-toolbar [color]=\"color\" class=\"flex-none\" style=\"max-width: 100%; min-width: 100%\" >\n <!-- Toolbar Prefix: Sidenav Toggle -->\n <mat-toolbar *ngIf=\"sideNavToggleEnabled\"\n [color]=\"menuColor$ | async\"\n class=\"flex-none\" style=\"width: auto\"\n >\n <button mat-icon-button [color]=\"menuIconColor$ | async\" type=\"button\" (click)=\"toggleSideNav()\">\n <mat-icon>menu</mat-icon>\n </button>\n </mat-toolbar>\n </elder-toolbar>\n</ng-template>\n\n<ng-template #defaultCenterTemplate>\n <!-- Primary Router Outlet -->\n <router-outlet class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <!-- Default Footer is empty -->\n</ng-template>\n", styles: ["mat-sidenav{margin:0;height:100%;overflow:hidden}mat-sidenav .elder-side-nav{min-width:350px}mat-sidenav-container{margin:0;width:100%;height:100%;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i6.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i7.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i7.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i7.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "component", type: i8.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i11.ElderToolbarComponent, selector: "elder-toolbar", inputs: ["color"] }, { kind: "directive", type: i12.ElderThemeApplierDirective, selector: "[elderThemeApplier]" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellComponent, deps: [{ token: i1.ElderShellService }, { token: i2.ElderRouteOutletDrawerService }, { token: i0.ChangeDetectorRef }, { token: i3.ElderThemeService }, { token: i4.GlobalDragDropService }], target: i0.ɵɵFactoryTarget.Component }); }
188
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: ElderShellComponent, isStandalone: true, selector: "elder-shell", inputs: { sideNavToggleEnabled: "sideNavToggleEnabled", leftSideAutoFocus: "leftSideAutoFocus", rightSideAutoFocus: "rightSideAutoFocus", color: "color", menuColor: "menuColor", menuIconColor: "menuIconColor" }, queries: [{ propertyName: "sideContentLeft", first: true, predicate: ElderShellSideLeftDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "sideContentRight", first: true, predicate: ElderShellSideRightDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "centerContent", first: true, predicate: ElderShellCenterDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "rightSideDrawer", first: true, predicate: ["rightSideDetail"], descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container\n elderThemeApplier\n class=\"full-width\"\n (backdropClick)=\"onBackdropClick($event)\"\n>\n\n <!-- Left Side Nav -->\n <mat-sidenav position=\"start\"\n mode=\"over\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"leftSideAutoFocus\"\n [opened]=\"leftSideContentOpen$ | async\"\n (closed)=\"closeLeftSideContent()\">\n <div class=\"layout-col full elder-side-nav\">\n <ng-container *ngTemplateOutlet=\"sideContentLeft || fallbackSideContentLeft;\"></ng-container>\n </div>\n </mat-sidenav>\n\n <!-- Main Content -->\n <mat-sidenav-content>\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"centerContent || fallbackCenterContent;\"></ng-container>\n </div>\n </mat-sidenav-content>\n\n <!-- Right Side Detail -->\n <mat-sidenav mode=\"over\" #rightSideDetail id=\"elder-right-side-detail\"\n position=\"end\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"rightSideAutoFocus\"\n [disableClose]=\"true\" (keydown.escape)=\"onEscapeRightSide($event)\">\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"sideContentRight || fallbackSideContentRight;\"></ng-container>\n </div>\n </mat-sidenav>\n\n</mat-sidenav-container>\n\n<ng-template #fallbackSideContentLeft>\n <div class=\"layout-col flex\">\n <p class=\"noselect\">No Left Side Content Defined!</p>\n </div>\n</ng-template>\n\n<ng-template #fallbackSideContentRight>\n <router-outlet name=\"side\" class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #fallbackCenterContent>\n <div class=\"layout-col full\">\n\n <!-- Header -->\n <ng-container *ngTemplateOutlet=\"(headerTemplate$ | async) || defaultHeaderTemplate\"></ng-container>\n\n <!-- Center -->\n <ng-container *ngTemplateOutlet=\"(centerTemplate$ | async) || defaultCenterTemplate\"></ng-container>\n\n <!-- Footer -->\n <ng-container *ngTemplateOutlet=\"(footerTemplate$ | async) || defaultFooterTemplate\"></ng-container>\n\n </div>\n</ng-template>\n\n\n<ng-template #defaultHeaderTemplate>\n <elder-toolbar [color]=\"color\" class=\"flex-none\" style=\"max-width: 100%; min-width: 100%\" >\n <!-- Toolbar Prefix: Sidenav Toggle -->\n <mat-toolbar *ngIf=\"sideNavToggleEnabled\"\n [color]=\"menuColor$ | async\"\n class=\"flex-none\" style=\"width: auto\"\n >\n <button mat-icon-button [color]=\"menuIconColor$ | async\" type=\"button\" (click)=\"toggleSideNav()\">\n <mat-icon>menu</mat-icon>\n </button>\n </mat-toolbar>\n </elder-toolbar>\n</ng-template>\n\n<ng-template #defaultCenterTemplate>\n <!-- Primary Router Outlet -->\n <router-outlet class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <!-- Default Footer is empty -->\n</ng-template>\n", styles: ["mat-sidenav{margin:0;height:100%;overflow:hidden}mat-sidenav .elder-side-nav{min-width:350px}mat-sidenav-container{margin:0;width:100%;height:100%;overflow:hidden}\n"], dependencies: [{ kind: "component", type: MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "directive", type: ElderThemeApplierDirective, selector: "[elderThemeApplier]" }, { kind: "component", type: MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: ElderToolbarComponent, selector: "elder-toolbar", inputs: ["color"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
180
189
  }
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ElderShellComponent, decorators: [{
190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderShellComponent, decorators: [{
182
191
  type: Component,
183
- args: [{ selector: 'elder-shell', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-sidenav-container\n elderThemeApplier\n class=\"full-width\"\n (backdropClick)=\"onBackdropClick($event)\"\n>\n\n <!-- Left Side Nav -->\n <mat-sidenav position=\"start\"\n mode=\"over\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"leftSideAutoFocus\"\n [opened]=\"leftSideContentOpen$ | async\"\n (closed)=\"closeLeftSideContent()\">\n <div class=\"layout-col full elder-side-nav\">\n <ng-container *ngTemplateOutlet=\"sideContentLeft || fallbackSideContentLeft;\"></ng-container>\n </div>\n </mat-sidenav>\n\n <!-- Main Content -->\n <mat-sidenav-content>\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"centerContent || fallbackCenterContent;\"></ng-container>\n </div>\n </mat-sidenav-content>\n\n <!-- Right Side Detail -->\n <mat-sidenav mode=\"over\" #rightSideDetail id=\"elder-right-side-detail\"\n position=\"end\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"rightSideAutoFocus\"\n [disableClose]=\"true\" (keydown.escape)=\"onEscapeRightSide($event)\">\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"sideContentRight || fallbackSideContentRight;\"></ng-container>\n </div>\n </mat-sidenav>\n\n</mat-sidenav-container>\n\n<ng-template #fallbackSideContentLeft>\n <div class=\"layout-col flex\">\n <p class=\"noselect\">No Left Side Content Defined!</p>\n </div>\n</ng-template>\n\n<ng-template #fallbackSideContentRight>\n <router-outlet name=\"side\" class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #fallbackCenterContent>\n <div class=\"layout-col full\">\n\n <!-- Header -->\n <ng-container *ngTemplateOutlet=\"(headerTemplate$ | async) || defaultHeaderTemplate\"></ng-container>\n\n <!-- Center -->\n <ng-container *ngTemplateOutlet=\"(centerTemplate$ | async) || defaultCenterTemplate\"></ng-container>\n\n <!-- Footer -->\n <ng-container *ngTemplateOutlet=\"(footerTemplate$ | async) || defaultFooterTemplate\"></ng-container>\n\n </div>\n</ng-template>\n\n\n<ng-template #defaultHeaderTemplate>\n <elder-toolbar [color]=\"color\" class=\"flex-none\" style=\"max-width: 100%; min-width: 100%\" >\n <!-- Toolbar Prefix: Sidenav Toggle -->\n <mat-toolbar *ngIf=\"sideNavToggleEnabled\"\n [color]=\"menuColor$ | async\"\n class=\"flex-none\" style=\"width: auto\"\n >\n <button mat-icon-button [color]=\"menuIconColor$ | async\" type=\"button\" (click)=\"toggleSideNav()\">\n <mat-icon>menu</mat-icon>\n </button>\n </mat-toolbar>\n </elder-toolbar>\n</ng-template>\n\n<ng-template #defaultCenterTemplate>\n <!-- Primary Router Outlet -->\n <router-outlet class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <!-- Default Footer is empty -->\n</ng-template>\n", styles: ["mat-sidenav{margin:0;height:100%;overflow:hidden}mat-sidenav .elder-side-nav{min-width:350px}mat-sidenav-container{margin:0;width:100%;height:100%;overflow:hidden}\n"] }]
192
+ args: [{ selector: 'elder-shell', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MatSidenavContainer, ElderThemeApplierDirective, MatSidenav, NgTemplateOutlet, MatSidenavContent, RouterOutlet, ElderToolbarComponent, NgIf, MatToolbar, MatIconButton, MatIcon, AsyncPipe], template: "<mat-sidenav-container\n elderThemeApplier\n class=\"full-width\"\n (backdropClick)=\"onBackdropClick($event)\"\n>\n\n <!-- Left Side Nav -->\n <mat-sidenav position=\"start\"\n mode=\"over\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"leftSideAutoFocus\"\n [opened]=\"leftSideContentOpen$ | async\"\n (closed)=\"closeLeftSideContent()\">\n <div class=\"layout-col full elder-side-nav\">\n <ng-container *ngTemplateOutlet=\"sideContentLeft || fallbackSideContentLeft;\"></ng-container>\n </div>\n </mat-sidenav>\n\n <!-- Main Content -->\n <mat-sidenav-content>\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"centerContent || fallbackCenterContent;\"></ng-container>\n </div>\n </mat-sidenav-content>\n\n <!-- Right Side Detail -->\n <mat-sidenav mode=\"over\" #rightSideDetail id=\"elder-right-side-detail\"\n position=\"end\"\n [fixedInViewport]=\"true\"\n [autoFocus]=\"rightSideAutoFocus\"\n [disableClose]=\"true\" (keydown.escape)=\"onEscapeRightSide($event)\">\n <div class=\"layout-col full\">\n <ng-container *ngTemplateOutlet=\"sideContentRight || fallbackSideContentRight;\"></ng-container>\n </div>\n </mat-sidenav>\n\n</mat-sidenav-container>\n\n<ng-template #fallbackSideContentLeft>\n <div class=\"layout-col flex\">\n <p class=\"noselect\">No Left Side Content Defined!</p>\n </div>\n</ng-template>\n\n<ng-template #fallbackSideContentRight>\n <router-outlet name=\"side\" class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #fallbackCenterContent>\n <div class=\"layout-col full\">\n\n <!-- Header -->\n <ng-container *ngTemplateOutlet=\"(headerTemplate$ | async) || defaultHeaderTemplate\"></ng-container>\n\n <!-- Center -->\n <ng-container *ngTemplateOutlet=\"(centerTemplate$ | async) || defaultCenterTemplate\"></ng-container>\n\n <!-- Footer -->\n <ng-container *ngTemplateOutlet=\"(footerTemplate$ | async) || defaultFooterTemplate\"></ng-container>\n\n </div>\n</ng-template>\n\n\n<ng-template #defaultHeaderTemplate>\n <elder-toolbar [color]=\"color\" class=\"flex-none\" style=\"max-width: 100%; min-width: 100%\" >\n <!-- Toolbar Prefix: Sidenav Toggle -->\n <mat-toolbar *ngIf=\"sideNavToggleEnabled\"\n [color]=\"menuColor$ | async\"\n class=\"flex-none\" style=\"width: auto\"\n >\n <button mat-icon-button [color]=\"menuIconColor$ | async\" type=\"button\" (click)=\"toggleSideNav()\">\n <mat-icon>menu</mat-icon>\n </button>\n </mat-toolbar>\n </elder-toolbar>\n</ng-template>\n\n<ng-template #defaultCenterTemplate>\n <!-- Primary Router Outlet -->\n <router-outlet class=\"router-flex\"></router-outlet>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <!-- Default Footer is empty -->\n</ng-template>\n", styles: ["mat-sidenav{margin:0;height:100%;overflow:hidden}mat-sidenav .elder-side-nav{min-width:350px}mat-sidenav-container{margin:0;width:100%;height:100%;overflow:hidden}\n"] }]
184
193
  }], ctorParameters: () => [{ type: i1.ElderShellService }, { type: i2.ElderRouteOutletDrawerService }, { type: i0.ChangeDetectorRef }, { type: i3.ElderThemeService }, { type: i4.GlobalDragDropService }], propDecorators: { sideNavToggleEnabled: [{
185
194
  type: Input
186
195
  }], leftSideAutoFocus: [{
@@ -206,4 +215,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
206
215
  }], menuIconColor: [{
207
216
  type: Input
208
217
  }] } });
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2hlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zaGVsbC9zaGVsbC9lbGRlci1zaGVsbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoZWxsL3NoZWxsL2VsZGVyLXNoZWxsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixTQUFTLEVBQ1QsS0FBSyxFQUdMLFdBQVcsRUFDWCxTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBQyxTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBUTlDLE1BQU0sT0FBTywyQkFBMkI7SUFDdEMsWUFDUyxXQUE2QixFQUM3QixhQUErQjtRQUQvQixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO0lBQUksQ0FBQzs4R0FIbEMsMkJBQTJCO2tHQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBRHZDLFNBQVM7bUJBQUMsRUFBQyxRQUFRLEVBQUUsc0JBQXNCLEVBQUM7O0FBUTdDLE1BQU0sT0FBTyw0QkFBNEI7SUFDdkMsWUFDUyxXQUE2QixFQUM3QixhQUErQjtRQUQvQixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0Isa0JBQWEsR0FBYixhQUFhLENB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Q0FBQzs4R0FqTVUsbUJBQW1CO2tHQUFuQixtQkFBbUIsb1RBb0JoQiwyQkFBMkIsMkJBQVUsV0FBVyw4RUFHaEQsNEJBQTRCLDJCQUFVLFdBQVcsMkVBR2pELHlCQUF5QiwyQkFBVSxXQUFXLDZLQzlFOUQsMjRGQXNGQTs7MkZEbENhLG1CQUFtQjtrQkFOL0IsU0FBUzsrQkFDRSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU07c09BY3hDLG9CQUFvQjtzQkFEMUIsS0FBSztnQkFJQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBSUMsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUlDLGVBQWU7c0JBRHJCLFlBQVk7dUJBQUMsMkJBQTJCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSXZFLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyw0QkFBNEIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJeEUsYUFBYTtzQkFEbkIsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJckUsZUFBZTtzQkFEckIsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBZXZDLEtBQUs7c0JBRFgsS0FBSztnQkFzRUssU0FBUztzQkFEbkIsS0FBSztnQkFVSyxhQUFhO3NCQUR2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRGlyZWN0aXZlLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VsZGVyU2hlbGxTZXJ2aWNlfSBmcm9tICcuLi9lbGRlci1zaGVsbC5zZXJ2aWNlJztcbmltcG9ydCB7TWF0U2lkZW5hdn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQge0VsZGVyUm91dGVPdXRsZXREcmF3ZXJTZXJ2aWNlfSBmcm9tICcuLi9kcmF3ZXJzL2VsZGVyLXJvdXRlLW91dGxldC1kcmF3ZXIuc2VydmljZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7VGhlbWVQYWxldHRlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7RWxkZXJUaGVtZVNlcnZpY2V9IGZyb20gJy4uLy4uL3RoZW1lL2VsZGVyLXRoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHtUaGVtZVNwZWN9IGZyb20gJy4uLy4uL3RoZW1lL3RoZW1lLXNwZWMnO1xuaW1wb3J0IHtHbG9iYWxEcmFnRHJvcFNlcnZpY2V9IGZyb20gJy4uLy4uL2ZpbGVzL2RyYWctbi1kcm9wL2dsb2JhbC1kcmFnLWRyb3Auc2VydmljZSc7XG5cblxuQERpcmVjdGl2ZSh7c2VsZWN0b3I6ICdbZWxkZXJTaGVsbFNpZGVMZWZ0XSd9KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2hlbGxTaWRlTGVmdERpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikgeyB9XG59XG5cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnW2VsZGVyU2hlbGxTaWRlUmlnaHRdJ30pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbFNpZGVSaWdodERpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikgeyB9XG59XG5cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnW2VsZGVyU2hlbGxDZW50ZXJdJ30pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbENlbnRlckRpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikgeyB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXNoZWxsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLXNoZWxsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItc2hlbGwuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKCdFbGRlclNoZWxsQ29tcG9uZW50Jyk7XG5cbiAgLyoqIENvbnRyb2xzIGlmIHRoZSBTaWRlTmF2IHRvZ2dsZSBzaG91bGQgYmUgZGlzcGxheWVkLiBEZWZhdWx0OiB0cnVlICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaWRlTmF2VG9nZ2xlRW5hYmxlZCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGxlZnRTaWRlQXV0b0ZvY3VzID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJpZ2h0U2lkZUF1dG9Gb2N1cyA9IGZhbHNlO1xuXG4gIEBDb250ZW50Q2hpbGQoRWxkZXJTaGVsbFNpZGVMZWZ0RGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIHNpZGVDb250ZW50TGVmdDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEVsZGVyU2hlbGxTaWRlUmlnaHREaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgc2lkZUNvbnRlbnRSaWdodDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEVsZGVyU2hlbGxDZW50ZXJEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgY2VudGVyQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdyaWdodFNpZGVEZXRhaWwnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgcmlnaHRTaWRlRHJhd2VyOiBNYXRTaWRlbmF2O1xuXG4gIHB1YmxpYyByaWdodFNpZGVPdXRsZXROYW1lID0gJ3NpZGUnO1xuXG4gIHB1YmxpYyBsZWZ0U2lkZUNvbnRlbnRPcGVuJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuXG4gIHB1YmxpYyByZWFkb25seSBoZWFkZXJUZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG4gIHB1YmxpYyByZWFkb25seSBjZW50ZXJUZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG4gIHB1YmxpYyByZWFkb25seSBmb290ZXJUZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvbG9yOiBUaGVtZVBhbGV0dGUgPSAncHJpbWFyeSc7XG5cbiAgcHVibGljIHJlYWRvbmx5IG1lbnVDb2xvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRoZW1lUGFsZXR0ZT4oJ2FjY2VudCcpO1xuICBwdWJsaWMgcmVhZG9ubHkgbWVudUljb25Db2xvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRoZW1lUGFsZXR0ZT4odW5kZWZpbmVkKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNoZWxsU2VydmljZTogRWxkZXJTaGVsbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBvdXRsZXREcmF3ZXJTZXJ2aWNlOiBFbGRlclJvdXRlT3V0bGV0RHJhd2VyU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHRoZW1lU2VydmljZTogRWxkZXJUaGVtZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBnbG9iYWxEcmFnRHJvcFNlcnZpY2U6IEdsb2JhbERyYWdEcm9wU2VydmljZVxuICApIHtcbiAgICB0aGlzLmhlYWRlclRlbXBsYXRlJCA9IHNoZWxsU2VydmljZS5hY3RpdmVTbG90VGVtcGxhdGUoJ2hlYWRlcicpLnBpcGUoXG4gICAgICB0YXAoKCkgPT4gdGhpcy5jaGVja1Nvb24oKSlcbiAgICApO1xuICAgIHRoaXMuY2VudGVyVGVtcGxhdGUkID0gc2hlbGxTZXJ2aWNlLmFjdGl2ZVNsb3RUZW1wbGF0ZSgnY2VudGVyJykucGlwZShcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmNoZWNrU29vbigpKVxuICAgICk7XG4gICAgdGhpcy5mb290ZXJUZW1wbGF0ZSQgPSBzaGVsbFNlcnZpY2UuYWN0aXZlU2xvdFRlbXBsYXRlKCdmb290ZXInKS5waXBlKFxuICAgICAgdGFwKCgpID0+IHRoaXMuY2hlY2tTb29uKCkpXG4gICAgKTtcblxuICAgIHRoaXMuZ2xvYmFsRHJhZ0Ryb3BTZXJ2aWNlLnByZXZlbnREZWZhdWx0RmlsZUxvYWRpbmcoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm91dGxldERyYXdlclNlcnZpY2UucmVnaXN0ZXJPdXRsZXREcmF3ZXIoXG4gICAgICB0aGlzLnJpZ2h0U2lkZU91dGxldE5hbWUsXG4gICAgICB0aGlzLnJpZ2h0U2lkZURyYXdlclxuICAgICk7XG5cbiAgICB0aGlzLm91dGxldERyYXdlclNlcnZpY2VcbiAgICAgIC5kcmF3ZXJWaXNpYmlsaXR5Q2hhbmdlXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGRyYXdlciA9PiAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG5cbiAgICB0aGlzLmxlZnRTaWRlQ29udGVudE9wZW4kID0gIHRoaXMuc2hlbGxTZXJ2aWNlLm5hdmlnYXRpb25PcGVuQ2hhbmdlO1xuXG4gICAgdGhpcy50aGVtZVNlcnZpY2UuYWN0aXZlVGhlbWUkLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZSh0aGVtZSA9PiB0aGlzLmFkanVzdENvbG9yc0ZvclRoZW1lKHRoZW1lKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBtZW51Q29sb3IoYzogVGhlbWVQYWxldHRlKSB7XG4gICAgdGhpcy5tZW51Q29sb3IkLm5leHQoYyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1lbnVDb2xvcigpOiBUaGVtZVBhbGV0dGUge1xuICAgIHJldHVybiB0aGlzLm1lbnVDb2xvciQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgbWVudUljb25Db2xvcihjOiBUaGVtZVBhbGV0dGUpIHtcbiAgICB0aGlzLm1lbnVJY29uQ29sb3IkLm5leHQoYyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1lbnVJY29uQ29sb3IoKTogVGhlbWVQYWxldHRlIHtcbiAgICByZXR1cm4gdGhpcy5tZW51SWNvbkNvbG9yJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGNsb3NlTGVmdFNpZGVDb250ZW50KCkge1xuICAgIHRoaXMuc2hlbGxTZXJ2aWNlLmNsb3NlU2lkZU5hdigpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVNpZGVOYXYoKTogdm9pZCB7XG4gICAgdGhpcy5zaGVsbFNlcnZpY2UudG9nZ2xlU2lkZW5hdigpO1xuICB9XG5cbiAgcHVibGljIG9uQmFja2Ryb3BDbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2hlbGxTZXJ2aWNlLmlzU2lkZUNvbnRlbnRBY3RpdmUoKSkge1xuICAgICAgdGhpcy5zaGVsbFNlcnZpY2UuY2xvc2VTaWRlQ29udGVudCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkVzY2FwZVJpZ2h0U2lkZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldCAmJiB0aGlzLmlzQ29udGFpbmVkKHRhcmdldCwgJ2VsZGVyLXJpZ2h0LXNpZGUtZGV0YWlsJykpIHtcbiAgICAgIC8vIEVuc3VyZSB3ZSBvbmx5IHJlYWN0IHRvIEVzYyBFdmVudHMgdGFyZ2V0ZWQgYXQgb3VyIHNpZGUgbmF2IVxuICAgICAgaWYgKHRoaXMuc2hlbGxTZXJ2aWNlLmlzU2lkZUNvbnRlbnRBY3RpdmUoKSkge1xuICAgICAgICB0aGlzLnNoZWxsU2VydmljZS5jbG9zZVNpZGVDb250ZW50KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBhZGp1c3RDb2xvcnNGb3JUaGVtZSh0aGVtZTogVGhlbWVTcGVjKTogdm9pZCB7XG4gICAgdGhpcy5tZW51Q29sb3IgPSB0aGVtZT8uZGFyayA/IHVuZGVmaW5lZCA6ICdhY2NlbnQnO1xuICAgIHRoaXMubWVudUljb25Db2xvciA9IHRoZW1lPy5kYXJrID8gJ3ByaW1hcnknIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0NvbnRhaW5lZChjaGlsZDogSFRNTEVsZW1lbnQsIGlkOiBzdHJpbmcpOiBib29sZWFuIHtcblxuICAgIGlmIChjaGlsZC5pZCA9PT0gaWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBtYXhEZXB0aCA9IDE7XG4gICAgbGV0IGRlcHRoID0gMDtcbiAgICBsZXQgbm9kZSA9IGNoaWxkLnBhcmVudE5vZGUgYXMgSFRNTEVsZW1lbnQ7XG4gICAgd2hpbGUgKG5vZGUpIHtcbiAgICAgIGlmIChub2RlLmlkID09PSBpZCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIG5vZGUgPSBub2RlLnBhcmVudE5vZGUgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBpZiAobWF4RGVwdGggPj0gKytkZXB0aCkgeyBicmVhazsgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrU29vbigpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSwgNSk7XG4gIH1cbn1cbiIsIjxtYXQtc2lkZW5hdi1jb250YWluZXJcbiAgZWxkZXJUaGVtZUFwcGxpZXJcbiAgY2xhc3M9XCJmdWxsLXdpZHRoXCJcbiAgKGJhY2tkcm9wQ2xpY2spPVwib25CYWNrZHJvcENsaWNrKCRldmVudClcIlxuPlxuXG4gIDwhLS0gTGVmdCBTaWRlIE5hdiAtLT5cbiAgPG1hdC1zaWRlbmF2IHBvc2l0aW9uPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgbW9kZT1cIm92ZXJcIlxuICAgICAgICAgICAgICAgW2ZpeGVkSW5WaWV3cG9ydF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgIFthdXRvRm9jdXNdPVwibGVmdFNpZGVBdXRvRm9jdXNcIlxuICAgICAgICAgICAgICAgW29wZW5lZF09XCJsZWZ0U2lkZUNvbnRlbnRPcGVuJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgIChjbG9zZWQpPVwiY2xvc2VMZWZ0U2lkZUNvbnRlbnQoKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGwgZWxkZXItc2lkZS1uYXZcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzaWRlQ29udGVudExlZnQgfHwgZmFsbGJhY2tTaWRlQ29udGVudExlZnQ7XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXNpZGVuYXY+XG5cbiAgPCEtLSBNYWluIENvbnRlbnQgLS0+XG4gIDxtYXQtc2lkZW5hdi1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjZW50ZXJDb250ZW50IHx8IGZhbGxiYWNrQ2VudGVyQ29udGVudDtcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxuXG4gIDwhLS0gUmlnaHQgU2lkZSBEZXRhaWwgLS0+XG4gIDxtYXQtc2lkZW5hdiBtb2RlPVwib3ZlclwiICNyaWdodFNpZGVEZXRhaWwgaWQ9XCJlbGRlci1yaWdodC1zaWRlLWRldGFpbFwiXG4gICAgICAgICAgICAgICBwb3NpdGlvbj1cImVuZFwiXG4gICAgICAgICAgICAgICBbZml4ZWRJblZpZXdwb3J0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgW2F1dG9Gb2N1c109XCJyaWdodFNpZGVBdXRvRm9jdXNcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVDbG9zZV09XCJ0cnVlXCIgKGtleWRvd24uZXNjYXBlKT1cIm9uRXNjYXBlUmlnaHRTaWRlKCRldmVudClcIj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2lkZUNvbnRlbnRSaWdodCB8fCBmYWxsYmFja1NpZGVDb250ZW50UmlnaHQ7XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXNpZGVuYXY+XG5cbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2ZhbGxiYWNrU2lkZUNvbnRlbnRMZWZ0PlxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmbGV4XCI+XG4gICAgPHAgY2xhc3M9XCJub3NlbGVjdFwiPk5vIExlZnQgU2lkZSBDb250ZW50IERlZmluZWQhPC9wPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZmFsbGJhY2tTaWRlQ29udGVudFJpZ2h0PlxuICA8cm91dGVyLW91dGxldCBuYW1lPVwic2lkZVwiIGNsYXNzPVwicm91dGVyLWZsZXhcIj48L3JvdXRlci1vdXRsZXQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2ZhbGxiYWNrQ2VudGVyQ29udGVudD5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiPlxuXG4gICAgPCEtLSBIZWFkZXIgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIihoZWFkZXJUZW1wbGF0ZSQgfCBhc3luYykgfHwgZGVmYXVsdEhlYWRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIENlbnRlciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiKGNlbnRlclRlbXBsYXRlJCB8IGFzeW5jKSB8fCBkZWZhdWx0Q2VudGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gRm9vdGVyIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCIoZm9vdGVyVGVtcGxhdGUkIHwgYXN5bmMpIHx8IGRlZmF1bHRGb290ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuXG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRIZWFkZXJUZW1wbGF0ZT5cbiAgPGVsZGVyLXRvb2xiYXIgW2NvbG9yXT1cImNvbG9yXCIgY2xhc3M9XCJmbGV4LW5vbmVcIiBzdHlsZT1cIm1heC13aWR0aDogMTAwJTsgbWluLXdpZHRoOiAxMDAlXCIgPlxuICAgIDwhLS0gVG9vbGJhciBQcmVmaXg6IFNpZGVuYXYgVG9nZ2xlIC0tPlxuICAgIDxtYXQtdG9vbGJhciAqbmdJZj1cInNpZGVOYXZUb2dnbGVFbmFibGVkXCJcbiAgICAgICAgICAgICAgICAgW2NvbG9yXT1cIm1lbnVDb2xvciQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleC1ub25lXCIgc3R5bGU9XCJ3aWR0aDogYXV0b1wiXG4gICAgPlxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW2NvbG9yXT1cIm1lbnVJY29uQ29sb3IkIHwgYXN5bmNcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInRvZ2dsZVNpZGVOYXYoKVwiPlxuICAgICAgICA8bWF0LWljb24+bWVudTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC10b29sYmFyPlxuICA8L2VsZGVyLXRvb2xiYXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDZW50ZXJUZW1wbGF0ZT5cbiAgPCEtLSBQcmltYXJ5IFJvdXRlciBPdXRsZXQgLS0+XG4gIDxyb3V0ZXItb3V0bGV0IGNsYXNzPVwicm91dGVyLWZsZXhcIj48L3JvdXRlci1vdXRsZXQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRGb290ZXJUZW1wbGF0ZT5cbiAgPCEtLSBEZWZhdWx0IEZvb3RlciBpcyBlbXB0eSAtLT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2hlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zaGVsbC9zaGVsbC9lbGRlci1zaGVsbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoZWxsL3NoZWxsL2VsZGVyLXNoZWxsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixTQUFTLEVBQ1QsS0FBSyxFQUdMLFdBQVcsRUFDWCxTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRS9GLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFjLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUMsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLFNB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QVUsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQztzT0FjaE0sb0JBQW9CO3NCQUQxQixLQUFLO2dCQUlDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsWUFBWTt1QkFBQywyQkFBMkIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJdkUsZ0JBQWdCO3NCQUR0QixZQUFZO3VCQUFDLDRCQUE0QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUl4RSxhQUFhO3NCQURuQixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlyRSxlQUFlO3NCQURyQixTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFldkMsS0FBSztzQkFEWCxLQUFLO2dCQXNFSyxTQUFTO3NCQURuQixLQUFLO2dCQVVLLGFBQWE7c0JBRHZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RWxkZXJTaGVsbFNlcnZpY2V9IGZyb20gJy4uL2VsZGVyLXNoZWxsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0U2lkZW5hdiwgTWF0U2lkZW5hdkNvbnRhaW5lciwgTWF0U2lkZW5hdkNvbnRlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7RWxkZXJSb3V0ZU91dGxldERyYXdlclNlcnZpY2V9IGZyb20gJy4uL2RyYXdlcnMvZWxkZXItcm91dGUtb3V0bGV0LWRyYXdlci5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWwsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtUaGVtZVBhbGV0dGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtFbGRlclRoZW1lU2VydmljZX0gZnJvbSAnLi4vLi4vdGhlbWUvZWxkZXItdGhlbWUuc2VydmljZSc7XG5pbXBvcnQge1RoZW1lU3BlY30gZnJvbSAnLi4vLi4vdGhlbWUvdGhlbWUtc3BlYyc7XG5pbXBvcnQge0dsb2JhbERyYWdEcm9wU2VydmljZX0gZnJvbSAnLi4vLi4vZmlsZXMvZHJhZy1uLWRyb3AvZ2xvYmFsLWRyYWctZHJvcC5zZXJ2aWNlJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEljb25CdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0VG9vbGJhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHsgRWxkZXJUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbmF2aWdhdGlvbi90b29sYmFyL3Rvb2xiYXIvZWxkZXItdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm91dGVyT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQsIE5nSWYsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBFbGRlclRoZW1lQXBwbGllckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3RoZW1lL2VsZGVyLXRoZW1lLWFwcGxpZXIuZGlyZWN0aXZlJztcblxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlbGRlclNoZWxsU2lkZUxlZnRdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2hlbGxTaWRlTGVmdERpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikgeyB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VsZGVyU2hlbGxTaWRlUmlnaHRdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2hlbGxTaWRlUmlnaHREaXJlY3RpdmUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgcHVibGljIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHsgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlbGRlclNoZWxsQ2VudGVyXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclNoZWxsQ2VudGVyRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHB1YmxpYyB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7IH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlbGRlci1zaGVsbCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLXNoZWxsLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9lbGRlci1zaGVsbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW01hdFNpZGVuYXZDb250YWluZXIsIEVsZGVyVGhlbWVBcHBsaWVyRGlyZWN0aXZlLCBNYXRTaWRlbmF2LCBOZ1RlbXBsYXRlT3V0bGV0LCBNYXRTaWRlbmF2Q29udGVudCwgUm91dGVyT3V0bGV0LCBFbGRlclRvb2xiYXJDb21wb25lbnQsIE5nSWYsIE1hdFRvb2xiYXIsIE1hdEljb25CdXR0b24sIE1hdEljb24sIEFzeW5jUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJTaGVsbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKCdFbGRlclNoZWxsQ29tcG9uZW50Jyk7XG5cbiAgLyoqIENvbnRyb2xzIGlmIHRoZSBTaWRlTmF2IHRvZ2dsZSBzaG91bGQgYmUgZGlzcGxheWVkLiBEZWZhdWx0OiB0cnVlICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaWRlTmF2VG9nZ2xlRW5hYmxlZCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGxlZnRTaWRlQXV0b0ZvY3VzID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJpZ2h0U2lkZUF1dG9Gb2N1cyA9IGZhbHNlO1xuXG4gIEBDb250ZW50Q2hpbGQoRWxkZXJTaGVsbFNpZGVMZWZ0RGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIHNpZGVDb250ZW50TGVmdDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEVsZGVyU2hlbGxTaWRlUmlnaHREaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgc2lkZUNvbnRlbnRSaWdodDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEVsZGVyU2hlbGxDZW50ZXJEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgY2VudGVyQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdyaWdodFNpZGVEZXRhaWwnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgcmlnaHRTaWRlRHJhd2VyOiBNYXRTaWRlbmF2O1xuXG4gIHB1YmxpYyByaWdodFNpZGVPdXRsZXROYW1lID0gJ3NpZGUnO1xuXG4gIHB1YmxpYyBsZWZ0U2lkZUNvbnRlbnRPcGVuJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuXG4gIHB1YmxpYyByZWFkb25seSBoZWFkZXJUZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG4gIHB1YmxpYyByZWFkb25seSBjZW50ZXJUZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG4gIHB1YmxpYyByZWFkb25seSBmb290ZXJUZW1wbGF0ZSQ6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvbG9yOiBUaGVtZVBhbGV0dGUgPSAncHJpbWFyeSc7XG5cbiAgcHVibGljIHJlYWRvbmx5IG1lbnVDb2xvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRoZW1lUGFsZXR0ZT4oJ2FjY2VudCcpO1xuICBwdWJsaWMgcmVhZG9ubHkgbWVudUljb25Db2xvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRoZW1lUGFsZXR0ZT4odW5kZWZpbmVkKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNoZWxsU2VydmljZTogRWxkZXJTaGVsbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBvdXRsZXREcmF3ZXJTZXJ2aWNlOiBFbGRlclJvdXRlT3V0bGV0RHJhd2VyU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHRoZW1lU2VydmljZTogRWxkZXJUaGVtZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBnbG9iYWxEcmFnRHJvcFNlcnZpY2U6IEdsb2JhbERyYWdEcm9wU2VydmljZVxuICApIHtcbiAgICB0aGlzLmhlYWRlclRlbXBsYXRlJCA9IHNoZWxsU2VydmljZS5hY3RpdmVTbG90VGVtcGxhdGUoJ2hlYWRlcicpLnBpcGUoXG4gICAgICB0YXAoKCkgPT4gdGhpcy5jaGVja1Nvb24oKSlcbiAgICApO1xuICAgIHRoaXMuY2VudGVyVGVtcGxhdGUkID0gc2hlbGxTZXJ2aWNlLmFjdGl2ZVNsb3RUZW1wbGF0ZSgnY2VudGVyJykucGlwZShcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmNoZWNrU29vbigpKVxuICAgICk7XG4gICAgdGhpcy5mb290ZXJUZW1wbGF0ZSQgPSBzaGVsbFNlcnZpY2UuYWN0aXZlU2xvdFRlbXBsYXRlKCdmb290ZXInKS5waXBlKFxuICAgICAgdGFwKCgpID0+IHRoaXMuY2hlY2tTb29uKCkpXG4gICAgKTtcblxuICAgIHRoaXMuZ2xvYmFsRHJhZ0Ryb3BTZXJ2aWNlLnByZXZlbnREZWZhdWx0RmlsZUxvYWRpbmcoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm91dGxldERyYXdlclNlcnZpY2UucmVnaXN0ZXJPdXRsZXREcmF3ZXIoXG4gICAgICB0aGlzLnJpZ2h0U2lkZU91dGxldE5hbWUsXG4gICAgICB0aGlzLnJpZ2h0U2lkZURyYXdlclxuICAgICk7XG5cbiAgICB0aGlzLm91dGxldERyYXdlclNlcnZpY2VcbiAgICAgIC5kcmF3ZXJWaXNpYmlsaXR5Q2hhbmdlXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGRyYXdlciA9PiAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG5cbiAgICB0aGlzLmxlZnRTaWRlQ29udGVudE9wZW4kID0gIHRoaXMuc2hlbGxTZXJ2aWNlLm5hdmlnYXRpb25PcGVuQ2hhbmdlO1xuXG4gICAgdGhpcy50aGVtZVNlcnZpY2UuYWN0aXZlVGhlbWUkLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZSh0aGVtZSA9PiB0aGlzLmFkanVzdENvbG9yc0ZvclRoZW1lKHRoZW1lKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBtZW51Q29sb3IoYzogVGhlbWVQYWxldHRlKSB7XG4gICAgdGhpcy5tZW51Q29sb3IkLm5leHQoYyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1lbnVDb2xvcigpOiBUaGVtZVBhbGV0dGUge1xuICAgIHJldHVybiB0aGlzLm1lbnVDb2xvciQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgbWVudUljb25Db2xvcihjOiBUaGVtZVBhbGV0dGUpIHtcbiAgICB0aGlzLm1lbnVJY29uQ29sb3IkLm5leHQoYyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1lbnVJY29uQ29sb3IoKTogVGhlbWVQYWxldHRlIHtcbiAgICByZXR1cm4gdGhpcy5tZW51SWNvbkNvbG9yJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGNsb3NlTGVmdFNpZGVDb250ZW50KCkge1xuICAgIHRoaXMuc2hlbGxTZXJ2aWNlLmNsb3NlU2lkZU5hdigpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVNpZGVOYXYoKTogdm9pZCB7XG4gICAgdGhpcy5zaGVsbFNlcnZpY2UudG9nZ2xlU2lkZW5hdigpO1xuICB9XG5cbiAgcHVibGljIG9uQmFja2Ryb3BDbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2hlbGxTZXJ2aWNlLmlzU2lkZUNvbnRlbnRBY3RpdmUoKSkge1xuICAgICAgdGhpcy5zaGVsbFNlcnZpY2UuY2xvc2VTaWRlQ29udGVudCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkVzY2FwZVJpZ2h0U2lkZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldCAmJiB0aGlzLmlzQ29udGFpbmVkKHRhcmdldCwgJ2VsZGVyLXJpZ2h0LXNpZGUtZGV0YWlsJykpIHtcbiAgICAgIC8vIEVuc3VyZSB3ZSBvbmx5IHJlYWN0IHRvIEVzYyBFdmVudHMgdGFyZ2V0ZWQgYXQgb3VyIHNpZGUgbmF2IVxuICAgICAgaWYgKHRoaXMuc2hlbGxTZXJ2aWNlLmlzU2lkZUNvbnRlbnRBY3RpdmUoKSkge1xuICAgICAgICB0aGlzLnNoZWxsU2VydmljZS5jbG9zZVNpZGVDb250ZW50KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBhZGp1c3RDb2xvcnNGb3JUaGVtZSh0aGVtZTogVGhlbWVTcGVjKTogdm9pZCB7XG4gICAgdGhpcy5tZW51Q29sb3IgPSB0aGVtZT8uZGFyayA/IHVuZGVmaW5lZCA6ICdhY2NlbnQnO1xuICAgIHRoaXMubWVudUljb25Db2xvciA9IHRoZW1lPy5kYXJrID8gJ3ByaW1hcnknIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0NvbnRhaW5lZChjaGlsZDogSFRNTEVsZW1lbnQsIGlkOiBzdHJpbmcpOiBib29sZWFuIHtcblxuICAgIGlmIChjaGlsZC5pZCA9PT0gaWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBtYXhEZXB0aCA9IDE7XG4gICAgbGV0IGRlcHRoID0gMDtcbiAgICBsZXQgbm9kZSA9IGNoaWxkLnBhcmVudE5vZGUgYXMgSFRNTEVsZW1lbnQ7XG4gICAgd2hpbGUgKG5vZGUpIHtcbiAgICAgIGlmIChub2RlLmlkID09PSBpZCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIG5vZGUgPSBub2RlLnBhcmVudE5vZGUgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBpZiAobWF4RGVwdGggPj0gKytkZXB0aCkgeyBicmVhazsgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrU29vbigpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSwgNSk7XG4gIH1cbn1cbiIsIjxtYXQtc2lkZW5hdi1jb250YWluZXJcbiAgZWxkZXJUaGVtZUFwcGxpZXJcbiAgY2xhc3M9XCJmdWxsLXdpZHRoXCJcbiAgKGJhY2tkcm9wQ2xpY2spPVwib25CYWNrZHJvcENsaWNrKCRldmVudClcIlxuPlxuXG4gIDwhLS0gTGVmdCBTaWRlIE5hdiAtLT5cbiAgPG1hdC1zaWRlbmF2IHBvc2l0aW9uPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgbW9kZT1cIm92ZXJcIlxuICAgICAgICAgICAgICAgW2ZpeGVkSW5WaWV3cG9ydF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgIFthdXRvRm9jdXNdPVwibGVmdFNpZGVBdXRvRm9jdXNcIlxuICAgICAgICAgICAgICAgW29wZW5lZF09XCJsZWZ0U2lkZUNvbnRlbnRPcGVuJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgIChjbG9zZWQpPVwiY2xvc2VMZWZ0U2lkZUNvbnRlbnQoKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGwgZWxkZXItc2lkZS1uYXZcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzaWRlQ29udGVudExlZnQgfHwgZmFsbGJhY2tTaWRlQ29udGVudExlZnQ7XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXNpZGVuYXY+XG5cbiAgPCEtLSBNYWluIENvbnRlbnQgLS0+XG4gIDxtYXQtc2lkZW5hdi1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjZW50ZXJDb250ZW50IHx8IGZhbGxiYWNrQ2VudGVyQ29udGVudDtcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxuXG4gIDwhLS0gUmlnaHQgU2lkZSBEZXRhaWwgLS0+XG4gIDxtYXQtc2lkZW5hdiBtb2RlPVwib3ZlclwiICNyaWdodFNpZGVEZXRhaWwgaWQ9XCJlbGRlci1yaWdodC1zaWRlLWRldGFpbFwiXG4gICAgICAgICAgICAgICBwb3NpdGlvbj1cImVuZFwiXG4gICAgICAgICAgICAgICBbZml4ZWRJblZpZXdwb3J0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgW2F1dG9Gb2N1c109XCJyaWdodFNpZGVBdXRvRm9jdXNcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVDbG9zZV09XCJ0cnVlXCIgKGtleWRvd24uZXNjYXBlKT1cIm9uRXNjYXBlUmlnaHRTaWRlKCRldmVudClcIj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2lkZUNvbnRlbnRSaWdodCB8fCBmYWxsYmFja1NpZGVDb250ZW50UmlnaHQ7XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXNpZGVuYXY+XG5cbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2ZhbGxiYWNrU2lkZUNvbnRlbnRMZWZ0PlxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmbGV4XCI+XG4gICAgPHAgY2xhc3M9XCJub3NlbGVjdFwiPk5vIExlZnQgU2lkZSBDb250ZW50IERlZmluZWQhPC9wPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZmFsbGJhY2tTaWRlQ29udGVudFJpZ2h0PlxuICA8cm91dGVyLW91dGxldCBuYW1lPVwic2lkZVwiIGNsYXNzPVwicm91dGVyLWZsZXhcIj48L3JvdXRlci1vdXRsZXQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2ZhbGxiYWNrQ2VudGVyQ29udGVudD5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiPlxuXG4gICAgPCEtLSBIZWFkZXIgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIihoZWFkZXJUZW1wbGF0ZSQgfCBhc3luYykgfHwgZGVmYXVsdEhlYWRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIENlbnRlciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiKGNlbnRlclRlbXBsYXRlJCB8IGFzeW5jKSB8fCBkZWZhdWx0Q2VudGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gRm9vdGVyIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCIoZm9vdGVyVGVtcGxhdGUkIHwgYXN5bmMpIHx8IGRlZmF1bHRGb290ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuXG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRIZWFkZXJUZW1wbGF0ZT5cbiAgPGVsZGVyLXRvb2xiYXIgW2NvbG9yXT1cImNvbG9yXCIgY2xhc3M9XCJmbGV4LW5vbmVcIiBzdHlsZT1cIm1heC13aWR0aDogMTAwJTsgbWluLXdpZHRoOiAxMDAlXCIgPlxuICAgIDwhLS0gVG9vbGJhciBQcmVmaXg6IFNpZGVuYXYgVG9nZ2xlIC0tPlxuICAgIDxtYXQtdG9vbGJhciAqbmdJZj1cInNpZGVOYXZUb2dnbGVFbmFibGVkXCJcbiAgICAgICAgICAgICAgICAgW2NvbG9yXT1cIm1lbnVDb2xvciQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleC1ub25lXCIgc3R5bGU9XCJ3aWR0aDogYXV0b1wiXG4gICAgPlxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW2NvbG9yXT1cIm1lbnVJY29uQ29sb3IkIHwgYXN5bmNcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInRvZ2dsZVNpZGVOYXYoKVwiPlxuICAgICAgICA8bWF0LWljb24+bWVudTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L21hdC10b29sYmFyPlxuICA8L2VsZGVyLXRvb2xiYXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDZW50ZXJUZW1wbGF0ZT5cbiAgPCEtLSBQcmltYXJ5IFJvdXRlciBPdXRsZXQgLS0+XG4gIDxyb3V0ZXItb3V0bGV0IGNsYXNzPVwicm91dGVyLWZsZXhcIj48L3JvdXRlci1vdXRsZXQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRGb290ZXJUZW1wbGF0ZT5cbiAgPCEtLSBEZWZhdWx0IEZvb3RlciBpcyBlbXB0eSAtLT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=