oolib 2.30.1 → 2.30.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/dist/components/ActionMenu/index.js +1 -1
- package/dist/utils/_EXPORTS/index.d.ts +1 -0
- package/dist/utils/_EXPORTS/index.js +3 -1
- package/dist/utils/customHooks/useScroll.d.ts +1 -1
- package/dist/utils/customHooks/useScroll.js +7 -2
- package/dist/{components/ActionMenu/utils → utils}/usePopOutOfOverflowHiddenParent.d.ts +1 -1
- package/dist/{components/ActionMenu/utils → utils}/usePopOutOfOverflowHiddenParent.js +3 -6
- package/package.json +1 -1
|
@@ -40,7 +40,7 @@ var ButtonComps = __importStar(require("../Buttons"));
|
|
|
40
40
|
var Typo_1 = require("../Typo");
|
|
41
41
|
var icons_1 = require("../../icons");
|
|
42
42
|
var useHandleClickOutside_1 = require("./utils/useHandleClickOutside");
|
|
43
|
-
var usePopOutOfOverflowHiddenParent_1 = require("
|
|
43
|
+
var usePopOutOfOverflowHiddenParent_1 = require("../../utils/usePopOutOfOverflowHiddenParent");
|
|
44
44
|
var styled_1 = require("./styled");
|
|
45
45
|
//
|
|
46
46
|
var ActionMenu = function (_a) {
|
|
@@ -7,3 +7,4 @@ export { formatTextToCamelCase } from "../formatTextToCamelCase";
|
|
|
7
7
|
export { formatCamelCaseToSentenceCase } from "../formatCamelCaseToSentenceCase";
|
|
8
8
|
export { toArray } from "../toArray";
|
|
9
9
|
export { useScroll } from "../customHooks/useScroll";
|
|
10
|
+
export { usePopOutOfOverflowHiddenParent } from "../usePopOutOfOverflowHiddenParent";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useScroll = exports.toArray = exports.formatCamelCaseToSentenceCase = exports.formatTextToCamelCase = exports.injectHttps = exports.getBlockLabelProps = exports.deleteVal = exports.setVal = exports.getVal = void 0;
|
|
3
|
+
exports.usePopOutOfOverflowHiddenParent = exports.useScroll = exports.toArray = exports.formatCamelCaseToSentenceCase = exports.formatTextToCamelCase = exports.injectHttps = exports.getBlockLabelProps = exports.deleteVal = exports.setVal = exports.getVal = void 0;
|
|
4
4
|
//the holy setter, getter & deleter
|
|
5
5
|
var getVal_1 = require("../getterSetterDeleter/getVal");
|
|
6
6
|
Object.defineProperty(exports, "getVal", { enumerable: true, get: function () { return getVal_1.getVal; } });
|
|
@@ -22,3 +22,5 @@ Object.defineProperty(exports, "toArray", { enumerable: true, get: function () {
|
|
|
22
22
|
//custom hooks
|
|
23
23
|
var useScroll_1 = require("../customHooks/useScroll");
|
|
24
24
|
Object.defineProperty(exports, "useScroll", { enumerable: true, get: function () { return useScroll_1.useScroll; } });
|
|
25
|
+
var usePopOutOfOverflowHiddenParent_1 = require("../usePopOutOfOverflowHiddenParent");
|
|
26
|
+
Object.defineProperty(exports, "usePopOutOfOverflowHiddenParent", { enumerable: true, get: function () { return usePopOutOfOverflowHiddenParent_1.usePopOutOfOverflowHiddenParent; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export function useScroll(scrollFn:
|
|
1
|
+
export function useScroll(scrollFn: Function, options?: any): void;
|
|
@@ -3,14 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.useScroll = void 0;
|
|
4
4
|
var lodash_1 = require("lodash");
|
|
5
5
|
var react_1 = require("react");
|
|
6
|
+
/**
|
|
7
|
+
* @param {Function} scrollFn
|
|
8
|
+
* @param {*} options
|
|
9
|
+
* @summary if you dont use options.detectScrollInAllDivs, scroll is detected only at the 'window' level
|
|
10
|
+
*/
|
|
6
11
|
var useScroll = function (scrollFn, options) {
|
|
7
12
|
if (options === void 0) { options = {}; }
|
|
8
13
|
(0, react_1.useLayoutEffect)(function () {
|
|
9
14
|
scrollFn(); //run the scroll fn once before any scroll to set initial states
|
|
10
15
|
var throttledScrollFn = (0, lodash_1.throttle)(scrollFn, 100);
|
|
11
16
|
var fnToUse = options.noThrottle ? scrollFn : throttledScrollFn;
|
|
12
|
-
window.addEventListener('scroll', fnToUse,
|
|
13
|
-
return function () { return window.removeEventListener('scroll', fnToUse,
|
|
17
|
+
window.addEventListener('scroll', fnToUse, options.detectScrollInAllDivs); // <-- why 'true' : https://stackoverflow.com/a/32954565
|
|
18
|
+
return function () { return window.removeEventListener('scroll', fnToUse, options.detectScrollInAllDivs); };
|
|
14
19
|
}, [options.loading]);
|
|
15
20
|
};
|
|
16
21
|
exports.useScroll = useScroll;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.usePopOutOfOverflowHiddenParent = void 0;
|
|
4
4
|
var react_1 = require("react");
|
|
5
|
-
var useScroll_1 = require("
|
|
5
|
+
var useScroll_1 = require("./customHooks/useScroll");
|
|
6
6
|
//HOW TO USE
|
|
7
7
|
/**
|
|
8
8
|
* this utility is useful when action menus or dropdowns are
|
|
@@ -46,20 +46,17 @@ var usePopOutOfOverflowHiddenParent = function (popOutOfOverflowHiddenParent) {
|
|
|
46
46
|
var trackerRef = (0, react_1.useRef)(null);
|
|
47
47
|
var _a = (0, react_1.useState)(undefined), fixPos = _a[0], setFixPos = _a[1];
|
|
48
48
|
var getBoundingClientRect = function () { var _a; return (_a = trackerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect(); };
|
|
49
|
-
var applyFixedPos = function () {
|
|
50
|
-
setFixPos(getBoundingClientRect());
|
|
51
|
-
};
|
|
49
|
+
var applyFixedPos = function () { return setFixPos(getBoundingClientRect()); };
|
|
52
50
|
var updateFixedPos = function (e) {
|
|
53
51
|
/**
|
|
54
52
|
* only if popOut... prop is enabled, AND
|
|
55
53
|
* if an initial fixedPos has been applied,
|
|
56
54
|
* then update it
|
|
57
55
|
*/
|
|
58
|
-
console.log({ 'BC': getBoundingClientRect() });
|
|
59
56
|
if (popOutOfOverflowHiddenParent)
|
|
60
57
|
setFixPos(function (prev) { return prev && getBoundingClientRect(); });
|
|
61
58
|
};
|
|
62
|
-
(0, useScroll_1.useScroll)(updateFixedPos, { noThrottle: true });
|
|
59
|
+
(0, useScroll_1.useScroll)(updateFixedPos, { noThrottle: true, detectScrollInAllDivs: true });
|
|
63
60
|
var removeFixedPos = function () { return setFixPos(undefined); };
|
|
64
61
|
return ({ trackerRef: trackerRef, applyFixedPos: applyFixedPos, removeFixedPos: removeFixedPos, fixPos: fixPos });
|
|
65
62
|
};
|