@odx/angular 1.0.0-rc.5 → 1.0.0-rc.7

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 (358) hide show
  1. package/cdk/connected-overlay/README.md +3 -0
  2. package/cdk/connected-overlay/index.d.ts +3 -0
  3. package/cdk/connected-overlay/lib/connected-overlay.component.d.ts +28 -0
  4. package/cdk/connected-overlay/lib/connected-overlay.service.d.ts +10 -0
  5. package/cdk/connected-overlay/lib/helpers/compute-overlay-position.d.ts +3 -0
  6. package/cdk/connected-overlay/lib/helpers/get-opposite-overlay-side.d.ts +2 -0
  7. package/cdk/connected-overlay/lib/helpers/get-overlay-side.d.ts +2 -0
  8. package/cdk/connected-overlay/lib/helpers/index.d.ts +3 -0
  9. package/cdk/connected-overlay/lib/models/connected-overlay-options.d.ts +23 -0
  10. package/cdk/connected-overlay/lib/models/connected-overlay-ref.d.ts +12 -0
  11. package/cdk/connected-overlay/lib/models/index.d.ts +2 -0
  12. package/cdk/dynamic-view/lib/models/dynamic-view-options.d.ts +1 -1
  13. package/components/circular-progress/lib/circular-progress.component.d.ts +1 -0
  14. package/components/dropdown/README.md +3 -0
  15. package/components/dropdown/index.d.ts +3 -0
  16. package/components/dropdown/lib/dropdown.component.d.ts +11 -0
  17. package/components/dropdown/lib/dropdown.directive.d.ts +32 -0
  18. package/components/dropdown/lib/dropdown.module.d.ts +8 -0
  19. package/components/dropdown/lib/models/dropdown-options.d.ts +3 -0
  20. package/components/dropdown/lib/models/index.d.ts +1 -0
  21. package/components/inline-message/README.md +3 -0
  22. package/components/inline-message/index.d.ts +2 -0
  23. package/components/inline-message/lib/inline-message.component.d.ts +9 -0
  24. package/components/inline-message/lib/models/inline-message-variant.d.ts +7 -0
  25. package/components/loading-spinner/lib/loading-spinner.component.d.ts +2 -2
  26. package/components/loading-spinner/lib/loading-spinner.directive.d.ts +6 -7
  27. package/components/rail-navigation/lib/rail-navigation.component.d.ts +3 -1
  28. package/components/select/README.md +3 -0
  29. package/components/select/index.d.ts +7 -0
  30. package/components/select/lib/abstract/index.d.ts +2 -0
  31. package/components/select/lib/abstract/select-control-option.d.ts +7 -0
  32. package/components/select/lib/abstract/select-control.d.ts +11 -0
  33. package/components/select/lib/components/index.d.ts +1 -0
  34. package/components/select/lib/components/option/option.component.d.ts +22 -0
  35. package/components/select/lib/directives/index.d.ts +1 -0
  36. package/components/select/lib/directives/select-search-field.directive.d.ts +13 -0
  37. package/components/select/lib/pipes/index.d.ts +1 -0
  38. package/components/select/lib/pipes/select-search-filter.pipe.d.ts +13 -0
  39. package/components/select/lib/select.component.d.ts +50 -0
  40. package/components/select/lib/select.module.d.ts +11 -0
  41. package/components/select/lib/select.tokens.d.ts +3 -0
  42. package/components/slider/README.md +3 -0
  43. package/components/slider/index.d.ts +1 -0
  44. package/components/slider/lib/slider.directive.d.ts +13 -0
  45. package/components/spinbox/README.md +3 -0
  46. package/components/spinbox/index.d.ts +1 -0
  47. package/components/spinbox/lib/spinbox.component.d.ts +25 -0
  48. package/components/tooltip/README.md +3 -0
  49. package/components/tooltip/index.d.ts +3 -0
  50. package/components/tooltip/lib/helpers/index.d.ts +1 -0
  51. package/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.d.ts +2 -0
  52. package/components/tooltip/lib/models/index.d.ts +3 -0
  53. package/components/tooltip/lib/models/tooltip-options.d.ts +10 -0
  54. package/components/tooltip/lib/models/tooltip-size.d.ts +7 -0
  55. package/components/tooltip/lib/models/tooltip-trigger.d.ts +1 -0
  56. package/components/tooltip/lib/tooltip.component.d.ts +12 -0
  57. package/components/tooltip/lib/tooltip.directive.d.ts +33 -0
  58. package/esm2020/animations/lib/expand.mjs +4 -4
  59. package/esm2020/cdk/active-indicator/lib/active-indicator.directive.mjs +3 -3
  60. package/esm2020/cdk/checkbox-control/lib/checkbox-control.directive.mjs +3 -3
  61. package/esm2020/cdk/connected-overlay/index.mjs +4 -0
  62. package/esm2020/cdk/connected-overlay/lib/connected-overlay.component.mjs +112 -0
  63. package/esm2020/cdk/connected-overlay/lib/connected-overlay.service.mjs +25 -0
  64. package/esm2020/cdk/connected-overlay/lib/helpers/compute-overlay-position.mjs +57 -0
  65. package/esm2020/cdk/connected-overlay/lib/helpers/get-opposite-overlay-side.mjs +13 -0
  66. package/esm2020/cdk/connected-overlay/lib/helpers/get-overlay-side.mjs +4 -0
  67. package/esm2020/cdk/connected-overlay/lib/helpers/index.mjs +4 -0
  68. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-options.mjs +10 -0
  69. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-ref.mjs +15 -0
  70. package/esm2020/cdk/connected-overlay/lib/models/index.mjs +3 -0
  71. package/esm2020/cdk/connected-overlay/odx-angular-cdk-connected-overlay.mjs +5 -0
  72. package/esm2020/cdk/custom-form-control/lib/control.directive.mjs +3 -3
  73. package/esm2020/cdk/custom-form-control/lib/custom-form-control.mjs +3 -3
  74. package/esm2020/cdk/dynamic-view/lib/dynamic-view.component.mjs +3 -3
  75. package/esm2020/cdk/dynamic-view/lib/dynamic-view.directive.mjs +3 -3
  76. package/esm2020/cdk/dynamic-view/lib/dynamic-view.service.mjs +3 -3
  77. package/esm2020/cdk/dynamic-view/lib/models/dynamic-component-ref.mjs +5 -3
  78. package/esm2020/cdk/dynamic-view/lib/models/dynamic-template-ref.mjs +4 -2
  79. package/esm2020/cdk/dynamic-view/lib/models/dynamic-view-options.mjs +1 -1
  80. package/esm2020/cdk/expandable/lib/directives/expandable-item.directive.mjs +3 -3
  81. package/esm2020/cdk/expandable/lib/directives/extandable-container.directive.mjs +3 -3
  82. package/esm2020/cdk/expandable/lib/expandable.module.mjs +4 -4
  83. package/esm2020/cdk/radio-group-control/lib/radio-control.directive.mjs +3 -3
  84. package/esm2020/cdk/radio-group-control/lib/radio-group-control.directive.mjs +3 -3
  85. package/esm2020/cdk/radio-group-control/lib/radio-group-control.module.mjs +4 -4
  86. package/esm2020/components/accordion/lib/accordion.component.mjs +3 -3
  87. package/esm2020/components/accordion/lib/accordion.module.mjs +4 -4
  88. package/esm2020/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +5 -5
  89. package/esm2020/components/accordion/lib/directives/accordion-item-title.mjs +3 -3
  90. package/esm2020/components/action-group/action-group.component.mjs +3 -3
  91. package/esm2020/components/area-header/area-header.component.mjs +5 -5
  92. package/esm2020/components/area-header/area-header.module.mjs +4 -4
  93. package/esm2020/components/area-header/directives/area-header-content.directive.mjs +3 -3
  94. package/esm2020/components/area-header/directives/area-header-subtitle.directive.mjs +3 -3
  95. package/esm2020/components/avatar/lib/avatar.component.mjs +3 -3
  96. package/esm2020/components/badge/lib/badge.component.mjs +3 -3
  97. package/esm2020/components/badge/lib/badge.directive.mjs +3 -3
  98. package/esm2020/components/button/lib/button.component.mjs +3 -3
  99. package/esm2020/components/button-group/lib/button-group.component.mjs +3 -3
  100. package/esm2020/components/checkbox/lib/checkbox.component.mjs +3 -3
  101. package/esm2020/components/checkbox/lib/checkbox.module.mjs +4 -4
  102. package/esm2020/components/checkbox/lib/checkbox.validator.mjs +3 -3
  103. package/esm2020/components/chip/lib/chip.component.mjs +3 -3
  104. package/esm2020/components/circular-progress/lib/circular-progress.component.mjs +14 -7
  105. package/esm2020/components/content-box/lib/content-box.component.mjs +3 -3
  106. package/esm2020/components/content-box/lib/content-box.module.mjs +4 -4
  107. package/esm2020/components/content-box/lib/directives/content-box-footer-directive.mjs +3 -3
  108. package/esm2020/components/content-box/lib/directives/content-box-header-directive.mjs +3 -3
  109. package/esm2020/components/dropdown/index.mjs +4 -0
  110. package/esm2020/components/dropdown/lib/dropdown.component.mjs +31 -0
  111. package/esm2020/components/dropdown/lib/dropdown.directive.mjs +123 -0
  112. package/esm2020/components/dropdown/lib/dropdown.module.mjs +18 -0
  113. package/esm2020/components/dropdown/lib/models/dropdown-options.mjs +7 -0
  114. package/esm2020/components/dropdown/lib/models/index.mjs +2 -0
  115. package/esm2020/components/dropdown/odx-angular-components-dropdown.mjs +5 -0
  116. package/esm2020/components/form-field/lib/components/form-field-info/form-field-info.component.mjs +3 -3
  117. package/esm2020/components/form-field/lib/components/form-group/form-group.component.mjs +3 -3
  118. package/esm2020/components/form-field/lib/directives/form-field-control.directive.mjs +3 -3
  119. package/esm2020/components/form-field/lib/directives/form-field-error.directive.mjs +3 -3
  120. package/esm2020/components/form-field/lib/directives/form-field-hint.directive.mjs +3 -3
  121. package/esm2020/components/form-field/lib/directives/form-field-label.directive.mjs +3 -3
  122. package/esm2020/components/form-field/lib/directives/form.directive.mjs +3 -3
  123. package/esm2020/components/form-field/lib/form-field.component.mjs +3 -3
  124. package/esm2020/components/form-field/lib/form-field.module.mjs +4 -4
  125. package/esm2020/components/form-field/lib/form-field.service.mjs +3 -3
  126. package/esm2020/components/form-field/lib/services/form-field-error.service.mjs +3 -3
  127. package/esm2020/components/header/lib/directives/header-avatar.directive.mjs +3 -3
  128. package/esm2020/components/header/lib/directives/header-title.directive.mjs +3 -3
  129. package/esm2020/components/header/lib/header.component.mjs +3 -3
  130. package/esm2020/components/header/lib/header.module.mjs +4 -4
  131. package/esm2020/components/icon/lib/icon.component.mjs +3 -3
  132. package/esm2020/components/inline-message/index.mjs +3 -0
  133. package/esm2020/components/inline-message/lib/inline-message.component.mjs +43 -0
  134. package/esm2020/components/inline-message/lib/models/inline-message-variant.mjs +7 -0
  135. package/esm2020/components/inline-message/odx-angular-components-inline-message.mjs +5 -0
  136. package/esm2020/components/link/link.directive.mjs +3 -3
  137. package/esm2020/components/list/lib/components/list-item.component.mjs +5 -5
  138. package/esm2020/components/list/lib/list.component.mjs +3 -3
  139. package/esm2020/components/list/lib/list.module.mjs +4 -4
  140. package/esm2020/components/loading-spinner/lib/loading-spinner.component.mjs +10 -10
  141. package/esm2020/components/loading-spinner/lib/loading-spinner.directive.mjs +30 -26
  142. package/esm2020/components/loading-spinner/lib/loading-spinner.module.mjs +4 -4
  143. package/esm2020/components/logo/logo.directive.mjs +3 -3
  144. package/esm2020/components/main-menu/lib/directives/main-menu-button.directive.mjs +3 -3
  145. package/esm2020/components/main-menu/lib/directives/main-menu-item.directive.mjs +3 -3
  146. package/esm2020/components/main-menu/lib/main-menu.component.mjs +5 -5
  147. package/esm2020/components/main-menu/lib/main-menu.module.mjs +4 -4
  148. package/esm2020/components/main-menu/lib/main-menu.service.mjs +3 -3
  149. package/esm2020/components/modal/lib/components/modal-footer/modal-footer.component.mjs +3 -3
  150. package/esm2020/components/modal/lib/components/modal-header/modal-header.component.mjs +3 -3
  151. package/esm2020/components/modal/lib/directives/modal-close.directive.mjs +3 -3
  152. package/esm2020/components/modal/lib/directives/modal-content.directive.mjs +3 -3
  153. package/esm2020/components/modal/lib/directives/modal-dismiss.directive.mjs +3 -3
  154. package/esm2020/components/modal/lib/modal.component.mjs +3 -3
  155. package/esm2020/components/modal/lib/modal.directive.mjs +3 -3
  156. package/esm2020/components/modal/lib/modal.module.mjs +4 -4
  157. package/esm2020/components/modal/lib/modal.service.mjs +3 -3
  158. package/esm2020/components/modal/lib/services/open-modal-manager.service.mjs +3 -3
  159. package/esm2020/components/progress/lib/progress.component.mjs +3 -3
  160. package/esm2020/components/radio-group/lib/components/radio-button/radio-button.component.mjs +3 -3
  161. package/esm2020/components/radio-group/lib/radio-group.component.mjs +3 -3
  162. package/esm2020/components/radio-group/lib/radio-group.module.mjs +4 -4
  163. package/esm2020/components/rail-navigation/lib/components/rail-navigation-item.component.mjs +3 -3
  164. package/esm2020/components/rail-navigation/lib/rail-navigation.component.mjs +11 -5
  165. package/esm2020/components/rail-navigation/lib/rail-navigation.module.mjs +4 -4
  166. package/esm2020/components/select/index.mjs +8 -0
  167. package/esm2020/components/select/lib/abstract/index.mjs +3 -0
  168. package/esm2020/components/select/lib/abstract/select-control-option.mjs +2 -0
  169. package/esm2020/components/select/lib/abstract/select-control.mjs +2 -0
  170. package/esm2020/components/select/lib/components/index.mjs +2 -0
  171. package/esm2020/components/select/lib/components/option/option.component.mjs +78 -0
  172. package/esm2020/components/select/lib/directives/index.mjs +2 -0
  173. package/esm2020/components/select/lib/directives/select-search-field.directive.mjs +47 -0
  174. package/esm2020/components/select/lib/pipes/index.mjs +2 -0
  175. package/esm2020/components/select/lib/pipes/select-search-filter.pipe.mjs +51 -0
  176. package/esm2020/components/select/lib/select.component.mjs +190 -0
  177. package/esm2020/components/select/lib/select.module.mjs +21 -0
  178. package/esm2020/components/select/lib/select.tokens.mjs +3 -0
  179. package/esm2020/components/select/odx-angular-components-select.mjs +5 -0
  180. package/esm2020/components/slider/index.mjs +2 -0
  181. package/esm2020/components/slider/lib/slider.directive.mjs +45 -0
  182. package/esm2020/components/slider/odx-angular-components-slider.mjs +5 -0
  183. package/esm2020/components/spinbox/index.mjs +2 -0
  184. package/esm2020/components/spinbox/lib/spinbox.component.mjs +91 -0
  185. package/esm2020/components/spinbox/odx-angular-components-spinbox.mjs +5 -0
  186. package/esm2020/components/switch/lib/switch.component.mjs +3 -3
  187. package/esm2020/components/switch/lib/switch.module.mjs +4 -4
  188. package/esm2020/components/switch/lib/switch.validator.mjs +3 -3
  189. package/esm2020/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.mjs +3 -3
  190. package/esm2020/components/toggle-button-group/lib/toggle-button-group.component.mjs +6 -6
  191. package/esm2020/components/toggle-button-group/lib/toggle-button-group.module.mjs +4 -4
  192. package/esm2020/components/tooltip/index.mjs +4 -0
  193. package/esm2020/components/tooltip/lib/helpers/index.mjs +2 -0
  194. package/esm2020/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.mjs +9 -0
  195. package/esm2020/components/tooltip/lib/models/index.mjs +4 -0
  196. package/esm2020/components/tooltip/lib/models/tooltip-options.mjs +10 -0
  197. package/esm2020/components/tooltip/lib/models/tooltip-size.mjs +7 -0
  198. package/esm2020/components/tooltip/lib/models/tooltip-trigger.mjs +2 -0
  199. package/esm2020/components/tooltip/lib/tooltip.component.mjs +39 -0
  200. package/esm2020/components/tooltip/lib/tooltip.directive.mjs +132 -0
  201. package/esm2020/components/tooltip/odx-angular-components-tooltip.mjs +5 -0
  202. package/esm2020/index.mjs +2 -1
  203. package/esm2020/lib/controllers/controller.mjs +3 -3
  204. package/esm2020/lib/controllers/disabled.controller.mjs +3 -3
  205. package/esm2020/lib/controllers/readonly.controller.mjs +3 -3
  206. package/esm2020/lib/core.module.mjs +4 -4
  207. package/esm2020/lib/directives/click-outside.directive.mjs +3 -3
  208. package/esm2020/lib/services/window-ref.mjs +3 -3
  209. package/esm2020/lib/tokens/identity-matcher.mjs +7 -0
  210. package/esm2020/lib/tokens/index.mjs +4 -0
  211. package/esm2020/lib/tokens/string-search-handler.mjs +9 -0
  212. package/esm2020/lib/tokens/stringify.mjs +8 -0
  213. package/esm2020/rxjs/index.mjs +2 -1
  214. package/esm2020/rxjs/lib/delay-until.mjs +5 -0
  215. package/esm2020/utils/lib/decorators/index.mjs +2 -1
  216. package/esm2020/utils/lib/decorators/pure.mjs +37 -0
  217. package/esm2020/utils/lib/helpers/defer-fn.mjs +4 -0
  218. package/esm2020/utils/lib/helpers/event-manager.mjs +30 -0
  219. package/esm2020/utils/lib/helpers/index.mjs +3 -1
  220. package/fesm2015/odx-angular-animations.mjs +3 -3
  221. package/fesm2015/odx-angular-animations.mjs.map +1 -1
  222. package/fesm2015/odx-angular-cdk-active-indicator.mjs +3 -3
  223. package/fesm2015/odx-angular-cdk-checkbox-control.mjs +3 -3
  224. package/fesm2015/odx-angular-cdk-connected-overlay.mjs +234 -0
  225. package/fesm2015/odx-angular-cdk-connected-overlay.mjs.map +1 -0
  226. package/fesm2015/odx-angular-cdk-custom-form-control.mjs +6 -6
  227. package/fesm2015/odx-angular-cdk-dynamic-view.mjs +15 -12
  228. package/fesm2015/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  229. package/fesm2015/odx-angular-cdk-expandable.mjs +10 -10
  230. package/fesm2015/odx-angular-cdk-radio-group-control.mjs +10 -10
  231. package/fesm2015/odx-angular-components-accordion.mjs +14 -14
  232. package/fesm2015/odx-angular-components-accordion.mjs.map +1 -1
  233. package/fesm2015/odx-angular-components-action-group.mjs +3 -3
  234. package/fesm2015/odx-angular-components-area-header.mjs +14 -14
  235. package/fesm2015/odx-angular-components-area-header.mjs.map +1 -1
  236. package/fesm2015/odx-angular-components-avatar.mjs +3 -3
  237. package/fesm2015/odx-angular-components-badge.mjs +6 -6
  238. package/fesm2015/odx-angular-components-button-group.mjs +3 -3
  239. package/fesm2015/odx-angular-components-button.mjs +3 -3
  240. package/fesm2015/odx-angular-components-checkbox.mjs +10 -10
  241. package/fesm2015/odx-angular-components-chip.mjs +3 -3
  242. package/fesm2015/odx-angular-components-circular-progress.mjs +13 -6
  243. package/fesm2015/odx-angular-components-circular-progress.mjs.map +1 -1
  244. package/fesm2015/odx-angular-components-content-box.mjs +13 -13
  245. package/fesm2015/odx-angular-components-dropdown.mjs +168 -0
  246. package/fesm2015/odx-angular-components-dropdown.mjs.map +1 -0
  247. package/fesm2015/odx-angular-components-form-field.mjs +34 -34
  248. package/fesm2015/odx-angular-components-header.mjs +13 -13
  249. package/fesm2015/odx-angular-components-icon.mjs +3 -3
  250. package/fesm2015/odx-angular-components-inline-message.mjs +55 -0
  251. package/fesm2015/odx-angular-components-inline-message.mjs.map +1 -0
  252. package/fesm2015/odx-angular-components-link.mjs +3 -3
  253. package/fesm2015/odx-angular-components-list.mjs +11 -11
  254. package/fesm2015/odx-angular-components-list.mjs.map +1 -1
  255. package/fesm2015/odx-angular-components-loading-spinner.mjs +81 -91
  256. package/fesm2015/odx-angular-components-loading-spinner.mjs.map +1 -1
  257. package/fesm2015/odx-angular-components-logo.mjs +3 -3
  258. package/fesm2015/odx-angular-components-main-menu.mjs +17 -17
  259. package/fesm2015/odx-angular-components-main-menu.mjs.map +1 -1
  260. package/fesm2015/odx-angular-components-modal.mjs +31 -31
  261. package/fesm2015/odx-angular-components-progress.mjs +3 -3
  262. package/fesm2015/odx-angular-components-radio-group.mjs +10 -10
  263. package/fesm2015/odx-angular-components-rail-navigation.mjs +17 -11
  264. package/fesm2015/odx-angular-components-rail-navigation.mjs.map +1 -1
  265. package/fesm2015/odx-angular-components-select.mjs +375 -0
  266. package/fesm2015/odx-angular-components-select.mjs.map +1 -0
  267. package/fesm2015/odx-angular-components-slider.mjs +51 -0
  268. package/fesm2015/odx-angular-components-slider.mjs.map +1 -0
  269. package/fesm2015/odx-angular-components-spinbox.mjs +100 -0
  270. package/fesm2015/odx-angular-components-spinbox.mjs.map +1 -0
  271. package/fesm2015/odx-angular-components-switch.mjs +10 -10
  272. package/fesm2015/odx-angular-components-toggle-button-group.mjs +12 -12
  273. package/fesm2015/odx-angular-components-toggle-button-group.mjs.map +1 -1
  274. package/fesm2015/odx-angular-components-tooltip.mjs +187 -0
  275. package/fesm2015/odx-angular-components-tooltip.mjs.map +1 -0
  276. package/fesm2015/odx-angular-rxjs.mjs +6 -2
  277. package/fesm2015/odx-angular-rxjs.mjs.map +1 -1
  278. package/fesm2015/odx-angular-utils.mjs +72 -2
  279. package/fesm2015/odx-angular-utils.mjs.map +1 -1
  280. package/fesm2015/odx-angular.mjs +40 -20
  281. package/fesm2015/odx-angular.mjs.map +1 -1
  282. package/fesm2020/odx-angular-animations.mjs +3 -3
  283. package/fesm2020/odx-angular-animations.mjs.map +1 -1
  284. package/fesm2020/odx-angular-cdk-active-indicator.mjs +3 -3
  285. package/fesm2020/odx-angular-cdk-checkbox-control.mjs +3 -3
  286. package/fesm2020/odx-angular-cdk-connected-overlay.mjs +230 -0
  287. package/fesm2020/odx-angular-cdk-connected-overlay.mjs.map +1 -0
  288. package/fesm2020/odx-angular-cdk-custom-form-control.mjs +6 -6
  289. package/fesm2020/odx-angular-cdk-dynamic-view.mjs +15 -12
  290. package/fesm2020/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  291. package/fesm2020/odx-angular-cdk-expandable.mjs +10 -10
  292. package/fesm2020/odx-angular-cdk-radio-group-control.mjs +10 -10
  293. package/fesm2020/odx-angular-components-accordion.mjs +14 -14
  294. package/fesm2020/odx-angular-components-accordion.mjs.map +1 -1
  295. package/fesm2020/odx-angular-components-action-group.mjs +3 -3
  296. package/fesm2020/odx-angular-components-area-header.mjs +14 -14
  297. package/fesm2020/odx-angular-components-area-header.mjs.map +1 -1
  298. package/fesm2020/odx-angular-components-avatar.mjs +3 -3
  299. package/fesm2020/odx-angular-components-badge.mjs +6 -6
  300. package/fesm2020/odx-angular-components-button-group.mjs +3 -3
  301. package/fesm2020/odx-angular-components-button.mjs +3 -3
  302. package/fesm2020/odx-angular-components-checkbox.mjs +10 -10
  303. package/fesm2020/odx-angular-components-chip.mjs +3 -3
  304. package/fesm2020/odx-angular-components-circular-progress.mjs +13 -6
  305. package/fesm2020/odx-angular-components-circular-progress.mjs.map +1 -1
  306. package/fesm2020/odx-angular-components-content-box.mjs +13 -13
  307. package/fesm2020/odx-angular-components-dropdown.mjs +172 -0
  308. package/fesm2020/odx-angular-components-dropdown.mjs.map +1 -0
  309. package/fesm2020/odx-angular-components-form-field.mjs +34 -34
  310. package/fesm2020/odx-angular-components-header.mjs +13 -13
  311. package/fesm2020/odx-angular-components-icon.mjs +3 -3
  312. package/fesm2020/odx-angular-components-inline-message.mjs +55 -0
  313. package/fesm2020/odx-angular-components-inline-message.mjs.map +1 -0
  314. package/fesm2020/odx-angular-components-link.mjs +3 -3
  315. package/fesm2020/odx-angular-components-list.mjs +11 -11
  316. package/fesm2020/odx-angular-components-list.mjs.map +1 -1
  317. package/fesm2020/odx-angular-components-loading-spinner.mjs +80 -90
  318. package/fesm2020/odx-angular-components-loading-spinner.mjs.map +1 -1
  319. package/fesm2020/odx-angular-components-logo.mjs +3 -3
  320. package/fesm2020/odx-angular-components-main-menu.mjs +17 -17
  321. package/fesm2020/odx-angular-components-main-menu.mjs.map +1 -1
  322. package/fesm2020/odx-angular-components-modal.mjs +31 -31
  323. package/fesm2020/odx-angular-components-progress.mjs +3 -3
  324. package/fesm2020/odx-angular-components-radio-group.mjs +10 -10
  325. package/fesm2020/odx-angular-components-rail-navigation.mjs +17 -11
  326. package/fesm2020/odx-angular-components-rail-navigation.mjs.map +1 -1
  327. package/fesm2020/odx-angular-components-select.mjs +362 -0
  328. package/fesm2020/odx-angular-components-select.mjs.map +1 -0
  329. package/fesm2020/odx-angular-components-slider.mjs +51 -0
  330. package/fesm2020/odx-angular-components-slider.mjs.map +1 -0
  331. package/fesm2020/odx-angular-components-spinbox.mjs +97 -0
  332. package/fesm2020/odx-angular-components-spinbox.mjs.map +1 -0
  333. package/fesm2020/odx-angular-components-switch.mjs +10 -10
  334. package/fesm2020/odx-angular-components-toggle-button-group.mjs +12 -12
  335. package/fesm2020/odx-angular-components-toggle-button-group.mjs.map +1 -1
  336. package/fesm2020/odx-angular-components-tooltip.mjs +192 -0
  337. package/fesm2020/odx-angular-components-tooltip.mjs.map +1 -0
  338. package/fesm2020/odx-angular-rxjs.mjs +6 -2
  339. package/fesm2020/odx-angular-rxjs.mjs.map +1 -1
  340. package/fesm2020/odx-angular-utils.mjs +71 -2
  341. package/fesm2020/odx-angular-utils.mjs.map +1 -1
  342. package/fesm2020/odx-angular.mjs +40 -20
  343. package/fesm2020/odx-angular.mjs.map +1 -1
  344. package/index.d.ts +1 -0
  345. package/lib/tokens/identity-matcher.d.ts +3 -0
  346. package/lib/tokens/index.d.ts +3 -0
  347. package/lib/tokens/string-search-handler.d.ts +3 -0
  348. package/lib/tokens/stringify.d.ts +3 -0
  349. package/package.json +58 -2
  350. package/rxjs/index.d.ts +1 -0
  351. package/rxjs/lib/delay-until.d.ts +2 -0
  352. package/utils/lib/decorators/index.d.ts +1 -0
  353. package/utils/lib/decorators/pure.d.ts +1 -0
  354. package/utils/lib/helpers/defer-fn.d.ts +1 -0
  355. package/utils/lib/helpers/event-manager.d.ts +12 -0
  356. package/utils/lib/helpers/index.d.ts +2 -0
  357. package/components/loading-spinner/lib/loading-spinner.service.d.ts +0 -9
  358. package/esm2020/components/loading-spinner/lib/loading-spinner.service.mjs +0 -17
@@ -14,8 +14,8 @@ let ButtonGroupComponent = class ButtonGroupComponent {
14
14
  this.reverse = false;
15
15
  }
16
16
  };
17
- ButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
- ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ButtonGroupComponent, isStandalone: true, selector: "odx-button-group", inputs: { alignRight: "alignRight", block: "block", vertical: "vertical", reverse: "reverse" }, ngImport: i0, template: "<ng-content select=\"button[odxButton], a[odxButton]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
17
+ ButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
+ ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ButtonGroupComponent, isStandalone: true, selector: "odx-button-group", inputs: { alignRight: "alignRight", block: "block", vertical: "vertical", reverse: "reverse" }, ngImport: i0, template: "<ng-content select=\"button[odxButton], a[odxButton]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
19
19
  __decorate([
20
20
  CSSModifier(),
21
21
  Transform(coerceBooleanProperty),
@@ -39,7 +39,7 @@ __decorate([
39
39
  ButtonGroupComponent = __decorate([
40
40
  CSSComponent('button-group')
41
41
  ], ButtonGroupComponent);
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ButtonGroupComponent, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ButtonGroupComponent, decorators: [{
43
43
  type: Component,
44
44
  args: [{ standalone: true, selector: 'odx-button-group', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"button[odxButton], a[odxButton]\"></ng-content>\n" }]
45
45
  }], propDecorators: { alignRight: [{
@@ -29,8 +29,8 @@ let ButtonComponent = class ButtonComponent {
29
29
  return this.element.nativeElement.getAttribute('type');
30
30
  }
31
31
  };
32
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ButtonComponent, isStandalone: true, selector: "button[odxButton], a[odxButton]", inputs: { variant: "variant", size: "size" }, host: { properties: { "class.is-disabled": "disabledController?.disabled", "attr.type": "type || \"button\"", "attr.role": "\"button\"" } }, providers: [DisabledController.connect()], ngImport: i0, template: "<ng-content select=\"odx-icon[alignLeft]\"></ng-content>\n<ng-content></ng-content>\n<ng-content select=\"odx-icon[alignRight]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
32
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ButtonComponent, isStandalone: true, selector: "button[odxButton], a[odxButton]", inputs: { variant: "variant", size: "size" }, host: { properties: { "class.is-disabled": "disabledController?.disabled", "attr.type": "type || \"button\"", "attr.role": "\"button\"" } }, providers: [DisabledController.connect()], ngImport: i0, template: "<ng-content select=\"odx-icon[alignLeft]\"></ng-content>\n<ng-content></ng-content>\n<ng-content select=\"odx-icon[alignRight]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
34
34
  __decorate([
35
35
  CSSModifier({
36
36
  default: ButtonVariant.SECONDARY,
@@ -46,7 +46,7 @@ __decorate([
46
46
  ButtonComponent = __decorate([
47
47
  CSSComponent('button')
48
48
  ], ButtonComponent);
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ButtonComponent, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ButtonComponent, decorators: [{
50
50
  type: Component,
51
51
  args: [{ standalone: true, selector: 'button[odxButton], a[odxButton]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DisabledController.connect()], host: {
52
52
  '[class.is-disabled]': 'disabledController?.disabled',
@@ -36,8 +36,8 @@ let CheckboxComponent = class CheckboxComponent extends CheckBoxControl {
36
36
  super.updateValue(event.target.checked);
37
37
  }
38
38
  };
39
- CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
40
- CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: CheckboxComponent, isStandalone: true, selector: "odx-checkbox", inputs: { indeterminate: "indeterminate" }, outputs: { indeterminateChange: "indeterminateChange" }, host: { properties: { "class.is-active": "checked || indeterminate" } }, providers: [DisabledController.connect(), ReadonlyController.connect()], usesInheritance: true, ngImport: i0, template: "<label class=\"odx-checkbox__label\">\n <input\n odxControl\n class=\"odx-checkbox__input\"\n [attr.aria-checked]=\"ariaChecked\"\n [attr.aria-invalid]=\"hasError || null\"\n [attr.aria-readonly]=\"isReadonly || null\"\n [attr.aria-required]=\"isRequired || null\"\n [checked]=\"checked\"\n [disabled]=\"isDisabled || isReadonly\"\n [indeterminate]=\"indeterminate\"\n [name]=\"name\"\n [readonly]=\"isReadonly\"\n [value]=\"value\"\n type=\"checkbox\"\n (blur)=\"onTouched()\"\n (change)=\"onChanged($event)\"\n />\n <div class=\"odx-checkbox__indicator\">\n <odx-icon [name]=\"modifierIcon\"></odx-icon>\n </div>\n <div class=\"odx-checkbox__content\">\n <ng-content></ng-content>\n </div>\n</label>\n", dependencies: [{ kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "directive", type: ControlDirective, selector: "[odxControl]", exportAs: ["odxControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
39
+ CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
40
+ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CheckboxComponent, isStandalone: true, selector: "odx-checkbox", inputs: { indeterminate: "indeterminate" }, outputs: { indeterminateChange: "indeterminateChange" }, host: { properties: { "class.is-active": "checked || indeterminate" } }, providers: [DisabledController.connect(), ReadonlyController.connect()], usesInheritance: true, ngImport: i0, template: "<label class=\"odx-checkbox__label\">\n <input\n odxControl\n class=\"odx-checkbox__input\"\n [attr.aria-checked]=\"ariaChecked\"\n [attr.aria-invalid]=\"hasError || null\"\n [attr.aria-readonly]=\"isReadonly || null\"\n [attr.aria-required]=\"isRequired || null\"\n [checked]=\"checked\"\n [disabled]=\"isDisabled || isReadonly\"\n [indeterminate]=\"indeterminate\"\n [name]=\"name\"\n [readonly]=\"isReadonly\"\n [value]=\"value\"\n type=\"checkbox\"\n (blur)=\"onTouched()\"\n (change)=\"onChanged($event)\"\n />\n <div class=\"odx-checkbox__indicator\">\n <odx-icon [name]=\"modifierIcon\"></odx-icon>\n </div>\n <div class=\"odx-checkbox__content\">\n <ng-content></ng-content>\n </div>\n</label>\n", dependencies: [{ kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "directive", type: ControlDirective, selector: "[odxControl]", exportAs: ["odxControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41
41
  __decorate([
42
42
  CSSModifier(),
43
43
  __metadata("design:type", Object),
@@ -46,7 +46,7 @@ __decorate([
46
46
  CheckboxComponent = __decorate([
47
47
  CSSComponent('checkbox')
48
48
  ], CheckboxComponent);
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxComponent, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxComponent, decorators: [{
50
50
  type: Component,
51
51
  args: [{ standalone: true, selector: 'odx-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [IconComponent, ControlDirective], providers: [DisabledController.connect(), ReadonlyController.connect()], host: {
52
52
  '[class.is-active]': 'checked || indeterminate',
@@ -59,15 +59,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
59
59
 
60
60
  class CheckboxValidator extends CheckboxRequiredValidator {
61
61
  }
62
- CheckboxValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
63
- CheckboxValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: CheckboxValidator, isStandalone: true, selector: "odx-checkbox[required][formControlName], odx-checkbox[required][formControl], odx-checkbox[required][ngModel]", providers: [
62
+ CheckboxValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
63
+ CheckboxValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: CheckboxValidator, isStandalone: true, selector: "odx-checkbox[required][formControlName], odx-checkbox[required][formControl], odx-checkbox[required][ngModel]", providers: [
64
64
  {
65
65
  provide: NG_VALIDATORS,
66
66
  useExisting: forwardRef(() => CheckboxValidator),
67
67
  multi: true,
68
68
  },
69
69
  ], usesInheritance: true, ngImport: i0 });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxValidator, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxValidator, decorators: [{
71
71
  type: Directive,
72
72
  args: [{
73
73
  standalone: true,
@@ -85,10 +85,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
85
85
  const modules = [CheckboxComponent, CheckboxValidator];
86
86
  class CheckboxModule {
87
87
  }
88
- CheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
89
- CheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: CheckboxModule, imports: [CheckboxComponent, CheckboxValidator], exports: [CoreModule, CheckboxComponent, CheckboxValidator] });
90
- CheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxModule, imports: [CheckboxComponent, CoreModule] });
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CheckboxModule, decorators: [{
88
+ CheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
89
+ CheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: CheckboxModule, imports: [CheckboxComponent, CheckboxValidator], exports: [CoreModule, CheckboxComponent, CheckboxValidator] });
90
+ CheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxModule, imports: [CheckboxComponent, CoreModule] });
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CheckboxModule, decorators: [{
92
92
  type: NgModule,
93
93
  args: [{
94
94
  imports: modules,
@@ -33,8 +33,8 @@ let ChipComponent = class ChipComponent {
33
33
  this.remove.emit();
34
34
  }
35
35
  };
36
- ChipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
- ChipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ChipComponent, isStandalone: true, selector: "odx-chip", inputs: { removable: "removable", size: "size", variant: "variant" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div class=\"odx-chip__content\">\n <ng-content></ng-content>\n</div>\n<button odxButton class=\"odx-chip__action\" [size]=\"size\" [variant]=\"variant\" type=\"button\" (click)=\"onClick()\" *ngIf=\"removable\">\n <odx-icon [size]=\"size\" name=\"close\"></odx-icon>\n</button>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
36
+ ChipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
+ ChipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ChipComponent, isStandalone: true, selector: "odx-chip", inputs: { removable: "removable", size: "size", variant: "variant" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div class=\"odx-chip__content\">\n <ng-content></ng-content>\n</div>\n<button odxButton class=\"odx-chip__action\" [size]=\"size\" [variant]=\"variant\" type=\"button\" (click)=\"onClick()\" *ngIf=\"removable\">\n <odx-icon [size]=\"size\" name=\"close\"></odx-icon>\n</button>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
38
38
  __decorate([
39
39
  Transform(coerceBooleanProperty),
40
40
  __metadata("design:type", Object)
@@ -50,7 +50,7 @@ __decorate([
50
50
  ChipComponent = __decorate([
51
51
  CSSComponent('chip')
52
52
  ], ChipComponent);
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ChipComponent, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ChipComponent, decorators: [{
54
54
  type: Component,
55
55
  args: [{ selector: 'odx-chip', imports: [CoreModule, ButtonComponent, IconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<div class=\"odx-chip__content\">\n <ng-content></ng-content>\n</div>\n<button odxButton class=\"odx-chip__action\" [size]=\"size\" [variant]=\"variant\" type=\"button\" (click)=\"onClick()\" *ngIf=\"removable\">\n <odx-icon [size]=\"size\" name=\"close\"></odx-icon>\n</button>\n" }]
56
56
  }], propDecorators: { removable: [{
@@ -3,7 +3,8 @@ import { coerceNumberProperty } from '@angular/cdk/coercion';
3
3
  import * as i0 from '@angular/core';
4
4
  import { inject, ChangeDetectorRef, Component, ChangeDetectionStrategy, ViewEncapsulation, Input } from '@angular/core';
5
5
  import { CSSModifier, CSSComponent } from '@odx/angular/internal';
6
- import { injectElement, hasChanged, Transform } from '@odx/angular/utils';
6
+ import { fromElementResize$ } from '@odx/angular/rxjs';
7
+ import { untilDestroyed, injectElement, hasChanged, Transform } from '@odx/angular/utils';
7
8
 
8
9
  const CircularProgressSize = {
9
10
  AUTO: 'auto',
@@ -15,6 +16,7 @@ const CircularProgressSize = {
15
16
  let CircularProgressComponent = class CircularProgressComponent {
16
17
  constructor() {
17
18
  this.changeDetector = inject(ChangeDetectorRef);
19
+ this.takeUntilDestroyed = untilDestroyed();
18
20
  this._value = 0;
19
21
  this.viewPortSize = 100;
20
22
  this.radius = 0;
@@ -42,7 +44,9 @@ let CircularProgressComponent = class CircularProgressComponent {
42
44
  return this._value;
43
45
  }
44
46
  ngAfterViewInit() {
45
- this.updateDimensions();
47
+ fromElementResize$(this.element.nativeElement)
48
+ .pipe(this.takeUntilDestroyed())
49
+ .subscribe(() => this.updateDimensions());
46
50
  }
47
51
  ngOnChanges(changes) {
48
52
  if (hasChanged(changes, ['stroke', 'size'])) {
@@ -51,14 +55,17 @@ let CircularProgressComponent = class CircularProgressComponent {
51
55
  }
52
56
  updateDimensions() {
53
57
  const normalizeFactor = this.viewPortSize / (this.element.nativeElement.offsetWidth || 1);
54
- this.normalizedStroke = Math.floor(normalizeFactor * this.stroke);
58
+ this.normalizedStroke = normalizeFactor * this.stroke;
59
+ if (normalizeFactor >= 3) {
60
+ this.normalizedStroke = Math.max(0, this.normalizedStroke - normalizeFactor);
61
+ }
55
62
  this.radius = this.viewPortSize / 2 - this.normalizedStroke / 2;
56
63
  this.circumference = Math.floor(2 * this.radius * Math.PI);
57
64
  this.changeDetector.detectChanges();
58
65
  }
59
66
  };
60
- CircularProgressComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CircularProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
61
- CircularProgressComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: CircularProgressComponent, isStandalone: true, selector: "odx-circular-progress", inputs: { stroke: "stroke", size: "size", value: "value" }, host: { properties: { "attr.aria-valuenow": "ariaValueNow", "attr.aria-valuemax": "100", "attr.aria-valuemin": "0", "attr.role": "\"meter\"" } }, usesOnChanges: true, ngImport: i0, template: "<svg class=\"odx-circular-progress__inner\" attr.viewBox=\"0 0 {{ viewPortSize }} {{ viewPortSize }}\">\n <circle class=\"odx-circular-progress__track\" [attr.stroke-width]=\"normalizedStroke\" [attr.r]=\"radius\" cx=\"50%\" cy=\"50%\" />\n <circle\n class=\"odx-circular-progress__indicator\"\n [attr.stroke-dasharray]=\"circumference\"\n [attr.stroke-dashoffset]=\"progressValue\"\n [attr.stroke-width]=\"normalizedStroke\"\n [attr.r]=\"radius\"\n cx=\"50%\"\n cy=\"50%\"\n />\n</svg>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
67
+ CircularProgressComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CircularProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
68
+ CircularProgressComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CircularProgressComponent, isStandalone: true, selector: "odx-circular-progress", inputs: { stroke: "stroke", size: "size", value: "value" }, host: { properties: { "attr.aria-valuenow": "ariaValueNow", "attr.aria-valuemax": "100", "attr.aria-valuemin": "0", "attr.role": "\"meter\"" } }, usesOnChanges: true, ngImport: i0, template: "<svg class=\"odx-circular-progress__inner\" attr.viewBox=\"0 0 {{ viewPortSize }} {{ viewPortSize }}\">\n <circle class=\"odx-circular-progress__track\" [attr.stroke-width]=\"normalizedStroke\" [attr.r]=\"radius\" cx=\"50%\" cy=\"50%\" />\n <circle\n class=\"odx-circular-progress__indicator\"\n [attr.stroke-dasharray]=\"circumference\"\n [attr.stroke-dashoffset]=\"progressValue\"\n [attr.stroke-width]=\"normalizedStroke\"\n [attr.r]=\"radius\"\n cx=\"50%\"\n cy=\"50%\"\n />\n</svg>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
62
69
  __decorate([
63
70
  CSSModifier(),
64
71
  __metadata("design:type", Object)
@@ -79,7 +86,7 @@ __decorate([
79
86
  CircularProgressComponent = __decorate([
80
87
  CSSComponent('circular-progress')
81
88
  ], CircularProgressComponent);
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: CircularProgressComponent, decorators: [{
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CircularProgressComponent, decorators: [{
83
90
  type: Component,
84
91
  args: [{ standalone: true, selector: 'odx-circular-progress', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
85
92
  '[attr.aria-valuenow]': 'ariaValueNow',
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-circular-progress.mjs","sources":["../../../../libs/angular/components/circular-progress/src/lib/models/circular-progress-size.ts","../../../../libs/angular/components/circular-progress/src/lib/circular-progress.component.ts","../../../../libs/angular/components/circular-progress/src/lib/circular-progress.component.html","../../../../libs/angular/components/circular-progress/src/odx-angular-components-circular-progress.ts"],"sourcesContent":["export type CircularProgressSize = typeof CircularProgressSize[keyof typeof CircularProgressSize];\n\nexport const CircularProgressSize = {\n AUTO: 'auto',\n SMALL: 'small',\n MEDIUM: 'medium',\n LARGE: 'large',\n} as const;\n","import { coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { hasChanged, injectElement, NgChanges, Transform } from '@odx/angular/utils';\nimport { CircularProgressSize } from './models/circular-progress-size';\n\n@CSSComponent('circular-progress')\n@Component({\n standalone: true,\n selector: 'odx-circular-progress',\n templateUrl: './circular-progress.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.aria-valuenow]': 'ariaValueNow',\n '[attr.aria-valuemax]': '100',\n '[attr.aria-valuemin]': '0',\n '[attr.role]': '\"meter\"',\n },\n})\nexport class CircularProgressComponent implements OnChanges, AfterViewInit {\n public static ngAcceptInputType_size: NumberInput;\n public static ngAcceptInputType_stroke: NumberInput;\n public static ngAcceptInputType_value: NumberInput;\n\n private readonly changeDetector = inject(ChangeDetectorRef);\n private _value = 0;\n\n protected readonly viewPortSize = 100;\n protected radius = 0;\n protected normalizedStroke = 0;\n protected circumference = 283;\n\n protected get ariaValueNow(): null | number {\n return this.indeterminate ? null : this.value;\n }\n\n protected get progressValue(): number {\n return this.indeterminate ? this.circumference : Math.floor((1 - this.value / 100) * this.circumference);\n }\n\n public readonly element = injectElement();\n\n @CSSModifier()\n public indeterminate = false;\n\n @Transform(coerceNumberProperty)\n @Input()\n public stroke = 4;\n\n @CSSModifier()\n @Input()\n public size = CircularProgressSize.MEDIUM;\n\n @Transform(coerceNumberProperty)\n @Input()\n public set value(value: unknown) {\n const coercedValue = coerceNumberProperty(value);\n if (coercedValue <= 100 && coercedValue >= -1) {\n this._value = coercedValue;\n this.indeterminate = coercedValue === -1;\n }\n }\n\n public get value(): number {\n return this._value;\n }\n\n public ngAfterViewInit(): void {\n this.updateDimensions();\n }\n\n public ngOnChanges(changes: NgChanges<CircularProgressComponent>): void {\n if (hasChanged(changes, ['stroke', 'size'])) {\n this.updateDimensions();\n }\n }\n\n private updateDimensions(): void {\n const normalizeFactor = this.viewPortSize / (this.element.nativeElement.offsetWidth || 1);\n this.normalizedStroke = Math.floor(normalizeFactor * this.stroke);\n this.radius = this.viewPortSize / 2 - this.normalizedStroke / 2;\n this.circumference = Math.floor(2 * this.radius * Math.PI);\n this.changeDetector.detectChanges();\n }\n}\n","<svg class=\"odx-circular-progress__inner\" attr.viewBox=\"0 0 {{ viewPortSize }} {{ viewPortSize }}\">\n <circle class=\"odx-circular-progress__track\" [attr.stroke-width]=\"normalizedStroke\" [attr.r]=\"radius\" cx=\"50%\" cy=\"50%\" />\n <circle\n class=\"odx-circular-progress__indicator\"\n [attr.stroke-dasharray]=\"circumference\"\n [attr.stroke-dashoffset]=\"progressValue\"\n [attr.stroke-width]=\"normalizedStroke\"\n [attr.r]=\"radius\"\n cx=\"50%\"\n cy=\"50%\"\n />\n</svg>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAEa,MAAA,oBAAoB,GAAG;AAClC,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,KAAK,EAAE,OAAO;;;ACcH,IAAA,yBAAyB,GAA/B,MAAM,yBAAyB,CAAA;AAA/B,IAAA,WAAA,GAAA;AAKY,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACpD,QAAA,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;AAEA,QAAA,IAAY,CAAA,YAAA,GAAG,GAAG,CAAC;AAC5B,QAAA,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;AACX,QAAA,IAAgB,CAAA,gBAAA,GAAG,CAAC,CAAC;AACrB,QAAA,IAAa,CAAA,aAAA,GAAG,GAAG,CAAC;AAUd,QAAA,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;AAGnC,QAAA,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;AAItB,QAAA,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;AAIX,QAAA,IAAA,CAAA,IAAI,GAAG,oBAAoB,CAAC,MAAM,CAAC;KAiC3C;AApDC,IAAA,IAAc,YAAY,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;KAC/C;AAED,IAAA,IAAc,aAAa,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;KAC1G;IAeD,IAEW,KAAK,CAAC,KAAc,EAAA;AAC7B,QAAA,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,YAAY,IAAI,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,EAAE;AAC7C,YAAA,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;AAC3B,YAAA,IAAI,CAAC,aAAa,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC;AAC1C,SAAA;KACF;AAED,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAEM,eAAe,GAAA;QACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;KACzB;AAEM,IAAA,WAAW,CAAC,OAA6C,EAAA;QAC9D,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE;YAC3C,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACzB,SAAA;KACF;IAEO,gBAAgB,GAAA;AACtB,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;AAC1F,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AAClE,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;AAChE,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3D,QAAA,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;KACrC;;uHAhEU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,oTCpBtC,kgBAYA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;AD+BE,UAAA,CAAA;AAAC,IAAA,WAAW,EAAE;;CACe,EAAA,yBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAE7B,UAAA,CAAA;IAAC,SAAS,CAAC,oBAAoB,CAAC;;CAEd,EAAA,yBAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAElB,UAAA,CAAA;AAAC,IAAA,WAAW,EAAE;;CAE4B,EAAA,yBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAE1C,UAAA,CAAA;IAAC,SAAS,CAAC,oBAAoB,CAAC;;;CAQ/B,EAAA,yBAAA,CAAA,SAAA,EAAA,OAAA,EAAA,IAAA,CAAA,CAAA;AA1CU,yBAAyB,GAAA,UAAA,CAAA;IAdrC,YAAY,CAAC,mBAAmB,CAAC;CAcrB,EAAA,yBAAyB,CAiErC,CAAA;4FAjEY,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAbrC,SAAS;iCACI,IAAI,EAAA,QAAA,EACN,uBAAuB,EAAA,eAAA,EAEhB,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAC/B,IAAA,EAAA;AACJ,wBAAA,sBAAsB,EAAE,cAAc;AACtC,wBAAA,sBAAsB,EAAE,KAAK;AAC7B,wBAAA,sBAAsB,EAAE,GAAG;AAC3B,wBAAA,aAAa,EAAE,SAAS;AACzB,qBAAA,EAAA,QAAA,EAAA,kgBAAA,EAAA,CAAA;SA0BM,CAAA,EAAA,cAAA,EAAA,EAAA,aAAa,MAIb,MAAM,EAAA,CAAA;sBADZ,KAAK;gBAKC,IAAI,EAAA,CAAA;sBADV,KAAK;gBAKK,KAAK,EAAA,CAAA;sBADf,KAAK;;;AEvDR;;AAEG;;;;"}
1
+ {"version":3,"file":"odx-angular-components-circular-progress.mjs","sources":["../../../../libs/angular/components/circular-progress/src/lib/models/circular-progress-size.ts","../../../../libs/angular/components/circular-progress/src/lib/circular-progress.component.ts","../../../../libs/angular/components/circular-progress/src/lib/circular-progress.component.html","../../../../libs/angular/components/circular-progress/src/odx-angular-components-circular-progress.ts"],"sourcesContent":["export type CircularProgressSize = typeof CircularProgressSize[keyof typeof CircularProgressSize];\n\nexport const CircularProgressSize = {\n AUTO: 'auto',\n SMALL: 'small',\n MEDIUM: 'medium',\n LARGE: 'large',\n} as const;\n","import { coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { fromElementResize$ } from '@odx/angular/rxjs';\nimport { hasChanged, injectElement, NgChanges, Transform, untilDestroyed } from '@odx/angular/utils';\nimport { CircularProgressSize } from './models/circular-progress-size';\n\n@CSSComponent('circular-progress')\n@Component({\n standalone: true,\n selector: 'odx-circular-progress',\n templateUrl: './circular-progress.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.aria-valuenow]': 'ariaValueNow',\n '[attr.aria-valuemax]': '100',\n '[attr.aria-valuemin]': '0',\n '[attr.role]': '\"meter\"',\n },\n})\nexport class CircularProgressComponent implements OnChanges, AfterViewInit {\n public static ngAcceptInputType_size: NumberInput;\n public static ngAcceptInputType_stroke: NumberInput;\n public static ngAcceptInputType_value: NumberInput;\n\n private readonly changeDetector = inject(ChangeDetectorRef);\n private readonly takeUntilDestroyed = untilDestroyed();\n private _value = 0;\n\n protected readonly viewPortSize = 100;\n protected radius = 0;\n protected normalizedStroke = 0;\n protected circumference = 283;\n\n protected get ariaValueNow(): null | number {\n return this.indeterminate ? null : this.value;\n }\n\n protected get progressValue(): number {\n return this.indeterminate ? this.circumference : Math.floor((1 - this.value / 100) * this.circumference);\n }\n\n public readonly element = injectElement();\n\n @CSSModifier()\n public indeterminate = false;\n\n @Transform(coerceNumberProperty)\n @Input()\n public stroke = 4;\n\n @CSSModifier()\n @Input()\n public size = CircularProgressSize.MEDIUM;\n\n @Transform(coerceNumberProperty)\n @Input()\n public set value(value: unknown) {\n const coercedValue = coerceNumberProperty(value);\n if (coercedValue <= 100 && coercedValue >= -1) {\n this._value = coercedValue;\n this.indeterminate = coercedValue === -1;\n }\n }\n\n public get value(): number {\n return this._value;\n }\n\n public ngAfterViewInit(): void {\n fromElementResize$(this.element.nativeElement)\n .pipe(this.takeUntilDestroyed())\n .subscribe(() => this.updateDimensions());\n }\n\n public ngOnChanges(changes: NgChanges<CircularProgressComponent>): void {\n if (hasChanged(changes, ['stroke', 'size'])) {\n this.updateDimensions();\n }\n }\n\n private updateDimensions(): void {\n const normalizeFactor = this.viewPortSize / (this.element.nativeElement.offsetWidth || 1);\n\n this.normalizedStroke = normalizeFactor * this.stroke;\n if (normalizeFactor >= 3) {\n this.normalizedStroke = Math.max(0, this.normalizedStroke - normalizeFactor);\n }\n this.radius = this.viewPortSize / 2 - this.normalizedStroke / 2;\n this.circumference = Math.floor(2 * this.radius * Math.PI);\n this.changeDetector.detectChanges();\n }\n}\n","<svg class=\"odx-circular-progress__inner\" attr.viewBox=\"0 0 {{ viewPortSize }} {{ viewPortSize }}\">\n <circle class=\"odx-circular-progress__track\" [attr.stroke-width]=\"normalizedStroke\" [attr.r]=\"radius\" cx=\"50%\" cy=\"50%\" />\n <circle\n class=\"odx-circular-progress__indicator\"\n [attr.stroke-dasharray]=\"circumference\"\n [attr.stroke-dashoffset]=\"progressValue\"\n [attr.stroke-width]=\"normalizedStroke\"\n [attr.r]=\"radius\"\n cx=\"50%\"\n cy=\"50%\"\n />\n</svg>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@ import { Component, ViewEncapsulation, ChangeDetectionStrategy, Directive, NgMod
3
3
 
4
4
  class ContentBoxComponent {
5
5
  }
6
- ContentBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- ContentBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ContentBoxComponent, isStandalone: true, selector: "odx-content-box", host: { properties: { "class.odx-content-box": "true" } }, ngImport: i0, template: "<ng-content select=\"odx-area-header, odx-content-box-header\"></ng-content>\n<div class=\"odx-content-box__content\">\n <ng-content></ng-content>\n</div>\n<ng-content select=\"odx-content-box-footer\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxComponent, decorators: [{
6
+ ContentBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ ContentBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ContentBoxComponent, isStandalone: true, selector: "odx-content-box", host: { properties: { "class.odx-content-box": "true" } }, ngImport: i0, template: "<ng-content select=\"odx-area-header, odx-content-box-header\"></ng-content>\n<div class=\"odx-content-box__content\">\n <ng-content></ng-content>\n</div>\n<ng-content select=\"odx-content-box-footer\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'odx-content-box', standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
11
11
  '[class.odx-content-box]': 'true',
@@ -14,9 +14,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
14
14
 
15
15
  class ContentBoxFooterDirective {
16
16
  }
17
- ContentBoxFooterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
18
- ContentBoxFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: ContentBoxFooterDirective, isStandalone: true, selector: "odx-content-box-footer", host: { properties: { "class.odx-content-box__footer": "true" } }, ngImport: i0 });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxFooterDirective, decorators: [{
17
+ ContentBoxFooterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
18
+ ContentBoxFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ContentBoxFooterDirective, isStandalone: true, selector: "odx-content-box-footer", host: { properties: { "class.odx-content-box__footer": "true" } }, ngImport: i0 });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxFooterDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  selector: 'odx-content-box-footer',
@@ -29,9 +29,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
29
29
 
30
30
  class ContentBoxHeaderDirective {
31
31
  }
32
- ContentBoxHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
33
- ContentBoxHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: ContentBoxHeaderDirective, isStandalone: true, selector: "odx-content-box-header", host: { properties: { "class.odx-content-box__header": "true" } }, ngImport: i0 });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxHeaderDirective, decorators: [{
32
+ ContentBoxHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
33
+ ContentBoxHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: ContentBoxHeaderDirective, isStandalone: true, selector: "odx-content-box-header", host: { properties: { "class.odx-content-box__header": "true" } }, ngImport: i0 });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxHeaderDirective, decorators: [{
35
35
  type: Directive,
36
36
  args: [{
37
37
  selector: 'odx-content-box-header',
@@ -45,10 +45,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
45
45
  const modules = [ContentBoxComponent, ContentBoxHeaderDirective, ContentBoxFooterDirective];
46
46
  class ContentBoxModule {
47
47
  }
48
- ContentBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
49
- ContentBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxModule, imports: [ContentBoxComponent, ContentBoxHeaderDirective, ContentBoxFooterDirective], exports: [ContentBoxComponent, ContentBoxHeaderDirective, ContentBoxFooterDirective] });
50
- ContentBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxModule, imports: [ContentBoxComponent] });
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ContentBoxModule, decorators: [{
48
+ ContentBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
49
+ ContentBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxModule, imports: [ContentBoxComponent, ContentBoxHeaderDirective, ContentBoxFooterDirective], exports: [ContentBoxComponent, ContentBoxHeaderDirective, ContentBoxFooterDirective] });
50
+ ContentBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxModule, imports: [ContentBoxComponent] });
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ContentBoxModule, decorators: [{
52
52
  type: NgModule,
53
53
  args: [{
54
54
  imports: modules,
@@ -0,0 +1,168 @@
1
+ import { __decorate, __metadata } from 'tslib';
2
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
+ import * as i0 from '@angular/core';
4
+ import { inject, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, EventEmitter, Directive, Output, NgModule } from '@angular/core';
5
+ import { ConnectedOverlayService } from '@odx/angular/cdk/connected-overlay';
6
+ import { CSSComponent, CSSModifier } from '@odx/angular/internal';
7
+ import { getInjector, injectElement, EventManager, hasChanged, Transform } from '@odx/angular/utils';
8
+ import * as i1 from '@odx/angular';
9
+ import { CoreModule } from '@odx/angular';
10
+ import { DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';
11
+ import * as i2 from '@odx/angular/components/loading-spinner';
12
+ import { LoadingSpinnerModule } from '@odx/angular/components/loading-spinner';
13
+
14
+ let DropdownComponent = class DropdownComponent {
15
+ constructor() {
16
+ this.host = inject(DropdownDirective);
17
+ this.injector = getInjector();
18
+ this.element = injectElement();
19
+ }
20
+ };
21
+ DropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ DropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DropdownComponent, isStandalone: true, selector: "odx-dropdown", inputs: { content: "content" }, ngImport: i0, template: "<div class=\"odx-dropdown__inner\" [odxLoadingSpinner]=\"host.showLoader\" [odxClickOutsideActive]=\"true\" (odxClickOutside)=\"host.close()\">\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.ClickOutsideDirective, selector: "[odxClickOutside]", inputs: ["odxClickOutsideActive"], outputs: ["odxClickOutside"] }, { kind: "directive", type: DynamicViewDirective, selector: "ng-template[odxDynamicView]", inputs: ["odxDynamicView", "odxDynamicViewInjector", "odxDynamicViewContext"] }, { kind: "ngmodule", type: LoadingSpinnerModule }, { kind: "directive", type: i2.LoadingSpinnerDirective, selector: "[odxLoadingSpinner]", inputs: ["odxLoadingSpinnerAutoColor", "odxLoadingSpinner", "odxLoadingSpinnerMinHeight"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23
+ DropdownComponent = __decorate([
24
+ CSSComponent('dropdown')
25
+ ], DropdownComponent);
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownComponent, decorators: [{
27
+ type: Component,
28
+ args: [{ standalone: true, selector: 'odx-dropdown', imports: [CoreModule, DynamicViewDirective, LoadingSpinnerModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"odx-dropdown__inner\" [odxLoadingSpinner]=\"host.showLoader\" [odxClickOutsideActive]=\"true\" (odxClickOutside)=\"host.close()\">\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n" }]
29
+ }], propDecorators: { content: [{
30
+ type: Input
31
+ }] } });
32
+
33
+ const DefaultDropdownOptions = {
34
+ position: 'bottom',
35
+ matchReferenceWidth: false,
36
+ enableFallback: true,
37
+ minHeight: 0,
38
+ };
39
+
40
+ let DropdownDirective = class DropdownDirective {
41
+ constructor() {
42
+ this.connectedOverlayService = inject(ConnectedOverlayService);
43
+ this.eventManager = inject(EventManager);
44
+ this.injector = getInjector();
45
+ this.overlayRef = null;
46
+ this.element = injectElement();
47
+ this.disabled = false;
48
+ this.showLoader = false;
49
+ this.beforeOpen = new EventEmitter();
50
+ this.afterOpen = new EventEmitter();
51
+ this.beforeClose = new EventEmitter();
52
+ this.afterClose = new EventEmitter();
53
+ }
54
+ get isOpen() {
55
+ return this.overlayRef !== null;
56
+ }
57
+ ngAfterViewInit() {
58
+ this.eventManager.register(['click', 'keydown.enter'], (event) => this.open(event), this.referenceElement);
59
+ this.eventManager.register(['keyup.esc'], () => this.close(), 'document');
60
+ }
61
+ ngOnChanges(changes) {
62
+ var _a;
63
+ if (hasChanged(changes, 'disabled') && this.disabled) {
64
+ this.close();
65
+ }
66
+ if (hasChanged(changes, ['options', 'content', 'showLoader'])) {
67
+ (_a = this.overlayRef) === null || _a === void 0 ? void 0 : _a.update(this.createOverlayOptions());
68
+ }
69
+ }
70
+ open(event) {
71
+ var _a;
72
+ event === null || event === void 0 ? void 0 : event.preventDefault();
73
+ if (this.isOpen || !this.content || this.disabled)
74
+ return;
75
+ this.overlayRef = this.connectedOverlayService.createOverlay((_a = this.referenceElement) !== null && _a !== void 0 ? _a : this.element.nativeElement, this.createOverlayOptions(), {
76
+ host: this.referenceElement,
77
+ injector: this.injector,
78
+ });
79
+ }
80
+ close() {
81
+ var _a;
82
+ (_a = this.overlayRef) === null || _a === void 0 ? void 0 : _a.close();
83
+ this.overlayRef = null;
84
+ }
85
+ createOverlayOptions() {
86
+ return Object.assign(Object.assign(Object.assign({}, DefaultDropdownOptions), this.options), { containerClass: 'odx-dropdown-overlay', content: DropdownComponent, context: { content: this.content }, hooks: {
87
+ beforeOpen: () => this.beforeOpen.emit(),
88
+ afterOpen: () => this.afterOpen.emit(),
89
+ beforeClose: () => this.beforeClose.emit(),
90
+ afterClose: () => this.afterClose.emit(),
91
+ } });
92
+ }
93
+ };
94
+ DropdownDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
95
+ DropdownDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DropdownDirective, isStandalone: true, selector: "[odxDropdown]", inputs: { content: ["odxDropdown", "content"], disabled: ["odxDropdownDisabled", "disabled"], showLoader: ["odxDropdownShowLoader", "showLoader"], options: ["odxDropdownOptions", "options"], referenceElement: ["odxDropdownReferenceElement", "referenceElement"] }, outputs: { beforeOpen: "odxDropdownBeforeOpen", afterOpen: "odxDropdownAfterOpen", beforeClose: "odxDropdownBeforeClose", afterClose: "odxDropdownAfterClose" }, providers: [EventManager], exportAs: ["odxDropdown"], usesOnChanges: true, ngImport: i0 });
96
+ __decorate([
97
+ CSSModifier(),
98
+ __metadata("design:type", Boolean),
99
+ __metadata("design:paramtypes", [])
100
+ ], DropdownDirective.prototype, "isOpen", null);
101
+ __decorate([
102
+ Transform(coerceBooleanProperty),
103
+ __metadata("design:type", Object)
104
+ ], DropdownDirective.prototype, "disabled", void 0);
105
+ __decorate([
106
+ Transform(coerceBooleanProperty),
107
+ __metadata("design:type", Object)
108
+ ], DropdownDirective.prototype, "showLoader", void 0);
109
+ DropdownDirective = __decorate([
110
+ CSSComponent('dropdown-host')
111
+ ], DropdownDirective);
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownDirective, decorators: [{
113
+ type: Directive,
114
+ args: [{
115
+ standalone: true,
116
+ selector: '[odxDropdown]',
117
+ exportAs: 'odxDropdown',
118
+ providers: [EventManager],
119
+ }]
120
+ }], propDecorators: { isOpen: [], content: [{
121
+ type: Input,
122
+ args: ['odxDropdown']
123
+ }], disabled: [{
124
+ type: Input,
125
+ args: ['odxDropdownDisabled']
126
+ }], showLoader: [{
127
+ type: Input,
128
+ args: ['odxDropdownShowLoader']
129
+ }], options: [{
130
+ type: Input,
131
+ args: ['odxDropdownOptions']
132
+ }], referenceElement: [{
133
+ type: Input,
134
+ args: ['odxDropdownReferenceElement']
135
+ }], beforeOpen: [{
136
+ type: Output,
137
+ args: ['odxDropdownBeforeOpen']
138
+ }], afterOpen: [{
139
+ type: Output,
140
+ args: ['odxDropdownAfterOpen']
141
+ }], beforeClose: [{
142
+ type: Output,
143
+ args: ['odxDropdownBeforeClose']
144
+ }], afterClose: [{
145
+ type: Output,
146
+ args: ['odxDropdownAfterClose']
147
+ }] } });
148
+
149
+ const modules = [DropdownDirective];
150
+ class DropdownModule {
151
+ }
152
+ DropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
153
+ DropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DropdownModule, imports: [DropdownDirective], exports: [CoreModule, DropdownDirective] });
154
+ DropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownModule, imports: [CoreModule] });
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownModule, decorators: [{
156
+ type: NgModule,
157
+ args: [{
158
+ imports: modules,
159
+ exports: [CoreModule, ...modules],
160
+ }]
161
+ }] });
162
+
163
+ /**
164
+ * Generated bundle index. Do not edit.
165
+ */
166
+
167
+ export { DefaultDropdownOptions, DropdownDirective, DropdownModule };
168
+ //# sourceMappingURL=odx-angular-components-dropdown.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odx-angular-components-dropdown.mjs","sources":["../../../../libs/angular/components/dropdown/src/lib/dropdown.component.ts","../../../../libs/angular/components/dropdown/src/lib/dropdown.component.html","../../../../libs/angular/components/dropdown/src/lib/models/dropdown-options.ts","../../../../libs/angular/components/dropdown/src/lib/dropdown.directive.ts","../../../../libs/angular/components/dropdown/src/lib/dropdown.module.ts","../../../../libs/angular/components/dropdown/src/odx-angular-components-dropdown.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, Input, ViewEncapsulation } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { DynamicContent, DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';\nimport { LoadingSpinnerModule } from '@odx/angular/components/loading-spinner';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { getInjector, injectElement } from '@odx/angular/utils';\nimport { DropdownDirective } from './dropdown.directive';\n\n@CSSComponent('dropdown')\n@Component({\n standalone: true,\n selector: 'odx-dropdown',\n imports: [CoreModule, DynamicViewDirective, LoadingSpinnerModule],\n templateUrl: './dropdown.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownComponent {\n protected readonly host = inject(DropdownDirective);\n protected readonly injector = getInjector();\n public readonly element = injectElement();\n\n @Input()\n public content?: DynamicContent | null;\n}\n","<div class=\"odx-dropdown__inner\" [odxLoadingSpinner]=\"host.showLoader\" [odxClickOutsideActive]=\"true\" (odxClickOutside)=\"host.close()\">\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n","import { ConnectedOverlayOptions } from '@odx/angular/cdk/connected-overlay';\n\nexport type DropdownOptions = Pick<ConnectedOverlayOptions, 'position' | 'enableFallback' | 'matchReferenceWidth' | 'minHeight'>;\n\nexport const DefaultDropdownOptions: DropdownOptions = {\n position: 'bottom',\n matchReferenceWidth: false,\n enableFallback: true,\n minHeight: 0,\n};\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { AfterViewInit, Directive, EventEmitter, inject, Input, OnChanges, Output } from '@angular/core';\nimport { ConnectedOverlayOptions, ConnectedOverlayRef, ConnectedOverlayService } from '@odx/angular/cdk/connected-overlay';\nimport { DynamicContent } from '@odx/angular/cdk/dynamic-view';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { EventManager, getInjector, hasChanged, injectElement, NgChanges, Transform } from '@odx/angular/utils';\nimport { DropdownComponent } from './dropdown.component';\nimport { DefaultDropdownOptions, DropdownOptions } from './models';\n\n@CSSComponent('dropdown-host')\n@Directive({\n standalone: true,\n selector: '[odxDropdown]',\n exportAs: 'odxDropdown',\n providers: [EventManager],\n})\nexport class DropdownDirective implements AfterViewInit, OnChanges {\n public static ngAcceptInputType_disabled: BooleanInput;\n public static ngAcceptInputType_loading: BooleanInput;\n\n private readonly connectedOverlayService = inject(ConnectedOverlayService);\n private readonly eventManager = inject(EventManager);\n private readonly injector = getInjector();\n private overlayRef: ConnectedOverlayRef | null = null;\n\n public readonly element = injectElement();\n\n @CSSModifier()\n public get isOpen(): boolean {\n return this.overlayRef !== null;\n }\n\n @Input('odxDropdown')\n public content?: DynamicContent | null;\n\n @Transform(coerceBooleanProperty)\n @Input('odxDropdownDisabled')\n public disabled = false;\n\n @Transform(coerceBooleanProperty)\n @Input('odxDropdownShowLoader')\n public showLoader = false;\n\n @Input('odxDropdownOptions')\n public options?: Partial<DropdownOptions> | null;\n\n @Input('odxDropdownReferenceElement')\n public referenceElement?: HTMLElement | null;\n\n @Output('odxDropdownBeforeOpen')\n public beforeOpen = new EventEmitter<void>();\n\n @Output('odxDropdownAfterOpen')\n public afterOpen = new EventEmitter<void>();\n\n @Output('odxDropdownBeforeClose')\n public beforeClose = new EventEmitter<void>();\n\n @Output('odxDropdownAfterClose')\n public afterClose = new EventEmitter<void>();\n\n public ngAfterViewInit(): void {\n this.eventManager.register(['click', 'keydown.enter'], (event) => this.open(event), this.referenceElement);\n this.eventManager.register(['keyup.esc'], () => this.close(), 'document');\n }\n\n public ngOnChanges(changes: NgChanges<DropdownDirective>) {\n if (hasChanged(changes, 'disabled') && this.disabled) {\n this.close();\n }\n if (hasChanged(changes, ['options', 'content', 'showLoader'])) {\n this.overlayRef?.update(this.createOverlayOptions());\n }\n }\n\n public open(event?: Event) {\n event?.preventDefault();\n if (this.isOpen || !this.content || this.disabled) return;\n this.overlayRef = this.connectedOverlayService.createOverlay(this.referenceElement ?? this.element.nativeElement, this.createOverlayOptions(), {\n host: this.referenceElement,\n injector: this.injector,\n });\n }\n\n public close() {\n this.overlayRef?.close();\n this.overlayRef = null;\n }\n\n private createOverlayOptions(): Partial<ConnectedOverlayOptions> {\n return {\n ...DefaultDropdownOptions,\n ...this.options,\n containerClass: 'odx-dropdown-overlay',\n content: DropdownComponent,\n context: { content: this.content },\n hooks: {\n beforeOpen: () => this.beforeOpen.emit(),\n afterOpen: () => this.afterOpen.emit(),\n beforeClose: () => this.beforeClose.emit(),\n afterClose: () => this.afterClose.emit(),\n },\n };\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { DropdownDirective } from './dropdown.directive';\n\nconst modules = [DropdownDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class DropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}