@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.
@@ -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
- fixed = _ref.fixed,
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
- position = _useState2[0],
53
- setPosition = _useState2[1];
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":"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"}
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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/ui",
3
- "version": "1.0.224",
3
+ "version": "1.0.226",
4
4
  "repository": "git@gitlab.com:miraicorp/dev/frontend/ui.git",
5
5
  "author": "JΛVI <hello@soyjavi.com>",
6
6
  "license": "MIT",