@pnx-mixtape/mxds 0.1.0-rc.0 → 0.1.0-rc.2
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.
- package/.storybook/decorators.ts +15 -0
- package/.storybook/preview.ts +4 -1
- package/.storybook/themes/campus-vibrant.css +181 -0
- package/.storybook/themes/civic-formal.css +246 -0
- package/.storybook/{theme-demo.css → themes/demo.css} +14 -7
- package/.storybook/themes/health-services.css +255 -0
- package/.storybook/themes/research-faculty.css +169 -0
- package/dist/build/accordion.css +1 -1
- package/dist/build/base.css +1 -1
- package/dist/build/button.css +1 -1
- package/dist/build/chunks/DropMenu-1baQc8Yc.js +1 -0
- package/dist/build/chunks/InPageNavigation-CVieEl9u.js +1 -0
- package/dist/build/chunks/Popover-Cxg-s5Jn.js +1 -0
- package/dist/build/chunks/Sticky-cWUVSOXN.js +1 -0
- package/dist/build/chunks/{Tabs-Dm8g301e.js → Tabs-DA_Ez8pv.js} +2 -2
- package/dist/build/chunks/polyfills-C7pRt54M.js +1 -0
- package/dist/build/constants.css +1 -1
- package/dist/build/drop-menu.css +1 -1
- package/dist/build/drop-menu.entry.js +1 -1
- package/dist/build/elements.js +1 -1
- package/dist/build/form.css +1 -1
- package/dist/build/grid.css +1 -1
- package/dist/build/header.css +1 -1
- package/dist/build/icon.css +1 -1
- package/dist/build/in-page-alert.css +1 -1
- package/dist/build/in-page-navigation.entry.js +1 -1
- package/dist/build/navigation.css +1 -1
- package/dist/build/pagination.css +1 -1
- package/dist/build/popover.entry.js +1 -1
- package/dist/build/print.css +1 -1
- package/dist/build/progress-indicator.css +1 -0
- package/dist/build/react.js +1 -1
- package/dist/build/side-navigation.css +1 -1
- package/dist/build/sidebar.css +1 -1
- package/dist/build/steps.css +1 -1
- package/dist/build/sticky.entry.js +1 -1
- package/dist/build/tabs.entry.js +1 -1
- package/dist/build/tag.css +1 -1
- package/dist/build/utilities.css +1 -1
- package/dist/types/Atom/DefinitionList/DefinitionList.d.ts +3 -2
- package/dist/types/Atom/DefinitionList/DefinitionList.d.ts.map +1 -1
- package/dist/types/Atom/Heading/Heading.d.ts.map +1 -1
- package/dist/types/Atom/List/List.d.ts +10 -0
- package/dist/types/Atom/List/List.d.ts.map +1 -0
- package/dist/types/Component/DropMenu/Elements/DropMenu.d.ts.map +1 -1
- package/dist/types/Component/InPageNavigation/Elements/InPageNavigation.d.ts +2 -2
- package/dist/types/Component/InPageNavigation/Elements/InPageNavigation.d.ts.map +1 -1
- package/dist/types/Component/InPageNavigation/Hooks/useInPageNavigation.d.ts.map +1 -1
- package/dist/types/Component/ProgressIndicator/ProgressIndicator.d.ts +9 -0
- package/dist/types/Component/ProgressIndicator/ProgressIndicator.d.ts.map +1 -0
- package/dist/types/Component/Tabs/Elements/Tabs.d.ts.map +1 -1
- package/dist/types/Component/Tag/Tag.d.ts +4 -2
- package/dist/types/Component/Tag/Tag.d.ts.map +1 -1
- package/dist/types/Form/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/dist/types/Form/Checkbox/FormCheckbox.d.ts.map +1 -1
- package/dist/types/Form/CheckboxCard/CheckboxCard.d.ts +23 -0
- package/dist/types/Form/CheckboxCard/CheckboxCard.d.ts.map +1 -0
- package/dist/types/Form/Radio/FormRadio.d.ts.map +1 -1
- package/dist/types/Form/RadioCard/RadioCard.d.ts +16 -0
- package/dist/types/Form/RadioCard/RadioCard.d.ts.map +1 -0
- package/dist/types/Form/Select/FormSelect.d.ts.map +1 -1
- package/dist/types/Form/TextInput/FormText.d.ts.map +1 -1
- package/dist/types/Form/Textarea/FormTextarea.d.ts.map +1 -1
- package/dist/types/enums.d.ts +15 -0
- package/dist/types/enums.d.ts.map +1 -1
- package/dist/types/react.d.ts +4 -0
- package/dist/types/react.d.ts.map +1 -1
- package/package.json +7 -8
- package/src/Atom/Background/_background.css +2 -2
- package/src/Atom/Blockquote/_blockquote.css +9 -2
- package/src/Atom/Button/README.md +1 -0
- package/src/Atom/Button/_buttons-styles.css +6 -6
- package/src/Atom/Button/_buttons.css +6 -3
- package/src/Atom/DefinitionList/DefinitionList.stories.ts +39 -2
- package/src/Atom/DefinitionList/DefinitionList.stories.tsx +36 -0
- package/src/Atom/DefinitionList/DefinitionList.tsx +4 -1
- package/src/Atom/DefinitionList/DefinitionListItem.stories.ts +1 -1
- package/src/Atom/DefinitionList/README.md +43 -0
- package/src/Atom/DefinitionList/__snapshots__/DefinitionList.stories.ts.snap +37 -3
- package/src/Atom/DefinitionList/__snapshots__/DefinitionList.stories.tsx.snap +2 -0
- package/src/Atom/DefinitionList/__snapshots__/DefinitionListItem.stories.ts.snap +3 -3
- package/src/Atom/DefinitionList/definition-list-item.twig +1 -0
- package/src/Atom/DefinitionList/definition-list.twig +6 -1
- package/src/Atom/Heading/Heading.tsx +6 -0
- package/src/Atom/Heading/_headings.css +2 -1
- package/src/Atom/Icon/_extended-set.css +30 -30
- package/src/Atom/Icon/_icon.css +37 -36
- package/src/Atom/Image/README.md +2 -2
- package/src/Atom/Image/_image.css +12 -6
- package/src/Atom/List/List.stories.ts +102 -0
- package/src/Atom/List/List.stories.tsx +103 -0
- package/src/Atom/List/List.tsx +22 -0
- package/src/Atom/List/README.md +150 -0
- package/src/Atom/List/__snapshots__/List.stories.ts.snap +43 -0
- package/src/Atom/List/__snapshots__/List.stories.tsx.snap +13 -0
- package/src/Atom/List/_list.css +123 -0
- package/src/Atom/List/list.twig +5 -0
- package/src/Atom/Media/Media.stories.ts +1 -1
- package/src/Atom/Media/__snapshots__/Media.stories.ts.snap +2 -2
- package/src/Atom/Spacing/_spacing.css +24 -24
- package/src/Atom/Table/__snapshots__/Table.stories.ts.snap +24 -4
- package/src/Atom/Table/_table.css +15 -3
- package/src/Atom/Table/table.twig +6 -1
- package/src/Atom/Text/__snapshots__/Text.stories.ts.snap +3 -2
- package/src/Atom/Text/_text-styles.css +21 -1
- package/src/Atom/Text/twig/text-styles-example.twig +3 -2
- package/src/Atom/_base.css +6 -0
- package/src/Atom/_flow.css +1 -1
- package/src/Atom/_generic.css +18 -11
- package/src/Component/Accordion/accordion.css +2 -0
- package/src/Component/Card/__snapshots__/Card.stories.ts.snap +2 -2
- package/src/Component/Card/card.twig +1 -1
- package/src/Component/Carousel/Carousel.stories.ts +46 -23
- package/src/Component/DropMenu/Elements/DropMenu.ts +10 -1
- package/src/Component/InPageAlert/in-page-alert.css +2 -1
- package/src/Component/InPageNavigation/Elements/InPageNavigation.ts +10 -5
- package/src/Component/InPageNavigation/Hooks/useInPageNavigation.ts +10 -5
- package/src/Component/InPageNavigation/InPageNavigation.stories.ts +33 -0
- package/src/Component/InPageNavigation/InPageNavigation.stories.tsx +52 -0
- package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.ts.snap +26 -0
- package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.tsx.snap +2 -0
- package/src/Component/InPageNavigation/twig/content-example-duplicate-headings.twig +20 -0
- package/src/Component/InPageNavigation/twig/in-page-navigation-story-duplicate-headings.twig +2 -0
- package/src/Component/ListItem/__snapshots__/ListItem.stories.ts.snap +4 -4
- package/src/Component/ListItem/list-item.twig +2 -2
- package/src/Component/Navigation/_navigation.css +1 -1
- package/src/Component/Pagination/Pagination.stories.ts +8 -4
- package/src/Component/Pagination/pagination.css +3 -3
- package/src/Component/ProgressIndicator/ProgressIndicator.stories.ts +36 -0
- package/src/Component/ProgressIndicator/ProgressIndicator.stories.tsx +30 -0
- package/src/Component/ProgressIndicator/ProgressIndicator.tsx +60 -0
- package/src/Component/ProgressIndicator/README.md +111 -0
- package/src/Component/ProgressIndicator/__snapshots__/ProgressIndicator.stories.ts.snap +67 -0
- package/src/Component/ProgressIndicator/__snapshots__/ProgressIndicator.stories.tsx.snap +7 -0
- package/src/Component/ProgressIndicator/progress-indicator.css +59 -0
- package/src/Component/ProgressIndicator/progress-indicator.twig +22 -0
- package/src/Component/Sticky/Elements/Sticky.ts +1 -1
- package/src/Component/Sticky/sticky.css +3 -3
- package/src/Component/Tabs/Elements/Tabs.ts +3 -1
- package/src/Component/Tabs/Tabs.stories.ts +55 -21
- package/src/Component/Tabs/__snapshots__/Tabs.stories.ts.snap +2 -2
- package/src/Component/Tag/README.md +52 -26
- package/src/Component/Tag/Tag.stories.tsx +24 -0
- package/src/Component/Tag/Tag.tsx +12 -2
- package/src/Component/Tag/TagItem.stories.ts +25 -0
- package/src/Component/Tag/__snapshots__/Tag.stories.ts.snap +2 -2
- package/src/Component/Tag/__snapshots__/Tag.stories.tsx.snap +2 -0
- package/src/Component/Tag/tag-item.twig +2 -2
- package/src/Component/Tag/tag.css +76 -2
- package/src/Form/Autocomplete/Autocomplete.stories.ts +8 -3
- package/src/Form/Autocomplete/Autocomplete.tsx +1 -4
- package/src/Form/Autocomplete/README.md +26 -26
- package/src/Form/Autocomplete/__snapshots__/Autocomplete.stories.ts.snap +1 -1
- package/src/Form/Autocomplete/__snapshots__/Autocomplete.stories.tsx.snap +1 -1
- package/src/Form/Autocomplete/autocomplete.twig +0 -2
- package/src/Form/Checkbox/FormCheckbox.tsx +2 -8
- package/src/Form/Checkbox/README.md +23 -18
- package/src/Form/Checkbox/input-checkbox.twig +0 -2
- package/src/Form/CheckboxCard/CheckboxCard.stories.ts +90 -0
- package/src/Form/CheckboxCard/CheckboxCard.stories.tsx +43 -0
- package/src/Form/CheckboxCard/CheckboxCard.tsx +102 -0
- package/src/Form/CheckboxCard/README.md +163 -0
- package/src/Form/CheckboxCard/__snapshots__/CheckboxCard.stories.ts.snap +63 -0
- package/src/Form/CheckboxCard/__snapshots__/CheckboxCard.stories.tsx.snap +7 -0
- package/src/Form/CheckboxCard/checkbox-card.twig +29 -0
- package/src/Form/FormItem/__snapshots__/FormItem.stories.ts.snap +2 -2
- package/src/Form/README.md +65 -13
- package/src/Form/Radio/FormRadio.tsx +1 -4
- package/src/Form/Radio/input-radio.twig +0 -2
- package/src/Form/RadioCard/README.md +146 -0
- package/src/Form/RadioCard/RadioCard.stories.ts +95 -0
- package/src/Form/RadioCard/RadioCard.stories.tsx +26 -0
- package/src/Form/RadioCard/RadioCard.tsx +59 -0
- package/src/Form/RadioCard/__snapshots__/RadioCard.stories.ts.snap +69 -0
- package/src/Form/RadioCard/__snapshots__/RadioCard.stories.tsx.snap +3 -0
- package/src/Form/RadioCard/radio-card.twig +20 -0
- package/src/Form/Select/FormSelect.tsx +1 -4
- package/src/Form/Select/input-select.twig +0 -2
- package/src/Form/TextInput/FormText.stories.tsx +14 -0
- package/src/Form/TextInput/FormText.tsx +1 -4
- package/src/Form/TextInput/__snapshots__/FormText.stories.tsx.snap +2 -0
- package/src/Form/TextInput/input-text.twig +0 -2
- package/src/Form/Textarea/FormTextarea.tsx +1 -4
- package/src/Form/Textarea/input-textarea.twig +0 -2
- package/src/Form/Validation.stories.ts +153 -0
- package/src/Form/__snapshots__/Validation.stories.ts.snap +130 -0
- package/src/Form/form.css +155 -28
- package/src/Layout/Grid/grid.css +4 -4
- package/src/Layout/Sidebar/__snapshots__/Sidebar.stories.ts.snap +5 -5
- package/src/Layout/Sidebar/sidebar.css +1 -0
- package/src/Layout/Sidebar/sidebar.twig +1 -1
- package/src/Utility/_layout-utils.css +8 -0
- package/src/Utility/print.css +50 -28
- package/src/Utility/utilities.css +2 -2
- package/src/constants.css +12 -2
- package/src/enums.ts +17 -0
- package/src/react.ts +4 -0
- package/tools/lib/extract-classnames.mjs +0 -0
- package/tools/lint-classnames.mjs +1 -1
- package/dist/build/chunks/DropMenu-Co9jZZ4S.js +0 -1
- package/dist/build/chunks/InPageNavigation-CzR_KZaz.js +0 -1
- package/dist/build/chunks/Popover-De_CQqcd.js +0 -1
- package/dist/build/chunks/Sticky-Kyjykb36.js +0 -1
- package/dist/build/chunks/polyfills-Dokbkxxk.js +0 -1
package/dist/types/react.d.ts
CHANGED
|
@@ -37,6 +37,7 @@ export { default as FormItem } from "./Form/FormItem/FormItem";
|
|
|
37
37
|
export { default as FormTitle } from "./Form/Form/FormTitle";
|
|
38
38
|
export { default as Form } from "./Form/Form/Form";
|
|
39
39
|
export { default as Icon } from "./Atom/Icon/Icon";
|
|
40
|
+
export { default as List } from "./Atom/List/List";
|
|
40
41
|
export { default as Grid } from "./Layout/Grid/Grid";
|
|
41
42
|
export { default as Page } from "./Layout/Page/Page";
|
|
42
43
|
export { default as HeroBanner } from "./Component/HeroBanner/HeroBanner";
|
|
@@ -78,8 +79,11 @@ export { default as SideNavigationTree } from "./Component/SideNavigation/Compon
|
|
|
78
79
|
export { default as CookieConsent } from "./Component/CookieConsent/CookieConsent";
|
|
79
80
|
export { default as Gallery } from "./Component/Gallery/Gallery";
|
|
80
81
|
export { default as GalleryTrigger } from "./Component/Gallery/Components/GalleryTrigger";
|
|
82
|
+
export { default as ProgressIndicator } from "./Component/ProgressIndicator/ProgressIndicator";
|
|
81
83
|
export { default as FormSearch } from "./Form/Search/FormSearch";
|
|
82
84
|
export { default as Autocomplete } from "./Form/Autocomplete/Autocomplete";
|
|
85
|
+
export { default as CheckboxCard } from "./Form/CheckboxCard/CheckboxCard";
|
|
86
|
+
export { default as RadioCard } from "./Form/RadioCard/RadioCard";
|
|
83
87
|
export { default as Masthead } from "./Layout/Masthead/Masthead";
|
|
84
88
|
export { default as Sidebar } from "./Layout/Sidebar/Sidebar";
|
|
85
89
|
export { default as Footer } from "./Layout/Footer/Footer";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/react.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/react.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pnx-mixtape/mxds",
|
|
3
3
|
"description": "The Mixtape Design System",
|
|
4
|
-
"version": "0.1.0-rc.
|
|
4
|
+
"version": "0.1.0-rc.2",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"dependencies": {
|
|
7
7
|
"@floating-ui/dom": "^1.7.6",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"@testing-library/user-event": "^14.6.1",
|
|
37
37
|
"@types/node": "^26.0.0",
|
|
38
38
|
"@vitejs/plugin-react": "^6.0.2",
|
|
39
|
-
"@vitest/browser-playwright": "
|
|
40
|
-
"@vitest/coverage-v8": "
|
|
39
|
+
"@vitest/browser-playwright": "4.1.11",
|
|
40
|
+
"@vitest/coverage-v8": "4.1.11",
|
|
41
41
|
"axe-playwright": "^2.2.2",
|
|
42
42
|
"chromatic": "^18.0.1",
|
|
43
43
|
"concurrently": "^10.0.3",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"drupal-twig-extensions": "1.0.0-beta.5",
|
|
47
47
|
"jsdom": "^30.0.0",
|
|
48
48
|
"lightningcss": "^1.32.0",
|
|
49
|
-
"oxfmt": "^0.
|
|
49
|
+
"oxfmt": "^0.68.0",
|
|
50
50
|
"oxlint": "^1.71.0",
|
|
51
51
|
"playwright": "^1.61.0",
|
|
52
52
|
"postcss": "^8.5.15",
|
|
@@ -55,16 +55,15 @@
|
|
|
55
55
|
"postcss-mixins": "^12.1.2",
|
|
56
56
|
"postcss-prepend-layer": "^1.0.2",
|
|
57
57
|
"postcss-preset-env": "^11.3.1",
|
|
58
|
-
"postcss-pxtorem": "^6.1.0",
|
|
59
58
|
"storybook": "^10.4.6",
|
|
60
59
|
"stylelint": "^17.13.0",
|
|
61
60
|
"stylelint-config-standard": "^40.0.0",
|
|
62
61
|
"stylelint-use-logical-spec": "^5.0.1",
|
|
63
62
|
"twig": "^3.0.0",
|
|
64
63
|
"typescript": "^7.0.2",
|
|
65
|
-
"vite": "8.2.2",
|
|
66
|
-
"vite-plugin-twig-drupal": "^1.
|
|
67
|
-
"vitest": "
|
|
64
|
+
"vite": "^8.2.2",
|
|
65
|
+
"vite-plugin-twig-drupal": "^1.7.0",
|
|
66
|
+
"vitest": "4.1.11"
|
|
68
67
|
},
|
|
69
68
|
"config": {
|
|
70
69
|
"commitizen": {
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
--line-colour: light-dark(var(--colour-primary-darker), var(--colour-primary-lighter));
|
|
31
31
|
--foreground-alt: var(--colour-primary-light);
|
|
32
32
|
--embellished-colour: var(--colour-primary-darker);
|
|
33
|
-
--button-accent-scheme: light;
|
|
33
|
+
--button-accent-scheme: var(--colour-accent-scheme, light);
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
.mx-background--accent {
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
--contrast-color: contrast-color(black);
|
|
48
48
|
--scheme: var(--reverse-scheme, var(--colour-reverse-scheme, dark));
|
|
49
49
|
--embellished-colour: var(--colour-border);
|
|
50
|
-
--button-accent-scheme: light;
|
|
50
|
+
--button-accent-scheme: var(--colour-accent-scheme, light);
|
|
51
51
|
|
|
52
52
|
& .mx-background--image {
|
|
53
53
|
--bg-img-brightness: 0.45;
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
@layer design-system.defaults {
|
|
2
2
|
blockquote {
|
|
3
3
|
padding-inline-start: var(--line-gap, var(--gap));
|
|
4
|
-
border-inline-start: var(--line-width,
|
|
4
|
+
border-inline-start: var(--line-width, 6px) solid
|
|
5
5
|
var(--line-colour, var(--blockquote-line-colour, var(--colour-accent)));
|
|
6
|
+
font-size: var(--blockquote-font-size, var(--font-size-ml));
|
|
6
7
|
|
|
7
8
|
& cite {
|
|
8
|
-
|
|
9
|
+
font-size: var(--font-size-ui, var(--font-size-xs));
|
|
10
|
+
line-height: var(--line-height-ui, var(--line-height-h));
|
|
11
|
+
font-family: var(--font-family-ui, var(--font-family));
|
|
12
|
+
color: var(--colour-foreground-alt);
|
|
13
|
+
margin-block-start: var(--spacing-xs);
|
|
14
|
+
font-style: normal;
|
|
15
|
+
display: block;
|
|
9
16
|
}
|
|
10
17
|
}
|
|
11
18
|
}
|
|
@@ -5,20 +5,20 @@
|
|
|
5
5
|
@layer design-system.atoms {
|
|
6
6
|
/* @public --button-dark-bg --button-dark-fg --button-dark-line --button-accent-bg --button-accent-fg --button-accent-line --button-accent-scheme --button-light-bg --button-light-fg --button-light-line */
|
|
7
7
|
.mx-button--dark {
|
|
8
|
-
--line-colour: var(--button-dark-line, var(--colour-link));
|
|
9
|
-
--button-bg: var(--button-dark-bg, var(--colour-link));
|
|
8
|
+
--line-colour: var(--button-dark-line, var(--link-colour, var(--colour-link)));
|
|
9
|
+
--button-bg: var(--button-dark-bg, var(--link-colour, var(--colour-link)));
|
|
10
10
|
--button-fg: var(--button-dark-fg, var(--colour-foreground-reverse));
|
|
11
11
|
|
|
12
12
|
&.mx-button--outline {
|
|
13
13
|
--button-bg: transparent;
|
|
14
|
-
--button-fg: var(--button-dark-bg, var(--colour-link));
|
|
14
|
+
--button-fg: var(--button-dark-bg, var(--link-colour, var(--colour-link)));
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
.mx-button--light {
|
|
19
19
|
--line-colour: var(--button-light-line, transparent);
|
|
20
20
|
--button-bg: var(--button-light-bg, transparent);
|
|
21
|
-
--button-fg: var(--button-light-fg, var(--colour-link));
|
|
21
|
+
--button-fg: var(--button-light-fg, var(--link-colour, var(--colour-link)));
|
|
22
22
|
|
|
23
23
|
text-decoration-line: underline;
|
|
24
24
|
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
--button-accent-bg,
|
|
37
37
|
light-dark(var(--colour-accent), var(--colour-accent-darkest))
|
|
38
38
|
);
|
|
39
|
-
--button-fg: var(--button-accent-
|
|
39
|
+
--button-fg: var(--button-accent-fg, var(--colour-foreground));
|
|
40
40
|
|
|
41
|
-
color-scheme: var(--button-accent-scheme, light);
|
|
41
|
+
color-scheme: var(--button-accent-scheme, var(--colour-accent-scheme, light));
|
|
42
42
|
|
|
43
43
|
&.mx-button--outline {
|
|
44
44
|
--button-bg: transparent;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
@layer design-system.atoms {
|
|
6
|
-
/* @public --button-gap --button-font-size */
|
|
6
|
+
/* @public --button-gap --button-font-size --button-letter-spacing --button-min-height */
|
|
7
7
|
.mx-button {
|
|
8
8
|
--outline-offset: 1px;
|
|
9
9
|
|
|
@@ -20,6 +20,8 @@
|
|
|
20
20
|
padding-inline: var(--horizontal-padding, var(--spacing-m));
|
|
21
21
|
background-color: var(--button-bg, var(--background, var(--colour-background)));
|
|
22
22
|
color: var(--button-fg, var(--foreground, var(--colour-foreground)));
|
|
23
|
+
letter-spacing: var(--button-letter-spacing, 0);
|
|
24
|
+
min-block-size: var(--button-min-height, unset);
|
|
23
25
|
text-decoration-line: none;
|
|
24
26
|
|
|
25
27
|
&:hover {
|
|
@@ -50,10 +52,11 @@
|
|
|
50
52
|
}
|
|
51
53
|
|
|
52
54
|
.mx-button--icon-only {
|
|
53
|
-
inline-size: var(--spacing-xl);
|
|
54
|
-
block-size: var(--spacing-xl);
|
|
55
|
+
inline-size: var(--button-min-height, var(--spacing-xl));
|
|
56
|
+
block-size: var(--button-min-height, var(--spacing-xl));
|
|
55
57
|
padding: 0;
|
|
56
58
|
border-radius: var(--border-radius-round);
|
|
59
|
+
align-content: start;
|
|
57
60
|
overflow: hidden;
|
|
58
61
|
flex-wrap: wrap;
|
|
59
62
|
|
|
@@ -4,11 +4,16 @@ import DefinitionListItem from "./definition-list-item.twig"
|
|
|
4
4
|
import "../_base.css"
|
|
5
5
|
import { DefinitionList as DefinitionListType } from "@pnx-mixtape/ids-shape"
|
|
6
6
|
|
|
7
|
+
type MxDefinitionListType = DefinitionListType & {
|
|
8
|
+
columns: boolean
|
|
9
|
+
summary: boolean
|
|
10
|
+
}
|
|
11
|
+
|
|
7
12
|
/**
|
|
8
13
|
* The definition list is useful for categorising short pieces of content.
|
|
9
14
|
* It uses `subgrid` to maintain alignment.
|
|
10
15
|
*/
|
|
11
|
-
const meta: Meta<
|
|
16
|
+
const meta: Meta<MxDefinitionListType> = {
|
|
12
17
|
tags: ["autodocs", "ids-mvp"],
|
|
13
18
|
component: Component,
|
|
14
19
|
args: {
|
|
@@ -40,10 +45,42 @@ const meta: Meta<DefinitionListType> = {
|
|
|
40
45
|
type: { summary: "string" },
|
|
41
46
|
},
|
|
42
47
|
},
|
|
48
|
+
columns: {
|
|
49
|
+
type: "boolean",
|
|
50
|
+
},
|
|
43
51
|
},
|
|
44
52
|
}
|
|
45
53
|
|
|
46
54
|
export default meta
|
|
47
|
-
type Story = StoryObj<
|
|
55
|
+
type Story = StoryObj<MxDefinitionListType>
|
|
48
56
|
|
|
49
57
|
export const DefinitionList: Story = {}
|
|
58
|
+
|
|
59
|
+
export const Columns: Story = {
|
|
60
|
+
args: {
|
|
61
|
+
columns: true,
|
|
62
|
+
},
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* `summary: true` (`mx-list--summary`) turns the list into a "review your
|
|
67
|
+
* answers" block — a term/value/action row layout with dividers, and an
|
|
68
|
+
* optional `action` per item (typically a "Change" link).
|
|
69
|
+
*/
|
|
70
|
+
export const Summary: Story = {
|
|
71
|
+
args: {
|
|
72
|
+
summary: true,
|
|
73
|
+
items: [
|
|
74
|
+
DefinitionListItem({
|
|
75
|
+
title: "Concession card",
|
|
76
|
+
content: "Yes, I hold a card",
|
|
77
|
+
action: '<a href="#step-1">Change<span class="sr-only"> concession card</span></a>',
|
|
78
|
+
}),
|
|
79
|
+
DefinitionListItem({
|
|
80
|
+
title: "Full name",
|
|
81
|
+
content: "Jane Smith",
|
|
82
|
+
action: '<a href="#step-2">Change<span class="sr-only"> full name</span></a>',
|
|
83
|
+
}),
|
|
84
|
+
].join(""),
|
|
85
|
+
},
|
|
86
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Meta, StoryObj } from "@storybook/react-vite"
|
|
2
2
|
import Component, { DefinitionListItem } from "./DefinitionList"
|
|
3
3
|
import { Page } from "../../../.storybook-react/decorators"
|
|
4
|
+
import { ListStyles } from "../../enums"
|
|
4
5
|
|
|
5
6
|
const meta: Meta<typeof Component> = {
|
|
6
7
|
decorators: [Page],
|
|
@@ -18,3 +19,38 @@ const meta: Meta<typeof Component> = {
|
|
|
18
19
|
|
|
19
20
|
export default meta
|
|
20
21
|
export const DefinitionList: StoryObj<typeof Component> = {}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* `ListStyles.SUMMARY` (`mx-list--summary`) turns the list into a "review
|
|
25
|
+
* your answers" block — a term/value/action row layout with dividers, and an
|
|
26
|
+
* optional `action` per item (typically a "Change" link).
|
|
27
|
+
*/
|
|
28
|
+
export const Summary: StoryObj<typeof Component> = {
|
|
29
|
+
args: {
|
|
30
|
+
className: ListStyles.SUMMARY,
|
|
31
|
+
children: (
|
|
32
|
+
<>
|
|
33
|
+
<DefinitionListItem
|
|
34
|
+
title="Concession card"
|
|
35
|
+
action={
|
|
36
|
+
<a href="#step-1">
|
|
37
|
+
Change<span className="sr-only"> concession card</span>
|
|
38
|
+
</a>
|
|
39
|
+
}
|
|
40
|
+
>
|
|
41
|
+
Yes, I hold a card
|
|
42
|
+
</DefinitionListItem>
|
|
43
|
+
<DefinitionListItem
|
|
44
|
+
title="Full name"
|
|
45
|
+
action={
|
|
46
|
+
<a href="#step-2">
|
|
47
|
+
Change<span className="sr-only"> full name</span>
|
|
48
|
+
</a>
|
|
49
|
+
}
|
|
50
|
+
>
|
|
51
|
+
Jane Smith
|
|
52
|
+
</DefinitionListItem>
|
|
53
|
+
</>
|
|
54
|
+
),
|
|
55
|
+
},
|
|
56
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { JSX, ComponentPropsWithoutRef, PropsWithChildren } from "react"
|
|
1
|
+
import { JSX, ComponentPropsWithoutRef, PropsWithChildren, ReactNode } from "react"
|
|
2
2
|
|
|
3
3
|
type DefinitionListProps = ComponentPropsWithoutRef<"dl"> & PropsWithChildren
|
|
4
4
|
|
|
@@ -9,16 +9,19 @@ const DefinitionList = ({ children, ...props }: DefinitionListProps): JSX.Elemen
|
|
|
9
9
|
type DefinitionListItemProps = ComponentPropsWithoutRef<"div"> &
|
|
10
10
|
PropsWithChildren & {
|
|
11
11
|
title: string
|
|
12
|
+
action?: ReactNode
|
|
12
13
|
}
|
|
13
14
|
|
|
14
15
|
const DefinitionListItem = ({
|
|
15
16
|
title,
|
|
17
|
+
action = null,
|
|
16
18
|
children,
|
|
17
19
|
...props
|
|
18
20
|
}: DefinitionListItemProps): JSX.Element => (
|
|
19
21
|
<div {...props}>
|
|
20
22
|
<dt>{title}</dt>
|
|
21
23
|
<dd>{children}</dd>
|
|
24
|
+
{action && <dd className="mx-list__action">{action}</dd>}
|
|
22
25
|
</div>
|
|
23
26
|
)
|
|
24
27
|
|
|
@@ -7,7 +7,7 @@ import { DefinitionListItem as DefinitionListItemType } from "@pnx-mixtape/ids-s
|
|
|
7
7
|
* A single title/content pair used by [DefinitionList](/?path=/docs/atom-definitionlist--docs).
|
|
8
8
|
*/
|
|
9
9
|
const meta: Meta<DefinitionListItemType> = {
|
|
10
|
-
tags: ["autodocs", "ids-mvp"
|
|
10
|
+
tags: ["autodocs", "ids-mvp"],
|
|
11
11
|
component: Component,
|
|
12
12
|
args: {
|
|
13
13
|
title: "Some title",
|
|
@@ -37,6 +37,8 @@ No dedicated CSS file — base styles come from the global reset. Import `base.c
|
|
|
37
37
|
|
|
38
38
|
The template is consumed by `ids-shape`'s `DefinitionList` type but does not currently render the optional `title` heading the type declares — pass a heading separately above the include if required.
|
|
39
39
|
|
|
40
|
+
**definition-list-item.twig** also accepts an optional `action` var — see [Summary modifier](#summary-modifier).
|
|
41
|
+
|
|
40
42
|
## HTML
|
|
41
43
|
|
|
42
44
|
```html
|
|
@@ -61,3 +63,44 @@ import DefinitionList, { DefinitionListItem } from "@pnx-mixtape/mxds/react"
|
|
|
61
63
|
<DefinitionListItem title="Author">Jane Smith</DefinitionListItem>
|
|
62
64
|
</DefinitionList>
|
|
63
65
|
```
|
|
66
|
+
|
|
67
|
+
`DefinitionListItem` also accepts an optional `action?: ReactNode` prop — see [Summary modifier](#summary-modifier).
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Summary modifier
|
|
72
|
+
|
|
73
|
+
`ListStyles.SUMMARY` (`mx-list--summary`, from `src/Atom/List`) turns a `DefinitionList` into a "review your answers" block: a term/value/action row layout with dividers between rows, matching the GOV.UK-style summary-list pattern used on a review-and-submit step. Each row's optional third element (`action`) is typically a "Change" link back to the step that set that answer.
|
|
74
|
+
|
|
75
|
+
```twig
|
|
76
|
+
{% include '@mixtape/Atom/DefinitionList/definition-list.twig' with {
|
|
77
|
+
summary: true,
|
|
78
|
+
items: [
|
|
79
|
+
{ title: 'Concession card', content: 'Yes, I hold a card', action: '<a href="#step-1">Change<span class="sr-only"> concession card</span></a>' },
|
|
80
|
+
{ title: 'Full name', content: 'Jane Smith', action: '<a href="#step-2">Change<span class="sr-only"> full name</span></a>' },
|
|
81
|
+
],
|
|
82
|
+
} %}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
```tsx
|
|
86
|
+
import DefinitionList, { DefinitionListItem } from "@pnx-mixtape/mxds/react"
|
|
87
|
+
import { ListStyles } from "../../enums"
|
|
88
|
+
;<DefinitionList className={ListStyles.SUMMARY}>
|
|
89
|
+
<DefinitionListItem
|
|
90
|
+
title="Concession card"
|
|
91
|
+
action={
|
|
92
|
+
<a href="#step-1">
|
|
93
|
+
Change<span className="sr-only"> concession card</span>
|
|
94
|
+
</a>
|
|
95
|
+
}
|
|
96
|
+
>
|
|
97
|
+
Yes, I hold a card
|
|
98
|
+
</DefinitionListItem>
|
|
99
|
+
</DefinitionList>
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Note the asymmetry: Twig's `definition-list.twig` has a dedicated `summary: true` boolean (mirroring its existing `columns: true`), since Twig always needs an explicit class-selection var. React's `DefinitionList` is a thin `<dl {...props}>` wrapper with no such boolean — pass the modifier class directly via `className` (or `classNames(...)` if combining with other classes), same as any other `ComponentPropsWithoutRef<"dl">` usage.
|
|
103
|
+
|
|
104
|
+
### React ⇄ Twig parity
|
|
105
|
+
|
|
106
|
+
`pnpm audit-parity` reports `title`/`action` as Twig-only for this component — that's a tooling artefact, not a real gap: it merges every `.twig` file in this directory (`definition-list.twig` **and** `definition-list-item.twig`) and diffs the combined field list against only the default-exported React component (`DefinitionList`, the `<dl>` wrapper). `title`/`content`/`action` are actually `DefinitionListItem`'s props (the named export), which do have full parity with `definition-list-item.twig` — there's just no single React component the tool can compare `definition-list-item.twig` against directly, the same limitation that gives `Checkbox`/`Radio` an `N/A` rather than a real result.
|
|
@@ -1,19 +1,53 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
+
exports[`Columns 1`] = `
|
|
4
|
+
" <dl class="mx-list--columns">
|
|
5
|
+
<div>
|
|
6
|
+
<dt>Some title</dt>
|
|
7
|
+
<dd>Some content</dd>
|
|
8
|
+
</div>
|
|
9
|
+
<div>
|
|
10
|
+
<dt>Another title</dt>
|
|
11
|
+
<dd>More content</dd>
|
|
12
|
+
</div>
|
|
13
|
+
<div>
|
|
14
|
+
<dt>Yet another title</dt>
|
|
15
|
+
<dd>And even more content</dd>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
</dl>
|
|
19
|
+
"
|
|
20
|
+
`;
|
|
21
|
+
|
|
3
22
|
exports[`Definition List 1`] = `
|
|
4
23
|
"<dl>
|
|
5
24
|
<div>
|
|
6
25
|
<dt>Some title</dt>
|
|
7
26
|
<dd>Some content</dd>
|
|
8
|
-
</div>
|
|
27
|
+
</div>
|
|
9
28
|
<div>
|
|
10
29
|
<dt>Another title</dt>
|
|
11
30
|
<dd>More content</dd>
|
|
12
|
-
</div>
|
|
31
|
+
</div>
|
|
13
32
|
<div>
|
|
14
33
|
<dt>Yet another title</dt>
|
|
15
34
|
<dd>And even more content</dd>
|
|
16
|
-
</div>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
</dl>
|
|
38
|
+
"
|
|
39
|
+
`;
|
|
40
|
+
|
|
41
|
+
exports[`Summary 1`] = `
|
|
42
|
+
" <dl class="mx-list--summary">
|
|
43
|
+
<div>
|
|
44
|
+
<dt>Concession card</dt>
|
|
45
|
+
<dd>Yes, I hold a card</dd>
|
|
46
|
+
<dd class="mx-list__action"><a href="#step-1">Change<span class="sr-only"> concession card</span></a></dd></div>
|
|
47
|
+
<div>
|
|
48
|
+
<dt>Full name</dt>
|
|
49
|
+
<dd>Jane Smith</dd>
|
|
50
|
+
<dd class="mx-list__action"><a href="#step-2">Change<span class="sr-only"> full name</span></a></dd></div>
|
|
17
51
|
|
|
18
52
|
</dl>
|
|
19
53
|
"
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
3
|
exports[`Definition List 1`] = `"<dl><div><dt>Item #1</dt><dd>Data for item #1</dd></div><div><dt>Item #2</dt><dd>Data for item #2</dd></div><div><dt>Item #3</dt><dd>Data for item #3</dd></div></dl>"`;
|
|
4
|
+
|
|
5
|
+
exports[`Summary 1`] = `"<dl class="mx-list--summary"><div><dt>Concession card</dt><dd>Yes, I hold a card</dd><dd class="mx-list__action"><a href="#step-1">Change<span class="sr-only"> concession card</span></a></dd></div><div><dt>Full name</dt><dd>Jane Smith</dd><dd class="mx-list__action"><a href="#step-2">Change<span class="sr-only"> full name</span></a></dd></div></dl>"`;
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
{% if columns %}
|
|
2
|
+
{% set class = "mx-list--columns" %}
|
|
3
|
+
{% elseif summary %}
|
|
4
|
+
{% set class = "mx-list--summary" %}
|
|
5
|
+
{% endif %}
|
|
1
6
|
{% set attributes = attributes ?? create_attribute() %}
|
|
2
|
-
<dl{{ attributes }}>
|
|
7
|
+
<dl{{ attributes.addClass(class) }}>
|
|
3
8
|
{{ items }}
|
|
4
9
|
</dl>
|
|
@@ -42,6 +42,12 @@ const Heading = ({
|
|
|
42
42
|
|
|
43
43
|
useEffect(() => {
|
|
44
44
|
if (anchor || !ref.current) return
|
|
45
|
+
if (ref.current.id) {
|
|
46
|
+
// Adopt an id already set externally (e.g. by InPageNavigation's dedup logic)
|
|
47
|
+
// eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect
|
|
48
|
+
setAnchor(ref.current.id)
|
|
49
|
+
return
|
|
50
|
+
}
|
|
45
51
|
// eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect
|
|
46
52
|
setAnchor(makeAnchor(ref.current?.textContent))
|
|
47
53
|
}, [anchor, ref])
|
|
@@ -14,10 +14,11 @@
|
|
|
14
14
|
h6,
|
|
15
15
|
.mx-heading--xs
|
|
16
16
|
) {
|
|
17
|
-
font-family: var(--heading-font-family, var(--font-family));
|
|
17
|
+
font-family: var(--heading-font-family, var(--font-family-display, var(--font-family)));
|
|
18
18
|
line-height: var(--line-height-h);
|
|
19
19
|
font-size: var(--heading-font-size, var(--font-size));
|
|
20
20
|
font-weight: var(--heading-font-weight, var(--font-weight-bold));
|
|
21
|
+
letter-spacing: var(--heading-letter-spacing, 0);
|
|
21
22
|
text-wrap: balance;
|
|
22
23
|
|
|
23
24
|
&[class*="mx-background--"] {
|
|
@@ -4,34 +4,34 @@
|
|
|
4
4
|
* Icon - Extended
|
|
5
5
|
*/
|
|
6
6
|
@layer design-system.atoms {
|
|
7
|
-
@mixin icon attachment;
|
|
8
|
-
@mixin icon blockquote;
|
|
9
|
-
@mixin icon building;
|
|
10
|
-
@mixin icon calendar;
|
|
11
|
-
@mixin icon clock;
|
|
12
|
-
@mixin icon globe;
|
|
13
|
-
@mixin icon heart-selected;
|
|
14
|
-
@mixin icon heart-unselected;
|
|
15
|
-
@mixin icon image;
|
|
16
|
-
@mixin icon home;
|
|
17
|
-
@mixin icon lock;
|
|
18
|
-
@mixin icon login;
|
|
19
|
-
@mixin icon media-play;
|
|
20
|
-
@mixin icon media-pause;
|
|
21
|
-
@mixin icon media-stop;
|
|
22
|
-
@mixin icon media-next;
|
|
23
|
-
@mixin icon media-previous;
|
|
24
|
-
@mixin icon media-rewind;
|
|
25
|
-
@mixin icon media-skip;
|
|
26
|
-
@mixin icon more;
|
|
27
|
-
@mixin icon notification;
|
|
28
|
-
@mixin icon pencil;
|
|
29
|
-
@mixin icon restart;
|
|
30
|
-
@mixin icon settings;
|
|
31
|
-
@mixin icon star-selected;
|
|
32
|
-
@mixin icon star-unselected;
|
|
33
|
-
@mixin icon tick;
|
|
34
|
-
@mixin icon trash;
|
|
35
|
-
@mixin icon user;
|
|
36
|
-
@mixin icon video;
|
|
7
|
+
@add-mixin icon attachment;
|
|
8
|
+
@add-mixin icon blockquote;
|
|
9
|
+
@add-mixin icon building;
|
|
10
|
+
@add-mixin icon calendar;
|
|
11
|
+
@add-mixin icon clock;
|
|
12
|
+
@add-mixin icon globe;
|
|
13
|
+
@add-mixin icon heart-selected;
|
|
14
|
+
@add-mixin icon heart-unselected;
|
|
15
|
+
@add-mixin icon image;
|
|
16
|
+
@add-mixin icon home;
|
|
17
|
+
@add-mixin icon lock;
|
|
18
|
+
@add-mixin icon login;
|
|
19
|
+
@add-mixin icon media-play;
|
|
20
|
+
@add-mixin icon media-pause;
|
|
21
|
+
@add-mixin icon media-stop;
|
|
22
|
+
@add-mixin icon media-next;
|
|
23
|
+
@add-mixin icon media-previous;
|
|
24
|
+
@add-mixin icon media-rewind;
|
|
25
|
+
@add-mixin icon media-skip;
|
|
26
|
+
@add-mixin icon more;
|
|
27
|
+
@add-mixin icon notification;
|
|
28
|
+
@add-mixin icon pencil;
|
|
29
|
+
@add-mixin icon restart;
|
|
30
|
+
@add-mixin icon settings;
|
|
31
|
+
@add-mixin icon star-selected;
|
|
32
|
+
@add-mixin icon star-unselected;
|
|
33
|
+
@add-mixin icon tick;
|
|
34
|
+
@add-mixin icon trash;
|
|
35
|
+
@add-mixin icon user;
|
|
36
|
+
@add-mixin icon video;
|
|
37
37
|
}
|