@arbor-education/design-system.components 0.21.0 → 0.22.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 (127) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/component-library.md +15 -14
  3. package/dist/components/articleCard/ArticleCard.d.ts +2 -2
  4. package/dist/components/articleCard/ArticleCard.d.ts.map +1 -1
  5. package/dist/components/articleCard/ArticleCard.js +3 -3
  6. package/dist/components/articleCard/ArticleCard.js.map +1 -1
  7. package/dist/components/articleCard/ArticleCard.stories.d.ts +11 -3
  8. package/dist/components/articleCard/ArticleCard.stories.d.ts.map +1 -1
  9. package/dist/components/articleCard/ArticleCard.stories.js +16 -11
  10. package/dist/components/articleCard/ArticleCard.stories.js.map +1 -1
  11. package/dist/components/iconText/IconText.d.ts +43 -0
  12. package/dist/components/iconText/IconText.d.ts.map +1 -0
  13. package/dist/components/iconText/IconText.js +29 -0
  14. package/dist/components/iconText/IconText.js.map +1 -0
  15. package/dist/components/{icoText/IcoText.stories.d.ts → iconText/IconText.stories.d.ts} +8 -9
  16. package/dist/components/iconText/IconText.stories.d.ts.map +1 -0
  17. package/dist/components/{icoText/IcoText.stories.js → iconText/IconText.stories.js} +81 -81
  18. package/dist/components/iconText/IconText.stories.js.map +1 -0
  19. package/dist/components/iconText/IconText.test.d.ts +2 -0
  20. package/dist/components/iconText/IconText.test.d.ts.map +1 -0
  21. package/dist/components/{icoText/IcoText.test.js → iconText/IconText.test.js} +6 -6
  22. package/dist/components/iconText/IconText.test.js.map +1 -0
  23. package/dist/components/modal/Modal.d.ts +1 -0
  24. package/dist/components/modal/Modal.d.ts.map +1 -1
  25. package/dist/components/modal/Modal.js +2 -2
  26. package/dist/components/modal/Modal.js.map +1 -1
  27. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.js +2 -2
  28. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.js.map +1 -1
  29. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.test.js +6 -0
  30. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.test.js.map +1 -1
  31. package/dist/components/tag/Tag.d.ts +14 -1
  32. package/dist/components/tag/Tag.d.ts.map +1 -1
  33. package/dist/components/tag/Tag.js +9 -3
  34. package/dist/components/tag/Tag.js.map +1 -1
  35. package/dist/components/tag/Tag.stories.d.ts +1 -1
  36. package/dist/components/tag/Tag.stories.d.ts.map +1 -1
  37. package/dist/components/tag/Tag.stories.js +3 -3
  38. package/dist/components/tag/Tag.stories.js.map +1 -1
  39. package/dist/components/tag/Tag.test.js +36 -5
  40. package/dist/components/tag/Tag.test.js.map +1 -1
  41. package/dist/components/tagList/TagList.d.ts +49 -0
  42. package/dist/components/tagList/TagList.d.ts.map +1 -0
  43. package/dist/components/tagList/TagList.js +114 -0
  44. package/dist/components/tagList/TagList.js.map +1 -0
  45. package/dist/components/tagList/TagList.stories.d.ts +130 -0
  46. package/dist/components/tagList/TagList.stories.d.ts.map +1 -0
  47. package/dist/components/tagList/TagList.stories.js +443 -0
  48. package/dist/components/tagList/TagList.stories.js.map +1 -0
  49. package/dist/components/{icoText/IcoText.test.d.ts → tagList/TagList.test.d.ts} +1 -1
  50. package/dist/components/tagList/TagList.test.d.ts.map +1 -0
  51. package/dist/components/tagList/TagList.test.js +246 -0
  52. package/dist/components/tagList/TagList.test.js.map +1 -0
  53. package/dist/components/tagList/useTagListCollapsedLayout.d.ts +19 -0
  54. package/dist/components/tagList/useTagListCollapsedLayout.d.ts.map +1 -0
  55. package/dist/components/tagList/useTagListCollapsedLayout.js +48 -0
  56. package/dist/components/tagList/useTagListCollapsedLayout.js.map +1 -0
  57. package/dist/components/tagList/useVisibleTags.d.ts +18 -0
  58. package/dist/components/tagList/useVisibleTags.d.ts.map +1 -0
  59. package/dist/components/tagList/useVisibleTags.js +41 -0
  60. package/dist/components/tagList/useVisibleTags.js.map +1 -0
  61. package/dist/index.css +130 -10
  62. package/dist/index.css.map +1 -1
  63. package/dist/index.d.ts +3 -1
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +2 -1
  66. package/dist/index.js.map +1 -1
  67. package/dist/utils/hooks/useElementWidth.d.ts +2 -0
  68. package/dist/utils/hooks/useElementWidth.d.ts.map +1 -0
  69. package/dist/utils/hooks/useElementWidth.js +30 -0
  70. package/dist/utils/hooks/useElementWidth.js.map +1 -0
  71. package/dist/utils/hooks/useMeasuredChildWidths.d.ts +8 -0
  72. package/dist/utils/hooks/useMeasuredChildWidths.d.ts.map +1 -0
  73. package/dist/utils/hooks/useMeasuredChildWidths.js +26 -0
  74. package/dist/utils/hooks/useMeasuredChildWidths.js.map +1 -0
  75. package/dist/utils/hooks/useRovingFocus.d.ts +18 -0
  76. package/dist/utils/hooks/useRovingFocus.d.ts.map +1 -0
  77. package/dist/utils/hooks/useRovingFocus.js +130 -0
  78. package/dist/utils/hooks/useRovingFocus.js.map +1 -0
  79. package/dist/utils/hooks/useRovingFocus.test.d.ts +2 -0
  80. package/dist/utils/hooks/useRovingFocus.test.d.ts.map +1 -0
  81. package/dist/utils/hooks/useRovingFocus.test.js +59 -0
  82. package/dist/utils/hooks/useRovingFocus.test.js.map +1 -0
  83. package/dist/utils/spacedWidths.d.ts +3 -0
  84. package/dist/utils/spacedWidths.d.ts.map +1 -0
  85. package/dist/utils/spacedWidths.js +28 -0
  86. package/dist/utils/spacedWidths.js.map +1 -0
  87. package/dist/utils/spacedWidths.test.d.ts +2 -0
  88. package/dist/utils/spacedWidths.test.d.ts.map +1 -0
  89. package/dist/utils/spacedWidths.test.js +17 -0
  90. package/dist/utils/spacedWidths.test.js.map +1 -0
  91. package/package.json +1 -1
  92. package/src/components/articleCard/ArticleCard.stories.tsx +17 -12
  93. package/src/components/articleCard/ArticleCard.tsx +9 -9
  94. package/src/components/{icoText/IcoText.stories.tsx → iconText/IconText.stories.tsx} +112 -112
  95. package/src/components/{icoText/IcoText.test.tsx → iconText/IconText.test.tsx} +10 -10
  96. package/src/components/{icoText/IcoText.tsx → iconText/IconText.tsx} +27 -20
  97. package/src/components/modal/Modal.tsx +5 -1
  98. package/src/components/table/cellRenderers/SelectDropdownCellRenderer.test.tsx +12 -0
  99. package/src/components/table/cellRenderers/SelectDropdownCellRenderer.tsx +2 -2
  100. package/src/components/tag/Tag.stories.tsx +4 -4
  101. package/src/components/tag/Tag.test.tsx +62 -5
  102. package/src/components/tag/Tag.tsx +61 -3
  103. package/src/components/tag/tag.scss +80 -9
  104. package/src/components/tagList/TagList.stories.tsx +564 -0
  105. package/src/components/tagList/TagList.test.tsx +342 -0
  106. package/src/components/tagList/TagList.tsx +296 -0
  107. package/src/components/tagList/tagList.scss +56 -0
  108. package/src/components/tagList/useTagListCollapsedLayout.ts +83 -0
  109. package/src/components/tagList/useVisibleTags.ts +74 -0
  110. package/src/index.scss +2 -1
  111. package/src/index.ts +3 -1
  112. package/src/tokens.scss +2 -1
  113. package/src/utils/hooks/useElementWidth.ts +39 -0
  114. package/src/utils/hooks/useMeasuredChildWidths.ts +39 -0
  115. package/src/utils/hooks/useRovingFocus.test.tsx +105 -0
  116. package/src/utils/hooks/useRovingFocus.ts +163 -0
  117. package/src/utils/spacedWidths.test.ts +20 -0
  118. package/src/utils/spacedWidths.ts +37 -0
  119. package/dist/components/icoText/IcoText.d.ts +0 -37
  120. package/dist/components/icoText/IcoText.d.ts.map +0 -1
  121. package/dist/components/icoText/IcoText.js +0 -29
  122. package/dist/components/icoText/IcoText.js.map +0 -1
  123. package/dist/components/icoText/IcoText.stories.d.ts.map +0 -1
  124. package/dist/components/icoText/IcoText.stories.js.map +0 -1
  125. package/dist/components/icoText/IcoText.test.d.ts.map +0 -1
  126. package/dist/components/icoText/IcoText.test.js.map +0 -1
  127. /package/src/components/{icoText/icoText.scss → iconText/iconText.scss} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.22.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#190](https://github.com/arbor-education/design-system.components/pull/190) [`a966a27`](https://github.com/arbor-education/design-system.components/commit/a966a2737211e157397a6f9c7cd3bc5ff0fa805b) Thanks [@danielpeplow](https://github.com/danielpeplow)! - Add `TagList` for shared tag collections with overflow collapse, roving keyboard focus, and remove focus recovery. Export `TagList` from the package entry.
8
+
9
+ Expand `Tag` interactive/action/remove wiring for filter and list UIs.
10
+
11
+ **Breaking:** `Tag` height is now 28px via new `--size-control-2xs` (`--tag-height` was 32px / `--size-control-xsmall`). This aligns tags with the updated control density; consumers relying on 32px tag height should expect a slightly shorter control.
12
+
13
+ - [#190](https://github.com/arbor-education/design-system.components/pull/190) [`a966a27`](https://github.com/arbor-education/design-system.components/commit/a966a2737211e157397a6f9c7cd3bc5ff0fa805b) Thanks [@danielpeplow](https://github.com/danielpeplow)! - Rename `IcoText` to `IconText` in the public component API and file paths, and add the optional `contentId` prop to `Modal` so external triggers can target dialog content with `aria-controls`.
14
+
15
+ ## 0.21.1
16
+
17
+ ### Patch Changes
18
+
19
+ - [#194](https://github.com/arbor-education/design-system.components/pull/194) [`b8b82c2`](https://github.com/arbor-education/design-system.components/commit/b8b82c2da12f024fde5910ab5e1b4cc13d17566a) Thanks [@MarkFrancisArbor](https://github.com/MarkFrancisArbor)! - MIS-71069 update the displayed label when the value prop changes
20
+
3
21
  ## 0.21.0
4
22
 
5
23
  ### Minor Changes
@@ -27,7 +27,7 @@ File: `src/tokens.scss` — Auto-generated CSS custom properties on `:root`.
27
27
  | **Icon sizes** | `--icon-size-xsmall` (12px), `--icon-size-small` (16px), `--icon-size-medium` (24px) |
28
28
  | **Focus** | `--focus-color-focus: var(--color-brand-500)`, `--focus-border: 3px` |
29
29
  | **Avatar sizes** | `--avatar-small-size` (1.25rem), `--avatar-medium-size` (2rem), `--avatar-large-size` (3rem), `--avatar-extra-large-size` (6rem) |
30
- | **Control sizes** | `--size-control-xsmall` → `--size-control-xlarge` (2rem–5rem) |
30
+ | **Control sizes** | `--size-control-2xs` → `--size-control-xlarge` (1.75rem–5rem) |
31
31
 
32
32
  Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--button-primary-default-color-background`, `--tag-neutral-color-text`).
33
33
 
@@ -220,7 +220,7 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
220
220
  | `title` | `ReactNode` | No | — | Card heading |
221
221
  | `paragraph` | `ReactNode` | No | — | Descriptive text |
222
222
  | `icon` | `IconName` | No | — | Leading icon |
223
- | `iconColor` | `IcoTextIconProps['color']` | No | — | Icon color |
223
+ | `iconColor` | `IconTextIconProps['color']` | No | — | Icon color |
224
224
  | `iconScreenReaderText` | `string` | No | — | SR text for icon |
225
225
  | `tagText` | `string` | No | — | Tag label |
226
226
  | `tagColor` | `TagColor` | No | — | Tag color |
@@ -232,7 +232,7 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
232
232
  | `className` | `string` | No | — | Additional CSS class |
233
233
 
234
234
  **Key features:**
235
- - Wraps `Card` + `IcoText` composite
235
+ - Wraps `Card` + `IconText` composite
236
236
  - Linked mode: uses `href` on heading `<a>`, card shell is non-interactive
237
237
  - Interactive shell mode: passes `onClick`/`disabled` to `Card`
238
238
 
@@ -633,10 +633,10 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
633
633
 
634
634
  ---
635
635
 
636
- ### 21b. IcoText
636
+ ### 21b. IconText
637
637
 
638
- **File:** `src/components/icoText/IcoText.tsx` · **Public export:** Yes
639
- **Also exports:** `IcoTextProps`, `IcoTextHeadingProps`, `IcoTextParagraphProps`, `IcoTextIconProps` types
638
+ **File:** `src/components/iconText/IconText.tsx` · **Public export:** Yes
639
+ **Also exports:** `IconTextProps`, `IconTextHeadingProps`, `IconTextParagraphProps`, `IconTextIconProps` types
640
640
 
641
641
  **Use case:** Composite layout pattern — icon on the left, heading and paragraph on the right. Used internally by `ArticleCard`. Use directly when you need an icon + text block without a card shell.
642
642
 
@@ -644,12 +644,12 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
644
644
 
645
645
  | Sub-component | Renders as | Description |
646
646
  |---|---|---|
647
- | `IcoText` (root) | `<div class="ds-ico-text">` | Container; separates icon children from content children |
648
- | `IcoText.Icon` | `<Icon>` | Leading icon with `ds-ico-text__icon` class |
649
- | `IcoText.Heading` | `<h4 class="ds-ico-text__heading">` | Heading text |
650
- | `IcoText.Paragraph` | `<p class="ds-ico-text__paragraph">` | Body text |
647
+ | `IconText` (root) | `<div class="ds-ico-text">` | Container; separates icon children from content children |
648
+ | `IconText.Icon` | `<Icon>` | Leading icon with `ds-ico-text__icon` class |
649
+ | `IconText.Heading` | `<h4 class="ds-ico-text__heading">` | Heading text |
650
+ | `IconText.Paragraph` | `<p class="ds-ico-text__paragraph">` | Body text |
651
651
 
652
- **`IcoText.Icon` props:**
652
+ **`IconText.Icon` props:**
653
653
 
654
654
  | Prop | Type | Required | Default | Description |
655
655
  |---|---|---|---|---|
@@ -660,8 +660,8 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
660
660
  | `className` | `string` | No | — | Additional CSS class |
661
661
 
662
662
  **Key features:**
663
- - Root separates `IcoText.Icon` children into a flex-left slot; all other children go into `ds-ico-text__content`
664
- - `IcoText.Heading` and `IcoText.Paragraph` accept all standard HTML heading/paragraph attributes
663
+ - Root separates `IconText.Icon` children into a flex-left slot; all other children go into `ds-ico-text__content`
664
+ - `IconText.Heading` and `IconText.Paragraph` accept all standard HTML heading/paragraph attributes
665
665
 
666
666
  ---
667
667
 
@@ -719,6 +719,7 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
719
719
  | `hideCloseButton` | `boolean` | No | `false` | Hide the X button |
720
720
  | `children` | `ReactNode` | No | — | Modal body |
721
721
  | `portalTarget` | `HTMLElement \| null` | No | — | Custom portal target |
722
+ | `contentId` | `string` | No | — | Optional `id` applied to `Dialog.Content` for `aria-controls` wiring |
722
723
 
723
724
  **Sub-components:** `Modal.Header`, `Modal.Body`, `Modal.Footer`, `Modal.CloseButton`, `Modal.Title`
724
725
 
@@ -1232,7 +1233,7 @@ Component-scoped tokens follow: `--{component}-{state}-{property}` (e.g. `--butt
1232
1233
  | `ColourPickerDropdown` | Yes | error state; controlled color | @uiw/react-color |
1233
1234
  | `Heading` | Yes | level: 1–4 (h1–h4) | — |
1234
1235
  | `Icon` | Yes | ~100 icons; sizes 12/16/24; custom color | lucide-react |
1235
- | `IcoText` | Yes | compound: Icon/Heading/Paragraph; icon-left layout | — |
1236
+ | `IconText` | Yes | compound: Icon/Heading/Paragraph; icon-left layout | — |
1236
1237
  | `KVPList` | Yes | compound: Row/Term/Definition; `orientation`; `prominence`; `isPercentage` | — |
1237
1238
  | `Modal` + `ModalManager` | Yes | compound sub-components; PubSub imperative control | Radix Dialog |
1238
1239
  | `Pill` | Yes | toggle / checkbox modes | — |
@@ -1,4 +1,4 @@
1
- import type { IcoTextIconProps } from '../icoText/IcoText.js';
1
+ import type { IconTextIconProps } from '../iconText/IconText.js';
2
2
  import type { TagColor } from '../tag/Tag.js';
3
3
  import type { IconName } from '../icon/allowedIcons.js';
4
4
  import { Card } from '../card/Card.js';
@@ -6,7 +6,7 @@ type ArticleCardBaseProps = {
6
6
  className?: string;
7
7
  paragraph?: React.ReactNode;
8
8
  icon?: IconName;
9
- iconColor?: IcoTextIconProps['color'];
9
+ iconColor?: IconTextIconProps['color'];
10
10
  disabled?: boolean;
11
11
  tagText?: string;
12
12
  tagColor?: TagColor;
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleCard.d.ts","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAA2B,MAAM,sBAAsB,CAAC;AAGrE,KAAK,oBAAoB,GAAG;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAE1B,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG,CAAC,sBAAsB,GAAG,yBAAyB,CAAC,CAAC;AAE3G,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,KAAG,KAAK,CAAC,GAAG,CAAC,OAgE/D,CAAC"}
1
+ {"version":3,"file":"ArticleCard.d.ts","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAA2B,MAAM,sBAAsB,CAAC;AAGrE,KAAK,oBAAoB,GAAG;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAE1B,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG,CAAC,sBAAsB,GAAG,yBAAyB,CAAC,CAAC;AAE3G,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,KAAG,KAAK,CAAC,GAAG,CAAC,OAgE/D,CAAC"}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import classNames from 'classnames';
3
3
  import { Tag } from '../tag/Tag.js';
4
4
  import { Card, getCardInteractionProps } from '../card/Card.js';
5
- import { IcoText } from '../icoText/IcoText.js';
5
+ import { IconText } from '../iconText/IconText.js';
6
6
  export const ArticleCard = (props) => {
7
7
  const { className, href, title, paragraph, icon, iconColor, iconScreenReaderText, disabled = false, tagText, tagColor, } = props;
8
8
  const hasPrimaryLink = Boolean(href && title && !disabled);
@@ -16,9 +16,9 @@ export const ArticleCard = (props) => {
16
16
  'aria-labelledby': props['aria-labelledby'],
17
17
  })
18
18
  : getCardInteractionProps(props);
19
- const content = (_jsx("article", { className: "ds-article-card", children: _jsxs(IcoText, { children: [icon && (_jsx(IcoText.Icon, { color: iconColor, name: icon, screenReaderText: iconScreenReaderText })), title && (_jsx(IcoText.Heading, { children: hasPrimaryLink
19
+ const content = (_jsx("article", { className: "ds-article-card", children: _jsxs(IconText, { children: [icon && (_jsx(IconText.Icon, { color: iconColor, name: icon, screenReaderText: iconScreenReaderText })), title && (_jsx(IconText.Heading, { children: hasPrimaryLink
20
20
  ? (_jsx("a", { className: "ds-article-card__primary-link", href: href, children: title }))
21
- : title })), paragraph && _jsx(IcoText.Paragraph, { children: paragraph }), tagText && _jsx(Tag, { color: tagColor, children: tagText })] }) }));
21
+ : title })), paragraph && _jsx(IconText.Paragraph, { children: paragraph }), tagText && _jsx(Tag, { color: tagColor, children: tagText })] }) }));
22
22
  return (_jsx(Card, { ...cardInteractionProps, className: cardClassName, disabled: disabled, spacing: "default", children: content }));
23
23
  };
24
24
  //# sourceMappingURL=ArticleCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleCard.js","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AA6BrD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAqB,EAAE;IACxE,MAAM,EACJ,SAAS,EACT,IAAI,EACJ,KAAK,EACL,SAAS,EACT,IAAI,EACJ,SAAS,EACT,oBAAoB,EACpB,QAAQ,GAAG,KAAK,EAChB,OAAO,EACP,QAAQ,GACT,GAAG,KAAK,CAAC;IACV,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,aAAa,GAAG,UAAU,CAAC;QAC/B,kCAAkC,EAAE,cAAc;KACnD,EAAE,SAAS,CAAC,CAAC;IAEd,MAAM,oBAAoB,GAAG,cAAc;QACzC,CAAC,CAAC,uBAAuB,CAAC;YACtB,WAAW,EAAE,SAAS;YACtB,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;YACjC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC;SAC5C,CAAC;QACJ,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAG,CACd,kBAAS,SAAS,EAAC,iBAAiB,YAClC,MAAC,OAAO,eACL,IAAI,IAAI,CACP,KAAC,OAAO,CAAC,IAAI,IACX,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,IAAI,EACV,gBAAgB,EAAE,oBAAoB,GACtC,CACH,EACA,KAAK,IAAI,CACR,KAAC,OAAO,CAAC,OAAO,cACb,cAAc;wBACb,CAAC,CAAC,CACE,YAAG,SAAS,EAAC,+BAA+B,EAAC,IAAI,EAAE,IAAI,YACpD,KAAK,GACJ,CACL;wBACH,CAAC,CAAC,KAAK,GACO,CACnB,EACA,SAAS,IAAI,KAAC,OAAO,CAAC,SAAS,cAAE,SAAS,GAAqB,EAC/D,OAAO,IAAI,KAAC,GAAG,IAAC,KAAK,EAAE,QAAQ,YAAG,OAAO,GAAO,IACzC,GACF,CACX,CAAC;IAEF,OAAO,CACL,KAAC,IAAI,OACC,oBAAoB,EACxB,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAC,SAAS,YAEhB,OAAO,GACH,CACR,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"ArticleCard.js","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AA6BxD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAqB,EAAE;IACxE,MAAM,EACJ,SAAS,EACT,IAAI,EACJ,KAAK,EACL,SAAS,EACT,IAAI,EACJ,SAAS,EACT,oBAAoB,EACpB,QAAQ,GAAG,KAAK,EAChB,OAAO,EACP,QAAQ,GACT,GAAG,KAAK,CAAC;IACV,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,aAAa,GAAG,UAAU,CAAC;QAC/B,kCAAkC,EAAE,cAAc;KACnD,EAAE,SAAS,CAAC,CAAC;IAEd,MAAM,oBAAoB,GAAG,cAAc;QACzC,CAAC,CAAC,uBAAuB,CAAC;YACtB,WAAW,EAAE,SAAS;YACtB,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;YACjC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC;SAC5C,CAAC;QACJ,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAG,CACd,kBAAS,SAAS,EAAC,iBAAiB,YAClC,MAAC,QAAQ,eACN,IAAI,IAAI,CACP,KAAC,QAAQ,CAAC,IAAI,IACZ,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,IAAI,EACV,gBAAgB,EAAE,oBAAoB,GACtC,CACH,EACA,KAAK,IAAI,CACR,KAAC,QAAQ,CAAC,OAAO,cACd,cAAc;wBACb,CAAC,CAAC,CACE,YAAG,SAAS,EAAC,+BAA+B,EAAC,IAAI,EAAE,IAAI,YACpD,KAAK,GACJ,CACL;wBACH,CAAC,CAAC,KAAK,GACQ,CACpB,EACA,SAAS,IAAI,KAAC,QAAQ,CAAC,SAAS,cAAE,SAAS,GAAsB,EACjE,OAAO,IAAI,KAAC,GAAG,IAAC,KAAK,EAAE,QAAQ,YAAG,OAAO,GAAO,IACxC,GACH,CACX,CAAC;IAEF,OAAO,CACL,KAAC,IAAI,OACC,oBAAoB,EACxB,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAC,SAAS,YAEhB,OAAO,GACH,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import type { StoryObj } from '@storybook/react-vite';
2
- import { ArticleCard } from './ArticleCard.js';
3
2
  declare function ArticleCardDocsPage(): import("react/jsx-runtime").JSX.Element;
4
3
  declare const meta: {
5
4
  title: string;
@@ -111,7 +110,7 @@ declare const meta: {
111
110
  };
112
111
  };
113
112
  };
114
- href: {
113
+ 'aria-labelledby': {
115
114
  control: "text";
116
115
  description: string;
117
116
  table: {
@@ -120,6 +119,15 @@ declare const meta: {
120
119
  };
121
120
  };
122
121
  };
122
+ href: {
123
+ control: false;
124
+ description: string;
125
+ table: {
126
+ type: {
127
+ summary: string;
128
+ };
129
+ };
130
+ };
123
131
  className: {
124
132
  control: false;
125
133
  description: string;
@@ -132,7 +140,7 @@ declare const meta: {
132
140
  };
133
141
  };
134
142
  export default meta;
135
- type Story = StoryObj<typeof ArticleCard>;
143
+ type Story = StoryObj<typeof meta>;
136
144
  export declare const Default: Story;
137
145
  export declare const Static: Story;
138
146
  export declare const WithTag: Story;
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleCard.stories.d.ts","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAW5D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAiF/C,iBAAS,mBAAmB,4CAmB3B;AAMD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwE0B,CAAC;AAErC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,WAAW,CAAC,CAAC;AAkD1C,eAAO,MAAM,OAAO,EAAE,KAiBrB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAmCpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAuCrB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KA6C7B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAyCxB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAuC9B,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAyCtB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KA+B5B,CAAC"}
1
+ {"version":3,"file":"ArticleCard.stories.d.ts","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA4F5D,iBAAS,mBAAmB,4CAmB3B;AAMD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6E0B,CAAC;AAErC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAkDnC,eAAO,MAAM,OAAO,EAAE,KAiBrB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAmCpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAuCrB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KA6C7B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAyCxB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAuC9B,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAyCtB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KA+B5B,CAAC"}
@@ -26,7 +26,7 @@ const USAGE_GUIDANCE = [
26
26
  '|---|---|',
27
27
  '| Displaying a metric or statistic | [`KPICard`](?path=/docs/components-card-kpicard--docs) |',
28
28
  '| Full control over interior layout | [`Card`](?path=/docs/components-card--docs) directly |',
29
- '| Icon + text without a card shell | [`IcoText`](?path=/docs/components-icotext--docs) |',
29
+ '| Icon + text without a card shell | [`IconText`](?path=/docs/components-icontext--docs) |',
30
30
  '| Selecting from a list (radio/checkbox semantics) | `RadioGroup` or selection list pattern |',
31
31
  ].join('\n');
32
32
  const DEVELOPER_NOTES = [
@@ -52,7 +52,7 @@ const DEVELOPER_NOTES = [
52
52
  '### Accessibility',
53
53
  '',
54
54
  '- **Linked mode**: the `<a>` wrapping `title` is the accessible link target.',
55
- ' If the title text is not self-descriptive, use `aria-label` to override the accessible name.',
55
+ ' Use self-descriptive link text in `title`, because the outer `aria-label` does not rename the inner link.',
56
56
  '- **Shell mode**: `aria-label` or `aria-labelledby` is required when `onClick` is provided.',
57
57
  '- **Decorative icons**: omit `iconScreenReaderText` — the icon is `aria-hidden="true"` automatically.',
58
58
  '',
@@ -68,7 +68,7 @@ const DEVELOPER_NOTES = [
68
68
  const RELATED_COMPONENTS = [
69
69
  '## Related components',
70
70
  '',
71
- '[Card](?path=/docs/components-card--docs) · [KPICard](?path=/docs/components-card-kpicard--docs) · [IcoText](?path=/docs/components-icotext--docs) · [Tag](?path=/docs/components-tag--docs)',
71
+ '[Card](?path=/docs/components-card--docs) · [KPICard](?path=/docs/components-card-kpicard--docs) · [IconText](?path=/docs/components-icontext--docs) · [Tag](?path=/docs/components-tag--docs)',
72
72
  ].join('\n');
73
73
  const PROPS_INTRO = 'The preview below is wired to the **Controls** panel — tweak any prop to see the story update in real time.';
74
74
  // ---------------------------------------------------------------------------
@@ -102,7 +102,7 @@ const meta = {
102
102
  'icon': {
103
103
  control: { type: 'select' },
104
104
  options: [undefined, 'eye', 'guardians', 'date', 'book-open', 'file', 'settings', 'info', 'triangle-alert'],
105
- description: 'Icon displayed in the left rail via `IcoText.Icon`. Omit for icon-free layout.',
105
+ description: 'Icon displayed in the left rail via `IconText.Icon`. Omit for icon-free layout.',
106
106
  table: { type: { summary: 'IconName' } },
107
107
  },
108
108
  'iconColor': {
@@ -141,8 +141,13 @@ const meta = {
141
141
  description: 'Accessible name. Required on interactive shell cards (when `onClick` is provided).',
142
142
  table: { type: { summary: 'string' } },
143
143
  },
144
- 'href': {
144
+ 'aria-labelledby': {
145
145
  control: 'text',
146
+ description: 'Alternative accessible name for interactive shell cards when a visible label already exists in the card content.',
147
+ table: { type: { summary: 'string' } },
148
+ },
149
+ 'href': {
150
+ control: false,
146
151
  description: 'URL. Mutually exclusive with `onClick`. When provided with `title` + `!disabled`, the title renders as a navigable `<a>`.',
147
152
  table: { type: { summary: 'string' } },
148
153
  },
@@ -252,7 +257,7 @@ function FullCompositionExample() {
252
257
  iconColor="var(--color-semantic-warning-600)"
253
258
  tagText="Pending review"
254
259
  tagColor="yellow"
255
- onClick={() => console.log('navigate to report')}
260
+ onClick={() => {}}
256
261
  aria-label="Spring term behaviour report"
257
262
  />
258
263
  );
@@ -262,7 +267,7 @@ export default FullCompositionExample;
262
267
  },
263
268
  },
264
269
  },
265
- render: () => (_jsx("div", { style: { maxWidth: '400px' }, children: _jsx(ArticleCard, { title: "Spring term behaviour report", paragraph: "Incident trends, intervention outcomes, and recommendations for Year 10.", icon: "triangle-alert", iconColor: "var(--color-semantic-warning-600)", tagText: "Pending review", tagColor: "yellow", onClick: fn(), "aria-label": "Spring term behaviour report" }) })),
270
+ render: () => (_jsx("div", { style: { maxWidth: '400px' }, children: _jsx(ArticleCard, { title: "Spring term behaviour report", paragraph: "Incident trends, intervention outcomes, and recommendations for Year 10.", icon: "triangle-alert", iconColor: "var(--color-semantic-warning-600)", tagText: "Pending review", tagColor: "yellow", onClick: () => { }, "aria-label": "Spring term behaviour report" }) })),
266
271
  }, 'All content props combined — icon + iconColor + title + paragraph + tag + interactive shell. This is the richest production pattern.');
267
272
  export const LinkedMode = withDescription({
268
273
  parameters: {
@@ -304,7 +309,7 @@ import { ArticleCard } from '@arbor-education/design-system.components';
304
309
  function InteractiveShellExample() {
305
310
  return (
306
311
  <ArticleCard
307
- onClick={() => console.log('card clicked')}
312
+ onClick={() => {}}
308
313
  aria-label="Year 10 progress report"
309
314
  title="Year 10 progress report"
310
315
  paragraph="Mid-year review — targets, attainment, and next steps."
@@ -317,7 +322,7 @@ export default InteractiveShellExample;
317
322
  },
318
323
  },
319
324
  },
320
- render: () => (_jsx("div", { style: { maxWidth: '400px' }, children: _jsx(ArticleCard, { onClick: fn(), "aria-label": "Year 10 progress report", title: "Year 10 progress report", paragraph: "Mid-year review \u2014 targets, attainment, and next steps.", icon: "eye" }) })),
325
+ render: () => (_jsx("div", { style: { maxWidth: '400px' }, children: _jsx(ArticleCard, { onClick: () => { }, "aria-label": "Year 10 progress report", title: "Year 10 progress report", paragraph: "Mid-year review \u2014 targets, attainment, and next steps.", icon: "eye" }) })),
321
326
  }, 'Interactive shell mode — `onClick` provided. The whole card gets `role="button"` and `tabIndex={0}`. Use when navigation is programmatic (e.g. React Router `navigate`) rather than a standard URL.');
322
327
  export const Disabled = withDescription({
323
328
  parameters: {
@@ -345,8 +350,8 @@ export default DisabledExample;
345
350
  },
346
351
  },
347
352
  },
348
- render: () => (_jsx("div", { style: { maxWidth: '400px' }, children: _jsx(ArticleCard, { onClick: fn(), "aria-label": "Summer term report \u2014 not yet available", title: "Summer term report", paragraph: "This report will be available at the end of term.", icon: "file", disabled: true }) })),
349
- }, '`disabled=true` dims the card and suppresses all interaction. In interactive shell mode, `onClick` does not fire. The card is removed from the tab order.');
353
+ render: () => (_jsx("div", { style: { maxWidth: '400px' }, children: _jsx(ArticleCard, { onClick: () => { }, "aria-label": "Summer term report \u2014 not yet available", title: "Summer term report", paragraph: "This report will be available at the end of term.", icon: "file", disabled: true }) })),
354
+ }, '`disabled=true` dims the card and suppresses activation. In interactive shell mode, `onClick` no longer fires, but the card still renders with `role="button"`, `tabIndex={0}`, and `aria-disabled={true}`.');
350
355
  export const LinkedDisabled = withDescription({
351
356
  parameters: {
352
357
  controls: { disable: true },
@@ -1 +1 @@
1
- {"version":3,"file":"ArticleCard.stories.js","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.stories.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArticleCard.stories.js","sourceRoot":"","sources":["../../../src/components/articleCard/ArticleCard.stories.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import type { IconName } from '../icon/allowedIcons.js';
2
+ import { Icon } from '../icon/Icon.js';
3
+ export type IconTextProps = {
4
+ children?: React.ReactNode;
5
+ className?: string;
6
+ };
7
+ export type IconTextHeadingProps = React.HTMLAttributes<HTMLHeadingElement> & {
8
+ children: React.ReactNode;
9
+ };
10
+ export type IconTextParagraphProps = React.HTMLAttributes<HTMLParagraphElement> & {
11
+ children: React.ReactNode;
12
+ };
13
+ export type IconTextIconProps = {
14
+ className?: string;
15
+ color?: Icon.Props['color'];
16
+ name: IconName;
17
+ screenReaderText?: string;
18
+ size?: 12 | 16 | 24;
19
+ };
20
+ export declare const IconText: {
21
+ ({ children, className }: IconTextProps): React.JSX.Element;
22
+ displayName: string;
23
+ } & {
24
+ Heading: {
25
+ ({ children, className, ...rest }: IconTextHeadingProps): React.JSX.Element;
26
+ displayName: string;
27
+ };
28
+ Paragraph: {
29
+ ({ children, className, ...rest }: IconTextParagraphProps): React.JSX.Element;
30
+ displayName: string;
31
+ };
32
+ Icon: {
33
+ ({ className, color, name, screenReaderText, size, }: IconTextIconProps): React.JSX.Element;
34
+ displayName: string;
35
+ };
36
+ };
37
+ export declare namespace IconText {
38
+ type Props = IconTextProps;
39
+ type HeadingProps = IconTextHeadingProps;
40
+ type ParagraphProps = IconTextParagraphProps;
41
+ type IconProps = IconTextIconProps;
42
+ }
43
+ //# sourceMappingURL=IconText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconText.d.ts","sourceRoot":"","sources":["../../../src/components/iconText/IconText.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAG5C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC,kBAAkB,CAAC,GAAG;IAC5E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG;IAChF,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;CACrB,CAAC;AAgEF,eAAO,MAAM,QAAQ;8BA1B0B,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO;;;;2CAhC7E,oBAAoB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO;;;;2CAUxC,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO;;;;8DAY1C,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO;;;CAwCtC,CAAC;AAEH,yBAAiB,QAAQ,CAAC;IACxB,KAAY,KAAK,GAAG,aAAa,CAAC;IAClC,KAAY,YAAY,GAAG,oBAAoB,CAAC;IAChD,KAAY,cAAc,GAAG,sBAAsB,CAAC;IACpD,KAAY,SAAS,GAAG,iBAAiB,CAAC;CAC3C"}
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ import { Icon } from '../icon/Icon.js';
4
+ import { Children, isValidElement } from 'react';
5
+ const IconTextHeading = ({ children, className, ...rest }) => (_jsx("h4", { className: classNames('ds-ico-text__heading', className), ...rest, children: children }));
6
+ const IconTextParagraph = ({ children, className, ...rest }) => (_jsx("p", { className: classNames('ds-ico-text__paragraph', className), ...rest, children: children }));
7
+ const IconTextIcon = ({ className, color, name, screenReaderText, size = 24, }) => (_jsx(Icon, { name: name, className: classNames('ds-ico-text__icon', className), color: color, screenReaderText: screenReaderText, size: size }));
8
+ const IconTextRoot = ({ children, className }) => {
9
+ const iconChildren = [];
10
+ const contentChildren = [];
11
+ Children.forEach(children, (child) => {
12
+ if (isValidElement(child) && child.type === IconTextIcon) {
13
+ iconChildren.push(child);
14
+ return;
15
+ }
16
+ contentChildren.push(child);
17
+ });
18
+ return (_jsxs("div", { className: classNames('ds-ico-text', className), children: [iconChildren, _jsx("div", { className: "ds-ico-text__content", children: contentChildren })] }));
19
+ };
20
+ IconTextHeading.displayName = 'IconText.Heading';
21
+ IconTextParagraph.displayName = 'IconText.Paragraph';
22
+ IconTextIcon.displayName = 'IconText.Icon';
23
+ IconTextRoot.displayName = 'IconText';
24
+ export const IconText = Object.assign(IconTextRoot, {
25
+ Heading: IconTextHeading,
26
+ Paragraph: IconTextParagraph,
27
+ Icon: IconTextIcon,
28
+ });
29
+ //# sourceMappingURL=IconText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconText.js","sourceRoot":"","sources":["../../../src/components/iconText/IconText.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAuBjD,MAAM,eAAe,GAAG,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,GAAG,IAAI,EACc,EAAqB,EAAE,CAAC,CAC7C,aAAI,SAAS,EAAE,UAAU,CAAC,sBAAsB,EAAE,SAAS,CAAC,KAAM,IAAI,YACnE,QAAQ,GACN,CACN,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,EACzB,QAAQ,EACR,SAAS,EACT,GAAG,IAAI,EACgB,EAAqB,EAAE,CAAC,CAC/C,YAAG,SAAS,EAAE,UAAU,CAAC,wBAAwB,EAAE,SAAS,CAAC,KAAM,IAAI,YACpE,QAAQ,GACP,CACL,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,EACpB,SAAS,EACT,KAAK,EACL,IAAI,EACJ,gBAAgB,EAChB,IAAI,GAAG,EAAE,GACS,EAAqB,EAAE,CAAC,CAC1C,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,UAAU,CAAC,mBAAmB,EAAE,SAAS,CAAC,EACrD,KAAK,EAAE,KAAK,EACZ,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,IAAI,GACV,CACH,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAiB,EAAqB,EAAE;IACjF,MAAM,YAAY,GAAsB,EAAE,CAAC;IAC3C,MAAM,eAAe,GAAsB,EAAE,CAAC;IAE9C,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QACnC,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACzD,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QAED,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,eAAK,SAAS,EAAE,UAAU,CAAC,aAAa,EAAE,SAAS,CAAC,aACjD,YAAY,EACb,cAAK,SAAS,EAAC,sBAAsB,YAAE,eAAe,GAAO,IACzD,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,CAAC,WAAW,GAAG,kBAAkB,CAAC;AACjD,iBAAiB,CAAC,WAAW,GAAG,oBAAoB,CAAC;AACrD,YAAY,CAAC,WAAW,GAAG,eAAe,CAAC;AAC3C,YAAY,CAAC,WAAW,GAAG,UAAU,CAAC;AAEtC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE;IAClD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,iBAAiB;IAC5B,IAAI,EAAE,YAAY;CACnB,CAAC,CAAC"}
@@ -1,22 +1,21 @@
1
1
  import type { StoryObj } from '@storybook/react-vite';
2
- import { IcoText } from './IcoText.js';
3
- declare function IcoTextDocsPage(): import("react/jsx-runtime").JSX.Element;
2
+ declare function IconTextDocsPage(): import("react/jsx-runtime").JSX.Element;
4
3
  declare const meta: {
5
4
  title: string;
6
5
  component: {
7
- ({ children, className }: import("./IcoText.js").IcoTextProps): React.JSX.Element;
6
+ ({ children, className }: import("./IconText.js").IconTextProps): React.JSX.Element;
8
7
  displayName: string;
9
8
  } & {
10
9
  Heading: {
11
- ({ children, className, ...rest }: import("./IcoText.js").IcoTextHeadingProps): React.JSX.Element;
10
+ ({ children, className, ...rest }: import("./IconText.js").IconTextHeadingProps): React.JSX.Element;
12
11
  displayName: string;
13
12
  };
14
13
  Paragraph: {
15
- ({ children, className, ...rest }: import("./IcoText.js").IcoTextParagraphProps): React.JSX.Element;
14
+ ({ children, className, ...rest }: import("./IconText.js").IconTextParagraphProps): React.JSX.Element;
16
15
  displayName: string;
17
16
  };
18
17
  Icon: {
19
- ({ className, color, name, screenReaderText, size, }: import("./IcoText.js").IcoTextIconProps): React.JSX.Element;
18
+ ({ className, color, name, screenReaderText, size, }: import("./IconText.js").IconTextIconProps): React.JSX.Element;
20
19
  displayName: string;
21
20
  };
22
21
  };
@@ -24,7 +23,7 @@ declare const meta: {
24
23
  parameters: {
25
24
  layout: string;
26
25
  docs: {
27
- page: typeof IcoTextDocsPage;
26
+ page: typeof IconTextDocsPage;
28
27
  };
29
28
  };
30
29
  argTypes: {
@@ -49,7 +48,7 @@ declare const meta: {
49
48
  };
50
49
  };
51
50
  export default meta;
52
- type Story = StoryObj<typeof IcoText>;
51
+ type Story = StoryObj<typeof meta>;
53
52
  export declare const Default: Story;
54
53
  export declare const HeadingOnly: Story;
55
54
  export declare const WithoutIcon: Story;
@@ -57,4 +56,4 @@ export declare const IconWithScreenReaderText: Story;
57
56
  export declare const IconSizes: Story;
58
57
  export declare const IconColors: Story;
59
58
  export declare const MultipleParagraphs: Story;
60
- //# sourceMappingURL=IcoText.stories.d.ts.map
59
+ //# sourceMappingURL=IconText.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconText.stories.d.ts","sourceRoot":"","sources":["../../../src/components/iconText/IconText.stories.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA4G5D,iBAAS,gBAAgB,4CAyBxB;AAMD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoBuB,CAAC;AAElC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAsEnC,eAAO,MAAM,OAAO,EAAE,KAWrB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KA+BzB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KA+BzB,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,KAqCtC,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAuCvB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KA2BxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KA4BhC,CAAC"}