@elliemae/ds-utilities 3.0.0-next.1 → 3.0.0-next.5
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/dist/cjs/capitalize.js +35 -0
- package/dist/cjs/capitalize.js.map +7 -0
- package/dist/cjs/compose.js +45 -0
- package/dist/cjs/compose.js.map +7 -0
- package/dist/cjs/getComponentFromProps.js +57 -0
- package/dist/cjs/getComponentFromProps.js.map +7 -0
- package/dist/cjs/hooks/index.js +75 -0
- package/dist/cjs/hooks/index.js.map +7 -0
- package/dist/cjs/hooks/useCallbackAfterRender.js +45 -0
- package/dist/cjs/hooks/useCallbackAfterRender.js.map +7 -0
- package/dist/cjs/hooks/useCancellableDelayedCallback.js +51 -0
- package/dist/cjs/hooks/useCancellableDelayedCallback.js.map +7 -0
- package/dist/cjs/hooks/useDerivedStateFromProps.js +67 -0
- package/dist/cjs/hooks/useDerivedStateFromProps.js.map +7 -0
- package/dist/cjs/hooks/useExecutionTimer.js +50 -0
- package/dist/cjs/hooks/useExecutionTimer.js.map +7 -0
- package/dist/cjs/hooks/useExpandState.js +137 -0
- package/dist/cjs/hooks/useExpandState.js.map +7 -0
- package/dist/cjs/hooks/useFocusTrap.js +49 -0
- package/dist/cjs/hooks/useFocusTrap.js.map +7 -0
- package/dist/cjs/hooks/useHotkeys.js +45 -0
- package/dist/cjs/hooks/useHotkeys.js.map +7 -0
- package/dist/cjs/hooks/useHoverHandlersDelay.js +58 -0
- package/dist/cjs/hooks/useHoverHandlersDelay.js.map +7 -0
- package/dist/cjs/hooks/useIsShowingEllipsis.js +58 -0
- package/dist/cjs/hooks/useIsShowingEllipsis.js.map +7 -0
- package/dist/cjs/hooks/useOnElementResize.js +55 -0
- package/dist/cjs/hooks/useOnElementResize.js.map +7 -0
- package/dist/cjs/hooks/useParentElement.js +43 -0
- package/dist/cjs/hooks/useParentElement.js.map +7 -0
- package/dist/cjs/hooks/usePrevious.js +44 -0
- package/dist/cjs/hooks/usePrevious.js.map +7 -0
- package/dist/cjs/hooks/useResizeObserver.js +60 -0
- package/dist/cjs/hooks/useResizeObserver.js.map +7 -0
- package/dist/cjs/hooks/useSetRef.js +42 -0
- package/dist/cjs/hooks/useSetRef.js.map +7 -0
- package/dist/cjs/hooks/useShouldRecalculate.js +44 -0
- package/dist/cjs/hooks/useShouldRecalculate.js.map +7 -0
- package/dist/cjs/hooks/useWindowScrollerList.js +83 -0
- package/dist/cjs/hooks/useWindowScrollerList.js.map +7 -0
- package/dist/cjs/hooks/useWindowSize.js +57 -0
- package/dist/cjs/hooks/useWindowSize.js.map +7 -0
- package/dist/cjs/index.js +148 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/onClickHandlerForNonInteractiveElements.js +49 -0
- package/dist/cjs/onClickHandlerForNonInteractiveElements.js.map +7 -0
- package/dist/cjs/operators.js +68 -0
- package/dist/cjs/operators.js.map +7 -0
- package/dist/cjs/platform.js +37 -0
- package/dist/cjs/platform.js.map +7 -0
- package/dist/cjs/reactTypesUtility.js +58 -0
- package/dist/cjs/reactTypesUtility.js.map +7 -0
- package/dist/cjs/scrollingTimer.js +46 -0
- package/dist/cjs/scrollingTimer.js.map +7 -0
- package/dist/cjs/system.js +60 -0
- package/dist/cjs/system.js.map +7 -0
- package/dist/cjs/timeUtils.js +43 -0
- package/dist/cjs/timeUtils.js.map +7 -0
- package/dist/cjs/utils.js +143 -0
- package/dist/cjs/utils.js.map +7 -0
- package/dist/cjs/validations.js +57 -0
- package/dist/cjs/validations.js.map +7 -0
- package/dist/esm/capitalize.js +6 -0
- package/dist/esm/capitalize.js.map +7 -0
- package/dist/esm/compose.js +16 -0
- package/dist/esm/compose.js.map +7 -0
- package/dist/esm/getComponentFromProps.js +30 -0
- package/dist/esm/getComponentFromProps.js.map +7 -0
- package/dist/esm/hooks/index.js +46 -0
- package/dist/esm/hooks/index.js.map +7 -0
- package/dist/esm/hooks/useCallbackAfterRender.js +16 -0
- package/dist/esm/hooks/useCallbackAfterRender.js.map +7 -0
- package/dist/esm/hooks/useCancellableDelayedCallback.js +22 -0
- package/dist/esm/hooks/useCancellableDelayedCallback.js.map +7 -0
- package/dist/esm/hooks/useDerivedStateFromProps.js +38 -0
- package/dist/esm/hooks/useDerivedStateFromProps.js.map +7 -0
- package/dist/esm/hooks/useExecutionTimer.js +21 -0
- package/dist/esm/hooks/useExecutionTimer.js.map +7 -0
- package/dist/esm/hooks/useExpandState.js +110 -0
- package/dist/esm/hooks/useExpandState.js.map +7 -0
- package/dist/esm/hooks/useFocusTrap.js +20 -0
- package/dist/esm/hooks/useFocusTrap.js.map +7 -0
- package/dist/esm/hooks/useHotkeys.js +16 -0
- package/dist/esm/hooks/useHotkeys.js.map +7 -0
- package/{esm → dist/esm}/hooks/useHoverHandlersDelay.js +15 -12
- package/dist/esm/hooks/useHoverHandlersDelay.js.map +7 -0
- package/dist/esm/hooks/useIsShowingEllipsis.js +29 -0
- package/dist/esm/hooks/useIsShowingEllipsis.js.map +7 -0
- package/dist/esm/hooks/useOnElementResize.js +26 -0
- package/dist/esm/hooks/useOnElementResize.js.map +7 -0
- package/dist/esm/hooks/useParentElement.js +14 -0
- package/dist/esm/hooks/useParentElement.js.map +7 -0
- package/dist/esm/hooks/usePrevious.js +15 -0
- package/dist/esm/hooks/usePrevious.js.map +7 -0
- package/dist/esm/hooks/useResizeObserver.js +31 -0
- package/dist/esm/hooks/useResizeObserver.js.map +7 -0
- package/dist/esm/hooks/useSetRef.js +13 -0
- package/dist/esm/hooks/useSetRef.js.map +7 -0
- package/dist/esm/hooks/useShouldRecalculate.js +15 -0
- package/dist/esm/hooks/useShouldRecalculate.js.map +7 -0
- package/{esm → dist/esm}/hooks/useWindowScrollerList.js +20 -29
- package/dist/esm/hooks/useWindowScrollerList.js.map +7 -0
- package/dist/esm/hooks/useWindowSize.js +28 -0
- package/dist/esm/hooks/useWindowSize.js.map +7 -0
- package/dist/esm/index.js +210 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/onClickHandlerForNonInteractiveElements.js +20 -0
- package/dist/esm/onClickHandlerForNonInteractiveElements.js.map +7 -0
- package/dist/esm/operators.js +39 -0
- package/dist/esm/operators.js.map +7 -0
- package/dist/esm/platform.js +8 -0
- package/dist/esm/platform.js.map +7 -0
- package/dist/esm/reactTypesUtility.js +29 -0
- package/dist/esm/reactTypesUtility.js.map +7 -0
- package/dist/esm/scrollingTimer.js +17 -0
- package/dist/esm/scrollingTimer.js.map +7 -0
- package/dist/esm/system.js +31 -0
- package/dist/esm/system.js.map +7 -0
- package/dist/esm/timeUtils.js +14 -0
- package/dist/esm/timeUtils.js.map +7 -0
- package/dist/esm/utils.js +154 -0
- package/dist/esm/utils.js.map +7 -0
- package/dist/esm/validations.js +28 -0
- package/dist/esm/validations.js.map +7 -0
- package/package.json +82 -69
- package/cjs/capitalize.js +0 -7
- package/cjs/compose.js +0 -38
- package/cjs/getComponentFromProps.js +0 -30
- package/cjs/hooks/index.js +0 -61
- package/cjs/hooks/useCancellableDelayedCallback.js +0 -26
- package/cjs/hooks/useDerivedStateFromProps.js +0 -56
- package/cjs/hooks/useExecutionTimer.js +0 -31
- package/cjs/hooks/useExpandState.js +0 -133
- package/cjs/hooks/useHotkeys.js +0 -25
- package/cjs/hooks/useHoverHandlersDelay.js +0 -28
- package/cjs/hooks/useOnElementResize.js +0 -37
- package/cjs/hooks/useParentElement.js +0 -16
- package/cjs/hooks/usePrevious.js +0 -13
- package/cjs/hooks/useResizeObserver.js +0 -33
- package/cjs/hooks/useSetRef.js +0 -15
- package/cjs/hooks/useShouldRecalculate.js +0 -17
- package/cjs/hooks/useWindowScrollerList.js +0 -65
- package/cjs/hooks/useWindowSize.js +0 -27
- package/cjs/index.js +0 -266
- package/cjs/onClickHandlerForNonInteractiveElements.js +0 -22
- package/cjs/operators.js +0 -63
- package/cjs/platform.js +0 -9
- package/cjs/reactTypesUtility.js +0 -35
- package/cjs/scrollingTimer.js +0 -24
- package/cjs/system.js +0 -43
- package/cjs/timeUtils.js +0 -25
- package/cjs/utils.js +0 -263
- package/cjs/validations.js +0 -44
- package/esm/capitalize.js +0 -3
- package/esm/compose.js +0 -34
- package/esm/getComponentFromProps.js +0 -23
- package/esm/hooks/index.js +0 -18
- package/esm/hooks/useCancellableDelayedCallback.js +0 -24
- package/esm/hooks/useDerivedStateFromProps.js +0 -54
- package/esm/hooks/useExecutionTimer.js +0 -29
- package/esm/hooks/useExpandState.js +0 -127
- package/esm/hooks/useHotkeys.js +0 -19
- package/esm/hooks/useOnElementResize.js +0 -33
- package/esm/hooks/useParentElement.js +0 -12
- package/esm/hooks/usePrevious.js +0 -11
- package/esm/hooks/useResizeObserver.js +0 -26
- package/esm/hooks/useSetRef.js +0 -11
- package/esm/hooks/useShouldRecalculate.js +0 -15
- package/esm/hooks/useWindowSize.js +0 -25
- package/esm/index.js +0 -31
- package/esm/onClickHandlerForNonInteractiveElements.js +0 -20
- package/esm/operators.js +0 -46
- package/esm/platform.js +0 -4
- package/esm/reactTypesUtility.js +0 -22
- package/esm/scrollingTimer.js +0 -20
- package/esm/system.js +0 -37
- package/esm/timeUtils.js +0 -20
- package/esm/utils.js +0 -99
- package/esm/validations.js +0 -38
- package/types/capitalize.d.ts +0 -1
- package/types/compose.d.ts +0 -11
- package/types/getComponentFromProps.d.ts +0 -2
- package/types/hooks/index.d.ts +0 -18
- package/types/hooks/useCancellableDelayedCallback.d.ts +0 -1
- package/types/hooks/useDerivedStateFromProps.d.ts +0 -1
- package/types/hooks/useExecutionTimer.d.ts +0 -1
- package/types/hooks/useExpandState.d.ts +0 -22
- package/types/hooks/useHotkeys.d.ts +0 -5
- package/types/hooks/useHoverHandlersDelay.d.ts +0 -9
- package/types/hooks/useOnElementResize.d.ts +0 -2
- package/types/hooks/useParentElement.d.ts +0 -1
- package/types/hooks/usePrevious.d.ts +0 -2
- package/types/hooks/useResizeObserver.d.ts +0 -2
- package/types/hooks/useSetRef.d.ts +0 -2
- package/types/hooks/useShouldRecalculate.d.ts +0 -1
- package/types/hooks/useWindowScrollerList.d.ts +0 -4
- package/types/hooks/useWindowSize.d.ts +0 -1
- package/types/index.d.ts +0 -13
- package/types/onClickHandlerForNonInteractiveElements.d.ts +0 -12
- package/types/operators.d.ts +0 -31
- package/types/platform.d.ts +0 -2
- package/types/reactTypesUtility.d.ts +0 -6
- package/types/scrollingTimer.d.ts +0 -1
- package/types/system.d.ts +0 -3
- package/types/timeUtils.d.ts +0 -7
- package/types/utils.d.ts +0 -23
- package/types/validations.d.ts +0 -23
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useCallbackAfterRender.ts"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useRef, useLayoutEffect } from 'react';\n\n// Inspired in https://github.com/ryuuji3/react-hooks/blob/4b183d61c30abf17efeab2240f8ff652a5dbb8e2/packages/use-callback-after-render/src/hooks/useCallbackAfterRender.ts\nexport const useCallbackAfterRender = (): Callback => {\n const lastRun = useRef<(() => void) | null>(null);\n\n useLayoutEffect(() => {\n lastRun.current?.();\n lastRun.current = null;\n });\n\n return (callback) => {\n lastRun.current = callback; // schedule callback after render\n };\n};\n\ntype Callback = (callback: () => void) => void;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAGO,MAAM,yBAAyB,MAAgB;AACpD,QAAM,UAAU,OAA4B;AAE5C,kBAAgB,MAAM;AACpB,YAAQ;AACR,YAAQ,UAAU;AAAA;AAGpB,SAAO,CAAC,aAAa;AACnB,YAAQ,UAAU;AAAA;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useCallback, useRef } from "react";
|
|
3
|
+
const useCancellableDelayedCallback = (cb, delay) => {
|
|
4
|
+
const timeoutRef = useRef();
|
|
5
|
+
const cancel = useCallback(() => {
|
|
6
|
+
const timeoutId = timeoutRef.current;
|
|
7
|
+
if (timeoutId) {
|
|
8
|
+
timeoutRef.current = void 0;
|
|
9
|
+
clearTimeout(timeoutId);
|
|
10
|
+
}
|
|
11
|
+
}, [timeoutRef]);
|
|
12
|
+
const delayedCb = useCallback((...args) => {
|
|
13
|
+
timeoutRef.current = setTimeout(() => cb(...args), delay);
|
|
14
|
+
}, [cb, delay]);
|
|
15
|
+
return [delayedCb, cancel];
|
|
16
|
+
};
|
|
17
|
+
var useCancellableDelayedCallback_default = useCancellableDelayedCallback;
|
|
18
|
+
export {
|
|
19
|
+
useCancellableDelayedCallback_default as default,
|
|
20
|
+
useCancellableDelayedCallback
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=useCancellableDelayedCallback.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useCancellableDelayedCallback.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useCallback, useRef } from 'react';\n\nexport const useCancellableDelayedCallback = (cb, delay) => {\n const timeoutRef = useRef();\n const cancel = useCallback(() => {\n const timeoutId = timeoutRef.current;\n if (timeoutId) {\n timeoutRef.current = undefined;\n clearTimeout(timeoutId);\n }\n }, [timeoutRef]);\n const delayedCb = useCallback(\n (...args) => {\n timeoutRef.current = setTimeout(() => cb(...args), delay);\n },\n [cb, delay],\n );\n\n return [delayedCb, cancel];\n};\n\nexport default useCancellableDelayedCallback;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,gCAAgC,CAAC,IAAI,UAAU;AAC1D,QAAM,aAAa;AACnB,QAAM,SAAS,YAAY,MAAM;AAC/B,UAAM,YAAY,WAAW;AAC7B,QAAI,WAAW;AACb,iBAAW,UAAU;AACrB,mBAAa;AAAA;AAAA,KAEd,CAAC;AACJ,QAAM,YAAY,YAChB,IAAI,SAAS;AACX,eAAW,UAAU,WAAW,MAAM,GAAG,GAAG,OAAO;AAAA,KAErD,CAAC,IAAI;AAGP,SAAO,CAAC,WAAW;AAAA;AAGrB,IAAO,wCAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useRef, useState } from "react";
|
|
3
|
+
import { isEqual, isFunction } from "../utils";
|
|
4
|
+
const defaultPropUpdateOnChange = (prop) => prop;
|
|
5
|
+
function defaultShouldUpdate({ prop, prevProp, stateValue }) {
|
|
6
|
+
return !isEqual(prop, prevProp) && !isEqual(prop, stateValue);
|
|
7
|
+
}
|
|
8
|
+
function setStateWithUpdate(onUpdate, setState) {
|
|
9
|
+
return (state) => {
|
|
10
|
+
setState((prevState) => onUpdate(isFunction(state) ? state(prevState) : state, prevState));
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
const useDerivedStateFromProps = (prop, options = {}) => {
|
|
14
|
+
const {
|
|
15
|
+
onUpdate = defaultPropUpdateOnChange,
|
|
16
|
+
shouldUpdate = defaultShouldUpdate,
|
|
17
|
+
updateOnStateChange = false
|
|
18
|
+
} = options;
|
|
19
|
+
const [stateValue, setState] = useState(onUpdate(prop, {}));
|
|
20
|
+
const handleSetState = updateOnStateChange ? setStateWithUpdate(onUpdate, setState) : setState;
|
|
21
|
+
const prevProp = useRef(prop);
|
|
22
|
+
if (shouldUpdate({
|
|
23
|
+
prop,
|
|
24
|
+
prevProp: prevProp.current,
|
|
25
|
+
stateValue
|
|
26
|
+
})) {
|
|
27
|
+
const nextProp = onUpdate(prop, prevProp.current);
|
|
28
|
+
setState(nextProp);
|
|
29
|
+
}
|
|
30
|
+
prevProp.current = prop;
|
|
31
|
+
return [stateValue, handleSetState];
|
|
32
|
+
};
|
|
33
|
+
var useDerivedStateFromProps_default = useDerivedStateFromProps;
|
|
34
|
+
export {
|
|
35
|
+
useDerivedStateFromProps_default as default,
|
|
36
|
+
useDerivedStateFromProps
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=useDerivedStateFromProps.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useDerivedStateFromProps.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useRef, useState } from 'react';\nimport { isEqual, isFunction } from '../utils';\n\nconst defaultPropUpdateOnChange = prop => prop;\n\nfunction defaultShouldUpdate({ prop, prevProp, stateValue }) {\n return !isEqual(prop, prevProp) && !isEqual(prop, stateValue);\n}\n\nfunction setStateWithUpdate(onUpdate, setState) {\n return state => {\n setState(prevState =>\n onUpdate(isFunction(state) ? state(prevState) : state, prevState),\n );\n };\n}\n\nexport const useDerivedStateFromProps = (prop, options = {}) => {\n const {\n onUpdate = defaultPropUpdateOnChange,\n shouldUpdate = defaultShouldUpdate,\n updateOnStateChange = false,\n } = options;\n\n const [stateValue, setState] = useState(onUpdate(prop, {}));\n const handleSetState = updateOnStateChange\n ? setStateWithUpdate(onUpdate, setState)\n : setState;\n const prevProp = useRef(prop);\n\n if (\n shouldUpdate({\n prop,\n prevProp: prevProp.current,\n stateValue,\n })\n ) {\n const nextProp = onUpdate(prop, prevProp.current);\n setState(nextProp);\n }\n prevProp.current = prop;\n return [stateValue, handleSetState];\n};\n\nexport default useDerivedStateFromProps;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEA,MAAM,4BAA4B,UAAQ;AAE1C,6BAA6B,EAAE,MAAM,UAAU,cAAc;AAC3D,SAAO,CAAC,QAAQ,MAAM,aAAa,CAAC,QAAQ,MAAM;AAAA;AAGpD,4BAA4B,UAAU,UAAU;AAC9C,SAAO,WAAS;AACd,aAAS,eACP,SAAS,WAAW,SAAS,MAAM,aAAa,OAAO;AAAA;AAAA;AAKtD,MAAM,2BAA2B,CAAC,MAAM,UAAU,OAAO;AAC9D,QAAM;AAAA,IACJ,WAAW;AAAA,IACX,eAAe;AAAA,IACf,sBAAsB;AAAA,MACpB;AAEJ,QAAM,CAAC,YAAY,YAAY,SAAS,SAAS,MAAM;AACvD,QAAM,iBAAiB,sBACnB,mBAAmB,UAAU,YAC7B;AACJ,QAAM,WAAW,OAAO;AAExB,MACE,aAAa;AAAA,IACX;AAAA,IACA,UAAU,SAAS;AAAA,IACnB;AAAA,MAEF;AACA,UAAM,WAAW,SAAS,MAAM,SAAS;AACzC,aAAS;AAAA;AAEX,WAAS,UAAU;AACnB,SAAO,CAAC,YAAY;AAAA;AAGtB,IAAO,mCAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useRef } from "react";
|
|
3
|
+
const useExecutionTimer = (startFn, cleanFn, delayTime) => {
|
|
4
|
+
const startTimer = useRef();
|
|
5
|
+
const closeTimer = useRef();
|
|
6
|
+
const startFunction = (...args) => {
|
|
7
|
+
clearTimeout(closeTimer.current);
|
|
8
|
+
startTimer.current = setTimeout(() => startFn(...args), delayTime);
|
|
9
|
+
};
|
|
10
|
+
const cleanFunction = (...args) => {
|
|
11
|
+
clearTimeout(startTimer.current);
|
|
12
|
+
closeTimer.current = setTimeout(() => cleanFn(...args), 30);
|
|
13
|
+
};
|
|
14
|
+
return [startFunction, cleanFunction];
|
|
15
|
+
};
|
|
16
|
+
var useExecutionTimer_default = useExecutionTimer;
|
|
17
|
+
export {
|
|
18
|
+
useExecutionTimer_default as default,
|
|
19
|
+
useExecutionTimer
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=useExecutionTimer.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useExecutionTimer.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useRef } from 'react';\n\nexport const useExecutionTimer = (startFn, cleanFn, delayTime) => {\n const startTimer = useRef();\n const closeTimer = useRef();\n\n const startFunction = (...args) => {\n clearTimeout(closeTimer.current);\n startTimer.current = setTimeout(() => startFn(...args), delayTime);\n };\n\n const cleanFunction = (...args) => {\n clearTimeout(startTimer.current);\n closeTimer.current = setTimeout(() => cleanFn(...args), 30);\n };\n return [startFunction, cleanFunction];\n};\n\nexport default useExecutionTimer;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,oBAAoB,CAAC,SAAS,SAAS,cAAc;AAChE,QAAM,aAAa;AACnB,QAAM,aAAa;AAEnB,QAAM,gBAAgB,IAAI,SAAS;AACjC,iBAAa,WAAW;AACxB,eAAW,UAAU,WAAW,MAAM,QAAQ,GAAG,OAAO;AAAA;AAG1D,QAAM,gBAAgB,IAAI,SAAS;AACjC,iBAAa,WAAW;AACxB,eAAW,UAAU,WAAW,MAAM,QAAQ,GAAG,OAAO;AAAA;AAE1D,SAAO,CAAC,eAAe;AAAA;AAGzB,IAAO,4BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
import * as React from "react";
|
|
21
|
+
import { useMemo } from "react";
|
|
22
|
+
import { isFunction } from "../utils";
|
|
23
|
+
import { useDerivedStateFromProps } from "./useDerivedStateFromProps";
|
|
24
|
+
const toggleStateInObject = (obj, key, value) => {
|
|
25
|
+
const nextObj = __spreadValues({}, obj);
|
|
26
|
+
if (nextObj[key]) {
|
|
27
|
+
delete nextObj[key];
|
|
28
|
+
} else {
|
|
29
|
+
nextObj[key] = value;
|
|
30
|
+
}
|
|
31
|
+
return nextObj;
|
|
32
|
+
};
|
|
33
|
+
const noop = () => null;
|
|
34
|
+
const useExpandState = ({
|
|
35
|
+
items = [],
|
|
36
|
+
itemKey = "id",
|
|
37
|
+
expanded: expandedProp = {},
|
|
38
|
+
onExpand,
|
|
39
|
+
onExpandChange = noop,
|
|
40
|
+
onExpandAll = noop,
|
|
41
|
+
onToggleExpand,
|
|
42
|
+
onCollapse
|
|
43
|
+
}) => {
|
|
44
|
+
const [expanded, setExpanded] = useDerivedStateFromProps(expandedProp);
|
|
45
|
+
const isExpandedAll = useMemo(() => Object.keys(expanded).length === items.length, [expanded, items]);
|
|
46
|
+
const toggleExpandAll = (stateData = true) => {
|
|
47
|
+
setExpanded(() => {
|
|
48
|
+
const nextState = {};
|
|
49
|
+
if (!isExpandedAll) {
|
|
50
|
+
items.forEach((item) => {
|
|
51
|
+
nextState[item[itemKey]] = stateData;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
onExpandChange(nextState);
|
|
55
|
+
onExpandAll(nextState);
|
|
56
|
+
return nextState;
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
const expand = (item, stateData = true) => {
|
|
60
|
+
if (!item)
|
|
61
|
+
return;
|
|
62
|
+
if (isFunction(onExpand)) {
|
|
63
|
+
onExpand(item);
|
|
64
|
+
}
|
|
65
|
+
setExpanded((prevState) => {
|
|
66
|
+
const key = item[itemKey];
|
|
67
|
+
const nextState = __spreadProps(__spreadValues({}, prevState), { [key]: stateData });
|
|
68
|
+
onExpandChange(nextState, item);
|
|
69
|
+
return nextState;
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
const toggleExpand = (item, stateData = true) => {
|
|
73
|
+
if (isFunction(onToggleExpand)) {
|
|
74
|
+
onToggleExpand(item);
|
|
75
|
+
}
|
|
76
|
+
setExpanded((prevState) => {
|
|
77
|
+
const key = item[itemKey];
|
|
78
|
+
const nextState = toggleStateInObject(prevState, key, stateData);
|
|
79
|
+
onExpandChange(nextState, item);
|
|
80
|
+
return nextState;
|
|
81
|
+
});
|
|
82
|
+
};
|
|
83
|
+
const collapse = (item) => {
|
|
84
|
+
if (isFunction(onCollapse)) {
|
|
85
|
+
onCollapse(item);
|
|
86
|
+
}
|
|
87
|
+
setExpanded((prevState) => {
|
|
88
|
+
const nextState = __spreadValues({}, prevState);
|
|
89
|
+
delete nextState[item[itemKey]];
|
|
90
|
+
onExpandChange(nextState, item);
|
|
91
|
+
return nextState;
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
return {
|
|
95
|
+
state: { expanded, isExpandedAll },
|
|
96
|
+
actions: {
|
|
97
|
+
expand,
|
|
98
|
+
toggleExpandAll,
|
|
99
|
+
toggleExpand,
|
|
100
|
+
collapse
|
|
101
|
+
},
|
|
102
|
+
setExpanded
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
var useExpandState_default = useExpandState;
|
|
106
|
+
export {
|
|
107
|
+
useExpandState_default as default,
|
|
108
|
+
useExpandState
|
|
109
|
+
};
|
|
110
|
+
//# sourceMappingURL=useExpandState.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useExpandState.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useMemo } from 'react';\nimport { isFunction } from '../utils';\nimport { useDerivedStateFromProps } from './useDerivedStateFromProps';\n\nconst toggleStateInObject = (obj, key, value) => {\n const nextObj = { ...obj };\n if (nextObj[key]) {\n delete nextObj[key];\n } else {\n nextObj[key] = value;\n }\n return nextObj;\n};\n\nconst noop = () => null;\n\nexport const useExpandState = ({\n items = [],\n itemKey = 'id',\n expanded: expandedProp = {},\n onExpand,\n onExpandChange = noop,\n onExpandAll = noop,\n onToggleExpand,\n onCollapse,\n}) => {\n const [expanded, setExpanded] = useDerivedStateFromProps(expandedProp);\n\n const isExpandedAll = useMemo(\n () => Object.keys(expanded).length === items.length,\n [expanded, items],\n );\n\n const toggleExpandAll = (stateData = true) => {\n setExpanded(() => {\n const nextState = {};\n if (!isExpandedAll) {\n items.forEach(item => {\n nextState[item[itemKey]] = stateData;\n });\n }\n onExpandChange(nextState);\n onExpandAll(nextState);\n return nextState;\n });\n };\n\n const expand = (item, stateData = true) => {\n if (!item) return;\n if (isFunction(onExpand)) {\n onExpand(item);\n }\n setExpanded(prevState => {\n const key = item[itemKey];\n const nextState = { ...prevState, [key]: stateData };\n onExpandChange(nextState, item);\n return nextState;\n });\n };\n\n const toggleExpand = (item, stateData = true) => {\n if (isFunction(onToggleExpand)) {\n onToggleExpand(item);\n }\n setExpanded(prevState => {\n const key = item[itemKey];\n const nextState = toggleStateInObject(prevState, key, stateData);\n onExpandChange(nextState, item);\n return nextState;\n });\n };\n\n const collapse = item => {\n if (isFunction(onCollapse)) {\n onCollapse(item);\n }\n setExpanded(prevState => {\n const nextState = { ...prevState };\n delete nextState[item[itemKey]];\n onExpandChange(nextState, item);\n return nextState;\n });\n };\n\n return {\n state: { expanded, isExpandedAll },\n actions: {\n expand,\n toggleExpandAll,\n toggleExpand,\n collapse,\n },\n setExpanded,\n };\n};\n\nexport default useExpandState;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACAA;AACA;AACA;AAEA,MAAM,sBAAsB,CAAC,KAAK,KAAK,UAAU;AAC/C,QAAM,UAAU,mBAAK;AACrB,MAAI,QAAQ,MAAM;AAChB,WAAO,QAAQ;AAAA,SACV;AACL,YAAQ,OAAO;AAAA;AAEjB,SAAO;AAAA;AAGT,MAAM,OAAO,MAAM;AAEZ,MAAM,iBAAiB,CAAC;AAAA,EAC7B,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,UAAU,eAAe;AAAA,EACzB;AAAA,EACA,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd;AAAA,EACA;AAAA,MACI;AACJ,QAAM,CAAC,UAAU,eAAe,yBAAyB;AAEzD,QAAM,gBAAgB,QACpB,MAAM,OAAO,KAAK,UAAU,WAAW,MAAM,QAC7C,CAAC,UAAU;AAGb,QAAM,kBAAkB,CAAC,YAAY,SAAS;AAC5C,gBAAY,MAAM;AAChB,YAAM,YAAY;AAClB,UAAI,CAAC,eAAe;AAClB,cAAM,QAAQ,UAAQ;AACpB,oBAAU,KAAK,YAAY;AAAA;AAAA;AAG/B,qBAAe;AACf,kBAAY;AACZ,aAAO;AAAA;AAAA;AAIX,QAAM,SAAS,CAAC,MAAM,YAAY,SAAS;AACzC,QAAI,CAAC;AAAM;AACX,QAAI,WAAW,WAAW;AACxB,eAAS;AAAA;AAEX,gBAAY,eAAa;AACvB,YAAM,MAAM,KAAK;AACjB,YAAM,YAAY,iCAAK,YAAL,GAAiB,MAAM;AACzC,qBAAe,WAAW;AAC1B,aAAO;AAAA;AAAA;AAIX,QAAM,eAAe,CAAC,MAAM,YAAY,SAAS;AAC/C,QAAI,WAAW,iBAAiB;AAC9B,qBAAe;AAAA;AAEjB,gBAAY,eAAa;AACvB,YAAM,MAAM,KAAK;AACjB,YAAM,YAAY,oBAAoB,WAAW,KAAK;AACtD,qBAAe,WAAW;AAC1B,aAAO;AAAA;AAAA;AAIX,QAAM,WAAW,UAAQ;AACvB,QAAI,WAAW,aAAa;AAC1B,iBAAW;AAAA;AAEb,gBAAY,eAAa;AACvB,YAAM,YAAY,mBAAK;AACvB,aAAO,UAAU,KAAK;AACtB,qBAAe,WAAW;AAC1B,aAAO;AAAA;AAAA;AAIX,SAAO;AAAA,IACL,OAAO,EAAE,UAAU;AAAA,IACnB,SAAS;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,IAEF;AAAA;AAAA;AAIJ,IAAO,yBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
const useFocusTrap = ({ firstElementRef, lastElementRef, onKeyDown }) => useCallback((e) => {
|
|
4
|
+
if (onKeyDown)
|
|
5
|
+
onKeyDown(e);
|
|
6
|
+
if (e.key === "Tab" && !e.shiftKey && e.target === lastElementRef.current && firstElementRef.current) {
|
|
7
|
+
e.preventDefault();
|
|
8
|
+
e.stopPropagation();
|
|
9
|
+
firstElementRef.current.focus();
|
|
10
|
+
}
|
|
11
|
+
if (e.key === "Tab" && e.shiftKey && e.target === firstElementRef.current && lastElementRef.current) {
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
e.stopPropagation();
|
|
14
|
+
lastElementRef.current.focus();
|
|
15
|
+
}
|
|
16
|
+
}, [firstElementRef, lastElementRef, onKeyDown]);
|
|
17
|
+
export {
|
|
18
|
+
useFocusTrap
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=useFocusTrap.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useFocusTrap.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useCallback } from 'react';\n\ntype UseFocusTrapT = <T extends HTMLElement = HTMLElement, K extends HTMLElement = HTMLElement>({\n firstElementRef,\n lastElementRef,\n onKeyDown,\n}: {\n firstElementRef: React.MutableRefObject<T | null>;\n lastElementRef: React.MutableRefObject<K | null>;\n onKeyDown?: (e: KeyboardEvent) => void;\n}) => (e: KeyboardEvent) => void;\n\nexport const useFocusTrap: UseFocusTrapT = ({ firstElementRef, lastElementRef, onKeyDown }) =>\n useCallback(\n (e: KeyboardEvent) => {\n if (onKeyDown) onKeyDown(e);\n // we need to check all the condition before preventing default\n // because we want last-element/first-element tab/shift-tab to keep working\n\n if (e.key === 'Tab' && !e.shiftKey && e.target === lastElementRef.current && firstElementRef.current) {\n e.preventDefault();\n e.stopPropagation();\n firstElementRef.current.focus();\n }\n if (e.key === 'Tab' && e.shiftKey && e.target === firstElementRef.current && lastElementRef.current) {\n e.preventDefault();\n e.stopPropagation();\n lastElementRef.current.focus();\n }\n },\n [firstElementRef, lastElementRef, onKeyDown],\n );\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAYO,MAAM,eAA8B,CAAC,EAAE,iBAAiB,gBAAgB,gBAC7E,YACE,CAAC,MAAqB;AACpB,MAAI;AAAW,cAAU;AAIzB,MAAI,EAAE,QAAQ,SAAS,CAAC,EAAE,YAAY,EAAE,WAAW,eAAe,WAAW,gBAAgB,SAAS;AACpG,MAAE;AACF,MAAE;AACF,oBAAgB,QAAQ;AAAA;AAE1B,MAAI,EAAE,QAAQ,SAAS,EAAE,YAAY,EAAE,WAAW,gBAAgB,WAAW,eAAe,SAAS;AACnG,MAAE;AACF,MAAE;AACF,mBAAe,QAAQ;AAAA;AAAA,GAG3B,CAAC,iBAAiB,gBAAgB;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import hotkeys from "hotkeys-js";
|
|
3
|
+
import { useCallback, useEffect } from "react";
|
|
4
|
+
const useHotkeys = ({ keys, handler, options = {} }, deps = []) => {
|
|
5
|
+
const memoizedCallback = useCallback(handler, deps);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
hotkeys(keys, options, memoizedCallback);
|
|
8
|
+
return () => hotkeys.unbind(keys);
|
|
9
|
+
}, [memoizedCallback]);
|
|
10
|
+
};
|
|
11
|
+
var useHotkeys_default = useHotkeys;
|
|
12
|
+
export {
|
|
13
|
+
useHotkeys_default as default,
|
|
14
|
+
useHotkeys
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=useHotkeys.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useHotkeys.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import hotkeys from 'hotkeys-js';\nimport { useCallback, useEffect } from 'react';\n\nexport const useHotkeys = ({ keys, handler, options = {} }, deps = []) => {\n const memoizedCallback = useCallback(handler, deps);\n\n useEffect(() => {\n hotkeys(keys, options, memoizedCallback);\n\n return () => hotkeys.unbind(keys);\n }, [memoizedCallback]);\n};\n\nexport default useHotkeys;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEO,MAAM,aAAa,CAAC,EAAE,MAAM,SAAS,UAAU,MAAM,OAAO,OAAO;AACxE,QAAM,mBAAmB,YAAY,SAAS;AAE9C,YAAU,MAAM;AACd,YAAQ,MAAM,SAAS;AAEvB,WAAO,MAAM,QAAQ,OAAO;AAAA,KAC3B,CAAC;AAAA;AAGN,IAAO,qBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
} = _ref;
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useCallback, useRef } from "react";
|
|
3
|
+
const useHoverHandlersDelay = ({
|
|
4
|
+
onMouseOver,
|
|
5
|
+
onMouseLeave,
|
|
6
|
+
hideDelay = 300,
|
|
7
|
+
showDelay = 300
|
|
8
|
+
}) => {
|
|
10
9
|
const hideTimer = useRef();
|
|
11
10
|
const showTimer = useRef();
|
|
12
11
|
const delayedHide = useCallback(() => {
|
|
@@ -21,6 +20,10 @@ function useHoverHandlersDelay(_ref) {
|
|
|
21
20
|
onMouseOver: delayedShow,
|
|
22
21
|
onMouseLeave: delayedHide
|
|
23
22
|
};
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export {
|
|
23
|
+
};
|
|
24
|
+
var useHoverHandlersDelay_default = useHoverHandlersDelay;
|
|
25
|
+
export {
|
|
26
|
+
useHoverHandlersDelay_default as default,
|
|
27
|
+
useHoverHandlersDelay
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=useHoverHandlersDelay.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useHoverHandlersDelay.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useCallback, useRef } from 'react';\n\nexport const useHoverHandlersDelay = ({\n onMouseOver,\n onMouseLeave,\n hideDelay = 300,\n showDelay = 300,\n}) => {\n const hideTimer = useRef();\n const showTimer = useRef();\n\n const delayedHide = useCallback(() => {\n clearTimeout(showTimer.current);\n hideTimer.current = setTimeout(onMouseLeave, hideDelay);\n }, []);\n\n const delayedShow = useCallback(() => {\n clearTimeout(hideTimer.current);\n showTimer.current = setTimeout(onMouseOver, showDelay);\n }, []);\n\n return {\n onMouseOver: delayedShow,\n onMouseLeave: delayedHide,\n };\n};\n\nexport default useHoverHandlersDelay;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,wBAAwB,CAAC;AAAA,EACpC;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,YAAY;AAAA,MACR;AACJ,QAAM,YAAY;AAClB,QAAM,YAAY;AAElB,QAAM,cAAc,YAAY,MAAM;AACpC,iBAAa,UAAU;AACvB,cAAU,UAAU,WAAW,cAAc;AAAA,KAC5C;AAEH,QAAM,cAAc,YAAY,MAAM;AACpC,iBAAa,UAAU;AACvB,cAAU,UAAU,WAAW,aAAa;AAAA,KAC3C;AAEH,SAAO;AAAA,IACL,aAAa;AAAA,IACb,cAAc;AAAA;AAAA;AAIlB,IAAO,gCAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useEffect, useState, useMemo } from "react";
|
|
3
|
+
const useIsShowingEllipsis = () => {
|
|
4
|
+
const [element, setElement] = useState();
|
|
5
|
+
const [isShowingEllipsis, setIsShowingEllipsis] = useState(false);
|
|
6
|
+
const resizeObserver = useMemo(() => new ResizeObserver((entries) => {
|
|
7
|
+
if (entries.length) {
|
|
8
|
+
const [textWrapperEntry] = entries;
|
|
9
|
+
const el = textWrapperEntry.target;
|
|
10
|
+
setIsShowingEllipsis(el?.scrollWidth > el?.clientWidth);
|
|
11
|
+
}
|
|
12
|
+
}), []);
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
if (element) {
|
|
15
|
+
setIsShowingEllipsis(element.scrollWidth > element.clientWidth);
|
|
16
|
+
resizeObserver.observe(element);
|
|
17
|
+
}
|
|
18
|
+
return () => {
|
|
19
|
+
if (element) {
|
|
20
|
+
resizeObserver.unobserve(element);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}, [resizeObserver, element]);
|
|
24
|
+
return { setElement, isShowingEllipsis };
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
useIsShowingEllipsis
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=useIsShowingEllipsis.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useIsShowingEllipsis.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useEffect, useState, useMemo } from 'react';\n\nexport const useIsShowingEllipsis = <T extends HTMLElement | null = HTMLElement | null>() => {\n const [element, setElement] = useState<T>();\n\n const [isShowingEllipsis, setIsShowingEllipsis] = useState(false);\n\n const resizeObserver = useMemo(\n () =>\n new ResizeObserver((entries) => {\n if (entries.length) {\n const [textWrapperEntry] = entries;\n const el = textWrapperEntry.target;\n setIsShowingEllipsis(el?.scrollWidth > el?.clientWidth);\n }\n }),\n [],\n );\n\n useEffect(() => {\n if (element) {\n setIsShowingEllipsis(element.scrollWidth > element.clientWidth);\n resizeObserver.observe(element);\n }\n return () => {\n if (element) {\n resizeObserver.unobserve(element);\n }\n };\n }, [resizeObserver, element]);\n\n return { setElement, isShowingEllipsis };\n};\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,uBAAuB,MAAyD;AAC3F,QAAM,CAAC,SAAS,cAAc;AAE9B,QAAM,CAAC,mBAAmB,wBAAwB,SAAS;AAE3D,QAAM,iBAAiB,QACrB,MACE,IAAI,eAAe,CAAC,YAAY;AAC9B,QAAI,QAAQ,QAAQ;AAClB,YAAM,CAAC,oBAAoB;AAC3B,YAAM,KAAK,iBAAiB;AAC5B,2BAAqB,IAAI,cAAc,IAAI;AAAA;AAAA,MAGjD;AAGF,YAAU,MAAM;AACd,QAAI,SAAS;AACX,2BAAqB,QAAQ,cAAc,QAAQ;AACnD,qBAAe,QAAQ;AAAA;AAEzB,WAAO,MAAM;AACX,UAAI,SAAS;AACX,uBAAe,UAAU;AAAA;AAAA;AAAA,KAG5B,CAAC,gBAAgB;AAEpB,SAAO,EAAE,YAAY;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useState, useEffect, useRef, useMemo } from "react";
|
|
3
|
+
const useOnElementResize = (targetRef) => {
|
|
4
|
+
const [width, setWidth] = useState(targetRef.current?.offsetWidth ?? 0);
|
|
5
|
+
const [height, setHeight] = useState(targetRef.current?.offsetHeight ?? 0);
|
|
6
|
+
const observer = useRef();
|
|
7
|
+
useEffect(() => {
|
|
8
|
+
function outputsize() {
|
|
9
|
+
setWidth(targetRef.current?.offsetWidth ?? 0);
|
|
10
|
+
setHeight(targetRef.current?.offsetHeight ?? 0);
|
|
11
|
+
}
|
|
12
|
+
observer.current = new ResizeObserver(outputsize);
|
|
13
|
+
observer.current.observe(targetRef.current);
|
|
14
|
+
return () => {
|
|
15
|
+
observer.current?.disconnect();
|
|
16
|
+
};
|
|
17
|
+
}, [targetRef]);
|
|
18
|
+
return useMemo(() => ({
|
|
19
|
+
width,
|
|
20
|
+
height
|
|
21
|
+
}), [width, height]);
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
useOnElementResize
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=useOnElementResize.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useOnElementResize.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useState, useEffect, useRef, useMemo } from 'react';\n\n// Custom hook to track dimension of a component\n// Taken and modified from https://stackoverflow.com/a/60218754\nexport const useOnElementResize = <T extends HTMLElement>(\n targetRef: React.RefObject<T>,\n): Record<'width' | 'height', number> => {\n const [width, setWidth] = useState(targetRef.current?.offsetWidth ?? 0);\n const [height, setHeight] = useState(targetRef.current?.offsetHeight ?? 0);\n const observer = useRef<ResizeObserver>();\n\n useEffect(() => {\n function outputsize() {\n setWidth(targetRef.current?.offsetWidth ?? 0);\n setHeight(targetRef.current?.offsetHeight ?? 0);\n }\n\n observer.current = new ResizeObserver(outputsize);\n observer.current.observe(targetRef.current as Element);\n\n return () => {\n observer.current?.disconnect();\n };\n }, [targetRef]);\n\n return useMemo(\n () => ({\n width,\n height,\n }),\n [width, height],\n );\n};\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAIO,MAAM,qBAAqB,CAChC,cACuC;AACvC,QAAM,CAAC,OAAO,YAAY,SAAS,UAAU,SAAS,eAAe;AACrE,QAAM,CAAC,QAAQ,aAAa,SAAS,UAAU,SAAS,gBAAgB;AACxE,QAAM,WAAW;AAEjB,YAAU,MAAM;AACd,0BAAsB;AACpB,eAAS,UAAU,SAAS,eAAe;AAC3C,gBAAU,UAAU,SAAS,gBAAgB;AAAA;AAG/C,aAAS,UAAU,IAAI,eAAe;AACtC,aAAS,QAAQ,QAAQ,UAAU;AAEnC,WAAO,MAAM;AACX,eAAS,SAAS;AAAA;AAAA,KAEnB,CAAC;AAEJ,SAAO,QACL,MAAO;AAAA,IACL;AAAA,IACA;AAAA,MAEF,CAAC,OAAO;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
const useParentElement = (ref) => {
|
|
4
|
+
const [parent, setParent] = useState(ref.current);
|
|
5
|
+
useEffect(() => {
|
|
6
|
+
if (ref.current)
|
|
7
|
+
setParent(ref.current.parentNode);
|
|
8
|
+
});
|
|
9
|
+
return parent;
|
|
10
|
+
};
|
|
11
|
+
export {
|
|
12
|
+
useParentElement
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=useParentElement.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useParentElement.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useEffect, useState } from 'react';\n\nexport const useParentElement = (ref) => {\n const [parent, setParent] = useState(ref.current);\n\n useEffect(() => {\n if (ref.current) setParent(ref.current.parentNode);\n });\n return parent;\n};\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,mBAAmB,CAAC,QAAQ;AACvC,QAAM,CAAC,QAAQ,aAAa,SAAS,IAAI;AAEzC,YAAU,MAAM;AACd,QAAI,IAAI;AAAS,gBAAU,IAAI,QAAQ;AAAA;AAEzC,SAAO;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useEffect, useRef } from "react";
|
|
3
|
+
const usePrevious = (value) => {
|
|
4
|
+
const ref = useRef();
|
|
5
|
+
useEffect(() => {
|
|
6
|
+
ref.current = value;
|
|
7
|
+
}, [value]);
|
|
8
|
+
return ref.current;
|
|
9
|
+
};
|
|
10
|
+
var usePrevious_default = usePrevious;
|
|
11
|
+
export {
|
|
12
|
+
usePrevious_default as default,
|
|
13
|
+
usePrevious
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=usePrevious.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/usePrevious.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useEffect, useRef } from 'react';\n\nexport const usePrevious = (value) => {\n const ref = useRef();\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n};\n\nexport default usePrevious;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,cAAc,CAAC,UAAU;AACpC,QAAM,MAAM;AAEZ,YAAU,MAAM;AACd,QAAI,UAAU;AAAA,KACb,CAAC;AAEJ,SAAO,IAAI;AAAA;AAGb,IAAO,sBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
import raf from "raf";
|
|
4
|
+
import ResizeObserver from "resize-observer-polyfill";
|
|
5
|
+
const useResizeObserver = (handler, el) => {
|
|
6
|
+
const [node, setRef] = useState(el);
|
|
7
|
+
const resizeObserver = new ResizeObserver((entries) => {
|
|
8
|
+
if (!Array.isArray(entries))
|
|
9
|
+
return;
|
|
10
|
+
if (!entries.length)
|
|
11
|
+
return;
|
|
12
|
+
const entry = entries[0];
|
|
13
|
+
raf(() => handler({
|
|
14
|
+
width: entry.target.offsetWidth,
|
|
15
|
+
height: entry.target.offsetHeight
|
|
16
|
+
}, entry.target));
|
|
17
|
+
});
|
|
18
|
+
const htmlEl = el || node;
|
|
19
|
+
useEffect(() => {
|
|
20
|
+
if (htmlEl)
|
|
21
|
+
resizeObserver.observe(htmlEl);
|
|
22
|
+
return () => htmlEl && resizeObserver.unobserve(htmlEl);
|
|
23
|
+
}, [htmlEl]);
|
|
24
|
+
return [setRef];
|
|
25
|
+
};
|
|
26
|
+
var useResizeObserver_default = useResizeObserver;
|
|
27
|
+
export {
|
|
28
|
+
useResizeObserver_default as default,
|
|
29
|
+
useResizeObserver
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=useResizeObserver.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useResizeObserver.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useEffect, useState } from 'react';\nimport raf from 'raf';\nimport ResizeObserver from 'resize-observer-polyfill';\n\nexport const useResizeObserver = (handler, el) => {\n const [node, setRef] = useState(el);\n\n const resizeObserver = new ResizeObserver(entries => {\n if (!Array.isArray(entries)) return;\n if (!entries.length) return;\n const entry = entries[0];\n\n // execute on the next animation frame\n raf(() =>\n handler(\n {\n width: entry.target.offsetWidth,\n height: entry.target.offsetHeight,\n },\n entry.target,\n ),\n );\n });\n\n const htmlEl = el || node;\n\n useEffect(() => {\n if (htmlEl) resizeObserver.observe(htmlEl);\n return () => htmlEl && resizeObserver.unobserve(htmlEl);\n }, [htmlEl]);\n\n return [setRef];\n};\n\nexport default useResizeObserver;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AACA;AAEO,MAAM,oBAAoB,CAAC,SAAS,OAAO;AAChD,QAAM,CAAC,MAAM,UAAU,SAAS;AAEhC,QAAM,iBAAiB,IAAI,eAAe,aAAW;AACnD,QAAI,CAAC,MAAM,QAAQ;AAAU;AAC7B,QAAI,CAAC,QAAQ;AAAQ;AACrB,UAAM,QAAQ,QAAQ;AAGtB,QAAI,MACF,QACE;AAAA,MACE,OAAO,MAAM,OAAO;AAAA,MACpB,QAAQ,MAAM,OAAO;AAAA,OAEvB,MAAM;AAAA;AAKZ,QAAM,SAAS,MAAM;AAErB,YAAU,MAAM;AACd,QAAI;AAAQ,qBAAe,QAAQ;AACnC,WAAO,MAAM,UAAU,eAAe,UAAU;AAAA,KAC/C,CAAC;AAEJ,SAAO,CAAC;AAAA;AAGV,IAAO,4BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useCallback, useRef } from "react";
|
|
3
|
+
const useSetRef = (initial) => {
|
|
4
|
+
const ref = useRef(initial);
|
|
5
|
+
const setRef = useCallback((node) => {
|
|
6
|
+
ref.current = node;
|
|
7
|
+
}, []);
|
|
8
|
+
return [ref, setRef];
|
|
9
|
+
};
|
|
10
|
+
export {
|
|
11
|
+
useSetRef
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useSetRef.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useSetRef.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useCallback, useRef } from 'react';\n\nexport const useSetRef = (initial) => {\n const ref = useRef(initial);\n const setRef = useCallback((node) => {\n ref.current = node;\n }, []);\n return [ref, setRef];\n};\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,YAAY,CAAC,YAAY;AACpC,QAAM,MAAM,OAAO;AACnB,QAAM,SAAS,YAAY,CAAC,SAAS;AACnC,QAAI,UAAU;AAAA,KACb;AACH,SAAO,CAAC,KAAK;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useRef } from "react";
|
|
3
|
+
const useShouldRecalculate = (bool) => {
|
|
4
|
+
const prevValueRef = useRef(0);
|
|
5
|
+
if (!bool) {
|
|
6
|
+
prevValueRef.current += 1;
|
|
7
|
+
}
|
|
8
|
+
return prevValueRef.current;
|
|
9
|
+
};
|
|
10
|
+
var useShouldRecalculate_default = useShouldRecalculate;
|
|
11
|
+
export {
|
|
12
|
+
useShouldRecalculate_default as default,
|
|
13
|
+
useShouldRecalculate
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=useShouldRecalculate.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/hooks/useShouldRecalculate.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useRef } from 'react';\n\nexport const useShouldRecalculate = (bool) => {\n const prevValueRef = useRef(0);\n if (!bool) {\n // If we need to recalculate, change the value we return\n prevValueRef.current += 1;\n } // else we return the same value as the previous render, which won't trigger a recalculation\n return prevValueRef.current;\n};\n\nexport default useShouldRecalculate;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,uBAAuB,CAAC,SAAS;AAC5C,QAAM,eAAe,OAAO;AAC5B,MAAI,CAAC,MAAM;AAET,iBAAa,WAAW;AAAA;AAE1B,SAAO,aAAa;AAAA;AAGtB,IAAO,+BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|