@daffodil/design 0.77.0 → 0.78.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (468) hide show
  1. package/accordion/README.md +40 -2
  2. package/accordion/accordion/accordion/accordion.component.d.ts +1 -1
  3. package/accordion/accordion/accordion-item/accordion-item.component.d.ts +19 -8
  4. package/accordion/accordion/accordion-item-title/accordion-item-title.directive.d.ts +1 -1
  5. package/accordion/accordion.d.ts +4 -0
  6. package/accordion/accordion.module.d.ts +6 -7
  7. package/accordion/examples/basic-accordion/basic-accordion.component.d.ts +1 -1
  8. package/accordion/examples/public_api.d.ts +0 -1
  9. package/accordion/public_api.d.ts +1 -0
  10. package/article/README.md +42 -1
  11. package/article/article/article.component.d.ts +1 -1
  12. package/article/article-meta/article-meta.directive.d.ts +1 -1
  13. package/article/article.d.ts +3 -0
  14. package/article/article.module.d.ts +5 -4
  15. package/article/public_api.d.ts +2 -1
  16. package/button/README.md +41 -0
  17. package/button/button/button.component.d.ts +1 -1
  18. package/button/button.d.ts +3 -0
  19. package/button/button.module.d.ts +4 -4
  20. package/button/public_api.d.ts +2 -1
  21. package/callout/README.md +42 -0
  22. package/callout/callout/callout.component.d.ts +1 -1
  23. package/callout/callout-body/callout-body.directive.d.ts +1 -1
  24. package/callout/callout-icon/callout-icon.directive.d.ts +1 -1
  25. package/callout/callout-subtitle/callout-subtitle.directive.d.ts +1 -1
  26. package/callout/callout-tagline/callout-tagline.directive.d.ts +1 -1
  27. package/callout/callout-title/callout-title.directive.d.ts +1 -1
  28. package/callout/callout.d.ts +7 -0
  29. package/callout/callout.module.d.ts +9 -8
  30. package/callout/public_api.d.ts +1 -0
  31. package/card/README.md +41 -0
  32. package/card/card/card.component.d.ts +1 -1
  33. package/card/card-actions/card-actions.directive.d.ts +1 -1
  34. package/card/card-content/card-content.directive.d.ts +1 -1
  35. package/card/card-icon/card-icon.directive.d.ts +1 -1
  36. package/card/card-image/card-image.directive.d.ts +1 -1
  37. package/card/card-tagline/card-tagline.directive.d.ts +1 -1
  38. package/card/card-title/card-title.directive.d.ts +1 -1
  39. package/card/card.d.ts +8 -0
  40. package/card/card.module.d.ts +12 -9
  41. package/card/public_api.d.ts +1 -0
  42. package/container/README.md +42 -1
  43. package/container/container/container.component.d.ts +1 -1
  44. package/container/container.d.ts +2 -0
  45. package/container/container.module.d.ts +6 -3
  46. package/container/public_api.d.ts +1 -0
  47. package/core/openable/openable.d.ts +13 -0
  48. package/core/openable/openable.directive.d.ts +81 -0
  49. package/core/openable/public_api.d.ts +2 -0
  50. package/core/openable/utils/state-error.d.ts +1 -0
  51. package/core/public_api.d.ts +1 -0
  52. package/esm2022/accordion/accordion/accordion/accordion.component.mjs +3 -3
  53. package/esm2022/accordion/accordion/accordion-item/accordion-item.component.mjs +38 -22
  54. package/esm2022/accordion/accordion/accordion-item-title/accordion-item-title.directive.mjs +3 -2
  55. package/esm2022/accordion/accordion.mjs +9 -0
  56. package/esm2022/accordion/accordion.module.mjs +6 -14
  57. package/esm2022/accordion/examples/basic-accordion/basic-accordion.component.mjs +6 -3
  58. package/esm2022/accordion/examples/public_api.mjs +1 -2
  59. package/esm2022/accordion/public_api.mjs +2 -1
  60. package/esm2022/article/article/article.component.mjs +3 -3
  61. package/esm2022/article/article-meta/article-meta.directive.mjs +3 -2
  62. package/esm2022/article/article.mjs +7 -0
  63. package/esm2022/article/article.module.mjs +5 -5
  64. package/esm2022/article/examples/article-blockquote/article-blockquote.component.mjs +6 -4
  65. package/esm2022/article/examples/article-code-block/article-code-block.component.mjs +6 -4
  66. package/esm2022/article/examples/article-code-inline/article-code-inline.component.mjs +6 -4
  67. package/esm2022/article/examples/article-headings/article-headings.component.mjs +7 -3
  68. package/esm2022/article/examples/article-hr/article-hr.component.mjs +6 -4
  69. package/esm2022/article/examples/article-link/article-link.component.mjs +6 -4
  70. package/esm2022/article/examples/article-meta/article-meta.component.mjs +6 -4
  71. package/esm2022/article/examples/article-ol/article-ol.component.mjs +6 -4
  72. package/esm2022/article/examples/article-table/article-table.component.mjs +6 -4
  73. package/esm2022/article/examples/article-ul/article-ul.component.mjs +6 -4
  74. package/esm2022/article/public_api.mjs +3 -2
  75. package/esm2022/button/button/button.component.mjs +11 -6
  76. package/esm2022/button/button.mjs +7 -0
  77. package/esm2022/button/button.module.mjs +5 -11
  78. package/esm2022/button/examples/basic-button/basic-button.component.mjs +4 -6
  79. package/esm2022/button/examples/flat-button/flat-button.component.mjs +4 -6
  80. package/esm2022/button/examples/icon-button/icon-button.component.mjs +8 -4
  81. package/esm2022/button/examples/raised-button/raised-button.component.mjs +4 -6
  82. package/esm2022/button/examples/sizeable-button/sizeable-button.component.mjs +8 -4
  83. package/esm2022/button/examples/statusable-button/statusable-button.component.mjs +8 -4
  84. package/esm2022/button/examples/stroked-button/stroked-button.component.mjs +4 -6
  85. package/esm2022/button/examples/underline-button/underline-button.component.mjs +4 -6
  86. package/esm2022/button/public_api.mjs +3 -2
  87. package/esm2022/callout/callout/callout.component.mjs +4 -4
  88. package/esm2022/callout/callout-body/callout-body.directive.mjs +3 -2
  89. package/esm2022/callout/callout-icon/callout-icon.directive.mjs +3 -2
  90. package/esm2022/callout/callout-subtitle/callout-subtitle.directive.mjs +3 -2
  91. package/esm2022/callout/callout-tagline/callout-tagline.directive.mjs +3 -2
  92. package/esm2022/callout/callout-title/callout-title.directive.mjs +3 -2
  93. package/esm2022/callout/callout.mjs +15 -0
  94. package/esm2022/callout/callout.module.mjs +5 -5
  95. package/esm2022/callout/examples/callout-text-alignment/callout-text-alignment.component.mjs +10 -9
  96. package/esm2022/callout/examples/callout-theming/callout-theming.component.mjs +8 -7
  97. package/esm2022/callout/examples/callout-with-grid/callout-with-grid.component.mjs +9 -8
  98. package/esm2022/callout/examples/compact-callout/compact-callout.component.mjs +9 -8
  99. package/esm2022/callout/public_api.mjs +2 -1
  100. package/esm2022/card/card/card.component.mjs +3 -3
  101. package/esm2022/card/card-actions/card-actions.directive.mjs +3 -2
  102. package/esm2022/card/card-content/card-content.directive.mjs +3 -2
  103. package/esm2022/card/card-icon/card-icon.directive.mjs +3 -2
  104. package/esm2022/card/card-image/card-image.directive.mjs +3 -2
  105. package/esm2022/card/card-tagline/card-tagline.directive.mjs +3 -2
  106. package/esm2022/card/card-title/card-title.directive.mjs +3 -2
  107. package/esm2022/card/card.mjs +17 -0
  108. package/esm2022/card/card.module.mjs +7 -5
  109. package/esm2022/card/examples/basic-card/basic-card.component.mjs +9 -8
  110. package/esm2022/card/examples/card-orientation/card-orientation.component.mjs +10 -9
  111. package/esm2022/card/examples/card-theming/card-theming.component.mjs +4 -4
  112. package/esm2022/card/examples/linkable-card/linkable-card.component.mjs +6 -6
  113. package/esm2022/card/examples/raised-card/raised-card.component.mjs +6 -6
  114. package/esm2022/card/examples/stroked-card/stroked-card.component.mjs +6 -6
  115. package/esm2022/card/public_api.mjs +2 -1
  116. package/esm2022/checkbox/examples/basic-checkbox/basic-checkbox.component.mjs +4 -4
  117. package/esm2022/checkbox/examples/checkbox-set/checkbox-set.component.mjs +4 -4
  118. package/esm2022/container/container/container.component.mjs +3 -3
  119. package/esm2022/container/container.mjs +5 -0
  120. package/esm2022/container/container.module.mjs +6 -4
  121. package/esm2022/container/examples/container-sizes/container-sizes.component.mjs +4 -4
  122. package/esm2022/container/public_api.mjs +2 -1
  123. package/esm2022/core/openable/openable.directive.mjs +122 -0
  124. package/esm2022/core/openable/openable.mjs +2 -0
  125. package/esm2022/core/openable/public_api.mjs +2 -0
  126. package/esm2022/core/openable/utils/state-error.mjs +2 -0
  127. package/esm2022/core/public_api.mjs +2 -1
  128. package/esm2022/hero/examples/compact-hero/compact-hero.component.mjs +7 -6
  129. package/esm2022/hero/examples/hero-text-alignment/hero-text-alignment.component.mjs +10 -9
  130. package/esm2022/hero/examples/hero-theming/hero-theming.component.mjs +8 -7
  131. package/esm2022/hero/examples/hero-with-grid/hero-with-grid.component.mjs +9 -8
  132. package/esm2022/hero/hero/hero.component.mjs +4 -7
  133. package/esm2022/hero/hero-body/hero-body.directive.mjs +3 -2
  134. package/esm2022/hero/hero-icon/hero-icon.directive.mjs +3 -2
  135. package/esm2022/hero/hero-subtitle/hero-subtitle.directive.mjs +3 -2
  136. package/esm2022/hero/hero-tagline/hero-tagline.directive.mjs +3 -2
  137. package/esm2022/hero/hero-title/hero-title.directive.mjs +3 -2
  138. package/esm2022/hero/hero.mjs +15 -0
  139. package/esm2022/hero/hero.module.mjs +7 -5
  140. package/esm2022/hero/public_api.mjs +2 -1
  141. package/esm2022/image/examples/basic-image/basic-image.component.mjs +6 -4
  142. package/esm2022/image/examples/load-image/load-image.component.mjs +7 -4
  143. package/esm2022/image/examples/skeleton-image/skeleton-image.component.mjs +6 -4
  144. package/esm2022/image/image/image.component.mjs +3 -3
  145. package/esm2022/image/image.mjs +5 -0
  146. package/esm2022/image/image.module.mjs +7 -5
  147. package/esm2022/image/public_api.mjs +2 -1
  148. package/esm2022/link-set/link-set/link-set.component.mjs +3 -3
  149. package/esm2022/link-set/link-set-heading/link-set-heading.directive.mjs +3 -2
  150. package/esm2022/link-set/link-set-item/link-set-item.component.mjs +3 -2
  151. package/esm2022/link-set/link-set-subheading/link-set-subheading.directive.mjs +3 -2
  152. package/esm2022/link-set/link-set.mjs +11 -0
  153. package/esm2022/link-set/link-set.module.mjs +8 -6
  154. package/esm2022/link-set/public_api.mjs +2 -1
  155. package/esm2022/list/examples/basic-list/basic-list.component.mjs +7 -4
  156. package/esm2022/list/examples/icon-list/icon-list.component.mjs +4 -6
  157. package/esm2022/list/examples/multiline-list/multiline-list.component.mjs +7 -4
  158. package/esm2022/list/examples/nav-list/nav-list.component.mjs +4 -6
  159. package/esm2022/list/list/list.component.mjs +3 -3
  160. package/esm2022/list/list-item/list-item.component.mjs +8 -5
  161. package/esm2022/list/list.mjs +9 -0
  162. package/esm2022/list/list.module.mjs +8 -8
  163. package/esm2022/list/public_api.mjs +2 -1
  164. package/esm2022/loading-icon/examples/loading-icon-color/loading-icon-color.component.mjs +4 -4
  165. package/esm2022/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.mjs +6 -4
  166. package/esm2022/loading-icon/loading-icon/loading-icon.component.mjs +3 -3
  167. package/esm2022/loading-icon/loading-icon.mjs +5 -0
  168. package/esm2022/loading-icon/loading-icon.module.mjs +6 -4
  169. package/esm2022/loading-icon/public_api.mjs +2 -1
  170. package/esm2022/media-gallery/examples/basic-media-gallery/basic-media-gallery.component.mjs +8 -5
  171. package/esm2022/media-gallery/examples/mismatched-sizes-media-gallery/mismatched-sizes-media-gallery.component.mjs +8 -5
  172. package/esm2022/media-gallery/examples/skeleton-media-gallery/skeleton-media-gallery.component.mjs +8 -5
  173. package/esm2022/media-gallery/media-gallery/media-gallery.component.mjs +9 -5
  174. package/esm2022/media-gallery/media-gallery.mjs +9 -0
  175. package/esm2022/media-gallery/media-gallery.module.mjs +11 -9
  176. package/esm2022/media-gallery/media-renderer/media-renderer.component.mjs +3 -2
  177. package/esm2022/media-gallery/public_api.mjs +2 -1
  178. package/esm2022/media-gallery/thumbnail/thumbnail.directive.mjs +3 -2
  179. package/esm2022/menu/examples/basic-menu/basic-menu.component.mjs +9 -5
  180. package/esm2022/menu/examples/basic-menu/menu-content/menu-content.component.mjs +6 -3
  181. package/esm2022/menu/menu/menu.component.mjs +6 -3
  182. package/esm2022/menu/menu-activator/menu-activator.component.mjs +3 -2
  183. package/esm2022/menu/menu-item/menu-item.component.mjs +8 -5
  184. package/esm2022/menu/menu.module.mjs +8 -7
  185. package/esm2022/menu/services/menu.service.mjs +8 -7
  186. package/esm2022/modal/examples/basic-modal/basic-modal.component.mjs +13 -5
  187. package/esm2022/modal/examples/basic-modal/modal-content.component.mjs +9 -5
  188. package/esm2022/modal/modal/modal.component.mjs +47 -21
  189. package/esm2022/modal/modal-actions/modal-actions.component.mjs +3 -2
  190. package/esm2022/modal/modal-close/modal-close.directive.mjs +3 -2
  191. package/esm2022/modal/modal-content/modal-content.component.mjs +3 -2
  192. package/esm2022/modal/modal-header/modal-header.component.mjs +14 -7
  193. package/esm2022/modal/modal-title/modal-title.directive.mjs +3 -2
  194. package/esm2022/modal/modal.mjs +13 -0
  195. package/esm2022/modal/modal.module.mjs +17 -11
  196. package/esm2022/modal/public_api.mjs +2 -1
  197. package/esm2022/modal/service/modal.service.mjs +7 -5
  198. package/esm2022/navbar/examples/basic-navbar/basic-navbar.component.mjs +9 -5
  199. package/esm2022/navbar/examples/contained-navbar/contained-navbar.component.mjs +9 -8
  200. package/esm2022/navbar/examples/navbar-theming/navbar-theming.component.mjs +8 -7
  201. package/esm2022/navbar/examples/raised-navbar/raised-navbar.component.mjs +9 -5
  202. package/esm2022/navbar/navbar/navbar.component.mjs +3 -6
  203. package/esm2022/navbar/navbar.mjs +5 -0
  204. package/esm2022/navbar/navbar.module.mjs +10 -4
  205. package/esm2022/navbar/public_api.mjs +2 -1
  206. package/esm2022/notification/examples/default-notification/default-notification.component.mjs +6 -6
  207. package/esm2022/notification/examples/dismissible-notification/dismissible-notification.component.mjs +4 -4
  208. package/esm2022/notification/examples/notification-orientations/notification-orientations.component.mjs +6 -6
  209. package/esm2022/notification/examples/notification-status/notification-status.component.mjs +6 -6
  210. package/esm2022/notification/examples/notification-with-actions/notification-with-actions.component.mjs +6 -6
  211. package/esm2022/notification/notification/notification.component.mjs +10 -6
  212. package/esm2022/notification/notification-actions/notification-actions.directive.mjs +3 -2
  213. package/esm2022/notification/notification-message/notification-message.directive.mjs +3 -2
  214. package/esm2022/notification/notification-subtitle/notification-subtitle.directive.mjs +3 -2
  215. package/esm2022/notification/notification-title/notification-title.directive.mjs +3 -2
  216. package/esm2022/notification/notification.mjs +15 -0
  217. package/esm2022/notification/notification.module.mjs +11 -8
  218. package/esm2022/notification/public_api.mjs +2 -1
  219. package/esm2022/paginator/examples/basic-paginator/basic-paginator.component.mjs +4 -4
  220. package/esm2022/paginator/examples/link-paginator/link-paginator.component.mjs +4 -4
  221. package/esm2022/paginator/paginator/paginator.component.mjs +12 -9
  222. package/esm2022/paginator/paginator.mjs +5 -0
  223. package/esm2022/paginator/paginator.module.mjs +9 -6
  224. package/esm2022/paginator/public_api.mjs +2 -1
  225. package/esm2022/progress-bar/examples/progress-bar-default/progress-bar-default.component.mjs +6 -4
  226. package/esm2022/progress-bar/examples/progress-bar-indeterminate/progress-bar-indeterminate.component.mjs +6 -4
  227. package/esm2022/progress-bar/examples/progress-bar-themes/progress-bar-themes.component.mjs +7 -4
  228. package/esm2022/progress-bar/progress-bar-label/progress-bar-label.directive.mjs +20 -0
  229. package/esm2022/progress-bar/progress-bar.component.mjs +5 -3
  230. package/esm2022/progress-bar/progress-bar.mjs +7 -0
  231. package/esm2022/progress-bar/progress-bar.module.mjs +11 -4
  232. package/esm2022/progress-bar/public_api.mjs +3 -1
  233. package/esm2022/sidebar/examples/basic-sidebar/basic-sidebar.component.mjs +6 -4
  234. package/esm2022/sidebar/examples/over-and-under-sidebars/over-and-under-sidebars.component.mjs +9 -8
  235. package/esm2022/sidebar/examples/side-fixed-sidebar/side-fixed-sidebar.component.mjs +5 -5
  236. package/esm2022/sidebar/examples/sidebar-with-sticky-content/sidebar-with-sticky-content.component.mjs +6 -4
  237. package/esm2022/sidebar/public_api.mjs +2 -1
  238. package/esm2022/sidebar/sidebar/sidebar.component.mjs +35 -15
  239. package/esm2022/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  240. package/esm2022/sidebar/sidebar-header/sidebar-header-action/sidebar-header-action.directive.mjs +3 -2
  241. package/esm2022/sidebar/sidebar-header/sidebar-header-title/sidebar-header-title.directive.mjs +3 -2
  242. package/esm2022/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  243. package/esm2022/sidebar/sidebar-viewport/sidebar-viewport.component.mjs +22 -38
  244. package/esm2022/sidebar/sidebar-viewport/utils/content-pad.mjs +6 -6
  245. package/esm2022/sidebar/sidebar-viewport-backdrop/sidebar-viewport-backdrop.component.mjs +3 -3
  246. package/esm2022/sidebar/sidebar.mjs +17 -0
  247. package/esm2022/sidebar/sidebar.module.mjs +8 -6
  248. package/esm2022/toast/examples/default-toast/default-toast.component.mjs +7 -4
  249. package/esm2022/toast/examples/toast-positions/toast-positions.component.mjs +8 -4
  250. package/esm2022/toast/examples/toast-status/toast-status.component.mjs +12 -7
  251. package/esm2022/toast/examples/toast-with-custom-duration/toast-with-custom-duration.component.mjs +7 -4
  252. package/esm2022/toast/public_api.mjs +2 -1
  253. package/esm2022/toast/service/toast.service.mjs +9 -10
  254. package/esm2022/toast/toast/toast-provider.mjs +7 -0
  255. package/esm2022/toast/toast/toast-template.component.mjs +30 -12
  256. package/esm2022/toast/toast/toast.component.mjs +6 -9
  257. package/esm2022/toast/toast-actions/toast-actions.directive.mjs +3 -2
  258. package/esm2022/toast/toast-message/toast-message.directive.mjs +3 -2
  259. package/esm2022/toast/toast-title/toast-title.directive.mjs +3 -2
  260. package/esm2022/toast/toast.module.mjs +10 -11
  261. package/esm2022/tree/examples/basic-tree/basic-tree.component.mjs +7 -4
  262. package/esm2022/tree/public_api.mjs +2 -2
  263. package/esm2022/tree/tree/tree.component.mjs +8 -5
  264. package/esm2022/tree/tree-item/tree-item.directive.mjs +3 -2
  265. package/esm2022/tree/tree.mjs +7 -0
  266. package/esm2022/tree/tree.module.mjs +9 -7
  267. package/fesm2022/daffodil-design-accordion-examples.mjs +7 -26
  268. package/fesm2022/daffodil-design-accordion-examples.mjs.map +1 -1
  269. package/fesm2022/daffodil-design-accordion.mjs +52 -38
  270. package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
  271. package/fesm2022/daffodil-design-article-examples.mjs +41 -21
  272. package/fesm2022/daffodil-design-article-examples.mjs.map +1 -1
  273. package/fesm2022/daffodil-design-article.mjs +15 -9
  274. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  275. package/fesm2022/daffodil-design-button-examples.mjs +27 -24
  276. package/fesm2022/daffodil-design-button-examples.mjs.map +1 -1
  277. package/fesm2022/daffodil-design-button.mjs +21 -18
  278. package/fesm2022/daffodil-design-button.mjs.map +1 -1
  279. package/fesm2022/daffodil-design-callout-examples.mjs +20 -19
  280. package/fesm2022/daffodil-design-callout-examples.mjs.map +1 -1
  281. package/fesm2022/daffodil-design-callout.mjs +27 -13
  282. package/fesm2022/daffodil-design-callout.mjs.map +1 -1
  283. package/fesm2022/daffodil-design-card-examples.mjs +23 -22
  284. package/fesm2022/daffodil-design-card-examples.mjs.map +1 -1
  285. package/fesm2022/daffodil-design-card.mjs +31 -13
  286. package/fesm2022/daffodil-design-card.mjs.map +1 -1
  287. package/fesm2022/daffodil-design-checkbox-examples.mjs +5 -5
  288. package/fesm2022/daffodil-design-checkbox-examples.mjs.map +1 -1
  289. package/fesm2022/daffodil-design-container-examples.mjs +3 -3
  290. package/fesm2022/daffodil-design-container-examples.mjs.map +1 -1
  291. package/fesm2022/daffodil-design-container.mjs +12 -6
  292. package/fesm2022/daffodil-design-container.mjs.map +1 -1
  293. package/fesm2022/daffodil-design-hero-examples.mjs +19 -18
  294. package/fesm2022/daffodil-design-hero-examples.mjs.map +1 -1
  295. package/fesm2022/daffodil-design-hero.mjs +29 -16
  296. package/fesm2022/daffodil-design-hero.mjs.map +1 -1
  297. package/fesm2022/daffodil-design-image-examples.mjs +14 -7
  298. package/fesm2022/daffodil-design-image-examples.mjs.map +1 -1
  299. package/fesm2022/daffodil-design-image.mjs +13 -7
  300. package/fesm2022/daffodil-design-image.mjs.map +1 -1
  301. package/fesm2022/daffodil-design-link-set.mjs +23 -11
  302. package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
  303. package/fesm2022/daffodil-design-list-examples.mjs +14 -13
  304. package/fesm2022/daffodil-design-list-examples.mjs.map +1 -1
  305. package/fesm2022/daffodil-design-list.mjs +22 -14
  306. package/fesm2022/daffodil-design-list.mjs.map +1 -1
  307. package/fesm2022/daffodil-design-loading-icon-examples.mjs +7 -5
  308. package/fesm2022/daffodil-design-loading-icon-examples.mjs.map +1 -1
  309. package/fesm2022/daffodil-design-loading-icon.mjs +12 -6
  310. package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
  311. package/fesm2022/daffodil-design-media-gallery-examples.mjs +17 -8
  312. package/fesm2022/daffodil-design-media-gallery-examples.mjs.map +1 -1
  313. package/fesm2022/daffodil-design-media-gallery.mjs +70 -57
  314. package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
  315. package/fesm2022/daffodil-design-menu-examples.mjs +12 -5
  316. package/fesm2022/daffodil-design-menu-examples.mjs.map +1 -1
  317. package/fesm2022/daffodil-design-menu.mjs +55 -48
  318. package/fesm2022/daffodil-design-menu.mjs.map +1 -1
  319. package/fesm2022/daffodil-design-modal-examples.mjs +17 -6
  320. package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
  321. package/fesm2022/daffodil-design-modal.mjs +96 -49
  322. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  323. package/fesm2022/daffodil-design-navbar-examples.mjs +22 -15
  324. package/fesm2022/daffodil-design-navbar-examples.mjs.map +1 -1
  325. package/fesm2022/daffodil-design-navbar.mjs +16 -9
  326. package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
  327. package/fesm2022/daffodil-design-notification-examples.mjs +16 -16
  328. package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
  329. package/fesm2022/daffodil-design-notification.mjs +37 -19
  330. package/fesm2022/daffodil-design-notification.mjs.map +1 -1
  331. package/fesm2022/daffodil-design-paginator-examples.mjs +5 -5
  332. package/fesm2022/daffodil-design-paginator-examples.mjs.map +1 -1
  333. package/fesm2022/daffodil-design-paginator.mjs +23 -16
  334. package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
  335. package/fesm2022/daffodil-design-progress-bar-examples.mjs +14 -7
  336. package/fesm2022/daffodil-design-progress-bar-examples.mjs.map +1 -1
  337. package/fesm2022/daffodil-design-progress-bar.mjs +38 -8
  338. package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
  339. package/fesm2022/daffodil-design-sidebar-examples.mjs +19 -14
  340. package/fesm2022/daffodil-design-sidebar-examples.mjs.map +1 -1
  341. package/fesm2022/daffodil-design-sidebar.mjs +86 -68
  342. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  343. package/fesm2022/daffodil-design-toast-examples.mjs +23 -11
  344. package/fesm2022/daffodil-design-toast-examples.mjs.map +1 -1
  345. package/fesm2022/daffodil-design-toast.mjs +146 -127
  346. package/fesm2022/daffodil-design-toast.mjs.map +1 -1
  347. package/fesm2022/daffodil-design-tree-examples.mjs +6 -3
  348. package/fesm2022/daffodil-design-tree-examples.mjs.map +1 -1
  349. package/fesm2022/daffodil-design-tree.mjs +23 -35
  350. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  351. package/fesm2022/daffodil-design.mjs +123 -2
  352. package/fesm2022/daffodil-design.mjs.map +1 -1
  353. package/hero/README.md +41 -0
  354. package/hero/hero/hero.component.d.ts +1 -4
  355. package/hero/hero-body/hero-body.directive.d.ts +1 -1
  356. package/hero/hero-icon/hero-icon.directive.d.ts +1 -1
  357. package/hero/hero-subtitle/hero-subtitle.directive.d.ts +1 -1
  358. package/hero/hero-tagline/hero-tagline.directive.d.ts +1 -1
  359. package/hero/hero-title/hero-title.directive.d.ts +1 -1
  360. package/hero/hero.d.ts +7 -0
  361. package/hero/hero.module.d.ts +11 -8
  362. package/hero/public_api.d.ts +1 -0
  363. package/image/README.md +43 -7
  364. package/image/image/image.component.d.ts +1 -1
  365. package/image/image.d.ts +2 -0
  366. package/image/image.module.d.ts +6 -3
  367. package/image/public_api.d.ts +1 -0
  368. package/link-set/README.md +42 -1
  369. package/link-set/link-set/link-set.component.d.ts +1 -1
  370. package/link-set/link-set-heading/link-set-heading.directive.d.ts +1 -1
  371. package/link-set/link-set-item/link-set-item.component.d.ts +1 -1
  372. package/link-set/link-set-subheading/link-set-subheading.directive.d.ts +1 -1
  373. package/link-set/link-set.d.ts +5 -0
  374. package/link-set/link-set.module.d.ts +9 -6
  375. package/link-set/public_api.d.ts +1 -0
  376. package/list/README.md +42 -1
  377. package/list/list/list.component.d.ts +1 -1
  378. package/list/list-item/list-item.component.d.ts +1 -1
  379. package/list/list.d.ts +4 -0
  380. package/list/list.module.d.ts +7 -4
  381. package/list/public_api.d.ts +1 -0
  382. package/loading-icon/README.md +41 -0
  383. package/loading-icon/loading-icon/loading-icon.component.d.ts +1 -1
  384. package/loading-icon/loading-icon.d.ts +2 -0
  385. package/loading-icon/loading-icon.module.d.ts +6 -3
  386. package/loading-icon/public_api.d.ts +1 -0
  387. package/media-gallery/README.md +41 -0
  388. package/media-gallery/media-gallery/media-gallery.component.d.ts +1 -1
  389. package/media-gallery/media-gallery.d.ts +4 -0
  390. package/media-gallery/media-gallery.module.d.ts +8 -5
  391. package/media-gallery/media-renderer/media-renderer.component.d.ts +1 -1
  392. package/media-gallery/public_api.d.ts +1 -0
  393. package/media-gallery/thumbnail/thumbnail.directive.d.ts +1 -1
  394. package/menu/README.md +23 -0
  395. package/menu/menu/menu.component.d.ts +1 -1
  396. package/menu/menu-activator/menu-activator.component.d.ts +1 -1
  397. package/menu/menu-item/menu-item.component.d.ts +1 -1
  398. package/menu/menu.module.d.ts +6 -6
  399. package/menu/services/menu.service.d.ts +3 -2
  400. package/modal/README.md +41 -0
  401. package/modal/modal/modal.component.d.ts +20 -8
  402. package/modal/modal-actions/modal-actions.component.d.ts +1 -1
  403. package/modal/modal-close/modal-close.directive.d.ts +1 -1
  404. package/modal/modal-content/modal-content.component.d.ts +1 -1
  405. package/modal/modal-header/modal-header.component.d.ts +1 -1
  406. package/modal/modal-title/modal-title.directive.d.ts +1 -1
  407. package/modal/modal.d.ts +6 -0
  408. package/modal/modal.module.d.ts +15 -12
  409. package/modal/public_api.d.ts +1 -0
  410. package/navbar/README.md +41 -0
  411. package/navbar/navbar/navbar.component.d.ts +1 -4
  412. package/navbar/navbar.d.ts +2 -0
  413. package/navbar/navbar.module.d.ts +6 -2
  414. package/navbar/public_api.d.ts +1 -0
  415. package/notification/README.md +41 -0
  416. package/notification/notification/notification.component.d.ts +1 -1
  417. package/notification/notification-actions/notification-actions.directive.d.ts +1 -1
  418. package/notification/notification-message/notification-message.directive.d.ts +1 -1
  419. package/notification/notification-subtitle/notification-subtitle.directive.d.ts +1 -1
  420. package/notification/notification-title/notification-title.directive.d.ts +1 -1
  421. package/notification/notification.d.ts +7 -0
  422. package/notification/notification.module.d.ts +12 -9
  423. package/notification/public_api.d.ts +1 -0
  424. package/package.json +1 -1
  425. package/paginator/README.md +45 -4
  426. package/paginator/paginator/paginator.component.d.ts +1 -4
  427. package/paginator/paginator.d.ts +2 -0
  428. package/paginator/paginator.module.d.ts +8 -5
  429. package/paginator/public_api.d.ts +1 -0
  430. package/progress-bar/README.md +41 -0
  431. package/progress-bar/progress-bar-label/progress-bar-label.directive.d.ts +6 -0
  432. package/progress-bar/progress-bar.component.d.ts +1 -1
  433. package/progress-bar/progress-bar.d.ts +3 -0
  434. package/progress-bar/progress-bar.module.d.ts +7 -3
  435. package/progress-bar/public_api.d.ts +2 -0
  436. package/sidebar/README.md +78 -20
  437. package/sidebar/public_api.d.ts +1 -0
  438. package/sidebar/sidebar/sidebar.component.d.ts +19 -8
  439. package/sidebar/sidebar-footer/sidebar-footer.component.d.ts +1 -1
  440. package/sidebar/sidebar-header/sidebar-header-action/sidebar-header-action.directive.d.ts +1 -1
  441. package/sidebar/sidebar-header/sidebar-header-title/sidebar-header-title.directive.d.ts +1 -1
  442. package/sidebar/sidebar-header/sidebar-header.component.d.ts +1 -1
  443. package/sidebar/sidebar-viewport/sidebar-viewport.component.d.ts +5 -17
  444. package/sidebar/sidebar-viewport/utils/content-pad.d.ts +2 -2
  445. package/sidebar/sidebar-viewport-backdrop/sidebar-viewport-backdrop.component.d.ts +1 -1
  446. package/sidebar/sidebar.d.ts +8 -0
  447. package/sidebar/sidebar.module.d.ts +13 -10
  448. package/toast/README.md +108 -33
  449. package/toast/public_api.d.ts +1 -0
  450. package/toast/service/toast.service.d.ts +4 -3
  451. package/toast/src/toast-theme.scss +1 -1
  452. package/toast/toast/toast-provider.d.ts +2 -0
  453. package/toast/toast/toast-template.component.d.ts +1 -1
  454. package/toast/toast/toast.component.d.ts +1 -3
  455. package/toast/toast-actions/toast-actions.directive.d.ts +1 -1
  456. package/toast/toast-message/toast-message.directive.d.ts +1 -1
  457. package/toast/toast-title/toast-title.directive.d.ts +1 -1
  458. package/toast/toast.module.d.ts +14 -12
  459. package/tree/README.md +41 -0
  460. package/tree/public_api.d.ts +1 -2
  461. package/tree/tree/tree.component.d.ts +1 -1
  462. package/tree/tree-item/tree-item.directive.d.ts +1 -1
  463. package/tree/tree.d.ts +3 -0
  464. package/tree/tree.module.d.ts +7 -4
  465. package/accordion/examples/accordion-examples.module.d.ts +0 -9
  466. package/esm2022/accordion/examples/accordion-examples.module.mjs +0 -26
  467. package/esm2022/tree/utils/transform-in-place.mjs +0 -23
  468. package/tree/utils/transform-in-place.d.ts +0 -15
@@ -1,18 +1,17 @@
1
1
  import * as i2 from '@angular/cdk/a11y';
2
- import * as i3 from '@angular/cdk/portal';
2
+ import * as i1 from '@angular/cdk/overlay';
3
+ import { GlobalPositionStrategy, OverlayModule } from '@angular/cdk/overlay';
4
+ import * as i4 from '@angular/cdk/portal';
3
5
  import { ComponentPortal, CdkPortalOutlet, PortalModule } from '@angular/cdk/portal';
4
6
  import * as i0 from '@angular/core';
5
- import { Injector, Injectable, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, HostBinding, Input, ViewChild, HostListener, Directive, Optional, NgModule } from '@angular/core';
6
- import { daffFocusableElementsSelector } from '@daffodil/design';
7
+ import { Injector, Injectable, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, HostBinding, ViewChild, HostListener, Directive, Optional, Input, NgModule } from '@angular/core';
8
+ import * as i3 from '@daffodil/design';
9
+ import { daffFocusableElementsSelector, DaffOpenableDirective } from '@daffodil/design';
7
10
  import { trigger, state, style, transition, animate } from '@angular/animations';
8
- import * as i1 from '@angular/cdk/overlay';
9
- import { GlobalPositionStrategy, OverlayModule } from '@angular/cdk/overlay';
10
- import * as i1$1 from '@angular/common';
11
- import { CommonModule } from '@angular/common';
12
- import * as i3$1 from '@fortawesome/angular-fontawesome';
13
- import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
14
- import * as i2$1 from '@daffodil/design/button';
15
- import { DaffButtonModule } from '@daffodil/design/button';
11
+ import { NgIf, CommonModule } from '@angular/common';
12
+ import { FaIconComponent, FontAwesomeModule } from '@fortawesome/angular-fontawesome';
13
+ import * as i1$1 from '@daffodil/design/button';
14
+ import { DAFF_BUTTON_COMPONENTS, DaffButtonModule } from '@daffodil/design/button';
16
15
  import { faXmark } from '@fortawesome/free-solid-svg-icons';
17
16
 
18
17
  const daffFadeAnimations = {
@@ -32,11 +31,13 @@ class DaffModalService {
32
31
  this.defaultConfiguration = {};
33
32
  }
34
33
  _attachModal(overlayRef) {
35
- const modal = overlayRef.attach(new ComponentPortal(DaffModalComponent, undefined, Injector.create({ providers: [{
34
+ const modal = overlayRef.attach(new ComponentPortal(DaffModalComponent, undefined, Injector.create({
35
+ providers: [{
36
36
  provide: DaffModalService,
37
37
  useValue: this,
38
- }] })));
39
- modal.instance.open = true;
38
+ }],
39
+ })));
40
+ modal.instance.reveal();
40
41
  return modal;
41
42
  }
42
43
  _attachModalContent(component, modal) {
@@ -79,7 +80,7 @@ class DaffModalService {
79
80
  return modal.modal.instance;
80
81
  }
81
82
  close(component) {
82
- component.open = false;
83
+ component.hide();
83
84
  const modal = this._modals.get(component);
84
85
  modal.overlay.detachBackdrop();
85
86
  component.closedAnimationCompleted.subscribe((e) => this._removeModal(modal));
@@ -109,10 +110,11 @@ class DaffModalComponent {
109
110
  onEscape() {
110
111
  this.modalService.close(this);
111
112
  }
112
- constructor(modalService, _focusTrapFactory, _elementRef) {
113
+ constructor(modalService, _focusTrapFactory, elementRef, openDirective) {
113
114
  this.modalService = modalService;
114
115
  this._focusTrapFactory = _focusTrapFactory;
115
- this._elementRef = _elementRef;
116
+ this.elementRef = elementRef;
117
+ this.openDirective = openDirective;
116
118
  /**
117
119
  * Sets a class of .daff-modal to the host element.
118
120
  */
@@ -126,10 +128,6 @@ class DaffModalComponent {
126
128
  */
127
129
  this.ariaModal = true;
128
130
  this._ariaLabelledBy = null;
129
- /**
130
- * Dictates whether or not a modal is open or closed.
131
- */
132
- this.open = false;
133
131
  /**
134
132
  * Event fired when the close animation is completed.
135
133
  */
@@ -138,20 +136,21 @@ class DaffModalComponent {
138
136
  * Event fired when the close animation is completed.
139
137
  */
140
138
  this.closedAnimationCompleted = new EventEmitter();
139
+ this.openDirective.stateless = false;
141
140
  }
142
141
  ngAfterContentInit() {
143
- this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);
142
+ this._focusTrap = this._focusTrapFactory.create(this.elementRef.nativeElement);
144
143
  }
145
144
  ngAfterViewInit() {
146
- const focusableChild = this._elementRef.nativeElement.querySelector(daffFocusableElementsSelector);
145
+ const focusableChild = this.elementRef.nativeElement.querySelector(daffFocusableElementsSelector);
147
146
  if (focusableChild) {
148
147
  focusableChild.focus();
149
148
  }
150
149
  else {
151
150
  // There's a timing condition when computing HostBindings afterContentInit
152
151
  // so to allow the menu to be focused, we manually set the tabindex.
153
- this._elementRef.nativeElement.tabIndex = 0;
154
- this._elementRef.nativeElement.focus();
152
+ this.elementRef.nativeElement.tabIndex = 0;
153
+ this.elementRef.nativeElement.focus();
155
154
  }
156
155
  }
157
156
  /**
@@ -169,7 +168,7 @@ class DaffModalComponent {
169
168
  }
170
169
  /** Animation hook that controls the entrance and exit animations of the modal. */
171
170
  get fadeState() {
172
- return getAnimationState(this.open);
171
+ return getAnimationState(this.openDirective.open);
173
172
  }
174
173
  /**
175
174
  * Animation event that can used to hook into when
@@ -183,13 +182,40 @@ class DaffModalComponent {
183
182
  this.closedAnimationCompleted.emit(e);
184
183
  }
185
184
  }
186
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalComponent, deps: [{ token: DaffModalService }, { token: i2.ConfigurableFocusTrapFactory }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
187
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalComponent, selector: "daff-modal", inputs: { open: "open" }, host: { listeners: { "keydown.escape": "onEscape()", "@fade.done": "animationDone($event)" }, properties: { "class.daff-modal": "this.modalClass", "attr.role": "this.role", "attr.aria-modal": "this.ariaModal", "attr.aria-labelledby": "this.ariaLabelledBy", "@fade": "this.fadeState" } }, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], ngImport: i0, template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".daff-modal{display:flex;flex-direction:column;justify-content:space-between;border-radius:4px;max-height:90vh;max-width:90vw;overflow:hidden;z-index:3}@media (min-width: 480px){.daff-modal{max-height:80vh;max-width:80vw}}.daff-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;position:relative}.daff-modal-header .daff-modal-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem;font-weight:500;line-height:1.5rem;margin:0;padding:0 32px 0 0}.daff-modal-header__dismiss-button{position:absolute;right:7px;top:12px}.daff-modal-content{display:block;flex-grow:1;max-height:60vh;overflow-y:auto;padding:24px}.daff-modal-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:24px}.daff-modal-content+.daff-modal-actions{padding:0 24px 24px}.daff-modal-header+.daff-modal-content{padding-top:0}\n"], dependencies: [{ kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [daffFadeAnimations.fade], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
185
+ get open() {
186
+ return this.openDirective.open;
187
+ }
188
+ /**
189
+ * Reveals the modal
190
+ */
191
+ reveal() {
192
+ this.openDirective.reveal();
193
+ }
194
+ /**
195
+ * Hides the modal
196
+ */
197
+ hide() {
198
+ this.openDirective.hide();
199
+ }
200
+ /**
201
+ * Toggles the visibility of the modal
202
+ */
203
+ toggle() {
204
+ this.openDirective.toggle();
205
+ }
206
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalComponent, deps: [{ token: DaffModalService }, { token: i2.ConfigurableFocusTrapFactory }, { token: i0.ElementRef }, { token: i3.DaffOpenableDirective }], target: i0.ɵɵFactoryTarget.Component }); }
207
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalComponent, isStandalone: true, selector: "daff-modal", host: { listeners: { "keydown.escape": "onEscape()", "@fade.done": "animationDone($event)" }, properties: { "class.daff-modal": "this.modalClass", "attr.role": "this.role", "attr.aria-modal": "this.ariaModal", "attr.aria-labelledby": "this.ariaLabelledBy", "@fade": "this.fadeState" } }, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], hostDirectives: [{ directive: i3.DaffOpenableDirective, outputs: ["toggled", "toggled"] }], ngImport: i0, template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".daff-modal{display:flex;flex-direction:column;justify-content:space-between;border-radius:4px;max-height:90vh;max-width:90vw;overflow:hidden;z-index:3}@media (min-width: 480px){.daff-modal{max-height:80vh;max-width:80vw}}.daff-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;position:relative}.daff-modal-header .daff-modal-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem;font-weight:500;line-height:1.5rem;margin:0;padding:0 32px 0 0}.daff-modal-header__dismiss-button{position:absolute;right:7px;top:12px}.daff-modal-content{display:block;flex-grow:1;max-height:60vh;overflow-y:auto;padding:24px}.daff-modal-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:24px}.daff-modal-content+.daff-modal-actions{padding:0 24px 24px}.daff-modal-header+.daff-modal-content{padding-top:0}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "ngmodule", type: OverlayModule }], animations: [daffFadeAnimations.fade], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
188
208
  }
189
209
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalComponent, decorators: [{
190
210
  type: Component,
191
- args: [{ selector: 'daff-modal', animations: [daffFadeAnimations.fade], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".daff-modal{display:flex;flex-direction:column;justify-content:space-between;border-radius:4px;max-height:90vh;max-width:90vw;overflow:hidden;z-index:3}@media (min-width: 480px){.daff-modal{max-height:80vh;max-width:80vw}}.daff-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;position:relative}.daff-modal-header .daff-modal-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem;font-weight:500;line-height:1.5rem;margin:0;padding:0 32px 0 0}.daff-modal-header__dismiss-button{position:absolute;right:7px;top:12px}.daff-modal-content{display:block;flex-grow:1;max-height:60vh;overflow-y:auto;padding:24px}.daff-modal-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:24px}.daff-modal-content+.daff-modal-actions{padding:0 24px 24px}.daff-modal-header+.daff-modal-content{padding-top:0}\n"] }]
192
- }], ctorParameters: () => [{ type: DaffModalService }, { type: i2.ConfigurableFocusTrapFactory }, { type: i0.ElementRef }], propDecorators: { modalClass: [{
211
+ args: [{ selector: 'daff-modal', hostDirectives: [{
212
+ directive: DaffOpenableDirective,
213
+ outputs: ['toggled'],
214
+ }], animations: [daffFadeAnimations.fade], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [
215
+ PortalModule,
216
+ OverlayModule,
217
+ ], template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".daff-modal{display:flex;flex-direction:column;justify-content:space-between;border-radius:4px;max-height:90vh;max-width:90vw;overflow:hidden;z-index:3}@media (min-width: 480px){.daff-modal{max-height:80vh;max-width:80vw}}.daff-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;position:relative}.daff-modal-header .daff-modal-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem;font-weight:500;line-height:1.5rem;margin:0;padding:0 32px 0 0}.daff-modal-header__dismiss-button{position:absolute;right:7px;top:12px}.daff-modal-content{display:block;flex-grow:1;max-height:60vh;overflow-y:auto;padding:24px}.daff-modal-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:24px}.daff-modal-content+.daff-modal-actions{padding:0 24px 24px}.daff-modal-header+.daff-modal-content{padding-top:0}\n"] }]
218
+ }], ctorParameters: () => [{ type: DaffModalService }, { type: i2.ConfigurableFocusTrapFactory }, { type: i0.ElementRef }, { type: i3.DaffOpenableDirective }], propDecorators: { modalClass: [{
193
219
  type: HostBinding,
194
220
  args: ['class.daff-modal']
195
221
  }], role: [{
@@ -201,8 +227,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
201
227
  }], ariaLabelledBy: [{
202
228
  type: HostBinding,
203
229
  args: ['attr.aria-labelledby']
204
- }], open: [{
205
- type: Input
206
230
  }], _portalOutlet: [{
207
231
  type: ViewChild,
208
232
  args: [CdkPortalOutlet, { static: true }]
@@ -222,7 +246,7 @@ class DaffModalActionsComponent {
222
246
  this.class = true;
223
247
  }
224
248
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
225
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalActionsComponent, selector: "daff-modal-actions", host: { properties: { "class.daff-modal-actions": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
249
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalActionsComponent, isStandalone: true, selector: "daff-modal-actions", host: { properties: { "class.daff-modal-actions": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
226
250
  }
227
251
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalActionsComponent, decorators: [{
228
252
  type: Component,
@@ -230,6 +254,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
230
254
  selector: 'daff-modal-actions',
231
255
  template: '<ng-content></ng-content>',
232
256
  changeDetection: ChangeDetectionStrategy.OnPush,
257
+ standalone: true,
233
258
  }]
234
259
  }], propDecorators: { class: [{
235
260
  type: HostBinding,
@@ -260,12 +285,13 @@ class DaffModalCloseDirective {
260
285
  }
261
286
  }
262
287
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalCloseDirective, deps: [{ token: DaffModalService }, { token: DaffModalComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
263
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalCloseDirective, selector: "button[daffModalClose]", host: { listeners: { "click": "_onCloseModal()" }, properties: { "attr.type": "this.typeAttribute" } }, ngImport: i0 }); }
288
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalCloseDirective, isStandalone: true, selector: "button[daffModalClose]", host: { listeners: { "click": "_onCloseModal()" }, properties: { "attr.type": "this.typeAttribute" } }, ngImport: i0 }); }
264
289
  }
265
290
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalCloseDirective, decorators: [{
266
291
  type: Directive,
267
292
  args: [{
268
293
  selector: 'button[daffModalClose]',
294
+ standalone: true,
269
295
  }]
270
296
  }], ctorParameters: () => [{ type: DaffModalService }, { type: DaffModalComponent, decorators: [{
271
297
  type: Optional
@@ -282,7 +308,7 @@ class DaffModalContentComponent {
282
308
  this.class = true;
283
309
  }
284
310
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
285
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalContentComponent, selector: "daff-modal-content", host: { properties: { "class.daff-modal-content": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
311
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalContentComponent, isStandalone: true, selector: "daff-modal-content", host: { properties: { "class.daff-modal-content": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
286
312
  }
287
313
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalContentComponent, decorators: [{
288
314
  type: Component,
@@ -290,6 +316,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
290
316
  selector: 'daff-modal-content',
291
317
  template: '<ng-content></ng-content>',
292
318
  changeDetection: ChangeDetectionStrategy.OnPush,
319
+ standalone: true,
293
320
  }]
294
321
  }], propDecorators: { class: [{
295
322
  type: HostBinding,
@@ -309,11 +336,16 @@ class DaffModalHeaderComponent {
309
336
  this.dismissible = true;
310
337
  }
311
338
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
312
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalHeaderComponent, selector: "daff-modal-header", inputs: { dismissible: "dismissible" }, host: { properties: { "class.daff-modal-header": "this.class" } }, ngImport: i0, template: "<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>", dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "component", type: i3$1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: DaffModalCloseDirective, selector: "button[daffModalClose]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
339
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalHeaderComponent, isStandalone: true, selector: "daff-modal-header", inputs: { dismissible: "dismissible" }, host: { properties: { "class.daff-modal-header": "this.class" } }, ngImport: i0, template: "<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: i3.DaffPrefixSuffixModule }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: DaffModalCloseDirective, selector: "button[daffModalClose]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
313
340
  }
314
341
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalHeaderComponent, decorators: [{
315
342
  type: Component,
316
- args: [{ selector: 'daff-modal-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>" }]
343
+ args: [{ selector: 'daff-modal-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
344
+ NgIf,
345
+ DAFF_BUTTON_COMPONENTS,
346
+ FaIconComponent,
347
+ DaffModalCloseDirective,
348
+ ], template: "<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>" }]
317
349
  }], propDecorators: { class: [{
318
350
  type: HostBinding,
319
351
  args: ['class.daff-modal-header']
@@ -349,12 +381,13 @@ class DaffModalTitleDirective {
349
381
  }
350
382
  }
351
383
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalTitleDirective, deps: [{ token: DaffModalComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
352
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalTitleDirective, selector: "[daffModalTitle]", host: { properties: { "class.daff-modal-title": "this.class", "attr.id": "this.uniqueId" } }, ngImport: i0 }); }
384
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffModalTitleDirective, isStandalone: true, selector: "[daffModalTitle]", host: { properties: { "class.daff-modal-title": "this.class", "attr.id": "this.uniqueId" } }, ngImport: i0 }); }
353
385
  }
354
386
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalTitleDirective, decorators: [{
355
387
  type: Directive,
356
388
  args: [{
357
389
  selector: '[daffModalTitle]',
390
+ standalone: true,
358
391
  }]
359
392
  }], ctorParameters: () => [{ type: DaffModalComponent, decorators: [{
360
393
  type: Optional
@@ -366,18 +399,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
366
399
  args: ['attr.id']
367
400
  }] } });
368
401
 
402
+ /**
403
+ * @deprecated in favor of {@link DAFF_MODAL_COMPONENTS}
404
+ */
369
405
  class DaffModalModule {
370
406
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
371
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffModalModule, declarations: [DaffModalComponent,
407
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffModalModule, imports: [CommonModule,
408
+ PortalModule,
409
+ OverlayModule,
410
+ DaffButtonModule,
411
+ FontAwesomeModule,
412
+ DaffModalComponent,
372
413
  DaffModalHeaderComponent,
373
414
  DaffModalTitleDirective,
374
415
  DaffModalContentComponent,
375
416
  DaffModalActionsComponent,
376
- DaffModalCloseDirective], imports: [CommonModule,
377
- PortalModule,
378
- OverlayModule,
379
- DaffButtonModule,
380
- FontAwesomeModule], exports: [DaffModalHeaderComponent,
417
+ DaffModalCloseDirective], exports: [DaffModalComponent,
418
+ DaffModalHeaderComponent,
381
419
  DaffModalTitleDirective,
382
420
  DaffModalContentComponent,
383
421
  DaffModalActionsComponent,
@@ -388,7 +426,9 @@ class DaffModalModule {
388
426
  PortalModule,
389
427
  OverlayModule,
390
428
  DaffButtonModule,
391
- FontAwesomeModule] }); }
429
+ FontAwesomeModule,
430
+ DaffModalComponent,
431
+ DaffModalHeaderComponent] }); }
392
432
  }
393
433
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffModalModule, decorators: [{
394
434
  type: NgModule,
@@ -399,15 +439,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
399
439
  OverlayModule,
400
440
  DaffButtonModule,
401
441
  FontAwesomeModule,
402
- ],
403
- exports: [
442
+ DaffModalComponent,
404
443
  DaffModalHeaderComponent,
405
444
  DaffModalTitleDirective,
406
445
  DaffModalContentComponent,
407
446
  DaffModalActionsComponent,
408
447
  DaffModalCloseDirective,
409
448
  ],
410
- declarations: [
449
+ exports: [
411
450
  DaffModalComponent,
412
451
  DaffModalHeaderComponent,
413
452
  DaffModalTitleDirective,
@@ -421,9 +460,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
421
460
  }]
422
461
  }] });
423
462
 
463
+ const DAFF_MODAL_COMPONENTS = [
464
+ DaffModalHeaderComponent,
465
+ DaffModalTitleDirective,
466
+ DaffModalContentComponent,
467
+ DaffModalActionsComponent,
468
+ DaffModalCloseDirective,
469
+ ];
470
+
424
471
  /**
425
472
  * Generated bundle index. Do not edit.
426
473
  */
427
474
 
428
- export { DaffModalActionsComponent, DaffModalCloseDirective, DaffModalComponent, DaffModalContentComponent, DaffModalHeaderComponent, DaffModalModule, DaffModalService, DaffModalTitleDirective };
475
+ export { DAFF_MODAL_COMPONENTS, DaffModalActionsComponent, DaffModalCloseDirective, DaffModalComponent, DaffModalContentComponent, DaffModalHeaderComponent, DaffModalModule, DaffModalService, DaffModalTitleDirective };
429
476
  //# sourceMappingURL=daffodil-design-modal.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-modal.mjs","sources":["../../../libs/design/modal/src/animations/modal-animation.ts","../../../libs/design/modal/src/animations/modal-animation-state.ts","../../../libs/design/modal/src/service/modal.service.ts","../../../libs/design/modal/src/modal/modal.component.ts","../../../libs/design/modal/src/modal/modal.component.html","../../../libs/design/modal/src/modal-actions/modal-actions.component.ts","../../../libs/design/modal/src/modal-close/modal-close.directive.ts","../../../libs/design/modal/src/modal-content/modal-content.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.html","../../../libs/design/modal/src/modal-title/modal-title.directive.ts","../../../libs/design/modal/src/modal.module.ts","../../../libs/design/modal/src/daffodil-design-modal.ts"],"sourcesContent":["import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffFadeAnimations: {\n readonly fade: AnimationTriggerMetadata;\n} = {\n fade: trigger('fade', [\n state('open', style({ opacity: 1 })),\n state('closed', style({ opacity: 0 })),\n transition('open <=> closed', animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)')),\n ]),\n};\n","export const getAnimationState = (open: boolean) => open ? 'open' : 'closed';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n OverlayRef,\n Overlay,\n GlobalPositionStrategy,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n Injectable,\n Type,\n ComponentRef,\n Injector,\n} from '@angular/core';\n\nimport { DaffModal } from '../modal/modal';\nimport { DaffModalConfiguration } from '../modal/modal-config';\nimport { DaffModalComponent } from '../modal/modal.component';\n\n@Injectable()\nexport class DaffModalService {\n private _modals: Map<DaffModalComponent, DaffModal> = new Map();\n\n constructor(private overlay: Overlay) {}\n\n private defaultConfiguration: DaffModalConfiguration = {};\n\n private _attachModal(\n overlayRef: OverlayRef,\n ): ComponentRef<DaffModalComponent> {\n const modal = overlayRef.attach(\n new ComponentPortal(\n DaffModalComponent,\n undefined,\n Injector.create({ providers: [{\n provide: DaffModalService,\n useValue: this,\n }]}),\n ),\n );\n modal.instance.open = true;\n return modal;\n }\n\n private _attachModalContent(\n component: Type<any>,\n modal: ComponentRef<DaffModalComponent>,\n ): void {\n modal.instance.attachContent(new ComponentPortal(component));\n }\n\n private _createOverlayRef(): OverlayRef {\n return this.overlay.create({\n hasBackdrop: true,\n positionStrategy: new GlobalPositionStrategy()\n .centerHorizontally()\n .centerVertically(),\n scrollStrategy: this.overlay.scrollStrategies.block(),\n });\n }\n\n private _removeModal(modal: DaffModal) {\n if (!this._modals.has(modal.modal.instance)) {\n throw new Error(\n 'The Modal that you are trying to remove does not exist.',\n );\n }\n\n this._modals.delete(modal.modal.instance);\n\n modal.overlay.dispose();\n }\n\n open(\n component: Type<any>,\n configuration?: Partial<DaffModalConfiguration>,\n ): DaffModalComponent {\n const config = { ...this.defaultConfiguration, ...configuration };\n const _ref = this._createOverlayRef();\n const _modal = this._attachModal(_ref);\n const _attachedModal = this._attachModalContent(component, _modal);\n\n if(configuration?.ariaLabelledBy) {\n _modal.instance.ariaLabelledBy = configuration.ariaLabelledBy;\n }\n\n const modal: DaffModal = {\n modal: _modal,\n overlay: _ref,\n };\n\n this._modals.set(modal.modal.instance, modal);\n\n _ref\n .backdropClick()\n .subscribe(() =>\n config.onBackdropClicked\n ? config.onBackdropClicked()\n : this.close(modal.modal.instance),\n );\n return modal.modal.instance;\n }\n\n close(component: DaffModalComponent): void {\n component.open = false;\n const modal = this._modals.get(component);\n\n modal.overlay.detachBackdrop();\n component.closedAnimationCompleted.subscribe(\n (e: AnimationEvent) => this._removeModal(modal),\n );\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport {\n ConfigurableFocusTrap,\n ConfigurableFocusTrapFactory,\n} from '@angular/cdk/a11y';\nimport {\n CdkPortalOutlet,\n ComponentPortal,\n} from '@angular/cdk/portal';\nimport {\n Component,\n EventEmitter,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewChild,\n HostListener,\n ElementRef,\n AfterContentInit,\n AfterViewInit,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { daffFocusableElementsSelector } from '@daffodil/design';\n\nimport { daffFadeAnimations } from '../animations/modal-animation';\nimport { getAnimationState } from '../animations/modal-animation-state';\nimport { DaffModalService } from '../service/modal.service';\n\n@Component({\n selector: 'daff-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss'],\n animations: [daffFadeAnimations.fade],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffModalComponent implements AfterContentInit, AfterViewInit {\n /**\n * Sets a class of .daff-modal to the host element.\n */\n @HostBinding('class.daff-modal') modalClass = true;\n\n /**\n * Sets the role to dialog.\n */\n @HostBinding('attr.role') role = 'dialog';\n\n /**\n * Sets aria-modal to true.\n */\n @HostBinding('attr.aria-modal') ariaModal = true;\n\n private _ariaLabelledBy = null;\n\n /**\n * The aria-labelledby for the modal. This is set by the id of\n * {@link DaffModalTitleDirective} when it is used.\n *\n */\n @HostBinding('attr.aria-labelledby') get ariaLabelledBy() {\n return this._ariaLabelledBy;\n } set ariaLabelledBy(value: string) {\n this._ariaLabelledBy = value;\n }\n\n /**\n * Dictates whether or not a modal is open or closed.\n */\n @Input() open = false;\n\n /**\n * The CDK Portal outlet used to portal content into the modal.\n */\n @ViewChild(CdkPortalOutlet, { static: true }) private _portalOutlet: CdkPortalOutlet;\n\n /**\n * Event fired when the close animation is completed.\n */\n animationCompleted: EventEmitter<any> = new EventEmitter<any>();\n\n /**\n * Event fired when the close animation is completed.\n */\n closedAnimationCompleted: EventEmitter<any> = new EventEmitter<\n any\n >();\n\n /**\n * @docs-private\n */\n @HostListener('keydown.escape')\n onEscape() {\n this.modalService.close(this);\n }\n\n private _focusTrap: ConfigurableFocusTrap;\n\n constructor(\n private modalService: DaffModalService,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private _elementRef: ElementRef<HTMLElement>,\n ) {\n }\n\n ngAfterContentInit() {\n this._focusTrap = this._focusTrapFactory.create(\n this._elementRef.nativeElement,\n );\n }\n\n ngAfterViewInit() {\n const focusableChild = (<HTMLElement>this._elementRef.nativeElement.querySelector(\n daffFocusableElementsSelector)\n );\n\n if(focusableChild) {\n focusableChild.focus();\n } else {\n // There's a timing condition when computing HostBindings afterContentInit\n // so to allow the menu to be focused, we manually set the tabindex.\n this._elementRef.nativeElement.tabIndex = 0;\n (<HTMLElement>this._elementRef.nativeElement).focus();\n }\n }\n\n /**\n * Helper method to attach portable content to modal.\n */\n attachContent(portal: ComponentPortal<any>): any {\n const attachContent = this._portalOutlet.attachComponentPortal(portal);\n\n // When a component is created to inject content into the modal, it can\n // interfere with the display styles applied to the modal's header, content,\n // and action sections. By setting `display: contents;` on the custom\n // component, it is visually removed from the UI, allowing the content\n // within it to inherit the modal's styles.\n attachContent.location.nativeElement.style.display = 'contents';\n\n return attachContent;\n }\n\n /** Animation hook that controls the entrance and exit animations of the modal. */\n @HostBinding('@fade') get fadeState(): string {\n return getAnimationState(this.open);\n }\n\n /**\n * Animation event that can used to hook into when\n * animations are fully completed. We use this in the DaffModalService\n * to determine when to actually remove the dynamically rendered element from the DOM\n * so that the animation does not clip as the element is removed.\n */\n @HostListener('@fade.done', ['$event'])\n animationDone(e: AnimationEvent) {\n this.animationCompleted.emit(e);\n if (e.toState === 'closed') {\n this.closedAnimationCompleted.emit(e);\n }\n }\n}\n","<ng-template cdkPortalOutlet></ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalActionsComponent {\n @HostBinding('class.daff-modal-actions') class = true;\n}\n","import {\n Directive,\n HostBinding,\n HostListener,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\nimport { DaffModalService } from '../service/modal.service';\n\n/**\n * The DaffModalCloseDirective is a helper directive that passes a click\n * event to the button it's used with to close a modal. It needs to be\n * implemented with the `<button>` HTML element to work. This helps to\n * reduce code duplication.\n */\n@Directive({\n selector: 'button[daffModalClose]',\n})\n\nexport class DaffModalCloseDirective {\n constructor(\n private modalService: DaffModalService,\n @Optional() private modal: DaffModalComponent,\n ) {}\n\n /**\n * Event fired when the button the directive is attached to is clicked. This is used to close a modal.\n */\n @HostListener('click')\n _onCloseModal(event: MouseEvent) {\n if(this.modal) {\n this.modalService.close(this.modal);\n }\n }\n\n /**\n * Sets the button type attribute to button.\n */\n @HostBinding('attr.type') typeAttribute = 'button';\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-content',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalContentComponent {\n @HostBinding('class.daff-modal-content') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n} from '@angular/core';\nimport { faXmark } from '@fortawesome/free-solid-svg-icons';\n\n@Component({\n selector: 'daff-modal-header',\n templateUrl: './modal-header.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalHeaderComponent {\n faXmark = faXmark;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-header') class = true;\n\n /**\n * Whether or not a modal is dismissible.\n */\n @Input() dismissible = true;\n}\n","<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>","import {\n Directive,\n HostBinding,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\n\nlet modalTitleId = 0;\n\n/**\n * Title of a modal.\n */\n@Directive({\n selector: '[daffModalTitle]',\n})\n\nexport class DaffModalTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-title') class = true;\n\n private _id = '';\n\n /**\n * The html `id` of the modal title.\n */\n @HostBinding('attr.id') get uniqueId() {\n return this._id;\n }\n\n constructor(@Optional() private modal: DaffModalComponent) {\n modalTitleId++;\n\n this._id = 'daff-modal-title-' + modalTitleId;\n\n /**\n * Sets the ariaLabelledBy of the modal to the id of the modal title.\n */\n if(this.modal) {\n this.modal.ariaLabelledBy = this.uniqueId;\n }\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\n\nimport { DaffModalComponent } from './modal/modal.component';\nimport { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\nimport { DaffModalCloseDirective } from './modal-close/modal-close.directive';\nimport { DaffModalContentComponent } from './modal-content/modal-content.component';\nimport { DaffModalHeaderComponent } from './modal-header/modal-header.component';\nimport { DaffModalTitleDirective } from './modal-title/modal-title.directive';\nimport { DaffModalService } from './service/modal.service';\n\n@NgModule({\n imports: [\n CommonModule,\n PortalModule,\n OverlayModule,\n DaffButtonModule,\n FontAwesomeModule,\n ],\n exports: [\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n declarations: [\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n providers: [\n DaffModalService,\n ],\n})\nexport class DaffModalModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffModalService","i2.DaffModalComponent","i1","i2","i3","i4.DaffModalCloseDirective","i1.DaffModalComponent"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-modal.mjs","sources":["../../../libs/design/modal/src/animations/modal-animation.ts","../../../libs/design/modal/src/animations/modal-animation-state.ts","../../../libs/design/modal/src/service/modal.service.ts","../../../libs/design/modal/src/modal/modal.component.ts","../../../libs/design/modal/src/modal/modal.component.html","../../../libs/design/modal/src/modal-actions/modal-actions.component.ts","../../../libs/design/modal/src/modal-close/modal-close.directive.ts","../../../libs/design/modal/src/modal-content/modal-content.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.html","../../../libs/design/modal/src/modal-title/modal-title.directive.ts","../../../libs/design/modal/src/modal.module.ts","../../../libs/design/modal/src/modal.ts","../../../libs/design/modal/src/daffodil-design-modal.ts"],"sourcesContent":["import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffFadeAnimations: {\n readonly fade: AnimationTriggerMetadata;\n} = {\n fade: trigger('fade', [\n state('open', style({ opacity: 1 })),\n state('closed', style({ opacity: 0 })),\n transition('open <=> closed', animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)')),\n ]),\n};\n","export const getAnimationState = (open: boolean) => open ? 'open' : 'closed';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n OverlayRef,\n Overlay,\n GlobalPositionStrategy,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n Injectable,\n Type,\n ComponentRef,\n Injector,\n} from '@angular/core';\n\nimport { DaffModal } from '../modal/modal';\nimport { DaffModalConfiguration } from '../modal/modal-config';\nimport { DaffModalComponent } from '../modal/modal.component';\n\n@Injectable()\nexport class DaffModalService {\n private _modals: Map<DaffModalComponent, DaffModal> = new Map();\n\n constructor(private overlay: Overlay) { }\n\n private defaultConfiguration: DaffModalConfiguration = {};\n\n private _attachModal(\n overlayRef: OverlayRef,\n ): ComponentRef<DaffModalComponent> {\n const modal = overlayRef.attach(\n new ComponentPortal(\n DaffModalComponent,\n undefined,\n Injector.create({\n providers: [{\n provide: DaffModalService,\n useValue: this,\n }],\n }),\n ),\n );\n modal.instance.reveal();\n return modal;\n }\n\n private _attachModalContent(\n component: Type<any>,\n modal: ComponentRef<DaffModalComponent>,\n ): void {\n modal.instance.attachContent(new ComponentPortal(component));\n }\n\n private _createOverlayRef(): OverlayRef {\n return this.overlay.create({\n hasBackdrop: true,\n positionStrategy: new GlobalPositionStrategy()\n .centerHorizontally()\n .centerVertically(),\n scrollStrategy: this.overlay.scrollStrategies.block(),\n });\n }\n\n private _removeModal(modal: DaffModal) {\n if (!this._modals.has(modal.modal.instance)) {\n throw new Error(\n 'The Modal that you are trying to remove does not exist.',\n );\n }\n\n this._modals.delete(modal.modal.instance);\n\n modal.overlay.dispose();\n }\n\n open(\n component: Type<any>,\n configuration?: Partial<DaffModalConfiguration>,\n ): DaffModalComponent {\n const config = { ...this.defaultConfiguration, ...configuration };\n const _ref = this._createOverlayRef();\n const _modal = this._attachModal(_ref);\n const _attachedModal = this._attachModalContent(component, _modal);\n\n if (configuration?.ariaLabelledBy) {\n _modal.instance.ariaLabelledBy = configuration.ariaLabelledBy;\n }\n\n const modal: DaffModal = {\n modal: _modal,\n overlay: _ref,\n };\n\n this._modals.set(modal.modal.instance, modal);\n\n _ref\n .backdropClick()\n .subscribe(() =>\n config.onBackdropClicked\n ? config.onBackdropClicked()\n : this.close(modal.modal.instance),\n );\n return modal.modal.instance;\n }\n\n close(component: DaffModalComponent): void {\n component.hide();\n const modal = this._modals.get(component);\n\n modal.overlay.detachBackdrop();\n component.closedAnimationCompleted.subscribe(\n (e: AnimationEvent) => this._removeModal(modal),\n );\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport {\n ConfigurableFocusTrap,\n ConfigurableFocusTrapFactory,\n} from '@angular/cdk/a11y';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport {\n CdkPortalOutlet,\n ComponentPortal,\n PortalModule,\n} from '@angular/cdk/portal';\nimport {\n Component,\n EventEmitter,\n HostBinding,\n ChangeDetectionStrategy,\n ViewChild,\n HostListener,\n ElementRef,\n AfterContentInit,\n AfterViewInit,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport {\n DaffOpenable,\n DaffOpenableDirective,\n} from '@daffodil/design';\nimport { daffFocusableElementsSelector } from '@daffodil/design';\n\nimport { daffFadeAnimations } from '../animations/modal-animation';\nimport { getAnimationState } from '../animations/modal-animation-state';\nimport { DaffModalService } from '../service/modal.service';\n\n@Component({\n selector: 'daff-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss'],\n hostDirectives: [{\n directive: DaffOpenableDirective,\n outputs: ['toggled'],\n }],\n animations: [daffFadeAnimations.fade],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [\n PortalModule,\n OverlayModule,\n ],\n})\nexport class DaffModalComponent implements AfterContentInit, AfterViewInit, DaffOpenable {\n /**\n * Sets a class of .daff-modal to the host element.\n */\n @HostBinding('class.daff-modal') modalClass = true;\n\n /**\n * Sets the role to dialog.\n */\n @HostBinding('attr.role') role = 'dialog';\n\n /**\n * Sets aria-modal to true.\n */\n @HostBinding('attr.aria-modal') ariaModal = true;\n\n private _ariaLabelledBy = null;\n\n /**\n * The aria-labelledby for the modal. This is set by the id of\n * {@link DaffModalTitleDirective} when it is used.\n *\n */\n @HostBinding('attr.aria-labelledby') get ariaLabelledBy() {\n return this._ariaLabelledBy;\n } set ariaLabelledBy(value: string) {\n this._ariaLabelledBy = value;\n }\n\n /**\n * The CDK Portal outlet used to portal content into the modal.\n */\n @ViewChild(CdkPortalOutlet, { static: true }) private _portalOutlet: CdkPortalOutlet;\n\n /**\n * Event fired when the close animation is completed.\n */\n animationCompleted: EventEmitter<any> = new EventEmitter<any>();\n\n /**\n * Event fired when the close animation is completed.\n */\n closedAnimationCompleted: EventEmitter<any> = new EventEmitter<\n any\n >();\n\n /**\n * @docs-private\n */\n @HostListener('keydown.escape')\n onEscape() {\n this.modalService.close(this);\n }\n\n private _focusTrap: ConfigurableFocusTrap;\n\n constructor(\n private modalService: DaffModalService,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private elementRef: ElementRef<HTMLElement>,\n private openDirective: DaffOpenableDirective,\n ) {\n this.openDirective.stateless = false;\n }\n\n ngAfterContentInit() {\n this._focusTrap = this._focusTrapFactory.create(\n this.elementRef.nativeElement,\n );\n }\n\n ngAfterViewInit() {\n const focusableChild = (<HTMLElement>this.elementRef.nativeElement.querySelector(\n daffFocusableElementsSelector)\n );\n\n if (focusableChild) {\n focusableChild.focus();\n } else {\n // There's a timing condition when computing HostBindings afterContentInit\n // so to allow the menu to be focused, we manually set the tabindex.\n this.elementRef.nativeElement.tabIndex = 0;\n (<HTMLElement>this.elementRef.nativeElement).focus();\n }\n }\n\n /**\n * Helper method to attach portable content to modal.\n */\n attachContent(portal: ComponentPortal<any>): any {\n const attachContent = this._portalOutlet.attachComponentPortal(portal);\n\n // When a component is created to inject content into the modal, it can\n // interfere with the display styles applied to the modal's header, content,\n // and action sections. By setting `display: contents;` on the custom\n // component, it is visually removed from the UI, allowing the content\n // within it to inherit the modal's styles.\n attachContent.location.nativeElement.style.display = 'contents';\n\n return attachContent;\n }\n\n /** Animation hook that controls the entrance and exit animations of the modal. */\n @HostBinding('@fade') get fadeState(): string {\n return getAnimationState(this.openDirective.open);\n }\n\n /**\n * Animation event that can used to hook into when\n * animations are fully completed. We use this in the DaffModalService\n * to determine when to actually remove the dynamically rendered element from the DOM\n * so that the animation does not clip as the element is removed.\n */\n @HostListener('@fade.done', ['$event'])\n animationDone(e: AnimationEvent) {\n this.animationCompleted.emit(e);\n if (e.toState === 'closed') {\n this.closedAnimationCompleted.emit(e);\n }\n }\n\n get open() {\n return this.openDirective.open;\n }\n\n /**\n * Reveals the modal\n */\n reveal() {\n this.openDirective.reveal();\n }\n\n /**\n * Hides the modal\n */\n hide() {\n this.openDirective.hide();\n }\n\n /**\n * Toggles the visibility of the modal\n */\n toggle() {\n this.openDirective.toggle();\n }\n}\n","<ng-template cdkPortalOutlet></ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class DaffModalActionsComponent {\n @HostBinding('class.daff-modal-actions') class = true;\n}\n","import {\n Directive,\n HostBinding,\n HostListener,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\nimport { DaffModalService } from '../service/modal.service';\n\n/**\n * The DaffModalCloseDirective is a helper directive that passes a click\n * event to the button it's used with to close a modal. It needs to be\n * implemented with the `<button>` HTML element to work. This helps to\n * reduce code duplication.\n */\n@Directive({\n selector: 'button[daffModalClose]',\n standalone: true,\n})\n\nexport class DaffModalCloseDirective {\n constructor(\n private modalService: DaffModalService,\n @Optional() private modal: DaffModalComponent,\n ) {}\n\n /**\n * Event fired when the button the directive is attached to is clicked. This is used to close a modal.\n */\n @HostListener('click')\n _onCloseModal(event: MouseEvent) {\n if(this.modal) {\n this.modalService.close(this.modal);\n }\n }\n\n /**\n * Sets the button type attribute to button.\n */\n @HostBinding('attr.type') typeAttribute = 'button';\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-content',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class DaffModalContentComponent {\n @HostBinding('class.daff-modal-content') class = true;\n}\n","import { NgIf } from '@angular/common';\nimport {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faXmark } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_BUTTON_COMPONENTS } from '@daffodil/design/button';\n\nimport { DaffModalCloseDirective } from '../modal-close/modal-close.directive';\n\n@Component({\n selector: 'daff-modal-header',\n templateUrl: './modal-header.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n NgIf,\n DAFF_BUTTON_COMPONENTS,\n FaIconComponent,\n DaffModalCloseDirective,\n ],\n})\nexport class DaffModalHeaderComponent {\n faXmark = faXmark;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-header') class = true;\n\n /**\n * Whether or not a modal is dismissible.\n */\n @Input() dismissible = true;\n}\n","<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>","import {\n Directive,\n HostBinding,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\n\nlet modalTitleId = 0;\n\n/**\n * Title of a modal.\n */\n@Directive({\n selector: '[daffModalTitle]',\n standalone: true,\n})\n\nexport class DaffModalTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-title') class = true;\n\n private _id = '';\n\n /**\n * The html `id` of the modal title.\n */\n @HostBinding('attr.id') get uniqueId() {\n return this._id;\n }\n\n constructor(@Optional() private modal: DaffModalComponent) {\n modalTitleId++;\n\n this._id = 'daff-modal-title-' + modalTitleId;\n\n /**\n * Sets the ariaLabelledBy of the modal to the id of the modal title.\n */\n if(this.modal) {\n this.modal.ariaLabelledBy = this.uniqueId;\n }\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\n\nimport { DaffModalComponent } from './modal/modal.component';\nimport { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\nimport { DaffModalCloseDirective } from './modal-close/modal-close.directive';\nimport { DaffModalContentComponent } from './modal-content/modal-content.component';\nimport { DaffModalHeaderComponent } from './modal-header/modal-header.component';\nimport { DaffModalTitleDirective } from './modal-title/modal-title.directive';\nimport { DaffModalService } from './service/modal.service';\n\n/**\n * @deprecated in favor of {@link DAFF_MODAL_COMPONENTS}\n */\n@NgModule({\n imports: [\n CommonModule,\n PortalModule,\n OverlayModule,\n DaffButtonModule,\n FontAwesomeModule,\n\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n exports: [\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n providers: [\n DaffModalService,\n ],\n})\nexport class DaffModalModule { }\n","import { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\nimport { DaffModalCloseDirective } from './modal-close/modal-close.directive';\nimport { DaffModalContentComponent } from './modal-content/modal-content.component';\nimport { DaffModalHeaderComponent } from './modal-header/modal-header.component';\nimport { DaffModalTitleDirective } from './modal-title/modal-title.directive';\n\nexport const DAFF_MODAL_COMPONENTS = <const> [\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffModalService","i2.DaffModalComponent","i1","i2","i1.DaffModalComponent"],"mappings":"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"}
@@ -1,34 +1,38 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, ChangeDetectionStrategy } from '@angular/core';
3
3
  import * as i2 from '@daffodil/design/button';
4
- import { DaffButtonModule } from '@daffodil/design/button';
4
+ import { DAFF_BUTTON_COMPONENTS } from '@daffodil/design/button';
5
5
  import * as i1 from '@daffodil/design/navbar';
6
- import { DaffNavbarModule } from '@daffodil/design/navbar';
6
+ import { DAFF_NAVBAR_COMPONENTS } from '@daffodil/design/navbar';
7
+ import * as i3 from '@daffodil/design';
7
8
  import * as i2$1 from '@daffodil/design/container';
8
- import { DaffContainerModule } from '@daffodil/design/container';
9
+ import { DAFF_CONTAINER_COMPONENTS } from '@daffodil/design/container';
9
10
  import { NgFor } from '@angular/common';
10
- import * as i3 from '@angular/forms';
11
+ import * as i4 from '@angular/forms';
11
12
  import { UntypedFormControl, ReactiveFormsModule } from '@angular/forms';
12
13
 
13
14
  class BasicNavbarComponent {
14
15
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: BasicNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: BasicNavbarComponent, isStandalone: true, selector: "basic-navbar", ngImport: i0, template: "<nav daff-navbar class=\"daff-basic-navbar\">\n\t<div class=\"daff-basic-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button color=\"theme-contrast\">Contact Us</button>\n</nav>", styles: [".daff-basic-navbar{justify-content:space-between}.daff-basic-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "ngmodule", type: DaffNavbarModule }, { kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "ngmodule", type: DaffButtonModule }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: BasicNavbarComponent, isStandalone: true, selector: "basic-navbar", ngImport: i0, template: "<nav daff-navbar class=\"daff-basic-navbar\">\n\t<div class=\"daff-basic-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button color=\"theme-contrast\">Contact Us</button>\n</nav>", styles: [".daff-basic-navbar{justify-content:space-between}.daff-basic-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: i3.DaffPrefixSuffixModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
17
  }
17
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: BasicNavbarComponent, decorators: [{
18
19
  type: Component,
19
- args: [{ selector: 'basic-navbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [DaffNavbarModule, DaffButtonModule], template: "<nav daff-navbar class=\"daff-basic-navbar\">\n\t<div class=\"daff-basic-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button color=\"theme-contrast\">Contact Us</button>\n</nav>", styles: [".daff-basic-navbar{justify-content:space-between}.daff-basic-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"] }]
20
+ args: [{ selector: 'basic-navbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
21
+ DAFF_NAVBAR_COMPONENTS,
22
+ DAFF_BUTTON_COMPONENTS,
23
+ ], template: "<nav daff-navbar class=\"daff-basic-navbar\">\n\t<div class=\"daff-basic-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button color=\"theme-contrast\">Contact Us</button>\n</nav>", styles: [".daff-basic-navbar{justify-content:space-between}.daff-basic-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"] }]
20
24
  }] });
21
25
 
22
26
  class ContainedNavbarComponent {
23
27
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: ContainedNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: ContainedNavbarComponent, isStandalone: true, selector: "contained-navbar", ngImport: i0, template: "<nav daff-navbar class=\"daff-contained-navbar\">\n\t<daff-container size=\"md\">\n\t\t<div class=\"daff-contained-navbar__links\">\n\t\t\t<a href=\"/\">Home</a>\n\t\t\t<a href=\"/\">About Us</a>\n\t\t</div>\n\t\t<button daff-button>Contact Us</button>\n\t</daff-container>\n</nav>\n", styles: [".daff-contained-navbar{justify-content:space-between}.daff-contained-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "ngmodule", type: DaffNavbarModule }, { kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "ngmodule", type: DaffContainerModule }, { kind: "component", type: i2$1.DaffContainerComponent, selector: "daff-container" }, { kind: "ngmodule", type: DaffButtonModule }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: ContainedNavbarComponent, isStandalone: true, selector: "contained-navbar", ngImport: i0, template: "<nav daff-navbar class=\"daff-contained-navbar\">\n\t<daff-container size=\"md\">\n\t\t<div class=\"daff-contained-navbar__links\">\n\t\t\t<a href=\"/\">Home</a>\n\t\t\t<a href=\"/\">About Us</a>\n\t\t</div>\n\t\t<button daff-button>Contact Us</button>\n\t</daff-container>\n</nav>\n", styles: [".daff-contained-navbar{justify-content:space-between}.daff-contained-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "component", type: i2$1.DaffContainerComponent, selector: "daff-container" }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: i3.DaffPrefixSuffixModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
29
  }
26
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: ContainedNavbarComponent, decorators: [{
27
31
  type: Component,
28
32
  args: [{ selector: 'contained-navbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
29
- DaffNavbarModule,
30
- DaffContainerModule,
31
- DaffButtonModule,
33
+ DAFF_NAVBAR_COMPONENTS,
34
+ DAFF_CONTAINER_COMPONENTS,
35
+ DAFF_BUTTON_COMPONENTS,
32
36
  ], template: "<nav daff-navbar class=\"daff-contained-navbar\">\n\t<daff-container size=\"md\">\n\t\t<div class=\"daff-contained-navbar__links\">\n\t\t\t<a href=\"/\">Home</a>\n\t\t\t<a href=\"/\">About Us</a>\n\t\t</div>\n\t\t<button daff-button>Contact Us</button>\n\t</daff-container>\n</nav>\n", styles: [".daff-contained-navbar{justify-content:space-between}.daff-contained-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"] }]
33
37
  }] });
34
38
 
@@ -47,13 +51,13 @@ class NavbarThemingComponent {
47
51
  ];
48
52
  }
49
53
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: NavbarThemingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: NavbarThemingComponent, isStandalone: true, selector: "navbar-theming", ngImport: i0, template: "<nav daff-navbar [color]=\"colorControl.value\" class=\"daff-navbar-theming\">\n\t<div class=\"daff-navbar-theming__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n\n<select [formControl]=\"colorControl\">\n\t<option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.label }}</option>\n</select>", styles: [".daff-navbar-theming{justify-content:space-between}.daff-navbar-theming__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "ngmodule", type: DaffNavbarModule }, { kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "ngmodule", type: DaffButtonModule }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: NavbarThemingComponent, isStandalone: true, selector: "navbar-theming", ngImport: i0, template: "<nav daff-navbar [color]=\"colorControl.value\" class=\"daff-navbar-theming\">\n\t<div class=\"daff-navbar-theming__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n\n<select [formControl]=\"colorControl\">\n\t<option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.label }}</option>\n</select>", styles: [".daff-navbar-theming{justify-content:space-between}.daff-navbar-theming__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: i3.DaffPrefixSuffixModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
55
  }
52
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: NavbarThemingComponent, decorators: [{
53
57
  type: Component,
54
58
  args: [{ selector: 'navbar-theming', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
55
- DaffNavbarModule,
56
- DaffButtonModule,
59
+ DAFF_NAVBAR_COMPONENTS,
60
+ DAFF_BUTTON_COMPONENTS,
57
61
  ReactiveFormsModule,
58
62
  NgFor,
59
63
  ], template: "<nav daff-navbar [color]=\"colorControl.value\" class=\"daff-navbar-theming\">\n\t<div class=\"daff-navbar-theming__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n\n<select [formControl]=\"colorControl\">\n\t<option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.label }}</option>\n</select>", styles: [".daff-navbar-theming{justify-content:space-between}.daff-navbar-theming__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"] }]
@@ -61,11 +65,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
61
65
 
62
66
  class RaisedNavbarComponent {
63
67
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: RaisedNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
64
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: RaisedNavbarComponent, isStandalone: true, selector: "raised-navbar", ngImport: i0, template: "<nav daff-navbar [raised]=\"true\" class=\"daff-raised-navbar\">\n\t<div class=\"daff-raised-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n", styles: [".daff-raised-navbar{justify-content:space-between}.daff-raised-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "ngmodule", type: DaffNavbarModule }, { kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "ngmodule", type: DaffButtonModule }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
68
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: RaisedNavbarComponent, isStandalone: true, selector: "raised-navbar", ngImport: i0, template: "<nav daff-navbar [raised]=\"true\" class=\"daff-raised-navbar\">\n\t<div class=\"daff-raised-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n", styles: [".daff-raised-navbar{justify-content:space-between}.daff-raised-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"], dependencies: [{ kind: "component", type: i1.DaffNavbarComponent, selector: "nav[daff-navbar]", inputs: ["raised"] }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: i3.DaffPrefixSuffixModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
65
69
  }
66
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: RaisedNavbarComponent, decorators: [{
67
71
  type: Component,
68
- args: [{ selector: 'raised-navbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [DaffNavbarModule, DaffButtonModule], template: "<nav daff-navbar [raised]=\"true\" class=\"daff-raised-navbar\">\n\t<div class=\"daff-raised-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n", styles: [".daff-raised-navbar{justify-content:space-between}.daff-raised-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"] }]
72
+ args: [{ selector: 'raised-navbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
73
+ DAFF_NAVBAR_COMPONENTS,
74
+ DAFF_BUTTON_COMPONENTS,
75
+ ], template: "<nav daff-navbar [raised]=\"true\" class=\"daff-raised-navbar\">\n\t<div class=\"daff-raised-navbar__links\">\n\t\t<a href=\"/\">Home</a>\n\t\t<a href=\"/\">About Us</a>\n\t</div>\n\t<button daff-button>Contact Us</button>\n</nav>\n", styles: [".daff-raised-navbar{justify-content:space-between}.daff-raised-navbar__links>*{font-weight:700;font-size:1.125rem;padding:0 16px;text-decoration:none;text-transform:uppercase}\n"] }]
69
76
  }] });
70
77
 
71
78
  const NAVBAR_EXAMPLES = [