@mirai/ui 1.0.226 → 1.0.228

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
@@ -1077,11 +1077,12 @@ This component helps you to create a pure html table receiving the following pro
1077
1077
 
1078
1078
  - `dataSource:arrayOf(shape)` datasource of your model data schema
1079
1079
  - `filter:object[]` array of filter items that are applied to the table data. Each filter item represents a specific filter configuration.
1080
- - `inline:shape` specifies whether the table should be displayed inline
1080
+ - `inline:bool` specifies whether the table should be displayed inline
1081
1081
  - `schema:shape` the model data schema
1082
1082
  - `pagination:number` the number of rows you will paginate
1083
1083
  - `search:string` the query string you want use for filter the datasource
1084
1084
  - `selected:arrayOf(dataSource.row)` if you want pre-select some rows in 1st render
1085
+ - `sort:bool` specifies whether the table can be sorted or not
1085
1086
  - `store:string` if you want use storage feature for some features of your table (ex. keep the current filters).
1086
1087
  - `onPress:function` executed once press in any row
1087
1088
  - `onScroll:function` executed once scroll the table
@@ -60,16 +60,16 @@ var InputPhone = function InputPhone(_ref) {
60
60
  _useState4 = _slicedToArray(_useState3, 2),
61
61
  prefixFocus = _useState4[0],
62
62
  setPrefixFocus = _useState4[1];
63
- var _useState5 = (0, _react.useState)((0, _helpers2.parseValue)(propValue, prefixes)),
63
+ var _useState5 = (0, _react.useState)((0, _helpers2.parseValue)(propValue, (0, _helpers2.sanitizePrefixes)(prefixes))),
64
64
  _useState6 = _slicedToArray(_useState5, 2),
65
65
  value = _useState6[0],
66
66
  setValue = _useState6[1];
67
67
  (0, _react.useEffect)(function () {
68
- setValue((0, _helpers2.parseValue)(propValue, prefixes));
68
+ setValue((0, _helpers2.parseValue)(propValue, (0, _helpers2.sanitizePrefixes)(prefixes)));
69
69
  }, [prefixes, propValue]);
70
70
  (0, _react.useEffect)(function () {
71
71
  onError((0, _helpers.getInputPhoneErrors)({
72
- prefixes: prefixes,
72
+ prefixes: (0, _helpers2.sanitizePrefixes)(prefixes),
73
73
  value: value
74
74
  }));
75
75
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -137,10 +137,13 @@ var InputPhone = function InputPhone(_ref) {
137
137
  label: labelPrefix,
138
138
  required: showRequired && others.required,
139
139
  value: prefix
140
- }), /*#__PURE__*/_react.default.createElement(_primitives.Select, _extends({}, others, {
140
+ }), prefix && /*#__PURE__*/_react.default.createElement(_primitives.Text, {
141
+ className: _InputPhoneModule.default.prefixValue
142
+ }, prefix), /*#__PURE__*/_react.default.createElement(_primitives.Select, _extends({}, others, {
141
143
  disabled: disabled,
142
144
  name: "".concat(name, "-prefix"),
143
145
  options: prefixes,
146
+ values: (0, _helpers2.sanitizePrefixes)(prefixes),
144
147
  style: undefined,
145
148
  type: undefined,
146
149
  value: prefix || '',
@@ -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 && (\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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"}
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","sanitizePrefixes","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","prefixValue","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, Text, View } from '../../primitives';\nimport style from '../InputText/InputText.module.css';\nimport { Hint, IconState, Label } from '../InputText/partials';\nimport { parseValue, sanitizePrefixes } 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, sanitizePrefixes(prefixes)));\n\n useEffect(() => {\n setValue(parseValue(propValue, sanitizePrefixes(prefixes)));\n }, [prefixes, propValue]);\n\n useEffect(() => {\n onError(getInputPhoneErrors({ prefixes: sanitizePrefixes(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 {prefix && <Text className={stylePhone.prefixValue}>{prefix}</Text>}\n <Select\n {...others}\n disabled={disabled}\n name={`${name}-prefix`}\n options={prefixes}\n values={sanitizePrefixes(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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"}
@@ -10,6 +10,24 @@
10
10
  .prefix {
11
11
  padding-right: 0;
12
12
  width: calc(var(--mirai-ui-space-XXL) + var(--mirai-ui-space-XS));
13
+ overflow: hidden;
14
+ text-overflow: ellipsis;
15
+ }
16
+
17
+ .prefixValue {
18
+ background-color: var(--mirai-ui-base);
19
+ bottom: var(--mirai-ui-input-text-padding-y);
20
+ font-family: var(--mirai-ui-input-font);
21
+ font-size: var(--mirai-ui-input-font-size);
22
+ font-weight: inherit;
23
+ left: calc(var(--mirai-ui-input-text-padding-x) / 2);
24
+ pointer-events: none;
25
+ position: absolute;
26
+ width: 100%;
27
+
28
+ appearance: none;
29
+ -webkit-appearance: none;
30
+ -moz-appearance: none;
13
31
  }
14
32
 
15
33
  .separator {
@@ -90,7 +90,7 @@ Story.args = {
90
90
  label: 'Phone Number',
91
91
  labelPrefix: 'Code',
92
92
  name: 'name',
93
- prefixes: ['+34', '+44', '+001', '+999', '+39', '+56'],
93
+ prefixes: ['+1 (United States)', '+34 (Spain)', '+44', '+001 (United States)', '+999', '+39', '+56'],
94
94
  required: true,
95
95
  showRequired: false,
96
96
  showState: true,
@@ -1 +1 @@
1
- {"version":3,"file":"InputPhone.stories.js","names":["title","Story","propError","error","propValue","value","props","useState","setValue","setError","handleChange","next","others","console","log","handleEnter","handleError","handleLeave","ICON","icon","storyName","args","disabled","hint","undefined","label","labelPrefix","name","prefixes","required","showRequired","showState","success","warning","testId","style","argTypes","options","Object","keys","control","type","defaultValue"],"sources":["../../../src/components/InputPhone/InputPhone.stories.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport { ICON } from '../../primitives';\nimport { InputPhone } from './InputPhone';\nexport default { title: 'Components' };\n\nexport const Story = ({ error: propError, value: propValue, ...props }) => {\n const [value, setValue] = useState(propValue);\n const [error, setError] = useState(propError);\n\n const handleChange = (next, ...others) => {\n setValue(next);\n console.log('<InputPhone>::onChange', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<InputSelect>::onEnter', ...others);\n\n const handleError = (error, ...others) => {\n setError(error, ...others);\n console.log('<InputSelect>::onError', error, ...others);\n };\n\n const handleLeave = (...others) => console.log('<InputSelect>::onLeave', ...others);\n\n return (\n <InputPhone\n {...props}\n error={error}\n icon={ICON[props.icon]}\n value={value}\n onChange={handleChange}\n onEnter={handleEnter}\n onError={handleError}\n onLeave={handleLeave}\n />\n );\n};\n\nStory.storyName = 'InputPhone';\n\nStory.args = {\n disabled: false,\n error: false,\n hint: 'hint',\n icon: undefined,\n label: 'Phone Number',\n labelPrefix: 'Code',\n name: 'name',\n prefixes: ['+34', '+44', '+001', '+999', '+39', '+56'],\n required: true,\n showRequired: false,\n showState: true,\n success: false,\n value: '+34 615702323',\n warning: false,\n // inherited properties\n testId: 'test-story',\n style: {},\n};\n\nStory.argTypes = {\n icon: {\n options: [undefined, ...Object.keys(ICON)],\n control: { type: 'select' },\n defaultValue: undefined,\n },\n};\n"],"mappings":";;;;;;;AAAA;AAEA;AACA;AAA0C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAC3B;EAAEA,KAAK,EAAE;AAAa,CAAC;AAAA;AAE/B,IAAMC,KAAK,GAAG,SAARA,KAAK,OAAyD;EAAA,IAA5CC,SAAS,QAAhBC,KAAK;IAAoBC,SAAS,QAAhBC,KAAK;IAAgBC,KAAK;EAClE,gBAA0B,IAAAC,eAAQ,EAACH,SAAS,CAAC;IAAA;IAAtCC,KAAK;IAAEG,QAAQ;EACtB,iBAA0B,IAAAD,eAAQ,EAACL,SAAS,CAAC;IAAA;IAAtCC,KAAK;IAAEM,QAAQ;EAEtB,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,IAAI,EAAgB;IAAA;IACxCH,QAAQ,CAACG,IAAI,CAAC;IAAC,kCADcC,MAAM;MAANA,MAAM;IAAA;IAEnC,YAAAC,OAAO,EAACC,GAAG,kBAAC,wBAAwB,EAAEH,IAAI,SAAKC,MAAM,EAAC;EACxD,CAAC;EAED,IAAMG,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOH,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,wBAAwB,SAAKF,MAAM,EAAC;EAAA;EAEnF,IAAMI,WAAW,GAAG,SAAdA,WAAW,CAAIb,KAAK,EAAgB;IAAA;IAAA,mCAAXS,MAAM;MAANA,MAAM;IAAA;IACnCH,QAAQ,gBAACN,KAAK,SAAKS,MAAM,EAAC;IAC1B,aAAAC,OAAO,EAACC,GAAG,mBAAC,wBAAwB,EAAEX,KAAK,SAAKS,MAAM,EAAC;EACzD,CAAC;EAED,IAAMK,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOL,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,wBAAwB,SAAKF,MAAM,EAAC;EAAA;EAEnF,oBACE,6BAAC,sBAAU,eACLN,KAAK;IACT,KAAK,EAAEH,KAAM;IACb,IAAI,EAAEe,gBAAI,CAACZ,KAAK,CAACa,IAAI,CAAE;IACvB,KAAK,EAAEd,KAAM;IACb,QAAQ,EAAEK,YAAa;IACvB,OAAO,EAAEK,WAAY;IACrB,OAAO,EAAEC,WAAY;IACrB,OAAO,EAAEC;EAAY,GACrB;AAEN,CAAC;AAAC;AAEFhB,KAAK,CAACmB,SAAS,GAAG,YAAY;AAE9BnB,KAAK,CAACoB,IAAI,GAAG;EACXC,QAAQ,EAAE,KAAK;EACfnB,KAAK,EAAE,KAAK;EACZoB,IAAI,EAAE,MAAM;EACZJ,IAAI,EAAEK,SAAS;EACfC,KAAK,EAAE,cAAc;EACrBC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;EACtDC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,OAAO,EAAE,KAAK;EACd3B,KAAK,EAAE,eAAe;EACtB4B,OAAO,EAAE,KAAK;EACd;EACAC,MAAM,EAAE,YAAY;EACpBC,KAAK,EAAE,CAAC;AACV,CAAC;AAEDlC,KAAK,CAACmC,QAAQ,GAAG;EACfjB,IAAI,EAAE;IACJkB,OAAO,GAAGb,SAAS,4BAAKc,MAAM,CAACC,IAAI,CAACrB,gBAAI,CAAC,EAAC;IAC1CsB,OAAO,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC;IAC3BC,YAAY,EAAElB;EAChB;AACF,CAAC"}
1
+ {"version":3,"file":"InputPhone.stories.js","names":["title","Story","propError","error","propValue","value","props","useState","setValue","setError","handleChange","next","others","console","log","handleEnter","handleError","handleLeave","ICON","icon","storyName","args","disabled","hint","undefined","label","labelPrefix","name","prefixes","required","showRequired","showState","success","warning","testId","style","argTypes","options","Object","keys","control","type","defaultValue"],"sources":["../../../src/components/InputPhone/InputPhone.stories.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport { ICON } from '../../primitives';\nimport { InputPhone } from './InputPhone';\nexport default { title: 'Components' };\n\nexport const Story = ({ error: propError, value: propValue, ...props }) => {\n const [value, setValue] = useState(propValue);\n const [error, setError] = useState(propError);\n\n const handleChange = (next, ...others) => {\n setValue(next);\n console.log('<InputPhone>::onChange', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<InputSelect>::onEnter', ...others);\n\n const handleError = (error, ...others) => {\n setError(error, ...others);\n console.log('<InputSelect>::onError', error, ...others);\n };\n\n const handleLeave = (...others) => console.log('<InputSelect>::onLeave', ...others);\n\n return (\n <InputPhone\n {...props}\n error={error}\n icon={ICON[props.icon]}\n value={value}\n onChange={handleChange}\n onEnter={handleEnter}\n onError={handleError}\n onLeave={handleLeave}\n />\n );\n};\n\nStory.storyName = 'InputPhone';\n\nStory.args = {\n disabled: false,\n error: false,\n hint: 'hint',\n icon: undefined,\n label: 'Phone Number',\n labelPrefix: 'Code',\n name: 'name',\n prefixes: ['+1 (United States)', '+34 (Spain)', '+44', '+001 (United States)', '+999', '+39', '+56'],\n required: true,\n showRequired: false,\n showState: true,\n success: false,\n value: '+34 615702323',\n warning: false,\n // inherited properties\n testId: 'test-story',\n style: {},\n};\n\nStory.argTypes = {\n icon: {\n options: [undefined, ...Object.keys(ICON)],\n control: { type: 'select' },\n defaultValue: undefined,\n },\n};\n"],"mappings":";;;;;;;AAAA;AAEA;AACA;AAA0C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAC3B;EAAEA,KAAK,EAAE;AAAa,CAAC;AAAA;AAE/B,IAAMC,KAAK,GAAG,SAARA,KAAK,OAAyD;EAAA,IAA5CC,SAAS,QAAhBC,KAAK;IAAoBC,SAAS,QAAhBC,KAAK;IAAgBC,KAAK;EAClE,gBAA0B,IAAAC,eAAQ,EAACH,SAAS,CAAC;IAAA;IAAtCC,KAAK;IAAEG,QAAQ;EACtB,iBAA0B,IAAAD,eAAQ,EAACL,SAAS,CAAC;IAAA;IAAtCC,KAAK;IAAEM,QAAQ;EAEtB,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,IAAI,EAAgB;IAAA;IACxCH,QAAQ,CAACG,IAAI,CAAC;IAAC,kCADcC,MAAM;MAANA,MAAM;IAAA;IAEnC,YAAAC,OAAO,EAACC,GAAG,kBAAC,wBAAwB,EAAEH,IAAI,SAAKC,MAAM,EAAC;EACxD,CAAC;EAED,IAAMG,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOH,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,wBAAwB,SAAKF,MAAM,EAAC;EAAA;EAEnF,IAAMI,WAAW,GAAG,SAAdA,WAAW,CAAIb,KAAK,EAAgB;IAAA;IAAA,mCAAXS,MAAM;MAANA,MAAM;IAAA;IACnCH,QAAQ,gBAACN,KAAK,SAAKS,MAAM,EAAC;IAC1B,aAAAC,OAAO,EAACC,GAAG,mBAAC,wBAAwB,EAAEX,KAAK,SAAKS,MAAM,EAAC;EACzD,CAAC;EAED,IAAMK,WAAW,GAAG,SAAdA,WAAW;IAAA;IAAA,mCAAOL,MAAM;MAANA,MAAM;IAAA;IAAA,OAAK,aAAAC,OAAO,EAACC,GAAG,mBAAC,wBAAwB,SAAKF,MAAM,EAAC;EAAA;EAEnF,oBACE,6BAAC,sBAAU,eACLN,KAAK;IACT,KAAK,EAAEH,KAAM;IACb,IAAI,EAAEe,gBAAI,CAACZ,KAAK,CAACa,IAAI,CAAE;IACvB,KAAK,EAAEd,KAAM;IACb,QAAQ,EAAEK,YAAa;IACvB,OAAO,EAAEK,WAAY;IACrB,OAAO,EAAEC,WAAY;IACrB,OAAO,EAAEC;EAAY,GACrB;AAEN,CAAC;AAAC;AAEFhB,KAAK,CAACmB,SAAS,GAAG,YAAY;AAE9BnB,KAAK,CAACoB,IAAI,GAAG;EACXC,QAAQ,EAAE,KAAK;EACfnB,KAAK,EAAE,KAAK;EACZoB,IAAI,EAAE,MAAM;EACZJ,IAAI,EAAEK,SAAS;EACfC,KAAK,EAAE,cAAc;EACrBC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,CAAC,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;EACpGC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,OAAO,EAAE,KAAK;EACd3B,KAAK,EAAE,eAAe;EACtB4B,OAAO,EAAE,KAAK;EACd;EACAC,MAAM,EAAE,YAAY;EACpBC,KAAK,EAAE,CAAC;AACV,CAAC;AAEDlC,KAAK,CAACmC,QAAQ,GAAG;EACfjB,IAAI,EAAE;IACJkB,OAAO,GAAGb,SAAS,4BAAKc,MAAM,CAACC,IAAI,CAACrB,gBAAI,CAAC,EAAC;IAC1CsB,OAAO,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC;IAC3BC,YAAY,EAAElB;EAChB;AACF,CAAC"}
@@ -1423,6 +1423,11 @@ exports[`component:<InputPhone> prop:value 1`] = `
1423
1423
  <div
1424
1424
  class="view content"
1425
1425
  >
1426
+ <span
1427
+ class="text paragraph prefixValue"
1428
+ >
1429
+ +44
1430
+ </span>
1426
1431
  <select
1427
1432
  class="select input prefix"
1428
1433
  name="name-prefix"
@@ -14,4 +14,15 @@ Object.keys(_parseValue).forEach(function (key) {
14
14
  }
15
15
  });
16
16
  });
17
+ var _sanitizePrefixes = require("./sanitizePrefixes");
18
+ Object.keys(_sanitizePrefixes).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _sanitizePrefixes[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _sanitizePrefixes[key];
25
+ }
26
+ });
27
+ });
17
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/InputPhone/helpers/index.js"],"sourcesContent":["export * from './parseValue';\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/InputPhone/helpers/index.js"],"sourcesContent":["export * from './parseValue';\nexport * from './sanitizePrefixes';\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.sanitizePrefixes = void 0;
7
+ var sanitizePrefixes = function sanitizePrefixes() {
8
+ var prefixes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
9
+ return prefixes.length ? prefixes.map(function () {
10
+ var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
11
+ return prefix.split(' ')[0];
12
+ }) : undefined;
13
+ };
14
+ exports.sanitizePrefixes = sanitizePrefixes;
15
+ //# sourceMappingURL=sanitizePrefixes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitizePrefixes.js","names":["sanitizePrefixes","prefixes","length","map","prefix","split","undefined"],"sources":["../../../../src/components/InputPhone/helpers/sanitizePrefixes.js"],"sourcesContent":["export const sanitizePrefixes = (prefixes = []) =>\n prefixes.length ? prefixes.map((prefix = '') => prefix.split(' ')[0]) : undefined;\n"],"mappings":";;;;;;AAAO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAgB;EAAA,IAAIC,QAAQ,uEAAG,EAAE;EAAA,OAC5CA,QAAQ,CAACC,MAAM,GAAGD,QAAQ,CAACE,GAAG,CAAC;IAAA,IAACC,MAAM,uEAAG,EAAE;IAAA,OAAKA,MAAM,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAAA,EAAC,GAAGC,SAAS;AAAA;AAAC"}
@@ -64,7 +64,7 @@ var Slider = function Slider(_ref) {
64
64
  _useState2 = _slicedToArray(_useState, 2),
65
65
  focus = _useState2[0],
66
66
  setFocus = _useState2[1];
67
- var _useState3 = (0, _react.useState)(propFullScreen),
67
+ var _useState3 = (0, _react.useState)(false),
68
68
  _useState4 = _slicedToArray(_useState3, 2),
69
69
  fullScreen = _useState4[0],
70
70
  setFullScreen = _useState4[1];
@@ -133,9 +133,9 @@ var Slider = function Slider(_ref) {
133
133
  className: _SliderModule.default.item
134
134
  }, /*#__PURE__*/_react.default.createElement(_primitives.View, {
135
135
  role: "image",
136
- onClick: function onClick() {
136
+ onClick: propFullScreen ? function () {
137
137
  return setFullScreen(!fullScreen);
138
- },
138
+ } : undefined,
139
139
  className: _SliderModule.default.image,
140
140
  style: {
141
141
  backgroundImage: fullScreen || imageIndex >= index - _Slider.PRELOAD_IMAGES && imageIndex <= index + _Slider.PRELOAD_IMAGES ? "url(".concat(image, ")") : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","names":["interval","timeout","Slider","auto","captions","fullScreen","propFullScreen","height","propHeight","images","index","propIndex","thumbnails","width","propWidth","onChange","onFullScreen","others","useDevice","screenHeight","isDesktop","isLandscape","screenWidth","useState","focus","setFocus","setFullScreen","setIndex","useEffect","setInterval","length","clearInterval","handleScroll","x","clearTimeout","setTimeout","Math","round","getMotionExpand","undefined","styles","style","container","className","button","hide","back","ICON","LEFT","floor","scrollView","map","image","imageIndex","item","backgroundImage","PRELOAD_IMAGES","caption","text","forward","RIGHT","thumbnail","active","displayName","propTypes","PropTypes","bool","arrayOf","string","number","isRequired","func"],"sources":["../../../src/components/Slider/Slider.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Icon, ICON, ScrollView, Pressable, Text, View } from '../../primitives';\nimport { getMotionExpand } from './helpers';\nimport { PRELOAD_IMAGES } from './Slider.constants';\nimport style from './Slider.module.css';\n\nlet interval;\nlet timeout;\n\nconst Slider = ({\n auto = false,\n captions = [],\n fullScreen: propFullScreen = false,\n height: propHeight = 240,\n images = [],\n index: propIndex = 0,\n thumbnails = [],\n width: propWidth = 320,\n onChange = () => {},\n onFullScreen = () => {},\n ...others\n}) => {\n const { height: screenHeight, isDesktop, isLandscape, width: screenWidth } = useDevice();\n\n const [focus, setFocus] = useState(false);\n const [fullScreen, setFullScreen] = useState(propFullScreen);\n const [index, setIndex] = useState(propIndex);\n\n useEffect(() => {\n if (auto) interval = setInterval(() => setIndex(index < images.length - 1 ? index + 1 : 0), 2000);\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [auto, index]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => onChange(index), [index]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => onFullScreen(fullScreen), [fullScreen]);\n\n const height = fullScreen ? screenHeight * (isLandscape ? 0.9 : 0.4) : propHeight;\n\n const width = fullScreen ? screenWidth * (isLandscape ? 0.85 : 0.9) : propWidth;\n\n const handleScroll = ({ x } = {}) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n setIndex(x < width ? 0 : Math.round(x / width));\n }, getMotionExpand());\n };\n\n return (\n <View\n {...others}\n role=\"slider\"\n onMouseEnter={isDesktop ? () => setFocus(true) : undefined}\n onMouseLeave={isDesktop ? () => setFocus(false) : undefined}\n className={styles(style.container, fullScreen && style.fullScreen, others.className)}\n style={{ ...(!fullScreen ? others.style : undefined), width: fullScreen ? screenWidth : width }}\n >\n {!fullScreen && (\n <Pressable\n onPress={() => setIndex(index - 1)}\n className={styles(style.button, (index <= 0 || (isDesktop && !focus)) && style.hide, style.back)}\n >\n <Icon value={ICON.LEFT} />\n </Pressable>\n )}\n\n <ScrollView\n horizontal\n scrollTo={index * Math.floor(width)}\n snap\n width={width}\n onScroll={handleScroll}\n className={style.scrollView}\n >\n {images.map((image, imageIndex) => (\n <View key={imageIndex} className={style.item}>\n <View\n role=\"image\"\n onClick={() => setFullScreen(!fullScreen)}\n className={style.image}\n style={{\n backgroundImage:\n fullScreen || (imageIndex >= index - PRELOAD_IMAGES && imageIndex <= index + PRELOAD_IMAGES)\n ? `url(${image})`\n : undefined,\n height,\n width,\n }}\n />\n {captions[imageIndex] && (\n <View className={style.caption}>\n <Text bold small className={style.text}>\n {captions[imageIndex]}\n </Text>\n </View>\n )}\n </View>\n ))}\n </ScrollView>\n\n {!fullScreen && (\n <Pressable\n onPress={() => setIndex(index + 1)}\n className={styles(\n style.button,\n (index >= images.length - 1 || (isDesktop && !focus)) && style.hide && style.hide,\n style.forward,\n )}\n >\n <Icon value={ICON.RIGHT} />\n </Pressable>\n )}\n\n {fullScreen && (\n <ScrollView horizontal snap className={style.thumbnails}>\n {images.map((image, imageIndex) => (\n <Pressable\n key={imageIndex}\n onPress={() => setIndex(imageIndex)}\n className={styles(style.thumbnail, index === imageIndex && style.active)}\n style={{ backgroundImage: `url(${thumbnails[imageIndex] || image})` }}\n />\n ))}\n </ScrollView>\n )}\n </View>\n );\n};\n\nSlider.displayName = 'Component:Slider';\n\nSlider.propTypes = {\n auto: PropTypes.bool,\n captions: PropTypes.arrayOf(PropTypes.string),\n fullScreen: PropTypes.bool,\n height: PropTypes.number.isRequired,\n images: PropTypes.arrayOf(PropTypes.string).isRequired,\n index: PropTypes.number,\n thumbnails: PropTypes.arrayOf(PropTypes.string),\n width: PropTypes.number.isRequired,\n onChange: PropTypes.func,\n onFullScreen: PropTypes.func,\n};\n\nexport { Slider };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.js","names":["interval","timeout","Slider","auto","captions","fullScreen","propFullScreen","height","propHeight","images","index","propIndex","thumbnails","width","propWidth","onChange","onFullScreen","others","useDevice","screenHeight","isDesktop","isLandscape","screenWidth","useState","focus","setFocus","setFullScreen","setIndex","useEffect","setInterval","length","clearInterval","handleScroll","x","clearTimeout","setTimeout","Math","round","getMotionExpand","undefined","styles","style","container","className","button","hide","back","ICON","LEFT","floor","scrollView","map","image","imageIndex","item","backgroundImage","PRELOAD_IMAGES","caption","text","forward","RIGHT","thumbnail","active","displayName","propTypes","PropTypes","bool","arrayOf","string","number","isRequired","func"],"sources":["../../../src/components/Slider/Slider.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Icon, ICON, ScrollView, Pressable, Text, View } from '../../primitives';\nimport { getMotionExpand } from './helpers';\nimport { PRELOAD_IMAGES } from './Slider.constants';\nimport style from './Slider.module.css';\n\nlet interval;\nlet timeout;\n\nconst Slider = ({\n auto = false,\n captions = [],\n fullScreen: propFullScreen = false,\n height: propHeight = 240,\n images = [],\n index: propIndex = 0,\n thumbnails = [],\n width: propWidth = 320,\n onChange = () => {},\n onFullScreen = () => {},\n ...others\n}) => {\n const { height: screenHeight, isDesktop, isLandscape, width: screenWidth } = useDevice();\n\n const [focus, setFocus] = useState(false);\n const [fullScreen, setFullScreen] = useState(false);\n const [index, setIndex] = useState(propIndex);\n\n useEffect(() => {\n if (auto) interval = setInterval(() => setIndex(index < images.length - 1 ? index + 1 : 0), 2000);\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [auto, index]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => onChange(index), [index]);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => onFullScreen(fullScreen), [fullScreen]);\n\n const height = fullScreen ? screenHeight * (isLandscape ? 0.9 : 0.4) : propHeight;\n\n const width = fullScreen ? screenWidth * (isLandscape ? 0.85 : 0.9) : propWidth;\n\n const handleScroll = ({ x } = {}) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n setIndex(x < width ? 0 : Math.round(x / width));\n }, getMotionExpand());\n };\n\n return (\n <View\n {...others}\n role=\"slider\"\n onMouseEnter={isDesktop ? () => setFocus(true) : undefined}\n onMouseLeave={isDesktop ? () => setFocus(false) : undefined}\n className={styles(style.container, fullScreen && style.fullScreen, others.className)}\n style={{ ...(!fullScreen ? others.style : undefined), width: fullScreen ? screenWidth : width }}\n >\n {!fullScreen && (\n <Pressable\n onPress={() => setIndex(index - 1)}\n className={styles(style.button, (index <= 0 || (isDesktop && !focus)) && style.hide, style.back)}\n >\n <Icon value={ICON.LEFT} />\n </Pressable>\n )}\n\n <ScrollView\n horizontal\n scrollTo={index * Math.floor(width)}\n snap\n width={width}\n onScroll={handleScroll}\n className={style.scrollView}\n >\n {images.map((image, imageIndex) => (\n <View key={imageIndex} className={style.item}>\n <View\n role=\"image\"\n onClick={propFullScreen ? () => setFullScreen(!fullScreen) : undefined}\n className={style.image}\n style={{\n backgroundImage:\n fullScreen || (imageIndex >= index - PRELOAD_IMAGES && imageIndex <= index + PRELOAD_IMAGES)\n ? `url(${image})`\n : undefined,\n height,\n width,\n }}\n />\n {captions[imageIndex] && (\n <View className={style.caption}>\n <Text bold small className={style.text}>\n {captions[imageIndex]}\n </Text>\n </View>\n )}\n </View>\n ))}\n </ScrollView>\n\n {!fullScreen && (\n <Pressable\n onPress={() => setIndex(index + 1)}\n className={styles(\n style.button,\n (index >= images.length - 1 || (isDesktop && !focus)) && style.hide && style.hide,\n style.forward,\n )}\n >\n <Icon value={ICON.RIGHT} />\n </Pressable>\n )}\n\n {fullScreen && (\n <ScrollView horizontal snap className={style.thumbnails}>\n {images.map((image, imageIndex) => (\n <Pressable\n key={imageIndex}\n onPress={() => setIndex(imageIndex)}\n className={styles(style.thumbnail, index === imageIndex && style.active)}\n style={{ backgroundImage: `url(${thumbnails[imageIndex] || image})` }}\n />\n ))}\n </ScrollView>\n )}\n </View>\n );\n};\n\nSlider.displayName = 'Component:Slider';\n\nSlider.propTypes = {\n auto: PropTypes.bool,\n captions: PropTypes.arrayOf(PropTypes.string),\n fullScreen: PropTypes.bool,\n height: PropTypes.number.isRequired,\n images: PropTypes.arrayOf(PropTypes.string).isRequired,\n index: PropTypes.number,\n thumbnails: PropTypes.arrayOf(PropTypes.string),\n width: PropTypes.number.isRequired,\n onChange: PropTypes.func,\n onFullScreen: PropTypes.func,\n};\n\nexport { Slider };\n"],"mappings":"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"}
@@ -118,4 +118,12 @@
118
118
 
119
119
  /* M & L */
120
120
  @media only screen and (min-width: 431px) {
121
+ .item .caption {
122
+ transition: opacity var(--mirai-ui-motion-collapse) var(--mirai-ui-motion-easing);
123
+ opacity: 0;
124
+ }
125
+
126
+ .item:hover .caption {
127
+ opacity: 1;
128
+ }
121
129
  }
@@ -387,19 +387,44 @@ exports[`component:<Slider> prop:captions 1`] = `
387
387
  exports[`component:<Slider> prop:fullScreen 1`] = `
388
388
  <DocumentFragment>
389
389
  <div
390
- class="view container fullScreen"
391
- style="width: 1024px;"
390
+ class="view container"
391
+ style="width: 360px;"
392
392
  >
393
+ <div
394
+ class="pressable button hide back"
395
+ >
396
+ <span
397
+ class="icon headline-3"
398
+ >
399
+ <svg
400
+ fill="currentColor"
401
+ height="1em"
402
+ stroke="currentColor"
403
+ stroke-width="0"
404
+ viewBox="0 0 24 24"
405
+ width="1em"
406
+ xmlns="http://www.w3.org/2000/svg"
407
+ >
408
+ <path
409
+ d="M0 0h24v24H0V0z"
410
+ fill="none"
411
+ />
412
+ <path
413
+ d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"
414
+ />
415
+ </svg>
416
+ </span>
417
+ </div>
393
418
  <div
394
419
  class="scrollview snap horizontal notIndicator scrollView"
395
- style="width: 870.4px;"
420
+ style="width: 360px;"
396
421
  >
397
422
  <div
398
423
  class="view item"
399
424
  >
400
425
  <div
401
426
  class="view image"
402
- style="background-image: url(https://picsum.photos/seed/@soyjavi/1024/768); height: 691.2px; width: 870.4px;"
427
+ style="background-image: url(https://picsum.photos/seed/@soyjavi/1024/768); height: 230px; width: 360px;"
403
428
  />
404
429
  </div>
405
430
  <div
@@ -407,7 +432,7 @@ exports[`component:<Slider> prop:fullScreen 1`] = `
407
432
  >
408
433
  <div
409
434
  class="view image"
410
- style="background-image: url(https://picsum.photos/seed/@jose/1024/768); height: 691.2px; width: 870.4px;"
435
+ style="background-image: url(https://picsum.photos/seed/@jose/1024/768); height: 230px; width: 360px;"
411
436
  />
412
437
  </div>
413
438
  <div
@@ -415,7 +440,7 @@ exports[`component:<Slider> prop:fullScreen 1`] = `
415
440
  >
416
441
  <div
417
442
  class="view image"
418
- style="background-image: url(https://picsum.photos/seed/@mario1/1024/768); height: 691.2px; width: 870.4px;"
443
+ style="background-image: url(https://picsum.photos/seed/@mario1/1024/768); height: 230px; width: 360px;"
419
444
  />
420
445
  </div>
421
446
  <div
@@ -423,7 +448,7 @@ exports[`component:<Slider> prop:fullScreen 1`] = `
423
448
  >
424
449
  <div
425
450
  class="view image"
426
- style="background-image: url(https://picsum.photos/seed/@victor/1024/768); height: 691.2px; width: 870.4px;"
451
+ style="height: 230px; width: 360px;"
427
452
  />
428
453
  </div>
429
454
  <div
@@ -431,7 +456,7 @@ exports[`component:<Slider> prop:fullScreen 1`] = `
431
456
  >
432
457
  <div
433
458
  class="view image"
434
- style="background-image: url(https://picsum.photos/seed/@svet/1024/768); height: 691.2px; width: 870.4px;"
459
+ style="height: 230px; width: 360px;"
435
460
  />
436
461
  </div>
437
462
  <div
@@ -439,37 +464,34 @@ exports[`component:<Slider> prop:fullScreen 1`] = `
439
464
  >
440
465
  <div
441
466
  class="view image"
442
- style="background-image: url(https://picsum.photos/seed/@mario2/1024/768); height: 691.2px; width: 870.4px;"
467
+ style="height: 230px; width: 360px;"
443
468
  />
444
469
  </div>
445
470
  </div>
446
471
  <div
447
- class="scrollview snap horizontal notIndicator thumbnails"
472
+ class="pressable button hide forward"
448
473
  >
449
- <div
450
- class="pressable thumbnail active"
451
- style="background-image: url(https://picsum.photos/seed/@soyjavi/1024/768);"
452
- />
453
- <div
454
- class="pressable thumbnail"
455
- style="background-image: url(https://picsum.photos/seed/@jose/1024/768);"
456
- />
457
- <div
458
- class="pressable thumbnail"
459
- style="background-image: url(https://picsum.photos/seed/@mario1/1024/768);"
460
- />
461
- <div
462
- class="pressable thumbnail"
463
- style="background-image: url(https://picsum.photos/seed/@victor/1024/768);"
464
- />
465
- <div
466
- class="pressable thumbnail"
467
- style="background-image: url(https://picsum.photos/seed/@svet/1024/768);"
468
- />
469
- <div
470
- class="pressable thumbnail"
471
- style="background-image: url(https://picsum.photos/seed/@mario2/1024/768);"
472
- />
474
+ <span
475
+ class="icon headline-3"
476
+ >
477
+ <svg
478
+ fill="currentColor"
479
+ height="1em"
480
+ stroke="currentColor"
481
+ stroke-width="0"
482
+ viewBox="0 0 24 24"
483
+ width="1em"
484
+ xmlns="http://www.w3.org/2000/svg"
485
+ >
486
+ <path
487
+ d="M0 0h24v24H0V0z"
488
+ fill="none"
489
+ />
490
+ <path
491
+ d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8-8-8z"
492
+ />
493
+ </svg>
494
+ </span>
473
495
  </div>
474
496
  </div>
475
497
  </DocumentFragment>
@@ -52,7 +52,7 @@ var Row = function Row(_ref) {
52
52
  _event$target = _event$target === void 0 ? {} : _event$target;
53
53
  var type = _event$target.type;
54
54
  if (CUSTOM_EVENT_TYPES.includes(type)) return;
55
- isHead ? onSort(field) : onPress ? onPress(dataSource, event) : undefined;
55
+ isHead && onSort ? onSort(field) : onPress ? onPress(dataSource, event) : undefined;
56
56
  };
57
57
  var handleFocus = function handleFocus(field) {
58
58
  setFocus(field);
@@ -1 +1 @@
1
- {"version":3,"file":"Table.Row.js","names":["CUSTOM_EVENT_TYPES","Row","checked","dataSource","indeterminate","l10n","schema","sort","onFilter","onPress","onSelect","onSort","others","useState","focus","setFocus","isHead","undefined","testId","handlePress","field","event","target","type","includes","handleFocus","handleSelect","preventDefault","styles","style","selected","Object","keys","filter","hidden","map","index","hasFilter","label","hasSort","tooltip","fieldFilter","bind","React","createElement","Primitive","tag","key","onClick","column","selectable","value","checkbox","icons","ICON","UP","DOWN","icon","disabled","displayName","propTypes","PropTypes","bool","shape","L10N_SHAPE","isRequired","func"],"sources":["../../../src/components/Table/Table.Row.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Icon, ICON, Primitive, View } from '../../primitives';\nimport { InputOption } from '../InputOption';\nimport { Tooltip } from '../Tooltip';\nimport { ColumnFilter } from './Table.ColumnFilter';\nimport { L10N_SHAPE } from './Table.constants';\nimport style from './Table.module.css';\n\nconst CUSTOM_EVENT_TYPES = ['button', 'checkbox', 'input', 'radio', 'submit'];\n\nconst Row = ({\n checked,\n dataSource,\n indeterminate,\n l10n,\n schema,\n sort = {},\n onFilter,\n onPress,\n onSelect,\n onSort,\n ...others\n}) => {\n const [focus, setFocus] = useState();\n\n const isHead = dataSource === undefined;\n const { testId } = others;\n\n const handlePress = (field, event) => {\n const { target: { type } = {} } = event;\n if (CUSTOM_EVENT_TYPES.includes(type)) return;\n\n isHead ? onSort(field) : onPress ? onPress(dataSource, event) : undefined;\n };\n\n const handleFocus = (field) => {\n setFocus(field);\n };\n\n const handleSelect = (dataSource, event) => {\n event.preventDefault();\n onSelect(dataSource, event);\n };\n\n return (\n <Primitive tag=\"tr\" {...others} className={styles(checked && style.selected, onPress && style.onPress)}>\n {Object.keys(schema)\n .filter((field) => !schema[field].hidden)\n .map((field, index) => {\n const { filter: hasFilter = true, label, sort: hasSort = true, tooltip, type = 'text' } = schema[field];\n const fieldFilter = schema[field]?.bind || field;\n\n return React.createElement(\n Primitive,\n {\n tag: isHead ? 'th' : 'td',\n testId: testId ? `${testId}-${field}` : undefined,\n key: field,\n onClick: !isHead || hasSort ? (event) => handlePress(field, event) : undefined,\n },\n <View\n forceRow\n tag=\"span\"\n className={styles(\n style.column,\n onSelect && index === 0 && style.selectable,\n !isHead && !(onSelect && index === 0) && style[type],\n )}\n >\n {onSelect && index === 0 && (\n <InputOption\n checked={checked}\n indeterminate={indeterminate}\n name=\"checkbox\"\n onChange={(value, event) => handleSelect(dataSource, event)}\n className={style.checkbox}\n testId={testId ? `${testId}-checkbox` : undefined}\n />\n )}\n\n {isHead ? (\n tooltip ? (\n <Tooltip text={tooltip}>\n <Primitive className={style.tooltip}>{label}</Primitive>\n </Tooltip>\n ) : (\n label\n )\n ) : (\n dataSource[field]\n )}\n\n {isHead && ((onSort && hasSort) || (onFilter && hasFilter)) && (\n <View row className={style.icons}>\n {onSort && hasSort && (\n <Icon\n value={sort[field] === false ? ICON.UP : ICON.DOWN}\n className={styles(style.icon, sort[field] === undefined && style.disabled)}\n />\n )}\n {onFilter && hasFilter && (\n <ColumnFilter\n field={fieldFilter}\n l10n={l10n}\n schema={schema}\n visible={fieldFilter === focus}\n onFocus={handleFocus}\n onSubmit={onFilter}\n />\n )}\n </View>\n )}\n </View>,\n );\n })}\n </Primitive>\n );\n};\n\nRow.displayName = 'Component:Table:Row';\n\nRow.propTypes = {\n checked: PropTypes.bool,\n dataSource: PropTypes.shape({}),\n indeterminate: PropTypes.bool,\n l10n: L10N_SHAPE,\n schema: PropTypes.shape({}).isRequired,\n sort: PropTypes.shape({}),\n onFilter: PropTypes.func,\n onPress: PropTypes.func,\n onSelect: PropTypes.func,\n onSort: PropTypes.func,\n};\n\nexport { Row };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Table.Row.js","names":["CUSTOM_EVENT_TYPES","Row","checked","dataSource","indeterminate","l10n","schema","sort","onFilter","onPress","onSelect","onSort","others","useState","focus","setFocus","isHead","undefined","testId","handlePress","field","event","target","type","includes","handleFocus","handleSelect","preventDefault","styles","style","selected","Object","keys","filter","hidden","map","index","hasFilter","label","hasSort","tooltip","fieldFilter","bind","React","createElement","Primitive","tag","key","onClick","column","selectable","value","checkbox","icons","ICON","UP","DOWN","icon","disabled","displayName","propTypes","PropTypes","bool","shape","L10N_SHAPE","isRequired","func"],"sources":["../../../src/components/Table/Table.Row.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Icon, ICON, Primitive, View } from '../../primitives';\nimport { InputOption } from '../InputOption';\nimport { Tooltip } from '../Tooltip';\nimport { ColumnFilter } from './Table.ColumnFilter';\nimport { L10N_SHAPE } from './Table.constants';\nimport style from './Table.module.css';\n\nconst CUSTOM_EVENT_TYPES = ['button', 'checkbox', 'input', 'radio', 'submit'];\n\nconst Row = ({\n checked,\n dataSource,\n indeterminate,\n l10n,\n schema,\n sort = {},\n onFilter,\n onPress,\n onSelect,\n onSort,\n ...others\n}) => {\n const [focus, setFocus] = useState();\n\n const isHead = dataSource === undefined;\n const { testId } = others;\n\n const handlePress = (field, event) => {\n const { target: { type } = {} } = event;\n if (CUSTOM_EVENT_TYPES.includes(type)) return;\n\n isHead && onSort ? onSort(field) : onPress ? onPress(dataSource, event) : undefined;\n };\n\n const handleFocus = (field) => {\n setFocus(field);\n };\n\n const handleSelect = (dataSource, event) => {\n event.preventDefault();\n onSelect(dataSource, event);\n };\n\n return (\n <Primitive tag=\"tr\" {...others} className={styles(checked && style.selected, onPress && style.onPress)}>\n {Object.keys(schema)\n .filter((field) => !schema[field].hidden)\n .map((field, index) => {\n const { filter: hasFilter = true, label, sort: hasSort = true, tooltip, type = 'text' } = schema[field];\n const fieldFilter = schema[field]?.bind || field;\n\n return React.createElement(\n Primitive,\n {\n tag: isHead ? 'th' : 'td',\n testId: testId ? `${testId}-${field}` : undefined,\n key: field,\n onClick: !isHead || hasSort ? (event) => handlePress(field, event) : undefined,\n },\n <View\n forceRow\n tag=\"span\"\n className={styles(\n style.column,\n onSelect && index === 0 && style.selectable,\n !isHead && !(onSelect && index === 0) && style[type],\n )}\n >\n {onSelect && index === 0 && (\n <InputOption\n checked={checked}\n indeterminate={indeterminate}\n name=\"checkbox\"\n onChange={(value, event) => handleSelect(dataSource, event)}\n className={style.checkbox}\n testId={testId ? `${testId}-checkbox` : undefined}\n />\n )}\n\n {isHead ? (\n tooltip ? (\n <Tooltip text={tooltip}>\n <Primitive className={style.tooltip}>{label}</Primitive>\n </Tooltip>\n ) : (\n label\n )\n ) : (\n dataSource[field]\n )}\n\n {isHead && ((onSort && hasSort) || (onFilter && hasFilter)) && (\n <View row className={style.icons}>\n {onSort && hasSort && (\n <Icon\n value={sort[field] === false ? ICON.UP : ICON.DOWN}\n className={styles(style.icon, sort[field] === undefined && style.disabled)}\n />\n )}\n {onFilter && hasFilter && (\n <ColumnFilter\n field={fieldFilter}\n l10n={l10n}\n schema={schema}\n visible={fieldFilter === focus}\n onFocus={handleFocus}\n onSubmit={onFilter}\n />\n )}\n </View>\n )}\n </View>,\n );\n })}\n </Primitive>\n );\n};\n\nRow.displayName = 'Component:Table:Row';\n\nRow.propTypes = {\n checked: PropTypes.bool,\n dataSource: PropTypes.shape({}),\n indeterminate: PropTypes.bool,\n l10n: L10N_SHAPE,\n schema: PropTypes.shape({}).isRequired,\n sort: PropTypes.shape({}),\n onFilter: PropTypes.func,\n onPress: PropTypes.func,\n onSelect: PropTypes.func,\n onSort: PropTypes.func,\n};\n\nexport { Row };\n"],"mappings":"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"}
@@ -14,7 +14,7 @@ var _Table = require("./Table.constants");
14
14
  var _Table2 = require("./Table.Filter");
15
15
  var _TableModule = _interopRequireDefault(require("./Table.module.css"));
16
16
  var _Table3 = require("./Table.Row");
17
- var _excluded = ["dataSource", "filter", "inline", "l10n", "pagination", "schema", "search", "selected", "store", "onPress", "onScroll", "onSelect"];
17
+ var _excluded = ["dataSource", "filter", "inline", "l10n", "pagination", "schema", "search", "selected", "sort", "store", "onPress", "onScroll", "onSelect"];
18
18
  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); }
19
19
  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; }
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -47,6 +47,8 @@ var Table = function Table(_ref) {
47
47
  search = _ref.search,
48
48
  _ref$selected = _ref.selected,
49
49
  selected = _ref$selected === void 0 ? [] : _ref$selected,
50
+ _ref$sort = _ref.sort,
51
+ propSort = _ref$sort === void 0 ? true : _ref$sort,
50
52
  store = _ref.store,
51
53
  onPress = _ref.onPress,
52
54
  _ref$onScroll = _ref.onScroll,
@@ -142,7 +144,7 @@ var Table = function Table(_ref) {
142
144
  sort: sort,
143
145
  onFilter: propFilter ? handleAddFilter : undefined,
144
146
  onSelect: onSelect ? handleHeadSelect : undefined,
145
- onSort: handleSort,
147
+ onSort: propSort ? handleSort : undefined,
146
148
  testId: testId ? "".concat(testId, "-head") : undefined
147
149
  })), /*#__PURE__*/_react.default.createElement(_primitives.Primitive, {
148
150
  tag: "tbody"
@@ -178,8 +180,9 @@ Table.propTypes = {
178
180
  pagination: _propTypes.default.number,
179
181
  schema: _propTypes.default.shape({}).isRequired,
180
182
  search: _propTypes.default.string,
181
- store: _propTypes.default.string,
182
183
  selected: _propTypes.default.arrayOf(_propTypes.default.shape()),
184
+ sort: _propTypes.default.bool,
185
+ store: _propTypes.default.string,
183
186
  onPress: _propTypes.default.func,
184
187
  onScroll: _propTypes.default.func,
185
188
  onSelect: _propTypes.default.func
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","names":["Table","dataSource","propFilter","filter","inline","l10n","pagination","schema","search","selected","store","onPress","onScroll","onSelect","others","useState","setFilter","limit","setLimit","sort","setSort","useEffect","nextFilter","storeFilter","Storage","get","length","set","handleAddFilter","item","handleRemoveFilter","index","splice","handleHeadSelect","row","event","next","select","handleScroll","percentY","PAGINATION_DISPATCHER","handleSelect","exists","handleSort","field","undefined","role","testId","fields","Object","keys","includes","filterFields","React","createElement","ScrollView","className","styles","style","container","outlined","table","useMemo","map","displayName","propTypes","PropTypes","arrayOf","shape","bool","L10N_SHAPE","number","isRequired","string","func"],"sources":["../../../src/components/Table/Table.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { Fragment, useEffect, useMemo, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Primitive, ScrollView } from '../../primitives';\nimport { exists, select, Storage } from './helpers';\nimport { L10N_SHAPE, PAGINATION_DISPATCHER } from './Table.constants';\nimport { Filter } from './Table.Filter';\nimport style from './Table.module.css';\nimport { Row } from './Table.Row';\n\nexport const Table = ({\n dataSource = [],\n filter: propFilter,\n inline = true,\n l10n,\n pagination,\n schema,\n search,\n selected = [],\n store,\n onPress,\n onScroll = () => {},\n onSelect,\n ...others\n}) => {\n const [filter, setFilter] = useState([]);\n const [limit, setLimit] = useState(pagination);\n const [sort, setSort] = useState({});\n\n useEffect(() => {\n let nextFilter = propFilter;\n if (store) {\n const storeFilter = Storage.get(`${store}:filter`);\n if (storeFilter?.length) nextFilter = storeFilter;\n }\n\n setFilter(nextFilter);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!store) return;\n Storage.set(`${store}:filter`, filter);\n }, [filter, store]);\n\n const handleAddFilter = (item) => {\n setFilter([...filter, item]);\n };\n\n const handleRemoveFilter = (index) => {\n filter?.splice(index, 1);\n setFilter([...filter]);\n };\n\n const handleHeadSelect = (row, event) => {\n const next = select({ dataSource, filter, schema, search, selected, sort });\n onSelect(selected.length !== next.length ? next : [], event);\n };\n\n const handleScroll = (event) => {\n if (pagination && event.percentY > PAGINATION_DISPATCHER && limit < dataSource.length) setLimit(limit + pagination);\n onScroll(event);\n };\n\n const handleSelect = (row, event) => {\n onSelect(exists(row, selected) ? selected.filter((item) => !exists(row, [item])) : [...selected, row], event);\n };\n\n const handleSort = (field) => {\n setSort(sort[field] === undefined ? { [field]: true } : sort[field] ? { [field]: false } : {});\n };\n\n const { role = 'table', testId } = others;\n const fields = Object.keys(schema);\n const { length: filterFields } = filter?.filter(({ field } = {}) => fields.includes(field)) || {};\n\n return React.createElement(\n ScrollView,\n {\n ...others,\n role,\n onScroll: handleScroll,\n className: styles(style.container, !inline && style.outlined, others.className),\n },\n <>\n {filterFields > 0 && (\n <Filter filter={filter} schema={schema} role=\"table-filter\" onRemove={(index) => handleRemoveFilter(index)} />\n )}\n <Primitive tag=\"table\" className={style.table}>\n <Primitive tag=\"thead\">\n <Row\n checked={dataSource.length > 0 ? selected.length === dataSource.length : undefined}\n indeterminate={dataSource.length > 0 && selected.length > 0}\n l10n={l10n}\n schema={schema}\n sort={sort}\n onFilter={propFilter ? handleAddFilter : undefined}\n onSelect={onSelect ? handleHeadSelect : undefined}\n onSort={handleSort}\n testId={testId ? `${testId}-head` : undefined}\n />\n </Primitive>\n <Primitive tag=\"tbody\">\n {useMemo(\n () => select({ dataSource, filter, limit, schema, search, selected, sort }),\n [dataSource, filter, limit, schema, search, selected, sort],\n ).map((row, index) => (\n <Row\n checked={exists(row, selected)}\n dataSource={row}\n key={index}\n schema={schema}\n onPress={onPress}\n onSelect={onSelect ? handleSelect : undefined}\n testId={testId ? `${testId}-${index}` : undefined}\n />\n ))}\n </Primitive>\n </Primitive>\n </>,\n );\n};\n\nTable.displayName = 'Component:Table';\n\nTable.propTypes = {\n dataSource: PropTypes.arrayOf(PropTypes.shape({})),\n filter: PropTypes.arrayOf(PropTypes.shape({})),\n inline: PropTypes.bool,\n l10n: L10N_SHAPE,\n pagination: PropTypes.number,\n schema: PropTypes.shape({}).isRequired,\n search: PropTypes.string,\n store: PropTypes.string,\n selected: PropTypes.arrayOf(PropTypes.shape()),\n onPress: PropTypes.func,\n onScroll: PropTypes.func,\n onSelect: PropTypes.func,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","names":["Table","dataSource","propFilter","filter","inline","l10n","pagination","schema","search","selected","sort","propSort","store","onPress","onScroll","onSelect","others","useState","setFilter","limit","setLimit","setSort","useEffect","nextFilter","storeFilter","Storage","get","length","set","handleAddFilter","item","handleRemoveFilter","index","splice","handleHeadSelect","row","event","next","select","handleScroll","percentY","PAGINATION_DISPATCHER","handleSelect","exists","handleSort","field","undefined","role","testId","fields","Object","keys","includes","filterFields","React","createElement","ScrollView","className","styles","style","container","outlined","table","useMemo","map","displayName","propTypes","PropTypes","arrayOf","shape","bool","L10N_SHAPE","number","isRequired","string","func"],"sources":["../../../src/components/Table/Table.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { Fragment, useEffect, useMemo, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { Primitive, ScrollView } from '../../primitives';\nimport { exists, select, Storage } from './helpers';\nimport { L10N_SHAPE, PAGINATION_DISPATCHER } from './Table.constants';\nimport { Filter } from './Table.Filter';\nimport style from './Table.module.css';\nimport { Row } from './Table.Row';\n\nexport const Table = ({\n dataSource = [],\n filter: propFilter,\n inline = true,\n l10n,\n pagination,\n schema,\n search,\n selected = [],\n sort: propSort = true,\n store,\n onPress,\n onScroll = () => {},\n onSelect,\n ...others\n}) => {\n const [filter, setFilter] = useState([]);\n const [limit, setLimit] = useState(pagination);\n const [sort, setSort] = useState({});\n\n useEffect(() => {\n let nextFilter = propFilter;\n if (store) {\n const storeFilter = Storage.get(`${store}:filter`);\n if (storeFilter?.length) nextFilter = storeFilter;\n }\n\n setFilter(nextFilter);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!store) return;\n Storage.set(`${store}:filter`, filter);\n }, [filter, store]);\n\n const handleAddFilter = (item) => {\n setFilter([...filter, item]);\n };\n\n const handleRemoveFilter = (index) => {\n filter?.splice(index, 1);\n setFilter([...filter]);\n };\n\n const handleHeadSelect = (row, event) => {\n const next = select({ dataSource, filter, schema, search, selected, sort });\n onSelect(selected.length !== next.length ? next : [], event);\n };\n\n const handleScroll = (event) => {\n if (pagination && event.percentY > PAGINATION_DISPATCHER && limit < dataSource.length) setLimit(limit + pagination);\n onScroll(event);\n };\n\n const handleSelect = (row, event) => {\n onSelect(exists(row, selected) ? selected.filter((item) => !exists(row, [item])) : [...selected, row], event);\n };\n\n const handleSort = (field) => {\n setSort(sort[field] === undefined ? { [field]: true } : sort[field] ? { [field]: false } : {});\n };\n\n const { role = 'table', testId } = others;\n const fields = Object.keys(schema);\n const { length: filterFields } = filter?.filter(({ field } = {}) => fields.includes(field)) || {};\n\n return React.createElement(\n ScrollView,\n {\n ...others,\n role,\n onScroll: handleScroll,\n className: styles(style.container, !inline && style.outlined, others.className),\n },\n <>\n {filterFields > 0 && (\n <Filter filter={filter} schema={schema} role=\"table-filter\" onRemove={(index) => handleRemoveFilter(index)} />\n )}\n <Primitive tag=\"table\" className={style.table}>\n <Primitive tag=\"thead\">\n <Row\n checked={dataSource.length > 0 ? selected.length === dataSource.length : undefined}\n indeterminate={dataSource.length > 0 && selected.length > 0}\n l10n={l10n}\n schema={schema}\n sort={sort}\n onFilter={propFilter ? handleAddFilter : undefined}\n onSelect={onSelect ? handleHeadSelect : undefined}\n onSort={propSort ? handleSort : undefined}\n testId={testId ? `${testId}-head` : undefined}\n />\n </Primitive>\n <Primitive tag=\"tbody\">\n {useMemo(\n () => select({ dataSource, filter, limit, schema, search, selected, sort }),\n [dataSource, filter, limit, schema, search, selected, sort],\n ).map((row, index) => (\n <Row\n checked={exists(row, selected)}\n dataSource={row}\n key={index}\n schema={schema}\n onPress={onPress}\n onSelect={onSelect ? handleSelect : undefined}\n testId={testId ? `${testId}-${index}` : undefined}\n />\n ))}\n </Primitive>\n </Primitive>\n </>,\n );\n};\n\nTable.displayName = 'Component:Table';\n\nTable.propTypes = {\n dataSource: PropTypes.arrayOf(PropTypes.shape({})),\n filter: PropTypes.arrayOf(PropTypes.shape({})),\n inline: PropTypes.bool,\n l10n: L10N_SHAPE,\n pagination: PropTypes.number,\n schema: PropTypes.shape({}).isRequired,\n search: PropTypes.string,\n selected: PropTypes.arrayOf(PropTypes.shape()),\n sort: PropTypes.bool,\n store: PropTypes.string,\n onPress: PropTypes.func,\n onScroll: PropTypes.func,\n onSelect: PropTypes.func,\n};\n"],"mappings":"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"}
@@ -3556,6 +3556,303 @@ exports[`component:<Table> prop:selected 1`] = `
3556
3556
  </DocumentFragment>
3557
3557
  `;
3558
3558
 
3559
+ exports[`component:<Table> prop:sort 1`] = `
3560
+ <DocumentFragment>
3561
+ <div
3562
+ class="scrollview snap vertical notIndicator container"
3563
+ >
3564
+ <table
3565
+ class="table"
3566
+ >
3567
+ <thead>
3568
+ <tr>
3569
+ <th>
3570
+ <span
3571
+ class="view forceRow column"
3572
+ >
3573
+ User Name
3574
+ </span>
3575
+ </th>
3576
+ <th>
3577
+ <span
3578
+ class="view forceRow column"
3579
+ >
3580
+ Email
3581
+ </span>
3582
+ </th>
3583
+ <th>
3584
+ <span
3585
+ class="view forceRow column"
3586
+ >
3587
+ Year
3588
+ </span>
3589
+ </th>
3590
+ <th>
3591
+ <span
3592
+ class="view forceRow column"
3593
+ >
3594
+ <span>
3595
+ <div
3596
+ class="dispatcher tooltip"
3597
+ >
3598
+ Twitter
3599
+ </div>
3600
+ </span>
3601
+ </span>
3602
+ </th>
3603
+ <th>
3604
+ <span
3605
+ class="view forceRow column"
3606
+ >
3607
+ Action
3608
+ </span>
3609
+ </th>
3610
+ </tr>
3611
+ </thead>
3612
+ <tbody>
3613
+ <tr>
3614
+ <td>
3615
+ <span
3616
+ class="view forceRow column text"
3617
+ >
3618
+ jose
3619
+ </span>
3620
+ </td>
3621
+ <td>
3622
+ <span
3623
+ class="view forceRow column text"
3624
+ >
3625
+ jose@mirai.com
3626
+ </span>
3627
+ </td>
3628
+ <td>
3629
+ <span
3630
+ class="view forceRow column number"
3631
+ >
3632
+ 2012
3633
+ </span>
3634
+ </td>
3635
+ <td>
3636
+ <span
3637
+ class="view forceRow column text"
3638
+ />
3639
+ </td>
3640
+ <td>
3641
+ <span
3642
+ class="view forceRow column text"
3643
+ />
3644
+ </td>
3645
+ </tr>
3646
+ <tr>
3647
+ <td>
3648
+ <span
3649
+ class="view forceRow column text"
3650
+ >
3651
+ mario/1
3652
+ </span>
3653
+ </td>
3654
+ <td>
3655
+ <span
3656
+ class="view forceRow column text"
3657
+ >
3658
+ mario.1@mirai.com
3659
+ </span>
3660
+ </td>
3661
+ <td>
3662
+ <span
3663
+ class="view forceRow column number"
3664
+ >
3665
+ 2005
3666
+ </span>
3667
+ </td>
3668
+ <td>
3669
+ <span
3670
+ class="view forceRow column text"
3671
+ />
3672
+ </td>
3673
+ <td>
3674
+ <span
3675
+ class="view forceRow column text"
3676
+ />
3677
+ </td>
3678
+ </tr>
3679
+ <tr>
3680
+ <td>
3681
+ <span
3682
+ class="view forceRow column text"
3683
+ >
3684
+ carlos
3685
+ </span>
3686
+ </td>
3687
+ <td>
3688
+ <span
3689
+ class="view forceRow column text"
3690
+ >
3691
+ carlos@mirai.com
3692
+ </span>
3693
+ </td>
3694
+ <td>
3695
+ <span
3696
+ class="view forceRow column number"
3697
+ >
3698
+ 2012
3699
+ </span>
3700
+ </td>
3701
+ <td>
3702
+ <span
3703
+ class="view forceRow column text"
3704
+ />
3705
+ </td>
3706
+ <td>
3707
+ <span
3708
+ class="view forceRow column text"
3709
+ />
3710
+ </td>
3711
+ </tr>
3712
+ <tr>
3713
+ <td>
3714
+ <span
3715
+ class="view forceRow column text"
3716
+ >
3717
+ svet
3718
+ </span>
3719
+ </td>
3720
+ <td>
3721
+ <span
3722
+ class="view forceRow column text"
3723
+ >
3724
+ svet@mirai.com
3725
+ </span>
3726
+ </td>
3727
+ <td>
3728
+ <span
3729
+ class="view forceRow column number"
3730
+ >
3731
+ 2021
3732
+ </span>
3733
+ </td>
3734
+ <td>
3735
+ <span
3736
+ class="view forceRow column text"
3737
+ />
3738
+ </td>
3739
+ <td>
3740
+ <span
3741
+ class="view forceRow column text"
3742
+ >
3743
+ <strong>
3744
+ action
3745
+ </strong>
3746
+ </span>
3747
+ </td>
3748
+ </tr>
3749
+ <tr>
3750
+ <td>
3751
+ <span
3752
+ class="view forceRow column text"
3753
+ >
3754
+ javi
3755
+ </span>
3756
+ </td>
3757
+ <td>
3758
+ <span
3759
+ class="view forceRow column text"
3760
+ >
3761
+ hi@soyjavi.com
3762
+ </span>
3763
+ </td>
3764
+ <td>
3765
+ <span
3766
+ class="view forceRow column number"
3767
+ >
3768
+ 2022
3769
+ </span>
3770
+ </td>
3771
+ <td>
3772
+ <span
3773
+ class="view forceRow column text"
3774
+ >
3775
+ soyjavi
3776
+ </span>
3777
+ </td>
3778
+ <td>
3779
+ <span
3780
+ class="view forceRow column text"
3781
+ />
3782
+ </td>
3783
+ </tr>
3784
+ <tr>
3785
+ <td>
3786
+ <span
3787
+ class="view forceRow column text"
3788
+ >
3789
+ victor
3790
+ </span>
3791
+ </td>
3792
+ <td>
3793
+ <span
3794
+ class="view forceRow column text"
3795
+ >
3796
+ victor@mirai.com
3797
+ </span>
3798
+ </td>
3799
+ <td>
3800
+ <span
3801
+ class="view forceRow column number"
3802
+ >
3803
+ 2021
3804
+ </span>
3805
+ </td>
3806
+ <td>
3807
+ <span
3808
+ class="view forceRow column text"
3809
+ />
3810
+ </td>
3811
+ <td>
3812
+ <span
3813
+ class="view forceRow column text"
3814
+ />
3815
+ </td>
3816
+ </tr>
3817
+ <tr>
3818
+ <td>
3819
+ <span
3820
+ class="view forceRow column text"
3821
+ >
3822
+ mario/2
3823
+ </span>
3824
+ </td>
3825
+ <td>
3826
+ <span
3827
+ class="view forceRow column text"
3828
+ >
3829
+ mario.2@mirai.com
3830
+ </span>
3831
+ </td>
3832
+ <td>
3833
+ <span
3834
+ class="view forceRow column number"
3835
+ >
3836
+ 2022
3837
+ </span>
3838
+ </td>
3839
+ <td>
3840
+ <span
3841
+ class="view forceRow column text"
3842
+ />
3843
+ </td>
3844
+ <td>
3845
+ <span
3846
+ class="view forceRow column text"
3847
+ />
3848
+ </td>
3849
+ </tr>
3850
+ </tbody>
3851
+ </table>
3852
+ </div>
3853
+ </DocumentFragment>
3854
+ `;
3855
+
3559
3856
  exports[`component:<Table> prop:store 1`] = `
3560
3857
  <DocumentFragment>
3561
3858
  <div
@@ -10,7 +10,7 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _helpers = require("../../helpers");
11
11
  var _Primitive = require("../Primitive");
12
12
  var _SelectModule = _interopRequireDefault(require("./Select.module.css"));
13
- var _excluded = ["disabled", "emptyOption", "options", "value", "onChange", "onEnter", "onError", "onLeave"];
13
+ var _excluded = ["disabled", "emptyOption", "options", "value", "values", "onChange", "onEnter", "onError", "onLeave"];
14
14
  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); }
15
15
  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; }
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -28,6 +28,8 @@ var Select = function Select(_ref) {
28
28
  _ref$options = _ref.options,
29
29
  options = _ref$options === void 0 ? [] : _ref$options,
30
30
  value = _ref.value,
31
+ _ref$values = _ref.values,
32
+ values = _ref$values === void 0 ? [] : _ref$values,
31
33
  onChange = _ref.onChange,
32
34
  onEnter = _ref.onEnter,
33
35
  onError = _ref.onError,
@@ -60,11 +62,11 @@ var Select = function Select(_ref) {
60
62
  }), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, emptyOption && /*#__PURE__*/_react.default.createElement(_Primitive.Primitive, {
61
63
  tag: "option",
62
64
  value: EMPTY
63
- }, emptyOption), options.map(function (option) {
65
+ }, emptyOption), options.map(function (option, index) {
64
66
  return /*#__PURE__*/_react.default.createElement(_Primitive.Primitive, {
65
67
  tag: "option",
66
- value: option,
67
- key: option
68
+ key: option,
69
+ value: values[index] || option
68
70
  }, option);
69
71
  })));
70
72
  };
@@ -75,6 +77,7 @@ Select.propTypes = {
75
77
  emptyOption: _propTypes.default.string,
76
78
  name: _propTypes.default.string.isRequired,
77
79
  options: _propTypes.default.arrayOf(_propTypes.default.string),
80
+ values: _propTypes.default.arrayOf(_propTypes.default.string),
78
81
  value: _propTypes.default.string,
79
82
  onChange: _propTypes.default.func,
80
83
  onEnter: _propTypes.default.func,
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["EMPTY","Select","disabled","emptyOption","options","value","onChange","onEnter","onError","onLeave","others","useEffect","errors","getInputErrors","handleChange","event","React","createElement","Primitive","role","tag","target","onFocus","onBlur","className","styles","style","select","empty","map","option","displayName","propTypes","PropTypes","bool","string","name","isRequired","arrayOf","func"],"sources":["../../../src/primitives/Select/Select.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { getInputErrors, styles } from '../../helpers';\nimport { Primitive } from '../Primitive';\nimport style from './Select.module.css';\n\nconst EMPTY = '';\n\nconst Select = ({ disabled, emptyOption, options = [], value, onChange, onEnter, onError, onLeave, ...others }) => {\n useEffect(() => {\n const errors = getInputErrors({ ...others });\n if (errors && onError) onError(errors);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleChange = (value, event) => {\n onError && onError(getInputErrors({ ...others, value }));\n onChange && onChange(value, event);\n };\n\n return React.createElement(\n Primitive,\n {\n ...others,\n disabled,\n role: others.role || 'select',\n tag: 'select',\n value,\n ...(!disabled\n ? {\n onChange: (event) => handleChange(event.target.value, event),\n onFocus: onEnter,\n onBlur: onLeave,\n }\n : {}),\n className: styles(style.select, value === EMPTY && style.empty, others.className),\n },\n <>\n {emptyOption && (\n <Primitive tag=\"option\" value={EMPTY}>\n {emptyOption}\n </Primitive>\n )}\n {options.map((option) => (\n <Primitive tag=\"option\" value={option} key={option}>\n {option}\n </Primitive>\n ))}\n </>,\n );\n};\n\nSelect.displayName = 'Primitive:Input';\n\nSelect.propTypes = {\n disabled: PropTypes.bool,\n emptyOption: PropTypes.string,\n name: PropTypes.string.isRequired,\n options: PropTypes.arrayOf(PropTypes.string),\n value: PropTypes.string,\n onChange: PropTypes.func,\n onEnter: PropTypes.func,\n onError: PropTypes.func,\n onLeave: PropTypes.func,\n};\n\nexport { Select };\n"],"mappings":";;;;;;;AAAA;AACA;AAEA;AACA;AACA;AAAwC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAExC,IAAMA,KAAK,GAAG,EAAE;AAEhB,IAAMC,MAAM,GAAG,SAATA,MAAM,OAAuG;EAAA,IAAjGC,QAAQ,QAARA,QAAQ;IAAEC,WAAW,QAAXA,WAAW;IAAA,oBAAEC,OAAO;IAAPA,OAAO,6BAAG,EAAE;IAAEC,KAAK,QAALA,KAAK;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,OAAO,QAAPA,OAAO;IAAEC,OAAO,QAAPA,OAAO;IAAEC,OAAO,QAAPA,OAAO;IAAKC,MAAM;EAC1G,IAAAC,gBAAS,EAAC,YAAM;IACd,IAAMC,MAAM,GAAG,IAAAC,uBAAc,oBAAMH,MAAM,EAAG;IAC5C,IAAIE,MAAM,IAAIJ,OAAO,EAAEA,OAAO,CAACI,MAAM,CAAC;IACtC;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,IAAME,YAAY,GAAG,SAAfA,YAAY,CAAIT,KAAK,EAAEU,KAAK,EAAK;IACrCP,OAAO,IAAIA,OAAO,CAAC,IAAAK,uBAAc,kCAAMH,MAAM;MAAEL,KAAK,EAALA;IAAK,GAAG,CAAC;IACxDC,QAAQ,IAAIA,QAAQ,CAACD,KAAK,EAAEU,KAAK,CAAC;EACpC,CAAC;EAED,oBAAOC,cAAK,CAACC,aAAa,CACxBC,oBAAS,gDAEJR,MAAM;IACTR,QAAQ,EAARA,QAAQ;IACRiB,IAAI,EAAET,MAAM,CAACS,IAAI,IAAI,QAAQ;IAC7BC,GAAG,EAAE,QAAQ;IACbf,KAAK,EAALA;EAAK,GACD,CAACH,QAAQ,GACT;IACEI,QAAQ,EAAE,kBAACS,KAAK;MAAA,OAAKD,YAAY,CAACC,KAAK,CAACM,MAAM,CAAChB,KAAK,EAAEU,KAAK,CAAC;IAAA;IAC5DO,OAAO,EAAEf,OAAO;IAChBgB,MAAM,EAAEd;EACV,CAAC,GACD,CAAC,CAAC;IACNe,SAAS,EAAE,IAAAC,eAAM,EAACC,qBAAK,CAACC,MAAM,EAAEtB,KAAK,KAAKL,KAAK,IAAI0B,qBAAK,CAACE,KAAK,EAAElB,MAAM,CAACc,SAAS;EAAC,iBAEnF,4DACGrB,WAAW,iBACV,6BAAC,oBAAS;IAAC,GAAG,EAAC,QAAQ;IAAC,KAAK,EAAEH;EAAM,GAClCG,WAAW,CAEf,EACAC,OAAO,CAACyB,GAAG,CAAC,UAACC,MAAM;IAAA,oBAClB,6BAAC,oBAAS;MAAC,GAAG,EAAC,QAAQ;MAAC,KAAK,EAAEA,MAAO;MAAC,GAAG,EAAEA;IAAO,GAChDA,MAAM,CACG;EAAA,CACb,CAAC,CACD,CACJ;AACH,CAAC;AAAC;AAEF7B,MAAM,CAAC8B,WAAW,GAAG,iBAAiB;AAEtC9B,MAAM,CAAC+B,SAAS,GAAG;EACjB9B,QAAQ,EAAE+B,kBAAS,CAACC,IAAI;EACxB/B,WAAW,EAAE8B,kBAAS,CAACE,MAAM;EAC7BC,IAAI,EAAEH,kBAAS,CAACE,MAAM,CAACE,UAAU;EACjCjC,OAAO,EAAE6B,kBAAS,CAACK,OAAO,CAACL,kBAAS,CAACE,MAAM,CAAC;EAC5C9B,KAAK,EAAE4B,kBAAS,CAACE,MAAM;EACvB7B,QAAQ,EAAE2B,kBAAS,CAACM,IAAI;EACxBhC,OAAO,EAAE0B,kBAAS,CAACM,IAAI;EACvB/B,OAAO,EAAEyB,kBAAS,CAACM,IAAI;EACvB9B,OAAO,EAAEwB,kBAAS,CAACM;AACrB,CAAC"}
1
+ {"version":3,"file":"Select.js","names":["EMPTY","Select","disabled","emptyOption","options","value","values","onChange","onEnter","onError","onLeave","others","useEffect","errors","getInputErrors","handleChange","event","React","createElement","Primitive","role","tag","target","onFocus","onBlur","className","styles","style","select","empty","map","option","index","displayName","propTypes","PropTypes","bool","string","name","isRequired","arrayOf","func"],"sources":["../../../src/primitives/Select/Select.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { getInputErrors, styles } from '../../helpers';\nimport { Primitive } from '../Primitive';\nimport style from './Select.module.css';\n\nconst EMPTY = '';\n\nconst Select = ({\n disabled,\n emptyOption,\n options = [],\n value,\n values = [],\n onChange,\n onEnter,\n onError,\n onLeave,\n ...others\n}) => {\n useEffect(() => {\n const errors = getInputErrors({ ...others });\n if (errors && onError) onError(errors);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleChange = (value, event) => {\n onError && onError(getInputErrors({ ...others, value }));\n onChange && onChange(value, event);\n };\n\n return React.createElement(\n Primitive,\n {\n ...others,\n disabled,\n role: others.role || 'select',\n tag: 'select',\n value,\n ...(!disabled\n ? {\n onChange: (event) => handleChange(event.target.value, event),\n onFocus: onEnter,\n onBlur: onLeave,\n }\n : {}),\n className: styles(style.select, value === EMPTY && style.empty, others.className),\n },\n <>\n {emptyOption && (\n <Primitive tag=\"option\" value={EMPTY}>\n {emptyOption}\n </Primitive>\n )}\n {options.map((option, index) => (\n <Primitive tag=\"option\" key={option} value={values[index] || option}>\n {option}\n </Primitive>\n ))}\n </>,\n );\n};\n\nSelect.displayName = 'Primitive:Input';\n\nSelect.propTypes = {\n disabled: PropTypes.bool,\n emptyOption: PropTypes.string,\n name: PropTypes.string.isRequired,\n options: PropTypes.arrayOf(PropTypes.string),\n values: PropTypes.arrayOf(PropTypes.string),\n value: PropTypes.string,\n onChange: PropTypes.func,\n onEnter: PropTypes.func,\n onError: PropTypes.func,\n onLeave: PropTypes.func,\n};\n\nexport { Select };\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/ui",
3
- "version": "1.0.226",
3
+ "version": "1.0.228",
4
4
  "repository": "git@gitlab.com:miraicorp/dev/frontend/ui.git",
5
5
  "author": "JΛVI <hello@soyjavi.com>",
6
6
  "license": "MIT",