@fluentui/react-virtualizer 9.0.0-alpha.18 → 9.0.0-alpha.19
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.
- package/CHANGELOG.json +49 -2
- package/CHANGELOG.md +16 -3
- package/dist/index.d.ts +93 -10
- package/lib/Utilities.js +2 -0
- package/lib/Utilities.js.map +1 -0
- package/lib/VirtualizerScrollViewDynamic.js +2 -0
- package/lib/VirtualizerScrollViewDynamic.js.map +1 -0
- package/lib/components/Virtualizer/Virtualizer.types.js.map +1 -1
- package/lib/components/Virtualizer/renderVirtualizer.js +6 -0
- package/lib/components/Virtualizer/renderVirtualizer.js.map +1 -1
- package/lib/components/Virtualizer/useVirtualizer.js +35 -32
- package/lib/components/Virtualizer/useVirtualizer.js.map +1 -1
- package/lib/components/VirtualizerScrollView/useVirtualizerScrollViewStyles.js +2 -1
- package/lib/components/VirtualizerScrollView/useVirtualizerScrollViewStyles.js.map +1 -1
- package/lib/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.js +14 -0
- package/lib/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.js.map +1 -0
- package/lib/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.types.js +2 -0
- package/lib/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.types.js.map +1 -0
- package/lib/components/VirtualizerScrollViewDynamic/index.js +6 -0
- package/lib/components/VirtualizerScrollViewDynamic/index.js.map +1 -0
- package/lib/components/VirtualizerScrollViewDynamic/renderVirtualizerScrollViewDynamic.js +11 -0
- package/lib/components/VirtualizerScrollViewDynamic/renderVirtualizerScrollViewDynamic.js.map +1 -0
- package/lib/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js +44 -0
- package/lib/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js.map +1 -0
- package/lib/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamicStyles.js +46 -0
- package/lib/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamicStyles.js.map +1 -0
- package/lib/hooks/hooks.types.js +2 -0
- package/lib/hooks/hooks.types.js.map +1 -0
- package/lib/hooks/index.js +3 -0
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/useDynamicVirtualizerMeasure.js +99 -0
- package/lib/hooks/useDynamicVirtualizerMeasure.js.map +1 -0
- package/lib/hooks/useResizeObserverRef.js +40 -0
- package/lib/hooks/useResizeObserverRef.js.map +1 -0
- package/lib/hooks/useVirtualizerMeasure.js +6 -29
- package/lib/hooks/useVirtualizerMeasure.js.map +1 -1
- package/lib/index.js +3 -1
- package/lib/index.js.map +1 -1
- package/lib/utilities/VirtualizerContext/VirtualizerContext.js +27 -0
- package/lib/utilities/VirtualizerContext/VirtualizerContext.js.map +1 -0
- package/lib/utilities/VirtualizerContext/index.js +3 -0
- package/lib/utilities/VirtualizerContext/index.js.map +1 -0
- package/lib/utilities/VirtualizerContext/types.js +4 -0
- package/lib/utilities/VirtualizerContext/types.js.map +1 -0
- package/lib/utilities/index.js +2 -0
- package/lib/utilities/index.js.map +1 -0
- package/lib-commonjs/Utilities.js +9 -0
- package/lib-commonjs/Utilities.js.map +1 -0
- package/lib-commonjs/VirtualizerScrollViewDynamic.js +9 -0
- package/lib-commonjs/VirtualizerScrollViewDynamic.js.map +1 -0
- package/lib-commonjs/components/Virtualizer/renderVirtualizer.js +15 -3
- package/lib-commonjs/components/Virtualizer/renderVirtualizer.js.map +1 -1
- package/lib-commonjs/components/Virtualizer/useVirtualizer.js +35 -30
- package/lib-commonjs/components/Virtualizer/useVirtualizer.js.map +1 -1
- package/lib-commonjs/components/VirtualizerScrollView/useVirtualizerScrollViewStyles.js +2 -1
- package/lib-commonjs/components/VirtualizerScrollView/useVirtualizerScrollViewStyles.js.map +1 -1
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.js +21 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.js.map +1 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.types.js +7 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/VirtualizerScrollViewDynamic.types.js.map +1 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/index.js +13 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/index.js.map +1 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/renderVirtualizerScrollViewDynamic.js +17 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/renderVirtualizerScrollViewDynamic.js.map +1 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js +49 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js.map +1 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamicStyles.js +69 -0
- package/lib-commonjs/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamicStyles.js.map +1 -0
- package/lib-commonjs/hooks/hooks.types.js +7 -0
- package/lib-commonjs/hooks/hooks.types.js.map +1 -0
- package/lib-commonjs/hooks/index.js +3 -0
- package/lib-commonjs/hooks/index.js.map +1 -1
- package/lib-commonjs/hooks/useDynamicVirtualizerMeasure.js +107 -0
- package/lib-commonjs/hooks/useDynamicVirtualizerMeasure.js.map +1 -0
- package/lib-commonjs/hooks/useResizeObserverRef.js +51 -0
- package/lib-commonjs/hooks/useResizeObserverRef.js.map +1 -0
- package/lib-commonjs/hooks/useVirtualizerMeasure.js +7 -29
- package/lib-commonjs/hooks/useVirtualizerMeasure.js.map +1 -1
- package/lib-commonjs/index.js +12 -1
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/utilities/VirtualizerContext/VirtualizerContext.js +48 -0
- package/lib-commonjs/utilities/VirtualizerContext/VirtualizerContext.js.map +1 -0
- package/lib-commonjs/utilities/VirtualizerContext/index.js +10 -0
- package/lib-commonjs/utilities/VirtualizerContext/index.js.map +1 -0
- package/lib-commonjs/utilities/VirtualizerContext/types.js +9 -0
- package/lib-commonjs/utilities/VirtualizerContext/types.js.map +1 -0
- package/lib-commonjs/utilities/index.js +9 -0
- package/lib-commonjs/utilities/index.js.map +1 -0
- package/package.json +4 -4
- package/.swcrc +0 -30
- package/lib/hooks/useVirtualizerMeasure.types.js +0 -2
- package/lib/hooks/useVirtualizerMeasure.types.js.map +0 -1
- package/lib-commonjs/hooks/useVirtualizerMeasure.types.js +0 -7
- package/lib-commonjs/hooks/useVirtualizerMeasure.types.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../lib/components/VirtualizerScrollViewDynamic/renderVirtualizerScrollViewDynamic.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { renderVirtualizer_unstable } from '../Virtualizer/renderVirtualizer';\nexport const renderVirtualizerScrollViewDynamic_unstable = state => {\n const {\n slots,\n slotProps\n } = getSlotsNext(state);\n return /*#__PURE__*/createElement(slots.container, slotProps.container, renderVirtualizer_unstable(state));\n};\n//# sourceMappingURL=renderVirtualizerScrollViewDynamic.js.map"],"names":["renderVirtualizerScrollViewDynamic_unstable","state","slots","slotProps","getSlotsNext","createElement","container","renderVirtualizer_unstable"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAGrCA;;aAAAA;;iCAHqE;gCACrD;mCACc;AACpC,MAAMA,8CAA8CC,CAAAA,QAAS;IAClE,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,4BAAY,EAACH;IACjB,OAAO,WAAW,GAAEI,IAAAA,8BAAa,EAACH,MAAMI,SAAS,EAAEH,UAAUG,SAAS,EAAEC,IAAAA,6CAA0B,EAACN;AACrG,GACA,8DAA8D"}
|
package/lib-commonjs/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useVirtualizerScrollViewDynamic_unstable", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>useVirtualizerScrollViewDynamic_unstable
|
|
8
|
+
});
|
|
9
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
11
|
+
const _reactUtilities = require("@fluentui/react-utilities");
|
|
12
|
+
const _useVirtualizer = require("../Virtualizer/useVirtualizer");
|
|
13
|
+
const _hooks = require("../../Hooks");
|
|
14
|
+
const _utilities = require("../../Utilities");
|
|
15
|
+
function useVirtualizerScrollViewDynamic_unstable(props) {
|
|
16
|
+
const contextState = (0, _utilities.useVirtualizerContextState_unstable)(props.virtualizerContext);
|
|
17
|
+
var _props_axis, _contextState_contextIndex;
|
|
18
|
+
const { virtualizerLength , bufferItems , bufferSize , scrollRef } = (0, _hooks.useDynamicVirtualizerMeasure)({
|
|
19
|
+
defaultItemSize: props.itemSize,
|
|
20
|
+
direction: (_props_axis = props.axis) !== null && _props_axis !== void 0 ? _props_axis : 'vertical',
|
|
21
|
+
getItemSize: props.getItemSize,
|
|
22
|
+
currentIndex: (_contextState_contextIndex = contextState === null || contextState === void 0 ? void 0 : contextState.contextIndex) !== null && _contextState_contextIndex !== void 0 ? _contextState_contextIndex : 0,
|
|
23
|
+
numItems: props.numItems
|
|
24
|
+
});
|
|
25
|
+
const iScrollRef = (0, _reactUtilities.useMergedRefs)(_react.useRef(null), scrollRef);
|
|
26
|
+
const virtualizerState = (0, _useVirtualizer.useVirtualizer_unstable)({
|
|
27
|
+
...props,
|
|
28
|
+
virtualizerLength,
|
|
29
|
+
bufferItems,
|
|
30
|
+
bufferSize,
|
|
31
|
+
scrollViewRef: iScrollRef,
|
|
32
|
+
virtualizerContext: contextState
|
|
33
|
+
});
|
|
34
|
+
return {
|
|
35
|
+
...virtualizerState,
|
|
36
|
+
components: {
|
|
37
|
+
...virtualizerState.components,
|
|
38
|
+
container: 'div'
|
|
39
|
+
},
|
|
40
|
+
container: (0, _reactUtilities.resolveShorthand)(props.container, {
|
|
41
|
+
required: true,
|
|
42
|
+
defaultProps: {
|
|
43
|
+
ref: iScrollRef
|
|
44
|
+
}
|
|
45
|
+
})
|
|
46
|
+
};
|
|
47
|
+
} //# sourceMappingURL=useVirtualizerScrollViewDynamic.js.map
|
|
48
|
+
|
|
49
|
+
//# sourceMappingURL=useVirtualizerScrollViewDynamic.js.map
|
package/lib-commonjs/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../lib/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamic.js"],"sourcesContent":["import * as React from 'react';\nimport { resolveShorthand, useMergedRefs } from '@fluentui/react-utilities';\nimport { useVirtualizer_unstable } from '../Virtualizer/useVirtualizer';\nimport { useDynamicVirtualizerMeasure } from '../../Hooks';\nimport { useVirtualizerContextState_unstable } from '../../Utilities';\nexport function useVirtualizerScrollViewDynamic_unstable(props) {\n const contextState = useVirtualizerContextState_unstable(props.virtualizerContext);\n var _props_axis, _contextState_contextIndex;\n const {\n virtualizerLength,\n bufferItems,\n bufferSize,\n scrollRef\n } = useDynamicVirtualizerMeasure({\n defaultItemSize: props.itemSize,\n direction: (_props_axis = props.axis) !== null && _props_axis !== void 0 ? _props_axis : 'vertical',\n getItemSize: props.getItemSize,\n currentIndex: (_contextState_contextIndex = contextState === null || contextState === void 0 ? void 0 : contextState.contextIndex) !== null && _contextState_contextIndex !== void 0 ? _contextState_contextIndex : 0,\n numItems: props.numItems\n });\n const iScrollRef = useMergedRefs(React.useRef(null), scrollRef);\n const virtualizerState = useVirtualizer_unstable({\n ...props,\n virtualizerLength,\n bufferItems,\n bufferSize,\n scrollViewRef: iScrollRef,\n virtualizerContext: contextState\n });\n return {\n ...virtualizerState,\n components: {\n ...virtualizerState.components,\n container: 'div'\n },\n container: resolveShorthand(props.container, {\n required: true,\n defaultProps: {\n ref: iScrollRef\n }\n })\n };\n}\n//# sourceMappingURL=useVirtualizerScrollViewDynamic.js.map"],"names":["useVirtualizerScrollViewDynamic_unstable","props","contextState","useVirtualizerContextState_unstable","virtualizerContext","_props_axis","_contextState_contextIndex","virtualizerLength","bufferItems","bufferSize","scrollRef","useDynamicVirtualizerMeasure","defaultItemSize","itemSize","direction","axis","getItemSize","currentIndex","contextIndex","numItems","iScrollRef","useMergedRefs","React","useRef","virtualizerState","useVirtualizer_unstable","scrollViewRef","components","container","resolveShorthand","required","defaultProps","ref"],"mappings":";;;;+BAKgBA;;aAAAA;;;6DALO;gCACyB;gCACR;uBACK;2BACO;AAC7C,SAASA,yCAAyCC,KAAK,EAAE;IAC9D,MAAMC,eAAeC,IAAAA,8CAAmC,EAACF,MAAMG,kBAAkB;IACjF,IAAIC,aAAaC;IACjB,MAAM,EACJC,kBAAiB,EACjBC,YAAW,EACXC,WAAU,EACVC,UAAS,EACV,GAAGC,IAAAA,mCAA4B,EAAC;QAC/BC,iBAAiBX,MAAMY,QAAQ;QAC/BC,WAAW,AAACT,CAAAA,cAAcJ,MAAMc,IAAI,AAAD,MAAO,IAAI,IAAIV,gBAAgB,KAAK,IAAIA,cAAc,UAAU;QACnGW,aAAaf,MAAMe,WAAW;QAC9BC,cAAc,AAACX,CAAAA,6BAA6BJ,iBAAiB,IAAI,IAAIA,iBAAiB,KAAK,IAAI,KAAK,IAAIA,aAAagB,YAAY,AAAD,MAAO,IAAI,IAAIZ,+BAA+B,KAAK,IAAIA,6BAA6B,CAAC;QACrNa,UAAUlB,MAAMkB,QAAQ;IAC1B;IACA,MAAMC,aAAaC,IAAAA,6BAAa,EAACC,OAAMC,MAAM,CAAC,IAAI,GAAGb;IACrD,MAAMc,mBAAmBC,IAAAA,uCAAuB,EAAC;QAC/C,GAAGxB,KAAK;QACRM;QACAC;QACAC;QACAiB,eAAeN;QACfhB,oBAAoBF;IACtB;IACA,OAAO;QACL,GAAGsB,gBAAgB;QACnBG,YAAY;YACV,GAAGH,iBAAiBG,UAAU;YAC9BC,WAAW;QACb;QACAA,WAAWC,IAAAA,gCAAgB,EAAC5B,MAAM2B,SAAS,EAAE;YAC3CE,UAAU,IAAI;YACdC,cAAc;gBACZC,KAAKZ;YACP;QACF;IACF;AACF,EACA,2DAA2D"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
virtualizerScrollViewDynamicClassNames: ()=>virtualizerScrollViewDynamicClassNames,
|
|
13
|
+
useVirtualizerScrollViewDynamicStyles_unstable: ()=>useVirtualizerScrollViewDynamicStyles_unstable
|
|
14
|
+
});
|
|
15
|
+
const _useVirtualizerStyles = require("../Virtualizer/useVirtualizerStyles");
|
|
16
|
+
const _react = require("@griffel/react");
|
|
17
|
+
const virtualizerScrollViewDynamicClassName = 'fui-Virtualizer-Scroll-View-Dynamic';
|
|
18
|
+
const virtualizerScrollViewDynamicClassNames = {
|
|
19
|
+
..._useVirtualizerStyles.virtualizerClassNames,
|
|
20
|
+
container: `${virtualizerScrollViewDynamicClassName}__container`
|
|
21
|
+
};
|
|
22
|
+
const useStyles = /*#__PURE__*/ (0, _react["__styles"])({
|
|
23
|
+
base: {
|
|
24
|
+
mc9l5x: "f22iagw",
|
|
25
|
+
a9b677: "fly5x3f",
|
|
26
|
+
Bqenvij: "f1l02sjl",
|
|
27
|
+
Eiaeu8: "f1115ve7"
|
|
28
|
+
},
|
|
29
|
+
vertical: {
|
|
30
|
+
Beiy3e4: "f1vx9l62",
|
|
31
|
+
Bmxbyg5: "f5zp4f"
|
|
32
|
+
},
|
|
33
|
+
horizontal: {
|
|
34
|
+
Beiy3e4: "f1063pyq",
|
|
35
|
+
B68tc82: "f1oy3dpc"
|
|
36
|
+
},
|
|
37
|
+
verticalReversed: {
|
|
38
|
+
Beiy3e4: "f1gkdon0",
|
|
39
|
+
Bmxbyg5: "f5zp4f"
|
|
40
|
+
},
|
|
41
|
+
horizontalReversed: {
|
|
42
|
+
Beiy3e4: "f1oztnx0",
|
|
43
|
+
B68tc82: "f1oy3dpc"
|
|
44
|
+
}
|
|
45
|
+
}, {
|
|
46
|
+
d: [
|
|
47
|
+
".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}",
|
|
48
|
+
".fly5x3f{width:100%;}",
|
|
49
|
+
".f1l02sjl{height:100%;}",
|
|
50
|
+
".f1115ve7{overflow-anchor:none;}",
|
|
51
|
+
".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}",
|
|
52
|
+
".f5zp4f{overflow-y:auto;}",
|
|
53
|
+
".f1063pyq{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}",
|
|
54
|
+
".f1oy3dpc{overflow-x:auto;}",
|
|
55
|
+
".f1gkdon0{-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;}",
|
|
56
|
+
".f1oztnx0{-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;}"
|
|
57
|
+
]
|
|
58
|
+
});
|
|
59
|
+
const useVirtualizerScrollViewDynamicStyles_unstable = (state)=>{
|
|
60
|
+
const styles = useStyles();
|
|
61
|
+
// Default virtualizer styles base
|
|
62
|
+
(0, _useVirtualizerStyles.useVirtualizerStyles_unstable)(state);
|
|
63
|
+
const containerStyle = state.axis === 'horizontal' ? state.reversed ? styles.horizontalReversed : styles.horizontal : state.reversed ? styles.verticalReversed : styles.vertical;
|
|
64
|
+
// Add container styles
|
|
65
|
+
state.container.className = (0, _react.mergeClasses)(virtualizerScrollViewDynamicClassNames.container, styles.base, containerStyle, state.container.className);
|
|
66
|
+
return state;
|
|
67
|
+
}; //# sourceMappingURL=useVirtualizerScrollViewDynamicStyles.js.map
|
|
68
|
+
|
|
69
|
+
//# sourceMappingURL=useVirtualizerScrollViewDynamicStyles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../lib/components/VirtualizerScrollViewDynamic/useVirtualizerScrollViewDynamicStyles.js"],"sourcesContent":["import { useVirtualizerStyles_unstable, virtualizerClassNames } from '../Virtualizer/useVirtualizerStyles';\nimport { __styles, mergeClasses } from '@griffel/react';\nconst virtualizerScrollViewDynamicClassName = 'fui-Virtualizer-Scroll-View-Dynamic';\nexport const virtualizerScrollViewDynamicClassNames = {\n ...virtualizerClassNames,\n container: `${virtualizerScrollViewDynamicClassName}__container`\n};\nconst useStyles = /*#__PURE__*/__styles({\n base: {\n mc9l5x: \"f22iagw\",\n a9b677: \"fly5x3f\",\n Bqenvij: \"f1l02sjl\",\n Eiaeu8: \"f1115ve7\"\n },\n vertical: {\n Beiy3e4: \"f1vx9l62\",\n Bmxbyg5: \"f5zp4f\"\n },\n horizontal: {\n Beiy3e4: \"f1063pyq\",\n B68tc82: \"f1oy3dpc\"\n },\n verticalReversed: {\n Beiy3e4: \"f1gkdon0\",\n Bmxbyg5: \"f5zp4f\"\n },\n horizontalReversed: {\n Beiy3e4: \"f1oztnx0\",\n B68tc82: \"f1oy3dpc\"\n }\n}, {\n d: [\".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}\", \".fly5x3f{width:100%;}\", \".f1l02sjl{height:100%;}\", \".f1115ve7{overflow-anchor:none;}\", \".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}\", \".f5zp4f{overflow-y:auto;}\", \".f1063pyq{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}\", \".f1oy3dpc{overflow-x:auto;}\", \".f1gkdon0{-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;}\", \".f1oztnx0{-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;}\"]\n});\n/**\n * Apply styling to the Virtualizer states\n */\nexport const useVirtualizerScrollViewDynamicStyles_unstable = state => {\n const styles = useStyles();\n // Default virtualizer styles base\n useVirtualizerStyles_unstable(state);\n const containerStyle = state.axis === 'horizontal' ? state.reversed ? styles.horizontalReversed : styles.horizontal : state.reversed ? styles.verticalReversed : styles.vertical;\n // Add container styles\n state.container.className = mergeClasses(virtualizerScrollViewDynamicClassNames.container, styles.base, containerStyle, state.container.className);\n return state;\n};\n//# sourceMappingURL=useVirtualizerScrollViewDynamicStyles.js.map"],"names":["virtualizerScrollViewDynamicClassNames","useVirtualizerScrollViewDynamicStyles_unstable","virtualizerScrollViewDynamicClassName","virtualizerClassNames","container","useStyles","__styles","base","mc9l5x","a9b677","Bqenvij","Eiaeu8","vertical","Beiy3e4","Bmxbyg5","horizontal","B68tc82","verticalReversed","horizontalReversed","d","state","styles","useVirtualizerStyles_unstable","containerStyle","axis","reversed","className","mergeClasses"],"mappings":";;;;;;;;;;;IAGaA,sCAAsC,MAAtCA;IAiCAC,8CAA8C,MAA9CA;;sCApCwD;uBAC9B;AACvC,MAAMC,wCAAwC;AACvC,MAAMF,yCAAyC;IACpD,GAAGG,2CAAqB;IACxBC,WAAW,CAAC,EAAEF,sCAAsC,WAAW,CAAC;AAClE;AACA,MAAMG,YAAY,WAAW,GAAEC,IAAAA,kBAAQ,EAAC;IACtCC,MAAM;QACJC,QAAQ;QACRC,QAAQ;QACRC,SAAS;QACTC,QAAQ;IACV;IACAC,UAAU;QACRC,SAAS;QACTC,SAAS;IACX;IACAC,YAAY;QACVF,SAAS;QACTG,SAAS;IACX;IACAC,kBAAkB;QAChBJ,SAAS;QACTC,SAAS;IACX;IACAI,oBAAoB;QAClBL,SAAS;QACTG,SAAS;IACX;AACF,GAAG;IACDG,GAAG;QAAC;QAAwF;QAAyB;QAA2B;QAAoC;QAA6F;QAA6B;QAAoF;QAA+B;QAAqH;KAA2G;AACnoB;AAIO,MAAMlB,iDAAiDmB,CAAAA,QAAS;IACrE,MAAMC,SAAShB;IACf,kCAAkC;IAClCiB,IAAAA,mDAA6B,EAACF;IAC9B,MAAMG,iBAAiBH,MAAMI,IAAI,KAAK,eAAeJ,MAAMK,QAAQ,GAAGJ,OAAOH,kBAAkB,GAAGG,OAAON,UAAU,GAAGK,MAAMK,QAAQ,GAAGJ,OAAOJ,gBAAgB,GAAGI,OAAOT,QAAQ;IAChL,uBAAuB;IACvBQ,MAAMhB,SAAS,CAACsB,SAAS,GAAGC,IAAAA,mBAAY,EAAC3B,uCAAuCI,SAAS,EAAEiB,OAAOd,IAAI,EAAEgB,gBAAgBH,MAAMhB,SAAS,CAACsB,SAAS;IACjJ,OAAON;AACT,GACA,iEAAiE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../lib/hooks/hooks.types.js"],"sourcesContent":["export {};\n//# sourceMappingURL=hooks.types.js.map"],"names":[],"mappings":";;;;CACA,uCAAuC"}
|
|
@@ -5,6 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
6
|
_exportStar(require("./useIntersectionObserver"), exports);
|
|
7
7
|
_exportStar(require("./useVirtualizerMeasure"), exports);
|
|
8
|
+
_exportStar(require("./useDynamicVirtualizerMeasure"), exports);
|
|
9
|
+
_exportStar(require("./useResizeObserverRef"), exports);
|
|
10
|
+
_exportStar(require("./hooks.types"), exports);
|
|
8
11
|
//# sourceMappingURL=index.js.map
|
|
9
12
|
|
|
10
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../lib/hooks/index.js"],"sourcesContent":["export * from './useIntersectionObserver';\nexport * from './useVirtualizerMeasure';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;CACd,iCAAiC"}
|
|
1
|
+
{"version":3,"sources":["../../lib/hooks/index.js"],"sourcesContent":["export * from './useIntersectionObserver';\nexport * from './useVirtualizerMeasure';\nexport * from './useDynamicVirtualizerMeasure';\nexport * from './useResizeObserverRef';\nexport * from './hooks.types';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useDynamicVirtualizerMeasure", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>useDynamicVirtualizerMeasure
|
|
8
|
+
});
|
|
9
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
|
+
const _reactUtilities = require("@fluentui/react-utilities");
|
|
11
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
12
|
+
const _useResizeObserverRef = require("./useResizeObserverRef");
|
|
13
|
+
const useDynamicVirtualizerMeasure = (virtualizerProps)=>{
|
|
14
|
+
const { defaultItemSize , direction ='vertical' , numItems , getItemSize , currentIndex } = virtualizerProps;
|
|
15
|
+
const indexRef = (0, _react.useRef)(currentIndex);
|
|
16
|
+
indexRef.current = currentIndex;
|
|
17
|
+
const [state, setState] = _react.useState({
|
|
18
|
+
virtualizerLength: 0,
|
|
19
|
+
virtualizerBufferItems: 0,
|
|
20
|
+
virtualizerBufferSize: 0
|
|
21
|
+
});
|
|
22
|
+
const { virtualizerLength , virtualizerBufferItems , virtualizerBufferSize } = state;
|
|
23
|
+
const container = _react.useRef(null);
|
|
24
|
+
const handleScrollResize = _react.useCallback((scrollRef)=>{
|
|
25
|
+
if (!(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current)) {
|
|
26
|
+
// Error? ignore?
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (scrollRef.current !== container.current) {
|
|
30
|
+
container.current = scrollRef.current;
|
|
31
|
+
}
|
|
32
|
+
const containerSize = direction === 'vertical' ? scrollRef.current.getBoundingClientRect().height : scrollRef.current.getBoundingClientRect().width;
|
|
33
|
+
let indexSizer = 0;
|
|
34
|
+
let length = 0;
|
|
35
|
+
while(indexSizer <= containerSize && length < numItems){
|
|
36
|
+
const iItemSize = getItemSize(indexRef.current + length);
|
|
37
|
+
// Increment
|
|
38
|
+
indexSizer += iItemSize;
|
|
39
|
+
length++;
|
|
40
|
+
}
|
|
41
|
+
/*
|
|
42
|
+
* Number of items to append at each end, i.e. 'preload' each side before entering view.
|
|
43
|
+
*/ const bufferItems = Math.max(Math.floor(length / 4), 2);
|
|
44
|
+
/*
|
|
45
|
+
* This is how far we deviate into the bufferItems to detect a redraw.
|
|
46
|
+
*/ const bufferSize = Math.max(Math.floor(length / 8 * defaultItemSize), 1);
|
|
47
|
+
const totalLength = length + bufferItems * 2 + 3;
|
|
48
|
+
setState({
|
|
49
|
+
virtualizerLength: totalLength,
|
|
50
|
+
virtualizerBufferSize: bufferSize,
|
|
51
|
+
virtualizerBufferItems: bufferItems
|
|
52
|
+
});
|
|
53
|
+
}, [
|
|
54
|
+
defaultItemSize,
|
|
55
|
+
direction,
|
|
56
|
+
getItemSize,
|
|
57
|
+
numItems
|
|
58
|
+
]);
|
|
59
|
+
const resizeCallback = _react.useCallback((_entries, _observer, scrollRef)=>{
|
|
60
|
+
if (scrollRef) {
|
|
61
|
+
handleScrollResize(scrollRef);
|
|
62
|
+
}
|
|
63
|
+
}, [
|
|
64
|
+
handleScrollResize
|
|
65
|
+
]);
|
|
66
|
+
const scrollRef = (0, _useResizeObserverRef.useResizeObserverRef_unstable)(resizeCallback);
|
|
67
|
+
(0, _reactUtilities.useIsomorphicLayoutEffect)(()=>{
|
|
68
|
+
var _container_current, _container_current1;
|
|
69
|
+
if (!container.current) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const containerSize = direction === 'vertical' ? ((_container_current = container.current) === null || _container_current === void 0 ? void 0 : _container_current.getBoundingClientRect().height) * 1.5 : ((_container_current1 = container.current) === null || _container_current1 === void 0 ? void 0 : _container_current1.getBoundingClientRect().width) * 1.5;
|
|
73
|
+
let couldBeSmaller = false;
|
|
74
|
+
let recheckTotal = 0;
|
|
75
|
+
for(let i = currentIndex; i < currentIndex + virtualizerLength; i++){
|
|
76
|
+
const newItemSize = getItemSize(i);
|
|
77
|
+
recheckTotal += newItemSize;
|
|
78
|
+
const newLength = i - currentIndex;
|
|
79
|
+
const bufferItems = Math.max(Math.floor(newLength / 4), 2);
|
|
80
|
+
const totalNewLength = newLength + bufferItems * 2 + 4;
|
|
81
|
+
const compareLengths = totalNewLength < virtualizerLength;
|
|
82
|
+
if (recheckTotal > containerSize && compareLengths) {
|
|
83
|
+
couldBeSmaller = true;
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// Check if the render has caused us to need a re-calc of virtualizer length
|
|
88
|
+
if (recheckTotal < containerSize || couldBeSmaller) {
|
|
89
|
+
handleScrollResize(container);
|
|
90
|
+
}
|
|
91
|
+
}, [
|
|
92
|
+
getItemSize,
|
|
93
|
+
currentIndex,
|
|
94
|
+
direction,
|
|
95
|
+
virtualizerLength,
|
|
96
|
+
resizeCallback,
|
|
97
|
+
handleScrollResize
|
|
98
|
+
]);
|
|
99
|
+
return {
|
|
100
|
+
virtualizerLength,
|
|
101
|
+
bufferItems: virtualizerBufferItems,
|
|
102
|
+
bufferSize: virtualizerBufferSize,
|
|
103
|
+
scrollRef
|
|
104
|
+
};
|
|
105
|
+
}; //# sourceMappingURL=useDynamicVirtualizerMeasure.js.map
|
|
106
|
+
|
|
107
|
+
//# sourceMappingURL=useDynamicVirtualizerMeasure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../lib/hooks/useDynamicVirtualizerMeasure.js"],"sourcesContent":["import { useIsomorphicLayoutEffect } from '@fluentui/react-utilities';\nimport * as React from 'react';\nimport { useResizeObserverRef_unstable } from './useResizeObserverRef';\nimport { useRef } from 'react';\n/**\n * React hook that measures virtualized space dynamically to ensure optimized virtualization length.\n */\nexport const useDynamicVirtualizerMeasure = virtualizerProps => {\n const {\n defaultItemSize,\n direction = 'vertical',\n numItems,\n getItemSize,\n currentIndex\n } = virtualizerProps;\n const indexRef = useRef(currentIndex);\n indexRef.current = currentIndex;\n const [state, setState] = React.useState({\n virtualizerLength: 0,\n virtualizerBufferItems: 0,\n virtualizerBufferSize: 0\n });\n const {\n virtualizerLength,\n virtualizerBufferItems,\n virtualizerBufferSize\n } = state;\n const container = React.useRef(null);\n const handleScrollResize = React.useCallback(scrollRef => {\n if (!(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current)) {\n // Error? ignore?\n return;\n }\n if (scrollRef.current !== container.current) {\n container.current = scrollRef.current;\n }\n const containerSize = direction === 'vertical' ? scrollRef.current.getBoundingClientRect().height : scrollRef.current.getBoundingClientRect().width;\n let indexSizer = 0;\n let length = 0;\n while (indexSizer <= containerSize && length < numItems) {\n const iItemSize = getItemSize(indexRef.current + length);\n // Increment\n indexSizer += iItemSize;\n length++;\n }\n /*\n * Number of items to append at each end, i.e. 'preload' each side before entering view.\n */\n const bufferItems = Math.max(Math.floor(length / 4), 2);\n /*\n * This is how far we deviate into the bufferItems to detect a redraw.\n */\n const bufferSize = Math.max(Math.floor(length / 8 * defaultItemSize), 1);\n const totalLength = length + bufferItems * 2 + 3;\n setState({\n virtualizerLength: totalLength,\n virtualizerBufferSize: bufferSize,\n virtualizerBufferItems: bufferItems\n });\n }, [defaultItemSize, direction, getItemSize, numItems]);\n const resizeCallback = React.useCallback((_entries, _observer, scrollRef) => {\n if (scrollRef) {\n handleScrollResize(scrollRef);\n }\n }, [handleScrollResize]);\n const scrollRef = useResizeObserverRef_unstable(resizeCallback);\n useIsomorphicLayoutEffect(() => {\n var _container_current, _container_current1;\n if (!container.current) {\n return;\n }\n const containerSize = direction === 'vertical' ? ((_container_current = container.current) === null || _container_current === void 0 ? void 0 : _container_current.getBoundingClientRect().height) * 1.5 : ((_container_current1 = container.current) === null || _container_current1 === void 0 ? void 0 : _container_current1.getBoundingClientRect().width) * 1.5;\n let couldBeSmaller = false;\n let recheckTotal = 0;\n for (let i = currentIndex; i < currentIndex + virtualizerLength; i++) {\n const newItemSize = getItemSize(i);\n recheckTotal += newItemSize;\n const newLength = i - currentIndex;\n const bufferItems = Math.max(Math.floor(newLength / 4), 2);\n const totalNewLength = newLength + bufferItems * 2 + 4;\n const compareLengths = totalNewLength < virtualizerLength;\n if (recheckTotal > containerSize && compareLengths) {\n couldBeSmaller = true;\n break;\n }\n }\n // Check if the render has caused us to need a re-calc of virtualizer length\n if (recheckTotal < containerSize || couldBeSmaller) {\n handleScrollResize(container);\n }\n }, [getItemSize, currentIndex, direction, virtualizerLength, resizeCallback, handleScrollResize]);\n return {\n virtualizerLength,\n bufferItems: virtualizerBufferItems,\n bufferSize: virtualizerBufferSize,\n scrollRef\n };\n};\n//# sourceMappingURL=useDynamicVirtualizerMeasure.js.map"],"names":["useDynamicVirtualizerMeasure","virtualizerProps","defaultItemSize","direction","numItems","getItemSize","currentIndex","indexRef","useRef","current","state","setState","React","useState","virtualizerLength","virtualizerBufferItems","virtualizerBufferSize","container","handleScrollResize","useCallback","scrollRef","containerSize","getBoundingClientRect","height","width","indexSizer","length","iItemSize","bufferItems","Math","max","floor","bufferSize","totalLength","resizeCallback","_entries","_observer","useResizeObserverRef_unstable","useIsomorphicLayoutEffect","_container_current","_container_current1","couldBeSmaller","recheckTotal","i","newItemSize","newLength","totalNewLength","compareLengths"],"mappings":";;;;+BAOaA;;aAAAA;;;gCAP6B;6DACnB;sCACuB;AAKvC,MAAMA,+BAA+BC,CAAAA,mBAAoB;IAC9D,MAAM,EACJC,gBAAe,EACfC,WAAY,WAAU,EACtBC,SAAQ,EACRC,YAAW,EACXC,aAAY,EACb,GAAGL;IACJ,MAAMM,WAAWC,IAAAA,aAAM,EAACF;IACxBC,SAASE,OAAO,GAAGH;IACnB,MAAM,CAACI,OAAOC,SAAS,GAAGC,OAAMC,QAAQ,CAAC;QACvCC,mBAAmB;QACnBC,wBAAwB;QACxBC,uBAAuB;IACzB;IACA,MAAM,EACJF,kBAAiB,EACjBC,uBAAsB,EACtBC,sBAAqB,EACtB,GAAGN;IACJ,MAAMO,YAAYL,OAAMJ,MAAM,CAAC,IAAI;IACnC,MAAMU,qBAAqBN,OAAMO,WAAW,CAACC,CAAAA,YAAa;QACxD,IAAI,CAAEA,CAAAA,cAAc,IAAI,IAAIA,cAAc,KAAK,IAAI,KAAK,IAAIA,UAAUX,OAAO,AAAD,GAAI;YAC9E,iBAAiB;YACjB;QACF,CAAC;QACD,IAAIW,UAAUX,OAAO,KAAKQ,UAAUR,OAAO,EAAE;YAC3CQ,UAAUR,OAAO,GAAGW,UAAUX,OAAO;QACvC,CAAC;QACD,MAAMY,gBAAgBlB,cAAc,aAAaiB,UAAUX,OAAO,CAACa,qBAAqB,GAAGC,MAAM,GAAGH,UAAUX,OAAO,CAACa,qBAAqB,GAAGE,KAAK;QACnJ,IAAIC,aAAa;QACjB,IAAIC,SAAS;QACb,MAAOD,cAAcJ,iBAAiBK,SAAStB,SAAU;YACvD,MAAMuB,YAAYtB,YAAYE,SAASE,OAAO,GAAGiB;YACjD,YAAY;YACZD,cAAcE;YACdD;QACF;QACA;;IAEA,GACA,MAAME,cAAcC,KAAKC,GAAG,CAACD,KAAKE,KAAK,CAACL,SAAS,IAAI;QACrD;;IAEA,GACA,MAAMM,aAAaH,KAAKC,GAAG,CAACD,KAAKE,KAAK,CAACL,SAAS,IAAIxB,kBAAkB;QACtE,MAAM+B,cAAcP,SAASE,cAAc,IAAI;QAC/CjB,SAAS;YACPG,mBAAmBmB;YACnBjB,uBAAuBgB;YACvBjB,wBAAwBa;QAC1B;IACF,GAAG;QAAC1B;QAAiBC;QAAWE;QAAaD;KAAS;IACtD,MAAM8B,iBAAiBtB,OAAMO,WAAW,CAAC,CAACgB,UAAUC,WAAWhB,YAAc;QAC3E,IAAIA,WAAW;YACbF,mBAAmBE;QACrB,CAAC;IACH,GAAG;QAACF;KAAmB;IACvB,MAAME,YAAYiB,IAAAA,mDAA6B,EAACH;IAChDI,IAAAA,yCAAyB,EAAC,IAAM;QAC9B,IAAIC,oBAAoBC;QACxB,IAAI,CAACvB,UAAUR,OAAO,EAAE;YACtB;QACF,CAAC;QACD,MAAMY,gBAAgBlB,cAAc,aAAa,AAAC,CAAA,AAACoC,CAAAA,qBAAqBtB,UAAUR,OAAO,AAAD,MAAO,IAAI,IAAI8B,uBAAuB,KAAK,IAAI,KAAK,IAAIA,mBAAmBjB,qBAAqB,GAAGC,MAAM,AAAD,IAAK,MAAM,AAAC,CAAA,AAACiB,CAAAA,sBAAsBvB,UAAUR,OAAO,AAAD,MAAO,IAAI,IAAI+B,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBlB,qBAAqB,GAAGE,KAAK,AAAD,IAAK,GAAG;QACpW,IAAIiB,iBAAiB,KAAK;QAC1B,IAAIC,eAAe;QACnB,IAAK,IAAIC,IAAIrC,cAAcqC,IAAIrC,eAAeQ,mBAAmB6B,IAAK;YACpE,MAAMC,cAAcvC,YAAYsC;YAChCD,gBAAgBE;YAChB,MAAMC,YAAYF,IAAIrC;YACtB,MAAMsB,cAAcC,KAAKC,GAAG,CAACD,KAAKE,KAAK,CAACc,YAAY,IAAI;YACxD,MAAMC,iBAAiBD,YAAYjB,cAAc,IAAI;YACrD,MAAMmB,iBAAiBD,iBAAiBhC;YACxC,IAAI4B,eAAerB,iBAAiB0B,gBAAgB;gBAClDN,iBAAiB,IAAI;gBACrB,KAAM;YACR,CAAC;QACH;QACA,4EAA4E;QAC5E,IAAIC,eAAerB,iBAAiBoB,gBAAgB;YAClDvB,mBAAmBD;QACrB,CAAC;IACH,GAAG;QAACZ;QAAaC;QAAcH;QAAWW;QAAmBoB;QAAgBhB;KAAmB;IAChG,OAAO;QACLJ;QACAc,aAAab;QACbiB,YAAYhB;QACZI;IACF;AACF,GACA,wDAAwD"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useResizeObserverRef_unstable", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>useResizeObserverRef_unstable
|
|
8
|
+
});
|
|
9
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
11
|
+
const _debounce = require("../utilities/debounce");
|
|
12
|
+
const _reactUtilities = require("@fluentui/react-utilities");
|
|
13
|
+
const useResizeObserverRef_unstable = (resizeCallback)=>{
|
|
14
|
+
const container = _react.useRef(null);
|
|
15
|
+
// the handler for resize observer
|
|
16
|
+
const handleResize = (0, _debounce.debounce)((entries, observer)=>{
|
|
17
|
+
resizeCallback(entries, observer, container);
|
|
18
|
+
});
|
|
19
|
+
// Keep the reference of ResizeObserver in the state, as it should live through renders
|
|
20
|
+
const [resizeObserver, setResizeObserver] = _react.useState(()=>(0, _reactUtilities.canUseDOM)() ? new ResizeObserver(handleResize) : undefined);
|
|
21
|
+
_react.useEffect(()=>{
|
|
22
|
+
// Update our state when resizeCallback changes
|
|
23
|
+
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
|
|
24
|
+
setResizeObserver((0, _reactUtilities.canUseDOM)() ? new ResizeObserver(handleResize) : undefined);
|
|
25
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
26
|
+
}, [
|
|
27
|
+
resizeCallback
|
|
28
|
+
]);
|
|
29
|
+
_react.useEffect(()=>{
|
|
30
|
+
return ()=>{
|
|
31
|
+
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
|
|
32
|
+
};
|
|
33
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
34
|
+
}, []);
|
|
35
|
+
const scrollRef = _react.useCallback((instance)=>{
|
|
36
|
+
if (container.current !== instance) {
|
|
37
|
+
if (container.current) {
|
|
38
|
+
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.unobserve(container.current);
|
|
39
|
+
}
|
|
40
|
+
container.current = instance;
|
|
41
|
+
if (container.current) {
|
|
42
|
+
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.observe(container.current);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}, [
|
|
46
|
+
resizeObserver
|
|
47
|
+
]);
|
|
48
|
+
return scrollRef;
|
|
49
|
+
}; //# sourceMappingURL=useResizeObserverRef.js.map
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=useResizeObserverRef.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../lib/hooks/useResizeObserverRef.js"],"sourcesContent":["import * as React from 'react';\nimport { debounce } from '../utilities/debounce';\nimport { canUseDOM } from '@fluentui/react-utilities';\n/**\n * useResizeObserverRef_unstable simplifies resize observer connection and ensures debounce/cleanup\n */\nexport const useResizeObserverRef_unstable = resizeCallback => {\n const container = React.useRef(null);\n // the handler for resize observer\n const handleResize = debounce((entries, observer) => {\n resizeCallback(entries, observer, container);\n });\n // Keep the reference of ResizeObserver in the state, as it should live through renders\n const [resizeObserver, setResizeObserver] = React.useState(() => canUseDOM() ? new ResizeObserver(handleResize) : undefined);\n React.useEffect(() => {\n // Update our state when resizeCallback changes\n resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();\n setResizeObserver(canUseDOM() ? new ResizeObserver(handleResize) : undefined);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [resizeCallback]);\n React.useEffect(() => {\n return () => {\n resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n const scrollRef = React.useCallback(instance => {\n if (container.current !== instance) {\n if (container.current) {\n resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.unobserve(container.current);\n }\n container.current = instance;\n if (container.current) {\n resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.observe(container.current);\n }\n }\n }, [resizeObserver]);\n return scrollRef;\n};\n//# sourceMappingURL=useResizeObserverRef.js.map"],"names":["useResizeObserverRef_unstable","resizeCallback","container","React","useRef","handleResize","debounce","entries","observer","resizeObserver","setResizeObserver","useState","canUseDOM","ResizeObserver","undefined","useEffect","disconnect","scrollRef","useCallback","instance","current","unobserve","observe"],"mappings":";;;;+BAMaA;;aAAAA;;;6DANU;0BACE;gCACC;AAInB,MAAMA,gCAAgCC,CAAAA,iBAAkB;IAC7D,MAAMC,YAAYC,OAAMC,MAAM,CAAC,IAAI;IACnC,kCAAkC;IAClC,MAAMC,eAAeC,IAAAA,kBAAQ,EAAC,CAACC,SAASC,WAAa;QACnDP,eAAeM,SAASC,UAAUN;IACpC;IACA,uFAAuF;IACvF,MAAM,CAACO,gBAAgBC,kBAAkB,GAAGP,OAAMQ,QAAQ,CAAC,IAAMC,IAAAA,yBAAS,MAAK,IAAIC,eAAeR,gBAAgBS,SAAS;IAC3HX,OAAMY,SAAS,CAAC,IAAM;QACpB,+CAA+C;QAC/CN,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAeO,UAAU,EAAE;QAC3FN,kBAAkBE,IAAAA,yBAAS,MAAK,IAAIC,eAAeR,gBAAgBS,SAAS;IAC5E,uDAAuD;IACzD,GAAG;QAACb;KAAe;IACnBE,OAAMY,SAAS,CAAC,IAAM;QACpB,OAAO,IAAM;YACXN,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAeO,UAAU,EAAE;QAC7F;IACA,uDAAuD;IACzD,GAAG,EAAE;IACL,MAAMC,YAAYd,OAAMe,WAAW,CAACC,CAAAA,WAAY;QAC9C,IAAIjB,UAAUkB,OAAO,KAAKD,UAAU;YAClC,IAAIjB,UAAUkB,OAAO,EAAE;gBACrBX,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAeY,SAAS,CAACnB,UAAUkB,OAAO,CAAC;YAC7G,CAAC;YACDlB,UAAUkB,OAAO,GAAGD;YACpB,IAAIjB,UAAUkB,OAAO,EAAE;gBACrBX,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAea,OAAO,CAACpB,UAAUkB,OAAO,CAAC;YAC3G,CAAC;QACH,CAAC;IACH,GAAG;QAACX;KAAe;IACnB,OAAOQ;AACT,GACA,gDAAgD"}
|
|
@@ -8,8 +8,7 @@ Object.defineProperty(exports, "useStaticVirtualizerMeasure", {
|
|
|
8
8
|
});
|
|
9
9
|
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
10
10
|
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
11
|
-
const
|
|
12
|
-
const _debounce = require("../utilities/debounce");
|
|
11
|
+
const _useResizeObserverRef = require("./useResizeObserverRef");
|
|
13
12
|
const useStaticVirtualizerMeasure = (virtualizerProps)=>{
|
|
14
13
|
const { defaultItemSize , direction ='vertical' } = virtualizerProps;
|
|
15
14
|
const [state, setState] = _react.useState({
|
|
@@ -18,13 +17,11 @@ const useStaticVirtualizerMeasure = (virtualizerProps)=>{
|
|
|
18
17
|
bufferItems: 0
|
|
19
18
|
});
|
|
20
19
|
const { virtualizerLength , bufferItems , bufferSize } = state;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const resizeCallback = ()=>{
|
|
24
|
-
if (!container.current) {
|
|
20
|
+
const resizeCallback = _react.useCallback((_entries, _observer, scrollRef)=>{
|
|
21
|
+
if (!(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current)) {
|
|
25
22
|
return;
|
|
26
23
|
}
|
|
27
|
-
const containerSize = direction === 'vertical' ?
|
|
24
|
+
const containerSize = direction === 'vertical' ? scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current.getBoundingClientRect().height : scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current.getBoundingClientRect().width;
|
|
28
25
|
/*
|
|
29
26
|
* Number of items required to cover viewport.
|
|
30
27
|
*/ const length = Math.ceil(containerSize / defaultItemSize + 1);
|
|
@@ -40,30 +37,11 @@ const useStaticVirtualizerMeasure = (virtualizerProps)=>{
|
|
|
40
37
|
bufferItems: newBufferItems,
|
|
41
38
|
bufferSize: newBufferSize
|
|
42
39
|
});
|
|
43
|
-
};
|
|
44
|
-
// the handler for resize observer
|
|
45
|
-
const handleResize = (0, _debounce.debounce)(resizeCallback);
|
|
46
|
-
// Keep the reference of ResizeObserver in the state, as it should live through renders
|
|
47
|
-
const [resizeObserver] = _react.useState((0, _reactUtilities.canUseDOM)() ? new ResizeObserver(handleResize) : undefined);
|
|
48
|
-
_react.useEffect(()=>{
|
|
49
|
-
return ()=>{
|
|
50
|
-
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
|
|
51
|
-
};
|
|
52
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
53
|
-
}, []);
|
|
54
|
-
const scrollRef = _react.useCallback((el)=>{
|
|
55
|
-
if (container.current !== el) {
|
|
56
|
-
if (container.current) {
|
|
57
|
-
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.unobserve(container.current);
|
|
58
|
-
}
|
|
59
|
-
container.current = el;
|
|
60
|
-
if (container.current) {
|
|
61
|
-
resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.observe(container.current);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
40
|
}, [
|
|
65
|
-
|
|
41
|
+
defaultItemSize,
|
|
42
|
+
direction
|
|
66
43
|
]);
|
|
44
|
+
const scrollRef = (0, _useResizeObserverRef.useResizeObserverRef_unstable)(resizeCallback);
|
|
67
45
|
return {
|
|
68
46
|
virtualizerLength,
|
|
69
47
|
bufferItems,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../lib/hooks/useVirtualizerMeasure.js"],"sourcesContent":["import * as React from 'react';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../lib/hooks/useVirtualizerMeasure.js"],"sourcesContent":["import * as React from 'react';\nimport { useResizeObserverRef_unstable } from './useResizeObserverRef';\n/**\n * React hook that measures virtualized space based on a static size to ensure optimized virtualization length.\n */\nexport const useStaticVirtualizerMeasure = virtualizerProps => {\n const {\n defaultItemSize,\n direction = 'vertical'\n } = virtualizerProps;\n const [state, setState] = React.useState({\n virtualizerLength: 0,\n bufferSize: 0,\n bufferItems: 0\n });\n const {\n virtualizerLength,\n bufferItems,\n bufferSize\n } = state;\n const resizeCallback = React.useCallback((_entries, _observer, scrollRef) => {\n if (!(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current)) {\n return;\n }\n const containerSize = direction === 'vertical' ? scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current.getBoundingClientRect().height : scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current.getBoundingClientRect().width;\n /*\n * Number of items required to cover viewport.\n */\n const length = Math.ceil(containerSize / defaultItemSize + 1);\n /*\n * Number of items to append at each end, i.e. 'preload' each side before entering view.\n */\n const newBufferItems = Math.max(Math.floor(length / 4), 2);\n /*\n * This is how far we deviate into the bufferItems to detect a redraw.\n */\n const newBufferSize = Math.max(Math.floor(length / 8 * defaultItemSize), 1);\n const totalLength = length + newBufferItems * 2 + 1;\n setState({\n virtualizerLength: totalLength,\n bufferItems: newBufferItems,\n bufferSize: newBufferSize\n });\n }, [defaultItemSize, direction]);\n const scrollRef = useResizeObserverRef_unstable(resizeCallback);\n return {\n virtualizerLength,\n bufferItems,\n bufferSize,\n scrollRef\n };\n};\n//# sourceMappingURL=useVirtualizerMeasure.js.map"],"names":["useStaticVirtualizerMeasure","virtualizerProps","defaultItemSize","direction","state","setState","React","useState","virtualizerLength","bufferSize","bufferItems","resizeCallback","useCallback","_entries","_observer","scrollRef","current","containerSize","getBoundingClientRect","height","width","length","Math","ceil","newBufferItems","max","floor","newBufferSize","totalLength","useResizeObserverRef_unstable"],"mappings":";;;;+BAKaA;;aAAAA;;;6DALU;sCACuB;AAIvC,MAAMA,8BAA8BC,CAAAA,mBAAoB;IAC7D,MAAM,EACJC,gBAAe,EACfC,WAAY,WAAU,EACvB,GAAGF;IACJ,MAAM,CAACG,OAAOC,SAAS,GAAGC,OAAMC,QAAQ,CAAC;QACvCC,mBAAmB;QACnBC,YAAY;QACZC,aAAa;IACf;IACA,MAAM,EACJF,kBAAiB,EACjBE,YAAW,EACXD,WAAU,EACX,GAAGL;IACJ,MAAMO,iBAAiBL,OAAMM,WAAW,CAAC,CAACC,UAAUC,WAAWC,YAAc;QAC3E,IAAI,CAAEA,CAAAA,cAAc,IAAI,IAAIA,cAAc,KAAK,IAAI,KAAK,IAAIA,UAAUC,OAAO,AAAD,GAAI;YAC9E;QACF,CAAC;QACD,MAAMC,gBAAgBd,cAAc,aAAaY,cAAc,IAAI,IAAIA,cAAc,KAAK,IAAI,KAAK,IAAIA,UAAUC,OAAO,CAACE,qBAAqB,GAAGC,MAAM,GAAGJ,cAAc,IAAI,IAAIA,cAAc,KAAK,IAAI,KAAK,IAAIA,UAAUC,OAAO,CAACE,qBAAqB,GAAGE,KAAK;QAC/P;;IAEA,GACA,MAAMC,SAASC,KAAKC,IAAI,CAACN,gBAAgBf,kBAAkB;QAC3D;;IAEA,GACA,MAAMsB,iBAAiBF,KAAKG,GAAG,CAACH,KAAKI,KAAK,CAACL,SAAS,IAAI;QACxD;;IAEA,GACA,MAAMM,gBAAgBL,KAAKG,GAAG,CAACH,KAAKI,KAAK,CAACL,SAAS,IAAInB,kBAAkB;QACzE,MAAM0B,cAAcP,SAASG,iBAAiB,IAAI;QAClDnB,SAAS;YACPG,mBAAmBoB;YACnBlB,aAAac;YACbf,YAAYkB;QACd;IACF,GAAG;QAACzB;QAAiBC;KAAU;IAC/B,MAAMY,YAAYc,IAAAA,mDAA6B,EAAClB;IAChD,OAAO;QACLH;QACAE;QACAD;QACAM;IACF;AACF,GACA,iDAAiD"}
|
package/lib-commonjs/index.js
CHANGED
|
@@ -16,15 +16,26 @@ _export(exports, {
|
|
|
16
16
|
useVirtualizerStyles_unstable: ()=>_virtualizer.useVirtualizerStyles_unstable,
|
|
17
17
|
useIntersectionObserver: ()=>_hooks.useIntersectionObserver,
|
|
18
18
|
useStaticVirtualizerMeasure: ()=>_hooks.useStaticVirtualizerMeasure,
|
|
19
|
+
useDynamicVirtualizerMeasure: ()=>_hooks.useDynamicVirtualizerMeasure,
|
|
20
|
+
useResizeObserverRef_unstable: ()=>_hooks.useResizeObserverRef_unstable,
|
|
21
|
+
VirtualizerContextProvider: ()=>_utilities.VirtualizerContextProvider,
|
|
22
|
+
useVirtualizerContext_unstable: ()=>_utilities.useVirtualizerContext_unstable,
|
|
19
23
|
VirtualizerScrollView: ()=>_virtualizerScrollView.VirtualizerScrollView,
|
|
20
24
|
virtualizerScrollViewClassNames: ()=>_virtualizerScrollView.virtualizerScrollViewClassNames,
|
|
21
25
|
useVirtualizerScrollView_unstable: ()=>_virtualizerScrollView.useVirtualizerScrollView_unstable,
|
|
22
26
|
renderVirtualizerScrollView_unstable: ()=>_virtualizerScrollView.renderVirtualizerScrollView_unstable,
|
|
23
|
-
useVirtualizerScrollViewStyles_unstable: ()=>_virtualizerScrollView.useVirtualizerScrollViewStyles_unstable
|
|
27
|
+
useVirtualizerScrollViewStyles_unstable: ()=>_virtualizerScrollView.useVirtualizerScrollViewStyles_unstable,
|
|
28
|
+
VirtualizerScrollViewDynamic: ()=>_virtualizerScrollViewDynamic.VirtualizerScrollViewDynamic,
|
|
29
|
+
virtualizerScrollViewDynamicClassNames: ()=>_virtualizerScrollViewDynamic.virtualizerScrollViewDynamicClassNames,
|
|
30
|
+
useVirtualizerScrollViewDynamic_unstable: ()=>_virtualizerScrollViewDynamic.useVirtualizerScrollViewDynamic_unstable,
|
|
31
|
+
renderVirtualizerScrollViewDynamic_unstable: ()=>_virtualizerScrollViewDynamic.renderVirtualizerScrollViewDynamic_unstable,
|
|
32
|
+
useVirtualizerScrollViewDynamicStyles_unstable: ()=>_virtualizerScrollViewDynamic.useVirtualizerScrollViewDynamicStyles_unstable
|
|
24
33
|
});
|
|
25
34
|
const _virtualizer = require("./Virtualizer");
|
|
26
35
|
const _hooks = require("./Hooks");
|
|
36
|
+
const _utilities = require("./Utilities");
|
|
27
37
|
const _virtualizerScrollView = require("./VirtualizerScrollView");
|
|
38
|
+
const _virtualizerScrollViewDynamic = require("./VirtualizerScrollViewDynamic");
|
|
28
39
|
//# sourceMappingURL=index.js.map
|
|
29
40
|
|
|
30
41
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../lib/index.js"],"sourcesContent":["export { Virtualizer, virtualizerClassNames, useVirtualizer_unstable, renderVirtualizer_unstable, useVirtualizerStyles_unstable } from './Virtualizer';\nexport { useIntersectionObserver, useStaticVirtualizerMeasure } from './Hooks';\nexport { VirtualizerScrollView, virtualizerScrollViewClassNames, useVirtualizerScrollView_unstable, renderVirtualizerScrollView_unstable, useVirtualizerScrollViewStyles_unstable } from './VirtualizerScrollView';\n//# sourceMappingURL=index.js.map"],"names":["Virtualizer","virtualizerClassNames","useVirtualizer_unstable","renderVirtualizer_unstable","useVirtualizerStyles_unstable","useIntersectionObserver","useStaticVirtualizerMeasure","VirtualizerScrollView","virtualizerScrollViewClassNames","useVirtualizerScrollView_unstable","renderVirtualizerScrollView_unstable","useVirtualizerScrollViewStyles_unstable"],"mappings":";;;;;;;;;;;IAASA,WAAW,MAAXA,wBAAW;IAAEC,qBAAqB,MAArBA,kCAAqB;IAAEC,uBAAuB,MAAvBA,oCAAuB;IAAEC,0BAA0B,MAA1BA,uCAA0B;IAAEC,6BAA6B,MAA7BA,0CAA6B;IACtHC,uBAAuB,MAAvBA,8BAAuB;IAAEC,2BAA2B,MAA3BA,kCAA2B;
|
|
1
|
+
{"version":3,"sources":["../lib/index.js"],"sourcesContent":["export { Virtualizer, virtualizerClassNames, useVirtualizer_unstable, renderVirtualizer_unstable, useVirtualizerStyles_unstable } from './Virtualizer';\nexport { useIntersectionObserver, useStaticVirtualizerMeasure, useDynamicVirtualizerMeasure, useResizeObserverRef_unstable } from './Hooks';\nexport { VirtualizerContextProvider, useVirtualizerContext_unstable } from './Utilities';\nexport { VirtualizerScrollView, virtualizerScrollViewClassNames, useVirtualizerScrollView_unstable, renderVirtualizerScrollView_unstable, useVirtualizerScrollViewStyles_unstable } from './VirtualizerScrollView';\nexport { VirtualizerScrollViewDynamic, virtualizerScrollViewDynamicClassNames, useVirtualizerScrollViewDynamic_unstable, renderVirtualizerScrollViewDynamic_unstable, useVirtualizerScrollViewDynamicStyles_unstable } from './VirtualizerScrollViewDynamic';\n//# sourceMappingURL=index.js.map"],"names":["Virtualizer","virtualizerClassNames","useVirtualizer_unstable","renderVirtualizer_unstable","useVirtualizerStyles_unstable","useIntersectionObserver","useStaticVirtualizerMeasure","useDynamicVirtualizerMeasure","useResizeObserverRef_unstable","VirtualizerContextProvider","useVirtualizerContext_unstable","VirtualizerScrollView","virtualizerScrollViewClassNames","useVirtualizerScrollView_unstable","renderVirtualizerScrollView_unstable","useVirtualizerScrollViewStyles_unstable","VirtualizerScrollViewDynamic","virtualizerScrollViewDynamicClassNames","useVirtualizerScrollViewDynamic_unstable","renderVirtualizerScrollViewDynamic_unstable","useVirtualizerScrollViewDynamicStyles_unstable"],"mappings":";;;;;;;;;;;IAASA,WAAW,MAAXA,wBAAW;IAAEC,qBAAqB,MAArBA,kCAAqB;IAAEC,uBAAuB,MAAvBA,oCAAuB;IAAEC,0BAA0B,MAA1BA,uCAA0B;IAAEC,6BAA6B,MAA7BA,0CAA6B;IACtHC,uBAAuB,MAAvBA,8BAAuB;IAAEC,2BAA2B,MAA3BA,kCAA2B;IAAEC,4BAA4B,MAA5BA,mCAA4B;IAAEC,6BAA6B,MAA7BA,oCAA6B;IACjHC,0BAA0B,MAA1BA,qCAA0B;IAAEC,8BAA8B,MAA9BA,yCAA8B;IAC1DC,qBAAqB,MAArBA,4CAAqB;IAAEC,+BAA+B,MAA/BA,sDAA+B;IAAEC,iCAAiC,MAAjCA,wDAAiC;IAAEC,oCAAoC,MAApCA,2DAAoC;IAAEC,uCAAuC,MAAvCA,8DAAuC;IACxKC,4BAA4B,MAA5BA,0DAA4B;IAAEC,sCAAsC,MAAtCA,oEAAsC;IAAEC,wCAAwC,MAAxCA,sEAAwC;IAAEC,2CAA2C,MAA3CA,yEAA2C;IAAEC,8CAA8C,MAA9CA,4EAA8C;;6BAJ7E;uBACL;2BACvD;uCAC8G;8CACmC;CAC5N,iCAAiC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
VirtualizerContextProvider: ()=>VirtualizerContextProvider,
|
|
13
|
+
useVirtualizerContext_unstable: ()=>useVirtualizerContext_unstable,
|
|
14
|
+
useVirtualizerContextState_unstable: ()=>useVirtualizerContextState_unstable
|
|
15
|
+
});
|
|
16
|
+
const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
17
|
+
const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
18
|
+
const VirtualizerContext = /*#__PURE__*/ _react.createContext(undefined);
|
|
19
|
+
const VirtualizerContextProvider = VirtualizerContext.Provider;
|
|
20
|
+
const useVirtualizerContext_unstable = ()=>{
|
|
21
|
+
return _react.useContext(VirtualizerContext);
|
|
22
|
+
};
|
|
23
|
+
const useVirtualizerContextState_unstable = (passedContext)=>{
|
|
24
|
+
const virtualizerContext = useVirtualizerContext_unstable();
|
|
25
|
+
const [_contextIndex, _setContextIndex] = (0, _react.useState)(-1);
|
|
26
|
+
var _ref;
|
|
27
|
+
/* We respect any wrapped providers while also ensuring defaults or passed through
|
|
28
|
+
* Order of usage -> Passed Prop -> Provider Context -> Internal State default
|
|
29
|
+
*/ const _context = (0, _react.useMemo)(()=>(_ref = passedContext !== null && passedContext !== void 0 ? passedContext : virtualizerContext) !== null && _ref !== void 0 ? _ref : {
|
|
30
|
+
contextIndex: _contextIndex,
|
|
31
|
+
setContextIndex: _setContextIndex
|
|
32
|
+
}, [
|
|
33
|
+
_contextIndex,
|
|
34
|
+
passedContext,
|
|
35
|
+
virtualizerContext
|
|
36
|
+
]);
|
|
37
|
+
const context = (0, _react.useMemo)(()=>{
|
|
38
|
+
return {
|
|
39
|
+
contextIndex: _context.contextIndex,
|
|
40
|
+
setContextIndex: _context.setContextIndex
|
|
41
|
+
};
|
|
42
|
+
}, [
|
|
43
|
+
_context
|
|
44
|
+
]);
|
|
45
|
+
return context;
|
|
46
|
+
}; //# sourceMappingURL=VirtualizerContext.js.map
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=VirtualizerContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../lib/utilities/VirtualizerContext/VirtualizerContext.js"],"sourcesContent":["import * as React from 'react';\nimport { useMemo, useState } from 'react';\nconst VirtualizerContext = /*#__PURE__*/React.createContext(undefined);\nexport const VirtualizerContextProvider = VirtualizerContext.Provider;\nexport const useVirtualizerContext_unstable = () => {\n return React.useContext(VirtualizerContext);\n};\nexport const useVirtualizerContextState_unstable = passedContext => {\n const virtualizerContext = useVirtualizerContext_unstable();\n const [_contextIndex, _setContextIndex] = useState(-1);\n var _ref;\n /* We respect any wrapped providers while also ensuring defaults or passed through\n * Order of usage -> Passed Prop -> Provider Context -> Internal State default\n */\n const _context = useMemo(() => (_ref = passedContext !== null && passedContext !== void 0 ? passedContext : virtualizerContext) !== null && _ref !== void 0 ? _ref : {\n contextIndex: _contextIndex,\n setContextIndex: _setContextIndex\n }, [_contextIndex, passedContext, virtualizerContext]);\n const context = useMemo(() => {\n return {\n contextIndex: _context.contextIndex,\n setContextIndex: _context.setContextIndex\n };\n }, [_context]);\n return context;\n};\n//# sourceMappingURL=VirtualizerContext.js.map"],"names":["VirtualizerContextProvider","useVirtualizerContext_unstable","useVirtualizerContextState_unstable","VirtualizerContext","React","createContext","undefined","Provider","useContext","passedContext","virtualizerContext","_contextIndex","_setContextIndex","useState","_ref","_context","useMemo","contextIndex","setContextIndex","context"],"mappings":";;;;;;;;;;;IAGaA,0BAA0B,MAA1BA;IACAC,8BAA8B,MAA9BA;IAGAC,mCAAmC,MAAnCA;;;6DAPU;AAEvB,MAAMC,qBAAqB,WAAW,GAAEC,OAAMC,aAAa,CAACC;AACrD,MAAMN,6BAA6BG,mBAAmBI,QAAQ;AAC9D,MAAMN,iCAAiC,IAAM;IAClD,OAAOG,OAAMI,UAAU,CAACL;AAC1B;AACO,MAAMD,sCAAsCO,CAAAA,gBAAiB;IAClE,MAAMC,qBAAqBT;IAC3B,MAAM,CAACU,eAAeC,iBAAiB,GAAGC,IAAAA,eAAQ,EAAC,CAAC;IACpD,IAAIC;IACJ;;EAEA,GACA,MAAMC,WAAWC,IAAAA,cAAO,EAAC,IAAM,AAACF,CAAAA,OAAOL,kBAAkB,IAAI,IAAIA,kBAAkB,KAAK,IAAIA,gBAAgBC,kBAAkB,AAAD,MAAO,IAAI,IAAII,SAAS,KAAK,IAAIA,OAAO;YACnKG,cAAcN;YACdO,iBAAiBN;QACnB,CAAC,EAAE;QAACD;QAAeF;QAAeC;KAAmB;IACrD,MAAMS,UAAUH,IAAAA,cAAO,EAAC,IAAM;QAC5B,OAAO;YACLC,cAAcF,SAASE,YAAY;YACnCC,iBAAiBH,SAASG,eAAe;QAC3C;IACF,GAAG;QAACH;KAAS;IACb,OAAOI;AACT,GACA,8CAA8C"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./VirtualizerContext"), exports);
|
|
7
|
+
_exportStar(require("./types"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../lib/utilities/VirtualizerContext/index.js"],"sourcesContent":["export * from './VirtualizerContext';\nexport * from './types';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;CACd,iCAAiC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../lib/utilities/VirtualizerContext/types.js"],"sourcesContent":["/**\n * {@docCategory Virtualizer}\n */export {};\n//# sourceMappingURL=types.js.map"],"names":[],"mappings":"AAAA;;CAEC;;;;CACD,iCAAiC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
|
|
6
|
+
_exportStar(require("./VirtualizerContext"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
8
|
+
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../lib/utilities/index.js"],"sourcesContent":["export * from './VirtualizerContext';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,iCAAiC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui/react-virtualizer",
|
|
3
|
-
"version": "9.0.0-alpha.
|
|
3
|
+
"version": "9.0.0-alpha.19",
|
|
4
4
|
"description": "Generic and composable virtualizer framework built on browser intersection observer",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -26,13 +26,13 @@
|
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@fluentui/eslint-plugin": "*",
|
|
28
28
|
"@fluentui/react-conformance": "*",
|
|
29
|
-
"@fluentui/react-conformance-griffel": "9.0.0-beta.
|
|
29
|
+
"@fluentui/react-conformance-griffel": "9.0.0-beta.21",
|
|
30
30
|
"@fluentui/scripts-api-extractor": "*",
|
|
31
31
|
"@fluentui/scripts-tasks": "*"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@fluentui/react-jsx-runtime": "9.0.0-alpha.
|
|
35
|
-
"@fluentui/react-utilities": "^9.8.
|
|
34
|
+
"@fluentui/react-jsx-runtime": "9.0.0-alpha.3",
|
|
35
|
+
"@fluentui/react-utilities": "^9.8.1",
|
|
36
36
|
"@griffel/react": "^1.5.2",
|
|
37
37
|
"@swc/helpers": "^0.4.14"
|
|
38
38
|
},
|