@mirai/ui 2.1.88 → 2.1.89
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 +4 -0
- package/build/components/InputList/InputList.js +39 -26
- package/build/components/InputList/InputList.js.map +1 -1
- package/build/components/InputList/InputList.module.css +16 -5
- package/build/components/InputList/InputList.stories.js.map +1 -1
- package/build/components/Menu/Menu.js +10 -4
- package/build/components/Menu/Menu.js.map +1 -1
- package/build/components/Menu/Menu.module.css +15 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -693,6 +693,7 @@ A custom select input component that receives the following props:
|
|
|
693
693
|
|
|
694
694
|
- `caption:string` a support text (Ex. currency symbol)
|
|
695
695
|
- `disabled:boolean` applying 'disabled' attribute
|
|
696
|
+
- `emptyOption:string` label used to clear current selection in single mode (shown only when a value is selected and input is not required)
|
|
696
697
|
- `error:boolean` indicating whether there is an error in the input
|
|
697
698
|
- `hint:string` text with additional info to be displayed below the input
|
|
698
699
|
- `icon:string` if you want use an `<Icon>` within the component
|
|
@@ -723,6 +724,7 @@ const Example = (props) => {
|
|
|
723
724
|
|
|
724
725
|
return (
|
|
725
726
|
<InputList
|
|
727
|
+
emptyOption="Select one option..."
|
|
726
728
|
hint="hint"
|
|
727
729
|
label="label"
|
|
728
730
|
name="name"
|
|
@@ -995,6 +997,7 @@ const MyComponent = (props) => {
|
|
|
995
997
|
This component helps you to create a menu over a determinate component receiving the following props:
|
|
996
998
|
|
|
997
999
|
- `children:node` The element which we will use as reference for display the menu.
|
|
1000
|
+
- `header:node` Optional static content rendered above options (outside the scrollable options area).
|
|
998
1001
|
- `options:arrayOf(Option:shape)`
|
|
999
1002
|
- `selected:string|number` if you want highlight one of the options
|
|
1000
1003
|
- `Template:node` if you don't want use the default option scaffold.
|
|
@@ -1018,6 +1021,7 @@ const MyComponent = () => {
|
|
|
1018
1021
|
const [visible, setVisible] = useState(false);
|
|
1019
1022
|
|
|
1020
1023
|
<Menu
|
|
1024
|
+
header={<View>Search...</View>}
|
|
1021
1025
|
options={[
|
|
1022
1026
|
{ icon: 'EyeOpen', label: 'Show results', value: 1 },
|
|
1023
1027
|
{ icon: 'Add', label: 'Add item', disabled: true, value: 2 },
|
|
@@ -43,6 +43,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
|
43
43
|
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
44
44
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) { o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } } return i; }
|
|
45
45
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) { if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } } return t; }
|
|
46
|
+
var EMPTY = 'EMPTY_VALUE';
|
|
46
47
|
var InputList = function InputList(_ref) {
|
|
47
48
|
var disabled = _ref.disabled,
|
|
48
49
|
emptyOption = _ref.emptyOption,
|
|
@@ -80,6 +81,8 @@ var InputList = function InputList(_ref) {
|
|
|
80
81
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
81
82
|
width = _useState8[0],
|
|
82
83
|
setWidth = _useState8[1];
|
|
84
|
+
var selectableOptions = (0, _helpers2.getSelectableOptions)(options);
|
|
85
|
+
var hasSearch = selectableOptions.length > 5 && !isMobile;
|
|
83
86
|
(0, _react.useLayoutEffect)(function () {
|
|
84
87
|
var handleResize = function handleResize() {
|
|
85
88
|
return ref.current && setWidth(ref.current.offsetWidth);
|
|
@@ -92,9 +95,10 @@ var InputList = function InputList(_ref) {
|
|
|
92
95
|
}, []);
|
|
93
96
|
(0, _react.useLayoutEffect)(function () {
|
|
94
97
|
if (!visible || !ref.current || options.length <= 5) return;
|
|
95
|
-
var
|
|
98
|
+
var menuContainer = ref.current.querySelector('ui-menu-content > *');
|
|
99
|
+
var optionsContainer = hasSearch ? menuContainer === null || menuContainer === void 0 ? void 0 : menuContainer.querySelector('[data-menu-options]') : menuContainer;
|
|
96
100
|
if (!optionsContainer) return setMaxHeight(undefined);
|
|
97
|
-
var next = Array.from(optionsContainer.children).slice(
|
|
101
|
+
var next = Array.from(optionsContainer.children).slice(0, 5).reduce(function (sum, option) {
|
|
98
102
|
return sum + option.offsetHeight;
|
|
99
103
|
}, 0);
|
|
100
104
|
setMaxHeight(next);
|
|
@@ -113,26 +117,33 @@ var InputList = function InputList(_ref) {
|
|
|
113
117
|
};
|
|
114
118
|
}, [ref, visible]);
|
|
115
119
|
(0, _react.useEffect)(function () {
|
|
120
|
+
var _optionsContainer$scr;
|
|
116
121
|
if (multiple || !value || !ref.current || !visible) return;
|
|
117
|
-
var
|
|
122
|
+
var menuContainer = ref.current.querySelector('ui-menu-content > *');
|
|
123
|
+
var optionsContainer = hasSearch ? menuContainer === null || menuContainer === void 0 ? void 0 : menuContainer.querySelector('[data-menu-options]') : menuContainer;
|
|
118
124
|
if (!optionsContainer) return;
|
|
119
125
|
var flattenedOptions = (0, _helpers2.flattenOptions)(options);
|
|
120
126
|
var indexOption = flattenedOptions.findIndex(function (option) {
|
|
121
127
|
return option.value === value;
|
|
122
128
|
});
|
|
123
|
-
var
|
|
124
|
-
|
|
125
|
-
|
|
129
|
+
var selectedOption = optionsContainer.children[indexOption];
|
|
130
|
+
if (!selectedOption) return;
|
|
131
|
+
var _selectedOption$getBo = selectedOption.getBoundingClientRect(),
|
|
132
|
+
height = _selectedOption$getBo.height;
|
|
133
|
+
(_optionsContainer$scr = optionsContainer.scrollTo) === null || _optionsContainer$scr === void 0 ? void 0 : _optionsContainer$scr.call(optionsContainer, {
|
|
126
134
|
top: indexOption * height
|
|
127
135
|
});
|
|
128
|
-
}, [multiple, options, ref, value, visible]);
|
|
136
|
+
}, [hasSearch, multiple, options, ref, value, visible]);
|
|
129
137
|
var handlePress = function handlePress() {
|
|
130
138
|
setVisible(function (prevState) {
|
|
131
139
|
return !prevState;
|
|
132
140
|
});
|
|
133
141
|
};
|
|
134
142
|
var handleSelect = function handleSelect(optionValue) {
|
|
135
|
-
if (!optionValue
|
|
143
|
+
if (!optionValue || optionValue === EMPTY) {
|
|
144
|
+
optionValue === EMPTY && onChange(undefined);
|
|
145
|
+
return setVisible(false);
|
|
146
|
+
}
|
|
136
147
|
if (!multiple) {
|
|
137
148
|
onChange(optionValue);
|
|
138
149
|
setVisible(false);
|
|
@@ -143,7 +154,6 @@ var InputList = function InputList(_ref) {
|
|
|
143
154
|
}
|
|
144
155
|
};
|
|
145
156
|
var handleSelectAll = function handleSelectAll() {
|
|
146
|
-
var selectableOptions = (0, _helpers2.getSelectableOptions)(options);
|
|
147
157
|
onChange(value.length === selectableOptions.length ? [] : selectableOptions.map(function (option) {
|
|
148
158
|
return option.value;
|
|
149
159
|
}));
|
|
@@ -180,8 +190,6 @@ var InputList = function InputList(_ref) {
|
|
|
180
190
|
var className = others.className,
|
|
181
191
|
testId = others.testId,
|
|
182
192
|
rest = _objectWithoutProperties(others, _excluded5);
|
|
183
|
-
var selectableOptions = (0, _helpers2.getSelectableOptions)(options);
|
|
184
|
-
var hasSearch = selectableOptions.length > 5 && !isMobile;
|
|
185
193
|
var selected = value ? multiple ? value.map(function (v) {
|
|
186
194
|
return selectableOptions.find(function (option) {
|
|
187
195
|
return option.value === v;
|
|
@@ -202,28 +210,33 @@ var InputList = function InputList(_ref) {
|
|
|
202
210
|
testId: testId
|
|
203
211
|
}, /*#__PURE__*/_react["default"].createElement(_Menu.Menu, {
|
|
204
212
|
disabled: disabled,
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
children: /*#__PURE__*/_react["default"].createElement(_InputList2.Header, {
|
|
208
|
-
l10n: l10n,
|
|
209
|
-
multiple: multiple,
|
|
210
|
-
options: selectableOptions,
|
|
211
|
-
search: search,
|
|
212
|
-
value: value,
|
|
213
|
-
visible: visible,
|
|
214
|
-
onSearch: setSearch,
|
|
215
|
-
onSelectAll: handleSelectAll
|
|
216
|
-
}),
|
|
217
|
-
divider: true,
|
|
213
|
+
header: hasSearch ? /*#__PURE__*/_react["default"].createElement(_primitives.View, {
|
|
214
|
+
row: true,
|
|
218
215
|
className: style.optionSearch,
|
|
219
216
|
style: {
|
|
220
217
|
width: width
|
|
221
218
|
}
|
|
219
|
+
}, /*#__PURE__*/_react["default"].createElement(_primitives.Icon, {
|
|
220
|
+
value: _primitives.ICON.SEARCH,
|
|
221
|
+
className: style.optionSearchIcon
|
|
222
|
+
}), /*#__PURE__*/_react["default"].createElement(_InputList2.Header, {
|
|
223
|
+
l10n: l10n,
|
|
224
|
+
multiple: multiple,
|
|
225
|
+
options: selectableOptions,
|
|
226
|
+
search: search,
|
|
227
|
+
value: value,
|
|
228
|
+
visible: visible,
|
|
229
|
+
onSearch: setSearch,
|
|
230
|
+
onSelectAll: handleSelectAll
|
|
231
|
+
})) : undefined,
|
|
232
|
+
options: [emptyOption && !multiple && !others.required && selected ? {
|
|
233
|
+
name: emptyOption,
|
|
234
|
+
value: EMPTY
|
|
222
235
|
} : undefined].concat(_toConsumableArray((0, _helpers2.flattenOptions)(filteredOptions).sort(function (a, b) {
|
|
223
236
|
if (!sort) return 0;
|
|
224
237
|
if (a.isGroupHeader || b.isGroupHeader) return 0;
|
|
225
238
|
return (a.name || '').localeCompare(b.name || '');
|
|
226
|
-
}).map(function (option) {
|
|
239
|
+
}))).filter(Boolean).map(function (option) {
|
|
227
240
|
if (option.isGroupHeader) {
|
|
228
241
|
return {
|
|
229
242
|
children: /*#__PURE__*/_react["default"].createElement(_InputList.Group, _objectSpread(_objectSpread({}, option), {}, {
|
|
@@ -252,7 +265,7 @@ var InputList = function InputList(_ref) {
|
|
|
252
265
|
value: _value
|
|
253
266
|
};
|
|
254
267
|
}
|
|
255
|
-
})
|
|
268
|
+
}),
|
|
256
269
|
selected: value,
|
|
257
270
|
title: others.label,
|
|
258
271
|
top: others.top,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputList.js","names":["_propTypes","_interopRequireDefault","require","_react","_interopRequireWildcard","_helpers","_hooks","_primitives","_InputSelect","_Menu","_helpers2","_InputList","_InputList2","style","_InputList3","_excluded","_excluded2","_excluded3","_excluded4","_excluded5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","l","f","next","done","_objectWithoutProperties","_objectWithoutPropertiesLoose","s","includes","propertyIsEnumerable","InputList","_ref","disabled","emptyOption","icon","_ref$l10n","l10n","_ref$l10n$labelSelect","labelSelected","_ref$multiple","multiple","options","_ref$sort","sort","_ref$onChange","onChange","others","_useDevice","useDevice","isMobile","ref","useRef","_useState","useState","_useState2","maxHeight","setMaxHeight","_useState3","_useState4","search","setSearch","_useState5","_useState6","visible","setVisible","_useState7","_useState8","width","setWidth","useLayoutEffect","handleResize","current","offsetWidth","window","addEventListener","removeEventListener","optionsContainer","querySelector","undefined","children","reduce","sum","option","offsetHeight","useEffect","handleClick","_ref2","target","contains","document","flattenedOptions","flattenOptions","indexOption","findIndex","_optionsContainer$chi","getBoundingClientRect","height","scrollTo","top","handlePress","prevState","handleSelect","optionValue","item","concat","handleSelectAll","selectableOptions","getSelectableOptions","map","normalizedSearch","toLowerCase","filteredOptions","_ref3","rightElement","group","items","filteredItems","_ref4","JSON","stringify","groupMatches","Boolean","className","testId","rest","hasSearch","selected","v","find","caption","getCaption","createElement","View","tag","styles","container","Menu","ICON","SEARCH","Header","onSearch","onSelectAll","divider","optionSearch","b","isGroupHeader","localeCompare","Group","description","Option","isGroupItem","title","label","onClose","onPress","menu","withSearch","React","Pressable","InputSelect","inputSelect","exports","propTypes","PropTypes","bool","string","any","shape","labelSearch","arrayOf","oneOfType","isRequired","number","func"],"sources":["../../../src/components/InputList/InputList.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { ICON, Pressable, View } from '../../primitives';\nimport { InputSelect } from '../InputSelect';\nimport { Menu } from '../Menu';\nimport { flattenOptions, getCaption, getSelectableOptions } from './helpers';\nimport { Group } from './InputList.Group';\nimport { Header } from './InputList.Header';\nimport * as style from './InputList.module.css';\nimport { Option } from './InputList.Option';\n\nconst InputList = ({\n disabled,\n emptyOption,\n icon,\n l10n: { labelSelected = 'selected', ...l10n } = {},\n multiple = false,\n options,\n sort = false,\n value,\n onChange = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const ref = useRef();\n\n const [maxHeight, setMaxHeight] = useState();\n const [search, setSearch] = useState();\n const [visible, setVisible] = useState(false);\n const [width, setWidth] = useState();\n\n useLayoutEffect(() => {\n const handleResize = () => ref.current && setWidth(ref.current.offsetWidth);\n\n handleResize();\n window.addEventListener('resize', handleResize);\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n useLayoutEffect(() => {\n if (!visible || !ref.current || options.length <= 5) return;\n const optionsContainer = ref.current.querySelector('ui-menu-content > *');\n if (!optionsContainer) return setMaxHeight(undefined);\n\n const next = Array.from(optionsContainer.children)\n .slice(1, 6)\n .reduce((sum, option) => sum + option.offsetHeight, 0);\n\n setMaxHeight(next);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [ref, visible]);\n\n useEffect(() => {\n setSearch(undefined);\n if (!visible || !ref.current) return;\n\n const handleClick = ({ target }) => !ref.current.contains(target) && setVisible(false);\n\n document.addEventListener('click', handleClick, true);\n\n return () => document.removeEventListener('click', handleClick, true);\n }, [ref, visible]);\n\n useEffect(() => {\n if (multiple || !value || !ref.current || !visible) return;\n\n const optionsContainer = ref.current.querySelector('ui-menu-content > *');\n if (!optionsContainer) return;\n\n const flattenedOptions = flattenOptions(options);\n const indexOption = flattenedOptions.findIndex((option) => option.value === value);\n const { height } = optionsContainer.children[indexOption].getBoundingClientRect();\n\n optionsContainer.scrollTo({ top: indexOption * height });\n }, [multiple, options, ref, value, visible]);\n\n const handlePress = () => {\n setVisible((prevState) => !prevState);\n };\n\n const handleSelect = (optionValue) => {\n if (!optionValue) return setVisible(false);\n\n if (!multiple) {\n onChange(optionValue);\n setVisible(false);\n } else {\n onChange(value.includes(optionValue) ? value.filter((item) => item !== optionValue) : [...value, optionValue]);\n }\n };\n\n const handleSelectAll = () => {\n const selectableOptions = getSelectableOptions(options);\n onChange(value.length === selectableOptions.length ? [] : selectableOptions.map((option) => option.value));\n };\n\n const normalizedSearch = search?.toLowerCase();\n const filteredOptions = !search\n ? options\n : options\n // eslint-disable-next-line no-unused-vars\n .map(({ rightElement, ...option }) => {\n if (option.group && option.items) {\n // eslint-disable-next-line no-unused-vars\n const filteredItems = option.items.filter(({ rightElement, ...item }) =>\n JSON.stringify(item).toLowerCase().includes(normalizedSearch),\n );\n const groupMatches = JSON.stringify({ ...option, items: undefined })\n .toLowerCase()\n .includes(normalizedSearch);\n\n if (filteredItems.length > 0 || groupMatches) {\n return {\n ...option,\n rightElement,\n items: filteredItems.length > 0 ? filteredItems : option.items,\n };\n }\n return undefined;\n } else {\n return JSON.stringify(option).toLowerCase().includes(normalizedSearch)\n ? { ...option, rightElement }\n : undefined;\n }\n })\n .filter(Boolean);\n\n const { className, testId, ...rest } = others;\n const selectableOptions = getSelectableOptions(options);\n const hasSearch = selectableOptions.length > 5 && !isMobile;\n const selected = value\n ? multiple\n ? value.map((v) => selectableOptions.find((option) => option.value === v))\n : selectableOptions.find((option) => option.value === value)\n : undefined;\n const caption = getCaption({ emptyOption, multiple, labelSelected, selected });\n\n return (\n <View ref={ref} tag=\"input-list\" className={styles(style.container, className)} testId={testId}>\n <Menu\n disabled={disabled}\n options={[\n hasSearch\n ? {\n icon: ICON.SEARCH,\n children: (\n <Header\n {...{ l10n, multiple, options: selectableOptions, search, value, visible }}\n onSearch={setSearch}\n onSelectAll={handleSelectAll}\n />\n ),\n divider: true,\n className: style.optionSearch,\n style: { width },\n }\n : undefined,\n ...flattenOptions(filteredOptions)\n .sort((a, b) => {\n if (!sort) return 0;\n if (a.isGroupHeader || b.isGroupHeader) return 0;\n return (a.name || '').localeCompare(b.name || '');\n })\n .map((option) => {\n if (option.isGroupHeader) {\n return {\n children: <Group {...{ ...option, selected: value === option.value }} />,\n value: option.value,\n };\n } else {\n const { description, icon, name, rightElement, value } = option;\n return {\n children: (\n <Option\n {...{\n description,\n disabled,\n icon,\n multiple,\n name,\n rightElement,\n selected,\n value,\n isGroupItem: option.isGroupItem,\n }}\n />\n ),\n value,\n };\n }\n }),\n ]}\n selected={value}\n title={others.label}\n top={others.top}\n visible={visible}\n onClose={() => setVisible(false)}\n onPress={handleSelect}\n className={styles(style.menu, multiple && style.multiple, hasSearch && style.withSearch)}\n style={{ maxHeight, width }}\n testId={`${testId}-menu`}\n >\n {React.createElement(\n !disabled || (disabled && multiple) ? Pressable : View,\n {\n ...(!disabled || (disabled && multiple)\n ? {\n onPress: handlePress,\n testId: `${testId}-pressable`,\n }\n : undefined),\n style: { width },\n },\n <InputSelect\n {...rest}\n disabled={disabled}\n icon={selected?.icon || icon}\n options={[caption]}\n value={caption}\n className={style.inputSelect}\n />,\n )}\n </Menu>\n </View>\n );\n};\n\nInputList.propTypes = {\n disabled: PropTypes.bool,\n emptyOption: PropTypes.string,\n icon: PropTypes.any,\n l10n: PropTypes.shape({\n labelSearch: PropTypes.string,\n }),\n multiple: PropTypes.bool,\n options: PropTypes.arrayOf(\n PropTypes.oneOfType([\n // Regular option\n PropTypes.shape({\n description: PropTypes.string,\n icon: PropTypes.any,\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n }),\n // Group option\n PropTypes.shape({\n description: PropTypes.string,\n group: PropTypes.string.isRequired,\n icon: PropTypes.any,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n description: PropTypes.string,\n icon: PropTypes.any,\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n }),\n ).isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n }),\n ]),\n ),\n sort: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.any, PropTypes.arrayOf(PropTypes.any)]),\n onChange: PropTypes.func,\n};\n\nexport { InputList };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InputList.js","names":["_propTypes","_interopRequireDefault","require","_react","_interopRequireWildcard","_helpers","_hooks","_primitives","_InputSelect","_Menu","_helpers2","_InputList","_InputList2","style","_InputList3","_excluded","_excluded2","_excluded3","_excluded4","_excluded5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","l","f","next","done","_objectWithoutProperties","_objectWithoutPropertiesLoose","s","includes","propertyIsEnumerable","EMPTY","InputList","_ref","disabled","emptyOption","icon","_ref$l10n","l10n","_ref$l10n$labelSelect","labelSelected","_ref$multiple","multiple","options","_ref$sort","sort","_ref$onChange","onChange","others","_useDevice","useDevice","isMobile","ref","useRef","_useState","useState","_useState2","maxHeight","setMaxHeight","_useState3","_useState4","search","setSearch","_useState5","_useState6","visible","setVisible","_useState7","_useState8","width","setWidth","selectableOptions","getSelectableOptions","hasSearch","useLayoutEffect","handleResize","current","offsetWidth","window","addEventListener","removeEventListener","menuContainer","querySelector","optionsContainer","undefined","children","reduce","sum","option","offsetHeight","useEffect","handleClick","_ref2","target","contains","document","_optionsContainer$scr","flattenedOptions","flattenOptions","indexOption","findIndex","selectedOption","_selectedOption$getBo","getBoundingClientRect","height","scrollTo","top","handlePress","prevState","handleSelect","optionValue","item","concat","handleSelectAll","map","normalizedSearch","toLowerCase","filteredOptions","_ref3","rightElement","group","items","filteredItems","_ref4","JSON","stringify","groupMatches","Boolean","className","testId","rest","selected","v","find","caption","getCaption","createElement","View","tag","styles","container","Menu","header","row","optionSearch","Icon","ICON","SEARCH","optionSearchIcon","Header","onSearch","onSelectAll","required","b","isGroupHeader","localeCompare","Group","description","Option","isGroupItem","title","label","onClose","onPress","menu","withSearch","React","Pressable","InputSelect","inputSelect","exports","propTypes","PropTypes","bool","string","any","shape","labelSearch","arrayOf","oneOfType","isRequired","number","func"],"sources":["../../../src/components/InputList/InputList.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { ICON, Icon, Pressable, View } from '../../primitives';\nimport { InputSelect } from '../InputSelect';\nimport { Menu } from '../Menu';\nimport { flattenOptions, getCaption, getSelectableOptions } from './helpers';\nimport { Group } from './InputList.Group';\nimport { Header } from './InputList.Header';\nimport * as style from './InputList.module.css';\nimport { Option } from './InputList.Option';\n\nconst EMPTY = 'EMPTY_VALUE';\n\nconst InputList = ({\n disabled,\n emptyOption,\n icon,\n l10n: { labelSelected = 'selected', ...l10n } = {},\n multiple = false,\n options,\n sort = false,\n value,\n onChange = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const ref = useRef();\n\n const [maxHeight, setMaxHeight] = useState();\n const [search, setSearch] = useState();\n const [visible, setVisible] = useState(false);\n const [width, setWidth] = useState();\n const selectableOptions = getSelectableOptions(options);\n const hasSearch = selectableOptions.length > 5 && !isMobile;\n\n useLayoutEffect(() => {\n const handleResize = () => ref.current && setWidth(ref.current.offsetWidth);\n\n handleResize();\n window.addEventListener('resize', handleResize);\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n useLayoutEffect(() => {\n if (!visible || !ref.current || options.length <= 5) return;\n const menuContainer = ref.current.querySelector('ui-menu-content > *');\n const optionsContainer = hasSearch ? menuContainer?.querySelector('[data-menu-options]') : menuContainer;\n if (!optionsContainer) return setMaxHeight(undefined);\n\n const next = Array.from(optionsContainer.children)\n .slice(0, 5)\n .reduce((sum, option) => sum + option.offsetHeight, 0);\n\n setMaxHeight(next);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [ref, visible]);\n\n useEffect(() => {\n setSearch(undefined);\n if (!visible || !ref.current) return;\n\n const handleClick = ({ target }) => !ref.current.contains(target) && setVisible(false);\n\n document.addEventListener('click', handleClick, true);\n\n return () => document.removeEventListener('click', handleClick, true);\n }, [ref, visible]);\n\n useEffect(() => {\n if (multiple || !value || !ref.current || !visible) return;\n\n const menuContainer = ref.current.querySelector('ui-menu-content > *');\n const optionsContainer = hasSearch ? menuContainer?.querySelector('[data-menu-options]') : menuContainer;\n if (!optionsContainer) return;\n\n const flattenedOptions = flattenOptions(options);\n const indexOption = flattenedOptions.findIndex((option) => option.value === value);\n const selectedOption = optionsContainer.children[indexOption];\n if (!selectedOption) return;\n\n const { height } = selectedOption.getBoundingClientRect();\n\n optionsContainer.scrollTo?.({ top: indexOption * height });\n }, [hasSearch, multiple, options, ref, value, visible]);\n\n const handlePress = () => {\n setVisible((prevState) => !prevState);\n };\n\n const handleSelect = (optionValue) => {\n if (!optionValue || optionValue === EMPTY) {\n optionValue === EMPTY && onChange(undefined);\n return setVisible(false);\n }\n\n if (!multiple) {\n onChange(optionValue);\n setVisible(false);\n } else {\n onChange(value.includes(optionValue) ? value.filter((item) => item !== optionValue) : [...value, optionValue]);\n }\n };\n\n const handleSelectAll = () => {\n onChange(value.length === selectableOptions.length ? [] : selectableOptions.map((option) => option.value));\n };\n\n const normalizedSearch = search?.toLowerCase();\n const filteredOptions = !search\n ? options\n : options\n // eslint-disable-next-line no-unused-vars\n .map(({ rightElement, ...option }) => {\n if (option.group && option.items) {\n // eslint-disable-next-line no-unused-vars\n const filteredItems = option.items.filter(({ rightElement, ...item }) =>\n JSON.stringify(item).toLowerCase().includes(normalizedSearch),\n );\n const groupMatches = JSON.stringify({ ...option, items: undefined })\n .toLowerCase()\n .includes(normalizedSearch);\n\n if (filteredItems.length > 0 || groupMatches) {\n return {\n ...option,\n rightElement,\n items: filteredItems.length > 0 ? filteredItems : option.items,\n };\n }\n return undefined;\n } else {\n return JSON.stringify(option).toLowerCase().includes(normalizedSearch)\n ? { ...option, rightElement }\n : undefined;\n }\n })\n .filter(Boolean);\n\n const { className, testId, ...rest } = others;\n const selected = value\n ? multiple\n ? value.map((v) => selectableOptions.find((option) => option.value === v))\n : selectableOptions.find((option) => option.value === value)\n : undefined;\n const caption = getCaption({ emptyOption, multiple, labelSelected, selected });\n\n return (\n <View ref={ref} tag=\"input-list\" className={styles(style.container, className)} testId={testId}>\n <Menu\n disabled={disabled}\n header={\n hasSearch ? (\n <View row className={style.optionSearch} style={{ width }}>\n <Icon value={ICON.SEARCH} className={style.optionSearchIcon} />\n <Header\n {...{ l10n, multiple, options: selectableOptions, search, value, visible }}\n onSearch={setSearch}\n onSelectAll={handleSelectAll}\n />\n </View>\n ) : undefined\n }\n options={[\n emptyOption && !multiple && !others.required && selected ? { name: emptyOption, value: EMPTY } : undefined,\n ...flattenOptions(filteredOptions).sort((a, b) => {\n if (!sort) return 0;\n if (a.isGroupHeader || b.isGroupHeader) return 0;\n return (a.name || '').localeCompare(b.name || '');\n }),\n ]\n .filter(Boolean)\n .map((option) => {\n if (option.isGroupHeader) {\n return {\n children: <Group {...{ ...option, selected: value === option.value }} />,\n value: option.value,\n };\n } else {\n const { description, icon, name, rightElement, value } = option;\n return {\n children: (\n <Option\n {...{\n description,\n disabled,\n icon,\n multiple,\n name,\n rightElement,\n selected,\n value,\n isGroupItem: option.isGroupItem,\n }}\n />\n ),\n value,\n };\n }\n })}\n selected={value}\n title={others.label}\n top={others.top}\n visible={visible}\n onClose={() => setVisible(false)}\n onPress={handleSelect}\n className={styles(style.menu, multiple && style.multiple, hasSearch && style.withSearch)}\n style={{ maxHeight, width }}\n testId={`${testId}-menu`}\n >\n {React.createElement(\n !disabled || (disabled && multiple) ? Pressable : View,\n {\n ...(!disabled || (disabled && multiple)\n ? {\n onPress: handlePress,\n testId: `${testId}-pressable`,\n }\n : undefined),\n style: { width },\n },\n <InputSelect\n {...rest}\n disabled={disabled}\n icon={selected?.icon || icon}\n options={[caption]}\n value={caption}\n className={style.inputSelect}\n />,\n )}\n </Menu>\n </View>\n );\n};\n\nInputList.propTypes = {\n disabled: PropTypes.bool,\n emptyOption: PropTypes.string,\n icon: PropTypes.any,\n l10n: PropTypes.shape({\n labelSearch: PropTypes.string,\n }),\n multiple: PropTypes.bool,\n options: PropTypes.arrayOf(\n PropTypes.oneOfType([\n // Regular option\n PropTypes.shape({\n description: PropTypes.string,\n icon: PropTypes.any,\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n }),\n // Group option\n PropTypes.shape({\n description: PropTypes.string,\n group: PropTypes.string.isRequired,\n icon: PropTypes.any,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n description: PropTypes.string,\n icon: PropTypes.any,\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n }),\n ).isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n }),\n ]),\n ),\n sort: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.any, PropTypes.arrayOf(PropTypes.any)]),\n onChange: PropTypes.func,\n};\n\nexport { InputList };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
flex: 1;
|
|
3
3
|
margin-bottom: var(--mirai-ui-input-text-margin-bottom);
|
|
4
4
|
position: relative;
|
|
5
|
+
width: 100%;
|
|
5
6
|
}
|
|
6
7
|
|
|
7
8
|
.menu {
|
|
@@ -11,7 +12,9 @@
|
|
|
11
12
|
}
|
|
12
13
|
|
|
13
14
|
.menu.withSearch {
|
|
14
|
-
|
|
15
|
+
display: flex;
|
|
16
|
+
flex-direction: column;
|
|
17
|
+
overflow-y: hidden;
|
|
15
18
|
}
|
|
16
19
|
|
|
17
20
|
.menu .option {
|
|
@@ -47,14 +50,22 @@
|
|
|
47
50
|
}
|
|
48
51
|
|
|
49
52
|
.optionSearch {
|
|
53
|
+
align-items: center;
|
|
50
54
|
background-color: var(--mirai-ui-base);
|
|
51
55
|
border-top-left-radius: var(--mirai-ui-button-radius);
|
|
52
56
|
border-top-right-radius: var(--mirai-ui-button-radius);
|
|
57
|
+
border-bottom: var(--mirai-ui-border-width) solid var(--mirai-ui-content-border);
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-shrink: 0;
|
|
60
|
+
gap: var(--mirai-ui-space-M);
|
|
53
61
|
height: calc(var(--mirai-ui-input-min-height) + var(--mirai-ui-border-width));
|
|
54
|
-
|
|
55
|
-
position:
|
|
56
|
-
|
|
57
|
-
|
|
62
|
+
padding: 0 var(--mirai-ui-space-M);
|
|
63
|
+
position: relative;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.optionSearchIcon {
|
|
67
|
+
color: var(--mirai-ui-content);
|
|
68
|
+
flex-shrink: 0;
|
|
58
69
|
}
|
|
59
70
|
|
|
60
71
|
.optionSearch .input {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputList.stories.js","names":["_react","_interopRequireWildcard","require","_primitives","_InputList","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","l","f","next","done","_default","title","exports","iconsKeys","ICON","Story","props","_useState","useState","options","_useState2","setValue","_useState3","_useState4","valueMultiple","setValueMultiple","handleChange","_console","_len","others","_key","console","log","concat","handleChangeMultiple","_console2","_len2","_key2","handleEnter","_console3","_len3","_key3","handleLeave","_console4","_len4","_key4","optionsWithGroups","icon","description","rightElement","type","group","items","createElement","Text","tiny","info","markdown","success","warning","accent","inputListProps","onEnter","onLeave","View","bold","headline","style","marginBottom","InputList","onChange","marginTop","multiple","storyName","args","caption","undefined","disabled","disabledOptions","emptyOption","error","hint","sort","label","required","showRequired","showState","map","_","index","testId","argTypes","control","defaultValue"],"sources":["../../../src/components/InputList/InputList.stories.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport { ICON, Text, View } from '../../primitives';\nimport { InputList } from './InputList';\n\nexport default { title: 'Components' };\n\nconst iconsKeys = Object.keys(ICON);\n\nexport const Story = (props) => {\n const [value, setValue] = useState(props.options[1].value);\n const [valueMultiple, setValueMultiple] = useState([props.options[1].value, props.options[2].value]);\n\n const handleChange = (next, ...others) => {\n setValue(next);\n console.log('<InputList>::onChange', next, ...others);\n };\n\n const handleChangeMultiple = (next, ...others) => {\n setValueMultiple(next);\n console.log('<InputList>::onChangeMultiple', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<InputList>::onEnter', ...others);\n\n const handleLeave = (...others) => console.log('<InputList>::onLeave', ...others);\n\n const optionsWithGroups = [\n ...props.options,\n {\n icon: ICON[iconsKeys[0]],\n name: 'Independent Hotel A',\n value: 100,\n description: 'Luxury boutique hotel',\n rightElement: { type: 'counter', value: 12 },\n },\n {\n group: 'Marriott Chain',\n icon: ICON[iconsKeys[1]],\n value: 'marriott-chain',\n description: '3 hotels available',\n rightElement: { type: 'counter', value: 3 },\n items: [\n {\n icon: ICON[iconsKeys[1]],\n name: 'Marriott Downtown',\n value: 101,\n description: 'In the city center',\n rightElement: { type: 'node', value: <Text tiny info markdown={false}>Popular</Text> },\n },\n {\n icon: ICON[iconsKeys[1]],\n name: 'Marriott Airport',\n value: 102,\n description: 'Near the airport',\n rightElement: { type: 'counter', value: 5 },\n },\n {\n icon: ICON[iconsKeys[1]],\n name: 'Marriott Beach Resort',\n value: 103,\n description: 'Oceanfront resort',\n rightElement: {\n type: 'node',\n value: (\n <Text tiny success markdown={false}>\n Promo\n </Text>\n ),\n },\n },\n ],\n },\n {\n icon: ICON[iconsKeys[2]],\n name: 'Independent Hotel B',\n value: 104,\n description: 'Family-friendly hotel',\n rightElement: { type: 'node', value: <Text tiny warning markdown={false}>New</Text> },\n },\n {\n group: 'Hilton Chain',\n icon: ICON[iconsKeys[3]],\n value: 'hilton-chain',\n description: '2 hotels available',\n rightElement: { type: 'counter', value: 2 },\n items: [\n {\n icon: ICON[iconsKeys[3]],\n name: 'Hilton Grand Plaza',\n value: 105,\n description: '5-star luxury hotel',\n rightElement: { type: 'counter', value: 9 },\n },\n {\n icon: ICON[iconsKeys[3]],\n name: 'Hilton Garden Inn',\n value: 106,\n description: 'Business hotel',\n rightElement: {\n type: 'node',\n value: (\n <Text tiny accent markdown={false}>\n Upgrade\n </Text>\n ),\n },\n },\n ],\n },\n {\n icon: ICON[iconsKeys[4]],\n name: 'Independent Hotel C',\n value: 107,\n description: 'Budget-friendly hotel',\n rightElement: { type: 'counter', value: 1 },\n },\n ];\n\n const inputListProps = {\n ...props,\n // icon: ICON[props.icon],\n onEnter: handleEnter,\n onLeave: handleLeave,\n };\n\n return (\n <View>\n <Text bold headline style={{ marginBottom: 8 }}>\n Simple\n </Text>\n <InputList {...inputListProps} value={value} onChange={handleChange} />\n\n <Text style={{ marginBottom: 8 }}>\n Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's\n standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make\n a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting,\n remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing\n Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions\n of Lorem Ipsum.\n </Text>\n\n <Text style={{ marginBottom: 8 }}>\n Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin\n literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney\n College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and\n going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum\n comes from sections 1.10.32 and 1.10.33 of \"de Finibus Bonorum et Malorum\" (The Extremes of Good and Evil) by\n Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance.\n The first line of Lorem Ipsum, \"Lorem ipsum dolor sit amet..\", comes from a line in section 1.10.32.\n </Text>\n\n <Text bold headline style={{ marginTop: 16, marginBottom: 8 }}>\n Multiple\n </Text>\n <InputList {...inputListProps} multiple value={valueMultiple} onChange={handleChangeMultiple} />\n\n <Text bold headline style={{ marginTop: 32, marginBottom: 8 }}>\n With Groups - Simple\n </Text>\n <InputList \n {...inputListProps}\n options={optionsWithGroups}\n value={value} \n onChange={handleChange} \n />\n </View>\n );\n};\n\nStory.storyName = 'InputList';\n\nStory.args = {\n caption: undefined,\n disabled: false,\n disabledOptions: [false, false, true],\n emptyOption: 'Select one option...',\n error: false,\n hint: undefined,\n icon: undefined,\n sort: false,\n label: 'label',\n name: 'name',\n required: false,\n showRequired: false,\n showState: true,\n success: false,\n warning: false,\n options: Array.from({ length: 16 }).map((_, index) => ({\n icon: ICON[iconsKeys[index]],\n name: `Lorem ipsum dolor sit amet ${index + 1}`,\n value: index + 1,\n description: `Sed do eiusmod ${index + 1} tempor incididunt ut labore et dolore magna aliqua.`,\n rightElement:\n index % 3 === 0\n ? { type: 'counter', value: index + 3 }\n : index % 3 === 1\n ? { type: 'node', value: <Text tiny info markdown={false}>Nuevo</Text> }\n : undefined,\n })),\n // inherited properties\n testId: 'test-story',\n style: {},\n};\n\nStory.argTypes = {\n icon: {\n options: [undefined, ...iconsKeys],\n control: { type: 'select' },\n defaultValue: undefined,\n },\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAAwC,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,sBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,cAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,SAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,eAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAAA,SAAAG,QAAAzB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAe,IAAA,CAAA1B,CAAA,OAAAW,MAAA,CAAAgB,qBAAA,QAAAC,CAAA,GAAAjB,MAAA,CAAAgB,qBAAA,CAAA3B,CAAA,GAAAE,CAAA,KAAA0B,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAA3B,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAA4B,UAAA,OAAA3B,CAAA,CAAA4B,IAAA,CAAAP,KAAA,CAAArB,CAAA,EAAAyB,CAAA,YAAAzB,CAAA;AAAA,SAAA6B,cAAAhC,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAoB,SAAA,CAAAC,MAAA,EAAArB,CAAA,UAAAC,CAAA,WAAAmB,SAAA,CAAApB,CAAA,IAAAoB,SAAA,CAAApB,CAAA,QAAAA,CAAA,OAAAuB,OAAA,CAAAd,MAAA,CAAAR,CAAA,OAAA8B,OAAA,WAAA/B,CAAA,IAAAgC,eAAA,CAAAlC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAwB,yBAAA,GAAAxB,MAAA,CAAAyB,gBAAA,CAAApC,CAAA,EAAAW,MAAA,CAAAwB,yBAAA,CAAAhC,CAAA,KAAAsB,OAAA,CAAAd,MAAA,CAAAR,CAAA,GAAA8B,OAAA,WAAA/B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAAA,SAAAkC,gBAAAlC,CAAA,EAAAE,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAmC,cAAA,CAAAnC,CAAA,MAAAF,CAAA,GAAAW,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,IAAAoC,KAAA,EAAAnC,CAAA,EAAA2B,UAAA,MAAAS,YAAA,MAAAC,QAAA,UAAAxC,CAAA,CAAAE,CAAA,IAAAC,CAAA,EAAAH,CAAA;AAAA,SAAAqC,eAAAlC,CAAA,QAAAc,CAAA,GAAAwB,YAAA,CAAAtC,CAAA,gCAAAE,OAAA,CAAAY,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAwB,aAAAtC,CAAA,EAAAD,CAAA,oBAAAG,OAAA,CAAAF,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAH,CAAA,GAAAG,CAAA,CAAAuC,MAAA,CAAAC,WAAA,kBAAA3C,CAAA,QAAAiB,CAAA,GAAAjB,CAAA,CAAAgB,IAAA,CAAAb,CAAA,EAAAD,CAAA,gCAAAG,OAAA,CAAAY,CAAA,UAAAA,CAAA,YAAA2B,SAAA,yEAAA1C,CAAA,GAAA2C,MAAA,GAAAC,MAAA,EAAA3C,CAAA;AAAA,SAAA4C,mBAAA7C,CAAA,WAAA8C,kBAAA,CAAA9C,CAAA,KAAA+C,gBAAA,CAAA/C,CAAA,KAAAgD,2BAAA,CAAAhD,CAAA,KAAAiD,kBAAA;AAAA,SAAAA,mBAAA,cAAAP,SAAA;AAAA,SAAAK,iBAAA/C,CAAA,8BAAAwC,MAAA,YAAAxC,CAAA,CAAAwC,MAAA,CAAAU,QAAA,aAAAlD,CAAA,uBAAAmD,KAAA,CAAAC,IAAA,CAAApD,CAAA;AAAA,SAAA8C,mBAAA9C,CAAA,QAAAmD,KAAA,CAAAE,OAAA,CAAArD,CAAA,UAAAsD,iBAAA,CAAAtD,CAAA;AAAA,SAAAuD,eAAAvD,CAAA,EAAAF,CAAA,WAAA0D,eAAA,CAAAxD,CAAA,KAAAyD,qBAAA,CAAAzD,CAAA,EAAAF,CAAA,KAAAkD,2BAAA,CAAAhD,CAAA,EAAAF,CAAA,KAAA4D,gBAAA;AAAA,SAAAA,iBAAA,cAAAhB,SAAA;AAAA,SAAAM,4BAAAhD,CAAA,EAAAQ,CAAA,QAAAR,CAAA,2BAAAA,CAAA,SAAAsD,iBAAA,CAAAtD,CAAA,EAAAQ,CAAA,OAAAP,CAAA,MAAA0D,QAAA,CAAA7C,IAAA,CAAAd,CAAA,EAAA4D,KAAA,6BAAA3D,CAAA,IAAAD,CAAA,CAAA6D,WAAA,KAAA5D,CAAA,GAAAD,CAAA,CAAA6D,WAAA,CAAAC,IAAA,aAAA7D,CAAA,cAAAA,CAAA,GAAAkD,KAAA,CAAAC,IAAA,CAAApD,CAAA,oBAAAC,CAAA,+CAAA8D,IAAA,CAAA9D,CAAA,IAAAqD,iBAAA,CAAAtD,CAAA,EAAAQ,CAAA;AAAA,SAAA8C,kBAAAtD,CAAA,EAAAQ,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAR,CAAA,CAAAqB,MAAA,MAAAb,CAAA,GAAAR,CAAA,CAAAqB,MAAA,YAAAvB,CAAA,MAAAQ,CAAA,GAAA6C,KAAA,CAAA3C,CAAA,GAAAV,CAAA,GAAAU,CAAA,EAAAV,CAAA,MAAAQ,CAAA,CAAAR,CAAA,IAAAE,CAAA,CAAAF,CAAA,YAAAQ,CAAA;AAAA,SAAAmD,sBAAAzD,CAAA,EAAAgE,CAAA,QAAA/D,CAAA,WAAAD,CAAA,gCAAAwC,MAAA,IAAAxC,CAAA,CAAAwC,MAAA,CAAAU,QAAA,KAAAlD,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAQ,CAAA,EAAAS,CAAA,EAAAH,CAAA,EAAAJ,CAAA,OAAAyD,CAAA,OAAAvC,CAAA,iBAAAX,CAAA,IAAAd,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAd,CAAA,GAAAkE,IAAA,QAAAF,CAAA,QAAAvD,MAAA,CAAAR,CAAA,MAAAA,CAAA,UAAAgE,CAAA,uBAAAA,CAAA,IAAAnE,CAAA,GAAAiB,CAAA,CAAAD,IAAA,CAAAb,CAAA,GAAAkE,IAAA,MAAA3D,CAAA,CAAAqB,IAAA,CAAA/B,CAAA,CAAAsC,KAAA,GAAA5B,CAAA,CAAAa,MAAA,KAAA2C,CAAA,GAAAC,CAAA,sBAAAjE,CAAA,IAAA0B,CAAA,OAAApB,CAAA,GAAAN,CAAA,yBAAAiE,CAAA,YAAAhE,CAAA,eAAAW,CAAA,GAAAX,CAAA,cAAAQ,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAc,CAAA,QAAApB,CAAA,aAAAE,CAAA;AAAA,SAAAgD,gBAAAxD,CAAA,QAAAmD,KAAA,CAAAE,OAAA,CAAArD,CAAA,UAAAA,CAAA;AAAA,IAAAoE,QAAA,GAEzB;EAAEC,KAAK,EAAE;AAAa,CAAC;AAAAC,OAAA,cAAAF,QAAA;AAEtC,IAAMG,SAAS,GAAG9D,MAAM,CAACe,IAAI,CAACgD,gBAAI,CAAC;AAE5B,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAIC,KAAK,EAAK;EAC9B,IAAAC,SAAA,GAA0B,IAAAC,eAAQ,EAACF,KAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAACzC,KAAK,CAAC;IAAA0C,UAAA,GAAAvB,cAAA,CAAAoB,SAAA;IAAnDvC,KAAK,GAAA0C,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EACtB,IAAAE,UAAA,GAA0C,IAAAJ,eAAQ,EAAC,CAACF,KAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAACzC,KAAK,EAAEsC,KAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAACzC,KAAK,CAAC,CAAC;IAAA6C,UAAA,GAAA1B,cAAA,CAAAyB,UAAA;IAA7FE,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EAEtC,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAIlB,IAAI,EAAgB;IAAA,IAAAmB,QAAA;IACxCN,QAAQ,CAACb,IAAI,CAAC;IAAC,SAAAoB,IAAA,GAAAlE,SAAA,CAAAC,MAAA,EADckE,MAAM,OAAApC,KAAA,CAAAmC,IAAA,OAAAA,IAAA,WAAAE,IAAA,MAAAA,IAAA,GAAAF,IAAA,EAAAE,IAAA;MAAND,MAAM,CAAAC,IAAA,QAAApE,SAAA,CAAAoE,IAAA;IAAA;IAEnC,CAAAH,QAAA,GAAAI,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAA+D,QAAA,GAAC,uBAAuB,EAAEnB,IAAI,EAAAyB,MAAA,CAAKJ,MAAM,EAAC;EACvD,CAAC;EAED,IAAMK,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAI1B,IAAI,EAAgB;IAAA,IAAA2B,SAAA;IAChDV,gBAAgB,CAACjB,IAAI,CAAC;IAAC,SAAA4B,KAAA,GAAA1E,SAAA,CAAAC,MAAA,EADckE,MAAM,OAAApC,KAAA,CAAA2C,KAAA,OAAAA,KAAA,WAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAANR,MAAM,CAAAQ,KAAA,QAAA3E,SAAA,CAAA2E,KAAA;IAAA;IAE3C,CAAAF,SAAA,GAAAJ,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAAuE,SAAA,GAAC,+BAA+B,EAAE3B,IAAI,EAAAyB,MAAA,CAAKJ,MAAM,EAAC;EAC/D,CAAC;EAED,IAAMS,WAAW,GAAG,SAAdA,WAAWA,CAAA;IAAA,IAAAC,SAAA;IAAA,SAAAC,KAAA,GAAA9E,SAAA,CAAAC,MAAA,EAAOkE,MAAM,OAAApC,KAAA,CAAA+C,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAANZ,MAAM,CAAAY,KAAA,IAAA/E,SAAA,CAAA+E,KAAA;IAAA;IAAA,OAAK,CAAAF,SAAA,GAAAR,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAA2E,SAAA,GAAC,sBAAsB,EAAAN,MAAA,CAAKJ,MAAM,EAAC;EAAA;EAEjF,IAAMa,WAAW,GAAG,SAAdA,WAAWA,CAAA;IAAA,IAAAC,SAAA;IAAA,SAAAC,KAAA,GAAAlF,SAAA,CAAAC,MAAA,EAAOkE,MAAM,OAAApC,KAAA,CAAAmD,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAANhB,MAAM,CAAAgB,KAAA,IAAAnF,SAAA,CAAAmF,KAAA;IAAA;IAAA,OAAK,CAAAF,SAAA,GAAAZ,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAA+E,SAAA,GAAC,sBAAsB,EAAAV,MAAA,CAAKJ,MAAM,EAAC;EAAA;EAEjF,IAAMiB,iBAAiB,MAAAb,MAAA,CAAA9C,kBAAA,CAClB6B,KAAK,CAACG,OAAO,IAChB;IACE4B,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBT,IAAI,EAAE,qBAAqB;IAC3B1B,KAAK,EAAE,GAAG;IACVsE,WAAW,EAAE,uBAAuB;IACpCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAG;EAC7C,CAAC,EACD;IACEyE,KAAK,EAAE,gBAAgB;IACvBJ,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBnC,KAAK,EAAE,gBAAgB;IACvBsE,WAAW,EAAE,oBAAoB;IACjCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAE,CAAC;IAC3C0E,KAAK,EAAE,CACL;MACEL,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,mBAAmB;MACzB1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,oBAAoB;MACjCC,YAAY,EAAE;QAAEC,IAAI,EAAE,MAAM;QAAExE,KAAK,eAAE5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACC,IAAI;UAACC,QAAQ,EAAE;QAAM,GAAC,SAAa;MAAE;IACvF,CAAC,EACD;MACEV,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,kBAAkB;MACxB1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,kBAAkB;MAC/BC,YAAY,EAAE;QAAEC,IAAI,EAAE,SAAS;QAAExE,KAAK,EAAE;MAAE;IAC5C,CAAC,EACD;MACEqE,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,uBAAuB;MAC7B1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,mBAAmB;MAChCC,YAAY,EAAE;QACZC,IAAI,EAAE,MAAM;QACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACG,OAAO;UAACD,QAAQ,EAAE;QAAM,GAAC,OAE9B;MAEV;IACF,CAAC;EAEL,CAAC,EACD;IACEV,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBT,IAAI,EAAE,qBAAqB;IAC3B1B,KAAK,EAAE,GAAG;IACVsE,WAAW,EAAE,uBAAuB;IACpCC,YAAY,EAAE;MAAEC,IAAI,EAAE,MAAM;MAAExE,KAAK,eAAE5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;QAACC,IAAI;QAACI,OAAO;QAACF,QAAQ,EAAE;MAAM,GAAC,KAAS;IAAE;EACtF,CAAC,EACD;IACEN,KAAK,EAAE,cAAc;IACrBJ,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBnC,KAAK,EAAE,cAAc;IACrBsE,WAAW,EAAE,oBAAoB;IACjCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAE,CAAC;IAC3C0E,KAAK,EAAE,CACL;MACEL,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,oBAAoB;MAC1B1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,qBAAqB;MAClCC,YAAY,EAAE;QAAEC,IAAI,EAAE,SAAS;QAAExE,KAAK,EAAE;MAAE;IAC5C,CAAC,EACD;MACEqE,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,mBAAmB;MACzB1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,gBAAgB;MAC7BC,YAAY,EAAE;QACZC,IAAI,EAAE,MAAM;QACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACK,MAAM;UAACH,QAAQ,EAAE;QAAM,GAAC,SAE7B;MAEV;IACF,CAAC;EAEL,CAAC,EACD;IACEV,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBT,IAAI,EAAE,qBAAqB;IAC3B1B,KAAK,EAAE,GAAG;IACVsE,WAAW,EAAE,uBAAuB;IACpCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAE;EAC5C,CAAC,EACF;EAED,IAAMmF,cAAc,GAAAzF,aAAA,CAAAA,aAAA,KACf4C,KAAK;IACR;IACA8C,OAAO,EAAExB,WAAW;IACpByB,OAAO,EAAErB;EAAW,EACrB;EAED,oBACE5G,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAA+H,IAAI,qBACHlI,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACW,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE;EAAE,GAAC,QAE1C,CAAC,eACPtI,MAAA,YAAAuH,aAAA,CAACnH,UAAA,CAAAmI,SAAS,EAAA9G,QAAA,KAAKsG,cAAc;IAAEnF,KAAK,EAAEA,KAAM;IAAC4F,QAAQ,EAAE5C;EAAa,EAAE,CAAC,eAEvE5F,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACa,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE;EAAE,GAAC,gkBAO5B,CAAC,eAEPtI,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACa,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE;EAAE,GAAC,iwBAQ5B,CAAC,eAEPtI,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACW,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;MAAEI,SAAS,EAAE,EAAE;MAAEH,YAAY,EAAE;IAAE;EAAE,GAAC,UAEzD,CAAC,eACPtI,MAAA,YAAAuH,aAAA,CAACnH,UAAA,CAAAmI,SAAS,EAAA9G,QAAA,KAAKsG,cAAc;IAAEW,QAAQ;IAAC9F,KAAK,EAAE8C,aAAc;IAAC8C,QAAQ,EAAEpC;EAAqB,EAAE,CAAC,eAEhGpG,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACW,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;MAAEI,SAAS,EAAE,EAAE;MAAEH,YAAY,EAAE;IAAE;EAAE,GAAC,sBAEzD,CAAC,eACPtI,MAAA,YAAAuH,aAAA,CAACnH,UAAA,CAAAmI,SAAS,EAAA9G,QAAA,KACJsG,cAAc;IAClB1C,OAAO,EAAE2B,iBAAkB;IAC3BpE,KAAK,EAAEA,KAAM;IACb4F,QAAQ,EAAE5C;EAAa,EACxB,CACG,CAAC;AAEX,CAAC;AAACd,OAAA,CAAAG,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAAC0D,SAAS,GAAG,WAAW;AAE7B1D,KAAK,CAAC2D,IAAI,GAAG;EACXC,OAAO,EAAEC,SAAS;EAClBC,QAAQ,EAAE,KAAK;EACfC,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;EACrCC,WAAW,EAAE,sBAAsB;EACnCC,KAAK,EAAE,KAAK;EACZC,IAAI,EAAEL,SAAS;EACf7B,IAAI,EAAE6B,SAAS;EACfM,IAAI,EAAE,KAAK;EACXC,KAAK,EAAE,OAAO;EACd/E,IAAI,EAAE,MAAM;EACZgF,QAAQ,EAAE,KAAK;EACfC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACf5B,OAAO,EAAE,KAAK;EACdC,OAAO,EAAE,KAAK;EACdxC,OAAO,EAAE1B,KAAK,CAACC,IAAI,CAAC;IAAE/B,MAAM,EAAE;EAAG,CAAC,CAAC,CAAC4H,GAAG,CAAC,UAACC,CAAC,EAAEC,KAAK;IAAA,OAAM;MACrD1C,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC4E,KAAK,CAAC,CAAC;MAC5BrF,IAAI,gCAAA6B,MAAA,CAAgCwD,KAAK,GAAG,CAAC,CAAE;MAC/C/G,KAAK,EAAE+G,KAAK,GAAG,CAAC;MAChBzC,WAAW,oBAAAf,MAAA,CAAoBwD,KAAK,GAAG,CAAC,yDAAsD;MAC9FxC,YAAY,EACVwC,KAAK,GAAG,CAAC,KAAK,CAAC,GACX;QAAEvC,IAAI,EAAE,SAAS;QAAExE,KAAK,EAAE+G,KAAK,GAAG;MAAE,CAAC,GACrCA,KAAK,GAAG,CAAC,KAAK,CAAC,GACf;QAAEvC,IAAI,EAAE,MAAM;QAAExE,KAAK,eAAE5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACC,IAAI;UAACC,QAAQ,EAAE;QAAM,GAAC,OAAW;MAAE,CAAC,GACtEmB;IACR,CAAC;EAAA,CAAC,CAAC;EACH;EACAc,MAAM,EAAE,YAAY;EACpBvB,KAAK,EAAE,CAAC;AACV,CAAC;AAEDpD,KAAK,CAAC4E,QAAQ,GAAG;EACf5C,IAAI,EAAE;IACJ5B,OAAO,GAAGyD,SAAS,EAAA3C,MAAA,CAAKpB,SAAS,CAAC;IAClC+E,OAAO,EAAE;MAAE1C,IAAI,EAAE;IAAS,CAAC;IAC3B2C,YAAY,EAAEjB;EAChB;AACF,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InputList.stories.js","names":["_react","_interopRequireWildcard","require","_primitives","_InputList","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","l","f","next","done","_default","title","exports","iconsKeys","ICON","Story","props","_useState","useState","options","_useState2","setValue","_useState3","_useState4","valueMultiple","setValueMultiple","handleChange","_console","_len","others","_key","console","log","concat","handleChangeMultiple","_console2","_len2","_key2","handleEnter","_console3","_len3","_key3","handleLeave","_console4","_len4","_key4","optionsWithGroups","icon","description","rightElement","type","group","items","createElement","Text","tiny","info","markdown","success","warning","accent","inputListProps","onEnter","onLeave","View","bold","headline","style","marginBottom","InputList","onChange","marginTop","multiple","storyName","args","caption","undefined","disabled","disabledOptions","emptyOption","error","hint","sort","label","required","showRequired","showState","map","_","index","testId","argTypes","control","defaultValue"],"sources":["../../../src/components/InputList/InputList.stories.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport { ICON, Text, View } from '../../primitives';\nimport { InputList } from './InputList';\n\nexport default { title: 'Components' };\n\nconst iconsKeys = Object.keys(ICON);\n\nexport const Story = (props) => {\n const [value, setValue] = useState(props.options[1].value);\n const [valueMultiple, setValueMultiple] = useState([props.options[1].value, props.options[2].value]);\n\n const handleChange = (next, ...others) => {\n setValue(next);\n console.log('<InputList>::onChange', next, ...others);\n };\n\n const handleChangeMultiple = (next, ...others) => {\n setValueMultiple(next);\n console.log('<InputList>::onChangeMultiple', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<InputList>::onEnter', ...others);\n\n const handleLeave = (...others) => console.log('<InputList>::onLeave', ...others);\n\n const optionsWithGroups = [\n ...props.options,\n {\n icon: ICON[iconsKeys[0]],\n name: 'Independent Hotel A',\n value: 100,\n description: 'Luxury boutique hotel',\n rightElement: { type: 'counter', value: 12 },\n },\n {\n group: 'Marriott Chain',\n icon: ICON[iconsKeys[1]],\n value: 'marriott-chain',\n description: '3 hotels available',\n rightElement: { type: 'counter', value: 3 },\n items: [\n {\n icon: ICON[iconsKeys[1]],\n name: 'Marriott Downtown',\n value: 101,\n description: 'In the city center',\n rightElement: {\n type: 'node',\n value: (\n <Text tiny info markdown={false}>\n Popular\n </Text>\n ),\n },\n },\n {\n icon: ICON[iconsKeys[1]],\n name: 'Marriott Airport',\n value: 102,\n description: 'Near the airport',\n rightElement: { type: 'counter', value: 5 },\n },\n {\n icon: ICON[iconsKeys[1]],\n name: 'Marriott Beach Resort',\n value: 103,\n description: 'Oceanfront resort',\n rightElement: {\n type: 'node',\n value: (\n <Text tiny success markdown={false}>\n Promo\n </Text>\n ),\n },\n },\n ],\n },\n {\n icon: ICON[iconsKeys[2]],\n name: 'Independent Hotel B',\n value: 104,\n description: 'Family-friendly hotel',\n rightElement: {\n type: 'node',\n value: (\n <Text tiny warning markdown={false}>\n New\n </Text>\n ),\n },\n },\n {\n group: 'Hilton Chain',\n icon: ICON[iconsKeys[3]],\n value: 'hilton-chain',\n description: '2 hotels available',\n rightElement: { type: 'counter', value: 2 },\n items: [\n {\n icon: ICON[iconsKeys[3]],\n name: 'Hilton Grand Plaza',\n value: 105,\n description: '5-star luxury hotel',\n rightElement: { type: 'counter', value: 9 },\n },\n {\n icon: ICON[iconsKeys[3]],\n name: 'Hilton Garden Inn',\n value: 106,\n description: 'Business hotel',\n rightElement: {\n type: 'node',\n value: (\n <Text tiny accent markdown={false}>\n Upgrade\n </Text>\n ),\n },\n },\n ],\n },\n {\n icon: ICON[iconsKeys[4]],\n name: 'Independent Hotel C',\n value: 107,\n description: 'Budget-friendly hotel',\n rightElement: { type: 'counter', value: 1 },\n },\n ];\n\n const inputListProps = {\n ...props,\n // icon: ICON[props.icon],\n onEnter: handleEnter,\n onLeave: handleLeave,\n };\n\n return (\n <View>\n <Text bold headline style={{ marginBottom: 8 }}>\n Simple\n </Text>\n <InputList {...inputListProps} value={value} onChange={handleChange} />\n\n <Text style={{ marginBottom: 8 }}>\n Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's\n standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make\n a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting,\n remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing\n Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions\n of Lorem Ipsum.\n </Text>\n\n <Text style={{ marginBottom: 8 }}>\n Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin\n literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney\n College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and\n going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum\n comes from sections 1.10.32 and 1.10.33 of \"de Finibus Bonorum et Malorum\" (The Extremes of Good and Evil) by\n Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance.\n The first line of Lorem Ipsum, \"Lorem ipsum dolor sit amet..\", comes from a line in section 1.10.32.\n </Text>\n\n <Text bold headline style={{ marginTop: 16, marginBottom: 8 }}>\n Multiple\n </Text>\n <InputList {...inputListProps} multiple value={valueMultiple} onChange={handleChangeMultiple} />\n\n <Text bold headline style={{ marginTop: 32, marginBottom: 8 }}>\n With Groups - Simple\n </Text>\n <InputList {...inputListProps} options={optionsWithGroups} value={value} onChange={handleChange} />\n </View>\n );\n};\n\nStory.storyName = 'InputList';\n\nStory.args = {\n caption: undefined,\n disabled: false,\n disabledOptions: [false, false, true],\n emptyOption: 'Select one option...',\n error: false,\n hint: undefined,\n icon: undefined,\n sort: false,\n label: 'label',\n name: 'name',\n required: false,\n showRequired: false,\n showState: true,\n success: false,\n warning: false,\n options: Array.from({ length: 16 }).map((_, index) => ({\n icon: ICON[iconsKeys[index]],\n name: `Lorem ipsum dolor sit amet ${index + 1}`,\n value: index + 1,\n description: `Sed do eiusmod ${index + 1} tempor incididunt ut labore et dolore magna aliqua.`,\n rightElement:\n index % 3 === 0\n ? { type: 'counter', value: index + 3 }\n : index % 3 === 1\n ? {\n type: 'node',\n value: (\n <Text tiny info markdown={false}>\n Nuevo\n </Text>\n ),\n }\n : undefined,\n })),\n // inherited properties\n testId: 'test-story',\n style: {},\n};\n\nStory.argTypes = {\n icon: {\n options: [undefined, ...iconsKeys],\n control: { type: 'select' },\n defaultValue: undefined,\n },\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAAwC,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,sBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,cAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,SAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,eAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAAA,SAAAG,QAAAzB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAe,IAAA,CAAA1B,CAAA,OAAAW,MAAA,CAAAgB,qBAAA,QAAAC,CAAA,GAAAjB,MAAA,CAAAgB,qBAAA,CAAA3B,CAAA,GAAAE,CAAA,KAAA0B,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAA3B,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAA4B,UAAA,OAAA3B,CAAA,CAAA4B,IAAA,CAAAP,KAAA,CAAArB,CAAA,EAAAyB,CAAA,YAAAzB,CAAA;AAAA,SAAA6B,cAAAhC,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAoB,SAAA,CAAAC,MAAA,EAAArB,CAAA,UAAAC,CAAA,WAAAmB,SAAA,CAAApB,CAAA,IAAAoB,SAAA,CAAApB,CAAA,QAAAA,CAAA,OAAAuB,OAAA,CAAAd,MAAA,CAAAR,CAAA,OAAA8B,OAAA,WAAA/B,CAAA,IAAAgC,eAAA,CAAAlC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAwB,yBAAA,GAAAxB,MAAA,CAAAyB,gBAAA,CAAApC,CAAA,EAAAW,MAAA,CAAAwB,yBAAA,CAAAhC,CAAA,KAAAsB,OAAA,CAAAd,MAAA,CAAAR,CAAA,GAAA8B,OAAA,WAAA/B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAAA,SAAAkC,gBAAAlC,CAAA,EAAAE,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAmC,cAAA,CAAAnC,CAAA,MAAAF,CAAA,GAAAW,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,IAAAoC,KAAA,EAAAnC,CAAA,EAAA2B,UAAA,MAAAS,YAAA,MAAAC,QAAA,UAAAxC,CAAA,CAAAE,CAAA,IAAAC,CAAA,EAAAH,CAAA;AAAA,SAAAqC,eAAAlC,CAAA,QAAAc,CAAA,GAAAwB,YAAA,CAAAtC,CAAA,gCAAAE,OAAA,CAAAY,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAwB,aAAAtC,CAAA,EAAAD,CAAA,oBAAAG,OAAA,CAAAF,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAH,CAAA,GAAAG,CAAA,CAAAuC,MAAA,CAAAC,WAAA,kBAAA3C,CAAA,QAAAiB,CAAA,GAAAjB,CAAA,CAAAgB,IAAA,CAAAb,CAAA,EAAAD,CAAA,gCAAAG,OAAA,CAAAY,CAAA,UAAAA,CAAA,YAAA2B,SAAA,yEAAA1C,CAAA,GAAA2C,MAAA,GAAAC,MAAA,EAAA3C,CAAA;AAAA,SAAA4C,mBAAA7C,CAAA,WAAA8C,kBAAA,CAAA9C,CAAA,KAAA+C,gBAAA,CAAA/C,CAAA,KAAAgD,2BAAA,CAAAhD,CAAA,KAAAiD,kBAAA;AAAA,SAAAA,mBAAA,cAAAP,SAAA;AAAA,SAAAK,iBAAA/C,CAAA,8BAAAwC,MAAA,YAAAxC,CAAA,CAAAwC,MAAA,CAAAU,QAAA,aAAAlD,CAAA,uBAAAmD,KAAA,CAAAC,IAAA,CAAApD,CAAA;AAAA,SAAA8C,mBAAA9C,CAAA,QAAAmD,KAAA,CAAAE,OAAA,CAAArD,CAAA,UAAAsD,iBAAA,CAAAtD,CAAA;AAAA,SAAAuD,eAAAvD,CAAA,EAAAF,CAAA,WAAA0D,eAAA,CAAAxD,CAAA,KAAAyD,qBAAA,CAAAzD,CAAA,EAAAF,CAAA,KAAAkD,2BAAA,CAAAhD,CAAA,EAAAF,CAAA,KAAA4D,gBAAA;AAAA,SAAAA,iBAAA,cAAAhB,SAAA;AAAA,SAAAM,4BAAAhD,CAAA,EAAAQ,CAAA,QAAAR,CAAA,2BAAAA,CAAA,SAAAsD,iBAAA,CAAAtD,CAAA,EAAAQ,CAAA,OAAAP,CAAA,MAAA0D,QAAA,CAAA7C,IAAA,CAAAd,CAAA,EAAA4D,KAAA,6BAAA3D,CAAA,IAAAD,CAAA,CAAA6D,WAAA,KAAA5D,CAAA,GAAAD,CAAA,CAAA6D,WAAA,CAAAC,IAAA,aAAA7D,CAAA,cAAAA,CAAA,GAAAkD,KAAA,CAAAC,IAAA,CAAApD,CAAA,oBAAAC,CAAA,+CAAA8D,IAAA,CAAA9D,CAAA,IAAAqD,iBAAA,CAAAtD,CAAA,EAAAQ,CAAA;AAAA,SAAA8C,kBAAAtD,CAAA,EAAAQ,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAR,CAAA,CAAAqB,MAAA,MAAAb,CAAA,GAAAR,CAAA,CAAAqB,MAAA,YAAAvB,CAAA,MAAAQ,CAAA,GAAA6C,KAAA,CAAA3C,CAAA,GAAAV,CAAA,GAAAU,CAAA,EAAAV,CAAA,MAAAQ,CAAA,CAAAR,CAAA,IAAAE,CAAA,CAAAF,CAAA,YAAAQ,CAAA;AAAA,SAAAmD,sBAAAzD,CAAA,EAAAgE,CAAA,QAAA/D,CAAA,WAAAD,CAAA,gCAAAwC,MAAA,IAAAxC,CAAA,CAAAwC,MAAA,CAAAU,QAAA,KAAAlD,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAQ,CAAA,EAAAS,CAAA,EAAAH,CAAA,EAAAJ,CAAA,OAAAyD,CAAA,OAAAvC,CAAA,iBAAAX,CAAA,IAAAd,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAd,CAAA,GAAAkE,IAAA,QAAAF,CAAA,QAAAvD,MAAA,CAAAR,CAAA,MAAAA,CAAA,UAAAgE,CAAA,uBAAAA,CAAA,IAAAnE,CAAA,GAAAiB,CAAA,CAAAD,IAAA,CAAAb,CAAA,GAAAkE,IAAA,MAAA3D,CAAA,CAAAqB,IAAA,CAAA/B,CAAA,CAAAsC,KAAA,GAAA5B,CAAA,CAAAa,MAAA,KAAA2C,CAAA,GAAAC,CAAA,sBAAAjE,CAAA,IAAA0B,CAAA,OAAApB,CAAA,GAAAN,CAAA,yBAAAiE,CAAA,YAAAhE,CAAA,eAAAW,CAAA,GAAAX,CAAA,cAAAQ,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAc,CAAA,QAAApB,CAAA,aAAAE,CAAA;AAAA,SAAAgD,gBAAAxD,CAAA,QAAAmD,KAAA,CAAAE,OAAA,CAAArD,CAAA,UAAAA,CAAA;AAAA,IAAAoE,QAAA,GAEzB;EAAEC,KAAK,EAAE;AAAa,CAAC;AAAAC,OAAA,cAAAF,QAAA;AAEtC,IAAMG,SAAS,GAAG9D,MAAM,CAACe,IAAI,CAACgD,gBAAI,CAAC;AAE5B,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAIC,KAAK,EAAK;EAC9B,IAAAC,SAAA,GAA0B,IAAAC,eAAQ,EAACF,KAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAACzC,KAAK,CAAC;IAAA0C,UAAA,GAAAvB,cAAA,CAAAoB,SAAA;IAAnDvC,KAAK,GAAA0C,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EACtB,IAAAE,UAAA,GAA0C,IAAAJ,eAAQ,EAAC,CAACF,KAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAACzC,KAAK,EAAEsC,KAAK,CAACG,OAAO,CAAC,CAAC,CAAC,CAACzC,KAAK,CAAC,CAAC;IAAA6C,UAAA,GAAA1B,cAAA,CAAAyB,UAAA;IAA7FE,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EAEtC,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAIlB,IAAI,EAAgB;IAAA,IAAAmB,QAAA;IACxCN,QAAQ,CAACb,IAAI,CAAC;IAAC,SAAAoB,IAAA,GAAAlE,SAAA,CAAAC,MAAA,EADckE,MAAM,OAAApC,KAAA,CAAAmC,IAAA,OAAAA,IAAA,WAAAE,IAAA,MAAAA,IAAA,GAAAF,IAAA,EAAAE,IAAA;MAAND,MAAM,CAAAC,IAAA,QAAApE,SAAA,CAAAoE,IAAA;IAAA;IAEnC,CAAAH,QAAA,GAAAI,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAA+D,QAAA,GAAC,uBAAuB,EAAEnB,IAAI,EAAAyB,MAAA,CAAKJ,MAAM,EAAC;EACvD,CAAC;EAED,IAAMK,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAI1B,IAAI,EAAgB;IAAA,IAAA2B,SAAA;IAChDV,gBAAgB,CAACjB,IAAI,CAAC;IAAC,SAAA4B,KAAA,GAAA1E,SAAA,CAAAC,MAAA,EADckE,MAAM,OAAApC,KAAA,CAAA2C,KAAA,OAAAA,KAAA,WAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAANR,MAAM,CAAAQ,KAAA,QAAA3E,SAAA,CAAA2E,KAAA;IAAA;IAE3C,CAAAF,SAAA,GAAAJ,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAAuE,SAAA,GAAC,+BAA+B,EAAE3B,IAAI,EAAAyB,MAAA,CAAKJ,MAAM,EAAC;EAC/D,CAAC;EAED,IAAMS,WAAW,GAAG,SAAdA,WAAWA,CAAA;IAAA,IAAAC,SAAA;IAAA,SAAAC,KAAA,GAAA9E,SAAA,CAAAC,MAAA,EAAOkE,MAAM,OAAApC,KAAA,CAAA+C,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAANZ,MAAM,CAAAY,KAAA,IAAA/E,SAAA,CAAA+E,KAAA;IAAA;IAAA,OAAK,CAAAF,SAAA,GAAAR,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAA2E,SAAA,GAAC,sBAAsB,EAAAN,MAAA,CAAKJ,MAAM,EAAC;EAAA;EAEjF,IAAMa,WAAW,GAAG,SAAdA,WAAWA,CAAA;IAAA,IAAAC,SAAA;IAAA,SAAAC,KAAA,GAAAlF,SAAA,CAAAC,MAAA,EAAOkE,MAAM,OAAApC,KAAA,CAAAmD,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAANhB,MAAM,CAAAgB,KAAA,IAAAnF,SAAA,CAAAmF,KAAA;IAAA;IAAA,OAAK,CAAAF,SAAA,GAAAZ,OAAO,EAACC,GAAG,CAAApE,KAAA,CAAA+E,SAAA,GAAC,sBAAsB,EAAAV,MAAA,CAAKJ,MAAM,EAAC;EAAA;EAEjF,IAAMiB,iBAAiB,MAAAb,MAAA,CAAA9C,kBAAA,CAClB6B,KAAK,CAACG,OAAO,IAChB;IACE4B,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBT,IAAI,EAAE,qBAAqB;IAC3B1B,KAAK,EAAE,GAAG;IACVsE,WAAW,EAAE,uBAAuB;IACpCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAG;EAC7C,CAAC,EACD;IACEyE,KAAK,EAAE,gBAAgB;IACvBJ,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBnC,KAAK,EAAE,gBAAgB;IACvBsE,WAAW,EAAE,oBAAoB;IACjCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAE,CAAC;IAC3C0E,KAAK,EAAE,CACL;MACEL,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,mBAAmB;MACzB1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,oBAAoB;MACjCC,YAAY,EAAE;QACZC,IAAI,EAAE,MAAM;QACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACC,IAAI;UAACC,QAAQ,EAAE;QAAM,GAAC,SAE3B;MAEV;IACF,CAAC,EACD;MACEV,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,kBAAkB;MACxB1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,kBAAkB;MAC/BC,YAAY,EAAE;QAAEC,IAAI,EAAE,SAAS;QAAExE,KAAK,EAAE;MAAE;IAC5C,CAAC,EACD;MACEqE,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,uBAAuB;MAC7B1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,mBAAmB;MAChCC,YAAY,EAAE;QACZC,IAAI,EAAE,MAAM;QACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACG,OAAO;UAACD,QAAQ,EAAE;QAAM,GAAC,OAE9B;MAEV;IACF,CAAC;EAEL,CAAC,EACD;IACEV,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBT,IAAI,EAAE,qBAAqB;IAC3B1B,KAAK,EAAE,GAAG;IACVsE,WAAW,EAAE,uBAAuB;IACpCC,YAAY,EAAE;MACZC,IAAI,EAAE,MAAM;MACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;QAACC,IAAI;QAACI,OAAO;QAACF,QAAQ,EAAE;MAAM,GAAC,KAE9B;IAEV;EACF,CAAC,EACD;IACEN,KAAK,EAAE,cAAc;IACrBJ,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBnC,KAAK,EAAE,cAAc;IACrBsE,WAAW,EAAE,oBAAoB;IACjCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAE,CAAC;IAC3C0E,KAAK,EAAE,CACL;MACEL,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,oBAAoB;MAC1B1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,qBAAqB;MAClCC,YAAY,EAAE;QAAEC,IAAI,EAAE,SAAS;QAAExE,KAAK,EAAE;MAAE;IAC5C,CAAC,EACD;MACEqE,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;MACxBT,IAAI,EAAE,mBAAmB;MACzB1B,KAAK,EAAE,GAAG;MACVsE,WAAW,EAAE,gBAAgB;MAC7BC,YAAY,EAAE;QACZC,IAAI,EAAE,MAAM;QACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACK,MAAM;UAACH,QAAQ,EAAE;QAAM,GAAC,SAE7B;MAEV;IACF,CAAC;EAEL,CAAC,EACD;IACEV,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC,CAAC,CAAC,CAAC;IACxBT,IAAI,EAAE,qBAAqB;IAC3B1B,KAAK,EAAE,GAAG;IACVsE,WAAW,EAAE,uBAAuB;IACpCC,YAAY,EAAE;MAAEC,IAAI,EAAE,SAAS;MAAExE,KAAK,EAAE;IAAE;EAC5C,CAAC,EACF;EAED,IAAMmF,cAAc,GAAAzF,aAAA,CAAAA,aAAA,KACf4C,KAAK;IACR;IACA8C,OAAO,EAAExB,WAAW;IACpByB,OAAO,EAAErB;EAAW,EACrB;EAED,oBACE5G,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAA+H,IAAI,qBACHlI,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACW,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE;EAAE,GAAC,QAE1C,CAAC,eACPtI,MAAA,YAAAuH,aAAA,CAACnH,UAAA,CAAAmI,SAAS,EAAA9G,QAAA,KAAKsG,cAAc;IAAEnF,KAAK,EAAEA,KAAM;IAAC4F,QAAQ,EAAE5C;EAAa,EAAE,CAAC,eAEvE5F,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACa,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE;EAAE,GAAC,gkBAO5B,CAAC,eAEPtI,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACa,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE;EAAE,GAAC,iwBAQ5B,CAAC,eAEPtI,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACW,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;MAAEI,SAAS,EAAE,EAAE;MAAEH,YAAY,EAAE;IAAE;EAAE,GAAC,UAEzD,CAAC,eACPtI,MAAA,YAAAuH,aAAA,CAACnH,UAAA,CAAAmI,SAAS,EAAA9G,QAAA,KAAKsG,cAAc;IAAEW,QAAQ;IAAC9F,KAAK,EAAE8C,aAAc;IAAC8C,QAAQ,EAAEpC;EAAqB,EAAE,CAAC,eAEhGpG,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;IAACW,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;MAAEI,SAAS,EAAE,EAAE;MAAEH,YAAY,EAAE;IAAE;EAAE,GAAC,sBAEzD,CAAC,eACPtI,MAAA,YAAAuH,aAAA,CAACnH,UAAA,CAAAmI,SAAS,EAAA9G,QAAA,KAAKsG,cAAc;IAAE1C,OAAO,EAAE2B,iBAAkB;IAACpE,KAAK,EAAEA,KAAM;IAAC4F,QAAQ,EAAE5C;EAAa,EAAE,CAC9F,CAAC;AAEX,CAAC;AAACd,OAAA,CAAAG,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAAC0D,SAAS,GAAG,WAAW;AAE7B1D,KAAK,CAAC2D,IAAI,GAAG;EACXC,OAAO,EAAEC,SAAS;EAClBC,QAAQ,EAAE,KAAK;EACfC,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;EACrCC,WAAW,EAAE,sBAAsB;EACnCC,KAAK,EAAE,KAAK;EACZC,IAAI,EAAEL,SAAS;EACf7B,IAAI,EAAE6B,SAAS;EACfM,IAAI,EAAE,KAAK;EACXC,KAAK,EAAE,OAAO;EACd/E,IAAI,EAAE,MAAM;EACZgF,QAAQ,EAAE,KAAK;EACfC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACf5B,OAAO,EAAE,KAAK;EACdC,OAAO,EAAE,KAAK;EACdxC,OAAO,EAAE1B,KAAK,CAACC,IAAI,CAAC;IAAE/B,MAAM,EAAE;EAAG,CAAC,CAAC,CAAC4H,GAAG,CAAC,UAACC,CAAC,EAAEC,KAAK;IAAA,OAAM;MACrD1C,IAAI,EAAEjC,gBAAI,CAACD,SAAS,CAAC4E,KAAK,CAAC,CAAC;MAC5BrF,IAAI,gCAAA6B,MAAA,CAAgCwD,KAAK,GAAG,CAAC,CAAE;MAC/C/G,KAAK,EAAE+G,KAAK,GAAG,CAAC;MAChBzC,WAAW,oBAAAf,MAAA,CAAoBwD,KAAK,GAAG,CAAC,yDAAsD;MAC9FxC,YAAY,EACVwC,KAAK,GAAG,CAAC,KAAK,CAAC,GACX;QAAEvC,IAAI,EAAE,SAAS;QAAExE,KAAK,EAAE+G,KAAK,GAAG;MAAE,CAAC,GACrCA,KAAK,GAAG,CAAC,KAAK,CAAC,GACf;QACEvC,IAAI,EAAE,MAAM;QACZxE,KAAK,eACH5C,MAAA,YAAAuH,aAAA,CAACpH,WAAA,CAAAqH,IAAI;UAACC,IAAI;UAACC,IAAI;UAACC,QAAQ,EAAE;QAAM,GAAC,OAE3B;MAEV,CAAC,GACDmB;IACR,CAAC;EAAA,CAAC,CAAC;EACH;EACAc,MAAM,EAAE,YAAY;EACpBvB,KAAK,EAAE,CAAC;AACV,CAAC;AAEDpD,KAAK,CAAC4E,QAAQ,GAAG;EACf5C,IAAI,EAAE;IACJ5B,OAAO,GAAGyD,SAAS,EAAA3C,MAAA,CAAKpB,SAAS,CAAC;IAClC+E,OAAO,EAAE;MAAE1C,IAAI,EAAE;IAAS,CAAC;IAC3B2C,YAAY,EAAEjB;EAChB;AACF,CAAC","ignoreList":[]}
|
|
@@ -12,13 +12,14 @@ var _primitives = require("../../primitives");
|
|
|
12
12
|
var _Modal = require("../Modal");
|
|
13
13
|
var _MenuModule = _interopRequireDefault(require("./Menu.module.css"));
|
|
14
14
|
var _Menu = require("./Menu.Option");
|
|
15
|
-
var _excluded = ["children", "options", "selected", "Template", "title", "visible", "onPress"];
|
|
15
|
+
var _excluded = ["children", "header", "options", "selected", "Template", "title", "visible", "onPress"];
|
|
16
16
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
17
17
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) { ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } } return n; }, _extends.apply(null, arguments); }
|
|
18
18
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) { o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } } return i; }
|
|
19
19
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) { if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } } return t; }
|
|
20
20
|
var Menu = function Menu(_ref) {
|
|
21
21
|
var children = _ref.children,
|
|
22
|
+
header = _ref.header,
|
|
22
23
|
_ref$options = _ref.options,
|
|
23
24
|
options = _ref$options === void 0 ? [] : _ref$options,
|
|
24
25
|
selected = _ref.selected,
|
|
@@ -31,6 +32,7 @@ var Menu = function Menu(_ref) {
|
|
|
31
32
|
others = _objectWithoutProperties(_ref, _excluded);
|
|
32
33
|
var _useDevice = (0, _hooks.useDevice)(),
|
|
33
34
|
isMobile = _useDevice.isMobile;
|
|
35
|
+
var hasHeader = Boolean(header);
|
|
34
36
|
var testId = others.testId;
|
|
35
37
|
var renderOptions = function renderOptions() {
|
|
36
38
|
return options.filter(function (option) {
|
|
@@ -56,8 +58,11 @@ var Menu = function Menu(_ref) {
|
|
|
56
58
|
}, others, {
|
|
57
59
|
tag: "menu",
|
|
58
60
|
visible: visible,
|
|
59
|
-
className: (0, _helpers.styles)(_MenuModule["default"].menu, visible && _MenuModule["default"].visible, others.className)
|
|
60
|
-
}), children, /*#__PURE__*/_react["default"].createElement(_primitives.LayerContent, null,
|
|
61
|
+
className: (0, _helpers.styles)(_MenuModule["default"].menu, visible && _MenuModule["default"].visible, hasHeader && _MenuModule["default"].withHeader, others.className)
|
|
62
|
+
}), children, /*#__PURE__*/_react["default"].createElement(_primitives.LayerContent, null, header, hasHeader ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
63
|
+
className: _MenuModule["default"].options,
|
|
64
|
+
"data-menu-options": true
|
|
65
|
+
}, renderOptions()) : renderOptions())) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children, /*#__PURE__*/_react["default"].createElement(_Modal.Modal, {
|
|
61
66
|
title: title,
|
|
62
67
|
visible: visible,
|
|
63
68
|
onClose: function onClose(event) {
|
|
@@ -68,7 +73,7 @@ var Menu = function Menu(_ref) {
|
|
|
68
73
|
},
|
|
69
74
|
className: (0, _helpers.styles)(_MenuModule["default"].menu, others.className),
|
|
70
75
|
testId: testId ? "".concat(testId, "-modal") : undefined
|
|
71
|
-
}, /*#__PURE__*/_react["default"].createElement(_primitives.ScrollView, {
|
|
76
|
+
}, header, /*#__PURE__*/_react["default"].createElement(_primitives.ScrollView, {
|
|
72
77
|
scrollIndicator: true,
|
|
73
78
|
className: _MenuModule["default"].scrollview
|
|
74
79
|
}, renderOptions())));
|
|
@@ -77,6 +82,7 @@ exports.Menu = Menu;
|
|
|
77
82
|
Menu.displayName = 'Component:Menu';
|
|
78
83
|
Menu.propTypes = {
|
|
79
84
|
children: _propTypes["default"].node,
|
|
85
|
+
header: _propTypes["default"].node,
|
|
80
86
|
options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
81
87
|
children: _propTypes["default"].node,
|
|
82
88
|
disabled: _propTypes["default"].bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","names":["_propTypes","_interopRequireDefault","require","_react","_helpers","_hooks","_primitives","_Modal","_MenuModule","_Menu","_excluded","e","__esModule","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","Menu","_ref","children","_ref$options","options","selected","_ref$Template","Template","Option","title","visible","_ref$onPress","onPress","others","_useDevice","useDevice","isMobile","testId","renderOptions","filter","option","map","undefined","index","createElement","key","Array","isArray","some","item","value","disabled","event","concat","Layer","forceRender","tag","className","styles","style","menu","LayerContent","Fragment","Modal","onClose","onOverflow","ScrollView","scrollIndicator","scrollview","exports","displayName","propTypes","PropTypes","node","arrayOf","shape","bool","divider","icon","func","label","string","oneOfType","number","any"],"sources":["../../../src/components/Menu/Menu.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Layer, LayerContent, ScrollView } from '../../primitives';\nimport { Modal } from '../Modal';\nimport style from './Menu.module.css';\nimport { Option } from './Menu.Option';\n\nconst Menu = ({\n children,\n options = [],\n selected,\n Template = Option,\n title,\n visible,\n onPress = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n\n const { testId } = others;\n\n const renderOptions = () =>\n options\n .filter((option) => !!option)\n .map((option = {}, index) => (\n <Template\n key={index}\n {...option}\n selected={\n selected\n ? Array.isArray(selected)\n ? selected.some((item) => item === option.value)\n : selected === option.value\n : undefined\n }\n onPress={others.disabled ? undefined : (event) => onPress(option.value, event)}\n testId={testId ? `${testId}-${index}` : undefined}\n />\n ));\n\n return !isMobile ? (\n <Layer\n forceRender={false}\n {...others}\n tag=\"menu\"\n visible={visible}\n className={styles(style.menu, visible && style.visible, others.className)}\n >\n {children}\n <LayerContent
|
|
1
|
+
{"version":3,"file":"Menu.js","names":["_propTypes","_interopRequireDefault","require","_react","_helpers","_hooks","_primitives","_Modal","_MenuModule","_Menu","_excluded","e","__esModule","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_objectWithoutProperties","o","i","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","Menu","_ref","children","header","_ref$options","options","selected","_ref$Template","Template","Option","title","visible","_ref$onPress","onPress","others","_useDevice","useDevice","isMobile","hasHeader","Boolean","testId","renderOptions","filter","option","map","undefined","index","createElement","key","Array","isArray","some","item","value","disabled","event","concat","Layer","forceRender","tag","className","styles","style","menu","withHeader","LayerContent","Fragment","Modal","onClose","onOverflow","ScrollView","scrollIndicator","scrollview","exports","displayName","propTypes","PropTypes","node","arrayOf","shape","bool","divider","icon","func","label","string","oneOfType","number","any"],"sources":["../../../src/components/Menu/Menu.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { Layer, LayerContent, ScrollView } from '../../primitives';\nimport { Modal } from '../Modal';\nimport style from './Menu.module.css';\nimport { Option } from './Menu.Option';\n\nconst Menu = ({\n children,\n header,\n options = [],\n selected,\n Template = Option,\n title,\n visible,\n onPress = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const hasHeader = Boolean(header);\n\n const { testId } = others;\n\n const renderOptions = () =>\n options\n .filter((option) => !!option)\n .map((option = {}, index) => (\n <Template\n key={index}\n {...option}\n selected={\n selected\n ? Array.isArray(selected)\n ? selected.some((item) => item === option.value)\n : selected === option.value\n : undefined\n }\n onPress={others.disabled ? undefined : (event) => onPress(option.value, event)}\n testId={testId ? `${testId}-${index}` : undefined}\n />\n ));\n\n return !isMobile ? (\n <Layer\n forceRender={false}\n {...others}\n tag=\"menu\"\n visible={visible}\n className={styles(style.menu, visible && style.visible, hasHeader && style.withHeader, others.className)}\n >\n {children}\n <LayerContent>\n {header}\n {hasHeader ? (\n <div className={style.options} data-menu-options>\n {renderOptions()}\n </div>\n ) : (\n renderOptions()\n )}\n </LayerContent>\n </Layer>\n ) : (\n <>\n {children}\n <Modal\n title={title}\n visible={visible}\n onClose={(event) => onPress(undefined, event)}\n onOverflow={(event) => onPress(undefined, event)}\n className={styles(style.menu, others.className)}\n testId={testId ? `${testId}-modal` : undefined}\n >\n {header}\n <ScrollView scrollIndicator className={style.scrollview}>\n {renderOptions()}\n </ScrollView>\n </Modal>\n </>\n );\n};\n\nMenu.displayName = 'Component:Menu';\n\nMenu.propTypes = {\n children: PropTypes.node,\n header: PropTypes.node,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n children: PropTypes.node,\n disabled: PropTypes.bool,\n divider: PropTypes.bool,\n icon: PropTypes.func,\n label: PropTypes.string,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n }),\n ),\n selected: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.arrayOf(PropTypes.string),\n PropTypes.arrayOf(PropTypes.number),\n ]),\n Template: PropTypes.any,\n title: PropTypes.string,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n};\n\nexport { Menu };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,12 @@
|
|
|
6
6
|
overflow: hidden;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
+
.menu.withHeader {
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
overflow: hidden;
|
|
13
|
+
}
|
|
14
|
+
|
|
9
15
|
.menu .option {
|
|
10
16
|
align-items: center;
|
|
11
17
|
box-sizing: border-box;
|
|
@@ -32,6 +38,15 @@
|
|
|
32
38
|
gap: var(--mirai-ui-space-M);
|
|
33
39
|
}
|
|
34
40
|
|
|
41
|
+
.menu .options {
|
|
42
|
+
min-height: 0;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.menu.withHeader .options {
|
|
46
|
+
flex: 1 1 auto;
|
|
47
|
+
overflow-y: auto;
|
|
48
|
+
}
|
|
49
|
+
|
|
35
50
|
.menu .divider {
|
|
36
51
|
box-shadow: inset 0 calc(var(--mirai-ui-border-width) * -1) var(--mirai-ui-menu-option-color-disabled);
|
|
37
52
|
}
|