@uncinc/uncinc-react-kitchen-sink 2.4.0 → 2.4.1

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 (164) hide show
  1. package/dist/Context/KitchenSinkComponentMapperContext.js +11 -3
  2. package/dist/Context/ViewportContext.js +27 -14
  3. package/dist/Context/withMapping.js +26 -15
  4. package/dist/components/AbbreviationAnnotation/index.js +49 -27
  5. package/dist/components/AbbreviationAnnotation/stories.js +32 -21
  6. package/dist/components/Accordion/AccordionItem/index.js +55 -36
  7. package/dist/components/Accordion/AccordionItemVariant/index.js +47 -25
  8. package/dist/components/Accordion/index.js +17 -10
  9. package/dist/components/Accordion/stories.js +38 -24
  10. package/dist/components/ApiAutocomplete/index.js +79 -51
  11. package/dist/components/ApiAutocomplete/stories.js +18 -9
  12. package/dist/components/Button/index.js +43 -33
  13. package/dist/components/Button/stories.js +52 -30
  14. package/dist/components/Cookie/Checkbox/index.js +23 -16
  15. package/dist/components/Cookie/index.js +146 -115
  16. package/dist/components/Cookie/stories.js +57 -39
  17. package/dist/components/Dialog/index.d.ts +38 -0
  18. package/dist/components/Dialog/index.js +63 -56
  19. package/dist/components/Dialog/stories.js +31 -17
  20. package/dist/components/FontSizeSwitcher/index.js +58 -32
  21. package/dist/components/FontSizeSwitcher/stories.js +23 -9
  22. package/dist/components/Form/Checkbox/index.js +43 -37
  23. package/dist/components/Form/Checkbox/stories.js +20 -11
  24. package/dist/components/Form/Checkboxes/index.js +62 -57
  25. package/dist/components/Form/Checkboxes/index.test.js +113 -62
  26. package/dist/components/Form/Checkboxes/stories.js +23 -12
  27. package/dist/components/Form/Date/index.js +13 -5
  28. package/dist/components/Form/Date/stories.js +18 -9
  29. package/dist/components/Form/DatePicker/index.js +39 -33
  30. package/dist/components/Form/DatePicker/stories.js +18 -9
  31. package/dist/components/Form/DateSelect/index.js +99 -62
  32. package/dist/components/Form/DateSelect/stories.js +32 -11
  33. package/dist/components/Form/Email/index.js +13 -5
  34. package/dist/components/Form/Email/stories.js +18 -9
  35. package/dist/components/Form/FormikWrapper/index.js +52 -45
  36. package/dist/components/Form/GenericFormElement/index.js +39 -34
  37. package/dist/components/Form/Number/index.js +23 -18
  38. package/dist/components/Form/Number/stories.js +18 -9
  39. package/dist/components/Form/RadioButtons/index.js +53 -49
  40. package/dist/components/Form/RadioButtons/index.test.js +106 -57
  41. package/dist/components/Form/RadioButtons/stories.js +23 -12
  42. package/dist/components/Form/SearchField/index.js +37 -30
  43. package/dist/components/Form/Select/Input/index.js +55 -49
  44. package/dist/components/Form/Select/index.js +32 -24
  45. package/dist/components/Form/Select/stories.js +25 -15
  46. package/dist/components/Form/TextField/index.js +38 -33
  47. package/dist/components/Form/TextField/index.test.js +104 -56
  48. package/dist/components/Form/TextField/stories.js +22 -11
  49. package/dist/components/Form/Textarea/index.js +34 -27
  50. package/dist/components/Form/Textarea/stories.js +18 -9
  51. package/dist/components/Hamburger/index.js +30 -19
  52. package/dist/components/Hamburger/stories.js +42 -16
  53. package/dist/components/Header/index.js +67 -39
  54. package/dist/components/Header/stories.js +48 -28
  55. package/dist/components/Image/Background/index.js +36 -21
  56. package/dist/components/Image/LazyLoadWrapper/index.js +101 -64
  57. package/dist/components/Image/Picture/index.js +83 -65
  58. package/dist/components/Image/index.js +21 -15
  59. package/dist/components/Image/stories.js +87 -64
  60. package/dist/components/InlineMenu/index.js +60 -38
  61. package/dist/components/InlineMenu/stories.js +66 -55
  62. package/dist/components/Layout/Container/index.js +29 -21
  63. package/dist/components/Layout/Container/stories.js +104 -83
  64. package/dist/components/Layout/QuickLayout/Auto/index.js +19 -12
  65. package/dist/components/Layout/QuickLayout/Center/index.js +17 -10
  66. package/dist/components/Layout/QuickLayout/Clamp/index.js +20 -13
  67. package/dist/components/Layout/QuickLayout/Sidebar/index.js +20 -13
  68. package/dist/components/Layout/QuickLayout/SpaceBetween/index.js +20 -13
  69. package/dist/components/Layout/QuickLayout/Stack/index.js +21 -11
  70. package/dist/components/Layout/QuickLayout/Wrap/index.js +21 -14
  71. package/dist/components/Layout/QuickLayout/index.js +31 -21
  72. package/dist/components/Layout/QuickLayout/stories.js +102 -70
  73. package/dist/components/Lottie/LottieAnimation/index.js +55 -56
  74. package/dist/components/Lottie/LottieAnimationWithMousePosition.js +31 -18
  75. package/dist/components/Lottie/index.js +47 -35
  76. package/dist/components/Lottie/stories.js +54 -31
  77. package/dist/components/MagicLine/index.js +50 -27
  78. package/dist/components/MagicLine/stories.js +60 -46
  79. package/dist/components/NavigationScroll/index.js +71 -49
  80. package/dist/components/NavigationScroll/stories.js +19 -8
  81. package/dist/components/Pagination/index.js +48 -41
  82. package/dist/components/Pagination/stories.js +51 -28
  83. package/dist/components/SearchKit/Facets/ChipFacet/index.js +24 -16
  84. package/dist/components/SearchKit/Facets/ListFacet/index.js +23 -15
  85. package/dist/components/SearchKit/Facets/SelectFacet/index.js +39 -30
  86. package/dist/components/SearchKit/Query/index.js +41 -23
  87. package/dist/components/SearchKit/SearchFacets/index.js +36 -23
  88. package/dist/components/SearchKit/SearchField/index.js +49 -25
  89. package/dist/components/SearchKit/SearchLoadMore/index.js +22 -15
  90. package/dist/components/SearchKit/SearchPage/index.js +22 -14
  91. package/dist/components/SearchKit/SearchPagination/index.js +17 -10
  92. package/dist/components/SearchKit/SearchReset/index.js +25 -16
  93. package/dist/components/SearchKit/SearchResults/index.js +108 -59
  94. package/dist/components/SearchKit/SearchSelectedFilters/Filters/CustomValue/index.js +17 -10
  95. package/dist/components/SearchKit/SearchSelectedFilters/Filters/DateRange/index.js +18 -11
  96. package/dist/components/SearchKit/SearchSelectedFilters/Filters/NumericRange/index.js +18 -11
  97. package/dist/components/SearchKit/SearchSelectedFilters/Filters/Value/index.js +22 -12
  98. package/dist/components/SearchKit/SearchSelectedFilters/index.js +34 -28
  99. package/dist/components/SearchKit/SearchSorting/index.js +29 -19
  100. package/dist/components/SearchKit/index.js +72 -53
  101. package/dist/components/SearchKit/stories.js +141 -186
  102. package/dist/components/Share/index.js +48 -40
  103. package/dist/components/Share/stories.js +16 -5
  104. package/dist/components/Sliders/SliderRelated/index.js +32 -25
  105. package/dist/components/Sliders/SliderRelated/stories.js +75 -57
  106. package/dist/components/Webform/WebformActions/index.js +19 -13
  107. package/dist/components/Webform/WebformCheckbox/index.js +32 -24
  108. package/dist/components/Webform/WebformCheckboxes/index.js +37 -29
  109. package/dist/components/Webform/WebformContainer/index.js +17 -11
  110. package/dist/components/Webform/WebformDate/index.js +76 -48
  111. package/dist/components/Webform/WebformMapper/index.js +53 -38
  112. package/dist/components/Webform/WebformNumber/index.js +31 -22
  113. package/dist/components/Webform/WebformRadioButtons/index.js +37 -29
  114. package/dist/components/Webform/WebformSelect/index.js +37 -29
  115. package/dist/components/Webform/WebformTextField/index.js +34 -26
  116. package/dist/components/Webform/WebformTextarea/index.js +32 -24
  117. package/dist/components/Webform/WebformWizardPage/index.js +56 -43
  118. package/dist/components/Webform/index.js +42 -20
  119. package/dist/components/Webform/stories.actions.js +19 -8
  120. package/dist/components/Webform/stories.checkboxes.js +19 -8
  121. package/dist/components/Webform/stories.checked.js +20 -9
  122. package/dist/components/Webform/stories.container.js +19 -8
  123. package/dist/components/Webform/stories.date.js +19 -8
  124. package/dist/components/Webform/stories.filled.js +20 -9
  125. package/dist/components/Webform/stories.number.js +19 -8
  126. package/dist/components/Webform/stories.radiobuttons.js +19 -8
  127. package/dist/components/Webform/stories.select.js +19 -8
  128. package/dist/components/Webform/stories.textarea.js +19 -8
  129. package/dist/components/Webform/stories.textfield.js +19 -8
  130. package/dist/components/Webform/stories.wizard.js +19 -8
  131. package/dist/components/Webform/withStates.js +49 -28
  132. package/dist/components/WysiwygField/index.js +30 -20
  133. package/dist/components/WysiwygField/stories.js +39 -29
  134. package/dist/components/index.js +111 -15
  135. package/dist/config/constants.js +38 -18
  136. package/dist/config/i18next/index.js +19 -11
  137. package/dist/helpers/date.js +13 -5
  138. package/dist/helpers/gtm.js +27 -17
  139. package/dist/helpers/link.js +15 -6
  140. package/dist/helpers/useValueForCurrentViewPort.js +27 -10
  141. package/dist/hooks/useBoolean.d.ts +8 -0
  142. package/dist/hooks/useBoolean.js +38 -0
  143. package/dist/hooks/useClickOutside.d.ts +8 -0
  144. package/dist/hooks/useClickOutside.js +35 -0
  145. package/dist/hooks/useDialog.d.ts +10 -0
  146. package/dist/hooks/useDialog.js +39 -0
  147. package/dist/hooks/useDialogHelpers.d.ts +20 -0
  148. package/dist/hooks/{useDialogHelpers.ts → useDialogHelpers.js} +33 -43
  149. package/dist/hooks/useEscape.d.ts +6 -0
  150. package/dist/hooks/useEscape.js +24 -0
  151. package/dist/hooks/useOnScreen.js +27 -6
  152. package/dist/hooks/usePrevious.js +10 -4
  153. package/dist/hooks/useScrollPosition.js +25 -7
  154. package/dist/hooks/useTrapFocus.d.ts +10 -0
  155. package/dist/hooks/useTrapFocus.js +63 -0
  156. package/dist/hooks/useWindowDimensions.js +27 -11
  157. package/dist/index.js +398 -56
  158. package/dist/setupTests.js +9 -5
  159. package/package.json +6 -3
  160. package/dist/hooks/useBoolean.ts +0 -20
  161. package/dist/hooks/useClickOutside.ts +0 -38
  162. package/dist/hooks/useDialog.ts +0 -29
  163. package/dist/hooks/useEscape.ts +0 -26
  164. package/dist/hooks/useTrapFocus.ts +0 -80
@@ -1,80 +0,0 @@
1
- import { RefObject, useEffect } from 'react';
2
-
3
- export interface UseTrapFocusOptions<T extends HTMLElement> {
4
- ref: RefObject<T>;
5
- isActive?: boolean;
6
- }
7
-
8
- /**
9
- * Helper to trap focus within a certain component,
10
- * which is useful for canvas menu lists or modals
11
- */
12
- export default function useTrapFocus<T extends HTMLElement>(
13
- options: UseTrapFocusOptions<T>,
14
- ) {
15
- const {
16
- ref,
17
- isActive = false,
18
- } = options;
19
-
20
- useEffect(() => {
21
- function onKeyDown(e: KeyboardEvent) {
22
- if (ref.current && isActive) {
23
- const { first, last } = getFocusableElements(ref.current);
24
- const isTabPressed = e.key === 'Tab';
25
-
26
- if (!isTabPressed) {
27
- return;
28
- }
29
-
30
- if (e.shiftKey && document.activeElement === first) {
31
- if (last) last.focus();
32
- e.preventDefault();
33
- return;
34
- }
35
-
36
- if (!e.shiftKey && document.activeElement === last) {
37
- if (first) first.focus();
38
- e.preventDefault();
39
- }
40
- }
41
- }
42
-
43
- if (ref.current) {
44
- ref.current.addEventListener('keydown', onKeyDown);
45
- }
46
-
47
- return () => {
48
- if (ref.current) {
49
- ref.current.removeEventListener('keydown', onKeyDown);
50
- }
51
- };
52
- }, [ref, isActive]);
53
-
54
- function getFocusableElements(element: Element) {
55
- const focusableElementTags = [
56
- 'a[href]',
57
- 'area[href]',
58
- 'button',
59
- 'input',
60
- 'textarea',
61
- 'select',
62
- 'details',
63
- '[tabindex]:not([tabindex="-1"])',
64
- ];
65
-
66
- const focusableElements = [
67
- ...element.querySelectorAll(focusableElementTags.join(', ')),
68
- ].filter(
69
- (el) => !el.hasAttribute('disabled') && !el.hasAttribute('aria-hidden'),
70
- ) as HTMLElement[];
71
-
72
- return {
73
- focusableElements,
74
- first: focusableElements.length ? focusableElements[0] : null,
75
- last: focusableElements.length
76
- ? focusableElements[focusableElements.length - 1]
77
- : null,
78
- } as const;
79
- }
80
- }