@daffodil/design 0.38.6 → 0.39.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (396) hide show
  1. package/accordion/examples/package.json +1 -1
  2. package/article/examples/package.json +1 -1
  3. package/bundles/daffodil-design-accordion-examples.umd.js +3 -37
  4. package/bundles/daffodil-design-accordion-examples.umd.js.map +1 -1
  5. package/bundles/daffodil-design-article-examples.umd.js +13 -88
  6. package/bundles/daffodil-design-article-examples.umd.js.map +1 -1
  7. package/bundles/daffodil-design-article-examples.umd.min.js.map +1 -1
  8. package/bundles/daffodil-design-button-examples.umd.js +8 -132
  9. package/bundles/daffodil-design-button-examples.umd.js.map +1 -1
  10. package/bundles/daffodil-design-callout-examples.umd.js +5 -67
  11. package/bundles/daffodil-design-callout-examples.umd.js.map +1 -1
  12. package/bundles/daffodil-design-callout-examples.umd.min.js +1 -1
  13. package/bundles/daffodil-design-callout-examples.umd.min.js.map +1 -1
  14. package/bundles/daffodil-design-card-examples.umd.js +5 -65
  15. package/bundles/daffodil-design-card-examples.umd.js.map +1 -1
  16. package/bundles/daffodil-design-checkbox-examples.umd.js +3 -74
  17. package/bundles/daffodil-design-checkbox-examples.umd.js.map +1 -1
  18. package/bundles/daffodil-design-hero-examples.umd.js +5 -67
  19. package/bundles/daffodil-design-hero-examples.umd.js.map +1 -1
  20. package/bundles/daffodil-design-hero-examples.umd.min.js +1 -1
  21. package/bundles/daffodil-design-hero-examples.umd.min.js.map +1 -1
  22. package/bundles/daffodil-design-list-examples.umd.js +6 -74
  23. package/bundles/daffodil-design-list-examples.umd.js.map +1 -1
  24. package/bundles/daffodil-design-list-examples.umd.min.js.map +1 -1
  25. package/bundles/daffodil-design-loading-icon-examples.umd.js +3 -47
  26. package/bundles/daffodil-design-loading-icon-examples.umd.js.map +1 -1
  27. package/bundles/daffodil-design-media-gallery-examples.umd.js +3 -43
  28. package/bundles/daffodil-design-media-gallery-examples.umd.js.map +1 -1
  29. package/bundles/daffodil-design-modal-examples.umd.js +3 -47
  30. package/bundles/daffodil-design-modal-examples.umd.js.map +1 -1
  31. package/bundles/daffodil-design-quantity-field-examples.umd.js +5 -81
  32. package/bundles/daffodil-design-quantity-field-examples.umd.js.map +1 -1
  33. package/bundles/daffodil-design-radio-examples.umd.js +2 -40
  34. package/bundles/daffodil-design-radio-examples.umd.js.map +1 -1
  35. package/bundles/daffodil-design.umd.js +391 -3432
  36. package/bundles/daffodil-design.umd.js.map +1 -1
  37. package/bundles/daffodil-design.umd.min.js +1 -1
  38. package/bundles/daffodil-design.umd.min.js.map +1 -1
  39. package/button/examples/package.json +1 -1
  40. package/callout/examples/daffodil-design-callout-examples.metadata.json +1 -1
  41. package/callout/examples/package.json +1 -1
  42. package/card/examples/package.json +1 -1
  43. package/checkbox/examples/package.json +1 -1
  44. package/daff-global.scss +1 -1
  45. package/daff-theme.scss +38 -4
  46. package/daffodil-design.metadata.json +1 -1
  47. package/esm2015/accordion/examples/basic-accordion/basic-accordion.component.js +2 -7
  48. package/esm2015/accordion/examples/basic-accordion/basic-accordion.module.js +1 -6
  49. package/esm2015/accordion/examples/daffodil-design-accordion-examples.js +2 -7
  50. package/esm2015/accordion/examples/index.js +2 -7
  51. package/esm2015/accordion/examples/nav-accordion/nav-accordion.component.js +2 -7
  52. package/esm2015/accordion/examples/nav-accordion/nav-accordion.module.js +1 -6
  53. package/esm2015/accordion/examples/public_api.js +1 -7
  54. package/esm2015/article/examples/article-blockquote/article-blockquote.component.js +2 -7
  55. package/esm2015/article/examples/article-code-block/article-code-block.component.js +2 -7
  56. package/esm2015/article/examples/article-code-inline/article-code-inline.component.js +2 -7
  57. package/esm2015/article/examples/article-examples.module.js +1 -6
  58. package/esm2015/article/examples/article-headings/article-headings.component.js +2 -7
  59. package/esm2015/article/examples/article-hr/article-hr.component.js +2 -7
  60. package/esm2015/article/examples/article-lead/article-lead.component.js +2 -7
  61. package/esm2015/article/examples/article-link/article-link.component.js +2 -7
  62. package/esm2015/article/examples/article-meta/article-meta.component.js +2 -7
  63. package/esm2015/article/examples/article-ol/article-ol.component.js +2 -7
  64. package/esm2015/article/examples/article-table/article-table.component.js +2 -7
  65. package/esm2015/article/examples/article-ul/article-ul.component.js +2 -7
  66. package/esm2015/article/examples/daffodil-design-article-examples.js +2 -7
  67. package/esm2015/article/examples/examples.js +1 -7
  68. package/esm2015/article/examples/index.js +2 -7
  69. package/esm2015/article/examples/public_api.js +1 -6
  70. package/esm2015/atoms/button/button.component.js +21 -77
  71. package/esm2015/atoms/button/button.module.js +1 -6
  72. package/esm2015/atoms/button/public_api.js +2 -7
  73. package/esm2015/atoms/container/container.component.js +4 -41
  74. package/esm2015/atoms/container/container.module.js +1 -6
  75. package/esm2015/atoms/container/public_api.js +2 -7
  76. package/esm2015/atoms/form/checkbox/checkbox.component.js +7 -101
  77. package/esm2015/atoms/form/checkbox/checkbox.module.js +1 -6
  78. package/esm2015/atoms/form/checkbox/cva/checkbox-cva.directive.js +7 -60
  79. package/esm2015/atoms/form/checkbox/public_api.js +1 -6
  80. package/esm2015/atoms/form/checkbox-set/checkbox-set.component.js +4 -47
  81. package/esm2015/atoms/form/core/error-state-matcher/error-state-matcher.js +1 -11
  82. package/esm2015/atoms/form/core/public_api.js +1 -6
  83. package/esm2015/atoms/form/error-message/error-message.component.js +2 -7
  84. package/esm2015/atoms/form/error-message/error-message.module.js +1 -6
  85. package/esm2015/atoms/form/error-message/public_api.js +1 -6
  86. package/esm2015/atoms/form/form-field/form-field/form-field.component.js +7 -54
  87. package/esm2015/atoms/form/form-field/form-field-control.js +1 -21
  88. package/esm2015/atoms/form/form-field/form-field-errors.js +1 -7
  89. package/esm2015/atoms/form/form-field/form-field.module.js +1 -6
  90. package/esm2015/atoms/form/form-field/public_api.js +2 -7
  91. package/esm2015/atoms/form/input/input.component.js +8 -37
  92. package/esm2015/atoms/form/input/input.module.js +1 -6
  93. package/esm2015/atoms/form/input/public_api.js +1 -6
  94. package/esm2015/atoms/form/quantity-field/public_api.js +1 -6
  95. package/esm2015/atoms/form/quantity-field/quantity-field.component.js +5 -111
  96. package/esm2015/atoms/form/quantity-field/quantity-field.module.js +1 -6
  97. package/esm2015/atoms/form/quantity-field/quantity-input/quantity-input.component.js +6 -85
  98. package/esm2015/atoms/form/quantity-field/quantity-select/quantity-select.component.js +6 -81
  99. package/esm2015/atoms/form/radio/cva/radio-cva.directive.js +6 -64
  100. package/esm2015/atoms/form/radio/public_api.js +3 -8
  101. package/esm2015/atoms/form/radio/radio.component.js +7 -85
  102. package/esm2015/atoms/form/radio/radio.module.js +1 -6
  103. package/esm2015/atoms/form/radio/registry/radio-registry.js +7 -46
  104. package/esm2015/atoms/form/radio-set/radio-set.component.js +3 -17
  105. package/esm2015/atoms/form/select/public_api.js +2 -7
  106. package/esm2015/atoms/form/select/select/select.component.js +9 -45
  107. package/esm2015/atoms/form/select/select.module.js +1 -6
  108. package/esm2015/atoms/image/image.component.js +12 -97
  109. package/esm2015/atoms/image/image.module.js +1 -6
  110. package/esm2015/atoms/image/public_api.js +1 -6
  111. package/esm2015/atoms/loading-icon/loading-icon.component.js +6 -49
  112. package/esm2015/atoms/loading-icon/loading-icon.module.js +1 -6
  113. package/esm2015/atoms/loading-icon/public_api.js +2 -7
  114. package/esm2015/atoms/progress-indicator/animation/progress-indicator-animation.js +1 -7
  115. package/esm2015/atoms/progress-indicator/progress-indicator.component.js +6 -58
  116. package/esm2015/atoms/progress-indicator/progress-indicator.module.js +1 -6
  117. package/esm2015/atoms/progress-indicator/public_api.js +2 -7
  118. package/esm2015/button/examples/basic-button/basic-button.component.js +2 -13
  119. package/esm2015/button/examples/basic-button/basic-button.module.js +1 -6
  120. package/esm2015/button/examples/daffodil-design-button-examples.js +2 -7
  121. package/esm2015/button/examples/icon-button/icon-button.component.js +2 -11
  122. package/esm2015/button/examples/icon-button/icon-button.module.js +1 -6
  123. package/esm2015/button/examples/index.js +2 -7
  124. package/esm2015/button/examples/public_api.js +1 -7
  125. package/esm2015/button/examples/raised-button/raised-button.component.js +2 -13
  126. package/esm2015/button/examples/raised-button/raised-button.module.js +1 -6
  127. package/esm2015/button/examples/sizeable-button/sizeable-button.component.js +2 -11
  128. package/esm2015/button/examples/sizeable-button/sizeable-button.module.js +1 -6
  129. package/esm2015/button/examples/statusable-button/statusable-button.component.js +2 -15
  130. package/esm2015/button/examples/statusable-button/statusable-button.module.js +1 -6
  131. package/esm2015/button/examples/stroked-button/stroked-button.component.js +2 -13
  132. package/esm2015/button/examples/stroked-button/stroked-button.module.js +1 -6
  133. package/esm2015/button/examples/underline-button/underline-button.component.js +2 -13
  134. package/esm2015/button/examples/underline-button/underline-button.module.js +1 -6
  135. package/esm2015/callout/examples/callout-text-alignment/callout-text-alignment.component.js +2 -13
  136. package/esm2015/callout/examples/callout-text-alignment/callout-text-alignment.module.js +1 -6
  137. package/esm2015/callout/examples/callout-theming/callout-theming.component.js +2 -13
  138. package/esm2015/callout/examples/callout-theming/callout-theming.module.js +1 -6
  139. package/esm2015/callout/examples/callout-with-grid/callout-with-grid.component.js +3 -8
  140. package/esm2015/callout/examples/callout-with-grid/callout-with-grid.module.js +1 -6
  141. package/esm2015/callout/examples/daffodil-design-callout-examples.js +2 -7
  142. package/esm2015/callout/examples/examples.js +1 -7
  143. package/esm2015/callout/examples/index.js +2 -7
  144. package/esm2015/callout/examples/public_api.js +1 -6
  145. package/esm2015/card/examples/basic-card/basic-card.component.js +2 -7
  146. package/esm2015/card/examples/basic-card/basic-card.module.js +1 -6
  147. package/esm2015/card/examples/card-theming/card-theming.component.js +2 -13
  148. package/esm2015/card/examples/card-theming/card-theming.module.js +1 -6
  149. package/esm2015/card/examples/daffodil-design-card-examples.js +2 -7
  150. package/esm2015/card/examples/index.js +2 -7
  151. package/esm2015/card/examples/linkable-card/linkable-card.component.js +2 -7
  152. package/esm2015/card/examples/linkable-card/linkable-card.module.js +1 -6
  153. package/esm2015/card/examples/public_api.js +1 -7
  154. package/esm2015/card/examples/raised-card/raised-card.component.js +2 -7
  155. package/esm2015/card/examples/raised-card/raised-card.module.js +1 -6
  156. package/esm2015/checkbox/examples/basic-checkbox/basic-checkbox.component.js +2 -20
  157. package/esm2015/checkbox/examples/basic-checkbox/basic-checkbox.module.js +1 -6
  158. package/esm2015/checkbox/examples/checkbox-set/checkbox-set.component.js +2 -24
  159. package/esm2015/checkbox/examples/checkbox-set/checkbox-set.module.js +1 -6
  160. package/esm2015/checkbox/examples/daffodil-design-checkbox-examples.js +2 -7
  161. package/esm2015/checkbox/examples/examples.js +1 -8
  162. package/esm2015/checkbox/examples/index.js +2 -7
  163. package/esm2015/checkbox/examples/public_api.js +1 -6
  164. package/esm2015/core/breakpoints/breakpoints.js +10 -16
  165. package/esm2015/core/colorable/color-in-palette.js +2 -11
  166. package/esm2015/core/colorable/colorable-enum.js +12 -18
  167. package/esm2015/core/colorable/colorable-mixin.js +1 -35
  168. package/esm2015/core/colorable/colorable.js +2 -15
  169. package/esm2015/core/colorable/public_api.js +1 -6
  170. package/esm2015/core/constructor/constructor.js +2 -6
  171. package/esm2015/core/mutable/mutable.js +2 -16
  172. package/esm2015/core/prefix-suffix/prefix-suffix.module.js +1 -6
  173. package/esm2015/core/prefix-suffix/prefix.directive.js +1 -10
  174. package/esm2015/core/prefix-suffix/prefixable/prefixable-interface.js +2 -15
  175. package/esm2015/core/prefix-suffix/prefixable/prefixable.js +2 -17
  176. package/esm2015/core/prefix-suffix/public_api.js +4 -9
  177. package/esm2015/core/prefix-suffix/suffix.directive.js +1 -10
  178. package/esm2015/core/prefix-suffix/suffixable/suffixable-interface.js +2 -15
  179. package/esm2015/core/prefix-suffix/suffixable/suffixable.js +2 -17
  180. package/esm2015/core/public_api.js +9 -14
  181. package/esm2015/core/sizeable/sizeable-mixin.js +1 -37
  182. package/esm2015/core/sizeable/sizeable.js +9 -24
  183. package/esm2015/core/skeletonable/skeletonable.js +2 -16
  184. package/esm2015/core/statusable/statusable-mixin.js +1 -37
  185. package/esm2015/core/statusable/statusable.js +7 -21
  186. package/esm2015/core/text-alignable/text-alignable-mixin.js +1 -35
  187. package/esm2015/core/text-alignable/text-alignable.js +7 -23
  188. package/esm2015/daffodil-design.js +2 -7
  189. package/esm2015/examples/examples.js +2 -17
  190. package/esm2015/examples/public_api.js +2 -6
  191. package/esm2015/hero/examples/daffodil-design-hero-examples.js +2 -7
  192. package/esm2015/hero/examples/examples.js +1 -7
  193. package/esm2015/hero/examples/hero-text-alignment/hero-text-alignment.component.js +2 -13
  194. package/esm2015/hero/examples/hero-text-alignment/hero-text-alignment.module.js +1 -6
  195. package/esm2015/hero/examples/hero-theming/hero-theming.component.js +2 -13
  196. package/esm2015/hero/examples/hero-theming/hero-theming.module.js +1 -6
  197. package/esm2015/hero/examples/hero-with-grid/hero-with-grid.component.js +3 -8
  198. package/esm2015/hero/examples/hero-with-grid/hero-with-grid.module.js +1 -6
  199. package/esm2015/hero/examples/index.js +2 -7
  200. package/esm2015/hero/examples/public_api.js +1 -6
  201. package/esm2015/list/examples/basic-list/basic-list.component.js +2 -7
  202. package/esm2015/list/examples/basic-list/basic-list.module.js +1 -6
  203. package/esm2015/list/examples/daffodil-design-list-examples.js +2 -7
  204. package/esm2015/list/examples/examples.js +1 -7
  205. package/esm2015/list/examples/icon-list/icon-list.component.js +2 -11
  206. package/esm2015/list/examples/icon-list/icon-list.module.js +1 -6
  207. package/esm2015/list/examples/index.js +2 -7
  208. package/esm2015/list/examples/list-examples.module.js +1 -6
  209. package/esm2015/list/examples/multiline-list/multiline-list.component.js +2 -7
  210. package/esm2015/list/examples/multiline-list/multiline-list.module.js +1 -6
  211. package/esm2015/list/examples/nav-list/nav-list.component.js +2 -11
  212. package/esm2015/list/examples/nav-list/nav-list.module.js +1 -6
  213. package/esm2015/list/examples/public_api.js +1 -6
  214. package/esm2015/loading-icon/examples/daffodil-design-loading-icon-examples.js +2 -7
  215. package/esm2015/loading-icon/examples/examples.js +1 -7
  216. package/esm2015/loading-icon/examples/index.js +2 -7
  217. package/esm2015/loading-icon/examples/loading-icon-color/loading-icon-color.component.js +2 -11
  218. package/esm2015/loading-icon/examples/loading-icon-color/loading-icon-color.module.js +1 -6
  219. package/esm2015/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.js +2 -7
  220. package/esm2015/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.module.js +1 -6
  221. package/esm2015/loading-icon/examples/public_api.js +1 -6
  222. package/esm2015/media-gallery/examples/basic-media-gallery/basic-media-gallery.component.js +2 -7
  223. package/esm2015/media-gallery/examples/basic-media-gallery/basic-media-gallery.module.js +1 -6
  224. package/esm2015/media-gallery/examples/daffodil-design-media-gallery-examples.js +2 -7
  225. package/esm2015/media-gallery/examples/examples.js +1 -7
  226. package/esm2015/media-gallery/examples/index.js +2 -7
  227. package/esm2015/media-gallery/examples/mismatched-sizes-media-gallery/mismatched-sizes-media-gallery.component.js +2 -7
  228. package/esm2015/media-gallery/examples/mismatched-sizes-media-gallery/mismatched-sizes-media-gallery.module.js +1 -6
  229. package/esm2015/media-gallery/examples/public_api.js +1 -6
  230. package/esm2015/modal/examples/basic-modal/basic-modal.component.js +2 -22
  231. package/esm2015/modal/examples/basic-modal/basic-modal.module.js +1 -6
  232. package/esm2015/modal/examples/basic-modal/modal-content.component.js +2 -7
  233. package/esm2015/modal/examples/daffodil-design-modal-examples.js +2 -7
  234. package/esm2015/modal/examples/index.js +2 -7
  235. package/esm2015/modal/examples/public_api.js +1 -7
  236. package/esm2015/molecules/accordion/accordion/accordion.component.js +2 -7
  237. package/esm2015/molecules/accordion/accordion-item/accordion-item.component.js +8 -46
  238. package/esm2015/molecules/accordion/accordion-item-content/accordion-item-content.directive.js +2 -14
  239. package/esm2015/molecules/accordion/accordion-item-title/accordion-item-title.directive.js +2 -14
  240. package/esm2015/molecules/accordion/accordion.module.js +1 -6
  241. package/esm2015/molecules/accordion/animation/accordion-animation-state.js +3 -13
  242. package/esm2015/molecules/accordion/animation/accordion-animation.js +1 -7
  243. package/esm2015/molecules/accordion/nav-accordion-item/nav-accordion-item.component.js +9 -64
  244. package/esm2015/molecules/accordion/public_api.js +5 -10
  245. package/esm2015/molecules/article/article/article.component.js +5 -22
  246. package/esm2015/molecules/article/article-lead/article-lead.directive.js +2 -14
  247. package/esm2015/molecules/article/article-meta/article-meta.directive.js +2 -14
  248. package/esm2015/molecules/article/article-title/article-title.directive.js +2 -14
  249. package/esm2015/molecules/article/article.module.js +1 -6
  250. package/esm2015/molecules/article/public_api.js +1 -6
  251. package/esm2015/molecules/backdrop/animation/backdrop-animation.js +1 -10
  252. package/esm2015/molecules/backdrop/backdrop/backdrop.component.js +3 -27
  253. package/esm2015/molecules/backdrop/backdrop.module.js +1 -6
  254. package/esm2015/molecules/backdrop/public_api.js +2 -7
  255. package/esm2015/molecules/button-set/button-set.component.js +3 -15
  256. package/esm2015/molecules/button-set/button-set.module.js +1 -6
  257. package/esm2015/molecules/button-set/public_api.js +2 -7
  258. package/esm2015/molecules/callout/callout/callout.component.js +15 -61
  259. package/esm2015/molecules/callout/callout-subtitle/callout-subtitle.directive.js +2 -14
  260. package/esm2015/molecules/callout/callout-tagline/callout-tagline.directive.js +2 -14
  261. package/esm2015/molecules/callout/callout-title/callout-title.directive.js +2 -14
  262. package/esm2015/molecules/callout/callout.module.js +1 -6
  263. package/esm2015/molecules/callout/public_api.js +5 -10
  264. package/esm2015/molecules/card/card/card.component.js +5 -47
  265. package/esm2015/molecules/card/card-actions/card-actions.directive.js +2 -14
  266. package/esm2015/molecules/card/card-image/card-image.directive.js +2 -14
  267. package/esm2015/molecules/card/card-tagline/card-tagline.directive.js +2 -14
  268. package/esm2015/molecules/card/card-title/card-title.directive.js +2 -14
  269. package/esm2015/molecules/card/card.module.js +1 -6
  270. package/esm2015/molecules/card/public_api.js +6 -11
  271. package/esm2015/molecules/feature/feature/feature.component.js +11 -28
  272. package/esm2015/molecules/feature/feature-icon/feature-icon.directive.js +2 -14
  273. package/esm2015/molecules/feature/feature-subheader/feature-subheader.directive.js +2 -14
  274. package/esm2015/molecules/feature/feature-subtitle/feature-subtitle.directive.js +2 -14
  275. package/esm2015/molecules/feature/feature-title/feature-title.directive.js +2 -14
  276. package/esm2015/molecules/feature/feature.module.js +1 -6
  277. package/esm2015/molecules/feature/public_api.js +6 -11
  278. package/esm2015/molecules/hero/hero/hero.component.js +17 -65
  279. package/esm2015/molecules/hero/hero-subtitle/hero-subtitle.directive.js +2 -14
  280. package/esm2015/molecules/hero/hero-tagline/hero-tagline.directive.js +2 -14
  281. package/esm2015/molecules/hero/hero-title/hero-title.directive.js +2 -14
  282. package/esm2015/molecules/hero/hero.module.js +1 -6
  283. package/esm2015/molecules/hero/public_api.js +5 -10
  284. package/esm2015/molecules/image-gallery/gallery-image/gallery-image.component.js +2 -13
  285. package/esm2015/molecules/image-gallery/image-gallery/image-gallery.component.js +3 -8
  286. package/esm2015/molecules/image-gallery/image-gallery.module.js +1 -6
  287. package/esm2015/molecules/image-gallery/public_api.js +3 -8
  288. package/esm2015/molecules/image-list/image-list.component.js +4 -16
  289. package/esm2015/molecules/image-list/image-list.module.js +1 -6
  290. package/esm2015/molecules/image-list/public_api.js +2 -7
  291. package/esm2015/molecules/link-set/link-set/link-set.component.js +4 -16
  292. package/esm2015/molecules/link-set/link-set-heading/link-set-heading.directive.js +2 -14
  293. package/esm2015/molecules/link-set/link-set-item/link-set-item.component.js +3 -15
  294. package/esm2015/molecules/link-set/link-set-subheading/link-set-subheading.directive.js +2 -14
  295. package/esm2015/molecules/link-set/link-set.module.js +1 -6
  296. package/esm2015/molecules/link-set/public_api.js +2 -7
  297. package/esm2015/molecules/list/list/list.component.js +24 -61
  298. package/esm2015/molecules/list/list-item/list-item.component.js +5 -45
  299. package/esm2015/molecules/list/list-subheader/list-subheader.directive.js +2 -14
  300. package/esm2015/molecules/list/list.module.js +1 -6
  301. package/esm2015/molecules/list/public_api.js +4 -9
  302. package/esm2015/molecules/media-gallery/media-gallery-registration.interface.js +2 -14
  303. package/esm2015/molecules/media-gallery/media-gallery-token.js +1 -7
  304. package/esm2015/molecules/media-gallery/media-gallery.component.js +3 -21
  305. package/esm2015/molecules/media-gallery/media-gallery.module.js +1 -6
  306. package/esm2015/molecules/media-gallery/media-renderer/media-renderer.component.js +8 -66
  307. package/esm2015/molecules/media-gallery/public_api.js +4 -9
  308. package/esm2015/molecules/media-gallery/registry/media-gallery.registry.js +7 -54
  309. package/esm2015/molecules/media-gallery/thumbnail/thumbnail-compat.token.js +1 -7
  310. package/esm2015/molecules/media-gallery/thumbnail/thumbnail-registration.interface.js +2 -22
  311. package/esm2015/molecules/media-gallery/thumbnail/thumbnail.directive.js +9 -70
  312. package/esm2015/molecules/modal/animations/modal-animation-state.js +2 -12
  313. package/esm2015/molecules/modal/animations/modal-animation.js +1 -7
  314. package/esm2015/molecules/modal/modal/modal-config.js +2 -18
  315. package/esm2015/molecules/modal/modal/modal.component.js +4 -50
  316. package/esm2015/molecules/modal/modal-actions/modal-actions.component.js +2 -7
  317. package/esm2015/molecules/modal/modal-content/modal-content.component.js +2 -7
  318. package/esm2015/molecules/modal/modal-header/modal-header.component.js +4 -16
  319. package/esm2015/molecules/modal/modal-title/modal-title.directive.js +2 -14
  320. package/esm2015/molecules/modal/modal.js +2 -22
  321. package/esm2015/molecules/modal/modal.module.js +1 -6
  322. package/esm2015/molecules/modal/public_api.js +2 -7
  323. package/esm2015/molecules/modal/service/modal.service.js +6 -78
  324. package/esm2015/molecules/navbar/navbar.component.js +5 -46
  325. package/esm2015/molecules/navbar/navbar.module.js +1 -6
  326. package/esm2015/molecules/navbar/public_api.js +2 -7
  327. package/esm2015/molecules/paginator/paginator-errors.js +1 -8
  328. package/esm2015/molecules/paginator/paginator.component.js +22 -117
  329. package/esm2015/molecules/paginator/paginator.module.js +1 -6
  330. package/esm2015/molecules/paginator/public_api.js +1 -6
  331. package/esm2015/molecules/qty-dropdown/public_api.js +2 -7
  332. package/esm2015/molecules/qty-dropdown/qty-dropdown.component.js +17 -100
  333. package/esm2015/molecules/qty-dropdown/qty-dropdown.module.js +1 -6
  334. package/esm2015/molecules/sidebar/animation/sidebar-animation-state.js +3 -14
  335. package/esm2015/molecules/sidebar/animation/sidebar-animation.js +6 -17
  336. package/esm2015/molecules/sidebar/helper/sidebar-mode.js +2 -6
  337. package/esm2015/molecules/sidebar/public_api.js +4 -9
  338. package/esm2015/molecules/sidebar/sidebar/sidebar.component.js +7 -49
  339. package/esm2015/molecules/sidebar/sidebar-viewport/sidebar-viewport.component.js +12 -80
  340. package/esm2015/molecules/sidebar/sidebar.module.js +1 -6
  341. package/esm2015/public_api.js +34 -39
  342. package/esm2015/quantity-field/examples/basic/basic-quantity-field.component.js +2 -11
  343. package/esm2015/quantity-field/examples/basic/basic-quantity-field.module.js +1 -6
  344. package/esm2015/quantity-field/examples/customRange/custom-range-quantity-field.component.js +2 -11
  345. package/esm2015/quantity-field/examples/customRange/custom-range-quantity-field.module.js +1 -6
  346. package/esm2015/quantity-field/examples/daffodil-design-quantity-field-examples.js +2 -7
  347. package/esm2015/quantity-field/examples/disabled/disabled-quantity-field.component.js +2 -11
  348. package/esm2015/quantity-field/examples/disabled/disabled-quantity-field.module.js +1 -6
  349. package/esm2015/quantity-field/examples/examples.js +1 -7
  350. package/esm2015/quantity-field/examples/index.js +2 -7
  351. package/esm2015/quantity-field/examples/public_api.js +1 -6
  352. package/esm2015/quantity-field/examples/selectMax/select-max-quantity-field.component.js +2 -11
  353. package/esm2015/quantity-field/examples/selectMax/select-max-quantity-field.module.js +1 -6
  354. package/esm2015/radio/examples/basic-radio/basic-radio.component.js +2 -14
  355. package/esm2015/radio/examples/basic-radio/basic-radio.module.js +1 -6
  356. package/esm2015/radio/examples/daffodil-design-radio-examples.js +2 -7
  357. package/esm2015/radio/examples/examples.js +1 -8
  358. package/esm2015/radio/examples/index.js +2 -7
  359. package/esm2015/radio/examples/public_api.js +1 -6
  360. package/fesm2015/daffodil-design-accordion-examples.js +3 -37
  361. package/fesm2015/daffodil-design-accordion-examples.js.map +1 -1
  362. package/fesm2015/daffodil-design-article-examples.js +12 -92
  363. package/fesm2015/daffodil-design-article-examples.js.map +1 -1
  364. package/fesm2015/daffodil-design-button-examples.js +8 -132
  365. package/fesm2015/daffodil-design-button-examples.js.map +1 -1
  366. package/fesm2015/daffodil-design-callout-examples.js +5 -67
  367. package/fesm2015/daffodil-design-callout-examples.js.map +1 -1
  368. package/fesm2015/daffodil-design-card-examples.js +5 -65
  369. package/fesm2015/daffodil-design-card-examples.js.map +1 -1
  370. package/fesm2015/daffodil-design-checkbox-examples.js +3 -74
  371. package/fesm2015/daffodil-design-checkbox-examples.js.map +1 -1
  372. package/fesm2015/daffodil-design-hero-examples.js +5 -67
  373. package/fesm2015/daffodil-design-hero-examples.js.map +1 -1
  374. package/fesm2015/daffodil-design-list-examples.js +5 -78
  375. package/fesm2015/daffodil-design-list-examples.js.map +1 -1
  376. package/fesm2015/daffodil-design-loading-icon-examples.js +3 -47
  377. package/fesm2015/daffodil-design-loading-icon-examples.js.map +1 -1
  378. package/fesm2015/daffodil-design-media-gallery-examples.js +3 -43
  379. package/fesm2015/daffodil-design-media-gallery-examples.js.map +1 -1
  380. package/fesm2015/daffodil-design-modal-examples.js +3 -47
  381. package/fesm2015/daffodil-design-modal-examples.js.map +1 -1
  382. package/fesm2015/daffodil-design-quantity-field-examples.js +5 -81
  383. package/fesm2015/daffodil-design-quantity-field-examples.js.map +1 -1
  384. package/fesm2015/daffodil-design-radio-examples.js +2 -40
  385. package/fesm2015/daffodil-design-radio-examples.js.map +1 -1
  386. package/fesm2015/daffodil-design.js +387 -3555
  387. package/fesm2015/daffodil-design.js.map +1 -1
  388. package/hero/examples/daffodil-design-hero-examples.metadata.json +1 -1
  389. package/hero/examples/package.json +1 -1
  390. package/list/examples/package.json +1 -1
  391. package/loading-icon/examples/package.json +1 -1
  392. package/media-gallery/examples/package.json +1 -1
  393. package/modal/examples/package.json +1 -1
  394. package/package.json +2 -2
  395. package/quantity-field/examples/package.json +1 -1
  396. package/radio/examples/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design.js","sources":["../../../libs/design/src/core/colorable/colorable-enum.ts","../../../libs/design/src/core/colorable/color-in-palette.ts","../../../libs/design/src/core/colorable/colorable-mixin.ts","../../../libs/design/src/core/prefix-suffix/prefix.directive.ts","../../../libs/design/src/core/prefix-suffix/suffix.directive.ts","../../../libs/design/src/core/prefix-suffix/prefix-suffix.module.ts","../../../libs/design/src/core/prefix-suffix/suffixable/suffixable.ts","../../../libs/design/src/core/prefix-suffix/prefixable/prefixable.ts","../../../libs/design/src/core/sizeable/sizeable-mixin.ts","../../../libs/design/src/core/statusable/statusable-mixin.ts","../../../libs/design/src/atoms/button/button.component.ts","../../../libs/design/src/atoms/button/button.module.ts","../../../libs/design/src/atoms/form/core/error-state-matcher/error-state-matcher.ts","../../../libs/design/src/atoms/form/error-message/error-message.component.ts","../../../libs/design/src/atoms/form/error-message/error-message.module.ts","../../../libs/design/src/atoms/form/form-field/form-field-control.ts","../../../libs/design/src/atoms/form/form-field/form-field-errors.ts","../../../libs/design/src/atoms/form/form-field/form-field/form-field.component.ts","../../../libs/design/src/atoms/form/form-field/form-field.module.ts","../../../libs/design/src/molecules/media-gallery/media-gallery-token.ts","../../../libs/design/src/molecules/media-gallery/media-gallery.component.ts","../../../libs/design/src/molecules/media-gallery/registry/media-gallery.registry.ts","../../../libs/design/src/molecules/media-gallery/media-renderer/media-renderer.component.ts","../../../libs/design/src/molecules/media-gallery/thumbnail/thumbnail-compat.token.ts","../../../libs/design/src/molecules/media-gallery/thumbnail/thumbnail.directive.ts","../../../libs/design/src/molecules/media-gallery/media-gallery.module.ts","../../../libs/design/src/atoms/image/image.component.ts","../../../libs/design/src/atoms/image/image.module.ts","../../../libs/design/src/atoms/form/input/input.component.ts","../../../libs/design/src/atoms/form/input/input.module.ts","../../../libs/design/src/atoms/form/select/select/select.component.ts","../../../libs/design/src/atoms/form/select/select.module.ts","../../../libs/design/src/atoms/form/checkbox/checkbox.component.ts","../../../libs/design/src/atoms/form/checkbox-set/checkbox-set.component.ts","../../../libs/design/src/atoms/form/checkbox/cva/checkbox-cva.directive.ts","../../../libs/design/src/atoms/form/checkbox/checkbox.module.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-input/quantity-input.component.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-select/quantity-select.component.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-field.component.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-field.module.ts","../../../libs/design/src/atoms/container/container.component.ts","../../../libs/design/src/atoms/container/container.module.ts","../../../libs/design/src/atoms/loading-icon/loading-icon.component.ts","../../../libs/design/src/atoms/loading-icon/loading-icon.module.ts","../../../libs/design/src/atoms/progress-indicator/animation/progress-indicator-animation.ts","../../../libs/design/src/atoms/progress-indicator/progress-indicator.component.ts","../../../libs/design/src/atoms/progress-indicator/progress-indicator.module.ts","../../../libs/design/src/atoms/form/radio-set/radio-set.component.ts","../../../libs/design/src/atoms/form/radio/radio.component.ts","../../../libs/design/src/atoms/form/radio/registry/radio-registry.ts","../../../libs/design/src/atoms/form/radio/cva/radio-cva.directive.ts","../../../libs/design/src/atoms/form/radio/radio.module.ts","../../../libs/design/src/molecules/accordion/accordion-item-content/accordion-item-content.directive.ts","../../../libs/design/src/molecules/accordion/accordion-item-title/accordion-item-title.directive.ts","../../../libs/design/src/molecules/accordion/animation/accordion-animation.ts","../../../libs/design/src/molecules/accordion/animation/accordion-animation-state.ts","../../../libs/design/src/molecules/accordion/accordion-item/accordion-item.component.ts","../../../libs/design/src/molecules/accordion/accordion/accordion.component.ts","../../../libs/design/src/molecules/accordion/nav-accordion-item/nav-accordion-item.component.ts","../../../libs/design/src/molecules/accordion/accordion.module.ts","../../../libs/design/src/molecules/article/article/article.component.ts","../../../libs/design/src/molecules/article/article-lead/article-lead.directive.ts","../../../libs/design/src/molecules/article/article-meta/article-meta.directive.ts","../../../libs/design/src/molecules/article/article-title/article-title.directive.ts","../../../libs/design/src/molecules/article/article.module.ts","../../../libs/design/src/molecules/backdrop/animation/backdrop-animation.ts","../../../libs/design/src/molecules/backdrop/backdrop/backdrop.component.ts","../../../libs/design/src/molecules/backdrop/backdrop.module.ts","../../../libs/design/src/molecules/button-set/button-set.component.ts","../../../libs/design/src/molecules/button-set/button-set.module.ts","../../../libs/design/src/molecules/image-gallery/image-gallery/image-gallery.component.ts","../../../libs/design/src/molecules/image-gallery/gallery-image/gallery-image.component.ts","../../../libs/design/src/molecules/image-list/image-list.component.ts","../../../libs/design/src/molecules/image-list/image-list.module.ts","../../../libs/design/src/molecules/image-gallery/image-gallery.module.ts","../../../libs/design/src/molecules/link-set/link-set/link-set.component.ts","../../../libs/design/src/molecules/link-set/link-set-heading/link-set-heading.directive.ts","../../../libs/design/src/molecules/link-set/link-set-item/link-set-item.component.ts","../../../libs/design/src/molecules/link-set/link-set-subheading/link-set-subheading.directive.ts","../../../libs/design/src/molecules/link-set/link-set.module.ts","../../../libs/design/src/molecules/list/list-item/list-item.component.ts","../../../libs/design/src/molecules/list/list-subheader/list-subheader.directive.ts","../../../libs/design/src/molecules/list/list/list.component.ts","../../../libs/design/src/molecules/list/list.module.ts","../../../libs/design/src/molecules/modal/animations/modal-animation.ts","../../../libs/design/src/molecules/modal/animations/modal-animation-state.ts","../../../libs/design/src/molecules/modal/modal/modal.component.ts","../../../libs/design/src/molecules/modal/modal-actions/modal-actions.component.ts","../../../libs/design/src/molecules/modal/modal-content/modal-content.component.ts","../../../libs/design/src/molecules/modal/modal-header/modal-header.component.ts","../../../libs/design/src/molecules/modal/modal-title/modal-title.directive.ts","../../../libs/design/src/molecules/modal/modal.module.ts","../../../libs/design/src/molecules/modal/service/modal.service.ts","../../../libs/design/src/molecules/navbar/navbar.component.ts","../../../libs/design/src/molecules/navbar/navbar.module.ts","../../../libs/design/src/molecules/paginator/paginator-errors.ts","../../../libs/design/src/molecules/paginator/paginator.component.ts","../../../libs/design/src/molecules/paginator/paginator.module.ts","../../../libs/design/src/molecules/qty-dropdown/qty-dropdown.component.ts","../../../libs/design/src/molecules/qty-dropdown/qty-dropdown.module.ts","../../../libs/design/src/molecules/sidebar/animation/sidebar-animation.ts","../../../libs/design/src/molecules/sidebar/animation/sidebar-animation-state.ts","../../../libs/design/src/molecules/sidebar/sidebar/sidebar.component.ts","../../../libs/design/src/molecules/sidebar/sidebar-viewport/sidebar-viewport.component.ts","../../../libs/design/src/molecules/sidebar/sidebar.module.ts","../../../libs/design/src/molecules/hero/hero-subtitle/hero-subtitle.directive.ts","../../../libs/design/src/molecules/hero/hero-tagline/hero-tagline.directive.ts","../../../libs/design/src/molecules/hero/hero-title/hero-title.directive.ts","../../../libs/design/src/core/text-alignable/text-alignable-mixin.ts","../../../libs/design/src/molecules/hero/hero/hero.component.ts","../../../libs/design/src/molecules/hero/hero.module.ts","../../../libs/design/src/molecules/callout/callout-subtitle/callout-subtitle.directive.ts","../../../libs/design/src/molecules/callout/callout-tagline/callout-tagline.directive.ts","../../../libs/design/src/molecules/callout/callout-title/callout-title.directive.ts","../../../libs/design/src/molecules/callout/callout/callout.component.ts","../../../libs/design/src/molecules/callout/callout.module.ts","../../../libs/design/src/molecules/feature/feature-icon/feature-icon.directive.ts","../../../libs/design/src/molecules/feature/feature-subheader/feature-subheader.directive.ts","../../../libs/design/src/molecules/feature/feature-subtitle/feature-subtitle.directive.ts","../../../libs/design/src/molecules/feature/feature-title/feature-title.directive.ts","../../../libs/design/src/molecules/feature/feature/feature.component.ts","../../../libs/design/src/molecules/feature/feature.module.ts","../../../libs/design/src/molecules/card/card-actions/card-actions.directive.ts","../../../libs/design/src/molecules/card/card-image/card-image.directive.ts","../../../libs/design/src/molecules/card/card-tagline/card-tagline.directive.ts","../../../libs/design/src/molecules/card/card-title/card-title.directive.ts","../../../libs/design/src/molecules/card/card/card.component.ts","../../../libs/design/src/molecules/card/card.module.ts","../../../libs/design/src/core/colorable/colorable.ts","../../../libs/design/src/core/breakpoints/breakpoints.ts","../../../libs/design/src/core/statusable/statusable.ts","../../../libs/design/src/core/skeletonable/skeletonable.ts","../../../libs/design/src/core/mutable/mutable.ts","../../../libs/design/src/core/text-alignable/text-alignable.ts"],"sourcesContent":["export enum DaffPaletteEnum {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n ACCENT = 'accent', //TODO: damienwebdev Deprecate accent\n TERTIARY = 'tertiary',\n BLACK = 'black',\n WHITE = 'white',\n THEME = 'theme',\n THEMECONTRAST = 'theme-contrast'\n}\n","import { DaffPaletteEnum } from './colorable-enum';\n\nexport function colorInPalette(color: string): boolean{\n return (<any>Object).values(DaffPaletteEnum).includes(color);\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { colorInPalette } from './color-in-palette';\nimport { DaffPalette } from './colorable';\n\ninterface HasElementRef {\n _elementRef: ElementRef;\n _renderer: Renderer2;\n}\n\n/**\n * This should be a trait, but typescript only supports mixins.\n * See: https://github.com/Microsoft/TypeScript/issues/311\n *\n * Turns out the material team followed the same path with the color mixin.\n * https://github.com/angular/material2/blob/master/src/lib/core/common-behaviors/color.ts\n */\nexport function\ndaffColorMixin<T extends Constructor<HasElementRef>>(Base: T, defaultColor?: DaffPalette) {\n class DaffColorableMixinClass extends Base {\n //TODO move this back to private in Typescript 3.1\n _color: DaffPalette;\n\n @Input()\n get color(): DaffPalette{\n return this._color;\n }\n set color(value: DaffPalette) {\n //Handle the default color\n const incomingColor = value || defaultColor;\n\n if(incomingColor !== undefined && !colorInPalette(incomingColor)){\n throw new TypeError(incomingColor + ' is not a valid color for the DaffPalette');\n }\n\n if(incomingColor !== this._color){ //Only run the dom-render if a change occurs\n //Remove the old color\n if(this._color){\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._color}`);\n }\n\n if(incomingColor){\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingColor}`);\n }\n\n this._color = incomingColor;\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.color = defaultColor;\n }\n };\n\n return DaffColorableMixinClass;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n *\n * Prefix can be used to place content before another piece of content in components like\n * `daff-form-field`, `daff-solo-field`, and `daff-list`.\n */\n@Directive({\n selector: '[daffPrefix]',\n})\n\nexport class DaffPrefixDirective {\n\n @HostBinding('class.daff-prefix') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n *\n * Prefix can be used to place content after another piece of content in components like\n * `daff-form-field`, `daff-solo-field`, and `daff-list`.\n */\n@Directive({\n selector: '[daffSuffix]',\n})\n\nexport class DaffSuffixDirective {\n\n @HostBinding('class.daff-suffix') class = true;\n}\n","import { NgModule } from '@angular/core';\n\nimport { DaffPrefixDirective } from './prefix.directive';\nimport { DaffSuffixDirective } from './suffix.directive';\n\n@NgModule({\n imports: [],\n exports: [\n DaffPrefixDirective,\n DaffSuffixDirective,\n ],\n declarations: [\n DaffPrefixDirective,\n DaffSuffixDirective,\n ],\n})\nexport class DaffPrefixSuffixModule {}\n","import {\n ContentChild,\n Directive,\n} from '@angular/core';\n\nimport { Constructor } from '../../../core/public_api';\nimport { DaffSuffixDirective } from '../suffix.directive';\n\n/**\n * A mixin for giving a component the ability to place content after another piece of content.\n */\nexport function daffSuffixableMixin<T extends Constructor>(Base: T) {\n @Directive()\n class SuffixableDirective extends Base {\n\n @ContentChild(DaffSuffixDirective, { static: true }) _suffix: DaffSuffixDirective;\n\n constructor(...args: any[]) {\n super(...args);\n }\n }\n\n return SuffixableDirective;\n}\n","import {\n ContentChild,\n Directive,\n} from '@angular/core';\n\nimport { Constructor } from '../../../core/public_api';\nimport { DaffPrefixDirective } from '../prefix.directive';\n\n/**\n * A mixin for giving a component the ability to place content before another piece of content.\n */\nexport function daffPrefixableMixin<T extends Constructor>(Base: T) {\n @Directive()\n class PrefixableDirective extends Base {\n\n @ContentChild(DaffPrefixDirective, { static: true }) _prefix: DaffPrefixDirective;\n\n constructor(...args: any[]) {\n super(...args);\n }\n }\n\n return PrefixableDirective;\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { DaffSizeAllType } from './sizeable';\n\nexport interface HasElementRef {\n\t_elementRef: ElementRef;\n\t_renderer: Renderer2;\n}\n\nexport function\ndaffSizeMixin<V extends DaffSizeAllType, T extends Constructor<HasElementRef> = Constructor<HasElementRef>>(Base: T, defaultSize?: V) {\n class DaffSizeMixinClass extends Base {\n //TODO move this back to private in Typescript 3.1\n _size: V;\n\n @Input()\n get size(): V{\n return this._size;\n }\n set size(value: V) {\n // Handles the default size\n const incomingSize = value || defaultSize;\n\n if(incomingSize !== this._size){ //Only run the dom-render if a change occurs\n //Remove the old size\n if(this._size){\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._size}`);\n }\n\n if(incomingSize){\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingSize}`);\n }\n\n this._size = incomingSize;\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.size = defaultSize;\n }\n };\n\n return DaffSizeMixinClass;\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { DaffStatus } from './statusable';\n\ninterface HasElementRef {\n _elementRef: ElementRef;\n _renderer: Renderer2;\n}\n\nexport function\ndaffStatusMixin<T extends Constructor<HasElementRef>>(Base: T, defaultStatus?: DaffStatus) {\n class DaffStatusMixinClass extends Base {\n // TODO move this back to private in Typescript 3.1\n _status: DaffStatus;\n\n @Input()\n get status(): DaffStatus {\n return this._status;\n }\n\n set status(value: DaffStatus) {\n // Handles the default status\n const incomingStatus = value || defaultStatus;\n\n if (incomingStatus === this._status) { // Only run the dom-render if a change occurs\n return;\n }\n\n // Removes the old status\n if (this._status) {\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._status}`);\n }\n\n if (incomingStatus) {\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingStatus}`);\n }\n\n this._status = incomingStatus;\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.status = defaultStatus;\n }\n };\n\n return DaffStatusMixinClass;\n}\n","import {\n Component,\n OnInit,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n Input,\n HostBinding,\n Renderer2,\n} from '@angular/core';\n\nimport {\n daffColorMixin,\n DaffColorable,\n} from '../../core/colorable/public_api';\nimport {\n DaffPrefixable,\n DaffSuffixable,\n daffPrefixableMixin,\n daffSuffixableMixin,\n} from '../../core/prefix-suffix/public_api';\nimport {\n DaffSizeable,\n DaffSizeSmallType,\n DaffSizeMediumType,\n DaffSizeLargeType,\n} from '../../core/sizeable/sizeable';\nimport { daffSizeMixin } from '../../core/sizeable/sizeable-mixin';\nimport { DaffStatusable } from '../../core/statusable/statusable';\nimport { daffStatusMixin } from '../../core/statusable/statusable-mixin';\n\n/**\n * List of classes to add to DaffButtonComponent instances based on host attributes to style as different variants.\n */\nconst BUTTON_HOST_ATTRIBUTES: DaffButtonType[] = [\n 'daff-button',\n 'daff-stroked-button',\n 'daff-raised-button',\n 'daff-icon-button',\n 'daff-underline-button',\n];\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the button mixins\n */\nclass DaffButtonBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffButtonBase = daffPrefixableMixin(daffSuffixableMixin(daffColorMixin(daffStatusMixin(daffSizeMixin<DaffButtonSize>(DaffButtonBase, 'md')))));\n\nexport type DaffButtonType = 'daff-button' | 'daff-stroked-button' | 'daff-raised-button' | 'daff-icon-button' | 'daff-underline-button' | undefined;\n\n/**\n * The DaffSizeable types that the DaffButtonComponent can implement\n */\nexport type DaffButtonSize = DaffSizeSmallType | DaffSizeMediumType | DaffSizeLargeType;\n\nenum DaffButtonTypeEnum {\n Default = 'daff-button',\n Stroked = 'daff-stroked-button',\n Raised = 'daff-raised-button',\n Icon = 'daff-icon-button',\n Underline = 'daff-underline-button'\n}\n\n/**\n * @inheritdoc\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '' +\n 'button[daff-button]' + ',' +\n 'button[daff-stroked-button]' + ',' +\n 'button[daff-raised-button]' + ',' +\n 'button[daff-icon-button]' + ',' +\n 'button[daff-underline-button]' + ',' +\n 'a[daff-button]' + ',' +\n 'a[daff-stroked-button]' + ',' +\n 'a[daff-raised-button]' + ',' +\n 'a[daff-icon-button]' + ',' +\n 'a[daff-underline-button]',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'size', 'status'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffButtonComponent\n extends _daffButtonBase\n implements OnInit, DaffPrefixable, DaffSuffixable, DaffColorable, DaffSizeable<DaffButtonSize>, DaffStatusable {\n\n private buttonType: DaffButtonType;\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n\n for (const attr of BUTTON_HOST_ATTRIBUTES) {\n if (this._hasHostAttributes(attr)) {\n (<HTMLElement>elementRef.nativeElement).classList.add(attr);\n }\n }\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n for (const attr of BUTTON_HOST_ATTRIBUTES) {\n if (this._hasHostAttributes(attr)) {\n this.buttonType = attr;\n }\n }\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-button') get button() {\n return this.buttonType === DaffButtonTypeEnum.Default || this.buttonType === undefined;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-stroked-button') get stroked() {\n return this.buttonType === DaffButtonTypeEnum.Stroked;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-raised-button') get raised() {\n return this.buttonType === DaffButtonTypeEnum.Raised;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-icon-button') get icon() {\n return this.buttonType === DaffButtonTypeEnum.Icon;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-underline-button') get underline() {\n return this.buttonType === DaffButtonTypeEnum.Underline;\n }\n\n private _getHostElement() {\n return this.elementRef.nativeElement;\n }\n\n /**\n * Gets whether the button has one of the given attributes.\n * */\n private _hasHostAttributes(...attributes: string[]) {\n return attributes.some(attribute => this._getHostElement().hasAttribute(attribute));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffPrefixSuffixModule } from '../../core/prefix-suffix/prefix-suffix.module';\nimport { DaffButtonComponent } from './button.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n DaffPrefixSuffixModule,\n ],\n declarations: [\n DaffButtonComponent,\n ],\n exports: [\n DaffButtonComponent,\n DaffPrefixSuffixModule,\n ],\n})\nexport class DaffButtonModule { }\n","import { FormControl } from '@angular/forms';\n\nexport class DaffErrorStateMatcher {\n\n isErrorState(control: FormControl, formSubmitted: boolean): boolean {\n return control.errors && (control.touched || formSubmitted);\n }\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-error-message',\n template: '<ng-content></ng-content>',\n styleUrls: ['./error-message.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffErrorMessageComponent {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffErrorMessageComponent } from './error-message.component';\n\n@NgModule({\n exports: [\n DaffErrorMessageComponent,\n ],\n declarations: [\n DaffErrorMessageComponent,\n ],\n})\nexport class DaffErrorMessageModule { }\n","import { NgControl } from '@angular/forms';\n\n/**\n *\n * The class that a form control must **implement** in order to be\n * used with the DaffFormFieldComponent.\n *\n * You may ask: \"Why are you implementing an abstract class, not extending it?\"\n * We do this so that the Angular DI container can match the class token. A typical\n * interface would be \"more accurate\" here, but since interfaces don't exist\n * in javascript, they get thrown out by the typescript compiler and cannot\n * be used for the necessary dependency injection.\n */\nexport abstract class DaffFormFieldControl {\n readonly ngControl: NgControl | null;\n\n readonly controlType?: any;\n\n readonly focused: boolean;\n\n abstract focus(event?: Event): void;\n};\n","export const DaffFormFieldMissingControlMessage = 'A DaffFormFieldComponent must contain a DaffFormFieldControl';\n","import {\n Component,\n ViewEncapsulation,\n DoCheck,\n ContentChild,\n Input,\n AfterContentInit,\n AfterContentChecked,\n HostBinding,\n} from '@angular/core';\nimport { faChevronDown } from '@fortawesome/free-solid-svg-icons';\n\nimport { DaffFormFieldControl } from '../form-field-control';\nimport { DaffFormFieldMissingControlMessage } from '../form-field-errors';\n\n\n@Component({\n selector: 'daff-form-field',\n templateUrl: './form-field.component.html',\n styleUrls: ['./form-field.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffFormFieldComponent implements DoCheck, AfterContentInit, AfterContentChecked {\n\n /**\n * @docs-private\n */\n faChevronDown = faChevronDown;\n\n @HostBinding('class.daff-form-field') class = true;\n\n /**\n * The tracking property used to determine if the parent form has been submitted,\n * and thus show an error message (even if the field hasn't been touched).\n *\n * @deprecated\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() formSubmitted: boolean = false;\n\n /**\n * The child form control that the form-field manages\n *\n * @docs-private\n */\n @ContentChild(DaffFormFieldControl) _control: DaffFormFieldControl;\n\n /**\n * Tracking property to keep a record of whether or not the\n * form field should be marked as error.\n */\n isError = false;\n\n /**\n * Tracking property to keep a record of whether or not the\n * form field should be marked as valid.\n */\n isValid = false;\n\n /**\n * @docs\n *\n * Determines whether or not the form field should display its focused state.\n */\n get isFocused() {\n return this._control?.focused;\n }\n\n /**\n * Keeps the state of the form field consistent with its child DaffFormControl\n *\n * TODO: consider whether or not this can be refactored to some kind of\n * observable to remove unnecessary change detection.\n *\n * @docs-private\n */\n ngDoCheck() {\n if(this._control?.ngControl) {\n this.isError = this._control.ngControl.errors && (this._control.ngControl.touched);\n this.isValid = !this._control.ngControl.errors && this._control.ngControl.touched;\n }\n }\n\n /**\n * Validate whether or not the FormField is in\n * a \"usable\" state.\n */\n private _validateFormControl() {\n if (!this._control) {\n throw new Error(DaffFormFieldMissingControlMessage);\n }\n }\n\n /**\n * Life cycle hook to verify that the form field has an acceptable\n * child control instance. Mostly useful for development-time\n * validation of usage.\n *\n * @docs-private\n */\n ngAfterContentInit() {\n this._validateFormControl();\n }\n\n /**\n * Life cycle hook to verify that the form field has an acceptable\n * child control instance. Mostly useful for development-time\n * validation of usage.\n *\n * @docs-private\n */\n ngAfterContentChecked() {\n this._validateFormControl();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffErrorMessageModule } from '../error-message/error-message.module';\nimport { DaffFormFieldComponent } from './form-field/form-field.component';\n\n@NgModule({\n imports: [\n CommonModule,\n\n FontAwesomeModule,\n DaffErrorMessageModule,\n ],\n exports: [\n DaffFormFieldComponent,\n DaffErrorMessageModule,\n ],\n declarations: [\n DaffFormFieldComponent,\n ],\n})\nexport class DaffFormFieldModule { }\n","import { InjectionToken } from '@angular/core';\n\nimport { DaffMediaGalleryRegistration } from './media-gallery-registration.interface';\n\nexport const DAFF_MEDIA_GALLERY_TOKEN = new InjectionToken<DaffMediaGalleryRegistration>('DAFF_MEDIA_GALLERY_TOKEN');\n","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n} from '@angular/core';\n\nimport { DaffMediaGalleryRegistration } from './media-gallery-registration.interface';\nimport { DAFF_MEDIA_GALLERY_TOKEN } from './media-gallery-token';\n\nlet uniqueGalleryId = 0;\n\n@Component({\n selector: 'daff-media-gallery',\n templateUrl: './media-gallery.component.html',\n styleUrls: ['./media-gallery.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n { provide: DAFF_MEDIA_GALLERY_TOKEN, useExisting: DaffMediaGalleryComponent },\n ],\n})\nexport class DaffMediaGalleryComponent implements DaffMediaGalleryRegistration {\n\t/**\n\t * Adds a class for styling the media gallery\n\t */\n\t@HostBinding('class.daff-media-gallery') class = true;\n\n\t/**\n\t * The name of the gallery\n\t */\n\t@Input() name = `${uniqueGalleryId}`;\n\n\tconstructor() {\n\t uniqueGalleryId++;\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { DaffMediaGalleryRegistration } from '../media-gallery-registration.interface';\nimport { DaffThumbnailRegistration } from '../thumbnail/thumbnail-registration.interface';\n\nexport interface DaffMediaGalleryDict {\n\t[galleryName: string]: BehaviorSubject<DaffMediaGallery>;\n}\n\nexport interface DaffMediaGallery {\n\tgallery: DaffMediaGalleryRegistration;\n\tthumbnails: DaffThumbnailRegistration[];\n}\n\n@Injectable({ providedIn: 'root' })\nexport class DaffMediaGalleryRegistry {\n\tgalleries: DaffMediaGalleryDict = {};\n\n\t/**\n\t * @description\n\t * Adds a media element to the internal registry.\n\t */\n\tadd(gallery: DaffMediaGalleryRegistration, thumbnail: DaffThumbnailRegistration) {\n\t if(this.galleries[gallery.name]) {\n\t let newGallery = this.galleries[gallery.name].getValue();\n\n\t newGallery = {\n\t ...newGallery,\n\t thumbnails: [\n\t ...newGallery.thumbnails.filter(t => t !== thumbnail),\n\t thumbnail,\n\t ],\n\t };\n\t this.galleries[gallery.name].next(newGallery);\n\t } else {\n\t this.galleries[gallery.name] = new BehaviorSubject({\n\t gallery,\n\t thumbnails: [thumbnail],\n\t });\n\t }\n\n\t if(this.galleries[gallery.name].getValue().thumbnails.length === 1) {\n\t thumbnail.select();\n\t }\n\t}\n\n\t/**\n\t * @description\n\t * Removes a media element from the internal registry.\n\t */\n\tremove(thumbnail: DaffThumbnailRegistration) {\n\t if(!this.galleries[thumbnail.gallery.name]) {\n\t return;\n\t }\n\t const gallery = this.galleries[thumbnail.gallery.name].getValue();\n\t const index = gallery.thumbnails.indexOf(thumbnail);\n\n\t if(index === -1) {\n\t return;\n\t }\n\n\t this.galleries[thumbnail.gallery.name].next({\n\t ...gallery,\n\t thumbnails: [\n\t ...gallery.thumbnails.slice(0, index),\n\t ...gallery.thumbnails.slice(index + 1),\n\t ],\n\t });\n\t}\n\n\t/**\n\t * @description\n\t * Selects a media element for a given gallery.\n\t */\n\tselect(thumbnail: DaffThumbnailRegistration) {\n\t if(!this.galleries[thumbnail.gallery.name]) {\n\t return;\n\t }\n\n\t const gallery = this.galleries[thumbnail.gallery.name].getValue();\n\t const index = gallery.thumbnails.indexOf(thumbnail);\n\n\t if(thumbnail.selected || index === -1){\n\t return;\n\t }\n\n\t this.galleries[thumbnail.gallery.name].next({\n\t ...gallery,\n\t thumbnails: [\n\t ...gallery.thumbnails.filter(m => m !== thumbnail).map(m => m.deselect()),\n\t thumbnail.select(),\n\t ],\n\t });\n\t}\n}\n","import {\n Component,\n OnInit,\n ComponentFactoryResolver,\n Type,\n ViewChild,\n ViewContainerRef,\n TemplateRef,\n ChangeDetectionStrategy,\n OnDestroy,\n Inject,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DaffMediaGalleryRegistration } from '../media-gallery-registration.interface';\nimport { DAFF_MEDIA_GALLERY_TOKEN } from '../media-gallery-token';\nimport { DaffMediaGalleryRegistry } from '../registry/media-gallery.registry';\n\n/**\n * Dynamically renders the selected `DaffThumbnailDirective` in a `daff-media-gallery` any time the selected thumbnail\n * changes.\n */\n@Component({\n selector: 'daff-media-renderer',\n templateUrl: './media-renderer.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffMediaRendererComponent implements OnInit, OnDestroy {\n\n /**\n * Private tracker for indicating when the component is destroyed.\n */\n private _destroy$ = new Subject();\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private registry: DaffMediaGalleryRegistry,\n @Inject(DAFF_MEDIA_GALLERY_TOKEN) private gallery: DaffMediaGalleryRegistration,\n ) {}\n\n /**\n * The slot that the \"component\" is rendered into.\n */\n @ViewChild(TemplateRef, { static: true, read: ViewContainerRef })\n slot: ViewContainerRef;\n\n ngOnInit() {\n this.registry.galleries[this.gallery.name]\n .pipe(takeUntil(this._destroy$))\n .subscribe((gallery) => {\n\n /**\n * Clear out the slot for the dynamically rendered thumbnail\n */\n this.slot.clear();\n\n const _selectedThumbnail = gallery.thumbnails.filter(media => media.selected).shift();\n\n /**\n * If there's no selected media, render nothing.\n */\n if(!_selectedThumbnail) {\n return;\n }\n\n const _selectedThumbnailComponent = _selectedThumbnail.component;\n\n /**\n * Create the component to insert.\n */\n const component = this.componentFactoryResolver.resolveComponentFactory(\n <Type<unknown>>_selectedThumbnailComponent.constructor,\n );\n const componentRef = this.slot.createComponent(component);\n\n /**\n * Fill the component with it's values from the original component\n */\n component.inputs.forEach(input => {\n componentRef.instance[input.propName] = _selectedThumbnailComponent[input.propName];\n });\n\n /**\n * Trigger a change detection on the component tree, outside the cycle to address\n * the fact that the component was created outside a typical CD loop.\n */\n componentRef.changeDetectorRef.detectChanges();\n });\n }\n\n /**\n * Used to unsubscribe from the dynamic component.\n */\n ngOnDestroy() {\n this._destroy$.next(true);\n this._destroy$.unsubscribe();\n }\n}\n\n","import { InjectionToken } from '@angular/core';\n\n/**\n * A multi provider injection token that marks a component as renderable for the `DaffMediaRendererComponent`.\n */\nexport const daffThumbnailCompatToken = new InjectionToken<unknown>('thumbnailCompatToken');\n","import {\n Directive,\n Inject,\n Type,\n HostBinding,\n HostListener,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n} from '@angular/core';\n\nimport { DaffMediaGalleryRegistration } from '../media-gallery-registration.interface';\nimport { DAFF_MEDIA_GALLERY_TOKEN } from '../media-gallery-token';\nimport { DaffMediaGalleryRegistry } from '../registry/media-gallery.registry';\nimport { daffThumbnailCompatToken } from './thumbnail-compat.token';\nimport { DaffThumbnailRegistration } from './thumbnail-registration.interface';\n\n/**\n * A directive marking thumbnails for the `DaffMediaRendererComponent`. Needs to be wrapped in a `daff-media-gallery` component\n * and needs to be placed on a component that is provided as a `daffThumbnailCompatToken`.\n */\n@Directive({\n selector: '[daffThumbnail]',\n})\nexport class DaffThumbnailDirective implements OnInit, OnDestroy, DaffThumbnailRegistration {\n\n\t/**\n\t * Adds a class for styling a selected thumbnail\n\t */\n\t@HostBinding('class.daff-thumbnail--selected') get selectedClass() {\n return this.selected;\n };\n\n\tconstructor(\n\t\t@Inject(daffThumbnailCompatToken) public component: Type<unknown>,\n\t\tprivate cd: ChangeDetectorRef,\n\t\tprivate registry: DaffMediaGalleryRegistry,\n @Inject(DAFF_MEDIA_GALLERY_TOKEN) public gallery: DaffMediaGalleryRegistration,\n\t) {}\n\n\t/**\n\t * Adds a class for styling a thumbnail\n\t */\n\t@HostBinding('class.daff-thumbnail') class = true;\n\n\t/**\n\t * A prop for determining whether or not the media element is selected.\n\t */\n\tselected = false;\n\n\t/**\n\t * An event that fires after the media element becomes selected.\n\t */\n\t@Output() becameSelected: EventEmitter<void> = new EventEmitter<void>();\n\n\t/**\n\t * Adds a click event to trigger selection of the media element.\n\t *\n\t * @param $event\n\t */\n\t@HostListener('click', ['$event']) onClick($event: MouseEvent) {\n\t this.registry.select(this);\n\t}\n\n\tngOnInit(): void {\n\t this.registry.add(this.gallery, this);\n\t}\n\n\tngOnDestroy(): void {\n\t this.registry.remove(this);\n\t}\n\n\tselect() {\n\t this.selected = true;\n\t this.becameSelected.emit();\n\t this.cd.markForCheck();\n\t return this;\n\t}\n\n\tdeselect() {\n\t this.selected = false;\n\t this.cd.markForCheck();\n\t return this;\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffMediaGalleryComponent } from './media-gallery.component';\nimport { DaffMediaRendererComponent } from './media-renderer/media-renderer.component';\nimport { DaffThumbnailDirective } from './thumbnail/thumbnail.directive';\n\n@NgModule({\n declarations: [\n DaffMediaGalleryComponent,\n DaffThumbnailDirective,\n DaffMediaRendererComponent,\n ],\n imports: [\n CommonModule,\n ],\n exports: [\n DaffThumbnailDirective,\n DaffMediaGalleryComponent,\n ],\n})\nexport class DaffMediaGalleryModule {}\n","import {\n Component,\n ChangeDetectionStrategy,\n Input,\n EventEmitter,\n Output,\n HostBinding,\n OnInit,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { daffThumbnailCompatToken } from '../../molecules/media-gallery/public_api';\n\nconst validateProperty = (object: Record<string, any>, prop: string) => {\n if (object[prop] === null || object[prop] === undefined || object[prop] === '') {\n throw new Error(`DaffImageComponent must have a defined ${prop} attribute.`);\n }\n};\n\nconst validateProperties = (object: Record<string, any>, props: string[]) => {\n const invalidProps = props.filter(prop => {\n try {\n validateProperty(object, prop);\n } catch(e) {\n return true;\n }\n return false;\n });\n\n if (invalidProps.length) {\n throw new Error(`DaffImageComponent must have the ${invalidProps.join(',')} attributes defined.`);\n }\n};\n\n@Component({\n selector: 'daff-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n\t\t\t provide: daffThumbnailCompatToken, useExisting: DaffImageComponent,\n },\n ],\n})\nexport class DaffImageComponent implements OnInit {\n\n\tprivate _src: string;\n\n @Input()\n\tget src(): string {\n\t return this._src;\n\t}\n set src(value: string) {\n this._src = value;\n validateProperty(this, 'src');\n }\n\n private _alt: string;\n\n @Input()\n get alt(): string {\n return this._alt;\n }\n set alt(value: string) {\n this._alt = value;\n validateProperty(this, 'alt');\n }\n\n private _width: number;\n\n @Input()\n get width(): number {\n return this._width;\n }\n set width(value: number) {\n this._width = value;\n validateProperty(this, 'width');\n }\n\n private _height: number;\n\n @Input()\n get height(): number {\n return this._height;\n }\n set height(value: number) {\n this._height = value;\n validateProperty(this, 'height');\n }\n\n // TODO: rename event to not collide with native event (unless that's intentional)\n // eslint-disable-next-line @angular-eslint/no-output-native\n\t@Output() load: EventEmitter<void> = new EventEmitter();\n\n\t/**\n\t * @docs-private\n\t */\n\tngOnInit(): void {\n\t validateProperties(this, ['src', 'alt', 'width', 'height']);\n\t}\n\n\tconstructor(private sanitizer: DomSanitizer) {}\n\n\t/**\n\t * @docs-private\n\t */\n\tget _paddingTop(): any {\n\t if (!this.height || !this.width ) {\n\t return undefined;\n\t }\n\n\t return this.sanitizer.bypassSecurityTrustStyle('calc(' + this.height + ' / ' + this.width + ' * 100%)');\n\t}\n\n\t/**\n\t * @docs-private\n\t */\n @HostBinding('style.max-width') get maxWidth(): string {\n\t return this.width + 'px';\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffImageComponent } from './image.component';\n\n@NgModule({\n declarations: [\n DaffImageComponent,\n ],\n imports: [\n CommonModule,\n ],\n exports: [\n DaffImageComponent,\n ],\n entryComponents: [\n DaffImageComponent,\n ],\n})\nexport class DaffImageModule { }\n","import {\n Component,\n Input,\n Optional,\n Self,\n ElementRef,\n HostListener,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffFormFieldControl } from '../form-field/form-field-control';\n\n/**\n * DaffInputComponent provides the same functionality as a native `<input>` and contains custom styling and functionality.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'input[daff-input]',\n template: '<ng-content></ng-content>',\n styleUrls: ['./input.component.scss'],\n providers: [\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n { provide: DaffFormFieldControl, useExisting: DaffInputComponent },\n ],\n})\nexport class DaffInputComponent implements DaffFormFieldControl {\n\n\t/**\n\t * Has the form been submitted.\n\t */\n\t@Input() formSubmitted: boolean;\n\n focused = false;\n\n /**\n * @docs-private\n */\n @HostListener('focus') focus() {\n this.focused = true;\n }\n\n /**\n * @docs-private\n */\n @HostListener('blur') blur() {\n this.focused = false;\n }\n\n constructor(\n\t\t/**\n\t\t * @docs-private\n\t\t */\n\t\t@Optional() @Self() public ngControl: NgControl,\n\t\tprivate _elementRef: ElementRef<HTMLInputElement>,\n ) {}\n\n onFocus() {\n this._elementRef.nativeElement.focus();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffInputComponent } from './input.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n DaffInputComponent,\n ],\n declarations: [\n DaffInputComponent,\n ],\n})\nexport class DaffInputModule { }\n","import {\n Component,\n ViewEncapsulation,\n Optional,\n Self,\n Input,\n ElementRef,\n HostListener,\n HostBinding,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffFormFieldControl } from '../../form-field/form-field-control';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'select[daff-native-select]',\n template: '<ng-content></ng-content>',\n styleUrls: ['./select.component.scss'],\n encapsulation: ViewEncapsulation.None,\n providers: [\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n { provide: DaffFormFieldControl, useExisting: DaffNativeSelectComponent },\n ],\n})\n\nexport class DaffNativeSelectComponent implements DaffFormFieldControl {\n /**\n * @docs-private\n */\n controlType = 'native-select';\n\n @HostBinding('class.daff-native-select') class = true;\n\n /**\n * Has the form been submitted.\n */\n\t@Input() formSubmitted: boolean;\n\tfocused = false;\n\n\t/**\n\t * @docs-private\n\t */\n @HostListener('focus') focus() {\n\t this.focused = true;\n\t}\n\n /**\n * @docs-private\n */\n @HostListener('blur') blur() {\n this.focused = false;\n }\n\n constructor(\n\t\t/**\n\t\t * @docs-private\n\t\t */\n\t\t@Optional() @Self() public ngControl: NgControl,\n\t\tprivate _elementRef: ElementRef<HTMLInputElement>,\n ) {}\n\n onFocus() {\n this._elementRef.nativeElement.focus();\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffNativeSelectComponent } from './select/select.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n DaffNativeSelectComponent,\n ],\n declarations: [\n DaffNativeSelectComponent,\n ],\n})\nexport class DaffNativeSelectModule { }\n","import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n EventEmitter,\n Output,\n ChangeDetectorRef,\n ViewChild,\n ElementRef,\n} from '@angular/core';\n\nlet checkboxIdNum = 0;\n\n@Component({\n selector: 'daff-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffCheckboxComponent {\n /**\n * @docs-private\n */\n @ViewChild('inputElement', { static: true, read: ElementRef }) nativeCheckbox: ElementRef<HTMLInputElement>;\n /**\n * The name of the checkbox.\n */\n @Input() name: string;\n /**\n * The value of the checkbox.\n */\n @Input() value: any;\n /**\n * Boolean value to determine whether or not the checkbox is checked.\n */\n\tprivate _checked = false;\n\n @Input()\n\tget checked() {\n\t return this._checked;\n\t}\n set checked(value: boolean) {\n if (this._checked === value) {\n return;\n }\n if (value === true) {\n this.nativeCheckbox.nativeElement.checked = true;\n this.becameChecked.emit(this._checked);\n } else {\n this.nativeCheckbox.nativeElement.checked = false;\n this.becameUnchecked.emit();\n }\n\n this._checked = value;\n }\n /**\n * The id of the checkbox. Must be unique. If not entered by a user then it is generated.\n */\n @Input() id: string = 'daff-checkbox-' + checkboxIdNum;\n\n /**\n * The aria-label of the checkbox.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-label') label = '';\n\n /**\n * The aria-labeledby of the checkbox.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-labelledby') labeledBy: string;\n\n /**\n * Event on whether or not the selection has changed.\n */\n @Output() becameChecked: EventEmitter<boolean> = new EventEmitter();\n @Output() becameUnchecked: EventEmitter<void> = new EventEmitter();\n\n /**\n * Whether the checkbox is focused\n */\n focused: boolean;\n /**\n * Whether the checkbox is disabled.\n */\n disabled: boolean;\n\n /**\n * The role of the component. Set to \"checkbox\".\n *\n * @docs-private\n */\n @HostBinding('attr.role') role = 'checkbox';\n\n\n /**\n * @docs-private\n */\n _onChange(val: Event) {\n if ((<HTMLInputElement>val.target).checked) {\n this.select();\n } else {\n this.deselect();\n }\n };\n /**\n * @docs-private\n */\n @HostBinding('class.focused') get focusClass() {\n return this.focused === true;\n };\n /**\n * @docs-private\n */\n @HostBinding('class.disabled') get disabledClass() {\n return this.disabled === true;\n };\n /**\n * Sets focused to false.\n */\n onBlur() {\n this.focused = false;\n }\n /**\n * Sets focused to true.\n */\n onFocus() {\n this.focused = true;\n }\n\n constructor(private _cdRef: ChangeDetectorRef) {\n /**\n * Increments id number on new checkbox. Gurantees unique ID on generation.\n */\n checkboxIdNum++;\n }\n /**\n * Sets checked to true.\n */\n select() {\n this.checked = true;\n this._cdRef.markForCheck();\n }\n /**\n * Sets checked to false\n */\n deselect() {\n this.checked = false;\n this._cdRef.markForCheck();\n }\n}\n","import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ContentChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { FormArray } from '@angular/forms';\n\nimport { DaffCheckboxComponent } from '../checkbox/checkbox.component';\n\n@Component({\n selector: 'daff-checkbox-set',\n templateUrl: './checkbox-set.component.html',\n styleUrls: ['./checkbox-set.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffCheckboxSetComponent {\n\n @Input() formArray: FormArray;\n /**\n * The name of the checkbox-set\n */\n @Input() name: string;\n\n /**\n * The role of the component. Set to \"checkbox\".\n *\n * @docs-private\n */\n @HostBinding('attr.role') role = 'group';\n\n /**\n * The list of checkboxes in the set.\n *\n * @docs-private\n */\n @ContentChildren(DaffCheckboxComponent) checkboxes: QueryList<DaffCheckboxComponent>;\n\n @Output() valueList = new EventEmitter<any[]>();\n\n getValues(): any[] {\n const checkboxes = this.checkboxes.toArray();\n return this.formArray.value.map((element, index) => element === true ? checkboxes[index].value : false).filter(element => element !== false);\n }\n}\n","import {\n Directive,\n Input,\n OnInit,\n Self,\n Optional,\n forwardRef,\n} from '@angular/core';\nimport {\n NgControl,\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n} from '@angular/forms';\n\nimport { DaffCheckboxComponent } from '../checkbox.component';\n\n/**\n * A directive for binding the DaffCheckboxComponent and the Control Value Accessor.\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'daff-checkbox[ngModel], daff-checkbox[formControl], daff-checkbox[formControlName]',\n})\nexport class DaffCheckboxControlValueAccessorDirective implements OnInit, ControlValueAccessor {\n _onChange: (val: any) => void;\n _onTouched: () => void;\n\n /**\n * The value of the ControlValueAccessor\n */\n @Input() value: any;\n\n /**\n * The name of the ControlValueAccessor\n */\n @Input() name: string;\n\n constructor(\n @Optional() @Self() public _control: NgControl,\n private _checkbox: DaffCheckboxComponent,\n ) {\n if (this._control != null) {\n this._control.valueAccessor = this;\n }\n }\n\n\n /**\n * A lifecycle method called when the directive is initialized.\n */\n ngOnInit(): void {\n // See the note about `writeValue` usage.\n this.writeValue(this._control.value);\n\n // Watch for user events on the component to update the state\n this._checkbox.becameChecked.subscribe(\n () => {\n this._onChange(true);\n },\n );\n this._checkbox.becameUnchecked.subscribe(\n () => {\n this._onChange(false);\n },\n );\n }\n\n /**\n * writes a new value down into the component.\n */\n writeValue(value: any): void {\n value = !!value;\n if (value === true) {\n this.fireSelect();\n } else {\n this.fireDeselect();\n }\n }\n\n /**\n * Registers the change handler\n */\n registerOnChange(fn: any): void {\n this._onChange = (val) => {\n fn(val);\n };\n }\n\n /**\n * Registers the touched handler\n */\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n /**\n * Sets the disabled state.\n */\n setDisabledState?(isDisabled: boolean): void {\n this._checkbox.disabled = isDisabled;\n }\n\n /**\n * calls the child checkbox's select function\n */\n fireSelect() {\n this._checkbox.select();\n }\n\n /**\n * calls the child checkbox's deselect function\n */\n fireDeselect() {\n this._checkbox.deselect();\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffCheckboxSetComponent } from '../checkbox-set/checkbox-set.component';\nimport { DaffCheckboxComponent } from './checkbox.component';\nimport { DaffCheckboxControlValueAccessorDirective } from './cva/checkbox-cva.directive';\n\n@NgModule({\n exports: [\n DaffCheckboxComponent,\n DaffCheckboxSetComponent,\n DaffCheckboxControlValueAccessorDirective,\n ],\n declarations: [\n DaffCheckboxComponent,\n DaffCheckboxSetComponent,\n DaffCheckboxControlValueAccessorDirective,\n ],\n imports: [\n CommonModule,\n ],\n providers: [\n DaffCheckboxSetComponent,\n ],\n})\nexport class DaffCheckboxModule { }\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ViewChild,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport {\n FormControl,\n NgControl,\n} from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DaffInputComponent } from '../../input/public_api';\n\n@Component({\n selector: 'daff-quantity-input',\n templateUrl: './quantity-input.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffQuantityInputComponent implements OnInit, OnDestroy {\n @ViewChild(DaffInputComponent) input: DaffInputComponent;\n\n /**\n * @docs\n * The minimum number for the quantity input field\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number for the quantity input field\n */\n @Input() max = 10;\n\n /**\n * A new control for the nested native input.\n * We don't bind the native input directly to the inherited form control\n * to avoid triggering updates on the input event.\n * Instead, we listen for the change event and manually patch form control values.\n */\n _inputControl = new FormControl();\n // TODO: should this not use this.input as the source of truth for focused?\n focused = false;\n _destroyed = new Subject();\n\n get value() {\n return this.ngControl.control.value;\n }\n set value(value) {\n const val = Math.min(Math.round(coerceNumberProperty(value)), this.max);\n this.ngControl.control.patchValue(val);\n this._inputControl.patchValue(val);\n this.changeDetectorRef.markForCheck();\n }\n\n get disabled() {\n return this.ngControl.control.disabled;\n }\n\n constructor(\n public ngControl: NgControl,\n private changeDetectorRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this._inputControl.patchValue(this.ngControl.control.value);\n this.setInputDisabled();\n this.ngControl.statusChanges.pipe(\n takeUntil(this._destroyed),\n ).subscribe(() => {\n this.setInputDisabled();\n });\n }\n\n ngOnDestroy() {\n this._destroyed.next(true);\n }\n\n focus() {\n this.focused = true;\n this.input.focus();\n }\n\n onFocus() {\n this.focused = true;\n this.ngControl.control.markAsTouched();\n }\n\n onBlur() {\n // TODO: this.focused = false ?\n if(this.value === null || this.value === undefined){\n this.value = 1;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e: any) {\n this.value = e.target.value;\n }\n\n private setInputDisabled() {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.ngControl.disabled\n ? this._inputControl.disable()\n : this._inputControl.enable();\n }\n}\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChild,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffNativeSelectComponent } from '../../select/public_api';\n\n/**\n * Create an array of numbers from min to max, not including max.\n */\nexport const makeValueArray = (min: number, max: number, increment: number) =>\n Array(max - min).fill(0).map((x, i) => (i * increment) + min);\n\n@Component({\n selector: 'daff-quantity-select',\n templateUrl: './quantity-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffQuantitySelectComponent {\n\n @ViewChild(DaffNativeSelectComponent) select: DaffNativeSelectComponent;\n\n /**\n * @docs\n * The minimum number selectable.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number selectable;\n */\n @Input() max = 10;\n\n /**\n * @docs\n * Property used to determine whether or not the DaffQuantitySelectComponent is\n * used in a situation whether the `max` isn't a true max.\n */\n @Input() extendable = true;\n\n /**\n * The amount to increment between \"min\" and \"max\".\n */\n private increment = 1;\n\n _value = 1;\n\n get value() {\n return this._value;\n }\n set value(value) {\n this._value = value;\n this.ngControl.control.patchValue(this._value);\n this.changeDetectorRef.markForCheck();\n }\n\n constructor(public ngControl: NgControl, private changeDetectorRef: ChangeDetectorRef) {}\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e) {\n this.value = e.target.value;\n }\n\n get focused() {\n return this.select.focused;\n }\n\n focus() {\n this.select.focus();\n }\n\n /**\n * A helper function for easily making options for the `select`.\n */\n get valueArray() {\n return makeValueArray(this.min, this.max, this.increment);\n }\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n Optional,\n Self,\n ViewChild,\n ChangeDetectorRef,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n NgControl,\n} from '@angular/forms';\n\nimport { DaffFormFieldControl } from '../form-field/form-field-control';\nimport { DaffQuantityInputComponent } from './quantity-input/quantity-input.component';\nimport { DaffQuantitySelectComponent } from './quantity-select/quantity-select.component';\n\n@Component({\n selector: 'daff-quantity-field',\n templateUrl: './quantity-field.component.html',\n providers: [\n {\n provide: DaffFormFieldControl,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: DaffQuantityFieldComponent,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffQuantityFieldComponent implements ControlValueAccessor, DaffFormFieldControl {\n\n @ViewChild(DaffQuantityInputComponent) input: DaffQuantityInputComponent;\n @ViewChild(DaffQuantitySelectComponent) select: DaffQuantitySelectComponent;\n\n /**\n * @docs\n * The minimum valid value of the quantity field.\n * Must be greater than or equal to 1.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum valid value of the quantity field.\n * Must be greater than min.\n */\n @Input() max = 500;\n\n /**\n * @docs\n * The range of numbers acceptable in a quantity dropdown\n * before it becomes an input element.\n */\n @Input() selectMax = 10;\n\n focused = false;\n disabled = false;\n private _quantity = 1;\n private _inputHasBeenShown = false;\n\n get quantity() {\n return this._quantity;\n }\n set quantity(value: number) {\n this._quantity = coerceNumberProperty(value, 1);\n }\n\n /**\n * Returns the lesser of max and selectMax.\n */\n get _maxFloor(): number {\n return Math.min(this.max, this.selectMax);\n }\n\n get controlType() {\n // TODO: use enum\n return this.showInputField\n ? 'native-input'\n : 'native-select';\n }\n\n get showInputField(): boolean {\n const ret = this._inputHasBeenShown || (this.ngControl\n ? this.ngControl.value >= this.selectMax\n : this.quantity >= this.selectMax);\n\n if (ret) {\n this._inputHasBeenShown = true;\n }\n\n return ret;\n }\n\n get showSelectField(): boolean {\n return !this.showInputField;\n }\n\n constructor(\n @Optional() @Self() public ngControl: NgControl,\n private cd: ChangeDetectorRef,\n ) {\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n private onChange(quantity: number): void {};\n private onTouched(quantity: number): void {};\n\n writeValue(quantity: number): void {\n this.quantity = quantity;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: (quantity: number) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n focus() {\n if(this.select) {\n this.select.focus();\n }\n if(this.input) {\n this.input.focus();\n }\n this.focused = true;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { DaffInputModule } from '../input/public_api';\nimport { DaffNativeSelectModule } from '../select/public_api';\nimport { DaffQuantityFieldComponent } from './quantity-field.component';\nimport { DaffQuantityInputComponent } from './quantity-input/quantity-input.component';\nimport { DaffQuantitySelectComponent } from './quantity-select/quantity-select.component';\n\n@NgModule({\n declarations: [\n DaffQuantityFieldComponent,\n DaffQuantityInputComponent,\n DaffQuantitySelectComponent,\n ],\n imports: [\n CommonModule,\n DaffNativeSelectModule,\n DaffInputModule,\n ReactiveFormsModule,\n ],\n exports: [\n DaffQuantityFieldComponent,\n DaffQuantityInputComponent,\n DaffQuantitySelectComponent,\n ],\n})\nexport class DaffQuantityFieldModule { }\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n HostBinding,\n ElementRef,\n Renderer2,\n} from '@angular/core';\n\nimport {\n DaffSizeAllType,\n DaffSizeable,\n} from '../../core/sizeable/sizeable';\nimport { daffSizeMixin } from '../../core/sizeable/sizeable-mixin';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Sizeable mixin\n */\nclass DaffContainerBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffContainerBase = daffSizeMixin(DaffContainerBase);\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-container',\n styleUrls: ['./container.component.scss'],\n template: '<ng-content></ng-content>',\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['size'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffContainerComponent extends _daffContainerBase implements DaffSizeable<DaffSizeAllType> {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-container') class = true;\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffContainerComponent } from './container.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffContainerComponent,\n ],\n exports: [\n DaffContainerComponent,\n ],\n})\nexport class DaffContainerModule { }\n","import {\n Component,\n ChangeDetectionStrategy,\n Input,\n ElementRef,\n Renderer2,\n HostBinding,\n} from '@angular/core';\n\nimport {\n daffColorMixin,\n DaffColorable,\n DaffPalette,\n} from '../../core/colorable/public_api';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffLoadingIconBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffLoadingIconBase = daffColorMixin(DaffLoadingIconBase, 'primary');\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-loading-icon',\n templateUrl: './loading-icon.component.html',\n styleUrls: ['./loading-icon.component.scss'],\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffLoadingIconComponent extends _daffLoadingIconBase implements DaffColorable {\n\n /**\n * The (pixel) diameter of the animation\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() diameter: number = 60;\n\n\t/**\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-loading-icon') class = true;\n\t/**\n\t * @docs-private\n\t */\n @HostBinding('style.max-width') get maxWidth() {\n\t return this.diameter + 'px';\n\t}\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffLoadingIconComponent } from './loading-icon.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffLoadingIconComponent,\n ],\n exports: [\n DaffLoadingIconComponent,\n ],\n})\nexport class DaffLoadingIconModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffProgressIndicatorAnimation: {\n readonly fill: AnimationTriggerMetadata;\n } = {\n fill: trigger('fill', [\n state('*', style({ width: '{{ percentage }}%' }), { params: { percentage: 0 }}),\n transition('* <=> *', animate(1000)),\n ]),\n };\n","import { AnimationEvent } from '@angular/animations';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n ElementRef,\n Output,\n EventEmitter,\n Renderer2,\n HostBinding,\n} from '@angular/core';\n\nimport {\n daffColorMixin,\n DaffColorable,\n DaffPalette,\n} from '../../core/colorable/public_api';\nimport { daffProgressIndicatorAnimation } from './animation/progress-indicator-animation';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffProgressIndicatorBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffProgressIndicatorBase = daffColorMixin(DaffProgressIndicatorBase, 'primary');\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-progress-indicator',\n templateUrl: './progress-indicator.component.html',\n styleUrls: ['./progress-indicator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n animations: [\n daffProgressIndicatorAnimation.fill,\n ],\n})\nexport class DaffProgressIndicatorComponent extends _daffProgressIndicatorBase implements DaffColorable {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-progress-indicator') class = true;\n\n /**\n * The percentage completion of the progression,\n * expressed as a whole number between 0 and 100.\n *\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() percentage: number = 0;\n\n /**\n * An event that emits each time the progression reaches 100%\n * and the animation is finished\n */\n @Output() finished: EventEmitter<void> = new EventEmitter();\n\n\n /**\n * Calculates when the progress animation is fully completed\n *\n * @param event: AnimationEvent\n */\n onAnimationComplete(event: AnimationEvent): void {\n // @ts-ignore: @angular/animations typing error on event.toState as string\n // See: https://github.com/angular/angular/issues/26507\n if(event.toState === '100' || event.toState === 100) {\n this.finished.emit();\n }\n }\n\n /**\n * @docs-private\n */\n get fillState(): any {\n return {\n value: this.percentage,\n params: {\n percentage: this.percentage,\n },\n };\n }\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffProgressIndicatorComponent } from './progress-indicator.component';\n\n@NgModule({\n declarations: [DaffProgressIndicatorComponent],\n imports: [\n CommonModule,\n ],\n exports: [DaffProgressIndicatorComponent],\n})\nexport class DaffProgressIndicatorModule { }\n","import {\n Component,\n HostBinding,\n Input,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-radio-set',\n templateUrl: './radio-set.component.html',\n styleUrls: ['./radio-set.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffRadioSetComponent {\n\n @Input() name: string;\n\n constructor() { }\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'radiogroup';\n\n}\n","import {\n Component,\n OnInit,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n forwardRef,\n Optional,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { DaffRadioSetComponent } from '../radio-set/radio-set.component';\n\nlet radioUniqueId = 0;\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'daff-radio',\n templateUrl: './radio.html',\n styleUrls: ['./radio.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffRadioComponent implements OnInit {\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'radio';\n /**\n * @docs-private\n */\n @HostBinding('class.focused') get focusClass() {\n return this.focused === true;\n };\n /**\n * @docs-private\n */\n @HostBinding('class.disabled') get disabledClass() {\n return this.disabled === true;\n };\n\n /**\n * @docs-private\n */\n _checked = false;\n /**\n * Output event of selection being changed\n */\n @Output() selectionChange: EventEmitter<boolean> = new EventEmitter();\n\n\n /**\n * The checked property of the radio\n */\n\t@Input()\n get checked() {\n return this._checked;\n }\n\tset checked(value: boolean) {\n\t if (this._checked !== value) {\n\t this._checked = value;\n\t this.selectionChange.emit(this.value);\n\t }\n\t}\n\t/**\n\t * The value of the radio\n\t */\n\t@Input() value: any;\n\t/**\n\t * The id of the radio. It is uniquely generated but can be overwritten by the user. Must be unique.\n\t */\n\t@Input() id: string = 'daff-radio-' + radioUniqueId;\n\n\t/**\n\t * Name of the Radio\n\t */\n\t@Input() name = '';\n\n /**\n * Used for aria-label. Default to name if user does not input a label.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-label') label: string = this.name;\n\n /**\n * Used for aria-labelledby.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-labelledby') labelledby: string;\n\n\n disabled = false;\n focused = false;\n\n constructor(@Optional() private radioset: DaffRadioSetComponent) {\n radioUniqueId++;\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this.name = this.radioset ? this.radioset.name : this.name;\n }\n\n /**\n * updates Focus styling\n */\n onFocus() {\n this.focused = true;\n }\n /**\n * updates Blur styling\n */\n onBlur() {\n this.focused = false;\n }\n /**\n * toggles checked attribute on\n */\n select(): void {\n this.checked = true;\n }\n /**\n * toggles checked attribute off\n */\n deselect(): void {\n this.checked = false;\n }\n onChange() {\n this.select();\n };\n}\n","import { Injectable } from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffRadioControlValueAccessorDirective } from '../cva/radio-cva.directive';\n\nexport interface ControlAccessorPair {\n control: NgControl;\n accessor: DaffRadioControlValueAccessorDirective;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class DaffRadioRegistry {\n private _accessors: ControlAccessorPair[] = [];\n\n /**\n * @description\n * Adds a control to the internal registry.\n */\n add(control: NgControl, accessor: DaffRadioControlValueAccessorDirective) {\n this._accessors.push({\n control,\n accessor,\n });\n }\n\n /**\n * @description\n * Removes a control from the internal registry.\n */\n remove(accessor: DaffRadioControlValueAccessorDirective) {\n for (let i = this._accessors.length - 1; i >= 0; --i) {\n if (this._accessors[i]['accessor'] === accessor) {\n this._accessors.splice(i, 1);\n return;\n }\n }\n }\n\n /**\n * @description\n * Selects a radio button.\n */\n select(accessor: DaffRadioControlValueAccessorDirective) {\n this._accessors.forEach((c) => {\n if (this._isSameGroup(c, accessor) && c['accessor'] !== accessor) {\n c['accessor'].fireDeselect();\n }\n });\n }\n\n private _isSameGroup(\n controlPair: ControlAccessorPair,\n accessor: DaffRadioControlValueAccessorDirective): boolean {\n if (!controlPair['control'].control) {\n return false;\n }\n return controlPair['control'].control.parent === accessor._control.control.parent\n && controlPair['accessor'].name === accessor.name;\n }\n}\n","import {\n Directive,\n Input,\n OnInit,\n Self,\n Optional,\n forwardRef,\n} from '@angular/core';\nimport {\n NgControl,\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n} from '@angular/forms';\n\nimport { DaffRadioComponent } from '../radio.component';\nimport { DaffRadioRegistry } from '../registry/radio-registry';\n\n/**\n * ControlValueAccessor functionality for the DaffRadio\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'daff-radio[ngModel], daff-radio[formControl], daff-radio[formControlName]',\n})\nexport class DaffRadioControlValueAccessorDirective implements OnInit, ControlValueAccessor {\n _onChange: () => void;\n _onTouched: () => void;\n\n /**\n * The value of the ControlValueAccessor\n */\n @Input() value: any;\n\n /**\n * The name of the ControlValueAccessor\n */\n @Input() name: string;\n\n constructor(\n @Optional() @Self() public _control: NgControl,\n private _registry: DaffRadioRegistry,\n private _radio: DaffRadioComponent,\n ) {\n if (this._control != null) {\n this._control.valueAccessor = this;\n }\n }\n\n ngOnInit(): void {\n this.writeValue(this._control.value);\n this._registry.add(this._control, this);\n\n this._radio.selectionChange.subscribe(\n value => value ? this._onChange() : null,\n );\n }\n /**\n *\n * writeValue function from the CVA interface\n */\n writeValue(value: any): void {\n // the this._onChange null check here is necessary because of an ongoing bug in angular forms\n // where writeValue can be called before the component initializes: https://github.com/angular/angular/issues/29218\n if (this.value === value && this._onChange) {\n this._onChange();\n this.fireSelect();\n }\n }\n\n /**\n * registerOnChange implemented from the CVA interface\n */\n registerOnChange(fn: any): void {\n this._onChange = () => {\n fn(this.value);\n this._registry.select(this);\n };\n }\n\n /**\n * registerOnTouch implemented from the CVA interface\n */\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n /**\n * sets the disabled state.\n */\n setDisabledState?(isDisabled: boolean): void {\n this._radio.disabled = isDisabled;\n }\n\n /**\n calls select function for the radio\n */\n fireSelect() {\n this._radio.select();\n }\n\n /**\n calls deselect function for the radio\n */\n fireDeselect() {\n this._radio.deselect();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffRadioSetComponent } from '../radio-set/radio-set.component';\nimport { DaffRadioControlValueAccessorDirective } from './cva/radio-cva.directive';\nimport { DaffRadioComponent } from './radio.component';\n\n\n\n@NgModule({\n exports:[\n DaffRadioComponent,\n DaffRadioSetComponent,\n DaffRadioControlValueAccessorDirective,\n\n ],\n declarations: [\n DaffRadioControlValueAccessorDirective,\n DaffRadioComponent,\n DaffRadioSetComponent,\n ],\n imports: [\n CommonModule,\n ],\n})\nexport class DaffRadioModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffAccordionItemContent]',\n})\nexport class DaffAccordionItemContentDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-accordion-item__content') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffAccordionItemTitle]',\n})\nexport class DaffAccordionItemTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-accordion-item__title') class = true;\n}\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffAccordionAnimations: {\n readonly openAccordion: AnimationTriggerMetadata;\n} = {\n openAccordion: trigger('openAccordion', [\n state('open', style({\n visibility: 'visible',\n opacity: '1',\n height: '*',\n })),\n state('void',style({\n visibility: 'hidden',\n overflow: 'hidden',\n opacity: '0',\n height: '0',\n })),\n transition('void <=> open',\n animate('150ms ease-in'),\n ),\n ]),\n};\n","export const getAnimationState = (open: boolean) => {\n if(open){\n return 'open';\n } else {\n return 'void';\n }\n};\n","import {\n Component,\n Input,\n OnInit,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\nimport {\n faChevronDown,\n faChevronUp,\n} from '@fortawesome/free-solid-svg-icons';\n\nimport { daffAccordionAnimations } from '../animation/accordion-animation';\nimport { getAnimationState } from '../animation/accordion-animation-state';\n\n@Component({\n selector: 'daff-accordion-item',\n templateUrl: './accordion-item.component.html',\n styleUrls: ['./accordion-item.component.scss'],\n encapsulation: ViewEncapsulation.None,\n animations: [\n daffAccordionAnimations.openAccordion,\n ],\n})\nexport class DaffAccordionItemComponent implements OnInit {\n\t/**\n\t * @docs-private\n\t */\n\tfaChevronDown = faChevronDown;\n\t/**\n\t * @docs-private\n\t */\n faChevronUp = faChevronUp;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-accordion-item') class = true;\n\n\t@Input() initiallyActive: boolean;\n\t/**\n\t * @docs-private\n\t */\n\t_open = false;\n\t/**\n\t * @docs-private\n\t */\n _animationState: string;\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this._open = this.initiallyActive ? this.initiallyActive : this._open;\n this._animationState = getAnimationState(this._open);\n }\n\n toggleActive() {\n this._open = !this._open;\n this._animationState = getAnimationState(this._open);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'daff-accordion',\n templateUrl: './accordion.component.html',\n styleUrls: ['./accordion.component.scss'],\n})\n\nexport class DaffAccordionComponent {\n\n}\n","import {\n Component,\n Input,\n OnInit,\n HostBinding,\n SkipSelf,\n Optional,\n ContentChildren,\n QueryList,\n} from '@angular/core';\nimport {\n faChevronDown,\n faChevronUp,\n} from '@fortawesome/free-solid-svg-icons';\n\nimport { DaffAccordionComponent } from '../accordion/accordion.component';\nimport { daffAccordionAnimations } from '../animation/accordion-animation';\nimport { getAnimationState } from '../animation/accordion-animation-state';\n\n@Component({\n selector: 'daff-nav-accordion-item',\n templateUrl: './nav-accordion-item.component.html',\n styleUrls: ['./nav-accordion-item.component.scss'],\n animations: [\n daffAccordionAnimations.openAccordion,\n ],\n})\nexport class DaffNavAccordionItemComponent implements OnInit {\n\n constructor(\n\t\tprivate accordion: DaffAccordionComponent,\n\t\t@SkipSelf() @Optional() private navAccordionItemParent: DaffNavAccordionItemComponent,\n ) {}\n\t/**\n\t * @docs-private\n\t */\n\tfaChevronDown = faChevronDown;\n\t/**\n\t * @docs-private\n\t */\n faChevronUp = faChevronUp;\n\n /**\n * @docs-private\n */\n\t@HostBinding('class') get classes() {\n return [\n 'daff-nav-accordion-item',\n 'daff-nav-accordion-item--level-' + this._level,\n ];\n }\n\n\t@Input() initiallyActive: boolean;\n\n\t@ContentChildren(DaffNavAccordionItemComponent, { descendants: true })\n\t_navAccordionItemChild: QueryList<DaffNavAccordionItemComponent>;\n\n\t/**\n\t * @docs-private\n\t */\n\t_open = false;\n\t/**\n\t * @docs-private\n\t */\n _animationState: string;\n\n\t/**\n\t * @docs-private\n\t */\n\t_level = 0;\n\n\t/**\n\t * @docs-private\n\t */\n\tngOnInit() {\n\t if(this.navAccordionItemParent && this.accordion === this.navAccordionItemParent.accordion) {\n\t this._level = this.navAccordionItemParent._level + 1;\n\t }\n\t this._open = this.initiallyActive ? this.initiallyActive : this._open;\n\t this._animationState = getAnimationState(this._open);\n\t}\n\n\ttoggleActive() {\n\t this._open = !this._open;\n\t this._animationState = getAnimationState(this._open);\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffPrefixSuffixModule } from '../../core/prefix-suffix/prefix-suffix.module';\nimport { DaffAccordionItemContentDirective } from './accordion-item-content/accordion-item-content.directive';\nimport { DaffAccordionItemTitleDirective } from './accordion-item-title/accordion-item-title.directive';\nimport { DaffAccordionItemComponent } from './accordion-item/accordion-item.component';\nimport { DaffAccordionComponent } from './accordion/accordion.component';\nimport { DaffNavAccordionItemComponent } from './nav-accordion-item/nav-accordion-item.component';\n\n@NgModule({\n imports: [\n CommonModule,\n\n FontAwesomeModule,\n DaffPrefixSuffixModule,\n ],\n declarations: [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffNavAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n DaffAccordionItemContentDirective,\n ],\n exports: [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffNavAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n DaffAccordionItemContentDirective,\n ],\n})\nexport class DaffAccordionModule { }\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\n\n/**\n * A component for creating articles within your page.\n */\n@Component({\n selector: 'daff-article',\n template: '<ng-content></ng-content>',\n styleUrls: ['./article.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffArticleComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article') class = true;\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'article';\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleLead]',\n})\nexport class DaffArticleLeadDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__lead') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleMeta]',\n})\nexport class DaffArticleMetaDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__meta') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleTitle]',\n})\nexport class DaffArticleTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__title') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffArticleLeadDirective } from './article-lead/article-lead.directive';\nimport { DaffArticleMetaDirective } from './article-meta/article-meta.directive';\nimport { DaffArticleTitleDirective } from './article-title/article-title.directive';\nimport { DaffArticleComponent } from './article/article.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffArticleComponent,\n DaffArticleTitleDirective,\n DaffArticleLeadDirective,\n DaffArticleMetaDirective,\n ],\n exports: [\n DaffArticleComponent,\n DaffArticleTitleDirective,\n DaffArticleLeadDirective,\n DaffArticleMetaDirective,\n ],\n})\nexport class DaffArticleModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst animationDuration = '350ms';\nconst backdropTransitionOut = 'cubic-bezier(0.4, 0.0, 1, 1)';\nconst backdropTransitionIn = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\n\nexport const daffBackdropAnimations: {\n readonly fadeBackdrop: AnimationTriggerMetadata;\n} = {\n fadeBackdrop: trigger('fadeBackdrop', [\n transition(':enter', [\n style({ opacity: 0 }),\n animate(animationDuration + ' ' + backdropTransitionIn, style({ opacity: 1 })),\n ]),\n transition(':leave', [\n animate(animationDuration + ' ' + backdropTransitionOut, style({ opacity: 0 })),\n ]),\n ]),\n};\n","import {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n HostListener,\n HostBinding,\n} from '@angular/core';\n\nimport { daffBackdropAnimations } from '../animation/backdrop-animation';\n\n@Component({\n selector: 'daff-backdrop',\n templateUrl: './backdrop.component.html',\n styleUrls: ['./backdrop.component.scss'],\n animations: [\n daffBackdropAnimations.fadeBackdrop,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffBackdropComponent {\n\n /**\n * Determines whether or not the backdrop is transparent.\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() transparent: boolean = false;\n\n /**\n * Boolean property that determines whether or not the\n * backdrop should fill up its containing window.\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() fullscreen: boolean = false;\n\n /**\n * Output event triggered when the backdrop is clicked.\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Animation hook for that controls the backdrops\n * entrance and fade animations.\n */\n @HostBinding('@fadeBackdrop')\n\n /**\n * @deprecated\n * Backdrop event that triggers when the backdrop element is clicked.\n */\n @HostListener('click')\n onBackdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffBackdropComponent } from './backdrop/backdrop.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffBackdropComponent,\n ],\n exports: [\n DaffBackdropComponent,\n ],\n entryComponents: [\n DaffBackdropComponent,\n ],\n})\nexport class DaffBackdropModule { }\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-button-set',\n template: '<ng-content></ng-content>',\n styleUrls: ['./button-set.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffButtonSetComponent {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-button-set') class = true;\n}\n","import { NgModule } from '@angular/core';\n\nimport { DaffButtonSetComponent } from './button-set.component';\n\n@NgModule({\n declarations: [\n DaffButtonSetComponent,\n ],\n exports: [\n DaffButtonSetComponent,\n ],\n})\nexport class DaffButtonSetModule { }\n","import {\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-image-gallery',\n templateUrl: './image-gallery.component.html',\n styleUrls: ['./image-gallery.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffImageGalleryComponent {}\n","import {\n Component,\n Input,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-gallery-image',\n templateUrl: './gallery-image.component.html',\n})\nexport class DaffGalleryImageComponent {\n @HostBinding('class.daff-image-gallery__daff-gallery-image--selected') @Input() selected: boolean;\n @HostBinding('class.daff-image-gallery__daff-gallery-image') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-image-list',\n template: '<ng-content></ng-content>',\n styleUrls: ['./image-list.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffImageListComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-image-list') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffImageListComponent } from './image-list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffImageListComponent,\n ],\n exports: [\n DaffImageListComponent,\n ],\n})\nexport class DaffImageListModule { }\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffImageListModule } from '../image-list/public_api';\nimport { DaffGalleryImageComponent } from './gallery-image/gallery-image.component';\nimport { DaffImageGalleryComponent } from './image-gallery/image-gallery.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DaffImageListModule,\n ],\n declarations: [\n DaffImageGalleryComponent,\n DaffGalleryImageComponent,\n ],\n exports: [\n DaffImageGalleryComponent,\n DaffGalleryImageComponent,\n ],\n})\nexport class DaffImageGalleryModule { }\n","import {\n Component,\n HostBinding,\n ViewEncapsulation,\n Input,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n/**\n * DaffLinkSetComponent is a component for displaying a two or more links.\n */\n@Component({\n selector: 'daff-link-set',\n template: '<ng-content></ng-content>',\n styleUrls: ['./link-set.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffLinkSetComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * A directive for adding a heading to a daff-link-set.\n */\n@Directive({\n selector: '[daffLinkSetHeading]',\n})\nexport class DaffLinkSetHeadingDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set__heading') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n HostBinding,\n} from '@angular/core';\n\n@Component ({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'a[daff-link-set-item]',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffLinkSetItemComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set__item') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * A directive for adding a subheading to a daff-link-set.\n */\n@Directive({\n selector: '[daffLinkSetSubheading]',\n})\nexport class DaffLinkSetSubheadingDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set__subheading') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffLinkSetHeadingDirective } from './link-set-heading/link-set-heading.directive';\nimport { DaffLinkSetItemComponent } from './link-set-item/link-set-item.component';\nimport { DaffLinkSetSubheadingDirective } from './link-set-subheading/link-set-subheading.directive';\nimport { DaffLinkSetComponent } from './link-set/link-set.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n DaffLinkSetComponent,\n DaffLinkSetHeadingDirective,\n DaffLinkSetSubheadingDirective,\n DaffLinkSetItemComponent,\n ],\n declarations: [\n DaffLinkSetComponent,\n DaffLinkSetHeadingDirective,\n DaffLinkSetSubheadingDirective,\n DaffLinkSetItemComponent,\n ],\n})\nexport class DaffLinkSetModule {}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n ContentChild,\n ElementRef,\n} from '@angular/core';\n\nimport {\n DaffPrefixDirective,\n DaffSuffixDirective,\n} from '../../../core/prefix-suffix/public_api';\n\n@Component({\n selector:\n 'daff-list-item' + ',' +\n 'a[daff-list-item]',\n templateUrl: './list-item.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffListItemComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-list-item') class = true;\n\n /**\n * @docs-private\n */\n @ContentChild(DaffPrefixDirective) _prefix: DaffPrefixDirective;\n /**\n * @docs-private\n */\n @ContentChild(DaffSuffixDirective) _suffix: DaffSuffixDirective;\n\n constructor(private elementRef: ElementRef) {}\n\n /**\n * Sets the role for a regular `<daff-list-item>` to listitem.\n *\n * @docs-private\n */\n @HostBinding('attr.role') get role() {\n return this._isAnchor() ? null : 'listitem';\n };\n\n private _getHostElement() {\n return this.elementRef.nativeElement;\n }\n\n /** Gets whether a list item has one of the given attributes. */\n private _isAnchor() {\n return this.elementRef.nativeElement.localName === 'a';\n }\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * @deprecated\n */\n@Directive({\n selector: '[daffListSubheader]',\n})\nexport class DaffListSubheaderDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-list__subheader') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n HostBinding,\n ElementRef,\n} from '@angular/core';\n\n/**\n * @deprecated\n * DaffListMode will be completely deprecated in v1.0.0\n * */\nexport type DaffListMode = 'multi-line' | 'link' | 'navigation' | undefined;\nexport enum DaffListModeEnum {\n Multiline = 'multi-line',\n Link = 'link',\n Navigation = 'navigation'\n}\n\nexport type DaffListType = 'daff-list' | 'daff-nav-list';\n\nenum DaffListTypeEnum {\n Default = 'daff-list',\n Nav = 'daff-nav-list'\n}\n\n@Component({\n selector:\n 'daff-list' + ',' +\n 'daff-nav-list',\n template: '<ng-content></ng-content>',\n styleUrls: ['./list.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffListComponent {\n /**\n * @deprecated\n * */\n @Input() mode: DaffListMode;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-list') get list() {\n return this.listType === DaffListTypeEnum.Default;\n }\n\n /**\n * @docs-private\n * @deprecated\n * */\n @HostBinding('class.daff-list--multi-line') get multiline() {\n return this.mode === DaffListModeEnum.Multiline;\n }\n\n /**\n * @docs-private\n * @deprecated\n * */\n @HostBinding('class.daff-list--link') get link() {\n return this.mode === DaffListModeEnum.Link;\n }\n\n /**\n * @docs-private\n * @deprecated\n * */\n @HostBinding('class.daff-list--navigation') get navigation() {\n return this.mode === DaffListModeEnum.Navigation;\n }\n\n /**\n * @docs-private\n */\n get listType(): DaffListType {\n return this._getHostElement().localName;\n }\n\n constructor(private elementRef: ElementRef) {}\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-nav-list') get nav() {\n return this.listType === DaffListTypeEnum.Nav;\n }\n\n /**\n * Sets the role for a `<daff-nav-list>` to navigation.\n *\n * @docs-private\n */\n @HostBinding('attr.role') get role() {\n return this.listType === DaffListTypeEnum.Nav ? 'navigation' : 'list';\n };\n\n private _getHostElement() {\n return this.elementRef.nativeElement;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffPrefixSuffixModule } from '../../core/prefix-suffix/prefix-suffix.module';\nimport { DaffListItemComponent } from './list-item/list-item.component';\nimport { DaffListSubheaderDirective } from './list-subheader/list-subheader.directive';\nimport { DaffListComponent } from './list/list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DaffPrefixSuffixModule,\n ],\n declarations: [\n DaffListComponent,\n DaffListSubheaderDirective,\n DaffListItemComponent,\n ],\n exports: [\n DaffListComponent,\n DaffListSubheaderDirective,\n DaffListItemComponent,\n DaffPrefixSuffixModule,\n ],\n})\nexport class DaffListModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffFadeAnimations: {\n\treadonly 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 CdkPortalOutlet,\n ComponentPortal,\n} from '@angular/cdk/portal';\nimport {\n Component,\n Output,\n EventEmitter,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewChild,\n HostListener,\n} from '@angular/core';\n\nimport { daffFadeAnimations } from '../animations/modal-animation';\nimport { getAnimationState } from '../animations/modal-animation-state';\n\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})\nexport class DaffModalComponent {\n\t/**\n\t * Dictates whether or not a modal is open or closed.\n\t */\n\t@Input() open = false;\n\n\t/**\n\t * The CDK Portal outlet used to portal content into the modal.\n\t */\n\t@ViewChild(CdkPortalOutlet, { static: true }) private _portalOutlet: CdkPortalOutlet;\n\n\t/**\n\t * Event fired when the close animation is completed.\n\t */\n\tanimationCompleted: EventEmitter<any> = new EventEmitter<any>();\n\n\t/**\n\t * Event fired when the close animation is completed.\n\t */\n\tclosedAnimationCompleted: EventEmitter<any> = new EventEmitter<\n\t\tany\n\t>();\n\n\t/**\n\t * Event fired when the backdrop is clicked\n\t * This is often used to close the modal\n\t */\n\thide: EventEmitter<void> = new EventEmitter<void>();\n\n\t/**\n\t * Hostbinding to set the default modal class on the host element\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-modal') modalClass = true;\n\n\t/**\n\t * Helper method to attach portable content to modal\n\t */\n\tattachContent(portal: ComponentPortal<any>): any {\n\t this._portalOutlet.attachComponentPortal(portal);\n\t}\n\n\t/**\n\t * Animation hook that controls the entrance and exit animations\n\t * of the modal\n\t */\n\t@HostBinding('@fade') get fadeState(): string {\n\t return getAnimationState(this.open);\n\t}\n\n\t/**\n\t * Animation event that can used to hook into when\n\t * animations are fully completed. We use this in the DaffModalService\n\t * to determine when to actually remove the dynamically rendered element from the DOM\n\t * so that the animation does not clip as the element is removed.\n\t */\n\t@HostListener('@fade.done', ['$event'])\n\tanimationDone(e: AnimationEvent) {\n\t this.animationCompleted.emit(e);\n\t if (e.toState === 'closed') {\n\t this.closedAnimationCompleted.emit(e);\n\t }\n\t}\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'daff-modal-actions',\n template: '<ng-content></ng-content>',\n styleUrls: ['./modal-actions.component.scss'],\n})\nexport class DaffModalActionsComponent { }\n","import {\n Component,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-content',\n template: '<ng-content></ng-content>',\n styleUrls: ['./modal-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalContentComponent {}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-header',\n template: '<ng-content></ng-content>',\n styleUrls: ['./modal-header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalHeaderComponent {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-header') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffModalTitle]',\n})\nexport class DaffModalTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-title') class = true;\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\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 { DaffModalComponent } from './modal/modal.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PortalModule,\n OverlayModule,\n ],\n exports: [\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n ],\n declarations: [\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n ],\n})\nexport class DaffModalModule { }\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} from '@angular/core';\n\nimport { DaffModal } from '../modal';\nimport { DaffModalModule } from '../modal.module';\nimport { DaffModalConfiguration } from '../modal/modal-config';\nimport { DaffModalComponent } from '../modal/modal.component';\n\n@Injectable({\n providedIn: DaffModalModule,\n})\nexport class DaffModalService {\n\tprivate _modals: DaffModal[] = [];\n\n\tconstructor(private overlay: Overlay) {}\n\n\tprivate defaultConfiguration: DaffModalConfiguration = {};\n\n\tprivate _attachModal(\n\t overlayRef: OverlayRef,\n\t): ComponentRef<DaffModalComponent> {\n\t const modal = overlayRef.attach(new ComponentPortal(DaffModalComponent));\n\t modal.instance.open = true;\n\t return modal;\n\t}\n\n\tprivate _attachModalContent(\n\t component: Type<any>,\n\t modal: ComponentRef<DaffModalComponent>,\n\t): void {\n\t modal.instance.attachContent(new ComponentPortal(component));\n\t}\n\n\tprivate _createOverlayRef(): OverlayRef {\n\t return this.overlay.create({\n\t hasBackdrop: true,\n\t positionStrategy: new GlobalPositionStrategy()\n\t .centerHorizontally()\n\t .centerVertically(),\n\t scrollStrategy: this.overlay.scrollStrategies.block(),\n\t });\n\t}\n\n\tprivate _removeModal(modal: DaffModal) {\n\t const index = this._modals.indexOf(modal);\n\t if (index === -1) {\n\t throw new Error(\n\t 'The Modal that you are trying to remove does not exist.',\n\t );\n\t }\n\n\t modal.overlay.dispose();\n\n\t this._modals = this._modals.filter(m => m !== modal);\n\t}\n\n\topen(\n\t component: Type<any>,\n\t configuration?: Partial<DaffModalConfiguration>,\n\t): DaffModal {\n\t const config = { ...this.defaultConfiguration, ...configuration };\n\t const _ref = this._createOverlayRef();\n\t const _modal = this._attachModal(_ref);\n\t const _attachedModal = this._attachModalContent(component, _modal);\n\n\t const modal: DaffModal = {\n\t modal: _modal,\n\t overlay: _ref,\n\t };\n\n\t this._modals.push(modal);\n\n\t _ref\n\t .backdropClick()\n\t .subscribe(() =>\n\t config.onBackdropClicked\n\t ? config.onBackdropClicked()\n\t : this.close(modal),\n\t );\n\t return modal;\n\t}\n\n\tclose(modal: DaffModal): void {\n\t modal.modal.instance.open = false;\n\t modal.overlay.detachBackdrop();\n\t modal.modal.instance.closedAnimationCompleted.subscribe(\n\t (e: AnimationEvent) => this._removeModal(modal),\n\t );\n\t}\n}\n","import {\n Component,\n Input,\n ElementRef,\n HostBinding,\n Renderer2,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\nimport {\n DaffColorable,\n DaffPalette,\n daffColorMixin,\n} from '../../core/colorable/public_api';\n\n/**\n * An _elementRef is needed for the Colorable mixin\n */\nclass DaffNavbarBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffNavbarBase = daffColorMixin(DaffNavbarBase);\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-navbar',\n styleUrls: ['./navbar.component.scss'],\n template: '<ng-content></ng-content>',\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffNavbarComponent extends _daffNavbarBase implements DaffColorable {\n\n @Input() shadowed = false;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-navbar--shadowed') get shadowClass() {\n return this.shadowed;\n };\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-navbar') hostClass = true;\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { DaffNavbarComponent } from './navbar.component';\n\n@NgModule({\n declarations: [\n DaffNavbarComponent,\n ],\n exports: [\n DaffNavbarComponent,\n ],\n})\nexport class DaffNavbarModule { }\n","export const DaffPaginatorNumberOfPagesErrorMessage = 'The numberOfPages in the daff-paginator must not be less than 1';\nexport const DaffPaginatorPageOutOfRangeErrorMessage = 'The numberOfPages in the daff-paginator should not be less than the currentPage';\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n HostBinding,\n ElementRef,\n OnChanges,\n ChangeDetectionStrategy,\n Renderer2,\n OnInit,\n} from '@angular/core';\nimport {\n faChevronRight,\n faChevronLeft,\n} from '@fortawesome/free-solid-svg-icons';\n\nimport {\n daffColorMixin,\n DaffPalette,\n DaffColorable,\n} from '../../core/colorable/public_api';\nimport {\n DaffPaginatorNumberOfPagesErrorMessage,\n DaffPaginatorPageOutOfRangeErrorMessage,\n} from './paginator-errors';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffPaginatorBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffPaginatorBase = daffColorMixin(DaffPaginatorBase);\n\nconst visiblePageRange = 2;\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-paginator',\n styleUrls: ['./paginator.component.scss'],\n templateUrl: './paginator.component.html',\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffPaginatorComponent extends _daffPaginatorBase implements OnChanges, DaffColorable {\n\n\t/**\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-paginator') class = true;\n\t/**\n\t * @docs-private\n\t */\n @HostBinding('attr.role') role = 'navigation';\n\n\t/**\n\t * @docs-private\n\t */\n\tfaChevronRight = faChevronRight;\n\t/**\n\t * @docs-private\n\t */\n faChevronLeft = faChevronLeft;\n\n\t/**\n\t * @docs-private\n\t */\n\t_paginatorId: string;\n\n\tconstructor(private elementRef: ElementRef, private renderer: Renderer2) {\n\t super(elementRef, renderer);\n\t const ariaLabel = elementRef.nativeElement.attributes['aria-label'];\n\t this._paginatorId = ariaLabel ? ariaLabel.nodeValue : null;\n\t}\n\n /**\n * The total number of pages the paginator tracks. This number can change dynamically, but the end user is responsible for keeping numberOfPages\n * and currentPage in sync. For example, if the numberOfPages is dynamically changed to a value less than the currentPage, the paginator will break.\n */\n @Input() numberOfPages: number;\n\n /**\n * The currently selected page.\n */\n @Input() currentPage: number;\n\n /**\n * @docs-private\n */\n _numberOfPagesArray: number[];\n\n /**\n * Emits when the current page changes with the new current page.\n */\n @Output() notifyPageChange: EventEmitter<any> = new EventEmitter();\n\n /**\n * @docs-private\n */\n ngOnChanges() {\n if(this.numberOfPages < 1) {\n throw new Error(DaffPaginatorNumberOfPagesErrorMessage);\n } else if(this.numberOfPages < this.currentPage) {\n throw new Error(DaffPaginatorPageOutOfRangeErrorMessage);\n }\n\n this._numberOfPagesArray = this.numberOfPages < 2 ? [] : Array(this.numberOfPages-2).fill(this.numberOfPages-2).map((x,i)=>i+2);\n }\n\n /**\n * Emits the previous page number through notifyPageChange Output.\n *\n * @docs-private\n */\n _onNotifyPrevPageChange() {\n this.notifyPageChange.emit(this.currentPage - 1);\n }\n\n /**\n * Emits the next page number through notifyPageChange Output.\n *\n * @docs-private\n */\n _onNotifyNextPageChange() {\n this.notifyPageChange.emit(this.currentPage + 1);\n }\n\n /**\n * Emits a pageNumber to notifyPageChange Output.\n *\n * @docs-private\n * @param pageNumber a page number\n */\n _onNotifyPageChange(pageNumber: number) {\n this.notifyPageChange.emit(pageNumber);\n }\n\n /**\n * A simple function that determines if the given page number is the current page number.\n *\n * @docs-private\n * @param page a page number\n */\n _isSelected(page: number): boolean {\n return page === this.currentPage;\n }\n\n /**\n * Determines when ellipsis after the first page number should show.\n *\n * @docs-private\n */\n _showFirstEllipsis(): boolean {\n return this.currentPage >= visiblePageRange+2;\n }\n\n /**\n * Determines when ellipsis before the final page number should show.\n *\n * @docs-private\n */\n _showLastEllipsis(): boolean {\n return this.currentPage < (this.numberOfPages - visiblePageRange);\n }\n\n /**\n * Determines if the given page number should be shown. The two additional 'or' conditionals are needed\n * so the paginator retains the same total width at the extreme page numbers (1 and numberOfPages).\n *\n * @docs-private\n * @param pageNumber page number to check.\n */\n _showNumber(pageNumber: number): boolean {\n return Math.abs(this.currentPage - pageNumber) < visiblePageRange\n || (this.currentPage <= visiblePageRange && pageNumber <= 2*visiblePageRange)\n || (this.currentPage > this.numberOfPages - visiblePageRange && pageNumber > this.numberOfPages - 2*visiblePageRange);\n }\n\n /**\n * Determines when the Previous button should be disabled.\n *\n * @docs-private\n */\n _disablePrev(): boolean {\n return this.currentPage === 1;\n }\n\n /**\n * Determines when the Next button should be disabled.\n *\n * @docs-private\n */\n _disableNext(): boolean {\n return this.currentPage === this.numberOfPages;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffButtonModule } from '../../atoms/button/public_api';\nimport { DaffPaginatorComponent } from './paginator.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FontAwesomeModule,\n DaffButtonModule,\n ],\n declarations: [\n DaffPaginatorComponent,\n ],\n exports: [\n DaffPaginatorComponent,\n ],\n})\nexport class DaffPaginatorModule {}\n","import {\n Component,\n OnInit,\n Input,\n Renderer2,\n Output,\n EventEmitter,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-qty-dropdown',\n styleUrls: ['./qty-dropdown.component.scss'],\n templateUrl: './qty-dropdown.component.html',\n})\nexport class DaffQtyDropdownComponent implements OnInit {\n\n private readonly dropdownRange = 9;\n\n @Input() qty: number;\n @Input() id: number | string;\n @Output() qtyChanged: EventEmitter<number> = new EventEmitter<number>();\n\n\t/**\n\t * @docs-private\n\t */\n\tdropdownItemCounter: number[];\n\t/**\n\t * @docs-private\n\t */\n\tinputHasBeenShown: boolean;\n\t/**\n\t * @docs-private\n\t */\n\tonChange = (qty: number) => {};\n\t/**\n\t * @docs-private\n\t */\n onTouched = () => {};\n\n constructor(private renderer: Renderer2) { }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this.dropdownItemCounter = Array.from(Array(this.dropdownRange),(x,i)=>i);\n\n if (!this.qty) {\n this.qty = 1;\n }\n }\n\n /**\n * @docs-private\n */\n writeValue(qty: number): void {\n this.qty = qty;\n this.onChange(this.qty);\n }\n\n /**\n * @docs-private\n */\n registerOnChange(fn: (qty: number) => void): void {\n this.onChange = fn;\n }\n\n /**\n * @docs-private\n */\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n /**\n * @docs-private\n */\n setDisabledState(isDisabled: boolean): void {\n if (this.inputHasBeenShown) {\n this.renderer.setProperty(document.getElementById('input_' + this.id), 'disabled', isDisabled);\n } else {\n this.renderer.setProperty(document.getElementById('select_' + this.id), 'disabled', isDisabled);\n }\n }\n\n /**\n * @docs-private\n */\n get showQtyInputField(): boolean {\n if (!this.isQtyOutsideDropdownRange() && !this.inputHasBeenShown) {\n return false;\n } else {\n this.inputHasBeenShown = true;\n return true;\n }\n }\n\n /**\n * @docs-private\n */\n onChangedWrapper(value: any) {\n value = parseInt(value, 10);\n if (value === 10) {\n this.selectInput();\n }\n this.qtyChanged.emit(value);\n this.onChange(value);\n }\n\n private isQtyOutsideDropdownRange() {\n return this.qty > this.dropdownRange;\n }\n\n private selectInput() {\n const that = this;\n setTimeout(() => {\n const input = <HTMLInputElement>document.getElementById('input_' + that.id);\n input.select();\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { DaffFormFieldModule } from '../../atoms/form/form-field/form-field.module';\nimport { DaffInputModule } from '../../atoms/form/input/input.module';\nimport { DaffNativeSelectModule } from '../../atoms/form/select/select.module';\nimport { DaffQtyDropdownComponent } from './qty-dropdown.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DaffFormFieldModule,\n DaffNativeSelectModule,\n DaffInputModule,\n ],\n declarations: [\n DaffQtyDropdownComponent,\n ],\n exports: [\n DaffQtyDropdownComponent,\n ],\n})\nexport class DaffQtyDropdownModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst duration = '350ms';\nconst sidebarAnimateRemainTransition = 'cubic-bezier(0.4, 0.0, 0.2, 1)';\nconst sidebarAnimateInTransition = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\nconst sidebarAnimateOutTransition = 'cubic-bezier(0.4, 0.0, 1, 1)';\n\nexport const daffSidebarAnimations: {\n readonly transformSidebar: AnimationTriggerMetadata;\n readonly transformContent: AnimationTriggerMetadata;\n } = {\n transformSidebar: trigger('transformSidebar', [\n // We remove the `transform` here completely, rather than setting it to zero, because:\n // 1. 3d transforms causes text to appear blurry on IE and Edge.\n state('open', style({\n transform: 'none',\n visibility: 'visible',\n })),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n transformContent: trigger('transformContent', [\n state('closed', style({\n transform: 'none',\n })),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n };\n\nexport enum DaffSidebarAnimationStates {\n OPEN = 'open',\n CLOSED = 'closed'\n}\n","export const getAnimationState = (open: boolean, enabled: boolean = true) => {\n if(!enabled){\n return 'open';\n }\n if(open && enabled){\n return 'open';\n } else {\n return 'closed';\n }\n};\n","import {\n Component,\n ViewEncapsulation,\n NgZone,\n ElementRef,\n Output,\n EventEmitter,\n HostBinding,\n} from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\n/**\n * DaffSidebar is heavily based upon the work done by the @angular/material2\n * team on `mat-drawer` and `mat-sidenav`. `daff-sidebar` is intended to be\n * a simplified version (with a different design) of `mat-drawer` which\n * follows a stricter \"dumb\" component pattern than `mat-drawer`\n */\n@Component({\n selector: 'daff-sidebar',\n styleUrls: ['./sidebar.component.scss'],\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffSidebarComponent {\n @HostBinding('class.daff-sidebar') class = true;\n /**\n * Event fired when `ESC` key is pressed when the sidebar has focus\n */\n @Output() escapePressed: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n ) {\n\n /**\n * Listen to `keydown` events outside the zone so that change detection is not run every\n * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed.\n *\n */\n this._ngZone.runOutsideAngular(() => {\n fromEvent<KeyboardEvent>(this._elementRef.nativeElement, 'keydown').pipe(\n filter(event => event.key === 'Escape'),\n ).subscribe(event => this._ngZone.run(() => {\n this.escapePressed.emit();\n event.stopPropagation();\n }));\n });\n }\n}\n","import {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n OnInit,\n ContentChild,\n ChangeDetectorRef,\n AfterViewInit,\n} from '@angular/core';\n\nimport { daffSidebarAnimations } from '../animation/sidebar-animation';\nimport { getAnimationState } from '../animation/sidebar-animation-state';\nimport { DaffSidebarMode } from '../helper/sidebar-mode';\nimport { DaffSidebarComponent } from '../sidebar/sidebar.component';\n\n@Component({\n selector: 'daff-sidebar-viewport',\n templateUrl: './sidebar-viewport.component.html',\n styleUrls: ['./sidebar-viewport.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n daffSidebarAnimations.transformSidebar,\n daffSidebarAnimations.transformContent,\n ],\n})\nexport class DaffSidebarViewportComponent implements OnInit, AfterViewInit {\n\n constructor(private ref: ChangeDetectorRef) {\n }\n /**\n * @docs-private\n */\n _animationState: string;\n\n /**\n * @docs-private\n */\n @ContentChild(DaffSidebarComponent) sidebar: DaffSidebarComponent;\n /**\n * Internal tracking variable for the state of sidebar viewport.\n *\n * @docs-private\n */\n _opened = false;\n\n /**\n * @docs-private\n */\n _mode: DaffSidebarMode = 'side';\n\n /**\n * The mode to put the sidebar in\n */\n @Input()\n get mode(): DaffSidebarMode {\n return this._mode;\n }\n set mode(value: DaffSidebarMode) {\n this._mode = value;\n this._animationState = getAnimationState(this.opened, this.animationsEnabled);\n }\n\n /**\n * Input state for whether or not the backdrop is\n * \"visible\" to the human eye\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() backdropIsVisible: boolean = true;\n\n\t/**\n\t * Property for the \"opened\" state of the sidebar\n\t */\n\t@Input()\n get opened(): boolean {\n return this._opened;\n }\n\tset opened(value: boolean) {\n\t this._opened = value;\n\t this._animationState = getAnimationState(value, this.animationsEnabled);\n\t}\n /**\n * Event fired when the backdrop is clicked\n * This is often used to close the sidebar\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * @docs-private\n */\n get animationsEnabled(): boolean {\n return (this.mode === 'over' || this.mode === 'push') ? true : false;\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this._animationState = getAnimationState(this.opened, this.animationsEnabled);\n }\n\n /**\n * @docs-private\n */\n ngAfterViewInit() {\n if (this.sidebar) {\n this.sidebar.escapePressed.subscribe(() => {\n this.onEscape();\n });\n }\n }\n\n /**\n * @docs-private\n */\n _backdropClicked(): void {\n this.backdropClicked.emit();\n }\n\n /**\n * @docs-private\n */\n get hasBackdrop(): boolean {\n return (this.mode === 'over' || this.mode === 'push');\n }\n\n /**\n * @docs-private\n */\n onEscape() {\n if (this.hasBackdrop) {\n this.opened = false;\n this.ref.markForCheck();\n }\n }\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffBackdropModule } from '../backdrop/backdrop.module';\nimport { DaffSidebarViewportComponent } from './sidebar-viewport/sidebar-viewport.component';\nimport { DaffSidebarComponent } from './sidebar/sidebar.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n DaffBackdropModule,\n A11yModule,\n ],\n declarations: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n ],\n exports: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n ],\n})\nexport class DaffSidebarModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffHeroSubtitle]',\n})\n\nexport class DaffHeroSubtitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-hero__subtitle') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffHeroTagline]',\n})\n\nexport class DaffHeroTaglineDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-hero__tagline') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffHeroTitle]',\n})\n\nexport class DaffHeroTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-hero__title') class = true;\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { DaffTextAlignment } from './text-alignable';\n\ninterface HasElementRef {\n _elementRef: ElementRef;\n _renderer: Renderer2;\n}\n\nexport function\ndaffTextAlignmentMixin<T extends Constructor<HasElementRef>>(Base: T, defaultTextAlignment?: DaffTextAlignment) {\n class DaffTextAlignableMixin extends Base {\n // TODO move this back to private in Typescript 3.1\n _textAlignment: DaffTextAlignment;\n\n /**\n * Controls text alignment for component-specific UI\n */\n @Input()\n get textAlignment(): DaffTextAlignment {\n return this._textAlignment;\n }\n set textAlignment(value: DaffTextAlignment) {\n // Handles the default text alignment\n const incomingTextAlignment = value || defaultTextAlignment;\n\n if (incomingTextAlignment === this._textAlignment) { // Only run the dom-render if a change occurs\n return;\n }\n\n // Removes the old text alignment\n if (this._textAlignment) {\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._textAlignment}`);\n }\n\n if (incomingTextAlignment) {\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingTextAlignment}`);\n }\n\n this._textAlignment = incomingTextAlignment;\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.textAlignment = defaultTextAlignment;\n }\n };\n return DaffTextAlignableMixin;\n}\n","import {\n Component,\n ViewEncapsulation,\n Input,\n ElementRef,\n ChangeDetectionStrategy,\n HostBinding,\n Renderer2,\n} from '@angular/core';\n\nimport {\n DaffPalette,\n daffColorMixin,\n DaffColorable,\n} from '../../../core/colorable/public_api';\nimport {\n DaffTextAlignable,\n DaffTextAlignment,\n} from '../../../core/text-alignable/text-alignable';\nimport { daffTextAlignmentMixin } from '../../../core/text-alignable/text-alignable-mixin';\n\n// DaffHeroLayout will be deprecated in v1.0.0\nexport type DaffHeroLayout = 'centered' | undefined;\nexport enum DaffHeroLayoutEnum {\n Centered = 'centered'\n}\n\n// DaffHeroSize will be deprecated in v1.0.0 and replaced with a DaffCompactable interface\nexport type DaffHeroSize = 'compact' | 'small' | undefined;\nexport enum DaffHeroSizeEnum {\n Compact = 'compact',\n Small = 'small' // Small will be deprecated in v1.0.0\n}\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffHeroBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffHeroBase = daffColorMixin(daffTextAlignmentMixin(DaffHeroBase));\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-hero',\n template: '<ng-content></ng-content>',\n styleUrls: ['./hero.component.scss'],\n encapsulation: ViewEncapsulation.None,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'textAlignment'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffHeroComponent extends _daffHeroBase implements DaffColorable, DaffTextAlignable {\n\n @Input() layout: DaffHeroLayout; // Will be deprecated in v1.0.0\n @Input() size: DaffHeroSize; // Will be deprecated in v1.0.0\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n\n /**\n * @docs-private\n */\n\t@HostBinding('class.daff-hero') class = true;\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-hero--centered') get centered() {\n\t return this.layout === DaffHeroLayoutEnum.Centered;\n\t}\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-hero--small') get small() {\n\t return this.size === DaffHeroSizeEnum.Small;\n\t}\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-hero--compact') get compact() {\n\t return this.size === DaffHeroSizeEnum.Compact;\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffHeroSubtitleDirective } from './hero-subtitle/hero-subtitle.directive';\nimport { DaffHeroTaglineDirective } from './hero-tagline/hero-tagline.directive';\nimport { DaffHeroTitleDirective } from './hero-title/hero-title.directive';\nimport { DaffHeroComponent } from './hero/hero.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffHeroComponent,\n DaffHeroTaglineDirective,\n DaffHeroTitleDirective,\n DaffHeroSubtitleDirective,\n ],\n exports: [\n DaffHeroComponent,\n DaffHeroTaglineDirective,\n DaffHeroTitleDirective,\n DaffHeroSubtitleDirective,\n ],\n})\nexport class DaffHeroModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n @Directive({\n selector: '[daffCalloutSubtitle]',\n })\n\nexport class DaffCalloutSubtitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-callout__subtitle') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCalloutTagline]',\n})\n\nexport class DaffCalloutTaglineDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-callout__tagline') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCalloutTitle]',\n})\n\nexport class DaffCalloutTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-callout__title') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n Input,\n ElementRef,\n ChangeDetectionStrategy,\n HostBinding,\n Renderer2,\n} from '@angular/core';\n\nimport {\n DaffColorable,\n daffColorMixin,\n} from '../../../core/colorable/public_api';\nimport {\n DaffTextAlignable,\n DaffTextAlignment,\n} from '../../../core/text-alignable/text-alignable';\nimport { daffTextAlignmentMixin } from '../../../core/text-alignable/text-alignable-mixin';\n\n// DaffCalloutLayout will be deprecated in v1.0.0\nexport type DaffCalloutLayout = 'centered' | undefined;\nexport enum DaffCalloutLayoutEnum {\n Centered = 'centered'\n}\n\n// DaffCalloutSize will be deprecated in v1.0.0 and replaced with a DaffCompactable interface\nexport type DaffCalloutSize = 'compact' | undefined;\nexport enum DaffCalloutSizeEnum {\n Compact = 'compact'\n}\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffCalloutBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffCalloutBase = daffColorMixin(daffTextAlignmentMixin(DaffCalloutBase));\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-callout',\n template: '<ng-content></ng-content>',\n styleUrls: ['./callout.component.scss'],\n encapsulation: ViewEncapsulation.None,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'textAlignment'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffCalloutComponent extends _daffCalloutBase implements DaffColorable, DaffTextAlignable {\n @Input() layout: DaffCalloutLayout; // Will be deprecated in v1.0.0\n @Input() size: DaffCalloutSize; // Will be deprecated in v1.0.0\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n\n /**\n * @docs-private\n */\n\t@HostBinding('class.daff-callout') class = true;\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-callout--centered') get centered() {\n\t return this.layout === DaffCalloutLayoutEnum.Centered;\n\t}\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-callout--compact') get compact() {\n\t return this.size === DaffCalloutSizeEnum.Compact;\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffCalloutSubtitleDirective } from './callout-subtitle/callout-subtitle.directive';\nimport { DaffCalloutTaglineDirective } from './callout-tagline/callout-tagline.directive';\nimport { DaffCalloutTitleDirective } from './callout-title/callout-title.directive';\nimport { DaffCalloutComponent } from './callout/callout.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffCalloutComponent,\n DaffCalloutTitleDirective,\n DaffCalloutSubtitleDirective,\n DaffCalloutTaglineDirective,\n ],\n exports: [\n DaffCalloutComponent,\n DaffCalloutSubtitleDirective,\n DaffCalloutTitleDirective,\n DaffCalloutTaglineDirective,\n ],\n})\n\nexport class DaffCalloutModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive ({\n selector: '[daffFeatureIcon]',\n})\nexport class DaffFeatureIconDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__icon') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffFeatureSubheader]',\n})\nexport class DaffFeatureSubheaderDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__subheader') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffFeatureSubtitle]',\n})\nexport class DaffFeatureSubtitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__subtitle') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffFeatureTitle]',\n})\nexport class DaffFeatureTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__title') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n HostBinding,\n} from '@angular/core';\n\nexport type DaffFeatureMode = 'compact' | 'normal' | undefined;\nexport enum DaffFeatureModeEnum {\n Compact = 'compact',\n Normal = 'normal'\n}\n\n@Component({\n selector: 'daff-feature',\n templateUrl: './feature.component.html',\n styleUrls: ['./feature.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffFeatureComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature') class = true;\n\n @Input() mode: DaffFeatureMode = DaffFeatureModeEnum.Normal;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature--compact') get compact() {\n return this.mode === DaffFeatureModeEnum.Compact;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature--normal') get normal() {\n return this.mode === DaffFeatureModeEnum.Normal;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffFeatureIconDirective } from './feature-icon/feature-icon.directive';\nimport { DaffFeatureSubheaderDirective } from './feature-subheader/feature-subheader.directive';\nimport { DaffFeatureSubtitleDirective } from './feature-subtitle/feature-subtitle.directive';\nimport { DaffFeatureTitleDirective } from './feature-title/feature-title.directive';\nimport { DaffFeatureComponent } from './feature/feature.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffFeatureComponent,\n DaffFeatureTitleDirective,\n DaffFeatureSubtitleDirective,\n DaffFeatureIconDirective,\n DaffFeatureSubheaderDirective,\n ],\n exports: [\n DaffFeatureComponent,\n DaffFeatureTitleDirective,\n DaffFeatureSubtitleDirective,\n DaffFeatureIconDirective,\n DaffFeatureSubheaderDirective,\n ],\n})\nexport class DaffFeatureModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardActions]',\n})\nexport class DaffCardActionsDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__actions') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardImage]',\n})\nexport class DaffCardImageDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__image') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardTagline]',\n})\nexport class DaffCardTaglineDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__tagline') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardTitle]',\n})\nexport class DaffCardTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__title') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n HostBinding,\n ElementRef,\n Renderer2,\n Input,\n} from '@angular/core';\n\nimport {\n DaffColorable,\n DaffPalette,\n daffColorMixin,\n} from '../../../core/colorable/public_api';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffCardBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffCardBase = daffColorMixin(DaffCardBase);\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: '' +\n 'daff-card' + ',' +\n 'a[daff-card]',\n templateUrl: './card.component.html',\n styleUrls: ['./card.component.scss'],\n encapsulation: ViewEncapsulation.None,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffCardComponent extends _daffCardBase implements DaffColorable {\n\n @Input() raised = false;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card') class = true;\n\n @HostBinding('class.daff-card--raised') get raisedClass() {\n return this.raised;\n }\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffCardActionsDirective } from './card-actions/card-actions.directive';\nimport { DaffCardImageDirective } from './card-image/card-image.directive';\nimport { DaffCardTaglineDirective } from './card-tagline/card-tagline.directive';\nimport { DaffCardTitleDirective } from './card-title/card-title.directive';\nimport { DaffCardComponent } from './card/card.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffCardComponent,\n DaffCardTaglineDirective,\n DaffCardTitleDirective,\n DaffCardImageDirective,\n DaffCardActionsDirective,\n ],\n exports: [\n DaffCardComponent,\n DaffCardTaglineDirective,\n DaffCardTitleDirective,\n DaffCardImageDirective,\n DaffCardActionsDirective,\n ],\n})\nexport class DaffCardModule { }\n","/**\n * In order to be colorable, our class must implement this property\n */\nexport interface DaffColorable {\n color: DaffPalette;\n}\n\n/**\n * These are the valid options that can be passed to a DaffColorable component\n */\nexport type DaffPalette =\n 'primary' | 'secondary' | 'accent' | 'tertiary' | //TODO: damienwebdev Deprecate accent\n 'black' | 'white' |\n 'theme' | 'theme-contrast' | undefined;\n\n","export enum DaffBreakpoints {\n DESKTOP = '(min-width: 1920px)',\n\tLAPTOP = '(min-width: 1440px)',\n\tSMALL_LAPTOP = '(min-width: 1200px)',\n\tBIG_TABLET = '(min-width: 1024px)',\n\tTABLET = '(min-width: 768px)',\n\tMOBILE = '(min-width: 480px)',\n}\n","export interface DaffStatusable {\n\tstatus: DaffStatus;\n}\n\nexport type DaffStatus = 'warn' | 'danger' | 'success';\n\nexport enum DaffStatusEnum {\n Warn = 'warn',\n Danger = 'danger',\n Success = 'success'\n}\n","/**\n * An interface for giving a component the ability to display a skeleton/loading UI.\n * In order to be skeletonable, our class must implement this property.\n */\nexport interface DaffSkeletonable {\n\tskeleton: boolean;\n}\n","/**\n * An interface for giving a component the ability to display a mutating UI.\n * In order to be mutable, our class must implement this property.\n */\nexport interface DaffMutable {\n\tmutating: boolean;\n}\n","/**\n * An interface for giving a component the ability to customize text alignment for component-specific UI.\n * In order to be text alignable, a component class must implement this property.\n */\nexport interface DaffTextAlignable {\n\ttextAlignment: DaffTextAlignment;\n}\n\nexport type DaffTextAlignment = 'left' | 'center' | 'right';\n\nexport enum DaffTextAlignmentEnum {\n Left = 'left',\n Center = 'center',\n Right = 'right'\n}\n"],"names":["HasElementRef","getAnimationState"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design.js","sources":["../../../libs/design/src/core/colorable/colorable-enum.ts","../../../libs/design/src/core/colorable/color-in-palette.ts","../../../libs/design/src/core/colorable/colorable-mixin.ts","../../../libs/design/src/core/prefix-suffix/prefix.directive.ts","../../../libs/design/src/core/prefix-suffix/suffix.directive.ts","../../../libs/design/src/core/prefix-suffix/prefix-suffix.module.ts","../../../libs/design/src/core/prefix-suffix/suffixable/suffixable.ts","../../../libs/design/src/core/prefix-suffix/prefixable/prefixable.ts","../../../libs/design/src/core/sizeable/sizeable-mixin.ts","../../../libs/design/src/core/statusable/statusable-mixin.ts","../../../libs/design/src/atoms/button/button.component.ts","../../../libs/design/src/atoms/button/button.module.ts","../../../libs/design/src/atoms/form/core/error-state-matcher/error-state-matcher.ts","../../../libs/design/src/atoms/form/error-message/error-message.component.ts","../../../libs/design/src/atoms/form/error-message/error-message.module.ts","../../../libs/design/src/atoms/form/form-field/form-field-control.ts","../../../libs/design/src/atoms/form/form-field/form-field-errors.ts","../../../libs/design/src/atoms/form/form-field/form-field/form-field.component.ts","../../../libs/design/src/atoms/form/form-field/form-field.module.ts","../../../libs/design/src/molecules/media-gallery/media-gallery-token.ts","../../../libs/design/src/molecules/media-gallery/media-gallery.component.ts","../../../libs/design/src/molecules/media-gallery/registry/media-gallery.registry.ts","../../../libs/design/src/molecules/media-gallery/media-renderer/media-renderer.component.ts","../../../libs/design/src/molecules/media-gallery/thumbnail/thumbnail-compat.token.ts","../../../libs/design/src/molecules/media-gallery/thumbnail/thumbnail.directive.ts","../../../libs/design/src/molecules/media-gallery/media-gallery.module.ts","../../../libs/design/src/atoms/image/image.component.ts","../../../libs/design/src/atoms/image/image.module.ts","../../../libs/design/src/atoms/form/input/input.component.ts","../../../libs/design/src/atoms/form/input/input.module.ts","../../../libs/design/src/atoms/form/select/select/select.component.ts","../../../libs/design/src/atoms/form/select/select.module.ts","../../../libs/design/src/atoms/form/checkbox/checkbox.component.ts","../../../libs/design/src/atoms/form/checkbox-set/checkbox-set.component.ts","../../../libs/design/src/atoms/form/checkbox/cva/checkbox-cva.directive.ts","../../../libs/design/src/atoms/form/checkbox/checkbox.module.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-input/quantity-input.component.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-select/quantity-select.component.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-field.component.ts","../../../libs/design/src/atoms/form/quantity-field/quantity-field.module.ts","../../../libs/design/src/atoms/container/container.component.ts","../../../libs/design/src/atoms/container/container.module.ts","../../../libs/design/src/atoms/loading-icon/loading-icon.component.ts","../../../libs/design/src/atoms/loading-icon/loading-icon.module.ts","../../../libs/design/src/atoms/progress-indicator/animation/progress-indicator-animation.ts","../../../libs/design/src/atoms/progress-indicator/progress-indicator.component.ts","../../../libs/design/src/atoms/progress-indicator/progress-indicator.module.ts","../../../libs/design/src/atoms/form/radio-set/radio-set.component.ts","../../../libs/design/src/atoms/form/radio/radio.component.ts","../../../libs/design/src/atoms/form/radio/registry/radio-registry.ts","../../../libs/design/src/atoms/form/radio/cva/radio-cva.directive.ts","../../../libs/design/src/atoms/form/radio/radio.module.ts","../../../libs/design/src/molecules/accordion/accordion-item-content/accordion-item-content.directive.ts","../../../libs/design/src/molecules/accordion/accordion-item-title/accordion-item-title.directive.ts","../../../libs/design/src/molecules/accordion/animation/accordion-animation.ts","../../../libs/design/src/molecules/accordion/animation/accordion-animation-state.ts","../../../libs/design/src/molecules/accordion/accordion-item/accordion-item.component.ts","../../../libs/design/src/molecules/accordion/accordion/accordion.component.ts","../../../libs/design/src/molecules/accordion/nav-accordion-item/nav-accordion-item.component.ts","../../../libs/design/src/molecules/accordion/accordion.module.ts","../../../libs/design/src/molecules/article/article/article.component.ts","../../../libs/design/src/molecules/article/article-lead/article-lead.directive.ts","../../../libs/design/src/molecules/article/article-meta/article-meta.directive.ts","../../../libs/design/src/molecules/article/article-title/article-title.directive.ts","../../../libs/design/src/molecules/article/article.module.ts","../../../libs/design/src/molecules/backdrop/animation/backdrop-animation.ts","../../../libs/design/src/molecules/backdrop/backdrop/backdrop.component.ts","../../../libs/design/src/molecules/backdrop/backdrop.module.ts","../../../libs/design/src/molecules/button-set/button-set.component.ts","../../../libs/design/src/molecules/button-set/button-set.module.ts","../../../libs/design/src/molecules/image-gallery/image-gallery/image-gallery.component.ts","../../../libs/design/src/molecules/image-gallery/gallery-image/gallery-image.component.ts","../../../libs/design/src/molecules/image-list/image-list.component.ts","../../../libs/design/src/molecules/image-list/image-list.module.ts","../../../libs/design/src/molecules/image-gallery/image-gallery.module.ts","../../../libs/design/src/molecules/link-set/link-set/link-set.component.ts","../../../libs/design/src/molecules/link-set/link-set-heading/link-set-heading.directive.ts","../../../libs/design/src/molecules/link-set/link-set-item/link-set-item.component.ts","../../../libs/design/src/molecules/link-set/link-set-subheading/link-set-subheading.directive.ts","../../../libs/design/src/molecules/link-set/link-set.module.ts","../../../libs/design/src/molecules/list/list-item/list-item.component.ts","../../../libs/design/src/molecules/list/list-subheader/list-subheader.directive.ts","../../../libs/design/src/molecules/list/list/list.component.ts","../../../libs/design/src/molecules/list/list.module.ts","../../../libs/design/src/molecules/modal/animations/modal-animation.ts","../../../libs/design/src/molecules/modal/animations/modal-animation-state.ts","../../../libs/design/src/molecules/modal/modal/modal.component.ts","../../../libs/design/src/molecules/modal/modal-actions/modal-actions.component.ts","../../../libs/design/src/molecules/modal/modal-content/modal-content.component.ts","../../../libs/design/src/molecules/modal/modal-header/modal-header.component.ts","../../../libs/design/src/molecules/modal/modal-title/modal-title.directive.ts","../../../libs/design/src/molecules/modal/modal.module.ts","../../../libs/design/src/molecules/modal/service/modal.service.ts","../../../libs/design/src/molecules/navbar/navbar.component.ts","../../../libs/design/src/molecules/navbar/navbar.module.ts","../../../libs/design/src/molecules/paginator/paginator-errors.ts","../../../libs/design/src/molecules/paginator/paginator.component.ts","../../../libs/design/src/molecules/paginator/paginator.module.ts","../../../libs/design/src/molecules/qty-dropdown/qty-dropdown.component.ts","../../../libs/design/src/molecules/qty-dropdown/qty-dropdown.module.ts","../../../libs/design/src/molecules/sidebar/animation/sidebar-animation.ts","../../../libs/design/src/molecules/sidebar/animation/sidebar-animation-state.ts","../../../libs/design/src/molecules/sidebar/sidebar/sidebar.component.ts","../../../libs/design/src/molecules/sidebar/sidebar-viewport/sidebar-viewport.component.ts","../../../libs/design/src/molecules/sidebar/sidebar.module.ts","../../../libs/design/src/molecules/hero/hero-subtitle/hero-subtitle.directive.ts","../../../libs/design/src/molecules/hero/hero-tagline/hero-tagline.directive.ts","../../../libs/design/src/molecules/hero/hero-title/hero-title.directive.ts","../../../libs/design/src/core/text-alignable/text-alignable-mixin.ts","../../../libs/design/src/molecules/hero/hero/hero.component.ts","../../../libs/design/src/molecules/hero/hero.module.ts","../../../libs/design/src/molecules/callout/callout-subtitle/callout-subtitle.directive.ts","../../../libs/design/src/molecules/callout/callout-tagline/callout-tagline.directive.ts","../../../libs/design/src/molecules/callout/callout-title/callout-title.directive.ts","../../../libs/design/src/molecules/callout/callout/callout.component.ts","../../../libs/design/src/molecules/callout/callout.module.ts","../../../libs/design/src/molecules/feature/feature-icon/feature-icon.directive.ts","../../../libs/design/src/molecules/feature/feature-subheader/feature-subheader.directive.ts","../../../libs/design/src/molecules/feature/feature-subtitle/feature-subtitle.directive.ts","../../../libs/design/src/molecules/feature/feature-title/feature-title.directive.ts","../../../libs/design/src/molecules/feature/feature/feature.component.ts","../../../libs/design/src/molecules/feature/feature.module.ts","../../../libs/design/src/molecules/card/card-actions/card-actions.directive.ts","../../../libs/design/src/molecules/card/card-image/card-image.directive.ts","../../../libs/design/src/molecules/card/card-tagline/card-tagline.directive.ts","../../../libs/design/src/molecules/card/card-title/card-title.directive.ts","../../../libs/design/src/molecules/card/card/card.component.ts","../../../libs/design/src/molecules/card/card.module.ts","../../../libs/design/src/core/breakpoints/breakpoints.ts","../../../libs/design/src/core/constructor/constructor.ts","../../../libs/design/src/core/statusable/statusable.ts","../../../libs/design/src/core/text-alignable/text-alignable.ts","../../../libs/design/src/core/public_api.ts","../../../libs/design/src/public_api.ts","../../../libs/design/src/daffodil-design.ts"],"sourcesContent":["export enum DaffPaletteEnum {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n ACCENT = 'accent', //TODO: damienwebdev Deprecate accent\n TERTIARY = 'tertiary',\n BLACK = 'black',\n WHITE = 'white',\n THEME = 'theme',\n THEMECONTRAST = 'theme-contrast'\n}\n","import { DaffPaletteEnum } from './colorable-enum';\n\nexport function colorInPalette(color: string): boolean{\n return (<any>Object).values(DaffPaletteEnum).includes(color);\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { colorInPalette } from './color-in-palette';\nimport { DaffPalette } from './colorable';\n\ninterface HasElementRef {\n _elementRef: ElementRef;\n _renderer: Renderer2;\n}\n\n/**\n * This should be a trait, but typescript only supports mixins.\n * See: https://github.com/Microsoft/TypeScript/issues/311\n *\n * Turns out the material team followed the same path with the color mixin.\n * https://github.com/angular/material2/blob/master/src/lib/core/common-behaviors/color.ts\n */\nexport function\ndaffColorMixin<T extends Constructor<HasElementRef>>(Base: T, defaultColor?: DaffPalette) {\n class DaffColorableMixinClass extends Base {\n //TODO move this back to private in Typescript 3.1\n _color: DaffPalette;\n\n @Input()\n get color(): DaffPalette{\n return this._color;\n }\n set color(value: DaffPalette) {\n //Handle the default color\n const incomingColor = value || defaultColor;\n\n if(incomingColor !== undefined && !colorInPalette(incomingColor)){\n throw new TypeError(incomingColor + ' is not a valid color for the DaffPalette');\n }\n\n if(incomingColor !== this._color){ //Only run the dom-render if a change occurs\n //Remove the old color\n if(this._color){\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._color}`);\n }\n\n if(incomingColor){\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingColor}`);\n }\n\n this._color = incomingColor;\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.color = defaultColor;\n }\n };\n\n return DaffColorableMixinClass;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n *\n * Prefix can be used to place content before another piece of content in components like\n * `daff-form-field`, `daff-solo-field`, and `daff-list`.\n */\n@Directive({\n selector: '[daffPrefix]',\n})\n\nexport class DaffPrefixDirective {\n\n @HostBinding('class.daff-prefix') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n *\n * Prefix can be used to place content after another piece of content in components like\n * `daff-form-field`, `daff-solo-field`, and `daff-list`.\n */\n@Directive({\n selector: '[daffSuffix]',\n})\n\nexport class DaffSuffixDirective {\n\n @HostBinding('class.daff-suffix') class = true;\n}\n","import { NgModule } from '@angular/core';\n\nimport { DaffPrefixDirective } from './prefix.directive';\nimport { DaffSuffixDirective } from './suffix.directive';\n\n@NgModule({\n imports: [],\n exports: [\n DaffPrefixDirective,\n DaffSuffixDirective,\n ],\n declarations: [\n DaffPrefixDirective,\n DaffSuffixDirective,\n ],\n})\nexport class DaffPrefixSuffixModule {}\n","import {\n ContentChild,\n Directive,\n} from '@angular/core';\n\nimport { Constructor } from '../../../core/public_api';\nimport { DaffSuffixDirective } from '../suffix.directive';\n\n/**\n * A mixin for giving a component the ability to place content after another piece of content.\n */\nexport function daffSuffixableMixin<T extends Constructor>(Base: T) {\n @Directive()\n class SuffixableDirective extends Base {\n\n @ContentChild(DaffSuffixDirective, { static: true }) _suffix: DaffSuffixDirective;\n\n constructor(...args: any[]) {\n super(...args);\n }\n }\n\n return SuffixableDirective;\n}\n","import {\n ContentChild,\n Directive,\n} from '@angular/core';\n\nimport { Constructor } from '../../../core/public_api';\nimport { DaffPrefixDirective } from '../prefix.directive';\n\n/**\n * A mixin for giving a component the ability to place content before another piece of content.\n */\nexport function daffPrefixableMixin<T extends Constructor>(Base: T) {\n @Directive()\n class PrefixableDirective extends Base {\n\n @ContentChild(DaffPrefixDirective, { static: true }) _prefix: DaffPrefixDirective;\n\n constructor(...args: any[]) {\n super(...args);\n }\n }\n\n return PrefixableDirective;\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { DaffSizeAllType } from './sizeable';\n\nexport interface HasElementRef {\n\t_elementRef: ElementRef;\n\t_renderer: Renderer2;\n}\n\nexport function\ndaffSizeMixin<V extends DaffSizeAllType, T extends Constructor<HasElementRef> = Constructor<HasElementRef>>(Base: T, defaultSize?: V) {\n class DaffSizeMixinClass extends Base {\n //TODO move this back to private in Typescript 3.1\n _size: V;\n\n @Input()\n get size(): V{\n return this._size;\n }\n set size(value: V) {\n // Handles the default size\n const incomingSize = value || defaultSize;\n\n if(incomingSize !== this._size){ //Only run the dom-render if a change occurs\n //Remove the old size\n if(this._size){\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._size}`);\n }\n\n if(incomingSize){\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingSize}`);\n }\n\n this._size = incomingSize;\n }\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.size = defaultSize;\n }\n };\n\n return DaffSizeMixinClass;\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { DaffStatus } from './statusable';\n\ninterface HasElementRef {\n _elementRef: ElementRef;\n _renderer: Renderer2;\n}\n\nexport function\ndaffStatusMixin<T extends Constructor<HasElementRef>>(Base: T, defaultStatus?: DaffStatus) {\n class DaffStatusMixinClass extends Base {\n // TODO move this back to private in Typescript 3.1\n _status: DaffStatus;\n\n @Input()\n get status(): DaffStatus {\n return this._status;\n }\n\n set status(value: DaffStatus) {\n // Handles the default status\n const incomingStatus = value || defaultStatus;\n\n if (incomingStatus === this._status) { // Only run the dom-render if a change occurs\n return;\n }\n\n // Removes the old status\n if (this._status) {\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._status}`);\n }\n\n if (incomingStatus) {\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingStatus}`);\n }\n\n this._status = incomingStatus;\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.status = defaultStatus;\n }\n };\n\n return DaffStatusMixinClass;\n}\n","import {\n Component,\n OnInit,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n Input,\n HostBinding,\n Renderer2,\n} from '@angular/core';\n\nimport {\n daffColorMixin,\n DaffColorable,\n} from '../../core/colorable/public_api';\nimport {\n DaffPrefixable,\n DaffSuffixable,\n daffPrefixableMixin,\n daffSuffixableMixin,\n} from '../../core/prefix-suffix/public_api';\nimport {\n DaffSizeable,\n DaffSizeSmallType,\n DaffSizeMediumType,\n DaffSizeLargeType,\n} from '../../core/sizeable/sizeable';\nimport { daffSizeMixin } from '../../core/sizeable/sizeable-mixin';\nimport { DaffStatusable } from '../../core/statusable/statusable';\nimport { daffStatusMixin } from '../../core/statusable/statusable-mixin';\n\n/**\n * List of classes to add to DaffButtonComponent instances based on host attributes to style as different variants.\n */\nconst BUTTON_HOST_ATTRIBUTES: DaffButtonType[] = [\n 'daff-button',\n 'daff-stroked-button',\n 'daff-raised-button',\n 'daff-icon-button',\n 'daff-underline-button',\n];\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the button mixins\n */\nclass DaffButtonBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffButtonBase = daffPrefixableMixin(daffSuffixableMixin(daffColorMixin(daffStatusMixin(daffSizeMixin<DaffButtonSize>(DaffButtonBase, 'md')))));\n\nexport type DaffButtonType = 'daff-button' | 'daff-stroked-button' | 'daff-raised-button' | 'daff-icon-button' | 'daff-underline-button' | undefined;\n\n/**\n * The DaffSizeable types that the DaffButtonComponent can implement\n */\nexport type DaffButtonSize = DaffSizeSmallType | DaffSizeMediumType | DaffSizeLargeType;\n\nenum DaffButtonTypeEnum {\n Default = 'daff-button',\n Stroked = 'daff-stroked-button',\n Raised = 'daff-raised-button',\n Icon = 'daff-icon-button',\n Underline = 'daff-underline-button'\n}\n\n/**\n * @inheritdoc\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '' +\n 'button[daff-button]' + ',' +\n 'button[daff-stroked-button]' + ',' +\n 'button[daff-raised-button]' + ',' +\n 'button[daff-icon-button]' + ',' +\n 'button[daff-underline-button]' + ',' +\n 'a[daff-button]' + ',' +\n 'a[daff-stroked-button]' + ',' +\n 'a[daff-raised-button]' + ',' +\n 'a[daff-icon-button]' + ',' +\n 'a[daff-underline-button]',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'size', 'status'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffButtonComponent\n extends _daffButtonBase\n implements OnInit, DaffPrefixable, DaffSuffixable, DaffColorable, DaffSizeable<DaffButtonSize>, DaffStatusable {\n\n private buttonType: DaffButtonType;\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n\n for (const attr of BUTTON_HOST_ATTRIBUTES) {\n if (this._hasHostAttributes(attr)) {\n (<HTMLElement>elementRef.nativeElement).classList.add(attr);\n }\n }\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n for (const attr of BUTTON_HOST_ATTRIBUTES) {\n if (this._hasHostAttributes(attr)) {\n this.buttonType = attr;\n }\n }\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-button') get button() {\n return this.buttonType === DaffButtonTypeEnum.Default || this.buttonType === undefined;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-stroked-button') get stroked() {\n return this.buttonType === DaffButtonTypeEnum.Stroked;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-raised-button') get raised() {\n return this.buttonType === DaffButtonTypeEnum.Raised;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-icon-button') get icon() {\n return this.buttonType === DaffButtonTypeEnum.Icon;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-underline-button') get underline() {\n return this.buttonType === DaffButtonTypeEnum.Underline;\n }\n\n private _getHostElement() {\n return this.elementRef.nativeElement;\n }\n\n /**\n * Gets whether the button has one of the given attributes.\n * */\n private _hasHostAttributes(...attributes: string[]) {\n return attributes.some(attribute => this._getHostElement().hasAttribute(attribute));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffPrefixSuffixModule } from '../../core/prefix-suffix/prefix-suffix.module';\nimport { DaffButtonComponent } from './button.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n DaffPrefixSuffixModule,\n ],\n declarations: [\n DaffButtonComponent,\n ],\n exports: [\n DaffButtonComponent,\n DaffPrefixSuffixModule,\n ],\n})\nexport class DaffButtonModule { }\n","import { FormControl } from '@angular/forms';\n\nexport class DaffErrorStateMatcher {\n\n isErrorState(control: FormControl, formSubmitted: boolean): boolean {\n return control.errors && (control.touched || formSubmitted);\n }\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-error-message',\n template: '<ng-content></ng-content>',\n styleUrls: ['./error-message.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffErrorMessageComponent {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffErrorMessageComponent } from './error-message.component';\n\n@NgModule({\n exports: [\n DaffErrorMessageComponent,\n ],\n declarations: [\n DaffErrorMessageComponent,\n ],\n})\nexport class DaffErrorMessageModule { }\n","import { NgControl } from '@angular/forms';\n\n/**\n *\n * The class that a form control must **implement** in order to be\n * used with the DaffFormFieldComponent.\n *\n * You may ask: \"Why are you implementing an abstract class, not extending it?\"\n * We do this so that the Angular DI container can match the class token. A typical\n * interface would be \"more accurate\" here, but since interfaces don't exist\n * in javascript, they get thrown out by the typescript compiler and cannot\n * be used for the necessary dependency injection.\n */\nexport abstract class DaffFormFieldControl {\n readonly ngControl: NgControl | null;\n\n readonly controlType?: any;\n\n readonly focused: boolean;\n\n abstract focus(event?: Event): void;\n};\n","export const DaffFormFieldMissingControlMessage = 'A DaffFormFieldComponent must contain a DaffFormFieldControl';\n","import {\n Component,\n ViewEncapsulation,\n DoCheck,\n ContentChild,\n Input,\n AfterContentInit,\n AfterContentChecked,\n HostBinding,\n} from '@angular/core';\nimport { faChevronDown } from '@fortawesome/free-solid-svg-icons';\n\nimport { DaffFormFieldControl } from '../form-field-control';\nimport { DaffFormFieldMissingControlMessage } from '../form-field-errors';\n\n\n@Component({\n selector: 'daff-form-field',\n templateUrl: './form-field.component.html',\n styleUrls: ['./form-field.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffFormFieldComponent implements DoCheck, AfterContentInit, AfterContentChecked {\n\n /**\n * @docs-private\n */\n faChevronDown = faChevronDown;\n\n @HostBinding('class.daff-form-field') class = true;\n\n /**\n * The tracking property used to determine if the parent form has been submitted,\n * and thus show an error message (even if the field hasn't been touched).\n *\n * @deprecated\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() formSubmitted: boolean = false;\n\n /**\n * The child form control that the form-field manages\n *\n * @docs-private\n */\n @ContentChild(DaffFormFieldControl) _control: DaffFormFieldControl;\n\n /**\n * Tracking property to keep a record of whether or not the\n * form field should be marked as error.\n */\n isError = false;\n\n /**\n * Tracking property to keep a record of whether or not the\n * form field should be marked as valid.\n */\n isValid = false;\n\n /**\n * @docs\n *\n * Determines whether or not the form field should display its focused state.\n */\n get isFocused() {\n return this._control?.focused;\n }\n\n /**\n * Keeps the state of the form field consistent with its child DaffFormControl\n *\n * TODO: consider whether or not this can be refactored to some kind of\n * observable to remove unnecessary change detection.\n *\n * @docs-private\n */\n ngDoCheck() {\n if(this._control?.ngControl) {\n this.isError = this._control.ngControl.errors && (this._control.ngControl.touched);\n this.isValid = !this._control.ngControl.errors && this._control.ngControl.touched;\n }\n }\n\n /**\n * Validate whether or not the FormField is in\n * a \"usable\" state.\n */\n private _validateFormControl() {\n if (!this._control) {\n throw new Error(DaffFormFieldMissingControlMessage);\n }\n }\n\n /**\n * Life cycle hook to verify that the form field has an acceptable\n * child control instance. Mostly useful for development-time\n * validation of usage.\n *\n * @docs-private\n */\n ngAfterContentInit() {\n this._validateFormControl();\n }\n\n /**\n * Life cycle hook to verify that the form field has an acceptable\n * child control instance. Mostly useful for development-time\n * validation of usage.\n *\n * @docs-private\n */\n ngAfterContentChecked() {\n this._validateFormControl();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffErrorMessageModule } from '../error-message/error-message.module';\nimport { DaffFormFieldComponent } from './form-field/form-field.component';\n\n@NgModule({\n imports: [\n CommonModule,\n\n FontAwesomeModule,\n DaffErrorMessageModule,\n ],\n exports: [\n DaffFormFieldComponent,\n DaffErrorMessageModule,\n ],\n declarations: [\n DaffFormFieldComponent,\n ],\n})\nexport class DaffFormFieldModule { }\n","import { InjectionToken } from '@angular/core';\n\nimport { DaffMediaGalleryRegistration } from './media-gallery-registration.interface';\n\nexport const DAFF_MEDIA_GALLERY_TOKEN = new InjectionToken<DaffMediaGalleryRegistration>('DAFF_MEDIA_GALLERY_TOKEN');\n","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n} from '@angular/core';\n\nimport { DaffMediaGalleryRegistration } from './media-gallery-registration.interface';\nimport { DAFF_MEDIA_GALLERY_TOKEN } from './media-gallery-token';\n\nlet uniqueGalleryId = 0;\n\n@Component({\n selector: 'daff-media-gallery',\n templateUrl: './media-gallery.component.html',\n styleUrls: ['./media-gallery.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n { provide: DAFF_MEDIA_GALLERY_TOKEN, useExisting: DaffMediaGalleryComponent },\n ],\n})\nexport class DaffMediaGalleryComponent implements DaffMediaGalleryRegistration {\n\t/**\n\t * Adds a class for styling the media gallery\n\t */\n\t@HostBinding('class.daff-media-gallery') class = true;\n\n\t/**\n\t * The name of the gallery\n\t */\n\t@Input() name = `${uniqueGalleryId}`;\n\n\tconstructor() {\n\t uniqueGalleryId++;\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { DaffMediaGalleryRegistration } from '../media-gallery-registration.interface';\nimport { DaffThumbnailRegistration } from '../thumbnail/thumbnail-registration.interface';\n\nexport interface DaffMediaGalleryDict {\n\t[galleryName: string]: BehaviorSubject<DaffMediaGallery>;\n}\n\nexport interface DaffMediaGallery {\n\tgallery: DaffMediaGalleryRegistration;\n\tthumbnails: DaffThumbnailRegistration[];\n}\n\n@Injectable({ providedIn: 'root' })\nexport class DaffMediaGalleryRegistry {\n\tgalleries: DaffMediaGalleryDict = {};\n\n\t/**\n\t * @description\n\t * Adds a media element to the internal registry.\n\t */\n\tadd(gallery: DaffMediaGalleryRegistration, thumbnail: DaffThumbnailRegistration) {\n\t if(this.galleries[gallery.name]) {\n\t let newGallery = this.galleries[gallery.name].getValue();\n\n\t newGallery = {\n\t ...newGallery,\n\t thumbnails: [\n\t ...newGallery.thumbnails.filter(t => t !== thumbnail),\n\t thumbnail,\n\t ],\n\t };\n\t this.galleries[gallery.name].next(newGallery);\n\t } else {\n\t this.galleries[gallery.name] = new BehaviorSubject({\n\t gallery,\n\t thumbnails: [thumbnail],\n\t });\n\t }\n\n\t if(this.galleries[gallery.name].getValue().thumbnails.length === 1) {\n\t thumbnail.select();\n\t }\n\t}\n\n\t/**\n\t * @description\n\t * Removes a media element from the internal registry.\n\t */\n\tremove(thumbnail: DaffThumbnailRegistration) {\n\t if(!this.galleries[thumbnail.gallery.name]) {\n\t return;\n\t }\n\t const gallery = this.galleries[thumbnail.gallery.name].getValue();\n\t const index = gallery.thumbnails.indexOf(thumbnail);\n\n\t if(index === -1) {\n\t return;\n\t }\n\n\t this.galleries[thumbnail.gallery.name].next({\n\t ...gallery,\n\t thumbnails: [\n\t ...gallery.thumbnails.slice(0, index),\n\t ...gallery.thumbnails.slice(index + 1),\n\t ],\n\t });\n\t}\n\n\t/**\n\t * @description\n\t * Selects a media element for a given gallery.\n\t */\n\tselect(thumbnail: DaffThumbnailRegistration) {\n\t if(!this.galleries[thumbnail.gallery.name]) {\n\t return;\n\t }\n\n\t const gallery = this.galleries[thumbnail.gallery.name].getValue();\n\t const index = gallery.thumbnails.indexOf(thumbnail);\n\n\t if(thumbnail.selected || index === -1){\n\t return;\n\t }\n\n\t this.galleries[thumbnail.gallery.name].next({\n\t ...gallery,\n\t thumbnails: [\n\t ...gallery.thumbnails.filter(m => m !== thumbnail).map(m => m.deselect()),\n\t thumbnail.select(),\n\t ],\n\t });\n\t}\n}\n","import {\n Component,\n OnInit,\n ComponentFactoryResolver,\n Type,\n ViewChild,\n ViewContainerRef,\n TemplateRef,\n ChangeDetectionStrategy,\n OnDestroy,\n Inject,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DaffMediaGalleryRegistration } from '../media-gallery-registration.interface';\nimport { DAFF_MEDIA_GALLERY_TOKEN } from '../media-gallery-token';\nimport { DaffMediaGalleryRegistry } from '../registry/media-gallery.registry';\n\n/**\n * Dynamically renders the selected `DaffThumbnailDirective` in a `daff-media-gallery` any time the selected thumbnail\n * changes.\n */\n@Component({\n selector: 'daff-media-renderer',\n templateUrl: './media-renderer.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffMediaRendererComponent implements OnInit, OnDestroy {\n\n /**\n * Private tracker for indicating when the component is destroyed.\n */\n private _destroy$ = new Subject();\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private registry: DaffMediaGalleryRegistry,\n @Inject(DAFF_MEDIA_GALLERY_TOKEN) private gallery: DaffMediaGalleryRegistration,\n ) {}\n\n /**\n * The slot that the \"component\" is rendered into.\n */\n @ViewChild(TemplateRef, { static: true, read: ViewContainerRef })\n slot: ViewContainerRef;\n\n ngOnInit() {\n this.registry.galleries[this.gallery.name]\n .pipe(takeUntil(this._destroy$))\n .subscribe((gallery) => {\n\n /**\n * Clear out the slot for the dynamically rendered thumbnail\n */\n this.slot.clear();\n\n const _selectedThumbnail = gallery.thumbnails.filter(media => media.selected).shift();\n\n /**\n * If there's no selected media, render nothing.\n */\n if(!_selectedThumbnail) {\n return;\n }\n\n const _selectedThumbnailComponent = _selectedThumbnail.component;\n\n /**\n * Create the component to insert.\n */\n const component = this.componentFactoryResolver.resolveComponentFactory(\n <Type<unknown>>_selectedThumbnailComponent.constructor,\n );\n const componentRef = this.slot.createComponent(component);\n\n /**\n * Fill the component with it's values from the original component\n */\n component.inputs.forEach(input => {\n componentRef.instance[input.propName] = _selectedThumbnailComponent[input.propName];\n });\n\n /**\n * Trigger a change detection on the component tree, outside the cycle to address\n * the fact that the component was created outside a typical CD loop.\n */\n componentRef.changeDetectorRef.detectChanges();\n });\n }\n\n /**\n * Used to unsubscribe from the dynamic component.\n */\n ngOnDestroy() {\n this._destroy$.next(true);\n this._destroy$.unsubscribe();\n }\n}\n\n","import { InjectionToken } from '@angular/core';\n\n/**\n * A multi provider injection token that marks a component as renderable for the `DaffMediaRendererComponent`.\n */\nexport const daffThumbnailCompatToken = new InjectionToken<unknown>('thumbnailCompatToken');\n","import {\n Directive,\n Inject,\n Type,\n HostBinding,\n HostListener,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n} from '@angular/core';\n\nimport { DaffMediaGalleryRegistration } from '../media-gallery-registration.interface';\nimport { DAFF_MEDIA_GALLERY_TOKEN } from '../media-gallery-token';\nimport { DaffMediaGalleryRegistry } from '../registry/media-gallery.registry';\nimport { daffThumbnailCompatToken } from './thumbnail-compat.token';\nimport { DaffThumbnailRegistration } from './thumbnail-registration.interface';\n\n/**\n * A directive marking thumbnails for the `DaffMediaRendererComponent`. Needs to be wrapped in a `daff-media-gallery` component\n * and needs to be placed on a component that is provided as a `daffThumbnailCompatToken`.\n */\n@Directive({\n selector: '[daffThumbnail]',\n})\nexport class DaffThumbnailDirective implements OnInit, OnDestroy, DaffThumbnailRegistration {\n\n\t/**\n\t * Adds a class for styling a selected thumbnail\n\t */\n\t@HostBinding('class.daff-thumbnail--selected') get selectedClass() {\n return this.selected;\n };\n\n\tconstructor(\n\t\t@Inject(daffThumbnailCompatToken) public component: Type<unknown>,\n\t\tprivate cd: ChangeDetectorRef,\n\t\tprivate registry: DaffMediaGalleryRegistry,\n @Inject(DAFF_MEDIA_GALLERY_TOKEN) public gallery: DaffMediaGalleryRegistration,\n\t) {}\n\n\t/**\n\t * Adds a class for styling a thumbnail\n\t */\n\t@HostBinding('class.daff-thumbnail') class = true;\n\n\t/**\n\t * A prop for determining whether or not the media element is selected.\n\t */\n\tselected = false;\n\n\t/**\n\t * An event that fires after the media element becomes selected.\n\t */\n\t@Output() becameSelected: EventEmitter<void> = new EventEmitter<void>();\n\n\t/**\n\t * Adds a click event to trigger selection of the media element.\n\t *\n\t * @param $event\n\t */\n\t@HostListener('click', ['$event']) onClick($event: MouseEvent) {\n\t this.registry.select(this);\n\t}\n\n\tngOnInit(): void {\n\t this.registry.add(this.gallery, this);\n\t}\n\n\tngOnDestroy(): void {\n\t this.registry.remove(this);\n\t}\n\n\tselect() {\n\t this.selected = true;\n\t this.becameSelected.emit();\n\t this.cd.markForCheck();\n\t return this;\n\t}\n\n\tdeselect() {\n\t this.selected = false;\n\t this.cd.markForCheck();\n\t return this;\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffMediaGalleryComponent } from './media-gallery.component';\nimport { DaffMediaRendererComponent } from './media-renderer/media-renderer.component';\nimport { DaffThumbnailDirective } from './thumbnail/thumbnail.directive';\n\n@NgModule({\n declarations: [\n DaffMediaGalleryComponent,\n DaffThumbnailDirective,\n DaffMediaRendererComponent,\n ],\n imports: [\n CommonModule,\n ],\n exports: [\n DaffThumbnailDirective,\n DaffMediaGalleryComponent,\n ],\n})\nexport class DaffMediaGalleryModule {}\n","import {\n Component,\n ChangeDetectionStrategy,\n Input,\n EventEmitter,\n Output,\n HostBinding,\n OnInit,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { daffThumbnailCompatToken } from '../../molecules/media-gallery/public_api';\n\nconst validateProperty = (object: Record<string, any>, prop: string) => {\n if (object[prop] === null || object[prop] === undefined || object[prop] === '') {\n throw new Error(`DaffImageComponent must have a defined ${prop} attribute.`);\n }\n};\n\nconst validateProperties = (object: Record<string, any>, props: string[]) => {\n const invalidProps = props.filter(prop => {\n try {\n validateProperty(object, prop);\n } catch(e) {\n return true;\n }\n return false;\n });\n\n if (invalidProps.length) {\n throw new Error(`DaffImageComponent must have the ${invalidProps.join(',')} attributes defined.`);\n }\n};\n\n@Component({\n selector: 'daff-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n\t\t\t provide: daffThumbnailCompatToken, useExisting: DaffImageComponent,\n },\n ],\n})\nexport class DaffImageComponent implements OnInit {\n\n\tprivate _src: string;\n\n @Input()\n\tget src(): string {\n\t return this._src;\n\t}\n set src(value: string) {\n this._src = value;\n validateProperty(this, 'src');\n }\n\n private _alt: string;\n\n @Input()\n get alt(): string {\n return this._alt;\n }\n set alt(value: string) {\n this._alt = value;\n validateProperty(this, 'alt');\n }\n\n private _width: number;\n\n @Input()\n get width(): number {\n return this._width;\n }\n set width(value: number) {\n this._width = value;\n validateProperty(this, 'width');\n }\n\n private _height: number;\n\n @Input()\n get height(): number {\n return this._height;\n }\n set height(value: number) {\n this._height = value;\n validateProperty(this, 'height');\n }\n\n // TODO: rename event to not collide with native event (unless that's intentional)\n // eslint-disable-next-line @angular-eslint/no-output-native\n\t@Output() load: EventEmitter<void> = new EventEmitter();\n\n\t/**\n\t * @docs-private\n\t */\n\tngOnInit(): void {\n\t validateProperties(this, ['src', 'alt', 'width', 'height']);\n\t}\n\n\tconstructor(private sanitizer: DomSanitizer) {}\n\n\t/**\n\t * @docs-private\n\t */\n\tget _paddingTop(): any {\n\t if (!this.height || !this.width ) {\n\t return undefined;\n\t }\n\n\t return this.sanitizer.bypassSecurityTrustStyle('calc(' + this.height + ' / ' + this.width + ' * 100%)');\n\t}\n\n\t/**\n\t * @docs-private\n\t */\n @HostBinding('style.max-width') get maxWidth(): string {\n\t return this.width + 'px';\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffImageComponent } from './image.component';\n\n@NgModule({\n declarations: [\n DaffImageComponent,\n ],\n imports: [\n CommonModule,\n ],\n exports: [\n DaffImageComponent,\n ],\n entryComponents: [\n DaffImageComponent,\n ],\n})\nexport class DaffImageModule { }\n","import {\n Component,\n Input,\n Optional,\n Self,\n ElementRef,\n HostListener,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffFormFieldControl } from '../form-field/form-field-control';\n\n/**\n * DaffInputComponent provides the same functionality as a native `<input>` and contains custom styling and functionality.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'input[daff-input]',\n template: '<ng-content></ng-content>',\n styleUrls: ['./input.component.scss'],\n providers: [\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n { provide: DaffFormFieldControl, useExisting: DaffInputComponent },\n ],\n})\nexport class DaffInputComponent implements DaffFormFieldControl {\n\n\t/**\n\t * Has the form been submitted.\n\t */\n\t@Input() formSubmitted: boolean;\n\n focused = false;\n\n /**\n * @docs-private\n */\n @HostListener('focus') focus() {\n this.focused = true;\n }\n\n /**\n * @docs-private\n */\n @HostListener('blur') blur() {\n this.focused = false;\n }\n\n constructor(\n\t\t/**\n\t\t * @docs-private\n\t\t */\n\t\t@Optional() @Self() public ngControl: NgControl,\n\t\tprivate _elementRef: ElementRef<HTMLInputElement>,\n ) {}\n\n onFocus() {\n this._elementRef.nativeElement.focus();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffInputComponent } from './input.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n DaffInputComponent,\n ],\n declarations: [\n DaffInputComponent,\n ],\n})\nexport class DaffInputModule { }\n","import {\n Component,\n ViewEncapsulation,\n Optional,\n Self,\n Input,\n ElementRef,\n HostListener,\n HostBinding,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffFormFieldControl } from '../../form-field/form-field-control';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'select[daff-native-select]',\n template: '<ng-content></ng-content>',\n styleUrls: ['./select.component.scss'],\n encapsulation: ViewEncapsulation.None,\n providers: [\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n { provide: DaffFormFieldControl, useExisting: DaffNativeSelectComponent },\n ],\n})\n\nexport class DaffNativeSelectComponent implements DaffFormFieldControl {\n /**\n * @docs-private\n */\n controlType = 'native-select';\n\n @HostBinding('class.daff-native-select') class = true;\n\n /**\n * Has the form been submitted.\n */\n\t@Input() formSubmitted: boolean;\n\tfocused = false;\n\n\t/**\n\t * @docs-private\n\t */\n @HostListener('focus') focus() {\n\t this.focused = true;\n\t}\n\n /**\n * @docs-private\n */\n @HostListener('blur') blur() {\n this.focused = false;\n }\n\n constructor(\n\t\t/**\n\t\t * @docs-private\n\t\t */\n\t\t@Optional() @Self() public ngControl: NgControl,\n\t\tprivate _elementRef: ElementRef<HTMLInputElement>,\n ) {}\n\n onFocus() {\n this._elementRef.nativeElement.focus();\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffNativeSelectComponent } from './select/select.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n DaffNativeSelectComponent,\n ],\n declarations: [\n DaffNativeSelectComponent,\n ],\n})\nexport class DaffNativeSelectModule { }\n","import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n EventEmitter,\n Output,\n ChangeDetectorRef,\n ViewChild,\n ElementRef,\n} from '@angular/core';\n\nlet checkboxIdNum = 0;\n\n@Component({\n selector: 'daff-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffCheckboxComponent {\n /**\n * @docs-private\n */\n @ViewChild('inputElement', { static: true, read: ElementRef }) nativeCheckbox: ElementRef<HTMLInputElement>;\n /**\n * The name of the checkbox.\n */\n @Input() name: string;\n /**\n * The value of the checkbox.\n */\n @Input() value: any;\n /**\n * Boolean value to determine whether or not the checkbox is checked.\n */\n\tprivate _checked = false;\n\n @Input()\n\tget checked() {\n\t return this._checked;\n\t}\n set checked(value: boolean) {\n if (this._checked === value) {\n return;\n }\n if (value === true) {\n this.nativeCheckbox.nativeElement.checked = true;\n this.becameChecked.emit(this._checked);\n } else {\n this.nativeCheckbox.nativeElement.checked = false;\n this.becameUnchecked.emit();\n }\n\n this._checked = value;\n }\n /**\n * The id of the checkbox. Must be unique. If not entered by a user then it is generated.\n */\n @Input() id: string = 'daff-checkbox-' + checkboxIdNum;\n\n /**\n * The aria-label of the checkbox.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-label') label = '';\n\n /**\n * The aria-labeledby of the checkbox.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-labelledby') labeledBy: string;\n\n /**\n * Event on whether or not the selection has changed.\n */\n @Output() becameChecked: EventEmitter<boolean> = new EventEmitter();\n @Output() becameUnchecked: EventEmitter<void> = new EventEmitter();\n\n /**\n * Whether the checkbox is focused\n */\n focused: boolean;\n /**\n * Whether the checkbox is disabled.\n */\n disabled: boolean;\n\n /**\n * The role of the component. Set to \"checkbox\".\n *\n * @docs-private\n */\n @HostBinding('attr.role') role = 'checkbox';\n\n\n /**\n * @docs-private\n */\n _onChange(val: Event) {\n if ((<HTMLInputElement>val.target).checked) {\n this.select();\n } else {\n this.deselect();\n }\n };\n /**\n * @docs-private\n */\n @HostBinding('class.focused') get focusClass() {\n return this.focused === true;\n };\n /**\n * @docs-private\n */\n @HostBinding('class.disabled') get disabledClass() {\n return this.disabled === true;\n };\n /**\n * Sets focused to false.\n */\n onBlur() {\n this.focused = false;\n }\n /**\n * Sets focused to true.\n */\n onFocus() {\n this.focused = true;\n }\n\n constructor(private _cdRef: ChangeDetectorRef) {\n /**\n * Increments id number on new checkbox. Gurantees unique ID on generation.\n */\n checkboxIdNum++;\n }\n /**\n * Sets checked to true.\n */\n select() {\n this.checked = true;\n this._cdRef.markForCheck();\n }\n /**\n * Sets checked to false\n */\n deselect() {\n this.checked = false;\n this._cdRef.markForCheck();\n }\n}\n","import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ContentChildren,\n QueryList,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { FormArray } from '@angular/forms';\n\nimport { DaffCheckboxComponent } from '../checkbox/checkbox.component';\n\n@Component({\n selector: 'daff-checkbox-set',\n templateUrl: './checkbox-set.component.html',\n styleUrls: ['./checkbox-set.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffCheckboxSetComponent {\n\n @Input() formArray: FormArray;\n /**\n * The name of the checkbox-set\n */\n @Input() name: string;\n\n /**\n * The role of the component. Set to \"checkbox\".\n *\n * @docs-private\n */\n @HostBinding('attr.role') role = 'group';\n\n /**\n * The list of checkboxes in the set.\n *\n * @docs-private\n */\n @ContentChildren(DaffCheckboxComponent) checkboxes: QueryList<DaffCheckboxComponent>;\n\n @Output() valueList = new EventEmitter<any[]>();\n\n getValues(): any[] {\n const checkboxes = this.checkboxes.toArray();\n return this.formArray.value.map((element, index) => element === true ? checkboxes[index].value : false).filter(element => element !== false);\n }\n}\n","import {\n Directive,\n Input,\n OnInit,\n Self,\n Optional,\n forwardRef,\n} from '@angular/core';\nimport {\n NgControl,\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n} from '@angular/forms';\n\nimport { DaffCheckboxComponent } from '../checkbox.component';\n\n/**\n * A directive for binding the DaffCheckboxComponent and the Control Value Accessor.\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'daff-checkbox[ngModel], daff-checkbox[formControl], daff-checkbox[formControlName]',\n})\nexport class DaffCheckboxControlValueAccessorDirective implements OnInit, ControlValueAccessor {\n _onChange: (val: any) => void;\n _onTouched: () => void;\n\n /**\n * The value of the ControlValueAccessor\n */\n @Input() value: any;\n\n /**\n * The name of the ControlValueAccessor\n */\n @Input() name: string;\n\n constructor(\n @Optional() @Self() public _control: NgControl,\n private _checkbox: DaffCheckboxComponent,\n ) {\n if (this._control != null) {\n this._control.valueAccessor = this;\n }\n }\n\n\n /**\n * A lifecycle method called when the directive is initialized.\n */\n ngOnInit(): void {\n // See the note about `writeValue` usage.\n this.writeValue(this._control.value);\n\n // Watch for user events on the component to update the state\n this._checkbox.becameChecked.subscribe(\n () => {\n this._onChange(true);\n },\n );\n this._checkbox.becameUnchecked.subscribe(\n () => {\n this._onChange(false);\n },\n );\n }\n\n /**\n * writes a new value down into the component.\n */\n writeValue(value: any): void {\n value = !!value;\n if (value === true) {\n this.fireSelect();\n } else {\n this.fireDeselect();\n }\n }\n\n /**\n * Registers the change handler\n */\n registerOnChange(fn: any): void {\n this._onChange = (val) => {\n fn(val);\n };\n }\n\n /**\n * Registers the touched handler\n */\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n /**\n * Sets the disabled state.\n */\n setDisabledState?(isDisabled: boolean): void {\n this._checkbox.disabled = isDisabled;\n }\n\n /**\n * calls the child checkbox's select function\n */\n fireSelect() {\n this._checkbox.select();\n }\n\n /**\n * calls the child checkbox's deselect function\n */\n fireDeselect() {\n this._checkbox.deselect();\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffCheckboxSetComponent } from '../checkbox-set/checkbox-set.component';\nimport { DaffCheckboxComponent } from './checkbox.component';\nimport { DaffCheckboxControlValueAccessorDirective } from './cva/checkbox-cva.directive';\n\n@NgModule({\n exports: [\n DaffCheckboxComponent,\n DaffCheckboxSetComponent,\n DaffCheckboxControlValueAccessorDirective,\n ],\n declarations: [\n DaffCheckboxComponent,\n DaffCheckboxSetComponent,\n DaffCheckboxControlValueAccessorDirective,\n ],\n imports: [\n CommonModule,\n ],\n providers: [\n DaffCheckboxSetComponent,\n ],\n})\nexport class DaffCheckboxModule { }\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ViewChild,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport {\n FormControl,\n NgControl,\n} from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DaffInputComponent } from '../../input/public_api';\n\n@Component({\n selector: 'daff-quantity-input',\n templateUrl: './quantity-input.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffQuantityInputComponent implements OnInit, OnDestroy {\n @ViewChild(DaffInputComponent) input: DaffInputComponent;\n\n /**\n * @docs\n * The minimum number for the quantity input field\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number for the quantity input field\n */\n @Input() max = 10;\n\n /**\n * A new control for the nested native input.\n * We don't bind the native input directly to the inherited form control\n * to avoid triggering updates on the input event.\n * Instead, we listen for the change event and manually patch form control values.\n */\n _inputControl = new FormControl();\n // TODO: should this not use this.input as the source of truth for focused?\n focused = false;\n _destroyed = new Subject();\n\n get value() {\n return this.ngControl.control.value;\n }\n set value(value) {\n const val = Math.min(Math.round(coerceNumberProperty(value)), this.max);\n this.ngControl.control.patchValue(val);\n this._inputControl.patchValue(val);\n this.changeDetectorRef.markForCheck();\n }\n\n get disabled() {\n return this.ngControl.control.disabled;\n }\n\n constructor(\n public ngControl: NgControl,\n private changeDetectorRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this._inputControl.patchValue(this.ngControl.control.value);\n this.setInputDisabled();\n this.ngControl.statusChanges.pipe(\n takeUntil(this._destroyed),\n ).subscribe(() => {\n this.setInputDisabled();\n });\n }\n\n ngOnDestroy() {\n this._destroyed.next(true);\n }\n\n focus() {\n this.focused = true;\n this.input.focus();\n }\n\n onFocus() {\n this.focused = true;\n this.ngControl.control.markAsTouched();\n }\n\n onBlur() {\n // TODO: this.focused = false ?\n if(this.value === null || this.value === undefined){\n this.value = 1;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e: any) {\n this.value = e.target.value;\n }\n\n private setInputDisabled() {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.ngControl.disabled\n ? this._inputControl.disable()\n : this._inputControl.enable();\n }\n}\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChild,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffNativeSelectComponent } from '../../select/public_api';\n\n/**\n * Create an array of numbers from min to max, not including max.\n */\nexport const makeValueArray = (min: number, max: number, increment: number) =>\n Array(max - min).fill(0).map((x, i) => (i * increment) + min);\n\n@Component({\n selector: 'daff-quantity-select',\n templateUrl: './quantity-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffQuantitySelectComponent {\n\n @ViewChild(DaffNativeSelectComponent) select: DaffNativeSelectComponent;\n\n /**\n * @docs\n * The minimum number selectable.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number selectable;\n */\n @Input() max = 10;\n\n /**\n * @docs\n * Property used to determine whether or not the DaffQuantitySelectComponent is\n * used in a situation whether the `max` isn't a true max.\n */\n @Input() extendable = true;\n\n /**\n * The amount to increment between \"min\" and \"max\".\n */\n private increment = 1;\n\n _value = 1;\n\n get value() {\n return this._value;\n }\n set value(value) {\n this._value = value;\n this.ngControl.control.patchValue(this._value);\n this.changeDetectorRef.markForCheck();\n }\n\n constructor(public ngControl: NgControl, private changeDetectorRef: ChangeDetectorRef) {}\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e) {\n this.value = e.target.value;\n }\n\n get focused() {\n return this.select.focused;\n }\n\n focus() {\n this.select.focus();\n }\n\n /**\n * A helper function for easily making options for the `select`.\n */\n get valueArray() {\n return makeValueArray(this.min, this.max, this.increment);\n }\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n Optional,\n Self,\n ViewChild,\n ChangeDetectorRef,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n NgControl,\n} from '@angular/forms';\n\nimport { DaffFormFieldControl } from '../form-field/form-field-control';\nimport { DaffQuantityInputComponent } from './quantity-input/quantity-input.component';\nimport { DaffQuantitySelectComponent } from './quantity-select/quantity-select.component';\n\n@Component({\n selector: 'daff-quantity-field',\n templateUrl: './quantity-field.component.html',\n providers: [\n {\n provide: DaffFormFieldControl,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: DaffQuantityFieldComponent,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffQuantityFieldComponent implements ControlValueAccessor, DaffFormFieldControl {\n\n @ViewChild(DaffQuantityInputComponent) input: DaffQuantityInputComponent;\n @ViewChild(DaffQuantitySelectComponent) select: DaffQuantitySelectComponent;\n\n /**\n * @docs\n * The minimum valid value of the quantity field.\n * Must be greater than or equal to 1.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum valid value of the quantity field.\n * Must be greater than min.\n */\n @Input() max = 500;\n\n /**\n * @docs\n * The range of numbers acceptable in a quantity dropdown\n * before it becomes an input element.\n */\n @Input() selectMax = 10;\n\n focused = false;\n disabled = false;\n private _quantity = 1;\n private _inputHasBeenShown = false;\n\n get quantity() {\n return this._quantity;\n }\n set quantity(value: number) {\n this._quantity = coerceNumberProperty(value, 1);\n }\n\n /**\n * Returns the lesser of max and selectMax.\n */\n get _maxFloor(): number {\n return Math.min(this.max, this.selectMax);\n }\n\n get controlType() {\n // TODO: use enum\n return this.showInputField\n ? 'native-input'\n : 'native-select';\n }\n\n get showInputField(): boolean {\n const ret = this._inputHasBeenShown || (this.ngControl\n ? this.ngControl.value >= this.selectMax\n : this.quantity >= this.selectMax);\n\n if (ret) {\n this._inputHasBeenShown = true;\n }\n\n return ret;\n }\n\n get showSelectField(): boolean {\n return !this.showInputField;\n }\n\n constructor(\n @Optional() @Self() public ngControl: NgControl,\n private cd: ChangeDetectorRef,\n ) {\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n private onChange(quantity: number): void {};\n private onTouched(quantity: number): void {};\n\n writeValue(quantity: number): void {\n this.quantity = quantity;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: (quantity: number) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n focus() {\n if(this.select) {\n this.select.focus();\n }\n if(this.input) {\n this.input.focus();\n }\n this.focused = true;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { DaffInputModule } from '../input/public_api';\nimport { DaffNativeSelectModule } from '../select/public_api';\nimport { DaffQuantityFieldComponent } from './quantity-field.component';\nimport { DaffQuantityInputComponent } from './quantity-input/quantity-input.component';\nimport { DaffQuantitySelectComponent } from './quantity-select/quantity-select.component';\n\n@NgModule({\n declarations: [\n DaffQuantityFieldComponent,\n DaffQuantityInputComponent,\n DaffQuantitySelectComponent,\n ],\n imports: [\n CommonModule,\n DaffNativeSelectModule,\n DaffInputModule,\n ReactiveFormsModule,\n ],\n exports: [\n DaffQuantityFieldComponent,\n DaffQuantityInputComponent,\n DaffQuantitySelectComponent,\n ],\n})\nexport class DaffQuantityFieldModule { }\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n HostBinding,\n ElementRef,\n Renderer2,\n} from '@angular/core';\n\nimport {\n DaffSizeAllType,\n DaffSizeable,\n} from '../../core/sizeable/sizeable';\nimport { daffSizeMixin } from '../../core/sizeable/sizeable-mixin';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Sizeable mixin\n */\nclass DaffContainerBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffContainerBase = daffSizeMixin(DaffContainerBase);\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-container',\n styleUrls: ['./container.component.scss'],\n template: '<ng-content></ng-content>',\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['size'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffContainerComponent extends _daffContainerBase implements DaffSizeable<DaffSizeAllType> {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-container') class = true;\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffContainerComponent } from './container.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffContainerComponent,\n ],\n exports: [\n DaffContainerComponent,\n ],\n})\nexport class DaffContainerModule { }\n","import {\n Component,\n ChangeDetectionStrategy,\n Input,\n ElementRef,\n Renderer2,\n HostBinding,\n} from '@angular/core';\n\nimport {\n daffColorMixin,\n DaffColorable,\n DaffPalette,\n} from '../../core/colorable/public_api';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffLoadingIconBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffLoadingIconBase = daffColorMixin(DaffLoadingIconBase, 'primary');\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-loading-icon',\n templateUrl: './loading-icon.component.html',\n styleUrls: ['./loading-icon.component.scss'],\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffLoadingIconComponent extends _daffLoadingIconBase implements DaffColorable {\n\n /**\n * The (pixel) diameter of the animation\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() diameter: number = 60;\n\n\t/**\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-loading-icon') class = true;\n\t/**\n\t * @docs-private\n\t */\n @HostBinding('style.max-width') get maxWidth() {\n\t return this.diameter + 'px';\n\t}\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffLoadingIconComponent } from './loading-icon.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffLoadingIconComponent,\n ],\n exports: [\n DaffLoadingIconComponent,\n ],\n})\nexport class DaffLoadingIconModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffProgressIndicatorAnimation: {\n readonly fill: AnimationTriggerMetadata;\n } = {\n fill: trigger('fill', [\n state('*', style({ width: '{{ percentage }}%' }), { params: { percentage: 0 }}),\n transition('* <=> *', animate(1000)),\n ]),\n };\n","import { AnimationEvent } from '@angular/animations';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n ElementRef,\n Output,\n EventEmitter,\n Renderer2,\n HostBinding,\n} from '@angular/core';\n\nimport {\n daffColorMixin,\n DaffColorable,\n DaffPalette,\n} from '../../core/colorable/public_api';\nimport { daffProgressIndicatorAnimation } from './animation/progress-indicator-animation';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffProgressIndicatorBase{\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffProgressIndicatorBase = daffColorMixin(DaffProgressIndicatorBase, 'primary');\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-progress-indicator',\n templateUrl: './progress-indicator.component.html',\n styleUrls: ['./progress-indicator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n animations: [\n daffProgressIndicatorAnimation.fill,\n ],\n})\nexport class DaffProgressIndicatorComponent extends _daffProgressIndicatorBase implements DaffColorable {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-progress-indicator') class = true;\n\n /**\n * The percentage completion of the progression,\n * expressed as a whole number between 0 and 100.\n *\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() percentage: number = 0;\n\n /**\n * An event that emits each time the progression reaches 100%\n * and the animation is finished\n */\n @Output() finished: EventEmitter<void> = new EventEmitter();\n\n\n /**\n * Calculates when the progress animation is fully completed\n *\n * @param event: AnimationEvent\n */\n onAnimationComplete(event: AnimationEvent): void {\n // @ts-ignore: @angular/animations typing error on event.toState as string\n // See: https://github.com/angular/angular/issues/26507\n if(event.toState === '100' || event.toState === 100) {\n this.finished.emit();\n }\n }\n\n /**\n * @docs-private\n */\n get fillState(): any {\n return {\n value: this.percentage,\n params: {\n percentage: this.percentage,\n },\n };\n }\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffProgressIndicatorComponent } from './progress-indicator.component';\n\n@NgModule({\n declarations: [DaffProgressIndicatorComponent],\n imports: [\n CommonModule,\n ],\n exports: [DaffProgressIndicatorComponent],\n})\nexport class DaffProgressIndicatorModule { }\n","import {\n Component,\n HostBinding,\n Input,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-radio-set',\n templateUrl: './radio-set.component.html',\n styleUrls: ['./radio-set.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffRadioSetComponent {\n\n @Input() name: string;\n\n constructor() { }\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'radiogroup';\n\n}\n","import {\n Component,\n OnInit,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n forwardRef,\n Optional,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { DaffRadioSetComponent } from '../radio-set/radio-set.component';\n\nlet radioUniqueId = 0;\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'daff-radio',\n templateUrl: './radio.html',\n styleUrls: ['./radio.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffRadioComponent implements OnInit {\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'radio';\n /**\n * @docs-private\n */\n @HostBinding('class.focused') get focusClass() {\n return this.focused === true;\n };\n /**\n * @docs-private\n */\n @HostBinding('class.disabled') get disabledClass() {\n return this.disabled === true;\n };\n\n /**\n * @docs-private\n */\n _checked = false;\n /**\n * Output event of selection being changed\n */\n @Output() selectionChange: EventEmitter<boolean> = new EventEmitter();\n\n\n /**\n * The checked property of the radio\n */\n\t@Input()\n get checked() {\n return this._checked;\n }\n\tset checked(value: boolean) {\n\t if (this._checked !== value) {\n\t this._checked = value;\n\t this.selectionChange.emit(this.value);\n\t }\n\t}\n\t/**\n\t * The value of the radio\n\t */\n\t@Input() value: any;\n\t/**\n\t * The id of the radio. It is uniquely generated but can be overwritten by the user. Must be unique.\n\t */\n\t@Input() id: string = 'daff-radio-' + radioUniqueId;\n\n\t/**\n\t * Name of the Radio\n\t */\n\t@Input() name = '';\n\n /**\n * Used for aria-label. Default to name if user does not input a label.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-label') label: string = this.name;\n\n /**\n * Used for aria-labelledby.\n */\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('aria-labelledby') labelledby: string;\n\n\n disabled = false;\n focused = false;\n\n constructor(@Optional() private radioset: DaffRadioSetComponent) {\n radioUniqueId++;\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this.name = this.radioset ? this.radioset.name : this.name;\n }\n\n /**\n * updates Focus styling\n */\n onFocus() {\n this.focused = true;\n }\n /**\n * updates Blur styling\n */\n onBlur() {\n this.focused = false;\n }\n /**\n * toggles checked attribute on\n */\n select(): void {\n this.checked = true;\n }\n /**\n * toggles checked attribute off\n */\n deselect(): void {\n this.checked = false;\n }\n onChange() {\n this.select();\n };\n}\n","import { Injectable } from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffRadioControlValueAccessorDirective } from '../cva/radio-cva.directive';\n\nexport interface ControlAccessorPair {\n control: NgControl;\n accessor: DaffRadioControlValueAccessorDirective;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class DaffRadioRegistry {\n private _accessors: ControlAccessorPair[] = [];\n\n /**\n * @description\n * Adds a control to the internal registry.\n */\n add(control: NgControl, accessor: DaffRadioControlValueAccessorDirective) {\n this._accessors.push({\n control,\n accessor,\n });\n }\n\n /**\n * @description\n * Removes a control from the internal registry.\n */\n remove(accessor: DaffRadioControlValueAccessorDirective) {\n for (let i = this._accessors.length - 1; i >= 0; --i) {\n if (this._accessors[i]['accessor'] === accessor) {\n this._accessors.splice(i, 1);\n return;\n }\n }\n }\n\n /**\n * @description\n * Selects a radio button.\n */\n select(accessor: DaffRadioControlValueAccessorDirective) {\n this._accessors.forEach((c) => {\n if (this._isSameGroup(c, accessor) && c['accessor'] !== accessor) {\n c['accessor'].fireDeselect();\n }\n });\n }\n\n private _isSameGroup(\n controlPair: ControlAccessorPair,\n accessor: DaffRadioControlValueAccessorDirective): boolean {\n if (!controlPair['control'].control) {\n return false;\n }\n return controlPair['control'].control.parent === accessor._control.control.parent\n && controlPair['accessor'].name === accessor.name;\n }\n}\n","import {\n Directive,\n Input,\n OnInit,\n Self,\n Optional,\n forwardRef,\n} from '@angular/core';\nimport {\n NgControl,\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n} from '@angular/forms';\n\nimport { DaffRadioComponent } from '../radio.component';\nimport { DaffRadioRegistry } from '../registry/radio-registry';\n\n/**\n * ControlValueAccessor functionality for the DaffRadio\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'daff-radio[ngModel], daff-radio[formControl], daff-radio[formControlName]',\n})\nexport class DaffRadioControlValueAccessorDirective implements OnInit, ControlValueAccessor {\n _onChange: () => void;\n _onTouched: () => void;\n\n /**\n * The value of the ControlValueAccessor\n */\n @Input() value: any;\n\n /**\n * The name of the ControlValueAccessor\n */\n @Input() name: string;\n\n constructor(\n @Optional() @Self() public _control: NgControl,\n private _registry: DaffRadioRegistry,\n private _radio: DaffRadioComponent,\n ) {\n if (this._control != null) {\n this._control.valueAccessor = this;\n }\n }\n\n ngOnInit(): void {\n this.writeValue(this._control.value);\n this._registry.add(this._control, this);\n\n this._radio.selectionChange.subscribe(\n value => value ? this._onChange() : null,\n );\n }\n /**\n *\n * writeValue function from the CVA interface\n */\n writeValue(value: any): void {\n // the this._onChange null check here is necessary because of an ongoing bug in angular forms\n // where writeValue can be called before the component initializes: https://github.com/angular/angular/issues/29218\n if (this.value === value && this._onChange) {\n this._onChange();\n this.fireSelect();\n }\n }\n\n /**\n * registerOnChange implemented from the CVA interface\n */\n registerOnChange(fn: any): void {\n this._onChange = () => {\n fn(this.value);\n this._registry.select(this);\n };\n }\n\n /**\n * registerOnTouch implemented from the CVA interface\n */\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n /**\n * sets the disabled state.\n */\n setDisabledState?(isDisabled: boolean): void {\n this._radio.disabled = isDisabled;\n }\n\n /**\n calls select function for the radio\n */\n fireSelect() {\n this._radio.select();\n }\n\n /**\n calls deselect function for the radio\n */\n fireDeselect() {\n this._radio.deselect();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffRadioSetComponent } from '../radio-set/radio-set.component';\nimport { DaffRadioControlValueAccessorDirective } from './cva/radio-cva.directive';\nimport { DaffRadioComponent } from './radio.component';\n\n\n\n@NgModule({\n exports:[\n DaffRadioComponent,\n DaffRadioSetComponent,\n DaffRadioControlValueAccessorDirective,\n\n ],\n declarations: [\n DaffRadioControlValueAccessorDirective,\n DaffRadioComponent,\n DaffRadioSetComponent,\n ],\n imports: [\n CommonModule,\n ],\n})\nexport class DaffRadioModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffAccordionItemContent]',\n})\nexport class DaffAccordionItemContentDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-accordion-item__content') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffAccordionItemTitle]',\n})\nexport class DaffAccordionItemTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-accordion-item__title') class = true;\n}\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffAccordionAnimations: {\n readonly openAccordion: AnimationTriggerMetadata;\n} = {\n openAccordion: trigger('openAccordion', [\n state('open', style({\n visibility: 'visible',\n opacity: '1',\n height: '*',\n })),\n state('void',style({\n visibility: 'hidden',\n overflow: 'hidden',\n opacity: '0',\n height: '0',\n })),\n transition('void <=> open',\n animate('150ms ease-in'),\n ),\n ]),\n};\n","export const getAnimationState = (open: boolean) => {\n if(open){\n return 'open';\n } else {\n return 'void';\n }\n};\n","import {\n Component,\n Input,\n OnInit,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\nimport {\n faChevronDown,\n faChevronUp,\n} from '@fortawesome/free-solid-svg-icons';\n\nimport { daffAccordionAnimations } from '../animation/accordion-animation';\nimport { getAnimationState } from '../animation/accordion-animation-state';\n\n@Component({\n selector: 'daff-accordion-item',\n templateUrl: './accordion-item.component.html',\n styleUrls: ['./accordion-item.component.scss'],\n encapsulation: ViewEncapsulation.None,\n animations: [\n daffAccordionAnimations.openAccordion,\n ],\n})\nexport class DaffAccordionItemComponent implements OnInit {\n\t/**\n\t * @docs-private\n\t */\n\tfaChevronDown = faChevronDown;\n\t/**\n\t * @docs-private\n\t */\n faChevronUp = faChevronUp;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-accordion-item') class = true;\n\n\t@Input() initiallyActive: boolean;\n\t/**\n\t * @docs-private\n\t */\n\t_open = false;\n\t/**\n\t * @docs-private\n\t */\n _animationState: string;\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this._open = this.initiallyActive ? this.initiallyActive : this._open;\n this._animationState = getAnimationState(this._open);\n }\n\n toggleActive() {\n this._open = !this._open;\n this._animationState = getAnimationState(this._open);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'daff-accordion',\n templateUrl: './accordion.component.html',\n styleUrls: ['./accordion.component.scss'],\n})\n\nexport class DaffAccordionComponent {\n\n}\n","import {\n Component,\n Input,\n OnInit,\n HostBinding,\n SkipSelf,\n Optional,\n ContentChildren,\n QueryList,\n} from '@angular/core';\nimport {\n faChevronDown,\n faChevronUp,\n} from '@fortawesome/free-solid-svg-icons';\n\nimport { DaffAccordionComponent } from '../accordion/accordion.component';\nimport { daffAccordionAnimations } from '../animation/accordion-animation';\nimport { getAnimationState } from '../animation/accordion-animation-state';\n\n@Component({\n selector: 'daff-nav-accordion-item',\n templateUrl: './nav-accordion-item.component.html',\n styleUrls: ['./nav-accordion-item.component.scss'],\n animations: [\n daffAccordionAnimations.openAccordion,\n ],\n})\nexport class DaffNavAccordionItemComponent implements OnInit {\n\n constructor(\n\t\tprivate accordion: DaffAccordionComponent,\n\t\t@SkipSelf() @Optional() private navAccordionItemParent: DaffNavAccordionItemComponent,\n ) {}\n\t/**\n\t * @docs-private\n\t */\n\tfaChevronDown = faChevronDown;\n\t/**\n\t * @docs-private\n\t */\n faChevronUp = faChevronUp;\n\n /**\n * @docs-private\n */\n\t@HostBinding('class') get classes() {\n return [\n 'daff-nav-accordion-item',\n 'daff-nav-accordion-item--level-' + this._level,\n ];\n }\n\n\t@Input() initiallyActive: boolean;\n\n\t@ContentChildren(DaffNavAccordionItemComponent, { descendants: true })\n\t_navAccordionItemChild: QueryList<DaffNavAccordionItemComponent>;\n\n\t/**\n\t * @docs-private\n\t */\n\t_open = false;\n\t/**\n\t * @docs-private\n\t */\n _animationState: string;\n\n\t/**\n\t * @docs-private\n\t */\n\t_level = 0;\n\n\t/**\n\t * @docs-private\n\t */\n\tngOnInit() {\n\t if(this.navAccordionItemParent && this.accordion === this.navAccordionItemParent.accordion) {\n\t this._level = this.navAccordionItemParent._level + 1;\n\t }\n\t this._open = this.initiallyActive ? this.initiallyActive : this._open;\n\t this._animationState = getAnimationState(this._open);\n\t}\n\n\ttoggleActive() {\n\t this._open = !this._open;\n\t this._animationState = getAnimationState(this._open);\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffPrefixSuffixModule } from '../../core/prefix-suffix/prefix-suffix.module';\nimport { DaffAccordionItemContentDirective } from './accordion-item-content/accordion-item-content.directive';\nimport { DaffAccordionItemTitleDirective } from './accordion-item-title/accordion-item-title.directive';\nimport { DaffAccordionItemComponent } from './accordion-item/accordion-item.component';\nimport { DaffAccordionComponent } from './accordion/accordion.component';\nimport { DaffNavAccordionItemComponent } from './nav-accordion-item/nav-accordion-item.component';\n\n@NgModule({\n imports: [\n CommonModule,\n\n FontAwesomeModule,\n DaffPrefixSuffixModule,\n ],\n declarations: [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffNavAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n DaffAccordionItemContentDirective,\n ],\n exports: [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffNavAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n DaffAccordionItemContentDirective,\n ],\n})\nexport class DaffAccordionModule { }\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\n\n/**\n * A component for creating articles within your page.\n */\n@Component({\n selector: 'daff-article',\n template: '<ng-content></ng-content>',\n styleUrls: ['./article.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffArticleComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article') class = true;\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'article';\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleLead]',\n})\nexport class DaffArticleLeadDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__lead') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleMeta]',\n})\nexport class DaffArticleMetaDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__meta') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleTitle]',\n})\nexport class DaffArticleTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__title') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffArticleLeadDirective } from './article-lead/article-lead.directive';\nimport { DaffArticleMetaDirective } from './article-meta/article-meta.directive';\nimport { DaffArticleTitleDirective } from './article-title/article-title.directive';\nimport { DaffArticleComponent } from './article/article.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffArticleComponent,\n DaffArticleTitleDirective,\n DaffArticleLeadDirective,\n DaffArticleMetaDirective,\n ],\n exports: [\n DaffArticleComponent,\n DaffArticleTitleDirective,\n DaffArticleLeadDirective,\n DaffArticleMetaDirective,\n ],\n})\nexport class DaffArticleModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst animationDuration = '350ms';\nconst backdropTransitionOut = 'cubic-bezier(0.4, 0.0, 1, 1)';\nconst backdropTransitionIn = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\n\nexport const daffBackdropAnimations: {\n readonly fadeBackdrop: AnimationTriggerMetadata;\n} = {\n fadeBackdrop: trigger('fadeBackdrop', [\n transition(':enter', [\n style({ opacity: 0 }),\n animate(animationDuration + ' ' + backdropTransitionIn, style({ opacity: 1 })),\n ]),\n transition(':leave', [\n animate(animationDuration + ' ' + backdropTransitionOut, style({ opacity: 0 })),\n ]),\n ]),\n};\n","import {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n HostListener,\n HostBinding,\n} from '@angular/core';\n\nimport { daffBackdropAnimations } from '../animation/backdrop-animation';\n\n@Component({\n selector: 'daff-backdrop',\n templateUrl: './backdrop.component.html',\n styleUrls: ['./backdrop.component.scss'],\n animations: [\n daffBackdropAnimations.fadeBackdrop,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffBackdropComponent {\n\n /**\n * Determines whether or not the backdrop is transparent.\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() transparent: boolean = false;\n\n /**\n * Boolean property that determines whether or not the\n * backdrop should fill up its containing window.\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() fullscreen: boolean = false;\n\n /**\n * Output event triggered when the backdrop is clicked.\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Animation hook for that controls the backdrops\n * entrance and fade animations.\n */\n @HostBinding('@fadeBackdrop')\n\n /**\n * @deprecated\n * Backdrop event that triggers when the backdrop element is clicked.\n */\n @HostListener('click')\n onBackdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffBackdropComponent } from './backdrop/backdrop.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffBackdropComponent,\n ],\n exports: [\n DaffBackdropComponent,\n ],\n entryComponents: [\n DaffBackdropComponent,\n ],\n})\nexport class DaffBackdropModule { }\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-button-set',\n template: '<ng-content></ng-content>',\n styleUrls: ['./button-set.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffButtonSetComponent {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-button-set') class = true;\n}\n","import { NgModule } from '@angular/core';\n\nimport { DaffButtonSetComponent } from './button-set.component';\n\n@NgModule({\n declarations: [\n DaffButtonSetComponent,\n ],\n exports: [\n DaffButtonSetComponent,\n ],\n})\nexport class DaffButtonSetModule { }\n","import {\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-image-gallery',\n templateUrl: './image-gallery.component.html',\n styleUrls: ['./image-gallery.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffImageGalleryComponent {}\n","import {\n Component,\n Input,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-gallery-image',\n templateUrl: './gallery-image.component.html',\n})\nexport class DaffGalleryImageComponent {\n @HostBinding('class.daff-image-gallery__daff-gallery-image--selected') @Input() selected: boolean;\n @HostBinding('class.daff-image-gallery__daff-gallery-image') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-image-list',\n template: '<ng-content></ng-content>',\n styleUrls: ['./image-list.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffImageListComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-image-list') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffImageListComponent } from './image-list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffImageListComponent,\n ],\n exports: [\n DaffImageListComponent,\n ],\n})\nexport class DaffImageListModule { }\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffImageListModule } from '../image-list/public_api';\nimport { DaffGalleryImageComponent } from './gallery-image/gallery-image.component';\nimport { DaffImageGalleryComponent } from './image-gallery/image-gallery.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DaffImageListModule,\n ],\n declarations: [\n DaffImageGalleryComponent,\n DaffGalleryImageComponent,\n ],\n exports: [\n DaffImageGalleryComponent,\n DaffGalleryImageComponent,\n ],\n})\nexport class DaffImageGalleryModule { }\n","import {\n Component,\n HostBinding,\n ViewEncapsulation,\n Input,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n/**\n * DaffLinkSetComponent is a component for displaying a two or more links.\n */\n@Component({\n selector: 'daff-link-set',\n template: '<ng-content></ng-content>',\n styleUrls: ['./link-set.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffLinkSetComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * A directive for adding a heading to a daff-link-set.\n */\n@Directive({\n selector: '[daffLinkSetHeading]',\n})\nexport class DaffLinkSetHeadingDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set__heading') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n HostBinding,\n} from '@angular/core';\n\n@Component ({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'a[daff-link-set-item]',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffLinkSetItemComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set__item') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * A directive for adding a subheading to a daff-link-set.\n */\n@Directive({\n selector: '[daffLinkSetSubheading]',\n})\nexport class DaffLinkSetSubheadingDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-link-set__subheading') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffLinkSetHeadingDirective } from './link-set-heading/link-set-heading.directive';\nimport { DaffLinkSetItemComponent } from './link-set-item/link-set-item.component';\nimport { DaffLinkSetSubheadingDirective } from './link-set-subheading/link-set-subheading.directive';\nimport { DaffLinkSetComponent } from './link-set/link-set.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n DaffLinkSetComponent,\n DaffLinkSetHeadingDirective,\n DaffLinkSetSubheadingDirective,\n DaffLinkSetItemComponent,\n ],\n declarations: [\n DaffLinkSetComponent,\n DaffLinkSetHeadingDirective,\n DaffLinkSetSubheadingDirective,\n DaffLinkSetItemComponent,\n ],\n})\nexport class DaffLinkSetModule {}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n ContentChild,\n ElementRef,\n} from '@angular/core';\n\nimport {\n DaffPrefixDirective,\n DaffSuffixDirective,\n} from '../../../core/prefix-suffix/public_api';\n\n@Component({\n selector:\n 'daff-list-item' + ',' +\n 'a[daff-list-item]',\n templateUrl: './list-item.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffListItemComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-list-item') class = true;\n\n /**\n * @docs-private\n */\n @ContentChild(DaffPrefixDirective) _prefix: DaffPrefixDirective;\n /**\n * @docs-private\n */\n @ContentChild(DaffSuffixDirective) _suffix: DaffSuffixDirective;\n\n constructor(private elementRef: ElementRef) {}\n\n /**\n * Sets the role for a regular `<daff-list-item>` to listitem.\n *\n * @docs-private\n */\n @HostBinding('attr.role') get role() {\n return this._isAnchor() ? null : 'listitem';\n };\n\n private _getHostElement() {\n return this.elementRef.nativeElement;\n }\n\n /** Gets whether a list item has one of the given attributes. */\n private _isAnchor() {\n return this.elementRef.nativeElement.localName === 'a';\n }\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * @deprecated\n */\n@Directive({\n selector: '[daffListSubheader]',\n})\nexport class DaffListSubheaderDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-list__subheader') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n HostBinding,\n ElementRef,\n} from '@angular/core';\n\n/**\n * @deprecated\n * DaffListMode will be completely deprecated in v1.0.0\n * */\nexport type DaffListMode = 'multi-line' | 'link' | 'navigation' | undefined;\nexport enum DaffListModeEnum {\n Multiline = 'multi-line',\n Link = 'link',\n Navigation = 'navigation'\n}\n\nexport type DaffListType = 'daff-list' | 'daff-nav-list';\n\nenum DaffListTypeEnum {\n Default = 'daff-list',\n Nav = 'daff-nav-list'\n}\n\n@Component({\n selector:\n 'daff-list' + ',' +\n 'daff-nav-list',\n template: '<ng-content></ng-content>',\n styleUrls: ['./list.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffListComponent {\n /**\n * @deprecated\n * */\n @Input() mode: DaffListMode;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-list') get list() {\n return this.listType === DaffListTypeEnum.Default;\n }\n\n /**\n * @docs-private\n * @deprecated\n * */\n @HostBinding('class.daff-list--multi-line') get multiline() {\n return this.mode === DaffListModeEnum.Multiline;\n }\n\n /**\n * @docs-private\n * @deprecated\n * */\n @HostBinding('class.daff-list--link') get link() {\n return this.mode === DaffListModeEnum.Link;\n }\n\n /**\n * @docs-private\n * @deprecated\n * */\n @HostBinding('class.daff-list--navigation') get navigation() {\n return this.mode === DaffListModeEnum.Navigation;\n }\n\n /**\n * @docs-private\n */\n get listType(): DaffListType {\n return this._getHostElement().localName;\n }\n\n constructor(private elementRef: ElementRef) {}\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-nav-list') get nav() {\n return this.listType === DaffListTypeEnum.Nav;\n }\n\n /**\n * Sets the role for a `<daff-nav-list>` to navigation.\n *\n * @docs-private\n */\n @HostBinding('attr.role') get role() {\n return this.listType === DaffListTypeEnum.Nav ? 'navigation' : 'list';\n };\n\n private _getHostElement() {\n return this.elementRef.nativeElement;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffPrefixSuffixModule } from '../../core/prefix-suffix/prefix-suffix.module';\nimport { DaffListItemComponent } from './list-item/list-item.component';\nimport { DaffListSubheaderDirective } from './list-subheader/list-subheader.directive';\nimport { DaffListComponent } from './list/list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DaffPrefixSuffixModule,\n ],\n declarations: [\n DaffListComponent,\n DaffListSubheaderDirective,\n DaffListItemComponent,\n ],\n exports: [\n DaffListComponent,\n DaffListSubheaderDirective,\n DaffListItemComponent,\n DaffPrefixSuffixModule,\n ],\n})\nexport class DaffListModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffFadeAnimations: {\n\treadonly 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 CdkPortalOutlet,\n ComponentPortal,\n} from '@angular/cdk/portal';\nimport {\n Component,\n Output,\n EventEmitter,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewChild,\n HostListener,\n} from '@angular/core';\n\nimport { daffFadeAnimations } from '../animations/modal-animation';\nimport { getAnimationState } from '../animations/modal-animation-state';\n\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})\nexport class DaffModalComponent {\n\t/**\n\t * Dictates whether or not a modal is open or closed.\n\t */\n\t@Input() open = false;\n\n\t/**\n\t * The CDK Portal outlet used to portal content into the modal.\n\t */\n\t@ViewChild(CdkPortalOutlet, { static: true }) private _portalOutlet: CdkPortalOutlet;\n\n\t/**\n\t * Event fired when the close animation is completed.\n\t */\n\tanimationCompleted: EventEmitter<any> = new EventEmitter<any>();\n\n\t/**\n\t * Event fired when the close animation is completed.\n\t */\n\tclosedAnimationCompleted: EventEmitter<any> = new EventEmitter<\n\t\tany\n\t>();\n\n\t/**\n\t * Event fired when the backdrop is clicked\n\t * This is often used to close the modal\n\t */\n\thide: EventEmitter<void> = new EventEmitter<void>();\n\n\t/**\n\t * Hostbinding to set the default modal class on the host element\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-modal') modalClass = true;\n\n\t/**\n\t * Helper method to attach portable content to modal\n\t */\n\tattachContent(portal: ComponentPortal<any>): any {\n\t this._portalOutlet.attachComponentPortal(portal);\n\t}\n\n\t/**\n\t * Animation hook that controls the entrance and exit animations\n\t * of the modal\n\t */\n\t@HostBinding('@fade') get fadeState(): string {\n\t return getAnimationState(this.open);\n\t}\n\n\t/**\n\t * Animation event that can used to hook into when\n\t * animations are fully completed. We use this in the DaffModalService\n\t * to determine when to actually remove the dynamically rendered element from the DOM\n\t * so that the animation does not clip as the element is removed.\n\t */\n\t@HostListener('@fade.done', ['$event'])\n\tanimationDone(e: AnimationEvent) {\n\t this.animationCompleted.emit(e);\n\t if (e.toState === 'closed') {\n\t this.closedAnimationCompleted.emit(e);\n\t }\n\t}\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'daff-modal-actions',\n template: '<ng-content></ng-content>',\n styleUrls: ['./modal-actions.component.scss'],\n})\nexport class DaffModalActionsComponent { }\n","import {\n Component,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-content',\n template: '<ng-content></ng-content>',\n styleUrls: ['./modal-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalContentComponent {}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-header',\n template: '<ng-content></ng-content>',\n styleUrls: ['./modal-header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalHeaderComponent {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-header') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffModalTitle]',\n})\nexport class DaffModalTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-title') class = true;\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\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 { DaffModalComponent } from './modal/modal.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PortalModule,\n OverlayModule,\n ],\n exports: [\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n ],\n declarations: [\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n ],\n})\nexport class DaffModalModule { }\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} from '@angular/core';\n\nimport { DaffModal } from '../modal';\nimport { DaffModalModule } from '../modal.module';\nimport { DaffModalConfiguration } from '../modal/modal-config';\nimport { DaffModalComponent } from '../modal/modal.component';\n\n@Injectable({\n providedIn: DaffModalModule,\n})\nexport class DaffModalService {\n\tprivate _modals: DaffModal[] = [];\n\n\tconstructor(private overlay: Overlay) {}\n\n\tprivate defaultConfiguration: DaffModalConfiguration = {};\n\n\tprivate _attachModal(\n\t overlayRef: OverlayRef,\n\t): ComponentRef<DaffModalComponent> {\n\t const modal = overlayRef.attach(new ComponentPortal(DaffModalComponent));\n\t modal.instance.open = true;\n\t return modal;\n\t}\n\n\tprivate _attachModalContent(\n\t component: Type<any>,\n\t modal: ComponentRef<DaffModalComponent>,\n\t): void {\n\t modal.instance.attachContent(new ComponentPortal(component));\n\t}\n\n\tprivate _createOverlayRef(): OverlayRef {\n\t return this.overlay.create({\n\t hasBackdrop: true,\n\t positionStrategy: new GlobalPositionStrategy()\n\t .centerHorizontally()\n\t .centerVertically(),\n\t scrollStrategy: this.overlay.scrollStrategies.block(),\n\t });\n\t}\n\n\tprivate _removeModal(modal: DaffModal) {\n\t const index = this._modals.indexOf(modal);\n\t if (index === -1) {\n\t throw new Error(\n\t 'The Modal that you are trying to remove does not exist.',\n\t );\n\t }\n\n\t modal.overlay.dispose();\n\n\t this._modals = this._modals.filter(m => m !== modal);\n\t}\n\n\topen(\n\t component: Type<any>,\n\t configuration?: Partial<DaffModalConfiguration>,\n\t): DaffModal {\n\t const config = { ...this.defaultConfiguration, ...configuration };\n\t const _ref = this._createOverlayRef();\n\t const _modal = this._attachModal(_ref);\n\t const _attachedModal = this._attachModalContent(component, _modal);\n\n\t const modal: DaffModal = {\n\t modal: _modal,\n\t overlay: _ref,\n\t };\n\n\t this._modals.push(modal);\n\n\t _ref\n\t .backdropClick()\n\t .subscribe(() =>\n\t config.onBackdropClicked\n\t ? config.onBackdropClicked()\n\t : this.close(modal),\n\t );\n\t return modal;\n\t}\n\n\tclose(modal: DaffModal): void {\n\t modal.modal.instance.open = false;\n\t modal.overlay.detachBackdrop();\n\t modal.modal.instance.closedAnimationCompleted.subscribe(\n\t (e: AnimationEvent) => this._removeModal(modal),\n\t );\n\t}\n}\n","import {\n Component,\n Input,\n ElementRef,\n HostBinding,\n Renderer2,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\nimport {\n DaffColorable,\n DaffPalette,\n daffColorMixin,\n} from '../../core/colorable/public_api';\n\n/**\n * An _elementRef is needed for the Colorable mixin\n */\nclass DaffNavbarBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffNavbarBase = daffColorMixin(DaffNavbarBase);\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-navbar',\n styleUrls: ['./navbar.component.scss'],\n template: '<ng-content></ng-content>',\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffNavbarComponent extends _daffNavbarBase implements DaffColorable {\n\n @Input() shadowed = false;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-navbar--shadowed') get shadowClass() {\n return this.shadowed;\n };\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-navbar') hostClass = true;\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { DaffNavbarComponent } from './navbar.component';\n\n@NgModule({\n declarations: [\n DaffNavbarComponent,\n ],\n exports: [\n DaffNavbarComponent,\n ],\n})\nexport class DaffNavbarModule { }\n","export const DaffPaginatorNumberOfPagesErrorMessage = 'The numberOfPages in the daff-paginator must not be less than 1';\nexport const DaffPaginatorPageOutOfRangeErrorMessage = 'The numberOfPages in the daff-paginator should not be less than the currentPage';\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n HostBinding,\n ElementRef,\n OnChanges,\n ChangeDetectionStrategy,\n Renderer2,\n OnInit,\n} from '@angular/core';\nimport {\n faChevronRight,\n faChevronLeft,\n} from '@fortawesome/free-solid-svg-icons';\n\nimport {\n daffColorMixin,\n DaffPalette,\n DaffColorable,\n} from '../../core/colorable/public_api';\nimport {\n DaffPaginatorNumberOfPagesErrorMessage,\n DaffPaginatorPageOutOfRangeErrorMessage,\n} from './paginator-errors';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffPaginatorBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffPaginatorBase = daffColorMixin(DaffPaginatorBase);\n\nconst visiblePageRange = 2;\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-paginator',\n styleUrls: ['./paginator.component.scss'],\n templateUrl: './paginator.component.html',\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffPaginatorComponent extends _daffPaginatorBase implements OnChanges, DaffColorable {\n\n\t/**\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-paginator') class = true;\n\t/**\n\t * @docs-private\n\t */\n @HostBinding('attr.role') role = 'navigation';\n\n\t/**\n\t * @docs-private\n\t */\n\tfaChevronRight = faChevronRight;\n\t/**\n\t * @docs-private\n\t */\n faChevronLeft = faChevronLeft;\n\n\t/**\n\t * @docs-private\n\t */\n\t_paginatorId: string;\n\n\tconstructor(private elementRef: ElementRef, private renderer: Renderer2) {\n\t super(elementRef, renderer);\n\t const ariaLabel = elementRef.nativeElement.attributes['aria-label'];\n\t this._paginatorId = ariaLabel ? ariaLabel.nodeValue : null;\n\t}\n\n /**\n * The total number of pages the paginator tracks. This number can change dynamically, but the end user is responsible for keeping numberOfPages\n * and currentPage in sync. For example, if the numberOfPages is dynamically changed to a value less than the currentPage, the paginator will break.\n */\n @Input() numberOfPages: number;\n\n /**\n * The currently selected page.\n */\n @Input() currentPage: number;\n\n /**\n * @docs-private\n */\n _numberOfPagesArray: number[];\n\n /**\n * Emits when the current page changes with the new current page.\n */\n @Output() notifyPageChange: EventEmitter<any> = new EventEmitter();\n\n /**\n * @docs-private\n */\n ngOnChanges() {\n if(this.numberOfPages < 1) {\n throw new Error(DaffPaginatorNumberOfPagesErrorMessage);\n } else if(this.numberOfPages < this.currentPage) {\n throw new Error(DaffPaginatorPageOutOfRangeErrorMessage);\n }\n\n this._numberOfPagesArray = this.numberOfPages < 2 ? [] : Array(this.numberOfPages-2).fill(this.numberOfPages-2).map((x,i)=>i+2);\n }\n\n /**\n * Emits the previous page number through notifyPageChange Output.\n *\n * @docs-private\n */\n _onNotifyPrevPageChange() {\n this.notifyPageChange.emit(this.currentPage - 1);\n }\n\n /**\n * Emits the next page number through notifyPageChange Output.\n *\n * @docs-private\n */\n _onNotifyNextPageChange() {\n this.notifyPageChange.emit(this.currentPage + 1);\n }\n\n /**\n * Emits a pageNumber to notifyPageChange Output.\n *\n * @docs-private\n * @param pageNumber a page number\n */\n _onNotifyPageChange(pageNumber: number) {\n this.notifyPageChange.emit(pageNumber);\n }\n\n /**\n * A simple function that determines if the given page number is the current page number.\n *\n * @docs-private\n * @param page a page number\n */\n _isSelected(page: number): boolean {\n return page === this.currentPage;\n }\n\n /**\n * Determines when ellipsis after the first page number should show.\n *\n * @docs-private\n */\n _showFirstEllipsis(): boolean {\n return this.currentPage >= visiblePageRange+2;\n }\n\n /**\n * Determines when ellipsis before the final page number should show.\n *\n * @docs-private\n */\n _showLastEllipsis(): boolean {\n return this.currentPage < (this.numberOfPages - visiblePageRange);\n }\n\n /**\n * Determines if the given page number should be shown. The two additional 'or' conditionals are needed\n * so the paginator retains the same total width at the extreme page numbers (1 and numberOfPages).\n *\n * @docs-private\n * @param pageNumber page number to check.\n */\n _showNumber(pageNumber: number): boolean {\n return Math.abs(this.currentPage - pageNumber) < visiblePageRange\n || (this.currentPage <= visiblePageRange && pageNumber <= 2*visiblePageRange)\n || (this.currentPage > this.numberOfPages - visiblePageRange && pageNumber > this.numberOfPages - 2*visiblePageRange);\n }\n\n /**\n * Determines when the Previous button should be disabled.\n *\n * @docs-private\n */\n _disablePrev(): boolean {\n return this.currentPage === 1;\n }\n\n /**\n * Determines when the Next button should be disabled.\n *\n * @docs-private\n */\n _disableNext(): boolean {\n return this.currentPage === this.numberOfPages;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffButtonModule } from '../../atoms/button/public_api';\nimport { DaffPaginatorComponent } from './paginator.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FontAwesomeModule,\n DaffButtonModule,\n ],\n declarations: [\n DaffPaginatorComponent,\n ],\n exports: [\n DaffPaginatorComponent,\n ],\n})\nexport class DaffPaginatorModule {}\n","import {\n Component,\n OnInit,\n Input,\n Renderer2,\n Output,\n EventEmitter,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-qty-dropdown',\n styleUrls: ['./qty-dropdown.component.scss'],\n templateUrl: './qty-dropdown.component.html',\n})\nexport class DaffQtyDropdownComponent implements OnInit {\n\n private readonly dropdownRange = 9;\n\n @Input() qty: number;\n @Input() id: number | string;\n @Output() qtyChanged: EventEmitter<number> = new EventEmitter<number>();\n\n\t/**\n\t * @docs-private\n\t */\n\tdropdownItemCounter: number[];\n\t/**\n\t * @docs-private\n\t */\n\tinputHasBeenShown: boolean;\n\t/**\n\t * @docs-private\n\t */\n\tonChange = (qty: number) => {};\n\t/**\n\t * @docs-private\n\t */\n onTouched = () => {};\n\n constructor(private renderer: Renderer2) { }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this.dropdownItemCounter = Array.from(Array(this.dropdownRange),(x,i)=>i);\n\n if (!this.qty) {\n this.qty = 1;\n }\n }\n\n /**\n * @docs-private\n */\n writeValue(qty: number): void {\n this.qty = qty;\n this.onChange(this.qty);\n }\n\n /**\n * @docs-private\n */\n registerOnChange(fn: (qty: number) => void): void {\n this.onChange = fn;\n }\n\n /**\n * @docs-private\n */\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n /**\n * @docs-private\n */\n setDisabledState(isDisabled: boolean): void {\n if (this.inputHasBeenShown) {\n this.renderer.setProperty(document.getElementById('input_' + this.id), 'disabled', isDisabled);\n } else {\n this.renderer.setProperty(document.getElementById('select_' + this.id), 'disabled', isDisabled);\n }\n }\n\n /**\n * @docs-private\n */\n get showQtyInputField(): boolean {\n if (!this.isQtyOutsideDropdownRange() && !this.inputHasBeenShown) {\n return false;\n } else {\n this.inputHasBeenShown = true;\n return true;\n }\n }\n\n /**\n * @docs-private\n */\n onChangedWrapper(value: any) {\n value = parseInt(value, 10);\n if (value === 10) {\n this.selectInput();\n }\n this.qtyChanged.emit(value);\n this.onChange(value);\n }\n\n private isQtyOutsideDropdownRange() {\n return this.qty > this.dropdownRange;\n }\n\n private selectInput() {\n const that = this;\n setTimeout(() => {\n const input = <HTMLInputElement>document.getElementById('input_' + that.id);\n input.select();\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { DaffFormFieldModule } from '../../atoms/form/form-field/form-field.module';\nimport { DaffInputModule } from '../../atoms/form/input/input.module';\nimport { DaffNativeSelectModule } from '../../atoms/form/select/select.module';\nimport { DaffQtyDropdownComponent } from './qty-dropdown.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DaffFormFieldModule,\n DaffNativeSelectModule,\n DaffInputModule,\n ],\n declarations: [\n DaffQtyDropdownComponent,\n ],\n exports: [\n DaffQtyDropdownComponent,\n ],\n})\nexport class DaffQtyDropdownModule { }\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst duration = '350ms';\nconst sidebarAnimateRemainTransition = 'cubic-bezier(0.4, 0.0, 0.2, 1)';\nconst sidebarAnimateInTransition = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\nconst sidebarAnimateOutTransition = 'cubic-bezier(0.4, 0.0, 1, 1)';\n\nexport const daffSidebarAnimations: {\n readonly transformSidebar: AnimationTriggerMetadata;\n readonly transformContent: AnimationTriggerMetadata;\n } = {\n transformSidebar: trigger('transformSidebar', [\n // We remove the `transform` here completely, rather than setting it to zero, because:\n // 1. 3d transforms causes text to appear blurry on IE and Edge.\n state('open', style({\n transform: 'none',\n visibility: 'visible',\n })),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n transformContent: trigger('transformContent', [\n state('closed', style({\n transform: 'none',\n })),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n };\n\nexport enum DaffSidebarAnimationStates {\n OPEN = 'open',\n CLOSED = 'closed'\n}\n","export const getAnimationState = (open: boolean, enabled: boolean = true) => {\n if(!enabled){\n return 'open';\n }\n if(open && enabled){\n return 'open';\n } else {\n return 'closed';\n }\n};\n","import {\n Component,\n ViewEncapsulation,\n NgZone,\n ElementRef,\n Output,\n EventEmitter,\n HostBinding,\n} from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\n/**\n * DaffSidebar is heavily based upon the work done by the @angular/material2\n * team on `mat-drawer` and `mat-sidenav`. `daff-sidebar` is intended to be\n * a simplified version (with a different design) of `mat-drawer` which\n * follows a stricter \"dumb\" component pattern than `mat-drawer`\n */\n@Component({\n selector: 'daff-sidebar',\n styleUrls: ['./sidebar.component.scss'],\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffSidebarComponent {\n @HostBinding('class.daff-sidebar') class = true;\n /**\n * Event fired when `ESC` key is pressed when the sidebar has focus\n */\n @Output() escapePressed: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n ) {\n\n /**\n * Listen to `keydown` events outside the zone so that change detection is not run every\n * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed.\n *\n */\n this._ngZone.runOutsideAngular(() => {\n fromEvent<KeyboardEvent>(this._elementRef.nativeElement, 'keydown').pipe(\n filter(event => event.key === 'Escape'),\n ).subscribe(event => this._ngZone.run(() => {\n this.escapePressed.emit();\n event.stopPropagation();\n }));\n });\n }\n}\n","import {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n OnInit,\n ContentChild,\n ChangeDetectorRef,\n AfterViewInit,\n} from '@angular/core';\n\nimport { daffSidebarAnimations } from '../animation/sidebar-animation';\nimport { getAnimationState } from '../animation/sidebar-animation-state';\nimport { DaffSidebarMode } from '../helper/sidebar-mode';\nimport { DaffSidebarComponent } from '../sidebar/sidebar.component';\n\n@Component({\n selector: 'daff-sidebar-viewport',\n templateUrl: './sidebar-viewport.component.html',\n styleUrls: ['./sidebar-viewport.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n daffSidebarAnimations.transformSidebar,\n daffSidebarAnimations.transformContent,\n ],\n})\nexport class DaffSidebarViewportComponent implements OnInit, AfterViewInit {\n\n constructor(private ref: ChangeDetectorRef) {\n }\n /**\n * @docs-private\n */\n _animationState: string;\n\n /**\n * @docs-private\n */\n @ContentChild(DaffSidebarComponent) sidebar: DaffSidebarComponent;\n /**\n * Internal tracking variable for the state of sidebar viewport.\n *\n * @docs-private\n */\n _opened = false;\n\n /**\n * @docs-private\n */\n _mode: DaffSidebarMode = 'side';\n\n /**\n * The mode to put the sidebar in\n */\n @Input()\n get mode(): DaffSidebarMode {\n return this._mode;\n }\n set mode(value: DaffSidebarMode) {\n this._mode = value;\n this._animationState = getAnimationState(this.opened, this.animationsEnabled);\n }\n\n /**\n * Input state for whether or not the backdrop is\n * \"visible\" to the human eye\n */\n // eslint-disable-next-line @typescript-eslint/no-inferrable-types\n @Input() backdropIsVisible: boolean = true;\n\n\t/**\n\t * Property for the \"opened\" state of the sidebar\n\t */\n\t@Input()\n get opened(): boolean {\n return this._opened;\n }\n\tset opened(value: boolean) {\n\t this._opened = value;\n\t this._animationState = getAnimationState(value, this.animationsEnabled);\n\t}\n /**\n * Event fired when the backdrop is clicked\n * This is often used to close the sidebar\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * @docs-private\n */\n get animationsEnabled(): boolean {\n return (this.mode === 'over' || this.mode === 'push') ? true : false;\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this._animationState = getAnimationState(this.opened, this.animationsEnabled);\n }\n\n /**\n * @docs-private\n */\n ngAfterViewInit() {\n if (this.sidebar) {\n this.sidebar.escapePressed.subscribe(() => {\n this.onEscape();\n });\n }\n }\n\n /**\n * @docs-private\n */\n _backdropClicked(): void {\n this.backdropClicked.emit();\n }\n\n /**\n * @docs-private\n */\n get hasBackdrop(): boolean {\n return (this.mode === 'over' || this.mode === 'push');\n }\n\n /**\n * @docs-private\n */\n onEscape() {\n if (this.hasBackdrop) {\n this.opened = false;\n this.ref.markForCheck();\n }\n }\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffBackdropModule } from '../backdrop/backdrop.module';\nimport { DaffSidebarViewportComponent } from './sidebar-viewport/sidebar-viewport.component';\nimport { DaffSidebarComponent } from './sidebar/sidebar.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n DaffBackdropModule,\n A11yModule,\n ],\n declarations: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n ],\n exports: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n ],\n})\nexport class DaffSidebarModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffHeroSubtitle]',\n})\n\nexport class DaffHeroSubtitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-hero__subtitle') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffHeroTagline]',\n})\n\nexport class DaffHeroTaglineDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-hero__tagline') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffHeroTitle]',\n})\n\nexport class DaffHeroTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-hero__title') class = true;\n}\n","import {\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\nimport { Constructor } from '../constructor/constructor';\nimport { DaffTextAlignment } from './text-alignable';\n\ninterface HasElementRef {\n _elementRef: ElementRef;\n _renderer: Renderer2;\n}\n\nexport function\ndaffTextAlignmentMixin<T extends Constructor<HasElementRef>>(Base: T, defaultTextAlignment?: DaffTextAlignment) {\n class DaffTextAlignableMixin extends Base {\n // TODO move this back to private in Typescript 3.1\n _textAlignment: DaffTextAlignment;\n\n /**\n * Controls text alignment for component-specific UI\n */\n @Input()\n get textAlignment(): DaffTextAlignment {\n return this._textAlignment;\n }\n set textAlignment(value: DaffTextAlignment) {\n // Handles the default text alignment\n const incomingTextAlignment = value || defaultTextAlignment;\n\n if (incomingTextAlignment === this._textAlignment) { // Only run the dom-render if a change occurs\n return;\n }\n\n // Removes the old text alignment\n if (this._textAlignment) {\n this._renderer.removeClass(this._elementRef.nativeElement, `daff-${this._textAlignment}`);\n }\n\n if (incomingTextAlignment) {\n this._renderer.addClass(this._elementRef.nativeElement, `daff-${incomingTextAlignment}`);\n }\n\n this._textAlignment = incomingTextAlignment;\n }\n\n constructor(...args: any[]) {\n super(...args);\n this.textAlignment = defaultTextAlignment;\n }\n };\n return DaffTextAlignableMixin;\n}\n","import {\n Component,\n ViewEncapsulation,\n Input,\n ElementRef,\n ChangeDetectionStrategy,\n HostBinding,\n Renderer2,\n} from '@angular/core';\n\nimport {\n DaffPalette,\n daffColorMixin,\n DaffColorable,\n} from '../../../core/colorable/public_api';\nimport {\n DaffTextAlignable,\n DaffTextAlignment,\n} from '../../../core/text-alignable/text-alignable';\nimport { daffTextAlignmentMixin } from '../../../core/text-alignable/text-alignable-mixin';\n\n// DaffHeroLayout will be deprecated in v1.0.0\nexport type DaffHeroLayout = 'centered' | undefined;\nexport enum DaffHeroLayoutEnum {\n Centered = 'centered'\n}\n\n// DaffHeroSize will be deprecated in v1.0.0 and replaced with a DaffCompactable interface\nexport type DaffHeroSize = 'compact' | 'small' | undefined;\nexport enum DaffHeroSizeEnum {\n Compact = 'compact',\n Small = 'small' // Small will be deprecated in v1.0.0\n}\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffHeroBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffHeroBase = daffColorMixin(daffTextAlignmentMixin(DaffHeroBase));\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-hero',\n template: '<ng-content></ng-content>',\n styleUrls: ['./hero.component.scss'],\n encapsulation: ViewEncapsulation.None,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'textAlignment'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffHeroComponent extends _daffHeroBase implements DaffColorable, DaffTextAlignable {\n\n @Input() layout: DaffHeroLayout; // Will be deprecated in v1.0.0\n @Input() size: DaffHeroSize; // Will be deprecated in v1.0.0\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n\n /**\n * @docs-private\n */\n\t@HostBinding('class.daff-hero') class = true;\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-hero--centered') get centered() {\n\t return this.layout === DaffHeroLayoutEnum.Centered;\n\t}\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-hero--small') get small() {\n\t return this.size === DaffHeroSizeEnum.Small;\n\t}\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-hero--compact') get compact() {\n\t return this.size === DaffHeroSizeEnum.Compact;\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffHeroSubtitleDirective } from './hero-subtitle/hero-subtitle.directive';\nimport { DaffHeroTaglineDirective } from './hero-tagline/hero-tagline.directive';\nimport { DaffHeroTitleDirective } from './hero-title/hero-title.directive';\nimport { DaffHeroComponent } from './hero/hero.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffHeroComponent,\n DaffHeroTaglineDirective,\n DaffHeroTitleDirective,\n DaffHeroSubtitleDirective,\n ],\n exports: [\n DaffHeroComponent,\n DaffHeroTaglineDirective,\n DaffHeroTitleDirective,\n DaffHeroSubtitleDirective,\n ],\n})\nexport class DaffHeroModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n @Directive({\n selector: '[daffCalloutSubtitle]',\n })\n\nexport class DaffCalloutSubtitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-callout__subtitle') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCalloutTagline]',\n})\n\nexport class DaffCalloutTaglineDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-callout__tagline') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCalloutTitle]',\n})\n\nexport class DaffCalloutTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-callout__title') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n Input,\n ElementRef,\n ChangeDetectionStrategy,\n HostBinding,\n Renderer2,\n} from '@angular/core';\n\nimport {\n DaffColorable,\n daffColorMixin,\n} from '../../../core/colorable/public_api';\nimport {\n DaffTextAlignable,\n DaffTextAlignment,\n} from '../../../core/text-alignable/text-alignable';\nimport { daffTextAlignmentMixin } from '../../../core/text-alignable/text-alignable-mixin';\n\n// DaffCalloutLayout will be deprecated in v1.0.0\nexport type DaffCalloutLayout = 'centered' | undefined;\nexport enum DaffCalloutLayoutEnum {\n Centered = 'centered'\n}\n\n// DaffCalloutSize will be deprecated in v1.0.0 and replaced with a DaffCompactable interface\nexport type DaffCalloutSize = 'compact' | undefined;\nexport enum DaffCalloutSizeEnum {\n Compact = 'compact'\n}\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffCalloutBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffCalloutBase = daffColorMixin(daffTextAlignmentMixin(DaffCalloutBase));\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: 'daff-callout',\n template: '<ng-content></ng-content>',\n styleUrls: ['./callout.component.scss'],\n encapsulation: ViewEncapsulation.None,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color', 'textAlignment'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffCalloutComponent extends _daffCalloutBase implements DaffColorable, DaffTextAlignable {\n @Input() layout: DaffCalloutLayout; // Will be deprecated in v1.0.0\n @Input() size: DaffCalloutSize; // Will be deprecated in v1.0.0\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n\n /**\n * @docs-private\n */\n\t@HostBinding('class.daff-callout') class = true;\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-callout--centered') get centered() {\n\t return this.layout === DaffCalloutLayoutEnum.Centered;\n\t}\n\n\t/**\n\t * Will be deprecated in v1.0.0\n\t *\n\t * @docs-private\n\t */\n\t@HostBinding('class.daff-callout--compact') get compact() {\n\t return this.size === DaffCalloutSizeEnum.Compact;\n\t}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffCalloutSubtitleDirective } from './callout-subtitle/callout-subtitle.directive';\nimport { DaffCalloutTaglineDirective } from './callout-tagline/callout-tagline.directive';\nimport { DaffCalloutTitleDirective } from './callout-title/callout-title.directive';\nimport { DaffCalloutComponent } from './callout/callout.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffCalloutComponent,\n DaffCalloutTitleDirective,\n DaffCalloutSubtitleDirective,\n DaffCalloutTaglineDirective,\n ],\n exports: [\n DaffCalloutComponent,\n DaffCalloutSubtitleDirective,\n DaffCalloutTitleDirective,\n DaffCalloutTaglineDirective,\n ],\n})\n\nexport class DaffCalloutModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive ({\n selector: '[daffFeatureIcon]',\n})\nexport class DaffFeatureIconDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__icon') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffFeatureSubheader]',\n})\nexport class DaffFeatureSubheaderDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__subheader') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffFeatureSubtitle]',\n})\nexport class DaffFeatureSubtitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__subtitle') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffFeatureTitle]',\n})\nexport class DaffFeatureTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature__title') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n HostBinding,\n} from '@angular/core';\n\nexport type DaffFeatureMode = 'compact' | 'normal' | undefined;\nexport enum DaffFeatureModeEnum {\n Compact = 'compact',\n Normal = 'normal'\n}\n\n@Component({\n selector: 'daff-feature',\n templateUrl: './feature.component.html',\n styleUrls: ['./feature.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffFeatureComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature') class = true;\n\n @Input() mode: DaffFeatureMode = DaffFeatureModeEnum.Normal;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature--compact') get compact() {\n return this.mode === DaffFeatureModeEnum.Compact;\n }\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-feature--normal') get normal() {\n return this.mode === DaffFeatureModeEnum.Normal;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffFeatureIconDirective } from './feature-icon/feature-icon.directive';\nimport { DaffFeatureSubheaderDirective } from './feature-subheader/feature-subheader.directive';\nimport { DaffFeatureSubtitleDirective } from './feature-subtitle/feature-subtitle.directive';\nimport { DaffFeatureTitleDirective } from './feature-title/feature-title.directive';\nimport { DaffFeatureComponent } from './feature/feature.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffFeatureComponent,\n DaffFeatureTitleDirective,\n DaffFeatureSubtitleDirective,\n DaffFeatureIconDirective,\n DaffFeatureSubheaderDirective,\n ],\n exports: [\n DaffFeatureComponent,\n DaffFeatureTitleDirective,\n DaffFeatureSubtitleDirective,\n DaffFeatureIconDirective,\n DaffFeatureSubheaderDirective,\n ],\n})\nexport class DaffFeatureModule { }\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardActions]',\n})\nexport class DaffCardActionsDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__actions') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardImage]',\n})\nexport class DaffCardImageDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__image') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardTagline]',\n})\nexport class DaffCardTaglineDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__tagline') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffCardTitle]',\n})\nexport class DaffCardTitleDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card__title') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n HostBinding,\n ElementRef,\n Renderer2,\n Input,\n} from '@angular/core';\n\nimport {\n DaffColorable,\n DaffPalette,\n daffColorMixin,\n} from '../../../core/colorable/public_api';\n\n/**\n * An _elementRef and an instance of renderer2 are needed for the Colorable mixin\n */\nclass DaffCardBase {\n constructor(public _elementRef: ElementRef, public _renderer: Renderer2) {}\n}\n\nconst _daffCardBase = daffColorMixin(DaffCardBase);\n\n/**\n * @inheritdoc\n */\n@Component({\n selector: '' +\n 'daff-card' + ',' +\n 'a[daff-card]',\n templateUrl: './card.component.html',\n styleUrls: ['./card.component.scss'],\n encapsulation: ViewEncapsulation.None,\n //todo(damienwebdev): remove once decorators hit stage 3 - https://github.com/microsoft/TypeScript/issues/7342\n // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property\n inputs: ['color'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffCardComponent extends _daffCardBase implements DaffColorable {\n\n @Input() raised = false;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-card') class = true;\n\n @HostBinding('class.daff-card--raised') get raisedClass() {\n return this.raised;\n }\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {\n super(elementRef, renderer);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffCardActionsDirective } from './card-actions/card-actions.directive';\nimport { DaffCardImageDirective } from './card-image/card-image.directive';\nimport { DaffCardTaglineDirective } from './card-tagline/card-tagline.directive';\nimport { DaffCardTitleDirective } from './card-title/card-title.directive';\nimport { DaffCardComponent } from './card/card.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffCardComponent,\n DaffCardTaglineDirective,\n DaffCardTitleDirective,\n DaffCardImageDirective,\n DaffCardActionsDirective,\n ],\n exports: [\n DaffCardComponent,\n DaffCardTaglineDirective,\n DaffCardTitleDirective,\n DaffCardImageDirective,\n DaffCardActionsDirective,\n ],\n})\nexport class DaffCardModule { }\n","export enum DaffBreakpoints {\n DESKTOP = '(min-width: 1920px)',\n\tLAPTOP = '(min-width: 1440px)',\n\tSMALL_LAPTOP = '(min-width: 1200px)',\n\tBIG_TABLET = '(min-width: 1024px)',\n\tTABLET = '(min-width: 768px)',\n\tMOBILE = '(min-width: 480px)',\n}\n","/**\n * A basic constructor type useful for mixins\n * See https://blog.mariusschulz.com/2017/05/26/typescript-2-2-mixin-classes\n * for a really good explanation of why mixins are useful.\n */\n\nexport type Constructor<T = Record<string, any>> = new (...args: any[]) => T;\n","export interface DaffStatusable {\n\tstatus: DaffStatus;\n}\n\nexport type DaffStatus = 'warn' | 'danger' | 'success';\n\nexport enum DaffStatusEnum {\n Warn = 'warn',\n Danger = 'danger',\n Success = 'success'\n}\n","/**\n * An interface for giving a component the ability to customize text alignment for component-specific UI.\n * In order to be text alignable, a component class must implement this property.\n */\nexport interface DaffTextAlignable {\n\ttextAlignment: DaffTextAlignment;\n}\n\nexport type DaffTextAlignment = 'left' | 'center' | 'right';\n\nexport enum DaffTextAlignmentEnum {\n Left = 'left',\n Center = 'center',\n Right = 'right'\n}\n","// Core\nexport * from './prefix-suffix/public_api';\nexport * from './colorable/colorable';\nexport * from './breakpoints/breakpoints';\nexport * from './constructor/constructor';\nexport * from './statusable/statusable';\nexport * from './skeletonable/skeletonable';\nexport * from './mutable/mutable';\nexport * from './text-alignable/text-alignable';\n","/*\n * Public API Surface of @daffodil/design\n */\n\n// Atoms\nexport * from './atoms/button/public_api';\nexport * from './atoms/form/core/public_api';\nexport * from './atoms/form/form-field/public_api';\nexport * from './atoms/form/error-message/public_api';\nexport * from './atoms/image/public_api';\nexport * from './atoms/form/input/public_api';\nexport * from './atoms/form/select/public_api';\nexport * from './atoms/form/checkbox/public_api';\nexport * from './atoms/form/quantity-field/public_api';\nexport * from './atoms/container/public_api';\nexport * from './atoms/loading-icon/public_api';\nexport * from './atoms/progress-indicator/public_api';\nexport * from './atoms/form/radio/public_api';\n\n// Molecules\nexport * from './molecules/accordion/public_api';\nexport * from './molecules/article/public_api';\nexport * from './molecules/backdrop/public_api';\nexport * from './molecules/button-set/public_api';\nexport * from './molecules/image-gallery/public_api';\nexport * from './molecules/image-list/public_api';\nexport * from './molecules/link-set/public_api';\nexport * from './molecules/list/public_api';\nexport * from './molecules/media-gallery/public_api';\nexport * from './molecules/modal/public_api';\nexport * from './molecules/navbar/public_api';\nexport * from './molecules/paginator/public_api';\nexport * from './molecules/qty-dropdown/public_api';\nexport * from './molecules/sidebar/public_api';\nexport * from './molecules/hero/public_api';\nexport * from './molecules/callout/public_api';\nexport * from './molecules/feature/public_api';\nexport * from './molecules/card/public_api';\n\n// Core\nexport * from './core/public_api';\n\n// Examples\nexport * from './examples/public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {DaffRadioRegistry as ɵb} from './atoms/form/radio/registry/radio-registry';\nexport {daffProgressIndicatorAnimation as ɵa} from './atoms/progress-indicator/animation/progress-indicator-animation';\nexport {daffAccordionAnimations as ɵc} from './molecules/accordion/animation/accordion-animation';\nexport {DaffNavAccordionItemComponent as ɵd} from './molecules/accordion/nav-accordion-item/nav-accordion-item.component';\nexport {daffBackdropAnimations as ɵe} from './molecules/backdrop/animation/backdrop-animation';\nexport {DaffMediaGalleryRegistration as ɵh} from './molecules/media-gallery/media-gallery-registration.interface';\nexport {DAFF_MEDIA_GALLERY_TOKEN as ɵf} from './molecules/media-gallery/media-gallery-token';\nexport {DaffMediaRendererComponent as ɵi} from './molecules/media-gallery/media-renderer/media-renderer.component';\nexport {DaffMediaGalleryRegistry as ɵg} from './molecules/media-gallery/registry/media-gallery.registry';\nexport {daffFadeAnimations as ɵj} from './molecules/modal/animations/modal-animation';\nexport {daffSidebarAnimations as ɵk} from './molecules/sidebar/animation/sidebar-animation';"],"names":["getAnimationState"],"mappings":"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"}