@odx/angular 1.0.0-rc.2 → 1.0.0-rc.21

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 (834) hide show
  1. package/README.md +6 -7
  2. package/animations/index.d.ts +1 -0
  3. package/animations/lib/wait-for-child-animations.d.ts +1 -0
  4. package/cdk/a11y/README.md +3 -0
  5. package/cdk/a11y/index.d.ts +2 -0
  6. package/cdk/a11y/lib/a11y.module.d.ts +11 -0
  7. package/cdk/a11y/lib/directives/index.d.ts +3 -0
  8. package/cdk/a11y/lib/directives/interactive.directive.d.ts +11 -0
  9. package/cdk/a11y/lib/directives/list-focus-manager-option.directive.d.ts +10 -0
  10. package/cdk/a11y/lib/directives/list-focus-manager.directive.d.ts +12 -0
  11. package/cdk/active-indicator/README.md +3 -0
  12. package/cdk/active-indicator/index.d.ts +2 -0
  13. package/cdk/active-indicator/lib/active-indicator.directive.d.ts +25 -0
  14. package/cdk/active-indicator/lib/models/active-indicator-direction.d.ts +5 -0
  15. package/cdk/active-indicator/lib/models/active-indicator-position.d.ts +6 -0
  16. package/cdk/active-indicator/lib/models/index.d.ts +2 -0
  17. package/cdk/checkbox-control/lib/checkbox-control.directive.d.ts +4 -3
  18. package/cdk/connected-overlay/README.md +3 -0
  19. package/cdk/connected-overlay/index.d.ts +3 -0
  20. package/cdk/connected-overlay/lib/connected-overlay.component.d.ts +28 -0
  21. package/cdk/connected-overlay/lib/connected-overlay.service.d.ts +10 -0
  22. package/cdk/connected-overlay/lib/helpers/compute-overlay-position.d.ts +3 -0
  23. package/cdk/connected-overlay/lib/helpers/index.d.ts +1 -0
  24. package/cdk/connected-overlay/lib/models/connected-overlay-options.d.ts +25 -0
  25. package/cdk/connected-overlay/lib/models/connected-overlay-ref.d.ts +12 -0
  26. package/cdk/connected-overlay/lib/models/index.d.ts +2 -0
  27. package/cdk/custom-form-control/lib/control.directive.d.ts +1 -1
  28. package/cdk/custom-form-control/lib/custom-form-control.d.ts +8 -14
  29. package/cdk/dynamic-view/lib/dynamic-view.component.d.ts +4 -4
  30. package/cdk/dynamic-view/lib/dynamic-view.directive.d.ts +3 -1
  31. package/cdk/dynamic-view/lib/dynamic-view.service.d.ts +1 -0
  32. package/cdk/dynamic-view/lib/facade/dynamic-content.d.ts +3 -3
  33. package/cdk/dynamic-view/lib/facade/dynamic-view-ref.d.ts +1 -0
  34. package/cdk/dynamic-view/lib/helpers/create-projectable-nodes.d.ts +2 -0
  35. package/cdk/dynamic-view/lib/helpers/index.d.ts +1 -0
  36. package/cdk/dynamic-view/lib/models/dynamic-component-ref.d.ts +2 -0
  37. package/cdk/dynamic-view/lib/models/dynamic-template-ref.d.ts +1 -0
  38. package/cdk/dynamic-view/lib/models/dynamic-view-options.d.ts +7 -3
  39. package/cdk/dynamic-view/lib/tokens/dynamic-view-default-host.d.ts +3 -0
  40. package/cdk/dynamic-view/lib/tokens/index.d.ts +1 -0
  41. package/cdk/expandable/index.d.ts +1 -0
  42. package/cdk/expandable/lib/directives/expandable-item.directive.d.ts +2 -2
  43. package/cdk/expandable/lib/directives/extandable-container.directive.d.ts +2 -2
  44. package/cdk/expandable/lib/expandable.tokens.d.ts +3 -0
  45. package/cdk/expandable/lib/facade/expandable-container.d.ts +4 -4
  46. package/cdk/expandable/lib/facade/expandable-item.d.ts +6 -6
  47. package/cdk/radio-group-control/lib/radio-control.directive.d.ts +1 -1
  48. package/cdk/radio-group-control/lib/radio-group-control.directive.d.ts +3 -2
  49. package/components/accordion/lib/accordion.component.d.ts +1 -1
  50. package/components/accordion/lib/components/accordion-item/accordion-item.component.d.ts +1 -1
  51. package/components/accordion/lib/directives/accordion-item-title.d.ts +1 -1
  52. package/components/action-group/action-group.component.d.ts +1 -1
  53. package/components/area-header/area-header.component.d.ts +1 -1
  54. package/components/area-header/directives/area-header-content.directive.d.ts +1 -1
  55. package/components/area-header/directives/area-header-subtitle.directive.d.ts +1 -1
  56. package/components/area-header/models/area-header-size.d.ts +1 -1
  57. package/components/avatar/lib/avatar.component.d.ts +3 -2
  58. package/components/avatar/lib/models/avatar-size.d.ts +1 -1
  59. package/components/avatar/lib/models/avatar-variant.d.ts +5 -0
  60. package/components/avatar/lib/models/index.d.ts +1 -0
  61. package/components/badge/lib/badge.component.d.ts +7 -17
  62. package/components/badge/lib/badge.directive.d.ts +17 -13
  63. package/components/badge/lib/models/badge-variant.d.ts +1 -1
  64. package/components/badge/lib/models/index.d.ts +0 -1
  65. package/components/bar/README.md +3 -0
  66. package/components/bar/index.d.ts +5 -0
  67. package/components/bar/lib/bar.component.d.ts +6 -0
  68. package/components/bar/lib/bar.module.d.ts +10 -0
  69. package/components/bar/lib/directives/bar-button.directive.d.ts +10 -0
  70. package/components/bar/lib/directives/bar-label.directive.d.ts +6 -0
  71. package/components/bar/lib/models/bar-button-variant.d.ts +5 -0
  72. package/components/breadcrumbs/README.md +3 -0
  73. package/components/breadcrumbs/index.d.ts +1 -0
  74. package/components/breadcrumbs/lib/breadcrumbs.component.d.ts +17 -0
  75. package/components/button/index.d.ts +1 -0
  76. package/components/button/lib/button.component.d.ts +3 -4
  77. package/components/button/lib/directives/index.d.ts +1 -0
  78. package/components/button/lib/directives/responsive-button.directive.d.ts +6 -0
  79. package/components/button/lib/models/button-size.d.ts +1 -1
  80. package/components/button/lib/models/button-variant.d.ts +1 -1
  81. package/components/button-group/lib/button-group.component.d.ts +1 -1
  82. package/components/checkbox/index.d.ts +2 -0
  83. package/components/checkbox/lib/checkbox.component.d.ts +2 -1
  84. package/components/checkbox/lib/checkbox.module.d.ts +9 -0
  85. package/components/checkbox/lib/checkbox.validator.d.ts +6 -0
  86. package/components/chip/README.md +3 -0
  87. package/components/chip/index.d.ts +2 -0
  88. package/components/chip/lib/chip.component.d.ts +15 -0
  89. package/components/chip/lib/models/chip-size.d.ts +5 -0
  90. package/components/chip/lib/models/chip-variant.d.ts +7 -0
  91. package/components/chip/lib/models/index.d.ts +2 -0
  92. package/components/circular-progress/README.md +3 -0
  93. package/components/circular-progress/index.d.ts +2 -0
  94. package/components/circular-progress/lib/circular-progress.component.d.ts +29 -0
  95. package/components/circular-progress/lib/models/circular-progress-size.d.ts +7 -0
  96. package/components/circular-progress/lib/models/index.d.ts +1 -0
  97. package/components/content-box/lib/content-box.component.d.ts +1 -1
  98. package/components/content-box/lib/directives/content-box-footer-directive.d.ts +1 -1
  99. package/components/content-box/lib/directives/content-box-header-directive.d.ts +1 -1
  100. package/components/dropdown/README.md +3 -0
  101. package/components/dropdown/index.d.ts +5 -0
  102. package/components/dropdown/lib/dropdown.component.d.ts +12 -0
  103. package/components/dropdown/lib/dropdown.directive.d.ts +42 -0
  104. package/components/dropdown/lib/dropdown.module.d.ts +8 -0
  105. package/components/dropdown/lib/helpers/close-current-dropdown.d.ts +1 -0
  106. package/components/dropdown/lib/helpers/index.d.ts +1 -0
  107. package/components/dropdown/lib/models/close-dropdown-event.d.ts +4 -0
  108. package/components/dropdown/lib/models/dropdown-options.d.ts +3 -0
  109. package/components/dropdown/lib/models/index.d.ts +2 -0
  110. package/components/form-field/index.d.ts +1 -0
  111. package/components/form-field/lib/components/form-field-info/form-field-info.component.d.ts +1 -1
  112. package/components/form-field/lib/components/form-group/form-group.component.d.ts +1 -2
  113. package/components/form-field/lib/directives/form-field-control.directive.d.ts +3 -4
  114. package/components/form-field/lib/directives/form-field-error.directive.d.ts +1 -1
  115. package/components/form-field/lib/directives/form-field-hint.directive.d.ts +1 -1
  116. package/components/form-field/lib/directives/form-field-label.directive.d.ts +1 -1
  117. package/components/form-field/lib/directives/form.directive.d.ts +1 -1
  118. package/components/form-field/lib/form-field.component.d.ts +8 -2
  119. package/components/form-field/lib/form-field.config.d.ts +3 -7
  120. package/components/form-field/lib/form-field.module.d.ts +0 -4
  121. package/components/form-field/lib/models/form-field-error-resolver.d.ts +1 -1
  122. package/components/form-field/lib/models/form-field-error.d.ts +1 -0
  123. package/components/form-field/lib/models/form-field-variant.d.ts +5 -0
  124. package/components/form-field/lib/models/index.d.ts +1 -0
  125. package/components/form-field/lib/services/form-field-error.service.d.ts +1 -0
  126. package/components/header/lib/directives/header-avatar.directive.d.ts +5 -2
  127. package/components/header/lib/directives/header-title.directive.d.ts +1 -1
  128. package/components/header/lib/header.component.d.ts +1 -1
  129. package/components/header/lib/header.module.d.ts +2 -3
  130. package/components/icon/lib/icon.component.d.ts +1 -1
  131. package/components/icon/lib/models/icon-size.d.ts +2 -1
  132. package/components/inline-message/README.md +3 -0
  133. package/components/inline-message/index.d.ts +2 -0
  134. package/components/inline-message/lib/inline-message.component.d.ts +9 -0
  135. package/components/inline-message/lib/models/index.d.ts +1 -0
  136. package/components/inline-message/lib/models/inline-message-variant.d.ts +7 -0
  137. package/components/launch-tile/README.md +3 -0
  138. package/components/launch-tile/index.d.ts +3 -0
  139. package/components/launch-tile/lib/components/index.d.ts +2 -0
  140. package/components/launch-tile/lib/components/launch-tile-footer/launch-tile-footer.component.d.ts +5 -0
  141. package/components/launch-tile/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.d.ts +5 -0
  142. package/components/launch-tile/lib/launch-tile.component.d.ts +17 -0
  143. package/components/launch-tile/lib/launch-tile.module.d.ts +14 -0
  144. package/components/link/link.directive.d.ts +2 -4
  145. package/components/list/README.md +3 -0
  146. package/components/list/index.d.ts +3 -0
  147. package/components/list/lib/components/expandable-list-item/expandable-list-item.component.d.ts +14 -0
  148. package/components/list/lib/components/index.d.ts +2 -0
  149. package/components/list/lib/components/list-item/list-item.component.d.ts +12 -0
  150. package/components/list/lib/list.component.d.ts +8 -0
  151. package/components/list/lib/list.module.d.ts +10 -0
  152. package/components/loading-spinner/README.md +3 -0
  153. package/components/loading-spinner/index.d.ts +3 -0
  154. package/components/loading-spinner/lib/loading-spinner.component.d.ts +15 -0
  155. package/components/loading-spinner/lib/loading-spinner.directive.d.ts +27 -0
  156. package/components/loading-spinner/lib/loading-spinner.module.d.ts +9 -0
  157. package/components/logo/logo.directive.d.ts +1 -1
  158. package/components/logo/models/logo-size.d.ts +1 -1
  159. package/components/logo/models/logo-variant.d.ts +1 -1
  160. package/components/main-menu/lib/directives/main-menu-button.directive.d.ts +1 -1
  161. package/components/main-menu/lib/directives/main-menu-item.directive.d.ts +9 -4
  162. package/components/main-menu/lib/main-menu.component.d.ts +3 -1
  163. package/components/mainfilter-group/README.md +3 -0
  164. package/components/mainfilter-group/index.d.ts +1 -0
  165. package/components/mainfilter-group/lib/mainfilter-group.component.d.ts +6 -0
  166. package/components/menu/README.md +3 -0
  167. package/components/menu/index.d.ts +4 -0
  168. package/components/menu/lib/directives/index.d.ts +1 -0
  169. package/components/menu/lib/directives/menu-item.directive.d.ts +8 -0
  170. package/components/menu/lib/menu.component.d.ts +11 -0
  171. package/components/menu/lib/menu.directive.d.ts +17 -0
  172. package/components/menu/lib/menu.module.d.ts +10 -0
  173. package/components/modal/index.d.ts +0 -1
  174. package/components/modal/lib/components/basic-modal/basic-modal.component.d.ts +10 -0
  175. package/components/modal/lib/components/index.d.ts +2 -0
  176. package/components/modal/lib/components/modal-footer/modal-footer.component.d.ts +1 -1
  177. package/components/modal/lib/components/modal-header/modal-header.component.d.ts +2 -1
  178. package/components/modal/lib/components/modal-hero/modal-hero.component.d.ts +11 -0
  179. package/components/modal/lib/directives/modal-close.directive.d.ts +2 -2
  180. package/components/modal/lib/directives/modal-content.directive.d.ts +1 -1
  181. package/components/modal/lib/directives/modal-dismiss.directive.d.ts +1 -1
  182. package/components/modal/lib/helpers/inject-modal-ref.d.ts +1 -1
  183. package/components/modal/lib/modal.component.d.ts +11 -6
  184. package/components/modal/lib/modal.config.d.ts +2 -2
  185. package/components/modal/lib/modal.directive.d.ts +8 -4
  186. package/components/modal/lib/modal.module.d.ts +9 -12
  187. package/components/modal/lib/modal.service.d.ts +9 -6
  188. package/components/modal/lib/models/basic-modal-options.d.ts +17 -0
  189. package/components/modal/lib/models/index.d.ts +3 -0
  190. package/components/modal/lib/models/modal-hero-variant.d.ts +7 -0
  191. package/components/modal/lib/models/modal-options.d.ts +3 -1
  192. package/components/modal/lib/models/modal-ref.d.ts +9 -5
  193. package/components/modal/lib/models/modal-size.d.ts +2 -1
  194. package/components/modal/lib/models/modal-type.d.ts +1 -1
  195. package/components/modal/lib/models/modal-variant.d.ts +5 -0
  196. package/components/progress/README.md +3 -0
  197. package/components/progress/index.d.ts +1 -0
  198. package/components/progress/lib/progress.component.d.ts +14 -0
  199. package/components/radio-group/lib/components/radio-button/radio-button.component.d.ts +2 -2
  200. package/components/radio-group/lib/radio-group.component.d.ts +1 -1
  201. package/components/rail-navigation/README.md +3 -0
  202. package/components/rail-navigation/index.d.ts +3 -0
  203. package/components/rail-navigation/lib/components/rail-navigation-item.component.d.ts +13 -0
  204. package/components/rail-navigation/lib/rail-navigation.component.d.ts +14 -0
  205. package/components/rail-navigation/lib/rail-navigation.module.d.ts +9 -0
  206. package/components/select/README.md +3 -0
  207. package/components/select/index.d.ts +7 -0
  208. package/components/select/lib/abstract/index.d.ts +2 -0
  209. package/components/select/lib/abstract/select-control-option.d.ts +9 -0
  210. package/components/select/lib/abstract/select-control.d.ts +12 -0
  211. package/components/select/lib/components/index.d.ts +1 -0
  212. package/components/select/lib/components/option/option.component.d.ts +27 -0
  213. package/components/select/lib/directives/index.d.ts +1 -0
  214. package/components/select/lib/directives/select-search-field.directive.d.ts +13 -0
  215. package/components/select/lib/pipes/index.d.ts +1 -0
  216. package/components/select/lib/pipes/select-search-filter.pipe.d.ts +13 -0
  217. package/components/select/lib/select.component.d.ts +53 -0
  218. package/components/select/lib/select.module.d.ts +11 -0
  219. package/components/select/lib/select.tokens.d.ts +3 -0
  220. package/components/slider/README.md +3 -0
  221. package/components/slider/index.d.ts +1 -0
  222. package/components/slider/lib/slider.directive.d.ts +12 -0
  223. package/components/spinbox/README.md +3 -0
  224. package/components/spinbox/index.d.ts +1 -0
  225. package/components/spinbox/lib/spinbox.component.d.ts +25 -0
  226. package/components/switch/index.d.ts +2 -0
  227. package/components/switch/lib/switch.component.d.ts +2 -1
  228. package/components/switch/lib/switch.module.d.ts +9 -0
  229. package/components/switch/lib/switch.validator.d.ts +6 -0
  230. package/components/tab-bar/README.md +3 -0
  231. package/components/tab-bar/index.d.ts +4 -0
  232. package/components/tab-bar/lib/components/index.d.ts +1 -0
  233. package/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.d.ts +23 -0
  234. package/components/tab-bar/lib/models/index.d.ts +1 -0
  235. package/components/tab-bar/lib/models/tab-change-event.d.ts +5 -0
  236. package/components/tab-bar/lib/tab-bar.component.d.ts +31 -0
  237. package/components/tab-bar/lib/tab-bar.config.d.ts +3 -0
  238. package/components/tab-bar/lib/tab-bar.module.d.ts +9 -0
  239. package/components/toast/README.md +3 -0
  240. package/components/toast/index.d.ts +5 -0
  241. package/components/toast/lib/components/index.d.ts +2 -0
  242. package/components/toast/lib/components/toast-container/toast-container.component.d.ts +23 -0
  243. package/components/toast/lib/components/toast-item/toast-item.component.d.ts +20 -0
  244. package/components/toast/lib/models/index.d.ts +5 -0
  245. package/components/toast/lib/models/toast-action.d.ts +7 -0
  246. package/components/toast/lib/models/toast-ref.d.ts +7 -0
  247. package/components/toast/lib/models/toast-variant.d.ts +7 -0
  248. package/components/toast/lib/models/toast.d.ts +10 -0
  249. package/components/toast/lib/models/toast.options.d.ts +4 -0
  250. package/components/toast/lib/toast.config.d.ts +3 -0
  251. package/components/toast/lib/toast.module.d.ts +9 -0
  252. package/components/toast/lib/toast.service.d.ts +16 -0
  253. package/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.d.ts +5 -2
  254. package/components/toggle-button-group/lib/toggle-button-group.component.d.ts +11 -2
  255. package/components/tooltip/README.md +3 -0
  256. package/components/tooltip/index.d.ts +3 -0
  257. package/components/tooltip/lib/helpers/index.d.ts +1 -0
  258. package/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.d.ts +2 -0
  259. package/components/tooltip/lib/models/index.d.ts +3 -0
  260. package/components/tooltip/lib/models/tooltip-options.d.ts +10 -0
  261. package/components/tooltip/lib/models/tooltip-size.d.ts +7 -0
  262. package/components/tooltip/lib/models/tooltip-trigger.d.ts +1 -0
  263. package/components/tooltip/lib/tooltip.component.d.ts +13 -0
  264. package/components/tooltip/lib/tooltip.directive.d.ts +33 -0
  265. package/esm2020/animations/index.mjs +2 -1
  266. package/esm2020/animations/lib/expand.mjs +6 -4
  267. package/esm2020/animations/lib/fade.mjs +2 -5
  268. package/esm2020/animations/lib/wait-for-child-animations.mjs +3 -0
  269. package/esm2020/cdk/a11y/index.mjs +3 -0
  270. package/esm2020/cdk/a11y/lib/a11y.module.mjs +19 -0
  271. package/esm2020/cdk/a11y/lib/directives/index.mjs +4 -0
  272. package/esm2020/cdk/a11y/lib/directives/interactive.directive.mjs +49 -0
  273. package/esm2020/cdk/a11y/lib/directives/list-focus-manager-option.directive.mjs +26 -0
  274. package/esm2020/cdk/a11y/lib/directives/list-focus-manager.directive.mjs +40 -0
  275. package/esm2020/cdk/a11y/odx-angular-cdk-a11y.mjs +5 -0
  276. package/esm2020/cdk/active-indicator/index.mjs +3 -0
  277. package/esm2020/cdk/active-indicator/lib/active-indicator.directive.mjs +128 -0
  278. package/esm2020/cdk/active-indicator/lib/models/active-indicator-direction.mjs +5 -0
  279. package/esm2020/cdk/active-indicator/lib/models/active-indicator-position.mjs +6 -0
  280. package/esm2020/cdk/active-indicator/lib/models/index.mjs +3 -0
  281. package/esm2020/cdk/active-indicator/odx-angular-cdk-active-indicator.mjs +5 -0
  282. package/esm2020/cdk/checkbox-control/lib/checkbox-control.directive.mjs +21 -19
  283. package/esm2020/cdk/connected-overlay/index.mjs +4 -0
  284. package/esm2020/cdk/connected-overlay/lib/connected-overlay.component.mjs +116 -0
  285. package/esm2020/cdk/connected-overlay/lib/connected-overlay.service.mjs +25 -0
  286. package/esm2020/cdk/connected-overlay/lib/helpers/compute-overlay-position.mjs +55 -0
  287. package/esm2020/cdk/connected-overlay/lib/helpers/index.mjs +2 -0
  288. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-options.mjs +12 -0
  289. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-ref.mjs +15 -0
  290. package/esm2020/cdk/connected-overlay/lib/models/index.mjs +3 -0
  291. package/esm2020/cdk/connected-overlay/odx-angular-cdk-connected-overlay.mjs +5 -0
  292. package/esm2020/cdk/custom-form-control/lib/control.directive.mjs +3 -3
  293. package/esm2020/cdk/custom-form-control/lib/custom-form-control.mjs +35 -59
  294. package/esm2020/cdk/dynamic-view/lib/dynamic-view.component.mjs +23 -14
  295. package/esm2020/cdk/dynamic-view/lib/dynamic-view.directive.mjs +24 -10
  296. package/esm2020/cdk/dynamic-view/lib/dynamic-view.service.mjs +11 -9
  297. package/esm2020/cdk/dynamic-view/lib/facade/dynamic-view-ref.mjs +1 -1
  298. package/esm2020/cdk/dynamic-view/lib/helpers/create-projectable-nodes.mjs +9 -0
  299. package/esm2020/cdk/dynamic-view/lib/helpers/index.mjs +2 -1
  300. package/esm2020/cdk/dynamic-view/lib/models/dynamic-component-ref.mjs +29 -8
  301. package/esm2020/cdk/dynamic-view/lib/models/dynamic-template-ref.mjs +12 -6
  302. package/esm2020/cdk/dynamic-view/lib/models/dynamic-view-options.mjs +1 -1
  303. package/esm2020/cdk/dynamic-view/lib/tokens/dynamic-view-default-host.mjs +10 -0
  304. package/esm2020/cdk/dynamic-view/lib/tokens/index.mjs +2 -1
  305. package/esm2020/cdk/expandable/index.mjs +2 -1
  306. package/esm2020/cdk/expandable/lib/directives/expandable-item.directive.mjs +7 -8
  307. package/esm2020/cdk/expandable/lib/directives/extandable-container.directive.mjs +5 -7
  308. package/esm2020/cdk/expandable/lib/expandable.module.mjs +4 -4
  309. package/esm2020/cdk/expandable/lib/expandable.tokens.mjs +3 -0
  310. package/esm2020/cdk/expandable/lib/facade/expandable-container.mjs +2 -3
  311. package/esm2020/cdk/expandable/lib/facade/expandable-item.mjs +2 -3
  312. package/esm2020/cdk/radio-group-control/lib/radio-control.directive.mjs +12 -12
  313. package/esm2020/cdk/radio-group-control/lib/radio-group-control.directive.mjs +14 -10
  314. package/esm2020/cdk/radio-group-control/lib/radio-group-control.module.mjs +4 -4
  315. package/esm2020/components/accordion/lib/accordion.component.mjs +7 -7
  316. package/esm2020/components/accordion/lib/accordion.module.mjs +4 -4
  317. package/esm2020/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +8 -6
  318. package/esm2020/components/accordion/lib/directives/accordion-item-title.mjs +3 -3
  319. package/esm2020/components/action-group/action-group.component.mjs +5 -5
  320. package/esm2020/components/area-header/area-header.component.mjs +6 -5
  321. package/esm2020/components/area-header/area-header.module.mjs +4 -4
  322. package/esm2020/components/area-header/directives/area-header-content.directive.mjs +3 -3
  323. package/esm2020/components/area-header/directives/area-header-subtitle.directive.mjs +3 -3
  324. package/esm2020/components/avatar/lib/avatar.component.mjs +14 -8
  325. package/esm2020/components/avatar/lib/models/avatar-variant.mjs +5 -0
  326. package/esm2020/components/avatar/lib/models/index.mjs +2 -1
  327. package/esm2020/components/badge/lib/badge.component.mjs +18 -65
  328. package/esm2020/components/badge/lib/badge.directive.mjs +50 -25
  329. package/esm2020/components/badge/lib/models/index.mjs +1 -2
  330. package/esm2020/components/bar/index.mjs +6 -0
  331. package/esm2020/components/bar/lib/bar.component.mjs +21 -0
  332. package/esm2020/components/bar/lib/bar.module.mjs +20 -0
  333. package/esm2020/components/bar/lib/directives/bar-button.directive.mjs +38 -0
  334. package/esm2020/components/bar/lib/directives/bar-label.directive.mjs +24 -0
  335. package/esm2020/components/bar/lib/models/bar-button-variant.mjs +5 -0
  336. package/esm2020/components/bar/odx-angular-components-bar.mjs +5 -0
  337. package/esm2020/components/breadcrumbs/index.mjs +2 -0
  338. package/esm2020/components/breadcrumbs/lib/breadcrumbs.component.mjs +50 -0
  339. package/esm2020/components/breadcrumbs/odx-angular-components-breadcrumbs.mjs +5 -0
  340. package/esm2020/components/button/index.mjs +2 -1
  341. package/esm2020/components/button/lib/button.component.mjs +12 -18
  342. package/esm2020/components/button/lib/directives/index.mjs +2 -0
  343. package/esm2020/components/button/lib/directives/responsive-button.directive.mjs +24 -0
  344. package/esm2020/components/button-group/lib/button-group.component.mjs +3 -3
  345. package/esm2020/components/checkbox/index.mjs +3 -1
  346. package/esm2020/components/checkbox/lib/checkbox.component.mjs +8 -7
  347. package/esm2020/components/checkbox/lib/checkbox.module.mjs +19 -0
  348. package/esm2020/components/checkbox/lib/checkbox.validator.mjs +28 -0
  349. package/esm2020/components/chip/index.mjs +3 -0
  350. package/esm2020/components/chip/lib/chip.component.mjs +54 -0
  351. package/esm2020/components/chip/lib/models/chip-size.mjs +5 -0
  352. package/esm2020/components/chip/lib/models/chip-variant.mjs +7 -0
  353. package/esm2020/components/chip/lib/models/index.mjs +3 -0
  354. package/esm2020/components/chip/odx-angular-components-chip.mjs +5 -0
  355. package/esm2020/components/circular-progress/index.mjs +3 -0
  356. package/esm2020/components/circular-progress/lib/circular-progress.component.mjs +98 -0
  357. package/esm2020/components/circular-progress/lib/models/circular-progress-size.mjs +7 -0
  358. package/esm2020/components/circular-progress/lib/models/index.mjs +2 -0
  359. package/esm2020/components/circular-progress/odx-angular-components-circular-progress.mjs +5 -0
  360. package/esm2020/components/content-box/lib/content-box.component.mjs +3 -3
  361. package/esm2020/components/content-box/lib/content-box.module.mjs +4 -4
  362. package/esm2020/components/content-box/lib/directives/content-box-footer-directive.mjs +3 -3
  363. package/esm2020/components/content-box/lib/directives/content-box-header-directive.mjs +3 -3
  364. package/esm2020/components/dropdown/index.mjs +6 -0
  365. package/esm2020/components/dropdown/lib/dropdown.component.mjs +40 -0
  366. package/esm2020/components/dropdown/lib/dropdown.directive.mjs +157 -0
  367. package/esm2020/components/dropdown/lib/dropdown.module.mjs +18 -0
  368. package/esm2020/components/dropdown/lib/helpers/close-current-dropdown.mjs +5 -0
  369. package/esm2020/components/dropdown/lib/helpers/index.mjs +2 -0
  370. package/esm2020/components/dropdown/lib/models/close-dropdown-event.mjs +7 -0
  371. package/esm2020/components/dropdown/lib/models/dropdown-options.mjs +8 -0
  372. package/esm2020/components/dropdown/lib/models/index.mjs +3 -0
  373. package/esm2020/components/dropdown/odx-angular-components-dropdown.mjs +5 -0
  374. package/esm2020/components/form-field/index.mjs +2 -1
  375. package/esm2020/components/form-field/lib/components/form-field-info/form-field-info.component.mjs +3 -3
  376. package/esm2020/components/form-field/lib/components/form-group/form-group.component.mjs +11 -13
  377. package/esm2020/components/form-field/lib/directives/form-field-control.directive.mjs +22 -15
  378. package/esm2020/components/form-field/lib/directives/form-field-error.directive.mjs +3 -3
  379. package/esm2020/components/form-field/lib/directives/form-field-hint.directive.mjs +3 -3
  380. package/esm2020/components/form-field/lib/directives/form-field-label.directive.mjs +3 -3
  381. package/esm2020/components/form-field/lib/directives/form.directive.mjs +3 -3
  382. package/esm2020/components/form-field/lib/form-field.component.mjs +29 -11
  383. package/esm2020/components/form-field/lib/form-field.config.mjs +4 -4
  384. package/esm2020/components/form-field/lib/form-field.module.mjs +5 -13
  385. package/esm2020/components/form-field/lib/form-field.service.mjs +3 -3
  386. package/esm2020/components/form-field/lib/models/form-field-error.mjs +1 -1
  387. package/esm2020/components/form-field/lib/models/form-field-variant.mjs +5 -0
  388. package/esm2020/components/form-field/lib/models/index.mjs +2 -1
  389. package/esm2020/components/form-field/lib/services/form-field-error.service.mjs +16 -16
  390. package/esm2020/components/header/lib/directives/header-avatar.directive.mjs +13 -6
  391. package/esm2020/components/header/lib/directives/header-title.directive.mjs +3 -3
  392. package/esm2020/components/header/lib/header.component.mjs +5 -6
  393. package/esm2020/components/header/lib/header.module.mjs +7 -11
  394. package/esm2020/components/icon/lib/icon.component.mjs +3 -3
  395. package/esm2020/components/icon/lib/models/icon-size.mjs +2 -1
  396. package/esm2020/components/inline-message/index.mjs +3 -0
  397. package/esm2020/components/inline-message/lib/inline-message.component.mjs +42 -0
  398. package/esm2020/components/inline-message/lib/models/index.mjs +2 -0
  399. package/esm2020/components/inline-message/lib/models/inline-message-variant.mjs +7 -0
  400. package/esm2020/components/inline-message/odx-angular-components-inline-message.mjs +5 -0
  401. package/esm2020/components/launch-tile/index.mjs +4 -0
  402. package/esm2020/components/launch-tile/lib/components/index.mjs +3 -0
  403. package/esm2020/components/launch-tile/lib/components/launch-tile-footer/launch-tile-footer.component.mjs +13 -0
  404. package/esm2020/components/launch-tile/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.mjs +13 -0
  405. package/esm2020/components/launch-tile/lib/launch-tile.component.mjs +56 -0
  406. package/esm2020/components/launch-tile/lib/launch-tile.module.mjs +23 -0
  407. package/esm2020/components/launch-tile/odx-angular-components-launch-tile.mjs +5 -0
  408. package/esm2020/components/link/link.directive.mjs +7 -14
  409. package/esm2020/components/list/index.mjs +4 -0
  410. package/esm2020/components/list/lib/components/expandable-list-item/expandable-list-item.component.mjs +49 -0
  411. package/esm2020/components/list/lib/components/index.mjs +3 -0
  412. package/esm2020/components/list/lib/components/list-item/list-item.component.mjs +40 -0
  413. package/esm2020/components/list/lib/list.component.mjs +32 -0
  414. package/esm2020/components/list/lib/list.module.mjs +19 -0
  415. package/esm2020/components/list/odx-angular-components-list.mjs +5 -0
  416. package/esm2020/components/loading-spinner/index.mjs +4 -0
  417. package/esm2020/components/loading-spinner/lib/loading-spinner.component.mjs +58 -0
  418. package/esm2020/components/loading-spinner/lib/loading-spinner.directive.mjs +98 -0
  419. package/esm2020/components/loading-spinner/lib/loading-spinner.module.mjs +19 -0
  420. package/esm2020/components/loading-spinner/odx-angular-components-loading-spinner.mjs +5 -0
  421. package/esm2020/components/logo/logo.directive.mjs +8 -6
  422. package/esm2020/components/main-menu/lib/directives/main-menu-button.directive.mjs +3 -3
  423. package/esm2020/components/main-menu/lib/directives/main-menu-item.directive.mjs +30 -17
  424. package/esm2020/components/main-menu/lib/main-menu.component.mjs +12 -11
  425. package/esm2020/components/main-menu/lib/main-menu.module.mjs +4 -4
  426. package/esm2020/components/main-menu/lib/main-menu.service.mjs +3 -3
  427. package/esm2020/components/mainfilter-group/index.mjs +2 -0
  428. package/esm2020/components/mainfilter-group/lib/mainfilter-group.component.mjs +21 -0
  429. package/esm2020/components/mainfilter-group/odx-angular-components-mainfilter-group.mjs +5 -0
  430. package/esm2020/components/menu/index.mjs +5 -0
  431. package/esm2020/components/menu/lib/directives/index.mjs +2 -0
  432. package/esm2020/components/menu/lib/directives/menu-item.directive.mjs +37 -0
  433. package/esm2020/components/menu/lib/menu.component.mjs +46 -0
  434. package/esm2020/components/menu/lib/menu.directive.mjs +58 -0
  435. package/esm2020/components/menu/lib/menu.module.mjs +20 -0
  436. package/esm2020/components/menu/odx-angular-components-menu.mjs +5 -0
  437. package/esm2020/components/modal/index.mjs +1 -2
  438. package/esm2020/components/modal/lib/components/basic-modal/basic-modal.component.mjs +42 -0
  439. package/esm2020/components/modal/lib/components/index.mjs +3 -1
  440. package/esm2020/components/modal/lib/components/modal-footer/modal-footer.component.mjs +3 -3
  441. package/esm2020/components/modal/lib/components/modal-header/modal-header.component.mjs +10 -8
  442. package/esm2020/components/modal/lib/components/modal-hero/modal-hero.component.mjs +39 -0
  443. package/esm2020/components/modal/lib/directives/modal-close.directive.mjs +10 -5
  444. package/esm2020/components/modal/lib/directives/modal-content.directive.mjs +3 -3
  445. package/esm2020/components/modal/lib/directives/modal-dismiss.directive.mjs +3 -3
  446. package/esm2020/components/modal/lib/helpers/inject-modal-ref.mjs +1 -1
  447. package/esm2020/components/modal/lib/modal.component.mjs +43 -20
  448. package/esm2020/components/modal/lib/modal.config.mjs +5 -3
  449. package/esm2020/components/modal/lib/modal.directive.mjs +24 -6
  450. package/esm2020/components/modal/lib/modal.module.mjs +33 -15
  451. package/esm2020/components/modal/lib/modal.service.mjs +47 -40
  452. package/esm2020/components/modal/lib/models/basic-modal-options.mjs +2 -0
  453. package/esm2020/components/modal/lib/models/index.mjs +4 -1
  454. package/esm2020/components/modal/lib/models/modal-hero-variant.mjs +7 -0
  455. package/esm2020/components/modal/lib/models/modal-options.mjs +1 -1
  456. package/esm2020/components/modal/lib/models/modal-ref.mjs +25 -10
  457. package/esm2020/components/modal/lib/models/modal-size.mjs +2 -1
  458. package/esm2020/components/modal/lib/models/modal-variant.mjs +5 -0
  459. package/esm2020/components/progress/index.mjs +2 -0
  460. package/esm2020/components/progress/lib/progress.component.mjs +51 -0
  461. package/esm2020/components/progress/odx-angular-components-progress.mjs +5 -0
  462. package/esm2020/components/radio-group/lib/components/radio-button/radio-button.component.mjs +8 -9
  463. package/esm2020/components/radio-group/lib/radio-group.component.mjs +9 -9
  464. package/esm2020/components/radio-group/lib/radio-group.module.mjs +4 -4
  465. package/esm2020/components/rail-navigation/index.mjs +4 -0
  466. package/esm2020/components/rail-navigation/lib/components/rail-navigation-item.component.mjs +38 -0
  467. package/esm2020/components/rail-navigation/lib/rail-navigation.component.mjs +47 -0
  468. package/esm2020/components/rail-navigation/lib/rail-navigation.module.mjs +19 -0
  469. package/esm2020/components/rail-navigation/odx-angular-components-rail-navigation.mjs +5 -0
  470. package/esm2020/components/select/index.mjs +8 -0
  471. package/esm2020/components/select/lib/abstract/index.mjs +3 -0
  472. package/esm2020/components/select/lib/abstract/select-control-option.mjs +2 -0
  473. package/esm2020/components/select/lib/abstract/select-control.mjs +2 -0
  474. package/esm2020/components/select/lib/components/index.mjs +2 -0
  475. package/esm2020/components/select/lib/components/option/option.component.mjs +96 -0
  476. package/esm2020/components/select/lib/directives/index.mjs +2 -0
  477. package/esm2020/components/select/lib/directives/select-search-field.directive.mjs +47 -0
  478. package/esm2020/components/select/lib/pipes/index.mjs +2 -0
  479. package/esm2020/components/select/lib/pipes/select-search-filter.pipe.mjs +51 -0
  480. package/esm2020/components/select/lib/select.component.mjs +223 -0
  481. package/esm2020/components/select/lib/select.module.mjs +21 -0
  482. package/esm2020/components/select/lib/select.tokens.mjs +3 -0
  483. package/esm2020/components/select/odx-angular-components-select.mjs +5 -0
  484. package/esm2020/components/slider/index.mjs +2 -0
  485. package/esm2020/components/slider/lib/slider.directive.mjs +42 -0
  486. package/esm2020/components/slider/odx-angular-components-slider.mjs +5 -0
  487. package/esm2020/components/spinbox/index.mjs +2 -0
  488. package/esm2020/components/spinbox/lib/spinbox.component.mjs +91 -0
  489. package/esm2020/components/spinbox/odx-angular-components-spinbox.mjs +5 -0
  490. package/esm2020/components/switch/index.mjs +3 -1
  491. package/esm2020/components/switch/lib/switch.component.mjs +8 -7
  492. package/esm2020/components/switch/lib/switch.module.mjs +19 -0
  493. package/esm2020/components/switch/lib/switch.validator.mjs +28 -0
  494. package/esm2020/components/tab-bar/index.mjs +5 -0
  495. package/esm2020/components/tab-bar/lib/components/index.mjs +2 -0
  496. package/esm2020/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.mjs +79 -0
  497. package/esm2020/components/tab-bar/lib/models/index.mjs +2 -0
  498. package/esm2020/components/tab-bar/lib/models/tab-change-event.mjs +2 -0
  499. package/esm2020/components/tab-bar/lib/tab-bar.component.mjs +115 -0
  500. package/esm2020/components/tab-bar/lib/tab-bar.config.mjs +3 -0
  501. package/esm2020/components/tab-bar/lib/tab-bar.module.mjs +19 -0
  502. package/esm2020/components/tab-bar/odx-angular-components-tab-bar.mjs +5 -0
  503. package/esm2020/components/toast/index.mjs +6 -0
  504. package/esm2020/components/toast/lib/components/index.mjs +3 -0
  505. package/esm2020/components/toast/lib/components/toast-container/toast-container.component.mjs +87 -0
  506. package/esm2020/components/toast/lib/components/toast-item/toast-item.component.mjs +75 -0
  507. package/esm2020/components/toast/lib/models/index.mjs +6 -0
  508. package/esm2020/components/toast/lib/models/toast-action.mjs +2 -0
  509. package/esm2020/components/toast/lib/models/toast-ref.mjs +2 -0
  510. package/esm2020/components/toast/lib/models/toast-variant.mjs +7 -0
  511. package/esm2020/components/toast/lib/models/toast.mjs +2 -0
  512. package/esm2020/components/toast/lib/models/toast.options.mjs +2 -0
  513. package/esm2020/components/toast/lib/toast.config.mjs +6 -0
  514. package/esm2020/components/toast/lib/toast.module.mjs +18 -0
  515. package/esm2020/components/toast/lib/toast.service.mjs +38 -0
  516. package/esm2020/components/toast/odx-angular-components-toast.mjs +5 -0
  517. package/esm2020/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.mjs +14 -12
  518. package/esm2020/components/toggle-button-group/lib/toggle-button-group.component.mjs +41 -13
  519. package/esm2020/components/toggle-button-group/lib/toggle-button-group.module.mjs +4 -4
  520. package/esm2020/components/tooltip/index.mjs +4 -0
  521. package/esm2020/components/tooltip/lib/helpers/index.mjs +2 -0
  522. package/esm2020/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.mjs +9 -0
  523. package/esm2020/components/tooltip/lib/models/index.mjs +4 -0
  524. package/esm2020/components/tooltip/lib/models/tooltip-options.mjs +10 -0
  525. package/esm2020/components/tooltip/lib/models/tooltip-size.mjs +7 -0
  526. package/esm2020/components/tooltip/lib/models/tooltip-trigger.mjs +2 -0
  527. package/esm2020/components/tooltip/lib/tooltip.component.mjs +39 -0
  528. package/esm2020/components/tooltip/lib/tooltip.directive.mjs +132 -0
  529. package/esm2020/components/tooltip/odx-angular-components-tooltip.mjs +5 -0
  530. package/esm2020/index.mjs +2 -1
  531. package/esm2020/internal/decorators/css-component.mjs +3 -8
  532. package/esm2020/internal/decorators/css-modifier.mjs +21 -18
  533. package/esm2020/internal/helpers/decorator-property-name.mjs +4 -0
  534. package/esm2020/internal/helpers/index.mjs +2 -1
  535. package/esm2020/internal/helpers/with-mutiple-descriptors.mjs +22 -13
  536. package/esm2020/lib/controllers/controller.mjs +16 -14
  537. package/esm2020/lib/controllers/disabled.controller.mjs +29 -43
  538. package/esm2020/lib/controllers/readonly.controller.mjs +33 -23
  539. package/esm2020/lib/core.module.mjs +7 -6
  540. package/esm2020/lib/directives/click-outside.directive.mjs +17 -13
  541. package/esm2020/lib/directives/delegate-focus.directive.mjs +40 -0
  542. package/esm2020/lib/directives/index.mjs +4 -1
  543. package/esm2020/lib/directives/with-disabled-state.directive.mjs +41 -0
  544. package/esm2020/lib/directives/with-tabindex.directive.mjs +23 -0
  545. package/esm2020/lib/services/window-ref.mjs +18 -7
  546. package/esm2020/lib/tokens/identity-matcher.mjs +7 -0
  547. package/esm2020/lib/tokens/index.mjs +4 -0
  548. package/esm2020/lib/tokens/string-search-handler.mjs +9 -0
  549. package/esm2020/lib/tokens/stringify.mjs +8 -0
  550. package/esm2020/rxjs/index.mjs +4 -2
  551. package/esm2020/rxjs/lib/delay-until.mjs +5 -0
  552. package/esm2020/rxjs/lib/form-query-list.mjs +5 -0
  553. package/esm2020/rxjs/lib/from-element-resize.mjs +14 -0
  554. package/esm2020/utils/lib/decorators/index.mjs +2 -1
  555. package/esm2020/utils/lib/decorators/pure.mjs +37 -0
  556. package/esm2020/utils/lib/decorators/transform.mjs +3 -3
  557. package/esm2020/utils/lib/helpers/angular.mjs +5 -2
  558. package/esm2020/utils/lib/helpers/build-url.mjs +4 -0
  559. package/esm2020/utils/lib/helpers/defer-fn.mjs +4 -0
  560. package/esm2020/utils/lib/helpers/dom.mjs +32 -2
  561. package/esm2020/utils/lib/helpers/event-manager.mjs +30 -0
  562. package/esm2020/utils/lib/helpers/get-axis.mjs +14 -0
  563. package/esm2020/utils/lib/helpers/get-opposite-side.mjs +15 -0
  564. package/esm2020/utils/lib/helpers/get-side.mjs +4 -0
  565. package/esm2020/utils/lib/helpers/get-unique-id.mjs +7 -0
  566. package/esm2020/utils/lib/helpers/index.mjs +10 -2
  567. package/esm2020/utils/lib/helpers/provide-config.mjs +25 -0
  568. package/esm2020/utils/lib/helpers/queue.mjs +49 -0
  569. package/esm2020/utils/lib/types/axis.mjs +5 -0
  570. package/esm2020/utils/lib/types/index.mjs +4 -1
  571. package/esm2020/utils/lib/types/position.mjs +15 -0
  572. package/esm2020/utils/lib/types/side.mjs +7 -0
  573. package/fesm2015/odx-angular-animations.mjs +10 -6
  574. package/fesm2015/odx-angular-animations.mjs.map +1 -1
  575. package/fesm2015/odx-angular-cdk-a11y.mjs +131 -0
  576. package/fesm2015/odx-angular-cdk-a11y.mjs.map +1 -0
  577. package/fesm2015/odx-angular-cdk-active-indicator.mjs +145 -0
  578. package/fesm2015/odx-angular-cdk-active-indicator.mjs.map +1 -0
  579. package/fesm2015/odx-angular-cdk-checkbox-control.mjs +21 -19
  580. package/fesm2015/odx-angular-cdk-checkbox-control.mjs.map +1 -1
  581. package/fesm2015/odx-angular-cdk-connected-overlay.mjs +222 -0
  582. package/fesm2015/odx-angular-cdk-connected-overlay.mjs.map +1 -0
  583. package/fesm2015/odx-angular-cdk-custom-form-control.mjs +39 -63
  584. package/fesm2015/odx-angular-cdk-custom-form-control.mjs.map +1 -1
  585. package/fesm2015/odx-angular-cdk-dynamic-view.mjs +109 -42
  586. package/fesm2015/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  587. package/fesm2015/odx-angular-cdk-expandable.mjs +16 -22
  588. package/fesm2015/odx-angular-cdk-expandable.mjs.map +1 -1
  589. package/fesm2015/odx-angular-cdk-radio-group-control.mjs +27 -24
  590. package/fesm2015/odx-angular-cdk-radio-group-control.mjs.map +1 -1
  591. package/fesm2015/odx-angular-components-accordion.mjs +20 -18
  592. package/fesm2015/odx-angular-components-accordion.mjs.map +1 -1
  593. package/fesm2015/odx-angular-components-action-group.mjs +4 -4
  594. package/fesm2015/odx-angular-components-action-group.mjs.map +1 -1
  595. package/fesm2015/odx-angular-components-area-header.mjs +15 -14
  596. package/fesm2015/odx-angular-components-area-header.mjs.map +1 -1
  597. package/fesm2015/odx-angular-components-avatar.mjs +18 -7
  598. package/fesm2015/odx-angular-components-avatar.mjs.map +1 -1
  599. package/fesm2015/odx-angular-components-badge.mjs +63 -97
  600. package/fesm2015/odx-angular-components-badge.mjs.map +1 -1
  601. package/fesm2015/odx-angular-components-bar.mjs +95 -0
  602. package/fesm2015/odx-angular-components-bar.mjs.map +1 -0
  603. package/fesm2015/odx-angular-components-breadcrumbs.mjs +56 -0
  604. package/fesm2015/odx-angular-components-breadcrumbs.mjs.map +1 -0
  605. package/fesm2015/odx-angular-components-button-group.mjs +3 -3
  606. package/fesm2015/odx-angular-components-button.mjs +35 -20
  607. package/fesm2015/odx-angular-components-button.mjs.map +1 -1
  608. package/fesm2015/odx-angular-components-checkbox.mjs +49 -8
  609. package/fesm2015/odx-angular-components-checkbox.mjs.map +1 -1
  610. package/fesm2015/odx-angular-components-chip.mjs +71 -0
  611. package/fesm2015/odx-angular-components-chip.mjs.map +1 -0
  612. package/fesm2015/odx-angular-components-circular-progress.mjs +110 -0
  613. package/fesm2015/odx-angular-components-circular-progress.mjs.map +1 -0
  614. package/fesm2015/odx-angular-components-content-box.mjs +13 -13
  615. package/fesm2015/odx-angular-components-dropdown.mjs +223 -0
  616. package/fesm2015/odx-angular-components-dropdown.mjs.map +1 -0
  617. package/fesm2015/odx-angular-components-form-field.mjs +95 -77
  618. package/fesm2015/odx-angular-components-form-field.mjs.map +1 -1
  619. package/fesm2015/odx-angular-components-header.mjs +25 -23
  620. package/fesm2015/odx-angular-components-header.mjs.map +1 -1
  621. package/fesm2015/odx-angular-components-icon.mjs +4 -3
  622. package/fesm2015/odx-angular-components-icon.mjs.map +1 -1
  623. package/fesm2015/odx-angular-components-inline-message.mjs +54 -0
  624. package/fesm2015/odx-angular-components-inline-message.mjs.map +1 -0
  625. package/fesm2015/odx-angular-components-launch-tile.mjs +100 -0
  626. package/fesm2015/odx-angular-components-launch-tile.mjs.map +1 -0
  627. package/fesm2015/odx-angular-components-link.mjs +6 -14
  628. package/fesm2015/odx-angular-components-link.mjs.map +1 -1
  629. package/fesm2015/odx-angular-components-list.mjs +126 -0
  630. package/fesm2015/odx-angular-components-list.mjs.map +1 -0
  631. package/fesm2015/odx-angular-components-loading-spinner.mjs +171 -0
  632. package/fesm2015/odx-angular-components-loading-spinner.mjs.map +1 -0
  633. package/fesm2015/odx-angular-components-logo.mjs +7 -5
  634. package/fesm2015/odx-angular-components-logo.mjs.map +1 -1
  635. package/fesm2015/odx-angular-components-main-menu.mjs +64 -53
  636. package/fesm2015/odx-angular-components-main-menu.mjs.map +1 -1
  637. package/fesm2015/odx-angular-components-mainfilter-group.mjs +27 -0
  638. package/fesm2015/odx-angular-components-mainfilter-group.mjs.map +1 -0
  639. package/fesm2015/odx-angular-components-menu.mjs +144 -0
  640. package/fesm2015/odx-angular-components-menu.mjs.map +1 -0
  641. package/fesm2015/odx-angular-components-modal.mjs +265 -155
  642. package/fesm2015/odx-angular-components-modal.mjs.map +1 -1
  643. package/fesm2015/odx-angular-components-progress.mjs +57 -0
  644. package/fesm2015/odx-angular-components-progress.mjs.map +1 -0
  645. package/fesm2015/odx-angular-components-radio-group.mjs +18 -19
  646. package/fesm2015/odx-angular-components-radio-group.mjs.map +1 -1
  647. package/fesm2015/odx-angular-components-rail-navigation.mjs +97 -0
  648. package/fesm2015/odx-angular-components-rail-navigation.mjs.map +1 -0
  649. package/fesm2015/odx-angular-components-select.mjs +420 -0
  650. package/fesm2015/odx-angular-components-select.mjs.map +1 -0
  651. package/fesm2015/odx-angular-components-slider.mjs +48 -0
  652. package/fesm2015/odx-angular-components-slider.mjs.map +1 -0
  653. package/fesm2015/odx-angular-components-spinbox.mjs +100 -0
  654. package/fesm2015/odx-angular-components-spinbox.mjs.map +1 -0
  655. package/fesm2015/odx-angular-components-switch.mjs +49 -8
  656. package/fesm2015/odx-angular-components-switch.mjs.map +1 -1
  657. package/fesm2015/odx-angular-components-tab-bar.mjs +209 -0
  658. package/fesm2015/odx-angular-components-tab-bar.mjs.map +1 -0
  659. package/fesm2015/odx-angular-components-toast.mjs +216 -0
  660. package/fesm2015/odx-angular-components-toast.mjs.map +1 -0
  661. package/fesm2015/odx-angular-components-toggle-button-group.mjs +58 -26
  662. package/fesm2015/odx-angular-components-toggle-button-group.mjs.map +1 -1
  663. package/fesm2015/odx-angular-components-tooltip.mjs +187 -0
  664. package/fesm2015/odx-angular-components-tooltip.mjs.map +1 -0
  665. package/fesm2015/odx-angular-internal.mjs +63 -54
  666. package/fesm2015/odx-angular-internal.mjs.map +1 -1
  667. package/fesm2015/odx-angular-rxjs.mjs +23 -6
  668. package/fesm2015/odx-angular-rxjs.mjs.map +1 -1
  669. package/fesm2015/odx-angular-utils.mjs +242 -15
  670. package/fesm2015/odx-angular-utils.mjs.map +1 -1
  671. package/fesm2015/odx-angular.mjs +231 -98
  672. package/fesm2015/odx-angular.mjs.map +1 -1
  673. package/fesm2020/odx-angular-animations.mjs +10 -9
  674. package/fesm2020/odx-angular-animations.mjs.map +1 -1
  675. package/fesm2020/odx-angular-cdk-a11y.mjs +127 -0
  676. package/fesm2020/odx-angular-cdk-a11y.mjs.map +1 -0
  677. package/fesm2020/odx-angular-cdk-active-indicator.mjs +143 -0
  678. package/fesm2020/odx-angular-cdk-active-indicator.mjs.map +1 -0
  679. package/fesm2020/odx-angular-cdk-checkbox-control.mjs +21 -19
  680. package/fesm2020/odx-angular-cdk-checkbox-control.mjs.map +1 -1
  681. package/fesm2020/odx-angular-cdk-connected-overlay.mjs +218 -0
  682. package/fesm2020/odx-angular-cdk-connected-overlay.mjs.map +1 -0
  683. package/fesm2020/odx-angular-cdk-custom-form-control.mjs +37 -61
  684. package/fesm2020/odx-angular-cdk-custom-form-control.mjs.map +1 -1
  685. package/fesm2020/odx-angular-cdk-dynamic-view.mjs +102 -37
  686. package/fesm2020/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  687. package/fesm2020/odx-angular-cdk-expandable.mjs +16 -22
  688. package/fesm2020/odx-angular-cdk-expandable.mjs.map +1 -1
  689. package/fesm2020/odx-angular-cdk-radio-group-control.mjs +27 -24
  690. package/fesm2020/odx-angular-cdk-radio-group-control.mjs.map +1 -1
  691. package/fesm2020/odx-angular-components-accordion.mjs +20 -18
  692. package/fesm2020/odx-angular-components-accordion.mjs.map +1 -1
  693. package/fesm2020/odx-angular-components-action-group.mjs +4 -4
  694. package/fesm2020/odx-angular-components-action-group.mjs.map +1 -1
  695. package/fesm2020/odx-angular-components-area-header.mjs +15 -14
  696. package/fesm2020/odx-angular-components-area-header.mjs.map +1 -1
  697. package/fesm2020/odx-angular-components-avatar.mjs +18 -7
  698. package/fesm2020/odx-angular-components-avatar.mjs.map +1 -1
  699. package/fesm2020/odx-angular-components-badge.mjs +60 -90
  700. package/fesm2020/odx-angular-components-badge.mjs.map +1 -1
  701. package/fesm2020/odx-angular-components-bar.mjs +95 -0
  702. package/fesm2020/odx-angular-components-bar.mjs.map +1 -0
  703. package/fesm2020/odx-angular-components-breadcrumbs.mjs +56 -0
  704. package/fesm2020/odx-angular-components-breadcrumbs.mjs.map +1 -0
  705. package/fesm2020/odx-angular-components-button-group.mjs +3 -3
  706. package/fesm2020/odx-angular-components-button.mjs +35 -19
  707. package/fesm2020/odx-angular-components-button.mjs.map +1 -1
  708. package/fesm2020/odx-angular-components-checkbox.mjs +49 -8
  709. package/fesm2020/odx-angular-components-checkbox.mjs.map +1 -1
  710. package/fesm2020/odx-angular-components-chip.mjs +71 -0
  711. package/fesm2020/odx-angular-components-chip.mjs.map +1 -0
  712. package/fesm2020/odx-angular-components-circular-progress.mjs +110 -0
  713. package/fesm2020/odx-angular-components-circular-progress.mjs.map +1 -0
  714. package/fesm2020/odx-angular-components-content-box.mjs +13 -13
  715. package/fesm2020/odx-angular-components-dropdown.mjs +226 -0
  716. package/fesm2020/odx-angular-components-dropdown.mjs.map +1 -0
  717. package/fesm2020/odx-angular-components-form-field.mjs +94 -77
  718. package/fesm2020/odx-angular-components-form-field.mjs.map +1 -1
  719. package/fesm2020/odx-angular-components-header.mjs +25 -23
  720. package/fesm2020/odx-angular-components-header.mjs.map +1 -1
  721. package/fesm2020/odx-angular-components-icon.mjs +4 -3
  722. package/fesm2020/odx-angular-components-icon.mjs.map +1 -1
  723. package/fesm2020/odx-angular-components-inline-message.mjs +54 -0
  724. package/fesm2020/odx-angular-components-inline-message.mjs.map +1 -0
  725. package/fesm2020/odx-angular-components-launch-tile.mjs +99 -0
  726. package/fesm2020/odx-angular-components-launch-tile.mjs.map +1 -0
  727. package/fesm2020/odx-angular-components-link.mjs +6 -13
  728. package/fesm2020/odx-angular-components-link.mjs.map +1 -1
  729. package/fesm2020/odx-angular-components-list.mjs +125 -0
  730. package/fesm2020/odx-angular-components-list.mjs.map +1 -0
  731. package/fesm2020/odx-angular-components-loading-spinner.mjs +169 -0
  732. package/fesm2020/odx-angular-components-loading-spinner.mjs.map +1 -0
  733. package/fesm2020/odx-angular-components-logo.mjs +7 -5
  734. package/fesm2020/odx-angular-components-logo.mjs.map +1 -1
  735. package/fesm2020/odx-angular-components-main-menu.mjs +63 -52
  736. package/fesm2020/odx-angular-components-main-menu.mjs.map +1 -1
  737. package/fesm2020/odx-angular-components-mainfilter-group.mjs +27 -0
  738. package/fesm2020/odx-angular-components-mainfilter-group.mjs.map +1 -0
  739. package/fesm2020/odx-angular-components-menu.mjs +146 -0
  740. package/fesm2020/odx-angular-components-menu.mjs.map +1 -0
  741. package/fesm2020/odx-angular-components-modal.mjs +268 -152
  742. package/fesm2020/odx-angular-components-modal.mjs.map +1 -1
  743. package/fesm2020/odx-angular-components-progress.mjs +57 -0
  744. package/fesm2020/odx-angular-components-progress.mjs.map +1 -0
  745. package/fesm2020/odx-angular-components-radio-group.mjs +18 -19
  746. package/fesm2020/odx-angular-components-radio-group.mjs.map +1 -1
  747. package/fesm2020/odx-angular-components-rail-navigation.mjs +97 -0
  748. package/fesm2020/odx-angular-components-rail-navigation.mjs.map +1 -0
  749. package/fesm2020/odx-angular-components-select.mjs +413 -0
  750. package/fesm2020/odx-angular-components-select.mjs.map +1 -0
  751. package/fesm2020/odx-angular-components-slider.mjs +48 -0
  752. package/fesm2020/odx-angular-components-slider.mjs.map +1 -0
  753. package/fesm2020/odx-angular-components-spinbox.mjs +97 -0
  754. package/fesm2020/odx-angular-components-spinbox.mjs.map +1 -0
  755. package/fesm2020/odx-angular-components-switch.mjs +49 -8
  756. package/fesm2020/odx-angular-components-switch.mjs.map +1 -1
  757. package/fesm2020/odx-angular-components-tab-bar.mjs +203 -0
  758. package/fesm2020/odx-angular-components-tab-bar.mjs.map +1 -0
  759. package/fesm2020/odx-angular-components-toast.mjs +215 -0
  760. package/fesm2020/odx-angular-components-toast.mjs.map +1 -0
  761. package/fesm2020/odx-angular-components-toggle-button-group.mjs +55 -26
  762. package/fesm2020/odx-angular-components-toggle-button-group.mjs.map +1 -1
  763. package/fesm2020/odx-angular-components-tooltip.mjs +192 -0
  764. package/fesm2020/odx-angular-components-tooltip.mjs.map +1 -0
  765. package/fesm2020/odx-angular-internal.mjs +61 -52
  766. package/fesm2020/odx-angular-internal.mjs.map +1 -1
  767. package/fesm2020/odx-angular-rxjs.mjs +23 -6
  768. package/fesm2020/odx-angular-rxjs.mjs.map +1 -1
  769. package/fesm2020/odx-angular-utils.mjs +236 -15
  770. package/fesm2020/odx-angular-utils.mjs.map +1 -1
  771. package/fesm2020/odx-angular.mjs +225 -95
  772. package/fesm2020/odx-angular.mjs.map +1 -1
  773. package/index.d.ts +1 -0
  774. package/internal/decorators/css-component.d.ts +1 -2
  775. package/internal/decorators/css-modifier.d.ts +0 -1
  776. package/internal/helpers/decorator-property-name.d.ts +1 -0
  777. package/internal/helpers/index.d.ts +1 -0
  778. package/internal/helpers/with-mutiple-descriptors.d.ts +1 -1
  779. package/lib/controllers/controller.d.ts +2 -3
  780. package/lib/controllers/disabled.controller.d.ts +5 -7
  781. package/lib/controllers/readonly.controller.d.ts +5 -2
  782. package/lib/core.module.d.ts +2 -1
  783. package/lib/directives/click-outside.directive.d.ts +3 -4
  784. package/lib/directives/delegate-focus.directive.d.ts +11 -0
  785. package/lib/directives/index.d.ts +3 -0
  786. package/lib/directives/with-disabled-state.directive.d.ts +13 -0
  787. package/lib/directives/with-tabindex.directive.d.ts +7 -0
  788. package/lib/services/window-ref.d.ts +5 -0
  789. package/lib/tokens/identity-matcher.d.ts +3 -0
  790. package/lib/tokens/index.d.ts +3 -0
  791. package/lib/tokens/string-search-handler.d.ts +3 -0
  792. package/lib/tokens/stringify.d.ts +3 -0
  793. package/package.json +189 -12
  794. package/rxjs/index.d.ts +3 -1
  795. package/rxjs/lib/delay-until.d.ts +2 -0
  796. package/rxjs/lib/form-query-list.d.ts +3 -0
  797. package/rxjs/lib/from-element-resize.d.ts +2 -0
  798. package/utils/lib/decorators/index.d.ts +1 -0
  799. package/utils/lib/decorators/pure.d.ts +1 -0
  800. package/utils/lib/decorators/transform.d.ts +2 -2
  801. package/utils/lib/helpers/angular.d.ts +2 -1
  802. package/utils/lib/helpers/build-url.d.ts +1 -0
  803. package/utils/lib/helpers/defer-fn.d.ts +1 -0
  804. package/utils/lib/helpers/dom.d.ts +6 -1
  805. package/utils/lib/helpers/event-manager.d.ts +12 -0
  806. package/utils/lib/helpers/get-axis.d.ts +2 -0
  807. package/utils/lib/helpers/get-opposite-side.d.ts +2 -0
  808. package/utils/lib/helpers/get-side.d.ts +2 -0
  809. package/utils/lib/helpers/get-unique-id.d.ts +1 -0
  810. package/utils/lib/helpers/index.d.ts +9 -1
  811. package/utils/lib/helpers/ng-changes.d.ts +1 -1
  812. package/utils/lib/helpers/provide-config.d.ts +12 -0
  813. package/utils/lib/helpers/queue.d.ts +22 -0
  814. package/utils/lib/types/axis.d.ts +5 -0
  815. package/utils/lib/types/get-properties.d.ts +2 -2
  816. package/utils/lib/types/index.d.ts +3 -0
  817. package/utils/lib/types/position.d.ts +15 -0
  818. package/utils/lib/types/side.d.ts +7 -0
  819. package/components/badge/lib/badge.config.d.ts +0 -3
  820. package/components/badge/lib/facade/badge-host.d.ts +0 -3
  821. package/components/badge/lib/facade/index.d.ts +0 -1
  822. package/components/badge/lib/models/badge-position.d.ts +0 -5
  823. package/components/modal/lib/services/index.d.ts +0 -1
  824. package/components/modal/lib/services/open-modal-manager.service.d.ts +0 -15
  825. package/esm2020/components/badge/lib/badge.config.mjs +0 -3
  826. package/esm2020/components/badge/lib/facade/badge-host.mjs +0 -2
  827. package/esm2020/components/badge/lib/facade/index.mjs +0 -2
  828. package/esm2020/components/badge/lib/models/badge-position.mjs +0 -5
  829. package/esm2020/components/modal/lib/services/index.mjs +0 -2
  830. package/esm2020/components/modal/lib/services/open-modal-manager.service.mjs +0 -42
  831. package/esm2020/rxjs/lib/mark-for-check.mjs +0 -5
  832. package/esm2020/utils/lib/helpers/provide-module-config.mjs +0 -21
  833. package/rxjs/lib/mark-for-check.d.ts +0 -3
  834. package/utils/lib/helpers/provide-module-config.d.ts +0 -12
@@ -0,0 +1,39 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
3
+ import { CoreModule, detectControllerChanges } from '@odx/angular';
4
+ import { ActionGroupComponent } from '@odx/angular/components/action-group';
5
+ import { ButtonComponent } from '@odx/angular/components/button';
6
+ import { IconComponent } from '@odx/angular/components/icon';
7
+ import { CSSComponent, CSSModifier } from '@odx/angular/internal';
8
+ import { injectElement } from '@odx/angular/utils';
9
+ import { ModalDismissDirective } from '../../directives';
10
+ import { injectModalRef } from '../../helpers';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@angular/common";
13
+ let ModalHeroComponent = class ModalHeroComponent {
14
+ constructor() {
15
+ this.element = injectElement();
16
+ this.modalRef = injectModalRef();
17
+ detectControllerChanges(this.modalRef).subscribe();
18
+ }
19
+ };
20
+ ModalHeroComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalHeroComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ ModalHeroComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: ModalHeroComponent, isStandalone: true, selector: "odx-modal-hero", inputs: { icon: "icon", variant: "variant" }, ngImport: i0, template: "<odx-icon class=\"odx-modal-hero__icon\" [name]=\"icon\" size=\"xlarge\" *ngIf=\"icon\"> </odx-icon>\n\n<div class=\"odx-modal-hero__title odx-title-4\">\n <ng-content></ng-content>\n</div>\n\n<odx-action-group class=\"odx-modal-hero__dismiss\" *ngIf=\"modalRef.options.dismissable\">\n <button odxButton odxModalDismiss>\n <odx-icon name=\"close\"></odx-icon>\n </button>\n</odx-action-group>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }, { kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "directive", type: ModalDismissDirective, selector: "[odxModalDismiss]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
22
+ __decorate([
23
+ CSSModifier(),
24
+ __metadata("design:type", Object)
25
+ ], ModalHeroComponent.prototype, "variant", void 0);
26
+ ModalHeroComponent = __decorate([
27
+ CSSComponent('modal-hero'),
28
+ __metadata("design:paramtypes", [])
29
+ ], ModalHeroComponent);
30
+ export { ModalHeroComponent };
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalHeroComponent, decorators: [{
32
+ type: Component,
33
+ args: [{ selector: 'odx-modal-hero', standalone: true, imports: [CoreModule, ActionGroupComponent, ButtonComponent, IconComponent, ModalDismissDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<odx-icon class=\"odx-modal-hero__icon\" [name]=\"icon\" size=\"xlarge\" *ngIf=\"icon\"> </odx-icon>\n\n<div class=\"odx-modal-hero__title odx-title-4\">\n <ng-content></ng-content>\n</div>\n\n<odx-action-group class=\"odx-modal-hero__dismiss\" *ngIf=\"modalRef.options.dismissable\">\n <button odxButton odxModalDismiss>\n <odx-icon name=\"close\"></odx-icon>\n </button>\n</odx-action-group>\n" }]
34
+ }], ctorParameters: function () { return []; }, propDecorators: { icon: [{
35
+ type: Input
36
+ }], variant: [{
37
+ type: Input
38
+ }] } });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaGVyby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9tb2RhbC9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwtaGVyby9tb2RhbC1oZXJvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL21vZGFsL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC1oZXJvL21vZGFsLWhlcm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdGLE9BQU8sRUFBRSxVQUFVLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFZeEMsSUFBTSxrQkFBa0IsR0FBeEIsTUFBTSxrQkFBa0I7SUFXN0I7UUFWZ0IsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBQzFCLGFBQVEsR0FBRyxjQUFjLEVBQUUsQ0FBQztRQVUxQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckQsQ0FBQzs7K0dBYlUsa0JBQWtCO21HQUFsQixrQkFBa0Isd0hDcEIvQixtWkFXQSwyQ0RJWSxVQUFVLG1JQUFFLG9CQUFvQixrRkFBRSxlQUFlLHlHQUFFLGFBQWEseUZBQUUscUJBQXFCO0FBWWpHO0lBQUMsV0FBVyxFQUFFOzttREFFMkI7QUFUOUIsa0JBQWtCO0lBVDlCLFlBQVksQ0FBQyxZQUFZLENBQUM7O0dBU2Qsa0JBQWtCLENBYzlCO1NBZFksa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQLENBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUscUJBQXFCLENBQUMsaUJBRW5GLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07MEVBT3hDLElBQUk7c0JBRFYsS0FBSztnQkFLQyxPQUFPO3NCQURiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUsIGRldGVjdENvbnRyb2xsZXJDaGFuZ2VzIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYWN0aW9uLWdyb3VwJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQsIENTU01vZGlmaWVyIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgTW9kYWxEaXNtaXNzRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBpbmplY3RNb2RhbFJlZiB9IGZyb20gJy4uLy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgTW9kYWxIZXJvVmFyaWFudCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbkBDU1NDb21wb25lbnQoJ21vZGFsLWhlcm8nKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LW1vZGFsLWhlcm8nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgQWN0aW9uR3JvdXBDb21wb25lbnQsIEJ1dHRvbkNvbXBvbmVudCwgSWNvbkNvbXBvbmVudCwgTW9kYWxEaXNtaXNzRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLWhlcm8uY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxIZXJvQ29tcG9uZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG4gIHB1YmxpYyByZWFkb25seSBtb2RhbFJlZiA9IGluamVjdE1vZGFsUmVmKCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb24/OiBzdHJpbmcgfCBudWxsO1xuXG4gIEBDU1NNb2RpZmllcigpXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB2YXJpYW50PzogTW9kYWxIZXJvVmFyaWFudCB8IG51bGw7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZGV0ZWN0Q29udHJvbGxlckNoYW5nZXModGhpcy5tb2RhbFJlZikuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjxvZHgtaWNvbiBjbGFzcz1cIm9keC1tb2RhbC1oZXJvX19pY29uXCIgW25hbWVdPVwiaWNvblwiIHNpemU9XCJ4bGFyZ2VcIiAqbmdJZj1cImljb25cIj4gPC9vZHgtaWNvbj5cblxuPGRpdiBjbGFzcz1cIm9keC1tb2RhbC1oZXJvX190aXRsZSBvZHgtdGl0bGUtNFwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPG9keC1hY3Rpb24tZ3JvdXAgY2xhc3M9XCJvZHgtbW9kYWwtaGVyb19fZGlzbWlzc1wiICpuZ0lmPVwibW9kYWxSZWYub3B0aW9ucy5kaXNtaXNzYWJsZVwiPlxuICA8YnV0dG9uIG9keEJ1dHRvbiBvZHhNb2RhbERpc21pc3M+XG4gICAgPG9keC1pY29uIG5hbWU9XCJjbG9zZVwiPjwvb2R4LWljb24+XG4gIDwvYnV0dG9uPlxuPC9vZHgtYWN0aW9uLWdyb3VwPlxuIl19
@@ -8,12 +8,17 @@ export class ModalCloseDirective {
8
8
  }
9
9
  onClick() {
10
10
  const result = this.result === '' ? null : this.result;
11
- this.modalRef.close(result ?? null);
11
+ if (result === undefined) {
12
+ this.modalRef.dismiss();
13
+ }
14
+ else {
15
+ this.modalRef.close(result ?? null);
16
+ }
12
17
  }
13
18
  }
14
- ModalCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
15
- ModalCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ModalCloseDirective, isStandalone: true, selector: "[odxModalClose]", inputs: { result: ["odxModalClose", "result"] }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalCloseDirective, decorators: [{
19
+ ModalCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
20
+ ModalCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.4", type: ModalCloseDirective, isStandalone: true, selector: "[odxModalClose]", inputs: { result: ["odxModalClose", "result"] }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalCloseDirective, decorators: [{
17
22
  type: Directive,
18
23
  args: [{
19
24
  standalone: true,
@@ -26,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
26
31
  type: HostListener,
27
32
  args: ['click']
28
33
  }] } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9kaXJlY3RpdmVzL21vZGFsLWNsb3NlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFNNUMsTUFBTSxPQUFPLG1CQUFtQjtJQUpoQztRQUttQixhQUFRLEdBQUcsY0FBYyxFQUFFLENBQUM7UUFHdEMsV0FBTSxHQUFhLElBQUksQ0FBQztLQVFoQztJQUxRLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBRXZELElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDOztnSEFYVSxtQkFBbUI7b0dBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsaUJBQWlCO2lCQUM1Qjs4QkFLUSxNQUFNO3NCQURaLEtBQUs7dUJBQUMsZUFBZTtnQkFJZixPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0TW9kYWxSZWYgfSBmcm9tICcuLi9oZWxwZXJzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW29keE1vZGFsQ2xvc2VdJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDbG9zZURpcmVjdGl2ZTxUID0gdW5rbm93bj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IG1vZGFsUmVmID0gaW5qZWN0TW9kYWxSZWYoKTtcblxuICBASW5wdXQoJ29keE1vZGFsQ2xvc2UnKVxuICBwdWJsaWMgcmVzdWx0OiBUIHwgbnVsbCA9IG51bGw7XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnJlc3VsdCA9PT0gJycgPyBudWxsIDogdGhpcy5yZXN1bHQ7XG5cbiAgICB0aGlzLm1vZGFsUmVmLmNsb3NlKHJlc3VsdCA/PyBudWxsKTtcbiAgfVxufVxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY2xvc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9kaXJlY3RpdmVzL21vZGFsLWNsb3NlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFNNUMsTUFBTSxPQUFPLG1CQUFtQjtJQUpoQztRQUttQixhQUFRLEdBQUcsY0FBYyxFQUFFLENBQUM7UUFHdEMsV0FBTSxHQUFjLElBQUksQ0FBQztLQVlqQztJQVRRLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBRXZELElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ3pCO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLENBQUM7U0FDckM7SUFDSCxDQUFDOztnSEFmVSxtQkFBbUI7b0dBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsaUJBQWlCO2lCQUM1Qjs4QkFLUSxNQUFNO3NCQURaLEtBQUs7dUJBQUMsZUFBZTtnQkFJZixPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0TW9kYWxSZWYgfSBmcm9tICcuLi9oZWxwZXJzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW29keE1vZGFsQ2xvc2VdJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDbG9zZURpcmVjdGl2ZTxUID0gdW5rbm93bj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IG1vZGFsUmVmID0gaW5qZWN0TW9kYWxSZWYoKTtcblxuICBASW5wdXQoJ29keE1vZGFsQ2xvc2UnKVxuICBwdWJsaWMgcmVzdWx0PzogVCB8IG51bGwgPSBudWxsO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5yZXN1bHQgPT09ICcnID8gbnVsbCA6IHRoaXMucmVzdWx0O1xuXG4gICAgaWYgKHJlc3VsdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLm1vZGFsUmVmLmRpc21pc3MoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb2RhbFJlZi5jbG9zZShyZXN1bHQgPz8gbnVsbCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -8,13 +8,13 @@ let ModalContentDirective = class ModalContentDirective {
8
8
  this.element = injectElement();
9
9
  }
10
10
  };
11
- ModalContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
- ModalContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ModalContentDirective, isStandalone: true, selector: "odx-modal-content", ngImport: i0 });
11
+ ModalContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
+ ModalContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.4", type: ModalContentDirective, isStandalone: true, selector: "odx-modal-content", ngImport: i0 });
13
13
  ModalContentDirective = __decorate([
14
14
  CSSComponent('modal__content')
15
15
  ], ModalContentDirective);
16
16
  export { ModalContentDirective };
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalContentDirective, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalContentDirective, decorators: [{
18
18
  type: Directive,
19
19
  args: [{
20
20
  standalone: true,
@@ -9,9 +9,9 @@ export class ModalDismissDirective {
9
9
  this.modalRef.dismiss();
10
10
  }
11
11
  }
12
- ModalDismissDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalDismissDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13
- ModalDismissDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ModalDismissDirective, isStandalone: true, selector: "[odxModalDismiss]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalDismissDirective, decorators: [{
12
+ ModalDismissDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalDismissDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13
+ ModalDismissDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.4", type: ModalDismissDirective, isStandalone: true, selector: "[odxModalDismiss]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalDismissDirective, decorators: [{
15
15
  type: Directive,
16
16
  args: [{
17
17
  standalone: true,
@@ -3,4 +3,4 @@ import { ModalRef } from '../models';
3
3
  export function injectModalRef() {
4
4
  return inject((ModalRef));
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW1vZGFsLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL21vZGFsL3NyYy9saWIvaGVscGVycy9pbmplY3QtbW9kYWwtcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyQyxNQUFNLFVBQVUsY0FBYztJQUM1QixPQUFPLE1BQU0sQ0FBQyxDQUFBLFFBQVcsQ0FBQSxDQUFDLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kYWxSZWYgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0TW9kYWxSZWY8VD4oKTogTW9kYWxSZWY8VD4ge1xuICByZXR1cm4gaW5qZWN0KE1vZGFsUmVmPFQ+KTtcbn1cbiJdfQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW1vZGFsLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL21vZGFsL3NyYy9saWIvaGVscGVycy9pbmplY3QtbW9kYWwtcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyQyxNQUFNLFVBQVUsY0FBYztJQUM1QixPQUFPLE1BQU0sQ0FBQyxDQUFBLFFBQXNCLENBQUEsQ0FBQyxDQUFDO0FBQ3hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vZGFsUmVmIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdE1vZGFsUmVmPERhdGEsIFJlc3VsdCA9IHVua25vd24+KCk6IE1vZGFsUmVmPERhdGEsIFJlc3VsdD4ge1xuICByZXR1cm4gaW5qZWN0KE1vZGFsUmVmPERhdGEsIFJlc3VsdD4pO1xufVxuIl19
@@ -1,26 +1,36 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { group, query, transition, trigger, useAnimation } from '@angular/animations';
3
- import { A11yModule } from '@angular/cdk/a11y';
4
- import { ChangeDetectionStrategy, Component, HostListener, inject, Injector, Input, ViewEncapsulation } from '@angular/core';
5
- import { CoreModule } from '@odx/angular';
6
- import { fadeIn, fadeOut, slideInY, slideOutY } from '@odx/angular/animations';
3
+ import { ChangeDetectionStrategy, Component, HostListener, Input, ViewEncapsulation } from '@angular/core';
4
+ import { CoreModule, detectControllerChanges } from '@odx/angular';
5
+ import { fadeIn, fadeOut, slideInRight, slideInY, slideOutRight, slideOutY } from '@odx/angular/animations';
6
+ import { A11yModule } from '@odx/angular/cdk/a11y';
7
7
  import { DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';
8
8
  import { ActionGroupComponent } from '@odx/angular/components/action-group';
9
9
  import { ButtonComponent } from '@odx/angular/components/button';
10
10
  import { IconComponent } from '@odx/angular/components/icon';
11
11
  import { CSSComponent, CSSModifier } from '@odx/angular/internal';
12
- import { injectElement } from '@odx/angular/utils';
12
+ import { getInjector, hasChanged, injectElement, isTemplateRef } from '@odx/angular/utils';
13
13
  import { injectModalRef } from './helpers';
14
14
  import * as i0 from "@angular/core";
15
- import * as i1 from "@angular/cdk/a11y";
16
- import * as i2 from "@odx/angular";
15
+ import * as i1 from "@odx/angular";
16
+ import * as i2 from "@angular/cdk/a11y";
17
17
  let ModalComponent = class ModalComponent {
18
18
  constructor() {
19
19
  this.modalRef = injectModalRef();
20
- this.injector = inject(Injector);
20
+ this.injector = getInjector();
21
21
  this.context = { $implicit: this.modalRef };
22
22
  this.element = injectElement();
23
23
  this.size = this.modalRef.options.size;
24
+ this.variant = this.modalRef.options.variant;
25
+ this.withComponent = false;
26
+ detectControllerChanges(this.modalRef).subscribe(() => {
27
+ this.size = this.modalRef.options.size;
28
+ });
29
+ }
30
+ ngOnChanges(changes) {
31
+ if (hasChanged(changes, 'content', false)) {
32
+ this.withComponent = !isTemplateRef(this.content);
33
+ }
24
34
  }
25
35
  onClose() {
26
36
  if (this.modalRef.options.dismissable) {
@@ -28,36 +38,49 @@ let ModalComponent = class ModalComponent {
28
38
  }
29
39
  }
30
40
  };
31
- ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: ModalComponent, isStandalone: true, selector: "odx-modal", inputs: { content: "content" }, host: { listeners: { "keyup.esc": "onClose()" }, properties: { "@hostAnimation": "true", "attr.id": "modalRef.options.id" } }, ngImport: i0, template: "<div\n cdkTrapFocus\n cdkTrapFocusAutoCapture\n [odxClickOutsideActive]=\"modalRef.options.dismissable\"\n [attr.aria-labelledby]=\"modalRef.modalTitleId\"\n class=\"odx-modal__container\"\n role=\"dialog\"\n (odxClickOutside)=\"modalRef.dismiss()\"\n>\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewContext]=\"context\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i2.ClickOutsideDirective, selector: "[odxClickOutside]", inputs: ["odxClickOutsideActive"], outputs: ["odxClickOutside"] }, { kind: "directive", type: DynamicViewDirective, selector: "[odxDynamicView]", inputs: ["odxDynamicView", "odxDynamicViewInjector", "odxDynamicViewContext"] }], animations: [
41
+ ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
42
+ ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.4", type: ModalComponent, isStandalone: true, selector: "odx-modal", inputs: { content: "content" }, host: { listeners: { "keyup.esc": "onClose()" }, properties: { "@hostAnimation": "variant", "attr.id": "modalRef.options.id" } }, usesOnChanges: true, ngImport: i0, template: "<div\n [cdkTrapFocus]=\"modalRef.isActive()\"\n [cdkTrapFocusAutoCapture]=\"modalRef.isActive()\"\n [odxClickOutsideActive]=\"modalRef.options.dismissable\"\n [attr.aria-labelledby]=\"modalRef.modalTitleId\"\n class=\"odx-modal__container\"\n role=\"dialog\"\n (odxClickOutside)=\"modalRef.dismiss()\"\n>\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewContext]=\"withComponent ? {} : context\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.ClickOutsideDirective, selector: "[odxClickOutside]", inputs: ["odxClickOutsideActive"], outputs: ["odxClickOutside"] }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "ngmodule", type: CoreModule }, { kind: "directive", type: DynamicViewDirective, selector: "ng-template[odxDynamicView]", inputs: ["odxDynamicView", "odxDynamicViewInjector", "odxDynamicViewContext"] }], animations: [
33
43
  trigger('hostAnimation', [
34
- transition(':enter', group([useAnimation(fadeIn()), query('.odx-modal__container', useAnimation(slideInY('8px')))])),
35
- transition(':leave', group([useAnimation(fadeOut()), query('.odx-modal__container', useAnimation(slideOutY('8px')))])),
44
+ transition('void => default', group([useAnimation(fadeIn()), query('.odx-modal__container', useAnimation(slideInY('8px')))])),
45
+ transition('default => void', group([useAnimation(fadeOut()), query('.odx-modal__container', useAnimation(slideOutY('8px')))])),
46
+ transition('void => sidesheet', query('.odx-modal__container', useAnimation(slideInRight))),
47
+ transition('sidesheet => void', query('.odx-modal__container', useAnimation(slideOutRight))),
36
48
  ]),
37
49
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
38
50
  __decorate([
39
51
  CSSModifier(),
40
52
  __metadata("design:type", Object)
41
53
  ], ModalComponent.prototype, "size", void 0);
54
+ __decorate([
55
+ CSSModifier(),
56
+ __metadata("design:type", Object)
57
+ ], ModalComponent.prototype, "variant", void 0);
58
+ __decorate([
59
+ CSSModifier(),
60
+ __metadata("design:type", Object)
61
+ ], ModalComponent.prototype, "withComponent", void 0);
42
62
  ModalComponent = __decorate([
43
- CSSComponent('modal')
63
+ CSSComponent('modal'),
64
+ __metadata("design:paramtypes", [])
44
65
  ], ModalComponent);
45
66
  export { ModalComponent };
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalComponent, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalComponent, decorators: [{
47
68
  type: Component,
48
69
  args: [{ standalone: true, selector: 'odx-modal', imports: [A11yModule, ActionGroupComponent, ButtonComponent, IconComponent, CoreModule, DynamicViewDirective], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
49
- '[@hostAnimation]': 'true',
70
+ '[@hostAnimation]': 'variant',
50
71
  '[attr.id]': 'modalRef.options.id',
51
72
  }, animations: [
52
73
  trigger('hostAnimation', [
53
- transition(':enter', group([useAnimation(fadeIn()), query('.odx-modal__container', useAnimation(slideInY('8px')))])),
54
- transition(':leave', group([useAnimation(fadeOut()), query('.odx-modal__container', useAnimation(slideOutY('8px')))])),
74
+ transition('void => default', group([useAnimation(fadeIn()), query('.odx-modal__container', useAnimation(slideInY('8px')))])),
75
+ transition('default => void', group([useAnimation(fadeOut()), query('.odx-modal__container', useAnimation(slideOutY('8px')))])),
76
+ transition('void => sidesheet', query('.odx-modal__container', useAnimation(slideInRight))),
77
+ transition('sidesheet => void', query('.odx-modal__container', useAnimation(slideOutRight))),
55
78
  ]),
56
- ], template: "<div\n cdkTrapFocus\n cdkTrapFocusAutoCapture\n [odxClickOutsideActive]=\"modalRef.options.dismissable\"\n [attr.aria-labelledby]=\"modalRef.modalTitleId\"\n class=\"odx-modal__container\"\n role=\"dialog\"\n (odxClickOutside)=\"modalRef.dismiss()\"\n>\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewContext]=\"context\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n" }]
57
- }], propDecorators: { size: [], content: [{
79
+ ], template: "<div\n [cdkTrapFocus]=\"modalRef.isActive()\"\n [cdkTrapFocusAutoCapture]=\"modalRef.isActive()\"\n [odxClickOutsideActive]=\"modalRef.options.dismissable\"\n [attr.aria-labelledby]=\"modalRef.modalTitleId\"\n class=\"odx-modal__container\"\n role=\"dialog\"\n (odxClickOutside)=\"modalRef.dismiss()\"\n>\n <ng-template [odxDynamicView]=\"content\" [odxDynamicViewContext]=\"withComponent ? {} : context\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n</div>\n" }]
80
+ }], ctorParameters: function () { return []; }, propDecorators: { size: [], variant: [], withComponent: [], content: [{
58
81
  type: Input
59
82
  }], onClose: [{
60
83
  type: HostListener,
61
84
  args: ['keyup.esc']
62
85
  }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9tb2RhbC9zcmMvbGliL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRSxPQUFPLEVBQXNDLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7O0FBcUJwQyxJQUFNLGNBQWMsR0FBcEIsTUFBTSxjQUFjO0lBQXBCO1FBQ2MsYUFBUSxHQUFHLGNBQWMsRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsWUFBTyxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUUxQyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFHMUIsU0FBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztLQVduRDtJQUxRLE9BQU87UUFDWixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtZQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQzs7MkdBbEJVLGNBQWM7K0ZBQWQsY0FBYyxvT0NoQzNCLHFaQVdBLDJDRE9ZLFVBQVUseUxBQXdELFVBQVUsc0xBQUUsb0JBQW9CLDhIQU9oRztRQUNWLE9BQU8sQ0FBQyxlQUFlLEVBQUU7WUFDdkIsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BILFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN2SCxDQUFDO0tBQ0g7QUFTRDtJQUFDLFdBQVcsRUFBRTs7NENBQ29DO0FBUnZDLGNBQWM7SUFuQjFCLFlBQVksQ0FBQyxPQUFPLENBQUM7R0FtQlQsY0FBYyxDQW1CMUI7U0FuQlksY0FBYzsyRkFBZCxjQUFjO2tCQWxCMUIsU0FBUztpQ0FDSSxJQUFJLFlBQ04sV0FBVyxXQUVaLENBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixDQUFDLG1CQUM1Rix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CO3dCQUNKLGtCQUFrQixFQUFFLE1BQU07d0JBQzFCLFdBQVcsRUFBRSxxQkFBcUI7cUJBQ25DLGNBQ1c7d0JBQ1YsT0FBTyxDQUFDLGVBQWUsRUFBRTs0QkFDdkIsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDOzRCQUNwSCxVQUFVLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7eUJBQ3ZILENBQUM7cUJBQ0g7OEJBVWUsSUFBSSxNQUdiLE9BQU87c0JBRGIsS0FBSztnQkFJQyxPQUFPO3NCQURiLFlBQVk7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdyb3VwLCBxdWVyeSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBpbmplY3QsIEluamVjdG9yLCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgZmFkZUluLCBmYWRlT3V0LCBzbGlkZUluWSwgc2xpZGVPdXRZIH0gZnJvbSAnQG9keC9hbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgRHluYW1pY0NvbnRlbnQsIER5bmFtaWNUZXh0Q29udGVudCwgRHluYW1pY1ZpZXdEaXJlY3RpdmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2R5bmFtaWMtdmlldyc7XG5pbXBvcnQgeyBBY3Rpb25Hcm91cENvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2FjdGlvbi1ncm91cCc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGluamVjdE1vZGFsUmVmIH0gZnJvbSAnLi9oZWxwZXJzJztcblxuQENTU0NvbXBvbmVudCgnbW9kYWwnKVxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnb2R4LW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW0ExMXlNb2R1bGUsIEFjdGlvbkdyb3VwQ29tcG9uZW50LCBCdXR0b25Db21wb25lbnQsIEljb25Db21wb25lbnQsIENvcmVNb2R1bGUsIER5bmFtaWNWaWV3RGlyZWN0aXZlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICAnW0Bob3N0QW5pbWF0aW9uXSc6ICd0cnVlJyxcbiAgICAnW2F0dHIuaWRdJzogJ21vZGFsUmVmLm9wdGlvbnMuaWQnLFxuICB9LFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignaG9zdEFuaW1hdGlvbicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIGdyb3VwKFt1c2VBbmltYXRpb24oZmFkZUluKCkpLCBxdWVyeSgnLm9keC1tb2RhbF9fY29udGFpbmVyJywgdXNlQW5pbWF0aW9uKHNsaWRlSW5ZKCc4cHgnKSkpXSkpLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgZ3JvdXAoW3VzZUFuaW1hdGlvbihmYWRlT3V0KCkpLCBxdWVyeSgnLm9keC1tb2RhbF9fY29udGFpbmVyJywgdXNlQW5pbWF0aW9uKHNsaWRlT3V0WSgnOHB4JykpKV0pKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbW9kYWxSZWYgPSBpbmplY3RNb2RhbFJlZigpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGV4dCA9IHsgJGltcGxpY2l0OiB0aGlzLm1vZGFsUmVmIH07XG5cbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgQENTU01vZGlmaWVyKClcbiAgcHVibGljIHJlYWRvbmx5IHNpemUgPSB0aGlzLm1vZGFsUmVmLm9wdGlvbnMuc2l6ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY29udGVudCE6IEV4Y2x1ZGU8RHluYW1pY0NvbnRlbnQsIER5bmFtaWNUZXh0Q29udGVudD47XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAuZXNjJylcbiAgcHVibGljIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubW9kYWxSZWYub3B0aW9ucy5kaXNtaXNzYWJsZSkge1xuICAgICAgdGhpcy5tb2RhbFJlZi5kaXNtaXNzKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNka1RyYXBGb2N1c1xuICBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZVxuICBbb2R4Q2xpY2tPdXRzaWRlQWN0aXZlXT1cIm1vZGFsUmVmLm9wdGlvbnMuZGlzbWlzc2FibGVcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwibW9kYWxSZWYubW9kYWxUaXRsZUlkXCJcbiAgY2xhc3M9XCJvZHgtbW9kYWxfX2NvbnRhaW5lclwiXG4gIHJvbGU9XCJkaWFsb2dcIlxuICAob2R4Q2xpY2tPdXRzaWRlKT1cIm1vZGFsUmVmLmRpc21pc3MoKVwiXG4+XG4gIDxuZy10ZW1wbGF0ZSBbb2R4RHluYW1pY1ZpZXddPVwiY29udGVudFwiIFtvZHhEeW5hbWljVmlld0NvbnRleHRdPVwiY29udGV4dFwiIFtvZHhEeW5hbWljVmlld0luamVjdG9yXT1cImluamVjdG9yXCI+PC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9tb2RhbC9zcmMvbGliL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsVUFBVSxFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQXNDLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQWEsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7O0FBdUJwQyxJQUFNLGNBQWMsR0FBcEIsTUFBTSxjQUFjO0lBbUJ6QjtRQWxCbUIsYUFBUSxHQUFHLGNBQWMsRUFBRSxDQUFDO1FBQzVCLGFBQVEsR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUN6QixZQUFPLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTFDLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztRQUduQyxTQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBR2xDLFlBQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFHeEMsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFNM0IsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDcEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVyxDQUFDLE9BQWtDO1FBQ25ELElBQUksVUFBVSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0lBR1MsT0FBTztRQUNmLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDOzsyR0FwQ1UsY0FBYzsrRkFBZCxjQUFjLDRQQ2xDM0IsOGRBV0EsMkNET1ksVUFBVSxnVkFBd0QsVUFBVSwrQkFBRSxvQkFBb0IseUlBT2hHO1FBQ1YsT0FBTyxDQUFDLGVBQWUsRUFBRTtZQUN2QixVQUFVLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM3SCxVQUFVLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvSCxVQUFVLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQzNGLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7U0FDN0YsQ0FBQztLQUNIO0FBU0Q7SUFBQyxXQUFXLEVBQUU7OzRDQUMyQjtBQUV6QztJQUFDLFdBQVcsRUFBRTs7K0NBQ2lDO0FBRS9DO0lBQUMsV0FBVyxFQUFFOztxREFDZTtBQWRsQixjQUFjO0lBckIxQixZQUFZLENBQUMsT0FBTyxDQUFDOztHQXFCVCxjQUFjLENBcUMxQjtTQXJDWSxjQUFjOzJGQUFkLGNBQWM7a0JBcEIxQixTQUFTO2lDQUNJLElBQUksWUFDTixXQUFXLFdBRVosQ0FBQyxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsb0JBQW9CLENBQUMsbUJBQzVGLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osa0JBQWtCLEVBQUUsU0FBUzt3QkFDN0IsV0FBVyxFQUFFLHFCQUFxQjtxQkFDbkMsY0FDVzt3QkFDVixPQUFPLENBQUMsZUFBZSxFQUFFOzRCQUN2QixVQUFVLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs0QkFDN0gsVUFBVSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQy9ILFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7NEJBQzNGLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7eUJBQzdGLENBQUM7cUJBQ0g7MEVBVU0sSUFBSSxNQUdKLE9BQU8sTUFHUCxhQUFhLE1BR2IsT0FBTztzQkFEYixLQUFLO2dCQWdCSSxPQUFPO3NCQURoQixZQUFZO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBncm91cCwgcXVlcnksIHRyYW5zaXRpb24sIHRyaWdnZXIsIHVzZUFuaW1hdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSwgZGV0ZWN0Q29udHJvbGxlckNoYW5nZXMgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgZmFkZUluLCBmYWRlT3V0LCBzbGlkZUluUmlnaHQsIHNsaWRlSW5ZLCBzbGlkZU91dFJpZ2h0LCBzbGlkZU91dFkgfSBmcm9tICdAb2R4L2FuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IER5bmFtaWNDb250ZW50LCBEeW5hbWljVGV4dENvbnRlbnQsIER5bmFtaWNWaWV3RGlyZWN0aXZlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9keW5hbWljLXZpZXcnO1xuaW1wb3J0IHsgQWN0aW9uR3JvdXBDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9hY3Rpb24tZ3JvdXAnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgQ1NTTW9kaWZpZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgZ2V0SW5qZWN0b3IsIGhhc0NoYW5nZWQsIGluamVjdEVsZW1lbnQsIGlzVGVtcGxhdGVSZWYsIE5nQ2hhbmdlcyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBpbmplY3RNb2RhbFJlZiB9IGZyb20gJy4vaGVscGVycyc7XG5cbkBDU1NDb21wb25lbnQoJ21vZGFsJylcbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ29keC1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFtBMTF5TW9kdWxlLCBBY3Rpb25Hcm91cENvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50LCBJY29uQ29tcG9uZW50LCBDb3JlTW9kdWxlLCBEeW5hbWljVmlld0RpcmVjdGl2ZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tAaG9zdEFuaW1hdGlvbl0nOiAndmFyaWFudCcsXG4gICAgJ1thdHRyLmlkXSc6ICdtb2RhbFJlZi5vcHRpb25zLmlkJyxcbiAgfSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2hvc3RBbmltYXRpb24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IGRlZmF1bHQnLCBncm91cChbdXNlQW5pbWF0aW9uKGZhZGVJbigpKSwgcXVlcnkoJy5vZHgtbW9kYWxfX2NvbnRhaW5lcicsIHVzZUFuaW1hdGlvbihzbGlkZUluWSgnOHB4JykpKV0pKSxcbiAgICAgIHRyYW5zaXRpb24oJ2RlZmF1bHQgPT4gdm9pZCcsIGdyb3VwKFt1c2VBbmltYXRpb24oZmFkZU91dCgpKSwgcXVlcnkoJy5vZHgtbW9kYWxfX2NvbnRhaW5lcicsIHVzZUFuaW1hdGlvbihzbGlkZU91dFkoJzhweCcpKSldKSksXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IHNpZGVzaGVldCcsIHF1ZXJ5KCcub2R4LW1vZGFsX19jb250YWluZXInLCB1c2VBbmltYXRpb24oc2xpZGVJblJpZ2h0KSkpLFxuICAgICAgdHJhbnNpdGlvbignc2lkZXNoZWV0ID0+IHZvaWQnLCBxdWVyeSgnLm9keC1tb2RhbF9fY29udGFpbmVyJywgdXNlQW5pbWF0aW9uKHNsaWRlT3V0UmlnaHQpKSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG1vZGFsUmVmID0gaW5qZWN0TW9kYWxSZWYoKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGluamVjdG9yID0gZ2V0SW5qZWN0b3IoKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbnRleHQgPSB7ICRpbXBsaWNpdDogdGhpcy5tb2RhbFJlZiB9O1xuXG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIEBDU1NNb2RpZmllcigpXG4gIHB1YmxpYyBzaXplID0gdGhpcy5tb2RhbFJlZi5vcHRpb25zLnNpemU7XG5cbiAgQENTU01vZGlmaWVyKClcbiAgcHVibGljIHZhcmlhbnQgPSB0aGlzLm1vZGFsUmVmLm9wdGlvbnMudmFyaWFudDtcblxuICBAQ1NTTW9kaWZpZXIoKVxuICBwdWJsaWMgd2l0aENvbXBvbmVudCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb250ZW50ITogRXhjbHVkZTxEeW5hbWljQ29udGVudCwgRHluYW1pY1RleHRDb250ZW50PjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBkZXRlY3RDb250cm9sbGVyQ2hhbmdlcyh0aGlzLm1vZGFsUmVmKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zaXplID0gdGhpcy5tb2RhbFJlZi5vcHRpb25zLnNpemU7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogTmdDaGFuZ2VzPE1vZGFsQ29tcG9uZW50Pik6IHZvaWQge1xuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsICdjb250ZW50JywgZmFsc2UpKSB7XG4gICAgICB0aGlzLndpdGhDb21wb25lbnQgPSAhaXNUZW1wbGF0ZVJlZih0aGlzLmNvbnRlbnQpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleXVwLmVzYycpXG4gIHByb3RlY3RlZCBvbkNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1vZGFsUmVmLm9wdGlvbnMuZGlzbWlzc2FibGUpIHtcbiAgICAgIHRoaXMubW9kYWxSZWYuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBbY2RrVHJhcEZvY3VzXT1cIm1vZGFsUmVmLmlzQWN0aXZlKClcIlxuICBbY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVdPVwibW9kYWxSZWYuaXNBY3RpdmUoKVwiXG4gIFtvZHhDbGlja091dHNpZGVBY3RpdmVdPVwibW9kYWxSZWYub3B0aW9ucy5kaXNtaXNzYWJsZVwiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJtb2RhbFJlZi5tb2RhbFRpdGxlSWRcIlxuICBjbGFzcz1cIm9keC1tb2RhbF9fY29udGFpbmVyXCJcbiAgcm9sZT1cImRpYWxvZ1wiXG4gIChvZHhDbGlja091dHNpZGUpPVwibW9kYWxSZWYuZGlzbWlzcygpXCJcbj5cbiAgPG5nLXRlbXBsYXRlIFtvZHhEeW5hbWljVmlld109XCJjb250ZW50XCIgW29keER5bmFtaWNWaWV3Q29udGV4dF09XCJ3aXRoQ29tcG9uZW50ID8ge30gOiBjb250ZXh0XCIgW29keER5bmFtaWNWaWV3SW5qZWN0b3JdPVwiaW5qZWN0b3JcIj48L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
@@ -1,8 +1,10 @@
1
- import { createModuleConfigTokens } from '@odx/angular/utils';
1
+ import { createConfigTokens } from '@odx/angular/utils';
2
2
  import { ModalSize } from './models';
3
- export const { ModalDefaultModuleConfig, ModalModuleConfig, injectModalModuleConfig } = createModuleConfigTokens('Modal', '@odx/angular/components/modal', {
3
+ import { ModalVariant } from './models/modal-variant';
4
+ export const { ModalDefaultConfig, ModalConfig, injectModalConfig, provideModalConfig } = createConfigTokens('Modal', '@odx/angular/components/modal', {
4
5
  dismissable: true,
5
6
  size: ModalSize.MEDIUM,
6
7
  dismissOnNavigation: true,
8
+ variant: ModalVariant.DEFAULT,
7
9
  });
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDOUQsT0FBTyxFQUF3QixTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJM0QsTUFBTSxDQUFDLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxHQUFHLHdCQUF3QixDQUFDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRTtJQUN6SixXQUFXLEVBQUUsSUFBSTtJQUNqQixJQUFJLEVBQUUsU0FBUyxDQUFDLE1BQU07SUFDdEIsbUJBQW1CLEVBQUUsSUFBSTtDQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZU1vZHVsZUNvbmZpZ1Rva2VucyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBNb2RhbEluc3RhbmNlT3B0aW9ucywgTW9kYWxTaXplIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5leHBvcnQgdHlwZSBNb2RhbE1vZHVsZUNvbmZpZyA9IE9taXQ8TW9kYWxJbnN0YW5jZU9wdGlvbnMsICdpZCcgfCAnaG9zdCcgfCAnZGF0YSc+O1xuXG5leHBvcnQgY29uc3QgeyBNb2RhbERlZmF1bHRNb2R1bGVDb25maWcsIE1vZGFsTW9kdWxlQ29uZmlnLCBpbmplY3RNb2RhbE1vZHVsZUNvbmZpZyB9ID0gY3JlYXRlTW9kdWxlQ29uZmlnVG9rZW5zKCdNb2RhbCcsICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9tb2RhbCcsIHtcbiAgZGlzbWlzc2FibGU6IHRydWUsXG4gIHNpemU6IE1vZGFsU2l6ZS5NRURJVU0sXG4gIGRpc21pc3NPbk5hdmlnYXRpb246IHRydWUsXG59IGFzIE1vZGFsTW9kdWxlQ29uZmlnKTtcbiJdfQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUF3QixTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBSXRELE1BQU0sQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxFQUFFLCtCQUErQixFQUFFO0lBQ3JKLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTTtJQUN0QixtQkFBbUIsRUFBRSxJQUFJO0lBQ3pCLE9BQU8sRUFBRSxZQUFZLENBQUMsT0FBTztDQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbmZpZ1Rva2VucyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBNb2RhbEluc3RhbmNlT3B0aW9ucywgTW9kYWxTaXplIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgTW9kYWxWYXJpYW50IH0gZnJvbSAnLi9tb2RlbHMvbW9kYWwtdmFyaWFudCc7XG5cbmV4cG9ydCB0eXBlIE1vZGFsQ29uZmlnID0gT21pdDxNb2RhbEluc3RhbmNlT3B0aW9ucywgJ2lkJyB8ICdob3N0JyB8ICdkYXRhJz47XG5cbmV4cG9ydCBjb25zdCB7IE1vZGFsRGVmYXVsdENvbmZpZywgTW9kYWxDb25maWcsIGluamVjdE1vZGFsQ29uZmlnLCBwcm92aWRlTW9kYWxDb25maWcgfSA9IGNyZWF0ZUNvbmZpZ1Rva2VucygnTW9kYWwnLCAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwnLCB7XG4gIGRpc21pc3NhYmxlOiB0cnVlLFxuICBzaXplOiBNb2RhbFNpemUuTUVESVVNLFxuICBkaXNtaXNzT25OYXZpZ2F0aW9uOiB0cnVlLFxuICB2YXJpYW50OiBNb2RhbFZhcmlhbnQuREVGQVVMVCxcbn0gYXMgTW9kYWxDb25maWcpO1xuIl19
@@ -1,4 +1,5 @@
1
- import { Directive, inject, Input, TemplateRef } from '@angular/core';
1
+ import { Directive, EventEmitter, inject, Input, Output, TemplateRef } from '@angular/core';
2
+ import { hasChanged } from '@odx/angular/utils';
2
3
  import { ModalService } from './modal.service';
3
4
  import * as i0 from "@angular/core";
4
5
  export class ModalDirective {
@@ -6,20 +7,31 @@ export class ModalDirective {
6
7
  this.modalService = inject(ModalService);
7
8
  this.modalRef = null;
8
9
  this.template = inject(TemplateRef);
10
+ // eslint-disable-next-line @angular-eslint/no-output-rename
11
+ this.modalClose = new EventEmitter();
12
+ // eslint-disable-next-line @angular-eslint/no-output-rename
13
+ this.modalDismiss = new EventEmitter();
14
+ }
15
+ ngOnChanges(changes) {
16
+ if (hasChanged(changes, 'modalOptions') && this.modalOptions) {
17
+ this.modalRef?.update(this.modalOptions);
18
+ }
9
19
  }
10
20
  ngOnDestroy() {
11
- this.modalRef?.dismiss();
21
+ this.dismiss();
12
22
  }
13
23
  open() {
14
24
  this.modalRef = this.modalService.open(this.template, this.modalOptions || {});
25
+ this.modalRef.onClose$.subscribe((result) => this.modalClose.next(result));
26
+ this.modalRef.onDismiss$.subscribe((result) => this.modalDismiss.next(result));
15
27
  }
16
28
  dismiss() {
17
29
  this.modalRef?.dismiss();
18
30
  }
19
31
  }
20
- ModalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
21
- ModalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ModalDirective, isStandalone: true, selector: "ng-template[odxModal]", inputs: { modalOptions: ["odxModal", "modalOptions"] }, exportAs: ["odxModal"], ngImport: i0 });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalDirective, decorators: [{
32
+ ModalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
33
+ ModalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.4", type: ModalDirective, isStandalone: true, selector: "ng-template[odxModal]", inputs: { modalOptions: ["odxModal", "modalOptions"] }, outputs: { modalClose: "odxModalClose", modalDismiss: "odxModalDismiss" }, exportAs: ["odxModal"], usesOnChanges: true, ngImport: i0 });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalDirective, decorators: [{
23
35
  type: Directive,
24
36
  args: [{
25
37
  standalone: true,
@@ -29,5 +41,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
29
41
  }], propDecorators: { modalOptions: [{
30
42
  type: Input,
31
43
  args: ['odxModal']
44
+ }], modalClose: [{
45
+ type: Output,
46
+ args: ['odxModalClose']
47
+ }], modalDismiss: [{
48
+ type: Output,
49
+ args: ['odxModalDismiss']
32
50
  }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFhLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBUS9DLE1BQU0sT0FBTyxjQUFjO0lBTDNCO1FBTW1CLGlCQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdDLGFBQVEsR0FBb0IsSUFBSSxDQUFDO1FBTXRCLGFBQVEsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7S0FhbkQ7SUFYUSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVNLElBQUk7UUFDVCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7MkdBcEJVLGNBQWM7K0ZBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUwxQixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUUsVUFBVTtpQkFDckI7OEJBT1EsWUFBWTtzQkFEbEIsS0FBSzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RhbFNlcnZpY2UgfSBmcm9tICcuL21vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9kYWxPcHRpb25zLCBNb2RhbFJlZiB9IGZyb20gJy4vbW9kZWxzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnbmctdGVtcGxhdGVbb2R4TW9kYWxdJyxcbiAgZXhwb3J0QXM6ICdvZHhNb2RhbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBtb2RhbFNlcnZpY2UgPSBpbmplY3QoTW9kYWxTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBtb2RhbFJlZjogTW9kYWxSZWYgfCBudWxsID0gbnVsbDtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ29keE1vZGFsJylcbiAgcHVibGljIG1vZGFsT3B0aW9ucz86IFBhcnRpYWw8TW9kYWxPcHRpb25zPiB8ICcnIHwgbnVsbDtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGVtcGxhdGUgPSBpbmplY3QoVGVtcGxhdGVSZWYpO1xuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm1vZGFsUmVmPy5kaXNtaXNzKCk7XG4gIH1cblxuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3Blbih0aGlzLnRlbXBsYXRlLCB0aGlzLm1vZGFsT3B0aW9ucyB8fCB7fSk7XG4gIH1cblxuICBwdWJsaWMgZGlzbWlzcygpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsUmVmPy5kaXNtaXNzKCk7XG4gIH1cbn1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBd0IsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVEvQyxNQUFNLE9BQU8sY0FBYztJQUwzQjtRQU1tQixpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM3QyxhQUFRLEdBQW9CLElBQUksQ0FBQztRQUV0QixhQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBTWxELDREQUE0RDtRQUVyRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV2Qyw0REFBNEQ7UUFFckQsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBcUIxQztJQW5CUSxXQUFXLENBQUMsT0FBa0M7UUFDbkQsSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDNUQsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7MkdBcENVLGNBQWM7K0ZBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUwxQixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUUsVUFBVTtpQkFDckI7OEJBU1EsWUFBWTtzQkFEbEIsS0FBSzt1QkFBQyxVQUFVO2dCQUtWLFVBQVU7c0JBRGhCLE1BQU07dUJBQUMsZUFBZTtnQkFLaEIsWUFBWTtzQkFEbEIsTUFBTTt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGhhc0NoYW5nZWQsIE5nQ2hhbmdlcyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBNb2RhbFNlcnZpY2UgfSBmcm9tICcuL21vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9kYWxPcHRpb25zLCBNb2RhbFJlZiB9IGZyb20gJy4vbW9kZWxzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnbmctdGVtcGxhdGVbb2R4TW9kYWxdJyxcbiAgZXhwb3J0QXM6ICdvZHhNb2RhbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IG1vZGFsU2VydmljZSA9IGluamVjdChNb2RhbFNlcnZpY2UpO1xuICBwcml2YXRlIG1vZGFsUmVmOiBNb2RhbFJlZiB8IG51bGwgPSBudWxsO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSB0ZW1wbGF0ZSA9IGluamVjdChUZW1wbGF0ZVJlZik7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdvZHhNb2RhbCcpXG4gIHB1YmxpYyBtb2RhbE9wdGlvbnM/OiBQYXJ0aWFsPE1vZGFsT3B0aW9ucz4gfCAnJyB8IG51bGw7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtcmVuYW1lXG4gIEBPdXRwdXQoJ29keE1vZGFsQ2xvc2UnKVxuICBwdWJsaWMgbW9kYWxDbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1yZW5hbWVcbiAgQE91dHB1dCgnb2R4TW9kYWxEaXNtaXNzJylcbiAgcHVibGljIG1vZGFsRGlzbWlzcyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogTmdDaGFuZ2VzPE1vZGFsRGlyZWN0aXZlPik6IHZvaWQge1xuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsICdtb2RhbE9wdGlvbnMnKSAmJiB0aGlzLm1vZGFsT3B0aW9ucykge1xuICAgICAgdGhpcy5tb2RhbFJlZj8udXBkYXRlKHRoaXMubW9kYWxPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kaXNtaXNzKCk7XG4gIH1cblxuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3Blbih0aGlzLnRlbXBsYXRlLCB0aGlzLm1vZGFsT3B0aW9ucyB8fCB7fSk7XG4gICAgdGhpcy5tb2RhbFJlZi5vbkNsb3NlJC5zdWJzY3JpYmUoKHJlc3VsdCkgPT4gdGhpcy5tb2RhbENsb3NlLm5leHQocmVzdWx0KSk7XG4gICAgdGhpcy5tb2RhbFJlZi5vbkRpc21pc3MkLnN1YnNjcmliZSgocmVzdWx0KSA9PiB0aGlzLm1vZGFsRGlzbWlzcy5uZXh0KHJlc3VsdCkpO1xuICB9XG5cbiAgcHVibGljIGRpc21pc3MoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbFJlZj8uZGlzbWlzcygpO1xuICB9XG59XG4iXX0=
@@ -3,30 +3,48 @@ import { CoreModule } from '@odx/angular';
3
3
  import { AreaHeaderModule } from '@odx/angular/components/area-header';
4
4
  import { ButtonComponent } from '@odx/angular/components/button';
5
5
  import { ButtonGroupComponent } from '@odx/angular/components/button-group';
6
- import { provideModuleConfig } from '@odx/angular/utils';
7
- import { ModalFooterComponent, ModalHeaderComponent } from './components';
6
+ import { ModalFooterComponent, ModalHeaderComponent, ModalHeroComponent } from './components';
8
7
  import { ModalCloseDirective, ModalContentDirective, ModalDismissDirective } from './directives';
9
8
  import { ModalComponent } from './modal.component';
10
- import { ModalModuleConfig } from './modal.config';
11
9
  import { ModalDirective } from './modal.directive';
12
10
  import * as i0 from "@angular/core";
13
- const modules = [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalDirective, ModalCloseDirective, ModalContentDirective, ModalDismissDirective];
11
+ const modules = [
12
+ ModalComponent,
13
+ ModalHeaderComponent,
14
+ ModalHeroComponent,
15
+ ModalFooterComponent,
16
+ ModalDirective,
17
+ ModalCloseDirective,
18
+ ModalContentDirective,
19
+ ModalDismissDirective,
20
+ ];
14
21
  export class ModalModule {
15
- static forRoot(config) {
16
- return {
17
- ngModule: ModalModule,
18
- providers: [provideModuleConfig(ModalModuleConfig, config)],
19
- };
20
- }
21
22
  }
22
- ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
23
- ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: ModalModule, imports: [ButtonComponent, ButtonGroupComponent, ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalDirective, ModalCloseDirective, ModalContentDirective, ModalDismissDirective], exports: [CoreModule, AreaHeaderModule, ButtonComponent, ButtonGroupComponent, ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalDirective, ModalCloseDirective, ModalContentDirective, ModalDismissDirective] });
24
- ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalModule, imports: [ButtonComponent, ButtonGroupComponent, ModalComponent, ModalHeaderComponent, ModalFooterComponent, CoreModule, AreaHeaderModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalModule, decorators: [{
23
+ ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
24
+ ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: ModalModule, imports: [ButtonComponent, ButtonGroupComponent, ModalComponent,
25
+ ModalHeaderComponent,
26
+ ModalHeroComponent,
27
+ ModalFooterComponent,
28
+ ModalDirective,
29
+ ModalCloseDirective,
30
+ ModalContentDirective,
31
+ ModalDismissDirective], exports: [CoreModule, AreaHeaderModule, ButtonComponent, ButtonGroupComponent, ModalComponent,
32
+ ModalHeaderComponent,
33
+ ModalHeroComponent,
34
+ ModalFooterComponent,
35
+ ModalDirective,
36
+ ModalCloseDirective,
37
+ ModalContentDirective,
38
+ ModalDismissDirective] });
39
+ ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalModule, imports: [ButtonComponent, ButtonGroupComponent, ModalComponent,
40
+ ModalHeaderComponent,
41
+ ModalHeroComponent,
42
+ ModalFooterComponent, CoreModule, AreaHeaderModule] });
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalModule, decorators: [{
26
44
  type: NgModule,
27
45
  args: [{
28
46
  imports: [ButtonComponent, ButtonGroupComponent, ...modules],
29
47
  exports: [CoreModule, AreaHeaderModule, ButtonComponent, ButtonGroupComponent, ...modules],
30
48
  }]
31
49
  }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFrRCxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFbkQsTUFBTSxPQUFPLEdBQUcsQ0FBQyxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixDQUFDLENBQUM7QUFNaEssTUFBTSxPQUFPLFdBQVc7SUFDZixNQUFNLENBQUMsT0FBTyxDQUFxQyxNQUEyRDtRQUNuSCxPQUFPO1lBQ0wsUUFBUSxFQUFFLFdBQVc7WUFDckIsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDNUQsQ0FBQztJQUNKLENBQUM7O3dHQU5VLFdBQVc7eUdBQVgsV0FBVyxZQUhaLGVBQWUsRUFBRSxvQkFBb0IsRUFIaEMsY0FBYyxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsYUFJbEosVUFBVSxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFKOUQsY0FBYyxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUI7eUdBTWpKLFdBQVcsWUFIWixlQUFlLEVBQUUsb0JBQW9CLEVBSGhDLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFJL0QsVUFBVSxFQUFFLGdCQUFnQjsyRkFFM0IsV0FBVztrQkFKdkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxPQUFPLENBQUM7b0JBQzVELE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxPQUFPLENBQUM7aUJBQzNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQXJlYUhlYWRlck1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2FyZWEtaGVhZGVyJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBCdXR0b25Hcm91cENvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdEZXBlbmRlbmNpZXMsIE1vZHVsZUNvbmZpZ1Byb3ZpZGVyLCBwcm92aWRlTW9kdWxlQ29uZmlnIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IE1vZGFsRm9vdGVyQ29tcG9uZW50LCBNb2RhbEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBNb2RhbENsb3NlRGlyZWN0aXZlLCBNb2RhbENvbnRlbnREaXJlY3RpdmUsIE1vZGFsRGlzbWlzc0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsTW9kdWxlQ29uZmlnIH0gZnJvbSAnLi9tb2RhbC5jb25maWcnO1xuaW1wb3J0IHsgTW9kYWxEaXJlY3RpdmUgfSBmcm9tICcuL21vZGFsLmRpcmVjdGl2ZSc7XG5cbmNvbnN0IG1vZHVsZXMgPSBbTW9kYWxDb21wb25lbnQsIE1vZGFsSGVhZGVyQ29tcG9uZW50LCBNb2RhbEZvb3RlckNvbXBvbmVudCwgTW9kYWxEaXJlY3RpdmUsIE1vZGFsQ2xvc2VEaXJlY3RpdmUsIE1vZGFsQ29udGVudERpcmVjdGl2ZSwgTW9kYWxEaXNtaXNzRGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0J1dHRvbkNvbXBvbmVudCwgQnV0dG9uR3JvdXBDb21wb25lbnQsIC4uLm1vZHVsZXNdLFxuICBleHBvcnRzOiBbQ29yZU1vZHVsZSwgQXJlYUhlYWRlck1vZHVsZSwgQnV0dG9uQ29tcG9uZW50LCBCdXR0b25Hcm91cENvbXBvbmVudCwgLi4ubW9kdWxlc10sXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290PEQgZXh0ZW5kcyBNb2R1bGVDb25maWdEZXBlbmRlbmNpZXM+KGNvbmZpZzogTW9kdWxlQ29uZmlnUHJvdmlkZXI8UGFydGlhbDxNb2RhbE1vZHVsZUNvbmZpZz4sIEQ+KTogTW9kdWxlV2l0aFByb3ZpZGVyczxNb2RhbE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTW9kYWxNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtwcm92aWRlTW9kdWxlQ29uZmlnKE1vZGFsTW9kdWxlQ29uZmlnLCBjb25maWcpXSxcbiAgICB9O1xuICB9XG59XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRW5ELE1BQU0sT0FBTyxHQUFHO0lBQ2QsY0FBYztJQUNkLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLGNBQWM7SUFDZCxtQkFBbUI7SUFDbkIscUJBQXFCO0lBQ3JCLHFCQUFxQjtDQUN0QixDQUFDO0FBTUYsTUFBTSxPQUFPLFdBQVc7O3dHQUFYLFdBQVc7eUdBQVgsV0FBVyxZQUhaLGVBQWUsRUFBRSxvQkFBb0IsRUFYL0MsY0FBYztRQUNkLG9CQUFvQjtRQUNwQixrQkFBa0I7UUFDbEIsb0JBQW9CO1FBQ3BCLGNBQWM7UUFDZCxtQkFBbUI7UUFDbkIscUJBQXFCO1FBQ3JCLHFCQUFxQixhQUtYLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBWjdFLGNBQWM7UUFDZCxvQkFBb0I7UUFDcEIsa0JBQWtCO1FBQ2xCLG9CQUFvQjtRQUNwQixjQUFjO1FBQ2QsbUJBQW1CO1FBQ25CLHFCQUFxQjtRQUNyQixxQkFBcUI7eUdBT1YsV0FBVyxZQUhaLGVBQWUsRUFBRSxvQkFBb0IsRUFYL0MsY0FBYztRQUNkLG9CQUFvQjtRQUNwQixrQkFBa0I7UUFDbEIsb0JBQW9CLEVBU1YsVUFBVSxFQUFFLGdCQUFnQjsyRkFFM0IsV0FBVztrQkFKdkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxPQUFPLENBQUM7b0JBQzVELE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxPQUFPLENBQUM7aUJBQzNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQXJlYUhlYWRlck1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2FyZWEtaGVhZGVyJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBCdXR0b25Hcm91cENvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5pbXBvcnQgeyBNb2RhbEZvb3RlckNvbXBvbmVudCwgTW9kYWxIZWFkZXJDb21wb25lbnQsIE1vZGFsSGVyb0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBNb2RhbENsb3NlRGlyZWN0aXZlLCBNb2RhbENvbnRlbnREaXJlY3RpdmUsIE1vZGFsRGlzbWlzc0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsRGlyZWN0aXZlIH0gZnJvbSAnLi9tb2RhbC5kaXJlY3RpdmUnO1xuXG5jb25zdCBtb2R1bGVzID0gW1xuICBNb2RhbENvbXBvbmVudCxcbiAgTW9kYWxIZWFkZXJDb21wb25lbnQsXG4gIE1vZGFsSGVyb0NvbXBvbmVudCxcbiAgTW9kYWxGb290ZXJDb21wb25lbnQsXG4gIE1vZGFsRGlyZWN0aXZlLFxuICBNb2RhbENsb3NlRGlyZWN0aXZlLFxuICBNb2RhbENvbnRlbnREaXJlY3RpdmUsXG4gIE1vZGFsRGlzbWlzc0RpcmVjdGl2ZSxcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtCdXR0b25Db21wb25lbnQsIEJ1dHRvbkdyb3VwQ29tcG9uZW50LCAuLi5tb2R1bGVzXSxcbiAgZXhwb3J0czogW0NvcmVNb2R1bGUsIEFyZWFIZWFkZXJNb2R1bGUsIEJ1dHRvbkNvbXBvbmVudCwgQnV0dG9uR3JvdXBDb21wb25lbnQsIC4uLm1vZHVsZXNdLFxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbE1vZHVsZSB7fVxuIl19
@@ -1,70 +1,77 @@
1
- import { DOCUMENT } from '@angular/common';
1
+ import { Location } from '@angular/common';
2
2
  import { inject, Injectable, Injector } from '@angular/core';
3
3
  import { DynamicViewService } from '@odx/angular/cdk/dynamic-view';
4
- import { isViewContainer } from '@odx/angular/utils';
4
+ import { deferFn, getInjector, Queue } from '@odx/angular/utils';
5
5
  import { deepmerge } from 'deepmerge-ts';
6
6
  import { finalize } from 'rxjs';
7
+ import { BasicModalComponent } from './components';
7
8
  import { provideModalRef } from './helpers';
8
9
  import { ModalComponent } from './modal.component';
9
- import { injectModalModuleConfig } from './modal.config';
10
- import { ModalRef } from './models';
11
- import { OpenModalManagerService } from './services';
10
+ import { injectModalConfig } from './modal.config';
11
+ import { ModalRef, ModalSize } from './models';
12
12
  import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/common";
13
14
  export class ModalService {
14
- constructor() {
15
- this.injector = inject(Injector);
16
- this.moduleConfig = injectModalModuleConfig();
17
- this.document = inject(DOCUMENT);
18
- this.openModalManager = inject(OpenModalManagerService);
15
+ constructor(location) {
16
+ this.config = injectModalConfig();
17
+ this.openModals = new Queue();
18
+ this.injector = getInjector();
19
19
  this.dynamicViewService = inject(DynamicViewService);
20
- this.openModals$ = this.openModalManager.modals$;
20
+ this.openModals$ = this.openModals.value$;
21
+ location.onUrlChange(() => {
22
+ for (const modalRef of this.openModals.toArray()) {
23
+ if (modalRef.options.dismissOnNavigation) {
24
+ modalRef.destroy();
25
+ }
26
+ }
27
+ });
21
28
  }
22
29
  dismissAll() {
23
- this.openModalManager.dismissAll();
30
+ for (const modalRef of this.openModals.toArray()) {
31
+ modalRef.dismiss();
32
+ }
24
33
  }
25
34
  getModalById(id) {
26
- return this.openModalManager.getById(id);
35
+ return this.openModals.get(id);
36
+ }
37
+ create(modal, options) {
38
+ return this.open(BasicModalComponent, {
39
+ data: modal,
40
+ size: ModalSize.SMALL,
41
+ ...options,
42
+ });
27
43
  }
28
44
  open(content, options) {
29
- const mergedOptions = this.mergeOptions(options);
30
- const modalRef = new ModalRef(mergedOptions);
31
- this.openModalManager.add(modalRef);
45
+ const mergedOptions = deepmerge(this.config, { id: `odx-modal-${ModalService.ID++}` }, options ?? {});
46
+ if (this.getModalById(mergedOptions.id)) {
47
+ throw Error(`Modal with ID ${mergedOptions.id} already open`);
48
+ }
49
+ const modalRef = new ModalRef(mergedOptions, (ref) => this.openModals.isFirst(ref));
32
50
  this.attachModal(modalRef, content);
51
+ this.openModals.add(modalRef);
33
52
  return modalRef;
34
53
  }
35
54
  attachModal(modalRef, content) {
36
- const hostElement = modalRef.options.host;
37
- const isViewContainerHost = isViewContainer(hostElement);
38
- const injector = Injector.create({
39
- providers: [provideModalRef(modalRef)],
40
- parent: this.injector,
41
- });
42
55
  const viewRef = this.dynamicViewService.createView(ModalComponent, {
43
56
  context: { content },
44
- injector,
45
- vcr: isViewContainerHost ? hostElement : undefined,
57
+ injector: Injector.create({
58
+ providers: [provideModalRef(modalRef)],
59
+ parent: this.injector,
60
+ }),
61
+ host: modalRef.options.host,
46
62
  });
47
63
  const onDestroy = () => {
48
64
  viewRef.destroy();
49
- this.openModalManager.remove(modalRef);
65
+ deferFn(() => this.openModals.remove(modalRef));
50
66
  };
51
- if (!isViewContainerHost) {
52
- hostElement.appendChild(viewRef.getElement());
53
- }
54
- modalRef.onDestroy$.pipe(finalize(() => onDestroy())).subscribe();
55
- }
56
- mergeOptions(options) {
57
- return deepmerge(this.moduleConfig, {
58
- id: `odx-modal-${ModalService.ID++}`,
59
- host: this.document.body,
60
- }, options ?? {});
67
+ modalRef.onDestroy$.pipe(finalize(onDestroy)).subscribe();
61
68
  }
62
69
  }
63
70
  ModalService.ID = 0;
64
- ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
65
- ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalService, providedIn: 'root' });
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ModalService, decorators: [{
71
+ ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalService, deps: [{ token: i1.Location }], target: i0.ɵɵFactoryTarget.Injectable });
72
+ ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalService, providedIn: 'root' });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: ModalService, decorators: [{
67
74
  type: Injectable,
68
75
  args: [{ providedIn: 'root' }]
69
- }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL21vZGFsL3NyYy9saWIvbW9kYWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBc0Msa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBZ0IsUUFBUSxFQUFhLE1BQU0sVUFBVSxDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFHckQsTUFBTSxPQUFPLFlBQVk7SUFEekI7UUFHbUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixpQkFBWSxHQUFHLHVCQUF1QixFQUFFLENBQUM7UUFDekMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNuRCx1QkFBa0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVqRCxnQkFBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7S0FzRDdEO0lBcERRLFVBQVU7UUFDZixJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVNLFlBQVksQ0FBbUMsRUFBc0I7UUFDMUUsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFJTSxJQUFJLENBQUMsT0FBa0QsRUFBRSxPQUErQjtRQUM3RixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFcEMsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVPLFdBQVcsQ0FBQyxRQUFrQixFQUFFLE9BQW9EO1FBQzFGLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQzFDLE1BQU0sbUJBQW1CLEdBQUcsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDL0IsU0FBUyxFQUFFLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN0QixDQUFDLENBQUM7UUFDSCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRTtZQUNqRSxPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUU7WUFDcEIsUUFBUTtZQUNSLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ25ELENBQUMsQ0FBQztRQUNILE1BQU0sU0FBUyxHQUFHLEdBQUcsRUFBRTtZQUNyQixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUM7UUFFRixJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDeEIsV0FBVyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztTQUMvQztRQUNELFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDcEUsQ0FBQztJQUVPLFlBQVksQ0FBQyxPQUErQjtRQUNsRCxPQUFPLFNBQVMsQ0FDZCxJQUFJLENBQUMsWUFBWSxFQUNqQjtZQUNFLEVBQUUsRUFBRSxhQUFhLFlBQVksQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJO1NBQ3pCLEVBQ0QsT0FBTyxJQUFJLEVBQUUsQ0FDRSxDQUFDO0lBQ3BCLENBQUM7O0FBNURjLGVBQUUsR0FBRyxDQUFDLENBQUM7eUdBRFgsWUFBWTs2R0FBWixZQUFZLGNBREMsTUFBTTsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0NvbnRlbnQsIER5bmFtaWNUZXh0Q29udGVudCwgRHluYW1pY1ZpZXdTZXJ2aWNlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9keW5hbWljLXZpZXcnO1xuaW1wb3J0IHsgaXNWaWV3Q29udGFpbmVyIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGRlZXBtZXJnZSB9IGZyb20gJ2RlZXBtZXJnZS10cyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgcHJvdmlkZU1vZGFsUmVmIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgaW5qZWN0TW9kYWxNb2R1bGVDb25maWcgfSBmcm9tICcuL21vZGFsLmNvbmZpZyc7XG5pbXBvcnQgeyBNb2RhbE9wdGlvbnMsIE1vZGFsUmVmLCBNb2RhbFR5cGUgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBPcGVuTW9kYWxNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vZGFsU2VydmljZSB7XG4gIHByaXZhdGUgc3RhdGljIElEID0gMDtcbiAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgbW9kdWxlQ29uZmlnID0gaW5qZWN0TW9kYWxNb2R1bGVDb25maWcoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3Blbk1vZGFsTWFuYWdlciA9IGluamVjdChPcGVuTW9kYWxNYW5hZ2VyU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZHluYW1pY1ZpZXdTZXJ2aWNlID0gaW5qZWN0KER5bmFtaWNWaWV3U2VydmljZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IG9wZW5Nb2RhbHMkID0gdGhpcy5vcGVuTW9kYWxNYW5hZ2VyLm1vZGFscyQ7XG5cbiAgcHVibGljIGRpc21pc3NBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuTW9kYWxNYW5hZ2VyLmRpc21pc3NBbGwoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNb2RhbEJ5SWQ8RGF0YSA9IHVua25vd24sIFJlc3VsdCA9IHVua25vd24+KGlkOiBNb2RhbE9wdGlvbnNbJ2lkJ10pOiBNb2RhbFJlZjxEYXRhLCBSZXN1bHQ+IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMub3Blbk1vZGFsTWFuYWdlci5nZXRCeUlkKGlkKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuPERhdGEsIFJlc3VsdCwgVD4oY29udGVudDogVGVtcGxhdGVSZWY8VD4sIG9wdGlvbnM/OiBQYXJ0aWFsPE1vZGFsT3B0aW9uczxEYXRhPj4pOiBNb2RhbFJlZjxEYXRhLCBSZXN1bHQ+O1xuICBwdWJsaWMgb3BlbjxEYXRhLCBSZXN1bHQsIFQgPSB1bmtub3duPihjb250ZW50OiBNb2RhbFR5cGU8VCwgRGF0YSwgUmVzdWx0Piwgb3B0aW9ucz86IFBhcnRpYWw8TW9kYWxPcHRpb25zPERhdGE+Pik6IE1vZGFsUmVmPERhdGEsIFJlc3VsdD47XG4gIHB1YmxpYyBvcGVuKGNvbnRlbnQ6IE1vZGFsVHlwZTx1bmtub3duPiB8IFRlbXBsYXRlUmVmPHVua25vd24+LCBvcHRpb25zPzogUGFydGlhbDxNb2RhbE9wdGlvbnM+KTogTW9kYWxSZWYge1xuICAgIGNvbnN0IG1lcmdlZE9wdGlvbnMgPSB0aGlzLm1lcmdlT3B0aW9ucyhvcHRpb25zKTtcbiAgICBjb25zdCBtb2RhbFJlZiA9IG5ldyBNb2RhbFJlZihtZXJnZWRPcHRpb25zKTtcbiAgICB0aGlzLm9wZW5Nb2RhbE1hbmFnZXIuYWRkKG1vZGFsUmVmKTtcbiAgICB0aGlzLmF0dGFjaE1vZGFsKG1vZGFsUmVmLCBjb250ZW50KTtcblxuICAgIHJldHVybiBtb2RhbFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgYXR0YWNoTW9kYWwobW9kYWxSZWY6IE1vZGFsUmVmLCBjb250ZW50OiBFeGNsdWRlPER5bmFtaWNDb250ZW50LCBEeW5hbWljVGV4dENvbnRlbnQ+KTogdm9pZCB7XG4gICAgY29uc3QgaG9zdEVsZW1lbnQgPSBtb2RhbFJlZi5vcHRpb25zLmhvc3Q7XG4gICAgY29uc3QgaXNWaWV3Q29udGFpbmVySG9zdCA9IGlzVmlld0NvbnRhaW5lcihob3N0RWxlbWVudCk7XG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcHJvdmlkZXJzOiBbcHJvdmlkZU1vZGFsUmVmKG1vZGFsUmVmKV0sXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG4gICAgY29uc3Qgdmlld1JlZiA9IHRoaXMuZHluYW1pY1ZpZXdTZXJ2aWNlLmNyZWF0ZVZpZXcoTW9kYWxDb21wb25lbnQsIHtcbiAgICAgIGNvbnRleHQ6IHsgY29udGVudCB9LFxuICAgICAgaW5qZWN0b3IsXG4gICAgICB2Y3I6IGlzVmlld0NvbnRhaW5lckhvc3QgPyBob3N0RWxlbWVudCA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgICBjb25zdCBvbkRlc3Ryb3kgPSAoKSA9PiB7XG4gICAgICB2aWV3UmVmLmRlc3Ryb3koKTtcbiAgICAgIHRoaXMub3Blbk1vZGFsTWFuYWdlci5yZW1vdmUobW9kYWxSZWYpO1xuICAgIH07XG5cbiAgICBpZiAoIWlzVmlld0NvbnRhaW5lckhvc3QpIHtcbiAgICAgIGhvc3RFbGVtZW50LmFwcGVuZENoaWxkKHZpZXdSZWYuZ2V0RWxlbWVudCgpKTtcbiAgICB9XG4gICAgbW9kYWxSZWYub25EZXN0cm95JC5waXBlKGZpbmFsaXplKCgpID0+IG9uRGVzdHJveSgpKSkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIG1lcmdlT3B0aW9ucyhvcHRpb25zPzogUGFydGlhbDxNb2RhbE9wdGlvbnM+KTogTW9kYWxPcHRpb25zIHtcbiAgICByZXR1cm4gZGVlcG1lcmdlKFxuICAgICAgdGhpcy5tb2R1bGVDb25maWcsXG4gICAgICB7XG4gICAgICAgIGlkOiBgb2R4LW1vZGFsLSR7TW9kYWxTZXJ2aWNlLklEKyt9YCxcbiAgICAgICAgaG9zdDogdGhpcy5kb2N1bWVudC5ib2R5LFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnMgPz8ge31cbiAgICApIGFzIE1vZGFsT3B0aW9ucztcbiAgfVxufVxuIl19
76
+ }], ctorParameters: function () { return [{ type: i1.Location }]; } });
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL21vZGFsL3NyYy9saWIvbW9kYWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBc0Msa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBdUQsUUFBUSxFQUFFLFNBQVMsRUFBYSxNQUFNLFVBQVUsQ0FBQzs7O0FBRy9HLE1BQU0sT0FBTyxZQUFZO0lBU3ZCLFlBQVksUUFBa0I7UUFQYixXQUFNLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQztRQUM3QixlQUFVLEdBQUcsSUFBSSxLQUFLLEVBQVksQ0FBQztRQUNuQyxhQUFRLEdBQUcsV0FBVyxFQUFFLENBQUM7UUFDekIsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFakQsZ0JBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUduRCxRQUFRLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUN4QixLQUFLLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ2hELElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRTtvQkFDeEMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO2lCQUNwQjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sVUFBVTtRQUNmLEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNoRCxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRU0sWUFBWSxDQUFtQyxFQUFzQjtRQUMxRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBMkIsQ0FBQztJQUMzRCxDQUFDO0lBR00sTUFBTSxDQUFDLEtBQXdCLEVBQUUsT0FBc0I7UUFDNUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQ3BDLElBQUksRUFBRSxLQUFLO1lBQ1gsSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLO1lBQ3JCLEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7SUFJTSxJQUFJLENBQUMsT0FBa0QsRUFBRSxPQUErQjtRQUM3RixNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxhQUFhLFlBQVksQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBaUIsQ0FBQztRQUN0SCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ3ZDLE1BQU0sS0FBSyxDQUFDLGlCQUFpQixhQUFhLENBQUMsRUFBRSxlQUFlLENBQUMsQ0FBQztTQUMvRDtRQUNELE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBQ08sV0FBVyxDQUFDLFFBQWtCLEVBQUUsT0FBb0Q7UUFDMUYsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUU7WUFDakUsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFO1lBQ3BCLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDO2dCQUN4QixTQUFTLEVBQUUsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTthQUN0QixDQUFDO1lBQ0YsSUFBSSxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSTtTQUM1QixDQUFDLENBQUM7UUFDSCxNQUFNLFNBQVMsR0FBRyxHQUFHLEVBQUU7WUFDckIsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQztRQUVGLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVELENBQUM7O0FBakVjLGVBQUUsR0FBRyxDQUFDLENBQUM7eUdBRFgsWUFBWTs2R0FBWixZQUFZLGNBREMsTUFBTTsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0NvbnRlbnQsIER5bmFtaWNUZXh0Q29udGVudCwgRHluYW1pY1ZpZXdTZXJ2aWNlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9keW5hbWljLXZpZXcnO1xuaW1wb3J0IHsgZGVmZXJGbiwgZ2V0SW5qZWN0b3IsIFF1ZXVlIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGRlZXBtZXJnZSB9IGZyb20gJ2RlZXBtZXJnZS10cyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmFzaWNNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBwcm92aWRlTW9kYWxSZWYgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBpbmplY3RNb2RhbENvbmZpZyB9IGZyb20gJy4vbW9kYWwuY29uZmlnJztcbmltcG9ydCB7IEJhc2ljTW9kYWxPcHRpb25zLCBHZXRNb2RhbEFjdGlvbkRhdGEsIE1vZGFsT3B0aW9ucywgTW9kYWxSZWYsIE1vZGFsU2l6ZSwgTW9kYWxUeXBlIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vZGFsU2VydmljZSB7XG4gIHByaXZhdGUgc3RhdGljIElEID0gMDtcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWcgPSBpbmplY3RNb2RhbENvbmZpZygpO1xuICBwcml2YXRlIHJlYWRvbmx5IG9wZW5Nb2RhbHMgPSBuZXcgUXVldWU8TW9kYWxSZWY+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3IgPSBnZXRJbmplY3RvcigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGR5bmFtaWNWaWV3U2VydmljZSA9IGluamVjdChEeW5hbWljVmlld1NlcnZpY2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBvcGVuTW9kYWxzJCA9IHRoaXMub3Blbk1vZGFscy52YWx1ZSQ7XG5cbiAgY29uc3RydWN0b3IobG9jYXRpb246IExvY2F0aW9uKSB7XG4gICAgbG9jYXRpb24ub25VcmxDaGFuZ2UoKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCBtb2RhbFJlZiBvZiB0aGlzLm9wZW5Nb2RhbHMudG9BcnJheSgpKSB7XG4gICAgICAgIGlmIChtb2RhbFJlZi5vcHRpb25zLmRpc21pc3NPbk5hdmlnYXRpb24pIHtcbiAgICAgICAgICBtb2RhbFJlZi5kZXN0cm95KCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkaXNtaXNzQWxsKCk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgbW9kYWxSZWYgb2YgdGhpcy5vcGVuTW9kYWxzLnRvQXJyYXkoKSkge1xuICAgICAgbW9kYWxSZWYuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRNb2RhbEJ5SWQ8RGF0YSA9IHVua25vd24sIFJlc3VsdCA9IHVua25vd24+KGlkOiBNb2RhbE9wdGlvbnNbJ2lkJ10pOiBNb2RhbFJlZjxEYXRhLCBSZXN1bHQ+IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMub3Blbk1vZGFscy5nZXQoaWQpIGFzIE1vZGFsUmVmPERhdGEsIFJlc3VsdD47XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlPERhdGEgZXh0ZW5kcyBCYXNpY01vZGFsT3B0aW9ucywgUmVzdWx0ID0gR2V0TW9kYWxBY3Rpb25EYXRhPERhdGE+Pihtb2RhbDogRGF0YSwgb3B0aW9ucz86IFBhcnRpYWw8TW9kYWxPcHRpb25zPERhdGE+Pik6IE1vZGFsUmVmPERhdGEsIFJlc3VsdD47XG4gIHB1YmxpYyBjcmVhdGUobW9kYWw6IEJhc2ljTW9kYWxPcHRpb25zLCBvcHRpb25zPzogTW9kYWxPcHRpb25zKTogTW9kYWxSZWYge1xuICAgIHJldHVybiB0aGlzLm9wZW4oQmFzaWNNb2RhbENvbXBvbmVudCwge1xuICAgICAgZGF0YTogbW9kYWwsXG4gICAgICBzaXplOiBNb2RhbFNpemUuU01BTEwsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9wZW48RGF0YSwgUmVzdWx0LCBUPihjb250ZW50OiBUZW1wbGF0ZVJlZjxUPiwgb3B0aW9ucz86IFBhcnRpYWw8TW9kYWxPcHRpb25zPERhdGE+Pik6IE1vZGFsUmVmPERhdGEsIFJlc3VsdD47XG4gIHB1YmxpYyBvcGVuPERhdGEsIFJlc3VsdCwgVCA9IHVua25vd24+KGNvbnRlbnQ6IE1vZGFsVHlwZTxULCBEYXRhLCBSZXN1bHQ+LCBvcHRpb25zPzogUGFydGlhbDxNb2RhbE9wdGlvbnM8RGF0YT4+KTogTW9kYWxSZWY8RGF0YSwgUmVzdWx0PjtcbiAgcHVibGljIG9wZW4oY29udGVudDogTW9kYWxUeXBlPHVua25vd24+IHwgVGVtcGxhdGVSZWY8dW5rbm93bj4sIG9wdGlvbnM/OiBQYXJ0aWFsPE1vZGFsT3B0aW9ucz4pOiBNb2RhbFJlZiB7XG4gICAgY29uc3QgbWVyZ2VkT3B0aW9ucyA9IGRlZXBtZXJnZSh0aGlzLmNvbmZpZywgeyBpZDogYG9keC1tb2RhbC0ke01vZGFsU2VydmljZS5JRCsrfWAgfSwgb3B0aW9ucyA/PyB7fSkgYXMgTW9kYWxPcHRpb25zO1xuICAgIGlmICh0aGlzLmdldE1vZGFsQnlJZChtZXJnZWRPcHRpb25zLmlkKSkge1xuICAgICAgdGhyb3cgRXJyb3IoYE1vZGFsIHdpdGggSUQgJHttZXJnZWRPcHRpb25zLmlkfSBhbHJlYWR5IG9wZW5gKTtcbiAgICB9XG4gICAgY29uc3QgbW9kYWxSZWYgPSBuZXcgTW9kYWxSZWYobWVyZ2VkT3B0aW9ucywgKHJlZikgPT4gdGhpcy5vcGVuTW9kYWxzLmlzRmlyc3QocmVmKSk7XG4gICAgdGhpcy5hdHRhY2hNb2RhbChtb2RhbFJlZiwgY29udGVudCk7XG4gICAgdGhpcy5vcGVuTW9kYWxzLmFkZChtb2RhbFJlZik7XG5cbiAgICByZXR1cm4gbW9kYWxSZWY7XG4gIH1cbiAgcHJpdmF0ZSBhdHRhY2hNb2RhbChtb2RhbFJlZjogTW9kYWxSZWYsIGNvbnRlbnQ6IEV4Y2x1ZGU8RHluYW1pY0NvbnRlbnQsIER5bmFtaWNUZXh0Q29udGVudD4pOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3UmVmID0gdGhpcy5keW5hbWljVmlld1NlcnZpY2UuY3JlYXRlVmlldyhNb2RhbENvbXBvbmVudCwge1xuICAgICAgY29udGV4dDogeyBjb250ZW50IH0sXG4gICAgICBpbmplY3RvcjogSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgICAgcHJvdmlkZXJzOiBbcHJvdmlkZU1vZGFsUmVmKG1vZGFsUmVmKV0sXG4gICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICAgIH0pLFxuICAgICAgaG9zdDogbW9kYWxSZWYub3B0aW9ucy5ob3N0LFxuICAgIH0pO1xuICAgIGNvbnN0IG9uRGVzdHJveSA9ICgpID0+IHtcbiAgICAgIHZpZXdSZWYuZGVzdHJveSgpO1xuICAgICAgZGVmZXJGbigoKSA9PiB0aGlzLm9wZW5Nb2RhbHMucmVtb3ZlKG1vZGFsUmVmKSk7XG4gICAgfTtcblxuICAgIG1vZGFsUmVmLm9uRGVzdHJveSQucGlwZShmaW5hbGl6ZShvbkRlc3Ryb3kpKS5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19