@daffodil/design 0.90.0 → 0.92.3-rc.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 (277) hide show
  1. package/accordion/README.md +26 -38
  2. package/accordion/index.d.ts +9 -6
  3. package/article/README.md +66 -46
  4. package/article/index.d.ts +41 -0
  5. package/article/src/article-theme.scss +22 -0
  6. package/breadcrumb/README.md +6 -1
  7. package/breadcrumb/index.d.ts +65 -11
  8. package/breadcrumb/src/breadcrumb-theme.scss +1 -1
  9. package/button/README.md +36 -33
  10. package/button/index.d.ts +27 -6
  11. package/button/src/button/basic/button-theme.scss +4 -2
  12. package/button/src/button/button-base.scss +29 -6
  13. package/button/src/button/icon/icon-theme.scss +10 -6
  14. package/button/src/button/raised/raised-theme.scss +6 -4
  15. package/callout/README.md +15 -27
  16. package/card/README.md +36 -69
  17. package/card/index.d.ts +7 -41
  18. package/card/src/card-base-theme.scss +2 -5
  19. package/card/src/card-base.scss +2 -2
  20. package/checkbox/README.md +0 -0
  21. package/checkbox/index.d.ts +177 -0
  22. package/container/README.md +18 -23
  23. package/fesm2022/daffodil-design-accordion.mjs +34 -25
  24. package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
  25. package/fesm2022/daffodil-design-article.mjs +283 -17
  26. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  27. package/fesm2022/daffodil-design-breadcrumb.mjs +180 -28
  28. package/fesm2022/daffodil-design-breadcrumb.mjs.map +1 -1
  29. package/fesm2022/daffodil-design-button.mjs +90 -45
  30. package/fesm2022/daffodil-design-button.mjs.map +1 -1
  31. package/fesm2022/daffodil-design-callout.mjs +23 -23
  32. package/fesm2022/daffodil-design-callout.mjs.map +1 -1
  33. package/fesm2022/daffodil-design-card.mjs +43 -90
  34. package/fesm2022/daffodil-design-card.mjs.map +1 -1
  35. package/fesm2022/daffodil-design-checkbox.mjs +317 -0
  36. package/fesm2022/daffodil-design-checkbox.mjs.map +1 -0
  37. package/fesm2022/daffodil-design-container.mjs +8 -8
  38. package/fesm2022/daffodil-design-container.mjs.map +1 -1
  39. package/fesm2022/daffodil-design-form-field.mjs +56 -86
  40. package/fesm2022/daffodil-design-form-field.mjs.map +1 -1
  41. package/fesm2022/daffodil-design-form.mjs +62 -0
  42. package/fesm2022/daffodil-design-form.mjs.map +1 -0
  43. package/fesm2022/daffodil-design-hero.mjs +23 -23
  44. package/fesm2022/daffodil-design-hero.mjs.map +1 -1
  45. package/fesm2022/daffodil-design-image.mjs +19 -11
  46. package/fesm2022/daffodil-design-image.mjs.map +1 -1
  47. package/fesm2022/daffodil-design-input.mjs +18 -14
  48. package/fesm2022/daffodil-design-input.mjs.map +1 -1
  49. package/fesm2022/daffodil-design-link-set.mjs +25 -17
  50. package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
  51. package/fesm2022/daffodil-design-list.mjs +16 -16
  52. package/fesm2022/daffodil-design-list.mjs.map +1 -1
  53. package/fesm2022/daffodil-design-loading-icon.mjs +8 -8
  54. package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
  55. package/fesm2022/daffodil-design-media-gallery.mjs +13 -13
  56. package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
  57. package/fesm2022/daffodil-design-menu.mjs +223 -60
  58. package/fesm2022/daffodil-design-menu.mjs.map +1 -1
  59. package/fesm2022/daffodil-design-modal.mjs +86 -83
  60. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  61. package/fesm2022/daffodil-design-native-select.mjs +47 -41
  62. package/fesm2022/daffodil-design-native-select.mjs.map +1 -1
  63. package/fesm2022/daffodil-design-navbar.mjs +25 -21
  64. package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
  65. package/fesm2022/daffodil-design-notification.mjs +28 -64
  66. package/fesm2022/daffodil-design-notification.mjs.map +1 -1
  67. package/fesm2022/daffodil-design-paginator.mjs +11 -16
  68. package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
  69. package/fesm2022/daffodil-design-progress-bar.mjs +10 -10
  70. package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
  71. package/fesm2022/daffodil-design-quantity-field.mjs +19 -18
  72. package/fesm2022/daffodil-design-quantity-field.mjs.map +1 -1
  73. package/fesm2022/daffodil-design-radio.mjs +27 -56
  74. package/fesm2022/daffodil-design-radio.mjs.map +1 -1
  75. package/fesm2022/daffodil-design-select.mjs +6 -6
  76. package/fesm2022/daffodil-design-select.mjs.map +1 -1
  77. package/fesm2022/daffodil-design-sidebar.mjs +30 -60
  78. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  79. package/fesm2022/daffodil-design-spinner.mjs +99 -0
  80. package/fesm2022/daffodil-design-spinner.mjs.map +1 -0
  81. package/fesm2022/daffodil-design-switch.mjs +49 -106
  82. package/fesm2022/daffodil-design-switch.mjs.map +1 -1
  83. package/fesm2022/daffodil-design-tabs.mjs +35 -27
  84. package/fesm2022/daffodil-design-tabs.mjs.map +1 -1
  85. package/fesm2022/daffodil-design-tag.mjs +7 -7
  86. package/fesm2022/daffodil-design-tag.mjs.map +1 -1
  87. package/fesm2022/daffodil-design-text-snippet.mjs +6 -8
  88. package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -1
  89. package/fesm2022/daffodil-design-textarea.mjs +6 -3
  90. package/fesm2022/daffodil-design-textarea.mjs.map +1 -1
  91. package/fesm2022/daffodil-design-toast.mjs +79 -80
  92. package/fesm2022/daffodil-design-toast.mjs.map +1 -1
  93. package/fesm2022/daffodil-design-tree.mjs +152 -112
  94. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  95. package/fesm2022/daffodil-design-youtube-player.mjs +6 -6
  96. package/fesm2022/daffodil-design-youtube-player.mjs.map +1 -1
  97. package/fesm2022/daffodil-design.mjs +559 -711
  98. package/fesm2022/daffodil-design.mjs.map +1 -1
  99. package/form/README.md +75 -0
  100. package/form/index.d.ts +27 -0
  101. package/form-field/README.md +74 -99
  102. package/form-field/index.d.ts +64 -42
  103. package/hero/README.md +5 -5
  104. package/image/README.md +27 -19
  105. package/image/index.d.ts +6 -1
  106. package/index.d.ts +282 -447
  107. package/input/README.md +36 -16
  108. package/input/index.d.ts +4 -3
  109. package/link-set/index.d.ts +9 -1
  110. package/list/README.md +2 -2
  111. package/loading-icon/README.md +1 -1
  112. package/loading-icon/index.d.ts +1 -1
  113. package/media-gallery/README.md +3 -3
  114. package/menu/README.md +107 -10
  115. package/menu/index.d.ts +143 -11
  116. package/modal/README.md +107 -17
  117. package/modal/index.d.ts +72 -35
  118. package/native-select/README.md +52 -15
  119. package/native-select/index.d.ts +8 -7
  120. package/navbar/README.md +23 -17
  121. package/navbar/index.d.ts +12 -2
  122. package/navbar/src/navbar-theme.scss +4 -46
  123. package/notification/README.md +4 -4
  124. package/notification/index.d.ts +7 -38
  125. package/package.json +1 -1
  126. package/paginator/README.md +42 -6
  127. package/paginator/index.d.ts +5 -9
  128. package/progress-bar/README.md +3 -3
  129. package/quantity-field/README.md +4 -4
  130. package/quantity-field/index.d.ts +4 -1
  131. package/radio/README.md +1 -1
  132. package/radio/index.d.ts +0 -16
  133. package/scss/layout/_breakpoint.scss +1 -1
  134. package/scss/theme.scss +9 -5
  135. package/scss/theming/_color-palettes.scss +19 -11
  136. package/scss/theming/_configure-theme.scss +11 -10
  137. package/scss/theming/_daff-theme.scss +5 -14
  138. package/scss/theming/_get-base-color.scss +2 -2
  139. package/scss/theming/_get-palette.scss +2 -2
  140. package/scss/theming/_get-theme-mode.scss +3 -3
  141. package/scss/theming/_index.scss +2 -1
  142. package/scss/theming/contrast/max-contrast/max-contrast.scss +3 -3
  143. package/scss/theming/contrast/text-contrast/text-contrast.scss +22 -16
  144. package/scss/theming/contrast/text-contrast/text-contrast.spec.scss +57 -0
  145. package/scss/theming/create-theme/_create-theme.scss +330 -0
  146. package/scss/theming/create-theme/_create-theme.spec.scss +122 -0
  147. package/scss/theming/create-theme/_index.scss +1 -0
  148. package/scss/theming/get-font-colors/_get-font-colors.scss +36 -0
  149. package/scss/theming/get-font-colors/_get-font-colors.spec.scss +72 -0
  150. package/scss/typography/mixins/_font-weight.scss +8 -14
  151. package/select/README.md +107 -4
  152. package/sidebar/README.md +6 -14
  153. package/sidebar/index.d.ts +3 -15
  154. package/spinner/README.md +57 -0
  155. package/spinner/index.d.ts +53 -0
  156. package/spinner/src/spinner-theme.scss +62 -0
  157. package/switch/README.md +21 -29
  158. package/switch/index.d.ts +18 -48
  159. package/switch/src/switch-theme.scss +26 -18
  160. package/tabs/README.md +1 -1
  161. package/tabs/index.d.ts +8 -5
  162. package/tag/README.md +24 -30
  163. package/tag/index.d.ts +1 -1
  164. package/tag/src/tag-theme.scss +11 -9
  165. package/text-snippet/README.md +1 -1
  166. package/text-snippet/src/text-snippet-theme.scss +12 -0
  167. package/textarea/README.md +36 -6
  168. package/textarea/index.d.ts +4 -4
  169. package/toast/README.md +4 -4
  170. package/tree/README.md +39 -22
  171. package/tree/index.d.ts +57 -96
  172. package/tree/src/tree-theme.scss +0 -4
  173. package/accordion/examples/index.d.ts +0 -20
  174. package/article/examples/index.d.ts +0 -50
  175. package/breadcrumb/examples/index.d.ts +0 -10
  176. package/button/examples/index.d.ts +0 -67
  177. package/callout/examples/index.d.ts +0 -41
  178. package/card/examples/index.d.ts +0 -62
  179. package/card/src/card/raised/raised-theme.scss +0 -28
  180. package/checkbox/examples/index.d.ts +0 -32
  181. package/container/examples/index.d.ts +0 -16
  182. package/fesm2022/daffodil-design-accordion-examples.mjs +0 -50
  183. package/fesm2022/daffodil-design-accordion-examples.mjs.map +0 -1
  184. package/fesm2022/daffodil-design-article-examples.mjs +0 -134
  185. package/fesm2022/daffodil-design-article-examples.mjs.map +0 -1
  186. package/fesm2022/daffodil-design-breadcrumb-examples.mjs +0 -46
  187. package/fesm2022/daffodil-design-breadcrumb-examples.mjs.map +0 -1
  188. package/fesm2022/daffodil-design-button-examples.mjs +0 -178
  189. package/fesm2022/daffodil-design-button-examples.mjs.map +0 -1
  190. package/fesm2022/daffodil-design-callout-examples.mjs +0 -116
  191. package/fesm2022/daffodil-design-callout-examples.mjs.map +0 -1
  192. package/fesm2022/daffodil-design-card-examples.mjs +0 -168
  193. package/fesm2022/daffodil-design-card-examples.mjs.map +0 -1
  194. package/fesm2022/daffodil-design-checkbox-examples.mjs +0 -76
  195. package/fesm2022/daffodil-design-checkbox-examples.mjs.map +0 -1
  196. package/fesm2022/daffodil-design-container-examples.mjs +0 -41
  197. package/fesm2022/daffodil-design-container-examples.mjs.map +0 -1
  198. package/fesm2022/daffodil-design-form-field-examples.mjs +0 -96
  199. package/fesm2022/daffodil-design-form-field-examples.mjs.map +0 -1
  200. package/fesm2022/daffodil-design-hero-examples.mjs +0 -121
  201. package/fesm2022/daffodil-design-hero-examples.mjs.map +0 -1
  202. package/fesm2022/daffodil-design-image-examples.mjs +0 -58
  203. package/fesm2022/daffodil-design-image-examples.mjs.map +0 -1
  204. package/fesm2022/daffodil-design-input-examples.mjs +0 -108
  205. package/fesm2022/daffodil-design-input-examples.mjs.map +0 -1
  206. package/fesm2022/daffodil-design-list-examples.mjs +0 -77
  207. package/fesm2022/daffodil-design-list-examples.mjs.map +0 -1
  208. package/fesm2022/daffodil-design-loading-icon-examples.mjs +0 -44
  209. package/fesm2022/daffodil-design-loading-icon-examples.mjs.map +0 -1
  210. package/fesm2022/daffodil-design-media-gallery-examples.mjs +0 -104
  211. package/fesm2022/daffodil-design-media-gallery-examples.mjs.map +0 -1
  212. package/fesm2022/daffodil-design-menu-examples.mjs +0 -50
  213. package/fesm2022/daffodil-design-menu-examples.mjs.map +0 -1
  214. package/fesm2022/daffodil-design-modal-examples.mjs +0 -51
  215. package/fesm2022/daffodil-design-modal-examples.mjs.map +0 -1
  216. package/fesm2022/daffodil-design-native-select-examples.mjs +0 -71
  217. package/fesm2022/daffodil-design-native-select-examples.mjs.map +0 -1
  218. package/fesm2022/daffodil-design-navbar-examples.mjs +0 -88
  219. package/fesm2022/daffodil-design-navbar-examples.mjs.map +0 -1
  220. package/fesm2022/daffodil-design-notification-examples.mjs +0 -102
  221. package/fesm2022/daffodil-design-notification-examples.mjs.map +0 -1
  222. package/fesm2022/daffodil-design-paginator-examples.mjs +0 -59
  223. package/fesm2022/daffodil-design-paginator-examples.mjs.map +0 -1
  224. package/fesm2022/daffodil-design-progress-bar-examples.mjs +0 -57
  225. package/fesm2022/daffodil-design-progress-bar-examples.mjs.map +0 -1
  226. package/fesm2022/daffodil-design-quantity-field-examples.mjs +0 -85
  227. package/fesm2022/daffodil-design-quantity-field-examples.mjs.map +0 -1
  228. package/fesm2022/daffodil-design-radio-examples.mjs +0 -34
  229. package/fesm2022/daffodil-design-radio-examples.mjs.map +0 -1
  230. package/fesm2022/daffodil-design-select-examples.mjs +0 -117
  231. package/fesm2022/daffodil-design-select-examples.mjs.map +0 -1
  232. package/fesm2022/daffodil-design-sidebar-examples.mjs +0 -109
  233. package/fesm2022/daffodil-design-sidebar-examples.mjs.map +0 -1
  234. package/fesm2022/daffodil-design-sticky-examples.mjs +0 -25
  235. package/fesm2022/daffodil-design-sticky-examples.mjs.map +0 -1
  236. package/fesm2022/daffodil-design-switch-examples.mjs +0 -110
  237. package/fesm2022/daffodil-design-switch-examples.mjs.map +0 -1
  238. package/fesm2022/daffodil-design-tabs-examples.mjs +0 -115
  239. package/fesm2022/daffodil-design-tabs-examples.mjs.map +0 -1
  240. package/fesm2022/daffodil-design-tag-examples.mjs +0 -125
  241. package/fesm2022/daffodil-design-tag-examples.mjs.map +0 -1
  242. package/fesm2022/daffodil-design-text-snippet-examples.mjs +0 -25
  243. package/fesm2022/daffodil-design-text-snippet-examples.mjs.map +0 -1
  244. package/fesm2022/daffodil-design-textarea-examples.mjs +0 -66
  245. package/fesm2022/daffodil-design-textarea-examples.mjs.map +0 -1
  246. package/fesm2022/daffodil-design-toast-examples.mjs +0 -147
  247. package/fesm2022/daffodil-design-toast-examples.mjs.map +0 -1
  248. package/fesm2022/daffodil-design-tree-examples.mjs +0 -104
  249. package/fesm2022/daffodil-design-tree-examples.mjs.map +0 -1
  250. package/form-field/examples/index.d.ts +0 -18
  251. package/hero/examples/index.d.ts +0 -45
  252. package/image/examples/index.d.ts +0 -10
  253. package/input/examples/index.d.ts +0 -10
  254. package/list/examples/index.d.ts +0 -29
  255. package/loading-icon/examples/index.d.ts +0 -16
  256. package/media-gallery/examples/index.d.ts +0 -38
  257. package/menu/examples/index.d.ts +0 -20
  258. package/modal/examples/index.d.ts +0 -15
  259. package/native-select/examples/index.d.ts +0 -10
  260. package/navbar/examples/index.d.ts +0 -31
  261. package/notification/examples/index.d.ts +0 -12
  262. package/paginator/examples/index.d.ts +0 -26
  263. package/progress-bar/examples/index.d.ts +0 -10
  264. package/quantity-field/examples/index.d.ts +0 -30
  265. package/radio/examples/index.d.ts +0 -13
  266. package/select/examples/index.d.ts +0 -28
  267. package/sidebar/examples/index.d.ts +0 -10
  268. package/sticky/examples/index.d.ts +0 -10
  269. package/switch/examples/index.d.ts +0 -46
  270. package/tabs/examples/index.d.ts +0 -12
  271. package/tag/examples/index.d.ts +0 -50
  272. package/text-snippet/examples/index.d.ts +0 -10
  273. package/textarea/examples/index.d.ts +0 -10
  274. package/toast/examples/index.d.ts +0 -56
  275. package/tree/examples/index.d.ts +0 -18
  276. /package/{form-field → form}/src/error-message/error-message-theme.scss +0 -0
  277. /package/{form-field → form}/src/hint/hint-theme.scss +0 -0
package/index.d.ts CHANGED
@@ -1,180 +1,10 @@
1
- import { UntypedFormControl, UntypedFormArray, ControlValueAccessor, NgControl } from '@angular/forms';
2
1
  import * as i0 from '@angular/core';
3
- import { ElementRef, EventEmitter, ChangeDetectorRef, QueryList, OnInit, OnChanges, SimpleChanges, InjectionToken, Type, OnDestroy, Renderer2 } from '@angular/core';
4
- import * as i4 from '@angular/common';
2
+ import { OnChanges, OnInit, SimpleChanges, InjectionToken, Type, EventEmitter, ChangeDetectorRef, OnDestroy, ElementRef, Renderer2 } from '@angular/core';
5
3
  import { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';
6
4
  import { Observable } from 'rxjs';
7
5
  import { DaffPersistenceService } from '@daffodil/core';
8
-
9
- declare class DaffErrorStateMatcher {
10
- isErrorState(control: UntypedFormControl, formSubmitted: boolean): boolean;
11
- }
12
-
13
- declare class DaffCheckboxComponent {
14
- private _cdRef;
15
- /**
16
- * @docs-private
17
- */
18
- nativeCheckbox: ElementRef<HTMLInputElement>;
19
- /**
20
- * The name of the checkbox.
21
- */
22
- name: string;
23
- /**
24
- * The value of the checkbox.
25
- */
26
- value: any;
27
- /**
28
- * Boolean value to determine whether or not the checkbox is checked.
29
- */
30
- private _checked;
31
- get checked(): boolean;
32
- set checked(value: boolean);
33
- /**
34
- * The id of the checkbox. Must be unique. If not entered by a user then it is generated.
35
- */
36
- id: string;
37
- /**
38
- * The aria-label of the checkbox.
39
- */
40
- label: string;
41
- /**
42
- * The aria-labeledby of the checkbox.
43
- */
44
- labeledBy: string;
45
- /**
46
- * Event on whether or not the selection has changed.
47
- */
48
- becameChecked: EventEmitter<boolean>;
49
- becameUnchecked: EventEmitter<void>;
50
- /**
51
- * Whether the checkbox is focused
52
- */
53
- focused: boolean;
54
- /**
55
- * Whether the checkbox is disabled.
56
- */
57
- disabled: boolean;
58
- /**
59
- * The role of the component. Set to "checkbox".
60
- *
61
- * @docs-private
62
- */
63
- role: string;
64
- /**
65
- * @docs-private
66
- */
67
- _onChange(val: Event): void;
68
- /**
69
- * @docs-private
70
- */
71
- get focusClass(): boolean;
72
- /**
73
- * @docs-private
74
- */
75
- get disabledClass(): boolean;
76
- /**
77
- * Sets focused to false.
78
- */
79
- onBlur(): void;
80
- /**
81
- * Sets focused to true.
82
- */
83
- onFocus(): void;
84
- constructor(_cdRef: ChangeDetectorRef);
85
- /**
86
- * Sets checked to true.
87
- */
88
- select(): void;
89
- /**
90
- * Sets checked to false
91
- */
92
- deselect(): void;
93
- static ɵfac: i0.ɵɵFactoryDeclaration<DaffCheckboxComponent, never>;
94
- static ɵcmp: i0.ɵɵComponentDeclaration<DaffCheckboxComponent, "daff-checkbox", never, { "name": { "alias": "name"; "required": false; }; "value": { "alias": "value"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "id": { "alias": "id"; "required": false; }; "label": { "alias": "aria-label"; "required": false; }; "labeledBy": { "alias": "aria-labelledby"; "required": false; }; }, { "becameChecked": "becameChecked"; "becameUnchecked": "becameUnchecked"; }, never, ["*"], false, never>;
95
- }
96
-
97
- declare class DaffCheckboxSetComponent {
98
- formArray: UntypedFormArray;
99
- /**
100
- * The name of the checkbox-set
101
- */
102
- name: string;
103
- /**
104
- * The role of the component. Set to "checkbox".
105
- *
106
- * @docs-private
107
- */
108
- role: string;
109
- /**
110
- * The list of checkboxes in the set.
111
- *
112
- * @docs-private
113
- */
114
- checkboxes: QueryList<DaffCheckboxComponent>;
115
- valueList: EventEmitter<any[]>;
116
- getValues(): any[];
117
- static ɵfac: i0.ɵɵFactoryDeclaration<DaffCheckboxSetComponent, never>;
118
- static ɵcmp: i0.ɵɵComponentDeclaration<DaffCheckboxSetComponent, "daff-checkbox-set", never, { "formArray": { "alias": "formArray"; "required": false; }; "name": { "alias": "name"; "required": false; }; }, { "valueList": "valueList"; }, ["checkboxes"], ["*"], false, never>;
119
- }
120
-
121
- /**
122
- * A directive for binding the DaffCheckboxComponent and the Control Value Accessor.
123
- */
124
- declare class DaffCheckboxControlValueAccessorDirective implements OnInit, ControlValueAccessor {
125
- _control: NgControl;
126
- private _checkbox;
127
- _onChange: (val: any) => void;
128
- _onTouched: () => void;
129
- /**
130
- * The value of the ControlValueAccessor
131
- */
132
- value: any;
133
- /**
134
- * The name of the ControlValueAccessor
135
- */
136
- name: string;
137
- constructor(_control: NgControl, _checkbox: DaffCheckboxComponent);
138
- /**
139
- * A lifecycle method called when the directive is initialized.
140
- */
141
- /**
142
- * @docs-private
143
- */
144
- ngOnInit(): void;
145
- /**
146
- * writes a new value down into the component.
147
- */
148
- writeValue(value: any): void;
149
- /**
150
- * Registers the change handler
151
- */
152
- registerOnChange(fn: any): void;
153
- /**
154
- * Registers the touched handler
155
- */
156
- registerOnTouched(fn: any): void;
157
- /**
158
- * Sets the disabled state.
159
- */
160
- setDisabledState?(isDisabled: boolean): void;
161
- /**
162
- * calls the child checkbox's select function
163
- */
164
- fireSelect(): void;
165
- /**
166
- * calls the child checkbox's deselect function
167
- */
168
- fireDeselect(): void;
169
- static ɵfac: i0.ɵɵFactoryDeclaration<DaffCheckboxControlValueAccessorDirective, [{ optional: true; self: true; }, null]>;
170
- static ɵdir: i0.ɵɵDirectiveDeclaration<DaffCheckboxControlValueAccessorDirective, "daff-checkbox[ngModel], daff-checkbox[formControl], daff-checkbox[formControlName]", never, { "value": { "alias": "value"; "required": false; }; "name": { "alias": "name"; "required": false; }; }, {}, never, never, false, never>;
171
- }
172
-
173
- declare class DaffCheckboxModule {
174
- static ɵfac: i0.ɵɵFactoryDeclaration<DaffCheckboxModule, never>;
175
- static ɵmod: i0.ɵɵNgModuleDeclaration<DaffCheckboxModule, [typeof DaffCheckboxComponent, typeof DaffCheckboxSetComponent, typeof DaffCheckboxControlValueAccessorDirective], [typeof i4.CommonModule], [typeof DaffCheckboxComponent, typeof DaffCheckboxSetComponent, typeof DaffCheckboxControlValueAccessorDirective]>;
176
- static ɵinj: i0.ɵɵInjectorDeclaration<DaffCheckboxModule>;
177
- }
6
+ import * as i1 from '@angular/cdk/a11y';
7
+ import { CdkTrapFocus } from '@angular/cdk/a11y';
178
8
 
179
9
  /**
180
10
  * @deprecated in favor of the {@link DaffFormFieldLabelDirective}. Deprecated in version 0.86.0. Will be removed in version 1.0.0.
@@ -207,136 +37,62 @@ interface AnimationStateWithParams<T = unknown, V = Record<string | number, unkn
207
37
  }
208
38
 
209
39
  /**
210
- *
211
- * Prefix can be used to place content before another piece of content in components like
212
- * `daff-form-field`, `daff-solo-field`, and `daff-list`.
40
+ * DaffPrefixDirective can be used to place content before another piece of content
41
+ * in components like `DaffFormFieldComponent` or `DaffListComponent`.
213
42
  */
214
43
  declare class DaffPrefixDirective {
215
- /**
216
- * @docs-private
217
- */
218
- class: boolean;
219
44
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffPrefixDirective, never>;
220
45
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffPrefixDirective, "[daffPrefix]", never, {}, {}, never, never, true, never>;
221
46
  }
222
47
 
223
48
  /**
224
- *
225
- * Prefix can be used to place content after another piece of content in components like
226
- * `daff-form-field`, `daff-solo-field`, and `daff-list`.
49
+ * DaffSuffixDirective can be used to place content after another piece of content
50
+ * in components like `DaffFormFieldComponent` or `DaffListComponent`.
227
51
  */
228
52
  declare class DaffSuffixDirective {
229
- /**
230
- * @docs-private
231
- */
232
- class: boolean;
233
53
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffSuffixDirective, never>;
234
54
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffSuffixDirective, "[daffSuffix]", never, {}, {}, never, never, true, never>;
235
55
  }
236
56
 
57
+ /**
58
+ * @deprecated in favor of standalone components. Deprecated in version 0.91.0. Will be removed in version 1.0.0.
59
+ */
237
60
  declare class DaffPrefixSuffixModule {
238
61
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffPrefixSuffixModule, never>;
239
62
  static ɵmod: i0.ɵɵNgModuleDeclaration<DaffPrefixSuffixModule, never, [typeof DaffPrefixDirective, typeof DaffSuffixDirective], [typeof DaffPrefixDirective, typeof DaffSuffixDirective]>;
240
63
  static ɵinj: i0.ɵɵInjectorDeclaration<DaffPrefixSuffixModule>;
241
64
  }
242
65
 
66
+ declare const DAFF_PREFIX_SUFFIX_DIRECTIVES: readonly [typeof DaffPrefixDirective, typeof DaffSuffixDirective];
67
+
68
+ /**
69
+ * @deprecated Deprecated in version 0.92.0. Will be removed in version 1.0.0.
70
+ */
243
71
  interface DaffColorable {
244
- color: DaffPalette;
72
+ color: DaffColor;
245
73
  }
246
74
  /**
247
- * These are the valid options that can be passed to a DaffColorable component.
75
+ * The available color options.
248
76
  */
249
- type DaffPalette = 'primary' | 'secondary' | 'tertiary' | 'light' | 'dark' | 'theme' | 'theme-contrast' | 'black' | 'white' | undefined;
77
+ type DaffColor = 'primary' | 'secondary' | 'tertiary' | 'light' | 'dark' | 'theme' | 'theme-contrast' | 'black' | 'white' | undefined;
78
+ /**
79
+ * @deprecated Deprecated in version 0.92.0. Will be removed in version 1.0.0.
80
+ */
81
+ type DaffPalette = DaffColor;
250
82
 
251
83
  /**
252
- * `DaffColorableDirective` allows a component to conditionally apply color-specific
253
- * styles by setting CSS classes based on the specified color. This directive is useful
254
- * for applying different color palettes to a component in an Angular application.
255
- *
256
- * Supported colors: `primary | secondary | tertiary | light | dark | theme | theme-contrast`
257
- *
258
- * | Color | Class |
259
- * | -------- | ----- |
260
- * | `primary` | `.daff-primary`|
261
- * | `secondary` | `.daff-secondary`|
262
- * | `tertiary` | `.daff-tertiary`|
263
- * | `light` | `daff-light` |
264
- * | `dark` | `daff-dark` |
265
- * | `theme` | `daff-theme`|
266
- * | `theme-contrast` | `.daff-theme-contrast`|
267
- *
268
- * `white` and `black` have been deprecated in favor of `light` and `dark`.
269
- *
270
- * @example Implementing it as an attribute directive
271
- *
272
- * ```html
273
- * <div daffColorable [color]="primary">Colored content</div>
274
- * ```
275
- *
276
- * ```scss
277
- * .div {
278
- * &.daff-primary {
279
- * color: daff-color($primary);
280
- * }
281
- * }
282
- * ```
283
- *
284
- * In this example, the `daff-primary` class is applied to the `div` element, allowing you to
285
- * use the color class to style the `div`.
286
- *
287
- * @example Implementing it as an Angular host directive
288
- *
289
- * ```ts
290
- * @Component({
291
- * selector: 'custom-component',
292
- * template: 'custom-component.html',
293
- * hostDirectives: [
294
- * {
295
- * directive: DaffColorableDirective,
296
- * inputs: ['color'],
297
- * },
298
- * ],
299
- * })
300
- * export class CustomComponent {
301
- * @HostBinding('class.custom-component') class = true;
302
- * }
303
- * ```
304
- *
305
- * ```scss
306
- * .custom-component {
307
- * &.daff-primary {
308
- * background: daff-color($primary, 10);
309
- * color: daff-color($primary, 90);
310
- * }
311
- * }
312
- * ```
84
+ * Enforces consistent use of {@link DaffColor} on a component by applying
85
+ * color-specific CSS classes and validating the color in dev mode.
313
86
  */
314
- declare class DaffColorableDirective implements DaffColorable, OnChanges, OnInit {
87
+ declare class DaffColorableDirective implements OnChanges, OnInit {
315
88
  /**
316
- * Dynamically sets the CSS classes based on the color.
317
- * @docs-private
89
+ * The color of the component.
318
90
  */
319
- get class(): {
320
- 'daff-primary': boolean;
321
- 'daff-secondary': boolean;
322
- 'daff-tertiary': boolean;
323
- 'daff-light': boolean;
324
- 'daff-dark': boolean;
325
- 'daff-theme': boolean;
326
- 'daff-theme-contrast': boolean;
327
- 'daff-black': boolean;
328
- 'daff-white': boolean;
329
- };
91
+ color: DaffColor;
330
92
  /**
331
- * Sets the color on a component.
332
- *
333
- * Default options are: `primary`, `secondary`, `tertiary`, `light`, `dark`, `theme`, and `theme-contrast`.
93
+ * The default color used when no color is set.
334
94
  */
335
- color: DaffPalette;
336
- /**
337
- * Sets a default color.
338
- */
339
- defaultColor: DaffPalette;
95
+ defaultColor: DaffColor;
340
96
  /**
341
97
  * @docs-private
342
98
  */
@@ -349,12 +105,21 @@ declare class DaffColorableDirective implements DaffColorable, OnChanges, OnInit
349
105
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffColorableDirective, "[daffColorable]", never, { "color": { "alias": "color"; "required": false; }; }, {}, never, never, true, never>;
350
106
  }
351
107
 
108
+ /**
109
+ * Sensible breakpoints for layouts and interfaces used across `@daffodil/design` components.
110
+ */
352
111
  declare enum DaffBreakpoints {
112
+ /** `min-width: 1920px` */
353
113
  DESKTOP = "(min-width: 1920px)",
114
+ /** `min-width: 1440px` */
354
115
  LAPTOP = "(min-width: 1440px)",
116
+ /** `min-width: 1200px` */
355
117
  SMALL_LAPTOP = "(min-width: 1200px)",
118
+ /** `min-width: 1024px` */
356
119
  BIG_TABLET = "(min-width: 1024px)",
120
+ /** `min-width: 768px` */
357
121
  TABLET = "(min-width: 768px)",
122
+ /** `min-width: 480px` */
358
123
  MOBILE = "(min-width: 480px)"
359
124
  }
360
125
 
@@ -364,11 +129,22 @@ declare enum DaffBreakpoints {
364
129
  declare const SERVER_SAFE_BREAKPOINT_OBSERVER: InjectionToken<Omit<BreakpointObserver, never>>;
365
130
 
366
131
  /**
367
- * A stubbed out breakpoint observer service.
132
+ * A no-op implementation of Angular CDK's `BreakpointObserver` that always reports
133
+ * no breakpoints as matched. Useful for server-side rendering or testing contexts
134
+ * where browser layout APIs are unavailable.
368
135
  */
369
136
  declare class NoopBreakpointObserver implements Omit<BreakpointObserver, never> {
137
+ /**
138
+ * @docs-private
139
+ */
370
140
  ngOnDestroy(): void;
141
+ /**
142
+ * Always returns `false`, indicating that none of the given media queries are active.
143
+ */
371
144
  isMatched(value: string | readonly string[]): boolean;
145
+ /**
146
+ * Returns an observable that never emits a `BreakpointState`, making breakpoint-dependent logic inert.
147
+ */
372
148
  observe(value: string | readonly string[]): Observable<BreakpointState>;
373
149
  static ɵfac: i0.ɵɵFactoryDeclaration<NoopBreakpointObserver, never>;
374
150
  static ɵprov: i0.ɵɵInjectableDeclaration<NoopBreakpointObserver>;
@@ -393,7 +169,7 @@ interface DaffStatusable {
393
169
  }
394
170
  /**
395
171
  * The `DaffStatus` type defines the possible status values that a component can have.
396
- * - 'info': Indicatea an informational status.
172
+ * - 'info': Indicates an informational status.
397
173
  * - 'warn': Indicates a warning status.
398
174
  * - 'critical': Indicates a critical or error status.
399
175
  * - 'success': Indicates a success status.
@@ -424,7 +200,6 @@ declare enum DaffStatusEnum {
424
200
  *
425
201
  * ```ts
426
202
  * @Component({
427
- * standalone: true,
428
203
  * selector: 'custom-component',
429
204
  * template: 'custom-component.html',
430
205
  * hostDirectives: [
@@ -453,20 +228,8 @@ declare enum DaffStatusEnum {
453
228
  * - `daff-success`: Applied when the status is `success`.
454
229
  */
455
230
  declare class DaffStatusableDirective implements DaffStatusable, OnChanges, OnInit {
456
- /**
457
- * Dynamically sets the CSS classes based on the status.
458
- * @docs-private
459
- */
460
- get class(): {
461
- 'daff-info': boolean;
462
- 'daff-warn': boolean;
463
- 'daff-critical': boolean;
464
- 'daff-success': boolean;
465
- };
466
231
  /**
467
232
  * Sets the status on a component.
468
- *
469
- * Options are: `info`, `warn`, `critical`, and `success`.
470
233
  */
471
234
  status: DaffStatus;
472
235
  /**
@@ -510,7 +273,6 @@ declare class DaffStatusableDirective implements DaffStatusable, OnChanges, OnIn
510
273
  *
511
274
  * ```ts
512
275
  * @Component({
513
- * standalone: true,
514
276
  * selector: 'custom-component',
515
277
  * template: 'custom-component.html',
516
278
  * hostDirectives: [
@@ -544,23 +306,18 @@ declare class DaffSkeletonableDirective {
544
306
  }
545
307
 
546
308
  /**
547
- * An interface for giving a component the ability to display a mutating UI.
548
- * In order to be mutable, our class must implement this property.
549
- */
550
- interface DaffMutable {
551
- mutating: boolean;
552
- }
553
-
554
- /**
555
- * Interface for giving a component the ability to customize text alignment for component-specific UI.
309
+ * @deprecated Deprecated in version 0.92.1. Will be removed in version 1.0.0.
556
310
  */
557
311
  interface DaffTextAlignable {
558
312
  textAlignment: DaffTextAlignment;
559
313
  }
560
314
  /**
561
- * The possible types that can be passed to a DaffTextAlignable component
315
+ * * The available text alignment options.
562
316
  */
563
317
  type DaffTextAlignment = 'left' | 'center' | 'right';
318
+ /**
319
+ * This enum will be removed from the public api in v1.0.0.
320
+ */
564
321
  declare enum DaffTextAlignmentEnum {
565
322
  Left = "left",
566
323
  Center = "center",
@@ -568,68 +325,15 @@ declare enum DaffTextAlignmentEnum {
568
325
  }
569
326
 
570
327
  /**
571
- * `DaffTextAlignableDirective` allows for dynamic text alignment of a component by
572
- * setting CSS classes based on the specified text alignment. This directive is
573
- * useful when text alignment needs to be managed dynamically in an Angular component.
574
- *
575
- * ## Why not just use CSS?
576
- *
577
- * While the native CSS `text-align` property can be used for static text alignment,
578
- * the `DaffTextAlignableDirective` provides a structured and consistent way to handle
579
- * dynamic text alignment within Angular components in more complex use cases where the
580
- * application of `text-align: center;` would cause unexpected side effects.
581
- *
582
- * @example Implementing it as an attribute directive
583
- *
584
- * ```html
585
- * <div daffTextAlignable textAlignment="center">Aligned text</div>
586
- * ```
587
- *
588
- * In this example, the `daff-center` class is added to the `div` element, allowing
589
- * you to style the `div` as you wish using the class.
590
- *
591
- * @example Implementing it as an Angular host directive
592
- *
593
- * ```ts
594
- * @Component({
595
- * standalone: true,
596
- * selector: 'custom-component',
597
- * template: 'custom-component.html',
598
- * hostDirectives: [
599
- * {
600
- * directive: DaffTextAlignableDirective,
601
- * inputs: ['textAlignment'],
602
- * },
603
- * ],
604
- * })
605
- * export class CustomComponent { }
606
- * ```
607
- *
608
- * ```scss
609
- * .custom-component {
610
- * &.daff-left {
611
- * text-align: left;
612
- * }
613
- * }
614
- * ```
328
+ * `DaffTextAlignableDirective` enforces consistent use of text alignment across components.
615
329
  */
616
330
  declare class DaffTextAlignableDirective implements DaffTextAlignable, OnChanges, OnInit {
617
- /**
618
- * @docs-private
619
- */
620
- get class(): {
621
- 'daff-left': boolean;
622
- 'daff-center': boolean;
623
- 'daff-right': boolean;
624
- };
625
331
  /**
626
332
  * The text alignment of the component.
627
- *
628
- * Options are: `left`, `center`, and `right`.
629
333
  */
630
334
  textAlignment: DaffTextAlignment;
631
335
  /**
632
- * Sets a default alignment when no text alignment is provided.
336
+ * The default used when no text alignment is set.
633
337
  */
634
338
  defaultAlignment: DaffTextAlignment;
635
339
  /**
@@ -645,60 +349,18 @@ declare class DaffTextAlignableDirective implements DaffTextAlignable, OnChanges
645
349
  }
646
350
 
647
351
  /**
648
- * An interface for giving a component the ability to display a compact UI.
649
- * In order to be compactable, the class must implement this property.
352
+ * @deprecated Deprecated in version 0.92.0. Will be removed in version 1.0.0.
650
353
  */
651
354
  interface DaffCompactable {
652
355
  compact: boolean;
653
356
  }
654
357
 
655
358
  /**
656
- * `DaffCompactableDirective` allows a component to conditionally apply a compact
657
- * style by toggling a CSS class. This is useful for creating components that can
658
- * switch between regular and compact styles based on the `compact` property.
659
- *
660
- * @example Implementing it as an attribute directive
661
- *
662
- * ```html
663
- * <div daffCompactable [compact]="isCompact">Content goes here</div>
664
- * ```
665
- *
666
- * In this example, the `daff-compact` class is applied to the `div` element when
667
- * `isCompact` is `true`, making the `div` display its compact state.
668
- *
669
- * @example Implementing it as an Angular host directive
670
- *
671
- * ```ts
672
- * @Component({
673
- * standalone: true,
674
- * selector: 'custom-component',
675
- * template: 'custom-component.html',
676
- * hostDirectives: [
677
- * {
678
- * directive: DaffCompactableDirective,
679
- * inputs: ['compact'],
680
- * },
681
- * ],
682
- * })
683
- * export class CustomComponent { }
684
- * ```
685
- *
686
- * The directive applies the `daff-compact` class to the component and
687
- * should be defined in your styles to display the compact state as desired.
688
- *
689
- * ```scss
690
- * :host {
691
- * padding: 8px 16px;
692
- *
693
- * &.daff-compact {
694
- * padding: 4px 8px;
695
- * }
696
- * }
697
- * ```
359
+ * Enforces consistent use of the compact property.
698
360
  */
699
361
  declare class DaffCompactableDirective {
700
362
  /**
701
- * Controls whether the component is compact.
363
+ * Whether the component is compact.
702
364
  */
703
365
  compact: boolean;
704
366
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffCompactableDirective, never>;
@@ -747,7 +409,6 @@ declare class DaffCompactableDirective {
747
409
  *
748
410
  * ```ts
749
411
  * @Component({
750
- * standalone: true,
751
412
  * selector: 'my-custom-component',
752
413
  * template: 'my-custom-component.html',
753
414
  * hostDirectives: [{ directive: DaffManageContainerLayoutDirective }],
@@ -764,43 +425,14 @@ declare class DaffCompactableDirective {
764
425
  * This directive will apply the `daff-manage-container-layout` class to your component, ensuring that the styles set on `:host` are passed down to the container.
765
426
  */
766
427
  declare class DaffManageContainerLayoutDirective {
767
- /**
768
- * @docs-private
769
- */
770
- class: boolean;
771
428
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffManageContainerLayoutDirective, never>;
772
429
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffManageContainerLayoutDirective, "[daffManageContainerLayout]", never, {}, {}, never, never, true, never>;
773
430
  }
774
431
 
775
432
  /**
776
- * `DaffArticleEncapsulatedDirective` is used to encapsulate custom components within an article,
777
- * preventing {@link DaffArticleComponent } styles from bleeding into the component.
778
- *
779
- * @example Implementing it as an attribute directive
780
- *
781
- * ```html
782
- * <my-custom-component daffArticleEncapsulated></my-custom-component>
783
- * ```
784
- *
785
- * @example Implementing it as an Angular host directive
786
- *
787
- * ```ts
788
- * @Component({
789
- * standalone: true,
790
- * selector: 'custom-component',
791
- * template: 'custom-component.html',
792
- * hostDirectives: [{ directive: DaffArticleEncapsulatedDirective }],
793
- * })
794
- * export class CustomComponent { }
795
- * ```
796
- *
797
- * This directive will apply the `daff-ae` class to the component, ensuring that it is encapsulated from the article's styles.
433
+ * The `DaffArticleEncapsulatedDirective` prevents {@link DaffArticleComponent } styles from bleeding into custom components nested within an article.
798
434
  */
799
435
  declare class DaffArticleEncapsulatedDirective {
800
- /**
801
- * @docs-private
802
- */
803
- class: boolean;
804
436
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffArticleEncapsulatedDirective, never>;
805
437
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffArticleEncapsulatedDirective, "[daffArticleEncapsulated]", never, {}, {}, never, never, true, never>;
806
438
  }
@@ -1008,25 +640,19 @@ declare enum DaffSizableEnum {
1008
640
  * - `daff-xl`: Applied when the size is `xl`.
1009
641
  */
1010
642
  declare class DaffSizableDirective<T extends DaffSizeAllType> implements DaffSizable<T>, OnChanges, OnInit {
1011
- /**
1012
- * Dynamically sets the CSS classes based on the size.
1013
- * @docs-private
1014
- */
1015
- get class(): {
1016
- 'daff-xs': boolean;
1017
- 'daff-sm': boolean;
1018
- 'daff-md': boolean;
1019
- 'daff-lg': boolean;
1020
- 'daff-xl': boolean;
1021
- };
1022
643
  /**
1023
644
  * The size of the component.
1024
- *
1025
- * Options are: `xs`, `sm`, `md`, `lg`, and `xl`.
1026
645
  */
1027
646
  size: T;
1028
647
  /**
1029
- * Sets a default size when no size is provided.
648
+ * Sets a default size.
649
+ *
650
+ * @example
651
+ * ```ts
652
+ * constructor(private sizableDirective: DaffSizableDirective) {
653
+ * this.sizableDirective.defaultSize = 'md';
654
+ * }
655
+ * ```
1030
656
  */
1031
657
  defaultSize: T;
1032
658
  /**
@@ -1138,6 +764,50 @@ declare class DaffOpenableDirective implements DaffOpenable, OnChanges {
1138
764
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffOpenableDirective, "[daffOpenable]", never, { "open": { "alias": "open"; "required": false; }; }, { "toggled": "toggled"; }, never, never, true, never>;
1139
765
  }
1140
766
 
767
+ /**
768
+ * @deprecated Deprecated in version 0.92.1. Will be removed in version 1.0.0.
769
+ *
770
+ * Interface for giving a component the ability to customize text alignment for component-specific UI.
771
+ */
772
+ interface DaffOrientable {
773
+ orientation: DaffOrientation;
774
+ }
775
+ /**
776
+ * The possible types that can be passed to a DaffOrientable component
777
+ */
778
+ type DaffOrientation = 'horizontal' | 'vertical';
779
+ /**
780
+ * This enum will be removed from the public api in v1.0.0.
781
+ */
782
+ declare enum DaffOrientationEnum {
783
+ Horizontal = "horizontal",
784
+ Vertical = "vertical"
785
+ }
786
+
787
+ /**
788
+ * `DaffOrientableDirective`enforces consistent use of orientation across components.
789
+ */
790
+ declare class DaffOrientableDirective implements DaffOrientable, OnChanges, OnInit {
791
+ /**
792
+ * The orientation of the component.
793
+ */
794
+ orientation: DaffOrientation;
795
+ /**
796
+ * The default used when no orientation is set.
797
+ */
798
+ defaultOrientation: DaffOrientation;
799
+ /**
800
+ * @docs-private
801
+ */
802
+ ngOnInit(): void;
803
+ /**
804
+ * @docs-private
805
+ */
806
+ ngOnChanges(changes: SimpleChanges): void;
807
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffOrientableDirective, never>;
808
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DaffOrientableDirective, "[daffOrientable]", never, { "orientation": { "alias": "orientation"; "required": false; }; }, {}, never, never, true, never>;
809
+ }
810
+
1141
811
  /**
1142
812
  * An interface for giving a component the ability to display a selected UI.
1143
813
  * In order to be selectable, the class must implement this property.
@@ -1153,11 +823,17 @@ declare class DaffSelectableDirective implements DaffSelectable {
1153
823
  */
1154
824
  selected: boolean;
1155
825
  /**
1156
- * An event that fires after the media element becomes selected.
826
+ * An event that fires after the component becomes selected.
1157
827
  */
1158
828
  becameSelected: EventEmitter<void>;
1159
829
  constructor(cd: ChangeDetectorRef);
830
+ /**
831
+ * Selects the component and emits the `becameSelected` event.
832
+ */
1160
833
  select(): this;
834
+ /**
835
+ * Deselects the component.
836
+ */
1161
837
  deselect(): this;
1162
838
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffSelectableDirective, never>;
1163
839
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffSelectableDirective, "[daffSelected]", never, { "selected": { "alias": "selected"; "required": false; }; }, { "becameSelected": "becameSelected"; }, never, never, true, never>;
@@ -1185,5 +861,164 @@ declare class DaffStickyTrackerDirective implements OnDestroy {
1185
861
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffStickyTrackerDirective, "[daffStickyTracker]", never, { "sticky": { "alias": "sticky"; "required": false; }; }, {}, never, never, true, never>;
1186
862
  }
1187
863
 
1188
- export { DAFF_THEME_INITIALIZER, DaffArticleEncapsulatedDirective, DaffBreakpoints, DaffCheckboxComponent, DaffCheckboxControlValueAccessorDirective, DaffCheckboxModule, DaffCheckboxSetComponent, DaffColorableDirective, DaffCompactableDirective, DaffErrorStateMatcher, DaffFocusStackService, DaffFormLabelDirective, DaffFormLabelModule, DaffManageContainerLayoutDirective, DaffOpenableDirective, DaffPrefixDirective, DaffPrefixSuffixModule, DaffSelectableDirective, DaffSizableDirective, DaffSizableEnum, DaffSkeletonableDirective, DaffStatusEnum, DaffStatusableDirective, DaffStickyTrackerDirective, DaffSuffixDirective, DaffTextAlignableDirective, DaffTextAlignmentEnum, DaffTheme, DaffThemingService, NoopBreakpointObserver, SERVER_SAFE_BREAKPOINT_OBSERVER, daffFocusableElementsSelector };
1189
- export type { AnimationStateWithParams, Constructor, DaffColorable, DaffCompactable, DaffLazyComponent, DaffMutable, DaffOpenable, DaffPalette, DaffSelectable, DaffSizable, DaffSizeAllType, DaffSizeLargeType, DaffSizeMediumType, DaffSizeSmallType, DaffSizeXLargeType, DaffSizeXSmallType, DaffStatus, DaffStatusable, DaffTextAlignable, DaffTextAlignment };
864
+ /**
865
+ * Enforces consistent use of the disabled property.
866
+ */
867
+ declare class DaffDisableableDirective {
868
+ /**
869
+ * Whether the component is disabled.
870
+ */
871
+ disabled: boolean;
872
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffDisableableDirective, never>;
873
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DaffDisableableDirective, "[daffDisableable]", never, { "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, never>;
874
+ }
875
+
876
+ /**
877
+ * An interface for any component or directive that can be disabled.
878
+ */
879
+ interface DaffDisableable {
880
+ disabled: boolean;
881
+ }
882
+
883
+ /**
884
+ * `DaffLoadableDirective` allows a component to display a loading UI
885
+ * by conditionally applying a CSS class. This is useful for indicating to
886
+ * users that a user action is being processed. This directive can be used to
887
+ * apply a loading UI to any component by toggling the `loading`
888
+ * input property. When `loading` is `true`, the `daff-loading` CSS class
889
+ * is applied, which should style the component to look like it's not interactable.
890
+ *
891
+ * @example Implementing it as an attribute directive
892
+ *
893
+ * ```html
894
+ * <div daffLoadable [loading]="isLoading">Content</div>
895
+ * ```
896
+ *
897
+ * @example Implementing it as an Angular host directive
898
+ *
899
+ * ```ts
900
+ * @Component({
901
+ * selector: 'custom-component',
902
+ * template: 'custom-component.html',
903
+ * hostDirectives: [
904
+ * {
905
+ * directive: DaffLoadableDirective,
906
+ * inputs: ['loading'],
907
+ * },
908
+ * ],
909
+ * })
910
+ * export class CustomComponent { }
911
+ * ```
912
+ *
913
+ * ```scss
914
+ * :host {
915
+ * .spinner {
916
+ * opacity: 0;
917
+ * }
918
+ * .daff-loading {
919
+ * .spinner {
920
+ * opacity: 1;
921
+ * }
922
+ * }
923
+ * }
924
+ * ```
925
+ *
926
+ * The directive applies the `daff-loading` class to the component. The class should be
927
+ * defined in your styles to display the loading state as desired.
928
+ */
929
+ declare class DaffLoadableDirective {
930
+ loading: boolean;
931
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffLoadableDirective, never>;
932
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DaffLoadableDirective, "[daffLoadable]", never, { "loading": { "alias": "loading"; "required": false; }; }, {}, never, never, true, never>;
933
+ }
934
+
935
+ declare class DaffRovingTabIndexService {
936
+ private document;
937
+ private readonly _hierarchy;
938
+ private readonly _group;
939
+ readonly group: i0.Signal<string>;
940
+ constructor(document: Document);
941
+ enter(group: string): void;
942
+ leave(): void;
943
+ next(): void;
944
+ previous(): void;
945
+ private _changeFocus;
946
+ onKeydown(evt: Event): void;
947
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffRovingTabIndexService, never>;
948
+ static ɵprov: i0.ɵɵInjectableDeclaration<DaffRovingTabIndexService>;
949
+ }
950
+
951
+ /**
952
+ * Defines the boundary of an RTI group.
953
+ */
954
+ declare class DaffRovingTabIndexBoundaryDirective {
955
+ private groupService;
956
+ private focusTrap;
957
+ /**
958
+ * Don't touch this directly. Use `_uniqueId`.
959
+ */
960
+ private static _uniqueIdCounter;
961
+ /**
962
+ * Don't touch this directly. Use `_uniqueId`.
963
+ */
964
+ private _cachedUniqueId;
965
+ private get _uniqueId();
966
+ /**
967
+ * The name of the group for which that this element will act as boundary.
968
+ * Optional, will be autogenerated to a unique name if omitted.
969
+ */
970
+ readonly rtiBoundary: i0.InputSignal<string>;
971
+ /**
972
+ * The name of the group defined by this boundary.
973
+ */
974
+ readonly effectiveBoundary: i0.Signal<string>;
975
+ constructor(groupService: DaffRovingTabIndexService, focusTrap: CdkTrapFocus);
976
+ /**
977
+ * @docs-private
978
+ */
979
+ enterGroup(evt: Event): void;
980
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffRovingTabIndexBoundaryDirective, never>;
981
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DaffRovingTabIndexBoundaryDirective, "[rtiBoundary]", never, { "rtiBoundary": { "alias": "rtiBoundary"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.CdkTrapFocus; inputs: {}; outputs: {}; }, { directive: typeof DaffRovingTabIndexDirective; inputs: {}; outputs: {}; }]>;
982
+ }
983
+
984
+ /**
985
+ * Declares that an element is an RTI target.
986
+ * Automatically applied to `<a>` and `<button>` elements.
987
+ */
988
+ declare class DaffRovingTabIndexDirective {
989
+ private service;
990
+ private parent;
991
+ /**
992
+ * Allows the RTI group to be overriden.
993
+ * By default it will be the nearest ancestor or the default root group if no boundary ancestor exists.
994
+ * @see {@link DaffRovingTabIndexBoundaryDirective}.
995
+ */
996
+ readonly rti: i0.InputSignal<string>;
997
+ /**
998
+ * The group in which this RTI target resides.
999
+ * See {@link DaffRovingTabIndexBoundaryDirective} to make an element act as the boundary of an RTI group.
1000
+ */
1001
+ readonly group: i0.Signal<string>;
1002
+ /**
1003
+ * @docs-private
1004
+ */
1005
+ readonly tabindex: i0.Signal<0 | -1>;
1006
+ constructor(service: DaffRovingTabIndexService, parent: DaffRovingTabIndexBoundaryDirective);
1007
+ /**
1008
+ * @docs-private
1009
+ */
1010
+ leaveGroup(evt: Event): void;
1011
+ /**
1012
+ * @docs-private
1013
+ */
1014
+ next(evt: Event): void;
1015
+ /**
1016
+ * @docs-private
1017
+ */
1018
+ previous(evt: Event): void;
1019
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffRovingTabIndexDirective, [null, { optional: true; skipSelf: true; }]>;
1020
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DaffRovingTabIndexDirective, "[rti],a,button", never, { "rti": { "alias": "rti"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1021
+ }
1022
+
1023
+ export { DAFF_PREFIX_SUFFIX_DIRECTIVES, DAFF_THEME_INITIALIZER, DaffArticleEncapsulatedDirective, DaffBreakpoints, DaffColorableDirective, DaffCompactableDirective, DaffDisableableDirective, DaffFocusStackService, DaffFormLabelDirective, DaffFormLabelModule, DaffLoadableDirective, DaffManageContainerLayoutDirective, DaffOpenableDirective, DaffOrientableDirective, DaffOrientationEnum, DaffPrefixDirective, DaffPrefixSuffixModule, DaffRovingTabIndexBoundaryDirective, DaffRovingTabIndexDirective, DaffSelectableDirective, DaffSizableDirective, DaffSizableEnum, DaffSkeletonableDirective, DaffStatusEnum, DaffStatusableDirective, DaffStickyTrackerDirective, DaffSuffixDirective, DaffTextAlignableDirective, DaffTextAlignmentEnum, DaffTheme, DaffThemingService, NoopBreakpointObserver, SERVER_SAFE_BREAKPOINT_OBSERVER, daffFocusableElementsSelector };
1024
+ export type { AnimationStateWithParams, Constructor, DaffColor, DaffColorable, DaffCompactable, DaffDisableable, DaffLazyComponent, DaffOpenable, DaffOrientable, DaffOrientation, DaffPalette, DaffSelectable, DaffSizable, DaffSizeAllType, DaffSizeLargeType, DaffSizeMediumType, DaffSizeSmallType, DaffSizeXLargeType, DaffSizeXSmallType, DaffStatus, DaffStatusable, DaffTextAlignable, DaffTextAlignment };