@salutejs/plasma-new-hope 0.264.1-canary.1775.13296417008.0 → 0.265.0-canary.1759.13297025461.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Popover/Popover.js +2 -15
- package/cjs/components/Popover/Popover.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.js +1 -1
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/emotion/cjs/components/Popover/Popover.js +2 -15
- package/emotion/cjs/components/Tooltip/Tooltip.js +2 -2
- package/emotion/cjs/examples/plasma_b2c/components/Popover/Popover.stories.tsx +2 -75
- package/emotion/cjs/examples/plasma_b2c/components/TextArea/TextArea.config.js +14 -13
- package/emotion/cjs/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +1 -1
- package/emotion/cjs/examples/plasma_web/components/TextArea/TextArea.config.js +14 -13
- package/emotion/cjs/examples/plasma_web/components/TextArea/TextArea.stories.tsx +2 -1
- package/emotion/es/components/Popover/Popover.js +2 -15
- package/emotion/es/components/Tooltip/Tooltip.js +2 -2
- package/emotion/es/examples/plasma_b2c/components/Popover/Popover.stories.tsx +2 -75
- package/emotion/es/examples/plasma_b2c/components/TextArea/TextArea.config.js +14 -13
- package/emotion/es/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +1 -1
- package/emotion/es/examples/plasma_web/components/TextArea/TextArea.config.js +14 -13
- package/emotion/es/examples/plasma_web/components/TextArea/TextArea.stories.tsx +2 -1
- package/es/components/Popover/Popover.js +2 -15
- package/es/components/Popover/Popover.js.map +1 -1
- package/es/components/Tooltip/Tooltip.js +1 -1
- package/es/components/Tooltip/Tooltip.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Popover/Popover.js +2 -15
- package/styled-components/cjs/components/Tooltip/Tooltip.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Popover/Popover.stories.tsx +2 -75
- package/styled-components/cjs/examples/plasma_b2c/components/TextArea/TextArea.config.js +2 -1
- package/styled-components/cjs/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +1 -1
- package/styled-components/cjs/examples/plasma_web/components/TextArea/TextArea.config.js +2 -1
- package/styled-components/cjs/examples/plasma_web/components/TextArea/TextArea.stories.tsx +2 -1
- package/styled-components/es/components/Popover/Popover.js +2 -15
- package/styled-components/es/components/Tooltip/Tooltip.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/Popover/Popover.stories.tsx +2 -75
- package/styled-components/es/examples/plasma_b2c/components/TextArea/TextArea.config.js +2 -1
- package/styled-components/es/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +1 -1
- package/styled-components/es/examples/plasma_web/components/TextArea/TextArea.config.js +2 -1
- package/styled-components/es/examples/plasma_web/components/TextArea/TextArea.stories.tsx +2 -1
- package/types/components/Popover/Popover.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextArea/TextArea.config.d.ts +1 -0
- package/types/examples/plasma_b2c/components/TextArea/TextArea.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts +1 -0
- package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/examples/plasma_web/components/TextArea/TextArea.config.d.ts +1 -0
- package/types/examples/plasma_web/components/TextArea/TextArea.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/TextArea/TextArea.d.ts +1 -0
- package/types/examples/plasma_web/components/TextArea/TextArea.d.ts.map +1 -1
- package/cjs/components/Popover/hooks/usePopoverOffset.js +0 -45
- package/cjs/components/Popover/hooks/usePopoverOffset.js.map +0 -1
- package/emotion/cjs/components/Popover/hooks/usePopoverOffset.js +0 -48
- package/emotion/es/components/Popover/hooks/usePopoverOffset.js +0 -42
- package/es/components/Popover/hooks/usePopoverOffset.js +0 -41
- package/es/components/Popover/hooks/usePopoverOffset.js.map +0 -1
- package/styled-components/cjs/components/Popover/hooks/usePopoverOffset.js +0 -48
- package/styled-components/es/components/Popover/hooks/usePopoverOffset.js +0 -42
- package/types/components/Popover/hooks/usePopoverOffset.d.ts +0 -9
- package/types/components/Popover/hooks/usePopoverOffset.d.ts.map +0 -1
@@ -1,48 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.usePopoverOffset = void 0;
|
7
|
-
var _react = /*#__PURE__*/require("react");
|
8
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
9
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
10
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
11
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
12
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
13
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
14
|
-
var allowedPlacements = ['top-start', 'top-end', 'bottom-start', 'bottom-end', 'left-start', 'left-end', 'right-start', 'right-end'];
|
15
|
-
var usePopoverOffset = exports.usePopoverOffset = function usePopoverOffset(_ref) {
|
16
|
-
var handleRef = _ref.handleRef,
|
17
|
-
placement = _ref.placement,
|
18
|
-
offsetOuter = _ref.offsetOuter;
|
19
|
-
var _useState = (0, _react.useState)(offsetOuter),
|
20
|
-
_useState2 = _slicedToArray(_useState, 2),
|
21
|
-
offset = _useState2[0],
|
22
|
-
setOffset = _useState2[1];
|
23
|
-
(0, _react.useEffect)(function () {
|
24
|
-
var refElement = handleRef.current;
|
25
|
-
if (!refElement || !allowedPlacements.includes(placement)) {
|
26
|
-
setOffset(offsetOuter);
|
27
|
-
return;
|
28
|
-
}
|
29
|
-
var _refElement$getBoundi = refElement.getBoundingClientRect(),
|
30
|
-
width = _refElement$getBoundi.width,
|
31
|
-
height = _refElement$getBoundi.height;
|
32
|
-
var isVertical = (placement === null || placement === void 0 ? void 0 : placement.startsWith('top')) || (placement === null || placement === void 0 ? void 0 : placement.startsWith('bottom'));
|
33
|
-
var isEnd = placement === null || placement === void 0 ? void 0 : placement.endsWith('end');
|
34
|
-
var isStart = placement === null || placement === void 0 ? void 0 : placement.endsWith('start');
|
35
|
-
var offsetX = offsetOuter[0];
|
36
|
-
var offsetY = offsetOuter[1];
|
37
|
-
if (isVertical) {
|
38
|
-
if ((isStart || isEnd) && width < 28) {
|
39
|
-
offsetX = isEnd ? 17 - width / 2 + offsetOuter[0] : -17 + width / 2 - offsetOuter[0];
|
40
|
-
}
|
41
|
-
}
|
42
|
-
if (!isVertical && (isStart || isEnd) && height < 28) {
|
43
|
-
offsetX = isStart ? -19 + height / 2 : 19 - height / 2;
|
44
|
-
}
|
45
|
-
setOffset([offsetX, offsetY]);
|
46
|
-
}, [handleRef, placement, offsetOuter]);
|
47
|
-
return offset;
|
48
|
-
};
|
@@ -1,42 +0,0 @@
|
|
1
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
2
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
3
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
4
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
5
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
6
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
7
|
-
import { useEffect, useState } from 'react';
|
8
|
-
var allowedPlacements = ['top-start', 'top-end', 'bottom-start', 'bottom-end', 'left-start', 'left-end', 'right-start', 'right-end'];
|
9
|
-
export var usePopoverOffset = function usePopoverOffset(_ref) {
|
10
|
-
var handleRef = _ref.handleRef,
|
11
|
-
placement = _ref.placement,
|
12
|
-
offsetOuter = _ref.offsetOuter;
|
13
|
-
var _useState = useState(offsetOuter),
|
14
|
-
_useState2 = _slicedToArray(_useState, 2),
|
15
|
-
offset = _useState2[0],
|
16
|
-
setOffset = _useState2[1];
|
17
|
-
useEffect(function () {
|
18
|
-
var refElement = handleRef.current;
|
19
|
-
if (!refElement || !allowedPlacements.includes(placement)) {
|
20
|
-
setOffset(offsetOuter);
|
21
|
-
return;
|
22
|
-
}
|
23
|
-
var _refElement$getBoundi = refElement.getBoundingClientRect(),
|
24
|
-
width = _refElement$getBoundi.width,
|
25
|
-
height = _refElement$getBoundi.height;
|
26
|
-
var isVertical = (placement === null || placement === void 0 ? void 0 : placement.startsWith('top')) || (placement === null || placement === void 0 ? void 0 : placement.startsWith('bottom'));
|
27
|
-
var isEnd = placement === null || placement === void 0 ? void 0 : placement.endsWith('end');
|
28
|
-
var isStart = placement === null || placement === void 0 ? void 0 : placement.endsWith('start');
|
29
|
-
var offsetX = offsetOuter[0];
|
30
|
-
var offsetY = offsetOuter[1];
|
31
|
-
if (isVertical) {
|
32
|
-
if ((isStart || isEnd) && width < 28) {
|
33
|
-
offsetX = isEnd ? 17 - width / 2 + offsetOuter[0] : -17 + width / 2 - offsetOuter[0];
|
34
|
-
}
|
35
|
-
}
|
36
|
-
if (!isVertical && (isStart || isEnd) && height < 28) {
|
37
|
-
offsetX = isStart ? -19 + height / 2 : 19 - height / 2;
|
38
|
-
}
|
39
|
-
setOffset([offsetX, offsetY]);
|
40
|
-
}, [handleRef, placement, offsetOuter]);
|
41
|
-
return offset;
|
42
|
-
};
|
@@ -1,41 +0,0 @@
|
|
1
|
-
import { slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
-
import { useState, useEffect } from 'react';
|
3
|
-
|
4
|
-
var allowedPlacements = ['top-start', 'top-end', 'bottom-start', 'bottom-end', 'left-start', 'left-end', 'right-start', 'right-end'];
|
5
|
-
var usePopoverOffset = function usePopoverOffset(_ref) {
|
6
|
-
var handleRef = _ref.handleRef,
|
7
|
-
placement = _ref.placement,
|
8
|
-
offsetOuter = _ref.offsetOuter;
|
9
|
-
var _useState = useState(offsetOuter),
|
10
|
-
_useState2 = _slicedToArray(_useState, 2),
|
11
|
-
offset = _useState2[0],
|
12
|
-
setOffset = _useState2[1];
|
13
|
-
useEffect(function () {
|
14
|
-
var refElement = handleRef.current;
|
15
|
-
if (!refElement || !allowedPlacements.includes(placement)) {
|
16
|
-
setOffset(offsetOuter);
|
17
|
-
return;
|
18
|
-
}
|
19
|
-
var _refElement$getBoundi = refElement.getBoundingClientRect(),
|
20
|
-
width = _refElement$getBoundi.width,
|
21
|
-
height = _refElement$getBoundi.height;
|
22
|
-
var isVertical = (placement === null || placement === void 0 ? void 0 : placement.startsWith('top')) || (placement === null || placement === void 0 ? void 0 : placement.startsWith('bottom'));
|
23
|
-
var isEnd = placement === null || placement === void 0 ? void 0 : placement.endsWith('end');
|
24
|
-
var isStart = placement === null || placement === void 0 ? void 0 : placement.endsWith('start');
|
25
|
-
var offsetX = offsetOuter[0];
|
26
|
-
var offsetY = offsetOuter[1];
|
27
|
-
if (isVertical) {
|
28
|
-
if ((isStart || isEnd) && width < 28) {
|
29
|
-
offsetX = isEnd ? 17 - width / 2 + offsetOuter[0] : -17 + width / 2 - offsetOuter[0];
|
30
|
-
}
|
31
|
-
}
|
32
|
-
if (!isVertical && (isStart || isEnd) && height < 28) {
|
33
|
-
offsetX = isStart ? -19 + height / 2 : 19 - height / 2;
|
34
|
-
}
|
35
|
-
setOffset([offsetX, offsetY]);
|
36
|
-
}, [handleRef, placement, offsetOuter]);
|
37
|
-
return offset;
|
38
|
-
};
|
39
|
-
|
40
|
-
export { usePopoverOffset };
|
41
|
-
//# sourceMappingURL=usePopoverOffset.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"usePopoverOffset.js","sources":["../../../../src/components/Popover/hooks/usePopoverOffset.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\ntype Placement =\n | 'top-start'\n | 'top-end'\n | 'bottom-start'\n | 'bottom-end'\n | 'left-start'\n | 'left-end'\n | 'right-start'\n | 'right-end';\n\nconst allowedPlacements: Placement[] = [\n 'top-start',\n 'top-end',\n 'bottom-start',\n 'bottom-end',\n 'left-start',\n 'left-end',\n 'right-start',\n 'right-end',\n];\n\ninterface UsePopoverOffsetOptions {\n handleRef: React.RefObject<HTMLDivElement>;\n placement?: string;\n offsetOuter: [number, number];\n}\n\nexport const usePopoverOffset = ({ handleRef, placement, offsetOuter }: UsePopoverOffsetOptions): [number, number] => {\n const [offset, setOffset] = useState<[number, number]>(offsetOuter);\n\n useEffect(() => {\n const refElement = handleRef.current;\n\n if (!refElement || !allowedPlacements.includes(placement as Placement)) {\n setOffset(offsetOuter);\n return;\n }\n\n const { width, height } = refElement.getBoundingClientRect();\n\n const isVertical = placement?.startsWith('top') || placement?.startsWith('bottom');\n const isEnd = placement?.endsWith('end');\n const isStart = placement?.endsWith('start');\n\n let offsetX = offsetOuter[0];\n const offsetY = offsetOuter[1];\n\n if (isVertical) {\n if ((isStart || isEnd) && width < 28) {\n offsetX = isEnd ? 17 - width / 2 + offsetOuter[0] : -17 + width / 2 - offsetOuter[0];\n }\n }\n\n if (!isVertical && (isStart || isEnd) && height < 28) {\n offsetX = isStart ? -19 + height / 2 : 19 - height / 2;\n }\n\n setOffset([offsetX, offsetY]);\n }, [handleRef, placement, offsetOuter]);\n\n return offset;\n};\n"],"names":["allowedPlacements","usePopoverOffset","_ref","handleRef","placement","offsetOuter","_useState","useState","_useState2","_slicedToArray","offset","setOffset","useEffect","refElement","current","includes","_refElement$getBoundi","getBoundingClientRect","width","height","isVertical","startsWith","isEnd","endsWith","isStart","offsetX","offsetY"],"mappings":";;;AAYA,IAAMA,iBAA8B,GAAG,CACnC,WAAW,EACX,SAAS,EACT,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,aAAa,EACb,WAAW,CACd,CAAA;IAQYC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAAyF;AAAA,EAAA,IAAnFC,SAAS,GAAAD,IAAA,CAATC,SAAS;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,WAAW,GAAAH,IAAA,CAAXG,WAAW,CAAA;AAChE,EAAA,IAAAC,SAAA,GAA4BC,QAAQ,CAAmBF,WAAW,CAAC;IAAAG,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA5DI,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAExBI,EAAAA,SAAS,CAAC,YAAM;AACZ,IAAA,IAAMC,UAAU,GAAGV,SAAS,CAACW,OAAO,CAAA;IAEpC,IAAI,CAACD,UAAU,IAAI,CAACb,iBAAiB,CAACe,QAAQ,CAACX,SAAsB,CAAC,EAAE;MACpEO,SAAS,CAACN,WAAW,CAAC,CAAA;AACtB,MAAA,OAAA;AACJ,KAAA;AAEA,IAAA,IAAAW,qBAAA,GAA0BH,UAAU,CAACI,qBAAqB,EAAE;MAApDC,KAAK,GAAAF,qBAAA,CAALE,KAAK;MAAEC,MAAM,GAAAH,qBAAA,CAANG,MAAM,CAAA;IAErB,IAAMC,UAAU,GAAG,CAAAhB,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEiB,UAAU,CAAC,KAAK,CAAC,MAAIjB,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEiB,UAAU,CAAC,QAAQ,CAAC,CAAA,CAAA;IAClF,IAAMC,KAAK,GAAGlB,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEmB,QAAQ,CAAC,KAAK,CAAC,CAAA;IACxC,IAAMC,OAAO,GAAGpB,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEmB,QAAQ,CAAC,OAAO,CAAC,CAAA;AAE5C,IAAA,IAAIE,OAAO,GAAGpB,WAAW,CAAC,CAAC,CAAC,CAAA;AAC5B,IAAA,IAAMqB,OAAO,GAAGrB,WAAW,CAAC,CAAC,CAAC,CAAA;AAE9B,IAAA,IAAIe,UAAU,EAAE;MACZ,IAAI,CAACI,OAAO,IAAIF,KAAK,KAAKJ,KAAK,GAAG,EAAE,EAAE;QAClCO,OAAO,GAAGH,KAAK,GAAG,EAAE,GAAGJ,KAAK,GAAG,CAAC,GAAGb,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAGa,KAAK,GAAG,CAAC,GAAGb,WAAW,CAAC,CAAC,CAAC,CAAA;AACxF,OAAA;AACJ,KAAA;IAEA,IAAI,CAACe,UAAU,KAAKI,OAAO,IAAIF,KAAK,CAAC,IAAIH,MAAM,GAAG,EAAE,EAAE;AAClDM,MAAAA,OAAO,GAAGD,OAAO,GAAG,CAAC,EAAE,GAAGL,MAAM,GAAG,CAAC,GAAG,EAAE,GAAGA,MAAM,GAAG,CAAC,CAAA;AAC1D,KAAA;AAEAR,IAAAA,SAAS,CAAC,CAACc,OAAO,EAAEC,OAAO,CAAC,CAAC,CAAA;GAChC,EAAE,CAACvB,SAAS,EAAEC,SAAS,EAAEC,WAAW,CAAC,CAAC,CAAA;AAEvC,EAAA,OAAOK,MAAM,CAAA;AACjB;;;;"}
|
@@ -1,48 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.usePopoverOffset = void 0;
|
7
|
-
var _react = /*#__PURE__*/require("react");
|
8
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
9
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
10
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
11
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
12
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
13
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
14
|
-
var allowedPlacements = ['top-start', 'top-end', 'bottom-start', 'bottom-end', 'left-start', 'left-end', 'right-start', 'right-end'];
|
15
|
-
var usePopoverOffset = exports.usePopoverOffset = function usePopoverOffset(_ref) {
|
16
|
-
var handleRef = _ref.handleRef,
|
17
|
-
placement = _ref.placement,
|
18
|
-
offsetOuter = _ref.offsetOuter;
|
19
|
-
var _useState = (0, _react.useState)(offsetOuter),
|
20
|
-
_useState2 = _slicedToArray(_useState, 2),
|
21
|
-
offset = _useState2[0],
|
22
|
-
setOffset = _useState2[1];
|
23
|
-
(0, _react.useEffect)(function () {
|
24
|
-
var refElement = handleRef.current;
|
25
|
-
if (!refElement || !allowedPlacements.includes(placement)) {
|
26
|
-
setOffset(offsetOuter);
|
27
|
-
return;
|
28
|
-
}
|
29
|
-
var _refElement$getBoundi = refElement.getBoundingClientRect(),
|
30
|
-
width = _refElement$getBoundi.width,
|
31
|
-
height = _refElement$getBoundi.height;
|
32
|
-
var isVertical = (placement === null || placement === void 0 ? void 0 : placement.startsWith('top')) || (placement === null || placement === void 0 ? void 0 : placement.startsWith('bottom'));
|
33
|
-
var isEnd = placement === null || placement === void 0 ? void 0 : placement.endsWith('end');
|
34
|
-
var isStart = placement === null || placement === void 0 ? void 0 : placement.endsWith('start');
|
35
|
-
var offsetX = offsetOuter[0];
|
36
|
-
var offsetY = offsetOuter[1];
|
37
|
-
if (isVertical) {
|
38
|
-
if ((isStart || isEnd) && width < 28) {
|
39
|
-
offsetX = isEnd ? 17 - width / 2 + offsetOuter[0] : -17 + width / 2 - offsetOuter[0];
|
40
|
-
}
|
41
|
-
}
|
42
|
-
if (!isVertical && (isStart || isEnd) && height < 28) {
|
43
|
-
offsetX = isStart ? -19 + height / 2 : 19 - height / 2;
|
44
|
-
}
|
45
|
-
setOffset([offsetX, offsetY]);
|
46
|
-
}, [handleRef, placement, offsetOuter]);
|
47
|
-
return offset;
|
48
|
-
};
|
@@ -1,42 +0,0 @@
|
|
1
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
2
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
3
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
4
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
5
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
6
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
7
|
-
import { useEffect, useState } from 'react';
|
8
|
-
var allowedPlacements = ['top-start', 'top-end', 'bottom-start', 'bottom-end', 'left-start', 'left-end', 'right-start', 'right-end'];
|
9
|
-
export var usePopoverOffset = function usePopoverOffset(_ref) {
|
10
|
-
var handleRef = _ref.handleRef,
|
11
|
-
placement = _ref.placement,
|
12
|
-
offsetOuter = _ref.offsetOuter;
|
13
|
-
var _useState = useState(offsetOuter),
|
14
|
-
_useState2 = _slicedToArray(_useState, 2),
|
15
|
-
offset = _useState2[0],
|
16
|
-
setOffset = _useState2[1];
|
17
|
-
useEffect(function () {
|
18
|
-
var refElement = handleRef.current;
|
19
|
-
if (!refElement || !allowedPlacements.includes(placement)) {
|
20
|
-
setOffset(offsetOuter);
|
21
|
-
return;
|
22
|
-
}
|
23
|
-
var _refElement$getBoundi = refElement.getBoundingClientRect(),
|
24
|
-
width = _refElement$getBoundi.width,
|
25
|
-
height = _refElement$getBoundi.height;
|
26
|
-
var isVertical = (placement === null || placement === void 0 ? void 0 : placement.startsWith('top')) || (placement === null || placement === void 0 ? void 0 : placement.startsWith('bottom'));
|
27
|
-
var isEnd = placement === null || placement === void 0 ? void 0 : placement.endsWith('end');
|
28
|
-
var isStart = placement === null || placement === void 0 ? void 0 : placement.endsWith('start');
|
29
|
-
var offsetX = offsetOuter[0];
|
30
|
-
var offsetY = offsetOuter[1];
|
31
|
-
if (isVertical) {
|
32
|
-
if ((isStart || isEnd) && width < 28) {
|
33
|
-
offsetX = isEnd ? 17 - width / 2 + offsetOuter[0] : -17 + width / 2 - offsetOuter[0];
|
34
|
-
}
|
35
|
-
}
|
36
|
-
if (!isVertical && (isStart || isEnd) && height < 28) {
|
37
|
-
offsetX = isStart ? -19 + height / 2 : 19 - height / 2;
|
38
|
-
}
|
39
|
-
setOffset([offsetX, offsetY]);
|
40
|
-
}, [handleRef, placement, offsetOuter]);
|
41
|
-
return offset;
|
42
|
-
};
|
@@ -1,9 +0,0 @@
|
|
1
|
-
/// <reference types="react" />
|
2
|
-
interface UsePopoverOffsetOptions {
|
3
|
-
handleRef: React.RefObject<HTMLDivElement>;
|
4
|
-
placement?: string;
|
5
|
-
offsetOuter: [number, number];
|
6
|
-
}
|
7
|
-
export declare const usePopoverOffset: ({ handleRef, placement, offsetOuter }: UsePopoverOffsetOptions) => [number, number];
|
8
|
-
export {};
|
9
|
-
//# sourceMappingURL=usePopoverOffset.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"usePopoverOffset.d.ts","sourceRoot":"","sources":["../../../../src/components/Popover/hooks/usePopoverOffset.ts"],"names":[],"mappings":";AAuBA,UAAU,uBAAuB;IAC7B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,eAAO,MAAM,gBAAgB,0CAA2C,uBAAuB,KAAG,CAAC,MAAM,EAAE,MAAM,CAkChH,CAAC"}
|