@kaizen/components 1.61.0 → 1.61.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.
Files changed (105) hide show
  1. package/codemods/utils/__snapshots__/transformSource.spec.ts.snap +2 -2
  2. package/dist/cjs/RichTextEditor/RichTextContent/RichTextContent.cjs +10 -1
  3. package/dist/esm/RichTextEditor/RichTextContent/RichTextContent.mjs +11 -2
  4. package/dist/styles.css +115 -114
  5. package/package.json +5 -4
  6. package/src/Avatar/Avatar.spec.tsx +1 -1
  7. package/src/Calendar/utils/setFocusInCalendar.spec.tsx +2 -2
  8. package/src/Checkbox/Checkbox/Checkbox.spec.tsx +2 -2
  9. package/src/Collapsible/Collapsible/Collapsible.spec.tsx +2 -14
  10. package/src/Collapsible/Collapsible/_docs/Collapsible.stickersheet.stories.tsx +49 -0
  11. package/src/Collapsible/Collapsible/_docs/Collapsible.stories.tsx +0 -11
  12. package/src/DateInput/DateInputDescription/DateInputDescription.spec.tsx +5 -6
  13. package/src/DateInput/DateInputWithIconButton/DateInputWithIconButton.spec.tsx +4 -6
  14. package/src/DatePicker/DatePicker.spec.tsx +32 -36
  15. package/src/DatePicker/subcomponents/DateInputField/DateInputField.spec.tsx +13 -13
  16. package/src/DatePicker/utils/validateDate.spec.ts +5 -6
  17. package/src/EmptyState/EmptyState.spec.tsx +1 -1
  18. package/src/ErrorPage/ErrorPage.spec.tsx +19 -19
  19. package/src/Filter/FilterBar/FilterBar.spec.tsx +26 -26
  20. package/src/Filter/FilterBar/context/utils/updateDependentFilters.spec.ts +2 -4
  21. package/src/Filter/FilterBar/subcomponents/AddFiltersMenu/AddFiltersMenu.spec.tsx +3 -4
  22. package/src/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.spec.tsx +3 -6
  23. package/src/Filter/FilterBar/subcomponents/FilterBarDatePicker/FilterBarDatePicker.spec.tsx +10 -12
  24. package/src/Filter/FilterBar/subcomponents/FilterBarDateRangePicker/FilterBarDateRangePicker.spec.tsx +9 -10
  25. package/src/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.spec.tsx +12 -14
  26. package/src/Filter/FilterBar/subcomponents/FilterBarSelect/FilterBarSelect.spec.tsx +11 -13
  27. package/src/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.spec.tsx +5 -5
  28. package/src/Filter/FilterDatePicker/FilterDatePicker.spec.tsx +12 -15
  29. package/src/Filter/FilterDatePicker/hooks/useDateInputHandlers.spec.ts +12 -15
  30. package/src/Filter/FilterDatePicker/hooks/useDateValidation.spec.ts +3 -5
  31. package/src/Filter/FilterDatePicker/subcomponents/FilterDatePickerField/FilterDatePickerField.spec.tsx +23 -28
  32. package/src/Filter/FilterDatePicker/utils/getDateValidationHandler.spec.tsx +2 -6
  33. package/src/Filter/FilterDatePicker/utils/validateDate.spec.ts +5 -6
  34. package/src/Filter/FilterDateRangePicker/FilterDateRangePicker.spec.tsx +2 -3
  35. package/src/Filter/FilterDateRangePicker/_docs/FilterDateRangePicker.stickersheet.stories.tsx +27 -0
  36. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeInputField/DateRangeInputField.spec.tsx +9 -11
  37. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeValidationMessage/DateRangeValidationMessage.spec.tsx +1 -63
  38. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/FilterDateRangePickerField.spec.tsx +32 -32
  39. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/hooks/useEndDateValidation.spec.ts +3 -8
  40. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/hooks/useStartDateValidation.spec.ts +2 -5
  41. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/utils/validateEndDateBeforeStartDate.spec.ts +2 -3
  42. package/src/Filter/FilterMultiSelect/FilterMultiSelect.spec.tsx +9 -10
  43. package/src/Filter/FilterMultiSelect/context/MenuTriggerProvider/MenuTriggerProvider.spec.tsx +2 -1
  44. package/src/Filter/FilterMultiSelect/context/SelectionProvider/SelectionProvider.spec.tsx +32 -32
  45. package/src/Filter/FilterMultiSelect/subcomponents/MultiSelectOption/MultiSelectOption.spec.tsx +9 -7
  46. package/src/Filter/FilterMultiSelect/subcomponents/SearchInput/SearchInput.spec.tsx +12 -12
  47. package/src/Filter/FilterMultiSelect/subcomponents/SelectionControlButton/ClearButton/ClearButton.spec.tsx +7 -7
  48. package/src/Filter/FilterMultiSelect/subcomponents/SelectionControlButton/SelectAllButton/SelectAllButton.spec.tsx +9 -9
  49. package/src/Filter/FilterSelect/FilterSelect.spec.tsx +2 -2
  50. package/src/Heading/Heading.spec.tsx +1 -31
  51. package/src/Illustration/subcomponents/VideoPlayer/VideoPlayer.spec.tsx +43 -97
  52. package/src/Illustration/subcomponents/VideoPlayer/VideoPlayer.stickersheet.stories.tsx +68 -0
  53. package/src/Illustration/subcomponents/VideoPlayer/VideoPlayer.stories.tsx +37 -0
  54. package/src/Input/InputRange/InputRange.spec.tsx +2 -2
  55. package/src/Input/InputSearch/InputSearch.spec.tsx +3 -5
  56. package/src/KaizenProvider/KaizenProvider.spec.tsx +2 -2
  57. package/src/KaizenProvider/subcomponents/OptionalIntlProvider/OptionalIntlProvider.spec.tsx +2 -3
  58. package/src/Modal/ConfirmationModal/ConfirmationModal.spec.tsx +7 -7
  59. package/src/Modal/ContextModal/ContextModal.spec.tsx +5 -5
  60. package/src/Modal/GenericModal/GenericModal.spec.tsx +4 -4
  61. package/src/Modal/InputEditModal/InputEditModal.spec.tsx +7 -7
  62. package/src/MultiSelect/subcomponents/MultiSelectOptionField/MultiSelectOptionField.spec.tsx +3 -3
  63. package/src/MultiSelect/subcomponents/MultiSelectOptions/MultiSelectOptions.spec.tsx +3 -3
  64. package/src/MultiSelect/subcomponents/MultiSelectToggle/MultiSelectToggle.spec.tsx +2 -2
  65. package/src/Notification/subcomponents/GenericNotification/GenericNotification.stories.tsx +60 -0
  66. package/src/Pagination/Pagination.spec.tsx +2 -2
  67. package/src/RichTextEditor/EditableRichTextContent/EditableRichTextContent.spec.tsx +4 -4
  68. package/src/RichTextEditor/RichTextContent/RichTextContent.tsx +11 -2
  69. package/src/RichTextEditor/utils/commands/addMark.spec.ts +2 -2
  70. package/src/RichTextEditor/utils/commands/fixtures/helpers.ts +4 -3
  71. package/src/RichTextEditor/utils/commands/getMarkAttrs.spec.ts +2 -2
  72. package/src/RichTextEditor/utils/commands/getMarkRange.spec.ts +2 -2
  73. package/src/RichTextEditor/utils/commands/listIsActive.spec.ts +2 -2
  74. package/src/RichTextEditor/utils/commands/markContainsSelection.spec.ts +2 -2
  75. package/src/RichTextEditor/utils/commands/markIsActive.spec.ts +2 -2
  76. package/src/RichTextEditor/utils/commands/removeMark.spec.ts +2 -2
  77. package/src/RichTextEditor/utils/commands/updateMark.spec.ts +2 -2
  78. package/src/RichTextEditor/utils/commands/validateAndRemoveMarks.spec.ts +3 -3
  79. package/src/RichTextEditor/utils/core/createRichTextEditor.spec.ts +11 -11
  80. package/src/RichTextEditor/utils/core/hooks/useRichTextEditor.spec.tsx +2 -2
  81. package/src/SplitButton/SplitButton.spec.tsx +5 -5
  82. package/src/SplitButton/subcomponents/DropdownButton/DropdownButton.spec.tsx +3 -4
  83. package/src/Text/Text.spec.tsx +1 -57
  84. package/src/TextArea/TextArea.spec.tsx +2 -2
  85. package/src/TimeField/TimeField.spec.tsx +2 -2
  86. package/src/TitleBlockZen/TitleBlockZen.spec.tsx +36 -68
  87. package/src/TitleBlockZen/_docs/TitleBlockZen.stories.tsx +78 -8
  88. package/src/TitleBlockZen/subcomponents/MobileActions.spec.tsx +2 -2
  89. package/src/TitleBlockZen/subcomponents/NavigationTabs.spec.tsx +8 -2
  90. package/src/ToggleSwitch/ToggleSwitch/ToggleSwitch.spec.tsx +2 -2
  91. package/src/__actions__/Menu/v1/Menu.spec.tsx +2 -2
  92. package/src/__containers__/GuidanceBlock/v1/GuidanceBlock.spec.tsx +5 -5
  93. package/src/__containers__/GuidanceBlock/v2/GuidanceBlock.spec.tsx +5 -5
  94. package/src/__future__/Select/Select.spec.tsx +4 -4
  95. package/src/__layout__/Workflow/v3/_docs/Workflow.stories.tsx +8 -2
  96. package/src/__layout__/Workflow/v3/subcomponents/Footer/components/Root/FooterRoot.module.css +1 -0
  97. package/src/__layout__/Workflow/v3/subcomponents/Header/components/Root/Root.module.css +1 -1
  98. package/src/__overlays__/Tooltip/v1/Tooltip.spec.tsx +1 -1
  99. package/src/__overlays__/Tooltip/v1/utils/isSemanticElement.spec.tsx +4 -9
  100. package/src/utils/useMediaQueries.spec.tsx +7 -7
  101. package/src/Heading/__snapshots__/Heading.spec.tsx.snap +0 -85
  102. package/src/Illustration/utils/usePausePlay.spec.tsx +0 -85
  103. package/src/Notification/subcomponents/GenericNotification/GenericNotification.spec.tsx +0 -76
  104. package/src/Text/__snapshots__/Text.spec.tsx.snap +0 -49
  105. package/src/__overlays__/Tooltip/v1/subcomponents/AppearanceAnim.spec.tsx +0 -39
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect, useState } from "react"
2
- import { screen, waitFor, within } from "@testing-library/react"
2
+ import { screen, waitFor, within, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
4
+ import { vi } from "vitest"
5
5
  import { FilterMultiSelect } from "../index"
6
6
  import { FilterBar, FilterBarProps } from "./FilterBar"
7
7
  import { useFilterBarContext } from "./context/FilterBarContext"
@@ -148,7 +148,7 @@ const waitForI18nContent = async (): Promise<void> => {
148
148
 
149
149
  describe("<FilterBar />", () => {
150
150
  it("renders filters in the provided order", async () => {
151
- const { getAllByTestId } = renderWithIntl(
151
+ const { getAllByTestId } = render(
152
152
  <FilterBarWrapper<ValuesSimple> filters={simpleFilters} />
153
153
  )
154
154
  await waitForI18nContent()
@@ -161,7 +161,7 @@ describe("<FilterBar />", () => {
161
161
  })
162
162
 
163
163
  it("retains Filter accessibility", async () => {
164
- renderWithIntl(<FilterBarWrapper filters={simpleFilters} />)
164
+ render(<FilterBarWrapper filters={simpleFilters} />)
165
165
 
166
166
  const filterButton = screen.getByRole("button", { name: "Flavour" })
167
167
  await user.click(filterButton)
@@ -173,7 +173,7 @@ describe("<FilterBar />", () => {
173
173
 
174
174
  describe("Removable filters", () => {
175
175
  it("shows inactive filters in the Add Filters menu only", async () => {
176
- const { getByRole, queryByText } = renderWithIntl(
176
+ const { getByRole, queryByText } = render(
177
177
  <FilterBarWrapper<ValuesRemovable> filters={filtersRemovable} />
178
178
  )
179
179
  await waitForI18nContent()
@@ -192,7 +192,7 @@ describe("<FilterBar />", () => {
192
192
  })
193
193
 
194
194
  it("shows removable filter as active if there is a default value", async () => {
195
- const { getByRole } = renderWithIntl(
195
+ const { getByRole } = render(
196
196
  <FilterBarWrapper<ValuesRemovable>
197
197
  filters={filtersRemovable}
198
198
  defaultValues={{ topping: "pearls" }}
@@ -206,7 +206,7 @@ describe("<FilterBar />", () => {
206
206
  })
207
207
 
208
208
  it("does not show active removable filters in the Add Filters menu", async () => {
209
- const { getByRole } = renderWithIntl(
209
+ const { getByRole } = render(
210
210
  <FilterBarWrapper<ValuesRemovable>
211
211
  filters={filtersRemovable}
212
212
  defaultValues={{ topping: "pearls" }}
@@ -225,7 +225,7 @@ describe("<FilterBar />", () => {
225
225
  })
226
226
 
227
227
  it("clears the value of a filter if it is removed", async () => {
228
- const { getByRole } = renderWithIntl(
228
+ const { getByRole } = render(
229
229
  <FilterBarWrapper<ValuesRemovable>
230
230
  filters={filtersRemovable}
231
231
  defaultValues={{ topping: "pearls" }}
@@ -258,7 +258,7 @@ describe("<FilterBar />", () => {
258
258
  })
259
259
 
260
260
  it("adds new filters in the provided order", async () => {
261
- const { getByRole, getAllByTestId } = renderWithIntl(
261
+ const { getByRole, getAllByTestId } = render(
262
262
  <FilterBarWrapper<ValuesSimple>
263
263
  filters={simpleFilters.map(filter => ({
264
264
  ...filter,
@@ -293,7 +293,7 @@ describe("<FilterBar />", () => {
293
293
  describe("Dependent filters", () => {
294
294
  describe("Condition not met", () => {
295
295
  it("does not show a dependent filter", async () => {
296
- const { queryByRole, getByRole } = renderWithIntl(
296
+ const { queryByRole, getByRole } = render(
297
297
  <FilterBarWrapper filters={filtersDependent} />
298
298
  )
299
299
  await waitForI18nContent()
@@ -304,7 +304,7 @@ describe("<FilterBar />", () => {
304
304
  })
305
305
 
306
306
  it("clears the value if the filter is not usable", async () => {
307
- const { getByTestId } = renderWithIntl(
307
+ const { getByTestId } = render(
308
308
  <FilterBarWrapper
309
309
  filters={filtersDependent}
310
310
  defaultValues={{
@@ -321,7 +321,7 @@ describe("<FilterBar />", () => {
321
321
 
322
322
  describe("Condition met", () => {
323
323
  it("shows a non-removable dependent filter in active filters", async () => {
324
- const { queryByRole, getByRole, findByRole } = renderWithIntl(
324
+ const { queryByRole, getByRole, findByRole } = render(
325
325
  <FilterBarWrapper filters={filtersDependent} />
326
326
  )
327
327
  await waitForI18nContent()
@@ -343,7 +343,7 @@ describe("<FilterBar />", () => {
343
343
  })
344
344
 
345
345
  it("shows a removable dependent filter in Add Filters menu", async () => {
346
- const { getByRole, findByRole } = renderWithIntl(
346
+ const { getByRole, findByRole } = render(
347
347
  <FilterBarWrapper
348
348
  filters={[
349
349
  {
@@ -400,7 +400,7 @@ describe("<FilterBar />", () => {
400
400
 
401
401
  describe("Condition result change", () => {
402
402
  it("clears the value for an unusable filter", async () => {
403
- const checkValues = jest.fn<void, [Partial<ValuesDependent>]>()
403
+ const checkValues = vi.fn()
404
404
 
405
405
  const Wrapper = (): JSX.Element => {
406
406
  const [values, setValues] = useState<Partial<ValuesDependent>>({
@@ -421,7 +421,7 @@ describe("<FilterBar />", () => {
421
421
  )
422
422
  }
423
423
 
424
- const { queryByRole, getByRole } = renderWithIntl(<Wrapper />)
424
+ const { queryByRole, getByRole } = render(<Wrapper />)
425
425
  await waitForI18nContent()
426
426
 
427
427
  expect(
@@ -435,7 +435,7 @@ describe("<FilterBar />", () => {
435
435
  })
436
436
 
437
437
  it("clears the value and removes a filter which loses usability", async () => {
438
- const checkValues = jest.fn<void, [Partial<ValuesDependent>]>()
438
+ const checkValues = vi.fn()
439
439
 
440
440
  const Wrapper = (): JSX.Element => {
441
441
  const [values, setValues] = useState<Partial<ValuesDependent>>({
@@ -463,7 +463,7 @@ describe("<FilterBar />", () => {
463
463
  )
464
464
  }
465
465
 
466
- const { getByRole } = renderWithIntl(<Wrapper />)
466
+ const { getByRole } = render(<Wrapper />)
467
467
  await waitForI18nContent()
468
468
 
469
469
  expect(
@@ -558,7 +558,7 @@ describe("<FilterBar />", () => {
558
558
  },
559
559
  ] satisfies Filters<ValuesComplexDeps>
560
560
 
561
- const { queryByRole, getByRole } = renderWithIntl(
561
+ const { queryByRole, getByRole } = render(
562
562
  <FilterBarWrapper
563
563
  filters={filters}
564
564
  defaultValues={{ milk: "full-cream" }}
@@ -637,7 +637,7 @@ describe("<FilterBar />", () => {
637
637
 
638
638
  describe("Clear all", () => {
639
639
  it("clears all the values of all the filters", async () => {
640
- const { getByRole } = renderWithIntl(
640
+ const { getByRole } = render(
641
641
  <FilterBarWrapper<ValuesSimple>
642
642
  filters={simpleFilters}
643
643
  defaultValues={{
@@ -671,7 +671,7 @@ describe("<FilterBar />", () => {
671
671
  })
672
672
 
673
673
  it("removes all removable filters", async () => {
674
- const { getByRole } = renderWithIntl(
674
+ const { getByRole } = render(
675
675
  <FilterBarWrapper<ValuesRemovable>
676
676
  filters={filtersRemovable}
677
677
  defaultValues={{
@@ -740,7 +740,7 @@ describe("<FilterBar />", () => {
740
740
  )
741
741
  }
742
742
 
743
- const { getByRole } = renderWithIntl(<Wrapper />)
743
+ const { getByRole } = render(<Wrapper />)
744
744
  await waitForI18nContent()
745
745
 
746
746
  const flavourButton = getByRole("button", { name: "Flavour" })
@@ -796,7 +796,7 @@ describe("<FilterBar />", () => {
796
796
  )
797
797
  }
798
798
 
799
- const { getByRole, queryByRole } = renderWithIntl(<Wrapper />)
799
+ const { getByRole, queryByRole } = render(<Wrapper />)
800
800
  await waitForI18nContent()
801
801
 
802
802
  expect(queryByRole("button", { name: "Flavour" })).not.toBeInTheDocument()
@@ -861,7 +861,7 @@ describe("<FilterBar />", () => {
861
861
  )
862
862
  }
863
863
 
864
- const fetchCityOptions = jest.fn((filterValues: Partial<AsyncValues>) => {
864
+ const fetchCityOptions = vi.fn((filterValues: Partial<AsyncValues>) => {
865
865
  const isSupermanInFilterValue = filterValues.hero?.includes("superman")
866
866
  const isBatmanInFilterValue = filterValues.hero?.includes("batman")
867
867
 
@@ -875,7 +875,7 @@ describe("<FilterBar />", () => {
875
875
  ])
876
876
  })
877
877
 
878
- const fetchHeroOptions = jest.fn((filterValues: Partial<AsyncValues>) => {
878
+ const fetchHeroOptions = vi.fn((filterValues: Partial<AsyncValues>) => {
879
879
  const isGothamInFilterValue = filterValues.city?.includes("gotham")
880
880
  const isMetroInFilterValue = filterValues.city?.includes("metro")
881
881
 
@@ -907,7 +907,7 @@ describe("<FilterBar />", () => {
907
907
  ] satisfies Filters<AsyncValues>
908
908
 
909
909
  it("can re-fetch options with all active filter values pulled off of the FilterBarContext", async () => {
910
- const { getByRole, queryByRole } = renderWithIntl(
910
+ const { getByRole, queryByRole } = render(
911
911
  <FilterBarWrapper<AsyncValues> filters={config} defaultValues={{}} />
912
912
  )
913
913
 
@@ -981,7 +981,7 @@ describe("<FilterBar />", () => {
981
981
  ] satisfies Filters<CycleFilterValues>
982
982
 
983
983
  it("opens the Custom Date filter when Cycle's 'custom' value is selected", async () => {
984
- const { getByRole } = renderWithIntl(
984
+ const { getByRole } = render(
985
985
  <FilterBarWrapper<CycleFilterValues> filters={cycleFilters} />
986
986
  )
987
987
  await waitForI18nContent()
@@ -1,9 +1,7 @@
1
+ import { vi } from "vitest"
1
2
  import { FilterBarState } from "../types"
2
3
  import { updateDependentFilters } from "./updateDependentFilters"
3
-
4
- const sugarLevelIsUsableWhen = jest.fn(
5
- state => state.flavour.value !== undefined
6
- )
4
+ const sugarLevelIsUsableWhen = vi.fn(state => state.flavour.value !== undefined)
7
5
 
8
6
  type Values = {
9
7
  flavour: string
@@ -1,7 +1,6 @@
1
1
  import React from "react"
2
- import { waitFor, screen } from "@testing-library/react"
2
+ import { waitFor, screen, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
5
4
  import {
6
5
  FilterBarProvider,
7
6
  FilterBarProviderProps,
@@ -53,7 +52,7 @@ describe("<AddFiltersMenu />", () => {
53
52
  },
54
53
  ] satisfies Filters<Values>
55
54
 
56
- renderWithIntl(<AddFiltersMenuWrapper filters={filters} />)
55
+ render(<AddFiltersMenuWrapper filters={filters} />)
57
56
 
58
57
  await waitFor(() => {
59
58
  expect(screen.getByRole("button", { name: "Add Filters" })).toBeVisible()
@@ -80,7 +79,7 @@ describe("<AddFiltersMenu />", () => {
80
79
  },
81
80
  ] satisfies Filters<Values>
82
81
 
83
- renderWithIntl(<AddFiltersMenuWrapper filters={filters} />)
82
+ render(<AddFiltersMenuWrapper filters={filters} />)
84
83
 
85
84
  await waitFor(() => {
86
85
  const addFiltersButton = screen.getByRole("button", {
@@ -1,7 +1,6 @@
1
1
  import React from "react"
2
- import { screen, waitFor } from "@testing-library/react"
2
+ import { screen, waitFor, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
5
4
  import { FilterBarProvider } from "../../context/FilterBarContext"
6
5
  import { FilterBarButton, FilterBarButtonProps } from "./FilterBarButton"
7
6
 
@@ -43,9 +42,7 @@ const FilterBarButtonWrapper = (
43
42
 
44
43
  describe("<FilterBarButton />", () => {
45
44
  it("does not show a remove button when it is not removable", async () => {
46
- const { getByRole, queryByRole } = renderWithIntl(
47
- <FilterBarButtonWrapper />
48
- )
45
+ const { getByRole, queryByRole } = render(<FilterBarButtonWrapper />)
49
46
  await waitFor(() => {
50
47
  expect(getByRole("button", { name: "Coffee" })).toBeVisible()
51
48
  })
@@ -55,7 +52,7 @@ describe("<FilterBarButton />", () => {
55
52
  })
56
53
 
57
54
  it("shows a remove button when it is removable", async () => {
58
- renderWithIntl(<FilterBarButtonWrapper isRemovable />)
55
+ render(<FilterBarButtonWrapper isRemovable />)
59
56
  const filterButton = await screen.findByRole("button", { name: "Coffee" })
60
57
  await waitFor(() => {
61
58
  expect(filterButton).toBeVisible()
@@ -1,7 +1,7 @@
1
1
  import React, { useState } from "react"
2
- import { screen, waitFor, within } from "@testing-library/react"
2
+ import { screen, waitFor, within, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
4
+ import { vi } from "vitest"
5
5
  import {
6
6
  FilterAttributes,
7
7
  FilterBarProvider,
@@ -58,7 +58,7 @@ const FilterBarDatePickerWrapper = ({
58
58
 
59
59
  describe("<FilterBarDatePicker />", () => {
60
60
  it("shows the name in the trigger button", async () => {
61
- renderWithIntl(<FilterBarDatePickerWrapper />)
61
+ render(<FilterBarDatePickerWrapper />)
62
62
  await waitFor(() => {
63
63
  const triggerButton = screen.getByRole("button", { name: "Drank" })
64
64
  expect(triggerButton).toBeInTheDocument()
@@ -67,7 +67,7 @@ describe("<FilterBarDatePicker />", () => {
67
67
 
68
68
  describe("Removable", () => {
69
69
  it("does not show the remove button when isRemovable is false", async () => {
70
- renderWithIntl(<FilterBarDatePickerWrapper />)
70
+ render(<FilterBarDatePickerWrapper />)
71
71
  await waitFor(() => {
72
72
  expect(
73
73
  screen.getByRole("button", { name: "Drank" })
@@ -79,7 +79,7 @@ describe("<FilterBarDatePicker />", () => {
79
79
  })
80
80
 
81
81
  it("shows the remove button when isRemovable is true", async () => {
82
- renderWithIntl(
82
+ render(
83
83
  <FilterBarDatePickerWrapper
84
84
  filterAttributes={{ isRemovable: true }}
85
85
  defaultValues={{ drank: new Date("2023-05-01") }}
@@ -94,9 +94,7 @@ describe("<FilterBarDatePicker />", () => {
94
94
  })
95
95
 
96
96
  it("can toggle its open state", async () => {
97
- const { getByRole, queryByRole } = renderWithIntl(
98
- <FilterBarDatePickerWrapper />
99
- )
97
+ const { getByRole, queryByRole } = render(<FilterBarDatePickerWrapper />)
100
98
  const triggerButton = getByRole("button", { name: "Drank" })
101
99
 
102
100
  await user.click(triggerButton)
@@ -113,7 +111,7 @@ describe("<FilterBarDatePicker />", () => {
113
111
  })
114
112
 
115
113
  it("shows a selected value when provided", async () => {
116
- const { getByRole } = renderWithIntl(
114
+ const { getByRole } = render(
117
115
  <FilterBarDatePickerWrapper
118
116
  defaultValues={{ drank: new Date("2023-06-06") }}
119
117
  />
@@ -127,7 +125,7 @@ describe("<FilterBarDatePicker />", () => {
127
125
  })
128
126
 
129
127
  it("updates the selected value in the trigger button when selecting a date", async () => {
130
- renderWithIntl(
128
+ render(
131
129
  <FilterBarDatePickerWrapper
132
130
  defaultValues={{ drank: new Date("2023-06-06") }}
133
131
  />
@@ -156,8 +154,8 @@ describe("<FilterBarDatePicker />", () => {
156
154
  })
157
155
 
158
156
  it("allows calling additional functions on selection change", async () => {
159
- const onChange = jest.fn()
160
- renderWithIntl(<FilterBarDatePickerWrapper onDateChange={onChange} />)
157
+ const onChange = vi.fn()
158
+ render(<FilterBarDatePickerWrapper onDateChange={onChange} />)
161
159
 
162
160
  const triggerButton = screen.getByRole("button", { name: "Drank" })
163
161
  await user.click(triggerButton)
@@ -1,7 +1,6 @@
1
1
  import React, { useState } from "react"
2
- import { screen, waitFor, within } from "@testing-library/react"
2
+ import { screen, waitFor, within, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
5
4
  import {
6
5
  FilterAttributes,
7
6
  FilterBarProvider,
@@ -53,7 +52,7 @@ const FilterBarDateRangePickerWrapper = ({
53
52
 
54
53
  describe("<FilterBarDateRangePicker />", () => {
55
54
  it("shows the name in the trigger button", async () => {
56
- renderWithIntl(<FilterBarDateRangePickerWrapper />)
55
+ render(<FilterBarDateRangePickerWrapper />)
57
56
  await waitFor(() => {
58
57
  const triggerButton = screen.getByRole("button", { name: "Dates" })
59
58
  expect(triggerButton).toBeInTheDocument()
@@ -62,7 +61,7 @@ describe("<FilterBarDateRangePicker />", () => {
62
61
 
63
62
  describe("Removable", () => {
64
63
  it("does not show the remove button when isRemovable is false", async () => {
65
- renderWithIntl(<FilterBarDateRangePickerWrapper />)
64
+ render(<FilterBarDateRangePickerWrapper />)
66
65
  await waitFor(() => {
67
66
  expect(
68
67
  screen.getByRole("button", { name: "Dates" })
@@ -74,7 +73,7 @@ describe("<FilterBarDateRangePicker />", () => {
74
73
  })
75
74
 
76
75
  it("shows the remove button when isRemovable is true", async () => {
77
- const { getByRole } = renderWithIntl(
76
+ const { getByRole } = render(
78
77
  <FilterBarDateRangePickerWrapper
79
78
  filterAttributes={{ isRemovable: true }}
80
79
  defaultValues={{ range: { from: new Date("2023-05-01") } }}
@@ -89,7 +88,7 @@ describe("<FilterBarDateRangePicker />", () => {
89
88
  })
90
89
 
91
90
  it("can toggle its open state", async () => {
92
- const { getByRole, queryByRole } = renderWithIntl(
91
+ const { getByRole, queryByRole } = render(
93
92
  <FilterBarDateRangePickerWrapper />
94
93
  )
95
94
  const triggerButton = getByRole("button", { name: "Dates" })
@@ -108,7 +107,7 @@ describe("<FilterBarDateRangePicker />", () => {
108
107
  })
109
108
 
110
109
  it("shows a selected value when provided", async () => {
111
- const { getByRole } = renderWithIntl(
110
+ const { getByRole } = render(
112
111
  <FilterBarDateRangePickerWrapper
113
112
  defaultValues={{
114
113
  range: {
@@ -127,7 +126,7 @@ describe("<FilterBarDateRangePicker />", () => {
127
126
  })
128
127
 
129
128
  it("updates the selected value in the trigger button", async () => {
130
- const { getByRole, getByText } = renderWithIntl(
129
+ const { getByRole, getByText } = render(
131
130
  <FilterBarDateRangePickerWrapper
132
131
  defaultValues={{
133
132
  range: {
@@ -159,8 +158,8 @@ describe("<FilterBarDateRangePicker />", () => {
159
158
  }, 10000)
160
159
 
161
160
  it("allows calling additional functions on value change", async () => {
162
- const onChange = jest.fn<void, [DateRange | undefined]>()
163
- const { getByRole, getByText } = renderWithIntl(
161
+ const onChange = vi.fn()
162
+ const { getByRole, getByText } = render(
164
163
  <FilterBarDateRangePickerWrapper
165
164
  defaultValues={{
166
165
  range: {
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect, useState } from "react"
2
- import { screen, waitFor } from "@testing-library/react"
2
+ import { screen, waitFor, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
4
+ import { vi } from "vitest"
5
5
  import {
6
6
  FilterAttributes,
7
7
  FilterBarProvider,
@@ -91,7 +91,7 @@ const FilterBarMultiSelectWrapper = <ValuesMap extends FiltersValues = Values>({
91
91
 
92
92
  describe("<FilterBarMultiSelect />", () => {
93
93
  it("shows the name in the trigger button", async () => {
94
- const { getByRole } = renderWithIntl(<FilterBarMultiSelectWrapper />)
94
+ const { getByRole } = render(<FilterBarMultiSelectWrapper />)
95
95
  await waitFor(() => {
96
96
  const triggerButton = getByRole("button", { name: "Toppings" })
97
97
  expect(triggerButton).toBeVisible()
@@ -100,7 +100,7 @@ describe("<FilterBarMultiSelect />", () => {
100
100
 
101
101
  describe("Removable", () => {
102
102
  it("does not show the remove button when isRemovable is false", async () => {
103
- const { queryByRole } = renderWithIntl(<FilterBarMultiSelectWrapper />)
103
+ const { queryByRole } = render(<FilterBarMultiSelectWrapper />)
104
104
  await waitFor(() => {
105
105
  expect(screen.getByRole("button", { name: "Toppings" })).toBeVisible()
106
106
  })
@@ -110,7 +110,7 @@ describe("<FilterBarMultiSelect />", () => {
110
110
  })
111
111
 
112
112
  it("shows the remove button when isRemovable is true", async () => {
113
- const { getByRole } = renderWithIntl(
113
+ const { getByRole } = render(
114
114
  <FilterBarMultiSelectWrapper
115
115
  filterAttributes={{ isRemovable: true }}
116
116
  defaultValues={{ toppings: ["pearls"] }}
@@ -124,7 +124,7 @@ describe("<FilterBarMultiSelect />", () => {
124
124
  })
125
125
 
126
126
  it("hides the filter when remove button is clicked", async () => {
127
- const { getByRole } = renderWithIntl(
127
+ const { getByRole } = render(
128
128
  <FilterBarMultiSelectWrapper
129
129
  filterAttributes={{ isRemovable: true }}
130
130
  defaultValues={{ toppings: ["pearls"] }}
@@ -149,9 +149,7 @@ describe("<FilterBarMultiSelect />", () => {
149
149
  })
150
150
 
151
151
  it("can toggle its open state", async () => {
152
- const { getByRole, queryByRole } = renderWithIntl(
153
- <FilterBarMultiSelectWrapper />
154
- )
152
+ const { getByRole, queryByRole } = render(<FilterBarMultiSelectWrapper />)
155
153
  const triggerButton = getByRole("button", { name: "Toppings" })
156
154
 
157
155
  await user.click(triggerButton)
@@ -168,7 +166,7 @@ describe("<FilterBarMultiSelect />", () => {
168
166
  })
169
167
 
170
168
  it("shows a selected value when provided", async () => {
171
- const { getByRole } = renderWithIntl(
169
+ const { getByRole } = render(
172
170
  <FilterBarMultiSelectWrapper
173
171
  defaultValues={{ toppings: ["pearls", "fruit-jelly"] }}
174
172
  />
@@ -182,7 +180,7 @@ describe("<FilterBarMultiSelect />", () => {
182
180
  })
183
181
 
184
182
  it("updates the selected value in the trigger button", async () => {
185
- const { getByRole } = renderWithIntl(
183
+ const { getByRole } = render(
186
184
  <FilterBarMultiSelectWrapper defaultValues={{ toppings: ["pearls"] }} />
187
185
  )
188
186
  const triggerButton = getByRole("button", {
@@ -204,8 +202,8 @@ describe("<FilterBarMultiSelect />", () => {
204
202
  })
205
203
 
206
204
  it("allows calling additional functions on selection change", async () => {
207
- const onChange = jest.fn()
208
- const { getByRole } = renderWithIntl(
205
+ const onChange = vi.fn()
206
+ const { getByRole } = render(
209
207
  <FilterBarMultiSelectWrapper onSelectionChange={onChange} />
210
208
  )
211
209
  const triggerButton = getByRole("button", { name: "Toppings" })
@@ -257,7 +255,7 @@ describe("<FilterBarMultiSelect />", () => {
257
255
  )
258
256
  }
259
257
 
260
- const { getByRole, getAllByRole, getByTestId } = renderWithIntl(
258
+ const { getByRole, getAllByRole, getByTestId } = render(
261
259
  <FilterBarMultiSelectWrapper<ValuesDependent>
262
260
  additionalFilters={[
263
261
  {
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect, useState } from "react"
2
- import { waitFor, screen } from "@testing-library/react"
2
+ import { waitFor, screen, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
4
+ import { vi } from "vitest"
5
5
  import {
6
6
  FilterAttributes,
7
7
  FilterBarProvider,
@@ -67,7 +67,7 @@ const FilterBarSelectWrapper = <ValuesMap extends FiltersValues = Values>({
67
67
 
68
68
  describe("<FilterBarSelect />", () => {
69
69
  it("shows the name in the trigger button", async () => {
70
- renderWithIntl(<FilterBarSelectWrapper />)
70
+ render(<FilterBarSelectWrapper />)
71
71
  await waitFor(() => {
72
72
  const triggerButton = screen.getByRole("button", { name: "Flavour" })
73
73
  expect(triggerButton).toBeInTheDocument()
@@ -76,7 +76,7 @@ describe("<FilterBarSelect />", () => {
76
76
 
77
77
  describe("Removable", () => {
78
78
  it("does not show the remove button when isRemovable is false", async () => {
79
- renderWithIntl(<FilterBarSelectWrapper />)
79
+ render(<FilterBarSelectWrapper />)
80
80
  await waitFor(() => {
81
81
  expect(
82
82
  screen.getByRole("button", { name: "Flavour" })
@@ -88,7 +88,7 @@ describe("<FilterBarSelect />", () => {
88
88
  })
89
89
 
90
90
  it("shows the remove button when isRemovable is true", async () => {
91
- renderWithIntl(
91
+ render(
92
92
  <FilterBarSelectWrapper
93
93
  filterAttributes={{ isRemovable: true }}
94
94
  defaultValues={{ flavour: "jasmine-milk-tea" }}
@@ -103,9 +103,7 @@ describe("<FilterBarSelect />", () => {
103
103
  })
104
104
 
105
105
  it("can toggle its open state", async () => {
106
- const { getByRole, queryByRole } = renderWithIntl(
107
- <FilterBarSelectWrapper />
108
- )
106
+ const { getByRole, queryByRole } = render(<FilterBarSelectWrapper />)
109
107
  const triggerButton = getByRole("button", { name: "Flavour" })
110
108
 
111
109
  await user.click(triggerButton)
@@ -122,7 +120,7 @@ describe("<FilterBarSelect />", () => {
122
120
  })
123
121
 
124
122
  it("shows a selected value when provided", async () => {
125
- const { getByRole } = renderWithIntl(
123
+ const { getByRole } = render(
126
124
  <FilterBarSelectWrapper defaultValues={{ flavour: "jasmine-milk-tea" }} />
127
125
  )
128
126
  await waitFor(() => {
@@ -134,7 +132,7 @@ describe("<FilterBarSelect />", () => {
134
132
  })
135
133
 
136
134
  it("updates the selected value in the trigger button", async () => {
137
- const { getByRole } = renderWithIntl(
135
+ const { getByRole } = render(
138
136
  <FilterBarSelectWrapper defaultValues={{ flavour: "jasmine-milk-tea" }} />
139
137
  )
140
138
  const triggerButton = getByRole("button", {
@@ -156,8 +154,8 @@ describe("<FilterBarSelect />", () => {
156
154
  })
157
155
 
158
156
  it("allows calling additional functions on selection change", async () => {
159
- const onChange = jest.fn()
160
- const { getByRole } = renderWithIntl(
157
+ const onChange = vi.fn()
158
+ const { getByRole } = render(
161
159
  <FilterBarSelectWrapper onSelectionChange={onChange} />
162
160
  )
163
161
  const triggerButton = getByRole("button", { name: "Flavour" })
@@ -208,7 +206,7 @@ describe("<FilterBarSelect />", () => {
208
206
  return <FilterBarSelect id="topping" items={items} />
209
207
  }
210
208
 
211
- const { getByRole, getAllByRole, getByTestId } = renderWithIntl(
209
+ const { getByRole, getAllByRole, getByTestId } = render(
212
210
  <FilterBarSelectWrapper<ValuesDependent>
213
211
  additionalFilters={[
214
212
  {
@@ -1,7 +1,7 @@
1
1
  import React, { useRef } from "react"
2
- import { screen, waitFor } from "@testing-library/react"
2
+ import { screen, waitFor, render } from "@testing-library/react"
3
3
  import userEvent from "@testing-library/user-event"
4
- import { renderWithIntl } from "~tests"
4
+ import { vi } from "vitest"
5
5
  import {
6
6
  FilterButtonRemovable,
7
7
  FilterButtonRemovableProps,
@@ -29,7 +29,7 @@ const FilterButtonRemovableWrapper = ({
29
29
 
30
30
  describe("<FilterButtonRemovable />", () => {
31
31
  it("should use fallback label for remove button if not specified", async () => {
32
- renderWithIntl(<FilterButtonRemovableWrapper />)
32
+ render(<FilterButtonRemovableWrapper />)
33
33
  await waitFor(() => {
34
34
  expect(
35
35
  screen.getByRole("button", { name: "Remove filter - Desserts" })
@@ -39,7 +39,7 @@ describe("<FilterButtonRemovable />", () => {
39
39
 
40
40
  describe("Refs", () => {
41
41
  it("correctly passes through both button refs", async () => {
42
- const onClick = jest.fn()
42
+ const onClick = vi.fn()
43
43
 
44
44
  const Wrapper = (): JSX.Element => {
45
45
  const triggerRef = useRef<HTMLButtonElement>(null)
@@ -72,7 +72,7 @@ describe("<FilterButtonRemovable />", () => {
72
72
  )
73
73
  }
74
74
 
75
- renderWithIntl(<Wrapper />)
75
+ render(<Wrapper />)
76
76
 
77
77
  await user.click(screen.getByText("Click me"))
78
78
  expect(onClick).toHaveBeenCalledWith(