@fluentui/react-utilities 0.0.0-nightlyebf02572f720211207.1 → 0.0.0-nightlyf3017f159620220222.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 (134) hide show
  1. package/CHANGELOG.json +126 -6
  2. package/CHANGELOG.md +35 -6
  3. package/dist/react-utilities.d.ts +193 -78
  4. package/lib/compose/getSlots.d.ts +7 -8
  5. package/lib/compose/getSlots.js +3 -4
  6. package/lib/compose/getSlots.js.map +1 -1
  7. package/lib/compose/index.d.ts +0 -1
  8. package/lib/compose/index.js +0 -1
  9. package/lib/compose/index.js.map +1 -1
  10. package/lib/compose/resolveShorthand.d.ts +10 -6
  11. package/lib/compose/resolveShorthand.js +5 -5
  12. package/lib/compose/resolveShorthand.js.map +1 -1
  13. package/lib/compose/types.d.ts +86 -34
  14. package/lib/compose/types.js.map +1 -1
  15. package/lib/hooks/index.d.ts +1 -0
  16. package/lib/hooks/index.js +1 -0
  17. package/lib/hooks/index.js.map +1 -1
  18. package/lib/hooks/useBoolean.js.map +1 -1
  19. package/lib/hooks/useConst.js.map +1 -1
  20. package/lib/hooks/useControllableState.js.map +1 -1
  21. package/lib/hooks/useEventCallback.js.map +1 -1
  22. package/lib/hooks/useFirstMount.js.map +1 -1
  23. package/lib/hooks/useForceUpdate.js.map +1 -1
  24. package/lib/hooks/useId.js.map +1 -1
  25. package/lib/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  26. package/lib/hooks/useMergedEventCallbacks.d.ts +18 -0
  27. package/lib/hooks/useMergedEventCallbacks.js +26 -0
  28. package/lib/hooks/useMergedEventCallbacks.js.map +1 -0
  29. package/lib/hooks/useMergedRefs.js.map +1 -1
  30. package/lib/hooks/useMount.js.map +1 -1
  31. package/lib/hooks/useOnClickOutside.js.map +1 -1
  32. package/lib/hooks/useOnScrollOutside.js.map +1 -1
  33. package/lib/hooks/usePrevious.js.map +1 -1
  34. package/lib/hooks/useTimeout.js.map +1 -1
  35. package/lib/hooks/useUnmount.js.map +1 -1
  36. package/lib/index.js.map +1 -1
  37. package/lib/ssr/SSRContext.js.map +1 -1
  38. package/lib/ssr/canUseDOM.js.map +1 -1
  39. package/lib/ssr/index.js.map +1 -1
  40. package/lib/utils/applyTriggerPropsToChildren.d.ts +1 -1
  41. package/lib/utils/applyTriggerPropsToChildren.js +23 -3
  42. package/lib/utils/applyTriggerPropsToChildren.js.map +1 -1
  43. package/lib/utils/clamp.js.map +1 -1
  44. package/lib/utils/getNativeElementProps.d.ts +4 -4
  45. package/lib/utils/getNativeElementProps.js.map +1 -1
  46. package/lib/utils/getRTLSafeKey.js.map +1 -1
  47. package/lib/utils/getReactCallbackName.d.ts +25 -0
  48. package/lib/utils/getReactCallbackName.js +26 -0
  49. package/lib/utils/getReactCallbackName.js.map +1 -0
  50. package/lib/utils/getTriggerChild.d.ts +22 -0
  51. package/lib/utils/getTriggerChild.js +26 -0
  52. package/lib/utils/getTriggerChild.js.map +1 -0
  53. package/lib/utils/index.d.ts +2 -1
  54. package/lib/utils/index.js +2 -1
  55. package/lib/utils/index.js.map +1 -1
  56. package/lib/utils/isFluentTrigger.d.ts +22 -0
  57. package/lib/utils/isFluentTrigger.js +8 -0
  58. package/lib/utils/isFluentTrigger.js.map +1 -0
  59. package/lib/utils/omit.js.map +1 -1
  60. package/lib/utils/properties.js +40 -20
  61. package/lib/utils/properties.js.map +1 -1
  62. package/lib/utils/shouldPreventDefaultOnKeyDown.js.map +1 -1
  63. package/lib-commonjs/compose/getSlots.d.ts +7 -8
  64. package/lib-commonjs/compose/getSlots.js +3 -5
  65. package/lib-commonjs/compose/getSlots.js.map +1 -1
  66. package/lib-commonjs/compose/index.d.ts +0 -1
  67. package/lib-commonjs/compose/index.js +0 -2
  68. package/lib-commonjs/compose/index.js.map +1 -1
  69. package/lib-commonjs/compose/resolveShorthand.d.ts +10 -6
  70. package/lib-commonjs/compose/resolveShorthand.js +5 -5
  71. package/lib-commonjs/compose/resolveShorthand.js.map +1 -1
  72. package/lib-commonjs/compose/types.d.ts +86 -34
  73. package/lib-commonjs/compose/types.js.map +1 -1
  74. package/lib-commonjs/hooks/index.d.ts +1 -0
  75. package/lib-commonjs/hooks/index.js +2 -0
  76. package/lib-commonjs/hooks/index.js.map +1 -1
  77. package/lib-commonjs/hooks/useBoolean.js.map +1 -1
  78. package/lib-commonjs/hooks/useConst.js.map +1 -1
  79. package/lib-commonjs/hooks/useControllableState.js.map +1 -1
  80. package/lib-commonjs/hooks/useEventCallback.js.map +1 -1
  81. package/lib-commonjs/hooks/useFirstMount.js.map +1 -1
  82. package/lib-commonjs/hooks/useForceUpdate.js.map +1 -1
  83. package/lib-commonjs/hooks/useId.js.map +1 -1
  84. package/lib-commonjs/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  85. package/lib-commonjs/hooks/useMergedEventCallbacks.d.ts +18 -0
  86. package/lib-commonjs/hooks/useMergedEventCallbacks.js +36 -0
  87. package/lib-commonjs/hooks/useMergedEventCallbacks.js.map +1 -0
  88. package/lib-commonjs/hooks/useMergedRefs.js.map +1 -1
  89. package/lib-commonjs/hooks/useMount.js.map +1 -1
  90. package/lib-commonjs/hooks/useOnClickOutside.js.map +1 -1
  91. package/lib-commonjs/hooks/useOnScrollOutside.js.map +1 -1
  92. package/lib-commonjs/hooks/usePrevious.js.map +1 -1
  93. package/lib-commonjs/hooks/useTimeout.js.map +1 -1
  94. package/lib-commonjs/hooks/useUnmount.js.map +1 -1
  95. package/lib-commonjs/index.js.map +1 -1
  96. package/lib-commonjs/ssr/SSRContext.js.map +1 -1
  97. package/lib-commonjs/ssr/canUseDOM.js.map +1 -1
  98. package/lib-commonjs/ssr/index.js.map +1 -1
  99. package/lib-commonjs/utils/applyTriggerPropsToChildren.d.ts +1 -1
  100. package/lib-commonjs/utils/applyTriggerPropsToChildren.js +24 -4
  101. package/lib-commonjs/utils/applyTriggerPropsToChildren.js.map +1 -1
  102. package/lib-commonjs/utils/clamp.js.map +1 -1
  103. package/lib-commonjs/utils/getNativeElementProps.d.ts +4 -4
  104. package/lib-commonjs/utils/getNativeElementProps.js.map +1 -1
  105. package/lib-commonjs/utils/getRTLSafeKey.js.map +1 -1
  106. package/lib-commonjs/utils/getReactCallbackName.d.ts +25 -0
  107. package/lib-commonjs/utils/getReactCallbackName.js +35 -0
  108. package/lib-commonjs/utils/getReactCallbackName.js.map +1 -0
  109. package/lib-commonjs/utils/getTriggerChild.d.ts +22 -0
  110. package/lib-commonjs/utils/getTriggerChild.js +37 -0
  111. package/lib-commonjs/utils/getTriggerChild.js.map +1 -0
  112. package/lib-commonjs/utils/index.d.ts +2 -1
  113. package/lib-commonjs/utils/index.js +4 -2
  114. package/lib-commonjs/utils/index.js.map +1 -1
  115. package/lib-commonjs/utils/isFluentTrigger.d.ts +22 -0
  116. package/lib-commonjs/utils/isFluentTrigger.js +17 -0
  117. package/lib-commonjs/utils/isFluentTrigger.js.map +1 -0
  118. package/lib-commonjs/utils/omit.js.map +1 -1
  119. package/lib-commonjs/utils/properties.js +40 -20
  120. package/lib-commonjs/utils/properties.js.map +1 -1
  121. package/lib-commonjs/utils/shouldPreventDefaultOnKeyDown.js.map +1 -1
  122. package/package.json +3 -7
  123. package/lib/compose/nullRender.d.ts +0 -4
  124. package/lib/compose/nullRender.js +0 -5
  125. package/lib/compose/nullRender.js.map +0 -1
  126. package/lib/utils/onlyChild.d.ts +0 -5
  127. package/lib/utils/onlyChild.js +0 -13
  128. package/lib/utils/onlyChild.js.map +0 -1
  129. package/lib-commonjs/compose/nullRender.d.ts +0 -4
  130. package/lib-commonjs/compose/nullRender.js +0 -14
  131. package/lib-commonjs/compose/nullRender.js.map +0 -1
  132. package/lib-commonjs/utils/onlyChild.d.ts +0 -5
  133. package/lib-commonjs/utils/onlyChild.js +0 -23
  134. package/lib-commonjs/utils/onlyChild.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/shouldPreventDefaultOnKeyDown.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,eAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;AAGA;;;;AAIG;;;AACH,SAAgB,6BAAhB,CAA8C,CAA9C,EAAoF;AAClF,QAAM,GAAG,GAAG,CAAC,CAAC,GAAd;AACA,QAAM,MAAM,GAA4B,CAAC,CAAC,MAA1C;AAEA,QAAM,YAAY,GAAG,GAAG,KAAK,eAAA,CAAA,KAAR,IAAiB,GAAG,KAAK,eAAA,CAAA,KAA9C;;AAEA,MAAI,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,GAAxB,EAA6B;AAC3B,WAAO,GAAG,KAAK,eAAA,CAAA,KAAf;AACD;;AAED,QAAM,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;AAGA,SAAO,YAAY,IAAI,CAAC,YAAxB;AACD;;AAdD,OAAA,CAAA,6BAAA,GAAA,6BAAA","sourceRoot":""}
1
+ {"version":3,"sources":["utils/shouldPreventDefaultOnKeyDown.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,eAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;AAGA;;;;AAIG;;;AACH,SAAgB,6BAAhB,CAA8C,CAA9C,EAAoF;AAClF,QAAM,GAAG,GAAG,CAAC,CAAC,GAAd;AACA,QAAM,MAAM,GAA4B,CAAC,CAAC,MAA1C;AAEA,QAAM,YAAY,GAAG,GAAG,KAAK,eAAA,CAAA,KAAR,IAAiB,GAAG,KAAK,eAAA,CAAA,KAA9C;;AAEA,MAAI,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,GAAxB,EAA6B;AAC3B,WAAO,GAAG,KAAK,eAAA,CAAA,KAAf;AACD;;AAED,QAAM,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;AAGA,SAAO,YAAY,IAAI,CAAC,YAAxB;AACD;;AAdD,OAAA,CAAA,6BAAA,GAAA,6BAAA","sourcesContent":["import { Space, Enter } from '@fluentui/keyboard-keys';\nimport * as React from 'react';\n\n/**\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 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/"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluentui/react-utilities",
3
- "version": "0.0.0-nightlyebf02572f720211207.1",
3
+ "version": "0.0.0-nightlyf3017f159620220222.1",
4
4
  "description": "A set of general React-specific utilities.",
5
5
  "main": "lib-commonjs/index.js",
6
6
  "module": "lib/index.js",
@@ -18,7 +18,7 @@
18
18
  "code-style": "just-scripts code-style",
19
19
  "just": "just-scripts",
20
20
  "lint": "just-scripts lint",
21
- "test": "jest",
21
+ "test": "jest --passWithNoTests",
22
22
  "docs": "api-extractor run --config=config/api-extractor.local.json --local",
23
23
  "build:local": "tsc -p ./tsconfig.lib.json --module esnext --emitDeclarationOnly && node ../../scripts/typescript/normalize-import --output ./dist/packages/react-utilities/src && yarn docs",
24
24
  "start": "yarn storybook",
@@ -27,17 +27,13 @@
27
27
  "devDependencies": {
28
28
  "@fluentui/eslint-plugin": "*",
29
29
  "@fluentui/scripts": "^1.0.0",
30
- "@types/enzyme": "3.10.3",
31
- "@types/enzyme-adapter-react-16": "1.0.3",
32
30
  "@types/react": "16.9.42",
33
31
  "@types/react-test-renderer": "^16.0.0",
34
- "enzyme": "~3.10.0",
35
- "enzyme-adapter-react-16": "^1.15.0",
36
32
  "react": "16.8.6",
37
33
  "react-test-renderer": "^16.3.0"
38
34
  },
39
35
  "dependencies": {
40
- "@fluentui/keyboard-keys": "0.0.0-nightlyebf02572f720211207.1",
36
+ "@fluentui/keyboard-keys": "0.0.0-nightlyf3017f159620220222.1",
41
37
  "tslib": "^2.1.0"
42
38
  },
43
39
  "peerDependencies": {
@@ -1,4 +0,0 @@
1
- /**
2
- * Simple constant function for returning null, used to render empty templates in JSX.
3
- */
4
- export declare const nullRender: () => null;
@@ -1,5 +0,0 @@
1
- /**
2
- * Simple constant function for returning null, used to render empty templates in JSX.
3
- */
4
- export const nullRender = () => null;
5
- //# sourceMappingURL=nullRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nullRender.js","sourceRoot":"","sources":["../../src/compose/nullRender.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC"}
@@ -1,5 +0,0 @@
1
- import * as React from 'react';
2
- /**
3
- * Similar to React.Children.only, but drills into fragments rather than treating them as a single child
4
- */
5
- export declare const onlyChild: <P>(child: string | number | boolean | {} | React.ReactNodeArray | React.ReactPortal | React.ReactElement<P, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)> | null) | (new (props: any) => React.Component<any, any, any>)> | null | undefined) => React.ReactElement<P, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)> | null) | (new (props: any) => React.Component<any, any, any>)>;
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- /**
3
- * Similar to React.Children.only, but drills into fragments rather than treating them as a single child
4
- */
5
-
6
- export const onlyChild = child => {
7
- if (! /*#__PURE__*/React.isValidElement(child)) {
8
- throw new Error(`Component's child must be a single element`);
9
- }
10
-
11
- return child.type === React.Fragment ? onlyChild(child.props.children) : child;
12
- };
13
- //# sourceMappingURL=onlyChild.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/onlyChild.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAEA;;AAEG;;AACH,OAAO,MAAM,SAAS,GACpB,KADuB,IAEE;AACzB,MAAI,eAAC,KAAK,CAAC,cAAN,CAAqB,KAArB,CAAL,EAAkC;AAChC,UAAM,IAAI,KAAJ,CAAU,4CAAV,CAAN;AACD;;AAED,SAAO,KAAK,CAAC,IAAN,KAAe,KAAK,CAAC,QAArB,GAAgC,SAAS,CAAC,KAAK,CAAC,KAAN,CAAY,QAAb,CAAzC,GAAkE,KAAzE;AACD,CARM","sourceRoot":""}
@@ -1,4 +0,0 @@
1
- /**
2
- * Simple constant function for returning null, used to render empty templates in JSX.
3
- */
4
- export declare const nullRender: () => null;
@@ -1,14 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.nullRender = void 0;
7
- /**
8
- * Simple constant function for returning null, used to render empty templates in JSX.
9
- */
10
-
11
- const nullRender = () => null;
12
-
13
- exports.nullRender = nullRender;
14
- //# sourceMappingURL=nullRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/compose/nullRender.tsx"],"names":[],"mappings":";;;;;;AAAA;;AAEG;;AACI,MAAM,UAAU,GAAG,MAAM,IAAzB;;AAAM,OAAA,CAAA,UAAA,GAAU,UAAV","sourceRoot":""}
@@ -1,5 +0,0 @@
1
- import * as React from 'react';
2
- /**
3
- * Similar to React.Children.only, but drills into fragments rather than treating them as a single child
4
- */
5
- export declare const onlyChild: <P>(child: string | number | boolean | {} | React.ReactNodeArray | React.ReactPortal | React.ReactElement<P, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)> | null) | (new (props: any) => React.Component<any, any, any>)> | null | undefined) => React.ReactElement<P, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)> | null) | (new (props: any) => React.Component<any, any, any>)>;
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.onlyChild = void 0;
7
-
8
- const React = /*#__PURE__*/require("react");
9
- /**
10
- * Similar to React.Children.only, but drills into fragments rather than treating them as a single child
11
- */
12
-
13
-
14
- const onlyChild = child => {
15
- if (!React.isValidElement(child)) {
16
- throw new Error(`Component's child must be a single element`);
17
- }
18
-
19
- return child.type === React.Fragment ? exports.onlyChild(child.props.children) : child;
20
- };
21
-
22
- exports.onlyChild = onlyChild;
23
- //# sourceMappingURL=onlyChild.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/onlyChild.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;AAEA;;AAEG;;;AACI,MAAM,SAAS,GACpB,KADuB,IAEE;AACzB,MAAI,CAAC,KAAK,CAAC,cAAN,CAAqB,KAArB,CAAL,EAAkC;AAChC,UAAM,IAAI,KAAJ,CAAU,4CAAV,CAAN;AACD;;AAED,SAAO,KAAK,CAAC,IAAN,KAAe,KAAK,CAAC,QAArB,GAAgC,OAAA,CAAA,SAAA,CAAU,KAAK,CAAC,KAAN,CAAY,QAAtB,CAAhC,GAAkE,KAAzE;AACD,CARM;;AAAM,OAAA,CAAA,SAAA,GAAS,SAAT","sourceRoot":""}