@boostdev/design-system-components 1.2.5 → 1.2.6

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 (64) hide show
  1. package/AGENTS.md +25 -6
  2. package/dist/client.cjs +57 -52
  3. package/dist/client.css +546 -536
  4. package/dist/client.d.cts +1 -1
  5. package/dist/client.d.ts +1 -1
  6. package/dist/client.js +57 -52
  7. package/dist/index.cjs +57 -52
  8. package/dist/index.css +546 -536
  9. package/dist/index.d.cts +1 -1
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.js +57 -52
  12. package/package.json +1 -1
  13. package/src/components/interaction/Button/Button.mdx +11 -3
  14. package/src/components/interaction/Button/Button.module.css +5 -5
  15. package/src/components/interaction/Command/Command.mdx +1 -0
  16. package/src/components/interaction/Command/Command.module.css +1 -1
  17. package/src/components/interaction/Drawer/Drawer.mdx +2 -0
  18. package/src/components/interaction/Drawer/Drawer.module.css +1 -1
  19. package/src/components/interaction/DropdownMenu/DropdownMenu.mdx +19 -0
  20. package/src/components/interaction/DropdownMenu/DropdownMenu.module.css +2 -2
  21. package/src/components/interaction/Rating/Rating.mdx +14 -0
  22. package/src/components/interaction/Rating/Rating.module.css +2 -2
  23. package/src/components/interaction/Toast/Toast.mdx +12 -4
  24. package/src/components/interaction/Toast/Toast.spec.tsx +11 -0
  25. package/src/components/interaction/Toast/Toast.tsx +11 -4
  26. package/src/components/interaction/form/Combobox/Combobox.mdx +2 -0
  27. package/src/components/interaction/form/Combobox/Combobox.module.css +3 -3
  28. package/src/components/interaction/form/FileInput/FileInput.mdx +2 -0
  29. package/src/components/interaction/form/FileInput/FileInput.module.css +2 -2
  30. package/src/components/interaction/form/NumberInput/NumberInput.mdx +4 -0
  31. package/src/components/interaction/form/NumberInput/NumberInput.module.css +3 -3
  32. package/src/components/interaction/form/SegmentedControl/SegmentedControl.mdx +1 -0
  33. package/src/components/interaction/form/SegmentedControl/SegmentedControl.module.css +1 -1
  34. package/src/components/interaction/form/Slider/Slider.mdx +4 -0
  35. package/src/components/interaction/form/Slider/Slider.module.css +8 -8
  36. package/src/components/interaction/form/Switch/Switch.mdx +3 -0
  37. package/src/components/interaction/form/Switch/Switch.module.css +1 -1
  38. package/src/components/interaction/form/Textarea/Textarea.mdx +1 -1
  39. package/src/components/interaction/form/Textarea/Textarea.module.css +1 -1
  40. package/src/components/layout/ButtonGroup/ButtonGroup.mdx +2 -0
  41. package/src/components/layout/Card/Card.mdx +8 -5
  42. package/src/components/layout/Card/Card.module.css +4 -4
  43. package/src/components/layout/SectionHeader/SectionHeader.mdx +10 -2
  44. package/src/components/layout/SectionHeader/SectionHeader.module.css +29 -17
  45. package/src/components/layout/SectionHeader/SectionHeader.spec.tsx +5 -0
  46. package/src/components/layout/SectionHeader/SectionHeader.stories.tsx +2 -1
  47. package/src/components/layout/SectionHeader/SectionHeader.tsx +1 -1
  48. package/src/components/ui/Accordion/Accordion.mdx +1 -0
  49. package/src/components/ui/Accordion/Accordion.module.css +1 -1
  50. package/src/components/ui/Alert/Alert.mdx +6 -3
  51. package/src/components/ui/Alert/Alert.module.css +1 -1
  52. package/src/components/ui/Calendar/Calendar.mdx +5 -0
  53. package/src/components/ui/Calendar/Calendar.module.css +5 -5
  54. package/src/components/ui/Carousel/Carousel.mdx +14 -0
  55. package/src/components/ui/Carousel/Carousel.module.css +1 -1
  56. package/src/components/ui/NotificationBanner/NotificationBanner.mdx +18 -0
  57. package/src/components/ui/NotificationBanner/NotificationBanner.module.css +1 -1
  58. package/src/components/ui/Pagination/Pagination.mdx +21 -0
  59. package/src/components/ui/Pagination/Pagination.module.css +5 -5
  60. package/src/components/ui/Table/Table.mdx +2 -0
  61. package/src/components/ui/Table/Table.module.css +2 -2
  62. package/src/components/ui/Tabs/Tabs.mdx +17 -0
  63. package/src/components/ui/Tabs/Tabs.module.css +3 -3
  64. package/src/css/bdc.css +1 -0
@@ -84,7 +84,7 @@
84
84
 
85
85
  @media (hover: hover) and (pointer: fine) {
86
86
  .dismiss:hover {
87
- opacity: 0.7;
87
+ opacity: var(--alert_dismiss-opacity--hover, 0.7);
88
88
  }
89
89
  }
90
90
  }
@@ -38,6 +38,11 @@ Date picker calendar grid. Use standalone or as the popover content inside a dat
38
38
  <tr><td>`--calendar_radius`</td><td>`var(--bdc-outline_radius)`</td><td>Container corner radius</td></tr>
39
39
  <tr><td>`--calendar_shadow`</td><td>`var(--bds-shadow_s)`</td><td>Container box shadow</td></tr>
40
40
  <tr><td>`--calendar_today-border`</td><td>`none`</td><td>Border on today's date cell</td></tr>
41
+ <tr><td>`--calendar_navBtn-bg--hover`</td><td>`var(--bds-color_bg--subtle)`</td><td>Month navigation button background on hover</td></tr>
42
+ <tr><td>`--calendar_day-bg--hover`</td><td>`var(--bds-color_bg--subtle)`</td><td>Day cell background on hover</td></tr>
43
+ <tr><td>`--calendar_today-color`</td><td>`var(--bds-color_interactive)`</td><td>Today's date text colour</td></tr>
44
+ <tr><td>`--calendar_day-bg--selected`</td><td>`var(--bds-color_interactive)`</td><td>Selected day background</td></tr>
45
+ <tr><td>`--calendar_day-color--selected`</td><td>`var(--bds-color_on-interactive)`</td><td>Selected day text colour</td></tr>
41
46
  </tbody>
42
47
  </table>
43
48
 
@@ -51,7 +51,7 @@
51
51
 
52
52
  @media (hover: hover) and (pointer: fine) {
53
53
  .navBtn:hover {
54
- background-color: var(--bds-color_bg--subtle);
54
+ background-color: var(--calendar_navBtn-bg--hover, var(--bds-color_bg--subtle));
55
55
  }
56
56
  }
57
57
 
@@ -95,22 +95,22 @@
95
95
 
96
96
  @media (hover: hover) and (pointer: fine) {
97
97
  .day:not(.disabled, .selected):hover {
98
- background-color: var(--bds-color_bg--subtle);
98
+ background-color: var(--calendar_day-bg--hover, var(--bds-color_bg--subtle));
99
99
  }
100
100
  }
101
101
 
102
102
  .today {
103
103
  font-weight: var(--bds-font_weight--semibold);
104
104
 
105
- --bdc_color: var(--bds-color_interactive);
105
+ --bdc_color: var(--calendar_today-color, var(--bds-color_interactive));
106
106
 
107
107
  border: var(--calendar_today-border, none);
108
108
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
109
109
  }
110
110
 
111
111
  .selected {
112
- background-color: var(--bds-color_interactive);
113
- color: var(--bds-color_on-interactive);
112
+ background-color: var(--calendar_day-bg--selected, var(--bds-color_interactive));
113
+ color: var(--calendar_day-color--selected, var(--bds-color_on-interactive));
114
114
  font-weight: var(--bds-font_weight--semibold);
115
115
  }
116
116
 
@@ -24,6 +24,20 @@ Horizontally scrollable slide container with previous/next navigation.
24
24
 
25
25
  <ArgTypes of={Stories} />
26
26
 
27
+ ## CSS variables
28
+
29
+
30
+ <table>
31
+ <thead>
32
+ <tr><th>Variable</th><th>Default</th><th>Description</th></tr>
33
+ </thead>
34
+ <tbody>
35
+ <tr><td>`--carousel_indicator-radius`</td><td>`var(--bds-border_radius--circle)`</td><td>Navigation button border radius</td></tr>
36
+ <tr><td>`--carousel_navBtn-bg--hover`</td><td>`var(--bds-color_bg--subtle)`</td><td>Navigation button background on hover</td></tr>
37
+ </tbody>
38
+ </table>
39
+
40
+
27
41
  ## Accessibility
28
42
 
29
43
  - Prev/next buttons have `aria-label="Previous"` / `"Next"`
@@ -57,7 +57,7 @@
57
57
 
58
58
  @media (hover: hover) and (pointer: fine) {
59
59
  .navBtn:hover {
60
- background-color: var(--bds-color_bg--subtle);
60
+ background-color: var(--carousel_navBtn-bg--hover, var(--bds-color_bg--subtle));
61
61
  }
62
62
  }
63
63
 
@@ -39,6 +39,24 @@ Full-width banner for page-level system messages. Sits at the top of the page or
39
39
 
40
40
  <ArgTypes of={Stories} />
41
41
 
42
+ ## CSS variables
43
+
44
+
45
+ <table>
46
+ <thead>
47
+ <tr><th>Variable</th><th>Default</th><th>Description</th></tr>
48
+ </thead>
49
+ <tbody>
50
+ <tr><td>`--banner_bg`</td><td>Per variant</td><td>Banner background colour</td></tr>
51
+ <tr><td>`--banner_text`</td><td>Per variant</td><td>Banner text colour</td></tr>
52
+ <tr><td>`--banner_border`</td><td>Per variant</td><td>Banner bottom border colour</td></tr>
53
+ <tr><td>`--banner_dismiss-radius`</td><td>`var(--bds-border_radius--circle)`</td><td>Dismiss button border radius</td></tr>
54
+ <tr><td>`--banner_dismiss-border`</td><td>`none`</td><td>Dismiss button border</td></tr>
55
+ <tr><td>`--banner_dismiss-opacity--hover`</td><td>`0.7`</td><td>Dismiss button opacity on hover</td></tr>
56
+ </tbody>
57
+ </table>
58
+
59
+
42
60
  ## Accessibility
43
61
 
44
62
  - Uses `role="alert"` for error/warning variants and `role="status"` for info/success
@@ -72,7 +72,7 @@
72
72
 
73
73
  @media (hover: hover) and (pointer: fine) {
74
74
  .dismiss:hover {
75
- opacity: 0.7;
75
+ opacity: var(--banner_dismiss-opacity--hover, 0.7);
76
76
  }
77
77
  }
78
78
  }
@@ -32,6 +32,27 @@ Navigation control for paged data sets. Renders prev/next buttons plus numbered
32
32
 
33
33
  <ArgTypes of={Stories} />
34
34
 
35
+ ## CSS variables
36
+
37
+
38
+ <table>
39
+ <thead>
40
+ <tr><th>Variable</th><th>Default</th><th>Description</th></tr>
41
+ </thead>
42
+ <tbody>
43
+ <tr><td>`--pagination_radius`</td><td>`var(--bds-border_radius--full)`</td><td>Page button border radius</td></tr>
44
+ <tr><td>`--btn_bg`</td><td>`transparent`</td><td>Default button background</td></tr>
45
+ <tr><td>`--btn_color`</td><td>`var(--bds-color_on-bg)`</td><td>Default button text colour</td></tr>
46
+ <tr><td>`--btn_border`</td><td>`var(--bds-color_bg--subtle)`</td><td>Default button border colour</td></tr>
47
+ <tr><td>`--btn_bg--hover`</td><td>`var(--bds-color_bg--subtle)`</td><td>Button background on hover</td></tr>
48
+ <tr><td>`--btn_color--hover`</td><td>`var(--bds-color_interactive_on-bg)`</td><td>Button text colour on hover</td></tr>
49
+ <tr><td>`--btn_bg--active`</td><td>`var(--bds-color_interactive)`</td><td>Active (current page) button background</td></tr>
50
+ <tr><td>`--btn_color--active`</td><td>`var(--bds-color_on-interactive)`</td><td>Active (current page) button text colour</td></tr>
51
+ <tr><td>`--btn_border--active`</td><td>`var(--bds-color_interactive)`</td><td>Active (current page) button border colour</td></tr>
52
+ </tbody>
53
+ </table>
54
+
55
+
35
56
  ## Accessibility
36
57
 
37
58
  - Wraps in `<nav aria-label="Pagination">`
@@ -53,15 +53,15 @@
53
53
 
54
54
  @media (hover: hover) and (pointer: fine) {
55
55
  .button:not(:disabled, .--active):hover {
56
- --btn_bg: var(--bds-color_bg--subtle);
57
- --btn_color: var(--bds-color_interactive_on-bg);
56
+ --btn_bg: var(--btn_bg--hover, var(--bds-color_bg--subtle));
57
+ --btn_color: var(--btn_color--hover, var(--bds-color_interactive_on-bg));
58
58
  }
59
59
  }
60
60
 
61
61
  .button.--active {
62
- --btn_bg: var(--bds-color_interactive);
63
- --btn_color: var(--bds-color_on-interactive);
64
- --btn_border: var(--bds-color_interactive);
62
+ --btn_bg: var(--btn_bg--active, var(--bds-color_interactive));
63
+ --btn_color: var(--btn_color--active, var(--bds-color_on-interactive));
64
+ --btn_border: var(--btn_border--active, var(--bds-color_interactive));
65
65
  }
66
66
 
67
67
  .button.--nav svg {
@@ -40,6 +40,8 @@ Data table with optional sortable columns and caption.
40
40
  <tbody>
41
41
  <tr><td>`--table_border`</td><td>`none`</td><td>Container border</td></tr>
42
42
  <tr><td>`--table_radius`</td><td>`var(--bdc-outline_radius)`</td><td>Container corner radius</td></tr>
43
+ <tr><td>`--table_sortBtn-color--hover`</td><td>`var(--bds-color_on-bg)`</td><td>Sort button text colour on hover</td></tr>
44
+ <tr><td>`--table_row-bg--hover`</td><td>`var(--bds-color_bg--subtle)`</td><td>Table row background on hover</td></tr>
43
45
  </tbody>
44
46
  </table>
45
47
 
@@ -65,7 +65,7 @@
65
65
 
66
66
  @media (hover: hover) and (pointer: fine) {
67
67
  .sortButton:hover {
68
- color: var(--bds-color_on-bg);
68
+ color: var(--table_sortBtn-color--hover, var(--bds-color_on-bg));
69
69
  }
70
70
  }
71
71
 
@@ -97,7 +97,7 @@
97
97
 
98
98
  @media (hover: hover) and (pointer: fine) {
99
99
  .tbody .tr:hover {
100
- background-color: var(--bds-color_bg--subtle);
100
+ background-color: var(--table_row-bg--hover, var(--bds-color_bg--subtle));
101
101
  }
102
102
  }
103
103
 
@@ -33,6 +33,23 @@ Organises content into discrete panels accessible via a horizontal tab list.
33
33
 
34
34
  <ArgTypes of={Stories} />
35
35
 
36
+ ## CSS variables
37
+
38
+
39
+ <table>
40
+ <thead>
41
+ <tr><th>Variable</th><th>Default</th><th>Description</th></tr>
42
+ </thead>
43
+ <tbody>
44
+ <tr><td>`--tab_color`</td><td>`var(--bds-color_on-bg)`</td><td>Default tab text colour</td></tr>
45
+ <tr><td>`--tab_border-color`</td><td>`transparent`</td><td>Default tab bottom border colour</td></tr>
46
+ <tr><td>`--tab_color--active`</td><td>`var(--bds-color_interactive_on-bg)`</td><td>Active tab text colour</td></tr>
47
+ <tr><td>`--tab_border-color--active`</td><td>`var(--bds-color_interactive)`</td><td>Active tab bottom border colour</td></tr>
48
+ <tr><td>`--tab_color--hover`</td><td>`var(--bds-color_interactive_on-bg)`</td><td>Tab text colour on hover</td></tr>
49
+ </tbody>
50
+ </table>
51
+
52
+
36
53
  ## Accessibility
37
54
 
38
55
  - Implements ARIA tabs pattern: `role="tablist"`, `role="tab"`, `role="tabpanel"`
@@ -26,8 +26,8 @@
26
26
  }
27
27
 
28
28
  .tab.--active {
29
- --tab_color: var(--bds-color_interactive_on-bg);
30
- --tab_border-color: var(--bds-color_interactive);
29
+ --tab_color: var(--tab_color--active, var(--bds-color_interactive_on-bg));
30
+ --tab_border-color: var(--tab_border-color--active, var(--bds-color_interactive));
31
31
  }
32
32
 
33
33
  .tab:disabled {
@@ -43,7 +43,7 @@
43
43
 
44
44
  @media (hover: hover) and (pointer: fine) {
45
45
  .tab:not(:disabled, .--active):hover {
46
- --tab_color: var(--bds-color_interactive_on-bg);
46
+ --tab_color: var(--tab_color--hover, var(--bds-color_interactive_on-bg));
47
47
  }
48
48
  }
49
49
 
package/src/css/bdc.css CHANGED
@@ -68,6 +68,7 @@
68
68
  --bdc-outline_width: 1px;
69
69
  --bdc-outline_offset: -1px; /* available for consumer use; bdc borders now use inset box-shadow */
70
70
  --bdc-outline_radius: var(--bds-border_radius--xs);
71
+ --bdc-outline_radius--l: 1.5em;
71
72
 
72
73
  /* Shadow: opt-in; transparent (not 'none') so it's valid in a comma-separated box-shadow list */
73
74
  --bdc-outline_shadow: 0 0 0 0 transparent;