@mirai/ui 1.0.28 → 1.0.29
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.
|
@@ -21,7 +21,7 @@ var _LayerModule = _interopRequireDefault(require("./Layer.module.css"));
|
|
|
21
21
|
|
|
22
22
|
var _LayerContent = require("./LayerContent");
|
|
23
23
|
|
|
24
|
-
var _excluded = ["centered", "forceRender", "visible"];
|
|
24
|
+
var _excluded = ["centered", "forceRender", "bottom", "left", "right", "top", "visible"];
|
|
25
25
|
|
|
26
26
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
27
|
|
|
@@ -55,6 +55,10 @@ var Layer = function Layer(_ref) {
|
|
|
55
55
|
var centered = _ref.centered,
|
|
56
56
|
_ref$forceRender = _ref.forceRender,
|
|
57
57
|
forceRender = _ref$forceRender === void 0 ? true : _ref$forceRender,
|
|
58
|
+
forceBottom = _ref.bottom,
|
|
59
|
+
forceLeft = _ref.left,
|
|
60
|
+
forceRight = _ref.right,
|
|
61
|
+
forceTop = _ref.top,
|
|
58
62
|
visible = _ref.visible,
|
|
59
63
|
others = _objectWithoutProperties(_ref, _excluded);
|
|
60
64
|
|
|
@@ -76,7 +80,13 @@ var Layer = function Layer(_ref) {
|
|
|
76
80
|
var componentLayout = (0, _helpers2.getElementLayout)(componentEl);
|
|
77
81
|
var contentLayout = (0, _helpers2.getElementLayout)(contentEl);
|
|
78
82
|
|
|
79
|
-
var _getLayerPosition = (0, _helpers2.getLayerPosition)(componentLayout, contentLayout, device,
|
|
83
|
+
var _getLayerPosition = (0, _helpers2.getLayerPosition)(componentLayout, contentLayout, device, {
|
|
84
|
+
centered: centered,
|
|
85
|
+
forceBottom: forceBottom,
|
|
86
|
+
forceLeft: forceLeft,
|
|
87
|
+
forceRight: forceRight,
|
|
88
|
+
forceTop: forceTop
|
|
89
|
+
}),
|
|
80
90
|
_getLayerPosition$lef = _getLayerPosition.left,
|
|
81
91
|
left = _getLayerPosition$lef === void 0 ? 0 : _getLayerPosition$lef,
|
|
82
92
|
_getLayerPosition$top = _getLayerPosition.top,
|
|
@@ -86,7 +96,7 @@ var Layer = function Layer(_ref) {
|
|
|
86
96
|
left: "".concat(left, "px"),
|
|
87
97
|
top: "".concat(top, "px")
|
|
88
98
|
});
|
|
89
|
-
}, [centered, device, visible]);
|
|
99
|
+
}, [centered, device, forceBottom, forceLeft, forceRight, forceTop, visible]);
|
|
90
100
|
|
|
91
101
|
var children = _react.default.Children.map(others.children || [], function (child) {
|
|
92
102
|
return child;
|
|
@@ -110,9 +120,13 @@ var Layer = function Layer(_ref) {
|
|
|
110
120
|
|
|
111
121
|
exports.Layer = Layer;
|
|
112
122
|
Layer.propTypes = {
|
|
113
|
-
|
|
114
|
-
children: _propTypes.default.node,
|
|
123
|
+
bottom: _propTypes.default.bool,
|
|
115
124
|
centered: _propTypes.default.bool,
|
|
125
|
+
children: _propTypes.default.node,
|
|
126
|
+
forceRender: _propTypes.default.bool,
|
|
127
|
+
left: _propTypes.default.bool,
|
|
128
|
+
right: _propTypes.default.bool,
|
|
129
|
+
top: _propTypes.default.bool,
|
|
116
130
|
visible: _propTypes.default.bool
|
|
117
131
|
};
|
|
118
132
|
//# sourceMappingURL=Layer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layer.js","names":["Layer","centered","forceRender","visible","others","device","componentRef","contentRef","position","setPosition","current","componentEl","firstChild","contentEl","componentLayout","contentLayout","
|
|
1
|
+
{"version":3,"file":"Layer.js","names":["Layer","centered","forceRender","forceBottom","bottom","forceLeft","left","forceRight","right","forceTop","top","visible","others","device","componentRef","contentRef","position","setPosition","current","componentEl","firstChild","contentEl","componentLayout","contentLayout","children","React","Children","map","child","find","name","type","LayerContent","style","layer","hidden","className","propTypes","PropTypes","bool","node"],"sources":["../../../src/primitives/Layer/Layer.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useLayoutEffect, useRef, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { getElementLayout, getLayerPosition } from './helpers';\nimport style from './Layer.module.css';\nimport { LayerContent } from './LayerContent';\n\nconst Layer = ({\n centered,\n forceRender = true,\n bottom: forceBottom,\n left: forceLeft,\n right: forceRight,\n top: forceTop,\n visible,\n ...others\n}) => {\n const device = useDevice();\n const componentRef = useRef();\n const contentRef = useRef();\n\n const [position, setPosition] = useState();\n\n useLayoutEffect(() => {\n const { current: { firstChild: componentEl } = {} } = componentRef;\n const { current: contentEl } = contentRef;\n\n if (!componentEl || !contentEl) return setPosition();\n\n const componentLayout = getElementLayout(componentEl);\n const contentLayout = getElementLayout(contentEl);\n const { left = 0, top = 0 } = getLayerPosition(componentLayout, contentLayout, device, {\n centered,\n forceBottom,\n forceLeft,\n forceRight,\n forceTop,\n });\n\n setPosition({ left: `${left}px`, top: `${top}px` });\n }, [centered, device, forceBottom, forceLeft, forceRight, forceTop, visible]);\n\n const children = React.Children.map(others.children || [], (child) => child);\n\n return (\n <>\n <span data-testid={others['data-testid']} ref={componentRef}>\n {children.find(({ type: { name } }) => name !== LayerContent.name)}\n </span>\n\n {(forceRender || visible) && (\n <div\n ref={contentRef}\n className={styles(style.layer, !visible && style.hidden, others.className)}\n style={{ ...others.style, ...position }}\n >\n {children?.find(({ type: { name } }) => name === LayerContent.name)}\n </div>\n )}\n </>\n );\n};\n\nLayer.propTypes = {\n bottom: PropTypes.bool,\n centered: PropTypes.bool,\n children: PropTypes.node,\n forceRender: PropTypes.bool,\n left: PropTypes.bool,\n right: PropTypes.bool,\n top: PropTypes.bool,\n visible: PropTypes.bool,\n};\n\nexport { Layer };\n"],"mappings":"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"}
|
|
@@ -9,7 +9,14 @@ var getLayerPosition = function getLayerPosition() {
|
|
|
9
9
|
var componentLayout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
10
10
|
var contentLayout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
11
11
|
var device = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
var _ref = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
|
|
14
|
+
centered = _ref.centered,
|
|
15
|
+
forceBottom = _ref.forceBottom,
|
|
16
|
+
forceLeft = _ref.forceLeft,
|
|
17
|
+
forceRight = _ref.forceRight,
|
|
18
|
+
forceTop = _ref.forceTop;
|
|
19
|
+
|
|
13
20
|
var _componentLayout$left = componentLayout.left,
|
|
14
21
|
componentLeft = _componentLayout$left === void 0 ? 0 : _componentLayout$left,
|
|
15
22
|
_componentLayout$top = componentLayout.top,
|
|
@@ -29,12 +36,19 @@ var getLayerPosition = function getLayerPosition() {
|
|
|
29
36
|
var top = componentTop + componentHeight;
|
|
30
37
|
var gapTop = componentTop;
|
|
31
38
|
var gapBottom = height - top;
|
|
32
|
-
if (gapTop > gapBottom) top = componentTop - contentHeight;
|
|
39
|
+
if (contentWidth > gapBottom && gapTop > gapBottom && !forceBottom || forceTop) top = componentTop - contentHeight;
|
|
33
40
|
var left = componentLeft;
|
|
34
41
|
var gapLeft = componentLeft + componentWidth;
|
|
35
42
|
var gapRight = width - componentLeft;
|
|
36
|
-
if (gapLeft > gapRight) left = componentLeft - contentWidth + componentWidth;
|
|
37
|
-
|
|
43
|
+
if (contentWidth > gapRight && gapLeft > gapRight && !forceLeft || forceRight) left = componentLeft - contentWidth + componentWidth;
|
|
44
|
+
|
|
45
|
+
if (centered) {
|
|
46
|
+
var gapCenter = (componentWidth + contentWidth) / 2;
|
|
47
|
+
var space = (contentWidth - componentWidth) / 2;
|
|
48
|
+
if (gapLeft > gapRight) left = componentLeft - contentWidth + componentWidth;
|
|
49
|
+
if (gapLeft > gapCenter && gapRight > gapCenter) left += space * (gapLeft > gapRight ? 1 : -1);
|
|
50
|
+
}
|
|
51
|
+
|
|
38
52
|
return {
|
|
39
53
|
left: left,
|
|
40
54
|
top: top
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLayerPosition.js","names":["getLayerPosition","componentLayout","contentLayout","device","centered","left","componentLeft","top","componentTop","width","componentWidth","height","componentHeight","contentWidth","contentHeight","gapTop","gapBottom","gapLeft","gapRight"],"sources":["../../../../src/primitives/Layer/helpers/getLayerPosition.js"],"sourcesContent":["export const getLayerPosition = (componentLayout = {}
|
|
1
|
+
{"version":3,"file":"getLayerPosition.js","names":["getLayerPosition","componentLayout","contentLayout","device","centered","forceBottom","forceLeft","forceRight","forceTop","left","componentLeft","top","componentTop","width","componentWidth","height","componentHeight","contentWidth","contentHeight","gapTop","gapBottom","gapLeft","gapRight","gapCenter","space"],"sources":["../../../../src/primitives/Layer/helpers/getLayerPosition.js"],"sourcesContent":["export const getLayerPosition = (\n componentLayout = {},\n contentLayout = {},\n device = {},\n { centered, forceBottom, forceLeft, forceRight, forceTop } = {},\n) => {\n const {\n left: componentLeft = 0,\n top: componentTop = 0,\n width: componentWidth = 0,\n height: componentHeight = 0,\n } = componentLayout;\n const { width: contentWidth = 0, height: contentHeight = 0 } = contentLayout;\n const { height = 0, width = 0 } = device;\n\n let top = componentTop + componentHeight;\n const gapTop = componentTop;\n const gapBottom = height - top;\n if ((contentWidth > gapBottom && gapTop > gapBottom && !forceBottom) || forceTop) top = componentTop - contentHeight;\n\n let left = componentLeft;\n const gapLeft = componentLeft + componentWidth;\n const gapRight = width - componentLeft;\n\n if ((contentWidth > gapRight && gapLeft > gapRight && !forceLeft) || forceRight)\n left = componentLeft - contentWidth + componentWidth;\n\n if (centered) {\n const gapCenter = (componentWidth + contentWidth) / 2;\n const space = (contentWidth - componentWidth) / 2;\n if (gapLeft > gapRight) left = componentLeft - contentWidth + componentWidth;\n if (gapLeft > gapCenter && gapRight > gapCenter) left += space * (gapLeft > gapRight ? 1 : -1);\n }\n\n return { left, top };\n};\n"],"mappings":";;;;;;;AAAO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,GAK3B;EAAA,IAJHC,eAIG,uEAJe,EAIf;EAAA,IAHHC,aAGG,uEAHa,EAGb;EAAA,IAFHC,MAEG,uEAFM,EAEN;;EAAA,+EAD0D,EAC1D;EAAA,IADDC,QACC,QADDA,QACC;EAAA,IADSC,WACT,QADSA,WACT;EAAA,IADsBC,SACtB,QADsBA,SACtB;EAAA,IADiCC,UACjC,QADiCA,UACjC;EAAA,IAD6CC,QAC7C,QAD6CA,QAC7C;;EACH,4BAKIP,eALJ,CACEQ,IADF;EAAA,IACQC,aADR,sCACwB,CADxB;EAAA,2BAKIT,eALJ,CAEEU,GAFF;EAAA,IAEOC,YAFP,qCAEsB,CAFtB;EAAA,4BAKIX,eALJ,CAGEY,KAHF;EAAA,IAGSC,cAHT,sCAG0B,CAH1B;EAAA,4BAKIb,eALJ,CAIEc,MAJF;EAAA,IAIUC,eAJV,sCAI4B,CAJ5B;EAMA,2BAA+Dd,aAA/D,CAAQW,KAAR;EAAA,IAAeI,YAAf,qCAA8B,CAA9B;EAAA,4BAA+Df,aAA/D,CAAiCa,MAAjC;EAAA,IAAyCG,aAAzC,sCAAyD,CAAzD;EACA,qBAAkCf,MAAlC,CAAQY,MAAR;EAAA,IAAQA,MAAR,+BAAiB,CAAjB;EAAA,oBAAkCZ,MAAlC,CAAoBU,KAApB;EAAA,IAAoBA,KAApB,8BAA4B,CAA5B;EAEA,IAAIF,GAAG,GAAGC,YAAY,GAAGI,eAAzB;EACA,IAAMG,MAAM,GAAGP,YAAf;EACA,IAAMQ,SAAS,GAAGL,MAAM,GAAGJ,GAA3B;EACA,IAAKM,YAAY,GAAGG,SAAf,IAA4BD,MAAM,GAAGC,SAArC,IAAkD,CAACf,WAApD,IAAoEG,QAAxE,EAAkFG,GAAG,GAAGC,YAAY,GAAGM,aAArB;EAElF,IAAIT,IAAI,GAAGC,aAAX;EACA,IAAMW,OAAO,GAAGX,aAAa,GAAGI,cAAhC;EACA,IAAMQ,QAAQ,GAAGT,KAAK,GAAGH,aAAzB;EAEA,IAAKO,YAAY,GAAGK,QAAf,IAA2BD,OAAO,GAAGC,QAArC,IAAiD,CAAChB,SAAnD,IAAiEC,UAArE,EACEE,IAAI,GAAGC,aAAa,GAAGO,YAAhB,GAA+BH,cAAtC;;EAEF,IAAIV,QAAJ,EAAc;IACZ,IAAMmB,SAAS,GAAG,CAACT,cAAc,GAAGG,YAAlB,IAAkC,CAApD;IACA,IAAMO,KAAK,GAAG,CAACP,YAAY,GAAGH,cAAhB,IAAkC,CAAhD;IACA,IAAIO,OAAO,GAAGC,QAAd,EAAwBb,IAAI,GAAGC,aAAa,GAAGO,YAAhB,GAA+BH,cAAtC;IACxB,IAAIO,OAAO,GAAGE,SAAV,IAAuBD,QAAQ,GAAGC,SAAtC,EAAiDd,IAAI,IAAIe,KAAK,IAAIH,OAAO,GAAGC,QAAV,GAAqB,CAArB,GAAyB,CAAC,CAA9B,CAAb;EAClD;;EAED,OAAO;IAAEb,IAAI,EAAJA,IAAF;IAAQE,GAAG,EAAHA;EAAR,CAAP;AACD,CAnCM"}
|