@kaizen/components 1.68.2 → 1.68.4

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 (140) hide show
  1. package/dist/cjs/Filter/FilterBar/context/FilterBarContext.cjs +13 -3
  2. package/dist/cjs/Filter/FilterBar/context/reducer/filterBarStateReducer.cjs +1 -1
  3. package/dist/cjs/Filter/FilterBar/context/reducer/setupFilterBarState.cjs +4 -0
  4. package/dist/cjs/Filter/FilterBar/context/utils/updateDependentFilters.cjs +1 -1
  5. package/dist/cjs/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.cjs +7 -2
  6. package/dist/cjs/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.module.scss.cjs +2 -1
  7. package/dist/cjs/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/FilterDateRangePickerField.cjs +3 -0
  8. package/dist/cjs/Tile/subcomponents/GenericTile/GenericTile.cjs +16 -3
  9. package/dist/esm/Filter/FilterBar/context/FilterBarContext.mjs +13 -3
  10. package/dist/esm/Filter/FilterBar/context/reducer/filterBarStateReducer.mjs +1 -1
  11. package/dist/esm/Filter/FilterBar/context/reducer/setupFilterBarState.mjs +4 -0
  12. package/dist/esm/Filter/FilterBar/context/utils/updateDependentFilters.mjs +1 -1
  13. package/dist/esm/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.mjs +6 -2
  14. package/dist/esm/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.module.scss.mjs +2 -1
  15. package/dist/esm/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/FilterDateRangePickerField.mjs +3 -0
  16. package/dist/esm/Tile/subcomponents/GenericTile/GenericTile.mjs +16 -3
  17. package/dist/styles.css +81 -77
  18. package/dist/types/Filter/FilterBar/context/FilterBarContext.d.ts +1 -0
  19. package/dist/types/Filter/FilterBar/context/types.d.ts +1 -0
  20. package/dist/types/Tile/subcomponents/GenericTile/GenericTile.d.ts +3 -1
  21. package/locales/en.json +8 -0
  22. package/package.json +1 -1
  23. package/src/Avatar/_docs/Avatar.stickersheet.stories.tsx +30 -32
  24. package/src/AvatarGroup/_docs/AvatarGroup.stickersheet.stories.tsx +14 -16
  25. package/src/Badge/_docs/Badge.stickersheet.stories.tsx +22 -22
  26. package/src/Brand/_docs/Brand.stickersheet.stories.tsx +24 -26
  27. package/src/BrandMoment/_docs/BrandMoment.stickersheet.stories.tsx +35 -39
  28. package/src/ButtonGroup/_docs/ButtonGroup.stickersheet.stories.tsx +117 -122
  29. package/src/Calendar/CalendarPopover/_docs/CalendarPopover.stickersheet.stories.tsx +4 -4
  30. package/src/Calendar/CalendarRange/_docs/CalendarRange.stickersheet.stories.tsx +22 -30
  31. package/src/Calendar/CalendarSingle/_docs/CalendarSingle.stickersheet.stories.tsx +58 -58
  32. package/src/Card/_docs/Card.stickersheet.stories.tsx +12 -16
  33. package/src/Checkbox/Checkbox/_docs/Checkbox.stickersheet.stories.tsx +24 -27
  34. package/src/Checkbox/CheckboxField/_docs/CheckboxField.stickersheet.stories.tsx +31 -34
  35. package/src/Checkbox/CheckboxGroup/_docs/CheckboxGroup.stickersheet.stories.tsx +25 -29
  36. package/src/ClearButton/_docs/ClearButton.stickersheet.stories.tsx +9 -9
  37. package/src/Collapsible/Collapsible/_docs/Collapsible.stickersheet.stories.tsx +56 -62
  38. package/src/Collapsible/CollapsibleGroup/_docs/CollapsibleGroup.stickersheet.stories.tsx +19 -21
  39. package/src/Collapsible/ExpertAdviceCollapsible/_docs/ExpertAdviceCollapsible.stickersheets.stories.tsx +6 -8
  40. package/src/DatePicker/_docs/DatePicker.stickersheet.stories.tsx +129 -144
  41. package/src/DatePicker/_docs/getLocale.stickersheet.stories.tsx +9 -11
  42. package/src/DateRangePicker/_docs/DateRangePicker.stickersheet.stories.tsx +26 -28
  43. package/src/Divider/_docs/Divider.stickersheet.stories.tsx +13 -10
  44. package/src/EmptyState/_docs/EmptyState.stickersheet.stories.tsx +7 -2
  45. package/src/ErrorPage/_docs/ErrorPage.stickersheet.stories.tsx +16 -20
  46. package/src/FieldGroup/_docs/FieldGroup.stickersheet.stories.tsx +5 -8
  47. package/src/FieldMessage/_docs/FieldMessage.stickersheet.stories.tsx +10 -20
  48. package/src/Filter/Filter/_docs/Filter.stickersheet.stories.tsx +13 -15
  49. package/src/Filter/FilterBar/FilterBar.spec.tsx +0 -64
  50. package/src/Filter/FilterBar/_docs/FilterBar.spec.stories.tsx +249 -0
  51. package/src/Filter/FilterBar/_docs/FilterBar.stickersheet.stories.tsx +34 -48
  52. package/src/Filter/FilterBar/_docs/FilterBar.stories.tsx +1 -1
  53. package/src/Filter/FilterBar/context/FilterBarContext.tsx +17 -5
  54. package/src/Filter/FilterBar/context/reducer/filterBarStateReducer.spec.ts +3 -0
  55. package/src/Filter/FilterBar/context/reducer/filterBarStateReducer.ts +1 -1
  56. package/src/Filter/FilterBar/context/reducer/setupFilterBarState.spec.tsx +40 -0
  57. package/src/Filter/FilterBar/context/reducer/setupFilterBarState.ts +5 -0
  58. package/src/Filter/FilterBar/context/reducer/updateSingleFilter.spec.ts +2 -0
  59. package/src/Filter/FilterBar/context/reducer/updateValues.spec.ts +5 -0
  60. package/src/Filter/FilterBar/context/types.ts +1 -0
  61. package/src/Filter/FilterBar/context/utils/checkShouldUpdateValues.spec.ts +1 -0
  62. package/src/Filter/FilterBar/context/utils/getInactiveFilters.spec.ts +2 -0
  63. package/src/Filter/FilterBar/context/utils/getIsUsableWhenArgs.spec.ts +1 -0
  64. package/src/Filter/FilterBar/context/utils/updateDependentFilters.spec.ts +8 -0
  65. package/src/Filter/FilterBar/context/utils/updateDependentFilters.ts +1 -1
  66. package/src/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.module.scss +4 -0
  67. package/src/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.tsx +5 -2
  68. package/src/Filter/FilterButton/_docs/filter-buttons.stickersheet.stories.tsx +45 -51
  69. package/src/Filter/FilterDatePicker/_docs/FilterDatePicker.stickersheet.stories.tsx +74 -93
  70. package/src/Filter/FilterDateRangePicker/_docs/FilterDateRangePicker.stickersheet.stories.tsx +110 -128
  71. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/FilterDateRangePickerField.tsx +4 -0
  72. package/src/Filter/FilterSelect/_docs/FilterSelect.stickersheet.stories.tsx +239 -249
  73. package/src/GuidanceBlock/_docs/GuidanceBlock.stickersheet.stories.tsx +38 -40
  74. package/src/Heading/_docs/Heading.stickersheet.stories.tsx +101 -111
  75. package/src/Icon/_docs/Icon.stickersheet.stories.tsx +13 -19
  76. package/src/Illustration/Scene/BrandMomentCaptureIntro/_docs/BrandMomentCaptureIntro.stickersheet.stories.tsx +8 -8
  77. package/src/Illustration/Scene/_docs/Scene.stickersheet.stories.tsx +139 -185
  78. package/src/Illustration/subcomponents/VideoPlayer/VideoPlayer.stickersheet.stories.tsx +39 -41
  79. package/src/Input/Input/_docs/Input.stickersheet.stories.tsx +30 -33
  80. package/src/Input/InputRange/_docs/InputRange.stickersheet.stories.tsx +21 -20
  81. package/src/Input/InputSearch/_docs/InputSearch.stickersheet.stories.tsx +137 -144
  82. package/src/Label/_docs/Label.stickersheet.stories.tsx +78 -85
  83. package/src/LabelledMessage/_docs/LabelledMessage.stickersheet.stories.tsx +3 -5
  84. package/src/LikertScaleLegacy/_docs/LikertScaleLegacy.stickersheet.stories.tsx +82 -82
  85. package/src/Loading/LoadingGraphic/_docs/LoadingGraphic.stickersheet.stories.tsx +18 -20
  86. package/src/Loading/LoadingGraphic/_docs/LoadingGraphic.stories.tsx +46 -52
  87. package/src/Loading/LoadingHeading/_docs/LoadingHeading.stickersheet.stories.tsx +14 -18
  88. package/src/Loading/LoadingHeading/_docs/LoadingHeading.stories.tsx +7 -13
  89. package/src/Loading/LoadingParagraph/_docs/LoadingParagraph.stickersheet.stories.tsx +14 -16
  90. package/src/Loading/LoadingSpinner/_docs/LoadingSpinner.stickersheet.stories.tsx +13 -15
  91. package/src/MultiSelect/_docs/MultiSelect.stickersheet.stories.tsx +69 -74
  92. package/src/MultiSelect/subcomponents/Checkbox/_docs/Checkbox.stickersheet.stories.tsx +22 -28
  93. package/src/MultiSelect/subcomponents/MultiSelectOptionField/_docs/MultiSelectOptionField.stickersheet.stories.tsx +62 -67
  94. package/src/MultiSelect/subcomponents/MultiSelectOptions/_docs/MultiSelectOptions.stickersheet.stories.tsx +21 -28
  95. package/src/MultiSelect/subcomponents/MultiSelectToggle/_docs/MultiSelectToggle.stickersheet.stories.tsx +69 -93
  96. package/src/Notification/GlobalNotification/_docs/GlobalNotification.stickersheet.stories.tsx +13 -16
  97. package/src/Notification/InlineNotification/_docs/InlineNotification.stickersheet.stories.tsx +13 -16
  98. package/src/Pagination/_docs/Pagination.stickersheet.stories.tsx +60 -74
  99. package/src/Pagination/subcomponents/DirectionalLink/_docs/DirectionalLink.stickersheet.stories.tsx +21 -23
  100. package/src/Pagination/subcomponents/PaginationLink/_docs/PaginationLink.stickersheet.stories.tsx +24 -28
  101. package/src/Popover/_docs/Popover.stickersheet.stories.tsx +33 -45
  102. package/src/ProgressBar/_docs/ProgressBar.stickersheet.stories.tsx +15 -26
  103. package/src/Radio/Radio/_docs/Radio.stickersheet.stories.tsx +46 -54
  104. package/src/Radio/RadioField/_docs/RadioField.stickersheet.stories.tsx +51 -54
  105. package/src/Radio/RadioGroup/_docs/RadioGroup.stickersheet.stories.tsx +80 -86
  106. package/src/RichTextEditor/EditableRichTextContent/_docs/EditableRichTextContent.stickersheet.stories.tsx +42 -58
  107. package/src/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/_docs/ToggleIconButton.stickersheet.stories.tsx +34 -57
  108. package/src/SearchField/_docs/SearchField.stickersheet.stories.tsx +32 -31
  109. package/src/Select/_docs/Select.stickersheet.stories.tsx +128 -127
  110. package/src/Slider/_docs/Slider.stickersheet.stories.tsx +85 -96
  111. package/src/SplitButton/_docs/SplitButton.stickersheet.stories.tsx +62 -68
  112. package/src/Tag/_docs/Tag.stickersheet.stories.tsx +49 -57
  113. package/src/Text/_docs/Text.stickersheet.stories.tsx +43 -47
  114. package/src/TextArea/_docs/TextArea.stickersheet.stories.tsx +28 -31
  115. package/src/TextAreaField/_docs/TextAreaField.stickersheet.stories.tsx +71 -89
  116. package/src/TextField/_docs/TextField.stickersheet.stories.tsx +47 -50
  117. package/src/Tile/InformationTile/_docs/InformationTile.mdx +4 -0
  118. package/src/Tile/InformationTile/_docs/InformationTile.stickersheet.stories.tsx +15 -21
  119. package/src/Tile/InformationTile/_docs/InformationTile.stories.tsx +7 -0
  120. package/src/Tile/MultiActionTile/_docs/MultiActionTile.stickersheet.stories.tsx +15 -21
  121. package/src/Tile/TileGrid/_docs/TileGrid.stickersheet.stories.tsx +91 -99
  122. package/src/Tile/subcomponents/GenericTile/GenericTile.spec.stories.tsx +65 -5
  123. package/src/Tile/subcomponents/GenericTile/GenericTile.tsx +20 -2
  124. package/src/Tile/subcomponents/GenericTile/_docs/GenericTile.stickersheet.stories.tsx +15 -21
  125. package/src/TimeField/_docs/TimeField.stickersheet.stories.tsx +74 -83
  126. package/src/TitleBlockZen/_docs/TitleBlockZen.stories.tsx +73 -75
  127. package/src/ToggleSwitch/ToggleSwitch/_docs/ToggleSwitch.stickersheet.stories.tsx +24 -27
  128. package/src/ToggleSwitch/ToggleSwitchField/_docs/ToggleSwitchField.stickersheet.stories.tsx +47 -50
  129. package/src/Well/_docs/Well.stickersheet.stories.tsx +31 -41
  130. package/src/__actions__/Button/v1/Button/_docs/Button.stickersheet.stories.tsx +107 -146
  131. package/src/__actions__/Button/v1/IconButton/_docs/IconButton.stickersheet.stories.tsx +26 -29
  132. package/src/__actions__/Button/v3/_docs/Button.stickersheet.stories.tsx +141 -159
  133. package/src/__actions__/Menu/v1/_docs/Menu.stickersheet.stories.tsx +33 -36
  134. package/src/__future__/Icon/_docs/Icon.docs.stories.tsx +17 -23
  135. package/src/__future__/Icon/_docs/Icon.stickersheet.stories.tsx +63 -72
  136. package/src/__future__/Select/_docs/Select.stickersheet.stories.tsx +287 -309
  137. package/src/__future__/Tag/RemovableTag/_docs/RemovableTag.stickersheet.stories.tsx +42 -46
  138. package/src/__future__/Tag/Tag/_docs/Tag.stickersheet.stories.tsx +14 -17
  139. package/src/__overlays__/Tooltip/v1/_docs/Tooltip.stickersheet.stories.tsx +101 -103
  140. package/src/__overlays__/Tooltip/v3/_docs/Tooltip.stickersheet.stories.tsx +3 -4
@@ -28,6 +28,7 @@ export type FilterBarStateFilters<ValuesMap extends FiltersValues> = {
28
28
 
29
29
  export type FilterBarState<ValuesMap extends FiltersValues> = {
30
30
  hasUpdatedValues: boolean
31
+ hasRemovableFilter: boolean
31
32
  filters: FilterBarStateFilters<ValuesMap>
32
33
  activeFilterIds: Set<keyof ValuesMap>
33
34
  values: Partial<ValuesMap>
@@ -27,6 +27,7 @@ const state = {
27
27
  values: {},
28
28
  dependentFilterIds: new Set(),
29
29
  hasUpdatedValues: false,
30
+ hasRemovableFilter: false,
30
31
  } satisfies FilterBarState<Values>
31
32
 
32
33
  describe("checkShouldUpdateValues()", () => {
@@ -31,6 +31,7 @@ describe("getInactiveFilters()", () => {
31
31
  values: {},
32
32
  dependentFilterIds: new Set(),
33
33
  hasUpdatedValues: false,
34
+ hasRemovableFilter: false,
34
35
  } satisfies FilterBarState<Values>
35
36
 
36
37
  expect(getInactiveFilters<Values>(state)).toEqual([
@@ -61,6 +62,7 @@ describe("getInactiveFilters()", () => {
61
62
  values: {},
62
63
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
63
64
  hasUpdatedValues: false,
65
+ hasRemovableFilter: false,
64
66
  } satisfies FilterBarState<Values>
65
67
 
66
68
  expect(getInactiveFilters<Values>(state)).toEqual([stateFilters.flavour])
@@ -31,6 +31,7 @@ describe("getIsUsableWhenArgs()", () => {
31
31
  values: { flavour: "jasmine" },
32
32
  dependentFilterIds: new Set(),
33
33
  hasUpdatedValues: false,
34
+ hasRemovableFilter: false,
34
35
  } satisfies FilterBarState<Values>
35
36
 
36
37
  const usableArgs = getIsUsableWhenArgs<Values>(state)
@@ -38,6 +38,7 @@ describe("updateDependentFilters()", () => {
38
38
  values: { flavour: "jasmine" },
39
39
  dependentFilterIds: new Set(),
40
40
  hasUpdatedValues: false,
41
+ hasRemovableFilter: false,
41
42
  } satisfies FilterBarState<Values>
42
43
 
43
44
  const newState = updateDependentFilters<Values>(state)
@@ -53,6 +54,7 @@ describe("updateDependentFilters()", () => {
53
54
  values: { flavour: "jasmine" },
54
55
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
55
56
  hasUpdatedValues: false,
57
+ hasRemovableFilter: false,
56
58
  } satisfies FilterBarState<Values>
57
59
 
58
60
  const newState = updateDependentFilters<Values>(state)
@@ -77,6 +79,7 @@ describe("updateDependentFilters()", () => {
77
79
  values: { flavour: "jasmine" },
78
80
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
79
81
  hasUpdatedValues: false,
82
+ hasRemovableFilter: false,
80
83
  } satisfies FilterBarState<Values>
81
84
 
82
85
  updateDependentFilters<Values>(state)
@@ -98,6 +101,7 @@ describe("updateDependentFilters()", () => {
98
101
  values: { flavour: "jasmine" },
99
102
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
100
103
  hasUpdatedValues: false,
104
+ hasRemovableFilter: false,
101
105
  } satisfies FilterBarState<Values>
102
106
 
103
107
  const newState = updateDependentFilters<Values>(state)
@@ -117,6 +121,7 @@ describe("updateDependentFilters()", () => {
117
121
  values: { flavour: "jasmine" },
118
122
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
119
123
  hasUpdatedValues: false,
124
+ hasRemovableFilter: false,
120
125
  } satisfies FilterBarState<Values>
121
126
 
122
127
  const newState = updateDependentFilters<Values>(state)
@@ -139,6 +144,7 @@ describe("updateDependentFilters()", () => {
139
144
  values: { flavour: "jasmine", sugarLevel: 50 },
140
145
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
141
146
  hasUpdatedValues: false,
147
+ hasRemovableFilter: false,
142
148
  } satisfies FilterBarState<Values>
143
149
 
144
150
  const newState = updateDependentFilters<Values>(state)
@@ -161,6 +167,7 @@ describe("updateDependentFilters()", () => {
161
167
  values: { flavour: "jasmine" },
162
168
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
163
169
  hasUpdatedValues: false,
170
+ hasRemovableFilter: false,
164
171
  } satisfies FilterBarState<Values>
165
172
 
166
173
  const newState = updateDependentFilters<Values>(state)
@@ -176,6 +183,7 @@ describe("updateDependentFilters()", () => {
176
183
  values: { sugarLevel: 50 },
177
184
  dependentFilterIds: new Set<keyof Values>(["sugarLevel"]),
178
185
  hasUpdatedValues: false,
186
+ hasRemovableFilter: false,
179
187
  } satisfies FilterBarState<Values>
180
188
 
181
189
  const newState = updateDependentFilters<Values>(state)
@@ -22,7 +22,7 @@ export const updateDependentFilters = <ValuesMap extends FiltersValues>(
22
22
 
23
23
  if (!isUsable) {
24
24
  state.activeFilterIds.delete(id)
25
- state.values[id] = undefined
25
+ delete state.values[id]
26
26
  state.hasUpdatedValues = true
27
27
  return
28
28
  }
@@ -1,3 +1,7 @@
1
1
  .clearAllButton {
2
2
  white-space: nowrap;
3
3
  }
4
+
5
+ .hidden {
6
+ visibility: hidden;
7
+ }
@@ -1,5 +1,6 @@
1
1
  import React from "react"
2
2
  import { useIntl } from "@cultureamp/i18n-react-intl"
3
+ import classnames from "classnames"
3
4
  import { Button } from "~components/__actions__/v2"
4
5
  import { useFilterBarContext } from "../../context/FilterBarContext"
5
6
  import styles from "./ClearAllButton.module.scss"
@@ -19,13 +20,15 @@ export const ClearAllButton = (): JSX.Element => {
19
20
  description: "Button aria-label to clear all values within the filter bar",
20
21
  })
21
22
 
22
- const { clearAllFilters } = useFilterBarContext()
23
+ const { clearAllFilters, isClearable } = useFilterBarContext()
23
24
 
24
25
  return (
25
26
  <Button
26
27
  label={clearButtonLabel}
27
28
  aria-label={clearButtonAriaLabel}
28
- classNameOverride={styles.clearAllButton}
29
+ classNameOverride={classnames(styles.clearAllButton, {
30
+ [styles.hidden]: !isClearable,
31
+ })}
29
32
  secondary
30
33
  onClick={clearAllFilters}
31
34
  />
@@ -19,61 +19,55 @@ export default {
19
19
  const StickerSheetTemplate: StickerSheetStory = {
20
20
  render: () => (
21
21
  <>
22
- <StickerSheet heading="Filter Button Base">
23
- <StickerSheet.Header
24
- headings={["Default", "Hover", "Active", "Focus"]}
25
- />
26
- <StickerSheet.Body>
27
- <StickerSheet.Row>
28
- <FilterButtonBase>Label</FilterButtonBase>
29
- <FilterButtonBase
30
- data-sb-pseudo-styles="hover"
31
- data-sb-a11y-color-contrast-disable
32
- >
33
- Label
34
- </FilterButtonBase>
35
- <FilterButtonBase
36
- data-sb-pseudo-styles="active"
37
- data-sb-a11y-color-contrast-disable
38
- >
39
- Label
40
- </FilterButtonBase>
41
- <FilterButtonBase
42
- data-sb-pseudo-styles="focus"
43
- data-sb-a11y-color-contrast-disable
44
- >
45
- Label
46
- </FilterButtonBase>
47
- </StickerSheet.Row>
48
- </StickerSheet.Body>
22
+ <StickerSheet
23
+ title="Filter Button Base"
24
+ headers={["Default", "Hover", "Active", "Focus"]}
25
+ >
26
+ <StickerSheet.Row>
27
+ <FilterButtonBase>Label</FilterButtonBase>
28
+ <FilterButtonBase
29
+ data-sb-pseudo-styles="hover"
30
+ data-sb-a11y-color-contrast-disable
31
+ >
32
+ Label
33
+ </FilterButtonBase>
34
+ <FilterButtonBase
35
+ data-sb-pseudo-styles="active"
36
+ data-sb-a11y-color-contrast-disable
37
+ >
38
+ Label
39
+ </FilterButtonBase>
40
+ <FilterButtonBase
41
+ data-sb-pseudo-styles="focus"
42
+ data-sb-a11y-color-contrast-disable
43
+ >
44
+ Label
45
+ </FilterButtonBase>
46
+ </StickerSheet.Row>
49
47
  </StickerSheet>
50
48
 
51
- <StickerSheet heading="Filter Button">
52
- <StickerSheet.Header
53
- headings={["Closed", "Open", "Has selected value"]}
54
- />
55
- <StickerSheet.Body>
56
- <StickerSheet.Row>
57
- <FilterButton label="Desserts" />
58
- <FilterButton label="Desserts" isOpen />
59
- <FilterButton label="Desserts" selectedValue="Cake" />
60
- </StickerSheet.Row>
61
- </StickerSheet.Body>
49
+ <StickerSheet
50
+ title="Filter Button"
51
+ headers={["Closed", "Open", "Has selected value"]}
52
+ >
53
+ <StickerSheet.Row>
54
+ <FilterButton label="Desserts" />
55
+ <FilterButton label="Desserts" isOpen />
56
+ <FilterButton label="Desserts" selectedValue="Cake" />
57
+ </StickerSheet.Row>
62
58
  </StickerSheet>
63
59
 
64
- <StickerSheet heading="Filter Button Removable">
65
- <StickerSheet.Body>
66
- <StickerSheet.Row rowTitleWidth={70}>
67
- <FilterButtonRemovable
68
- triggerButtonProps={{
69
- label: "Desserts",
70
- }}
71
- removeButtonProps={{
72
- onClick: () => undefined,
73
- }}
74
- />
75
- </StickerSheet.Row>
76
- </StickerSheet.Body>
60
+ <StickerSheet title="Filter Button Removable">
61
+ <StickerSheet.Row>
62
+ <FilterButtonRemovable
63
+ triggerButtonProps={{
64
+ label: "Desserts",
65
+ }}
66
+ removeButtonProps={{
67
+ onClick: () => undefined,
68
+ }}
69
+ />
70
+ </StickerSheet.Row>
77
71
  </StickerSheet>
78
72
  </>
79
73
  ),
@@ -38,79 +38,73 @@ const StickerSheetTemplate: StickerSheetStory = {
38
38
  return (
39
39
  <StaticIntlProvider locale="en">
40
40
  <StickerSheet
41
- heading="Filter Date Picker"
41
+ title="Filter Date Picker"
42
42
  style={{ paddingBottom: IS_CHROMATIC ? "33rem" : undefined }}
43
+ headers={["No value display", "Value display"]}
43
44
  >
44
- <StickerSheet.Header
45
- headings={["No value display", "Value display"]}
46
- />
47
- <StickerSheet.Body>
48
- <StickerSheet.Row>
49
- <FilterDatePicker
50
- isOpen={isOpenNoValue}
51
- setIsOpen={setIsOpenNoValue}
52
- renderTrigger={(triggerButtonProps): JSX.Element => (
53
- <FilterButton {...triggerButtonProps} />
54
- )}
55
- label="Start day"
56
- locale="en-AU"
57
- defaultMonth={new Date("2022-05-01")}
58
- selectedDate={noDateValue}
59
- onDateChange={setNoDateValue}
60
- />
61
- <FilterDatePicker
62
- isOpen={isOpenValue}
63
- setIsOpen={setIsOpenValue}
64
- renderTrigger={(triggerButtonProps): JSX.Element => (
65
- <FilterButton {...triggerButtonProps} />
66
- )}
67
- label="Start day"
68
- locale="en-AU"
69
- selectedDate={dateValue}
70
- onDateChange={setDateValue}
71
- />
72
- </StickerSheet.Row>
73
- </StickerSheet.Body>
45
+ <StickerSheet.Row>
46
+ <FilterDatePicker
47
+ isOpen={isOpenNoValue}
48
+ setIsOpen={setIsOpenNoValue}
49
+ renderTrigger={(triggerButtonProps): JSX.Element => (
50
+ <FilterButton {...triggerButtonProps} />
51
+ )}
52
+ label="Start day"
53
+ locale="en-AU"
54
+ defaultMonth={new Date("2022-05-01")}
55
+ selectedDate={noDateValue}
56
+ onDateChange={setNoDateValue}
57
+ />
58
+ <FilterDatePicker
59
+ isOpen={isOpenValue}
60
+ setIsOpen={setIsOpenValue}
61
+ renderTrigger={(triggerButtonProps): JSX.Element => (
62
+ <FilterButton {...triggerButtonProps} />
63
+ )}
64
+ label="Start day"
65
+ locale="en-AU"
66
+ selectedDate={dateValue}
67
+ onDateChange={setDateValue}
68
+ />
69
+ </StickerSheet.Row>
74
70
  </StickerSheet>
75
71
 
76
- <StickerSheet heading="Filter Date Picker Field">
77
- <StickerSheet.Body>
78
- <StickerSheet.Row rowTitle="Default">
79
- <FilterDatePickerField
80
- id="stickersheet--filter-dp-field--default"
81
- inputProps={{ labelText: "Date" }}
82
- locale="en-AU"
83
- defaultMonth={new Date("2022-05-01")}
84
- selectedDate={noDateValue}
85
- onDateChange={setNoDateValue}
86
- />
87
- </StickerSheet.Row>
88
- <StickerSheet.Row rowTitle="Existing value">
89
- <FilterDatePickerField
90
- id="stickersheet--filter-dp-field--existing"
91
- inputProps={{ labelText: "Date" }}
92
- locale="en-AU"
93
- selectedDate={dateValue}
94
- onDateChange={setDateValue}
95
- />
96
- </StickerSheet.Row>
97
- <StickerSheet.Row rowTitle="Validation">
98
- <FilterDatePickerField
99
- id="stickersheet--filter-dp-field--validation"
100
- inputProps={{ labelText: "Date" }}
101
- locale="en-AU"
102
- selectedDate={dateValueValidation}
103
- defaultMonth={new Date("01-01-2022")}
104
- onDateChange={setDateValueValidation}
105
- onValidate={action("Validation story: date start onValidate")}
106
- validationMessage={{
107
- status: "error",
108
- message:
109
- "(Date custom message) Jelly-filled doughnuts are my favourite!",
110
- }}
111
- />
112
- </StickerSheet.Row>
113
- </StickerSheet.Body>
72
+ <StickerSheet title="Filter Date Picker Field">
73
+ <StickerSheet.Row header="Default">
74
+ <FilterDatePickerField
75
+ id="stickersheet--filter-dp-field--default"
76
+ inputProps={{ labelText: "Date" }}
77
+ locale="en-AU"
78
+ defaultMonth={new Date("2022-05-01")}
79
+ selectedDate={noDateValue}
80
+ onDateChange={setNoDateValue}
81
+ />
82
+ </StickerSheet.Row>
83
+ <StickerSheet.Row header="Existing value">
84
+ <FilterDatePickerField
85
+ id="stickersheet--filter-dp-field--existing"
86
+ inputProps={{ labelText: "Date" }}
87
+ locale="en-AU"
88
+ selectedDate={dateValue}
89
+ onDateChange={setDateValue}
90
+ />
91
+ </StickerSheet.Row>
92
+ <StickerSheet.Row header="Validation">
93
+ <FilterDatePickerField
94
+ id="stickersheet--filter-dp-field--validation"
95
+ inputProps={{ labelText: "Date" }}
96
+ locale="en-AU"
97
+ selectedDate={dateValueValidation}
98
+ defaultMonth={new Date("01-01-2022")}
99
+ onDateChange={setDateValueValidation}
100
+ onValidate={action("Validation story: date start onValidate")}
101
+ validationMessage={{
102
+ status: "error",
103
+ message:
104
+ "(Date custom message) Jelly-filled doughnuts are my favourite!",
105
+ }}
106
+ />
107
+ </StickerSheet.Row>
114
108
  </StickerSheet>
115
109
  </StaticIntlProvider>
116
110
  )
@@ -148,36 +142,23 @@ export const StickerSheetLocales: StickerSheetStory = {
148
142
 
149
143
  return (
150
144
  <>
151
- <StickerSheet heading="Localisation">
152
- <StickerSheet.Header headings={["en-AU", "en-US"]} />
153
- <StickerSheet.Body>
154
- <StickerSheet.Row>
155
- <FilterDatePicker {...props} locale="en-AU" />
156
- <FilterDatePicker {...props} locale="en-US" />
157
- </StickerSheet.Row>
158
- </StickerSheet.Body>
145
+ <StickerSheet title="Localisation" headers={["en-AU", "en-US"]}>
146
+ <StickerSheet.Row>
147
+ <FilterDatePicker {...props} locale="en-AU" />
148
+ <FilterDatePicker {...props} locale="en-US" />
149
+ </StickerSheet.Row>
159
150
  </StickerSheet>
160
151
 
161
- <StickerSheet>
162
- <StickerSheet.Header headings={["fr-CA"]} />
163
- <StickerSheet.Body>
164
- <StickerSheet.Row>
165
- <StaticIntlProvider locale="fr-CA">
166
- <FilterDatePicker {...props} locale="fr-CA" isOpen />
167
- </StaticIntlProvider>
168
- </StickerSheet.Row>
169
- </StickerSheet.Body>
152
+ <StickerSheet headers={["fr-CA"]} className="mt-32 pb-[500px]">
153
+ <StickerSheet.Row>
154
+ <StaticIntlProvider locale="fr-CA">
155
+ <FilterDatePicker {...props} locale="fr-CA" isOpen />
156
+ </StaticIntlProvider>
157
+ </StickerSheet.Row>
170
158
  </StickerSheet>
171
159
  </>
172
160
  )
173
161
  },
174
- decorators: [
175
- Story => (
176
- <div className="mb-[500px]">
177
- <Story />
178
- </div>
179
- ),
180
- ],
181
162
  parameters: {
182
163
  a11y: {
183
164
  // Wait for translations to load