@elliemae/ds-utilities 1.57.2 → 1.58.0-rc.2
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/cjs/hooks/index.js +2 -0
- package/cjs/hooks/index.js.map +1 -1
- package/cjs/hooks/useOnElementResize.js +52 -0
- package/cjs/hooks/useOnElementResize.js.map +1 -0
- package/cjs/index.js +2 -0
- package/cjs/index.js.map +1 -1
- package/esm/hooks/index.js +1 -0
- package/esm/hooks/index.js.map +1 -1
- package/esm/hooks/useOnElementResize.js +44 -0
- package/esm/hooks/useOnElementResize.js.map +1 -0
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/hooks/useOnElementResize/package.json +10 -0
- package/package.json +1 -1
package/cjs/hooks/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var hooks_useCancellableDelayedCallback = require('./useCancellableDelayedCallba
|
|
|
19
19
|
var hooks_useDerivedStateFromProps = require('./useDerivedStateFromProps.js');
|
|
20
20
|
var hooks_useSetRef = require('./useSetRef.js');
|
|
21
21
|
var hooks_useParentElement = require('./useParentElement.js');
|
|
22
|
+
var hooks_useOnElementResize = require('./useOnElementResize.js');
|
|
22
23
|
require('react');
|
|
23
24
|
require('@babel/runtime/helpers/slicedToArray');
|
|
24
25
|
require('@babel/runtime/helpers/defineProperty');
|
|
@@ -74,4 +75,5 @@ exports.useCancellableDelayedCallback = hooks_useCancellableDelayedCallback;
|
|
|
74
75
|
exports.useDerivedStateFromProps = hooks_useDerivedStateFromProps;
|
|
75
76
|
exports.useSetRef = hooks_useSetRef.useSetRef;
|
|
76
77
|
exports.useParentElement = hooks_useParentElement.useParentElement;
|
|
78
|
+
exports.useOnElementResize = hooks_useOnElementResize.useOnElementResize;
|
|
77
79
|
//# sourceMappingURL=index.js.map
|
package/cjs/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
|
|
8
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
|
+
|
|
10
|
+
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
11
|
+
|
|
12
|
+
// Taken and modified from https://stackoverflow.com/a/60218754
|
|
13
|
+
|
|
14
|
+
var useOnElementResize = function useOnElementResize(targetRef) {
|
|
15
|
+
var _targetRef$current, _targetRef$current2;
|
|
16
|
+
|
|
17
|
+
var _useState = React.useState(targetRef.current ? (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.offsetWidth : 0),
|
|
18
|
+
_useState2 = _slicedToArray__default['default'](_useState, 2),
|
|
19
|
+
width = _useState2[0],
|
|
20
|
+
setWidth = _useState2[1];
|
|
21
|
+
|
|
22
|
+
var _useState3 = React.useState(targetRef.current ? (_targetRef$current2 = targetRef.current) === null || _targetRef$current2 === void 0 ? void 0 : _targetRef$current2.offsetWidth : 0),
|
|
23
|
+
_useState4 = _slicedToArray__default['default'](_useState3, 2),
|
|
24
|
+
height = _useState4[0],
|
|
25
|
+
setHeight = _useState4[1];
|
|
26
|
+
|
|
27
|
+
var observer = React.useRef(null);
|
|
28
|
+
React.useEffect(function () {
|
|
29
|
+
function outputsize() {
|
|
30
|
+
var _targetRef$current3, _targetRef$current4;
|
|
31
|
+
|
|
32
|
+
setWidth((_targetRef$current3 = targetRef.current) === null || _targetRef$current3 === void 0 ? void 0 : _targetRef$current3.offsetWidth);
|
|
33
|
+
setHeight((_targetRef$current4 = targetRef.current) === null || _targetRef$current4 === void 0 ? void 0 : _targetRef$current4.offsetHeight);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
observer.current = new ResizeObserver(outputsize).observe(targetRef.current);
|
|
37
|
+
return function () {
|
|
38
|
+
var _observer$current;
|
|
39
|
+
|
|
40
|
+
(_observer$current = observer.current) === null || _observer$current === void 0 ? void 0 : _observer$current.disconnect();
|
|
41
|
+
};
|
|
42
|
+
}, [targetRef]);
|
|
43
|
+
return React.useMemo(function () {
|
|
44
|
+
return {
|
|
45
|
+
width: width,
|
|
46
|
+
height: height
|
|
47
|
+
};
|
|
48
|
+
}, [width, height]);
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
exports.useOnElementResize = useOnElementResize;
|
|
52
|
+
//# sourceMappingURL=useOnElementResize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useOnElementResize.js","sources":["../../../src/hooks/useOnElementResize.tsx"],"sourcesContent":["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 = (targetRef: React.RefObject<HTMLDivElement>): Record<'width' | 'height', number> => {\n const [width, setWidth] = useState(targetRef.current ? targetRef.current?.offsetWidth : 0);\n const [height, setHeight] = useState(targetRef.current ? targetRef.current?.offsetWidth : 0);\n const observer = useRef(null);\n\n useEffect(() => {\n function outputsize() {\n setWidth(targetRef.current?.offsetWidth);\n setHeight(targetRef.current?.offsetHeight);\n }\n\n observer.current = new ResizeObserver(outputsize).observe(targetRef.current);\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"],"names":["useOnElementResize","targetRef","useState","current","offsetWidth","width","setWidth","height","setHeight","observer","useRef","useEffect","outputsize","offsetHeight","ResizeObserver","observe","disconnect","useMemo"],"mappings":";;;;;;;;;;;AAGA;;IACaA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,SAAD,EAAoF;AAAA;;AACpH,kBAA0BC,cAAQ,CAACD,SAAS,CAACE,OAAV,yBAAoBF,SAAS,CAACE,OAA9B,uDAAoB,mBAAmBC,WAAvC,GAAqD,CAAtD,CAAlC;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,mBAA4BJ,cAAQ,CAACD,SAAS,CAACE,OAAV,0BAAoBF,SAAS,CAACE,OAA9B,wDAAoB,oBAAmBC,WAAvC,GAAqD,CAAtD,CAApC;AAAA;AAAA,MAAOG,MAAP;AAAA,MAAeC,SAAf;;AACA,MAAMC,QAAQ,GAAGC,YAAM,CAAC,IAAD,CAAvB;AAEAC,EAAAA,eAAS,CAAC,YAAM;AACd,aAASC,UAAT,GAAsB;AAAA;;AACpBN,MAAAA,QAAQ,wBAACL,SAAS,CAACE,OAAX,wDAAC,oBAAmBC,WAApB,CAAR;AACAI,MAAAA,SAAS,wBAACP,SAAS,CAACE,OAAX,wDAAC,oBAAmBU,YAApB,CAAT;AACD;;AAEDJ,IAAAA,QAAQ,CAACN,OAAT,GAAmB,IAAIW,cAAJ,CAAmBF,UAAnB,EAA+BG,OAA/B,CAAuCd,SAAS,CAACE,OAAjD,CAAnB;AAEA,WAAO,YAAM;AAAA;;AACX,2BAAAM,QAAQ,CAACN,OAAT,wEAAkBa,UAAlB;AACD,KAFD;AAGD,GAXQ,EAWN,CAACf,SAAD,CAXM,CAAT;AAaA,SAAOgB,aAAO,CACZ;AAAA,WAAO;AACLZ,MAAAA,KAAK,EAALA,KADK;AAELE,MAAAA,MAAM,EAANA;AAFK,KAAP;AAAA,GADY,EAKZ,CAACF,KAAD,EAAQE,MAAR,CALY,CAAd;AAOD;;;;"}
|
package/cjs/index.js
CHANGED
|
@@ -24,6 +24,7 @@ var hooks_useCancellableDelayedCallback = require('./hooks/useCancellableDelayed
|
|
|
24
24
|
var hooks_useDerivedStateFromProps = require('./hooks/useDerivedStateFromProps.js');
|
|
25
25
|
var hooks_useSetRef = require('./hooks/useSetRef.js');
|
|
26
26
|
var hooks_useParentElement = require('./hooks/useParentElement.js');
|
|
27
|
+
var hooks_useOnElementResize = require('./hooks/useOnElementResize.js');
|
|
27
28
|
var timeUtils = require('./timeUtils.js');
|
|
28
29
|
var compose = require('./compose.js');
|
|
29
30
|
var platform = require('./platform.js');
|
|
@@ -113,6 +114,7 @@ exports.useCancellableDelayedCallback = hooks_useCancellableDelayedCallback;
|
|
|
113
114
|
exports.useDerivedStateFromProps = hooks_useDerivedStateFromProps;
|
|
114
115
|
exports.useSetRef = hooks_useSetRef.useSetRef;
|
|
115
116
|
exports.useParentElement = hooks_useParentElement.useParentElement;
|
|
117
|
+
exports.useOnElementResize = hooks_useOnElementResize.useOnElementResize;
|
|
116
118
|
exports.addLeadingZeros = timeUtils.addLeadingZeros;
|
|
117
119
|
exports.getVisibleTimeByFormat = timeUtils.getVisibleTimeByFormat;
|
|
118
120
|
exports.compose = compose.compose;
|
package/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/esm/hooks/index.js
CHANGED
|
@@ -15,6 +15,7 @@ export { default as useCancellableDelayedCallback } from './useCancellableDelaye
|
|
|
15
15
|
export { default as useDerivedStateFromProps } from './useDerivedStateFromProps.js';
|
|
16
16
|
export { useSetRef } from './useSetRef.js';
|
|
17
17
|
export { useParentElement } from './useParentElement.js';
|
|
18
|
+
export { useOnElementResize } from './useOnElementResize.js';
|
|
18
19
|
import 'react';
|
|
19
20
|
import '@babel/runtime/helpers/esm/slicedToArray';
|
|
20
21
|
import '@babel/runtime/helpers/esm/defineProperty';
|
package/esm/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';
|
|
2
|
+
import { useState, useRef, useEffect, useMemo } from 'react';
|
|
3
|
+
|
|
4
|
+
// Taken and modified from https://stackoverflow.com/a/60218754
|
|
5
|
+
|
|
6
|
+
var useOnElementResize = function useOnElementResize(targetRef) {
|
|
7
|
+
var _targetRef$current, _targetRef$current2;
|
|
8
|
+
|
|
9
|
+
var _useState = useState(targetRef.current ? (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.offsetWidth : 0),
|
|
10
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
11
|
+
width = _useState2[0],
|
|
12
|
+
setWidth = _useState2[1];
|
|
13
|
+
|
|
14
|
+
var _useState3 = useState(targetRef.current ? (_targetRef$current2 = targetRef.current) === null || _targetRef$current2 === void 0 ? void 0 : _targetRef$current2.offsetWidth : 0),
|
|
15
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
16
|
+
height = _useState4[0],
|
|
17
|
+
setHeight = _useState4[1];
|
|
18
|
+
|
|
19
|
+
var observer = useRef(null);
|
|
20
|
+
useEffect(function () {
|
|
21
|
+
function outputsize() {
|
|
22
|
+
var _targetRef$current3, _targetRef$current4;
|
|
23
|
+
|
|
24
|
+
setWidth((_targetRef$current3 = targetRef.current) === null || _targetRef$current3 === void 0 ? void 0 : _targetRef$current3.offsetWidth);
|
|
25
|
+
setHeight((_targetRef$current4 = targetRef.current) === null || _targetRef$current4 === void 0 ? void 0 : _targetRef$current4.offsetHeight);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
observer.current = new ResizeObserver(outputsize).observe(targetRef.current);
|
|
29
|
+
return function () {
|
|
30
|
+
var _observer$current;
|
|
31
|
+
|
|
32
|
+
(_observer$current = observer.current) === null || _observer$current === void 0 ? void 0 : _observer$current.disconnect();
|
|
33
|
+
};
|
|
34
|
+
}, [targetRef]);
|
|
35
|
+
return useMemo(function () {
|
|
36
|
+
return {
|
|
37
|
+
width: width,
|
|
38
|
+
height: height
|
|
39
|
+
};
|
|
40
|
+
}, [width, height]);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export { useOnElementResize };
|
|
44
|
+
//# sourceMappingURL=useOnElementResize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useOnElementResize.js","sources":["../../../src/hooks/useOnElementResize.tsx"],"sourcesContent":["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 = (targetRef: React.RefObject<HTMLDivElement>): Record<'width' | 'height', number> => {\n const [width, setWidth] = useState(targetRef.current ? targetRef.current?.offsetWidth : 0);\n const [height, setHeight] = useState(targetRef.current ? targetRef.current?.offsetWidth : 0);\n const observer = useRef(null);\n\n useEffect(() => {\n function outputsize() {\n setWidth(targetRef.current?.offsetWidth);\n setHeight(targetRef.current?.offsetHeight);\n }\n\n observer.current = new ResizeObserver(outputsize).observe(targetRef.current);\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"],"names":["useOnElementResize","targetRef","useState","current","offsetWidth","width","setWidth","height","setHeight","observer","useRef","useEffect","outputsize","offsetHeight","ResizeObserver","observe","disconnect","useMemo"],"mappings":";;;AAGA;;IACaA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,SAAD,EAAoF;AAAA;;AACpH,kBAA0BC,QAAQ,CAACD,SAAS,CAACE,OAAV,yBAAoBF,SAAS,CAACE,OAA9B,uDAAoB,mBAAmBC,WAAvC,GAAqD,CAAtD,CAAlC;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,mBAA4BJ,QAAQ,CAACD,SAAS,CAACE,OAAV,0BAAoBF,SAAS,CAACE,OAA9B,wDAAoB,oBAAmBC,WAAvC,GAAqD,CAAtD,CAApC;AAAA;AAAA,MAAOG,MAAP;AAAA,MAAeC,SAAf;;AACA,MAAMC,QAAQ,GAAGC,MAAM,CAAC,IAAD,CAAvB;AAEAC,EAAAA,SAAS,CAAC,YAAM;AACd,aAASC,UAAT,GAAsB;AAAA;;AACpBN,MAAAA,QAAQ,wBAACL,SAAS,CAACE,OAAX,wDAAC,oBAAmBC,WAApB,CAAR;AACAI,MAAAA,SAAS,wBAACP,SAAS,CAACE,OAAX,wDAAC,oBAAmBU,YAApB,CAAT;AACD;;AAEDJ,IAAAA,QAAQ,CAACN,OAAT,GAAmB,IAAIW,cAAJ,CAAmBF,UAAnB,EAA+BG,OAA/B,CAAuCd,SAAS,CAACE,OAAjD,CAAnB;AAEA,WAAO,YAAM;AAAA;;AACX,2BAAAM,QAAQ,CAACN,OAAT,wEAAkBa,UAAlB;AACD,KAFD;AAGD,GAXQ,EAWN,CAACf,SAAD,CAXM,CAAT;AAaA,SAAOgB,OAAO,CACZ;AAAA,WAAO;AACLZ,MAAAA,KAAK,EAALA,KADK;AAELE,MAAAA,MAAM,EAANA;AAFK,KAAP;AAAA,GADY,EAKZ,CAACF,KAAD,EAAQE,MAAR,CALY,CAAd;AAOD;;;;"}
|
package/esm/index.js
CHANGED
|
@@ -20,6 +20,7 @@ export { default as useCancellableDelayedCallback } from './hooks/useCancellable
|
|
|
20
20
|
export { default as useDerivedStateFromProps } from './hooks/useDerivedStateFromProps.js';
|
|
21
21
|
export { useSetRef } from './hooks/useSetRef.js';
|
|
22
22
|
export { useParentElement } from './hooks/useParentElement.js';
|
|
23
|
+
export { useOnElementResize } from './hooks/useOnElementResize.js';
|
|
23
24
|
export { addLeadingZeros, getVisibleTimeByFormat } from './timeUtils.js';
|
|
24
25
|
export { compose } from './compose.js';
|
|
25
26
|
export { DOCUMENT, WINDOW } from './platform.js';
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|