@daffodil/design 0.91.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 (142) hide show
  1. package/accordion/README.md +26 -38
  2. package/accordion/index.d.ts +2 -2
  3. package/article/README.md +66 -46
  4. package/article/index.d.ts +22 -1
  5. package/article/src/article-theme.scss +12 -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 +26 -5
  11. package/button/src/button/basic/button-theme.scss +4 -2
  12. package/button/src/button/button-base.scss +26 -3
  13. package/button/src/button/icon/icon-theme.scss +10 -6
  14. package/button/src/button/raised/raised-theme.scss +4 -2
  15. package/callout/README.md +15 -27
  16. package/card/README.md +36 -61
  17. package/container/README.md +18 -23
  18. package/fesm2022/daffodil-design-accordion.mjs +13 -13
  19. package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
  20. package/fesm2022/daffodil-design-article.mjs +168 -26
  21. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  22. package/fesm2022/daffodil-design-breadcrumb.mjs +180 -28
  23. package/fesm2022/daffodil-design-breadcrumb.mjs.map +1 -1
  24. package/fesm2022/daffodil-design-button.mjs +83 -42
  25. package/fesm2022/daffodil-design-button.mjs.map +1 -1
  26. package/fesm2022/daffodil-design-callout.mjs +23 -23
  27. package/fesm2022/daffodil-design-callout.mjs.map +1 -1
  28. package/fesm2022/daffodil-design-card.mjs +33 -33
  29. package/fesm2022/daffodil-design-card.mjs.map +1 -1
  30. package/fesm2022/daffodil-design-checkbox.mjs +13 -13
  31. package/fesm2022/daffodil-design-checkbox.mjs.map +1 -1
  32. package/fesm2022/daffodil-design-container.mjs +8 -8
  33. package/fesm2022/daffodil-design-container.mjs.map +1 -1
  34. package/fesm2022/daffodil-design-form-field.mjs +26 -26
  35. package/fesm2022/daffodil-design-form-field.mjs.map +1 -1
  36. package/fesm2022/daffodil-design-form.mjs +9 -9
  37. package/fesm2022/daffodil-design-form.mjs.map +1 -1
  38. package/fesm2022/daffodil-design-hero.mjs +23 -23
  39. package/fesm2022/daffodil-design-hero.mjs.map +1 -1
  40. package/fesm2022/daffodil-design-image.mjs +8 -8
  41. package/fesm2022/daffodil-design-image.mjs.map +1 -1
  42. package/fesm2022/daffodil-design-input.mjs +18 -14
  43. package/fesm2022/daffodil-design-input.mjs.map +1 -1
  44. package/fesm2022/daffodil-design-link-set.mjs +25 -17
  45. package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
  46. package/fesm2022/daffodil-design-list.mjs +16 -16
  47. package/fesm2022/daffodil-design-list.mjs.map +1 -1
  48. package/fesm2022/daffodil-design-loading-icon.mjs +8 -8
  49. package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
  50. package/fesm2022/daffodil-design-media-gallery.mjs +13 -13
  51. package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
  52. package/fesm2022/daffodil-design-menu.mjs +223 -60
  53. package/fesm2022/daffodil-design-menu.mjs.map +1 -1
  54. package/fesm2022/daffodil-design-modal.mjs +33 -29
  55. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  56. package/fesm2022/daffodil-design-native-select.mjs +47 -41
  57. package/fesm2022/daffodil-design-native-select.mjs.map +1 -1
  58. package/fesm2022/daffodil-design-navbar.mjs +25 -21
  59. package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
  60. package/fesm2022/daffodil-design-notification.mjs +16 -16
  61. package/fesm2022/daffodil-design-notification.mjs.map +1 -1
  62. package/fesm2022/daffodil-design-paginator.mjs +7 -7
  63. package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
  64. package/fesm2022/daffodil-design-progress-bar.mjs +10 -10
  65. package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
  66. package/fesm2022/daffodil-design-quantity-field.mjs +17 -14
  67. package/fesm2022/daffodil-design-quantity-field.mjs.map +1 -1
  68. package/fesm2022/daffodil-design-radio.mjs +16 -16
  69. package/fesm2022/daffodil-design-radio.mjs.map +1 -1
  70. package/fesm2022/daffodil-design-select.mjs +6 -6
  71. package/fesm2022/daffodil-design-select.mjs.map +1 -1
  72. package/fesm2022/daffodil-design-sidebar.mjs +25 -25
  73. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  74. package/fesm2022/daffodil-design-spinner.mjs +99 -0
  75. package/fesm2022/daffodil-design-spinner.mjs.map +1 -0
  76. package/fesm2022/daffodil-design-switch.mjs +3 -3
  77. package/fesm2022/daffodil-design-switch.mjs.map +1 -1
  78. package/fesm2022/daffodil-design-tabs.mjs +15 -15
  79. package/fesm2022/daffodil-design-tabs.mjs.map +1 -1
  80. package/fesm2022/daffodil-design-tag.mjs +7 -7
  81. package/fesm2022/daffodil-design-tag.mjs.map +1 -1
  82. package/fesm2022/daffodil-design-text-snippet.mjs +6 -8
  83. package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -1
  84. package/fesm2022/daffodil-design-textarea.mjs +6 -3
  85. package/fesm2022/daffodil-design-textarea.mjs.map +1 -1
  86. package/fesm2022/daffodil-design-toast.mjs +23 -25
  87. package/fesm2022/daffodil-design-toast.mjs.map +1 -1
  88. package/fesm2022/daffodil-design-tree.mjs +152 -103
  89. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  90. package/fesm2022/daffodil-design-youtube-player.mjs +6 -6
  91. package/fesm2022/daffodil-design-youtube-player.mjs.map +1 -1
  92. package/fesm2022/daffodil-design.mjs +385 -326
  93. package/fesm2022/daffodil-design.mjs.map +1 -1
  94. package/form-field/README.md +50 -85
  95. package/form-field/index.d.ts +11 -9
  96. package/hero/README.md +5 -5
  97. package/image/README.md +2 -2
  98. package/index.d.ts +184 -270
  99. package/input/README.md +4 -4
  100. package/input/index.d.ts +4 -3
  101. package/link-set/index.d.ts +9 -1
  102. package/list/README.md +2 -2
  103. package/loading-icon/README.md +1 -1
  104. package/loading-icon/index.d.ts +1 -1
  105. package/media-gallery/README.md +3 -3
  106. package/menu/README.md +107 -10
  107. package/menu/index.d.ts +143 -11
  108. package/modal/README.md +1 -1
  109. package/modal/index.d.ts +23 -15
  110. package/native-select/README.md +4 -4
  111. package/native-select/index.d.ts +8 -7
  112. package/navbar/README.md +23 -17
  113. package/navbar/index.d.ts +12 -2
  114. package/navbar/src/navbar-theme.scss +4 -46
  115. package/notification/README.md +4 -4
  116. package/package.json +1 -1
  117. package/paginator/README.md +42 -6
  118. package/paginator/index.d.ts +4 -2
  119. package/progress-bar/README.md +3 -3
  120. package/quantity-field/README.md +4 -4
  121. package/quantity-field/index.d.ts +4 -1
  122. package/radio/README.md +1 -1
  123. package/scss/theme.scss +7 -1
  124. package/scss/theming/_color-palettes.scss +0 -6
  125. package/select/README.md +4 -4
  126. package/sidebar/README.md +6 -6
  127. package/spinner/README.md +57 -0
  128. package/spinner/index.d.ts +53 -0
  129. package/spinner/src/spinner-theme.scss +62 -0
  130. package/switch/README.md +4 -4
  131. package/switch/index.d.ts +2 -2
  132. package/tabs/README.md +1 -1
  133. package/tabs/index.d.ts +2 -2
  134. package/tag/README.md +24 -30
  135. package/tag/index.d.ts +1 -1
  136. package/text-snippet/README.md +1 -1
  137. package/text-snippet/src/text-snippet-theme.scss +12 -0
  138. package/textarea/README.md +4 -4
  139. package/textarea/index.d.ts +4 -4
  140. package/toast/README.md +4 -4
  141. package/tree/README.md +39 -22
  142. package/tree/index.d.ts +57 -90
package/button/index.d.ts CHANGED
@@ -1,20 +1,26 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import * as i1$1 from '@angular/common';
3
+ import * as _daffodil_design_button from '@daffodil/design/button';
3
4
  import * as i1 from '@daffodil/design';
4
- import { DaffSizableDirective, DaffSizeSmallType, DaffSizeMediumType, DaffSizeLargeType, DaffPrefixDirective, DaffSuffixDirective, DaffDisableableDirective } from '@daffodil/design';
5
+ import { DaffSizableDirective, DaffSizeSmallType, DaffSizeMediumType, DaffSizeLargeType, DaffDisableable, DaffPrefixDirective, DaffSuffixDirective, DaffDisableableDirective, DaffLoadableDirective } from '@daffodil/design';
5
6
 
6
7
  /**
7
8
  * The size types that the DaffButtonComponent can implement.
8
9
  */
9
10
  type DaffButtonSize = DaffSizeSmallType | DaffSizeMediumType | DaffSizeLargeType;
10
11
  declare class DaffButtonSizableDirective extends DaffSizableDirective<DaffButtonSize> {
12
+ /**
13
+ * @docs-private
14
+ */
15
+ defaultSize: DaffButtonSize;
11
16
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffButtonSizableDirective, never>;
12
17
  static ɵdir: i0.ɵɵDirectiveDeclaration<DaffButtonSizableDirective, never, never, {}, {}, never, never, true, never>;
13
18
  }
14
19
 
15
- declare class DaffButtonBaseDirective {
16
- private size;
20
+ declare class DaffButtonBaseDirective implements DaffDisableable {
21
+ private buttonSizable;
17
22
  private disabledDirective;
23
+ private loadingDirective;
18
24
  /**
19
25
  * @docs-private
20
26
  */
@@ -23,7 +29,7 @@ declare class DaffButtonBaseDirective {
23
29
  * @docs-private
24
30
  */
25
31
  _suffix: DaffSuffixDirective;
26
- constructor(size: DaffButtonSizableDirective, disabledDirective: DaffDisableableDirective);
32
+ constructor(buttonSizable: DaffButtonSizableDirective, disabledDirective: DaffDisableableDirective, loadingDirective: DaffLoadableDirective);
27
33
  /**
28
34
  * Sets the tabindex.
29
35
  */
@@ -33,8 +39,20 @@ declare class DaffButtonBaseDirective {
33
39
  */
34
40
  get disabled(): any;
35
41
  set disabled(value: any);
42
+ /**
43
+ * @docs-private
44
+ *
45
+ * Internal function to access the loading property of the DaffLoadableDirective
46
+ */
47
+ get loading(): boolean;
48
+ /**
49
+ * @docs-private
50
+ *
51
+ * Internal function to access the size property of the DaffButtonSizableDirective
52
+ */
53
+ get buttonSize(): _daffodil_design_button.DaffButtonSize;
36
54
  static ɵfac: i0.ɵɵFactoryDeclaration<DaffButtonBaseDirective, never>;
37
- static ɵdir: i0.ɵɵDirectiveDeclaration<DaffButtonBaseDirective, "[daffButtonBase]", never, { "tabindex": { "alias": "tabindex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, ["_prefix", "_suffix"], never, true, [{ directive: typeof i1.DaffArticleEncapsulatedDirective; inputs: {}; outputs: {}; }, { directive: typeof DaffButtonSizableDirective; inputs: { "size": "size"; }; outputs: {}; }, { directive: typeof i1.DaffStatusableDirective; inputs: { "status": "status"; }; outputs: {}; }, { directive: typeof i1.DaffColorableDirective; inputs: { "color": "color"; }; outputs: {}; }, { directive: typeof i1.DaffDisableableDirective; inputs: { "disabled": "disabled"; }; outputs: {}; }]>;
55
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DaffButtonBaseDirective, "[daffButtonBase]", never, { "tabindex": { "alias": "tabindex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, ["_prefix", "_suffix"], never, true, [{ directive: typeof i1.DaffArticleEncapsulatedDirective; inputs: {}; outputs: {}; }, { directive: typeof DaffButtonSizableDirective; inputs: { "size": "size"; }; outputs: {}; }, { directive: typeof i1.DaffStatusableDirective; inputs: { "status": "status"; }; outputs: {}; }, { directive: typeof i1.DaffColorableDirective; inputs: { "color": "color"; }; outputs: {}; }, { directive: typeof i1.DaffDisableableDirective; inputs: { "disabled": "disabled"; }; outputs: {}; }, { directive: typeof i1.DaffLoadableDirective; inputs: { "loading": "loading"; }; outputs: {}; }]>;
38
56
  }
39
57
 
40
58
  /**
@@ -163,6 +181,8 @@ declare class DaffStrokedButtonComponent extends DaffButtonBaseDirective {
163
181
  }
164
182
 
165
183
  /**
184
+ * @deprecated Deprecated in version 0.92.0. Will be removed in version 1.0.0.
185
+ *
166
186
  * DaffUnderlineButtonComponent is a borderless button with a custom underline style.
167
187
  *
168
188
  * @example Underline button
@@ -216,6 +236,7 @@ declare const DAFF_ICON_BUTTON_COMPONENTS: readonly [typeof DaffIconButtonCompon
216
236
  declare const DAFF_STROKED_BUTTON_COMPONENTS: readonly [typeof DaffStrokedButtonComponent, typeof DaffPrefixDirective, typeof DaffSuffixDirective];
217
237
  /**
218
238
  * @docs-private
239
+ * @deprecated Deprecated in version 0.92.0. Will be removed in version 0.95.0.
219
240
  */
220
241
  declare const DAFF_UNDERLINE_BUTTON_COMPONENTS: readonly [typeof DaffUnderlineButtonComponent, typeof DaffPrefixDirective, typeof DaffSuffixDirective];
221
242
 
@@ -12,8 +12,10 @@
12
12
  background: $hover-color;
13
13
  }
14
14
 
15
- &:hover {
16
- color: daff-text-contrast($hover-color);
15
+ @media (hover: hover) {
16
+ &:hover {
17
+ color: daff-text-contrast($hover-color);
18
+ }
17
19
  }
18
20
 
19
21
  &:active {
@@ -7,8 +7,11 @@
7
7
  box-shadow: 0 1px 5px -4px rgba(0, 0, 0, 0.5),
8
8
  0 4px 8px 0 rgba(0, 0, 0, 0.05);
9
9
 
10
- &:hover {
11
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08), 0 4px 6px rgba(0, 0, 0, 0.04);
10
+ @media (hover: hover) {
11
+ &:hover {
12
+ box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08),
13
+ 0 4px 6px rgba(0, 0, 0, 0.04);
14
+ }
12
15
  }
13
16
 
14
17
  &[disabled],
@@ -49,6 +52,19 @@
49
52
  .daff-button__content {
50
53
  @include t.text-truncate();
51
54
  }
55
+
56
+ &.daff-loading {
57
+ .daff-button__content,
58
+ .daff-prefix,
59
+ .daff-suffix {
60
+ opacity: 0;
61
+ }
62
+
63
+ .daff-button__loading {
64
+ z-index: 5;
65
+ position: absolute;
66
+ }
67
+ }
52
68
  }
53
69
 
54
70
  @mixin daff-button-background($border-radius) {
@@ -65,12 +81,19 @@
65
81
  z-index: 0;
66
82
  }
67
83
 
68
- &:hover,
69
84
  &:active {
70
85
  &::after {
71
86
  opacity: 1;
72
87
  }
73
88
  }
89
+
90
+ @media (hover: hover) {
91
+ &:hover {
92
+ &::after {
93
+ opacity: 1;
94
+ }
95
+ }
96
+ }
74
97
  }
75
98
  }
76
99
 
@@ -7,12 +7,16 @@
7
7
  ) {
8
8
  color: $base-color;
9
9
 
10
- &:hover {
11
- color: $hover-color;
12
- @if $base-color == currentColor {
13
- opacity: 0.8;
14
- } @else {
15
- opacity: 1;
10
+ &:not(&[disabled], &.daff-disabled) {
11
+ @media (hover: hover) {
12
+ &:hover {
13
+ color: $hover-color;
14
+ @if $base-color == currentColor {
15
+ opacity: 0.8;
16
+ } @else {
17
+ opacity: 1;
18
+ }
19
+ }
16
20
  }
17
21
  }
18
22
 
@@ -15,8 +15,10 @@
15
15
  box-shadow: 0 1px 5px -4px rgba($black, 0.5), 0 4px 8px 0 rgba($black, 0.05);
16
16
  color: daff-text-contrast($base-color);
17
17
 
18
- &:hover {
19
- box-shadow: 0 6px 12px rgba($black, 0.08), 0 4px 6px rgba($black, 0.04);
18
+ @media (hover: hover) {
19
+ &:hover {
20
+ box-shadow: 0 6px 12px rgba($black, 0.08), 0 4px 6px rgba($black, 0.04);
21
+ }
20
22
  }
21
23
  }
22
24
 
package/callout/README.md CHANGED
@@ -4,7 +4,7 @@ A callout is a versatile, pre-styled container used to highlight key pieces of c
4
4
  ## Overview
5
5
  Callouts help draw attention to important information and can be used multiple times on a page. They're flexible enough to support various content arrangements and include built-in containers for icons, taglines, titles, subtitles, and custom body content.
6
6
 
7
- <design-land-example-viewer-container example="basic-callout"></design-land-example-viewer-container>
7
+ <daff-docs-example-viewer example="basic-callout"></daff-docs-example-viewer>
8
8
 
9
9
  ## Best practices
10
10
 
@@ -17,7 +17,7 @@ Callouts help draw attention to important information and can be used multiple t
17
17
  ## Usage
18
18
 
19
19
  ### Within a standalone component
20
- To use the callout components, import `DAFF_CALLOUT_COMPONENTS` into your custom component:
20
+ Import `DAFF_CALLOUT_COMPONENTS` into your component:
21
21
 
22
22
  ```ts
23
23
  import { DAFF_CALLOUT_COMPONENTS } from '@daffodil/design/callout';
@@ -57,27 +57,8 @@ export class CustomComponentModule { }
57
57
  > This method is deprecated. It's recommended to update all custom components to standalone.
58
58
 
59
59
  ## Anatomy
60
- A callout consists of the following components, displayed in the order listed:
60
+ A callout is composed of a wrapper, icon, tagline, title, subtitle, and body, displayed in the order listed:
61
61
 
62
- ### Container
63
- **`<daff-callout>`**: The main wrapper that holds all callout content.
64
-
65
- ### Icon
66
- **`[daffCalloutIcon]`**: Displays a visual or branding element. Avoid using for interactive or actionable icons.
67
-
68
- ### Tagline
69
- **`[daffCalloutTagline]`**: Short, memorable phrase that provides quick context.
70
-
71
- ### Title
72
- **`[daffCalloutTitle]`**: The primary heading text. Applied to heading elements (`<h1>`, `<h2>`, etc.).
73
-
74
- ### Subtitle
75
- **`[daffCalloutSubtitle]`**: Secondary descriptive text displayed beneath the title.
76
-
77
- ### Body
78
- **`[daffCalloutBody]`**: Flexible container for additional content. It's unstyled except for spaicng and should only be used once per callout.
79
-
80
- ### Basic structure
81
62
  ```html
82
63
  <daff-callout>
83
64
  <div daffCalloutIcon>
@@ -92,26 +73,33 @@ A callout consists of the following components, displayed in the order listed:
92
73
  </daff-callout>
93
74
  ```
94
75
 
76
+ - **`<daff-callout>`**: The wrapper component that holds all callout content.
77
+ - **`[daffCalloutIcon]`**: Displays a visual or branding element. Avoid using for interactive or actionable icons.
78
+ - **`[daffCalloutTagline]`**: Short, memorable phrase that provides quick context.
79
+ - **`[daffCalloutTitle]`**: The primary heading text. Applied to heading elements (`<h1>`, `<h2>`, etc.).
80
+ - **`[daffCalloutSubtitle]`**: Secondary descriptive text displayed beneath the title.
81
+ - **`[daffCalloutBody]`**: Flexible container for additional content. It's unstyled except for spacing and **should only be used once per callout**.
82
+
95
83
  ## Features
96
84
 
97
85
  ### Colors
98
86
  Use the `color` property to change the background of a callout.
99
87
 
100
- <design-land-example-viewer-container example="callout-theming"></design-land-example-viewer-container>
88
+ <daff-docs-example-viewer example="callout-theming"></daff-docs-example-viewer>
101
89
 
102
90
  ### Text alignment
103
- Control callout-specific text alignment with the `textAlignment` property. It defaults to `left` and **does not** affect `[daffCalloutBody]` content or nested elements.
91
+ Control callout-specific text alignment with the `textAlignment` property. It defaults to `left` and **does not** affect content placed within `[daffCalloutBody]`.
104
92
 
105
- <design-land-example-viewer-container example="callout-text-alignment"></design-land-example-viewer-container>
93
+ <daff-docs-example-viewer example="callout-text-alignment"></daff-docs-example-viewer>
106
94
 
107
95
  ### Compact
108
96
  Use the `compact` property on callout to reduce padding and suit UIs with tighter spacing requirements.
109
97
 
110
- <design-land-example-viewer-container example="compact-callout"></design-land-example-viewer-container>
98
+ <daff-docs-example-viewer example="compact-callout"></daff-docs-example-viewer>
111
99
 
112
100
  ## Examples
113
101
 
114
102
  ### Callout with two columns
115
103
  Callouts are flexible enough to support custom grid layouts for more complex arrangements:
116
104
 
117
- <design-land-example-viewer-container example="callout-with-grid"></design-land-example-viewer-container>
105
+ <daff-docs-example-viewer example="callout-with-grid"></daff-docs-example-viewer>
package/card/README.md CHANGED
@@ -4,11 +4,7 @@ A card is a flexible content container used to group related information and act
4
4
  ## Overview
5
5
  Cards help organize and present information in a clear and visually appealing way. There are two styles: **default (filled)** and **stroked**, and can include images, text, lists, actions, or even other components.
6
6
 
7
- **Default (filled) card**
8
- <design-land-example-viewer-container example="basic-card"></design-land-example-viewer-container>
9
-
10
- **Stroked card**
11
- <design-land-example-viewer-container example="stroked-card"></design-land-example-viewer-container>
7
+ <daff-docs-example-viewer example="basic-cards"></daff-docs-example-viewer>
12
8
 
13
9
  ## Best practices
14
10
 
@@ -19,8 +15,7 @@ Cards help organize and present information in a clear and visually appealing wa
19
15
 
20
16
  ## Usage
21
17
 
22
- ### Within a standalone component
23
- Import the card style(s) you need into a standalone component:
18
+ Import the card style(s) you need into your component:
24
19
 
25
20
  Available imports:
26
21
  - Default (filled) cards: `DAFF_CARD_COMPONENTS`
@@ -40,55 +35,13 @@ import { DAFF_CARD_COMPONENTS } from '@daffodil/design/card';
40
35
  export class CustomComponent {}
41
36
  ```
42
37
 
43
- ### Within a module (deprecated)
44
- To use card in a module, import `DaffCardModule` into your custom module:
45
-
46
- ```ts
47
- import { NgModule } from '@angular/core';
48
- import { DaffCardModule } from '@daffodil/design/card';
49
- import { CustomComponent } from './custom.component';
50
-
51
- @NgModule({
52
- declarations: [
53
- CustomComponent,
54
- ],
55
- exports: [
56
- CustomComponent,
57
- ],
58
- imports: [
59
- DaffCardModule,
60
- ],
61
- })
62
- export class CustomComponentModule { }
63
- ```
64
-
65
- > This method is deprecated. It's recommended to update all custom components to standalone.
38
+ > **Deprecation notice:**
39
+ >
40
+ > `DaffCalloutModule` is deprecated. Use the standalone component imports instead.
66
41
 
67
42
  ## Anatomy
68
- A card consists of the following components, displayed in the order listed:
69
-
70
- ### Container
71
- **`<daff-card>`** or **`<daff-stroked-card>`**: The main wrapper that holds all card content.
72
-
73
- ### Image
74
- **`[daffCardImage]`**: Image element at the top of the card.
75
-
76
- ### Icon
77
- **`[daffCardIcon]`**: Displays a visual or branding element. Avoid using for interactive icons.
78
-
79
- ### Tagline
80
- **`[daffCardTagline]`**: Short phrase that provides quick context.
81
-
82
- ### Title
83
- **`[daffCardTitle]`**: The primary heading of the card.
84
-
85
- ### Content
86
- **`[daffCardContent]`**: Flexible container for body text or custom content. It's unstyled except for spacing and should only be used once per card.
43
+ A card is composed of a container, image, icon, tagline, title, content, and actions, displayed in the order listed:
87
44
 
88
- ### Actions
89
- **`[daffCardActions]`**: Container for buttons or links, positioned at the bottom.
90
-
91
- ### Basic structure
92
45
  ```html
93
46
  <daff-card>
94
47
  <img daffCardImage src="/product.jpg" alt="Product image">
@@ -107,6 +60,27 @@ A card consists of the following components, displayed in the order listed:
107
60
  </daff-card>
108
61
  ```
109
62
 
63
+ **`<daff-card>`** or **`<daff-stroked-card>`**\
64
+ The wrapper component that holds all card content.
65
+
66
+ **`[daffCardImage]`**\
67
+ Image element at the top of the card.
68
+
69
+ **`[daffCardIcon]`**\
70
+ Displays a visual or branding element. Avoid using for interactive icons.
71
+
72
+ **`[daffCardTagline]`**\
73
+ Short phrase that provides quick context.
74
+
75
+ **`[daffCardTitle]`**\
76
+ The primary heading of the card.
77
+
78
+ **`[daffCardContent]`**\
79
+ Flexible container for body text or custom content. It's unstyled except for spacing and **should only be used once per card**.
80
+
81
+ **`[daffCardActions]`**\
82
+ Container for buttons or links, positioned at the bottom.
83
+
110
84
  ## Features
111
85
 
112
86
  ### Interactive card
@@ -114,19 +88,20 @@ An interactive card turns the entire card into a clickable area that navigates t
114
88
 
115
89
  To create an interactive card, apply the component selector to an `<a>` element. All card styles support interactive behavior.
116
90
 
117
- <design-land-example-viewer-container example="linkable-card"></design-land-example-viewer-container>
91
+ <daff-docs-example-viewer example="linkable-card"></daff-docs-example-viewer>
92
+
93
+ ### Colors
94
+ Cards default to a light gray background. Use the `color` property to change a card's color.
95
+
96
+ <daff-docs-example-viewer example="card-theming"></daff-docs-example-viewer>
97
+
118
98
 
119
99
  ### Elevation
120
100
  Use the `elevated` property to add shadows to cards.
121
101
 
122
- <design-land-example-viewer-container example="elevated-card"></design-land-example-viewer-container>
102
+ <daff-docs-example-viewer example="elevated-card"></daff-docs-example-viewer>
123
103
 
124
104
  ### Orientation
125
105
  Use the `orientation` property to stack card content either `vertical` (default) or `horizontal`. Horizontal cards automatically switch to vertical on smaller screens.
126
106
 
127
- <design-land-example-viewer-container example="card-orientation"></design-land-example-viewer-container>
128
-
129
- ### Colors
130
- Cards default to a light gray background. Use the `color` property to change a card's color.
131
-
132
- <design-land-example-viewer-container example="card-theming"></design-land-example-viewer-container>
107
+ <daff-docs-example-viewer example="card-orientation"></daff-docs-example-viewer>
@@ -1,32 +1,14 @@
1
1
  # Container
2
- Container is a basic structural element that restricts page content to a specific maximum width.
2
+ Container is a structural element that restricts content to a maximum width.
3
3
 
4
4
  ## Overview
5
5
  Container comes with pre-defined sizes that work well with common breakpoints. It's not responsible for providing padding or margin.
6
6
 
7
- ## Size
8
- The size of a container can be defined by using the `size` property. There is no default size set.
9
-
10
- Supported sizes: `xs | sm | md | lg | xl`
11
-
12
- | Description | Max Width | Value |
13
- | ----------- | --------- | ------ |
14
- | Extra Small | 640px | xs |
15
- | Small | 800px | sm |
16
- | Medium | 1040px | md |
17
- | Large | 1340px | lg |
18
- | Extra Large | 1920px | xl |
19
-
20
- <design-land-example-viewer-container example="container-sizes"></design-land-example-viewer-container>
21
-
22
-
23
7
  ## Usage
24
-
25
8
  ### Within a standalone component
26
9
  To use container in a standalone component, import `DAFF_CONTAINER_COMPONENTS` directly into your custom component:
27
10
 
28
11
  ```ts
29
-
30
12
  import { DAFF_CONTAINER_COMPONENTS } from '@daffodil/design/container';
31
13
 
32
14
  @Component({
@@ -40,11 +22,11 @@ export class CustomComponent {}
40
22
  ```
41
23
 
42
24
  ### Within a module (deprecated)
43
- To use container in a module, import `DaffCalloutModule` into your custom module:
25
+ To use container in a module, import `DaffContainerModule` into your custom module:
44
26
 
45
27
  ```ts
46
28
  import { NgModule } from '@angular/core';
47
- import { DaffCalloutModule } from '@daffodil/design/container';
29
+ import { DaffContainerModule } from '@daffodil/design/container';
48
30
  import { CustomComponent } from './custom.component';
49
31
 
50
32
  @NgModule({
@@ -55,10 +37,23 @@ import { CustomComponent } from './custom.component';
55
37
  CustomComponent,
56
38
  ],
57
39
  imports: [
58
- DaffCalloutModule,
40
+ DaffContainerModule,
59
41
  ],
60
42
  })
61
43
  export class CustomComponentModule { }
62
44
  ```
63
45
 
64
- > This method is deprecated. It's recommended to update all custom components to standalone.
46
+ > **Warning**
47
+ >
48
+ > This method is deprecated. It's recommended to update all custom components to standalone.
49
+
50
+ ## Sizes
51
+ Set a size on container using the `size` property. There is no default size.
52
+
53
+ | Size | Max Width |
54
+ | ----------- | --------- |
55
+ | `xs` | 640px |
56
+ | `sm` | 800px |
57
+ | `md` | 1040px |
58
+ | `lg` | 1340px |
59
+ | `xl` | 1920px |
@@ -22,10 +22,10 @@ import { DaffArticleEncapsulatedDirective, DaffOpenableDirective, DaffDisableabl
22
22
  * ```
23
23
  */
24
24
  class DaffAccordionComponent {
25
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: DaffAccordionComponent, isStandalone: true, selector: "daff-accordion", hostDirectives: [{ directive: i1.DaffArticleEncapsulatedDirective }], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: DaffAccordionComponent, isStandalone: true, selector: "daff-accordion", hostDirectives: [{ directive: i1.DaffArticleEncapsulatedDirective }], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionComponent, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'daff-accordion', template: '<ng-content></ng-content>', hostDirectives: [{
31
31
  directive: DaffArticleEncapsulatedDirective,
@@ -102,10 +102,10 @@ class DaffAccordionItemComponent {
102
102
  toggle() {
103
103
  this.openDirective.toggle();
104
104
  }
105
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionItemComponent, deps: [{ token: i1.DaffOpenableDirective }, { token: i1.DaffDisableableDirective }], target: i0.ɵɵFactoryTarget.Component }); }
106
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.1", type: DaffAccordionItemComponent, isStandalone: true, selector: "daff-accordion-item", inputs: { itemId: "itemId", contentId: "contentId", initiallyExpanded: "initiallyExpanded" }, host: { classAttribute: "daff-accordion-item" }, hostDirectives: [{ directive: i1.DaffOpenableDirective, outputs: ["toggled", "toggled"] }, { directive: i1.DaffDisableableDirective, inputs: ["disabled", "disabled"] }], ngImport: i0, template: "<button type=\"button\" class=\"daff-accordion-item__header\"\n (click)=\"toggle()\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"contentId\"\n [id]=\"itemId\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n</button>\n<div class=\"daff-accordion-item__content\" [id]=\"contentId\" [attr.aria-labelledby]=\"itemId\" role=\"region\">\n <ng-content></ng-content>\n</div>", styles: [".daff-accordion-item{display:block}.daff-accordion-item__header{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;appearance:none;justify-content:space-between;gap:.5rem;background:none;border:none;inline-size:100%;margin:0;padding:1rem;position:relative}.daff-accordion-item__header:after{content:\"\";position:absolute;top:48%;right:1rem;display:inline-block;border-right:2px solid currentColor;border-bottom:2px solid currentColor;width:.5rem;height:.5rem;transform:translateY(-50%) rotate(45deg);transition:transform .15s}.daff-accordion-item.daff-open .daff-accordion-item__header:after{top:56%;transform:translateY(-50%) rotate(225deg)}.daff-accordion-item.daff-open .daff-accordion-item__content{height:auto;opacity:1;padding:0 1rem 1rem;visibility:visible}.daff-accordion-item.daff-disabled .daff-accordion-item__header{cursor:not-allowed;opacity:.5}.daff-accordion-item__title{font-size:1rem;line-height:1.5rem;font-weight:500;inline-size:100%;margin:0;padding:0 2rem 0 0;text-align:start}.daff-accordion-item__content{height:0;opacity:0;visibility:hidden;transition:opacity .15s ease-in}.daff-accordion-item__content>p{margin:0 0 1rem}.daff-accordion-item__content>p:last-child{margin:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
105
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionItemComponent, deps: [{ token: i1.DaffOpenableDirective }, { token: i1.DaffDisableableDirective }], target: i0.ɵɵFactoryTarget.Component }); }
106
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: DaffAccordionItemComponent, isStandalone: true, selector: "daff-accordion-item", inputs: { itemId: "itemId", contentId: "contentId", initiallyExpanded: "initiallyExpanded" }, host: { classAttribute: "daff-accordion-item" }, hostDirectives: [{ directive: i1.DaffOpenableDirective, outputs: ["toggled", "toggled"] }, { directive: i1.DaffDisableableDirective, inputs: ["disabled", "disabled"] }], ngImport: i0, template: "<button type=\"button\" class=\"daff-accordion-item__header\"\n (click)=\"toggle()\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"contentId\"\n [id]=\"itemId\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n</button>\n<div class=\"daff-accordion-item__content\" [id]=\"contentId\" [attr.aria-labelledby]=\"itemId\" role=\"region\">\n <ng-content></ng-content>\n</div>", styles: [".daff-accordion-item{display:block}.daff-accordion-item__header{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;appearance:none;justify-content:space-between;gap:.5rem;background:none;border:none;inline-size:100%;margin:0;padding:1rem;position:relative}.daff-accordion-item__header:after{content:\"\";position:absolute;top:48%;right:1rem;display:inline-block;border-right:2px solid currentColor;border-bottom:2px solid currentColor;width:.5rem;height:.5rem;transform:translateY(-50%) rotate(45deg);transition:transform .15s}.daff-accordion-item.daff-open .daff-accordion-item__header:after{top:56%;transform:translateY(-50%) rotate(225deg)}.daff-accordion-item.daff-open .daff-accordion-item__content{height:auto;opacity:1;padding:0 1rem 1rem;visibility:visible}.daff-accordion-item.daff-disabled .daff-accordion-item__header{cursor:not-allowed;opacity:.5}.daff-accordion-item__title{font-size:1rem;line-height:1.5rem;font-weight:500;inline-size:100%;margin:0;padding:0 2rem 0 0;text-align:start}.daff-accordion-item__content{height:0;opacity:0;visibility:hidden;transition:opacity .15s ease-in}.daff-accordion-item__content>p{margin:0 0 1rem}.daff-accordion-item__content>p:last-child{margin:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
107
107
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionItemComponent, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionItemComponent, decorators: [{
109
109
  type: Component,
110
110
  args: [{ selector: 'daff-accordion-item', hostDirectives: [
111
111
  {
@@ -137,10 +137,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
137
137
  * ```
138
138
  */
139
139
  class DaffAccordionItemTitleDirective {
140
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionItemTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
141
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.1", type: DaffAccordionItemTitleDirective, isStandalone: true, selector: "[daffAccordionItemTitle]", host: { classAttribute: "daff-accordion-item__title" }, ngImport: i0 }); }
140
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionItemTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
141
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.18", type: DaffAccordionItemTitleDirective, isStandalone: true, selector: "[daffAccordionItemTitle]", host: { classAttribute: "daff-accordion-item__title" }, ngImport: i0 }); }
142
142
  }
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionItemTitleDirective, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionItemTitleDirective, decorators: [{
144
144
  type: Directive,
145
145
  args: [{
146
146
  selector: '[daffAccordionItemTitle]',
@@ -154,16 +154,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
154
154
  * @deprecated in favor of {@link DAFF_ACCORDION_COMPONENTS}. Deprecated in version 0.78.0. Will be removed in version 1.0.0.
155
155
  */
156
156
  class DaffAccordionModule {
157
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
158
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionModule, imports: [CommonModule,
157
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
158
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionModule, imports: [CommonModule,
159
159
  DaffAccordionComponent,
160
160
  DaffAccordionItemComponent,
161
161
  DaffAccordionItemTitleDirective], exports: [DaffAccordionComponent,
162
162
  DaffAccordionItemComponent,
163
163
  DaffAccordionItemTitleDirective] }); }
164
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionModule, imports: [CommonModule] }); }
164
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionModule, imports: [CommonModule] }); }
165
165
  }
166
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: DaffAccordionModule, decorators: [{
166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DaffAccordionModule, decorators: [{
167
167
  type: NgModule,
168
168
  args: [{
169
169
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-accordion.mjs","sources":["../../../libs/design/accordion/src/accordion/accordion/accordion.component.ts","../../../libs/design/accordion/src/accordion/accordion-item/accordion-item.component.ts","../../../libs/design/accordion/src/accordion/accordion-item/accordion-item.component.html","../../../libs/design/accordion/src/accordion/accordion-item-title/accordion-item-title.directive.ts","../../../libs/design/accordion/src/accordion.module.ts","../../../libs/design/accordion/src/accordion.ts","../../../libs/design/accordion/src/daffodil-design-accordion.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DaffArticleEncapsulatedDirective } from '@daffodil/design';\n\n/**\n * Groups accordion items.\n *\n * @example\n * ```html\n * <daff-accordion>\n * <daff-accordion-item>\n * <div daffAccordionItemTitle>Title</div>\n * <div>Expandable content</div>\n * </daff-accordion-item>\n * <daff-accordion-item>\n * <div daffAccordionItemTitle>Title</div>\n * <div>Expandable content</div>\n * </daff-accordion-item>\n * </daff-accordion>\n * ```\n */\n@Component({\n selector: 'daff-accordion',\n template: '<ng-content></ng-content>',\n styles: [`\n :host {\n display: block;\n }\n `],\n hostDirectives: [{\n directive: DaffArticleEncapsulatedDirective,\n }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffAccordionComponent {}\n","/* eslint-disable quote-props */\nimport {\n Component,\n Input,\n OnInit,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\nimport {\n DaffDisableableDirective,\n DaffOpenable,\n DaffOpenableDirective,\n} from '@daffodil/design';\n\n\nlet daffAccordionItemId = 0;\nlet daffAccordionItemContentId = 0;\n\n/**\n * Contains the title and collapsible content. Handles expansion and collapse on user interaction. All `<daff-accordion-item>`s should be grouped inside a `<daff-accordion>`.\n *\n * @example\n * ```html\n * <daff-accordion-item>\n * <div daffAccordionItemTitle>Title</div>\n * <div>Accordion content</div>\n * </daff-accordion-item>\n * ```\n */\n@Component({\n selector: 'daff-accordion-item',\n templateUrl: './accordion-item.component.html',\n styleUrls: ['./accordion-item.component.scss'],\n hostDirectives: [\n {\n directive: DaffOpenableDirective,\n outputs: ['toggled'],\n },\n {\n directive: DaffDisableableDirective,\n inputs: ['disabled'],\n },\n ],\n host: {\n 'class': 'daff-accordion-item',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffAccordionItemComponent implements OnInit, DaffOpenable {\n /**\n * The unique id of an accordion item. Defaults to an autogenerated value.\n */\n @Input() itemId: string = 'daff-accordion-item' + '-' + ++daffAccordionItemId;\n\n /**\n * The unique id of an accordion item content. Defaults to an autogenerated value.\n */\n @Input() contentId: string = 'daff-accordion-item-content' + '-' + ++daffAccordionItemContentId;\n\n /**\n * Whether or not an accordion item is initially expanded by default.\n */\n @Input() initiallyExpanded = false;\n\n /**\n * @docs-private\n *\n * Internal function to access the disabled property of the DaffDisableableDirective\n */\n get disabled() {\n return this.disabledDirective.disabled;\n }\n\n constructor(\n private openDirective: DaffOpenableDirective,\n private disabledDirective: DaffDisableableDirective,\n ) {\n this.openDirective.stateless = false;\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this.openDirective.open = this.initiallyExpanded ? this.initiallyExpanded : this.openDirective.open;\n }\n\n /**\n * @docs-private\n */\n get open() {\n return this.openDirective.open;\n }\n\n /**\n * Reveals the contents of the accordion item.\n */\n reveal() {\n this.openDirective.reveal();\n }\n\n /**\n * Hides the contents of the accordion item.\n */\n hide() {\n this.openDirective.hide();\n }\n\n /**\n * Toggles the visibility of the contents of the accordion item.\n */\n toggle() {\n this.openDirective.toggle();\n }\n}\n","<button type=\"button\" class=\"daff-accordion-item__header\"\n (click)=\"toggle()\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"contentId\"\n [id]=\"itemId\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n</button>\n<div class=\"daff-accordion-item__content\" [id]=\"contentId\" [attr.aria-labelledby]=\"itemId\" role=\"region\">\n <ng-content></ng-content>\n</div>","/* eslint-disable quote-props */\nimport { Directive } from '@angular/core';\n\n/**\n * Used to provide a high level overview of the panel content. It should be wrapped by a `<daff-accordion-item>`.\n *\n * @example\n * ```html\n * <div daffAccordionItemTitle>Title</div>\n * ```\n */\n@Directive({\n selector: '[daffAccordionItemTitle]',\n host: {\n 'class': 'daff-accordion-item__title',\n },\n})\nexport class DaffAccordionItemTitleDirective {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffAccordionComponent } from './accordion/accordion/accordion.component';\nimport { DaffAccordionItemComponent } from './accordion/accordion-item/accordion-item.component';\nimport { DaffAccordionItemTitleDirective } from './accordion/accordion-item-title/accordion-item-title.directive';\n\n/**\n * @deprecated in favor of {@link DAFF_ACCORDION_COMPONENTS}. Deprecated in version 0.78.0. Will be removed in version 1.0.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n ],\n exports: [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n ],\n})\nexport class DaffAccordionModule { }\n","import { DaffAccordionComponent } from './accordion/accordion/accordion.component';\nimport { DaffAccordionItemComponent } from './accordion/accordion-item/accordion-item.component';\nimport { DaffAccordionItemTitleDirective } from './accordion/accordion-item-title/accordion-item-title.directive';\n\n/**\n * @docs-private\n *\n * `DAFF_ACCORDION_COMPONENTS` imports all the available components and directives related to the component.\n */\nexport const DAFF_ACCORDION_COMPONENTS = <const> [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-accordion.mjs","sources":["../../../libs/design/accordion/src/accordion/accordion/accordion.component.ts","../../../libs/design/accordion/src/accordion/accordion-item/accordion-item.component.ts","../../../libs/design/accordion/src/accordion/accordion-item/accordion-item.component.html","../../../libs/design/accordion/src/accordion/accordion-item-title/accordion-item-title.directive.ts","../../../libs/design/accordion/src/accordion.module.ts","../../../libs/design/accordion/src/accordion.ts","../../../libs/design/accordion/src/daffodil-design-accordion.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DaffArticleEncapsulatedDirective } from '@daffodil/design';\n\n/**\n * Groups accordion items.\n *\n * @example\n * ```html\n * <daff-accordion>\n * <daff-accordion-item>\n * <div daffAccordionItemTitle>Title</div>\n * <div>Expandable content</div>\n * </daff-accordion-item>\n * <daff-accordion-item>\n * <div daffAccordionItemTitle>Title</div>\n * <div>Expandable content</div>\n * </daff-accordion-item>\n * </daff-accordion>\n * ```\n */\n@Component({\n selector: 'daff-accordion',\n template: '<ng-content></ng-content>',\n styles: [`\n :host {\n display: block;\n }\n `],\n hostDirectives: [{\n directive: DaffArticleEncapsulatedDirective,\n }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n\nexport class DaffAccordionComponent {}\n","/* eslint-disable quote-props */\nimport {\n Component,\n Input,\n OnInit,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\nimport {\n DaffDisableable,\n DaffDisableableDirective,\n DaffOpenable,\n DaffOpenableDirective,\n} from '@daffodil/design';\n\nlet daffAccordionItemId = 0;\nlet daffAccordionItemContentId = 0;\n\n/**\n * Contains the title and collapsible content. Handles expansion and collapse on user interaction. All `<daff-accordion-item>`s should be grouped inside a `<daff-accordion>`.\n *\n * @example\n * ```html\n * <daff-accordion-item>\n * <div daffAccordionItemTitle>Title</div>\n * <div>Accordion content</div>\n * </daff-accordion-item>\n * ```\n */\n@Component({\n selector: 'daff-accordion-item',\n templateUrl: './accordion-item.component.html',\n styleUrls: ['./accordion-item.component.scss'],\n hostDirectives: [\n {\n directive: DaffOpenableDirective,\n outputs: ['toggled'],\n },\n {\n directive: DaffDisableableDirective,\n inputs: ['disabled'],\n },\n ],\n host: {\n 'class': 'daff-accordion-item',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffAccordionItemComponent implements OnInit, DaffOpenable, DaffDisableable {\n /**\n * The unique id of an accordion item. Defaults to an autogenerated value.\n */\n @Input() itemId: string = 'daff-accordion-item' + '-' + ++daffAccordionItemId;\n\n /**\n * The unique id of an accordion item content. Defaults to an autogenerated value.\n */\n @Input() contentId: string = 'daff-accordion-item-content' + '-' + ++daffAccordionItemContentId;\n\n /**\n * Whether or not an accordion item is initially expanded by default.\n */\n @Input() initiallyExpanded = false;\n\n /**\n * @docs-private\n *\n * Internal function to access the disabled property of the DaffDisableableDirective\n */\n get disabled() {\n return this.disabledDirective.disabled;\n }\n\n constructor(\n private openDirective: DaffOpenableDirective,\n private disabledDirective: DaffDisableableDirective,\n ) {\n this.openDirective.stateless = false;\n }\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this.openDirective.open = this.initiallyExpanded ? this.initiallyExpanded : this.openDirective.open;\n }\n\n /**\n * @docs-private\n */\n get open() {\n return this.openDirective.open;\n }\n\n /**\n * Reveals the contents of the accordion item.\n */\n reveal() {\n this.openDirective.reveal();\n }\n\n /**\n * Hides the contents of the accordion item.\n */\n hide() {\n this.openDirective.hide();\n }\n\n /**\n * Toggles the visibility of the contents of the accordion item.\n */\n toggle() {\n this.openDirective.toggle();\n }\n}\n","<button type=\"button\" class=\"daff-accordion-item__header\"\n (click)=\"toggle()\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"contentId\"\n [id]=\"itemId\"\n [disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\">\n <ng-content select=\"[daffAccordionItemTitle]\"></ng-content>\n</button>\n<div class=\"daff-accordion-item__content\" [id]=\"contentId\" [attr.aria-labelledby]=\"itemId\" role=\"region\">\n <ng-content></ng-content>\n</div>","/* eslint-disable quote-props */\nimport { Directive } from '@angular/core';\n\n/**\n * Used to provide a high level overview of the panel content. It should be wrapped by a `<daff-accordion-item>`.\n *\n * @example\n * ```html\n * <div daffAccordionItemTitle>Title</div>\n * ```\n */\n@Directive({\n selector: '[daffAccordionItemTitle]',\n host: {\n 'class': 'daff-accordion-item__title',\n },\n})\nexport class DaffAccordionItemTitleDirective {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffAccordionComponent } from './accordion/accordion/accordion.component';\nimport { DaffAccordionItemComponent } from './accordion/accordion-item/accordion-item.component';\nimport { DaffAccordionItemTitleDirective } from './accordion/accordion-item-title/accordion-item-title.directive';\n\n/**\n * @deprecated in favor of {@link DAFF_ACCORDION_COMPONENTS}. Deprecated in version 0.78.0. Will be removed in version 1.0.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n ],\n exports: [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n ],\n})\nexport class DaffAccordionModule { }\n","import { DaffAccordionComponent } from './accordion/accordion/accordion.component';\nimport { DaffAccordionItemComponent } from './accordion/accordion-item/accordion-item.component';\nimport { DaffAccordionItemTitleDirective } from './accordion/accordion-item-title/accordion-item-title.directive';\n\n/**\n * @docs-private\n *\n * `DAFF_ACCORDION_COMPONENTS` imports all the available components and directives related to the component.\n */\nexport const DAFF_ACCORDION_COMPONENTS = <const> [\n DaffAccordionComponent,\n DaffAccordionItemComponent,\n DaffAccordionItemTitleDirective,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}