@daffodil/design 0.60.0 → 0.62.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/accordion/examples/package.json +1 -1
  2. package/article/examples/package.json +1 -1
  3. package/atoms/button/button.component.d.ts +18 -2
  4. package/atoms/button/button.module.d.ts +2 -1
  5. package/atoms/form/error-message/error-message.component.d.ts +1 -0
  6. package/atoms/form/form-label/form-label.directive.d.ts +6 -0
  7. package/atoms/form/form-label/form-label.module.d.ts +7 -0
  8. package/atoms/form/form-label/public_api.d.ts +2 -0
  9. package/atoms/form/{select/select/select.component.d.ts → native-select/native-select.component.d.ts} +1 -1
  10. package/atoms/form/{select/select.module.d.ts → native-select/native-select.module.d.ts} +1 -1
  11. package/atoms/form/native-select/public_api.d.ts +2 -0
  12. package/atoms/form/quantity-field/quantity-field.module.d.ts +1 -1
  13. package/atoms/form/quantity-field/quantity-select/quantity-select.component.d.ts +1 -1
  14. package/atoms/loading-icon/loading-icon.component.d.ts +3 -3
  15. package/button/examples/examples.d.ts +4 -0
  16. package/button/examples/flat-button/flat-button.component.d.ts +7 -0
  17. package/button/examples/flat-button/flat-button.module.d.ts +9 -0
  18. package/button/examples/package.json +1 -1
  19. package/button/examples/public_api.d.ts +10 -9
  20. package/callout/examples/package.json +1 -1
  21. package/card/examples/package.json +1 -1
  22. package/checkbox/examples/package.json +1 -1
  23. package/container/examples/package.json +1 -1
  24. package/core/animation/animation-state-with-params.d.ts +8 -0
  25. package/core/public_api.d.ts +3 -2
  26. package/core/statusable/public_api.d.ts +2 -0
  27. package/esm2020/atoms/button/button.component.mjs +62 -5
  28. package/esm2020/atoms/button/button.module.mjs +6 -2
  29. package/esm2020/atoms/form/error-message/error-message.component.mjs +10 -4
  30. package/esm2020/atoms/form/form-label/form-label.directive.mjs +19 -0
  31. package/esm2020/atoms/form/form-label/form-label.module.mjs +20 -0
  32. package/esm2020/atoms/form/form-label/public_api.mjs +3 -0
  33. package/esm2020/atoms/form/native-select/native-select.component.mjs +64 -0
  34. package/esm2020/atoms/form/{select/select.module.mjs → native-select/native-select.module.mjs} +2 -2
  35. package/esm2020/atoms/form/native-select/public_api.mjs +3 -0
  36. package/esm2020/atoms/form/quantity-field/quantity-field.module.mjs +2 -2
  37. package/esm2020/atoms/form/quantity-field/quantity-select/quantity-select.component.mjs +3 -3
  38. package/esm2020/atoms/image/image.component.mjs +2 -2
  39. package/esm2020/atoms/loading-icon/loading-icon.component.mjs +4 -5
  40. package/esm2020/button/examples/basic-button/basic-button.component.mjs +7 -6
  41. package/esm2020/button/examples/examples.mjs +19 -0
  42. package/esm2020/button/examples/flat-button/flat-button.component.mjs +24 -0
  43. package/esm2020/button/examples/flat-button/flat-button.module.mjs +30 -0
  44. package/esm2020/button/examples/icon-button/icon-button.component.mjs +6 -5
  45. package/esm2020/button/examples/public_api.mjs +11 -18
  46. package/esm2020/button/examples/raised-button/raised-button.component.mjs +7 -6
  47. package/esm2020/button/examples/sizeable-button/sizeable-button.component.mjs +3 -7
  48. package/esm2020/button/examples/statusable-button/statusable-button.component.mjs +3 -11
  49. package/esm2020/button/examples/stroked-button/stroked-button.component.mjs +7 -6
  50. package/esm2020/button/examples/underline-button/underline-button.component.mjs +7 -6
  51. package/esm2020/button/examples/underline-button/underline-button.module.mjs +1 -1
  52. package/esm2020/callout/examples/callout-text-alignment/callout-text-alignment.component.mjs +1 -1
  53. package/esm2020/callout/examples/callout-theming/callout-theming.component.mjs +1 -1
  54. package/esm2020/callout/examples/callout-with-grid/callout-with-grid.component.mjs +1 -1
  55. package/esm2020/callout/examples/compact-callout/compact-callout.component.mjs +1 -1
  56. package/esm2020/card/examples/basic-card/basic-card.component.mjs +1 -1
  57. package/esm2020/card/examples/card-orientation/card-orientation.component.mjs +1 -1
  58. package/esm2020/checkbox/examples/basic-checkbox/basic-checkbox.component.mjs +1 -1
  59. package/esm2020/checkbox/examples/checkbox-set/checkbox-set.component.mjs +1 -1
  60. package/esm2020/core/animation/animation-state-with-params.mjs +2 -0
  61. package/esm2020/core/public_api.mjs +4 -3
  62. package/esm2020/core/statusable/public_api.mjs +3 -0
  63. package/esm2020/hero/examples/compact-hero/compact-hero.component.mjs +1 -1
  64. package/esm2020/hero/examples/hero-text-alignment/hero-text-alignment.component.mjs +1 -1
  65. package/esm2020/hero/examples/hero-theming/hero-theming.component.mjs +1 -1
  66. package/esm2020/hero/examples/hero-with-grid/hero-with-grid.component.mjs +1 -1
  67. package/esm2020/menu/examples/basic-menu/basic-menu.component.mjs +1 -1
  68. package/esm2020/modal/examples/basic-modal/basic-modal.component.mjs +1 -1
  69. package/esm2020/modal/examples/basic-modal/modal-content.component.mjs +1 -1
  70. package/esm2020/molecules/backdrop/animation/backdrop-animation-state.mjs +2 -0
  71. package/esm2020/molecules/backdrop/animation/backdrop-animation.mjs +6 -2
  72. package/esm2020/molecules/backdrop/backdrop/backdrop.component.mjs +40 -5
  73. package/esm2020/molecules/media-gallery/media-gallery.component.mjs +2 -2
  74. package/esm2020/molecules/qty-dropdown/qty-dropdown.component.mjs +1 -1
  75. package/esm2020/molecules/qty-dropdown/qty-dropdown.module.mjs +2 -2
  76. package/esm2020/molecules/sidebar/animation/sidebar-animation-state.mjs +2 -2
  77. package/esm2020/molecules/sidebar/animation/sidebar-animation-width.mjs +2 -0
  78. package/esm2020/molecules/sidebar/animation/sidebar-animation.mjs +21 -4
  79. package/esm2020/molecules/sidebar/animation/sidebar-viewport-animation-state.mjs +3 -0
  80. package/esm2020/molecules/sidebar/helper/sidebar-mode.mjs +1 -1
  81. package/esm2020/molecules/sidebar/helper/sidebar-side.mjs +2 -0
  82. package/esm2020/molecules/sidebar/public_api.mjs +1 -2
  83. package/esm2020/molecules/sidebar/sidebar/sidebar.component.mjs +62 -10
  84. package/esm2020/molecules/sidebar/sidebar-viewport/backdrop-interactable.mjs +5 -0
  85. package/esm2020/molecules/sidebar/sidebar-viewport/content-pad.mjs +17 -0
  86. package/esm2020/molecules/sidebar/sidebar-viewport/content-shift.mjs +21 -0
  87. package/esm2020/molecules/sidebar/sidebar-viewport/sidebar-viewport.component.mjs +83 -81
  88. package/esm2020/navbar/examples/basic-navbar/basic-navbar.component.mjs +1 -1
  89. package/esm2020/navbar/examples/contained-navbar/contained-navbar.component.mjs +1 -1
  90. package/esm2020/navbar/examples/navbar-theming/navbar-theming.component.mjs +1 -1
  91. package/esm2020/navbar/examples/raised-navbar/raised-navbar.component.mjs +1 -1
  92. package/esm2020/public_api.mjs +3 -2
  93. package/esm2020/sidebar/examples/basic-sidebar/basic-sidebar.component.mjs +12 -0
  94. package/esm2020/sidebar/examples/basic-sidebar/basic-sidebar.module.mjs +29 -0
  95. package/esm2020/sidebar/examples/daffodil-design-sidebar-examples.mjs +5 -0
  96. package/esm2020/sidebar/examples/fixed-and-over-sidebar/fixed-and-over-sidebar.component.mjs +21 -0
  97. package/esm2020/sidebar/examples/fixed-and-over-sidebar/fixed-and-over-sidebar.module.mjs +32 -0
  98. package/esm2020/sidebar/examples/index.mjs +2 -0
  99. package/esm2020/sidebar/examples/public_api.mjs +18 -0
  100. package/esm2020/sidebar/examples/sidebar-with-sticky/sidebar-with-sticky.component.mjs +12 -0
  101. package/esm2020/sidebar/examples/sidebar-with-sticky/sidebar-with-sticky.module.mjs +29 -0
  102. package/esm2020/sidebar/examples/two-fixed-sidebars-either-side/two-fixed-sidebars-either-side.component.mjs +12 -0
  103. package/esm2020/sidebar/examples/two-fixed-sidebars-either-side/two-fixed-sidebars-either-side.module.mjs +29 -0
  104. package/esm2020/sidebar/examples/under-sidebar/under-sidebar.component.mjs +26 -0
  105. package/esm2020/sidebar/examples/under-sidebar/under-sidebar.module.mjs +32 -0
  106. package/esm2020/tree/daffodil-design-tree.mjs +5 -0
  107. package/esm2020/tree/examples/basic-tree/basic-tree.component.mjs +39 -0
  108. package/esm2020/tree/examples/basic-tree/basic-tree.module.mjs +34 -0
  109. package/esm2020/tree/examples/daffodil-design-tree-examples.mjs +5 -0
  110. package/esm2020/tree/examples/index.mjs +2 -0
  111. package/esm2020/tree/examples/public_api.mjs +7 -0
  112. package/esm2020/tree/index.mjs +2 -0
  113. package/esm2020/tree/interfaces/recursive-key.mjs +2 -0
  114. package/esm2020/tree/interfaces/tree-data.mjs +2 -0
  115. package/esm2020/tree/interfaces/tree-ui.mjs +2 -0
  116. package/esm2020/tree/public_api.mjs +5 -0
  117. package/esm2020/tree/tree/tree-notifier.service.mjs +45 -0
  118. package/esm2020/tree/tree/tree.component.mjs +106 -0
  119. package/esm2020/tree/tree-item/tree-item.directive.mjs +154 -0
  120. package/esm2020/tree/tree.module.mjs +31 -0
  121. package/esm2020/tree/utils/flatten-tree.mjs +47 -0
  122. package/esm2020/tree/utils/hydrate-tree.mjs +31 -0
  123. package/esm2020/tree/utils/transform-in-place.mjs +23 -0
  124. package/esm2020/tree/utils/traverse-tree.mjs +21 -0
  125. package/fesm2015/daffodil-design-button-examples.mjs +160 -122
  126. package/fesm2015/daffodil-design-button-examples.mjs.map +1 -1
  127. package/fesm2015/daffodil-design-callout-examples.mjs +4 -4
  128. package/fesm2015/daffodil-design-callout-examples.mjs.map +1 -1
  129. package/fesm2015/daffodil-design-card-examples.mjs +2 -2
  130. package/fesm2015/daffodil-design-card-examples.mjs.map +1 -1
  131. package/fesm2015/daffodil-design-checkbox-examples.mjs +2 -2
  132. package/fesm2015/daffodil-design-checkbox-examples.mjs.map +1 -1
  133. package/fesm2015/daffodil-design-hero-examples.mjs +4 -4
  134. package/fesm2015/daffodil-design-hero-examples.mjs.map +1 -1
  135. package/fesm2015/daffodil-design-menu-examples.mjs +1 -1
  136. package/fesm2015/daffodil-design-menu-examples.mjs.map +1 -1
  137. package/fesm2015/daffodil-design-modal-examples.mjs +2 -2
  138. package/fesm2015/daffodil-design-modal-examples.mjs.map +1 -1
  139. package/fesm2015/daffodil-design-navbar-examples.mjs +4 -4
  140. package/fesm2015/daffodil-design-navbar-examples.mjs.map +1 -1
  141. package/fesm2015/daffodil-design-sidebar-examples.mjs +218 -0
  142. package/fesm2015/daffodil-design-sidebar-examples.mjs.map +1 -0
  143. package/fesm2015/daffodil-design-tree-examples.mjs +81 -0
  144. package/fesm2015/daffodil-design-tree-examples.mjs.map +1 -0
  145. package/fesm2015/daffodil-design-tree.mjs +443 -0
  146. package/fesm2015/daffodil-design-tree.mjs.map +1 -0
  147. package/fesm2015/daffodil-design.mjs +440 -191
  148. package/fesm2015/daffodil-design.mjs.map +1 -1
  149. package/fesm2020/daffodil-design-button-examples.mjs +160 -122
  150. package/fesm2020/daffodil-design-button-examples.mjs.map +1 -1
  151. package/fesm2020/daffodil-design-callout-examples.mjs +4 -4
  152. package/fesm2020/daffodil-design-callout-examples.mjs.map +1 -1
  153. package/fesm2020/daffodil-design-card-examples.mjs +2 -2
  154. package/fesm2020/daffodil-design-card-examples.mjs.map +1 -1
  155. package/fesm2020/daffodil-design-checkbox-examples.mjs +2 -2
  156. package/fesm2020/daffodil-design-checkbox-examples.mjs.map +1 -1
  157. package/fesm2020/daffodil-design-hero-examples.mjs +4 -4
  158. package/fesm2020/daffodil-design-hero-examples.mjs.map +1 -1
  159. package/fesm2020/daffodil-design-menu-examples.mjs +1 -1
  160. package/fesm2020/daffodil-design-menu-examples.mjs.map +1 -1
  161. package/fesm2020/daffodil-design-modal-examples.mjs +2 -2
  162. package/fesm2020/daffodil-design-modal-examples.mjs.map +1 -1
  163. package/fesm2020/daffodil-design-navbar-examples.mjs +4 -4
  164. package/fesm2020/daffodil-design-navbar-examples.mjs.map +1 -1
  165. package/fesm2020/daffodil-design-sidebar-examples.mjs +218 -0
  166. package/fesm2020/daffodil-design-sidebar-examples.mjs.map +1 -0
  167. package/fesm2020/daffodil-design-tree-examples.mjs +81 -0
  168. package/fesm2020/daffodil-design-tree-examples.mjs.map +1 -0
  169. package/fesm2020/daffodil-design-tree.mjs +448 -0
  170. package/fesm2020/daffodil-design-tree.mjs.map +1 -0
  171. package/fesm2020/daffodil-design.mjs +440 -191
  172. package/fesm2020/daffodil-design.mjs.map +1 -1
  173. package/hero/examples/package.json +1 -1
  174. package/image/examples/package.json +1 -1
  175. package/input/examples/package.json +1 -1
  176. package/list/examples/package.json +1 -1
  177. package/loading-icon/examples/package.json +1 -1
  178. package/media-gallery/examples/package.json +1 -1
  179. package/menu/examples/package.json +1 -1
  180. package/modal/examples/package.json +1 -1
  181. package/molecules/backdrop/animation/backdrop-animation-state.d.ts +2 -0
  182. package/molecules/backdrop/backdrop/backdrop.component.d.ts +17 -3
  183. package/molecules/qty-dropdown/qty-dropdown.module.d.ts +1 -1
  184. package/molecules/sidebar/animation/sidebar-animation-state.d.ts +2 -1
  185. package/molecules/sidebar/animation/sidebar-animation-width.d.ts +2 -0
  186. package/molecules/sidebar/animation/sidebar-animation.d.ts +3 -1
  187. package/molecules/sidebar/animation/sidebar-viewport-animation-state.d.ts +6 -0
  188. package/molecules/sidebar/helper/sidebar-mode.d.ts +27 -1
  189. package/molecules/sidebar/helper/sidebar-side.d.ts +12 -0
  190. package/molecules/sidebar/public_api.d.ts +2 -1
  191. package/molecules/sidebar/sidebar/sidebar.component.d.ts +37 -5
  192. package/molecules/sidebar/sidebar-viewport/backdrop-interactable.d.ts +6 -0
  193. package/molecules/sidebar/sidebar-viewport/content-pad.d.ts +7 -0
  194. package/molecules/sidebar/sidebar-viewport/content-shift.d.ts +8 -0
  195. package/molecules/sidebar/sidebar-viewport/sidebar-viewport.component.d.ts +47 -44
  196. package/navbar/examples/package.json +1 -1
  197. package/package.json +1 -1
  198. package/paginator/examples/package.json +1 -1
  199. package/public_api.d.ts +2 -1
  200. package/quantity-field/examples/package.json +1 -1
  201. package/radio/examples/package.json +1 -1
  202. package/scss/global.scss +1 -0
  203. package/scss/state/skeleton/_mixins.scss +1 -0
  204. package/scss/theme.scss +4 -2
  205. package/scss/theming/_color-palettes.scss +5 -5
  206. package/sidebar/examples/basic-sidebar/basic-sidebar.component.d.ts +5 -0
  207. package/sidebar/examples/basic-sidebar/basic-sidebar.module.d.ts +8 -0
  208. package/sidebar/examples/daffodil-design-sidebar-examples.d.ts +5 -0
  209. package/sidebar/examples/fixed-and-over-sidebar/fixed-and-over-sidebar.component.d.ts +8 -0
  210. package/sidebar/examples/fixed-and-over-sidebar/fixed-and-over-sidebar.module.d.ts +8 -0
  211. package/sidebar/examples/index.d.ts +1 -0
  212. package/sidebar/examples/package.json +1 -0
  213. package/sidebar/examples/public_api.d.ts +2 -0
  214. package/sidebar/examples/sidebar-with-sticky/sidebar-with-sticky.component.d.ts +5 -0
  215. package/sidebar/examples/sidebar-with-sticky/sidebar-with-sticky.module.d.ts +8 -0
  216. package/sidebar/examples/two-fixed-sidebars-either-side/two-fixed-sidebars-either-side.component.d.ts +5 -0
  217. package/sidebar/examples/two-fixed-sidebars-either-side/two-fixed-sidebars-either-side.module.d.ts +8 -0
  218. package/sidebar/examples/under-sidebar/under-sidebar.component.d.ts +10 -0
  219. package/sidebar/examples/under-sidebar/under-sidebar.module.d.ts +8 -0
  220. package/src/atoms/button/button-theme-variants/button.scss +9 -18
  221. package/src/atoms/button/button-theme-variants/flat.scss +25 -0
  222. package/src/atoms/button/button-theme-variants/raised.scss +6 -26
  223. package/src/atoms/button/button-theme-variants/stroked.scss +12 -20
  224. package/src/atoms/button/button-theme.scss +121 -117
  225. package/src/atoms/form/{select → native-select}/README.md +1 -1
  226. package/src/atoms/form/{select/select/select-theme.scss → native-select/native-select-theme.scss} +3 -3
  227. package/src/atoms/loading-icon/loading-icon-theme.scss +4 -0
  228. package/src/molecules/sidebar/README.md +10 -0
  229. package/src/molecules/sidebar/helper/_variables.scss +7 -0
  230. package/src/molecules/sidebar/sidebar/sidebar-theme.scss +3 -3
  231. package/src/molecules/sidebar/sidebar-viewport/sidebar-viewport-theme.scss +5 -0
  232. package/tree/README.md +38 -0
  233. package/tree/daffodil-design-tree.d.ts +5 -0
  234. package/tree/examples/basic-tree/basic-tree.component.d.ts +7 -0
  235. package/tree/examples/basic-tree/basic-tree.module.d.ts +10 -0
  236. package/tree/examples/daffodil-design-tree-examples.d.ts +5 -0
  237. package/tree/examples/index.d.ts +1 -0
  238. package/tree/examples/package.json +1 -0
  239. package/tree/examples/public_api.d.ts +4 -0
  240. package/tree/index.d.ts +1 -0
  241. package/tree/interfaces/recursive-key.d.ts +3 -0
  242. package/tree/interfaces/tree-data.d.ts +13 -0
  243. package/tree/interfaces/tree-ui.d.ts +11 -0
  244. package/tree/package.json +1 -0
  245. package/tree/public_api.d.ts +6 -0
  246. package/tree/src/tree-theme.scss +38 -0
  247. package/tree/tree/tree-notifier.service.d.ts +32 -0
  248. package/tree/tree/tree.component.d.ts +75 -0
  249. package/tree/tree-item/tree-item.directive.d.ts +102 -0
  250. package/tree/tree.module.d.ts +9 -0
  251. package/tree/utils/flatten-tree.d.ts +19 -0
  252. package/tree/utils/hydrate-tree.d.ts +8 -0
  253. package/tree/utils/transform-in-place.d.ts +15 -0
  254. package/tree/utils/traverse-tree.d.ts +5 -0
  255. package/atoms/form/select/public_api.d.ts +0 -2
  256. package/esm2020/atoms/form/select/public_api.mjs +0 -3
  257. package/esm2020/atoms/form/select/select/select.component.mjs +0 -64
  258. package/src/atoms/button/button-theme-variants/focus.scss +0 -6
@@ -1,6 +1,7 @@
1
+ import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
1
2
  import * as i0 from '@angular/core';
2
- import { Input, Directive, HostBinding, NgModule, ContentChild, Component, ViewEncapsulation, ChangeDetectionStrategy, InjectionToken, Injectable, TemplateRef, ViewContainerRef, Inject, ViewChild, EventEmitter, Output, HostListener, Optional, Self, ElementRef, ContentChildren, SkipSelf, Type, APP_INITIALIZER } from '@angular/core';
3
- import * as i3 from '@angular/common';
3
+ import { Input, Directive, HostBinding, NgModule, ContentChild, Component, ChangeDetectionStrategy, ViewEncapsulation, InjectionToken, Injectable, TemplateRef, ViewContainerRef, Inject, ViewChild, EventEmitter, Output, HostListener, Optional, Self, ElementRef, ContentChildren, SkipSelf, Type, APP_INITIALIZER } from '@angular/core';
4
+ import * as i2 from '@angular/common';
4
5
  import { CommonModule, DOCUMENT } from '@angular/common';
5
6
  import * as i1 from '@fortawesome/angular-fontawesome';
6
7
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
@@ -10,7 +11,6 @@ import { BehaviorSubject, Subject, map, takeUntil as takeUntil$1, fromEvent, fil
10
11
  import { takeUntil, filter as filter$1, startWith, map as map$1, catchError, shareReplay } from 'rxjs/operators';
11
12
  import * as i1$2 from '@angular/forms';
12
13
  import { FormControl, ReactiveFormsModule, FormsModule } from '@angular/forms';
13
- import { coerceNumberProperty } from '@angular/cdk/coercion';
14
14
  import { trigger, state, style, transition, animate } from '@angular/animations';
15
15
  import * as i1$3 from '@angular/cdk/overlay';
16
16
  import { OverlayModule, GlobalPositionStrategy } from '@angular/cdk/overlay';
@@ -255,6 +255,55 @@ function daffStatusMixin(Base, defaultStatus) {
255
255
  return DaffStatusMixinClass;
256
256
  }
257
257
 
258
+ /**
259
+ * An _elementRef and an instance of renderer2 are needed for the Colorable mixin
260
+ */
261
+ class DaffLoadingIconBase {
262
+ constructor(_elementRef, _renderer) {
263
+ this._elementRef = _elementRef;
264
+ this._renderer = _renderer;
265
+ }
266
+ }
267
+ const _daffLoadingIconBase = daffColorMixin(DaffLoadingIconBase);
268
+ /**
269
+ * @inheritdoc
270
+ */
271
+ class DaffLoadingIconComponent extends _daffLoadingIconBase {
272
+ constructor(elementRef, renderer) {
273
+ super(elementRef, renderer);
274
+ this.elementRef = elementRef;
275
+ this.renderer = renderer;
276
+ /**
277
+ * The (pixel) diameter of the animation
278
+ */
279
+ this.diameter = 60;
280
+ /**
281
+ * @docs-private
282
+ */
283
+ this.class = true;
284
+ }
285
+ /**
286
+ * @docs-private
287
+ */
288
+ get maxWidth() {
289
+ return this.diameter + 'px';
290
+ }
291
+ }
292
+ /** @nocollapse */ DaffLoadingIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
293
+ /** @nocollapse */ DaffLoadingIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffLoadingIconComponent, selector: "daff-loading-icon", inputs: { color: "color", diameter: "diameter" }, host: { properties: { "class.daff-loading-icon": "this.class", "style.max-width": "this.maxWidth" } }, usesInheritance: true, ngImport: i0, template: "<svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle cx=\"50%\" cy=\"50%\" r=\"46\"></circle>\n</svg>", styles: [":host{display:flex;width:100%}circle{animation:rotation linear,circle-animation linear;animation-duration:1s;animation-iteration-count:infinite;fill:transparent;stroke-dasharray:101.1592834456 400;stroke-linecap:round;stroke-width:5px;transform-origin:center}@keyframes circle-animation{0%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:101.1592834456}50%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:28.902652413}75%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:0}to{stroke-dasharray:0 400;stroke-dashoffset:-101.1592834456}}@keyframes rotation{0%{transform:rotate(-90deg)}50%{transform:rotate(0)}50.5%{transform:rotate(0)}75%{transform:rotate(90deg)}75.5%{transform:rotate(90deg)}99%{transform:rotate(144deg)}to{transform:rotate(144deg)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
294
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconComponent, decorators: [{
295
+ type: Component,
296
+ args: [{ selector: 'daff-loading-icon', inputs: ['color'], changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle cx=\"50%\" cy=\"50%\" r=\"46\"></circle>\n</svg>", styles: [":host{display:flex;width:100%}circle{animation:rotation linear,circle-animation linear;animation-duration:1s;animation-iteration-count:infinite;fill:transparent;stroke-dasharray:101.1592834456 400;stroke-linecap:round;stroke-width:5px;transform-origin:center}@keyframes circle-animation{0%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:101.1592834456}50%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:28.902652413}75%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:0}to{stroke-dasharray:0 400;stroke-dashoffset:-101.1592834456}}@keyframes rotation{0%{transform:rotate(-90deg)}50%{transform:rotate(0)}50.5%{transform:rotate(0)}75%{transform:rotate(90deg)}75.5%{transform:rotate(90deg)}99%{transform:rotate(144deg)}to{transform:rotate(144deg)}}\n"] }]
297
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { diameter: [{
298
+ type: Input
299
+ }], class: [{
300
+ type: HostBinding,
301
+ args: ['class.daff-loading-icon']
302
+ }], maxWidth: [{
303
+ type: HostBinding,
304
+ args: ['style.max-width']
305
+ }] } });
306
+
258
307
  /**
259
308
  * List of classes to add to DaffButtonComponent instances based on host attributes to style as different variants.
260
309
  */
@@ -262,6 +311,7 @@ const BUTTON_HOST_ATTRIBUTES = [
262
311
  'daff-button',
263
312
  'daff-stroked-button',
264
313
  'daff-raised-button',
314
+ 'daff-flat-button',
265
315
  'daff-icon-button',
266
316
  'daff-underline-button',
267
317
  ];
@@ -280,6 +330,7 @@ var DaffButtonTypeEnum;
280
330
  DaffButtonTypeEnum["Default"] = "daff-button";
281
331
  DaffButtonTypeEnum["Stroked"] = "daff-stroked-button";
282
332
  DaffButtonTypeEnum["Raised"] = "daff-raised-button";
333
+ DaffButtonTypeEnum["Flat"] = "daff-flat-button";
283
334
  DaffButtonTypeEnum["Icon"] = "daff-icon-button";
284
335
  DaffButtonTypeEnum["Underline"] = "daff-underline-button";
285
336
  })(DaffButtonTypeEnum || (DaffButtonTypeEnum = {}));
@@ -291,6 +342,9 @@ class DaffButtonComponent extends _daffButtonBase {
291
342
  super(elementRef, renderer);
292
343
  this.elementRef = elementRef;
293
344
  this.renderer = renderer;
345
+ this.loading = false;
346
+ this.tabindex = 0;
347
+ this._disabled = false;
294
348
  for (const attr of BUTTON_HOST_ATTRIBUTES) {
295
349
  if (this._hasHostAttributes(attr)) {
296
350
  elementRef.nativeElement.classList.add(attr);
@@ -325,6 +379,12 @@ class DaffButtonComponent extends _daffButtonBase {
325
379
  get raised() {
326
380
  return this.buttonType === DaffButtonTypeEnum.Raised;
327
381
  }
382
+ /**
383
+ * @docs-private
384
+ */
385
+ get flat() {
386
+ return this.buttonType === DaffButtonTypeEnum.Flat;
387
+ }
328
388
  /**
329
389
  * @docs-private
330
390
  */
@@ -337,6 +397,27 @@ class DaffButtonComponent extends _daffButtonBase {
337
397
  get underline() {
338
398
  return this.buttonType === DaffButtonTypeEnum.Underline;
339
399
  }
400
+ get disabledClass() {
401
+ return this.disabled;
402
+ }
403
+ /**
404
+ * The disabled state of the button.
405
+ */
406
+ get disabled() {
407
+ return this._disabled || this.loading;
408
+ }
409
+ set disabled(value) {
410
+ this._disabled = coerceBooleanProperty(value);
411
+ }
412
+ get disabledAttribute() {
413
+ return this.disabled ? true : null;
414
+ }
415
+ get ariaDisabled() {
416
+ return this.disabled ? true : null;
417
+ }
418
+ get disabledTabIndex() {
419
+ return this.disabled ? -1 : this.tabindex;
420
+ }
340
421
  _getHostElement() {
341
422
  return this.elementRef.nativeElement;
342
423
  }
@@ -348,20 +429,22 @@ class DaffButtonComponent extends _daffButtonBase {
348
429
  }
349
430
  }
350
431
  /** @nocollapse */ DaffButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
351
- /** @nocollapse */ DaffButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-icon-button],a[daff-underline-button]", inputs: { color: "color", size: "size", status: "status" }, host: { properties: { "class.daff-button": "this.button", "class.daff-stroked-button": "this.stroked", "class.daff-raised-button": "this.raised", "class.daff-icon-button": "this.icon", "class.daff-underline-button": "this.underline" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<span><ng-content></ng-content></span>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", styles: [".daff-button,.daff-raised-button,.daff-stroked-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;-webkit-appearance:none;appearance:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;transition:background-color .3s,border-color .3s,box-shadow .3s,color .3s,transform .3s;will-change:background-color,border-color,box-shadow,color;min-width:96px}.daff-button[disabled],.daff-raised-button[disabled],.daff-stroked-button[disabled]{cursor:not-allowed}.daff-button .daff-prefix,.daff-button .daff-suffix,.daff-raised-button .daff-prefix,.daff-raised-button .daff-suffix,.daff-stroked-button .daff-prefix,.daff-stroked-button .daff-suffix{vertical-align:middle}.daff-button .daff-prefix,.daff-raised-button .daff-prefix,.daff-stroked-button .daff-prefix{margin-right:8px}.daff-button .daff-suffix,.daff-raised-button .daff-suffix,.daff-stroked-button .daff-suffix{margin-left:8px}.daff-button.daff-sm,.daff-raised-button.daff-sm,.daff-stroked-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;padding:0 1rem}.daff-button.daff-md,.daff-raised-button.daff-md,.daff-stroked-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;padding:0 1.5rem}.daff-button.daff-lg,.daff-raised-button.daff-lg,.daff-stroked-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;padding:0 1.5rem}.daff-icon-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;-webkit-appearance:none;appearance:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;background:none;border:0;padding:0}.daff-icon-button[disabled]{cursor:not-allowed}.daff-icon-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;width:2rem}.daff-icon-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;width:3rem}.daff-icon-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;width:3.5rem}.daff-underline-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;-webkit-appearance:none;appearance:none;position:relative;text-align:center;background:transparent;border:0;border-radius:0;line-height:1.25rem;overflow:hidden;text-decoration:none;vertical-align:middle}.daff-underline-button .daff-prefix,.daff-underline-button .daff-suffix{vertical-align:middle}.daff-underline-button .daff-prefix{margin-right:8px}.daff-underline-button .daff-suffix{margin-left:8px}.daff-underline-button[disabled]{cursor:not-allowed}.daff-underline-button[disabled]:hover:after,.daff-underline-button[disabled]:active:after{animation:none}.daff-underline-button:focus{border-radius:4px}.daff-underline-button:after{bottom:0;content:\"\";height:2px;left:0;opacity:1;position:absolute;width:100%}.daff-underline-button:hover:after{animation:none}@media (min-width: 1024px){.daff-underline-button:hover:after{animation:underline-button-hover .7s ease}}.daff-underline-button.daff-sm{font-size:.875rem;height:1.25rem;padding:0}.daff-underline-button.daff-md{font-size:1rem;height:1.5rem;padding:0 0 4px}.daff-underline-button.daff-lg{font-size:1.25rem;height:1.75rem;padding:0 0 8px}@keyframes underline-button-hover{0%{transform:translate(0)}50%{transform:translate(100%)}51%{transform:translate(-100%)}to{transform:translate(0)}}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
432
+ /** @nocollapse */ DaffButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: { color: "color", size: "size", status: "status", loading: "loading", tabindex: "tabindex", disabled: "disabled" }, host: { properties: { "class.daff-button": "this.button", "class.daff-stroked-button": "this.stroked", "class.daff-raised-button": "this.raised", "class.daff-flat-button": "this.flat", "class.daff-icon-button": "this.icon", "class.daff-underline-button": "this.underline", "class.daff-button--disabled": "this.disabledClass", "attr.disabled": "this.disabledAttribute", "attr.aria-disabled": "this.ariaDisabled", "attr.tabindex": "this.disabledTabIndex" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<span class=\"daff-button__content\" *ngIf=\"!loading\"><ng-content></ng-content></span>\n<daff-loading-icon *ngIf=\"loading\" [diameter]=\"24\"></daff-loading-icon>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", styles: [".daff-button,.daff-raised-button,.daff-stroked-button,.daff-flat-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;-webkit-appearance:none;appearance:none;border:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;min-width:96px}.daff-button[disabled],.daff-button.daff-button--disabled,.daff-raised-button[disabled],.daff-raised-button.daff-button--disabled,.daff-stroked-button[disabled],.daff-stroked-button.daff-button--disabled,.daff-flat-button[disabled],.daff-flat-button.daff-button--disabled{cursor:not-allowed}.daff-button[disabled]:hover:after,.daff-button.daff-button--disabled:hover:after,.daff-raised-button[disabled]:hover:after,.daff-raised-button.daff-button--disabled:hover:after,.daff-stroked-button[disabled]:hover:after,.daff-stroked-button.daff-button--disabled:hover:after,.daff-flat-button[disabled]:hover:after,.daff-flat-button.daff-button--disabled:hover:after{opacity:0}.daff-button .daff-button__content,.daff-button .daff-prefix,.daff-button .daff-suffix,.daff-raised-button .daff-button__content,.daff-raised-button .daff-prefix,.daff-raised-button .daff-suffix,.daff-stroked-button .daff-button__content,.daff-stroked-button .daff-prefix,.daff-stroked-button .daff-suffix,.daff-flat-button .daff-button__content,.daff-flat-button .daff-prefix,.daff-flat-button .daff-suffix{z-index:2}.daff-button.daff-sm,.daff-raised-button.daff-sm,.daff-stroked-button.daff-sm,.daff-flat-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;padding:0 1rem}.daff-button.daff-md,.daff-raised-button.daff-md,.daff-stroked-button.daff-md,.daff-flat-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;padding:0 1.5rem}.daff-button.daff-lg,.daff-raised-button.daff-lg,.daff-stroked-button.daff-lg,.daff-flat-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;padding:0 1.5rem}.daff-button:after,.daff-flat-button:after{content:\"\";border-radius:4px;position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s}.daff-button:hover:after,.daff-button:active:after,.daff-flat-button:hover:after,.daff-flat-button:active:after{opacity:1}.daff-raised-button:after{content:\"\";border-radius:0;position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s}.daff-raised-button:hover:after,.daff-raised-button:active:after{opacity:1}.daff-stroked-button:after{content:\"\";border-radius:3px;position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s}.daff-stroked-button:hover:after,.daff-stroked-button:active:after{opacity:1}.daff-flat-button{background:none;border:none}.daff-icon-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;-webkit-appearance:none;appearance:none;border:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;background:none;border:0;padding:0}.daff-icon-button[disabled],.daff-icon-button.daff-button--disabled{cursor:not-allowed}.daff-icon-button[disabled]:hover:after,.daff-icon-button.daff-button--disabled:hover:after{opacity:0}.daff-icon-button .daff-button__content,.daff-icon-button .daff-prefix,.daff-icon-button .daff-suffix{z-index:2}.daff-icon-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;width:2rem}.daff-icon-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;width:3rem}.daff-icon-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;width:3.5rem}.daff-underline-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;-webkit-appearance:none;appearance:none;border:none;position:relative;text-align:center;background:transparent;border:0;border-radius:0;line-height:1.25rem;overflow:hidden;text-decoration:none;vertical-align:middle}.daff-underline-button[disabled]:hover:after,.daff-underline-button.daff-button--disabled:hover:after{opacity:0}.daff-underline-button .daff-button__content,.daff-underline-button .daff-prefix,.daff-underline-button .daff-suffix{z-index:2}.daff-underline-button[disabled],.daff-underline-button.daff-button--disabled{cursor:not-allowed}.daff-underline-button[disabled]:hover:after,.daff-underline-button[disabled]:active:after,.daff-underline-button.daff-button--disabled:hover:after,.daff-underline-button.daff-button--disabled:active:after{animation:none}.daff-underline-button:after{bottom:0;content:\"\";height:2px;left:0;opacity:1;position:absolute;width:100%}.daff-underline-button:hover:after{animation:none}@media (min-width: 1024px){.daff-underline-button:hover:after{animation:underline-button-hover .7s ease}}.daff-underline-button.daff-sm{font-size:.875rem;height:1.25rem;padding:0}.daff-underline-button.daff-md{font-size:1rem;height:1.5rem;padding:0 0 4px}.daff-underline-button.daff-lg{font-size:1.25rem;height:1.75rem;padding:0 0 8px}@keyframes underline-button-hover{0%{transform:translate(0)}50%{transform:translate(100%)}51%{transform:translate(-100%)}to{transform:translate(0)}}\n"], components: [{ type: DaffLoadingIconComponent, selector: "daff-loading-icon", inputs: ["color", "diameter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
352
433
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffButtonComponent, decorators: [{
353
434
  type: Component,
354
435
  args: [{ selector: '' +
355
436
  'button[daff-button]' + ',' +
356
437
  'button[daff-stroked-button]' + ',' +
357
438
  'button[daff-raised-button]' + ',' +
439
+ 'button[daff-flat-button]' + ',' +
358
440
  'button[daff-icon-button]' + ',' +
359
441
  'button[daff-underline-button]' + ',' +
360
442
  'a[daff-button]' + ',' +
361
443
  'a[daff-stroked-button]' + ',' +
362
444
  'a[daff-raised-button]' + ',' +
445
+ 'a[daff-flat-button]' + ',' +
363
446
  'a[daff-icon-button]' + ',' +
364
- 'a[daff-underline-button]', inputs: ['color', 'size', 'status'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<span><ng-content></ng-content></span>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", styles: [".daff-button,.daff-raised-button,.daff-stroked-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;-webkit-appearance:none;appearance:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;transition:background-color .3s,border-color .3s,box-shadow .3s,color .3s,transform .3s;will-change:background-color,border-color,box-shadow,color;min-width:96px}.daff-button[disabled],.daff-raised-button[disabled],.daff-stroked-button[disabled]{cursor:not-allowed}.daff-button .daff-prefix,.daff-button .daff-suffix,.daff-raised-button .daff-prefix,.daff-raised-button .daff-suffix,.daff-stroked-button .daff-prefix,.daff-stroked-button .daff-suffix{vertical-align:middle}.daff-button .daff-prefix,.daff-raised-button .daff-prefix,.daff-stroked-button .daff-prefix{margin-right:8px}.daff-button .daff-suffix,.daff-raised-button .daff-suffix,.daff-stroked-button .daff-suffix{margin-left:8px}.daff-button.daff-sm,.daff-raised-button.daff-sm,.daff-stroked-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;padding:0 1rem}.daff-button.daff-md,.daff-raised-button.daff-md,.daff-stroked-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;padding:0 1.5rem}.daff-button.daff-lg,.daff-raised-button.daff-lg,.daff-stroked-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;padding:0 1.5rem}.daff-icon-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;-webkit-appearance:none;appearance:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;background:none;border:0;padding:0}.daff-icon-button[disabled]{cursor:not-allowed}.daff-icon-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;width:2rem}.daff-icon-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;width:3rem}.daff-icon-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;width:3.5rem}.daff-underline-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;-webkit-appearance:none;appearance:none;position:relative;text-align:center;background:transparent;border:0;border-radius:0;line-height:1.25rem;overflow:hidden;text-decoration:none;vertical-align:middle}.daff-underline-button .daff-prefix,.daff-underline-button .daff-suffix{vertical-align:middle}.daff-underline-button .daff-prefix{margin-right:8px}.daff-underline-button .daff-suffix{margin-left:8px}.daff-underline-button[disabled]{cursor:not-allowed}.daff-underline-button[disabled]:hover:after,.daff-underline-button[disabled]:active:after{animation:none}.daff-underline-button:focus{border-radius:4px}.daff-underline-button:after{bottom:0;content:\"\";height:2px;left:0;opacity:1;position:absolute;width:100%}.daff-underline-button:hover:after{animation:none}@media (min-width: 1024px){.daff-underline-button:hover:after{animation:underline-button-hover .7s ease}}.daff-underline-button.daff-sm{font-size:.875rem;height:1.25rem;padding:0}.daff-underline-button.daff-md{font-size:1rem;height:1.5rem;padding:0 0 4px}.daff-underline-button.daff-lg{font-size:1.25rem;height:1.75rem;padding:0 0 8px}@keyframes underline-button-hover{0%{transform:translate(0)}50%{transform:translate(100%)}51%{transform:translate(-100%)}to{transform:translate(0)}}\n"] }]
447
+ 'a[daff-underline-button]', inputs: ['color', 'size', 'status'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<span class=\"daff-button__content\" *ngIf=\"!loading\"><ng-content></ng-content></span>\n<daff-loading-icon *ngIf=\"loading\" [diameter]=\"24\"></daff-loading-icon>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", styles: [".daff-button,.daff-raised-button,.daff-stroked-button,.daff-flat-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;-webkit-appearance:none;appearance:none;border:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;min-width:96px}.daff-button[disabled],.daff-button.daff-button--disabled,.daff-raised-button[disabled],.daff-raised-button.daff-button--disabled,.daff-stroked-button[disabled],.daff-stroked-button.daff-button--disabled,.daff-flat-button[disabled],.daff-flat-button.daff-button--disabled{cursor:not-allowed}.daff-button[disabled]:hover:after,.daff-button.daff-button--disabled:hover:after,.daff-raised-button[disabled]:hover:after,.daff-raised-button.daff-button--disabled:hover:after,.daff-stroked-button[disabled]:hover:after,.daff-stroked-button.daff-button--disabled:hover:after,.daff-flat-button[disabled]:hover:after,.daff-flat-button.daff-button--disabled:hover:after{opacity:0}.daff-button .daff-button__content,.daff-button .daff-prefix,.daff-button .daff-suffix,.daff-raised-button .daff-button__content,.daff-raised-button .daff-prefix,.daff-raised-button .daff-suffix,.daff-stroked-button .daff-button__content,.daff-stroked-button .daff-prefix,.daff-stroked-button .daff-suffix,.daff-flat-button .daff-button__content,.daff-flat-button .daff-prefix,.daff-flat-button .daff-suffix{z-index:2}.daff-button.daff-sm,.daff-raised-button.daff-sm,.daff-stroked-button.daff-sm,.daff-flat-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;padding:0 1rem}.daff-button.daff-md,.daff-raised-button.daff-md,.daff-stroked-button.daff-md,.daff-flat-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;padding:0 1.5rem}.daff-button.daff-lg,.daff-raised-button.daff-lg,.daff-stroked-button.daff-lg,.daff-flat-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;padding:0 1.5rem}.daff-button:after,.daff-flat-button:after{content:\"\";border-radius:4px;position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s}.daff-button:hover:after,.daff-button:active:after,.daff-flat-button:hover:after,.daff-flat-button:active:after{opacity:1}.daff-raised-button:after{content:\"\";border-radius:0;position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s}.daff-raised-button:hover:after,.daff-raised-button:active:after{opacity:1}.daff-stroked-button:after{content:\"\";border-radius:3px;position:absolute;width:100%;height:100%;opacity:0;transition:opacity .3s}.daff-stroked-button:hover:after,.daff-stroked-button:active:after{opacity:1}.daff-flat-button{background:none;border:none}.daff-icon-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;-webkit-appearance:none;appearance:none;border:none;border-radius:4px;position:relative;text-align:center;text-decoration:none;background:none;border:0;padding:0}.daff-icon-button[disabled],.daff-icon-button.daff-button--disabled{cursor:not-allowed}.daff-icon-button[disabled]:hover:after,.daff-icon-button.daff-button--disabled:hover:after{opacity:0}.daff-icon-button .daff-button__content,.daff-icon-button .daff-prefix,.daff-icon-button .daff-suffix{z-index:2}.daff-icon-button.daff-sm{font-size:.875rem;line-height:2rem;height:2rem;width:2rem}.daff-icon-button.daff-md{font-size:1rem;line-height:3rem;height:3rem;width:3rem}.daff-icon-button.daff-lg{font-size:1.25rem;line-height:3.5rem;height:3.5rem;width:3.5rem}.daff-underline-button{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;-webkit-appearance:none;appearance:none;border:none;position:relative;text-align:center;background:transparent;border:0;border-radius:0;line-height:1.25rem;overflow:hidden;text-decoration:none;vertical-align:middle}.daff-underline-button[disabled]:hover:after,.daff-underline-button.daff-button--disabled:hover:after{opacity:0}.daff-underline-button .daff-button__content,.daff-underline-button .daff-prefix,.daff-underline-button .daff-suffix{z-index:2}.daff-underline-button[disabled],.daff-underline-button.daff-button--disabled{cursor:not-allowed}.daff-underline-button[disabled]:hover:after,.daff-underline-button[disabled]:active:after,.daff-underline-button.daff-button--disabled:hover:after,.daff-underline-button.daff-button--disabled:active:after{animation:none}.daff-underline-button:after{bottom:0;content:\"\";height:2px;left:0;opacity:1;position:absolute;width:100%}.daff-underline-button:hover:after{animation:none}@media (min-width: 1024px){.daff-underline-button:hover:after{animation:underline-button-hover .7s ease}}.daff-underline-button.daff-sm{font-size:.875rem;height:1.25rem;padding:0}.daff-underline-button.daff-md{font-size:1rem;height:1.5rem;padding:0 0 4px}.daff-underline-button.daff-lg{font-size:1.25rem;height:1.75rem;padding:0 0 8px}@keyframes underline-button-hover{0%{transform:translate(0)}50%{transform:translate(100%)}51%{transform:translate(-100%)}to{transform:translate(0)}}\n"] }]
365
448
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { button: [{
366
449
  type: HostBinding,
367
450
  args: ['class.daff-button']
@@ -371,23 +454,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
371
454
  }], raised: [{
372
455
  type: HostBinding,
373
456
  args: ['class.daff-raised-button']
457
+ }], flat: [{
458
+ type: HostBinding,
459
+ args: ['class.daff-flat-button']
374
460
  }], icon: [{
375
461
  type: HostBinding,
376
462
  args: ['class.daff-icon-button']
377
463
  }], underline: [{
378
464
  type: HostBinding,
379
465
  args: ['class.daff-underline-button']
466
+ }], disabledClass: [{
467
+ type: HostBinding,
468
+ args: ['class.daff-button--disabled']
469
+ }], loading: [{
470
+ type: Input
471
+ }], tabindex: [{
472
+ type: Input
473
+ }], disabled: [{
474
+ type: Input
475
+ }], disabledAttribute: [{
476
+ type: HostBinding,
477
+ args: ['attr.disabled']
478
+ }], ariaDisabled: [{
479
+ type: HostBinding,
480
+ args: ['attr.aria-disabled']
481
+ }], disabledTabIndex: [{
482
+ type: HostBinding,
483
+ args: ['attr.tabindex']
380
484
  }] } });
381
485
 
486
+ class DaffLoadingIconModule {
487
+ }
488
+ /** @nocollapse */ DaffLoadingIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
489
+ /** @nocollapse */ DaffLoadingIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, declarations: [DaffLoadingIconComponent], imports: [CommonModule], exports: [DaffLoadingIconComponent] });
490
+ /** @nocollapse */ DaffLoadingIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, imports: [[
491
+ CommonModule,
492
+ ]] });
493
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, decorators: [{
494
+ type: NgModule,
495
+ args: [{
496
+ imports: [
497
+ CommonModule,
498
+ ],
499
+ declarations: [
500
+ DaffLoadingIconComponent,
501
+ ],
502
+ exports: [
503
+ DaffLoadingIconComponent,
504
+ ],
505
+ }]
506
+ }] });
507
+
382
508
  class DaffButtonModule {
383
509
  }
384
510
  /** @nocollapse */ DaffButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
385
511
  /** @nocollapse */ DaffButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffButtonModule, declarations: [DaffButtonComponent], imports: [CommonModule,
386
- DaffPrefixSuffixModule], exports: [DaffButtonComponent,
512
+ DaffPrefixSuffixModule,
513
+ DaffLoadingIconModule], exports: [DaffButtonComponent,
387
514
  DaffPrefixSuffixModule] });
388
515
  /** @nocollapse */ DaffButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffButtonModule, imports: [[
389
516
  CommonModule,
390
517
  DaffPrefixSuffixModule,
518
+ DaffLoadingIconModule,
391
519
  ], DaffPrefixSuffixModule] });
392
520
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffButtonModule, decorators: [{
393
521
  type: NgModule,
@@ -395,6 +523,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
395
523
  imports: [
396
524
  CommonModule,
397
525
  DaffPrefixSuffixModule,
526
+ DaffLoadingIconModule,
398
527
  ],
399
528
  declarations: [
400
529
  DaffButtonComponent,
@@ -413,13 +542,19 @@ class DaffErrorStateMatcher {
413
542
  }
414
543
 
415
544
  class DaffErrorMessageComponent {
545
+ constructor() {
546
+ this.class = true;
547
+ }
416
548
  }
417
549
  /** @nocollapse */ DaffErrorMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffErrorMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
418
- /** @nocollapse */ DaffErrorMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffErrorMessageComponent, selector: "daff-error-message", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;font-size:.875rem;margin-top:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
550
+ /** @nocollapse */ DaffErrorMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffErrorMessageComponent, selector: "daff-error-message", host: { properties: { "class.daff-error-message": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;font-size:.875rem;margin-top:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
419
551
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffErrorMessageComponent, decorators: [{
420
552
  type: Component,
421
553
  args: [{ selector: 'daff-error-message', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;font-size:.875rem;margin-top:5px}\n"] }]
422
- }] });
554
+ }], propDecorators: { class: [{
555
+ type: HostBinding,
556
+ args: ['class.daff-error-message']
557
+ }] } });
423
558
 
424
559
  class DaffErrorMessageModule {
425
560
  }
@@ -536,7 +671,7 @@ class DaffFormFieldComponent {
536
671
  }
537
672
  }
538
673
  /** @nocollapse */ DaffFormFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
539
- /** @nocollapse */ DaffFormFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffFormFieldComponent, selector: "daff-form-field", inputs: { formSubmitted: "formSubmitted" }, host: { properties: { "class.daff-form-field": "this.class" } }, queries: [{ propertyName: "_control", first: true, predicate: DaffFormFieldControl, descendants: true }], ngImport: i0, template: "<div class=\"daff-form-field__control\" [class.daff-error]=\"isError\" [class.daff-valid]=\"isValid\" [class.daff-focus]=\"isFocused\">\n <ng-content></ng-content>\n <div class=\"daff-form-field__icon\" *ngIf=\"_control.controlType === 'native-select'\">\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </div>\n</div>\n<ng-content select=\"daff-error-message\"></ng-content>\n", styles: [".daff-form-field{display:block;position:relative}.daff-form-field__control{border-radius:3px;display:inline-block;font-size:1rem;height:inherit;line-height:1.5rem;padding:10px 15px;width:100%}.daff-form-field__icon{display:inline-block;pointer-events:none;position:absolute;right:15px}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
674
+ /** @nocollapse */ DaffFormFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffFormFieldComponent, selector: "daff-form-field", inputs: { formSubmitted: "formSubmitted" }, host: { properties: { "class.daff-form-field": "this.class" } }, queries: [{ propertyName: "_control", first: true, predicate: DaffFormFieldControl, descendants: true }], ngImport: i0, template: "<div class=\"daff-form-field__control\" [class.daff-error]=\"isError\" [class.daff-valid]=\"isValid\" [class.daff-focus]=\"isFocused\">\n <ng-content></ng-content>\n <div class=\"daff-form-field__icon\" *ngIf=\"_control.controlType === 'native-select'\">\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </div>\n</div>\n<ng-content select=\"daff-error-message\"></ng-content>\n", styles: [".daff-form-field{display:block;position:relative}.daff-form-field__control{border-radius:3px;display:inline-block;font-size:1rem;height:inherit;line-height:1.5rem;padding:10px 15px;width:100%}.daff-form-field__icon{display:inline-block;pointer-events:none;position:absolute;right:15px}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
540
675
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormFieldComponent, decorators: [{
541
676
  type: Component,
542
677
  args: [{ selector: 'daff-form-field', encapsulation: ViewEncapsulation.None, template: "<div class=\"daff-form-field__control\" [class.daff-error]=\"isError\" [class.daff-valid]=\"isValid\" [class.daff-focus]=\"isFocused\">\n <ng-content></ng-content>\n <div class=\"daff-form-field__icon\" *ngIf=\"_control.controlType === 'native-select'\">\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </div>\n</div>\n<ng-content select=\"daff-error-message\"></ng-content>\n", styles: [".daff-form-field{display:block;position:relative}.daff-form-field__control{border-radius:3px;display:inline-block;font-size:1rem;height:inherit;line-height:1.5rem;padding:10px 15px;width:100%}.daff-form-field__icon{display:inline-block;pointer-events:none;position:absolute;right:15px}\n"] }]
@@ -809,13 +944,13 @@ class DaffMediaGalleryComponent extends _daffMediaGalleryBase {
809
944
  /** @nocollapse */ DaffMediaGalleryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffMediaGalleryComponent, selector: "daff-media-gallery", inputs: { skeleton: "skeleton", name: "name" }, host: { properties: { "class.daff-media-gallery": "this.class" } }, providers: [
810
945
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
811
946
  { provide: DAFF_MEDIA_GALLERY_TOKEN, useExisting: DaffMediaGalleryComponent },
812
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"daff-media-gallery__thumbnails\">\n\t<ng-content select=\"[daffThumbnail]\"></ng-content>\n</div>\n<div class=\"daff-media-gallery__selected-thumbnail\">\n\t<daff-media-renderer></daff-media-renderer>\n</div>", styles: [":host(.daff-media-gallery){display:flex;flex-direction:column}@media (min-width: 1024px){:host(.daff-media-gallery){flex-direction:row}}:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{cursor:pointer;-webkit-user-select:none;display:inline-block;height:64px;width:64px;margin:0 2px;max-width:100%;overflow:hidden;user-select:none}@media (min-width: 480px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{height:72px;width:72px}}@media (min-width: 1024px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{display:block;margin:0 0 4px;height:80px;width:80px}}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:72px;width:72px;position:absolute;top:0;left:0}@media (min-width: 1024px){:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:80px;width:80px;position:absolute;top:0;left:0}}:host(.daff-media-gallery).daff-skeleton ::ng-deep img{opacity:0}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail{display:flex}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}.daff-media-gallery__thumbnails{margin:0 -2px;max-height:100%;order:2}@media (min-width: 1024px){.daff-media-gallery__thumbnails{margin:0 8px 0 0;order:1}}.daff-media-gallery__selected-thumbnail{display:block;flex-grow:1;order:1;position:relative}@media (min-width: 1024px){.daff-media-gallery__selected-thumbnail{order:2}}\n"], components: [{ type: DaffMediaRendererComponent, selector: "daff-media-renderer" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
947
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"daff-media-gallery__thumbnails\">\n\t<ng-content select=\"[daffThumbnail]\"></ng-content>\n</div>\n<div class=\"daff-media-gallery__selected-thumbnail\">\n\t<daff-media-renderer></daff-media-renderer>\n</div>", styles: [":host(.daff-media-gallery){display:flex;flex-direction:column}@media (min-width: 1024px){:host(.daff-media-gallery){flex-direction:row}}:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{cursor:pointer;-webkit-user-select:none;display:inline-block;height:64px;width:64px;margin:0 2px;max-width:100%;overflow:hidden;user-select:none}@media (min-width: 480px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{height:72px;width:72px}}@media (min-width: 1024px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{display:block;margin:0 0 4px;height:80px;width:80px}}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex;position:relative}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:72px;width:72px;position:absolute;top:0;left:0}@media (min-width: 1024px){:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex;position:relative}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:80px;width:80px;position:absolute;top:0;left:0}}:host(.daff-media-gallery).daff-skeleton ::ng-deep img{opacity:0}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail{display:flex;position:relative}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}.daff-media-gallery__thumbnails{margin:0 -2px;max-height:100%;order:2}@media (min-width: 1024px){.daff-media-gallery__thumbnails{margin:0 8px 0 0;order:1}}.daff-media-gallery__selected-thumbnail{display:block;flex-grow:1;order:1;position:relative}@media (min-width: 1024px){.daff-media-gallery__selected-thumbnail{order:2}}\n"], components: [{ type: DaffMediaRendererComponent, selector: "daff-media-renderer" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
813
948
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMediaGalleryComponent, decorators: [{
814
949
  type: Component,
815
950
  args: [{ selector: 'daff-media-gallery', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
816
951
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
817
952
  { provide: DAFF_MEDIA_GALLERY_TOKEN, useExisting: DaffMediaGalleryComponent },
818
- ], inputs: ['skeleton'], template: "<div class=\"daff-media-gallery__thumbnails\">\n\t<ng-content select=\"[daffThumbnail]\"></ng-content>\n</div>\n<div class=\"daff-media-gallery__selected-thumbnail\">\n\t<daff-media-renderer></daff-media-renderer>\n</div>", styles: [":host(.daff-media-gallery){display:flex;flex-direction:column}@media (min-width: 1024px){:host(.daff-media-gallery){flex-direction:row}}:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{cursor:pointer;-webkit-user-select:none;display:inline-block;height:64px;width:64px;margin:0 2px;max-width:100%;overflow:hidden;user-select:none}@media (min-width: 480px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{height:72px;width:72px}}@media (min-width: 1024px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{display:block;margin:0 0 4px;height:80px;width:80px}}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:72px;width:72px;position:absolute;top:0;left:0}@media (min-width: 1024px){:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:80px;width:80px;position:absolute;top:0;left:0}}:host(.daff-media-gallery).daff-skeleton ::ng-deep img{opacity:0}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail{display:flex}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}.daff-media-gallery__thumbnails{margin:0 -2px;max-height:100%;order:2}@media (min-width: 1024px){.daff-media-gallery__thumbnails{margin:0 8px 0 0;order:1}}.daff-media-gallery__selected-thumbnail{display:block;flex-grow:1;order:1;position:relative}@media (min-width: 1024px){.daff-media-gallery__selected-thumbnail{order:2}}\n"] }]
953
+ ], inputs: ['skeleton'], template: "<div class=\"daff-media-gallery__thumbnails\">\n\t<ng-content select=\"[daffThumbnail]\"></ng-content>\n</div>\n<div class=\"daff-media-gallery__selected-thumbnail\">\n\t<daff-media-renderer></daff-media-renderer>\n</div>", styles: [":host(.daff-media-gallery){display:flex;flex-direction:column}@media (min-width: 1024px){:host(.daff-media-gallery){flex-direction:row}}:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{cursor:pointer;-webkit-user-select:none;display:inline-block;height:64px;width:64px;margin:0 2px;max-width:100%;overflow:hidden;user-select:none}@media (min-width: 480px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{height:72px;width:72px}}@media (min-width: 1024px){:host(.daff-media-gallery) ::ng-deep .daff-thumbnail{display:block;margin:0 0 4px;height:80px;width:80px}}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex;position:relative}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:72px;width:72px;position:absolute;top:0;left:0}@media (min-width: 1024px){:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail{display:flex;position:relative}:host(.daff-media-gallery).daff-skeleton ::ng-deep .daff-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:80px;width:80px;position:absolute;top:0;left:0}}:host(.daff-media-gallery).daff-skeleton ::ng-deep img{opacity:0}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail{display:flex;position:relative}:host(.daff-media-gallery).daff-skeleton .daff-media-gallery__selected-thumbnail:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}.daff-media-gallery__thumbnails{margin:0 -2px;max-height:100%;order:2}@media (min-width: 1024px){.daff-media-gallery__thumbnails{margin:0 8px 0 0;order:1}}.daff-media-gallery__selected-thumbnail{display:block;flex-grow:1;order:1;position:relative}@media (min-width: 1024px){.daff-media-gallery__selected-thumbnail{order:2}}\n"] }]
819
954
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: DaffMediaGalleryRegistry }]; }, propDecorators: { class: [{
820
955
  type: HostBinding,
821
956
  args: ['class.daff-media-gallery']
@@ -1033,7 +1168,7 @@ class DaffImageComponent extends _daffImageBase {
1033
1168
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
1034
1169
  provide: daffThumbnailCompatToken, useExisting: DaffImageComponent,
1035
1170
  },
1036
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"daff-image__wrapper\" [style.paddingTop]=\"_paddingTop\">\n\t<img [src]=\"src\" [alt]=\"alt\" (load)=\"load.emit\" loading=\"lazy\"/>\n</div>", styles: [":host{display:inline-block;border-radius:inherit;position:relative;width:100%}:host.daff-skeleton{display:flex}:host.daff-skeleton:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}:host.daff-skeleton img{opacity:0}:host img{position:absolute;left:0;right:0;top:0;bottom:0;height:auto;margin:auto;max-width:100%}.daff-image__wrapper{border-radius:inherit;height:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1171
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"daff-image__wrapper\" [style.paddingTop]=\"_paddingTop\">\n\t<img [src]=\"src\" [alt]=\"alt\" (load)=\"load.emit\" loading=\"lazy\"/>\n</div>", styles: [":host{display:inline-block;border-radius:inherit;position:relative;width:100%}:host.daff-skeleton{display:flex;position:relative}:host.daff-skeleton:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}:host.daff-skeleton img{opacity:0}:host img{position:absolute;left:0;right:0;top:0;bottom:0;height:auto;margin:auto;max-width:100%}.daff-image__wrapper{border-radius:inherit;height:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1037
1172
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffImageComponent, decorators: [{
1038
1173
  type: Component,
1039
1174
  args: [{ selector: 'daff-image', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -1041,7 +1176,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
1041
1176
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
1042
1177
  provide: daffThumbnailCompatToken, useExisting: DaffImageComponent,
1043
1178
  },
1044
- ], inputs: ['skeleton'], template: "<div class=\"daff-image__wrapper\" [style.paddingTop]=\"_paddingTop\">\n\t<img [src]=\"src\" [alt]=\"alt\" (load)=\"load.emit\" loading=\"lazy\"/>\n</div>", styles: [":host{display:inline-block;border-radius:inherit;position:relative;width:100%}:host.daff-skeleton{display:flex}:host.daff-skeleton:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}:host.daff-skeleton img{opacity:0}:host img{position:absolute;left:0;right:0;top:0;bottom:0;height:auto;margin:auto;max-width:100%}.daff-image__wrapper{border-radius:inherit;height:0}\n"] }]
1179
+ ], inputs: ['skeleton'], template: "<div class=\"daff-image__wrapper\" [style.paddingTop]=\"_paddingTop\">\n\t<img [src]=\"src\" [alt]=\"alt\" (load)=\"load.emit\" loading=\"lazy\"/>\n</div>", styles: [":host{display:inline-block;border-radius:inherit;position:relative;width:100%}:host.daff-skeleton{display:flex;position:relative}:host.daff-skeleton:before{animation-name:loading;animation-duration:1.5s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:100%;width:100%;position:absolute;top:0;left:0}:host.daff-skeleton img{opacity:0}:host img{position:absolute;left:0;right:0;top:0;bottom:0;height:auto;margin:auto;max-width:100%}.daff-image__wrapper{border-radius:inherit;height:0}\n"] }]
1045
1180
  }], ctorParameters: function () { return [{ type: i1$1.DomSanitizer }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { src: [{
1046
1181
  type: Input
1047
1182
  }], alt: [{
@@ -1686,7 +1821,7 @@ class DaffQuantitySelectComponent {
1686
1821
  }
1687
1822
  }
1688
1823
  /** @nocollapse */ DaffQuantitySelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffQuantitySelectComponent, deps: [{ token: i1$2.NgControl }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1689
- /** @nocollapse */ DaffQuantitySelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffQuantitySelectComponent, selector: "daff-quantity-select", inputs: { min: "min", max: "max", extendable: "extendable" }, viewQueries: [{ propertyName: "select", first: true, predicate: DaffNativeSelectComponent, descendants: true }], ngImport: i0, template: "<select daff-native-select\n [formControl]=\"ngControl.control\"\n (focus)=\"onFocus()\"\n>\n <option *ngFor=\"let item of valueArray\" [value]=\"item\">{{ item }}</option>\n <option [value]=\"max\" *ngIf=\"extendable\">{{ max }}+</option>\n <option [value]=\"max\" *ngIf=\"!extendable\">{{ max }}</option>\n</select>\n", components: [{ type: DaffNativeSelectComponent, selector: "select[daff-native-select]", inputs: ["formSubmitted"] }], directives: [{ type: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1824
+ /** @nocollapse */ DaffQuantitySelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffQuantitySelectComponent, selector: "daff-quantity-select", inputs: { min: "min", max: "max", extendable: "extendable" }, viewQueries: [{ propertyName: "select", first: true, predicate: DaffNativeSelectComponent, descendants: true }], ngImport: i0, template: "<select daff-native-select\n [formControl]=\"ngControl.control\"\n (focus)=\"onFocus()\"\n>\n <option *ngFor=\"let item of valueArray\" [value]=\"item\">{{ item }}</option>\n <option [value]=\"max\" *ngIf=\"extendable\">{{ max }}+</option>\n <option [value]=\"max\" *ngIf=\"!extendable\">{{ max }}</option>\n</select>\n", components: [{ type: DaffNativeSelectComponent, selector: "select[daff-native-select]", inputs: ["formSubmitted"] }], directives: [{ type: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1690
1825
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffQuantitySelectComponent, decorators: [{
1691
1826
  type: Component,
1692
1827
  args: [{ selector: 'daff-quantity-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<select daff-native-select\n [formControl]=\"ngControl.control\"\n (focus)=\"onFocus()\"\n>\n <option *ngFor=\"let item of valueArray\" [value]=\"item\">{{ item }}</option>\n <option [value]=\"max\" *ngIf=\"extendable\">{{ max }}+</option>\n <option [value]=\"max\" *ngIf=\"!extendable\">{{ max }}</option>\n</select>\n" }]
@@ -1796,7 +1931,7 @@ class DaffQuantityFieldComponent {
1796
1931
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
1797
1932
  useExisting: DaffQuantityFieldComponent,
1798
1933
  },
1799
- ], viewQueries: [{ propertyName: "input", first: true, predicate: DaffQuantityInputComponent, descendants: true }, { propertyName: "select", first: true, predicate: DaffQuantitySelectComponent, descendants: true }], ngImport: i0, template: "<daff-quantity-select\n *ngIf=\"showSelectField\"\n [min]=\"min\" [max]=\"_maxFloor\" [extendable]=\"max > selectMax\">\n</daff-quantity-select>\n<daff-quantity-input\n *ngIf=\"showInputField\"\n [min]=\"min\" [max]=\"max\">\n</daff-quantity-input>\n", components: [{ type: DaffQuantitySelectComponent, selector: "daff-quantity-select", inputs: ["min", "max", "extendable"] }, { type: DaffQuantityInputComponent, selector: "daff-quantity-input", inputs: ["min", "max"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1934
+ ], viewQueries: [{ propertyName: "input", first: true, predicate: DaffQuantityInputComponent, descendants: true }, { propertyName: "select", first: true, predicate: DaffQuantitySelectComponent, descendants: true }], ngImport: i0, template: "<daff-quantity-select\n *ngIf=\"showSelectField\"\n [min]=\"min\" [max]=\"_maxFloor\" [extendable]=\"max > selectMax\">\n</daff-quantity-select>\n<daff-quantity-input\n *ngIf=\"showInputField\"\n [min]=\"min\" [max]=\"max\">\n</daff-quantity-input>\n", components: [{ type: DaffQuantitySelectComponent, selector: "daff-quantity-select", inputs: ["min", "max", "extendable"] }, { type: DaffQuantityInputComponent, selector: "daff-quantity-input", inputs: ["min", "max"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1800
1935
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffQuantityFieldComponent, decorators: [{
1801
1936
  type: Component,
1802
1937
  args: [{ selector: 'daff-quantity-field', providers: [
@@ -1919,78 +2054,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
1919
2054
  }]
1920
2055
  }] });
1921
2056
 
1922
- /**
1923
- * An _elementRef and an instance of renderer2 are needed for the Colorable mixin
1924
- */
1925
- class DaffLoadingIconBase {
1926
- constructor(_elementRef, _renderer) {
1927
- this._elementRef = _elementRef;
1928
- this._renderer = _renderer;
1929
- }
1930
- }
1931
- const _daffLoadingIconBase = daffColorMixin(DaffLoadingIconBase, 'primary');
1932
- /**
1933
- * @inheritdoc
1934
- */
1935
- class DaffLoadingIconComponent extends _daffLoadingIconBase {
1936
- constructor(elementRef, renderer) {
1937
- super(elementRef, renderer);
1938
- this.elementRef = elementRef;
1939
- this.renderer = renderer;
1940
- /**
1941
- * The (pixel) diameter of the animation
1942
- */
1943
- // eslint-disable-next-line @typescript-eslint/no-inferrable-types
1944
- this.diameter = 60;
1945
- /**
1946
- * @docs-private
1947
- */
1948
- this.class = true;
1949
- }
1950
- /**
1951
- * @docs-private
1952
- */
1953
- get maxWidth() {
1954
- return this.diameter + 'px';
1955
- }
1956
- }
1957
- /** @nocollapse */ DaffLoadingIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
1958
- /** @nocollapse */ DaffLoadingIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffLoadingIconComponent, selector: "daff-loading-icon", inputs: { color: "color", diameter: "diameter" }, host: { properties: { "class.daff-loading-icon": "this.class", "style.max-width": "this.maxWidth" } }, usesInheritance: true, ngImport: i0, template: "<svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle cx=\"50%\" cy=\"50%\" r=\"46\"></circle>\n</svg>", styles: [":host{display:block}circle{animation:rotation linear,circle-animation linear;animation-duration:1s;animation-iteration-count:infinite;fill:transparent;stroke-dasharray:101.1592834456 400;stroke-linecap:round;stroke-width:5px;transform-origin:center}@keyframes circle-animation{0%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:101.1592834456}50%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:28.902652413}75%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:0}to{stroke-dasharray:0 400;stroke-dashoffset:-101.1592834456}}@keyframes rotation{0%{transform:rotate(-90deg)}50%{transform:rotate(0)}50.5%{transform:rotate(0)}75%{transform:rotate(90deg)}75.5%{transform:rotate(90deg)}99%{transform:rotate(144deg)}to{transform:rotate(144deg)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1959
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconComponent, decorators: [{
1960
- type: Component,
1961
- args: [{ selector: 'daff-loading-icon', inputs: ['color'], changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle cx=\"50%\" cy=\"50%\" r=\"46\"></circle>\n</svg>", styles: [":host{display:block}circle{animation:rotation linear,circle-animation linear;animation-duration:1s;animation-iteration-count:infinite;fill:transparent;stroke-dasharray:101.1592834456 400;stroke-linecap:round;stroke-width:5px;transform-origin:center}@keyframes circle-animation{0%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:101.1592834456}50%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:28.902652413}75%{stroke-dasharray:101.1592834456 400;stroke-dashoffset:0}to{stroke-dasharray:0 400;stroke-dashoffset:-101.1592834456}}@keyframes rotation{0%{transform:rotate(-90deg)}50%{transform:rotate(0)}50.5%{transform:rotate(0)}75%{transform:rotate(90deg)}75.5%{transform:rotate(90deg)}99%{transform:rotate(144deg)}to{transform:rotate(144deg)}}\n"] }]
1962
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { diameter: [{
1963
- type: Input
1964
- }], class: [{
1965
- type: HostBinding,
1966
- args: ['class.daff-loading-icon']
1967
- }], maxWidth: [{
1968
- type: HostBinding,
1969
- args: ['style.max-width']
1970
- }] } });
1971
-
1972
- class DaffLoadingIconModule {
1973
- }
1974
- /** @nocollapse */ DaffLoadingIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1975
- /** @nocollapse */ DaffLoadingIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, declarations: [DaffLoadingIconComponent], imports: [CommonModule], exports: [DaffLoadingIconComponent] });
1976
- /** @nocollapse */ DaffLoadingIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, imports: [[
1977
- CommonModule,
1978
- ]] });
1979
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffLoadingIconModule, decorators: [{
1980
- type: NgModule,
1981
- args: [{
1982
- imports: [
1983
- CommonModule,
1984
- ],
1985
- declarations: [
1986
- DaffLoadingIconComponent,
1987
- ],
1988
- exports: [
1989
- DaffLoadingIconComponent,
1990
- ],
1991
- }]
1992
- }] });
1993
-
1994
2057
  const daffProgressIndicatorAnimation = {
1995
2058
  fill: trigger('fill', [
1996
2059
  state('*', style({ width: '{{ percentage }}%' }), { params: { percentage: 0 } }),
@@ -2404,6 +2467,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
2404
2467
  }]
2405
2468
  }] });
2406
2469
 
2470
+ class DaffFormLabelDirective {
2471
+ constructor() {
2472
+ this.class = true;
2473
+ }
2474
+ }
2475
+ /** @nocollapse */ DaffFormLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2476
+ /** @nocollapse */ DaffFormLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.0", type: DaffFormLabelDirective, selector: "[daffFormLabel]", host: { properties: { "class.daff-form-label": "this.class" } }, ngImport: i0 });
2477
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormLabelDirective, decorators: [{
2478
+ type: Directive,
2479
+ args: [{
2480
+ selector: '[daffFormLabel]',
2481
+ }]
2482
+ }], propDecorators: { class: [{
2483
+ type: HostBinding,
2484
+ args: ['class.daff-form-label']
2485
+ }] } });
2486
+
2487
+ class DaffFormLabelModule {
2488
+ }
2489
+ /** @nocollapse */ DaffFormLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2490
+ /** @nocollapse */ DaffFormLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormLabelModule, declarations: [DaffFormLabelDirective], exports: [DaffFormLabelDirective] });
2491
+ /** @nocollapse */ DaffFormLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormLabelModule });
2492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffFormLabelModule, decorators: [{
2493
+ type: NgModule,
2494
+ args: [{
2495
+ exports: [
2496
+ DaffFormLabelDirective,
2497
+ ],
2498
+ declarations: [
2499
+ DaffFormLabelDirective,
2500
+ ],
2501
+ }]
2502
+ }] });
2503
+
2407
2504
  class DaffAccordionItemContentDirective {
2408
2505
  constructor() {
2409
2506
  /**
@@ -2461,7 +2558,7 @@ const daffAccordionAnimations = {
2461
2558
  ]),
2462
2559
  };
2463
2560
 
2464
- const getAnimationState$2 = (open) => {
2561
+ const getAnimationState$3 = (open) => {
2465
2562
  if (open) {
2466
2563
  return 'open';
2467
2564
  }
@@ -2494,11 +2591,11 @@ class DaffAccordionItemComponent {
2494
2591
  */
2495
2592
  ngOnInit() {
2496
2593
  this._open = this.initiallyActive ? this.initiallyActive : this._open;
2497
- this._animationState = getAnimationState$2(this._open);
2594
+ this._animationState = getAnimationState$3(this._open);
2498
2595
  }
2499
2596
  toggleActive() {
2500
2597
  this._open = !this._open;
2501
- this._animationState = getAnimationState$2(this._open);
2598
+ this._animationState = getAnimationState$3(this._open);
2502
2599
  }
2503
2600
  }
2504
2601
  /** @nocollapse */ DaffAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffAccordionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -2579,15 +2676,15 @@ class DaffNavAccordionItemComponent {
2579
2676
  this._level = this.navAccordionItemParent._level + 1;
2580
2677
  }
2581
2678
  this._open = this.initiallyActive ? this.initiallyActive : this._open;
2582
- this._animationState = getAnimationState$2(this._open);
2679
+ this._animationState = getAnimationState$3(this._open);
2583
2680
  }
2584
2681
  toggleActive() {
2585
2682
  this._open = !this._open;
2586
- this._animationState = getAnimationState$2(this._open);
2683
+ this._animationState = getAnimationState$3(this._open);
2587
2684
  }
2588
2685
  }
2589
2686
  /** @nocollapse */ DaffNavAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffNavAccordionItemComponent, deps: [{ token: DaffAccordionComponent }, { token: DaffNavAccordionItemComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
2590
- /** @nocollapse */ DaffNavAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffNavAccordionItemComponent, selector: "daff-nav-accordion-item", inputs: { initiallyActive: "initiallyActive" }, host: { properties: { "class": "this.classes" } }, queries: [{ propertyName: "_navAccordionItemChild", predicate: DaffNavAccordionItemComponent, descendants: true }], ngImport: i0, template: "<div class=\"daff-nav-accordion-item__header\" (click)=\"toggleActive()\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n <span [hidden]=\"_open\" daffSuffix *ngIf=\"_navAccordionItemChild.toArray().length\">\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </span>\n <span [hidden]=\"!_open\" daffSuffix *ngIf=\"_navAccordionItemChild.toArray().length\">\n <fa-icon [icon]=\"faChevronUp\"></fa-icon>\n </span>\n</div>\n<div [@openAccordion]=\"_animationState\">\n <ng-content></ng-content>\n</div>\n", styles: [":host(.daff-nav-accordion-item--level-1) .daff-nav-accordion-item__header{padding-left:15px}:host(.daff-nav-accordion-item--level-2) .daff-nav-accordion-item__header{padding-left:30px}:host(.daff-nav-accordion-item--level-3) .daff-nav-accordion-item__header{padding-left:45px}:host{display:block;padding-top:6px}.daff-nav-accordion-item__header{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;width:100%;padding-bottom:6px}.daff-nav-accordion-item__header .daff-suffix{margin:0 10px}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DaffSuffixDirective, selector: "[daffSuffix]" }], animations: [
2687
+ /** @nocollapse */ DaffNavAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffNavAccordionItemComponent, selector: "daff-nav-accordion-item", inputs: { initiallyActive: "initiallyActive" }, host: { properties: { "class": "this.classes" } }, queries: [{ propertyName: "_navAccordionItemChild", predicate: DaffNavAccordionItemComponent, descendants: true }], ngImport: i0, template: "<div class=\"daff-nav-accordion-item__header\" (click)=\"toggleActive()\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n <span [hidden]=\"_open\" daffSuffix *ngIf=\"_navAccordionItemChild.toArray().length\">\n <fa-icon [icon]=\"faChevronDown\"></fa-icon>\n </span>\n <span [hidden]=\"!_open\" daffSuffix *ngIf=\"_navAccordionItemChild.toArray().length\">\n <fa-icon [icon]=\"faChevronUp\"></fa-icon>\n </span>\n</div>\n<div [@openAccordion]=\"_animationState\">\n <ng-content></ng-content>\n</div>\n", styles: [":host(.daff-nav-accordion-item--level-1) .daff-nav-accordion-item__header{padding-left:15px}:host(.daff-nav-accordion-item--level-2) .daff-nav-accordion-item__header{padding-left:30px}:host(.daff-nav-accordion-item--level-3) .daff-nav-accordion-item__header{padding-left:45px}:host{display:block;padding-top:6px}.daff-nav-accordion-item__header{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;width:100%;padding-bottom:6px}.daff-nav-accordion-item__header .daff-suffix{margin:0 10px}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DaffSuffixDirective, selector: "[daffSuffix]" }], animations: [
2591
2688
  daffAccordionAnimations.openAccordion,
2592
2689
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2593
2690
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffNavAccordionItemComponent, decorators: [{
@@ -2780,6 +2877,10 @@ const backdropTransitionOut = 'cubic-bezier(0.4, 0.0, 1, 1)';
2780
2877
  const backdropTransitionIn = 'cubic-bezier(0.0, 0.0, 0.2, 1)';
2781
2878
  const daffBackdropAnimations = {
2782
2879
  fadeBackdrop: trigger('fadeBackdrop', [
2880
+ state('interactable', style({ opacity: 1 })),
2881
+ state('non-interactable', style({ opacity: 0 })),
2882
+ transition('interactable => non-interactable', animate(animationDuration + ' ' + backdropTransitionOut)),
2883
+ transition('non-interactable => interactable', animate(animationDuration + ' ' + backdropTransitionIn)),
2783
2884
  transition(':enter', [
2784
2885
  style({ opacity: 0 }),
2785
2886
  animate(animationDuration + ' ' + backdropTransitionIn, style({ opacity: 1 })),
@@ -2790,6 +2891,8 @@ const daffBackdropAnimations = {
2790
2891
  ]),
2791
2892
  };
2792
2893
 
2894
+ const getAnimationState$2 = (interactable) => interactable ? 'interactable' : 'non-interactable';
2895
+
2793
2896
  class DaffBackdropComponent {
2794
2897
  constructor() {
2795
2898
  /**
@@ -2797,6 +2900,10 @@ class DaffBackdropComponent {
2797
2900
  */
2798
2901
  // eslint-disable-next-line @typescript-eslint/no-inferrable-types
2799
2902
  this.transparent = false;
2903
+ /**
2904
+ * Determines whether or not the backdrop is interactable.
2905
+ */
2906
+ this.interactable = true;
2800
2907
  /**
2801
2908
  * Boolean property that determines whether or not the
2802
2909
  * backdrop should fill up its containing window.
@@ -2807,34 +2914,64 @@ class DaffBackdropComponent {
2807
2914
  * Output event triggered when the backdrop is clicked.
2808
2915
  */
2809
2916
  this.backdropClicked = new EventEmitter();
2917
+ this.interactableClass = true;
2918
+ }
2919
+ ngOnInit() {
2920
+ this.interactableClass = this.interactable;
2810
2921
  }
2811
2922
  /**
2812
2923
  * Animation hook for that controls the backdrops
2813
2924
  * entrance and fade animations.
2814
2925
  */
2926
+ get fadeBackdropTrigger() {
2927
+ return getAnimationState$2(this.interactable);
2928
+ }
2929
+ animationDone(e) {
2930
+ this.interactableClass = !(e.toState === ':leave' || e.toState === 'non-interactable');
2931
+ }
2932
+ animationStart(e) {
2933
+ if (e.toState === ':enter' || e.toState === 'interactable') {
2934
+ this.interactableClass = true;
2935
+ }
2936
+ }
2937
+ /**
2938
+ * @deprecated
2939
+ * Backdrop event that triggers when the backdrop element is clicked.
2940
+ */
2815
2941
  onBackdropClicked() {
2816
2942
  this.backdropClicked.emit();
2817
2943
  }
2818
2944
  }
2819
2945
  /** @nocollapse */ DaffBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2820
- /** @nocollapse */ DaffBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffBackdropComponent, selector: "daff-backdrop", inputs: { transparent: "transparent", fullscreen: "fullscreen" }, outputs: { backdropClicked: "backdropClicked" }, host: { listeners: { "click": "onBackdropClicked()" }, properties: { "@fadeBackdrop": "this.onBackdropClicked" } }, ngImport: i0, template: "<div class=\"daff-backdrop\" [class.daff-backdrop--fullscreen]=\"fullscreen\" [class.daff-backdrop--transparent]=\"transparent\"></div>\n", styles: [":host{cursor:pointer;-webkit-user-select:none;user-select:none;display:block;-webkit-tap-highlight-color:rgba(0,0,0,0)}.daff-backdrop{background:rgba(0,0,0,.3);height:100%;width:100%}.daff-backdrop--transparent{background:none}.daff-backdrop:focus,.daff-backdrop:active,.daff-backdrop:visited{outline:0}.daff-backdrop--fullscreen{position:absolute}\n"], animations: [
2946
+ /** @nocollapse */ DaffBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffBackdropComponent, selector: "daff-backdrop", inputs: { transparent: "transparent", interactable: "interactable", fullscreen: "fullscreen" }, outputs: { backdropClicked: "backdropClicked" }, host: { listeners: { "@fadeBackdrop.done": "animationDone($event)", "@fadeBackdrop.start": "animationStart($event)", "click": "onBackdropClicked()" }, properties: { "class.interactable": "this.interactableClass", "@fadeBackdrop": "this.fadeBackdropTrigger" } }, ngImport: i0, template: "<div class=\"daff-backdrop\" [class.daff-backdrop--fullscreen]=\"fullscreen\" [class.daff-backdrop--transparent]=\"transparent\"></div>\n", styles: [":host{display:block;-webkit-tap-highlight-color:rgba(0,0,0,0);visibility:hidden;pointer-events:none}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;user-select:none}.daff-backdrop{background:rgba(0,0,0,.3);height:100%;width:100%}.daff-backdrop--transparent{background:none}.daff-backdrop:focus,.daff-backdrop:active,.daff-backdrop:visited{outline:0}.daff-backdrop--fullscreen{position:absolute}\n"], animations: [
2821
2947
  daffBackdropAnimations.fadeBackdrop,
2822
2948
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2823
2949
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffBackdropComponent, decorators: [{
2824
2950
  type: Component,
2825
2951
  args: [{ selector: 'daff-backdrop', animations: [
2826
2952
  daffBackdropAnimations.fadeBackdrop,
2827
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"daff-backdrop\" [class.daff-backdrop--fullscreen]=\"fullscreen\" [class.daff-backdrop--transparent]=\"transparent\"></div>\n", styles: [":host{cursor:pointer;-webkit-user-select:none;user-select:none;display:block;-webkit-tap-highlight-color:rgba(0,0,0,0)}.daff-backdrop{background:rgba(0,0,0,.3);height:100%;width:100%}.daff-backdrop--transparent{background:none}.daff-backdrop:focus,.daff-backdrop:active,.daff-backdrop:visited{outline:0}.daff-backdrop--fullscreen{position:absolute}\n"] }]
2953
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"daff-backdrop\" [class.daff-backdrop--fullscreen]=\"fullscreen\" [class.daff-backdrop--transparent]=\"transparent\"></div>\n", styles: [":host{display:block;-webkit-tap-highlight-color:rgba(0,0,0,0);visibility:hidden;pointer-events:none}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;user-select:none}.daff-backdrop{background:rgba(0,0,0,.3);height:100%;width:100%}.daff-backdrop--transparent{background:none}.daff-backdrop:focus,.daff-backdrop:active,.daff-backdrop:visited{outline:0}.daff-backdrop--fullscreen{position:absolute}\n"] }]
2828
2954
  }], propDecorators: { transparent: [{
2829
2955
  type: Input
2956
+ }], interactable: [{
2957
+ type: Input
2830
2958
  }], fullscreen: [{
2831
2959
  type: Input
2832
2960
  }], backdropClicked: [{
2833
2961
  type: Output
2834
- }], onBackdropClicked: [{
2962
+ }], interactableClass: [{
2963
+ type: HostBinding,
2964
+ args: ['class.interactable']
2965
+ }], fadeBackdropTrigger: [{
2835
2966
  type: HostBinding,
2836
2967
  args: ['@fadeBackdrop']
2837
- }, {
2968
+ }], animationDone: [{
2969
+ type: HostListener,
2970
+ args: ['@fadeBackdrop.done', ['$event']]
2971
+ }], animationStart: [{
2972
+ type: HostListener,
2973
+ args: ['@fadeBackdrop.start', ['$event']]
2974
+ }], onBackdropClicked: [{
2838
2975
  type: HostListener,
2839
2976
  args: ['click']
2840
2977
  }] } });
@@ -3167,7 +3304,7 @@ class DaffListItemComponent {
3167
3304
  }
3168
3305
  }
3169
3306
  /** @nocollapse */ DaffListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffListItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
3170
- /** @nocollapse */ DaffListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffListItemComponent, selector: "daff-list-item,a[daff-list-item]", host: { properties: { "class.daff-list-item": "this.class", "attr.role": "this.role" } }, queries: [{ propertyName: "_prefix", first: true, predicate: DaffPrefixDirective, descendants: true }, { propertyName: "_suffix", first: true, predicate: DaffSuffixDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<div class=\"daff-list-item__content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3307
+ /** @nocollapse */ DaffListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffListItemComponent, selector: "daff-list-item,a[daff-list-item]", host: { properties: { "class.daff-list-item": "this.class", "attr.role": "this.role" } }, queries: [{ propertyName: "_prefix", first: true, predicate: DaffPrefixDirective, descendants: true }, { propertyName: "_suffix", first: true, predicate: DaffSuffixDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<div class=\"daff-list-item__content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3171
3308
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffListItemComponent, decorators: [{
3172
3309
  type: Component,
3173
3310
  args: [{ selector: 'daff-list-item' + ',' +
@@ -3483,7 +3620,7 @@ class DaffMenuItemComponent {
3483
3620
  }
3484
3621
  }
3485
3622
  /** @nocollapse */ DaffMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3486
- /** @nocollapse */ DaffMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffMenuItemComponent, selector: "a[daff-menu-item],button[daff-menu-item]", host: { properties: { "class.daff-menu-item": "this.class", "attr.role": "this.role" } }, queries: [{ propertyName: "_prefix", first: true, predicate: DaffPrefixDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<div class=\"daff-menu-item__content\">\n <ng-content></ng-content>\n</div>", styles: [":host{cursor:pointer;-webkit-user-select:none;user-select:none;display:block;border:none;border-radius:4px;margin:0;padding:12px 16px;text-decoration:none;width:100%}.daff-menu-item__content{display:flex;gap:8px;font-size:1rem;line-height:1.25rem;text-align:left}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3623
+ /** @nocollapse */ DaffMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffMenuItemComponent, selector: "a[daff-menu-item],button[daff-menu-item]", host: { properties: { "class.daff-menu-item": "this.class", "attr.role": "this.role" } }, queries: [{ propertyName: "_prefix", first: true, predicate: DaffPrefixDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<div class=\"daff-menu-item__content\">\n <ng-content></ng-content>\n</div>", styles: [":host{cursor:pointer;-webkit-user-select:none;user-select:none;display:block;border:none;border-radius:4px;margin:0;padding:12px 16px;text-decoration:none;width:100%}.daff-menu-item__content{display:flex;gap:8px;font-size:1rem;line-height:1.25rem;text-align:left}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3487
3624
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffMenuItemComponent, decorators: [{
3488
3625
  type: Component,
3489
3626
  args: [{ selector: 'a[daff-menu-item]' + ',' +
@@ -4053,7 +4190,7 @@ class DaffPaginatorComponent extends _daffPaginatorBase {
4053
4190
  }
4054
4191
  }
4055
4192
  /** @nocollapse */ DaffPaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffPaginatorComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
4056
- /** @nocollapse */ DaffPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffPaginatorComponent, selector: "daff-paginator", inputs: { color: "color", numberOfPages: "numberOfPages", currentPage: "currentPage" }, outputs: { notifyPageChange: "notifyPageChange" }, host: { properties: { "class.daff-paginator": "this.class", "attr.role": "this.role" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<button type=\"button\" class=\"daff-paginator__previous\"\n [disabled]=\"_disablePrev()\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Previous Page of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPrevPageChange()\">\n <fa-icon [icon]=\"faChevronLeft\"></fa-icon> Previous\n</button>\n\n<button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(1)\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Page 1 of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPageChange(1)\">\n 1\n</button>\n\n<span class=\"daff-paginator__ellipsis\" *ngIf=\"_showFirstEllipsis()\">...</span>\n\n<ng-container *ngFor=\"let pageNumber of _numberOfPagesArray\">\n <button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(pageNumber)\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Page {{pageNumber}} of {{_paginatorId}} Paginator\"\n aria-current=\"_isSelected(pageNumber)\"\n *ngIf=\"_showNumber(pageNumber)\"\n (click)=\"_onNotifyPageChange(pageNumber)\">\n {{ pageNumber }}\n </button>\n</ng-container>\n\n<span class=\"daff-paginator__ellipsis\" *ngIf=\"_showLastEllipsis()\">...</span>\n\n<button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(numberOfPages)\"\n tabindex=\"0\"\n attr.aria-label=\"Go To Page {{numberOfPages}} of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPageChange(numberOfPages)\"\n *ngIf=\"!(numberOfPages < 2)\">\n {{ numberOfPages }}\n</button>\n\n<button class=\"daff-paginator__next\"\n [disabled]=\"_disableNext()\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Next Page of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyNextPageChange()\">\n Next <fa-icon [icon]=\"faChevronRight\"></fa-icon>\n</button>\n", styles: [":host{display:flex}.daff-paginator__previous,.daff-paginator__next{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;-webkit-appearance:none;appearance:none;background:transparent;border:0;border-radius:3px;display:flex;line-height:1em;padding:5px 10px}.daff-paginator__previous fa-icon{margin-right:10px}.daff-paginator__next fa-icon{margin-left:10px}.daff-paginator__ellipsis{padding:5px 10px}.daff-paginator__page-link{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-appearance:none;appearance:none;background-color:transparent;border:0;border-radius:3px;display:inline-block;margin:0 5px;padding:5px 10px;transition:background-color .15s ease}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4193
+ /** @nocollapse */ DaffPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffPaginatorComponent, selector: "daff-paginator", inputs: { color: "color", numberOfPages: "numberOfPages", currentPage: "currentPage" }, outputs: { notifyPageChange: "notifyPageChange" }, host: { properties: { "class.daff-paginator": "this.class", "attr.role": "this.role" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<button type=\"button\" class=\"daff-paginator__previous\"\n [disabled]=\"_disablePrev()\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Previous Page of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPrevPageChange()\">\n <fa-icon [icon]=\"faChevronLeft\"></fa-icon> Previous\n</button>\n\n<button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(1)\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Page 1 of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPageChange(1)\">\n 1\n</button>\n\n<span class=\"daff-paginator__ellipsis\" *ngIf=\"_showFirstEllipsis()\">...</span>\n\n<ng-container *ngFor=\"let pageNumber of _numberOfPagesArray\">\n <button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(pageNumber)\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Page {{pageNumber}} of {{_paginatorId}} Paginator\"\n aria-current=\"_isSelected(pageNumber)\"\n *ngIf=\"_showNumber(pageNumber)\"\n (click)=\"_onNotifyPageChange(pageNumber)\">\n {{ pageNumber }}\n </button>\n</ng-container>\n\n<span class=\"daff-paginator__ellipsis\" *ngIf=\"_showLastEllipsis()\">...</span>\n\n<button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(numberOfPages)\"\n tabindex=\"0\"\n attr.aria-label=\"Go To Page {{numberOfPages}} of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPageChange(numberOfPages)\"\n *ngIf=\"!(numberOfPages < 2)\">\n {{ numberOfPages }}\n</button>\n\n<button class=\"daff-paginator__next\"\n [disabled]=\"_disableNext()\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Next Page of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyNextPageChange()\">\n Next <fa-icon [icon]=\"faChevronRight\"></fa-icon>\n</button>\n", styles: [":host{display:flex}.daff-paginator__previous,.daff-paginator__next{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;-webkit-appearance:none;appearance:none;background:transparent;border:0;border-radius:3px;display:flex;line-height:1em;padding:5px 10px}.daff-paginator__previous fa-icon{margin-right:10px}.daff-paginator__next fa-icon{margin-left:10px}.daff-paginator__ellipsis{padding:5px 10px}.daff-paginator__page-link{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-appearance:none;appearance:none;background-color:transparent;border:0;border-radius:3px;display:inline-block;margin:0 5px;padding:5px 10px;transition:background-color .15s ease}\n"], components: [{ type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4057
4194
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffPaginatorComponent, decorators: [{
4058
4195
  type: Component,
4059
4196
  args: [{ selector: 'daff-paginator', inputs: ['color'], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button type=\"button\" class=\"daff-paginator__previous\"\n [disabled]=\"_disablePrev()\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Previous Page of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPrevPageChange()\">\n <fa-icon [icon]=\"faChevronLeft\"></fa-icon> Previous\n</button>\n\n<button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(1)\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Page 1 of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPageChange(1)\">\n 1\n</button>\n\n<span class=\"daff-paginator__ellipsis\" *ngIf=\"_showFirstEllipsis()\">...</span>\n\n<ng-container *ngFor=\"let pageNumber of _numberOfPagesArray\">\n <button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(pageNumber)\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Page {{pageNumber}} of {{_paginatorId}} Paginator\"\n aria-current=\"_isSelected(pageNumber)\"\n *ngIf=\"_showNumber(pageNumber)\"\n (click)=\"_onNotifyPageChange(pageNumber)\">\n {{ pageNumber }}\n </button>\n</ng-container>\n\n<span class=\"daff-paginator__ellipsis\" *ngIf=\"_showLastEllipsis()\">...</span>\n\n<button type=\"button\" class=\"daff-paginator__page-link\"\n [class.selected]=\"_isSelected(numberOfPages)\"\n tabindex=\"0\"\n attr.aria-label=\"Go To Page {{numberOfPages}} of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyPageChange(numberOfPages)\"\n *ngIf=\"!(numberOfPages < 2)\">\n {{ numberOfPages }}\n</button>\n\n<button class=\"daff-paginator__next\"\n [disabled]=\"_disableNext()\"\n tabindex=\"0\"\n attr.aria-label=\"Go to Next Page of {{_paginatorId}} Paginator\"\n (click)=\"_onNotifyNextPageChange()\">\n Next <fa-icon [icon]=\"faChevronRight\"></fa-icon>\n</button>\n", styles: [":host{display:flex}.daff-paginator__previous,.daff-paginator__next{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;-webkit-appearance:none;appearance:none;background:transparent;border:0;border-radius:3px;display:flex;line-height:1em;padding:5px 10px}.daff-paginator__previous fa-icon{margin-right:10px}.daff-paginator__next fa-icon{margin-left:10px}.daff-paginator__ellipsis{padding:5px 10px}.daff-paginator__page-link{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-appearance:none;appearance:none;background-color:transparent;border:0;border-radius:3px;display:inline-block;margin:0 5px;padding:5px 10px;transition:background-color .15s ease}\n"] }]
@@ -4195,7 +4332,7 @@ class DaffQtyDropdownComponent {
4195
4332
  }
4196
4333
  }
4197
4334
  /** @nocollapse */ DaffQtyDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffQtyDropdownComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
4198
- /** @nocollapse */ DaffQtyDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffQtyDropdownComponent, selector: "daff-qty-dropdown", inputs: { qty: "qty", id: "id" }, outputs: { qtyChanged: "qtyChanged" }, ngImport: i0, template: "<daff-form-field class=\"daff-qty-dropdown\">\n <select daff-native-select *ngIf=\"!showQtyInputField\" id=\"select_{{id}}\" [(ngModel)]=\"qty\" (ngModelChange)=\"onChangedWrapper(qty)\" (blur)=\"onTouched()\">\n <option *ngFor=\"let item of dropdownItemCounter\" [value]=\"item+1\">{{ item+1 }}</option>\n <option value=\"10\">10+</option>\n </select>\n <input daff-input id=\"input_{{id}}\" class=\"daff-qty-dropdown__input\" [(ngModel)]=\"qty\" (ngModelChange)=\"onChangedWrapper(qty)\" (blur)=\"onTouched()\" *ngIf=\"showQtyInputField\">\n</daff-form-field>", styles: [".daff-qty-dropdown__input{width:50px}\n"], components: [{ type: DaffFormFieldComponent, selector: "daff-form-field", inputs: ["formSubmitted"] }, { type: DaffNativeSelectComponent, selector: "select[daff-native-select]", inputs: ["formSubmitted"] }, { type: DaffInputComponent, selector: "input[daff-input]", inputs: ["formSubmitted"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }] });
4335
+ /** @nocollapse */ DaffQtyDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffQtyDropdownComponent, selector: "daff-qty-dropdown", inputs: { qty: "qty", id: "id" }, outputs: { qtyChanged: "qtyChanged" }, ngImport: i0, template: "<daff-form-field class=\"daff-qty-dropdown\">\n <select daff-native-select *ngIf=\"!showQtyInputField\" id=\"select_{{id}}\" [(ngModel)]=\"qty\" (ngModelChange)=\"onChangedWrapper(qty)\" (blur)=\"onTouched()\">\n <option *ngFor=\"let item of dropdownItemCounter\" [value]=\"item+1\">{{ item+1 }}</option>\n <option value=\"10\">10+</option>\n </select>\n <input daff-input id=\"input_{{id}}\" class=\"daff-qty-dropdown__input\" [(ngModel)]=\"qty\" (ngModelChange)=\"onChangedWrapper(qty)\" (blur)=\"onTouched()\" *ngIf=\"showQtyInputField\">\n</daff-form-field>", styles: [".daff-qty-dropdown__input{width:50px}\n"], components: [{ type: DaffFormFieldComponent, selector: "daff-form-field", inputs: ["formSubmitted"] }, { type: DaffNativeSelectComponent, selector: "select[daff-native-select]", inputs: ["formSubmitted"] }, { type: DaffInputComponent, selector: "input[daff-input]", inputs: ["formSubmitted"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }] });
4199
4336
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffQtyDropdownComponent, decorators: [{
4200
4337
  type: Component,
4201
4338
  args: [{ selector: 'daff-qty-dropdown', template: "<daff-form-field class=\"daff-qty-dropdown\">\n <select daff-native-select *ngIf=\"!showQtyInputField\" id=\"select_{{id}}\" [(ngModel)]=\"qty\" (ngModelChange)=\"onChangedWrapper(qty)\" (blur)=\"onTouched()\">\n <option *ngFor=\"let item of dropdownItemCounter\" [value]=\"item+1\">{{ item+1 }}</option>\n <option value=\"10\">10+</option>\n </select>\n <input daff-input id=\"input_{{id}}\" class=\"daff-qty-dropdown__input\" [(ngModel)]=\"qty\" (ngModelChange)=\"onChangedWrapper(qty)\" (blur)=\"onTouched()\" *ngIf=\"showQtyInputField\">\n</daff-form-field>", styles: [".daff-qty-dropdown__input{width:50px}\n"] }]
@@ -4241,8 +4378,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImpor
4241
4378
  }]
4242
4379
  }] });
4243
4380
 
4244
- const duration = '350ms';
4245
- const sidebarAnimateRemainTransition = 'cubic-bezier(0.4, 0.0, 0.2, 1)';
4381
+ const duration = '200ms';
4246
4382
  const sidebarAnimateInTransition = 'cubic-bezier(0.0, 0.0, 0.2, 1)';
4247
4383
  const sidebarAnimateOutTransition = 'cubic-bezier(0.4, 0.0, 1, 1)';
4248
4384
  const daffSidebarAnimations = {
@@ -4251,15 +4387,32 @@ const daffSidebarAnimations = {
4251
4387
  // 1. 3d transforms causes text to appear blurry on IE and Edge.
4252
4388
  state('open', style({
4253
4389
  transform: 'none',
4254
- visibility: 'visible',
4255
4390
  })),
4391
+ state('closed', style({
4392
+ transform: 'translateX({{width}})',
4393
+ }), { params: { width: '-240px' } }),
4256
4394
  transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),
4257
4395
  transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),
4258
4396
  ]),
4259
4397
  transformContent: trigger('transformContent', [
4398
+ // We remove the `transform` here completely, rather than setting it to zero, because:
4399
+ // 1. 3d transforms causes text to appear blurry on IE and Edge.
4260
4400
  state('closed', style({
4261
4401
  transform: 'none',
4262
4402
  })),
4403
+ state('open', style({
4404
+ transform: 'translateX({{shift}})',
4405
+ }), { params: { shift: '-240px' } }),
4406
+ transition('open => closed', animate(duration + ' ' + sidebarAnimateInTransition)),
4407
+ transition('closed => open', animate(duration + ' ' + sidebarAnimateOutTransition)),
4408
+ ]),
4409
+ backdropTrigger: trigger('backdropTrigger', [
4410
+ state('open', style({
4411
+ opacity: 1,
4412
+ })),
4413
+ state('closed', style({
4414
+ opacity: 0,
4415
+ })),
4263
4416
  transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),
4264
4417
  transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),
4265
4418
  ]),
@@ -4268,11 +4421,12 @@ var DaffSidebarAnimationStates;
4268
4421
  (function (DaffSidebarAnimationStates) {
4269
4422
  DaffSidebarAnimationStates["OPEN"] = "open";
4270
4423
  DaffSidebarAnimationStates["CLOSED"] = "closed";
4424
+ DaffSidebarAnimationStates["NONE"] = "none";
4271
4425
  })(DaffSidebarAnimationStates || (DaffSidebarAnimationStates = {}));
4272
4426
 
4273
4427
  const getAnimationState = (open, enabled = true) => {
4274
4428
  if (!enabled) {
4275
- return 'open';
4429
+ return 'none';
4276
4430
  }
4277
4431
  if (open && enabled) {
4278
4432
  return 'open';
@@ -4282,21 +4436,33 @@ const getAnimationState = (open, enabled = true) => {
4282
4436
  }
4283
4437
  };
4284
4438
 
4439
+ const getSidebarAnimationWidth = (side, width) => side === 'left' ? -1 * width + 'px' : width + 'px';
4440
+
4285
4441
  /**
4286
- * DaffSidebar is heavily based upon the work done by the @angular/material2
4442
+ * DaffSidebarComponent is heavily based upon the work done by the @angular/components
4287
4443
  * team on `mat-drawer` and `mat-sidenav`. `daff-sidebar` is intended to be
4288
- * a simplified version (with a different design) of `mat-drawer` which
4289
- * follows a stricter "dumb" component pattern than `mat-drawer`
4444
+ * a simplified version (with a different design) of `mat-drawer`.
4290
4445
  */
4291
4446
  class DaffSidebarComponent {
4292
4447
  constructor(_elementRef, _ngZone) {
4293
4448
  this._elementRef = _elementRef;
4294
4449
  this._ngZone = _ngZone;
4295
- this.class = true;
4296
4450
  /**
4297
4451
  * Event fired when `ESC` key is pressed when the sidebar has focus
4298
4452
  */
4299
4453
  this.escapePressed = new EventEmitter();
4454
+ /**
4455
+ * What side of the viewport to show the sidebar on.
4456
+ */
4457
+ this.side = 'left';
4458
+ /**
4459
+ * The mode of the sidebar.
4460
+ */
4461
+ this.mode = 'side';
4462
+ /**
4463
+ * Whether or not the sidebar is open.
4464
+ */
4465
+ this.open = false;
4300
4466
  /**
4301
4467
  * Listen to `keydown` events outside the zone so that change detection is not run every
4302
4468
  * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed.
@@ -4309,128 +4475,211 @@ class DaffSidebarComponent {
4309
4475
  }));
4310
4476
  });
4311
4477
  }
4478
+ /**
4479
+ * The CSS classes set.
4480
+ */
4481
+ get classes() {
4482
+ return {
4483
+ 'daff-sidebar': true,
4484
+ [this.side]: true,
4485
+ [this.mode]: true,
4486
+ };
4487
+ }
4488
+ ;
4489
+ /**
4490
+ * The animation state of the sidebar.
4491
+ */
4492
+ get transformSidebar() {
4493
+ return {
4494
+ value: getAnimationState(this.open, this.mode === 'over' || this.mode === 'side-fixed'),
4495
+ params: { width: getSidebarAnimationWidth(this.side, this.width) },
4496
+ };
4497
+ }
4498
+ /**
4499
+ * The width of the sidebar.
4500
+ */
4501
+ get width() {
4502
+ return this._elementRef.nativeElement.offsetWidth;
4503
+ }
4312
4504
  }
4313
4505
  /** @nocollapse */ DaffSidebarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffSidebarComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
4314
- /** @nocollapse */ DaffSidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffSidebarComponent, selector: "daff-sidebar", outputs: { escapePressed: "escapePressed" }, host: { properties: { "class.daff-sidebar": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block}.daff-sidebar{display:block;height:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
4506
+ /** @nocollapse */ DaffSidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffSidebarComponent, selector: "daff-sidebar", inputs: { side: "side", mode: "mode", open: "open" }, outputs: { escapePressed: "escapePressed" }, host: { properties: { "class": "this.classes", "@transformSidebar": "this.transformSidebar" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;width:240px;flex-shrink:0;overflow:auto}:host.side-fixed{position:fixed;top:var(--daff-sidebar-side-fixed-top-shift);bottom:0;z-index:4;height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}:host.over,:host.under{position:absolute;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:5}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport >).side-fixed{position:sticky}\n"], animations: [
4507
+ daffSidebarAnimations.transformSidebar,
4508
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4315
4509
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffSidebarComponent, decorators: [{
4316
4510
  type: Component,
4317
- args: [{ selector: 'daff-sidebar', template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}.daff-sidebar{display:block;height:100%}\n"] }]
4318
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { class: [{
4511
+ args: [{ selector: 'daff-sidebar', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
4512
+ daffSidebarAnimations.transformSidebar,
4513
+ ], styles: [":host{display:block;width:240px;flex-shrink:0;overflow:auto}:host.side-fixed{position:fixed;top:var(--daff-sidebar-side-fixed-top-shift);bottom:0;z-index:4;height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}:host.over,:host.under{position:absolute;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:5}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport >).side-fixed{position:sticky}\n"] }]
4514
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { classes: [{
4515
+ type: HostBinding,
4516
+ args: ['class']
4517
+ }], transformSidebar: [{
4319
4518
  type: HostBinding,
4320
- args: ['class.daff-sidebar']
4519
+ args: ['@transformSidebar']
4321
4520
  }], escapePressed: [{
4322
4521
  type: Output
4522
+ }], side: [{
4523
+ type: Input
4524
+ }], mode: [{
4525
+ type: Input
4526
+ }], open: [{
4527
+ type: Input
4323
4528
  }] } });
4324
4529
 
4530
+ /**
4531
+ * Determines, given a list of sidebars, whether or not the backdrop is interactable (typically clickable).
4532
+ */
4533
+ const sidebarViewportBackdropInteractable = (sidebars) => sidebars.reduce((acc, sidebar) => ((sidebar.mode === 'over' || sidebar.mode === 'under') && sidebar.open) || acc, false);
4534
+
4535
+ /**
4536
+ * Given a list of sidebars, compute the associated content shift.
4537
+ */
4538
+ const sidebarViewportContentPadding = (sidebars, side) => sidebars.reduce((acc, sidebar) => {
4539
+ if (!(sidebar.mode === "side-fixed" /* SideFixed */ && sidebar.open)) {
4540
+ return acc;
4541
+ }
4542
+ if (sidebar.side === side) {
4543
+ return sidebar.width;
4544
+ }
4545
+ else {
4546
+ // This component is "stateless", its possible to have two open "under" sidebars.
4547
+ // As such, we defer to "left" being open by default.
4548
+ return acc;
4549
+ }
4550
+ }, 0);
4551
+
4552
+ const isViewportContentShifted = (mode, open) => (mode === 'under' && open);
4553
+ /**
4554
+ * Given a list of sidebars, compute the associated content shift.
4555
+ */
4556
+ const sidebarViewportContentShift = (sidebars) => sidebars.reduce((acc, sidebar) => {
4557
+ if (!isViewportContentShifted(sidebar.mode, sidebar.open)) {
4558
+ return acc;
4559
+ }
4560
+ if (sidebar.side === 'left') {
4561
+ return sidebar.width;
4562
+ }
4563
+ else if (sidebar.side === 'right' && acc === 0) {
4564
+ return -1 * sidebar.width;
4565
+ }
4566
+ else {
4567
+ // This component is "stateless", its possible to have two open "under" sidebars.
4568
+ // As such, we defer to "left" being open by default.
4569
+ return acc;
4570
+ }
4571
+ }, 0);
4572
+
4573
+ /**
4574
+ * The DaffSidebarViewport is the "holder" of sidebars throughout an entire application.
4575
+ * It's generally only used once, like
4576
+ *
4577
+ * ```html
4578
+ * <daff-sidebar-viewport>
4579
+ * <daff-sidebar></daff-sidebar>
4580
+ * <p>Some Content</p>
4581
+ * </daff-sidebar-viewport>
4582
+ * ```
4583
+ *
4584
+ * Importantly, its possible for there to be multiple sidebars of many modes
4585
+ * at the same time. @see {@link DaffSidebarMode }
4586
+ *
4587
+ * Since this is a functional component, it's possible to have multiple "open" sidebars
4588
+ * within at the same time. As a result, this component attempts to
4589
+ * gracefully handle these situations. However, importantly, this sidebar
4590
+ * has a constraint, there's only allowed to be one sidebar,
4591
+ * of each mode, on each side, at any given time. If this is violated,
4592
+ * this component will throw an exception.
4593
+ */
4325
4594
  class DaffSidebarViewportComponent {
4326
- constructor(ref) {
4327
- this.ref = ref;
4595
+ constructor(cdRef) {
4596
+ this.cdRef = cdRef;
4328
4597
  /**
4329
- * Internal tracking variable for the state of sidebar viewport.
4330
- *
4331
- * @docs-private
4598
+ * The number of pixels that the main content of the page should be shifted to
4599
+ * right when there are child sidebars.
4332
4600
  */
4333
- this._opened = false;
4601
+ this._shift = '0px';
4334
4602
  /**
4335
- * @docs-private
4603
+ * The left padding on the content when left side-fixed sidebars are open.
4336
4604
  */
4337
- this._mode = 'side';
4605
+ this._contentPadLeft = 0;
4338
4606
  /**
4339
- * Input state for whether or not the backdrop is
4340
- * "visible" to the human eye
4607
+ * The right padding on the content when right side-fixed sidebars are open.
4341
4608
  */
4342
- // eslint-disable-next-line @typescript-eslint/no-inferrable-types
4343
- this.backdropIsVisible = true;
4609
+ this._contentPadRight = 0;
4610
+ /**
4611
+ * Whether or not the backdrop is interactable
4612
+ */
4613
+ this._backdropInteractable = false;
4614
+ /**
4615
+ * The animation state
4616
+ */
4617
+ this._animationState = { value: 'closed', params: { shift: '0px' } };
4344
4618
  /**
4345
4619
  * Event fired when the backdrop is clicked
4346
4620
  * This is often used to close the sidebar
4347
4621
  */
4348
4622
  this.backdropClicked = new EventEmitter();
4349
4623
  }
4350
- /**
4351
- * The mode to put the sidebar in
4352
- */
4353
- get mode() {
4354
- return this._mode;
4355
- }
4356
- set mode(value) {
4357
- this._mode = value;
4358
- this._animationState = getAnimationState(this.opened, this.animationsEnabled);
4359
- }
4360
- /**
4361
- * Property for the "opened" state of the sidebar
4362
- */
4363
- get opened() {
4364
- return this._opened;
4365
- }
4366
- set opened(value) {
4367
- this._opened = value;
4368
- this._animationState = getAnimationState(value, this.animationsEnabled);
4369
- }
4370
- /**
4371
- * @docs-private
4372
- */
4373
- get animationsEnabled() {
4374
- return (this.mode === 'over' || this.mode === 'push') ? true : false;
4375
- }
4376
- /**
4377
- * @docs-private
4378
- */
4379
- ngOnInit() {
4380
- this._animationState = getAnimationState(this.opened, this.animationsEnabled);
4624
+ ngAfterContentChecked() {
4625
+ const nextShift = sidebarViewportContentShift(this.sidebars) + 'px';
4626
+ if (this._shift !== nextShift) {
4627
+ this._shift = nextShift;
4628
+ this.updateAnimationState();
4629
+ this.cdRef.markForCheck();
4630
+ }
4631
+ const nextBackdropInteractable = sidebarViewportBackdropInteractable(this.sidebars);
4632
+ if (this._backdropInteractable !== nextBackdropInteractable) {
4633
+ this._backdropInteractable = nextBackdropInteractable;
4634
+ this.updateAnimationState();
4635
+ this.cdRef.markForCheck();
4636
+ }
4637
+ ;
4638
+ const nextLeftPadding = sidebarViewportContentPadding(this.sidebars, 'left');
4639
+ if (this._contentPadLeft !== nextLeftPadding) {
4640
+ this._contentPadLeft = nextLeftPadding;
4641
+ this.updateAnimationState();
4642
+ this.cdRef.markForCheck();
4643
+ }
4644
+ const nextRightPadding = sidebarViewportContentPadding(this.sidebars, 'right');
4645
+ if (this._contentPadRight !== nextRightPadding) {
4646
+ this._contentPadRight = nextRightPadding;
4647
+ this.updateAnimationState();
4648
+ this.cdRef.markForCheck();
4649
+ }
4381
4650
  }
4382
4651
  /**
4383
4652
  * @docs-private
4653
+ *
4654
+ * Updates the animation state of the viewport depending upon the state
4655
+ * of all sidebars within the viewport.
4384
4656
  */
4385
- ngAfterViewInit() {
4386
- if (this.sidebar) {
4387
- this.sidebar.escapePressed.subscribe(() => {
4388
- this.onEscape();
4389
- });
4390
- }
4657
+ updateAnimationState() {
4658
+ this._animationState = {
4659
+ value: getAnimationState(this.sidebars.reduce((acc, sidebar) => acc || isViewportContentShifted(sidebar.mode, sidebar.open), false)),
4660
+ params: { shift: this._shift },
4661
+ };
4391
4662
  }
4392
4663
  /**
4393
4664
  * @docs-private
4665
+ * The called when the backdrop of the viewport is clicked upon.
4394
4666
  */
4395
4667
  _backdropClicked() {
4396
4668
  this.backdropClicked.emit();
4397
4669
  }
4398
- /**
4399
- * @docs-private
4400
- */
4401
- get hasBackdrop() {
4402
- return (this.mode === 'over' || this.mode === 'push');
4403
- }
4404
- /**
4405
- * @docs-private
4406
- */
4407
- onEscape() {
4408
- if (this.hasBackdrop) {
4409
- this.opened = false;
4410
- this.ref.markForCheck();
4411
- }
4412
- }
4413
4670
  }
4414
4671
  /** @nocollapse */ DaffSidebarViewportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffSidebarViewportComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
4415
- /** @nocollapse */ DaffSidebarViewportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffSidebarViewportComponent, selector: "daff-sidebar-viewport", inputs: { mode: "mode", backdropIsVisible: "backdropIsVisible", opened: "opened" }, outputs: { backdropClicked: "backdropClicked" }, queries: [{ propertyName: "sidebar", first: true, predicate: DaffSidebarComponent, descendants: true }], ngImport: i0, template: "<div class=\"daff-sidebar-viewport {{ mode }}\">\n <div class=\"daff-sidebar-viewport__sidebar\" [@transformSidebar]=\"_animationState\" [cdkTrapFocus]=\"opened && (mode === 'over' || mode === 'push')\">\n <ng-content select=\"daff-sidebar\" (escapePressed)=\"onEscape($event)\"></ng-content>\n </div>\n\n <daff-backdrop \n class=\"daff-sidebar-viewport__backdrop\" \n *ngIf=\"hasBackdrop && _opened\"\n [transparent]=\"!backdropIsVisible\" \n (backdropClicked)=\"_backdropClicked()\"></daff-backdrop>\n\n <div class=\"daff-sidebar-viewport__content\" [@transformContent]=\"_animationState\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".daff-sidebar-viewport{display:flex;min-height:100%;position:relative;width:100%;z-index:1}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;will-change:transform;z-index:2}.daff-sidebar-viewport__sidebar{flex-shrink:0;width:250px;will-change:transform,visibility;z-index:4}.daff-sidebar-viewport__backdrop{cursor:pointer;height:100%;position:absolute;width:100%;z-index:3}.daff-sidebar-viewport.push>.daff-sidebar-viewport__sidebar{bottom:0;height:100%;left:0;position:absolute;top:0;transform:translate(-250px);visibility:hidden}.daff-sidebar-viewport.push>.daff-sidebar-viewport__content{transform:translate(250px)}.daff-sidebar-viewport.over>.daff-sidebar-viewport__sidebar{bottom:0;height:100%;left:0;position:absolute;top:0;transform:translate(-250px);visibility:hidden}\n"], components: [{ type: DaffBackdropComponent, selector: "daff-backdrop", inputs: ["transparent", "fullscreen"], outputs: ["backdropClicked"] }], directives: [{ type: i1$4.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
4416
- daffSidebarAnimations.transformSidebar,
4672
+ /** @nocollapse */ DaffSidebarViewportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.0", type: DaffSidebarViewportComponent, selector: "daff-sidebar-viewport", outputs: { backdropClicked: "backdropClicked" }, queries: [{ propertyName: "sidebars", predicate: DaffSidebarComponent }], ngImport: i0, template: "<ng-content select=\"daff-sidebar:not([side=right])\"></ng-content>\n\n<daff-backdrop\n [@transformContent]=\"_animationState\"\n class=\"daff-sidebar-viewport__backdrop\"\n [interactable]=\"_backdropInteractable\"\n (backdropClicked)=\"_backdropClicked()\"></daff-backdrop>\n\n<div class=\"daff-sidebar-viewport__content\" [@transformContent]=\"_animationState\">\n <ng-content select=\"[daff-sidebar-viewport-nav]\"></ng-content>\n <div class=\"daff-sidebar-viewport__inner\" [style.padding-left.px]=\"_contentPadLeft\" [style.padding-right.px]=\"_contentPadRight\">\n <ng-content></ng-content>\n </div>\n</div>\n\n<ng-content select=\"daff-sidebar[side=right]\"></ng-content>", styles: [":host{overflow:hidden;display:flex;min-height:100%;position:relative;width:100%;z-index:1;height:100vh;height:100dvh}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;will-change:transform;z-index:3;overflow-y:auto;height:100%}.daff-sidebar-viewport__sidebar{flex-shrink:0}.daff-sidebar-viewport__backdrop{height:100%;position:absolute;width:100%;z-index:4}:host-context(daff-sidebar-viewport daff-sidebar-viewport) .daff-sidebar-viewport__inner{padding-left:0!important;padding-right:0!important}\n"], components: [{ type: DaffBackdropComponent, selector: "daff-backdrop", inputs: ["transparent", "interactable", "fullscreen"], outputs: ["backdropClicked"] }], animations: [
4417
4673
  daffSidebarAnimations.transformContent,
4418
4674
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4419
4675
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffSidebarViewportComponent, decorators: [{
4420
4676
  type: Component,
4421
4677
  args: [{ selector: 'daff-sidebar-viewport', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
4422
- daffSidebarAnimations.transformSidebar,
4423
4678
  daffSidebarAnimations.transformContent,
4424
- ], template: "<div class=\"daff-sidebar-viewport {{ mode }}\">\n <div class=\"daff-sidebar-viewport__sidebar\" [@transformSidebar]=\"_animationState\" [cdkTrapFocus]=\"opened && (mode === 'over' || mode === 'push')\">\n <ng-content select=\"daff-sidebar\" (escapePressed)=\"onEscape($event)\"></ng-content>\n </div>\n\n <daff-backdrop \n class=\"daff-sidebar-viewport__backdrop\" \n *ngIf=\"hasBackdrop && _opened\"\n [transparent]=\"!backdropIsVisible\" \n (backdropClicked)=\"_backdropClicked()\"></daff-backdrop>\n\n <div class=\"daff-sidebar-viewport__content\" [@transformContent]=\"_animationState\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".daff-sidebar-viewport{display:flex;min-height:100%;position:relative;width:100%;z-index:1}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;will-change:transform;z-index:2}.daff-sidebar-viewport__sidebar{flex-shrink:0;width:250px;will-change:transform,visibility;z-index:4}.daff-sidebar-viewport__backdrop{cursor:pointer;height:100%;position:absolute;width:100%;z-index:3}.daff-sidebar-viewport.push>.daff-sidebar-viewport__sidebar{bottom:0;height:100%;left:0;position:absolute;top:0;transform:translate(-250px);visibility:hidden}.daff-sidebar-viewport.push>.daff-sidebar-viewport__content{transform:translate(250px)}.daff-sidebar-viewport.over>.daff-sidebar-viewport__sidebar{bottom:0;height:100%;left:0;position:absolute;top:0;transform:translate(-250px);visibility:hidden}\n"] }]
4425
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { sidebar: [{
4426
- type: ContentChild,
4427
- args: [DaffSidebarComponent]
4428
- }], mode: [{
4429
- type: Input
4430
- }], backdropIsVisible: [{
4431
- type: Input
4432
- }], opened: [{
4433
- type: Input
4679
+ ], template: "<ng-content select=\"daff-sidebar:not([side=right])\"></ng-content>\n\n<daff-backdrop\n [@transformContent]=\"_animationState\"\n class=\"daff-sidebar-viewport__backdrop\"\n [interactable]=\"_backdropInteractable\"\n (backdropClicked)=\"_backdropClicked()\"></daff-backdrop>\n\n<div class=\"daff-sidebar-viewport__content\" [@transformContent]=\"_animationState\">\n <ng-content select=\"[daff-sidebar-viewport-nav]\"></ng-content>\n <div class=\"daff-sidebar-viewport__inner\" [style.padding-left.px]=\"_contentPadLeft\" [style.padding-right.px]=\"_contentPadRight\">\n <ng-content></ng-content>\n </div>\n</div>\n\n<ng-content select=\"daff-sidebar[side=right]\"></ng-content>", styles: [":host{overflow:hidden;display:flex;min-height:100%;position:relative;width:100%;z-index:1;height:100vh;height:100dvh}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;will-change:transform;z-index:3;overflow-y:auto;height:100%}.daff-sidebar-viewport__sidebar{flex-shrink:0}.daff-sidebar-viewport__backdrop{height:100%;position:absolute;width:100%;z-index:4}:host-context(daff-sidebar-viewport daff-sidebar-viewport) .daff-sidebar-viewport__inner{padding-left:0!important;padding-right:0!important}\n"] }]
4680
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { sidebars: [{
4681
+ type: ContentChildren,
4682
+ args: [DaffSidebarComponent, { descendants: false }]
4434
4683
  }], backdropClicked: [{
4435
4684
  type: Output
4436
4685
  }] } });
@@ -5662,5 +5911,5 @@ const DAFF_THEME_INITIALIZER = [
5662
5911
  * Generated bundle index. Do not edit.
5663
5912
  */
5664
5913
 
5665
- export { DAFF_THEME_INITIALIZER, DaffAccordionComponent, DaffAccordionItemComponent, DaffAccordionItemContentDirective, DaffAccordionItemTitleDirective, DaffAccordionModule, DaffArticleComponent, DaffArticleLeadDirective, DaffArticleMetaDirective, DaffArticleModule, DaffArticleTitleDirective, DaffBackdropComponent, DaffBackdropModule, DaffBreakpoints, DaffButtonComponent, DaffButtonModule, DaffButtonSetComponent, DaffButtonSetModule, DaffCalloutBodyDirective, DaffCalloutComponent, DaffCalloutIconDirective, DaffCalloutLayoutEnum, DaffCalloutModule, DaffCalloutSizeEnum, DaffCalloutSubtitleDirective, DaffCalloutTaglineDirective, DaffCalloutTitleDirective, DaffCardActionsDirective, DaffCardComponent, DaffCardContentDirective, DaffCardIconDirective, DaffCardImageDirective, DaffCardModule, DaffCardOrientationEnum, DaffCardTaglineDirective, DaffCardTitleDirective, DaffCheckboxComponent, DaffCheckboxControlValueAccessorDirective, DaffCheckboxModule, DaffCheckboxSetComponent, DaffContainerComponent, DaffContainerModule, DaffErrorMessageComponent, DaffErrorMessageModule, DaffErrorStateMatcher, DaffFeatureComponent, DaffFeatureIconDirective, DaffFeatureModeEnum, DaffFeatureModule, DaffFeatureSubheaderDirective, DaffFeatureSubtitleDirective, DaffFeatureTitleDirective, DaffFormFieldComponent, DaffFormFieldControl, DaffFormFieldModule, DaffGalleryImageComponent, DaffHeroBodyDirective, DaffHeroComponent, DaffHeroIconDirective, DaffHeroLayoutEnum, DaffHeroModule, DaffHeroSizeEnum, DaffHeroSubtitleDirective, DaffHeroTaglineDirective, DaffHeroTitleDirective, DaffImageComponent, DaffImageGalleryComponent, DaffImageGalleryModule, DaffImageListComponent, DaffImageListModule, DaffImageModule, DaffInputComponent, DaffInputModule, DaffLinkSetComponent, DaffLinkSetHeadingDirective, DaffLinkSetItemComponent, DaffLinkSetModule, DaffLinkSetSubheadingDirective, DaffListComponent, DaffListItemComponent, DaffListModeEnum, DaffListModule, DaffListSubheaderDirective, DaffLoadingIconComponent, DaffLoadingIconModule, DaffMediaGalleryComponent, DaffMediaGalleryModule, DaffMenuActivatorDirective, DaffMenuComponent, DaffMenuItemComponent, DaffMenuModule, DaffMenuService, DaffModalActionsComponent, DaffModalComponent, DaffModalContentComponent, DaffModalHeaderComponent, DaffModalModule, DaffModalService, DaffModalTitleDirective, DaffNativeSelectComponent, DaffNativeSelectModule, DaffNavAccordionItemComponent, DaffNavbarComponent, DaffNavbarModule, DaffPaginatorComponent, DaffPaginatorModule, DaffPrefixDirective, DaffPrefixSuffixModule, DaffProgressIndicatorComponent, DaffProgressIndicatorModule, DaffQtyDropdownComponent, DaffQtyDropdownModule, DaffQuantityFieldComponent, DaffQuantityFieldModule, DaffQuantityInputComponent, DaffQuantitySelectComponent, DaffRadioComponent, DaffRadioControlValueAccessorDirective, DaffRadioModule, DaffRadioSetComponent, DaffSidebarComponent, DaffSidebarModule, DaffSidebarViewportComponent, DaffStatusEnum, DaffSuffixDirective, DaffTextAlignmentEnum, DaffTheme, DaffThemingService, DaffThumbnailDirective, daffArticleEncapsulatedMixin, daffCompactableMixin, daffFocusableElementsSelector, daffManageContainerLayoutMixin, daffMenuCreateOverlay, daffPrefixableMixin, daffSuffixableMixin, daffThumbnailCompatToken };
5914
+ export { DAFF_THEME_INITIALIZER, DaffAccordionComponent, DaffAccordionItemComponent, DaffAccordionItemContentDirective, DaffAccordionItemTitleDirective, DaffAccordionModule, DaffArticleComponent, DaffArticleLeadDirective, DaffArticleMetaDirective, DaffArticleModule, DaffArticleTitleDirective, DaffBackdropComponent, DaffBackdropModule, DaffBreakpoints, DaffButtonComponent, DaffButtonModule, DaffButtonSetComponent, DaffButtonSetModule, DaffCalloutBodyDirective, DaffCalloutComponent, DaffCalloutIconDirective, DaffCalloutLayoutEnum, DaffCalloutModule, DaffCalloutSizeEnum, DaffCalloutSubtitleDirective, DaffCalloutTaglineDirective, DaffCalloutTitleDirective, DaffCardActionsDirective, DaffCardComponent, DaffCardContentDirective, DaffCardIconDirective, DaffCardImageDirective, DaffCardModule, DaffCardOrientationEnum, DaffCardTaglineDirective, DaffCardTitleDirective, DaffCheckboxComponent, DaffCheckboxControlValueAccessorDirective, DaffCheckboxModule, DaffCheckboxSetComponent, DaffContainerComponent, DaffContainerModule, DaffErrorMessageComponent, DaffErrorMessageModule, DaffErrorStateMatcher, DaffFeatureComponent, DaffFeatureIconDirective, DaffFeatureModeEnum, DaffFeatureModule, DaffFeatureSubheaderDirective, DaffFeatureSubtitleDirective, DaffFeatureTitleDirective, DaffFormFieldComponent, DaffFormFieldControl, DaffFormFieldModule, DaffFormLabelDirective, DaffFormLabelModule, DaffGalleryImageComponent, DaffHeroBodyDirective, DaffHeroComponent, DaffHeroIconDirective, DaffHeroLayoutEnum, DaffHeroModule, DaffHeroSizeEnum, DaffHeroSubtitleDirective, DaffHeroTaglineDirective, DaffHeroTitleDirective, DaffImageComponent, DaffImageGalleryComponent, DaffImageGalleryModule, DaffImageListComponent, DaffImageListModule, DaffImageModule, DaffInputComponent, DaffInputModule, DaffLinkSetComponent, DaffLinkSetHeadingDirective, DaffLinkSetItemComponent, DaffLinkSetModule, DaffLinkSetSubheadingDirective, DaffListComponent, DaffListItemComponent, DaffListModeEnum, DaffListModule, DaffListSubheaderDirective, DaffLoadingIconComponent, DaffLoadingIconModule, DaffMediaGalleryComponent, DaffMediaGalleryModule, DaffMenuActivatorDirective, DaffMenuComponent, DaffMenuItemComponent, DaffMenuModule, DaffMenuService, DaffModalActionsComponent, DaffModalComponent, DaffModalContentComponent, DaffModalHeaderComponent, DaffModalModule, DaffModalService, DaffModalTitleDirective, DaffNativeSelectComponent, DaffNativeSelectModule, DaffNavAccordionItemComponent, DaffNavbarComponent, DaffNavbarModule, DaffPaginatorComponent, DaffPaginatorModule, DaffPrefixDirective, DaffPrefixSuffixModule, DaffProgressIndicatorComponent, DaffProgressIndicatorModule, DaffQtyDropdownComponent, DaffQtyDropdownModule, DaffQuantityFieldComponent, DaffQuantityFieldModule, DaffQuantityInputComponent, DaffQuantitySelectComponent, DaffRadioComponent, DaffRadioControlValueAccessorDirective, DaffRadioModule, DaffRadioSetComponent, DaffSidebarComponent, DaffSidebarModule, DaffSidebarViewportComponent, DaffStatusEnum, DaffSuffixDirective, DaffTextAlignmentEnum, DaffTheme, DaffThemingService, DaffThumbnailDirective, daffArticleEncapsulatedMixin, daffColorMixin, daffCompactableMixin, daffFocusableElementsSelector, daffManageContainerLayoutMixin, daffMenuCreateOverlay, daffPrefixableMixin, daffStatusMixin, daffSuffixableMixin, daffThumbnailCompatToken };
5666
5915
  //# sourceMappingURL=daffodil-design.mjs.map