@odx/angular 6.0.0 → 6.0.1

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 (650) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/animations/lib/expand.d.ts +44 -0
  3. package/animations/lib/fade.d.ts +70 -0
  4. package/animations/lib/slide.d.ts +21 -0
  5. package/animations/lib/wait-for-child-animations.d.ts +38 -0
  6. package/breakpoints/lib/breakpoints.config.d.ts +38 -0
  7. package/breakpoints/lib/breakpoints.service.d.ts +43 -0
  8. package/breakpoints/lib/directives/match-breakpoints.directive.d.ts +36 -0
  9. package/breakpoints/lib/helpers/configure-breakpoint.d.ts +19 -0
  10. package/cdk/a11y/lib/directives/interactive.directive.d.ts +32 -0
  11. package/cdk/a11y/lib/directives/list-focus-manager-option.directive.d.ts +22 -0
  12. package/cdk/a11y/lib/directives/list-focus-manager.directive.d.ts +17 -0
  13. package/cdk/active-indicator/lib/active-indicator.directive.d.ts +63 -0
  14. package/cdk/autocomplete-control/lib/autocomplete-control.d.ts +53 -0
  15. package/cdk/checkbox-control/lib/checkbox-control.directive.d.ts +3 -0
  16. package/cdk/connected-overlay/lib/connected-overlay.service.d.ts +44 -0
  17. package/cdk/connected-overlay/lib/helpers/compute-overlay-position.d.ts +10 -0
  18. package/cdk/connected-overlay/lib/models/connected-overlay-ref.d.ts +49 -0
  19. package/cdk/custom-form-control/lib/custom-form-control.d.ts +108 -0
  20. package/cdk/custom-form-control/lib/input-control.directive.d.ts +75 -0
  21. package/cdk/dynamic-view/lib/dynamic-view.directive.d.ts +25 -0
  22. package/cdk/dynamic-view/lib/dynamic-view.service.d.ts +30 -0
  23. package/cdk/dynamic-view/lib/helpers/create-projectable-nodes.d.ts +22 -0
  24. package/cdk/dynamic-view/lib/helpers/is-dynamic-text-content.d.ts +22 -0
  25. package/cdk/dynamic-view/lib/helpers/is-dynamic-view.d.ts +22 -0
  26. package/cdk/dynamic-view/lib/models/dynamic-component-ref.d.ts +39 -0
  27. package/cdk/dynamic-view/lib/models/dynamic-template-ref.d.ts +36 -0
  28. package/cdk/event-plugins/lib/event-plugins.config.d.ts +35 -0
  29. package/cdk/event-plugins/lib/models/event-plugin.d.ts +57 -0
  30. package/cdk/event-plugins/lib/plugins/debounce-event-plugin.d.ts +32 -0
  31. package/cdk/event-plugins/lib/plugins/defer-event-plugin.d.ts +24 -0
  32. package/cdk/expandable/lib/directives/expandable-container.directive.d.ts +41 -0
  33. package/cdk/expandable/lib/directives/expandable-item.directive.d.ts +47 -0
  34. package/cdk/option-control/lib/option-control.d.ts +47 -0
  35. package/cdk/radio-group-control/lib/radio-control.directive.d.ts +8 -0
  36. package/cdk/radio-group-control/lib/radio-group-control.directive.d.ts +11 -0
  37. package/components/accordion/lib/accordion.component.d.ts +8 -0
  38. package/components/accordion/lib/components/accordion-item/accordion-item.component.d.ts +37 -1
  39. package/components/accordion/lib/directives/accordion-item-title.d.ts +3 -0
  40. package/components/action-group/action-group.component.d.ts +6 -0
  41. package/components/area-header/area-header.component.d.ts +8 -0
  42. package/components/area-header/directives/area-header-content.directive.d.ts +3 -0
  43. package/components/area-header/directives/area-header-subtitle.directive.d.ts +3 -0
  44. package/components/autocomplete/lib/autocomplete.component.d.ts +17 -0
  45. package/components/avatar/lib/avatar.component.d.ts +8 -0
  46. package/components/badge/lib/badge.component.d.ts +10 -0
  47. package/components/badge/lib/badge.directive.d.ts +15 -0
  48. package/components/bar/lib/bar.component.d.ts +7 -0
  49. package/components/bar/lib/directives/bar-button.directive.d.ts +3 -0
  50. package/components/bar/lib/directives/bar-label.directive.d.ts +3 -0
  51. package/components/breadcrumbs/lib/breadcrumbs.component.d.ts +3 -0
  52. package/components/button/lib/button.component.d.ts +10 -0
  53. package/components/button-group/lib/button-group.component.d.ts +15 -0
  54. package/components/calendar/lib/calendar.component.d.ts +48 -0
  55. package/components/calendar/lib/calendar.config.d.ts +17 -0
  56. package/components/calendar/lib/calendar.service.d.ts +48 -0
  57. package/components/calendar/lib/components/calendar-header/calendar-header.component.d.ts +24 -0
  58. package/components/calendar/lib/components/calendar-month/calendar-month.component.d.ts +6 -0
  59. package/components/calendar/lib/components/calendar-year/calendar-year.component.d.ts +6 -0
  60. package/components/calendar/lib/components/calendar-years/calendar-years.component.d.ts +6 -0
  61. package/components/calendar/lib/daterange.service.d.ts +16 -0
  62. package/components/calendar/lib/directives/calendar-cell.directive.d.ts +37 -0
  63. package/components/calendar/lib/directives/calendar-view.directive.d.ts +41 -0
  64. package/components/calendar/lib/pipes/date-label.pipe.d.ts +5 -0
  65. package/components/calendar/lib/services/calendar-month.service.d.ts +1 -0
  66. package/components/calendar/lib/services/calendar-year.service.d.ts +1 -0
  67. package/components/calendar/lib/services/calendar-years.service.d.ts +1 -0
  68. package/components/calendar/lib/utils/check-cell-in-range.d.ts +1 -0
  69. package/components/calendar/lib/utils/check-identical-date.d.ts +1 -0
  70. package/components/calendar/lib/utils/get-A11y-label.d.ts +1 -0
  71. package/components/calendar/lib/utils/is-date-disabled.d.ts +1 -0
  72. package/components/calendar/lib/utils/parse-date.d.ts +1 -0
  73. package/components/calendar/lib/utils/validate-daterange.d.ts +1 -0
  74. package/components/calendar/lib/utils/validate-max-date.d.ts +1 -0
  75. package/components/calendar/lib/utils/validate-min-date.d.ts +1 -0
  76. package/components/calendar/lib/utils/validate-next-date-set.d.ts +1 -0
  77. package/components/calendar/lib/utils/validate-previous-date-set.d.ts +1 -0
  78. package/components/checkbox/lib/checkbox.component.d.ts +32 -0
  79. package/components/checkbox/lib/checkbox.validator.d.ts +23 -0
  80. package/components/chip/lib/components/chip/chip.component.d.ts +14 -0
  81. package/components/chip/lib/components/chip-list/chip-list.component.d.ts +3 -0
  82. package/components/chip/lib/components/chip-list-row/chip-list-row.component.d.ts +3 -0
  83. package/components/circular-progress/lib/circular-progress.component.d.ts +20 -0
  84. package/components/content-box/lib/content-box.component.d.ts +3 -0
  85. package/components/content-box/lib/directives/content-box-footer.directive.d.ts +3 -0
  86. package/components/content-box/lib/directives/content-box-header.directive.d.ts +3 -0
  87. package/components/datepicker/lib/datepicker.component.d.ts +47 -0
  88. package/components/datepicker/lib/datepicker.config.d.ts +19 -0
  89. package/components/datepicker/lib/directives/datepicker-input-control.directive.d.ts +30 -0
  90. package/components/datepicker/lib/utils/get-datepicker-input-pattern.d.ts +2 -0
  91. package/components/datepicker/lib/utils/get-datepicker-input-value-as-date.d.ts +1 -0
  92. package/components/daterangepicker/lib/daterangepicker.component.d.ts +89 -0
  93. package/components/daterangepicker/lib/daterangepicker.config.d.ts +19 -0
  94. package/components/daterangepicker/lib/directives/daterangepicker-input-control.directive.d.ts +30 -0
  95. package/components/daterangepicker/lib/range.validator.d.ts +15 -0
  96. package/components/daterangepicker/lib/required.validator.d.ts +6 -0
  97. package/components/daterangepicker/lib/utils/get-daterangepicker-input-pattern.d.ts +2 -0
  98. package/components/daterangepicker/lib/utils/get-daterangepicker-input-value-as-date.d.ts +1 -0
  99. package/components/dropdown/lib/dropdown.component.d.ts +16 -0
  100. package/components/dropdown/lib/dropdown.directive.d.ts +67 -0
  101. package/components/dropdown/lib/helpers/close-current-dropdown.d.ts +5 -0
  102. package/components/error-page/lib/error-page.component.d.ts +7 -0
  103. package/components/error-page/lib/error-page.config.d.ts +18 -0
  104. package/components/footer/lib/footer.component.d.ts +9 -6
  105. package/components/footer/lib/footer.config.d.ts +2 -0
  106. package/components/form-field/lib/components/form-field-info/form-field-info.component.d.ts +13 -0
  107. package/components/form-field/lib/components/form-group/form-group.component.d.ts +16 -0
  108. package/components/form-field/lib/directives/form-field-control.directive.d.ts +5 -0
  109. package/components/form-field/lib/directives/form-field-error.directive.d.ts +6 -0
  110. package/components/form-field/lib/directives/form-field-hint.directive.d.ts +3 -0
  111. package/components/form-field/lib/directives/form-field-label.directive.d.ts +3 -0
  112. package/components/form-field/lib/directives/form.directive.d.ts +13 -0
  113. package/components/form-field/lib/form-field.component.d.ts +20 -0
  114. package/components/form-field/lib/form-field.service.d.ts +42 -0
  115. package/components/form-field/lib/services/form-field-error.service.d.ts +24 -0
  116. package/components/header/lib/directives/header-avatar.directive.d.ts +4 -0
  117. package/components/header/lib/directives/header-title.directive.d.ts +3 -0
  118. package/components/header/lib/header.component.d.ts +3 -0
  119. package/components/header-navigation/lib/directives/header-navigation-link.directive.d.ts +3 -0
  120. package/components/header-navigation/lib/header-navigation.component.d.ts +6 -0
  121. package/components/icon/lib/helpers/unpack-icon-identifier.d.ts +14 -0
  122. package/components/icon/lib/icon.component.d.ts +24 -0
  123. package/components/icon/lib/icon.config.d.ts +26 -0
  124. package/components/inline-message/lib/inline-message.component.d.ts +13 -0
  125. package/components/link/link.directive.d.ts +3 -0
  126. package/components/list/lib/components/expandable-list-item/expandable-list-item.component.d.ts +6 -0
  127. package/components/list/lib/components/list-item/list-item.component.d.ts +17 -1
  128. package/components/list/lib/list.component.d.ts +5 -0
  129. package/components/loading-spinner/lib/loading-spinner.component.d.ts +8 -0
  130. package/components/loading-spinner/lib/loading-spinner.directive.d.ts +22 -0
  131. package/components/logo/logo.directive.d.ts +15 -0
  132. package/components/main-menu/lib/directives/main-menu-button.directive.d.ts +5 -1
  133. package/components/main-menu/lib/directives/main-menu-close.directive.d.ts +3 -0
  134. package/components/main-menu/lib/directives/main-menu-item.directive.d.ts +16 -0
  135. package/components/main-menu/lib/helpers/create-main-menu-links.d.ts +1 -0
  136. package/components/main-menu/lib/main-menu.component.d.ts +42 -0
  137. package/components/main-menu/lib/main-menu.config.d.ts +31 -0
  138. package/components/main-menu/lib/main-menu.service.d.ts +28 -0
  139. package/components/mainfilter-group/lib/mainfilter-group.component.d.ts +4 -0
  140. package/components/menu/lib/directives/menu-item.directive.d.ts +6 -0
  141. package/components/menu/lib/menu.component.d.ts +13 -1
  142. package/components/menu/lib/menu.directive.d.ts +31 -0
  143. package/components/modal/lib/components/basic-modal/basic-modal.component.d.ts +14 -0
  144. package/components/modal/lib/components/modal-footer/modal-footer.component.d.ts +3 -0
  145. package/components/modal/lib/components/modal-header/modal-header.component.d.ts +9 -0
  146. package/components/modal/lib/components/modal-hero/modal-hero.component.d.ts +21 -0
  147. package/components/modal/lib/directives/modal-close.directive.d.ts +25 -1
  148. package/components/modal/lib/directives/modal-content.directive.d.ts +3 -0
  149. package/components/modal/lib/directives/modal-dismiss.directive.d.ts +18 -1
  150. package/components/modal/lib/helpers/inject-modal-ref.d.ts +21 -0
  151. package/components/modal/lib/helpers/provide-modal-ref.d.ts +9 -0
  152. package/components/modal/lib/modal.component.d.ts +25 -0
  153. package/components/modal/lib/modal.config.d.ts +33 -0
  154. package/components/modal/lib/modal.directive.d.ts +29 -0
  155. package/components/modal/lib/modal.service.d.ts +54 -0
  156. package/components/modal/lib/models/modal-ref.d.ts +34 -0
  157. package/components/navigation-back/lib/navigation-back.component.d.ts +3 -0
  158. package/components/notification/lib/components/notification-center/notification-center.component.d.ts +0 -2
  159. package/components/notification/lib/directives/notification-center.directive.d.ts +18 -4
  160. package/components/notification/lib/helpers/get-notifications-by-tag.d.ts +1 -0
  161. package/components/notification/lib/helpers/sort-notifications.d.ts +1 -0
  162. package/components/notification/lib/helpers/to-notification-collection.d.ts +1 -0
  163. package/components/notification/lib/models/notification-feature.d.ts +15 -0
  164. package/components/notification/lib/notification.config.d.ts +54 -0
  165. package/components/notification/lib/notification.logger.d.ts +1 -0
  166. package/components/notification/lib/notification.service.d.ts +55 -0
  167. package/components/notification/lib/notification.tokens.d.ts +3 -0
  168. package/components/notification/lib/services/notification-center.service.d.ts +9 -0
  169. package/components/paginator/lib/paginator.component.d.ts +89 -0
  170. package/components/paginator/lib/paginator.config.d.ts +24 -2
  171. package/components/progress/lib/progress.component.d.ts +15 -0
  172. package/components/radio-group/lib/radio-group.component.d.ts +11 -0
  173. package/components/rail-navigation/lib/components/rail-navigation-item/rail-navigation-item.component.d.ts +19 -0
  174. package/components/rail-navigation/lib/rail-navigation.component.d.ts +26 -0
  175. package/components/rich-list/lib/components/rich-list-content/rich-list-content.component.d.ts +4 -0
  176. package/components/rich-list/lib/components/rich-list-header/rich-list-header.component.d.ts +4 -0
  177. package/components/rich-list/lib/components/rich-list-item/rich-list-item.component.d.ts +9 -1
  178. package/components/rich-list/lib/rich-list.component.d.ts +9 -2
  179. package/components/select/lib/components/select-option/select-option.component.d.ts +39 -2
  180. package/components/select/lib/directives/select-input-control.directive.d.ts +11 -0
  181. package/components/select/lib/pipes/select-search-filter.pipe.d.ts +10 -0
  182. package/components/select/lib/select.component.d.ts +59 -0
  183. package/components/slider/lib/slider.directive.d.ts +19 -0
  184. package/components/spinbox/lib/spinbox.component.d.ts +16 -0
  185. package/components/switch/lib/switch.component.d.ts +10 -0
  186. package/components/switch/lib/switch.validator.d.ts +12 -0
  187. package/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.d.ts +28 -0
  188. package/components/tab-bar/lib/tab-bar.component.d.ts +69 -0
  189. package/components/table/lib/components/check-cell/check-cell.component.d.ts +18 -0
  190. package/components/table/lib/components/header-title/header-title.component.d.ts +33 -1
  191. package/components/table/lib/directives/table-cell.directive.d.ts +4 -0
  192. package/components/table/lib/directives/table-row.directive.d.ts +4 -0
  193. package/components/table/lib/table.component.d.ts +36 -0
  194. package/components/timepicker/lib/timepicker.component.d.ts +11 -2
  195. package/components/timepicker/lib/utils/generate-time-stamps.d.ts +2 -1
  196. package/components/timepicker/lib/utils/ngx-mask-helper.d.ts +2 -2
  197. package/components/toast/lib/toast.config.d.ts +26 -0
  198. package/components/toast/lib/toast.service.d.ts +35 -0
  199. package/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.d.ts +11 -0
  200. package/components/toggle-button-group/lib/toggle-button-group.component.d.ts +12 -0
  201. package/components/tooltip/lib/tooltip.component.d.ts +20 -0
  202. package/components/tooltip/lib/tooltip.directive.d.ts +35 -0
  203. package/components/wizard/lib/components/wizard-step/wizard-step.component.d.ts +34 -0
  204. package/components/wizard/lib/wizard.component.d.ts +20 -0
  205. package/esm2022/animations/lib/expand.mjs +45 -1
  206. package/esm2022/animations/lib/fade.mjs +71 -1
  207. package/esm2022/animations/lib/slide.mjs +22 -1
  208. package/esm2022/animations/lib/wait-for-child-animations.mjs +39 -1
  209. package/esm2022/breakpoints/lib/breakpoints.config.mjs +39 -1
  210. package/esm2022/breakpoints/lib/breakpoints.service.mjs +44 -1
  211. package/esm2022/breakpoints/lib/directives/match-breakpoints.directive.mjs +37 -1
  212. package/esm2022/breakpoints/lib/helpers/configure-breakpoint.mjs +20 -1
  213. package/esm2022/cdk/a11y/lib/directives/interactive.directive.mjs +33 -1
  214. package/esm2022/cdk/a11y/lib/directives/list-focus-manager-option.directive.mjs +23 -1
  215. package/esm2022/cdk/a11y/lib/directives/list-focus-manager.directive.mjs +18 -1
  216. package/esm2022/cdk/active-indicator/lib/active-indicator.directive.mjs +64 -1
  217. package/esm2022/cdk/autocomplete-control/lib/autocomplete-control.mjs +39 -1
  218. package/esm2022/cdk/checkbox-control/lib/checkbox-control.directive.mjs +4 -1
  219. package/esm2022/cdk/connected-overlay/lib/connected-overlay.service.mjs +45 -1
  220. package/esm2022/cdk/connected-overlay/lib/helpers/compute-overlay-position.mjs +11 -1
  221. package/esm2022/cdk/connected-overlay/lib/models/connected-overlay-ref.mjs +50 -1
  222. package/esm2022/cdk/custom-form-control/lib/custom-form-control.mjs +109 -3
  223. package/esm2022/cdk/custom-form-control/lib/input-control.directive.mjs +76 -1
  224. package/esm2022/cdk/dynamic-view/lib/dynamic-view.directive.mjs +18 -1
  225. package/esm2022/cdk/dynamic-view/lib/dynamic-view.service.mjs +31 -1
  226. package/esm2022/cdk/dynamic-view/lib/helpers/create-projectable-nodes.mjs +23 -1
  227. package/esm2022/cdk/dynamic-view/lib/helpers/is-dynamic-text-content.mjs +23 -1
  228. package/esm2022/cdk/dynamic-view/lib/helpers/is-dynamic-view.mjs +23 -1
  229. package/esm2022/cdk/dynamic-view/lib/models/dynamic-component-ref.mjs +40 -1
  230. package/esm2022/cdk/dynamic-view/lib/models/dynamic-template-ref.mjs +37 -1
  231. package/esm2022/cdk/event-plugins/lib/event-plugins.config.mjs +36 -1
  232. package/esm2022/cdk/event-plugins/lib/models/event-plugin.mjs +45 -1
  233. package/esm2022/cdk/event-plugins/lib/plugins/debounce-event-plugin.mjs +33 -1
  234. package/esm2022/cdk/event-plugins/lib/plugins/defer-event-plugin.mjs +25 -1
  235. package/esm2022/cdk/expandable/lib/directives/expandable-container.directive.mjs +42 -1
  236. package/esm2022/cdk/expandable/lib/directives/expandable-item.directive.mjs +48 -1
  237. package/esm2022/cdk/option-control/lib/option-control.mjs +48 -1
  238. package/esm2022/cdk/radio-group-control/lib/radio-control.directive.mjs +9 -1
  239. package/esm2022/cdk/radio-group-control/lib/radio-group-control.directive.mjs +12 -1
  240. package/esm2022/components/accordion/lib/accordion.component.mjs +9 -1
  241. package/esm2022/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +31 -1
  242. package/esm2022/components/accordion/lib/directives/accordion-item-title.mjs +4 -1
  243. package/esm2022/components/action-group/action-group.component.mjs +7 -1
  244. package/esm2022/components/area-header/area-header.component.mjs +9 -1
  245. package/esm2022/components/area-header/directives/area-header-content.directive.mjs +4 -1
  246. package/esm2022/components/area-header/directives/area-header-subtitle.directive.mjs +4 -1
  247. package/esm2022/components/autocomplete/lib/autocomplete.component.mjs +18 -1
  248. package/esm2022/components/avatar/lib/avatar.component.mjs +9 -1
  249. package/esm2022/components/badge/lib/badge.component.mjs +11 -1
  250. package/esm2022/components/badge/lib/badge.directive.mjs +16 -1
  251. package/esm2022/components/bar/lib/bar.component.mjs +8 -1
  252. package/esm2022/components/bar/lib/directives/bar-button.directive.mjs +4 -1
  253. package/esm2022/components/bar/lib/directives/bar-label.directive.mjs +4 -1
  254. package/esm2022/components/breadcrumbs/lib/breadcrumbs.component.mjs +4 -1
  255. package/esm2022/components/button/lib/button.component.mjs +11 -1
  256. package/esm2022/components/button-group/lib/button-group.component.mjs +16 -1
  257. package/esm2022/components/calendar/lib/calendar.component.mjs +35 -1
  258. package/esm2022/components/calendar/lib/calendar.config.mjs +18 -1
  259. package/esm2022/components/calendar/lib/calendar.service.mjs +49 -1
  260. package/esm2022/components/calendar/lib/components/calendar-header/calendar-header.component.mjs +19 -1
  261. package/esm2022/components/calendar/lib/components/calendar-month/calendar-month.component.mjs +7 -1
  262. package/esm2022/components/calendar/lib/components/calendar-year/calendar-year.component.mjs +7 -1
  263. package/esm2022/components/calendar/lib/components/calendar-years/calendar-years.component.mjs +7 -1
  264. package/esm2022/components/calendar/lib/daterange.service.mjs +17 -1
  265. package/esm2022/components/calendar/lib/directives/calendar-cell.directive.mjs +26 -1
  266. package/esm2022/components/calendar/lib/directives/calendar-view.directive.mjs +39 -1
  267. package/esm2022/components/calendar/lib/pipes/date-label.pipe.mjs +6 -1
  268. package/esm2022/components/calendar/lib/services/calendar-month.service.mjs +2 -1
  269. package/esm2022/components/calendar/lib/services/calendar-year.service.mjs +2 -1
  270. package/esm2022/components/calendar/lib/services/calendar-years.service.mjs +2 -1
  271. package/esm2022/components/calendar/lib/utils/check-cell-in-range.mjs +2 -1
  272. package/esm2022/components/calendar/lib/utils/check-identical-date.mjs +2 -1
  273. package/esm2022/components/calendar/lib/utils/get-A11y-label.mjs +2 -1
  274. package/esm2022/components/calendar/lib/utils/is-date-disabled.mjs +2 -1
  275. package/esm2022/components/calendar/lib/utils/parse-date.mjs +2 -1
  276. package/esm2022/components/calendar/lib/utils/validate-daterange.mjs +2 -1
  277. package/esm2022/components/calendar/lib/utils/validate-max-date.mjs +2 -1
  278. package/esm2022/components/calendar/lib/utils/validate-min-date.mjs +2 -1
  279. package/esm2022/components/calendar/lib/utils/validate-next-date-set.mjs +2 -1
  280. package/esm2022/components/calendar/lib/utils/validate-previous-date-set.mjs +2 -1
  281. package/esm2022/components/checkbox/lib/checkbox.component.mjs +33 -1
  282. package/esm2022/components/checkbox/lib/checkbox.validator.mjs +24 -1
  283. package/esm2022/components/chip/lib/components/chip/chip.component.mjs +15 -1
  284. package/esm2022/components/chip/lib/components/chip-list/chip-list.component.mjs +4 -1
  285. package/esm2022/components/chip/lib/components/chip-list-row/chip-list-row.component.mjs +4 -1
  286. package/esm2022/components/circular-progress/lib/circular-progress.component.mjs +21 -1
  287. package/esm2022/components/content-box/lib/content-box.component.mjs +4 -1
  288. package/esm2022/components/content-box/lib/directives/content-box-footer.directive.mjs +4 -1
  289. package/esm2022/components/content-box/lib/directives/content-box-header.directive.mjs +4 -1
  290. package/esm2022/components/datepicker/lib/datepicker.component.mjs +33 -1
  291. package/esm2022/components/datepicker/lib/datepicker.config.mjs +20 -1
  292. package/esm2022/components/datepicker/lib/directives/datepicker-input-control.directive.mjs +31 -1
  293. package/esm2022/components/datepicker/lib/utils/get-datepicker-input-pattern.mjs +3 -1
  294. package/esm2022/components/datepicker/lib/utils/get-datepicker-input-value-as-date.mjs +2 -1
  295. package/esm2022/components/daterangepicker/lib/daterangepicker.component.mjs +65 -1
  296. package/esm2022/components/daterangepicker/lib/daterangepicker.config.mjs +20 -1
  297. package/esm2022/components/daterangepicker/lib/directives/daterangepicker-input-control.directive.mjs +31 -1
  298. package/esm2022/components/daterangepicker/lib/range.validator.mjs +16 -1
  299. package/esm2022/components/daterangepicker/lib/required.validator.mjs +15 -1
  300. package/esm2022/components/daterangepicker/lib/utils/get-daterangepicker-input-pattern.mjs +3 -1
  301. package/esm2022/components/daterangepicker/lib/utils/get-daterangepicker-input-value-as-date.mjs +2 -1
  302. package/esm2022/components/dropdown/lib/dropdown.component.mjs +8 -1
  303. package/esm2022/components/dropdown/lib/dropdown.directive.mjs +55 -1
  304. package/esm2022/components/dropdown/lib/helpers/close-current-dropdown.mjs +6 -1
  305. package/esm2022/components/error-page/lib/error-page.component.mjs +8 -1
  306. package/esm2022/components/error-page/lib/error-page.config.mjs +9 -1
  307. package/esm2022/components/footer/lib/footer.component.mjs +10 -7
  308. package/esm2022/components/footer/lib/footer.config.mjs +3 -1
  309. package/esm2022/components/form-field/lib/components/form-field-info/form-field-info.component.mjs +14 -1
  310. package/esm2022/components/form-field/lib/components/form-group/form-group.component.mjs +13 -1
  311. package/esm2022/components/form-field/lib/directives/form-field-control.directive.mjs +6 -1
  312. package/esm2022/components/form-field/lib/directives/form-field-error.directive.mjs +4 -1
  313. package/esm2022/components/form-field/lib/directives/form-field-hint.directive.mjs +4 -1
  314. package/esm2022/components/form-field/lib/directives/form-field-label.directive.mjs +4 -1
  315. package/esm2022/components/form-field/lib/directives/form.directive.mjs +14 -1
  316. package/esm2022/components/form-field/lib/form-field.component.mjs +14 -1
  317. package/esm2022/components/form-field/lib/form-field.service.mjs +43 -1
  318. package/esm2022/components/form-field/lib/services/form-field-error.service.mjs +25 -1
  319. package/esm2022/components/header/lib/directives/header-avatar.directive.mjs +5 -1
  320. package/esm2022/components/header/lib/directives/header-title.directive.mjs +4 -1
  321. package/esm2022/components/header/lib/header.component.mjs +4 -1
  322. package/esm2022/components/header-navigation/lib/directives/header-navigation-link.directive.mjs +4 -1
  323. package/esm2022/components/header-navigation/lib/header-navigation.component.mjs +4 -1
  324. package/esm2022/components/icon/lib/helpers/unpack-icon-identifier.mjs +15 -1
  325. package/esm2022/components/icon/lib/icon.component.mjs +25 -1
  326. package/esm2022/components/icon/lib/icon.config.mjs +20 -1
  327. package/esm2022/components/inline-message/lib/inline-message.component.mjs +14 -1
  328. package/esm2022/components/link/link.directive.mjs +4 -1
  329. package/esm2022/components/list/lib/components/expandable-list-item/expandable-list-item.component.mjs +7 -1
  330. package/esm2022/components/list/lib/components/list-item/list-item.component.mjs +18 -2
  331. package/esm2022/components/list/lib/list.component.mjs +6 -1
  332. package/esm2022/components/loading-spinner/lib/loading-spinner.component.mjs +10 -2
  333. package/esm2022/components/loading-spinner/lib/loading-spinner.directive.mjs +23 -1
  334. package/esm2022/components/logo/logo.directive.mjs +16 -1
  335. package/esm2022/components/main-menu/lib/directives/main-menu-button.directive.mjs +5 -1
  336. package/esm2022/components/main-menu/lib/directives/main-menu-close.directive.mjs +4 -1
  337. package/esm2022/components/main-menu/lib/directives/main-menu-item.directive.mjs +17 -1
  338. package/esm2022/components/main-menu/lib/helpers/create-main-menu-links.mjs +2 -1
  339. package/esm2022/components/main-menu/lib/main-menu.component.mjs +37 -1
  340. package/esm2022/components/main-menu/lib/main-menu.config.mjs +32 -1
  341. package/esm2022/components/main-menu/lib/main-menu.service.mjs +29 -1
  342. package/esm2022/components/mainfilter-group/lib/mainfilter-group.component.mjs +5 -1
  343. package/esm2022/components/menu/lib/directives/menu-item.directive.mjs +7 -1
  344. package/esm2022/components/menu/lib/menu.component.mjs +13 -1
  345. package/esm2022/components/menu/lib/menu.directive.mjs +19 -1
  346. package/esm2022/components/modal/lib/components/basic-modal/basic-modal.component.mjs +15 -1
  347. package/esm2022/components/modal/lib/components/modal-footer/modal-footer.component.mjs +4 -1
  348. package/esm2022/components/modal/lib/components/modal-header/modal-header.component.mjs +4 -1
  349. package/esm2022/components/modal/lib/components/modal-hero/modal-hero.component.mjs +12 -1
  350. package/esm2022/components/modal/lib/directives/modal-close.directive.mjs +25 -1
  351. package/esm2022/components/modal/lib/directives/modal-content.directive.mjs +4 -1
  352. package/esm2022/components/modal/lib/directives/modal-dismiss.directive.mjs +18 -1
  353. package/esm2022/components/modal/lib/helpers/inject-modal-ref.mjs +22 -1
  354. package/esm2022/components/modal/lib/helpers/provide-modal-ref.mjs +10 -1
  355. package/esm2022/components/modal/lib/modal.component.mjs +21 -2
  356. package/esm2022/components/modal/lib/modal.config.mjs +34 -1
  357. package/esm2022/components/modal/lib/modal.directive.mjs +25 -1
  358. package/esm2022/components/modal/lib/modal.service.mjs +39 -1
  359. package/esm2022/components/modal/lib/models/modal-ref.mjs +34 -1
  360. package/esm2022/components/navigation-back/lib/navigation-back.component.mjs +4 -1
  361. package/esm2022/components/notification/lib/components/notification-center/notification-center.component.mjs +1 -3
  362. package/esm2022/components/notification/lib/directives/notification-center.directive.mjs +19 -5
  363. package/esm2022/components/notification/lib/helpers/get-notifications-by-tag.mjs +2 -1
  364. package/esm2022/components/notification/lib/helpers/sort-notifications.mjs +2 -1
  365. package/esm2022/components/notification/lib/helpers/to-notification-collection.mjs +2 -1
  366. package/esm2022/components/notification/lib/models/notification-feature.mjs +16 -1
  367. package/esm2022/components/notification/lib/notification.config.mjs +45 -1
  368. package/esm2022/components/notification/lib/notification.logger.mjs +2 -1
  369. package/esm2022/components/notification/lib/notification.service.mjs +56 -1
  370. package/esm2022/components/notification/lib/notification.tokens.mjs +4 -1
  371. package/esm2022/components/notification/lib/services/notification-center.service.mjs +10 -1
  372. package/esm2022/components/paginator/lib/paginator.component.mjs +90 -1
  373. package/esm2022/components/paginator/lib/paginator.config.mjs +29 -1
  374. package/esm2022/components/progress/lib/progress.component.mjs +16 -1
  375. package/esm2022/components/radio-group/lib/radio-group.component.mjs +13 -2
  376. package/esm2022/components/rail-navigation/lib/components/rail-navigation-item/rail-navigation-item.component.mjs +17 -1
  377. package/esm2022/components/rail-navigation/lib/rail-navigation.component.mjs +27 -1
  378. package/esm2022/components/rich-list/lib/components/rich-list-content/rich-list-content.component.mjs +5 -1
  379. package/esm2022/components/rich-list/lib/components/rich-list-header/rich-list-header.component.mjs +5 -1
  380. package/esm2022/components/rich-list/lib/components/rich-list-item/rich-list-item.component.mjs +10 -2
  381. package/esm2022/components/rich-list/lib/rich-list.component.mjs +10 -3
  382. package/esm2022/components/select/lib/components/select-option/select-option.component.mjs +47 -6
  383. package/esm2022/components/select/lib/directives/select-input-control.directive.mjs +12 -2
  384. package/esm2022/components/select/lib/pipes/select-search-filter.pipe.mjs +11 -1
  385. package/esm2022/components/select/lib/select.component.mjs +56 -2
  386. package/esm2022/components/slider/lib/slider.directive.mjs +20 -1
  387. package/esm2022/components/spinbox/lib/spinbox.component.mjs +17 -1
  388. package/esm2022/components/switch/lib/switch.component.mjs +11 -1
  389. package/esm2022/components/switch/lib/switch.validator.mjs +13 -1
  390. package/esm2022/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.mjs +29 -1
  391. package/esm2022/components/tab-bar/lib/tab-bar.component.mjs +70 -1
  392. package/esm2022/components/table/lib/components/check-cell/check-cell.component.mjs +19 -1
  393. package/esm2022/components/table/lib/components/header-title/header-title.component.mjs +30 -2
  394. package/esm2022/components/table/lib/directives/table-cell.directive.mjs +5 -1
  395. package/esm2022/components/table/lib/directives/table-row.directive.mjs +5 -1
  396. package/esm2022/components/table/lib/table.component.mjs +30 -1
  397. package/esm2022/components/timepicker/lib/timepicker.component.mjs +15 -6
  398. package/esm2022/components/timepicker/lib/utils/generate-time-stamps.mjs +5 -3
  399. package/esm2022/components/timepicker/lib/utils/ngx-mask-helper.mjs +3 -3
  400. package/esm2022/components/toast/lib/toast.config.mjs +27 -1
  401. package/esm2022/components/toast/lib/toast.service.mjs +36 -1
  402. package/esm2022/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.mjs +12 -1
  403. package/esm2022/components/toggle-button-group/lib/toggle-button-group.component.mjs +14 -2
  404. package/esm2022/components/tooltip/lib/tooltip.component.mjs +18 -1
  405. package/esm2022/components/tooltip/lib/tooltip.directive.mjs +36 -1
  406. package/esm2022/components/wizard/lib/components/wizard-step/wizard-step.component.mjs +35 -1
  407. package/esm2022/components/wizard/lib/wizard.component.mjs +21 -1
  408. package/esm2022/internal/translate/lib/translate.config.mjs +32 -1
  409. package/esm2022/internal/translate/lib/translate.service.mjs +30 -1
  410. package/esm2022/lib/controllers/controller.mjs +26 -1
  411. package/esm2022/lib/controllers/disabled.controller.mjs +60 -1
  412. package/esm2022/lib/controllers/readonly.controller.mjs +57 -1
  413. package/esm2022/lib/directives/click-outside.directive.mjs +30 -1
  414. package/esm2022/lib/directives/delegate-focus.directive.mjs +15 -1
  415. package/esm2022/lib/services/window-ref.mjs +67 -1
  416. package/esm2022/lib/tokens/identity-matcher.mjs +25 -1
  417. package/esm2022/lib/tokens/string-search-handler.mjs +25 -1
  418. package/esm2022/lib/tokens/stringify.mjs +26 -1
  419. package/esm2022/localization/lib/features/with-http-language-header.mjs +54 -1
  420. package/esm2022/localization/lib/features/with-http-language-query-param.mjs +52 -1
  421. package/esm2022/localization/lib/loaders/browser-language-loader.mjs +33 -1
  422. package/esm2022/localization/lib/localization.config.mjs +71 -1
  423. package/esm2022/localization/lib/localization.service.mjs +42 -3
  424. package/esm2022/rxjs/index.mjs +2 -2
  425. package/esm2022/rxjs/lib/delay-until.mjs +23 -1
  426. package/esm2022/rxjs/lib/from-element-mutation.mjs +22 -1
  427. package/esm2022/rxjs/lib/from-element-resize.mjs +25 -1
  428. package/esm2022/rxjs/lib/from-events.mjs +25 -1
  429. package/esm2022/rxjs/lib/from-query-list.mjs +24 -0
  430. package/esm2022/sdk/lib/application-environment.mjs +51 -1
  431. package/esm2022/theming/lib/helpers/prefers-dark-theme.mjs +19 -1
  432. package/esm2022/theming/lib/helpers/resolve-theme.mjs +26 -1
  433. package/esm2022/theming/lib/helpers/theme-storage.mjs +43 -1
  434. package/esm2022/theming/lib/theming.config.mjs +34 -1
  435. package/esm2022/theming/lib/theming.service.mjs +32 -1
  436. package/esm2022/utils/lib/decorators/pure.mjs +52 -1
  437. package/esm2022/utils/lib/helpers/angular.mjs +37 -1
  438. package/esm2022/utils/lib/helpers/array.mjs +5 -1
  439. package/esm2022/utils/lib/helpers/build-url.mjs +21 -1
  440. package/esm2022/utils/lib/helpers/build-website-url.mjs +3 -2
  441. package/esm2022/utils/lib/helpers/cache-storage-client.mjs +52 -1
  442. package/esm2022/utils/lib/helpers/coercion.mjs +18 -1
  443. package/esm2022/utils/lib/helpers/debounce.mjs +28 -1
  444. package/esm2022/utils/lib/helpers/defer-fn.mjs +21 -1
  445. package/esm2022/utils/lib/helpers/dom.mjs +71 -1
  446. package/esm2022/utils/lib/helpers/get-axis.mjs +21 -1
  447. package/esm2022/utils/lib/helpers/get-language-code.mjs +18 -1
  448. package/esm2022/utils/lib/helpers/get-opposite-side.mjs +22 -1
  449. package/esm2022/utils/lib/helpers/get-side.mjs +18 -1
  450. package/esm2022/utils/lib/helpers/get-unique-id.mjs +34 -1
  451. package/esm2022/utils/lib/helpers/match-url.mjs +41 -1
  452. package/esm2022/utils/lib/helpers/ng-changes.mjs +30 -1
  453. package/esm2022/utils/lib/helpers/provide-config.mjs +57 -1
  454. package/esm2022/utils/lib/helpers/queue.mjs +84 -1
  455. package/esm2022/utils/lib/helpers/type-guards.mjs +58 -1
  456. package/esm2022/utils/lib/helpers/until-destroyed.mjs +39 -1
  457. package/fesm2022/odx-angular-animations.mjs +173 -0
  458. package/fesm2022/odx-angular-animations.mjs.map +1 -1
  459. package/fesm2022/odx-angular-breakpoints.mjs +136 -0
  460. package/fesm2022/odx-angular-breakpoints.mjs.map +1 -1
  461. package/fesm2022/odx-angular-cdk-a11y.mjs +71 -0
  462. package/fesm2022/odx-angular-cdk-a11y.mjs.map +1 -1
  463. package/fesm2022/odx-angular-cdk-active-indicator.mjs +63 -0
  464. package/fesm2022/odx-angular-cdk-active-indicator.mjs.map +1 -1
  465. package/fesm2022/odx-angular-cdk-autocomplete-control.mjs +38 -0
  466. package/fesm2022/odx-angular-cdk-autocomplete-control.mjs.map +1 -1
  467. package/fesm2022/odx-angular-cdk-checkbox-control.mjs +3 -0
  468. package/fesm2022/odx-angular-cdk-checkbox-control.mjs.map +1 -1
  469. package/fesm2022/odx-angular-cdk-connected-overlay.mjs +103 -0
  470. package/fesm2022/odx-angular-cdk-connected-overlay.mjs.map +1 -1
  471. package/fesm2022/odx-angular-cdk-custom-form-control.mjs +183 -2
  472. package/fesm2022/odx-angular-cdk-custom-form-control.mjs.map +1 -1
  473. package/fesm2022/odx-angular-cdk-dynamic-view.mjs +188 -0
  474. package/fesm2022/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  475. package/fesm2022/odx-angular-cdk-event-plugins.mjs +135 -0
  476. package/fesm2022/odx-angular-cdk-event-plugins.mjs.map +1 -1
  477. package/fesm2022/odx-angular-cdk-expandable.mjs +88 -0
  478. package/fesm2022/odx-angular-cdk-expandable.mjs.map +1 -1
  479. package/fesm2022/odx-angular-cdk-option-control.mjs +47 -0
  480. package/fesm2022/odx-angular-cdk-option-control.mjs.map +1 -1
  481. package/fesm2022/odx-angular-cdk-radio-group-control.mjs +19 -0
  482. package/fesm2022/odx-angular-cdk-radio-group-control.mjs.map +1 -1
  483. package/fesm2022/odx-angular-components-accordion.mjs +41 -0
  484. package/fesm2022/odx-angular-components-accordion.mjs.map +1 -1
  485. package/fesm2022/odx-angular-components-action-group.mjs +6 -0
  486. package/fesm2022/odx-angular-components-action-group.mjs.map +1 -1
  487. package/fesm2022/odx-angular-components-area-header.mjs +14 -0
  488. package/fesm2022/odx-angular-components-area-header.mjs.map +1 -1
  489. package/fesm2022/odx-angular-components-autocomplete.mjs +17 -0
  490. package/fesm2022/odx-angular-components-autocomplete.mjs.map +1 -1
  491. package/fesm2022/odx-angular-components-avatar.mjs +8 -0
  492. package/fesm2022/odx-angular-components-avatar.mjs.map +1 -1
  493. package/fesm2022/odx-angular-components-badge.mjs +25 -0
  494. package/fesm2022/odx-angular-components-badge.mjs.map +1 -1
  495. package/fesm2022/odx-angular-components-bar.mjs +13 -0
  496. package/fesm2022/odx-angular-components-bar.mjs.map +1 -1
  497. package/fesm2022/odx-angular-components-breadcrumbs.mjs +3 -0
  498. package/fesm2022/odx-angular-components-breadcrumbs.mjs.map +1 -1
  499. package/fesm2022/odx-angular-components-button-group.mjs +15 -0
  500. package/fesm2022/odx-angular-components-button-group.mjs.map +1 -1
  501. package/fesm2022/odx-angular-components-button.mjs +10 -0
  502. package/fesm2022/odx-angular-components-button.mjs.map +1 -1
  503. package/fesm2022/odx-angular-components-calendar.mjs +232 -0
  504. package/fesm2022/odx-angular-components-calendar.mjs.map +1 -1
  505. package/fesm2022/odx-angular-components-checkbox.mjs +55 -0
  506. package/fesm2022/odx-angular-components-checkbox.mjs.map +1 -1
  507. package/fesm2022/odx-angular-components-chip.mjs +20 -0
  508. package/fesm2022/odx-angular-components-chip.mjs.map +1 -1
  509. package/fesm2022/odx-angular-components-circular-progress.mjs +20 -0
  510. package/fesm2022/odx-angular-components-circular-progress.mjs.map +1 -1
  511. package/fesm2022/odx-angular-components-content-box.mjs +9 -0
  512. package/fesm2022/odx-angular-components-content-box.mjs.map +1 -1
  513. package/fesm2022/odx-angular-components-datepicker.mjs +84 -0
  514. package/fesm2022/odx-angular-components-datepicker.mjs.map +1 -1
  515. package/fesm2022/odx-angular-components-daterangepicker.mjs +145 -0
  516. package/fesm2022/odx-angular-components-daterangepicker.mjs.map +1 -1
  517. package/fesm2022/odx-angular-components-dropdown.mjs +66 -0
  518. package/fesm2022/odx-angular-components-dropdown.mjs.map +1 -1
  519. package/fesm2022/odx-angular-components-error-page.mjs +15 -0
  520. package/fesm2022/odx-angular-components-error-page.mjs.map +1 -1
  521. package/fesm2022/odx-angular-components-footer.mjs +11 -6
  522. package/fesm2022/odx-angular-components-footer.mjs.map +1 -1
  523. package/fesm2022/odx-angular-components-form-field.mjs +131 -0
  524. package/fesm2022/odx-angular-components-form-field.mjs.map +1 -1
  525. package/fesm2022/odx-angular-components-header-navigation.mjs +6 -0
  526. package/fesm2022/odx-angular-components-header-navigation.mjs.map +1 -1
  527. package/fesm2022/odx-angular-components-header.mjs +10 -0
  528. package/fesm2022/odx-angular-components-header.mjs.map +1 -1
  529. package/fesm2022/odx-angular-components-icon.mjs +57 -0
  530. package/fesm2022/odx-angular-components-icon.mjs.map +1 -1
  531. package/fesm2022/odx-angular-components-inline-message.mjs +13 -0
  532. package/fesm2022/odx-angular-components-inline-message.mjs.map +1 -1
  533. package/fesm2022/odx-angular-components-link.mjs +3 -0
  534. package/fesm2022/odx-angular-components-link.mjs.map +1 -1
  535. package/fesm2022/odx-angular-components-list.mjs +28 -1
  536. package/fesm2022/odx-angular-components-list.mjs.map +1 -1
  537. package/fesm2022/odx-angular-components-loading-spinner.mjs +30 -0
  538. package/fesm2022/odx-angular-components-loading-spinner.mjs.map +1 -1
  539. package/fesm2022/odx-angular-components-logo.mjs +15 -0
  540. package/fesm2022/odx-angular-components-logo.mjs.map +1 -1
  541. package/fesm2022/odx-angular-components-main-menu.mjs +119 -0
  542. package/fesm2022/odx-angular-components-main-menu.mjs.map +1 -1
  543. package/fesm2022/odx-angular-components-mainfilter-group.mjs +4 -0
  544. package/fesm2022/odx-angular-components-mainfilter-group.mjs.map +1 -1
  545. package/fesm2022/odx-angular-components-menu.mjs +36 -0
  546. package/fesm2022/odx-angular-components-menu.mjs.map +1 -1
  547. package/fesm2022/odx-angular-components-modal.mjs +252 -0
  548. package/fesm2022/odx-angular-components-modal.mjs.map +1 -1
  549. package/fesm2022/odx-angular-components-navigation-back.mjs +3 -0
  550. package/fesm2022/odx-angular-components-navigation-back.mjs.map +1 -1
  551. package/fesm2022/odx-angular-components-notification.mjs +148 -6
  552. package/fesm2022/odx-angular-components-notification.mjs.map +1 -1
  553. package/fesm2022/odx-angular-components-paginator.mjs +117 -0
  554. package/fesm2022/odx-angular-components-paginator.mjs.map +1 -1
  555. package/fesm2022/odx-angular-components-progress.mjs +15 -0
  556. package/fesm2022/odx-angular-components-progress.mjs.map +1 -1
  557. package/fesm2022/odx-angular-components-radio-group.mjs +11 -0
  558. package/fesm2022/odx-angular-components-radio-group.mjs.map +1 -1
  559. package/fesm2022/odx-angular-components-rail-navigation.mjs +42 -0
  560. package/fesm2022/odx-angular-components-rail-navigation.mjs.map +1 -1
  561. package/fesm2022/odx-angular-components-rich-list.mjs +26 -3
  562. package/fesm2022/odx-angular-components-rich-list.mjs.map +1 -1
  563. package/fesm2022/odx-angular-components-select.mjs +122 -7
  564. package/fesm2022/odx-angular-components-select.mjs.map +1 -1
  565. package/fesm2022/odx-angular-components-slider.mjs +19 -0
  566. package/fesm2022/odx-angular-components-slider.mjs.map +1 -1
  567. package/fesm2022/odx-angular-components-spinbox.mjs +16 -0
  568. package/fesm2022/odx-angular-components-spinbox.mjs.map +1 -1
  569. package/fesm2022/odx-angular-components-switch.mjs +22 -0
  570. package/fesm2022/odx-angular-components-switch.mjs.map +1 -1
  571. package/fesm2022/odx-angular-components-tab-bar.mjs +97 -0
  572. package/fesm2022/odx-angular-components-tab-bar.mjs.map +1 -1
  573. package/fesm2022/odx-angular-components-table.mjs +84 -1
  574. package/fesm2022/odx-angular-components-table.mjs.map +1 -1
  575. package/fesm2022/odx-angular-components-timepicker.mjs +20 -9
  576. package/fesm2022/odx-angular-components-timepicker.mjs.map +1 -1
  577. package/fesm2022/odx-angular-components-toast.mjs +61 -0
  578. package/fesm2022/odx-angular-components-toast.mjs.map +1 -1
  579. package/fesm2022/odx-angular-components-toggle-button-group.mjs +23 -0
  580. package/fesm2022/odx-angular-components-toggle-button-group.mjs.map +1 -1
  581. package/fesm2022/odx-angular-components-tooltip.mjs +52 -0
  582. package/fesm2022/odx-angular-components-tooltip.mjs.map +1 -1
  583. package/fesm2022/odx-angular-components-wizard.mjs +54 -0
  584. package/fesm2022/odx-angular-components-wizard.mjs.map +1 -1
  585. package/fesm2022/odx-angular-internal-translate.mjs +60 -0
  586. package/fesm2022/odx-angular-internal-translate.mjs.map +1 -1
  587. package/fesm2022/odx-angular-localization.mjs +247 -2
  588. package/fesm2022/odx-angular-localization.mjs.map +1 -1
  589. package/fesm2022/odx-angular-rxjs.mjs +115 -5
  590. package/fesm2022/odx-angular-rxjs.mjs.map +1 -1
  591. package/fesm2022/odx-angular-sdk.mjs +50 -0
  592. package/fesm2022/odx-angular-sdk.mjs.map +1 -1
  593. package/fesm2022/odx-angular-theming.mjs +149 -0
  594. package/fesm2022/odx-angular-theming.mjs.map +1 -1
  595. package/fesm2022/odx-angular-utils.mjs +709 -1
  596. package/fesm2022/odx-angular-utils.mjs.map +1 -1
  597. package/fesm2022/odx-angular.mjs +322 -0
  598. package/fesm2022/odx-angular.mjs.map +1 -1
  599. package/internal/translate/lib/translate.config.d.ts +31 -0
  600. package/internal/translate/lib/translate.service.d.ts +29 -0
  601. package/lib/controllers/controller.d.ts +25 -0
  602. package/lib/controllers/disabled.controller.d.ts +59 -0
  603. package/lib/controllers/readonly.controller.d.ts +56 -0
  604. package/lib/directives/click-outside.directive.d.ts +29 -0
  605. package/lib/directives/delegate-focus.directive.d.ts +14 -0
  606. package/lib/services/window-ref.d.ts +66 -0
  607. package/lib/tokens/identity-matcher.d.ts +41 -0
  608. package/lib/tokens/string-search-handler.d.ts +39 -0
  609. package/lib/tokens/stringify.d.ts +42 -0
  610. package/localization/lib/features/with-http-language-header.d.ts +63 -0
  611. package/localization/lib/features/with-http-language-query-param.d.ts +61 -0
  612. package/localization/lib/loaders/browser-language-loader.d.ts +32 -0
  613. package/localization/lib/localization.config.d.ts +81 -0
  614. package/localization/lib/localization.service.d.ts +39 -0
  615. package/package.json +1 -1
  616. package/rxjs/index.d.ts +1 -1
  617. package/rxjs/lib/delay-until.d.ts +22 -0
  618. package/rxjs/lib/from-element-mutation.d.ts +21 -0
  619. package/rxjs/lib/from-element-resize.d.ts +24 -0
  620. package/rxjs/lib/from-events.d.ts +24 -0
  621. package/rxjs/lib/from-query-list.d.ts +22 -0
  622. package/sdk/lib/application-environment.d.ts +59 -0
  623. package/theming/lib/helpers/prefers-dark-theme.d.ts +18 -0
  624. package/theming/lib/helpers/resolve-theme.d.ts +25 -0
  625. package/theming/lib/helpers/theme-storage.d.ts +42 -0
  626. package/theming/lib/theming.config.d.ts +46 -0
  627. package/theming/lib/theming.service.d.ts +31 -0
  628. package/utils/lib/decorators/pure.d.ts +51 -0
  629. package/utils/lib/helpers/angular.d.ts +36 -0
  630. package/utils/lib/helpers/array.d.ts +4 -0
  631. package/utils/lib/helpers/build-url.d.ts +20 -0
  632. package/utils/lib/helpers/build-website-url.d.ts +2 -1
  633. package/utils/lib/helpers/cache-storage-client.d.ts +51 -0
  634. package/utils/lib/helpers/coercion.d.ts +17 -0
  635. package/utils/lib/helpers/debounce.d.ts +27 -0
  636. package/utils/lib/helpers/defer-fn.d.ts +20 -0
  637. package/utils/lib/helpers/dom.d.ts +70 -0
  638. package/utils/lib/helpers/get-axis.d.ts +20 -0
  639. package/utils/lib/helpers/get-language-code.d.ts +17 -0
  640. package/utils/lib/helpers/get-opposite-side.d.ts +21 -0
  641. package/utils/lib/helpers/get-side.d.ts +17 -0
  642. package/utils/lib/helpers/get-unique-id.d.ts +33 -0
  643. package/utils/lib/helpers/match-url.d.ts +40 -0
  644. package/utils/lib/helpers/ng-changes.d.ts +52 -0
  645. package/utils/lib/helpers/provide-config.d.ts +56 -0
  646. package/utils/lib/helpers/queue.d.ts +83 -0
  647. package/utils/lib/helpers/type-guards.d.ts +57 -0
  648. package/utils/lib/helpers/until-destroyed.d.ts +38 -0
  649. package/esm2022/rxjs/lib/form-query-list.mjs +0 -5
  650. package/rxjs/lib/form-query-list.d.ts +0 -3
@@ -5,10 +5,23 @@ import { CSSComponent } from '@odx/angular/internal';
5
5
  import { injectElement } from '@odx/angular/utils';
6
6
  import { fromEvent, share } from 'rxjs';
7
7
  import * as i0 from "@angular/core";
8
+ /**
9
+ * Represents a directive for handling form-related functionality.
10
+ * This directive listens for form submit and reset events, making them observable, which can be used to handle
11
+ * form interactions more reactively within Angular applications.
12
+ */
8
13
  export let FormDirective = class FormDirective {
9
14
  constructor() {
10
15
  this.element = injectElement();
16
+ /**
17
+ * An Observable that emits events every time the form is submitted. This stream is shared among multiple subscribers,
18
+ * which means the form's submit event is processed as it occurs and is multicasted to all subscribers.
19
+ */
11
20
  this.submit$ = fromEvent(this.element.nativeElement, 'submit').pipe(takeUntilDestroyed(), share());
21
+ /**
22
+ * An Observable that emits events every time the form is reset. Similar to `submit$`, this stream is also shared
23
+ * among multiple subscribers, allowing components to react to form resets reactively and concurrently.
24
+ */
12
25
  this.reset$ = fromEvent(this.element.nativeElement, 'reset').pipe(takeUntilDestroyed(), share());
13
26
  }
14
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -25,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
25
38
  exportAs: 'odxForm',
26
39
  }]
27
40
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9mb3JtLWZpZWxkL3NyYy9saWIvZGlyZWN0aXZlcy9mb3JtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVFqQyxXQUFNLGFBQWEsR0FBbkIsTUFBTSxhQUFhO0lBQW5CO1FBQ1csWUFBTyxHQUFHLGFBQWEsRUFBbUIsQ0FBQztRQUMzQyxZQUFPLEdBQUcsU0FBUyxDQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDckcsV0FBTSxHQUFHLFNBQVMsQ0FBUSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0tBQ3BIOytHQUpZLGFBQWE7bUdBQWIsYUFBYTs7QUFBYixhQUFhO0lBTnpCLFlBQVksQ0FBQyxNQUFNLENBQUM7R0FNUixhQUFhLENBSXpCOzRGQUpZLGFBQWE7a0JBTHpCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUUsU0FBUztpQkFDcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGZyb21FdmVudCwgc2hhcmUgfSBmcm9tICdyeGpzJztcblxuQENTU0NvbXBvbmVudCgnZm9ybScpXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdmb3JtW29keEZvcm1dJyxcbiAgZXhwb3J0QXM6ICdvZHhGb3JtJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybURpcmVjdGl2ZSB7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudDxIVE1MRm9ybUVsZW1lbnQ+KCk7XG4gIHB1YmxpYyByZWFkb25seSBzdWJtaXQkID0gZnJvbUV2ZW50PEV2ZW50Pih0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3N1Ym1pdCcpLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCksIHNoYXJlKCkpO1xuICBwdWJsaWMgcmVhZG9ubHkgcmVzZXQkID0gZnJvbUV2ZW50PEV2ZW50Pih0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3Jlc2V0JykucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSwgc2hhcmUoKSk7XG59XG4iXX0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9mb3JtLWZpZWxkL3NyYy9saWIvZGlyZWN0aXZlcy9mb3JtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUV4Qzs7OztHQUlHO0FBT0ksV0FBTSxhQUFhLEdBQW5CLE1BQU0sYUFBYTtJQUFuQjtRQUNXLFlBQU8sR0FBRyxhQUFhLEVBQW1CLENBQUM7UUFFM0Q7OztXQUdHO1FBQ2EsWUFBTyxHQUFHLFNBQVMsQ0FBUSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBRXJIOzs7V0FHRztRQUNhLFdBQU0sR0FBRyxTQUFTLENBQVEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztLQUNwSDsrR0FkWSxhQUFhO21HQUFiLGFBQWE7O0FBQWIsYUFBYTtJQU56QixZQUFZLENBQUMsTUFBTSxDQUFDO0dBTVIsYUFBYSxDQWN6Qjs0RkFkWSxhQUFhO2tCQUx6QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZUFBZTtvQkFDekIsUUFBUSxFQUFFLFNBQVM7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIHNoYXJlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRpcmVjdGl2ZSBmb3IgaGFuZGxpbmcgZm9ybS1yZWxhdGVkIGZ1bmN0aW9uYWxpdHkuXG4gKiBUaGlzIGRpcmVjdGl2ZSBsaXN0ZW5zIGZvciBmb3JtIHN1Ym1pdCBhbmQgcmVzZXQgZXZlbnRzLCBtYWtpbmcgdGhlbSBvYnNlcnZhYmxlLCB3aGljaCBjYW4gYmUgdXNlZCB0byBoYW5kbGVcbiAqIGZvcm0gaW50ZXJhY3Rpb25zIG1vcmUgcmVhY3RpdmVseSB3aXRoaW4gQW5ndWxhciBhcHBsaWNhdGlvbnMuXG4gKi9cbkBDU1NDb21wb25lbnQoJ2Zvcm0nKVxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnZm9ybVtvZHhGb3JtXScsXG4gIGV4cG9ydEFzOiAnb2R4Rm9ybScsXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1EaXJlY3RpdmUge1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQ8SFRNTEZvcm1FbGVtZW50PigpO1xuXG4gIC8qKlxuICAgKiBBbiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgZXZlbnRzIGV2ZXJ5IHRpbWUgdGhlIGZvcm0gaXMgc3VibWl0dGVkLiBUaGlzIHN0cmVhbSBpcyBzaGFyZWQgYW1vbmcgbXVsdGlwbGUgc3Vic2NyaWJlcnMsXG4gICAqIHdoaWNoIG1lYW5zIHRoZSBmb3JtJ3Mgc3VibWl0IGV2ZW50IGlzIHByb2Nlc3NlZCBhcyBpdCBvY2N1cnMgYW5kIGlzIG11bHRpY2FzdGVkIHRvIGFsbCBzdWJzY3JpYmVycy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzdWJtaXQkID0gZnJvbUV2ZW50PEV2ZW50Pih0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3N1Ym1pdCcpLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCksIHNoYXJlKCkpO1xuXG4gIC8qKlxuICAgKiBBbiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgZXZlbnRzIGV2ZXJ5IHRpbWUgdGhlIGZvcm0gaXMgcmVzZXQuIFNpbWlsYXIgdG8gYHN1Ym1pdCRgLCB0aGlzIHN0cmVhbSBpcyBhbHNvIHNoYXJlZFxuICAgKiBhbW9uZyBtdWx0aXBsZSBzdWJzY3JpYmVycywgYWxsb3dpbmcgY29tcG9uZW50cyB0byByZWFjdCB0byBmb3JtIHJlc2V0cyByZWFjdGl2ZWx5IGFuZCBjb25jdXJyZW50bHkuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcmVzZXQkID0gZnJvbUV2ZW50PEV2ZW50Pih0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3Jlc2V0JykucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSwgc2hhcmUoKSk7XG59XG4iXX0=
@@ -11,7 +11,13 @@ import { FormFieldVariant } from './models';
11
11
  import { FormFieldErrorService } from './services';
12
12
  import * as i0 from "@angular/core";
13
13
  import * as i1 from "@angular/common";
14
+ /**
15
+ * Represents a form field component.
16
+ */
14
17
  export let FormFieldComponent = class FormFieldComponent {
18
+ /**
19
+ * Indicates whether the form field should have a warning.
20
+ */
15
21
  set hasWarning(value) {
16
22
  this.hasWarning$$.next(value);
17
23
  }
@@ -27,7 +33,14 @@ export let FormFieldComponent = class FormFieldComponent {
27
33
  this.formFieldService = inject(FormFieldService, { self: true });
28
34
  this.formFieldErrorService = inject(FormFieldErrorService, { self: true });
29
35
  this.element = injectElement();
36
+ /**
37
+ * The label of the form field component.
38
+ */
30
39
  this.label = null;
40
+ /**
41
+ * The variant of the form field.
42
+ * @see {FormFieldVariant}
43
+ */
31
44
  this.variant = FormFieldVariant.FULL;
32
45
  const hasWarning$ = combineLatest([this.formFieldErrorService.error$, this.hasWarning$$]).pipe(map(([hasError, hasWarning]) => hasError && hasWarning));
33
46
  reactiveClassBinding(this.formFieldService.isRequired$, 'odx-form-field--required');
@@ -64,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
64
77
  }], variant: [{
65
78
  type: Input
66
79
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9mb3JtLWZpZWxkL3NyYy9saWIvZm9ybS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9mb3JtLWZpZWxkL3NyYy9saWIvZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVKLE9BQU8sRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7O0FBWTVDLFdBQU0sa0JBQWtCLEdBQXhCLE1BQU0s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LEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBVS9CLE9BQU87c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSwgRGlzYWJsZWRDb250cm9sbGVyLCBSZWFkb25seUNvbnRyb2xsZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50LCByZWFjdGl2ZUNsYXNzQmluZGluZyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkSW5mb0NvbXBvbmVudCwgRm9ybUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZvcm1GaWVsZExhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IEZvcm1GaWVsZFNlcnZpY2UgfSBmcm9tICcuL2Zvcm0tZmllbGQuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtRmllbGRWYXJpYW50IH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkRXJyb3JTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5cbkBDU1NDb21wb25lbnQoJ2Zvcm0tZmllbGQnKVxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnb2R4LWZvcm0tZmllbGQnLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgRm9ybUZpZWxkSW5mb0NvbXBvbmVudCwgRm9ybUZpZWxkTGFiZWxEaXJlY3RpdmVdLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtGb3JtRmllbGRTZXJ2aWNlLCBGb3JtRmllbGRFcnJvclNlcnZpY2UsIERpc2FibGVkQ29udHJvbGxlci5jb25uZWN0KCksIFJlYWRvbmx5Q29udHJvbGxlci5jb25uZWN0KCldLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtRmllbGRDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGFzV2FybmluZyQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZvcm1Hcm91cCA9IGluamVjdChGb3JtR3JvdXBDb21wb25lbnQsIHsgb3B0aW9uYWw6IHRydWUsIGhvc3Q6IHRydWUgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBmb3JtRmllbGRTZXJ2aWNlID0gaW5qZWN0KEZvcm1GaWVsZFNlcnZpY2UsIHsgc2VsZjogdHJ1ZSB9KTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZvcm1GaWVsZEVycm9yU2VydmljZSA9IGluamVjdChGb3JtRmllbGRFcnJvclNlcnZpY2UsIHsgc2VsZjogdHJ1ZSB9KTtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgQENvbnRlbnRDaGlsZChGb3JtRmllbGRMYWJlbERpcmVjdGl2ZSlcbiAgcHVibGljIGxhYmVsRGlyZWN0aXZlPzogRm9ybUZpZWxkTGFiZWxEaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZCgnY29udHJvbCcpXG4gIHB1YmxpYyBjb250cm9sRWxlbWVudCE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbD86IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgc2V0IGhhc1dhcm5pbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmhhc1dhcm5pbmckJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGhhc1dhcm5pbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaGFzV2FybmluZyQkLmdldFZhbHVlKCk7XG4gIH1cblxuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoKVxuICBwdWJsaWMgdmFyaWFudDogRm9ybUZpZWxkVmFyaWFudCB8IG51bGwgPSBGb3JtRmllbGRWYXJpYW50LkZVTEw7XG5cbiAgcHVibGljIGdldCBoYXNMYWJlbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5sYWJlbERpcmVjdGl2ZSB8fCB0aGlzLmxhYmVsKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IGhhc1dhcm5pbmckID0gY29tYmluZUxhdGVzdChbdGhpcy5mb3JtRmllbGRFcnJvclNlcnZpY2UuZXJyb3IkLCB0aGlzLmhhc1dhcm5pbmckJF0pLnBpcGUobWFwKChbaGFzRXJyb3IsIGhhc1dhcm5pbmddKSA9PiBoYXNFcnJvciAmJiBoYXNXYXJuaW5nKSk7XG4gICAgcmVhY3RpdmVDbGFzc0JpbmRpbmcodGhpcy5mb3JtRmllbGRTZXJ2aWNlLmlzUmVxdWlyZWQkLCAnb2R4LWZvcm0tZmllbGQtLXJlcXVpcmVkJyk7XG4gICAgcmVhY3RpdmVDbGFzc0JpbmRpbmcodGhpcy5mb3JtRmllbGRTZXJ2aWNlLmlzRGlzYWJsZWQkLCAnaXMtZGlzYWJsZWQnKTtcbiAgICByZWFjdGl2ZUNsYXNzQmluZGluZyh0aGlzLmZvcm1GaWVsZFNlcnZpY2UuaXNSZWFkb25seSQsICdpcy1yZWFkb25seScpO1xuICAgIHJlYWN0aXZlQ2xhc3NCaW5kaW5nKHRoaXMuZm9ybUZpZWxkRXJyb3JTZXJ2aWNlLmhhc0Vycm9yJCwgJ2hhcy1lcnJvcicpO1xuICAgIHJlYWN0aXZlQ2xhc3NCaW5kaW5nKGhhc1dhcm5pbmckLCAnaGFzLXdhcm5pbmcnKTtcbiAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwib2R4LWZvcm0tZmllbGRfX2xhYmVsXCIgW2F0dHIuZm9yXT1cImZvcm1GaWVsZFNlcnZpY2UuY29udHJvbElkJCB8IGFzeW5jXCIgW2F0dHIuYXJpYS1vd25zXT1cImZvcm1GaWVsZFNlcnZpY2UuY29udHJvbElkJCB8IGFzeW5jXCIgKm5nSWY9XCJoYXNMYWJlbFwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWw7IGVsc2UgbGFiZWxUZW1wbGF0ZVwiPlxuICAgIDxvZHgtZm9ybS1maWVsZC1sYWJlbD57eyBsYWJlbCB9fTwvb2R4LWZvcm0tZmllbGQtbGFiZWw+XG4gICAgPHNwYW4gY2xhc3M9XCJvZHgtZm9ybS1maWVsZF9fbGFiZWwtaXMtcmVxdWlyZWRcIiAqbmdJZj1cImZvcm1GaWVsZFNlcnZpY2UuaXNSZXF1aXJlZCQgfCBhc3luY1wiPio8L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2xhYmVsVGVtcGxhdGU+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwib2R4LWZvcm0tZmllbGQtbGFiZWxcIj48L25nLWNvbnRlbnQ+XG4gICAgPHNwYW4gY2xhc3M9XCJvZHgtZm9ybS1maWVsZF9fbGFiZWwtaXMtcmVxdWlyZWRcIiAqbmdJZj1cImZvcm1GaWVsZFNlcnZpY2UuaXNSZXF1aXJlZCQgfCBhc3luY1wiPio8L3NwYW4+XG4gIDwvbmctdGVtcGxhdGU+XG48L2xhYmVsPlxuPGRpdiBjbGFzcz1cIm9keC1mb3JtLWZpZWxkX19pbm5lclwiPlxuICA8ZGl2IGNsYXNzPVwib2R4LWZvcm0tZmllbGRfX2NvbnRyb2xcIiAjY29udHJvbD5cbiAgICA8ZGl2IGNsYXNzPVwib2R4LWZvcm0tZmllbGRfX3ByZWZpeFwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW29keEZvcm1GaWVsZFByZWZpeF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJvZHgtZm9ybS1maWVsZF9fc3VmZml4XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbb2R4Rm9ybUZpZWxkU3VmZml4XVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxvZHgtZm9ybS1maWVsZC1pbmZvIFtlcnJvcl09XCJmb3JtRmllbGRFcnJvclNlcnZpY2UuZXJyb3IkIHwgYXN5bmNcIiAqbmdJZj1cIiFmb3JtR3JvdXBcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtZm9ybS1maWVsZC1oaW50XCI+PC9uZy1jb250ZW50PlxuICA8L29keC1mb3JtLWZpZWxkLWluZm8+XG48L2Rpdj5cbiJdfQ==
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9mb3JtLWZpZWxkL3NyYy9saWIvZm9ybS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9mb3JtLWZpZWxkL3NyYy9saWIvZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVKLE9BQU8sRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7O0FBRW5EOztHQUVHO0FBV0ksV0FBTSxrQkFBa0Is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LFNBQVM7Z0JBT2IsS0FBSztzQkFEWCxLQUFLO2dCQU9LLFVBQVU7c0JBRHBCLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBYy9CLE9BQU87c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSwgRGlzYWJsZWRDb250cm9sbGVyLCBSZWFkb25seUNvbnRyb2xsZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50LCByZWFjdGl2ZUNsYXNzQmluZGluZyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkSW5mb0NvbXBvbmVudCwgRm9ybUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEZvcm1GaWVsZExhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IEZvcm1GaWVsZFNlcnZpY2UgfSBmcm9tICcuL2Zvcm0tZmllbGQuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtRmllbGRWYXJpYW50IH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkRXJyb3JTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGZvcm0gZmllbGQgY29tcG9uZW50LlxuICovXG5AQ1NTQ29tcG9uZW50KCdmb3JtLWZpZWxkJylcbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ29keC1mb3JtLWZpZWxkJyxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEZvcm1GaWVsZEluZm9Db21wb25lbnQsIEZvcm1GaWVsZExhYmVsRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbRm9ybUZpZWxkU2VydmljZSwgRm9ybUZpZWxkRXJyb3JTZXJ2aWNlLCBEaXNhYmxlZENvbnRyb2xsZXIuY29ubmVjdCgpLCBSZWFkb25seUNvbnRyb2xsZXIuY29ubmVjdCgpXSxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUZpZWxkQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc1dhcm5pbmckJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBmb3JtR3JvdXAgPSBpbmplY3QoRm9ybUdyb3VwQ29tcG9uZW50LCB7IG9wdGlvbmFsOiB0cnVlLCBob3N0OiB0cnVlIH0pO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9ybUZpZWxkU2VydmljZSA9IGluamVjdChGb3JtRmllbGRTZXJ2aWNlLCB7IHNlbGY6IHRydWUgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBmb3JtRmllbGRFcnJvclNlcnZpY2UgPSBpbmplY3QoRm9ybUZpZWxkRXJyb3JTZXJ2aWNlLCB7IHNlbGY6IHRydWUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgZGlyZWN0aXZlIGFzc29jaWF0ZWQgd2l0aCB0aGUgZm9ybSBmaWVsZCBjb21wb25lbnQuXG4gICAqIEBzZWUge0Zvcm1GaWVsZExhYmVsRGlyZWN0aXZlfVxuICAgKi9cbiAgQENvbnRlbnRDaGlsZChGb3JtRmllbGRMYWJlbERpcmVjdGl2ZSlcbiAgcHVibGljIGxhYmVsRGlyZWN0aXZlPzogRm9ybUZpZWxkTGFiZWxEaXJlY3RpdmU7XG5cbiAgLyoqXG4gICAqIFRoZSBjb250cm9sIGVsZW1lbnQgb2YgdGhlIGZvcm0gZmllbGQgY29tcG9uZW50LlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnY29udHJvbCcpXG4gIHB1YmxpYyBjb250cm9sRWxlbWVudCE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgb2YgdGhlIGZvcm0gZmllbGQgY29tcG9uZW50LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGxhYmVsPzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBmb3JtIGZpZWxkIHNob3VsZCBoYXZlIGEgd2FybmluZy5cbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgc2V0IGhhc1dhcm5pbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmhhc1dhcm5pbmckJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGhhc1dhcm5pbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaGFzV2FybmluZyQkLmdldFZhbHVlKCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHZhcmlhbnQgb2YgdGhlIGZvcm0gZmllbGQuXG4gICAqIEBzZWUge0Zvcm1GaWVsZFZhcmlhbnR9XG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoKVxuICBwdWJsaWMgdmFyaWFudDogRm9ybUZpZWxkVmFyaWFudCB8IG51bGwgPSBGb3JtRmllbGRWYXJpYW50LkZVTEw7XG5cbiAgcHVibGljIGdldCBoYXNMYWJlbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5sYWJlbERpcmVjdGl2ZSB8fCB0aGlzLmxhYmVsKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IGhhc1dhcm5pbmckID0gY29tYmluZUxhdGVzdChbdGhpcy5mb3JtRmllbGRFcnJvclNlcnZpY2UuZXJyb3IkLCB0aGlzLmhhc1dhcm5pbmckJF0pLnBpcGUobWFwKChbaGFzRXJyb3IsIGhhc1dhcm5pbmddKSA9PiBoYXNFcnJvciAmJiBoYXNXYXJuaW5nKSk7XG4gICAgcmVhY3RpdmVDbGFzc0JpbmRpbmcodGhpcy5mb3JtRmllbGRTZXJ2aWNlLmlzUmVxdWlyZWQkLCAnb2R4LWZvcm0tZmllbGQtLXJlcXVpcmVkJyk7XG4gICAgcmVhY3RpdmVDbGFzc0JpbmRpbmcodGhpcy5mb3JtRmllbGRTZXJ2aWNlLmlzRGlzYWJsZWQkLCAnaXMtZGlzYWJsZWQnKTtcbiAgICByZWFjdGl2ZUNsYXNzQmluZGluZyh0aGlzLmZvcm1GaWVsZFNlcnZpY2UuaXNSZWFkb25seSQsICdpcy1yZWFkb25seScpO1xuICAgIHJlYWN0aXZlQ2xhc3NCaW5kaW5nKHRoaXMuZm9ybUZpZWxkRXJyb3JTZXJ2aWNlLmhhc0Vycm9yJCwgJ2hhcy1lcnJvcicpO1xuICAgIHJlYWN0aXZlQ2xhc3NCaW5kaW5nKGhhc1dhcm5pbmckLCAnaGFzLXdhcm5pbmcnKTtcbiAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwib2R4LWZvcm0tZmllbGRfX2xhYmVsXCIgW2F0dHIuZm9yXT1cImZvcm1GaWVsZFNlcnZpY2UuY29udHJvbElkJCB8IGFzeW5jXCIgW2F0dHIuYXJpYS1vd25zXT1cImZvcm1GaWVsZFNlcnZpY2UuY29udHJvbElkJCB8IGFzeW5jXCIgKm5nSWY9XCJoYXNMYWJlbFwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWw7IGVsc2UgbGFiZWxUZW1wbGF0ZVwiPlxuICAgIDxvZHgtZm9ybS1maWVsZC1sYWJlbD57eyBsYWJlbCB9fTwvb2R4LWZvcm0tZmllbGQtbGFiZWw+XG4gICAgPHNwYW4gY2xhc3M9XCJvZHgtZm9ybS1maWVsZF9fbGFiZWwtaXMtcmVxdWlyZWRcIiAqbmdJZj1cImZvcm1GaWVsZFNlcnZpY2UuaXNSZXF1aXJlZCQgfCBhc3luY1wiPio8L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2xhYmVsVGVtcGxhdGU+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwib2R4LWZvcm0tZmllbGQtbGFiZWxcIj48L25nLWNvbnRlbnQ+XG4gICAgPHNwYW4gY2xhc3M9XCJvZHgtZm9ybS1maWVsZF9fbGFiZWwtaXMtcmVxdWlyZWRcIiAqbmdJZj1cImZvcm1GaWVsZFNlcnZpY2UuaXNSZXF1aXJlZCQgfCBhc3luY1wiPio8L3NwYW4+XG4gIDwvbmctdGVtcGxhdGU+XG48L2xhYmVsPlxuPGRpdiBjbGFzcz1cIm9keC1mb3JtLWZpZWxkX19pbm5lclwiPlxuICA8ZGl2IGNsYXNzPVwib2R4LWZvcm0tZmllbGRfX2NvbnRyb2xcIiAjY29udHJvbD5cbiAgICA8ZGl2IGNsYXNzPVwib2R4LWZvcm0tZmllbGRfX3ByZWZpeFwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW29keEZvcm1GaWVsZFByZWZpeF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJvZHgtZm9ybS1maWVsZF9fc3VmZml4XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbb2R4Rm9ybUZpZWxkU3VmZml4XVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxvZHgtZm9ybS1maWVsZC1pbmZvIFtlcnJvcl09XCJmb3JtRmllbGRFcnJvclNlcnZpY2UuZXJyb3IkIHwgYXN5bmNcIiAqbmdJZj1cIiFmb3JtR3JvdXBcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtZm9ybS1maWVsZC1oaW50XCI+PC9uZy1jb250ZW50PlxuICA8L29keC1mb3JtLWZpZWxkLWluZm8+XG48L2Rpdj5cbiJdfQ==
@@ -4,27 +4,69 @@ import { Controller, DisabledController, ReadonlyController } from '@odx/angular
4
4
  import { getUniqueId } from '@odx/angular/utils';
5
5
  import { BehaviorSubject, EMPTY, distinctUntilChanged, map, merge, of, shareReplay, startWith, switchMap, tap } from 'rxjs';
6
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * Provides centralized form field management for Angular applications.
9
+ * This service handles the registration and management of form controls, including their disabled and read-only states,
10
+ * and integrates seamlessly with Angular's forms module. It manages the state of individual form fields across the application,
11
+ * ensuring that changes to the state (such as disabled or read-only) are consistently reflected in the UI.
12
+ *
13
+ * Extends the `Controller` class, which provides basic functionality for managing state and interactions.
14
+ * The service utilizes Angular's dependency injection to access and manipulate form controls and their properties,
15
+ * making it easier to maintain and update form state across complex forms.
16
+ *
17
+ * @extends {Controller}
18
+ */
7
19
  export class FormFieldService extends Controller {
8
20
  constructor() {
9
21
  super(...arguments);
10
22
  this.disabledController = DisabledController.inject();
11
23
  this.readonlyController = ReadonlyController.inject();
12
24
  this.control$$ = new BehaviorSubject(null);
25
+ /**
26
+ * Observable that emits the currently registered control object, which includes
27
+ * both the control instance and the associated native HTML element.
28
+ */
13
29
  this.control$ = this.control$$.pipe(shareReplay({ bufferSize: 1, refCount: true }));
30
+ /**
31
+ * Observable that emits the ID of the current control's HTML element. Generates a unique ID if not already assigned.
32
+ */
14
33
  this.controlId$ = this.control$.pipe(map((control) => (control ? control.nativeElement.id || getUniqueId('odx-form-field') : null)), shareReplay({ bufferSize: 1, refCount: true }));
34
+ /**
35
+ * Observable that emits the hint ID associated with the control, which is typically used for accessibility purposes.
36
+ */
15
37
  this.controlHintId$ = this.controlId$.pipe(map((id) => (id ? `${id}-hint` : null)), shareReplay({ bufferSize: 1, refCount: true }));
38
+ /**
39
+ * Observable that emits the error message ID associated with the control, used for linking form errors for accessibility.
40
+ */
16
41
  this.controlErrorId$ = this.controlId$.pipe(map((id) => (id ? `${id}-error` : null)), shareReplay({ bufferSize: 1, refCount: true }));
42
+ /**
43
+ * Observable that emits a boolean indicating whether the control is disabled, combining both internal state and controller state.
44
+ */
17
45
  this.isDisabled$ = this.control$.pipe(switchMap((control) => (control ? merge(this.updateControlDisabledState(control), this.getControlDisabledState(control)) : of(false))), distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));
46
+ /**
47
+ * Observable that emits a boolean indicating whether the control is required, based on the presence of the required attribute or validator.
48
+ */
18
49
  this.isRequired$ = this.control$.pipe(map((control) => (control ? control.nativeElement.hasAttribute('required') || control.control.hasValidator(Validators.required) : false)), shareReplay({ bufferSize: 1, refCount: true }));
50
+ /**
51
+ * Observable that emits a boolean indicating whether the control is readonly, based on the presence of the readonly attribute.
52
+ */
19
53
  this.isReadonly$ = this.control$.pipe(switchMap((control) => (control && this.readonlyController ? this.readonlyController.isReadonly$ : of(false))));
20
54
  }
21
55
  ngOnDestroy() {
22
56
  this.control$$.complete();
23
57
  super.ngOnDestroy();
24
58
  }
59
+ /**
60
+ * Registers a control along with its native element to the service.
61
+ * @param {AbstractControl} control - The Angular form control.
62
+ * @param {ElementRef<HTMLElement>} nativeElement - The native element associated with the form control.
63
+ */
25
64
  registerControl(control, { nativeElement }) {
26
65
  this.control$$.next({ control, nativeElement });
27
66
  }
67
+ /**
68
+ * Removes the currently registered control from the service.
69
+ */
28
70
  removeControl() {
29
71
  this.control$$.next(null);
30
72
  }
@@ -50,4 +92,4 @@ export class FormFieldService extends Controller {
50
92
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldService, decorators: [{
51
93
  type: Injectable
52
94
  }] });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZm9ybS1maWVsZC9zcmMvbGliL2Zvcm0tZmllbGQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBbUIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQWMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVF4SSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQURoRDs7UUFFbUIsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakQsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakQsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFzQixJQUFJLENBQUMsQ0FBQztRQUU1RCxhQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9FLGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxD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TyxFQUFnQjtRQUMxRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUM3QyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDWixJQUFJLEtBQUssRUFBRTtvQkFDVCxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQ25CO3FCQUFNO29CQUNMLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztpQkFDbEI7WUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxFQUFFLE9BQU8sRUFBZ0I7UUFDdkQsT0FBTyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDL0IsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFDekIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLEVBQ3RDLG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7SUFDSixDQUFDOytHQWpFVSxnQkFBZ0I7bUhBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29udHJvbGxlciwgRGlzYWJsZWRDb250cm9sbGVyLCBSZWFkb25seUNvbnRyb2xsZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgZ2V0VW5pcXVlSWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBFTVBUWSwgT2JzZXJ2YWJsZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgbWVyZ2UsIG9mLCBzaGFyZVJlcGxheSwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbnRlcmZhY2UgRmllbGRDb250cm9sIHtcbiAgY29udHJvbDogQWJzdHJhY3RDb250cm9sO1xuICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZFNlcnZpY2UgZXh0ZW5kcyBDb250cm9sbGVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkaXNhYmxlZENvbnRyb2xsZXIgPSBEaXNhYmxlZENvbnRyb2xsZXIuaW5qZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVhZG9ubHlDb250cm9sbGVyID0gUmVhZG9ubHlDb250cm9sbGVyLmluamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2wkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RmllbGRDb250cm9sIHwgbnVsbD4obnVsbCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2wkID0gdGhpcy5jb250cm9sJCQucGlwZShzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pKTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2xJZCQgPSB0aGlzLmNvbnRyb2wkLnBpcGUoXG4gICAgbWFwKChjb250cm9sKSA9PiAoY29udHJvbCA/IGNvbnRyb2wubmF0aXZlRWxlbWVudC5pZCB8fCBnZXRVbmlxdWVJZCgnb2R4LWZvcm0tZmllbGQnKSA6IG51bGwpKSxcbiAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgY29udHJvbEhpbnRJZCQgPSB0aGlzLmNvbnRyb2xJZCQucGlwZShcbiAgICBtYXAoKGlkKSA9PiAoaWQgPyBgJHtpZH0taGludGAgOiBudWxsKSksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2xFcnJvcklkJCA9IHRoaXMuY29udHJvbElkJC5waXBlKFxuICAgIG1hcCgoaWQpID0+IChpZCA/IGAke2lkfS1lcnJvcmAgOiBudWxsKSksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IGlzRGlzYWJsZWQkID0gdGhpcy5jb250cm9sJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29udHJvbCkgPT4gKGNvbnRyb2wgPyBtZXJnZSh0aGlzLnVwZGF0ZUNvbnRyb2xEaXNhYmxlZFN0YXRlKGNvbnRyb2wpLCB0aGlzLmdldENvbnRyb2xEaXNhYmxlZFN0YXRlKGNvbnRyb2wpKSA6IG9mKGZhbHNlKSkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IGlzUmVxdWlyZWQkID0gdGhpcy5jb250cm9sJC5waXBlKFxuICAgIG1hcCgoY29udHJvbCkgPT4gKGNvbnRyb2wgPyBjb250cm9sLm5hdGl2ZUVsZW1lbnQuaGFzQXR0cmlidXRlKCdyZXF1aXJlZCcpIHx8IGNvbnRyb2wuY29udHJvbC5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZCkgOiBmYWxzZSkpLFxuICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBpc1JlYWRvbmx5JCA9IHRoaXMuY29udHJvbCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKGNvbnRyb2wpID0+IChjb250cm9sICYmIHRoaXMucmVhZG9ubHlDb250cm9sbGVyID8gdGhpcy5yZWFkb25seUNvbnRyb2xsZXIuaXNSZWFkb25seSQgOiBvZihmYWxzZSkpKSxcbiAgKTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sJCQuY29tcGxldGUoKTtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyQ29udHJvbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsIHsgbmF0aXZlRWxlbWVudCB9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pik6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbCQkLm5leHQoeyBjb250cm9sLCBuYXRpdmVFbGVtZW50IH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNvbnRyb2woKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sJCQubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29udHJvbERpc2FibGVkU3RhdGUoeyBjb250cm9sIH06IEZpZWxkQ29udHJvbCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVkQ29udHJvbGxlcikge1xuICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWRDb250cm9sbGVyLmlzRGlzYWJsZWQkLnBpcGUoXG4gICAgICAgIHRhcCgoc3RhdGUpID0+IHtcbiAgICAgICAgICBpZiAoc3RhdGUpIHtcbiAgICAgICAgICAgIGNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250cm9sLmVuYWJsZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRyb2xEaXNhYmxlZFN0YXRlKHsgY29udHJvbCB9OiBGaWVsZENvbnRyb2wpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gY29udHJvbC5zdGF0dXNDaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgoY29udHJvbC5zdGF0dXMpLFxuICAgICAgbWFwKChzdGF0dXMpID0+IHN0YXR1cyA9PT0gJ0RJU0FCTEVEJyksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZm9ybS1maWVsZC9zcmMvbGliL2Zvcm0tZmllbGQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBbUIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQWMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU94STs7Ozs7Ozs7Ozs7R0FXRztBQUVILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxVQUFVO0lBRGhEOztRQUVtQix1QkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqRCx1QkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqRCxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQXNCLElBQUksQ0FBQyxDQUFDO1FBRTVFOzs7V0FHRztRQUNhLGFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFL0Y7O1dBRUc7UUFDYSxlQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQzdDLEdBQUcsQ0FB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QUM7SUFDbEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksYUFBYTtRQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRU8sMEJBQTBCLENBQUMsRUFBRSxPQUFPLEVBQWdCO1FBQzFELElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzdDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNaLElBQUksS0FBSyxFQUFFO29CQUNULE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDbkI7cUJBQU07b0JBQ0wsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO2lCQUNsQjtZQUNILENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLHVCQUF1QixDQUFDLEVBQUUsT0FBTyxFQUFnQjtRQUN2RCxPQUFPLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUMvQixTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUN6QixHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sS0FBSyxVQUFVLENBQUMsRUFDdEMsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztJQUNKLENBQUM7K0dBckdVLGdCQUFnQjttSEFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb250cm9sbGVyLCBEaXNhYmxlZENvbnRyb2xsZXIsIFJlYWRvbmx5Q29udHJvbGxlciB9IGZyb20gJ0BvZHgvYW5ndWxhcic7XG5pbXBvcnQgeyBnZXRVbmlxdWVJZCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIEVNUFRZLCBPYnNlcnZhYmxlLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBtZXJnZSwgb2YsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbmludGVyZmFjZSBGaWVsZENvbnRyb2wge1xuICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XG4gIG5hdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGNlbnRyYWxpemVkIGZvcm0gZmllbGQgbWFuYWdlbWVudCBmb3IgQW5ndWxhciBhcHBsaWNhdGlvbnMuXG4gKiBUaGlzIHNlcnZpY2UgaGFuZGxlcyB0aGUgcmVnaXN0cmF0aW9uIGFuZCBtYW5hZ2VtZW50IG9mIGZvcm0gY29udHJvbHMsIGluY2x1ZGluZyB0aGVpciBkaXNhYmxlZCBhbmQgcmVhZC1vbmx5IHN0YXRlcyxcbiAqIGFuZCBpbnRlZ3JhdGVzIHNlYW1sZXNzbHkgd2l0aCBBbmd1bGFyJ3MgZm9ybXMgbW9kdWxlLiBJdCBtYW5hZ2VzIHRoZSBzdGF0ZSBvZiBpbmRpdmlkdWFsIGZvcm0gZmllbGRzIGFjcm9zcyB0aGUgYXBwbGljYXRpb24sXG4gKiBlbnN1cmluZyB0aGF0IGNoYW5nZXMgdG8gdGhlIHN0YXRlIChzdWNoIGFzIGRpc2FibGVkIG9yIHJlYWQtb25seSkgYXJlIGNvbnNpc3RlbnRseSByZWZsZWN0ZWQgaW4gdGhlIFVJLlxuICpcbiAqIEV4dGVuZHMgdGhlIGBDb250cm9sbGVyYCBjbGFzcywgd2hpY2ggcHJvdmlkZXMgYmFzaWMgZnVuY3Rpb25hbGl0eSBmb3IgbWFuYWdpbmcgc3RhdGUgYW5kIGludGVyYWN0aW9ucy5cbiAqIFRoZSBzZXJ2aWNlIHV0aWxpemVzIEFuZ3VsYXIncyBkZXBlbmRlbmN5IGluamVjdGlvbiB0byBhY2Nlc3MgYW5kIG1hbmlwdWxhdGUgZm9ybSBjb250cm9scyBhbmQgdGhlaXIgcHJvcGVydGllcyxcbiAqIG1ha2luZyBpdCBlYXNpZXIgdG8gbWFpbnRhaW4gYW5kIHVwZGF0ZSBmb3JtIHN0YXRlIGFjcm9zcyBjb21wbGV4IGZvcm1zLlxuICpcbiAqIEBleHRlbmRzIHtDb250cm9sbGVyfVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRm9ybUZpZWxkU2VydmljZSBleHRlbmRzIENvbnRyb2xsZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGRpc2FibGVkQ29udHJvbGxlciA9IERpc2FibGVkQ29udHJvbGxlci5pbmplY3QoKTtcbiAgcHJpdmF0ZSByZWFkb25seSByZWFkb25seUNvbnRyb2xsZXIgPSBSZWFkb25seUNvbnRyb2xsZXIuaW5qZWN0KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udHJvbCQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGaWVsZENvbnRyb2wgfCBudWxsPihudWxsKTtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBjdXJyZW50bHkgcmVnaXN0ZXJlZCBjb250cm9sIG9iamVjdCwgd2hpY2ggaW5jbHVkZXNcbiAgICogYm90aCB0aGUgY29udHJvbCBpbnN0YW5jZSBhbmQgdGhlIGFzc29jaWF0ZWQgbmF0aXZlIEhUTUwgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjb250cm9sJCA9IHRoaXMuY29udHJvbCQkLnBpcGUoc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgSUQgb2YgdGhlIGN1cnJlbnQgY29udHJvbCdzIEhUTUwgZWxlbWVudC4gR2VuZXJhdGVzIGEgdW5pcXVlIElEIGlmIG5vdCBhbHJlYWR5IGFzc2lnbmVkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2xJZCQgPSB0aGlzLmNvbnRyb2wkLnBpcGUoXG4gICAgbWFwKChjb250cm9sKSA9PiAoY29udHJvbCA/IGNvbnRyb2wubmF0aXZlRWxlbWVudC5pZCB8fCBnZXRVbmlxdWVJZCgnb2R4LWZvcm0tZmllbGQnKSA6IG51bGwpKSxcbiAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICApO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGhpbnQgSUQgYXNzb2NpYXRlZCB3aXRoIHRoZSBjb250cm9sLCB3aGljaCBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgYWNjZXNzaWJpbGl0eSBwdXJwb3Nlcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjb250cm9sSGludElkJCA9IHRoaXMuY29udHJvbElkJC5waXBlKFxuICAgIG1hcCgoaWQpID0+IChpZCA/IGAke2lkfS1oaW50YCA6IG51bGwpKSxcbiAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICApO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGVycm9yIG1lc3NhZ2UgSUQgYXNzb2NpYXRlZCB3aXRoIHRoZSBjb250cm9sLCB1c2VkIGZvciBsaW5raW5nIGZvcm0gZXJyb3JzIGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRyb2xFcnJvcklkJCA9IHRoaXMuY29udHJvbElkJC5waXBlKFxuICAgIG1hcCgoaWQpID0+IChpZCA/IGAke2lkfS1lcnJvcmAgOiBudWxsKSksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGNvbnRyb2wgaXMgZGlzYWJsZWQsIGNvbWJpbmluZyBib3RoIGludGVybmFsIHN0YXRlIGFuZCBjb250cm9sbGVyIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGlzRGlzYWJsZWQkID0gdGhpcy5jb250cm9sJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29udHJvbCkgPT4gKGNvbnRyb2wgPyBtZXJnZSh0aGlzLnVwZGF0ZUNvbnRyb2xEaXNhYmxlZFN0YXRlKGNvbnRyb2wpLCB0aGlzLmdldENvbnRyb2xEaXNhYmxlZFN0YXRlKGNvbnRyb2wpKSA6IG9mKGZhbHNlKSkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSxcbiAgKTtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGNvbnRyb2wgaXMgcmVxdWlyZWQsIGJhc2VkIG9uIHRoZSBwcmVzZW5jZSBvZiB0aGUgcmVxdWlyZWQgYXR0cmlidXRlIG9yIHZhbGlkYXRvci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpc1JlcXVpcmVkJCA9IHRoaXMuY29udHJvbCQucGlwZShcbiAgICBtYXAoKGNvbnRyb2wpID0+IChjb250cm9sID8gY29udHJvbC5uYXRpdmVFbGVtZW50Lmhhc0F0dHJpYnV0ZSgncmVxdWlyZWQnKSB8fCBjb250cm9sLmNvbnRyb2wuaGFzVmFsaWRhdG9yKFZhbGlkYXRvcnMucmVxdWlyZWQpIDogZmFsc2UpKSxcbiAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICApO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgY29udHJvbCBpcyByZWFkb25seSwgYmFzZWQgb24gdGhlIHByZXNlbmNlIG9mIHRoZSByZWFkb25seSBhdHRyaWJ1dGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaXNSZWFkb25seSQgPSB0aGlzLmNvbnRyb2wkLnBpcGUoXG4gICAgc3dpdGNoTWFwKChjb250cm9sKSA9PiAoY29udHJvbCAmJiB0aGlzLnJlYWRvbmx5Q29udHJvbGxlciA/IHRoaXMucmVhZG9ubHlDb250cm9sbGVyLmlzUmVhZG9ubHkkIDogb2YoZmFsc2UpKSksXG4gICk7XG5cbiAgcHVibGljIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbCQkLmNvbXBsZXRlKCk7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBjb250cm9sIGFsb25nIHdpdGggaXRzIG5hdGl2ZSBlbGVtZW50IHRvIHRoZSBzZXJ2aWNlLlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBBbmd1bGFyIGZvcm0gY29udHJvbC5cbiAgICogQHBhcmFtIHtFbGVtZW50UmVmPEhUTUxFbGVtZW50Pn0gbmF0aXZlRWxlbWVudCAtIFRoZSBuYXRpdmUgZWxlbWVudCBhc3NvY2lhdGVkIHdpdGggdGhlIGZvcm0gY29udHJvbC5cbiAgICovXG4gIHB1YmxpYyByZWdpc3RlckNvbnRyb2woY29udHJvbDogQWJzdHJhY3RDb250cm9sLCB7IG5hdGl2ZUVsZW1lbnQgfTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRyb2wkJC5uZXh0KHsgY29udHJvbCwgbmF0aXZlRWxlbWVudCB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIHRoZSBjdXJyZW50bHkgcmVnaXN0ZXJlZCBjb250cm9sIGZyb20gdGhlIHNlcnZpY2UuXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlQ29udHJvbCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRyb2wkJC5uZXh0KG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb250cm9sRGlzYWJsZWRTdGF0ZSh7IGNvbnRyb2wgfTogRmllbGRDb250cm9sKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWRDb250cm9sbGVyKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZENvbnRyb2xsZXIuaXNEaXNhYmxlZCQucGlwZShcbiAgICAgICAgdGFwKChzdGF0ZSkgPT4ge1xuICAgICAgICAgIGlmIChzdGF0ZSkge1xuICAgICAgICAgICAgY29udHJvbC5kaXNhYmxlKCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBFTVBUWTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udHJvbERpc2FibGVkU3RhdGUoeyBjb250cm9sIH06IEZpZWxkQ29udHJvbCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBjb250cm9sLnN0YXR1c0NoYW5nZXMucGlwZShcbiAgICAgIHN0YXJ0V2l0aChjb250cm9sLnN0YXR1cyksXG4gICAgICBtYXAoKHN0YXR1cykgPT4gc3RhdHVzID09PSAnRElTQUJMRUQnKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -5,14 +5,29 @@ import { injectFormFieldConfig } from '../form-field.config';
5
5
  import * as i0 from "@angular/core";
6
6
  const DEFAULT_CUSTOM_FORM_FIELD_ERROR = '@odx/angular/form-field/default-error';
7
7
  const DEFAULT_ERROR_RESOLVER = () => '';
8
+ /**
9
+ * Manages and resolves form field errors by integrating custom error messages and templates.
10
+ * This service provides reactive observables for error states that can be used to display custom error messages in templates.
11
+ * It supports both string-based error messages and Angular templates for richer error displays.
12
+ */
8
13
  export class FormFieldErrorService {
9
14
  constructor() {
10
15
  this.config = injectFormFieldConfig();
11
16
  this.fieldError$$ = new BehaviorSubject(null);
12
17
  this.customErrors$$ = new BehaviorSubject({});
18
+ /**
19
+ * An Observable that emits the resolved form field error based on current validations and custom errors.
20
+ * It outputs either a `FormFieldError` object with a message and context or `null` if no errors are found.
21
+ */
13
22
  this.error$ = combineLatest([this.fieldError$$, this.customErrors$$]).pipe(map(([error, customErrors]) => this.resolveError(error, customErrors)), distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));
23
+ /**
24
+ * An Observable that emits a boolean indicating whether there are any active errors.
25
+ */
14
26
  this.hasError$ = this.error$.pipe(map((error) => error !== null));
15
27
  }
28
+ /**
29
+ * Gets a boolean indicating whether the current field has any errors.
30
+ */
16
31
  get hasError() {
17
32
  return this.fieldError$$.getValue() !== null;
18
33
  }
@@ -22,9 +37,18 @@ export class FormFieldErrorService {
22
37
  this.fieldError$$.complete();
23
38
  this.customErrors$$.complete();
24
39
  }
40
+ /**
41
+ * Sets the first relevant error from the ValidationErrors object if any error matches the non-ignored error list.
42
+ * @param errors ValidationErrors object containing potential errors from a form control.
43
+ */
25
44
  setError(errors) {
26
45
  this.fieldError$$.next(this.getFirstError(errors ?? {}));
27
46
  }
47
+ /**
48
+ * Registers a custom error template for a specific error key.
49
+ * @param key The error key to register the custom template under. If omitted, a default key is used.
50
+ * @param template A TemplateRef instance containing the Angular template to display for this error.
51
+ */
28
52
  registerCustomError(key, template) {
29
53
  this.customErrors$$.next({ ...this.customErrors$$.getValue(), [key || DEFAULT_CUSTOM_FORM_FIELD_ERROR]: template });
30
54
  }
@@ -53,4 +77,4 @@ export class FormFieldErrorService {
53
77
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldErrorService, decorators: [{
54
78
  type: Injectable
55
79
  }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZm9ybS1maWVsZC9zcmMvbGliL3NlcnZpY2VzL2Zvcm0tZmllbGQtZXJyb3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUEwQixNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHN0QsTUFBTSwrQkFBK0IsR0FBRyx1Q0FBdUMsQ0FBQztBQUNoRixNQUFNLHNCQUFzQixHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztBQVV4QyxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBRW1CLFdBQU0sR0FBRyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pDLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQTBCLElBQUksQ0FBQyxDQUFDO1FBQ2xFLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQXdCLEVBQUUsQ0FBQyxDQUFDO1FBRWpFLFdBQU0sR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbkYsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQ3RFLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQy9DLENBQUM7UUFDYyxjQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztLQTBDOUU7SUF4Q0MsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsS0FBSyxJQUFJLENBQUM7SUFDL0MsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxRQUFRLENBQUMsTUFBZ0M7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sbUJBQW1CLENBQUMsR0FBdUIsRUFBRSxRQUE4QjtRQUNoRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSwrQkFBK0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVPLGFBQWEsQ0FBQyxNQUF3QjtRQUM1QyxNQUFNLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTdILE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBOEIsRUFBRSxZQUFtQztRQUN0RixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQy9CLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxZQUFZLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUNuRixJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMxQixPQUFPO2dCQUNMLEdBQUc7Z0JBQ0gsT0FBTztnQkFDUCxPQUFPLEVBQUUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFO2FBQ2hDLENBQUM7U0FDSDtRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLHNCQUFzQixDQUFDO1FBQ3JFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQy9DLENBQUM7K0dBbkRVLHFCQUFxQjttSEFBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzVGVtcGxhdGVSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaW5qZWN0Rm9ybUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vZm9ybS1maWVsZC5jb25maWcnO1xuaW1wb3J0IHsgRm9ybUZpZWxkRXJyb3IgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5jb25zdCBERUZBVUxUX0NVU1RPTV9GT1JNX0ZJRUxEX0VSUk9SID0gJ0BvZHgvYW5ndWxhci9mb3JtLWZpZWxkL2RlZmF1bHQtZXJyb3InO1xuY29uc3QgREVGQVVMVF9FUlJPUl9SRVNPTFZFUiA9ICgpID0+ICcnO1xuXG5pbnRlcmZhY2UgTmdGb3JtRmllbGRFcnJvciB7XG4gIGtleTogc3RyaW5nO1xuICBjb250ZXh0OiB1bmtub3duO1xufVxuXG50eXBlIEN1c3RvbUZvcm1GaWVsZEVycm9ycyA9IFJlY29yZDxzdHJpbmcsIFRlbXBsYXRlUmVmPHVua25vd24+PjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZEVycm9yU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0Rm9ybUZpZWxkQ29uZmlnKCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmllbGRFcnJvciQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOZ0Zvcm1GaWVsZEVycm9yIHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY3VzdG9tRXJyb3JzJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEN1c3RvbUZvcm1GaWVsZEVycm9ycz4oe30pO1xuXG4gIHB1YmxpYyByZWFkb25seSBlcnJvciQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmZpZWxkRXJyb3IkJCwgdGhpcy5jdXN0b21FcnJvcnMkJF0pLnBpcGUoXG4gICAgbWFwKChbZXJyb3IsIGN1c3RvbUVycm9yc10pID0+IHRoaXMucmVzb2x2ZUVycm9yKGVycm9yLCBjdXN0b21FcnJvcnMpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSksXG4gICk7XG4gIHB1YmxpYyByZWFkb25seSBoYXNFcnJvciQgPSB0aGlzLmVycm9yJC5waXBlKG1hcCgoZXJyb3IpID0+IGVycm9yICE9PSBudWxsKSk7XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZEVycm9yJCQuZ2V0VmFsdWUoKSAhPT0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmZpZWxkRXJyb3IkJC5uZXh0KG51bGwpO1xuICAgIHRoaXMuY3VzdG9tRXJyb3JzJCQubmV4dCh7fSk7XG4gICAgdGhpcy5maWVsZEVycm9yJCQuY29tcGxldGUoKTtcbiAgICB0aGlzLmN1c3RvbUVycm9ycyQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0RXJyb3IoZXJyb3JzPzogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLmZpZWxkRXJyb3IkJC5uZXh0KHRoaXMuZ2V0Rmlyc3RFcnJvcihlcnJvcnMgPz8ge30pKTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3RlckN1c3RvbUVycm9yKGtleTogc3RyaW5nIHwgdW5kZWZpbmVkLCB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4pOiB2b2lkIHtcbiAgICB0aGlzLmN1c3RvbUVycm9ycyQkLm5leHQoeyAuLi50aGlzLmN1c3RvbUVycm9ycyQkLmdldFZhbHVlKCksIFtrZXkgfHwgREVGQVVMVF9DVVNUT01fRk9STV9GSUVMRF9FUlJPUl06IHRlbXBsYXRlIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaXJzdEVycm9yKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyk6IE5nRm9ybUZpZWxkRXJyb3IgfCBudWxsIHtcbiAgICBjb25zdCBba2V5LCBjb250ZXh0XSA9IE9iamVjdC5lbnRyaWVzKGVycm9ycyA/PyB7fSkuZmluZCgoW2Vycm9yS2V5XSkgPT4gIXRoaXMuY29uZmlnLmlnbm9yZUVycm9ycy5pbmNsdWRlcyhlcnJvcktleSkpID8/IFtdO1xuXG4gICAgcmV0dXJuIGtleSA/IHsga2V5LCBjb250ZXh0IH0gOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlRXJyb3IoZXJyb3I6IE5nRm9ybUZpZWxkRXJyb3IgfCBudWxsLCBjdXN0b21FcnJvcnM6IEN1c3RvbUZvcm1GaWVsZEVycm9ycyk6IEZvcm1GaWVsZEVycm9yIHwgbnVsbCB7XG4gICAgaWYgKCFlcnJvcikgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgeyBrZXksIGNvbnRleHQgfSA9IGVycm9yO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBjdXN0b21FcnJvcnNba2V5XSA/PyBjdXN0b21FcnJvcnNbREVGQVVMVF9DVVNUT01fRk9STV9GSUVMRF9FUlJPUl07XG4gICAgaWYgKGlzVGVtcGxhdGVSZWYobWVzc2FnZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGtleSxcbiAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbnRleHQgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgZ2V0TWVzc2FnZSA9IHRoaXMuY29uZmlnLmVycm9yc1trZXldID8/IERFRkFVTFRfRVJST1JfUkVTT0xWRVI7XG4gICAgcmV0dXJuIHsga2V5LCBtZXNzYWdlOiBnZXRNZXNzYWdlKGNvbnRleHQpIH07XG4gIH1cbn1cbiJdfQ==
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC1lcnJvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZm9ybS1maWVsZC9zcmMvbGliL3NlcnZpY2VzL2Zvcm0tZmllbGQtZXJyb3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUEwQixNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHN0QsTUFBTSwrQkFBK0IsR0FBRyx1Q0FBdUMsQ0FBQztBQUNoRixNQUFNLHNCQUFzQixHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztBQVN4Qzs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLHFCQUFxQjtJQURsQztRQUVtQixXQUFNLEdBQUcscUJBQXFCLEVBQUUsQ0FBQztRQUNqQyxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUEwQixJQUFJLENBQUMsQ0FBQztRQUNsRSxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUF3QixFQUFFLENBQUMsQ0FBQztRQUVqRjs7O1dBR0c7UUFDYSxXQUFNLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ25GLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQyxFQUN0RSxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUMvQyxDQUFDO1FBRUY7O1dBRUc7UUFDYSxjQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztLQXNEOUU7SUFwREM7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksQ0FBQztJQUMvQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxNQUFnQztRQUM5QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksbUJBQW1CLENBQUMsR0FBdUIsRUFBRSxRQUE4QjtRQUNoRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSwrQkFBK0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVPLGFBQWEsQ0FBQyxNQUF3QjtRQUM1QyxNQUFNLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTdILE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBOEIsRUFBRSxZQUFtQztRQUN0RixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQy9CLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxZQUFZLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUNuRixJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMxQixPQUFPO2dCQUNMLEdBQUc7Z0JBQ0gsT0FBTztnQkFDUCxPQUFPLEVBQUUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFO2FBQ2hDLENBQUM7U0FDSDtRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLHNCQUFzQixDQUFDO1FBQ3JFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO0lBQy9DLENBQUM7K0dBdkVVLHFCQUFxQjttSEFBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzVGVtcGxhdGVSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaW5qZWN0Rm9ybUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vZm9ybS1maWVsZC5jb25maWcnO1xuaW1wb3J0IHsgRm9ybUZpZWxkRXJyb3IgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5jb25zdCBERUZBVUxUX0NVU1RPTV9GT1JNX0ZJRUxEX0VSUk9SID0gJ0BvZHgvYW5ndWxhci9mb3JtLWZpZWxkL2RlZmF1bHQtZXJyb3InO1xuY29uc3QgREVGQVVMVF9FUlJPUl9SRVNPTFZFUiA9ICgpID0+ICcnO1xuXG5pbnRlcmZhY2UgTmdGb3JtRmllbGRFcnJvciB7XG4gIGtleTogc3RyaW5nO1xuICBjb250ZXh0OiB1bmtub3duO1xufVxuXG50eXBlIEN1c3RvbUZvcm1GaWVsZEVycm9ycyA9IFJlY29yZDxzdHJpbmcsIFRlbXBsYXRlUmVmPHVua25vd24+PjtcblxuLyoqXG4gKiBNYW5hZ2VzIGFuZCByZXNvbHZlcyBmb3JtIGZpZWxkIGVycm9ycyBieSBpbnRlZ3JhdGluZyBjdXN0b20gZXJyb3IgbWVzc2FnZXMgYW5kIHRlbXBsYXRlcy5cbiAqIFRoaXMgc2VydmljZSBwcm92aWRlcyByZWFjdGl2ZSBvYnNlcnZhYmxlcyBmb3IgZXJyb3Igc3RhdGVzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZGlzcGxheSBjdXN0b20gZXJyb3IgbWVzc2FnZXMgaW4gdGVtcGxhdGVzLlxuICogSXQgc3VwcG9ydHMgYm90aCBzdHJpbmctYmFzZWQgZXJyb3IgbWVzc2FnZXMgYW5kIEFuZ3VsYXIgdGVtcGxhdGVzIGZvciByaWNoZXIgZXJyb3IgZGlzcGxheXMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGb3JtRmllbGRFcnJvclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdEZvcm1GaWVsZENvbmZpZygpO1xuICBwcml2YXRlIHJlYWRvbmx5IGZpZWxkRXJyb3IkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TmdGb3JtRmllbGRFcnJvciB8IG51bGw+KG51bGwpO1xuICBwcml2YXRlIHJlYWRvbmx5IGN1c3RvbUVycm9ycyQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDdXN0b21Gb3JtRmllbGRFcnJvcnM+KHt9KTtcblxuICAvKipcbiAgICogQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSByZXNvbHZlZCBmb3JtIGZpZWxkIGVycm9yIGJhc2VkIG9uIGN1cnJlbnQgdmFsaWRhdGlvbnMgYW5kIGN1c3RvbSBlcnJvcnMuXG4gICAqIEl0IG91dHB1dHMgZWl0aGVyIGEgYEZvcm1GaWVsZEVycm9yYCBvYmplY3Qgd2l0aCBhIG1lc3NhZ2UgYW5kIGNvbnRleHQgb3IgYG51bGxgIGlmIG5vIGVycm9ycyBhcmUgZm91bmQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZXJyb3IkID0gY29tYmluZUxhdGVzdChbdGhpcy5maWVsZEVycm9yJCQsIHRoaXMuY3VzdG9tRXJyb3JzJCRdKS5waXBlKFxuICAgIG1hcCgoW2Vycm9yLCBjdXN0b21FcnJvcnNdKSA9PiB0aGlzLnJlc29sdmVFcnJvcihlcnJvciwgY3VzdG9tRXJyb3JzKSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICApO1xuXG4gIC8qKlxuICAgKiBBbiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGVyZSBhcmUgYW55IGFjdGl2ZSBlcnJvcnMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaGFzRXJyb3IkID0gdGhpcy5lcnJvciQucGlwZShtYXAoKGVycm9yKSA9PiBlcnJvciAhPT0gbnVsbCkpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGN1cnJlbnQgZmllbGQgaGFzIGFueSBlcnJvcnMuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGhhc0Vycm9yKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkRXJyb3IkJC5nZXRWYWx1ZSgpICE9PSBudWxsO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZmllbGRFcnJvciQkLm5leHQobnVsbCk7XG4gICAgdGhpcy5jdXN0b21FcnJvcnMkJC5uZXh0KHt9KTtcbiAgICB0aGlzLmZpZWxkRXJyb3IkJC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuY3VzdG9tRXJyb3JzJCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBmaXJzdCByZWxldmFudCBlcnJvciBmcm9tIHRoZSBWYWxpZGF0aW9uRXJyb3JzIG9iamVjdCBpZiBhbnkgZXJyb3IgbWF0Y2hlcyB0aGUgbm9uLWlnbm9yZWQgZXJyb3IgbGlzdC5cbiAgICogQHBhcmFtIGVycm9ycyBWYWxpZGF0aW9uRXJyb3JzIG9iamVjdCBjb250YWluaW5nIHBvdGVudGlhbCBlcnJvcnMgZnJvbSBhIGZvcm0gY29udHJvbC5cbiAgICovXG4gIHB1YmxpYyBzZXRFcnJvcihlcnJvcnM/OiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuZmllbGRFcnJvciQkLm5leHQodGhpcy5nZXRGaXJzdEVycm9yKGVycm9ycyA/PyB7fSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGN1c3RvbSBlcnJvciB0ZW1wbGF0ZSBmb3IgYSBzcGVjaWZpYyBlcnJvciBrZXkuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVycm9yIGtleSB0byByZWdpc3RlciB0aGUgY3VzdG9tIHRlbXBsYXRlIHVuZGVyLiBJZiBvbWl0dGVkLCBhIGRlZmF1bHQga2V5IGlzIHVzZWQuXG4gICAqIEBwYXJhbSB0ZW1wbGF0ZSBBIFRlbXBsYXRlUmVmIGluc3RhbmNlIGNvbnRhaW5pbmcgdGhlIEFuZ3VsYXIgdGVtcGxhdGUgdG8gZGlzcGxheSBmb3IgdGhpcyBlcnJvci5cbiAgICovXG4gIHB1YmxpYyByZWdpc3RlckN1c3RvbUVycm9yKGtleTogc3RyaW5nIHwgdW5kZWZpbmVkLCB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4pOiB2b2lkIHtcbiAgICB0aGlzLmN1c3RvbUVycm9ycyQkLm5leHQoeyAuLi50aGlzLmN1c3RvbUVycm9ycyQkLmdldFZhbHVlKCksIFtrZXkgfHwgREVGQVVMVF9DVVNUT01fRk9STV9GSUVMRF9FUlJPUl06IHRlbXBsYXRlIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaXJzdEVycm9yKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyk6IE5nRm9ybUZpZWxkRXJyb3IgfCBudWxsIHtcbiAgICBjb25zdCBba2V5LCBjb250ZXh0XSA9IE9iamVjdC5lbnRyaWVzKGVycm9ycyA/PyB7fSkuZmluZCgoW2Vycm9yS2V5XSkgPT4gIXRoaXMuY29uZmlnLmlnbm9yZUVycm9ycy5pbmNsdWRlcyhlcnJvcktleSkpID8/IFtdO1xuXG4gICAgcmV0dXJuIGtleSA/IHsga2V5LCBjb250ZXh0IH0gOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlRXJyb3IoZXJyb3I6IE5nRm9ybUZpZWxkRXJyb3IgfCBudWxsLCBjdXN0b21FcnJvcnM6IEN1c3RvbUZvcm1GaWVsZEVycm9ycyk6IEZvcm1GaWVsZEVycm9yIHwgbnVsbCB7XG4gICAgaWYgKCFlcnJvcikgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgeyBrZXksIGNvbnRleHQgfSA9IGVycm9yO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBjdXN0b21FcnJvcnNba2V5XSA/PyBjdXN0b21FcnJvcnNbREVGQVVMVF9DVVNUT01fRk9STV9GSUVMRF9FUlJPUl07XG4gICAgaWYgKGlzVGVtcGxhdGVSZWYobWVzc2FnZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGtleSxcbiAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbnRleHQgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgZ2V0TWVzc2FnZSA9IHRoaXMuY29uZmlnLmVycm9yc1trZXldID8/IERFRkFVTFRfRVJST1JfUkVTT0xWRVI7XG4gICAgcmV0dXJuIHsga2V5LCBtZXNzYWdlOiBnZXRNZXNzYWdlKGNvbnRleHQpIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,10 @@
1
1
  import { Directive, inject } from '@angular/core';
2
2
  import { ButtonComponent, ButtonVariant } from '@odx/angular/components/button';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Directive for the header avatar component.
6
+ * This directive is responsible for customizing the appearance of the header avatar button.
7
+ */
4
8
  export class HeaderAvatarDirective {
5
9
  constructor() {
6
10
  this.button = inject(ButtonComponent, { self: true });
@@ -21,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
21
25
  },
22
26
  }]
23
27
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWF2YXRhci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXIvc3JjL2xpYi9kaXJlY3RpdmVzL2hlYWRlci1hdmF0YXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQVNoRixNQUFNLE9BQU8scUJBQXFCO0lBUGxDO1FBUW1CLFdBQU0sR0FBRyxNQUFNLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FLbkU7SUFIUSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDNUMsQ0FBQzsrR0FMVSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG9DQUFvQztvQkFDOUMsSUFBSSxFQUFFO3dCQUNKLDRCQUE0QixFQUFFLE1BQU07cUJBQ3JDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCwgQnV0dG9uVmFyaWFudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ2J1dHRvbltvZHhCdXR0b25dW29keEhlYWRlckF2YXRhcl0nLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vZHgtaGVhZGVyX19hdmF0YXJdJzogJ3RydWUnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJBdmF0YXJEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBidXR0b24gPSBpbmplY3QoQnV0dG9uQ29tcG9uZW50LCB7IHNlbGY6IHRydWUgfSk7XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJ1dHRvbi52YXJpYW50ID0gQnV0dG9uVmFyaWFudC5HSE9TVDtcbiAgfVxufVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWF2YXRhci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXIvc3JjL2xpYi9kaXJlY3RpdmVzL2hlYWRlci1hdmF0YXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUVoRjs7O0dBR0c7QUFRSCxNQUFNLE9BQU8scUJBQXFCO0lBUGxDO1FBUW1CLFdBQU0sR0FBRyxNQUFNLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FLbkU7SUFIUSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDNUMsQ0FBQzsrR0FMVSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG9DQUFvQztvQkFDOUMsSUFBSSxFQUFFO3dCQUNKLDRCQUE0QixFQUFFLE1BQU07cUJBQ3JDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCwgQnV0dG9uVmFyaWFudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5cbi8qKlxuICogRGlyZWN0aXZlIGZvciB0aGUgaGVhZGVyIGF2YXRhciBjb21wb25lbnQuXG4gKiBUaGlzIGRpcmVjdGl2ZSBpcyByZXNwb25zaWJsZSBmb3IgY3VzdG9taXppbmcgdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIGhlYWRlciBhdmF0YXIgYnV0dG9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdidXR0b25bb2R4QnV0dG9uXVtvZHhIZWFkZXJBdmF0YXJdJyxcbiAgaG9zdDoge1xuICAgICdbY2xhc3Mub2R4LWhlYWRlcl9fYXZhdGFyXSc6ICd0cnVlJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyQXZhdGFyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYnV0dG9uID0gaW5qZWN0KEJ1dHRvbkNvbXBvbmVudCwgeyBzZWxmOiB0cnVlIH0pO1xuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5idXR0b24udmFyaWFudCA9IEJ1dHRvblZhcmlhbnQuR0hPU1Q7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,8 @@
1
1
  import { Directive } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Directive for displaying the title in the header component.
5
+ */
3
6
  export class HeaderTitleDirective {
4
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
8
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: HeaderTitleDirective, isStandalone: true, selector: "odx-header-title", host: { properties: { "class.odx-header__title": "true" } }, ngImport: i0 }); }
@@ -14,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
14
17
  },
15
18
  }]
16
19
  }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXRpdGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2hlYWRlci9zcmMvbGliL2RpcmVjdGl2ZXMvaGVhZGVyLXRpdGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVMxQyxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7bUdBQXBCLG9CQUFvQjs7NEZBQXBCLG9CQUFvQjtrQkFQaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLDJCQUEyQixFQUFFLE1BQU07cUJBQ3BDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ29keC1oZWFkZXItdGl0bGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vZHgtaGVhZGVyX190aXRsZV0nOiAndHJ1ZScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlclRpdGxlRGlyZWN0aXZlIHt9XG4iXX0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXRpdGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2hlYWRlci9zcmMvbGliL2RpcmVjdGl2ZXMvaGVhZGVyLXRpdGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUxQzs7R0FFRztBQVFILE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjttR0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQVBoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0osMkJBQTJCLEVBQUUsTUFBTTtxQkFDcEM7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgZm9yIGRpc3BsYXlpbmcgdGhlIHRpdGxlIGluIHRoZSBoZWFkZXIgY29tcG9uZW50LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdvZHgtaGVhZGVyLXRpdGxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3Mub2R4LWhlYWRlcl9fdGl0bGVdJzogJ3RydWUnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJUaXRsZURpcmVjdGl2ZSB7fVxuIl19
@@ -4,6 +4,9 @@ import { LogoDirective } from '@odx/angular/components/logo';
4
4
  import { CSSComponent } from '@odx/angular/internal';
5
5
  import { injectElement } from '@odx/angular/utils';
6
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * Represents the header component.
9
+ */
7
10
  export let HeaderComponent = class HeaderComponent {
8
11
  constructor() {
9
12
  this.element = injectElement();
@@ -18,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
18
21
  type: Component,
19
22
  args: [{ standalone: true, selector: 'odx-header', imports: [LogoDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"button[odxMainMenuButton]\" />\n<odx-logo />\n<ng-content select=\"odx-header-title\" />\n<div class=\"odx-header__content\">\n <ng-content />\n</div>\n<ng-content select=\"odx-action-group, odx-auth\" />\n<ng-content select=\"[odxHeaderAvatar]\" />\n" }]
20
23
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2hlYWRlci9zcmMvbGliL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXIvc3JjL2xpYi9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBVzVDLFdBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWU7SUFBckI7UUFDVyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7S0FDM0M7K0dBRlksZUFBZTttR0FBZixlQUFlLHNFQ2Q1QixtUkFRQSw0Q0RDWSxhQUFhOztBQUtaLGVBQWU7SUFUM0IsWUFBWSxDQUFDLFFBQVEsQ0FBQztHQVNWLGVBQWUsQ0FFM0I7NEZBRlksZUFBZTtrQkFSM0IsU0FBUztpQ0FDSSxJQUFJLFlBQ04sWUFBWSxXQUNiLENBQUMsYUFBYSxDQUFDLGlCQUVULGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9nb0RpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2xvZ28nO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuXG5AQ1NTQ29tcG9uZW50KCdoZWFkZXInKVxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnb2R4LWhlYWRlcicsXG4gIGltcG9ydHM6IFtMb2dvRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImJ1dHRvbltvZHhNYWluTWVudUJ1dHRvbl1cIiAvPlxuPG9keC1sb2dvIC8+XG48bmctY29udGVudCBzZWxlY3Q9XCJvZHgtaGVhZGVyLXRpdGxlXCIgLz5cbjxkaXYgY2xhc3M9XCJvZHgtaGVhZGVyX19jb250ZW50XCI+XG4gIDxuZy1jb250ZW50IC8+XG48L2Rpdj5cbjxuZy1jb250ZW50IHNlbGVjdD1cIm9keC1hY3Rpb24tZ3JvdXAsIG9keC1hdXRoXCIgLz5cbjxuZy1jb250ZW50IHNlbGVjdD1cIltvZHhIZWFkZXJBdmF0YXJdXCIgLz5cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2hlYWRlci9zcmMvbGliL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXIvc3JjL2xpYi9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRW5EOztHQUVHO0FBVUksV0FBTSxlQUFlLEdBQXJCLE1BQU0sZUFBZTtJQUFyQjtRQUNXLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztLQUMzQzsrR0FGWSxlQUFlO21HQUFmLGVBQWUsc0VDakI1QixtUkFRQSw0Q0RJWSxhQUFhOztBQUtaLGVBQWU7SUFUM0IsWUFBWSxDQUFDLFFBQVEsQ0FBQztHQVNWLGVBQWUsQ0FFM0I7NEZBRlksZUFBZTtrQkFSM0IsU0FBUztpQ0FDSSxJQUFJLFlBQ04sWUFBWSxXQUNiLENBQUMsYUFBYSxDQUFDLGlCQUVULGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9nb0RpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2xvZ28nO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGhlYWRlciBjb21wb25lbnQuXG4gKi9cbkBDU1NDb21wb25lbnQoJ2hlYWRlcicpXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvZHgtaGVhZGVyJyxcbiAgaW1wb3J0czogW0xvZ29EaXJlY3RpdmVdLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiYnV0dG9uW29keE1haW5NZW51QnV0dG9uXVwiIC8+XG48b2R4LWxvZ28gLz5cbjxuZy1jb250ZW50IHNlbGVjdD1cIm9keC1oZWFkZXItdGl0bGVcIiAvPlxuPGRpdiBjbGFzcz1cIm9keC1oZWFkZXJfX2NvbnRlbnRcIj5cbiAgPG5nLWNvbnRlbnQgLz5cbjwvZGl2PlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwib2R4LWFjdGlvbi1ncm91cCwgb2R4LWF1dGhcIiAvPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiW29keEhlYWRlckF2YXRhcl1cIiAvPlxuIl19
@@ -16,6 +16,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
16
16
  hostDirectives: [{ directive: RouterLinkActive, inputs: ['routerLinkActiveOptions'] }],
17
17
  }]
18
18
  }] });
19
+ /**
20
+ * Directive for handling header navigation links.
21
+ */
19
22
  export class HeaderNavigationLinkDirective {
20
23
  constructor() {
21
24
  const routerLinkActive = inject(RouterLinkActive, { self: true, optional: true });
@@ -34,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
34
37
  selector: '[odxHeaderNavigationLink]',
35
38
  }]
36
39
  }], ctorParameters: function () { return []; } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW5hdmlnYXRpb24tbGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXItbmF2aWdhdGlvbi9zcmMvbGliL2RpcmVjdGl2ZXMvaGVhZGVyLW5hdmlnYXRpb24tbGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBT3ZELE1BQU0sT0FBTyxtQ0FBbUM7K0dBQW5DLG1DQUFtQzttR0FBbkMsbUNBQW1DOzs0RkFBbkMsbUNBQW1DO2tCQUwvQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUNBQXVDO29CQUNqRCxjQUFjLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7aUJBQ3ZGOztBQU9ELE1BQU0sT0FBTyw2QkFBNkI7SUFDeEM7UUFDRSxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGdCQUFnQjtZQUFFLE9BQU87UUFDOUIsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQ3JILG9CQUFvQixDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvQyxDQUFDOytHQU5VLDZCQUE2QjttR0FBN0IsNkJBQTZCOzs0RkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsMkJBQTJCO2lCQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHJlYWN0aXZlQ2xhc3NCaW5kaW5nIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3JvdXRlckxpbmtdW29keEhlYWRlck5hdmlnYXRpb25MaW5rXScsXG4gIGhvc3REaXJlY3RpdmVzOiBbeyBkaXJlY3RpdmU6IFJvdXRlckxpbmtBY3RpdmUsIGlucHV0czogWydyb3V0ZXJMaW5rQWN0aXZlT3B0aW9ucyddIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJOYXZpZ2F0aW9uUm91dGVyTGlua0RpcmVjdGl2ZSB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbb2R4SGVhZGVyTmF2aWdhdGlvbkxpbmtdJyxcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyTmF2aWdhdGlvbkxpbmtEaXJlY3RpdmUge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjb25zdCByb3V0ZXJMaW5rQWN0aXZlID0gaW5qZWN0KFJvdXRlckxpbmtBY3RpdmUsIHsgc2VsZjogdHJ1ZSwgb3B0aW9uYWw6IHRydWUgfSk7XG4gICAgaWYgKCFyb3V0ZXJMaW5rQWN0aXZlKSByZXR1cm47XG4gICAgY29uc3QgaXNBY3RpdmUkID0gcm91dGVyTGlua0FjdGl2ZS5pc0FjdGl2ZUNoYW5nZS5waXBlKHN0YXJ0V2l0aChyb3V0ZXJMaW5rQWN0aXZlLmlzQWN0aXZlKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gICAgcmVhY3RpdmVDbGFzc0JpbmRpbmcoaXNBY3RpdmUkLCAnaXMtYWN0aXZlJyk7XG4gIH1cbn1cbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW5hdmlnYXRpb24tbGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXItbmF2aWdhdGlvbi9zcmMvbGliL2RpcmVjdGl2ZXMvaGVhZGVyLW5hdmlnYXRpb24tbGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBT3ZELE1BQU0sT0FBTyxtQ0FBbUM7K0dBQW5DLG1DQUFtQzttR0FBbkMsbUNBQW1DOzs0RkFBbkMsbUNBQW1DO2tCQUwvQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUNBQXVDO29CQUNqRCxjQUFjLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7aUJBQ3ZGOztBQUdEOztHQUVHO0FBS0gsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QztRQUNFLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsZ0JBQWdCO1lBQUUsT0FBTztRQUM5QixNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFDckgsb0JBQW9CLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7K0dBTlUsNkJBQTZCO21HQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSwyQkFBMkI7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmtBY3RpdmUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgcmVhY3RpdmVDbGFzc0JpbmRpbmcgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbcm91dGVyTGlua11bb2R4SGVhZGVyTmF2aWdhdGlvbkxpbmtdJyxcbiAgaG9zdERpcmVjdGl2ZXM6IFt7IGRpcmVjdGl2ZTogUm91dGVyTGlua0FjdGl2ZSwgaW5wdXRzOiBbJ3JvdXRlckxpbmtBY3RpdmVPcHRpb25zJ10gfV0sXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlck5hdmlnYXRpb25Sb3V0ZXJMaW5rRGlyZWN0aXZlIHt9XG5cbi8qKlxuICogRGlyZWN0aXZlIGZvciBoYW5kbGluZyBoZWFkZXIgbmF2aWdhdGlvbiBsaW5rcy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW29keEhlYWRlck5hdmlnYXRpb25MaW5rXScsXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlck5hdmlnYXRpb25MaW5rRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3Qgcm91dGVyTGlua0FjdGl2ZSA9IGluamVjdChSb3V0ZXJMaW5rQWN0aXZlLCB7IHNlbGY6IHRydWUsIG9wdGlvbmFsOiB0cnVlIH0pO1xuICAgIGlmICghcm91dGVyTGlua0FjdGl2ZSkgcmV0dXJuO1xuICAgIGNvbnN0IGlzQWN0aXZlJCA9IHJvdXRlckxpbmtBY3RpdmUuaXNBY3RpdmVDaGFuZ2UucGlwZShzdGFydFdpdGgocm91dGVyTGlua0FjdGl2ZS5pc0FjdGl2ZSksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuICAgIHJlYWN0aXZlQ2xhc3NCaW5kaW5nKGlzQWN0aXZlJCwgJ2lzLWFjdGl2ZScpO1xuICB9XG59XG4iXX0=
@@ -4,6 +4,9 @@ import { ActionGroupComponent } from '@odx/angular/components/action-group';
4
4
  import { CSSComponent, CSSModifier } from '@odx/angular/internal';
5
5
  import { injectElement } from '@odx/angular/utils';
6
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * Represents the header navigation component.
9
+ */
7
10
  export let HeaderNavigationComponent = class HeaderNavigationComponent {
8
11
  constructor() {
9
12
  this.element = injectElement();
@@ -25,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
25
28
  type: Input,
26
29
  args: [{ transform: booleanAttribute }]
27
30
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvaGVhZGVyLW5hdmlnYXRpb24vc3JjL2xpYi9oZWFkZXItbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXItbmF2aWdhdGlvbi9zcmMvbGliL2hlYWRlci1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFXNUMsV0FBTSx5QkFBeUIsR0FBL0IsTUFBTSx5QkFBeUI7SUFBL0I7UUFDVyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7S0FLM0M7K0dBTlkseUJBQXlCO21HQUF6Qix5QkFBeUIsc0dBSWhCLGdCQUFnQiw2QkNsQnRDLGtMQUdBLDRDRE9ZLG9CQUFvQjs7QUFTdkI7SUFGTixXQUFXLEVBQUU7OzJEQUVZO0FBTGYseUJBQXlCO0lBVHJDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQztHQVNyQix5QkFBeUIsQ0FNckM7NEZBTlkseUJBQXlCO2tCQVJyQyxTQUFTO2lDQUNJLElBQUksWUFDTix1QkFBdUIsV0FFeEIsQ0FBQyxvQkFBb0IsQ0FBQyxpQkFDaEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFPeEMsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBib29sZWFuQXR0cmlidXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25Hcm91cENvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2FjdGlvbi1ncm91cCc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQsIENTU01vZGlmaWVyIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuXG5AQ1NTQ29tcG9uZW50KCdoZWFkZXItbmF2aWdhdGlvbicpXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvZHgtaGVhZGVyLW5hdmlnYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbQWN0aW9uR3JvdXBDb21wb25lbnRdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIEBDU1NNb2RpZmllcigpXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgY2VudGVyZWQhOiBib29sZWFuO1xufVxuIiwiPG9keC1hY3Rpb24tZ3JvdXAgY2xhc3M9XCJvZHgtaGVhZGVyLW5hdmlnYXRpb25fX2lubmVyXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIm5nLXRlbXBsYXRlLCBbb2R4SGVhZGVyTmF2aWdhdGlvbkxpbmtdXCIgbmdQcm9qZWN0QXM9XCJbb2R4QnV0dG9uXVwiIC8+XG48L29keC1hY3Rpb24tZ3JvdXA+XG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvaGVhZGVyLW5hdmlnYXRpb24vc3JjL2xpYi9oZWFkZXItbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9oZWFkZXItbmF2aWdhdGlvbi9zcmMvbGliL2hlYWRlci1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFFbkQ7O0dBRUc7QUFVSSxXQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtJQUEvQjtRQUNXLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztLQVEzQzsrR0FUWSx5QkFBeUI7bUdBQXpCLHlCQUF5QixzR0FPaEIsZ0JBQWdCLDZCQ3hCdEMsa0xBR0EsNENEVVksb0JBQW9COztBQVl2QjtJQUZOLFdBQVcsRUFBRTs7MkRBRVk7QUFSZix5QkFBeUI7SUFUckMsWUFBWSxDQUFDLG1CQUFtQixDQUFDO0dBU3JCLHlCQUF5QixDQVNyQzs0RkFUWSx5QkFBeUI7a0JBUnJDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLHVCQUF1QixXQUV4QixDQUFDLG9CQUFvQixDQUFDLGlCQUNoQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQVV4QyxRQUFRO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24sIGJvb2xlYW5BdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYWN0aW9uLWdyb3VwJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgQ1NTTW9kaWZpZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgaGVhZGVyIG5hdmlnYXRpb24gY29tcG9uZW50LlxuICovXG5AQ1NTQ29tcG9uZW50KCdoZWFkZXItbmF2aWdhdGlvbicpXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvZHgtaGVhZGVyLW5hdmlnYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbQWN0aW9uR3JvdXBDb21wb25lbnRdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgaGVhZGVyIG5hdmlnYXRpb24gc2hvdWxkIGJlIGNlbnRlcmVkLlxuICAgKi9cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyBjZW50ZXJlZCE6IGJvb2xlYW47XG59XG4iLCI8b2R4LWFjdGlvbi1ncm91cCBjbGFzcz1cIm9keC1oZWFkZXItbmF2aWdhdGlvbl9faW5uZXJcIj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwibmctdGVtcGxhdGUsIFtvZHhIZWFkZXJOYXZpZ2F0aW9uTGlua11cIiBuZ1Byb2plY3RBcz1cIltvZHhCdXR0b25dXCIgLz5cbjwvb2R4LWFjdGlvbi1ncm91cD5cbiJdfQ==
@@ -1,7 +1,21 @@
1
+ /**
2
+ * Unpacks a combined icon identifier string into separate icon set and icon name components.
3
+ * The identifier is expected to follow the format "iconSet::iconName". If the "iconName" part is
4
+ * missing, the function assumes the icon belongs to the 'core' set.
5
+ *
6
+ * @param value The combined identifier string in the format "iconSet::iconName".
7
+ * @returns A tuple containing the icon set and icon name as two separate strings. Defaults to 'core'
8
+ * if the iconName is omitted in the input.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * unpackIconIdentifier("menu") // returns ['core', 'menu']
13
+ * ```
14
+ */
1
15
  export function unpackIconIdentifier(value) {
2
16
  const [iconSet, iconName] = value.split('::');
3
17
  if (!iconName)
4
18
  return ['core', iconSet];
5
19
  return [iconSet, iconName];
6
20
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5wYWNrLWljb24taWRlbnRpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2ljb24vc3JjL2xpYi9oZWxwZXJzL3VucGFjay1pY29uLWlkZW50aWZpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEtBQWE7SUFDaEQsTUFBTSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLElBQUksQ0FBQyxRQUFRO1FBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUV4QyxPQUFPLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gdW5wYWNrSWNvbklkZW50aWZpZXIodmFsdWU6IHN0cmluZyk6IFtpY29uU2V0OiBzdHJpbmcsIGljb25OYW1lOiBzdHJpbmddIHtcbiAgY29uc3QgW2ljb25TZXQsIGljb25OYW1lXSA9IHZhbHVlLnNwbGl0KCc6OicpO1xuICBpZiAoIWljb25OYW1lKSByZXR1cm4gWydjb3JlJywgaWNvblNldF07XG5cbiAgcmV0dXJuIFtpY29uU2V0LCBpY29uTmFtZV07XG59XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5wYWNrLWljb24taWRlbnRpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2ljb24vc3JjL2xpYi9oZWxwZXJzL3VucGFjay1pY29uLWlkZW50aWZpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFhO0lBQ2hELE1BQU0sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QyxJQUFJLENBQUMsUUFBUTtRQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFeEMsT0FBTyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztBQUM3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVbnBhY2tzIGEgY29tYmluZWQgaWNvbiBpZGVudGlmaWVyIHN0cmluZyBpbnRvIHNlcGFyYXRlIGljb24gc2V0IGFuZCBpY29uIG5hbWUgY29tcG9uZW50cy5cbiAqIFRoZSBpZGVudGlmaWVyIGlzIGV4cGVjdGVkIHRvIGZvbGxvdyB0aGUgZm9ybWF0IFwiaWNvblNldDo6aWNvbk5hbWVcIi4gSWYgdGhlIFwiaWNvbk5hbWVcIiBwYXJ0IGlzXG4gKiBtaXNzaW5nLCB0aGUgZnVuY3Rpb24gYXNzdW1lcyB0aGUgaWNvbiBiZWxvbmdzIHRvIHRoZSAnY29yZScgc2V0LlxuICpcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgY29tYmluZWQgaWRlbnRpZmllciBzdHJpbmcgaW4gdGhlIGZvcm1hdCBcImljb25TZXQ6Omljb25OYW1lXCIuXG4gKiBAcmV0dXJucyBBIHR1cGxlIGNvbnRhaW5pbmcgdGhlIGljb24gc2V0IGFuZCBpY29uIG5hbWUgYXMgdHdvIHNlcGFyYXRlIHN0cmluZ3MuIERlZmF1bHRzIHRvICdjb3JlJ1xuICogICAgICAgICAgaWYgdGhlIGljb25OYW1lIGlzIG9taXR0ZWQgaW4gdGhlIGlucHV0LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogdW5wYWNrSWNvbklkZW50aWZpZXIoXCJtZW51XCIpICAgICAgIC8vIHJldHVybnMgWydjb3JlJywgJ21lbnUnXVxuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bnBhY2tJY29uSWRlbnRpZmllcih2YWx1ZTogc3RyaW5nKTogW2ljb25TZXQ6IHN0cmluZywgaWNvbk5hbWU6IHN0cmluZ10ge1xuICBjb25zdCBbaWNvblNldCwgaWNvbk5hbWVdID0gdmFsdWUuc3BsaXQoJzo6Jyk7XG4gIGlmICghaWNvbk5hbWUpIHJldHVybiBbJ2NvcmUnLCBpY29uU2V0XTtcblxuICByZXR1cm4gW2ljb25TZXQsIGljb25OYW1lXTtcbn1cbiJdfQ==
@@ -6,14 +6,38 @@ import { unpackIconIdentifier } from './helpers';
6
6
  import { injectIconConfig } from './icon.config';
7
7
  import { IconSize } from './models';
8
8
  import * as i0 from "@angular/core";
9
+ /**
10
+ * Represents an icon component that can dynamically display various icons based on input properties. This component
11
+ * leverages CSS for styling and is designed to be easily embedded within other components and views.
12
+ *
13
+ * It allows for specifying icon sets and individual icon names, supporting flexible usage across different contexts
14
+ * and themes. The component is also optimized for performance with Angular's OnPush change detection strategy.
15
+ */
9
16
  export let IconComponent = class IconComponent {
10
17
  constructor() {
11
18
  this.element = injectElement();
19
+ /**
20
+ * Determines whether the icon should be displayed inline with text or other elements.
21
+ */
12
22
  this.inline = false;
23
+ /**
24
+ * Specifies the size of the icon, which can be adjusted using predefined sizes from the IconSize enum.
25
+ * @see {IconSize}
26
+ */
13
27
  this.size = IconSize.MEDIUM;
28
+ /**
29
+ * The name of the icon to be displayed, which corresponds to specific icons within a given icon set.
30
+ */
14
31
  this.name = null;
32
+ /**
33
+ * Specifies the icon set that the icon belongs to. The default set can be injected from the icon configuration.
34
+ */
15
35
  this.iconSet = injectIconConfig().defaultIconSet;
16
36
  }
37
+ /**
38
+ * Allows for setting both the icon set and icon name via a single identifier, typically formatted as 'set::name'.
39
+ * Unpacking this identifier sets both `name` and `iconSet` properties.
40
+ */
17
41
  set identifier(value) {
18
42
  const [iconSet, name] = value ? unpackIconIdentifier(value) : [null, null];
19
43
  this.name = name;
@@ -60,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
60
84
  }], identifier: [{
61
85
  type: Input
62
86
  }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9saWIvaWNvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFnQjdCLFdBQU0sYUFBYSxHQUFuQixNQUFNLGFBQWE7SUFBbkI7UUFDVyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFJbkMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUlmLFNBQUksR0FBYSxRQUFRLENBQUMsTUFBTSxDQUFDO1FBR2pDLFNBQUksR0FBa0IsSUFBSSxDQUFDO1FBRzNCLFlBQU8sR0FBa0IsZ0JBQWdCLEVBQUUsQ0FBQyxjQUFjLENBQUM7S0FRbkU7SUFOQyxJQUNXLFVBQVUsQ0FBQyxLQUFnQztRQUNwRCxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7K0dBdEJVLGFBQWE7bUdBQWIsYUFBYSxtRkFJSixnQkFBZ0IsaVFBZjFCLGVBQWU7O0FBZ0JsQjtJQUZOLFdBQVcsRUFBRTs7NkNBRVE7QUFJZjtJQUZOLFdBQVcsRUFBRTs7MkNBRTBCO0FBVDdCLGFBQWE7SUFkekIsWUFBWSxDQUFDLE1BQU0sQ0FBQztHQWNSLGFBQWEsQ0F1QnpCOzRGQXZCWSxhQUFhO2tCQWJ6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUUsZUFBZTtvQkFDekIsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLHFCQUFxQixFQUFFLE1BQU07d0JBQzdCLHVCQUF1QixFQUFFLE1BQU07d0JBQy9CLHNCQUFzQixFQUFFLFNBQVM7d0JBQ2pDLFNBQVMsRUFBRSxJQUFJO3FCQUNoQjtpQkFDRjs4QkFNUSxNQUFNO3NCQURaLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSy9CLElBQUk7c0JBRFYsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlLLFVBQVU7c0JBRHBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgQ1NTTW9kaWZpZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyB1bnBhY2tJY29uSWRlbnRpZmllciB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBpbmplY3RJY29uQ29uZmlnIH0gZnJvbSAnLi9pY29uLmNvbmZpZyc7XG5pbXBvcnQgeyBJY29uU2l6ZSB9IGZyb20gJy4vbW9kZWxzJztcblxuQENTU0NvbXBvbmVudCgnaWNvbicpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtaWNvbicsXG4gIHRlbXBsYXRlOiAnPHNwYW4+PC9zcGFuPicsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5ub3RyYW5zbGF0ZV0nOiAndHJ1ZScsXG4gICAgJ1thdHRyLmRhdGEtaWNvbi1uYW1lXSc6ICduYW1lJyxcbiAgICAnW2F0dHIuZGF0YS1pY29uLXNldF0nOiAnaWNvblNldCcsXG4gICAgdHJhbnNsYXRlOiAnbm8nLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyBpbmxpbmUgPSBmYWxzZTtcblxuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoKVxuICBwdWJsaWMgc2l6ZTogSWNvblNpemUgPSBJY29uU2l6ZS5NRURJVU07XG5cbiAgQElucHV0KClcbiAgcHVibGljIG5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uU2V0OiBzdHJpbmcgfCBudWxsID0gaW5qZWN0SWNvbkNvbmZpZygpLmRlZmF1bHRJY29uU2V0O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaWRlbnRpZmllcih2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IFtpY29uU2V0LCBuYW1lXSA9IHZhbHVlID8gdW5wYWNrSWNvbklkZW50aWZpZXIodmFsdWUpIDogW251bGwsIG51bGxdO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5pY29uU2V0ID0gaWNvblNldDtcbiAgfVxufVxuIl19
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9saWIvaWNvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFFcEM7Ozs7OztHQU1HO0FBZUksV0FBTSxhQUFhLEdBQW5CLE1BQU0sYUFBYTtJQUFuQjtRQUNXLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztRQUUxQzs7V0FFRztRQUdJLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFdEI7OztXQUdHO1FBR0ksU0FBSSxHQUFhLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFFeEM7O1dBRUc7UUFFSSxTQUFJLEdBQWtCLElBQUksQ0FBQztRQUVsQzs7V0FFRztRQUVJLFlBQU8sR0FBa0IsZ0JBQWdCLEVBQUUsQ0FBQyxjQUFjLENBQUM7S0FZbkU7SUFWQzs7O09BR0c7SUFDSCxJQUNXLFVBQVUsQ0FBQyxLQUFnQztRQUNwRCxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7K0dBdkNVLGFBQWE7bUdBQWIsYUFBYSxtRkFPSixnQkFBZ0IsaVFBbEIxQixlQUFlOztBQW1CbEI7SUFGTixXQUFXLEVBQUU7OzZDQUVRO0FBUWY7SUFGTixXQUFXLEVBQUU7OzJDQUUwQjtBQWhCN0IsYUFBYTtJQWR6QixZQUFZLENBQUMsTUFBTSxDQUFDO0dBY1IsYUFBYSxDQXdDekI7NEZBeENZLGFBQWE7a0JBYnpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLFFBQVEsRUFBRSxlQUFlO29CQUN6QixhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0oscUJBQXFCLEVBQUUsTUFBTTt3QkFDN0IsdUJBQXVCLEVBQUUsTUFBTTt3QkFDL0Isc0JBQXNCLEVBQUUsU0FBUzt3QkFDakMsU0FBUyxFQUFFLElBQUk7cUJBQ2hCO2lCQUNGOzhCQVNRLE1BQU07c0JBRFosS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFTL0IsSUFBSTtzQkFEVixLQUFLO2dCQU9DLElBQUk7c0JBRFYsS0FBSztnQkFPQyxPQUFPO3NCQURiLEtBQUs7Z0JBUUssVUFBVTtzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IHVucGFja0ljb25JZGVudGlmaWVyIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IGluamVjdEljb25Db25maWcgfSBmcm9tICcuL2ljb24uY29uZmlnJztcbmltcG9ydCB7IEljb25TaXplIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gaWNvbiBjb21wb25lbnQgdGhhdCBjYW4gZHluYW1pY2FsbHkgZGlzcGxheSB2YXJpb3VzIGljb25zIGJhc2VkIG9uIGlucHV0IHByb3BlcnRpZXMuIFRoaXMgY29tcG9uZW50XG4gKiBsZXZlcmFnZXMgQ1NTIGZvciBzdHlsaW5nIGFuZCBpcyBkZXNpZ25lZCB0byBiZSBlYXNpbHkgZW1iZWRkZWQgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgYW5kIHZpZXdzLlxuICpcbiAqIEl0IGFsbG93cyBmb3Igc3BlY2lmeWluZyBpY29uIHNldHMgYW5kIGluZGl2aWR1YWwgaWNvbiBuYW1lcywgc3VwcG9ydGluZyBmbGV4aWJsZSB1c2FnZSBhY3Jvc3MgZGlmZmVyZW50IGNvbnRleHRzXG4gKiBhbmQgdGhlbWVzLiBUaGUgY29tcG9uZW50IGlzIGFsc28gb3B0aW1pemVkIGZvciBwZXJmb3JtYW5jZSB3aXRoIEFuZ3VsYXIncyBPblB1c2ggY2hhbmdlIGRldGVjdGlvbiBzdHJhdGVneS5cbiAqL1xuQENTU0NvbXBvbmVudCgnaWNvbicpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtaWNvbicsXG4gIHRlbXBsYXRlOiAnPHNwYW4+PC9zcGFuPicsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5ub3RyYW5zbGF0ZV0nOiAndHJ1ZScsXG4gICAgJ1thdHRyLmRhdGEtaWNvbi1uYW1lXSc6ICduYW1lJyxcbiAgICAnW2F0dHIuZGF0YS1pY29uLXNldF0nOiAnaWNvblNldCcsXG4gICAgdHJhbnNsYXRlOiAnbm8nLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgaWNvbiBzaG91bGQgYmUgZGlzcGxheWVkIGlubGluZSB3aXRoIHRleHQgb3Igb3RoZXIgZWxlbWVudHMuXG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIGlubGluZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHNpemUgb2YgdGhlIGljb24sIHdoaWNoIGNhbiBiZSBhZGp1c3RlZCB1c2luZyBwcmVkZWZpbmVkIHNpemVzIGZyb20gdGhlIEljb25TaXplIGVudW0uXG4gICAqIEBzZWUge0ljb25TaXplfVxuICAgKi9cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KClcbiAgcHVibGljIHNpemU6IEljb25TaXplID0gSWNvblNpemUuTUVESVVNO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgaWNvbiB0byBiZSBkaXNwbGF5ZWQsIHdoaWNoIGNvcnJlc3BvbmRzIHRvIHNwZWNpZmljIGljb25zIHdpdGhpbiBhIGdpdmVuIGljb24gc2V0LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGljb24gc2V0IHRoYXQgdGhlIGljb24gYmVsb25ncyB0by4gVGhlIGRlZmF1bHQgc2V0IGNhbiBiZSBpbmplY3RlZCBmcm9tIHRoZSBpY29uIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaWNvblNldDogc3RyaW5nIHwgbnVsbCA9IGluamVjdEljb25Db25maWcoKS5kZWZhdWx0SWNvblNldDtcblxuICAvKipcbiAgICogQWxsb3dzIGZvciBzZXR0aW5nIGJvdGggdGhlIGljb24gc2V0IGFuZCBpY29uIG5hbWUgdmlhIGEgc2luZ2xlIGlkZW50aWZpZXIsIHR5cGljYWxseSBmb3JtYXR0ZWQgYXMgJ3NldDo6bmFtZScuXG4gICAqIFVucGFja2luZyB0aGlzIGlkZW50aWZpZXIgc2V0cyBib3RoIGBuYW1lYCBhbmQgYGljb25TZXRgIHByb3BlcnRpZXMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlkZW50aWZpZXIodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBbaWNvblNldCwgbmFtZV0gPSB2YWx1ZSA/IHVucGFja0ljb25JZGVudGlmaWVyKHZhbHVlKSA6IFtudWxsLCBudWxsXTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMuaWNvblNldCA9IGljb25TZXQ7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,24 @@
1
1
  import { createConfigTokens } from '@odx/angular/utils';
2
+ /**
3
+ * Utility functions generated to handle the injection and provision of the `IconConfig`.
4
+ * These include tokens and functions for accessing and providing icon configurations.
5
+ *
6
+ * - `IconConfig`: A type representing the shape of the icon configuration object.
7
+ * - `IconDefaultConfig`: The default configuration which sets 'core' as the default icon set.
8
+ * - `injectIconConfig`: A function to inject the icon configuration, usable in Angular components or services.
9
+ * - `provideIconConfig`: A function to provide the icon configuration, typically used in Angular module providers.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * // To inject icon configuration in a component or service
14
+ * const config = injectIconConfig();
15
+ * console.log(config.defaultIconSet); // Outputs: 'core'
16
+ *
17
+ * // To provide icon configuration in a module
18
+ * provideIconConfig({ defaultIconSet: 'custom' });
19
+ * ```
20
+ */
2
21
  export const { IconConfig, IconDefaultConfig, injectIconConfig, provideIconConfig } = createConfigTokens('Icon', '@odx/angular/components/icon', {
3
22
  defaultIconSet: 'core',
4
23
  });
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9saWIvaWNvbi5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFNeEQsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsOEJBQThCLEVBQUU7SUFDL0ksY0FBYyxFQUFFLE1BQU07Q0FDVCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDb25maWdUb2tlbnMgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEljb25Db25maWcge1xuICBkZWZhdWx0SWNvblNldDogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgeyBJY29uQ29uZmlnLCBJY29uRGVmYXVsdENvbmZpZywgaW5qZWN0SWNvbkNvbmZpZywgcHJvdmlkZUljb25Db25maWcgfSA9IGNyZWF0ZUNvbmZpZ1Rva2VucygnSWNvbicsICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9pY29uJywge1xuICBkZWZhdWx0SWNvblNldDogJ2NvcmUnLFxufSBhcyBJY29uQ29uZmlnKTtcbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9pY29uL3NyYy9saWIvaWNvbi5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFheEQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLDhCQUE4QixFQUFFO0lBQy9JLGNBQWMsRUFBRSxNQUFNO0NBQ1QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ29uZmlnVG9rZW5zIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGljb25zIGluIHRoZSBhcHBsaWNhdGlvbiwgc3BlY2lmeWluZyBkZWZhdWx0c1xuICogYW5kIGNvbmZpZ3VyYXRpb25zIGZvciB0aGUgaWNvbiBjb21wb25lbnRzIHVzZWQgYWNyb3NzIHRoZSBzeXN0ZW0uXG4gKlxuICogQHR5cGVkZWYge09iamVjdH0gSWNvbkNvbmZpZ1xuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlZmF1bHRJY29uU2V0IC0gVGhlIGRlZmF1bHQgc2V0IG9mIGljb25zIHRvIHVzZSBpZiBubyBzcGVjaWZpYyBzZXQgaXMgcHJvdmlkZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSWNvbkNvbmZpZyB7XG4gIGRlZmF1bHRJY29uU2V0OiBzdHJpbmc7XG59XG5cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbnMgZ2VuZXJhdGVkIHRvIGhhbmRsZSB0aGUgaW5qZWN0aW9uIGFuZCBwcm92aXNpb24gb2YgdGhlIGBJY29uQ29uZmlnYC5cbiAqIFRoZXNlIGluY2x1ZGUgdG9rZW5zIGFuZCBmdW5jdGlvbnMgZm9yIGFjY2Vzc2luZyBhbmQgcHJvdmlkaW5nIGljb24gY29uZmlndXJhdGlvbnMuXG4gKlxuICogLSBgSWNvbkNvbmZpZ2A6IEEgdHlwZSByZXByZXNlbnRpbmcgdGhlIHNoYXBlIG9mIHRoZSBpY29uIGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICogLSBgSWNvbkRlZmF1bHRDb25maWdgOiBUaGUgZGVmYXVsdCBjb25maWd1cmF0aW9uIHdoaWNoIHNldHMgJ2NvcmUnIGFzIHRoZSBkZWZhdWx0IGljb24gc2V0LlxuICogLSBgaW5qZWN0SWNvbkNvbmZpZ2A6IEEgZnVuY3Rpb24gdG8gaW5qZWN0IHRoZSBpY29uIGNvbmZpZ3VyYXRpb24sIHVzYWJsZSBpbiBBbmd1bGFyIGNvbXBvbmVudHMgb3Igc2VydmljZXMuXG4gKiAtIGBwcm92aWRlSWNvbkNvbmZpZ2A6IEEgZnVuY3Rpb24gdG8gcHJvdmlkZSB0aGUgaWNvbiBjb25maWd1cmF0aW9uLCB0eXBpY2FsbHkgdXNlZCBpbiBBbmd1bGFyIG1vZHVsZSBwcm92aWRlcnMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiAvLyBUbyBpbmplY3QgaWNvbiBjb25maWd1cmF0aW9uIGluIGEgY29tcG9uZW50IG9yIHNlcnZpY2VcbiAqIGNvbnN0IGNvbmZpZyA9IGluamVjdEljb25Db25maWcoKTtcbiAqIGNvbnNvbGUubG9nKGNvbmZpZy5kZWZhdWx0SWNvblNldCk7IC8vIE91dHB1dHM6ICdjb3JlJ1xuICpcbiAqIC8vIFRvIHByb3ZpZGUgaWNvbiBjb25maWd1cmF0aW9uIGluIGEgbW9kdWxlXG4gKiBwcm92aWRlSWNvbkNvbmZpZyh7IGRlZmF1bHRJY29uU2V0OiAnY3VzdG9tJyB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgY29uc3QgeyBJY29uQ29uZmlnLCBJY29uRGVmYXVsdENvbmZpZywgaW5qZWN0SWNvbkNvbmZpZywgcHJvdmlkZUljb25Db25maWcgfSA9IGNyZWF0ZUNvbmZpZ1Rva2VucygnSWNvbicsICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9pY29uJywge1xuICBkZWZhdWx0SWNvblNldDogJ2NvcmUnLFxufSBhcyBJY29uQ29uZmlnKTtcbiJdfQ==