@odx/angular 5.7.4 → 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 (658) hide show
  1. package/CHANGELOG.md +17 -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 +41 -93
  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 -9
  63. package/components/calendar/lib/directives/calendar-view.directive.d.ts +41 -9
  64. package/components/calendar/lib/pipes/date-label.pipe.d.ts +12 -21
  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 +2 -2
  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 -12
  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 +9 -3
  262. package/esm2022/components/calendar/lib/components/calendar-year/calendar-year.component.mjs +9 -3
  263. package/esm2022/components/calendar/lib/components/calendar-years/calendar-years.component.mjs +9 -3
  264. package/esm2022/components/calendar/lib/daterange.service.mjs +17 -1
  265. package/esm2022/components/calendar/lib/directives/calendar-cell.directive.mjs +27 -2
  266. package/esm2022/components/calendar/lib/directives/calendar-view.directive.mjs +39 -1
  267. package/esm2022/components/calendar/lib/pipes/date-label.pipe.mjs +27 -9
  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 +11 -8
  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/lib/helpers/fast-equals.mjs +3 -0
  409. package/esm2022/internal/lib/helpers/index.mjs +2 -1
  410. package/esm2022/internal/translate/lib/translate.config.mjs +32 -1
  411. package/esm2022/internal/translate/lib/translate.service.mjs +30 -1
  412. package/esm2022/lib/controllers/controller.mjs +26 -1
  413. package/esm2022/lib/controllers/disabled.controller.mjs +60 -1
  414. package/esm2022/lib/controllers/readonly.controller.mjs +57 -1
  415. package/esm2022/lib/directives/click-outside.directive.mjs +30 -1
  416. package/esm2022/lib/directives/delegate-focus.directive.mjs +15 -1
  417. package/esm2022/lib/services/window-ref.mjs +67 -1
  418. package/esm2022/lib/tokens/identity-matcher.mjs +25 -1
  419. package/esm2022/lib/tokens/string-search-handler.mjs +25 -1
  420. package/esm2022/lib/tokens/stringify.mjs +26 -1
  421. package/esm2022/localization/lib/features/with-http-language-header.mjs +54 -1
  422. package/esm2022/localization/lib/features/with-http-language-query-param.mjs +52 -1
  423. package/esm2022/localization/lib/loaders/browser-language-loader.mjs +33 -1
  424. package/esm2022/localization/lib/localization.config.mjs +73 -5
  425. package/esm2022/localization/lib/localization.logger.mjs +3 -0
  426. package/esm2022/localization/lib/localization.service.mjs +59 -29
  427. package/esm2022/rxjs/index.mjs +2 -2
  428. package/esm2022/rxjs/lib/delay-until.mjs +23 -1
  429. package/esm2022/rxjs/lib/from-element-mutation.mjs +22 -1
  430. package/esm2022/rxjs/lib/from-element-resize.mjs +25 -1
  431. package/esm2022/rxjs/lib/from-events.mjs +25 -1
  432. package/esm2022/rxjs/lib/from-query-list.mjs +24 -0
  433. package/esm2022/sdk/lib/application-environment.mjs +51 -1
  434. package/esm2022/theming/lib/helpers/prefers-dark-theme.mjs +19 -1
  435. package/esm2022/theming/lib/helpers/resolve-theme.mjs +26 -1
  436. package/esm2022/theming/lib/helpers/theme-storage.mjs +43 -1
  437. package/esm2022/theming/lib/theming.config.mjs +34 -1
  438. package/esm2022/theming/lib/theming.service.mjs +32 -1
  439. package/esm2022/utils/lib/decorators/pure.mjs +52 -1
  440. package/esm2022/utils/lib/helpers/angular.mjs +37 -1
  441. package/esm2022/utils/lib/helpers/array.mjs +5 -1
  442. package/esm2022/utils/lib/helpers/build-url.mjs +21 -1
  443. package/esm2022/utils/lib/helpers/build-website-url.mjs +3 -2
  444. package/esm2022/utils/lib/helpers/cache-storage-client.mjs +52 -1
  445. package/esm2022/utils/lib/helpers/coercion.mjs +18 -1
  446. package/esm2022/utils/lib/helpers/debounce.mjs +28 -1
  447. package/esm2022/utils/lib/helpers/defer-fn.mjs +21 -1
  448. package/esm2022/utils/lib/helpers/dom.mjs +71 -1
  449. package/esm2022/utils/lib/helpers/get-axis.mjs +21 -1
  450. package/esm2022/utils/lib/helpers/get-language-code.mjs +18 -1
  451. package/esm2022/utils/lib/helpers/get-opposite-side.mjs +22 -1
  452. package/esm2022/utils/lib/helpers/get-side.mjs +18 -1
  453. package/esm2022/utils/lib/helpers/get-unique-id.mjs +34 -1
  454. package/esm2022/utils/lib/helpers/match-url.mjs +41 -1
  455. package/esm2022/utils/lib/helpers/ng-changes.mjs +30 -1
  456. package/esm2022/utils/lib/helpers/provide-config.mjs +57 -1
  457. package/esm2022/utils/lib/helpers/queue.mjs +84 -1
  458. package/esm2022/utils/lib/helpers/type-guards.mjs +58 -1
  459. package/esm2022/utils/lib/helpers/until-destroyed.mjs +39 -1
  460. package/fesm2022/odx-angular-animations.mjs +173 -0
  461. package/fesm2022/odx-angular-animations.mjs.map +1 -1
  462. package/fesm2022/odx-angular-breakpoints.mjs +136 -0
  463. package/fesm2022/odx-angular-breakpoints.mjs.map +1 -1
  464. package/fesm2022/odx-angular-cdk-a11y.mjs +71 -0
  465. package/fesm2022/odx-angular-cdk-a11y.mjs.map +1 -1
  466. package/fesm2022/odx-angular-cdk-active-indicator.mjs +63 -0
  467. package/fesm2022/odx-angular-cdk-active-indicator.mjs.map +1 -1
  468. package/fesm2022/odx-angular-cdk-autocomplete-control.mjs +38 -0
  469. package/fesm2022/odx-angular-cdk-autocomplete-control.mjs.map +1 -1
  470. package/fesm2022/odx-angular-cdk-checkbox-control.mjs +3 -0
  471. package/fesm2022/odx-angular-cdk-checkbox-control.mjs.map +1 -1
  472. package/fesm2022/odx-angular-cdk-connected-overlay.mjs +103 -0
  473. package/fesm2022/odx-angular-cdk-connected-overlay.mjs.map +1 -1
  474. package/fesm2022/odx-angular-cdk-custom-form-control.mjs +183 -2
  475. package/fesm2022/odx-angular-cdk-custom-form-control.mjs.map +1 -1
  476. package/fesm2022/odx-angular-cdk-dynamic-view.mjs +188 -0
  477. package/fesm2022/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  478. package/fesm2022/odx-angular-cdk-event-plugins.mjs +135 -0
  479. package/fesm2022/odx-angular-cdk-event-plugins.mjs.map +1 -1
  480. package/fesm2022/odx-angular-cdk-expandable.mjs +88 -0
  481. package/fesm2022/odx-angular-cdk-expandable.mjs.map +1 -1
  482. package/fesm2022/odx-angular-cdk-option-control.mjs +47 -0
  483. package/fesm2022/odx-angular-cdk-option-control.mjs.map +1 -1
  484. package/fesm2022/odx-angular-cdk-radio-group-control.mjs +19 -0
  485. package/fesm2022/odx-angular-cdk-radio-group-control.mjs.map +1 -1
  486. package/fesm2022/odx-angular-components-accordion.mjs +41 -0
  487. package/fesm2022/odx-angular-components-accordion.mjs.map +1 -1
  488. package/fesm2022/odx-angular-components-action-group.mjs +6 -0
  489. package/fesm2022/odx-angular-components-action-group.mjs.map +1 -1
  490. package/fesm2022/odx-angular-components-area-header.mjs +14 -0
  491. package/fesm2022/odx-angular-components-area-header.mjs.map +1 -1
  492. package/fesm2022/odx-angular-components-autocomplete.mjs +17 -0
  493. package/fesm2022/odx-angular-components-autocomplete.mjs.map +1 -1
  494. package/fesm2022/odx-angular-components-avatar.mjs +8 -0
  495. package/fesm2022/odx-angular-components-avatar.mjs.map +1 -1
  496. package/fesm2022/odx-angular-components-badge.mjs +25 -0
  497. package/fesm2022/odx-angular-components-badge.mjs.map +1 -1
  498. package/fesm2022/odx-angular-components-bar.mjs +13 -0
  499. package/fesm2022/odx-angular-components-bar.mjs.map +1 -1
  500. package/fesm2022/odx-angular-components-breadcrumbs.mjs +3 -0
  501. package/fesm2022/odx-angular-components-breadcrumbs.mjs.map +1 -1
  502. package/fesm2022/odx-angular-components-button-group.mjs +15 -0
  503. package/fesm2022/odx-angular-components-button-group.mjs.map +1 -1
  504. package/fesm2022/odx-angular-components-button.mjs +10 -0
  505. package/fesm2022/odx-angular-components-button.mjs.map +1 -1
  506. package/fesm2022/odx-angular-components-calendar.mjs +270 -33
  507. package/fesm2022/odx-angular-components-calendar.mjs.map +1 -1
  508. package/fesm2022/odx-angular-components-checkbox.mjs +55 -0
  509. package/fesm2022/odx-angular-components-checkbox.mjs.map +1 -1
  510. package/fesm2022/odx-angular-components-chip.mjs +20 -0
  511. package/fesm2022/odx-angular-components-chip.mjs.map +1 -1
  512. package/fesm2022/odx-angular-components-circular-progress.mjs +20 -0
  513. package/fesm2022/odx-angular-components-circular-progress.mjs.map +1 -1
  514. package/fesm2022/odx-angular-components-content-box.mjs +9 -0
  515. package/fesm2022/odx-angular-components-content-box.mjs.map +1 -1
  516. package/fesm2022/odx-angular-components-datepicker.mjs +84 -0
  517. package/fesm2022/odx-angular-components-datepicker.mjs.map +1 -1
  518. package/fesm2022/odx-angular-components-daterangepicker.mjs +145 -0
  519. package/fesm2022/odx-angular-components-daterangepicker.mjs.map +1 -1
  520. package/fesm2022/odx-angular-components-dropdown.mjs +66 -0
  521. package/fesm2022/odx-angular-components-dropdown.mjs.map +1 -1
  522. package/fesm2022/odx-angular-components-error-page.mjs +15 -0
  523. package/fesm2022/odx-angular-components-error-page.mjs.map +1 -1
  524. package/fesm2022/odx-angular-components-footer.mjs +11 -6
  525. package/fesm2022/odx-angular-components-footer.mjs.map +1 -1
  526. package/fesm2022/odx-angular-components-form-field.mjs +131 -0
  527. package/fesm2022/odx-angular-components-form-field.mjs.map +1 -1
  528. package/fesm2022/odx-angular-components-header-navigation.mjs +6 -0
  529. package/fesm2022/odx-angular-components-header-navigation.mjs.map +1 -1
  530. package/fesm2022/odx-angular-components-header.mjs +10 -0
  531. package/fesm2022/odx-angular-components-header.mjs.map +1 -1
  532. package/fesm2022/odx-angular-components-icon.mjs +57 -0
  533. package/fesm2022/odx-angular-components-icon.mjs.map +1 -1
  534. package/fesm2022/odx-angular-components-inline-message.mjs +13 -0
  535. package/fesm2022/odx-angular-components-inline-message.mjs.map +1 -1
  536. package/fesm2022/odx-angular-components-link.mjs +3 -0
  537. package/fesm2022/odx-angular-components-link.mjs.map +1 -1
  538. package/fesm2022/odx-angular-components-list.mjs +28 -1
  539. package/fesm2022/odx-angular-components-list.mjs.map +1 -1
  540. package/fesm2022/odx-angular-components-loading-spinner.mjs +30 -0
  541. package/fesm2022/odx-angular-components-loading-spinner.mjs.map +1 -1
  542. package/fesm2022/odx-angular-components-logo.mjs +15 -0
  543. package/fesm2022/odx-angular-components-logo.mjs.map +1 -1
  544. package/fesm2022/odx-angular-components-main-menu.mjs +119 -0
  545. package/fesm2022/odx-angular-components-main-menu.mjs.map +1 -1
  546. package/fesm2022/odx-angular-components-mainfilter-group.mjs +4 -0
  547. package/fesm2022/odx-angular-components-mainfilter-group.mjs.map +1 -1
  548. package/fesm2022/odx-angular-components-menu.mjs +36 -0
  549. package/fesm2022/odx-angular-components-menu.mjs.map +1 -1
  550. package/fesm2022/odx-angular-components-modal.mjs +252 -0
  551. package/fesm2022/odx-angular-components-modal.mjs.map +1 -1
  552. package/fesm2022/odx-angular-components-navigation-back.mjs +3 -0
  553. package/fesm2022/odx-angular-components-navigation-back.mjs.map +1 -1
  554. package/fesm2022/odx-angular-components-notification.mjs +148 -6
  555. package/fesm2022/odx-angular-components-notification.mjs.map +1 -1
  556. package/fesm2022/odx-angular-components-paginator.mjs +117 -0
  557. package/fesm2022/odx-angular-components-paginator.mjs.map +1 -1
  558. package/fesm2022/odx-angular-components-progress.mjs +15 -0
  559. package/fesm2022/odx-angular-components-progress.mjs.map +1 -1
  560. package/fesm2022/odx-angular-components-radio-group.mjs +11 -0
  561. package/fesm2022/odx-angular-components-radio-group.mjs.map +1 -1
  562. package/fesm2022/odx-angular-components-rail-navigation.mjs +42 -0
  563. package/fesm2022/odx-angular-components-rail-navigation.mjs.map +1 -1
  564. package/fesm2022/odx-angular-components-rich-list.mjs +26 -3
  565. package/fesm2022/odx-angular-components-rich-list.mjs.map +1 -1
  566. package/fesm2022/odx-angular-components-select.mjs +122 -7
  567. package/fesm2022/odx-angular-components-select.mjs.map +1 -1
  568. package/fesm2022/odx-angular-components-slider.mjs +19 -0
  569. package/fesm2022/odx-angular-components-slider.mjs.map +1 -1
  570. package/fesm2022/odx-angular-components-spinbox.mjs +16 -0
  571. package/fesm2022/odx-angular-components-spinbox.mjs.map +1 -1
  572. package/fesm2022/odx-angular-components-switch.mjs +22 -0
  573. package/fesm2022/odx-angular-components-switch.mjs.map +1 -1
  574. package/fesm2022/odx-angular-components-tab-bar.mjs +97 -0
  575. package/fesm2022/odx-angular-components-tab-bar.mjs.map +1 -1
  576. package/fesm2022/odx-angular-components-table.mjs +84 -1
  577. package/fesm2022/odx-angular-components-table.mjs.map +1 -1
  578. package/fesm2022/odx-angular-components-timepicker.mjs +20 -9
  579. package/fesm2022/odx-angular-components-timepicker.mjs.map +1 -1
  580. package/fesm2022/odx-angular-components-toast.mjs +61 -0
  581. package/fesm2022/odx-angular-components-toast.mjs.map +1 -1
  582. package/fesm2022/odx-angular-components-toggle-button-group.mjs +23 -0
  583. package/fesm2022/odx-angular-components-toggle-button-group.mjs.map +1 -1
  584. package/fesm2022/odx-angular-components-tooltip.mjs +52 -0
  585. package/fesm2022/odx-angular-components-tooltip.mjs.map +1 -1
  586. package/fesm2022/odx-angular-components-wizard.mjs +54 -0
  587. package/fesm2022/odx-angular-components-wizard.mjs.map +1 -1
  588. package/fesm2022/odx-angular-internal-translate.mjs +60 -0
  589. package/fesm2022/odx-angular-internal-translate.mjs.map +1 -1
  590. package/fesm2022/odx-angular-internal.mjs +4 -1
  591. package/fesm2022/odx-angular-internal.mjs.map +1 -1
  592. package/fesm2022/odx-angular-localization.mjs +269 -32
  593. package/fesm2022/odx-angular-localization.mjs.map +1 -1
  594. package/fesm2022/odx-angular-rxjs.mjs +115 -5
  595. package/fesm2022/odx-angular-rxjs.mjs.map +1 -1
  596. package/fesm2022/odx-angular-sdk.mjs +50 -0
  597. package/fesm2022/odx-angular-sdk.mjs.map +1 -1
  598. package/fesm2022/odx-angular-theming.mjs +149 -0
  599. package/fesm2022/odx-angular-theming.mjs.map +1 -1
  600. package/fesm2022/odx-angular-utils.mjs +709 -1
  601. package/fesm2022/odx-angular-utils.mjs.map +1 -1
  602. package/fesm2022/odx-angular.mjs +322 -0
  603. package/fesm2022/odx-angular.mjs.map +1 -1
  604. package/internal/lib/helpers/fast-equals.d.ts +1 -0
  605. package/internal/lib/helpers/index.d.ts +1 -0
  606. package/internal/translate/lib/translate.config.d.ts +31 -0
  607. package/internal/translate/lib/translate.service.d.ts +29 -0
  608. package/lib/controllers/controller.d.ts +25 -0
  609. package/lib/controllers/disabled.controller.d.ts +59 -0
  610. package/lib/controllers/readonly.controller.d.ts +56 -0
  611. package/lib/directives/click-outside.directive.d.ts +29 -0
  612. package/lib/directives/delegate-focus.directive.d.ts +14 -0
  613. package/lib/services/window-ref.d.ts +66 -0
  614. package/lib/tokens/identity-matcher.d.ts +41 -0
  615. package/lib/tokens/string-search-handler.d.ts +39 -0
  616. package/lib/tokens/stringify.d.ts +42 -0
  617. package/localization/lib/features/with-http-language-header.d.ts +63 -0
  618. package/localization/lib/features/with-http-language-query-param.d.ts +61 -0
  619. package/localization/lib/loaders/browser-language-loader.d.ts +32 -0
  620. package/localization/lib/localization.config.d.ts +81 -2
  621. package/localization/lib/localization.logger.d.ts +3 -0
  622. package/localization/lib/localization.service.d.ts +42 -7
  623. package/package.json +8 -7
  624. package/rxjs/index.d.ts +1 -1
  625. package/rxjs/lib/delay-until.d.ts +22 -0
  626. package/rxjs/lib/from-element-mutation.d.ts +21 -0
  627. package/rxjs/lib/from-element-resize.d.ts +24 -0
  628. package/rxjs/lib/from-events.d.ts +24 -0
  629. package/rxjs/lib/from-query-list.d.ts +22 -0
  630. package/sdk/lib/application-environment.d.ts +59 -0
  631. package/theming/lib/helpers/prefers-dark-theme.d.ts +18 -0
  632. package/theming/lib/helpers/resolve-theme.d.ts +25 -0
  633. package/theming/lib/helpers/theme-storage.d.ts +42 -0
  634. package/theming/lib/theming.config.d.ts +46 -0
  635. package/theming/lib/theming.service.d.ts +31 -0
  636. package/utils/lib/decorators/pure.d.ts +51 -0
  637. package/utils/lib/helpers/angular.d.ts +36 -0
  638. package/utils/lib/helpers/array.d.ts +4 -0
  639. package/utils/lib/helpers/build-url.d.ts +20 -0
  640. package/utils/lib/helpers/build-website-url.d.ts +2 -1
  641. package/utils/lib/helpers/cache-storage-client.d.ts +51 -0
  642. package/utils/lib/helpers/coercion.d.ts +17 -0
  643. package/utils/lib/helpers/debounce.d.ts +27 -0
  644. package/utils/lib/helpers/defer-fn.d.ts +20 -0
  645. package/utils/lib/helpers/dom.d.ts +70 -0
  646. package/utils/lib/helpers/get-axis.d.ts +20 -0
  647. package/utils/lib/helpers/get-language-code.d.ts +17 -0
  648. package/utils/lib/helpers/get-opposite-side.d.ts +21 -0
  649. package/utils/lib/helpers/get-side.d.ts +17 -0
  650. package/utils/lib/helpers/get-unique-id.d.ts +33 -0
  651. package/utils/lib/helpers/match-url.d.ts +40 -0
  652. package/utils/lib/helpers/ng-changes.d.ts +52 -0
  653. package/utils/lib/helpers/provide-config.d.ts +56 -0
  654. package/utils/lib/helpers/queue.d.ts +83 -0
  655. package/utils/lib/helpers/type-guards.d.ts +57 -0
  656. package/utils/lib/helpers/until-destroyed.d.ts +38 -0
  657. package/esm2022/rxjs/lib/form-query-list.mjs +0 -5
  658. package/rxjs/lib/form-query-list.d.ts +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-list.mjs","sources":["../../../../libs/angular/components/list/src/lib/components/expandable-list-item/expandable-list-item.component.ts","../../../../libs/angular/components/list/src/lib/components/expandable-list-item/expandable-list-item.component.html","../../../../libs/angular/components/list/src/lib/models/list-item-variant.ts","../../../../libs/angular/components/list/src/lib/components/list-item/list-item.component.ts","../../../../libs/angular/components/list/src/lib/components/list-item/list-item.component.html","../../../../libs/angular/components/list/src/lib/list.component.ts","../../../../libs/angular/components/list/src/lib/list.component.html","../../../../libs/angular/components/list/src/lib/list.module.ts","../../../../libs/angular/components/list/src/odx-angular-components-list.ts"],"sourcesContent":["import { transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation, inject } from '@angular/core';\nimport { CoreModule, DisabledController } from '@odx/angular';\nimport { collapse, expand } from '@odx/angular/animations';\nimport { ExpandableItemDirective } from '@odx/angular/cdk/expandable';\nimport { ActionGroupComponent } from '@odx/angular/components/action-group';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n@CSSComponent('expandable-list-item')\n@Component({\n standalone: true,\n selector: 'odx-expandable-list-item',\n templateUrl: 'expandable-list-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CoreModule, ButtonComponent, IconComponent, ActionGroupComponent],\n providers: [DisabledController.connect()],\n hostDirectives: [{ directive: ExpandableItemDirective, inputs: ['expanded', 'id'] }],\n host: {\n '[class.odx-expandable-list-item--expanded]': 'expandableItem.expanded',\n },\n animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])],\n})\nexport class ExpandableListItemComponent {\n protected readonly expandableItem = inject(ExpandableItemDirective);\n public readonly element = injectElement<HTMLElement>();\n}\n","<div class=\"odx-expandable-list-item__header\">\n <ng-content select=\"odx-list-item, [odxListItem]\" />\n <odx-action-group class=\"odx-expandable-list-item__action\">\n <button odxButton (click)=\"expandableItem.toggle()\">\n <odx-icon [class.odx-expandable-list-item__icon--expanded]=\"expandableItem.expanded\" name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n </button>\n </odx-action-group>\n</div>\n<div @expandSlotAnimation class=\"odx-expandable-list-item__slot\" *ngIf=\"expandableItem.expanded\">\n <ng-content select=\"odx-list\" />\n</div>\n","export type ListItemVariant = (typeof ListItemVariant)[keyof typeof ListItemVariant];\n\nexport const ListItemVariant = {\n DEFAULT: 'default',\n DANGER: 'danger',\n WARNING: 'warning',\n} as const;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, inject, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { WithDisabledState, WithTabIndex } from '@odx/angular';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { hasChanged, injectElement, NgChanges } from '@odx/angular/utils';\nimport { ListItemVariant } from '../../models';\n\n@CSSComponent('list-item')\n@Component({\n standalone: true,\n selector: 'odx-list-item, [odxListItem]',\n templateUrl: './list-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [WithDisabledState, WithTabIndex],\n})\nexport class ListItemComponent implements OnChanges {\n private readonly withTabIndex = inject(WithTabIndex, { self: true });\n\n public readonly element = injectElement<HTMLElement>();\n\n /**\n * @deprecated Use `variant` instead\n */\n @CSSModifier()\n @Input({ transform: booleanAttribute })\n public danger = false;\n\n @CSSModifier()\n @Input()\n public variant: ListItemVariant = ListItemVariant.DEFAULT;\n\n @CSSModifier()\n @Input({ transform: booleanAttribute })\n public muted = false;\n\n @HostBinding('class.is-selected')\n @Input({ transform: booleanAttribute })\n public selected = false;\n\n public ngOnChanges(changes: NgChanges<ListItemComponent>): void {\n if (hasChanged(changes, 'muted', false)) {\n this.withTabIndex.setTabindex(this.muted ? -1 : null);\n }\n }\n}\n","<ng-content select=\"[odxListPrefix], [odxListItemPrefix]\" />\n<div class=\"odx-list-item__content\">\n <ng-content />\n</div>\n<ng-content select=\"[odxListSuffix], [odxListItemSuffix]\" />\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { ExpandableContainerDirective } from '@odx/angular/cdk/expandable';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n@CSSComponent('list')\n@Component({\n selector: 'odx-list',\n standalone: true,\n templateUrl: './list.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [{ directive: ExpandableContainerDirective, inputs: ['multiple'] }],\n})\nexport class ListComponent {\n public readonly element = injectElement();\n}\n","<ng-content select=\"odx-list, odx-list-item, [odxListItem], odx-expandable-list-item\" />\n","import { NgModule } from '@angular/core';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { ExpandableListItemComponent, ListItemComponent } from './components';\nimport { ListComponent } from './list.component';\n\nconst modules = [ListComponent, ListItemComponent, ExpandableListItemComponent, IconComponent];\n\n@NgModule({\n imports: modules,\n exports: modules,\n})\nexport class ListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odx-angular-components-list.mjs","sources":["../../../../libs/angular/components/list/src/lib/components/expandable-list-item/expandable-list-item.component.ts","../../../../libs/angular/components/list/src/lib/components/expandable-list-item/expandable-list-item.component.html","../../../../libs/angular/components/list/src/lib/models/list-item-variant.ts","../../../../libs/angular/components/list/src/lib/components/list-item/list-item.component.ts","../../../../libs/angular/components/list/src/lib/components/list-item/list-item.component.html","../../../../libs/angular/components/list/src/lib/list.component.ts","../../../../libs/angular/components/list/src/lib/list.component.html","../../../../libs/angular/components/list/src/lib/list.module.ts","../../../../libs/angular/components/list/src/odx-angular-components-list.ts"],"sourcesContent":["import { transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation, inject } from '@angular/core';\nimport { CoreModule, DisabledController } from '@odx/angular';\nimport { collapse, expand } from '@odx/angular/animations';\nimport { ExpandableItemDirective } from '@odx/angular/cdk/expandable';\nimport { ActionGroupComponent } from '@odx/angular/components/action-group';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n/**\n * Represents a component that serves as an expandable list item within an application.\n * It uses animations for expanding and collapsing content, and it integrates seamlessly\n * with other components such as buttons and icons for interactive elements.\n * @see {ExpandableItemDirective}\n */\n@CSSComponent('expandable-list-item')\n@Component({\n standalone: true,\n selector: 'odx-expandable-list-item',\n templateUrl: 'expandable-list-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CoreModule, ButtonComponent, IconComponent, ActionGroupComponent],\n providers: [DisabledController.connect()],\n hostDirectives: [{ directive: ExpandableItemDirective, inputs: ['expanded', 'id'] }],\n host: {\n '[class.odx-expandable-list-item--expanded]': 'expandableItem.expanded',\n },\n animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])],\n})\nexport class ExpandableListItemComponent {\n protected readonly expandableItem = inject(ExpandableItemDirective);\n public readonly element = injectElement<HTMLElement>();\n}\n","<div class=\"odx-expandable-list-item__header\">\n <ng-content select=\"odx-list-item, [odxListItem]\" />\n <odx-action-group class=\"odx-expandable-list-item__action\">\n <button odxButton (click)=\"expandableItem.toggle()\">\n <odx-icon [class.odx-expandable-list-item__icon--expanded]=\"expandableItem.expanded\" name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n </button>\n </odx-action-group>\n</div>\n<div @expandSlotAnimation class=\"odx-expandable-list-item__slot\" *ngIf=\"expandableItem.expanded\">\n <ng-content select=\"odx-list\" />\n</div>\n","export type ListItemVariant = (typeof ListItemVariant)[keyof typeof ListItemVariant];\n\nexport const ListItemVariant = {\n DEFAULT: 'default',\n DANGER: 'danger',\n WARNING: 'warning',\n} as const;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, inject, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { WithDisabledState, WithTabIndex } from '@odx/angular';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { hasChanged, injectElement, NgChanges } from '@odx/angular/utils';\nimport { ListItemVariant } from '../../models';\n\n/**\n * Represents a stylable list item component that can be easily integrated within Angular applications.\n * It supports various visual variants, disabled and selected states, and can be used both as a standalone or\n * as an element in a larger list or collection of items.\n */\n@CSSComponent('list-item')\n@Component({\n standalone: true,\n selector: 'odx-list-item, [odxListItem]',\n templateUrl: './list-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [WithDisabledState, WithTabIndex],\n})\nexport class ListItemComponent implements OnChanges {\n private readonly withTabIndex = inject(WithTabIndex, { self: true });\n\n public readonly element = injectElement<HTMLElement>();\n\n /**\n * Marks the list item as potentially harmful or attention-needing, affecting its style and appearance.\n * @deprecated Use `variant` instead.\n */\n @CSSModifier()\n @Input({ transform: booleanAttribute })\n public danger = false;\n\n /**\n * Specifies the visual variant of the list item.\n * @see {ListItemVariant}\n */\n @CSSModifier()\n @Input()\n public variant: ListItemVariant = ListItemVariant.DEFAULT;\n\n /**\n * Marks the list item as disabled, preventing user interaction and changing its appearance.\n */\n @CSSModifier()\n @Input({ transform: booleanAttribute })\n public muted = false;\n\n /**\n * Marks the list item as selected, changing its appearance to indicate its state.\n */\n @HostBinding('class.is-selected')\n @Input({ transform: booleanAttribute })\n public selected = false;\n\n public ngOnChanges(changes: NgChanges<ListItemComponent>): void {\n if (hasChanged(changes, 'muted', false)) {\n this.withTabIndex.setTabindex(this.muted ? -1 : null);\n }\n }\n}\n","<ng-content select=\"[odxListPrefix], [odxListItemPrefix]\" />\n<div class=\"odx-list-item__content\">\n <ng-content />\n</div>\n<ng-content select=\"[odxListSuffix], [odxListItemSuffix]\" />\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { ExpandableContainerDirective } from '@odx/angular/cdk/expandable';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n/**\n * Represents a list component that can optionally act as an expandable container. This component can be used\n * to display a list of items where each item might be individually expandable.\n * @see {ExpandableContainerDirective}\n */\n@CSSComponent('list')\n@Component({\n selector: 'odx-list',\n standalone: true,\n templateUrl: './list.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [{ directive: ExpandableContainerDirective, inputs: ['multiple'] }],\n})\nexport class ListComponent {\n public readonly element = injectElement();\n}\n","<ng-content select=\"odx-list, odx-list-item, [odxListItem], odx-expandable-list-item\" />\n","import { NgModule } from '@angular/core';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { ExpandableListItemComponent, ListItemComponent } from './components';\nimport { ListComponent } from './list.component';\n\nconst modules = [ListComponent, ListItemComponent, ExpandableListItemComponent, IconComponent];\n\n@NgModule({\n imports: modules,\n exports: modules,\n})\nexport class ListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -10,6 +10,12 @@ import { injectElement, px, deferFn } from '@odx/angular/utils';
10
10
  import { DynamicViewService } from '@odx/angular/cdk/dynamic-view';
11
11
 
12
12
  const LOADING_SPINNER_PARENT_CLASS = 'odx-loading-spinner-parent';
13
+ /**
14
+ * A directive that controls the display of a loading spinner overlay on the host element.
15
+ * This directive can dynamically create or remove a loading spinner based on the `isLoading` state.
16
+ * It modifies the host element's styles to ensure the spinner is displayed correctly, and optionally,
17
+ * it can set a minimum height to prevent layout shifts.
18
+ */
13
19
  class LoadingSpinnerDirective {
14
20
  constructor() {
15
21
  // private readonly disabledController = DisabledController.inject();
@@ -20,8 +26,16 @@ class LoadingSpinnerDirective {
20
26
  this.injector = inject(Injector);
21
27
  this.windowRef = inject(WindowRef);
22
28
  this.viewRef = null;
29
+ /**
30
+ * Whether the spinner should automatically adjust its color based on the background.
31
+ * Allows the user to specify if the spinner should use automatic color adjustment.
32
+ */
23
33
  this.autoColor = false;
24
34
  }
35
+ /**
36
+ * Controls whether the spinner is visible or not.
37
+ * Manages the loading state, showing or hiding the spinner accordingly.
38
+ */
25
39
  set isLoading(value) {
26
40
  // TODO: Find out if something breaks by removing those lines
27
41
  // if (!this.hasDisabledControllerOnHost) {
@@ -37,10 +51,18 @@ class LoadingSpinnerDirective {
37
51
  get isLoading() {
38
52
  return this.viewRef !== null;
39
53
  }
54
+ /**
55
+ * Sets the minimum height for the host element when the spinner is active, to avoid layout shifts.
56
+ * Specifies the minimum height for the spinner's parent element.
57
+ */
40
58
  set minHeight(value) {
41
59
  this.parentMinHeight = value;
42
60
  this.setParentHeight();
43
61
  }
62
+ /**
63
+ * Resets styles applied to the parent element when the spinner is removed.
64
+ * Removes the class, minHeight, and position styles.
65
+ */
44
66
  resetParentStyles() {
45
67
  this.renderer.removeClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);
46
68
  this.renderer.removeStyle(this.hostElement.nativeElement, 'minHeight');
@@ -91,12 +113,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
91
113
  }] } });
92
114
 
93
115
  const BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';
116
+ /**
117
+ * Represents a loading spinner component.
118
+ */
94
119
  let LoadingSpinnerComponent = class LoadingSpinnerComponent {
95
120
  constructor() {
96
121
  this.host = inject(LoadingSpinnerDirective);
97
122
  this.windowRef = inject(WindowRef);
98
123
  this.backgroundColor = null;
99
124
  this.element = injectElement();
125
+ /**
126
+ * Indicates whether the color of the loading spinner should be automatically determined.
127
+ * If set to true, the color will be based on the theme of the parent container.
128
+ * If set to false, the color will be the default color specified in the component's styles.
129
+ */
100
130
  this.autoColor = false;
101
131
  }
102
132
  ngOnInit() {
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-loading-spinner.mjs","sources":["../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.directive.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.html","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.module.ts","../../../../libs/angular/components/loading-spinner/src/odx-angular-components-loading-spinner.ts"],"sourcesContent":["import { booleanAttribute, Directive, inject, Injector, Input, numberAttribute, Renderer2 } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { DynamicViewRef, DynamicViewService } from '@odx/angular/cdk/dynamic-view';\nimport { deferFn, injectElement, px } from '@odx/angular/utils';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\n\nconst LOADING_SPINNER_PARENT_CLASS = 'odx-loading-spinner-parent';\n\n@Directive({\n standalone: true,\n selector: '[odxLoadingSpinner]',\n // providers: [DisabledController.connect()],\n})\nexport class LoadingSpinnerDirective {\n // private readonly disabledController = DisabledController.inject();\n // private readonly hasDisabledControllerOnHost = !!inject(DisabledController, { optional: true });\n private readonly dynamicViewService = inject(DynamicViewService);\n private readonly hostElement = injectElement();\n private readonly renderer = inject(Renderer2);\n private readonly injector = inject(Injector);\n private readonly windowRef = inject(WindowRef);\n\n private parentMinHeight?: number;\n private viewRef: DynamicViewRef<typeof LoadingSpinnerComponent> | null = null;\n\n @Input({ alias: 'odxLoadingSpinnerAutoColor', transform: booleanAttribute })\n public autoColor = false;\n\n @Input({ alias: 'odxLoadingSpinner', transform: booleanAttribute })\n public set isLoading(value: boolean) {\n // TODO: Find out if something breaks by removing those lines\n // if (!this.hasDisabledControllerOnHost) {\n // this.disabledController?.setDisabledState(value);\n // }\n if (value) {\n this.createSpinner();\n } else {\n this.removeSpinner();\n }\n }\n public get isLoading(): boolean {\n return this.viewRef !== null;\n }\n\n @Input({ alias: 'odxLoadingSpinnerMinHeight', transform: numberAttribute })\n public set minHeight(value: number) {\n this.parentMinHeight = value;\n this.setParentHeight();\n }\n\n public resetParentStyles(): void {\n this.renderer.removeClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);\n this.renderer.removeStyle(this.hostElement.nativeElement, 'minHeight');\n this.renderer.removeStyle(this.hostElement.nativeElement, 'position');\n }\n\n private setParentHeight(): void {\n this.renderer.setStyle(this.hostElement.nativeElement, 'minHeight', this.parentMinHeight ? px(this.parentMinHeight) : 'inherit');\n }\n\n private createSpinner(): void {\n this.renderer.addClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);\n this.setParentHeight();\n if (this.hasStaticPosition()) {\n this.renderer.setStyle(this.hostElement.nativeElement, 'position', 'relative');\n }\n this.viewRef = this.dynamicViewService.createView(LoadingSpinnerComponent, {\n injector: this.injector,\n context: { autoColor: this.autoColor },\n host: this.hostElement.nativeElement,\n });\n deferFn(() => (this.hostElement.nativeElement.scrollTop = 0));\n }\n\n private removeSpinner(): void {\n this.viewRef?.destroy();\n this.viewRef = null;\n }\n\n private hasStaticPosition(): boolean {\n return this.windowRef.nativeWindow.getComputedStyle(this.hostElement.nativeElement).position === 'static';\n }\n}\n","import { AnimationEvent, transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { fadeIn, fadeOut } from '@odx/angular/animations';\nimport { CircularProgressComponent } from '@odx/angular/components/circular-progress';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';\n\n@CSSComponent('loading-spinner')\n@Component({\n standalone: true,\n selector: 'odx-loading-spinner',\n templateUrl: './loading-spinner.component.html',\n imports: [CircularProgressComponent],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[@hostAnimation]': 'true',\n '(@hostAnimation.done)': 'animationFinished($event)',\n },\n animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])],\n})\nexport class LoadingSpinnerComponent implements OnInit {\n private readonly host = inject(LoadingSpinnerDirective);\n private readonly windowRef = inject(WindowRef);\n\n protected backgroundColor: string | null = null;\n\n public readonly element = injectElement();\n\n @CSSModifier()\n @Input()\n public autoColor = false;\n\n public ngOnInit(): void {\n this.backgroundColor = this.resolveBackgroundColor(this.element.nativeElement);\n }\n\n protected animationFinished({ toState }: AnimationEvent): void {\n if (toState === 'void') {\n this.host.resetParentStyles();\n }\n }\n\n private resolveBackgroundColor(element: HTMLElement): string | null {\n const { backgroundColor } = this.windowRef.nativeWindow.getComputedStyle(element);\n if (backgroundColor !== BROWSER_TRANSPARENT_COLOR) {\n return backgroundColor;\n }\n if (element.parentElement) {\n return this.resolveBackgroundColor(element.parentElement);\n }\n return null;\n }\n}\n","<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst modules = [LoadingSpinnerComponent, LoadingSpinnerDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class LoadingSpinnerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odx-angular-components-loading-spinner.mjs","sources":["../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.directive.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.html","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.module.ts","../../../../libs/angular/components/loading-spinner/src/odx-angular-components-loading-spinner.ts"],"sourcesContent":["import { booleanAttribute, Directive, inject, Injector, Input, numberAttribute, Renderer2 } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { DynamicViewRef, DynamicViewService } from '@odx/angular/cdk/dynamic-view';\nimport { deferFn, injectElement, px } from '@odx/angular/utils';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\n\nconst LOADING_SPINNER_PARENT_CLASS = 'odx-loading-spinner-parent';\n\n/**\n * A directive that controls the display of a loading spinner overlay on the host element.\n * This directive can dynamically create or remove a loading spinner based on the `isLoading` state.\n * It modifies the host element's styles to ensure the spinner is displayed correctly, and optionally,\n * it can set a minimum height to prevent layout shifts.\n */\n@Directive({\n standalone: true,\n selector: '[odxLoadingSpinner]',\n // providers: [DisabledController.connect()],\n})\nexport class LoadingSpinnerDirective {\n // private readonly disabledController = DisabledController.inject();\n // private readonly hasDisabledControllerOnHost = !!inject(DisabledController, { optional: true });\n private readonly dynamicViewService = inject(DynamicViewService);\n private readonly hostElement = injectElement();\n private readonly renderer = inject(Renderer2);\n private readonly injector = inject(Injector);\n private readonly windowRef = inject(WindowRef);\n\n private parentMinHeight?: number;\n private viewRef: DynamicViewRef<typeof LoadingSpinnerComponent> | null = null;\n\n /**\n * Whether the spinner should automatically adjust its color based on the background.\n * Allows the user to specify if the spinner should use automatic color adjustment.\n */\n @Input({ alias: 'odxLoadingSpinnerAutoColor', transform: booleanAttribute })\n public autoColor = false;\n\n /**\n * Controls whether the spinner is visible or not.\n * Manages the loading state, showing or hiding the spinner accordingly.\n */\n @Input({ alias: 'odxLoadingSpinner', transform: booleanAttribute })\n public set isLoading(value: boolean) {\n // TODO: Find out if something breaks by removing those lines\n // if (!this.hasDisabledControllerOnHost) {\n // this.disabledController?.setDisabledState(value);\n // }\n if (value) {\n this.createSpinner();\n } else {\n this.removeSpinner();\n }\n }\n public get isLoading(): boolean {\n return this.viewRef !== null;\n }\n\n /**\n * Sets the minimum height for the host element when the spinner is active, to avoid layout shifts.\n * Specifies the minimum height for the spinner's parent element.\n */\n @Input({ alias: 'odxLoadingSpinnerMinHeight', transform: numberAttribute })\n public set minHeight(value: number) {\n this.parentMinHeight = value;\n this.setParentHeight();\n }\n\n /**\n * Resets styles applied to the parent element when the spinner is removed.\n * Removes the class, minHeight, and position styles.\n */\n public resetParentStyles(): void {\n this.renderer.removeClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);\n this.renderer.removeStyle(this.hostElement.nativeElement, 'minHeight');\n this.renderer.removeStyle(this.hostElement.nativeElement, 'position');\n }\n\n private setParentHeight(): void {\n this.renderer.setStyle(this.hostElement.nativeElement, 'minHeight', this.parentMinHeight ? px(this.parentMinHeight) : 'inherit');\n }\n\n private createSpinner(): void {\n this.renderer.addClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);\n this.setParentHeight();\n if (this.hasStaticPosition()) {\n this.renderer.setStyle(this.hostElement.nativeElement, 'position', 'relative');\n }\n this.viewRef = this.dynamicViewService.createView(LoadingSpinnerComponent, {\n injector: this.injector,\n context: { autoColor: this.autoColor },\n host: this.hostElement.nativeElement,\n });\n deferFn(() => (this.hostElement.nativeElement.scrollTop = 0));\n }\n\n private removeSpinner(): void {\n this.viewRef?.destroy();\n this.viewRef = null;\n }\n\n private hasStaticPosition(): boolean {\n return this.windowRef.nativeWindow.getComputedStyle(this.hostElement.nativeElement).position === 'static';\n }\n}\n","import { AnimationEvent, transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, Input, OnInit, ViewEncapsulation, inject } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { fadeIn, fadeOut } from '@odx/angular/animations';\nimport { CircularProgressComponent } from '@odx/angular/components/circular-progress';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';\n\n/**\n * Represents a loading spinner component.\n */\n@CSSComponent('loading-spinner')\n@Component({\n standalone: true,\n selector: 'odx-loading-spinner',\n templateUrl: './loading-spinner.component.html',\n imports: [CircularProgressComponent],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[@hostAnimation]': 'true',\n '(@hostAnimation.done)': 'animationFinished($event)',\n },\n animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])],\n})\nexport class LoadingSpinnerComponent implements OnInit {\n private readonly host = inject(LoadingSpinnerDirective);\n private readonly windowRef = inject(WindowRef);\n\n protected backgroundColor: string | null = null;\n\n public readonly element = injectElement();\n\n /**\n * Indicates whether the color of the loading spinner should be automatically determined.\n * If set to true, the color will be based on the theme of the parent container.\n * If set to false, the color will be the default color specified in the component's styles.\n */\n @CSSModifier()\n @Input()\n public autoColor = false;\n\n public ngOnInit(): void {\n this.backgroundColor = this.resolveBackgroundColor(this.element.nativeElement);\n }\n\n protected animationFinished({ toState }: AnimationEvent): void {\n if (toState === 'void') {\n this.host.resetParentStyles();\n }\n }\n\n private resolveBackgroundColor(element: HTMLElement): string | null {\n const { backgroundColor } = this.windowRef.nativeWindow.getComputedStyle(element);\n if (backgroundColor !== BROWSER_TRANSPARENT_COLOR) {\n return backgroundColor;\n }\n if (element.parentElement) {\n return this.resolveBackgroundColor(element.parentElement);\n }\n return null;\n }\n}\n","<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst modules = [LoadingSpinnerComponent, LoadingSpinnerDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class LoadingSpinnerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -15,10 +15,25 @@ const LogoVariant = {
15
15
  INVERSE: 'inverse',
16
16
  };
17
17
 
18
+ /**
19
+ * A directive that handles the presentation of a logo with configurable size and variant.
20
+ */
18
21
  let LogoDirective = class LogoDirective {
19
22
  constructor() {
20
23
  this.element = injectElement();
24
+ /**
25
+ * The size of the logo.
26
+ *
27
+ * @type {LogoSize}
28
+ * @default LogoSize.SMALL
29
+ */
21
30
  this.size = LogoSize.SMALL;
31
+ /**
32
+ * The variant of the logo.
33
+ *
34
+ * @type {LogoVariant}
35
+ * @default LogoVariant.DEFAULT
36
+ */
22
37
  this.variant = LogoVariant.DEFAULT;
23
38
  }
24
39
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LogoDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-logo.mjs","sources":["../../../../libs/angular/components/logo/src/models/logo-size.ts","../../../../libs/angular/components/logo/src/models/logo-variant.ts","../../../../libs/angular/components/logo/src/logo.directive.ts","../../../../libs/angular/components/logo/src/odx-angular-components-logo.ts"],"sourcesContent":["export type LogoSize = typeof LogoSize[keyof typeof LogoSize];\n\nexport const LogoSize = {\n SMALL: 'small',\n MEDIUM: 'medium',\n LARGE: 'large',\n} as const;\n","export type LogoVariant = typeof LogoVariant[keyof typeof LogoVariant];\n\nexport const LogoVariant = {\n DEFAULT: 'default',\n INVERSE: 'inverse',\n} as const;\n","import { Directive, Input } from '@angular/core';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LogoSize, LogoVariant } from './models';\n\n@CSSComponent('logo')\n@Directive({\n selector: 'odx-logo',\n standalone: true,\n host: {\n '[class.notranslate]': 'true',\n '[attr.aria-label]': '\"Dräger logo\"',\n '[attr.aria-roledescription]': '\"logo\"',\n translate: 'no',\n role: 'img',\n },\n})\nexport class LogoDirective {\n public readonly element = injectElement();\n\n @CSSModifier()\n @Input()\n public size: LogoSize = LogoSize.SMALL;\n\n @CSSModifier()\n @Input()\n public variant: LogoVariant = LogoVariant.DEFAULT;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAEa,MAAA,QAAQ,GAAG;AACtB,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,KAAK,EAAE,OAAO;;;ACHH,MAAA,WAAW,GAAG;AACzB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,OAAO,EAAE,SAAS;;;ACaP,IAAA,aAAa,GAAnB,MAAM,aAAa,CAAA;AAAnB,IAAA,WAAA,GAAA;QACW,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;AAInC,QAAA,IAAA,CAAA,IAAI,GAAa,QAAQ,CAAC,KAAK,CAAC;AAIhC,QAAA,IAAA,CAAA,OAAO,GAAgB,WAAW,CAAC,OAAO,CAAC;AACnD,KAAA;+GAVY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,2BAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;AAKjB,UAAA,CAAA;AAFN,IAAA,WAAW,EAAE;;AAEyB,CAAA,EAAA,aAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIhC,UAAA,CAAA;AAFN,IAAA,WAAW,EAAE;;AAEoC,CAAA,EAAA,aAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AATvC,aAAa,GAAA,UAAA,CAAA;IAZzB,YAAY,CAAC,MAAM,CAAC;AAYR,CAAA,EAAA,aAAa,CAUzB,CAAA;4FAVY,aAAa,EAAA,UAAA,EAAA,CAAA;kBAXzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE;AACJ,wBAAA,qBAAqB,EAAE,MAAM;AAC7B,wBAAA,mBAAmB,EAAE,eAAe;AACpC,wBAAA,6BAA6B,EAAE,QAAQ;AACvC,wBAAA,SAAS,EAAE,IAAI;AACf,wBAAA,IAAI,EAAE,KAAK;AACZ,qBAAA;AACF,iBAAA,CAAA;8BAMQ,IAAI,EAAA,CAAA;sBADV,KAAK;gBAKC,OAAO,EAAA,CAAA;sBADb,KAAK;;;ACzBR;;AAEG;;;;"}
1
+ {"version":3,"file":"odx-angular-components-logo.mjs","sources":["../../../../libs/angular/components/logo/src/models/logo-size.ts","../../../../libs/angular/components/logo/src/models/logo-variant.ts","../../../../libs/angular/components/logo/src/logo.directive.ts","../../../../libs/angular/components/logo/src/odx-angular-components-logo.ts"],"sourcesContent":["export type LogoSize = typeof LogoSize[keyof typeof LogoSize];\n\nexport const LogoSize = {\n SMALL: 'small',\n MEDIUM: 'medium',\n LARGE: 'large',\n} as const;\n","export type LogoVariant = typeof LogoVariant[keyof typeof LogoVariant];\n\nexport const LogoVariant = {\n DEFAULT: 'default',\n INVERSE: 'inverse',\n} as const;\n","import { Directive, Input } from '@angular/core';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LogoSize, LogoVariant } from './models';\n\n/**\n * A directive that handles the presentation of a logo with configurable size and variant.\n */\n@CSSComponent('logo')\n@Directive({\n selector: 'odx-logo',\n standalone: true,\n host: {\n '[class.notranslate]': 'true',\n '[attr.aria-label]': '\"Dräger logo\"',\n '[attr.aria-roledescription]': '\"logo\"',\n translate: 'no',\n role: 'img',\n },\n})\nexport class LogoDirective {\n public readonly element = injectElement();\n\n /**\n * The size of the logo.\n *\n * @type {LogoSize}\n * @default LogoSize.SMALL\n */\n @CSSModifier()\n @Input()\n public size: LogoSize = LogoSize.SMALL;\n\n /**\n * The variant of the logo.\n *\n * @type {LogoVariant}\n * @default LogoVariant.DEFAULT\n */\n @CSSModifier()\n @Input()\n public variant: LogoVariant = LogoVariant.DEFAULT;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAEa,MAAA,QAAQ,GAAG;AACtB,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,KAAK,EAAE,OAAO;;;ACHH,MAAA,WAAW,GAAG;AACzB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,OAAO,EAAE,SAAS;;;ACCpB;;AAEG;AAaU,IAAA,aAAa,GAAnB,MAAM,aAAa,CAAA;AAAnB,IAAA,WAAA,GAAA;QACW,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;AAE1C;;;;;AAKG;AAGI,QAAA,IAAA,CAAA,IAAI,GAAa,QAAQ,CAAC,KAAK,CAAC;AAEvC;;;;;AAKG;AAGI,QAAA,IAAA,CAAA,OAAO,GAAgB,WAAW,CAAC,OAAO,CAAC;AACnD,KAAA;+GAtBY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,2BAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;AAWjB,UAAA,CAAA;AAFN,IAAA,WAAW,EAAE;;AAEyB,CAAA,EAAA,aAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAUhC,UAAA,CAAA;AAFN,IAAA,WAAW,EAAE;;AAEoC,CAAA,EAAA,aAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AArBvC,aAAa,GAAA,UAAA,CAAA;IAZzB,YAAY,CAAC,MAAM,CAAC;AAYR,CAAA,EAAA,aAAa,CAsBzB,CAAA;4FAtBY,aAAa,EAAA,UAAA,EAAA,CAAA;kBAXzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE;AACJ,wBAAA,qBAAqB,EAAE,MAAM;AAC7B,wBAAA,mBAAmB,EAAE,eAAe;AACpC,wBAAA,6BAA6B,EAAE,QAAQ;AACvC,wBAAA,SAAS,EAAE,IAAI;AACf,wBAAA,IAAI,EAAE,KAAK;AACZ,qBAAA;AACF,iBAAA,CAAA;8BAYQ,IAAI,EAAA,CAAA;sBADV,KAAK;gBAWC,OAAO,EAAA,CAAA;sBADb,KAAK;;;ACxCR;;AAEG;;;;"}
@@ -23,20 +23,48 @@ import * as i1 from '@angular/common';
23
23
  import * as i3 from '@angular/cdk/a11y';
24
24
  import { RouterLinkActive } from '@angular/router';
25
25
 
26
+ /**
27
+ * Provides control over the state of the main menu, allowing components to open, close, or toggle its visibility.
28
+ * This service uses a BehaviorSubject to manage the open state and exposes an observable that emits the current state.
29
+ */
26
30
  class MainMenuService {
27
31
  constructor() {
28
32
  this.isOpen$$ = new BehaviorSubject(false);
33
+ /**
34
+ * An Observable that emits the current state of the menu's visibility.
35
+ * It uses distinctUntilChanged to prevent unnecessary emissions when the state hasn't actually changed.
36
+ * shareReplay is configured to cache the last value for any late subscribers.
37
+ *
38
+ * @emits {boolean} The current visibility state of the main menu.
39
+ */
29
40
  this.isOpen$ = this.isOpen$$.pipe(distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));
30
41
  }
42
+ /**
43
+ * Returns the current visibility state of the main menu.
44
+ *
45
+ * @returns {boolean} True if the menu is open, false otherwise.
46
+ */
31
47
  isOpen() {
32
48
  return this.isOpen$$.getValue();
33
49
  }
50
+ /**
51
+ * Opens the main menu by setting its state to true.
52
+ */
34
53
  open() {
35
54
  this.toggle(true);
36
55
  }
56
+ /**
57
+ * Closes the main menu by setting its state to false.
58
+ */
37
59
  close() {
38
60
  this.toggle(false);
39
61
  }
62
+ /**
63
+ * Toggles the visibility state of the main menu.
64
+ *
65
+ * @param {boolean | undefined} forceState - If provided, the menu will be set to this specific state. If not provided,
66
+ * the menu will toggle to the opposite of its current state.
67
+ */
40
68
  toggle(forceState) {
41
69
  this.isOpen$$.next(forceState ?? !this.isOpen());
42
70
  }
@@ -48,6 +76,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
48
76
  args: [{ providedIn: 'root' }]
49
77
  }] });
50
78
 
79
+ /**
80
+ * Represents a directive for a main menu button.
81
+ * This directive is used to toggle the main menu.
82
+ */
51
83
  let MainMenuButtonDirective = class MainMenuButtonDirective {
52
84
  constructor() {
53
85
  this.mainMenuService = inject(MainMenuService);
@@ -73,11 +105,43 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
73
105
  args: ['click']
74
106
  }] } });
75
107
 
108
+ /**
109
+ * Tokens generated to provide and inject `MainMenuLinksConfig`. These tokens are used to configure and access main menu links throughout the application.
110
+ *
111
+ * @exports
112
+ * - `MainMenuLinksConfig` - Token for injecting the config.
113
+ * - `MainMenuLinksDefaultConfig` - Default configuration for main menu links.
114
+ * - `injectMainMenuLinksConfig` - Function to inject the config wherever needed.
115
+ * - `provideMainMenuLinksConfig` - Provider function to configure and provide the config in Angular's DI system.
116
+ *
117
+ * @example
118
+ * ```ts
119
+ * // Providing main menu links in an Angular module
120
+ * @NgModule({
121
+ * providers: [
122
+ * provideMainMenuLinksConfig({
123
+ * legalNoticeUrl: 'https://example.com/legalnotice',
124
+ * providerIdentificationUrl: 'https://example.com/provideridentification',
125
+ * }),
126
+ * ],
127
+ * })
128
+ * export class AppModule { }
129
+ *
130
+ * // Injecting and using the main menu links configuration in a component
131
+ * @Component({ ... })
132
+ * export class MyComponent {
133
+ * constructor(@Inject(MainMenuLinksConfig) private config: MainMenuLinksConfig) {
134
+ * console.log('Legal Notice URL:', config.legalNoticeUrl);
135
+ * }
136
+ * }
137
+ * ```
138
+ */
76
139
  const { MainMenuLinksConfig, MainMenuLinksDefaultConfig, injectMainMenuLinksConfig, provideMainMenuLinksConfig } = createConfigTokens('MainMenuLinks', '@odx/angular/components/main-menu', {
77
140
  providerIdentificationUrl: buildWebsiteUrl('provideridentification'),
78
141
  legalNoticeUrl: buildWebsiteUrl('legalnotice'),
79
142
  });
80
143
 
144
+ /** @internal */
81
145
  function createMainMenuLinks$() {
82
146
  const { legalNoticeUrl, providerIdentificationUrl, dataProtectionUrl, openSourceUrl, termsAndConditionsUrl, statusUrl, dynamicLinks } = injectMainMenuLinksConfig();
83
147
  const dynamicLinks$ = dynamicLinks ?? of([]);
@@ -111,22 +175,58 @@ var mainMenuTranslations = {
111
175
  },
112
176
  };
113
177
 
178
+ /**
179
+ * The `MainMenuComponent` provides a comprehensive user interface component for displaying a navigation menu within an application.
180
+ * It supports dynamic content for titles, subtitles, and copyright text, and can dynamically render additional links.
181
+ * The menu includes animations for opening and closing states, and can be controlled programmatically or via user interaction.
182
+ */
114
183
  let MainMenuComponent = class MainMenuComponent {
115
184
  constructor() {
116
185
  this.mainMenuService = inject(MainMenuService);
117
186
  this.mainMenuLinks$ = createMainMenuLinks$();
118
187
  this.trackByIndex = trackByIndex;
119
188
  this.element = injectElement();
189
+ /**
190
+ * Optional input property for the subtitle of the menu.
191
+ *
192
+ * @type {DynamicTextContent | null}
193
+ * @default null
194
+ */
120
195
  this.subtitle = null;
196
+ /**
197
+ * Optional input property for the copyright text of the menu.
198
+ *
199
+ * @type {DynamicTextContent | null}
200
+ * @default null
201
+ */
121
202
  this.copyright = null;
203
+ /**
204
+ * Outputs the observable that tracks the open state of the menu.
205
+ *
206
+ * @emits {boolean} The open state of the menu.
207
+ */
122
208
  this.menuOpen = this.mainMenuService.isOpen$;
123
209
  }
210
+ /**
211
+ * Input property to control the open state of the menu. Uses boolean transformation to handle true/false states.
212
+ * Changing this property will toggle the menu's open state via the MainMenuService.
213
+ *
214
+ * @param {boolean} value - The open state of the menu.
215
+ */
124
216
  set isOpen(value) {
125
217
  this.mainMenuService.toggle(value);
126
218
  }
219
+ /**
220
+ * Returns the current open state of the menu from the MainMenuService.
221
+ *
222
+ * @returns {boolean} `true` if the menu is open, `false` otherwise.
223
+ */
127
224
  get isOpen() {
128
225
  return this.mainMenuService.isOpen();
129
226
  }
227
+ /**
228
+ * Closes the menu.
229
+ */
130
230
  close() {
131
231
  this.mainMenuService.close();
132
232
  }
@@ -164,6 +264,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
164
264
  args: ['window:keyup.esc']
165
265
  }] } });
166
266
 
267
+ /**
268
+ * Represents a directive for closing the main menu.
269
+ */
167
270
  class MainMenuCloseDirective {
168
271
  constructor() {
169
272
  this.mainMenu = inject(MainMenuComponent, { optional: true });
@@ -185,10 +288,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
185
288
  args: ['click']
186
289
  }] } });
187
290
 
291
+ /**
292
+ * Represents a directive for a main menu item.
293
+ * This directive is used to define a main menu item.
294
+ * Has host directives for disabled state, tabindex, and closing the main menu.
295
+ *
296
+ * @see {WithDisabledState}
297
+ * @see {WithTabIndex}
298
+ * @see {MainMenuCloseDirective}
299
+ */
188
300
  let MainMenuItemDirective = class MainMenuItemDirective {
189
301
  constructor() {
190
302
  this.routerLinkActive = inject(RouterLinkActive, { optional: true });
191
303
  this.element = injectElement();
304
+ /**
305
+ * Optionally specifies whether the menu item is selected.
306
+ * If not specified, the menu item will not be selected.
307
+ *
308
+ * @type {boolean}
309
+ * @default false
310
+ */
192
311
  this.isSelected = false;
193
312
  }
194
313
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MainMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-main-menu.mjs","sources":["../../../../libs/angular/components/main-menu/src/lib/main-menu.service.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-button.directive.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.config.ts","../../../../libs/angular/components/main-menu/src/lib/helpers/create-main-menu-links.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.i18n.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.html","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-close.directive.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-item.directive.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.module.ts","../../../../libs/angular/components/main-menu/src/odx-angular-components-main-menu.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BehaviorSubject, distinctUntilChanged, shareReplay } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class MainMenuService {\n private readonly isOpen$$ = new BehaviorSubject(false);\n\n public readonly isOpen$ = this.isOpen$$.pipe(distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));\n\n public isOpen(): boolean {\n return this.isOpen$$.getValue();\n }\n\n public open(): void {\n this.toggle(true);\n }\n\n public close(): void {\n this.toggle(false);\n }\n\n public toggle(forceState?: boolean): void {\n this.isOpen$$.next(forceState ?? !this.isOpen());\n }\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuService } from '../main-menu.service';\n\n@CSSComponent('main-menu-button')\n@Directive({\n selector: 'button[odxMainMenuButton]',\n standalone: true,\n})\nexport class MainMenuButtonDirective {\n private readonly mainMenuService = inject(MainMenuService);\n public readonly element = injectElement<HTMLButtonElement>();\n\n @HostListener('click')\n public onClick() {\n this.mainMenuService.toggle();\n }\n}\n","import { buildWebsiteUrl, createConfigTokens } from '@odx/angular/utils';\nimport { Observable } from 'rxjs';\nimport { MainMenuLink } from './models';\n\nexport interface MainMenuLinksConfig {\n dataProtectionUrl?: string | null;\n legalNoticeUrl: string | null;\n providerIdentificationUrl: string | null;\n termsAndConditionsUrl?: string | null;\n openSourceUrl?: string | null;\n statusUrl?: string | null;\n dynamicLinks?: Observable<MainMenuLink[]>;\n}\n\nexport const { MainMenuLinksConfig, MainMenuLinksDefaultConfig, injectMainMenuLinksConfig, provideMainMenuLinksConfig } = createConfigTokens(\n 'MainMenuLinks',\n '@odx/angular/components/main-menu',\n {\n providerIdentificationUrl: buildWebsiteUrl('provideridentification'),\n legalNoticeUrl: buildWebsiteUrl('legalnotice'),\n } as MainMenuLinksConfig,\n);\n","import { Observable, combineLatest, map, of } from 'rxjs';\nimport { injectMainMenuLinksConfig } from '../main-menu.config';\nimport { MainMenuLink } from '../models';\n\nexport function createMainMenuLinks$(): Observable<MainMenuLink[]> {\n const { legalNoticeUrl, providerIdentificationUrl, dataProtectionUrl, openSourceUrl, termsAndConditionsUrl, statusUrl, dynamicLinks } =\n injectMainMenuLinksConfig();\n const dynamicLinks$ = dynamicLinks ?? of([]);\n const links = [\n { name: 'status', url: statusUrl },\n { name: 'termsAndConditions', url: termsAndConditionsUrl },\n { name: 'providerIdentification', url: providerIdentificationUrl },\n { name: 'openSource', url: openSourceUrl },\n { name: 'dataProtection', url: dataProtectionUrl },\n { name: 'legalNotice', url: legalNoticeUrl },\n ];\n\n return combineLatest([dynamicLinks$, of(links)].filter(Boolean)).pipe(map((links) => links.flat().filter((link): link is MainMenuLink => !!link.url)));\n}\n","import { TranslationObject } from '@odx/angular/internal/translate';\n\nexport default {\n en: {\n legalNotice: 'Legal notice',\n providerIdentification: 'Provider identification',\n dataProtection: 'Data protection',\n openSource: 'Open-source licenses',\n termsAndConditions: 'Terms and Conditions',\n status: 'Status',\n },\n de: {\n legalNotice: 'Rechtliche Hinweise',\n providerIdentification: 'Impressum',\n dataProtection: 'Datenschutz',\n openSource: 'Open-Source-Lizenzen',\n termsAndConditions: 'Allgemeine Geschäftsbedingungen',\n status: 'Status',\n },\n} as TranslationObject;\n","import { transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, HostListener, Input, Output, ViewEncapsulation, booleanAttribute, inject } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { fadeIn, fadeOut, slideInLeft, slideOutLeft } from '@odx/angular/animations';\nimport { A11yModule } from '@odx/angular/cdk/a11y';\nimport { DynamicTextContent, DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';\nimport { AreaHeaderModule } from '@odx/angular/components/area-header';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { LinkDirective } from '@odx/angular/components/link';\nimport { LogoDirective } from '@odx/angular/components/logo';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { TranslatePipe, provideTranslations } from '@odx/angular/internal/translate';\nimport { injectElement, trackByIndex } from '@odx/angular/utils';\nimport { createMainMenuLinks$ } from './helpers';\nimport mainMenuTranslations from './main-menu.i18n';\nimport { MainMenuService } from './main-menu.service';\n\n@CSSComponent('main-menu')\n@Component({\n selector: 'odx-main-menu',\n templateUrl: './main-menu.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [A11yModule, CoreModule, AreaHeaderModule, ButtonComponent, IconComponent, LogoDirective, TranslatePipe, LinkDirective, DynamicViewDirective],\n providers: [provideTranslations(mainMenuTranslations)],\n standalone: true,\n host: {\n '[class.is-open]': 'isOpen',\n },\n animations: [\n trigger('menuAnimation', [transition(':enter', [useAnimation(slideInLeft)]), transition(':leave', [useAnimation(slideOutLeft)])]),\n trigger('overlayAnimation', [transition(':enter', [useAnimation(fadeIn())]), transition(':leave', [useAnimation(fadeOut())])]),\n ],\n})\nexport class MainMenuComponent {\n protected readonly mainMenuService = inject(MainMenuService);\n protected readonly mainMenuLinks$ = createMainMenuLinks$();\n protected readonly trackByIndex = trackByIndex;\n public readonly element = injectElement();\n\n @Input({ required: true })\n public title!: DynamicTextContent;\n\n @Input()\n public subtitle?: DynamicTextContent | null = null;\n\n @Input()\n public copyright?: DynamicTextContent | null = null;\n\n @Input({ transform: booleanAttribute })\n public set isOpen(value: boolean) {\n this.mainMenuService.toggle(value);\n }\n\n public get isOpen(): boolean {\n return this.mainMenuService.isOpen();\n }\n\n @Output()\n public menuOpen = this.mainMenuService.isOpen$;\n\n @HostListener('window:keyup.esc')\n public close(): void {\n this.mainMenuService.close();\n }\n}\n","<aside @menuAnimation class=\"odx-main-menu__inner\" cdkTrapFocus cdkTrapFocusAutoCapture *ngIf=\"menuOpen | async\">\n <div class=\"odx-main-menu__actions\">\n <button class=\"odx-main-menu__close\" odxButton disabled=\"false\" (click)=\"close()\">\n <odx-icon name=\"close\" iconSet=\"core\"></odx-icon>\n </button>\n </div>\n <odx-area-header class=\"odx-main-menu__header\" size=\"large\">\n <ng-template [odxDynamicView]=\"title\" />\n <odx-area-header-subtitle *ngIf=\"subtitle\">\n <ng-template [odxDynamicView]=\"subtitle\" />\n </odx-area-header-subtitle>\n </odx-area-header>\n <nav class=\"odx-main-menu__content\">\n <ng-content></ng-content>\n </nav>\n <div class=\"odx-main-menu__info\">\n <ng-content select=\"[odxLink]\"></ng-content>\n <a odxLink [href]=\"link.url\" target=\"_blank\" *ngFor=\"let link of mainMenuLinks$ | async; trackBy: trackByIndex\">\n {{ link.name | odxTranslate | async }}\n </a>\n </div>\n <div class=\"odx-main-menu__footer\">\n <odx-logo variant=\"inverse\"></odx-logo>\n <p class=\"odx-text odx-text--small\" *ngIf=\"copyright\">\n <ng-template [odxDynamicView]=\"copyright\" />\n </p>\n </div>\n</aside>\n<div @overlayAnimation class=\"odx-main-menu__overlay\" (click)=\"close()\" *ngIf=\"menuOpen | async\"></div>\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { MainMenuComponent } from '../main-menu.component';\n\n@Directive({\n standalone: true,\n selector: '[odxMainMenuClose]',\n})\nexport class MainMenuCloseDirective {\n private readonly mainMenu = inject(MainMenuComponent, { optional: true });\n\n @HostListener('click')\n protected onClick(): void {\n this.mainMenu?.close();\n }\n}\n","import { booleanAttribute, Directive, inject, Input } from '@angular/core';\nimport { RouterLinkActive } from '@angular/router';\nimport { WithDisabledState, WithTabIndex } from '@odx/angular';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuCloseDirective } from './main-menu-close.directive';\n\n@CSSComponent('main-menu-item')\n@Directive({\n selector: '[odxMainMenuItem]',\n standalone: true,\n hostDirectives: [WithDisabledState, WithTabIndex, MainMenuCloseDirective],\n host: {\n '[class.is-selected]': 'isSelected || routerLinkActive?.isActive',\n '[attr.role]': '\"button\"',\n },\n})\nexport class MainMenuItemDirective {\n protected readonly routerLinkActive = inject(RouterLinkActive, { optional: true });\n\n public readonly element = injectElement();\n\n @Input({ transform: booleanAttribute })\n public isSelected = false;\n}\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LinkDirective } from '@odx/angular/components/link';\nimport { MainMenuButtonDirective, MainMenuCloseDirective, MainMenuItemDirective } from './directives';\nimport { MainMenuComponent } from './main-menu.component';\n\nconst modules = [LinkDirective, MainMenuComponent, MainMenuItemDirective, MainMenuButtonDirective, MainMenuCloseDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class MainMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1","i2.MainMenuCloseDirective"],"mappings":"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"}
1
+ {"version":3,"file":"odx-angular-components-main-menu.mjs","sources":["../../../../libs/angular/components/main-menu/src/lib/main-menu.service.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-button.directive.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.config.ts","../../../../libs/angular/components/main-menu/src/lib/helpers/create-main-menu-links.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.i18n.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.html","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-close.directive.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-item.directive.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.module.ts","../../../../libs/angular/components/main-menu/src/odx-angular-components-main-menu.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BehaviorSubject, distinctUntilChanged, shareReplay } from 'rxjs';\n\n/**\n * Provides control over the state of the main menu, allowing components to open, close, or toggle its visibility.\n * This service uses a BehaviorSubject to manage the open state and exposes an observable that emits the current state.\n */\n@Injectable({ providedIn: 'root' })\nexport class MainMenuService {\n private readonly isOpen$$ = new BehaviorSubject(false);\n\n /**\n * An Observable that emits the current state of the menu's visibility.\n * It uses distinctUntilChanged to prevent unnecessary emissions when the state hasn't actually changed.\n * shareReplay is configured to cache the last value for any late subscribers.\n *\n * @emits {boolean} The current visibility state of the main menu.\n */\n public readonly isOpen$ = this.isOpen$$.pipe(distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));\n\n /**\n * Returns the current visibility state of the main menu.\n *\n * @returns {boolean} True if the menu is open, false otherwise.\n */\n public isOpen(): boolean {\n return this.isOpen$$.getValue();\n }\n\n /**\n * Opens the main menu by setting its state to true.\n */\n public open(): void {\n this.toggle(true);\n }\n\n /**\n * Closes the main menu by setting its state to false.\n */\n public close(): void {\n this.toggle(false);\n }\n\n /**\n * Toggles the visibility state of the main menu.\n *\n * @param {boolean | undefined} forceState - If provided, the menu will be set to this specific state. If not provided,\n * the menu will toggle to the opposite of its current state.\n */\n public toggle(forceState?: boolean): void {\n this.isOpen$$.next(forceState ?? !this.isOpen());\n }\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuService } from '../main-menu.service';\n\n/**\n * Represents a directive for a main menu button.\n * This directive is used to toggle the main menu.\n */\n@CSSComponent('main-menu-button')\n@Directive({\n selector: 'button[odxMainMenuButton]',\n standalone: true,\n})\nexport class MainMenuButtonDirective {\n private readonly mainMenuService = inject(MainMenuService);\n public readonly element = injectElement<HTMLButtonElement>();\n\n @HostListener('click')\n protected onClick() {\n this.mainMenuService.toggle();\n }\n}\n","import { buildWebsiteUrl, createConfigTokens } from '@odx/angular/utils';\nimport { Observable } from 'rxjs';\nimport { MainMenuLink } from './models';\n\nexport interface MainMenuLinksConfig {\n dataProtectionUrl?: string | null;\n legalNoticeUrl: string | null;\n providerIdentificationUrl: string | null;\n termsAndConditionsUrl?: string | null;\n openSourceUrl?: string | null;\n statusUrl?: string | null;\n dynamicLinks?: Observable<MainMenuLink[]>;\n}\n\n/**\n * Tokens generated to provide and inject `MainMenuLinksConfig`. These tokens are used to configure and access main menu links throughout the application.\n *\n * @exports\n * - `MainMenuLinksConfig` - Token for injecting the config.\n * - `MainMenuLinksDefaultConfig` - Default configuration for main menu links.\n * - `injectMainMenuLinksConfig` - Function to inject the config wherever needed.\n * - `provideMainMenuLinksConfig` - Provider function to configure and provide the config in Angular's DI system.\n *\n * @example\n * ```ts\n * // Providing main menu links in an Angular module\n * @NgModule({\n * providers: [\n * provideMainMenuLinksConfig({\n * legalNoticeUrl: 'https://example.com/legalnotice',\n * providerIdentificationUrl: 'https://example.com/provideridentification',\n * }),\n * ],\n * })\n * export class AppModule { }\n *\n * // Injecting and using the main menu links configuration in a component\n * @Component({ ... })\n * export class MyComponent {\n * constructor(@Inject(MainMenuLinksConfig) private config: MainMenuLinksConfig) {\n * console.log('Legal Notice URL:', config.legalNoticeUrl);\n * }\n * }\n * ```\n */\nexport const { MainMenuLinksConfig, MainMenuLinksDefaultConfig, injectMainMenuLinksConfig, provideMainMenuLinksConfig } = createConfigTokens(\n 'MainMenuLinks',\n '@odx/angular/components/main-menu',\n {\n providerIdentificationUrl: buildWebsiteUrl('provideridentification'),\n legalNoticeUrl: buildWebsiteUrl('legalnotice'),\n } as MainMenuLinksConfig,\n);\n","import { Observable, combineLatest, map, of } from 'rxjs';\nimport { injectMainMenuLinksConfig } from '../main-menu.config';\nimport { MainMenuLink } from '../models';\n\n/** @internal */\nexport function createMainMenuLinks$(): Observable<MainMenuLink[]> {\n const { legalNoticeUrl, providerIdentificationUrl, dataProtectionUrl, openSourceUrl, termsAndConditionsUrl, statusUrl, dynamicLinks } =\n injectMainMenuLinksConfig();\n const dynamicLinks$ = dynamicLinks ?? of([]);\n const links = [\n { name: 'status', url: statusUrl },\n { name: 'termsAndConditions', url: termsAndConditionsUrl },\n { name: 'providerIdentification', url: providerIdentificationUrl },\n { name: 'openSource', url: openSourceUrl },\n { name: 'dataProtection', url: dataProtectionUrl },\n { name: 'legalNotice', url: legalNoticeUrl },\n ];\n\n return combineLatest([dynamicLinks$, of(links)].filter(Boolean)).pipe(map((links) => links.flat().filter((link): link is MainMenuLink => !!link.url)));\n}\n","import { TranslationObject } from '@odx/angular/internal/translate';\n\nexport default {\n en: {\n legalNotice: 'Legal notice',\n providerIdentification: 'Provider identification',\n dataProtection: 'Data protection',\n openSource: 'Open-source licenses',\n termsAndConditions: 'Terms and Conditions',\n status: 'Status',\n },\n de: {\n legalNotice: 'Rechtliche Hinweise',\n providerIdentification: 'Impressum',\n dataProtection: 'Datenschutz',\n openSource: 'Open-Source-Lizenzen',\n termsAndConditions: 'Allgemeine Geschäftsbedingungen',\n status: 'Status',\n },\n} as TranslationObject;\n","import { transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, HostListener, Input, Output, ViewEncapsulation, booleanAttribute, inject } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { fadeIn, fadeOut, slideInLeft, slideOutLeft } from '@odx/angular/animations';\nimport { A11yModule } from '@odx/angular/cdk/a11y';\nimport { DynamicTextContent, DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';\nimport { AreaHeaderModule } from '@odx/angular/components/area-header';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { LinkDirective } from '@odx/angular/components/link';\nimport { LogoDirective } from '@odx/angular/components/logo';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { TranslatePipe, provideTranslations } from '@odx/angular/internal/translate';\nimport { injectElement, trackByIndex } from '@odx/angular/utils';\nimport { createMainMenuLinks$ } from './helpers';\nimport mainMenuTranslations from './main-menu.i18n';\nimport { MainMenuService } from './main-menu.service';\n\n/**\n * The `MainMenuComponent` provides a comprehensive user interface component for displaying a navigation menu within an application.\n * It supports dynamic content for titles, subtitles, and copyright text, and can dynamically render additional links.\n * The menu includes animations for opening and closing states, and can be controlled programmatically or via user interaction.\n */\n@CSSComponent('main-menu')\n@Component({\n selector: 'odx-main-menu',\n templateUrl: './main-menu.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [A11yModule, CoreModule, AreaHeaderModule, ButtonComponent, IconComponent, LogoDirective, TranslatePipe, LinkDirective, DynamicViewDirective],\n providers: [provideTranslations(mainMenuTranslations)],\n standalone: true,\n host: {\n '[class.is-open]': 'isOpen',\n },\n animations: [\n trigger('menuAnimation', [transition(':enter', [useAnimation(slideInLeft)]), transition(':leave', [useAnimation(slideOutLeft)])]),\n trigger('overlayAnimation', [transition(':enter', [useAnimation(fadeIn())]), transition(':leave', [useAnimation(fadeOut())])]),\n ],\n})\nexport class MainMenuComponent {\n protected readonly mainMenuService = inject(MainMenuService);\n protected readonly mainMenuLinks$ = createMainMenuLinks$();\n protected readonly trackByIndex = trackByIndex;\n public readonly element = injectElement();\n\n /**\n * Input property for the title of the menu. The content is dynamic, allowing complex content structures\n * like translations or custom components.\n *\n * @type {DynamicTextContent}\n */\n @Input({ required: true })\n public title!: DynamicTextContent;\n\n /**\n * Optional input property for the subtitle of the menu.\n *\n * @type {DynamicTextContent | null}\n * @default null\n */\n @Input()\n public subtitle?: DynamicTextContent | null = null;\n\n /**\n * Optional input property for the copyright text of the menu.\n *\n * @type {DynamicTextContent | null}\n * @default null\n */\n @Input()\n public copyright?: DynamicTextContent | null = null;\n\n /**\n * Input property to control the open state of the menu. Uses boolean transformation to handle true/false states.\n * Changing this property will toggle the menu's open state via the MainMenuService.\n *\n * @param {boolean} value - The open state of the menu.\n */\n @Input({ transform: booleanAttribute })\n public set isOpen(value: boolean) {\n this.mainMenuService.toggle(value);\n }\n\n /**\n * Returns the current open state of the menu from the MainMenuService.\n *\n * @returns {boolean} `true` if the menu is open, `false` otherwise.\n */\n public get isOpen(): boolean {\n return this.mainMenuService.isOpen();\n }\n\n /**\n * Outputs the observable that tracks the open state of the menu.\n *\n * @emits {boolean} The open state of the menu.\n */\n @Output()\n public menuOpen = this.mainMenuService.isOpen$;\n\n /**\n * Closes the menu.\n */\n @HostListener('window:keyup.esc')\n public close(): void {\n this.mainMenuService.close();\n }\n}\n","<aside @menuAnimation class=\"odx-main-menu__inner\" cdkTrapFocus cdkTrapFocusAutoCapture *ngIf=\"menuOpen | async\">\n <div class=\"odx-main-menu__actions\">\n <button class=\"odx-main-menu__close\" odxButton disabled=\"false\" (click)=\"close()\">\n <odx-icon name=\"close\" iconSet=\"core\"></odx-icon>\n </button>\n </div>\n <odx-area-header class=\"odx-main-menu__header\" size=\"large\">\n <ng-template [odxDynamicView]=\"title\" />\n <odx-area-header-subtitle *ngIf=\"subtitle\">\n <ng-template [odxDynamicView]=\"subtitle\" />\n </odx-area-header-subtitle>\n </odx-area-header>\n <nav class=\"odx-main-menu__content\">\n <ng-content></ng-content>\n </nav>\n <div class=\"odx-main-menu__info\">\n <ng-content select=\"[odxLink]\"></ng-content>\n <a odxLink [href]=\"link.url\" target=\"_blank\" *ngFor=\"let link of mainMenuLinks$ | async; trackBy: trackByIndex\">\n {{ link.name | odxTranslate | async }}\n </a>\n </div>\n <div class=\"odx-main-menu__footer\">\n <odx-logo variant=\"inverse\"></odx-logo>\n <p class=\"odx-text odx-text--small\" *ngIf=\"copyright\">\n <ng-template [odxDynamicView]=\"copyright\" />\n </p>\n </div>\n</aside>\n<div @overlayAnimation class=\"odx-main-menu__overlay\" (click)=\"close()\" *ngIf=\"menuOpen | async\"></div>\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { MainMenuComponent } from '../main-menu.component';\n\n/**\n * Represents a directive for closing the main menu.\n */\n@Directive({\n standalone: true,\n selector: '[odxMainMenuClose]',\n})\nexport class MainMenuCloseDirective {\n private readonly mainMenu = inject(MainMenuComponent, { optional: true });\n\n @HostListener('click')\n protected onClick(): void {\n this.mainMenu?.close();\n }\n}\n","import { booleanAttribute, Directive, inject, Input } from '@angular/core';\nimport { RouterLinkActive } from '@angular/router';\nimport { WithDisabledState, WithTabIndex } from '@odx/angular';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuCloseDirective } from './main-menu-close.directive';\n\n/**\n * Represents a directive for a main menu item.\n * This directive is used to define a main menu item.\n * Has host directives for disabled state, tabindex, and closing the main menu.\n *\n * @see {WithDisabledState}\n * @see {WithTabIndex}\n * @see {MainMenuCloseDirective}\n */\n@CSSComponent('main-menu-item')\n@Directive({\n selector: '[odxMainMenuItem]',\n standalone: true,\n hostDirectives: [WithDisabledState, WithTabIndex, MainMenuCloseDirective],\n host: {\n '[class.is-selected]': 'isSelected || routerLinkActive?.isActive',\n '[attr.role]': '\"button\"',\n },\n})\nexport class MainMenuItemDirective {\n protected readonly routerLinkActive = inject(RouterLinkActive, { optional: true });\n\n public readonly element = injectElement();\n\n /**\n * Optionally specifies whether the menu item is selected.\n * If not specified, the menu item will not be selected.\n *\n * @type {boolean}\n * @default false\n */\n @Input({ transform: booleanAttribute })\n public isSelected = false;\n}\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LinkDirective } from '@odx/angular/components/link';\nimport { MainMenuButtonDirective, MainMenuCloseDirective, MainMenuItemDirective } from './directives';\nimport { MainMenuComponent } from './main-menu.component';\n\nconst modules = [LinkDirective, MainMenuComponent, MainMenuItemDirective, MainMenuButtonDirective, MainMenuCloseDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class MainMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1","i2.MainMenuCloseDirective"],"mappings":"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"}
@@ -4,6 +4,10 @@ import { Component, ChangeDetectionStrategy, ViewEncapsulation } from '@angular/
4
4
  import { CSSComponent } from '@odx/angular/internal';
5
5
  import { injectElement } from '@odx/angular/utils';
6
6
 
7
+ /**
8
+ * Represents the MainfilterGroupComponent class.
9
+ * This component is responsible for styling the main filter group.
10
+ */
7
11
  let MainfilterGroupComponent = class MainfilterGroupComponent {
8
12
  constructor() {
9
13
  this.element = injectElement();
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-mainfilter-group.mjs","sources":["../../../../libs/angular/components/mainfilter-group/src/lib/mainfilter-group.component.ts","../../../../libs/angular/components/mainfilter-group/src/lib/mainfilter-group.component.html","../../../../libs/angular/components/mainfilter-group/src/odx-angular-components-mainfilter-group.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n@CSSComponent('mainfilter-group')\n@Component({\n selector: 'odx-mainfilter-group',\n templateUrl: './mainfilter-group.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MainfilterGroupComponent {\n public readonly element = injectElement();\n}\n","<ng-content></ng-content>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAYa,IAAA,wBAAwB,GAA9B,MAAM,wBAAwB,CAAA;AAA9B,IAAA,WAAA,GAAA;QACW,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;AAC3C,KAAA;+GAFY,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,gFCZrC,6BACA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;ADWa,wBAAwB,GAAA,UAAA,CAAA;IARpC,YAAY,CAAC,kBAAkB,CAAC;AAQpB,CAAA,EAAA,wBAAwB,CAEpC,CAAA;4FAFY,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;+BACE,sBAAsB,EAAA,UAAA,EAEpB,IAAI,EACC,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA;;;AEVvC;;AAEG;;;;"}
1
+ {"version":3,"file":"odx-angular-components-mainfilter-group.mjs","sources":["../../../../libs/angular/components/mainfilter-group/src/lib/mainfilter-group.component.ts","../../../../libs/angular/components/mainfilter-group/src/lib/mainfilter-group.component.html","../../../../libs/angular/components/mainfilter-group/src/odx-angular-components-mainfilter-group.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n/**\n * Represents the MainfilterGroupComponent class.\n * This component is responsible for styling the main filter group.\n */\n@CSSComponent('mainfilter-group')\n@Component({\n selector: 'odx-mainfilter-group',\n templateUrl: './mainfilter-group.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MainfilterGroupComponent {\n public readonly element = injectElement();\n}\n","<ng-content></ng-content>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAIA;;;AAGG;AASU,IAAA,wBAAwB,GAA9B,MAAM,wBAAwB,CAAA;AAA9B,IAAA,WAAA,GAAA;QACW,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;AAC3C,KAAA;+GAFY,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,gFChBrC,6BACA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;ADea,wBAAwB,GAAA,UAAA,CAAA;IARpC,YAAY,CAAC,kBAAkB,CAAC;AAQpB,CAAA,EAAA,wBAAwB,CAEpC,CAAA;4FAFY,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;+BACE,sBAAsB,EAAA,UAAA,EAEpB,IAAI,EACC,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA;;;AEdvC;;AAEG;;;;"}