@mirai/ui 1.0.132 → 1.0.133

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/README.md CHANGED
@@ -689,6 +689,7 @@ A modal component receiving the following props:
689
689
  - `fit:bool` if you want use fit width with the content
690
690
  - `overflow:bool` wraps all modal in a semi-transparent layer
691
691
  - `portal:bool` if you want use _portal feature_ of React API
692
+ - `preventDefault:bool` if you want stop the event tunneling (default true)
692
693
  - `title:string` shows a title for the modal
693
694
  - `visible:boolean` if true modal is shown
694
695
  - `onBack:function` executed once back button is touched
@@ -35,6 +35,7 @@ var InputOption = function InputOption(_ref) {
35
35
  onChange([_InputOption.CHECKBOX, _InputOption.SWITCH].includes(type) ? !checked : value, event);
36
36
  };
37
37
  return /*#__PURE__*/_react.default.createElement(_primitives.Pressable, _extends({}, others, {
38
+ preventDefault: false,
38
39
  onPress: handleChange,
39
40
  className: (0, _helpers.styles)(_InputOptionModule.default.inputOption, others.className)
40
41
  }), /*#__PURE__*/_react.default.createElement(Primitive, {
@@ -1 +1 @@
1
- {"version":3,"file":"InputOption.js","names":["InputOption","checked","disabled","indeterminate","label","name","required","type","CHECKBOX","value","onChange","others","Primitive","Checkbox","RADIO","Radio","Switch","handleChange","event","SWITCH","includes","styles","style","inputOption","className","ICON","CHECK","REMOVE","icon","undefined","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","func"],"sources":["../../../src/components/InputOption/InputOption.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { Checkbox, Icon, ICON, Pressable, Radio, Switch } from '../../primitives';\nimport { Label } from '../InputText/partials';\nimport { CHECKBOX, RADIO, SWITCH } from './InputOption.constants';\nimport style from './InputOption.module.css';\n\nconst InputOption = ({\n checked,\n disabled,\n indeterminate,\n label,\n name,\n required,\n type = CHECKBOX,\n value = '',\n onChange = () => {},\n ...others\n}) => {\n const Primitive = type === CHECKBOX ? Checkbox : type === RADIO ? Radio : Switch;\n\n const handleChange = (event) => {\n onChange([CHECKBOX, SWITCH].includes(type) ? !checked : value, event);\n };\n\n return (\n <Pressable {...others} onPress={handleChange} className={styles(style.inputOption, others.className)}>\n <Primitive\n checked={checked || (type === CHECKBOX && indeterminate)}\n disabled={disabled}\n name={name}\n type={type}\n value={value}\n >\n {type === CHECKBOX && (checked || indeterminate) ? (\n <Icon value={checked ? ICON.CHECK : ICON.REMOVE} className={style.icon} />\n ) : undefined}\n </Primitive>\n {label && <Label action {...{ disabled, label, required }} className={style.label} />}\n </Pressable>\n );\n};\n\nInputOption.displayName = 'Component:InputOption';\n\nInputOption.propTypes = {\n checked: PropTypes.bool,\n disabled: PropTypes.bool,\n indeterminate: PropTypes.bool,\n label: PropTypes.string,\n name: PropTypes.string.isRequired,\n required: PropTypes.bool,\n type: PropTypes.oneOf([CHECKBOX, RADIO, SWITCH]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n onChange: PropTypes.func,\n};\n\nexport { InputOption };\n"],"mappings":";;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAA6C;AAAA;AAAA;AAAA;AAAA;AAE7C,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAWX;EAAA,IAVJC,OAAO,QAAPA,OAAO;IACPC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACbC,KAAK,QAALA,KAAK;IACLC,IAAI,QAAJA,IAAI;IACJC,QAAQ,QAARA,QAAQ;IAAA,iBACRC,IAAI;IAAJA,IAAI,0BAAGC,qBAAQ;IAAA,kBACfC,KAAK;IAALA,KAAK,2BAAG,EAAE;IAAA,qBACVC,QAAQ;IAARA,QAAQ,8BAAG,YAAM,CAAC,CAAC;IAChBC,MAAM;EAET,IAAMC,SAAS,GAAGL,IAAI,KAAKC,qBAAQ,GAAGK,oBAAQ,GAAGN,IAAI,KAAKO,kBAAK,GAAGC,iBAAK,GAAGC,kBAAM;EAEhF,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,KAAK,EAAK;IAC9BR,QAAQ,CAAC,CAACF,qBAAQ,EAAEW,mBAAM,CAAC,CAACC,QAAQ,CAACb,IAAI,CAAC,GAAG,CAACN,OAAO,GAAGQ,KAAK,EAAES,KAAK,CAAC;EACvE,CAAC;EAED,oBACE,6BAAC,qBAAS,eAAKP,MAAM;IAAE,OAAO,EAAEM,YAAa;IAAC,SAAS,EAAE,IAAAI,eAAM,EAACC,0BAAK,CAACC,WAAW,EAAEZ,MAAM,CAACa,SAAS;EAAE,iBACnG,6BAAC,SAAS;IACR,OAAO,EAAEvB,OAAO,IAAKM,IAAI,KAAKC,qBAAQ,IAAIL,aAAe;IACzD,QAAQ,EAAED,QAAS;IACnB,IAAI,EAAEG,IAAK;IACX,IAAI,EAAEE,IAAK;IACX,KAAK,EAAEE;EAAM,GAEZF,IAAI,KAAKC,qBAAQ,KAAKP,OAAO,IAAIE,aAAa,CAAC,gBAC9C,6BAAC,gBAAI;IAAC,KAAK,EAAEF,OAAO,GAAGwB,gBAAI,CAACC,KAAK,GAAGD,gBAAI,CAACE,MAAO;IAAC,SAAS,EAAEL,0BAAK,CAACM;EAAK,EAAG,GACxEC,SAAS,CACH,EACXzB,KAAK,iBAAI,6BAAC,eAAK;IAAC,MAAM;IAAOF,QAAQ,EAARA,QAAQ;IAAEE,KAAK,EAALA,KAAK;IAAEE,QAAQ,EAARA,QAAQ;IAAI,SAAS,EAAEgB,0BAAK,CAAClB;EAAM,EAAG,CAC3E;AAEhB,CAAC;AAAC;AAEFJ,WAAW,CAAC8B,WAAW,GAAG,uBAAuB;AAEjD9B,WAAW,CAAC+B,SAAS,GAAG;EACtB9B,OAAO,EAAE+B,kBAAS,CAACC,IAAI;EACvB/B,QAAQ,EAAE8B,kBAAS,CAACC,IAAI;EACxB9B,aAAa,EAAE6B,kBAAS,CAACC,IAAI;EAC7B7B,KAAK,EAAE4B,kBAAS,CAACE,MAAM;EACvB7B,IAAI,EAAE2B,kBAAS,CAACE,MAAM,CAACC,UAAU;EACjC7B,QAAQ,EAAE0B,kBAAS,CAACC,IAAI;EACxB1B,IAAI,EAAEyB,kBAAS,CAACI,KAAK,CAAC,CAAC5B,qBAAQ,EAAEM,kBAAK,EAAEK,mBAAM,CAAC,CAAC;EAChDV,KAAK,EAAEuB,kBAAS,CAACK,SAAS,CAAC,CAACL,kBAAS,CAACE,MAAM,EAAEF,kBAAS,CAACC,IAAI,CAAC,CAAC;EAC9DvB,QAAQ,EAAEsB,kBAAS,CAACM;AACtB,CAAC"}
1
+ {"version":3,"file":"InputOption.js","names":["InputOption","checked","disabled","indeterminate","label","name","required","type","CHECKBOX","value","onChange","others","Primitive","Checkbox","RADIO","Radio","Switch","handleChange","event","SWITCH","includes","styles","style","inputOption","className","ICON","CHECK","REMOVE","icon","undefined","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","func"],"sources":["../../../src/components/InputOption/InputOption.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { Checkbox, Icon, ICON, Pressable, Radio, Switch } from '../../primitives';\nimport { Label } from '../InputText/partials';\nimport { CHECKBOX, RADIO, SWITCH } from './InputOption.constants';\nimport style from './InputOption.module.css';\n\nconst InputOption = ({\n checked,\n disabled,\n indeterminate,\n label,\n name,\n required,\n type = CHECKBOX,\n value = '',\n onChange = () => {},\n ...others\n}) => {\n const Primitive = type === CHECKBOX ? Checkbox : type === RADIO ? Radio : Switch;\n\n const handleChange = (event) => {\n onChange([CHECKBOX, SWITCH].includes(type) ? !checked : value, event);\n };\n\n return (\n <Pressable\n {...others}\n preventDefault={false}\n onPress={handleChange}\n className={styles(style.inputOption, others.className)}\n >\n <Primitive\n checked={checked || (type === CHECKBOX && indeterminate)}\n disabled={disabled}\n name={name}\n type={type}\n value={value}\n >\n {type === CHECKBOX && (checked || indeterminate) ? (\n <Icon value={checked ? ICON.CHECK : ICON.REMOVE} className={style.icon} />\n ) : undefined}\n </Primitive>\n {label && <Label action {...{ disabled, label, required }} className={style.label} />}\n </Pressable>\n );\n};\n\nInputOption.displayName = 'Component:InputOption';\n\nInputOption.propTypes = {\n checked: PropTypes.bool,\n disabled: PropTypes.bool,\n indeterminate: PropTypes.bool,\n label: PropTypes.string,\n name: PropTypes.string.isRequired,\n required: PropTypes.bool,\n type: PropTypes.oneOf([CHECKBOX, RADIO, SWITCH]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n onChange: PropTypes.func,\n};\n\nexport { InputOption };\n"],"mappings":";;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAA6C;AAAA;AAAA;AAAA;AAAA;AAE7C,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAWX;EAAA,IAVJC,OAAO,QAAPA,OAAO;IACPC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACbC,KAAK,QAALA,KAAK;IACLC,IAAI,QAAJA,IAAI;IACJC,QAAQ,QAARA,QAAQ;IAAA,iBACRC,IAAI;IAAJA,IAAI,0BAAGC,qBAAQ;IAAA,kBACfC,KAAK;IAALA,KAAK,2BAAG,EAAE;IAAA,qBACVC,QAAQ;IAARA,QAAQ,8BAAG,YAAM,CAAC,CAAC;IAChBC,MAAM;EAET,IAAMC,SAAS,GAAGL,IAAI,KAAKC,qBAAQ,GAAGK,oBAAQ,GAAGN,IAAI,KAAKO,kBAAK,GAAGC,iBAAK,GAAGC,kBAAM;EAEhF,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,KAAK,EAAK;IAC9BR,QAAQ,CAAC,CAACF,qBAAQ,EAAEW,mBAAM,CAAC,CAACC,QAAQ,CAACb,IAAI,CAAC,GAAG,CAACN,OAAO,GAAGQ,KAAK,EAAES,KAAK,CAAC;EACvE,CAAC;EAED,oBACE,6BAAC,qBAAS,eACJP,MAAM;IACV,cAAc,EAAE,KAAM;IACtB,OAAO,EAAEM,YAAa;IACtB,SAAS,EAAE,IAAAI,eAAM,EAACC,0BAAK,CAACC,WAAW,EAAEZ,MAAM,CAACa,SAAS;EAAE,iBAEvD,6BAAC,SAAS;IACR,OAAO,EAAEvB,OAAO,IAAKM,IAAI,KAAKC,qBAAQ,IAAIL,aAAe;IACzD,QAAQ,EAAED,QAAS;IACnB,IAAI,EAAEG,IAAK;IACX,IAAI,EAAEE,IAAK;IACX,KAAK,EAAEE;EAAM,GAEZF,IAAI,KAAKC,qBAAQ,KAAKP,OAAO,IAAIE,aAAa,CAAC,gBAC9C,6BAAC,gBAAI;IAAC,KAAK,EAAEF,OAAO,GAAGwB,gBAAI,CAACC,KAAK,GAAGD,gBAAI,CAACE,MAAO;IAAC,SAAS,EAAEL,0BAAK,CAACM;EAAK,EAAG,GACxEC,SAAS,CACH,EACXzB,KAAK,iBAAI,6BAAC,eAAK;IAAC,MAAM;IAAOF,QAAQ,EAARA,QAAQ;IAAEE,KAAK,EAALA,KAAK;IAAEE,QAAQ,EAARA,QAAQ;IAAI,SAAS,EAAEgB,0BAAK,CAAClB;EAAM,EAAG,CAC3E;AAEhB,CAAC;AAAC;AAEFJ,WAAW,CAAC8B,WAAW,GAAG,uBAAuB;AAEjD9B,WAAW,CAAC+B,SAAS,GAAG;EACtB9B,OAAO,EAAE+B,kBAAS,CAACC,IAAI;EACvB/B,QAAQ,EAAE8B,kBAAS,CAACC,IAAI;EACxB9B,aAAa,EAAE6B,kBAAS,CAACC,IAAI;EAC7B7B,KAAK,EAAE4B,kBAAS,CAACE,MAAM;EACvB7B,IAAI,EAAE2B,kBAAS,CAACE,MAAM,CAACC,UAAU;EACjC7B,QAAQ,EAAE0B,kBAAS,CAACC,IAAI;EACxB1B,IAAI,EAAEyB,kBAAS,CAACI,KAAK,CAAC,CAAC5B,qBAAQ,EAAEM,kBAAK,EAAEK,mBAAM,CAAC,CAAC;EAChDV,KAAK,EAAEuB,kBAAS,CAACK,SAAS,CAAC,CAACL,kBAAS,CAACE,MAAM,EAAEF,kBAAS,CAACC,IAAI,CAAC,CAAC;EAC9DvB,QAAQ,EAAEsB,kBAAS,CAACM;AACtB,CAAC"}
@@ -12,7 +12,7 @@ var _helpers = require("../../helpers");
12
12
  var _hooks = require("../../hooks");
13
13
  var _primitives = require("../../primitives");
14
14
  var _ModalModule = _interopRequireDefault(require("./Modal.module.css"));
15
- var _excluded = ["blur", "children", "fit", "overflow", "portal", "title", "visible", "onBack", "onClose", "onOverflow"];
15
+ var _excluded = ["blur", "children", "fit", "overflow", "portal", "preventDefault", "title", "visible", "onBack", "onClose", "onOverflow"];
16
16
  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); }
17
17
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -35,6 +35,8 @@ var Modal = function Modal(_ref) {
35
35
  overflow = _ref$overflow === void 0 ? true : _ref$overflow,
36
36
  _ref$portal = _ref.portal,
37
37
  portal = _ref$portal === void 0 ? false : _ref$portal,
38
+ _ref$preventDefault = _ref.preventDefault,
39
+ preventDefault = _ref$preventDefault === void 0 ? true : _ref$preventDefault,
38
40
  title = _ref.title,
39
41
  visible = _ref.visible,
40
42
  onBack = _ref.onBack,
@@ -70,6 +72,7 @@ var Modal = function Modal(_ref) {
70
72
  } : _reactDom.default.createPortal;
71
73
  var testId = others['data-testid'];
72
74
  return renderer( /*#__PURE__*/_react.default.createElement(_primitives.Pressable, {
75
+ preventDefault: preventDefault,
73
76
  className: (0, _helpers.styles)(_ModalModule.default.container, overflow && _ModalModule.default.overflow, overflow && blur && _ModalModule.default.blur, visible && _ModalModule.default.visible, onOverflow && _ModalModule.default.onOverflow),
74
77
  onPress: visible && overflow ? handleOverflow : undefined,
75
78
  "data-testid": testId ? "".concat(testId, "-overflow") : undefined
@@ -104,6 +107,7 @@ Modal.propTypes = {
104
107
  fit: _propTypes.default.bool,
105
108
  overflow: _propTypes.default.bool,
106
109
  portal: _propTypes.default.bool,
110
+ preventDefault: _propTypes.default.bool,
107
111
  title: _propTypes.default.string,
108
112
  visible: _propTypes.default.bool,
109
113
  onBack: _propTypes.default.func,
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","names":["Modal","blur","children","fit","overflow","portal","title","visible","onBack","onClose","onOverflow","others","useDevice","isDesktop","ref","useRef","useState","dataset","setDataset","useEffect","document","body","miraiModal","undefined","handleOverflow","event","target","current","contains","renderer","IS_JEST","jsx","ReactDOM","createPortal","testId","styles","style","container","modal","calcWidth","className","header","ICON","LEFT","icon","left","right","CLOSE","EXPAND_MORE","propTypes","PropTypes","bool","node","string","func"],"sources":["../../../src/components/Modal/Modal.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { IS_JEST, styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Icon, ICON, Pressable, Text, View } from '../../primitives';\nimport style from './Modal.module.css';\n\nconst Modal = ({\n blur = false,\n children,\n fit = false,\n overflow = true,\n portal = false,\n title,\n visible,\n onBack,\n onClose,\n onOverflow,\n ...others\n}) => {\n const { isDesktop } = useDevice();\n const ref = useRef();\n\n const [dataset, setDataset] = useState();\n\n useEffect(() => {\n if (visible && !dataset) {\n setDataset(true);\n document.body.dataset.miraiModal = true;\n }\n\n return () => {\n if (visible && dataset) {\n setDataset(undefined);\n delete document.body.dataset.miraiModal;\n }\n };\n }, [dataset, visible]);\n\n const handleOverflow = (event) => {\n const { target } = event;\n onOverflow && !ref.current?.contains(target) && onOverflow(event);\n };\n\n const renderer = IS_JEST || !portal ? (jsx) => jsx : ReactDOM.createPortal;\n\n const { ['data-testid']: testId } = others;\n\n return renderer(\n <Pressable\n className={styles(\n style.container,\n overflow && style.overflow,\n overflow && blur && style.blur,\n visible && style.visible,\n onOverflow && style.onOverflow,\n )}\n onPress={visible && overflow ? handleOverflow : undefined}\n data-testid={testId ? `${testId}-overflow` : undefined}\n >\n <View\n {...others}\n fit\n ref={ref}\n className={styles(style.modal, !fit && style.calcWidth, visible && style.visible, others.className)}\n >\n {(title || onBack || onClose) && (\n <View forceRow className={style.header}>\n {onBack && (\n <Pressable onPress={onBack} data-testid={testId ? `${testId}-button-back` : undefined}>\n <Icon value={ICON.LEFT} className={style.icon} />\n </Pressable>\n )}\n {title && (\n <Text headline className={styles(style.title, !onBack && style.left, !onClose && style.right)}>\n {title}\n </Text>\n )}\n {onClose && (\n <Pressable onPress={onClose} data-testid={testId ? `${testId}-button-close` : undefined}>\n <Icon value={isDesktop || title !== undefined ? ICON.CLOSE : ICON.EXPAND_MORE} className={style.icon} />\n </Pressable>\n )}\n </View>\n )}\n {children}\n </View>\n </Pressable>,\n document.body,\n );\n};\n\nModal.propTypes = {\n blur: PropTypes.bool,\n children: PropTypes.node,\n fit: PropTypes.bool,\n overflow: PropTypes.bool,\n portal: PropTypes.bool,\n title: PropTypes.string,\n visible: PropTypes.bool,\n onBack: PropTypes.func,\n onClose: PropTypes.func,\n onOverflow: PropTypes.func,\n};\n\nexport { Modal };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","names":["Modal","blur","children","fit","overflow","portal","preventDefault","title","visible","onBack","onClose","onOverflow","others","useDevice","isDesktop","ref","useRef","useState","dataset","setDataset","useEffect","document","body","miraiModal","undefined","handleOverflow","event","target","current","contains","renderer","IS_JEST","jsx","ReactDOM","createPortal","testId","styles","style","container","modal","calcWidth","className","header","ICON","LEFT","icon","left","right","CLOSE","EXPAND_MORE","propTypes","PropTypes","bool","node","string","func"],"sources":["../../../src/components/Modal/Modal.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { IS_JEST, styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Icon, ICON, Pressable, Text, View } from '../../primitives';\nimport style from './Modal.module.css';\n\nconst Modal = ({\n blur = false,\n children,\n fit = false,\n overflow = true,\n portal = false,\n preventDefault = true,\n title,\n visible,\n onBack,\n onClose,\n onOverflow,\n ...others\n}) => {\n const { isDesktop } = useDevice();\n const ref = useRef();\n\n const [dataset, setDataset] = useState();\n\n useEffect(() => {\n if (visible && !dataset) {\n setDataset(true);\n document.body.dataset.miraiModal = true;\n }\n\n return () => {\n if (visible && dataset) {\n setDataset(undefined);\n delete document.body.dataset.miraiModal;\n }\n };\n }, [dataset, visible]);\n\n const handleOverflow = (event) => {\n const { target } = event;\n onOverflow && !ref.current?.contains(target) && onOverflow(event);\n };\n\n const renderer = IS_JEST || !portal ? (jsx) => jsx : ReactDOM.createPortal;\n\n const { ['data-testid']: testId } = others;\n\n return renderer(\n <Pressable\n preventDefault={preventDefault}\n className={styles(\n style.container,\n overflow && style.overflow,\n overflow && blur && style.blur,\n visible && style.visible,\n onOverflow && style.onOverflow,\n )}\n onPress={visible && overflow ? handleOverflow : undefined}\n data-testid={testId ? `${testId}-overflow` : undefined}\n >\n <View\n {...others}\n fit\n ref={ref}\n className={styles(style.modal, !fit && style.calcWidth, visible && style.visible, others.className)}\n >\n {(title || onBack || onClose) && (\n <View forceRow className={style.header}>\n {onBack && (\n <Pressable onPress={onBack} data-testid={testId ? `${testId}-button-back` : undefined}>\n <Icon value={ICON.LEFT} className={style.icon} />\n </Pressable>\n )}\n {title && (\n <Text headline className={styles(style.title, !onBack && style.left, !onClose && style.right)}>\n {title}\n </Text>\n )}\n {onClose && (\n <Pressable onPress={onClose} data-testid={testId ? `${testId}-button-close` : undefined}>\n <Icon value={isDesktop || title !== undefined ? ICON.CLOSE : ICON.EXPAND_MORE} className={style.icon} />\n </Pressable>\n )}\n </View>\n )}\n {children}\n </View>\n </Pressable>,\n document.body,\n );\n};\n\nModal.propTypes = {\n blur: PropTypes.bool,\n children: PropTypes.node,\n fit: PropTypes.bool,\n overflow: PropTypes.bool,\n portal: PropTypes.bool,\n preventDefault: PropTypes.bool,\n title: PropTypes.string,\n visible: PropTypes.bool,\n onBack: PropTypes.func,\n onClose: PropTypes.func,\n onOverflow: PropTypes.func,\n};\n\nexport { Modal };\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAuC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEvC,IAAMA,KAAK,GAAG,SAARA,KAAK,OAaL;EAAA,qBAZJC,IAAI;IAAJA,IAAI,0BAAG,KAAK;IACZC,QAAQ,QAARA,QAAQ;IAAA,gBACRC,GAAG;IAAHA,GAAG,yBAAG,KAAK;IAAA,qBACXC,QAAQ;IAARA,QAAQ,8BAAG,IAAI;IAAA,mBACfC,MAAM;IAANA,MAAM,4BAAG,KAAK;IAAA,2BACdC,cAAc;IAAdA,cAAc,oCAAG,IAAI;IACrBC,KAAK,QAALA,KAAK;IACLC,OAAO,QAAPA,OAAO;IACPC,MAAM,QAANA,MAAM;IACNC,OAAO,QAAPA,OAAO;IACPC,UAAU,QAAVA,UAAU;IACPC,MAAM;EAET,iBAAsB,IAAAC,gBAAS,GAAE;IAAzBC,SAAS,cAATA,SAAS;EACjB,IAAMC,GAAG,GAAG,IAAAC,aAAM,GAAE;EAEpB,gBAA8B,IAAAC,eAAQ,GAAE;IAAA;IAAjCC,OAAO;IAAEC,UAAU;EAE1B,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAIZ,OAAO,IAAI,CAACU,OAAO,EAAE;MACvBC,UAAU,CAAC,IAAI,CAAC;MAChBE,QAAQ,CAACC,IAAI,CAACJ,OAAO,CAACK,UAAU,GAAG,IAAI;IACzC;IAEA,OAAO,YAAM;MACX,IAAIf,OAAO,IAAIU,OAAO,EAAE;QACtBC,UAAU,CAACK,SAAS,CAAC;QACrB,OAAOH,QAAQ,CAACC,IAAI,CAACJ,OAAO,CAACK,UAAU;MACzC;IACF,CAAC;EACH,CAAC,EAAE,CAACL,OAAO,EAAEV,OAAO,CAAC,CAAC;EAEtB,IAAMiB,cAAc,GAAG,SAAjBA,cAAc,CAAIC,KAAK,EAAK;IAAA;IAChC,IAAQC,MAAM,GAAKD,KAAK,CAAhBC,MAAM;IACdhB,UAAU,IAAI,kBAACI,GAAG,CAACa,OAAO,yCAAX,aAAaC,QAAQ,CAACF,MAAM,CAAC,KAAIhB,UAAU,CAACe,KAAK,CAAC;EACnE,CAAC;EAED,IAAMI,QAAQ,GAAGC,gBAAO,IAAI,CAAC1B,MAAM,GAAG,UAAC2B,GAAG;IAAA,OAAKA,GAAG;EAAA,IAAGC,iBAAQ,CAACC,YAAY;EAE1E,IAAyBC,MAAM,GAAKvB,MAAM,CAAjC,aAAa;EAEtB,OAAOkB,QAAQ,eACb,6BAAC,qBAAS;IACR,cAAc,EAAExB,cAAe;IAC/B,SAAS,EAAE,IAAA8B,eAAM,EACfC,oBAAK,CAACC,SAAS,EACflC,QAAQ,IAAIiC,oBAAK,CAACjC,QAAQ,EAC1BA,QAAQ,IAAIH,IAAI,IAAIoC,oBAAK,CAACpC,IAAI,EAC9BO,OAAO,IAAI6B,oBAAK,CAAC7B,OAAO,EACxBG,UAAU,IAAI0B,oBAAK,CAAC1B,UAAU,CAC9B;IACF,OAAO,EAAEH,OAAO,IAAIJ,QAAQ,GAAGqB,cAAc,GAAGD,SAAU;IAC1D,eAAaW,MAAM,aAAMA,MAAM,iBAAcX;EAAU,gBAEvD,6BAAC,gBAAI,eACCZ,MAAM;IACV,GAAG;IACH,GAAG,EAAEG,GAAI;IACT,SAAS,EAAE,IAAAqB,eAAM,EAACC,oBAAK,CAACE,KAAK,EAAE,CAACpC,GAAG,IAAIkC,oBAAK,CAACG,SAAS,EAAEhC,OAAO,IAAI6B,oBAAK,CAAC7B,OAAO,EAAEI,MAAM,CAAC6B,SAAS;EAAE,IAEnG,CAAClC,KAAK,IAAIE,MAAM,IAAIC,OAAO,kBAC1B,6BAAC,gBAAI;IAAC,QAAQ;IAAC,SAAS,EAAE2B,oBAAK,CAACK;EAAO,GACpCjC,MAAM,iBACL,6BAAC,qBAAS;IAAC,OAAO,EAAEA,MAAO;IAAC,eAAa0B,MAAM,aAAMA,MAAM,oBAAiBX;EAAU,gBACpF,6BAAC,gBAAI;IAAC,KAAK,EAAEmB,gBAAI,CAACC,IAAK;IAAC,SAAS,EAAEP,oBAAK,CAACQ;EAAK,EAAG,CAEpD,EACAtC,KAAK,iBACJ,6BAAC,gBAAI;IAAC,QAAQ;IAAC,SAAS,EAAE,IAAA6B,eAAM,EAACC,oBAAK,CAAC9B,KAAK,EAAE,CAACE,MAAM,IAAI4B,oBAAK,CAACS,IAAI,EAAE,CAACpC,OAAO,IAAI2B,oBAAK,CAACU,KAAK;EAAE,GAC3FxC,KAAK,CAET,EACAG,OAAO,iBACN,6BAAC,qBAAS;IAAC,OAAO,EAAEA,OAAQ;IAAC,eAAayB,MAAM,aAAMA,MAAM,qBAAkBX;EAAU,gBACtF,6BAAC,gBAAI;IAAC,KAAK,EAAEV,SAAS,IAAIP,KAAK,KAAKiB,SAAS,GAAGmB,gBAAI,CAACK,KAAK,GAAGL,gBAAI,CAACM,WAAY;IAAC,SAAS,EAAEZ,oBAAK,CAACQ;EAAK,EAAG,CAE3G,CAEJ,EACA3C,QAAQ,CACJ,CACG,EACZmB,QAAQ,CAACC,IAAI,CACd;AACH,CAAC;AAAC;AAEFtB,KAAK,CAACkD,SAAS,GAAG;EAChBjD,IAAI,EAAEkD,kBAAS,CAACC,IAAI;EACpBlD,QAAQ,EAAEiD,kBAAS,CAACE,IAAI;EACxBlD,GAAG,EAAEgD,kBAAS,CAACC,IAAI;EACnBhD,QAAQ,EAAE+C,kBAAS,CAACC,IAAI;EACxB/C,MAAM,EAAE8C,kBAAS,CAACC,IAAI;EACtB9C,cAAc,EAAE6C,kBAAS,CAACC,IAAI;EAC9B7C,KAAK,EAAE4C,kBAAS,CAACG,MAAM;EACvB9C,OAAO,EAAE2C,kBAAS,CAACC,IAAI;EACvB3C,MAAM,EAAE0C,kBAAS,CAACI,IAAI;EACtB7C,OAAO,EAAEyC,kBAAS,CAACI,IAAI;EACvB5C,UAAU,EAAEwC,kBAAS,CAACI;AACxB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/ui",
3
- "version": "1.0.132",
3
+ "version": "1.0.133",
4
4
  "repository": "git@gitlab.com:miraicorp/dev/frontend/ui.git",
5
5
  "author": "JΛVI <hello@soyjavi.com>",
6
6
  "license": "MIT",