@tamagui/core 1.79.12 → 1.79.13
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/hooks/useElementLayout.js +9 -5
- package/dist/cjs/hooks/useElementLayout.js.map +1 -1
- package/dist/cjs/hooks/useElementLayout.native.js +9 -5
- package/dist/cjs/hooks/useElementLayout.native.js.map +1 -1
- package/dist/cjs/hooks/usePlatformMethods.js +2 -2
- package/dist/cjs/hooks/usePlatformMethods.js.map +1 -1
- package/dist/cjs/hooks/usePlatformMethods.native.js +2 -2
- package/dist/cjs/hooks/usePlatformMethods.native.js.map +1 -1
- package/dist/esm/hooks/useElementLayout.js +9 -5
- package/dist/esm/hooks/useElementLayout.js.map +1 -1
- package/dist/esm/hooks/useElementLayout.native.js +9 -5
- package/dist/esm/hooks/useElementLayout.native.js.map +1 -1
- package/dist/esm/hooks/usePlatformMethods.js +1 -1
- package/dist/esm/hooks/usePlatformMethods.native.js +1 -1
- package/dist/native.js +215 -197
- package/dist/native.js.map +3 -3
- package/dist/test.native.js +204 -188
- package/dist/test.native.js.map +3 -3
- package/package.json +6 -6
- package/src/hooks/useElementLayout.tsx +7 -1
- package/src/hooks/usePlatformMethods.ts +1 -1
- package/types/hooks/useElementLayout.d.ts.map +1 -1
|
@@ -19,7 +19,7 @@ __export(useElementLayout_exports, {
|
|
|
19
19
|
});
|
|
20
20
|
module.exports = __toCommonJS(useElementLayout_exports);
|
|
21
21
|
var import_constants = require("@tamagui/constants"), import_getBoundingClientRect = require("../helpers/getBoundingClientRect"), import_getRect = require("../helpers/getRect");
|
|
22
|
-
const LayoutHandlers = /* @__PURE__ */ new WeakMap();
|
|
22
|
+
const LayoutHandlers = /* @__PURE__ */ new WeakMap(), LayoutTimeouts = /* @__PURE__ */ new WeakMap();
|
|
23
23
|
let resizeObserver = null;
|
|
24
24
|
typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new ResizeObserver((entries) => {
|
|
25
25
|
for (const { target } of entries) {
|
|
@@ -39,10 +39,14 @@ typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new Resiz
|
|
|
39
39
|
}));
|
|
40
40
|
const measureLayout = (node, relativeTo, callback) => {
|
|
41
41
|
const relativeNode = relativeTo || (node == null ? void 0 : node.parentNode);
|
|
42
|
-
relativeNode instanceof HTMLElement
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
if (relativeNode instanceof HTMLElement) {
|
|
43
|
+
clearTimeout(LayoutTimeouts.get(relativeNode));
|
|
44
|
+
const tm = setTimeout(() => {
|
|
45
|
+
const relativeRect = (0, import_getBoundingClientRect.getBoundingClientRect)(relativeNode), { height, left, top, width } = (0, import_getRect.getRect)(node), x = left - relativeRect.left, y = top - relativeRect.top;
|
|
46
|
+
callback(x, y, width, height, left, top), LayoutTimeouts.delete(relativeNode);
|
|
47
|
+
}, 0);
|
|
48
|
+
LayoutTimeouts.set(relativeNode, tm);
|
|
49
|
+
}
|
|
46
50
|
};
|
|
47
51
|
function useElementLayout(ref, onLayout) {
|
|
48
52
|
(0, import_constants.useIsomorphicLayoutEffect)(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useElementLayout.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C,+BAG1C,+BAAsC,6CACtC,iBAAwB;AAExB,MAAM,iBAAiB,oBAAI,QAA2B;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C,+BAG1C,+BAAsC,6CACtC,iBAAwB;AAExB,MAAM,iBAAiB,oBAAI,QAA2B,GAChD,iBAAiB,oBAAI,QAAsB;AAmBjD,IAAI,iBAAwC;AAExC,OAAO,SAAW,OAAe,oBAAoB,WACvD,iBAAiB,IAAI,eAAe,CAAC,YAAY;AAC/C,aAAW,EAAE,OAAO,KAAK,SAAS;AAChC,UAAM,WAAW,eAAe,IAAI,MAAM;AAC1C,QAAI,OAAO,YAAa;AAAY;AACpC,kBAAc,QAAuB,MAAM,CAAC,GAAG,GAAG,OAAO,QAAQ,MAAM,QAAQ;AAC7E,eAAS;AAAA,QACP,aAAa;AAAA,UACX,QAAQ,EAAE,GAAG,GAAG,OAAO,QAAQ,MAAM,IAAI;AAAA,UACzC;AAAA,QACF;AAAA,QACA,WAAW,KAAK,IAAI;AAAA,MACtB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF,CAAC;AAGI,MAAM,gBAAgB,CAC3B,MACA,YACA,aACG;AACH,QAAM,eAAe,eAAc,6BAAM;AACzC,MAAI,wBAAwB,aAAa;AAEvC,iBAAa,eAAe,IAAI,YAAY,CAAC;AAE7C,UAAM,KAAK,WAAW,MAAM;AAC1B,YAAM,mBAAe,oDAAsB,YAAY,GACjD,EAAE,QAAQ,MAAM,KAAK,MAAM,QAAI,wBAAQ,IAAI,GAC3C,IAAI,OAAO,aAAa,MACxB,IAAI,MAAM,aAAa;AAC7B,eAAS,GAAG,GAAG,OAAO,QAAQ,MAAM,GAAG,GACvC,eAAe,OAAO,YAAY;AAAA,IACpC,GAAG,CAAC;AACJ,mBAAe,IAAI,cAAc,EAAE;AAAA,EACrC;AACF;AAEO,SAAS,iBACd,KACA,UACA;AACA,kDAA0B,MAAM;AAC9B,QAAI,CAAC,kBAAkB,CAAC;AAAU;AAClC,UAAM,OAAO,IAAI;AACjB,QAAK;AACL,4BAAe,IAAI,MAAM,QAAQ,GACjC,eAAe,QAAQ,IAAI,GACpB,MAAM;AACX,iDAAgB,UAAU;AAAA,MAC5B;AAAA,EACF,GAAG,CAAC,KAAK,QAAQ,CAAC;AACpB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -20,7 +20,7 @@ __export(useElementLayout_exports, {
|
|
|
20
20
|
});
|
|
21
21
|
module.exports = __toCommonJS(useElementLayout_exports);
|
|
22
22
|
var import_constants = require("@tamagui/constants"), import_getBoundingClientRect = require("../helpers/getBoundingClientRect"), import_getRect = require("../helpers/getRect");
|
|
23
|
-
const LayoutHandlers = /* @__PURE__ */ new WeakMap();
|
|
23
|
+
const LayoutHandlers = /* @__PURE__ */ new WeakMap(), LayoutTimeouts = /* @__PURE__ */ new WeakMap();
|
|
24
24
|
let resizeObserver = null;
|
|
25
25
|
typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new ResizeObserver((entries) => {
|
|
26
26
|
for (const { target } of entries) {
|
|
@@ -40,10 +40,14 @@ typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new Resiz
|
|
|
40
40
|
}));
|
|
41
41
|
const measureLayout = (node, relativeTo, callback) => {
|
|
42
42
|
const relativeNode = relativeTo || (node == null ? void 0 : node.parentNode);
|
|
43
|
-
relativeNode instanceof HTMLElement
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
if (relativeNode instanceof HTMLElement) {
|
|
44
|
+
clearTimeout(LayoutTimeouts.get(relativeNode));
|
|
45
|
+
const tm = setTimeout(() => {
|
|
46
|
+
const relativeRect = (0, import_getBoundingClientRect.getBoundingClientRect)(relativeNode), { height, left, top, width } = (0, import_getRect.getRect)(node), x = left - relativeRect.left, y = top - relativeRect.top;
|
|
47
|
+
callback(x, y, width, height, left, top), LayoutTimeouts.delete(relativeNode);
|
|
48
|
+
}, 0);
|
|
49
|
+
LayoutTimeouts.set(relativeNode, tm);
|
|
50
|
+
}
|
|
47
51
|
};
|
|
48
52
|
function useElementLayout(ref, onLayout) {
|
|
49
53
|
(0, import_constants.useIsomorphicLayoutEffect)(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useElementLayout.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C,+BAG1C,+BAAsC,6CACtC,iBAAwB;AAExB,MAAM,iBAAiB,oBAAI,QAA2B;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C,+BAG1C,+BAAsC,6CACtC,iBAAwB;AAExB,MAAM,iBAAiB,oBAAI,QAA2B,GAChD,iBAAiB,oBAAI,QAAsB;AAmBjD,IAAI,iBAAwC;AAExC,OAAO,SAAW,OAAe,oBAAoB,WACvD,iBAAiB,IAAI,eAAe,CAAC,YAAY;AAC/C,aAAW,EAAE,OAAO,KAAK,SAAS;AAChC,UAAM,WAAW,eAAe,IAAI,MAAM;AAC1C,QAAI,OAAO,YAAa;AAAY;AACpC,kBAAc,QAAuB,MAAM,CAAC,GAAG,GAAG,OAAO,QAAQ,MAAM,QAAQ;AAC7E,eAAS;AAAA,QACP,aAAa;AAAA,UACX,QAAQ,EAAE,GAAG,GAAG,OAAO,QAAQ,MAAM,IAAI;AAAA,UACzC;AAAA,QACF;AAAA,QACA,WAAW,KAAK,IAAI;AAAA,MACtB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF,CAAC;AAGI,MAAM,gBAAgB,CAC3B,MACA,YACA,aACG;AACH,QAAM,eAAe,eAAc,6BAAM;AACzC,MAAI,wBAAwB,aAAa;AAEvC,iBAAa,eAAe,IAAI,YAAY,CAAC;AAE7C,UAAM,KAAK,WAAW,MAAM;AAC1B,YAAM,mBAAe,oDAAsB,YAAY,GACjD,EAAE,QAAQ,MAAM,KAAK,MAAM,QAAI,wBAAQ,IAAI,GAC3C,IAAI,OAAO,aAAa,MACxB,IAAI,MAAM,aAAa;AAC7B,eAAS,GAAG,GAAG,OAAO,QAAQ,MAAM,GAAG,GACvC,eAAe,OAAO,YAAY;AAAA,IACpC,GAAG,CAAC;AACJ,mBAAe,IAAI,cAAc,EAAE;AAAA,EACrC;AACF;AAEO,SAAS,iBACd,KACA,UACA;AACA,kDAA0B,MAAM;AAC9B,QAAI,CAAC,kBAAkB,CAAC;AAAU;AAClC,UAAM,OAAO,IAAI;AACjB,QAAK;AACL,4BAAe,IAAI,MAAM,QAAQ,GACjC,eAAe,QAAQ,IAAI,GACpB,MAAM;AACX,iDAAgB,UAAU;AAAA,MAC5B;AAAA,EACF,GAAG,CAAC,KAAK,QAAQ,CAAC;AACpB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -17,9 +17,9 @@ __export(usePlatformMethods_exports, {
|
|
|
17
17
|
usePlatformMethods: () => usePlatformMethods
|
|
18
18
|
});
|
|
19
19
|
module.exports = __toCommonJS(usePlatformMethods_exports);
|
|
20
|
-
var
|
|
20
|
+
var import_constants = require("@tamagui/constants"), import_getRect = require("../helpers/getRect"), import_useElementLayout = require("./useElementLayout");
|
|
21
21
|
function usePlatformMethods(hostRef) {
|
|
22
|
-
(0,
|
|
22
|
+
(0, import_constants.useIsomorphicLayoutEffect)(() => {
|
|
23
23
|
const node = hostRef.current;
|
|
24
24
|
node && (node.measure = (callback) => (0, import_useElementLayout.measureLayout)(node, null, callback), node.measureLayout = (relativeToNode, success) => (0, import_useElementLayout.measureLayout)(node, relativeToNode, success), node.measureInWindow = (callback) => {
|
|
25
25
|
node && setTimeout(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/usePlatformMethods.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C,+BAG1C,iBAAwB,+BACxB,0BAA8B;AAGvB,SAAS,mBAAmB,SAA6B;AAC9D,kDAA0B,MAAM;AAC9B,UAAM,OAAO,QAAQ;AACrB,IAAK,SAEL,KAAK,UAAU,CAAC,iBAAa,uCAAc,MAAM,MAAM,QAAQ,GAE/D,KAAK,gBAAgB,CAAC,gBAAgB,gBACpC,uCAAc,MAAqB,gBAAgB,OAAO,GAE5D,KAAK,kBAAkB,CAAC,aAAa;AACnC,MAAK,QACL,WAAW,MAAM;AACf,cAAM,EAAE,QAAQ,MAAM,KAAK,MAAM,QAAI,wBAAQ,IAAmB;AAChE,iBAAS,MAAM,KAAK,OAAO,MAAM;AAAA,MACnC,GAAG,CAAC;AAAA,IACN;AAAA,EACF,GAAG,CAAC,OAAO,CAAC;AACd;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -18,9 +18,9 @@ __export(usePlatformMethods_exports, {
|
|
|
18
18
|
usePlatformMethods: () => usePlatformMethods
|
|
19
19
|
});
|
|
20
20
|
module.exports = __toCommonJS(usePlatformMethods_exports);
|
|
21
|
-
var
|
|
21
|
+
var import_constants = require("@tamagui/constants"), import_getRect = require("../helpers/getRect"), import_useElementLayout = require("./useElementLayout");
|
|
22
22
|
function usePlatformMethods(hostRef) {
|
|
23
|
-
(0,
|
|
23
|
+
(0, import_constants.useIsomorphicLayoutEffect)(() => {
|
|
24
24
|
const node = hostRef.current;
|
|
25
25
|
node && (node.measure = (callback) => (0, import_useElementLayout.measureLayout)(node, null, callback), node.measureLayout = (relativeToNode, success) => (0, import_useElementLayout.measureLayout)(node, relativeToNode, success), node.measureInWindow = (callback) => {
|
|
26
26
|
node && setTimeout(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/usePlatformMethods.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C,+BAG1C,iBAAwB,+BACxB,0BAA8B;AAGvB,SAAS,mBAAmB,SAA6B;AAC9D,kDAA0B,MAAM;AAC9B,UAAM,OAAO,QAAQ;AACrB,IAAK,SAEL,KAAK,UAAU,CAAC,iBAAa,uCAAc,MAAM,MAAM,QAAQ,GAE/D,KAAK,gBAAgB,CAAC,gBAAgB,gBACpC,uCAAc,MAAqB,gBAAgB,OAAO,GAE5D,KAAK,kBAAkB,CAAC,aAAa;AACnC,MAAK,QACL,WAAW,MAAM;AACf,cAAM,EAAE,QAAQ,MAAM,KAAK,MAAM,QAAI,wBAAQ,IAAmB;AAChE,iBAAS,MAAM,KAAK,OAAO,MAAM;AAAA,MACnC,GAAG,CAAC;AAAA,IACN;AAAA,EACF,GAAG,CAAC,OAAO,CAAC;AACd;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
2
2
|
import { getBoundingClientRect } from "../helpers/getBoundingClientRect";
|
|
3
3
|
import { getRect } from "../helpers/getRect";
|
|
4
|
-
const LayoutHandlers = /* @__PURE__ */ new WeakMap();
|
|
4
|
+
const LayoutHandlers = /* @__PURE__ */ new WeakMap(), LayoutTimeouts = /* @__PURE__ */ new WeakMap();
|
|
5
5
|
let resizeObserver = null;
|
|
6
6
|
typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new ResizeObserver((entries) => {
|
|
7
7
|
for (const { target } of entries) {
|
|
@@ -21,10 +21,14 @@ typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new Resiz
|
|
|
21
21
|
}));
|
|
22
22
|
const measureLayout = (node, relativeTo, callback) => {
|
|
23
23
|
const relativeNode = relativeTo || node?.parentNode;
|
|
24
|
-
relativeNode instanceof HTMLElement
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
if (relativeNode instanceof HTMLElement) {
|
|
25
|
+
clearTimeout(LayoutTimeouts.get(relativeNode));
|
|
26
|
+
const tm = setTimeout(() => {
|
|
27
|
+
const relativeRect = getBoundingClientRect(relativeNode), { height, left, top, width } = getRect(node), x = left - relativeRect.left, y = top - relativeRect.top;
|
|
28
|
+
callback(x, y, width, height, left, top), LayoutTimeouts.delete(relativeNode);
|
|
29
|
+
}, 0);
|
|
30
|
+
LayoutTimeouts.set(relativeNode, tm);
|
|
31
|
+
}
|
|
28
32
|
};
|
|
29
33
|
function useElementLayout(ref, onLayout) {
|
|
30
34
|
useIsomorphicLayoutEffect(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useElementLayout.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,iCAAiC;AAG1C,SAAS,6BAA6B;AACtC,SAAS,eAAe;AAExB,MAAM,iBAAiB,oBAAI,QAA2B;
|
|
4
|
+
"mappings": "AAAA,SAAS,iCAAiC;AAG1C,SAAS,6BAA6B;AACtC,SAAS,eAAe;AAExB,MAAM,iBAAiB,oBAAI,QAA2B,GAChD,iBAAiB,oBAAI,QAAsB;AAmBjD,IAAI,iBAAwC;AAExC,OAAO,SAAW,OAAe,oBAAoB,WACvD,iBAAiB,IAAI,eAAe,CAAC,YAAY;AAC/C,aAAW,EAAE,OAAO,KAAK,SAAS;AAChC,UAAM,WAAW,eAAe,IAAI,MAAM;AAC1C,QAAI,OAAO,YAAa;AAAY;AACpC,kBAAc,QAAuB,MAAM,CAAC,GAAG,GAAG,OAAO,QAAQ,MAAM,QAAQ;AAC7E,eAAS;AAAA,QACP,aAAa;AAAA,UACX,QAAQ,EAAE,GAAG,GAAG,OAAO,QAAQ,MAAM,IAAI;AAAA,UACzC;AAAA,QACF;AAAA,QACA,WAAW,KAAK,IAAI;AAAA,MACtB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF,CAAC;AAGI,MAAM,gBAAgB,CAC3B,MACA,YACA,aACG;AACH,QAAM,eAAe,cAAc,MAAM;AACzC,MAAI,wBAAwB,aAAa;AAEvC,iBAAa,eAAe,IAAI,YAAY,CAAC;AAE7C,UAAM,KAAK,WAAW,MAAM;AAC1B,YAAM,eAAe,sBAAsB,YAAY,GACjD,EAAE,QAAQ,MAAM,KAAK,MAAM,IAAI,QAAQ,IAAI,GAC3C,IAAI,OAAO,aAAa,MACxB,IAAI,MAAM,aAAa;AAC7B,eAAS,GAAG,GAAG,OAAO,QAAQ,MAAM,GAAG,GACvC,eAAe,OAAO,YAAY;AAAA,IACpC,GAAG,CAAC;AACJ,mBAAe,IAAI,cAAc,EAAE;AAAA,EACrC;AACF;AAEO,SAAS,iBACd,KACA,UACA;AACA,4BAA0B,MAAM;AAC9B,QAAI,CAAC,kBAAkB,CAAC;AAAU;AAClC,UAAM,OAAO,IAAI;AACjB,QAAK;AACL,4BAAe,IAAI,MAAM,QAAQ,GACjC,eAAe,QAAQ,IAAI,GACpB,MAAM;AACX,wBAAgB,UAAU,IAAI;AAAA,MAChC;AAAA,EACF,GAAG,CAAC,KAAK,QAAQ,CAAC;AACpB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
2
2
|
import { getBoundingClientRect } from "../helpers/getBoundingClientRect";
|
|
3
3
|
import { getRect } from "../helpers/getRect";
|
|
4
|
-
const LayoutHandlers = /* @__PURE__ */ new WeakMap();
|
|
4
|
+
const LayoutHandlers = /* @__PURE__ */ new WeakMap(), LayoutTimeouts = /* @__PURE__ */ new WeakMap();
|
|
5
5
|
let resizeObserver = null;
|
|
6
6
|
typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new ResizeObserver((entries) => {
|
|
7
7
|
for (const { target } of entries) {
|
|
@@ -21,10 +21,14 @@ typeof window < "u" && "ResizeObserver" in window && (resizeObserver = new Resiz
|
|
|
21
21
|
}));
|
|
22
22
|
const measureLayout = (node, relativeTo, callback) => {
|
|
23
23
|
const relativeNode = relativeTo || node?.parentNode;
|
|
24
|
-
relativeNode instanceof HTMLElement
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
if (relativeNode instanceof HTMLElement) {
|
|
25
|
+
clearTimeout(LayoutTimeouts.get(relativeNode));
|
|
26
|
+
const tm = setTimeout(() => {
|
|
27
|
+
const relativeRect = getBoundingClientRect(relativeNode), { height, left, top, width } = getRect(node), x = left - relativeRect.left, y = top - relativeRect.top;
|
|
28
|
+
callback(x, y, width, height, left, top), LayoutTimeouts.delete(relativeNode);
|
|
29
|
+
}, 0);
|
|
30
|
+
LayoutTimeouts.set(relativeNode, tm);
|
|
31
|
+
}
|
|
28
32
|
};
|
|
29
33
|
function useElementLayout(ref, onLayout) {
|
|
30
34
|
useIsomorphicLayoutEffect(() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useElementLayout.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,iCAAiC;AAG1C,SAAS,6BAA6B;AACtC,SAAS,eAAe;AAExB,MAAM,iBAAiB,oBAAI,QAA2B;
|
|
4
|
+
"mappings": "AAAA,SAAS,iCAAiC;AAG1C,SAAS,6BAA6B;AACtC,SAAS,eAAe;AAExB,MAAM,iBAAiB,oBAAI,QAA2B,GAChD,iBAAiB,oBAAI,QAAsB;AAmBjD,IAAI,iBAAwC;AAExC,OAAO,SAAW,OAAe,oBAAoB,WACvD,iBAAiB,IAAI,eAAe,CAAC,YAAY;AAC/C,aAAW,EAAE,OAAO,KAAK,SAAS;AAChC,UAAM,WAAW,eAAe,IAAI,MAAM;AAC1C,QAAI,OAAO,YAAa;AAAY;AACpC,kBAAc,QAAuB,MAAM,CAAC,GAAG,GAAG,OAAO,QAAQ,MAAM,QAAQ;AAC7E,eAAS;AAAA,QACP,aAAa;AAAA,UACX,QAAQ,EAAE,GAAG,GAAG,OAAO,QAAQ,MAAM,IAAI;AAAA,UACzC;AAAA,QACF;AAAA,QACA,WAAW,KAAK,IAAI;AAAA,MACtB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF,CAAC;AAGI,MAAM,gBAAgB,CAC3B,MACA,YACA,aACG;AACH,QAAM,eAAe,cAAc,MAAM;AACzC,MAAI,wBAAwB,aAAa;AAEvC,iBAAa,eAAe,IAAI,YAAY,CAAC;AAE7C,UAAM,KAAK,WAAW,MAAM;AAC1B,YAAM,eAAe,sBAAsB,YAAY,GACjD,EAAE,QAAQ,MAAM,KAAK,MAAM,IAAI,QAAQ,IAAI,GAC3C,IAAI,OAAO,aAAa,MACxB,IAAI,MAAM,aAAa;AAC7B,eAAS,GAAG,GAAG,OAAO,QAAQ,MAAM,GAAG,GACvC,eAAe,OAAO,YAAY;AAAA,IACpC,GAAG,CAAC;AACJ,mBAAe,IAAI,cAAc,EAAE;AAAA,EACrC;AACF;AAEO,SAAS,iBACd,KACA,UACA;AACA,4BAA0B,MAAM;AAC9B,QAAI,CAAC,kBAAkB,CAAC;AAAU;AAClC,UAAM,OAAO,IAAI;AACjB,QAAK;AACL,4BAAe,IAAI,MAAM,QAAQ,GACjC,eAAe,QAAQ,IAAI,GACpB,MAAM;AACX,wBAAgB,UAAU,IAAI;AAAA,MAChC;AAAA,EACF,GAAG,CAAC,KAAK,QAAQ,CAAC;AACpB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|