@mirai/ui 1.0.224 → 1.0.226
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/build/components/InputPhone/InputPhone.js +1 -1
- package/build/components/InputPhone/InputPhone.js.map +1 -1
- package/build/components/InputPhone/__tests__/__snapshots__/InputPhone.test.js.snap +17 -17
- package/build/primitives/Layer/Layer.js +8 -3
- package/build/primitives/Layer/Layer.js.map +1 -1
- package/build/primitives/Layer/__tests__/__snapshots__/Layer.test.js.snap +23 -0
- package/build/primitives/Layer/helpers/index.js +11 -0
- package/build/primitives/Layer/helpers/index.js.map +1 -1
- package/build/primitives/Layer/helpers/isComponentFixed.js +32 -0
- package/build/primitives/Layer/helpers/isComponentFixed.js.map +1 -0
- package/package.json +1 -1
|
@@ -163,7 +163,7 @@ var InputPhone = function InputPhone(_ref) {
|
|
|
163
163
|
testId: testId ? "".concat(testId, "-select") : undefined
|
|
164
164
|
}))), !disabled && /*#__PURE__*/_react.default.createElement(_primitives.Icon, {
|
|
165
165
|
value: _primitives.ICON.EXPAND_MORE,
|
|
166
|
-
className: (_InputTextModule.default.icon, _InputTextModule.default.select, _InputPhoneModule.default.expand)
|
|
166
|
+
className: (0, _helpers.styles)(_InputTextModule.default.icon, _InputTextModule.default.select, _InputPhoneModule.default.expand)
|
|
167
167
|
})), /*#__PURE__*/_react.default.createElement(_primitives.View, {
|
|
168
168
|
forceRow: true,
|
|
169
169
|
className: _InputPhoneModule.default.separator
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputPhone.js","names":["InputPhone","disabled","error","hint","icon","label","labelPrefix","name","prefixes","showRequired","showState","success","propValue","value","warning","onChange","onEnter","onError","onLeave","others","useState","focus","setFocus","prefixFocus","setPrefixFocus","parseValue","setValue","useEffect","getInputPhoneErrors","handleChange","next","event","isPhone","hasPrefixes","split","undefined","prefix","phone","nextValue","replace","join","trim","handleEnter","handleLeave","length","has","stateIcon","testId","role","styles","stylePhone","container","className","style","inputBorder","content","required","input","withLabel","empty","ICON","EXPAND_MORE","select","expand","separator","left","displayName","propTypes","PropTypes","bool","string","func","isRequired","arrayOf"],"sources":["../../../src/components/InputPhone/InputPhone.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { getInputPhoneErrors } from '../../helpers';\nimport { Icon, ICON, Input, Select, View } from '../../primitives';\nimport style from '../InputText/InputText.module.css';\nimport { Hint, IconState, Label } from '../InputText/partials';\nimport { parseValue } from './helpers';\nimport stylePhone from './InputPhone.module.css';\n\nconst InputPhone = ({\n disabled,\n error,\n hint,\n icon,\n label,\n labelPrefix,\n name,\n prefixes = [],\n showRequired = false,\n showState = true,\n success,\n value: propValue,\n warning,\n onChange = () => {},\n onEnter = () => {},\n onError = () => {},\n onLeave = () => {},\n ...others\n}) => {\n const [focus, setFocus] = useState(false);\n const [prefixFocus, setPrefixFocus] = useState(false);\n const [value, setValue] = useState(parseValue(propValue, prefixes));\n\n useEffect(() => {\n setValue(parseValue(propValue, prefixes));\n }, [prefixes, propValue]);\n\n useEffect(() => {\n onError(getInputPhoneErrors({ prefixes, value }));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [prefixes, value]);\n\n const handleChange = (next, event, { isPhone = true } = {}) => {\n const [prefix = '', phone = ''] = hasPrefixes ? value?.split(' ') || [] : [undefined, value];\n let nextValue = (isPhone ? [prefix, next?.replace(/[^\\d]/g, '')] : [next, phone]).join(' ');\n if (!hasPrefixes) nextValue = nextValue.trim();\n\n setValue(nextValue);\n onChange(nextValue, event);\n // onError && onError(getInputPhoneErrors({ prefixes, value: nextValue }));\n };\n\n const handleEnter = (event, { isPhone = true } = {}) => {\n isPhone ? setFocus(true) : setPrefixFocus(true);\n onEnter(event);\n };\n\n const handleLeave = (event, { isPhone = true } = {}) => {\n isPhone ? setFocus(false) : setPrefixFocus(false);\n onLeave(event);\n };\n\n const hasPrefixes = !!prefixes?.length;\n const [prefix, phone] = hasPrefixes ? value?.split(' ') || [] : [undefined, value];\n const has = {\n icon: !!icon,\n label: !!label,\n labelPrefix: !!labelPrefix,\n prefix: prefix?.length > 0,\n phone: phone?.length > 0,\n stateIcon: showState && (error || success || warning),\n };\n const { testId } = others;\n\n return (\n <View\n role={others.role || 'input-phone'}\n className={styles(stylePhone.container, others.className)}\n style={others.style}\n >\n <View\n row\n className={styles(\n style.inputBorder,\n disabled && style.disabled,\n error && style.error,\n (focus || prefixFocus) && !error && style.focus,\n )}\n >\n {hasPrefixes && (\n <>\n <View row>\n <View className={styles(style.content)}>\n {labelPrefix && (\n <Label\n {...{\n disabled,\n error,\n focus: prefixFocus,\n label: labelPrefix,\n required: showRequired && others.required,\n value: prefix,\n }}\n />\n )}\n <Select\n {...others}\n disabled={disabled}\n name={`${name}-prefix`}\n options={prefixes}\n style={undefined}\n type={undefined}\n value={prefix || ''}\n onChange={(value, event) => handleChange(value, event, { isPhone: false })}\n onEnter={(event) => handleEnter(event, { isPhone: false })}\n onLeave={(event) => handleLeave(event, { isPhone: false })}\n className={styles(\n style.input,\n stylePhone.prefix,\n has.labelPrefix && style.withLabel,\n has.labelPrefix && !(prefixFocus || error || has.prefix) && style.empty,\n )}\n testId={testId ? `${testId}-select` : undefined}\n />\n </View>\n {!disabled && <Icon value={ICON.EXPAND_MORE} className={(style.icon, style.select, stylePhone.expand)} />}\n </View>\n <View forceRow className={stylePhone.separator}></View>\n </>\n )}\n\n <View row wide>\n {has.icon && (\n <Icon\n value={icon}\n className={styles(style.icon, style.left, disabled && style.disabled, error && style.error)}\n />\n )}\n <View wide className={style.content}>\n {label && (\n <Label {...{ disabled, error, focus, label, required: showRequired && others.required, value: phone }} />\n )}\n <Input\n {...others}\n disabled={disabled}\n maxLength={12}\n name={`${name}-phone`}\n type=\"tel\"\n value={phone || ''}\n onChange={(value, event) => handleChange(value, event)}\n onEnter={(event) => handleEnter(event)}\n onLeave={(event) => handleLeave(event)}\n className={styles(style.input, has.label && style.withLabel)}\n testId={testId ? `${testId}-input` : undefined}\n />\n </View>\n </View>\n {has.stateIcon && <IconState {...{ error, success, warning }} />}\n </View>\n {hint && <Hint {...{ disabled, error, hint }} />}\n </View>\n );\n};\n\nInputPhone.displayName = 'Component:InputPhone';\n\nInputPhone.propTypes = {\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n hint: PropTypes.string,\n icon: PropTypes.func,\n label: PropTypes.string,\n labelPrefix: PropTypes.string,\n name: PropTypes.string.isRequired,\n prefixes: PropTypes.arrayOf(PropTypes.string),\n showRequired: PropTypes.bool,\n showState: PropTypes.bool,\n success: PropTypes.bool,\n value: PropTypes.string,\n warning: PropTypes.bool,\n onChange: PropTypes.func,\n onEnter: PropTypes.func,\n onError: PropTypes.func,\n onLeave: PropTypes.func,\n};\n\nexport { InputPhone };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputPhone.js","names":["InputPhone","disabled","error","hint","icon","label","labelPrefix","name","prefixes","showRequired","showState","success","propValue","value","warning","onChange","onEnter","onError","onLeave","others","useState","focus","setFocus","prefixFocus","setPrefixFocus","parseValue","setValue","useEffect","getInputPhoneErrors","handleChange","next","event","isPhone","hasPrefixes","split","undefined","prefix","phone","nextValue","replace","join","trim","handleEnter","handleLeave","length","has","stateIcon","testId","role","styles","stylePhone","container","className","style","inputBorder","content","required","input","withLabel","empty","ICON","EXPAND_MORE","select","expand","separator","left","displayName","propTypes","PropTypes","bool","string","func","isRequired","arrayOf"],"sources":["../../../src/components/InputPhone/InputPhone.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { getInputPhoneErrors } from '../../helpers';\nimport { Icon, ICON, Input, Select, View } from '../../primitives';\nimport style from '../InputText/InputText.module.css';\nimport { Hint, IconState, Label } from '../InputText/partials';\nimport { parseValue } from './helpers';\nimport stylePhone from './InputPhone.module.css';\n\nconst InputPhone = ({\n disabled,\n error,\n hint,\n icon,\n label,\n labelPrefix,\n name,\n prefixes = [],\n showRequired = false,\n showState = true,\n success,\n value: propValue,\n warning,\n onChange = () => {},\n onEnter = () => {},\n onError = () => {},\n onLeave = () => {},\n ...others\n}) => {\n const [focus, setFocus] = useState(false);\n const [prefixFocus, setPrefixFocus] = useState(false);\n const [value, setValue] = useState(parseValue(propValue, prefixes));\n\n useEffect(() => {\n setValue(parseValue(propValue, prefixes));\n }, [prefixes, propValue]);\n\n useEffect(() => {\n onError(getInputPhoneErrors({ prefixes, value }));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [prefixes, value]);\n\n const handleChange = (next, event, { isPhone = true } = {}) => {\n const [prefix = '', phone = ''] = hasPrefixes ? value?.split(' ') || [] : [undefined, value];\n let nextValue = (isPhone ? [prefix, next?.replace(/[^\\d]/g, '')] : [next, phone]).join(' ');\n if (!hasPrefixes) nextValue = nextValue.trim();\n\n setValue(nextValue);\n onChange(nextValue, event);\n // onError && onError(getInputPhoneErrors({ prefixes, value: nextValue }));\n };\n\n const handleEnter = (event, { isPhone = true } = {}) => {\n isPhone ? setFocus(true) : setPrefixFocus(true);\n onEnter(event);\n };\n\n const handleLeave = (event, { isPhone = true } = {}) => {\n isPhone ? setFocus(false) : setPrefixFocus(false);\n onLeave(event);\n };\n\n const hasPrefixes = !!prefixes?.length;\n const [prefix, phone] = hasPrefixes ? value?.split(' ') || [] : [undefined, value];\n const has = {\n icon: !!icon,\n label: !!label,\n labelPrefix: !!labelPrefix,\n prefix: prefix?.length > 0,\n phone: phone?.length > 0,\n stateIcon: showState && (error || success || warning),\n };\n const { testId } = others;\n\n return (\n <View\n role={others.role || 'input-phone'}\n className={styles(stylePhone.container, others.className)}\n style={others.style}\n >\n <View\n row\n className={styles(\n style.inputBorder,\n disabled && style.disabled,\n error && style.error,\n (focus || prefixFocus) && !error && style.focus,\n )}\n >\n {hasPrefixes && (\n <>\n <View row>\n <View className={styles(style.content)}>\n {labelPrefix && (\n <Label\n {...{\n disabled,\n error,\n focus: prefixFocus,\n label: labelPrefix,\n required: showRequired && others.required,\n value: prefix,\n }}\n />\n )}\n <Select\n {...others}\n disabled={disabled}\n name={`${name}-prefix`}\n options={prefixes}\n style={undefined}\n type={undefined}\n value={prefix || ''}\n onChange={(value, event) => handleChange(value, event, { isPhone: false })}\n onEnter={(event) => handleEnter(event, { isPhone: false })}\n onLeave={(event) => handleLeave(event, { isPhone: false })}\n className={styles(\n style.input,\n stylePhone.prefix,\n has.labelPrefix && style.withLabel,\n has.labelPrefix && !(prefixFocus || error || has.prefix) && style.empty,\n )}\n testId={testId ? `${testId}-select` : undefined}\n />\n </View>\n {!disabled && (\n <Icon value={ICON.EXPAND_MORE} className={styles(style.icon, style.select, stylePhone.expand)} />\n )}\n </View>\n <View forceRow className={stylePhone.separator}></View>\n </>\n )}\n\n <View row wide>\n {has.icon && (\n <Icon\n value={icon}\n className={styles(style.icon, style.left, disabled && style.disabled, error && style.error)}\n />\n )}\n <View wide className={style.content}>\n {label && (\n <Label {...{ disabled, error, focus, label, required: showRequired && others.required, value: phone }} />\n )}\n <Input\n {...others}\n disabled={disabled}\n maxLength={12}\n name={`${name}-phone`}\n type=\"tel\"\n value={phone || ''}\n onChange={(value, event) => handleChange(value, event)}\n onEnter={(event) => handleEnter(event)}\n onLeave={(event) => handleLeave(event)}\n className={styles(style.input, has.label && style.withLabel)}\n testId={testId ? `${testId}-input` : undefined}\n />\n </View>\n </View>\n {has.stateIcon && <IconState {...{ error, success, warning }} />}\n </View>\n {hint && <Hint {...{ disabled, error, hint }} />}\n </View>\n );\n};\n\nInputPhone.displayName = 'Component:InputPhone';\n\nInputPhone.propTypes = {\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n hint: PropTypes.string,\n icon: PropTypes.func,\n label: PropTypes.string,\n labelPrefix: PropTypes.string,\n name: PropTypes.string.isRequired,\n prefixes: PropTypes.arrayOf(PropTypes.string),\n showRequired: PropTypes.bool,\n showState: PropTypes.bool,\n success: PropTypes.bool,\n value: PropTypes.string,\n warning: PropTypes.bool,\n onChange: PropTypes.func,\n onEnter: PropTypes.func,\n onError: PropTypes.func,\n onLeave: PropTypes.func,\n};\n\nexport { InputPhone };\n"],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ exports[`component:<InputPhone> inherit:className 1`] = `
|
|
|
36
36
|
</select>
|
|
37
37
|
</div>
|
|
38
38
|
<span
|
|
39
|
-
class="icon headline-3 expand"
|
|
39
|
+
class="icon headline-3 icon select expand"
|
|
40
40
|
>
|
|
41
41
|
<svg
|
|
42
42
|
fill="currentColor"
|
|
@@ -178,7 +178,7 @@ exports[`component:<InputPhone> prop:error 1`] = `
|
|
|
178
178
|
</select>
|
|
179
179
|
</div>
|
|
180
180
|
<span
|
|
181
|
-
class="icon headline-3 expand"
|
|
181
|
+
class="icon headline-3 icon select expand"
|
|
182
182
|
>
|
|
183
183
|
<svg
|
|
184
184
|
fill="currentColor"
|
|
@@ -280,7 +280,7 @@ exports[`component:<InputPhone> prop:hint 1`] = `
|
|
|
280
280
|
</select>
|
|
281
281
|
</div>
|
|
282
282
|
<span
|
|
283
|
-
class="icon headline-3 expand"
|
|
283
|
+
class="icon headline-3 icon select expand"
|
|
284
284
|
>
|
|
285
285
|
<svg
|
|
286
286
|
fill="currentColor"
|
|
@@ -448,7 +448,7 @@ exports[`component:<InputPhone> prop:icon & error 1`] = `
|
|
|
448
448
|
</select>
|
|
449
449
|
</div>
|
|
450
450
|
<span
|
|
451
|
-
class="icon headline-3 expand"
|
|
451
|
+
class="icon headline-3 icon select expand"
|
|
452
452
|
>
|
|
453
453
|
<svg
|
|
454
454
|
fill="currentColor"
|
|
@@ -571,7 +571,7 @@ exports[`component:<InputPhone> prop:icon 1`] = `
|
|
|
571
571
|
</select>
|
|
572
572
|
</div>
|
|
573
573
|
<span
|
|
574
|
-
class="icon headline-3 expand"
|
|
574
|
+
class="icon headline-3 icon select expand"
|
|
575
575
|
>
|
|
576
576
|
<svg
|
|
577
577
|
fill="currentColor"
|
|
@@ -673,7 +673,7 @@ exports[`component:<InputPhone> prop:label 1`] = `
|
|
|
673
673
|
</select>
|
|
674
674
|
</div>
|
|
675
675
|
<span
|
|
676
|
-
class="icon headline-3 expand"
|
|
676
|
+
class="icon headline-3 icon select expand"
|
|
677
677
|
>
|
|
678
678
|
<svg
|
|
679
679
|
fill="currentColor"
|
|
@@ -764,7 +764,7 @@ exports[`component:<InputPhone> prop:labelPrefix 1`] = `
|
|
|
764
764
|
</select>
|
|
765
765
|
</div>
|
|
766
766
|
<span
|
|
767
|
-
class="icon headline-3 expand"
|
|
767
|
+
class="icon headline-3 icon select expand"
|
|
768
768
|
>
|
|
769
769
|
<svg
|
|
770
770
|
fill="currentColor"
|
|
@@ -856,7 +856,7 @@ exports[`component:<InputPhone> prop:required & prop:showRequired (true) 1`] = `
|
|
|
856
856
|
</select>
|
|
857
857
|
</div>
|
|
858
858
|
<span
|
|
859
|
-
class="icon headline-3 expand"
|
|
859
|
+
class="icon headline-3 icon select expand"
|
|
860
860
|
>
|
|
861
861
|
<svg
|
|
862
862
|
fill="currentColor"
|
|
@@ -954,7 +954,7 @@ exports[`component:<InputPhone> prop:required 1`] = `
|
|
|
954
954
|
</select>
|
|
955
955
|
</div>
|
|
956
956
|
<span
|
|
957
|
-
class="icon headline-3 expand"
|
|
957
|
+
class="icon headline-3 icon select expand"
|
|
958
958
|
>
|
|
959
959
|
<svg
|
|
960
960
|
fill="currentColor"
|
|
@@ -1041,7 +1041,7 @@ exports[`component:<InputPhone> prop:showState (false) & error 1`] = `
|
|
|
1041
1041
|
</select>
|
|
1042
1042
|
</div>
|
|
1043
1043
|
<span
|
|
1044
|
-
class="icon headline-3 expand"
|
|
1044
|
+
class="icon headline-3 icon select expand"
|
|
1045
1045
|
>
|
|
1046
1046
|
<svg
|
|
1047
1047
|
fill="currentColor"
|
|
@@ -1143,7 +1143,7 @@ exports[`component:<InputPhone> prop:showState (false) & success 1`] = `
|
|
|
1143
1143
|
</select>
|
|
1144
1144
|
</div>
|
|
1145
1145
|
<span
|
|
1146
|
-
class="icon headline-3 expand"
|
|
1146
|
+
class="icon headline-3 icon select expand"
|
|
1147
1147
|
>
|
|
1148
1148
|
<svg
|
|
1149
1149
|
fill="currentColor"
|
|
@@ -1245,7 +1245,7 @@ exports[`component:<InputPhone> prop:showState (false) & warning 1`] = `
|
|
|
1245
1245
|
</select>
|
|
1246
1246
|
</div>
|
|
1247
1247
|
<span
|
|
1248
|
-
class="icon headline-3 expand"
|
|
1248
|
+
class="icon headline-3 icon select expand"
|
|
1249
1249
|
>
|
|
1250
1250
|
<svg
|
|
1251
1251
|
fill="currentColor"
|
|
@@ -1343,7 +1343,7 @@ exports[`component:<InputPhone> prop:success 1`] = `
|
|
|
1343
1343
|
</select>
|
|
1344
1344
|
</div>
|
|
1345
1345
|
<span
|
|
1346
|
-
class="icon headline-3 expand"
|
|
1346
|
+
class="icon headline-3 icon select expand"
|
|
1347
1347
|
>
|
|
1348
1348
|
<svg
|
|
1349
1349
|
fill="currentColor"
|
|
@@ -1445,7 +1445,7 @@ exports[`component:<InputPhone> prop:value 1`] = `
|
|
|
1445
1445
|
</select>
|
|
1446
1446
|
</div>
|
|
1447
1447
|
<span
|
|
1448
|
-
class="icon headline-3 expand"
|
|
1448
|
+
class="icon headline-3 icon select expand"
|
|
1449
1449
|
>
|
|
1450
1450
|
<svg
|
|
1451
1451
|
fill="currentColor"
|
|
@@ -1554,7 +1554,7 @@ exports[`component:<InputPhone> prop:warning 1`] = `
|
|
|
1554
1554
|
</select>
|
|
1555
1555
|
</div>
|
|
1556
1556
|
<span
|
|
1557
|
-
class="icon headline-3 expand"
|
|
1557
|
+
class="icon headline-3 icon select expand"
|
|
1558
1558
|
>
|
|
1559
1559
|
<svg
|
|
1560
1560
|
fill="currentColor"
|
|
@@ -1652,7 +1652,7 @@ exports[`component:<InputPhone> renders 1`] = `
|
|
|
1652
1652
|
</select>
|
|
1653
1653
|
</div>
|
|
1654
1654
|
<span
|
|
1655
|
-
class="icon headline-3 expand"
|
|
1655
|
+
class="icon headline-3 icon select expand"
|
|
1656
1656
|
>
|
|
1657
1657
|
<svg
|
|
1658
1658
|
fill="currentColor"
|
|
@@ -1734,7 +1734,7 @@ exports[`component:<InputPhone> testId 1`] = `
|
|
|
1734
1734
|
</select>
|
|
1735
1735
|
</div>
|
|
1736
1736
|
<span
|
|
1737
|
-
class="icon headline-3 expand"
|
|
1737
|
+
class="icon headline-3 icon select expand"
|
|
1738
1738
|
>
|
|
1739
1739
|
<svg
|
|
1740
1740
|
fill="currentColor"
|
|
@@ -33,7 +33,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
33
33
|
var Layer = function Layer(_ref) {
|
|
34
34
|
var forceBottom = _ref.bottom,
|
|
35
35
|
centered = _ref.centered,
|
|
36
|
-
|
|
36
|
+
propFixed = _ref.fixed,
|
|
37
37
|
_ref$forceRender = _ref.forceRender,
|
|
38
38
|
forceRender = _ref$forceRender === void 0 ? true : _ref$forceRender,
|
|
39
39
|
forceLeft = _ref.left,
|
|
@@ -49,8 +49,12 @@ var Layer = function Layer(_ref) {
|
|
|
49
49
|
var contentRef = (0, _react.useRef)();
|
|
50
50
|
var _useState = (0, _react.useState)(),
|
|
51
51
|
_useState2 = _slicedToArray(_useState, 2),
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
fixed = _useState2[0],
|
|
53
|
+
setFixed = _useState2[1];
|
|
54
|
+
var _useState3 = (0, _react.useState)(),
|
|
55
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
56
|
+
position = _useState4[0],
|
|
57
|
+
setPosition = _useState4[1];
|
|
54
58
|
(0, _react.useLayoutEffect)(function () {
|
|
55
59
|
var content = contentRef === null || contentRef === void 0 ? void 0 : contentRef.current;
|
|
56
60
|
if (!content || typeof ResizeObserver === 'undefined') return;
|
|
@@ -91,6 +95,7 @@ var Layer = function Layer(_ref) {
|
|
|
91
95
|
top = _getLayerPosition$top === void 0 ? 0 : _getLayerPosition$top,
|
|
92
96
|
_getLayerPosition$ori = _getLayerPosition.orientation,
|
|
93
97
|
orientation = _getLayerPosition$ori === void 0 ? {} : _getLayerPosition$ori;
|
|
98
|
+
setFixed(propFixed || (0, _helpers2.isComponentFixed)(componentEl));
|
|
94
99
|
setPosition({
|
|
95
100
|
left: "".concat(left, "px"),
|
|
96
101
|
top: "".concat(top, "px")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layer.js","names":["Layer","forceBottom","bottom","centered","fixed","forceRender","forceLeft","left","forceRight","right","forceTop","top","timestamp","visible","onPosition","others","device","useDevice","componentRef","useRef","contentRef","useState","position","setPosition","useLayoutEffect","content","current","ResizeObserver","observer","calcPosition","observe","unobserve","componentEl","firstChild","contentEl","componentLayout","getElementLayout","scrollTop","getScrollParent","contentLayout","modal","getModalParent","getLayerPosition","orientation","children","React","Children","map","child","className","contentStyle","style","createWrapper","role","testId","find","name","type","LayerContent","styles","layer","hidden","createElement","Fragment","undefined","propTypes","PropTypes","bool","node","number","func"],"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 { Primitive } from '../Primitive';\nimport { getElementLayout, getLayerPosition, getModalParent, getScrollParent } from './helpers';\nimport style from './Layer.module.css';\nimport { LayerContent } from './LayerContent';\n\nconst Layer = ({\n bottom: forceBottom,\n centered,\n fixed,\n forceRender = true,\n left: forceLeft,\n right: forceRight,\n top: forceTop,\n timestamp,\n visible,\n onPosition = () => {},\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 content = contentRef?.current;\n if (!content || typeof ResizeObserver === 'undefined') return;\n\n const observer = new ResizeObserver(calcPosition);\n observer.observe(content);\n\n return () => observer.unobserve(content);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useLayoutEffect(\n () => calcPosition(),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [centered, device, forceBottom, forceLeft, forceRight, forceTop, timestamp, visible],\n );\n\n const calcPosition = () => {\n const { current: { firstChild: componentEl } = {} } = componentRef;\n const { current: contentEl } = contentRef;\n\n if (!componentEl || !contentEl) return setPosition();\n\n const componentLayout = { ...getElementLayout(componentEl), scrollTop: getScrollParent(componentEl)?.scrollTop };\n const contentLayout = getElementLayout(contentEl);\n const modal = getModalParent(componentEl);\n const {\n left = 0,\n top = 0,\n orientation = {},\n } = getLayerPosition(componentLayout, contentLayout, device, modal, {\n centered,\n forceBottom,\n forceLeft,\n forceRight,\n forceTop,\n });\n\n setPosition({ left: `${left}px`, top: `${top}px` });\n onPosition(orientation);\n };\n\n const children = React.Children.map(others.children || [], (child) => child);\n const { className, style: contentStyle } = others;\n const createWrapper = className || contentStyle;\n\n return (\n <>\n <Primitive ref={componentRef} role={others.role || 'layer'} tag=\"span\" testId={others.testId}>\n {children.find(({ type: { name } }) => name !== LayerContent.name)}\n </Primitive>\n\n {(forceRender || visible) && (\n <Primitive\n ref={contentRef}\n role={others.role ? `${others.role}-content` : 'layer-content'}\n className={styles(style.layer, fixed && style.fixed, !visible && style.hidden)}\n style={{ ...position }}\n >\n {React.createElement(\n createWrapper ? 'div' : React.Fragment,\n createWrapper ? { className, style: contentStyle } : undefined,\n children?.find(({ type: { name } }) => name === LayerContent.name),\n )}\n </Primitive>\n )}\n </>\n );\n};\n\nLayer.propTypes = {\n bottom: PropTypes.bool,\n centered: PropTypes.bool,\n children: PropTypes.node,\n fixed: PropTypes.bool,\n forceRender: PropTypes.bool,\n left: PropTypes.bool,\n right: PropTypes.bool,\n timestamp: PropTypes.number,\n top: PropTypes.bool,\n visible: PropTypes.bool,\n onPosition: PropTypes.func,\n};\n\nexport { Layer };\n"],"mappings":";;;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAE9C,IAAMA,KAAK,GAAG,SAARA,KAAK,OAYL;EAAA,IAXIC,WAAW,QAAnBC,MAAM;IACNC,QAAQ,QAARA,QAAQ;
|
|
1
|
+
{"version":3,"file":"Layer.js","names":["Layer","forceBottom","bottom","centered","propFixed","fixed","forceRender","forceLeft","left","forceRight","right","forceTop","top","timestamp","visible","onPosition","others","device","useDevice","componentRef","useRef","contentRef","useState","setFixed","position","setPosition","useLayoutEffect","content","current","ResizeObserver","observer","calcPosition","observe","unobserve","componentEl","firstChild","contentEl","componentLayout","getElementLayout","scrollTop","getScrollParent","contentLayout","modal","getModalParent","getLayerPosition","orientation","isComponentFixed","children","React","Children","map","child","className","contentStyle","style","createWrapper","role","testId","find","name","type","LayerContent","styles","layer","hidden","createElement","Fragment","undefined","propTypes","PropTypes","bool","node","number","func"],"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 { Primitive } from '../Primitive';\nimport { getElementLayout, getLayerPosition, getModalParent, getScrollParent, isComponentFixed } from './helpers';\nimport style from './Layer.module.css';\nimport { LayerContent } from './LayerContent';\n\nconst Layer = ({\n bottom: forceBottom,\n centered,\n fixed: propFixed,\n forceRender = true,\n left: forceLeft,\n right: forceRight,\n top: forceTop,\n timestamp,\n visible,\n onPosition = () => {},\n ...others\n}) => {\n const device = useDevice();\n const componentRef = useRef();\n const contentRef = useRef();\n\n const [fixed, setFixed] = useState();\n const [position, setPosition] = useState();\n\n useLayoutEffect(() => {\n const content = contentRef?.current;\n if (!content || typeof ResizeObserver === 'undefined') return;\n\n const observer = new ResizeObserver(calcPosition);\n observer.observe(content);\n\n return () => observer.unobserve(content);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useLayoutEffect(\n () => calcPosition(),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [centered, device, forceBottom, forceLeft, forceRight, forceTop, timestamp, visible],\n );\n\n const calcPosition = () => {\n const { current: { firstChild: componentEl } = {} } = componentRef;\n const { current: contentEl } = contentRef;\n\n if (!componentEl || !contentEl) return setPosition();\n\n const componentLayout = { ...getElementLayout(componentEl), scrollTop: getScrollParent(componentEl)?.scrollTop };\n const contentLayout = getElementLayout(contentEl);\n const modal = getModalParent(componentEl);\n const {\n left = 0,\n top = 0,\n orientation = {},\n } = getLayerPosition(componentLayout, contentLayout, device, modal, {\n centered,\n forceBottom,\n forceLeft,\n forceRight,\n forceTop,\n });\n\n setFixed(propFixed || isComponentFixed(componentEl));\n setPosition({ left: `${left}px`, top: `${top}px` });\n onPosition(orientation);\n };\n\n const children = React.Children.map(others.children || [], (child) => child);\n const { className, style: contentStyle } = others;\n const createWrapper = className || contentStyle;\n\n return (\n <>\n <Primitive ref={componentRef} role={others.role || 'layer'} tag=\"span\" testId={others.testId}>\n {children.find(({ type: { name } }) => name !== LayerContent.name)}\n </Primitive>\n\n {(forceRender || visible) && (\n <Primitive\n ref={contentRef}\n role={others.role ? `${others.role}-content` : 'layer-content'}\n className={styles(style.layer, fixed && style.fixed, !visible && style.hidden)}\n style={{ ...position }}\n >\n {React.createElement(\n createWrapper ? 'div' : React.Fragment,\n createWrapper ? { className, style: contentStyle } : undefined,\n children?.find(({ type: { name } }) => name === LayerContent.name),\n )}\n </Primitive>\n )}\n </>\n );\n};\n\nLayer.propTypes = {\n bottom: PropTypes.bool,\n centered: PropTypes.bool,\n children: PropTypes.node,\n fixed: PropTypes.bool,\n forceRender: PropTypes.bool,\n left: PropTypes.bool,\n right: PropTypes.bool,\n timestamp: PropTypes.number,\n top: PropTypes.bool,\n visible: PropTypes.bool,\n onPosition: PropTypes.func,\n};\n\nexport { Layer };\n"],"mappings":"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"}
|
|
@@ -55,6 +55,29 @@ exports[`primitive:<Layer> w/ centered && visible 1`] = `
|
|
|
55
55
|
</DocumentFragment>
|
|
56
56
|
`;
|
|
57
57
|
|
|
58
|
+
exports[`primitive:<Layer> w/ child fixed 1`] = `
|
|
59
|
+
<DocumentFragment>
|
|
60
|
+
<span>
|
|
61
|
+
<button
|
|
62
|
+
class="pressable button"
|
|
63
|
+
style="position: fixed;"
|
|
64
|
+
>
|
|
65
|
+
Action
|
|
66
|
+
</button>
|
|
67
|
+
</span>
|
|
68
|
+
<div
|
|
69
|
+
class="layer fixed hidden"
|
|
70
|
+
style="left: 0px; top: 0px;"
|
|
71
|
+
>
|
|
72
|
+
<span
|
|
73
|
+
class="text paragraph"
|
|
74
|
+
>
|
|
75
|
+
Mirai
|
|
76
|
+
</span>
|
|
77
|
+
</div>
|
|
78
|
+
</DocumentFragment>
|
|
79
|
+
`;
|
|
80
|
+
|
|
58
81
|
exports[`primitive:<Layer> w/ component & <LayerContent> 1`] = `
|
|
59
82
|
<DocumentFragment>
|
|
60
83
|
<span>
|
|
@@ -47,4 +47,15 @@ Object.keys(_getScrollParent).forEach(function (key) {
|
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
49
|
});
|
|
50
|
+
var _isComponentFixed = require("./isComponentFixed");
|
|
51
|
+
Object.keys(_isComponentFixed).forEach(function (key) {
|
|
52
|
+
if (key === "default" || key === "__esModule") return;
|
|
53
|
+
if (key in exports && exports[key] === _isComponentFixed[key]) return;
|
|
54
|
+
Object.defineProperty(exports, key, {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function get() {
|
|
57
|
+
return _isComponentFixed[key];
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
});
|
|
50
61
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/primitives/Layer/helpers/index.js"],"sourcesContent":["export * from './getElementLayout';\nexport * from './getLayerPosition';\nexport * from './getModalParent';\nexport * from './getScrollParent';\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/primitives/Layer/helpers/index.js"],"sourcesContent":["export * from './getElementLayout';\nexport * from './getLayerPosition';\nexport * from './getModalParent';\nexport * from './getScrollParent';\nexport * from './isComponentFixed';\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isComponentFixed = void 0;
|
|
7
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
8
|
+
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); }
|
|
9
|
+
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; }
|
|
10
|
+
var isComponentFixed = function isComponentFixed(node) {
|
|
11
|
+
if (!node) return;
|
|
12
|
+
var getValue = function getValue(nodes) {
|
|
13
|
+
if (!(nodes !== null && nodes !== void 0 && nodes.length)) return;
|
|
14
|
+
var _iterator = _createForOfIteratorHelper(nodes),
|
|
15
|
+
_step;
|
|
16
|
+
try {
|
|
17
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
18
|
+
var _node = _step.value;
|
|
19
|
+
var _getComputedStyle = getComputedStyle(_node),
|
|
20
|
+
position = _getComputedStyle.position;
|
|
21
|
+
if (position === 'fixed' || getValue(_node.children)) return true;
|
|
22
|
+
}
|
|
23
|
+
} catch (err) {
|
|
24
|
+
_iterator.e(err);
|
|
25
|
+
} finally {
|
|
26
|
+
_iterator.f();
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
return getValue([node]);
|
|
30
|
+
};
|
|
31
|
+
exports.isComponentFixed = isComponentFixed;
|
|
32
|
+
//# sourceMappingURL=isComponentFixed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isComponentFixed.js","names":["isComponentFixed","node","getValue","nodes","length","getComputedStyle","position","children"],"sources":["../../../../src/primitives/Layer/helpers/isComponentFixed.js"],"sourcesContent":["export const isComponentFixed = (node) => {\n if (!node) return;\n\n const getValue = (nodes) => {\n if (!nodes?.length) return;\n\n for (const node of nodes) {\n const { position } = getComputedStyle(node);\n\n if (position === 'fixed' || getValue(node.children)) return true;\n }\n };\n\n return getValue([node]);\n};\n"],"mappings":";;;;;;;;;AAAO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgB,CAAIC,IAAI,EAAK;EACxC,IAAI,CAACA,IAAI,EAAE;EAEX,IAAMC,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,KAAK,EAAK;IAC1B,IAAI,EAACA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEC,MAAM,GAAE;IAAO,2CAERD,KAAK;MAAA;IAAA;MAAxB,oDAA0B;QAAA,IAAfF,KAAI;QACb,wBAAqBI,gBAAgB,CAACJ,KAAI,CAAC;UAAnCK,QAAQ,qBAARA,QAAQ;QAEhB,IAAIA,QAAQ,KAAK,OAAO,IAAIJ,QAAQ,CAACD,KAAI,CAACM,QAAQ,CAAC,EAAE,OAAO,IAAI;MAClE;IAAC;MAAA;IAAA;MAAA;IAAA;EACH,CAAC;EAED,OAAOL,QAAQ,CAAC,CAACD,IAAI,CAAC,CAAC;AACzB,CAAC;AAAC"}
|