@daffodil/design 0.39.7 → 0.39.11

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 (281) hide show
  1. package/accordion/examples/daffodil-design-accordion-examples.metadata.json +1 -1
  2. package/article/examples/daffodil-design-article-examples.metadata.json +1 -1
  3. package/atoms/button/button.component.d.ts +5 -0
  4. package/bundles/daffodil-design-accordion-examples.umd.js +4 -2
  5. package/bundles/daffodil-design-accordion-examples.umd.js.map +1 -1
  6. package/bundles/daffodil-design-accordion-examples.umd.min.js +1 -1
  7. package/bundles/daffodil-design-accordion-examples.umd.min.js.map +1 -1
  8. package/bundles/daffodil-design-article-examples.umd.js +22 -11
  9. package/bundles/daffodil-design-article-examples.umd.js.map +1 -1
  10. package/bundles/daffodil-design-article-examples.umd.min.js +1 -1
  11. package/bundles/daffodil-design-article-examples.umd.min.js.map +1 -1
  12. package/bundles/daffodil-design-button-examples.umd.js +7 -0
  13. package/bundles/daffodil-design-button-examples.umd.js.map +1 -1
  14. package/bundles/daffodil-design-button-examples.umd.min.js +1 -1
  15. package/bundles/daffodil-design-button-examples.umd.min.js.map +1 -1
  16. package/bundles/daffodil-design-callout-examples.umd.js +4 -0
  17. package/bundles/daffodil-design-callout-examples.umd.js.map +1 -1
  18. package/bundles/daffodil-design-callout-examples.umd.min.js +1 -1
  19. package/bundles/daffodil-design-callout-examples.umd.min.js.map +1 -1
  20. package/bundles/daffodil-design-card-examples.umd.js +156 -14
  21. package/bundles/daffodil-design-card-examples.umd.js.map +1 -1
  22. package/bundles/daffodil-design-card-examples.umd.min.js +1 -1
  23. package/bundles/daffodil-design-card-examples.umd.min.js.map +1 -1
  24. package/bundles/daffodil-design-checkbox-examples.umd.js +4 -2
  25. package/bundles/daffodil-design-checkbox-examples.umd.js.map +1 -1
  26. package/bundles/daffodil-design-checkbox-examples.umd.min.js +1 -1
  27. package/bundles/daffodil-design-checkbox-examples.umd.min.js.map +1 -1
  28. package/bundles/daffodil-design-container-examples.umd.js +65 -0
  29. package/bundles/daffodil-design-container-examples.umd.js.map +1 -0
  30. package/bundles/daffodil-design-container-examples.umd.min.js +2 -0
  31. package/bundles/daffodil-design-container-examples.umd.min.js.map +1 -0
  32. package/bundles/daffodil-design-hero-examples.umd.js +4 -0
  33. package/bundles/daffodil-design-hero-examples.umd.js.map +1 -1
  34. package/bundles/daffodil-design-hero-examples.umd.min.js +1 -1
  35. package/bundles/daffodil-design-hero-examples.umd.min.js.map +1 -1
  36. package/bundles/daffodil-design-list-examples.umd.js +8 -4
  37. package/bundles/daffodil-design-list-examples.umd.js.map +1 -1
  38. package/bundles/daffodil-design-list-examples.umd.min.js +1 -1
  39. package/bundles/daffodil-design-list-examples.umd.min.js.map +1 -1
  40. package/bundles/daffodil-design-loading-icon-examples.umd.js +4 -2
  41. package/bundles/daffodil-design-loading-icon-examples.umd.js.map +1 -1
  42. package/bundles/daffodil-design-loading-icon-examples.umd.min.js +1 -1
  43. package/bundles/daffodil-design-loading-icon-examples.umd.min.js.map +1 -1
  44. package/bundles/daffodil-design-media-gallery-examples.umd.js +4 -2
  45. package/bundles/daffodil-design-media-gallery-examples.umd.js.map +1 -1
  46. package/bundles/daffodil-design-media-gallery-examples.umd.min.js +1 -1
  47. package/bundles/daffodil-design-media-gallery-examples.umd.min.js.map +1 -1
  48. package/bundles/daffodil-design-modal-examples.umd.js +4 -2
  49. package/bundles/daffodil-design-modal-examples.umd.js.map +1 -1
  50. package/bundles/daffodil-design-modal-examples.umd.min.js +1 -1
  51. package/bundles/daffodil-design-modal-examples.umd.min.js.map +1 -1
  52. package/bundles/daffodil-design-navbar-examples.umd.js +177 -0
  53. package/bundles/daffodil-design-navbar-examples.umd.js.map +1 -0
  54. package/bundles/daffodil-design-navbar-examples.umd.min.js +2 -0
  55. package/bundles/daffodil-design-navbar-examples.umd.min.js.map +1 -0
  56. package/bundles/daffodil-design-quantity-field-examples.umd.js +4 -0
  57. package/bundles/daffodil-design-quantity-field-examples.umd.js.map +1 -1
  58. package/bundles/daffodil-design-quantity-field-examples.umd.min.js +1 -1
  59. package/bundles/daffodil-design-quantity-field-examples.umd.min.js.map +1 -1
  60. package/bundles/daffodil-design-radio-examples.umd.js +2 -1
  61. package/bundles/daffodil-design-radio-examples.umd.js.map +1 -1
  62. package/bundles/daffodil-design-radio-examples.umd.min.js +1 -1
  63. package/bundles/daffodil-design-radio-examples.umd.min.js.map +1 -1
  64. package/bundles/daffodil-design.umd.js +384 -87
  65. package/bundles/daffodil-design.umd.js.map +1 -1
  66. package/bundles/daffodil-design.umd.min.js +2 -2
  67. package/bundles/daffodil-design.umd.min.js.map +1 -1
  68. package/button/examples/daffodil-design-button-examples.metadata.json +1 -1
  69. package/callout/examples/daffodil-design-callout-examples.metadata.json +1 -1
  70. package/card/examples/basic-card/basic-card.component.d.ts +1 -0
  71. package/card/examples/card-orientation/card-orientation.component.d.ts +9 -0
  72. package/card/examples/card-orientation/card-orientation.module.d.ts +2 -0
  73. package/card/examples/card-theming/card-theming.component.d.ts +4 -2
  74. package/card/examples/daffodil-design-card-examples.d.ts +2 -0
  75. package/card/examples/daffodil-design-card-examples.metadata.json +1 -1
  76. package/card/examples/linkable-card/linkable-card.component.d.ts +8 -0
  77. package/card/examples/public_api.d.ts +5 -1
  78. package/card/examples/raised-card/raised-card.component.d.ts +6 -0
  79. package/card/examples/stroked-card/stroked-card.component.d.ts +8 -0
  80. package/card/examples/stroked-card/stroked-card.module.d.ts +2 -0
  81. package/checkbox/examples/daffodil-design-checkbox-examples.metadata.json +1 -1
  82. package/container/examples/container-sizes/container-sizes.component.d.ts +8 -0
  83. package/container/examples/container-sizes/container-sizes.module.d.ts +2 -0
  84. package/container/examples/daffodil-design-container-examples.d.ts +4 -0
  85. package/container/examples/daffodil-design-container-examples.metadata.json +1 -0
  86. package/container/examples/examples.d.ts +2 -0
  87. package/container/examples/index.d.ts +1 -0
  88. package/container/examples/package.json +11 -0
  89. package/container/examples/public_api.d.ts +3 -0
  90. package/core/article-encapsulated/article-encapsulated-mixin.d.ts +15 -0
  91. package/core/article-encapsulated/public_api.d.ts +1 -0
  92. package/core/manage-container-layout/manage-container-layout-mixin.d.ts +17 -0
  93. package/core/manage-container-layout/public_api.d.ts +1 -0
  94. package/core/public_api.d.ts +2 -0
  95. package/daff-theme.scss +293 -128
  96. package/daff-typography.scss +5 -4
  97. package/daff-util.scss +5 -4
  98. package/daffodil-design.metadata.json +1 -1
  99. package/esm2015/accordion/examples/basic-accordion/basic-accordion.component.js +4 -3
  100. package/esm2015/accordion/examples/nav-accordion/nav-accordion.component.js +4 -3
  101. package/esm2015/article/examples/article-blockquote/article-blockquote.component.js +4 -3
  102. package/esm2015/article/examples/article-code-block/article-code-block.component.js +4 -3
  103. package/esm2015/article/examples/article-code-inline/article-code-inline.component.js +4 -3
  104. package/esm2015/article/examples/article-headings/article-headings.component.js +4 -3
  105. package/esm2015/article/examples/article-hr/article-hr.component.js +4 -3
  106. package/esm2015/article/examples/article-lead/article-lead.component.js +4 -3
  107. package/esm2015/article/examples/article-link/article-link.component.js +4 -3
  108. package/esm2015/article/examples/article-meta/article-meta.component.js +4 -3
  109. package/esm2015/article/examples/article-ol/article-ol.component.js +4 -3
  110. package/esm2015/article/examples/article-table/article-table.component.js +4 -3
  111. package/esm2015/article/examples/article-ul/article-ul.component.js +4 -3
  112. package/esm2015/atoms/button/button.component.js +3 -2
  113. package/esm2015/atoms/container/container.component.js +1 -1
  114. package/esm2015/atoms/form/form-field/form-field/form-field.component.js +3 -1
  115. package/esm2015/atoms/form/input/input.component.js +3 -2
  116. package/esm2015/atoms/form/select/select/select.component.js +3 -2
  117. package/esm2015/atoms/image/image.component.js +2 -2
  118. package/esm2015/button/examples/basic-button/basic-button.component.js +3 -2
  119. package/esm2015/button/examples/icon-button/icon-button.component.js +3 -2
  120. package/esm2015/button/examples/raised-button/raised-button.component.js +3 -2
  121. package/esm2015/button/examples/sizeable-button/sizeable-button.component.js +3 -2
  122. package/esm2015/button/examples/statusable-button/statusable-button.component.js +3 -2
  123. package/esm2015/button/examples/stroked-button/stroked-button.component.js +3 -2
  124. package/esm2015/button/examples/underline-button/underline-button.component.js +3 -2
  125. package/esm2015/callout/examples/callout-text-alignment/callout-text-alignment.component.js +3 -2
  126. package/esm2015/callout/examples/callout-theming/callout-theming.component.js +3 -2
  127. package/esm2015/callout/examples/callout-with-grid/callout-with-grid.component.js +3 -2
  128. package/esm2015/callout/examples/compact-callout/compact-callout.component.js +3 -2
  129. package/esm2015/card/examples/basic-card/basic-card.component.js +9 -4
  130. package/esm2015/card/examples/basic-card/basic-card.module.js +3 -1
  131. package/esm2015/card/examples/card-orientation/card-orientation.component.js +24 -0
  132. package/esm2015/card/examples/card-orientation/card-orientation.module.js +27 -0
  133. package/esm2015/card/examples/card-theming/card-theming.component.js +15 -5
  134. package/esm2015/card/examples/daffodil-design-card-examples.js +3 -1
  135. package/esm2015/card/examples/linkable-card/linkable-card.component.js +21 -4
  136. package/esm2015/card/examples/linkable-card/linkable-card.module.js +3 -1
  137. package/esm2015/card/examples/public_api.js +7 -1
  138. package/esm2015/card/examples/raised-card/raised-card.component.js +19 -4
  139. package/esm2015/card/examples/raised-card/raised-card.module.js +3 -3
  140. package/esm2015/card/examples/stroked-card/stroked-card.component.js +27 -0
  141. package/esm2015/card/examples/stroked-card/stroked-card.module.js +27 -0
  142. package/esm2015/checkbox/examples/basic-checkbox/basic-checkbox.component.js +4 -3
  143. package/esm2015/checkbox/examples/checkbox-set/checkbox-set.component.js +4 -3
  144. package/esm2015/container/examples/container-sizes/container-sizes.component.js +23 -0
  145. package/esm2015/container/examples/container-sizes/container-sizes.module.js +23 -0
  146. package/esm2015/container/examples/daffodil-design-container-examples.js +5 -0
  147. package/esm2015/container/examples/examples.js +5 -0
  148. package/esm2015/container/examples/index.js +2 -0
  149. package/esm2015/container/examples/public_api.js +4 -0
  150. package/esm2015/core/article-encapsulated/article-encapsulated-mixin.js +12 -0
  151. package/esm2015/core/article-encapsulated/public_api.js +2 -0
  152. package/esm2015/core/manage-container-layout/manage-container-layout-mixin.js +14 -0
  153. package/esm2015/core/manage-container-layout/public_api.js +2 -0
  154. package/esm2015/core/public_api.js +3 -1
  155. package/esm2015/hero/examples/compact-hero/compact-hero.component.js +3 -2
  156. package/esm2015/hero/examples/hero-text-alignment/hero-text-alignment.component.js +3 -2
  157. package/esm2015/hero/examples/hero-theming/hero-theming.component.js +3 -2
  158. package/esm2015/hero/examples/hero-with-grid/hero-with-grid.component.js +3 -2
  159. package/esm2015/list/examples/basic-list/basic-list.component.js +4 -3
  160. package/esm2015/list/examples/icon-list/icon-list.component.js +4 -3
  161. package/esm2015/list/examples/multiline-list/multiline-list.component.js +4 -3
  162. package/esm2015/list/examples/nav-list/nav-list.component.js +4 -3
  163. package/esm2015/loading-icon/examples/loading-icon-color/loading-icon-color.component.js +4 -3
  164. package/esm2015/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.js +4 -3
  165. package/esm2015/media-gallery/examples/basic-media-gallery/basic-media-gallery.component.js +4 -3
  166. package/esm2015/media-gallery/examples/mismatched-sizes-media-gallery/mismatched-sizes-media-gallery.component.js +4 -3
  167. package/esm2015/modal/examples/basic-modal/basic-modal.component.js +4 -3
  168. package/esm2015/modal/examples/basic-modal/modal-content.component.js +4 -3
  169. package/esm2015/molecules/accordion/accordion/accordion.component.js +25 -3
  170. package/esm2015/molecules/accordion/accordion-item/accordion-item.component.js +3 -2
  171. package/esm2015/molecules/accordion/nav-accordion-item/nav-accordion-item.component.js +3 -2
  172. package/esm2015/molecules/article/article/article.component.js +4 -3
  173. package/esm2015/molecules/button-set/button-set.component.js +3 -2
  174. package/esm2015/molecules/callout/callout/callout.component.js +5 -3
  175. package/esm2015/molecules/card/card/card.component.js +78 -15
  176. package/esm2015/molecules/card/card-content/card-content.directive.js +18 -0
  177. package/esm2015/molecules/card/card-icon/card-icon.directive.js +18 -0
  178. package/esm2015/molecules/card/card.module.js +9 -3
  179. package/esm2015/molecules/card/public_api.js +4 -2
  180. package/esm2015/molecules/feature/feature/feature.component.js +4 -1
  181. package/esm2015/molecules/hero/hero/hero.component.js +6 -4
  182. package/esm2015/molecules/image-gallery/gallery-image/gallery-image.component.js +7 -3
  183. package/esm2015/molecules/image-gallery/image-gallery/image-gallery.component.js +6 -2
  184. package/esm2015/molecules/image-list/image-list.component.js +3 -2
  185. package/esm2015/molecules/link-set/link-set/link-set.component.js +23 -4
  186. package/esm2015/molecules/list/list/list.component.js +19 -5
  187. package/esm2015/molecules/media-gallery/media-gallery.component.js +31 -5
  188. package/esm2015/molecules/media-gallery/registry/media-gallery.registry.js +22 -8
  189. package/esm2015/molecules/media-gallery/thumbnail/thumbnail.directive.js +2 -2
  190. package/esm2015/molecules/modal/modal-actions/modal-actions.component.js +3 -2
  191. package/esm2015/molecules/navbar/navbar.component.js +11 -9
  192. package/esm2015/molecules/qty-dropdown/qty-dropdown.component.js +6 -1
  193. package/esm2015/molecules/sidebar/sidebar/sidebar.component.js +3 -2
  194. package/esm2015/navbar/examples/basic-navbar/basic-navbar.component.js +13 -0
  195. package/esm2015/navbar/examples/basic-navbar/basic-navbar.module.js +20 -0
  196. package/esm2015/navbar/examples/contained-navbar/contained-navbar.component.js +13 -0
  197. package/esm2015/navbar/examples/contained-navbar/contained-navbar.module.js +20 -0
  198. package/esm2015/navbar/examples/daffodil-design-navbar-examples.js +5 -0
  199. package/esm2015/navbar/examples/examples.js +11 -0
  200. package/esm2015/navbar/examples/index.js +2 -0
  201. package/esm2015/navbar/examples/navbar-theming/navbar-theming.component.js +27 -0
  202. package/esm2015/navbar/examples/navbar-theming/navbar-theming.module.js +21 -0
  203. package/esm2015/navbar/examples/public_api.js +10 -0
  204. package/esm2015/navbar/examples/raised-navbar/raised-navbar.component.js +13 -0
  205. package/esm2015/navbar/examples/raised-navbar/raised-navbar.module.js +19 -0
  206. package/esm2015/quantity-field/examples/basic/basic-quantity-field.component.js +3 -2
  207. package/esm2015/quantity-field/examples/customRange/custom-range-quantity-field.component.js +3 -2
  208. package/esm2015/quantity-field/examples/disabled/disabled-quantity-field.component.js +3 -2
  209. package/esm2015/quantity-field/examples/selectMax/select-max-quantity-field.component.js +3 -2
  210. package/esm2015/radio/examples/basic-radio/basic-radio.component.js +4 -3
  211. package/fesm2015/daffodil-design-accordion-examples.js +5 -3
  212. package/fesm2015/daffodil-design-accordion-examples.js.map +1 -1
  213. package/fesm2015/daffodil-design-article-examples.js +23 -12
  214. package/fesm2015/daffodil-design-article-examples.js.map +1 -1
  215. package/fesm2015/daffodil-design-button-examples.js +8 -1
  216. package/fesm2015/daffodil-design-button-examples.js.map +1 -1
  217. package/fesm2015/daffodil-design-callout-examples.js +5 -1
  218. package/fesm2015/daffodil-design-callout-examples.js.map +1 -1
  219. package/fesm2015/daffodil-design-card-examples.js +150 -12
  220. package/fesm2015/daffodil-design-card-examples.js.map +1 -1
  221. package/fesm2015/daffodil-design-checkbox-examples.js +5 -3
  222. package/fesm2015/daffodil-design-checkbox-examples.js.map +1 -1
  223. package/fesm2015/daffodil-design-container-examples.js +54 -0
  224. package/fesm2015/daffodil-design-container-examples.js.map +1 -0
  225. package/fesm2015/daffodil-design-hero-examples.js +5 -1
  226. package/fesm2015/daffodil-design-hero-examples.js.map +1 -1
  227. package/fesm2015/daffodil-design-list-examples.js +9 -5
  228. package/fesm2015/daffodil-design-list-examples.js.map +1 -1
  229. package/fesm2015/daffodil-design-loading-icon-examples.js +5 -3
  230. package/fesm2015/daffodil-design-loading-icon-examples.js.map +1 -1
  231. package/fesm2015/daffodil-design-media-gallery-examples.js +5 -3
  232. package/fesm2015/daffodil-design-media-gallery-examples.js.map +1 -1
  233. package/fesm2015/daffodil-design-modal-examples.js +5 -3
  234. package/fesm2015/daffodil-design-modal-examples.js.map +1 -1
  235. package/fesm2015/daffodil-design-navbar-examples.js +142 -0
  236. package/fesm2015/daffodil-design-navbar-examples.js.map +1 -0
  237. package/fesm2015/daffodil-design-quantity-field-examples.js +5 -1
  238. package/fesm2015/daffodil-design-quantity-field-examples.js.map +1 -1
  239. package/fesm2015/daffodil-design-radio-examples.js +3 -2
  240. package/fesm2015/daffodil-design-radio-examples.js.map +1 -1
  241. package/fesm2015/daffodil-design.js +326 -82
  242. package/fesm2015/daffodil-design.js.map +1 -1
  243. package/hero/examples/daffodil-design-hero-examples.metadata.json +1 -1
  244. package/list/examples/daffodil-design-list-examples.metadata.json +1 -1
  245. package/loading-icon/examples/daffodil-design-loading-icon-examples.metadata.json +1 -1
  246. package/media-gallery/examples/daffodil-design-media-gallery-examples.metadata.json +1 -1
  247. package/modal/examples/daffodil-design-modal-examples.metadata.json +1 -1
  248. package/molecules/accordion/accordion/accordion.component.d.ts +20 -1
  249. package/molecules/callout/callout/callout.component.d.ts +10 -0
  250. package/molecules/card/card/card.component.d.ts +42 -11
  251. package/molecules/card/card-content/card-content.directive.d.ts +6 -0
  252. package/molecules/card/card-icon/card-icon.directive.d.ts +6 -0
  253. package/molecules/card/public_api.d.ts +3 -1
  254. package/molecules/feature/feature/feature.component.d.ts +3 -0
  255. package/molecules/hero/hero/hero.component.d.ts +11 -1
  256. package/molecules/image-gallery/gallery-image/gallery-image.component.d.ts +3 -0
  257. package/molecules/image-gallery/image-gallery/image-gallery.component.d.ts +3 -0
  258. package/molecules/link-set/link-set/link-set.component.d.ts +20 -1
  259. package/molecules/list/list/list.component.d.ts +19 -3
  260. package/molecules/media-gallery/media-gallery.component.d.ts +24 -2
  261. package/molecules/media-gallery/registry/media-gallery.registry.d.ts +6 -3
  262. package/molecules/media-gallery/thumbnail/thumbnail.directive.d.ts +1 -1
  263. package/molecules/navbar/navbar.component.d.ts +10 -5
  264. package/molecules/qty-dropdown/qty-dropdown.component.d.ts +3 -0
  265. package/navbar/examples/basic-navbar/basic-navbar.component.d.ts +2 -0
  266. package/navbar/examples/basic-navbar/basic-navbar.module.d.ts +2 -0
  267. package/navbar/examples/contained-navbar/contained-navbar.component.d.ts +2 -0
  268. package/navbar/examples/contained-navbar/contained-navbar.module.d.ts +2 -0
  269. package/navbar/examples/daffodil-design-navbar-examples.d.ts +4 -0
  270. package/navbar/examples/daffodil-design-navbar-examples.metadata.json +1 -0
  271. package/navbar/examples/examples.d.ts +2 -0
  272. package/navbar/examples/index.d.ts +1 -0
  273. package/navbar/examples/navbar-theming/navbar-theming.component.d.ts +8 -0
  274. package/navbar/examples/navbar-theming/navbar-theming.module.d.ts +2 -0
  275. package/navbar/examples/package.json +11 -0
  276. package/navbar/examples/public_api.d.ts +9 -0
  277. package/navbar/examples/raised-navbar/raised-navbar.component.d.ts +2 -0
  278. package/navbar/examples/raised-navbar/raised-navbar.module.d.ts +2 -0
  279. package/package.json +2 -2
  280. package/quantity-field/examples/daffodil-design-quantity-field-examples.metadata.json +1 -1
  281. package/radio/examples/daffodil-design-radio-examples.metadata.json +1 -1
@@ -12,6 +12,18 @@ import { CdkPortalOutlet, PortalModule, ComponentPortal } from '@angular/cdk/por
12
12
  import { OverlayModule, GlobalPositionStrategy, Overlay } from '@angular/cdk/overlay';
13
13
  import { A11yModule } from '@angular/cdk/a11y';
14
14
 
15
+ /**
16
+ * A mixin for giving a component the ability to prevent article styles from cascading down.
17
+ */
18
+ function daffArticleEncapsulatedMixin(Base) {
19
+ return class extends Base {
20
+ constructor(...args) {
21
+ super(...args);
22
+ this._renderer.addClass(this._elementRef.nativeElement, `daff-ae`);
23
+ }
24
+ };
25
+ }
26
+
15
27
  var DaffPaletteEnum;
16
28
  (function (DaffPaletteEnum) {
17
29
  DaffPaletteEnum["PRIMARY"] = "primary";
@@ -249,7 +261,7 @@ class DaffButtonBase {
249
261
  this._renderer = _renderer;
250
262
  }
251
263
  }
252
- const _daffButtonBase = daffPrefixableMixin(daffSuffixableMixin(daffColorMixin(daffStatusMixin(daffSizeMixin(DaffButtonBase, 'md')))));
264
+ const _daffButtonBase = daffArticleEncapsulatedMixin(daffPrefixableMixin(daffSuffixableMixin(daffColorMixin(daffStatusMixin(daffSizeMixin(DaffButtonBase, 'md'))))));
253
265
  var DaffButtonTypeEnum;
254
266
  (function (DaffButtonTypeEnum) {
255
267
  DaffButtonTypeEnum["Default"] = "daff-button";
@@ -423,6 +435,8 @@ class DaffFormFieldControl {
423
435
 
424
436
  const DaffFormFieldMissingControlMessage = 'A DaffFormFieldComponent must contain a DaffFormFieldControl';
425
437
 
438
+ // ChangeDetection is ignored because this component needs to be refactored
439
+ // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
426
440
  class DaffFormFieldComponent {
427
441
  constructor() {
428
442
  /**
@@ -538,39 +552,7 @@ DaffFormFieldModule.decorators = [
538
552
 
539
553
  const DAFF_MEDIA_GALLERY_TOKEN = new InjectionToken('DAFF_MEDIA_GALLERY_TOKEN');
540
554
 
541
- let uniqueGalleryId = 0;
542
- class DaffMediaGalleryComponent {
543
- constructor() {
544
- /**
545
- * Adds a class for styling the media gallery
546
- */
547
- this.class = true;
548
- /**
549
- * The name of the gallery
550
- */
551
- this.name = `${uniqueGalleryId}`;
552
- uniqueGalleryId++;
553
- }
554
- }
555
- DaffMediaGalleryComponent.decorators = [
556
- { type: Component, args: [{
557
- selector: 'daff-media-gallery',
558
- template: "<div class=\"daff-media-gallery__thumbnails\">\n\t<ng-content select=\"[daffThumbnail]\"></ng-content>\n</div>\n<div class=\"daff-media-gallery__selected-thumbnail\">\n\t<daff-media-renderer></daff-media-renderer>\n</div>",
559
- changeDetection: ChangeDetectionStrategy.OnPush,
560
- providers: [
561
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
562
- { provide: DAFF_MEDIA_GALLERY_TOKEN, useExisting: DaffMediaGalleryComponent },
563
- ],
564
- styles: [":host(.daff-media-gallery){display:flex;flex-direction:column}@media (min-width:1024px){:host(.daff-media-gallery){flex-direction:row}}:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;display:inline-block;height:64px;width:64px;margin:0 2px;max-width:100%;overflow:hidden;user-select:none}@media (min-width:480px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{height:72px;width:72px}}@media (min-width:1024px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{display:block;margin:0 0 4px;height:80px;width:80px}}.daff-media-gallery__thumbnails{margin:0 -2px;max-height:100%;order:2}@media (min-width:1024px){.daff-media-gallery__thumbnails{margin:0 8px 0 0;order:1}}.daff-media-gallery__selected-thumbnail{display:block;flex-grow:1;order:1}@media (min-width:1024px){.daff-media-gallery__selected-thumbnail{order:2}}"]
565
- },] }
566
- ];
567
- /** @nocollapse */
568
- DaffMediaGalleryComponent.ctorParameters = () => [];
569
- DaffMediaGalleryComponent.propDecorators = {
570
- class: [{ type: HostBinding, args: ['class.daff-media-gallery',] }],
571
- name: [{ type: Input }]
572
- };
573
-
555
+ const isGallery = (element) => !('gallery' in element);
574
556
  class DaffMediaGalleryRegistry {
575
557
  constructor() {
576
558
  this.galleries = {};
@@ -582,16 +564,18 @@ class DaffMediaGalleryRegistry {
582
564
  add(gallery, thumbnail) {
583
565
  if (this.galleries[gallery.name]) {
584
566
  let newGallery = this.galleries[gallery.name].getValue();
585
- newGallery = Object.assign(Object.assign({}, newGallery), { thumbnails: [
586
- ...newGallery.thumbnails.filter(t => t !== thumbnail),
587
- thumbnail,
588
- ] });
567
+ if (thumbnail) {
568
+ newGallery = Object.assign(Object.assign({}, newGallery), { thumbnails: [
569
+ ...newGallery.thumbnails.filter(t => t !== thumbnail),
570
+ thumbnail,
571
+ ] });
572
+ }
589
573
  this.galleries[gallery.name].next(newGallery);
590
574
  }
591
575
  else {
592
576
  this.galleries[gallery.name] = new BehaviorSubject({
593
577
  gallery,
594
- thumbnails: [thumbnail],
578
+ thumbnails: thumbnail ? [thumbnail] : [],
595
579
  });
596
580
  }
597
581
  if (this.galleries[gallery.name].getValue().thumbnails.length === 1) {
@@ -600,9 +584,17 @@ class DaffMediaGalleryRegistry {
600
584
  }
601
585
  /**
602
586
  * @description
603
- * Removes a media element from the internal registry.
587
+ * Removes a thumbnail or gallery from the internal registry.
604
588
  */
605
- remove(thumbnail) {
589
+ remove(element) {
590
+ if (isGallery(element)) {
591
+ this.removeGallery(element);
592
+ }
593
+ else {
594
+ this.removeThumbnail(element);
595
+ }
596
+ }
597
+ removeThumbnail(thumbnail) {
606
598
  if (!this.galleries[thumbnail.gallery.name]) {
607
599
  return;
608
600
  }
@@ -616,6 +608,9 @@ class DaffMediaGalleryRegistry {
616
608
  ...gallery.thumbnails.slice(index + 1),
617
609
  ] }));
618
610
  }
611
+ removeGallery(gallery) {
612
+ delete this.galleries[gallery.name];
613
+ }
619
614
  /**
620
615
  * @description
621
616
  * Selects a media element for a given gallery.
@@ -640,6 +635,63 @@ DaffMediaGalleryRegistry.decorators = [
640
635
  { type: Injectable, args: [{ providedIn: 'root' },] }
641
636
  ];
642
637
 
638
+ let uniqueGalleryId = 0;
639
+ /**
640
+ * An _elementRef and an instance of renderer2 are needed for the link set mixins
641
+ */
642
+ class DaffMediaGalleryBase {
643
+ constructor(_elementRef, _renderer) {
644
+ this._elementRef = _elementRef;
645
+ this._renderer = _renderer;
646
+ }
647
+ }
648
+ const _daffMediaGalleryBase = daffArticleEncapsulatedMixin((DaffMediaGalleryBase));
649
+ class DaffMediaGalleryComponent extends _daffMediaGalleryBase {
650
+ constructor(elementRef, renderer, registry) {
651
+ super(elementRef, renderer);
652
+ this.elementRef = elementRef;
653
+ this.renderer = renderer;
654
+ this.registry = registry;
655
+ /**
656
+ * Adds a class for styling the media gallery
657
+ */
658
+ this.class = true;
659
+ /**
660
+ * The name of the gallery
661
+ */
662
+ this.name = `${uniqueGalleryId}`;
663
+ uniqueGalleryId++;
664
+ }
665
+ ngOnInit() {
666
+ this.registry.add(this);
667
+ }
668
+ ngOnDestroy() {
669
+ this.registry.remove(this);
670
+ }
671
+ }
672
+ DaffMediaGalleryComponent.decorators = [
673
+ { type: Component, args: [{
674
+ selector: 'daff-media-gallery',
675
+ template: "<div class=\"daff-media-gallery__thumbnails\">\n\t<ng-content select=\"[daffThumbnail]\"></ng-content>\n</div>\n<div class=\"daff-media-gallery__selected-thumbnail\">\n\t<daff-media-renderer></daff-media-renderer>\n</div>",
676
+ changeDetection: ChangeDetectionStrategy.OnPush,
677
+ providers: [
678
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
679
+ { provide: DAFF_MEDIA_GALLERY_TOKEN, useExisting: DaffMediaGalleryComponent },
680
+ ],
681
+ styles: [":host(.daff-media-gallery){display:flex;flex-direction:column}@media (min-width:1024px){:host(.daff-media-gallery){flex-direction:row}}:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;display:inline-block;height:64px;width:64px;margin:0 2px;max-width:100%;overflow:hidden;user-select:none}@media (min-width:480px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{height:72px;width:72px}}@media (min-width:1024px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{display:block;margin:0 0 4px;height:80px;width:80px}}.daff-media-gallery__thumbnails{margin:0 -2px;max-height:100%;order:2}@media (min-width:1024px){.daff-media-gallery__thumbnails{margin:0 8px 0 0;order:1}}.daff-media-gallery__selected-thumbnail{display:block;flex-grow:1;order:1}@media (min-width:1024px){.daff-media-gallery__selected-thumbnail{order:2}}"]
682
+ },] }
683
+ ];
684
+ /** @nocollapse */
685
+ DaffMediaGalleryComponent.ctorParameters = () => [
686
+ { type: ElementRef },
687
+ { type: Renderer2 },
688
+ { type: DaffMediaGalleryRegistry }
689
+ ];
690
+ DaffMediaGalleryComponent.propDecorators = {
691
+ class: [{ type: HostBinding, args: ['class.daff-media-gallery',] }],
692
+ name: [{ type: Input }]
693
+ };
694
+
643
695
  /**
644
696
  * Dynamically renders the selected `DaffThumbnailDirective` in a `daff-media-gallery` any time the selected thumbnail
645
697
  * changes.
@@ -751,7 +803,7 @@ class DaffThumbnailDirective {
751
803
  /**
752
804
  * Adds a click event to trigger selection of the media element.
753
805
  *
754
- * @param $event
806
+ * @param event: MouseEvent
755
807
  */
756
808
  onClick($event) {
757
809
  this.registry.select(this);
@@ -893,7 +945,7 @@ class DaffImageComponent {
893
945
  DaffImageComponent.decorators = [
894
946
  { type: Component, args: [{
895
947
  selector: 'daff-image',
896
- template: "<div class=\"daff-image__wrapper\" [style.paddingTop]=\"_paddingTop\">\n\t<img [src]=\"src\" [alt]=\"alt\" (load)=\"load.emit\" />\n</div>",
948
+ template: "<div class=\"daff-image__wrapper\" [style.paddingTop]=\"_paddingTop\">\n\t<img [src]=\"src\" [alt]=\"alt\" (load)=\"load.emit\" loading=\"lazy\"/>\n</div>",
897
949
  changeDetection: ChangeDetectionStrategy.OnPush,
898
950
  providers: [
899
951
  {
@@ -970,6 +1022,7 @@ DaffInputComponent.decorators = [
970
1022
  // eslint-disable-next-line @angular-eslint/component-selector
971
1023
  selector: 'input[daff-input]',
972
1024
  template: '<ng-content></ng-content>',
1025
+ changeDetection: ChangeDetectionStrategy.OnPush,
973
1026
  providers: [
974
1027
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
975
1028
  { provide: DaffFormFieldControl, useExisting: DaffInputComponent },
@@ -1041,6 +1094,7 @@ DaffNativeSelectComponent.decorators = [
1041
1094
  selector: 'select[daff-native-select]',
1042
1095
  template: '<ng-content></ng-content>',
1043
1096
  encapsulation: ViewEncapsulation.None,
1097
+ changeDetection: ChangeDetectionStrategy.OnPush,
1044
1098
  providers: [
1045
1099
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
1046
1100
  { provide: DaffFormFieldControl, useExisting: DaffNativeSelectComponent },
@@ -1686,7 +1740,7 @@ DaffContainerComponent.decorators = [
1686
1740
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1687
1741
  inputs: ['size'],
1688
1742
  changeDetection: ChangeDetectionStrategy.OnPush,
1689
- styles: [":host{display:block;margin:0 auto;padding:0;width:100%}:host.daff-xs{max-width:640px}:host.daff-sm{max-width:800px}:host.daff-md{max-width:1040px}:host.daff-lg{max-width:1340px}:host.daff-xl{max-width:1920px}"]
1743
+ styles: [":host-context(.daff-manage-container-layout){display:inherit;flex:inherit;flex-direction:inherit;flex-flow:inherit;flex-wrap:inherit;justify-content:inherit;justify-items:inherit;align-items:inherit;align-content:inherit;gap:inherit;grid-template-columns:inherit;grid-template-rows:inherit;grid-template-areas:inherit;grid-template:inherit;grid-auto-columns:inherit;grid-auto-rows:inherit;grid-auto-flow:inherit;grid:inherit;-moz-column-gap:inherit;column-gap:inherit;row-gap:inherit;grid-gap:inherit;grid-column-gap:inherit;grid-row-gap:inherit;place-items:inherit;place-content:inherit}:host{display:block;margin:0 auto;padding:0;width:100%}:host.daff-xs{max-width:640px}:host.daff-sm{max-width:800px}:host.daff-md{max-width:1040px}:host.daff-lg{max-width:1340px}:host.daff-xl{max-width:1920px}"]
1690
1744
  },] }
1691
1745
  ];
1692
1746
  /** @nocollapse */
@@ -2279,6 +2333,7 @@ DaffAccordionItemComponent.decorators = [
2279
2333
  selector: 'daff-accordion-item',
2280
2334
  template: "<div class=\"daff-accordion-item__header\" (click)=\"toggleActive()\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n <span [hidden]=\"_open\" daffSuffix>\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </span>\n <span [hidden]=\"!_open\" daffSuffix>\n <fa-icon [icon]=\"faChevronUp\"></fa-icon>\n </span>\n</div>\n<div [@openAccordion]=\"_animationState\">\n <ng-content></ng-content>\n</div>",
2281
2335
  encapsulation: ViewEncapsulation.None,
2336
+ changeDetection: ChangeDetectionStrategy.OnPush,
2282
2337
  animations: [
2283
2338
  daffAccordionAnimations.openAccordion,
2284
2339
  ],
@@ -2290,15 +2345,36 @@ DaffAccordionItemComponent.propDecorators = {
2290
2345
  initiallyActive: [{ type: Input }]
2291
2346
  };
2292
2347
 
2293
- class DaffAccordionComponent {
2348
+ /**
2349
+ * An _elementRef and an instance of renderer2 are needed for the link set mixins
2350
+ */
2351
+ class DaffAccordionBase {
2352
+ constructor(_elementRef, _renderer) {
2353
+ this._elementRef = _elementRef;
2354
+ this._renderer = _renderer;
2355
+ }
2356
+ }
2357
+ const _daffAccordionBase = daffArticleEncapsulatedMixin((DaffAccordionBase));
2358
+ class DaffAccordionComponent extends _daffAccordionBase {
2359
+ constructor(elementRef, renderer) {
2360
+ super(elementRef, renderer);
2361
+ this.elementRef = elementRef;
2362
+ this.renderer = renderer;
2363
+ }
2294
2364
  }
2295
2365
  DaffAccordionComponent.decorators = [
2296
2366
  { type: Component, args: [{
2297
2367
  selector: 'daff-accordion',
2298
2368
  template: "<ng-content></ng-content>",
2369
+ changeDetection: ChangeDetectionStrategy.OnPush,
2299
2370
  styles: [":host{display:block;width:100%}"]
2300
2371
  },] }
2301
2372
  ];
2373
+ /** @nocollapse */
2374
+ DaffAccordionComponent.ctorParameters = () => [
2375
+ { type: ElementRef },
2376
+ { type: Renderer2 }
2377
+ ];
2302
2378
 
2303
2379
  class DaffNavAccordionItemComponent {
2304
2380
  constructor(accordion, navAccordionItemParent) {
@@ -2349,6 +2425,7 @@ DaffNavAccordionItemComponent.decorators = [
2349
2425
  { type: Component, args: [{
2350
2426
  selector: 'daff-nav-accordion-item',
2351
2427
  template: "<div class=\"daff-nav-accordion-item__header\" (click)=\"toggleActive()\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n <span [hidden]=\"_open\" daffSuffix *ngIf=\"_navAccordionItemChild.toArray().length\">\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </span>\n <span [hidden]=\"!_open\" daffSuffix *ngIf=\"_navAccordionItemChild.toArray().length\">\n <fa-icon [icon]=\"faChevronUp\"></fa-icon>\n </span>\n</div>\n<div [@openAccordion]=\"_animationState\">\n <ng-content></ng-content>\n</div>\n",
2428
+ changeDetection: ChangeDetectionStrategy.OnPush,
2352
2429
  animations: [
2353
2430
  daffAccordionAnimations.openAccordion,
2354
2431
  ],
@@ -2412,7 +2489,8 @@ DaffArticleComponent.decorators = [
2412
2489
  selector: 'daff-article',
2413
2490
  template: '<ng-content></ng-content>',
2414
2491
  encapsulation: ViewEncapsulation.None,
2415
- styles: [".daff-article{display:block}.daff-article__title{font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width:768px){.daff-article__title{font-size:3rem;line-height:3.5rem}}.daff-article__lead{margin:0}.daff-article__lead,.daff-article__lead code{font-size:1.25rem;line-height:1.75rem;font-weight:400}.daff-article__meta{font-size:.875rem}.daff-article>h1,.daff-article>h2,.daff-article>h3,.daff-article>h4,.daff-article>h5,.daff-article>h6{margin-bottom:.5rem}.daff-article>h2,.daff-article>h3,.daff-article>h4,.daff-article>h5,.daff-article>h6{margin-top:1.5rem}.daff-article>h1{font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width:768px){.daff-article>h1{font-size:3rem;line-height:3.5rem}}.daff-article>h2{font-weight:700;font-size:1.5rem;line-height:1.75rem}@media (min-width:768px){.daff-article>h2{font-size:2rem;line-height:2.5rem}}.daff-article>h3{font-weight:700;font-size:1.25rem;line-height:1.5rem}@media (min-width:768px){.daff-article>h3{font-size:1.5rem;line-height:2rem}}.daff-article>h4{font-size:1.25rem;line-height:1.5rem}@media (min-width:768px){.daff-article>h4{font-size:1.5rem;line-height:2rem}}.daff-article>h5{font-size:1.125rem;line-height:1.5rem}.daff-article>h6{font-size:1rem;line-height:1.5rem}.daff-article>ol,.daff-article>ul{padding-left:1rem}.daff-article>strong{font-weight:700}.daff-article pre{display:block;border-radius:4px;font-size:.875rem;line-height:1.5rem;margin:0;padding:1.5rem;overflow:auto;white-space:pre-wrap}.daff-article pre code{display:block;padding:0}.daff-article code{display:inline-block;border-radius:4px;font-size:.875rem;line-height:1rem;padding:4px}.daff-article hr{border:0;height:1px;margin:2rem 0}.daff-article blockquote{font-size:1.25rem;margin:0;padding:1rem 1.5rem}.daff-article blockquote cite{text-transform:uppercase;font-weight:700;display:block;font-size:.875rem;margin-top:1rem}.daff-article table{display:block;border-collapse:collapse;overflow:auto;width:100%}.daff-article table th{font-weight:600;outline:0;padding:16px;text-align:left;vertical-align:bottom;box-sizing:border-box}.daff-article table td{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;padding:8px 16px;word-break:break-word;vertical-align:top;box-sizing:border-box}"]
2492
+ changeDetection: ChangeDetectionStrategy.OnPush,
2493
+ styles: [".daff-article{display:block}.daff-article a:not(.daff-ae *,.daff-ae){font-weight:600;text-decoration:none}.daff-article a:not(.daff-ae *,.daff-ae):hover{text-decoration:underline}.daff-article h1:not(.daff-ae *,.daff-ae),.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-bottom:.5rem}.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-top:2rem}.daff-article h1:not(.daff-ae *,.daff-ae){font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width:768px){.daff-article h1:not(.daff-ae *,.daff-ae){font-size:3rem;line-height:3.5rem}}.daff-article h2:not(.daff-ae *,.daff-ae){font-size:2rem;line-height:2.5rem}.daff-article h3:not(.daff-ae *,.daff-ae){font-size:1.5rem;line-height:2rem}.daff-article h4:not(.daff-ae *,.daff-ae){font-size:1.25rem;line-height:1.5rem}.daff-article h5:not(.daff-ae *,.daff-ae){font-size:1.125rem;line-height:1.5rem}.daff-article h6:not(.daff-ae *,.daff-ae){font-size:1rem;line-height:1.5rem}.daff-article p:not(.daff-ae *,.daff-ae){margin:0 0 1rem}.daff-article strong{font-weight:700}.daff-article pre{display:block;border-radius:4px;font-size:.875rem;line-height:1.5rem;margin:0;padding:1.5rem;overflow:auto;white-space:pre-wrap}.daff-article pre code{display:block;padding:0}.daff-article code{display:inline-block;border-radius:4px;font-size:.875rem;line-height:1rem;padding:.25rem}.daff-article__title{font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width:768px){.daff-article__title{font-size:3rem;line-height:3.5rem}}.daff-article__lead{font-size:1.25rem;line-height:1.75rem;font-weight:400;margin:0}.daff-article__lead code{font-size:1.25rem;line-height:1.5rem;font-weight:400}.daff-article__meta{font-size:.875rem}.daff-article hr{border:0;height:1px;margin:2rem 0}.daff-article blockquote{border-radius:4px;margin:0;padding:1rem 1.5rem}.daff-article blockquote cite{font-size:.875rem;font-weight:400;line-height:1.25rem;display:block;margin-top:1rem}.daff-article table{display:block;border-collapse:collapse;margin:1.5rem 0;overflow:auto;width:100%}.daff-article table th{font-weight:600;outline:0;padding:1rem;text-align:left;vertical-align:bottom;box-sizing:border-box}.daff-article table td{padding:.5rem 1rem;vertical-align:top;box-sizing:border-box}"]
2416
2494
  },] }
2417
2495
  ];
2418
2496
  DaffArticleComponent.propDecorators = {
@@ -2584,6 +2662,7 @@ DaffButtonSetComponent.decorators = [
2584
2662
  selector: 'daff-button-set',
2585
2663
  template: '<ng-content></ng-content>',
2586
2664
  encapsulation: ViewEncapsulation.None,
2665
+ changeDetection: ChangeDetectionStrategy.OnPush,
2587
2666
  styles: [".daff-button-set{display:flex;flex-direction:column;flex-wrap:wrap}@media (min-width:480px){.daff-button-set{flex-direction:row}}.daff-button-set>*{margin:0 0 5px}.daff-button-set>:last-child{margin:0}@media (min-width:480px){.daff-button-set>*{margin:0 5px 0 0}.daff-button-set>:last-child{margin:0}}"]
2588
2667
  },] }
2589
2668
  ];
@@ -2604,6 +2683,9 @@ DaffButtonSetModule.decorators = [
2604
2683
  },] }
2605
2684
  ];
2606
2685
 
2686
+ /**
2687
+ * @deprecated See {@link DaffMediaGalleryComponent}
2688
+ */
2607
2689
  class DaffImageGalleryComponent {
2608
2690
  }
2609
2691
  DaffImageGalleryComponent.decorators = [
@@ -2611,10 +2693,14 @@ DaffImageGalleryComponent.decorators = [
2611
2693
  selector: 'daff-image-gallery',
2612
2694
  template: "<div class=\"daff-image-gallery\">\n <div class=\"daff-image-gallery__active-image\">\n <ng-content select=\"[daff-active-image]\"></ng-content>\n </div>\n\n <daff-image-list class=\"daff-image-gallery__image-list\">\n <ng-content select=\"daff-gallery-image\"></ng-content>\n </daff-image-list>\n</div>\n",
2613
2695
  encapsulation: ViewEncapsulation.None,
2696
+ changeDetection: ChangeDetectionStrategy.OnPush,
2614
2697
  styles: [".daff-image-gallery{display:grid;flex-direction:column;grid-template-areas:\"active-image\" \"image-list\";max-height:100%}@media (min-width:1024px){.daff-image-gallery{grid-template-areas:\"image-list active-image\";max-height:-webkit-min-content;max-height:-moz-min-content;max-height:min-content}}.daff-image-gallery__active-image{grid-area:active-image}.daff-image-gallery__active-image img{display:block;max-width:100%}.daff-image-gallery__image-list{grid-area:image-list;margin:5px 0 0;max-height:100%}@media (min-width:1024px){.daff-image-gallery__image-list{margin:0 25px 0 0;max-height:-webkit-fill-available}}.daff-image-gallery__daff-gallery-image img{display:block;opacity:.6;width:90px}.daff-image-gallery__daff-gallery-image--selected img{opacity:1}"]
2615
2698
  },] }
2616
2699
  ];
2617
2700
 
2701
+ /**
2702
+ * @deprecated See {@link DaffThumbnailDirective}
2703
+ */
2618
2704
  class DaffGalleryImageComponent {
2619
2705
  constructor() {
2620
2706
  this.class = true;
@@ -2623,7 +2709,8 @@ class DaffGalleryImageComponent {
2623
2709
  DaffGalleryImageComponent.decorators = [
2624
2710
  { type: Component, args: [{
2625
2711
  selector: 'daff-gallery-image',
2626
- template: "<div class=\"gallery-image__wrapper\">\n <ng-content></ng-content>\n</div>"
2712
+ template: "<div class=\"gallery-image__wrapper\">\n <ng-content></ng-content>\n</div>",
2713
+ changeDetection: ChangeDetectionStrategy.OnPush
2627
2714
  },] }
2628
2715
  ];
2629
2716
  DaffGalleryImageComponent.propDecorators = {
@@ -2644,6 +2731,7 @@ DaffImageListComponent.decorators = [
2644
2731
  selector: 'daff-image-list',
2645
2732
  template: '<ng-content></ng-content>',
2646
2733
  encapsulation: ViewEncapsulation.None,
2734
+ changeDetection: ChangeDetectionStrategy.OnPush,
2647
2735
  styles: [".daff-image-list{overflow:scroll;white-space:nowrap}.daff-image-list>*{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block;margin:0 5px 0 0}@media (min-width:1024px){.daff-image-list>*{display:block;margin:0 0 5px}}.daff-image-list>:last-child{margin:0}::-webkit-scrollbar{height:2px;width:2px}::-webkit-scrollbar-thumb{box-shadow:inset 0 0 3px #b6b6b6;-webkit-box-shadow:inset 0 0 3px #b6b6b6}"]
2648
2736
  },] }
2649
2737
  ];
@@ -2686,11 +2774,24 @@ DaffImageGalleryModule.decorators = [
2686
2774
  },] }
2687
2775
  ];
2688
2776
 
2777
+ /**
2778
+ * An _elementRef and an instance of renderer2 are needed for the link set mixins
2779
+ */
2780
+ class DaffLinkSetBase {
2781
+ constructor(_elementRef, _renderer) {
2782
+ this._elementRef = _elementRef;
2783
+ this._renderer = _renderer;
2784
+ }
2785
+ }
2786
+ const _daffLinkSetBase = daffArticleEncapsulatedMixin((DaffLinkSetBase));
2689
2787
  /**
2690
2788
  * DaffLinkSetComponent is a component for displaying a two or more links.
2691
2789
  */
2692
- class DaffLinkSetComponent {
2693
- constructor() {
2790
+ class DaffLinkSetComponent extends _daffLinkSetBase {
2791
+ constructor(elementRef, renderer) {
2792
+ super(elementRef, renderer);
2793
+ this.elementRef = elementRef;
2794
+ this.renderer = renderer;
2694
2795
  /**
2695
2796
  * @docs-private
2696
2797
  */
@@ -2706,6 +2807,11 @@ DaffLinkSetComponent.decorators = [
2706
2807
  styles: [".daff-link-set{display:block;margin:0;padding:0}.daff-link-set__heading{font-weight:700;display:block;font-size:1rem;line-height:1em;margin-bottom:15px;text-transform:uppercase}.daff-link-set__subheading{display:block;font-size:1rem;line-height:1.5em}.daff-link-set__item{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:currentColor;display:block;font-size:1em;line-height:1.5em;text-decoration:none;transition:color .15s ease}.daff-link-set__item:hover{text-decoration:underline}.daff-link-set__item[disabled]{cursor:not-allowed}.daff-link-set .daff-link-set{margin-left:10px}"]
2707
2808
  },] }
2708
2809
  ];
2810
+ /** @nocollapse */
2811
+ DaffLinkSetComponent.ctorParameters = () => [
2812
+ { type: ElementRef },
2813
+ { type: Renderer2 }
2814
+ ];
2709
2815
  DaffLinkSetComponent.propDecorators = {
2710
2816
  class: [{ type: HostBinding, args: ['class.daff-link-set',] }]
2711
2817
  };
@@ -2868,9 +2974,21 @@ var DaffListTypeEnum;
2868
2974
  DaffListTypeEnum["Default"] = "daff-list";
2869
2975
  DaffListTypeEnum["Nav"] = "daff-nav-list";
2870
2976
  })(DaffListTypeEnum || (DaffListTypeEnum = {}));
2871
- class DaffListComponent {
2872
- constructor(elementRef) {
2977
+ /**
2978
+ * An _elementRef and an instance of renderer2 are needed for the list mixins
2979
+ */
2980
+ class DaffListBase {
2981
+ constructor(_elementRef, _renderer) {
2982
+ this._elementRef = _elementRef;
2983
+ this._renderer = _renderer;
2984
+ }
2985
+ }
2986
+ const _daffListBase = daffArticleEncapsulatedMixin((DaffListBase));
2987
+ class DaffListComponent extends _daffListBase {
2988
+ constructor(elementRef, renderer) {
2989
+ super(elementRef, renderer);
2873
2990
  this.elementRef = elementRef;
2991
+ this.renderer = renderer;
2874
2992
  }
2875
2993
  /**
2876
2994
  * @docs-private
@@ -2936,7 +3054,8 @@ DaffListComponent.decorators = [
2936
3054
  ];
2937
3055
  /** @nocollapse */
2938
3056
  DaffListComponent.ctorParameters = () => [
2939
- { type: ElementRef }
3057
+ { type: ElementRef },
3058
+ { type: Renderer2 }
2940
3059
  ];
2941
3060
  DaffListComponent.propDecorators = {
2942
3061
  mode: [{ type: Input }],
@@ -3055,6 +3174,7 @@ DaffModalActionsComponent.decorators = [
3055
3174
  { type: Component, args: [{
3056
3175
  selector: 'daff-modal-actions',
3057
3176
  template: '<ng-content></ng-content>',
3177
+ changeDetection: ChangeDetectionStrategy.OnPush,
3058
3178
  styles: [":host{display:block;padding-top:24px}"]
3059
3179
  },] }
3060
3180
  ];
@@ -3198,6 +3318,20 @@ DaffModalService.ctorParameters = () => [
3198
3318
  { type: Overlay }
3199
3319
  ];
3200
3320
 
3321
+ /**
3322
+ * A mixin for giving a component the ability to manage a DaffContainerComponent's layout.
3323
+ * It passes predetermined layout styles down to the container. In order for a component to
3324
+ * do this, it must implement this mixin.
3325
+ */
3326
+ function daffManageContainerLayoutMixin(Base) {
3327
+ return class extends Base {
3328
+ constructor(...args) {
3329
+ super(...args);
3330
+ this._renderer.addClass(this._elementRef.nativeElement, `daff-manage-container-layout`);
3331
+ }
3332
+ };
3333
+ }
3334
+
3201
3335
  /**
3202
3336
  * An _elementRef is needed for the Colorable mixin
3203
3337
  */
@@ -3207,7 +3341,7 @@ class DaffNavbarBase {
3207
3341
  this._renderer = _renderer;
3208
3342
  }
3209
3343
  }
3210
- const _daffNavbarBase = daffColorMixin(DaffNavbarBase);
3344
+ const _daffNavbarBase = daffManageContainerLayoutMixin(daffColorMixin(DaffNavbarBase));
3211
3345
  /**
3212
3346
  * @inheritdoc
3213
3347
  */
@@ -3216,7 +3350,7 @@ class DaffNavbarComponent extends _daffNavbarBase {
3216
3350
  super(elementRef, renderer);
3217
3351
  this.elementRef = elementRef;
3218
3352
  this.renderer = renderer;
3219
- this.shadowed = false;
3353
+ this.raised = false;
3220
3354
  /**
3221
3355
  * @docs-private
3222
3356
  */
@@ -3225,20 +3359,21 @@ class DaffNavbarComponent extends _daffNavbarBase {
3225
3359
  /**
3226
3360
  * @docs-private
3227
3361
  */
3228
- get shadowClass() {
3229
- return this.shadowed;
3362
+ get raisedClass() {
3363
+ return this.raised;
3230
3364
  }
3231
3365
  ;
3232
3366
  }
3233
3367
  DaffNavbarComponent.decorators = [
3234
3368
  { type: Component, args: [{
3235
- selector: 'daff-navbar',
3369
+ // eslint-disable-next-line @angular-eslint/component-selector
3370
+ selector: 'nav[daff-navbar]',
3236
3371
  template: '<ng-content></ng-content>',
3237
3372
  //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342
3238
3373
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
3239
3374
  inputs: ['color'],
3240
3375
  changeDetection: ChangeDetectionStrategy.OnPush,
3241
- styles: [":host{align-items:center;display:flex;height:70px;padding:0 15px;width:100%}"]
3376
+ styles: [":host{display:flex;align-items:center;height:64px;width:100%;padding:0 16px}"]
3242
3377
  },] }
3243
3378
  ];
3244
3379
  /** @nocollapse */
@@ -3247,8 +3382,8 @@ DaffNavbarComponent.ctorParameters = () => [
3247
3382
  { type: Renderer2 }
3248
3383
  ];
3249
3384
  DaffNavbarComponent.propDecorators = {
3250
- shadowed: [{ type: Input }],
3251
- shadowClass: [{ type: HostBinding, args: ['class.daff-navbar--shadowed',] }],
3385
+ raised: [{ type: Input }],
3386
+ raisedClass: [{ type: HostBinding, args: ['class.daff-navbar--raised',] }],
3252
3387
  hostClass: [{ type: HostBinding, args: ['class.daff-navbar',] }]
3253
3388
  };
3254
3389
 
@@ -3443,6 +3578,11 @@ DaffPaginatorModule.decorators = [
3443
3578
  },] }
3444
3579
  ];
3445
3580
 
3581
+ /**
3582
+ * @deprecated See {@link DaffQuantityFieldComponent}
3583
+ */
3584
+ // ChangeDetection is ignored because this component is deprecated and will be removed
3585
+ // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
3446
3586
  class DaffQtyDropdownComponent {
3447
3587
  constructor(renderer) {
3448
3588
  this.renderer = renderer;
@@ -3641,6 +3781,7 @@ DaffSidebarComponent.decorators = [
3641
3781
  selector: 'daff-sidebar',
3642
3782
  template: '<ng-content></ng-content>',
3643
3783
  encapsulation: ViewEncapsulation.None,
3784
+ changeDetection: ChangeDetectionStrategy.OnPush,
3644
3785
  styles: [":host{display:block}.daff-sidebar{display:block;height:100%}"]
3645
3786
  },] }
3646
3787
  ];
@@ -3943,7 +4084,7 @@ var DaffHeroSizeEnum;
3943
4084
  DaffHeroSizeEnum["Small"] = "small";
3944
4085
  })(DaffHeroSizeEnum || (DaffHeroSizeEnum = {}));
3945
4086
  /**
3946
- * An _elementRef and an instance of renderer2 are needed for the Colorable mixin
4087
+ * An _elementRef and an instance of renderer2 are needed for the hero mixins
3947
4088
  */
3948
4089
  class DaffHeroBase {
3949
4090
  constructor(_elementRef, _renderer) {
@@ -3951,7 +4092,7 @@ class DaffHeroBase {
3951
4092
  this._renderer = _renderer;
3952
4093
  }
3953
4094
  }
3954
- const _daffHeroBase = daffColorMixin(daffCompactableMixin(daffTextAlignmentMixin(DaffHeroBase, 'left')));
4095
+ const _daffHeroBase = daffArticleEncapsulatedMixin(daffManageContainerLayoutMixin(daffColorMixin(daffCompactableMixin(daffTextAlignmentMixin(DaffHeroBase, 'left')))));
3955
4096
  /**
3956
4097
  * @inheritdoc
3957
4098
  */
@@ -3987,7 +4128,7 @@ DaffHeroComponent.decorators = [
3987
4128
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
3988
4129
  inputs: ['color', 'compact', 'textAlignment'],
3989
4130
  changeDetection: ChangeDetectionStrategy.OnPush,
3990
- styles: [".daff-hero{display:block;padding:64px 24px}@media (min-width:480px){.daff-hero{padding:96px 48px}}.daff-hero__icon{margin:0 0 16px}.daff-hero__tagline{font-weight:700;text-transform:uppercase;font-size:.75rem;line-height:1rem;letter-spacing:1px;margin:0 0 8px;padding:0}.daff-hero__title{font-weight:700;font-size:2.5rem;line-height:2.75rem;margin:0;max-width:1040px;overflow-wrap:break-word;width:100%}@media (min-width:768px){.daff-hero__title{font-size:3.5rem;line-height:4rem}}.daff-hero__subtitle{font-size:1.5rem;line-height:2rem;font-weight:400;margin:16px 0 0;max-width:672px;width:100%}.daff-hero__body:not(:last-child){margin-bottom:48px}.daff-hero__body:not(:first-child){margin-top:48px}.daff-hero--centered .daff-hero__title{margin:0 auto;text-align:center}.daff-hero--centered .daff-hero__subtitle{margin:24px auto 0;text-align:center}.daff-hero--compact,.daff-hero--small{padding:50px 25px}@media (min-width:480px){.daff-hero--compact,.daff-hero--small{padding:50px}}.daff-hero.daff-compact{padding:48px 24px}@media (min-width:480px){.daff-hero.daff-compact{padding:48px}}.daff-hero.daff-left .daff-hero__icon,.daff-hero.daff-left .daff-hero__subtitle,.daff-hero.daff-left .daff-hero__tagline,.daff-hero.daff-left .daff-hero__title{text-align:left}.daff-hero.daff-center .daff-hero__icon,.daff-hero.daff-center .daff-hero__subtitle,.daff-hero.daff-center .daff-hero__tagline,.daff-hero.daff-center .daff-hero__title{margin-left:auto;margin-right:auto;text-align:center}.daff-hero.daff-right .daff-hero__icon,.daff-hero.daff-right .daff-hero__subtitle,.daff-hero.daff-right .daff-hero__tagline,.daff-hero.daff-right .daff-hero__title{margin-left:auto;text-align:right}"]
4131
+ styles: [".daff-hero{display:block;padding:64px 24px}@media (min-width:480px){.daff-hero{padding:96px 48px}}.daff-hero__icon{margin:0 0 16px}.daff-hero__tagline{text-transform:uppercase;font-size:.875rem;font-weight:600;letter-spacing:.03125rem;line-height:1rem;margin:0 0 8px;padding:0}.daff-hero__title{font-weight:700;font-size:2.5rem;line-height:2.5rem;margin:0;max-width:1040px;width:100%}@media (min-width:768px){.daff-hero__title{font-size:4.5rem;line-height:4.5rem}}.daff-hero__subtitle{font-size:1.25rem;font-weight:400;line-height:1.75rem;margin:16px 0 0;max-width:672px;width:100%}@media (min-width:768px){.daff-hero__subtitle{font-size:1.5rem;font-weight:400;line-height:2rem}}.daff-hero__subtitle p:first-of-type{margin-top:0}.daff-hero__subtitle p:last-of-type{margin-bottom:0}.daff-hero__body:not(:last-child){margin-bottom:48px}.daff-hero__body:not(:first-child){margin-top:48px}.daff-hero--centered .daff-hero__title{margin:0 auto;text-align:center}.daff-hero--centered .daff-hero__subtitle{margin:24px auto 0;text-align:center}.daff-hero--compact,.daff-hero--small{padding:50px 25px}@media (min-width:480px){.daff-hero--compact,.daff-hero--small{padding:50px}}.daff-hero.daff-compact{padding:48px 24px}@media (min-width:480px){.daff-hero.daff-compact{padding:48px}}.daff-hero.daff-left .daff-hero__icon,.daff-hero.daff-left .daff-hero__subtitle,.daff-hero.daff-left .daff-hero__tagline,.daff-hero.daff-left .daff-hero__title{text-align:left}.daff-hero.daff-center .daff-hero__icon,.daff-hero.daff-center .daff-hero__subtitle,.daff-hero.daff-center .daff-hero__tagline,.daff-hero.daff-center .daff-hero__title{margin-left:auto;margin-right:auto;text-align:center}.daff-hero.daff-right .daff-hero__icon,.daff-hero.daff-right .daff-hero__subtitle,.daff-hero.daff-right .daff-hero__tagline,.daff-hero.daff-right .daff-hero__title{margin-left:auto;text-align:right}"]
3991
4132
  },] }
3992
4133
  ];
3993
4134
  /** @nocollapse */
@@ -4131,7 +4272,7 @@ class DaffCalloutBase {
4131
4272
  this._renderer = _renderer;
4132
4273
  }
4133
4274
  }
4134
- const _daffCalloutBase = daffColorMixin(daffCompactableMixin(daffTextAlignmentMixin(DaffCalloutBase, 'left')));
4275
+ const _daffCalloutBase = daffArticleEncapsulatedMixin(daffManageContainerLayoutMixin(daffColorMixin(daffCompactableMixin(daffTextAlignmentMixin(DaffCalloutBase, 'left')))));
4135
4276
  /**
4136
4277
  * @inheritdoc
4137
4278
  */
@@ -4167,7 +4308,7 @@ DaffCalloutComponent.decorators = [
4167
4308
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
4168
4309
  inputs: ['color', 'compact', 'textAlignment'],
4169
4310
  changeDetection: ChangeDetectionStrategy.OnPush,
4170
- styles: [".daff-callout{display:block;padding:64px 24px}@media (min-width:480px){.daff-callout{padding:96px 48px}}.daff-callout__icon{margin:0 0 16px}.daff-callout__tagline{font-weight:700;text-transform:uppercase;font-size:.75rem;line-height:1rem;letter-spacing:1px;margin:0 0 8px;padding:0}.daff-callout__title{font-weight:700;font-size:1.75rem;line-height:2rem;margin:0;max-width:1040px;overflow-wrap:break-word;padding:0;width:100%}@media (min-width:480px){.daff-callout__title{font-weight:700;font-size:2rem;line-height:2.25rem}}@media (min-width:480px) and (min-width:768px){.daff-callout__title{font-size:3rem;line-height:3.5rem}}.daff-callout__subtitle{font-size:1.25rem;margin:16px 0 0;max-width:592px;padding:0;width:100%}.daff-callout__body:not(:last-child){margin-bottom:48px}.daff-callout__body:not(:first-child){margin-top:48px}.daff-callout--centered .daff-callout__title{margin:0 auto;text-align:center}.daff-callout--centered .daff-callout__subtitle{margin:10px auto 0;text-align:center}@media (min-width:480px){.daff-callout--centered .daff-callout__subtitle{margin:25px auto 0}}.daff-callout--compact{padding:25px}@media (min-width:480px){.daff-callout--compact{padding:25px 50px}}.daff-callout.daff-compact{padding:48px 24px}@media (min-width:480px){.daff-callout.daff-compact{padding:48px}}.daff-callout.daff-left .daff-callout__icon,.daff-callout.daff-left .daff-callout__subtitle,.daff-callout.daff-left .daff-callout__tagline,.daff-callout.daff-left .daff-callout__title{text-align:left}.daff-callout.daff-center .daff-callout__icon,.daff-callout.daff-center .daff-callout__subtitle,.daff-callout.daff-center .daff-callout__tagline,.daff-callout.daff-center .daff-callout__title{margin-left:auto;margin-right:auto;text-align:center}.daff-callout.daff-right .daff-callout__icon,.daff-callout.daff-right .daff-callout__subtitle,.daff-callout.daff-right .daff-callout__tagline,.daff-callout.daff-right .daff-callout__title{margin-left:auto;text-align:right}"]
4311
+ styles: [".daff-callout{display:block;padding:64px 24px}@media (min-width:480px){.daff-callout{padding:96px 48px}}.daff-callout__icon{margin:0 0 16px}.daff-callout__tagline{text-transform:uppercase;font-size:.875rem;font-weight:600;letter-spacing:.03125rem;line-height:1rem;margin:0 0 8px;padding:0}.daff-callout__title{font-weight:700;font-size:1.75rem;line-height:2rem;margin:0;max-width:1040px;overflow-wrap:break-word;padding:0;width:100%}@media (min-width:480px){.daff-callout__title{font-weight:700;font-size:2rem;line-height:2.25rem}}@media (min-width:480px) and (min-width:768px){.daff-callout__title{font-size:3rem;line-height:3.5rem}}.daff-callout__subtitle{font-size:1.25rem;margin:16px 0 0;max-width:592px;padding:0;width:100%}.daff-callout__body:not(:last-child){margin-bottom:48px}.daff-callout__body:not(:first-child){margin-top:48px}.daff-callout__body p:first-of-type{margin-top:0}.daff-callout__body p:last-of-type{margin-bottom:0}.daff-callout--centered .daff-callout__title{margin:0 auto;text-align:center}.daff-callout--centered .daff-callout__subtitle{margin:10px auto 0;text-align:center}@media (min-width:480px){.daff-callout--centered .daff-callout__subtitle{margin:25px auto 0}}.daff-callout--compact{padding:25px}@media (min-width:480px){.daff-callout--compact{padding:25px 50px}}.daff-callout.daff-compact{padding:48px 24px}@media (min-width:480px){.daff-callout.daff-compact{padding:48px}}.daff-callout.daff-left .daff-callout__icon,.daff-callout.daff-left .daff-callout__subtitle,.daff-callout.daff-left .daff-callout__tagline,.daff-callout.daff-left .daff-callout__title{text-align:left}.daff-callout.daff-center .daff-callout__icon,.daff-callout.daff-center .daff-callout__subtitle,.daff-callout.daff-center .daff-callout__tagline,.daff-callout.daff-center .daff-callout__title{margin-left:auto;margin-right:auto;text-align:center}.daff-callout.daff-right .daff-callout__icon,.daff-callout.daff-right .daff-callout__subtitle,.daff-callout.daff-right .daff-callout__tagline,.daff-callout.daff-right .daff-callout__title{margin-left:auto;text-align:right}"]
4171
4312
  },] }
4172
4313
  ];
4173
4314
  /** @nocollapse */
@@ -4282,6 +4423,9 @@ var DaffFeatureModeEnum;
4282
4423
  DaffFeatureModeEnum["Compact"] = "compact";
4283
4424
  DaffFeatureModeEnum["Normal"] = "normal";
4284
4425
  })(DaffFeatureModeEnum || (DaffFeatureModeEnum = {}));
4426
+ /**
4427
+ * @deprecated See {@link DaffCardComponent}
4428
+ */
4285
4429
  class DaffFeatureComponent {
4286
4430
  constructor() {
4287
4431
  /**
@@ -4360,6 +4504,40 @@ DaffCardActionsDirective.propDecorators = {
4360
4504
  class: [{ type: HostBinding, args: ['class.daff-card__actions',] }]
4361
4505
  };
4362
4506
 
4507
+ class DaffCardContentDirective {
4508
+ constructor() {
4509
+ /**
4510
+ * @docs-private
4511
+ */
4512
+ this.class = true;
4513
+ }
4514
+ }
4515
+ DaffCardContentDirective.decorators = [
4516
+ { type: Directive, args: [{
4517
+ selector: '[daffCardContent]',
4518
+ },] }
4519
+ ];
4520
+ DaffCardContentDirective.propDecorators = {
4521
+ class: [{ type: HostBinding, args: ['class.daff-card__content',] }]
4522
+ };
4523
+
4524
+ class DaffCardIconDirective {
4525
+ constructor() {
4526
+ /**
4527
+ * @docs-private
4528
+ */
4529
+ this.class = true;
4530
+ }
4531
+ }
4532
+ DaffCardIconDirective.decorators = [
4533
+ { type: Directive, args: [{
4534
+ selector: '[daffCardIcon]',
4535
+ },] }
4536
+ ];
4537
+ DaffCardIconDirective.propDecorators = {
4538
+ class: [{ type: HostBinding, args: ['class.daff-card__icon',] }]
4539
+ };
4540
+
4363
4541
  class DaffCardImageDirective {
4364
4542
  constructor() {
4365
4543
  /**
@@ -4411,6 +4589,16 @@ DaffCardTitleDirective.propDecorators = {
4411
4589
  class: [{ type: HostBinding, args: ['class.daff-card__title',] }]
4412
4590
  };
4413
4591
 
4592
+ var DaffCardTypeEnum;
4593
+ (function (DaffCardTypeEnum) {
4594
+ DaffCardTypeEnum["Raised"] = "daff-raised-card";
4595
+ DaffCardTypeEnum["Stroked"] = "daff-stroked-card";
4596
+ })(DaffCardTypeEnum || (DaffCardTypeEnum = {}));
4597
+ var DaffCardOrientationEnum;
4598
+ (function (DaffCardOrientationEnum) {
4599
+ DaffCardOrientationEnum["Vertical"] = "vertical";
4600
+ DaffCardOrientationEnum["Horizontal"] = "horizontal";
4601
+ })(DaffCardOrientationEnum || (DaffCardOrientationEnum = {}));
4414
4602
  /**
4415
4603
  * An _elementRef and an instance of renderer2 are needed for the Colorable mixin
4416
4604
  */
@@ -4420,7 +4608,7 @@ class DaffCardBase {
4420
4608
  this._renderer = _renderer;
4421
4609
  }
4422
4610
  }
4423
- const _daffCardBase = daffColorMixin(DaffCardBase);
4611
+ const _daffCardBase = daffArticleEncapsulatedMixin(daffColorMixin(DaffCardBase));
4424
4612
  /**
4425
4613
  * @inheritdoc
4426
4614
  */
@@ -4429,28 +4617,79 @@ class DaffCardComponent extends _daffCardBase {
4429
4617
  super(elementRef, renderer);
4430
4618
  this.elementRef = elementRef;
4431
4619
  this.renderer = renderer;
4432
- this.raised = false;
4433
- /**
4434
- * @docs-private
4435
- */
4620
+ this._orientation = DaffCardOrientationEnum.Vertical;
4436
4621
  this.class = true;
4622
+ this.cardType = this.initCardType();
4437
4623
  }
4438
- get raisedClass() {
4439
- return this.raised;
4624
+ get orientation() {
4625
+ return this._orientation;
4626
+ }
4627
+ set orientation(value) {
4628
+ if (value === null || value === undefined || value === '') {
4629
+ this._orientation = DaffCardOrientationEnum.Vertical;
4630
+ }
4631
+ else {
4632
+ this._orientation = value;
4633
+ }
4634
+ }
4635
+ ;
4636
+ initCardType() {
4637
+ const values = Object.keys(DaffCardTypeEnum).map((k) => DaffCardTypeEnum[k]);
4638
+ if (values.indexOf(this._getHostElement().localName) >= 0) {
4639
+ return this._getHostElement().localName;
4640
+ }
4641
+ for (const attr of values) {
4642
+ if (this._hasHostAttributes(attr)) {
4643
+ return attr;
4644
+ }
4645
+ }
4646
+ return null;
4647
+ }
4648
+ /**
4649
+ * @docs-private
4650
+ */
4651
+ ngOnInit() {
4652
+ if (this.cardType) {
4653
+ this.elementRef.nativeElement.classList.add(this.cardType);
4654
+ }
4655
+ }
4656
+ /**
4657
+ * @docs-private
4658
+ */
4659
+ get verticalClass() {
4660
+ return this.orientation === DaffCardOrientationEnum.Vertical;
4661
+ }
4662
+ /**
4663
+ * @docs-private
4664
+ */
4665
+ get horizontalClass() {
4666
+ return this.orientation === DaffCardOrientationEnum.Horizontal;
4667
+ }
4668
+ _getHostElement() {
4669
+ return this.elementRef.nativeElement;
4670
+ }
4671
+ /**
4672
+ * Gets whether the button has one of the given attributes.
4673
+ * */
4674
+ _hasHostAttributes(...attributes) {
4675
+ return attributes.some(attribute => this._getHostElement().hasAttribute(attribute));
4440
4676
  }
4441
4677
  }
4442
4678
  DaffCardComponent.decorators = [
4443
4679
  { type: Component, args: [{
4444
- selector: '' +
4445
- 'daff-card' + ',' +
4446
- 'a[daff-card]',
4447
- template: "<ng-content select=\"[daffCardImage]\"></ng-content>\n<div class=\"daff-card__content\">\n\t<ng-content select=\"[daffCardTagline]\"></ng-content>\n\t<ng-content select=\"[daffCardTitle]\"></ng-content>\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"[daffCardActions]\"></ng-content>",
4680
+ selector: 'daff-card' + ',' +
4681
+ 'daff-raised-card' + ',' +
4682
+ 'daff-stroked-card' + ',' +
4683
+ 'a[daff-card]' + ',' +
4684
+ 'a[daff-raised-card]' + ',' +
4685
+ 'a[daff-stroked-card]',
4686
+ template: "<ng-content select=\"[daffCardImage]\"></ng-content>\n<div class=\"daff-card__wrapper\">\n\t<div class=\"daff-card__body\">\n\t\t<ng-content select=\"[daffCardIcon]\"></ng-content>\n\t\t<ng-content select=\"[daffCardTagline]\"></ng-content>\n\t\t<ng-content select=\"[daffCardTitle]\"></ng-content>\n\t\t<ng-content select=\"[daffCardContent]\"></ng-content>\n\t</div>\n\t<ng-content select=\"[daffCardActions]\"></ng-content>\n</div>",
4448
4687
  encapsulation: ViewEncapsulation.None,
4449
4688
  //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342
4450
4689
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
4451
4690
  inputs: ['color'],
4452
4691
  changeDetection: ChangeDetectionStrategy.OnPush,
4453
- styles: [".daff-card{display:flex;flex-direction:column;border-radius:8px}.daff-card__image{display:inline-block;width:100%}.daff-card__image,.daff-card__image img{border-top-left-radius:inherit;border-top-right-radius:inherit}.daff-card__tagline{font-weight:700;text-transform:uppercase;font-size:.75rem;line-height:1rem;letter-spacing:1px;margin:0 0 4px;padding:0}.daff-card__title{font-weight:700;font-size:1.5rem;line-height:2rem;margin-bottom:16px}.daff-card__content{padding:24px}.daff-card__content p{margin:0;padding:0}.daff-card__actions{padding:0 24px 24px}a.daff-card{text-decoration:none}"]
4692
+ styles: [".daff-card{display:flex;border-radius:8px}.daff-card__image{display:inline-block;width:100%}.daff-card--vertical{flex-direction:column}.daff-card--vertical .daff-card__image,.daff-card--vertical .daff-card__image img{border-top-left-radius:calc(8px - 1px);border-top-right-radius:calc(8px - 1px)}.daff-card--horizontal{flex-wrap:wrap}@media (min-width:480px){.daff-card--horizontal{flex-direction:row;flex-wrap:nowrap}}.daff-card--horizontal .daff-card__image,.daff-card--horizontal .daff-card__image img{border-top-left-radius:calc(8px - 1px);border-bottom-left-radius:calc(8px - 1px)}.daff-card--horizontal .daff-card__image img{-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;height:100%!important;width:100%}.daff-card__icon{display:block;margin:0 0 .5rem}.daff-card__tagline{text-transform:uppercase;font-size:.875rem;font-weight:600;letter-spacing:.03125rem;line-height:1rem;padding:0;margin:0 0 .25rem}.daff-card__title{font-weight:700;font-size:1.375rem;line-height:1.5rem;margin:0 0 1rem}@media (min-width:480px){.daff-card__title{font-size:1.5rem;line-height:1.75rem}}.daff-card__body{padding:1.5rem}.daff-card__content p:first-of-type{margin-top:0}.daff-card__content p:last-of-type{margin-bottom:0}.daff-card__actions{padding:0 1.5rem 1.5rem}a.daff-card,a.daff-raised-card,a.daff-stroked-card{text-decoration:none;transition:background-color .3s,box-shadow .3s}"]
4454
4693
  },] }
4455
4694
  ];
4456
4695
  /** @nocollapse */
@@ -4459,9 +4698,10 @@ DaffCardComponent.ctorParameters = () => [
4459
4698
  { type: Renderer2 }
4460
4699
  ];
4461
4700
  DaffCardComponent.propDecorators = {
4462
- raised: [{ type: Input }],
4701
+ orientation: [{ type: Input }],
4463
4702
  class: [{ type: HostBinding, args: ['class.daff-card',] }],
4464
- raisedClass: [{ type: HostBinding, args: ['class.daff-card--raised',] }]
4703
+ verticalClass: [{ type: HostBinding, args: ['class.daff-card--vertical',] }],
4704
+ horizontalClass: [{ type: HostBinding, args: ['class.daff-card--horizontal',] }]
4465
4705
  };
4466
4706
 
4467
4707
  class DaffCardModule {
@@ -4473,16 +4713,20 @@ DaffCardModule.decorators = [
4473
4713
  ],
4474
4714
  declarations: [
4475
4715
  DaffCardComponent,
4716
+ DaffCardIconDirective,
4717
+ DaffCardImageDirective,
4476
4718
  DaffCardTaglineDirective,
4477
4719
  DaffCardTitleDirective,
4478
- DaffCardImageDirective,
4720
+ DaffCardContentDirective,
4479
4721
  DaffCardActionsDirective,
4480
4722
  ],
4481
4723
  exports: [
4482
4724
  DaffCardComponent,
4725
+ DaffCardIconDirective,
4726
+ DaffCardImageDirective,
4483
4727
  DaffCardTaglineDirective,
4484
4728
  DaffCardTitleDirective,
4485
- DaffCardImageDirective,
4729
+ DaffCardContentDirective,
4486
4730
  DaffCardActionsDirective,
4487
4731
  ],
4488
4732
  },] }
@@ -4528,5 +4772,5 @@ var DaffTextAlignmentEnum;
4528
4772
  * Generated bundle index. Do not edit.
4529
4773
  */
4530
4774
 
4531
- export { DaffAccordionComponent, DaffAccordionItemComponent, DaffAccordionItemContentDirective, DaffAccordionItemTitleDirective, DaffAccordionModule, DaffArticleComponent, DaffArticleLeadDirective, DaffArticleMetaDirective, DaffArticleModule, DaffArticleTitleDirective, DaffBackdropComponent, DaffBackdropModule, DaffBreakpoints, DaffButtonComponent, DaffButtonModule, DaffButtonSetComponent, DaffButtonSetModule, DaffCalloutBodyDirective, DaffCalloutComponent, DaffCalloutIconDirective, DaffCalloutLayoutEnum, DaffCalloutModule, DaffCalloutSizeEnum, DaffCalloutSubtitleDirective, DaffCalloutTaglineDirective, DaffCalloutTitleDirective, DaffCardActionsDirective, DaffCardComponent, DaffCardImageDirective, DaffCardModule, DaffCardTaglineDirective, DaffCardTitleDirective, DaffCheckboxComponent, DaffCheckboxControlValueAccessorDirective, DaffCheckboxModule, DaffCheckboxSetComponent, DaffContainerComponent, DaffContainerModule, DaffErrorMessageComponent, DaffErrorMessageModule, DaffErrorStateMatcher, DaffFeatureComponent, DaffFeatureIconDirective, DaffFeatureModeEnum, DaffFeatureModule, DaffFeatureSubheaderDirective, DaffFeatureSubtitleDirective, DaffFeatureTitleDirective, DaffFormFieldComponent, DaffFormFieldControl, DaffFormFieldModule, DaffGalleryImageComponent, DaffHeroBodyDirective, DaffHeroComponent, DaffHeroIconDirective, DaffHeroLayoutEnum, DaffHeroModule, DaffHeroSizeEnum, DaffHeroSubtitleDirective, DaffHeroTaglineDirective, DaffHeroTitleDirective, DaffImageComponent, DaffImageGalleryComponent, DaffImageGalleryModule, DaffImageListComponent, DaffImageListModule, DaffImageModule, DaffInputComponent, DaffInputModule, DaffLinkSetComponent, DaffLinkSetHeadingDirective, DaffLinkSetItemComponent, DaffLinkSetModule, DaffLinkSetSubheadingDirective, DaffListComponent, DaffListItemComponent, DaffListModeEnum, DaffListModule, DaffListSubheaderDirective, DaffLoadingIconComponent, DaffLoadingIconModule, DaffMediaGalleryComponent, DaffMediaGalleryModule, DaffModalActionsComponent, DaffModalComponent, DaffModalContentComponent, DaffModalHeaderComponent, DaffModalModule, DaffModalService, DaffModalTitleDirective, DaffNativeSelectComponent, DaffNativeSelectModule, DaffNavbarComponent, DaffNavbarModule, DaffPaginatorComponent, DaffPaginatorModule, DaffPrefixDirective, DaffPrefixSuffixModule, DaffProgressIndicatorComponent, DaffProgressIndicatorModule, DaffQtyDropdownComponent, DaffQtyDropdownModule, DaffQuantityFieldComponent, DaffQuantityFieldModule, DaffQuantityInputComponent, DaffQuantitySelectComponent, DaffRadioComponent, DaffRadioControlValueAccessorDirective, DaffRadioModule, DaffRadioSetComponent, DaffSidebarComponent, DaffSidebarModule, DaffSidebarViewportComponent, DaffStatusEnum, DaffSuffixDirective, DaffTextAlignmentEnum, DaffThumbnailDirective, daffCompactableMixin, daffPrefixableMixin, daffSuffixableMixin, daffThumbnailCompatToken, daffProgressIndicatorAnimation as ɵa, DaffRadioRegistry as ɵb, daffAccordionAnimations as ɵc, DaffNavAccordionItemComponent as ɵd, daffBackdropAnimations as ɵe, DAFF_MEDIA_GALLERY_TOKEN as ɵf, DaffMediaGalleryRegistry as ɵg, DaffMediaRendererComponent as ɵi, daffFadeAnimations as ɵj, daffSidebarAnimations as ɵk };
4775
+ export { DaffAccordionComponent, DaffAccordionItemComponent, DaffAccordionItemContentDirective, DaffAccordionItemTitleDirective, DaffAccordionModule, DaffArticleComponent, DaffArticleLeadDirective, DaffArticleMetaDirective, DaffArticleModule, DaffArticleTitleDirective, DaffBackdropComponent, DaffBackdropModule, DaffBreakpoints, DaffButtonComponent, DaffButtonModule, DaffButtonSetComponent, DaffButtonSetModule, DaffCalloutBodyDirective, DaffCalloutComponent, DaffCalloutIconDirective, DaffCalloutLayoutEnum, DaffCalloutModule, DaffCalloutSizeEnum, DaffCalloutSubtitleDirective, DaffCalloutTaglineDirective, DaffCalloutTitleDirective, DaffCardActionsDirective, DaffCardComponent, DaffCardContentDirective, DaffCardIconDirective, DaffCardImageDirective, DaffCardModule, DaffCardOrientationEnum, DaffCardTaglineDirective, DaffCardTitleDirective, DaffCheckboxComponent, DaffCheckboxControlValueAccessorDirective, DaffCheckboxModule, DaffCheckboxSetComponent, DaffContainerComponent, DaffContainerModule, DaffErrorMessageComponent, DaffErrorMessageModule, DaffErrorStateMatcher, DaffFeatureComponent, DaffFeatureIconDirective, DaffFeatureModeEnum, DaffFeatureModule, DaffFeatureSubheaderDirective, DaffFeatureSubtitleDirective, DaffFeatureTitleDirective, DaffFormFieldComponent, DaffFormFieldControl, DaffFormFieldModule, DaffGalleryImageComponent, DaffHeroBodyDirective, DaffHeroComponent, DaffHeroIconDirective, DaffHeroLayoutEnum, DaffHeroModule, DaffHeroSizeEnum, DaffHeroSubtitleDirective, DaffHeroTaglineDirective, DaffHeroTitleDirective, DaffImageComponent, DaffImageGalleryComponent, DaffImageGalleryModule, DaffImageListComponent, DaffImageListModule, DaffImageModule, DaffInputComponent, DaffInputModule, DaffLinkSetComponent, DaffLinkSetHeadingDirective, DaffLinkSetItemComponent, DaffLinkSetModule, DaffLinkSetSubheadingDirective, DaffListComponent, DaffListItemComponent, DaffListModeEnum, DaffListModule, DaffListSubheaderDirective, DaffLoadingIconComponent, DaffLoadingIconModule, DaffMediaGalleryComponent, DaffMediaGalleryModule, DaffModalActionsComponent, DaffModalComponent, DaffModalContentComponent, DaffModalHeaderComponent, DaffModalModule, DaffModalService, DaffModalTitleDirective, DaffNativeSelectComponent, DaffNativeSelectModule, DaffNavbarComponent, DaffNavbarModule, DaffPaginatorComponent, DaffPaginatorModule, DaffPrefixDirective, DaffPrefixSuffixModule, DaffProgressIndicatorComponent, DaffProgressIndicatorModule, DaffQtyDropdownComponent, DaffQtyDropdownModule, DaffQuantityFieldComponent, DaffQuantityFieldModule, DaffQuantityInputComponent, DaffQuantitySelectComponent, DaffRadioComponent, DaffRadioControlValueAccessorDirective, DaffRadioModule, DaffRadioSetComponent, DaffSidebarComponent, DaffSidebarModule, DaffSidebarViewportComponent, DaffStatusEnum, DaffSuffixDirective, DaffTextAlignmentEnum, DaffThumbnailDirective, daffArticleEncapsulatedMixin, daffCompactableMixin, daffManageContainerLayoutMixin, daffPrefixableMixin, daffSuffixableMixin, daffThumbnailCompatToken, daffProgressIndicatorAnimation as ɵa, DaffRadioRegistry as ɵb, daffAccordionAnimations as ɵc, DaffNavAccordionItemComponent as ɵd, daffBackdropAnimations as ɵe, DAFF_MEDIA_GALLERY_TOKEN as ɵf, DaffMediaGalleryRegistry as ɵg, DaffMediaRendererComponent as ɵi, daffFadeAnimations as ɵj, daffSidebarAnimations as ɵk };
4532
4776
  //# sourceMappingURL=daffodil-design.js.map