@fluentui/react-utilities 9.2.1 → 9.3.0

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 (158) hide show
  1. package/CHANGELOG.json +60 -1
  2. package/CHANGELOG.md +21 -2
  3. package/dist/index.d.ts +17 -8
  4. package/lib/compose/getSlots.js.map +1 -1
  5. package/lib/compose/index.js.map +1 -1
  6. package/lib/compose/isResolvedShorthand.js.map +1 -1
  7. package/lib/compose/resolveShorthand.js.map +1 -1
  8. package/lib/compose/types.js.map +1 -1
  9. package/lib/hooks/index.js.map +1 -1
  10. package/lib/hooks/useControllableState.js.map +1 -1
  11. package/lib/hooks/useEventCallback.js.map +1 -1
  12. package/lib/hooks/useFirstMount.js.map +1 -1
  13. package/lib/hooks/useForceUpdate.js.map +1 -1
  14. package/lib/hooks/useId.js.map +1 -1
  15. package/lib/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  16. package/lib/hooks/useMergedRefs.js.map +1 -1
  17. package/lib/hooks/useOnClickOutside.js.map +1 -1
  18. package/lib/hooks/useOnScrollOutside.js.map +1 -1
  19. package/lib/hooks/usePrevious.js.map +1 -1
  20. package/lib/hooks/useTimeout.js.map +1 -1
  21. package/lib/index.js +1 -1
  22. package/lib/index.js.map +1 -1
  23. package/lib/ssr/SSRContext.js.map +1 -1
  24. package/lib/ssr/canUseDOM.js.map +1 -1
  25. package/lib/ssr/index.js.map +1 -1
  26. package/lib/trigger/applyTriggerPropsToChildren.js.map +1 -1
  27. package/lib/trigger/getTriggerChild.js.map +1 -1
  28. package/lib/trigger/index.js.map +1 -1
  29. package/lib/trigger/isFluentTrigger.js.map +1 -1
  30. package/lib/trigger/types.js.map +1 -1
  31. package/lib/utils/clamp.js.map +1 -1
  32. package/lib/utils/getNativeElementProps.js.map +1 -1
  33. package/lib/utils/getRTLSafeKey.js.map +1 -1
  34. package/lib/utils/getReactCallbackName.js.map +1 -1
  35. package/lib/utils/index.js +2 -1
  36. package/lib/utils/index.js.map +1 -1
  37. package/lib/utils/isHTMLElement.js +15 -0
  38. package/lib/utils/isHTMLElement.js.map +1 -0
  39. package/lib/utils/isInteractiveHTMLElement.js +26 -0
  40. package/lib/utils/isInteractiveHTMLElement.js.map +1 -0
  41. package/lib/utils/mergeCallbacks.js.map +1 -1
  42. package/lib/utils/omit.js.map +1 -1
  43. package/lib/utils/properties.js +1 -1
  44. package/lib/utils/properties.js.map +1 -1
  45. package/lib-amd/compose/getSlots.js +58 -0
  46. package/lib-amd/compose/getSlots.js.map +1 -0
  47. package/lib-amd/compose/index.js +9 -0
  48. package/lib-amd/compose/index.js.map +1 -0
  49. package/lib-amd/compose/isResolvedShorthand.js +40 -0
  50. package/lib-amd/compose/isResolvedShorthand.js.map +1 -0
  51. package/lib-amd/compose/resolveShorthand.js +27 -0
  52. package/lib-amd/compose/resolveShorthand.js.map +1 -0
  53. package/lib-amd/compose/types.js +5 -0
  54. package/lib-amd/compose/types.js.map +1 -0
  55. package/lib-amd/hooks/index.js +16 -0
  56. package/lib-amd/hooks/index.js.map +1 -0
  57. package/lib-amd/hooks/useControllableState.js +81 -0
  58. package/lib-amd/hooks/useControllableState.js.map +1 -0
  59. package/lib-amd/hooks/useEventCallback.js +36 -0
  60. package/lib-amd/hooks/useEventCallback.js.map +1 -0
  61. package/lib-amd/hooks/useFirstMount.js +26 -0
  62. package/lib-amd/hooks/useFirstMount.js.map +1 -0
  63. package/lib-amd/hooks/useForceUpdate.js +14 -0
  64. package/lib-amd/hooks/useForceUpdate.js.map +1 -0
  65. package/lib-amd/hooks/useId.js +32 -0
  66. package/lib-amd/hooks/useId.js.map +1 -0
  67. package/lib-amd/hooks/useIsomorphicLayoutEffect.js +17 -0
  68. package/lib-amd/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  69. package/lib-amd/hooks/useMergedRefs.js +34 -0
  70. package/lib-amd/hooks/useMergedRefs.js.map +1 -0
  71. package/lib-amd/hooks/useOnClickOutside.js +116 -0
  72. package/lib-amd/hooks/useOnClickOutside.js.map +1 -0
  73. package/lib-amd/hooks/useOnScrollOutside.js +31 -0
  74. package/lib-amd/hooks/useOnScrollOutside.js.map +1 -0
  75. package/lib-amd/hooks/usePrevious.js +17 -0
  76. package/lib-amd/hooks/usePrevious.js.map +1 -0
  77. package/lib-amd/hooks/useTimeout.js +33 -0
  78. package/lib-amd/hooks/useTimeout.js.map +1 -0
  79. package/lib-amd/index.js +34 -0
  80. package/lib-amd/index.js.map +1 -0
  81. package/lib-amd/ssr/SSRContext.js +69 -0
  82. package/lib-amd/ssr/SSRContext.js.map +1 -0
  83. package/lib-amd/ssr/canUseDOM.js +16 -0
  84. package/lib-amd/ssr/canUseDOM.js.map +1 -0
  85. package/lib-amd/ssr/index.js +7 -0
  86. package/lib-amd/ssr/index.js.map +1 -0
  87. package/lib-amd/trigger/applyTriggerPropsToChildren.js +40 -0
  88. package/lib-amd/trigger/applyTriggerPropsToChildren.js.map +1 -0
  89. package/lib-amd/trigger/getTriggerChild.js +40 -0
  90. package/lib-amd/trigger/getTriggerChild.js.map +1 -0
  91. package/lib-amd/trigger/index.js +9 -0
  92. package/lib-amd/trigger/index.js.map +1 -0
  93. package/lib-amd/trigger/isFluentTrigger.js +15 -0
  94. package/lib-amd/trigger/isFluentTrigger.js.map +1 -0
  95. package/lib-amd/trigger/types.js +5 -0
  96. package/lib-amd/trigger/types.js.map +1 -0
  97. package/lib-amd/utils/clamp.js +16 -0
  98. package/lib-amd/utils/clamp.js.map +1 -0
  99. package/lib-amd/utils/getNativeElementProps.js +64 -0
  100. package/lib-amd/utils/getNativeElementProps.js.map +1 -0
  101. package/lib-amd/utils/getRTLSafeKey.js +24 -0
  102. package/lib-amd/utils/getRTLSafeKey.js.map +1 -0
  103. package/lib-amd/utils/index.js +13 -0
  104. package/lib-amd/utils/index.js.map +1 -0
  105. package/lib-amd/utils/isHTMLElement.js +22 -0
  106. package/lib-amd/utils/isHTMLElement.js.map +1 -0
  107. package/lib-amd/utils/isInteractiveHTMLElement.js +25 -0
  108. package/lib-amd/utils/isInteractiveHTMLElement.js.map +1 -0
  109. package/lib-amd/utils/mergeCallbacks.js +40 -0
  110. package/lib-amd/utils/mergeCallbacks.js.map +1 -0
  111. package/lib-amd/utils/omit.js +31 -0
  112. package/lib-amd/utils/omit.js.map +1 -0
  113. package/lib-amd/utils/properties.js +450 -0
  114. package/lib-amd/utils/properties.js.map +1 -0
  115. package/lib-commonjs/compose/getSlots.js.map +1 -1
  116. package/lib-commonjs/compose/index.js.map +1 -1
  117. package/lib-commonjs/compose/isResolvedShorthand.js.map +1 -1
  118. package/lib-commonjs/compose/resolveShorthand.js.map +1 -1
  119. package/lib-commonjs/hooks/index.js.map +1 -1
  120. package/lib-commonjs/hooks/useControllableState.js.map +1 -1
  121. package/lib-commonjs/hooks/useEventCallback.js.map +1 -1
  122. package/lib-commonjs/hooks/useFirstMount.js.map +1 -1
  123. package/lib-commonjs/hooks/useForceUpdate.js.map +1 -1
  124. package/lib-commonjs/hooks/useId.js.map +1 -1
  125. package/lib-commonjs/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  126. package/lib-commonjs/hooks/useMergedRefs.js.map +1 -1
  127. package/lib-commonjs/hooks/useOnClickOutside.js.map +1 -1
  128. package/lib-commonjs/hooks/useOnScrollOutside.js.map +1 -1
  129. package/lib-commonjs/hooks/usePrevious.js.map +1 -1
  130. package/lib-commonjs/hooks/useTimeout.js.map +1 -1
  131. package/lib-commonjs/index.js +9 -3
  132. package/lib-commonjs/index.js.map +1 -1
  133. package/lib-commonjs/ssr/SSRContext.js.map +1 -1
  134. package/lib-commonjs/ssr/canUseDOM.js.map +1 -1
  135. package/lib-commonjs/ssr/index.js.map +1 -1
  136. package/lib-commonjs/trigger/applyTriggerPropsToChildren.js.map +1 -1
  137. package/lib-commonjs/trigger/getTriggerChild.js.map +1 -1
  138. package/lib-commonjs/trigger/index.js.map +1 -1
  139. package/lib-commonjs/trigger/isFluentTrigger.js.map +1 -1
  140. package/lib-commonjs/utils/clamp.js.map +1 -1
  141. package/lib-commonjs/utils/getNativeElementProps.js.map +1 -1
  142. package/lib-commonjs/utils/getRTLSafeKey.js.map +1 -1
  143. package/lib-commonjs/utils/getReactCallbackName.js.map +1 -1
  144. package/lib-commonjs/utils/index.js +3 -1
  145. package/lib-commonjs/utils/index.js.map +1 -1
  146. package/lib-commonjs/utils/isHTMLElement.js +24 -0
  147. package/lib-commonjs/utils/isHTMLElement.js.map +1 -0
  148. package/lib-commonjs/utils/isInteractiveHTMLElement.js +36 -0
  149. package/lib-commonjs/utils/isInteractiveHTMLElement.js.map +1 -0
  150. package/lib-commonjs/utils/mergeCallbacks.js.map +1 -1
  151. package/lib-commonjs/utils/omit.js.map +1 -1
  152. package/lib-commonjs/utils/properties.js +1 -1
  153. package/lib-commonjs/utils/properties.js.map +1 -1
  154. package/package.json +3 -4
  155. package/lib/utils/shouldPreventDefaultOnKeyDown.js +0 -25
  156. package/lib/utils/shouldPreventDefaultOnKeyDown.js.map +0 -1
  157. package/lib-commonjs/utils/shouldPreventDefaultOnKeyDown.js +0 -35
  158. package/lib-commonjs/utils/shouldPreventDefaultOnKeyDown.js.map +0 -1
@@ -1,25 +0,0 @@
1
- import { Space, Enter } from '@fluentui/keyboard-keys';
2
- /**
3
- * @internal
4
- * Checks if the keyboard event should preventDefault() for Enter and Spacebar keys
5
- *
6
- * Useful for situations where a keydown needs to be transformed to a click event
7
- */
8
-
9
- export function shouldPreventDefaultOnKeyDown(e) {
10
- if (e.defaultPrevented) {
11
- return false;
12
- }
13
-
14
- const key = e.key;
15
- const target = e.target;
16
- const matchesByKey = key === Space || key === Enter;
17
-
18
- if ((target === null || target === void 0 ? void 0 : target.tagName) === 'A') {
19
- return key === Space;
20
- }
21
-
22
- const ignoredByTag = (target === null || target === void 0 ? void 0 : target.tagName) === 'INPUT' || (target === null || target === void 0 ? void 0 : target.tagName) === 'TEXTAREA' || (target === null || target === void 0 ? void 0 : target.isContentEditable) === true;
23
- return matchesByKey && !ignoredByTag;
24
- }
25
- //# sourceMappingURL=shouldPreventDefaultOnKeyDown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["utils/shouldPreventDefaultOnKeyDown.ts"],"names":[],"mappings":"AAAA,SAAS,KAAT,EAAgB,KAAhB,QAA6B,yBAA7B;AAGA;;;;;AAKG;;AACH,OAAM,SAAU,6BAAV,CAAwC,CAAxC,EAA8E;EAClF,IAAI,CAAC,CAAC,gBAAN,EAAwB;IACtB,OAAO,KAAP;EACD;;EAED,MAAM,GAAG,GAAG,CAAC,CAAC,GAAd;EACA,MAAM,MAAM,GAA4B,CAAC,CAAC,MAA1C;EAEA,MAAM,YAAY,GAAG,GAAG,KAAK,KAAR,IAAiB,GAAG,KAAK,KAA9C;;EAEA,IAAI,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,GAAxB,EAA6B;IAC3B,OAAO,GAAG,KAAK,KAAf;EACD;;EAED,MAAM,YAAY,GAChB,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,OAApB,IAA+B,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,UAAnD,IAAiE,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,iBAAR,MAA8B,IADjG;EAGA,OAAO,YAAY,IAAI,CAAC,YAAxB;AACD","sourcesContent":["import { Space, Enter } from '@fluentui/keyboard-keys';\nimport * as React from 'react';\n\n/**\n * @internal\n * Checks if the keyboard event should preventDefault() for Enter and Spacebar keys\n *\n * Useful for situations where a keydown needs to be transformed to a click event\n */\nexport function shouldPreventDefaultOnKeyDown(e: KeyboardEvent | React.KeyboardEvent) {\n if (e.defaultPrevented) {\n return false;\n }\n\n const key = e.key;\n const target: HTMLElement | undefined = e.target as HTMLElement;\n\n const matchesByKey = key === Space || key === Enter;\n\n if (target?.tagName === 'A') {\n return key === Space;\n }\n\n const ignoredByTag =\n target?.tagName === 'INPUT' || target?.tagName === 'TEXTAREA' || target?.isContentEditable === true;\n\n return matchesByKey && !ignoredByTag;\n}\n"],"sourceRoot":"../src/"}
@@ -1,35 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.shouldPreventDefaultOnKeyDown = void 0;
7
-
8
- const keyboard_keys_1 = /*#__PURE__*/require("@fluentui/keyboard-keys");
9
- /**
10
- * @internal
11
- * Checks if the keyboard event should preventDefault() for Enter and Spacebar keys
12
- *
13
- * Useful for situations where a keydown needs to be transformed to a click event
14
- */
15
-
16
-
17
- function shouldPreventDefaultOnKeyDown(e) {
18
- if (e.defaultPrevented) {
19
- return false;
20
- }
21
-
22
- const key = e.key;
23
- const target = e.target;
24
- const matchesByKey = key === keyboard_keys_1.Space || key === keyboard_keys_1.Enter;
25
-
26
- if ((target === null || target === void 0 ? void 0 : target.tagName) === 'A') {
27
- return key === keyboard_keys_1.Space;
28
- }
29
-
30
- const ignoredByTag = (target === null || target === void 0 ? void 0 : target.tagName) === 'INPUT' || (target === null || target === void 0 ? void 0 : target.tagName) === 'TEXTAREA' || (target === null || target === void 0 ? void 0 : target.isContentEditable) === true;
31
- return matchesByKey && !ignoredByTag;
32
- }
33
-
34
- exports.shouldPreventDefaultOnKeyDown = shouldPreventDefaultOnKeyDown;
35
- //# sourceMappingURL=shouldPreventDefaultOnKeyDown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["utils/shouldPreventDefaultOnKeyDown.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,eAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;AAGA;;;;;AAKG;;;AACH,SAAgB,6BAAhB,CAA8C,CAA9C,EAAoF;EAClF,IAAI,CAAC,CAAC,gBAAN,EAAwB;IACtB,OAAO,KAAP;EACD;;EAED,MAAM,GAAG,GAAG,CAAC,CAAC,GAAd;EACA,MAAM,MAAM,GAA4B,CAAC,CAAC,MAA1C;EAEA,MAAM,YAAY,GAAG,GAAG,KAAK,eAAA,CAAA,KAAR,IAAiB,GAAG,KAAK,eAAA,CAAA,KAA9C;;EAEA,IAAI,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,GAAxB,EAA6B;IAC3B,OAAO,GAAG,KAAK,eAAA,CAAA,KAAf;EACD;;EAED,MAAM,YAAY,GAChB,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,OAApB,IAA+B,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,UAAnD,IAAiE,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,iBAAR,MAA8B,IADjG;EAGA,OAAO,YAAY,IAAI,CAAC,YAAxB;AACD;;AAlBD,OAAA,CAAA,6BAAA,GAAA,6BAAA","sourcesContent":["import { Space, Enter } from '@fluentui/keyboard-keys';\nimport * as React from 'react';\n\n/**\n * @internal\n * Checks if the keyboard event should preventDefault() for Enter and Spacebar keys\n *\n * Useful for situations where a keydown needs to be transformed to a click event\n */\nexport function shouldPreventDefaultOnKeyDown(e: KeyboardEvent | React.KeyboardEvent) {\n if (e.defaultPrevented) {\n return false;\n }\n\n const key = e.key;\n const target: HTMLElement | undefined = e.target as HTMLElement;\n\n const matchesByKey = key === Space || key === Enter;\n\n if (target?.tagName === 'A') {\n return key === Space;\n }\n\n const ignoredByTag =\n target?.tagName === 'INPUT' || target?.tagName === 'TEXTAREA' || target?.isContentEditable === true;\n\n return matchesByKey && !ignoredByTag;\n}\n"],"sourceRoot":"../src/"}