@mirai/ui 2.1.74 → 2.1.75
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.
|
@@ -19,7 +19,9 @@ var style = _interopRequireWildcard(require("./InputList.module.css"));
|
|
|
19
19
|
var _InputList3 = require("./InputList.Option");
|
|
20
20
|
var _excluded = ["labelSelected"],
|
|
21
21
|
_excluded2 = ["emptyOption", "icon", "l10n", "multiple", "options", "sort", "value", "onChange"],
|
|
22
|
-
_excluded3 = ["
|
|
22
|
+
_excluded3 = ["rightElement"],
|
|
23
|
+
_excluded4 = ["rightElement"],
|
|
24
|
+
_excluded5 = ["className", "testId"];
|
|
23
25
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
24
26
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) { if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } } return n["default"] = e, t && t.set(e, n), n; }
|
|
25
27
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
@@ -145,9 +147,16 @@ var InputList = function InputList(_ref) {
|
|
|
145
147
|
return option.value;
|
|
146
148
|
}));
|
|
147
149
|
};
|
|
148
|
-
var filteredOptions = !search ? options : options
|
|
150
|
+
var filteredOptions = !search ? options : options
|
|
151
|
+
// eslint-disable-next-line no-unused-vars
|
|
152
|
+
.map(function (_ref3) {
|
|
153
|
+
var rightElement = _ref3.rightElement,
|
|
154
|
+
option = _objectWithoutProperties(_ref3, _excluded3);
|
|
149
155
|
if (option.group && option.items) {
|
|
150
|
-
|
|
156
|
+
// eslint-disable-next-line no-unused-vars
|
|
157
|
+
var filteredItems = option.items.filter(function (_ref4) {
|
|
158
|
+
var rightElement = _ref4.rightElement,
|
|
159
|
+
item = _objectWithoutProperties(_ref4, _excluded4);
|
|
151
160
|
return JSON.stringify(item).toLowerCase().includes(search.toLowerCase());
|
|
152
161
|
});
|
|
153
162
|
if (filteredItems.length > 0 || option.group.toLowerCase().includes(search.toLowerCase())) {
|
|
@@ -162,7 +171,7 @@ var InputList = function InputList(_ref) {
|
|
|
162
171
|
}).filter(Boolean);
|
|
163
172
|
var className = others.className,
|
|
164
173
|
testId = others.testId,
|
|
165
|
-
rest = _objectWithoutProperties(others,
|
|
174
|
+
rest = _objectWithoutProperties(others, _excluded5);
|
|
166
175
|
var selectableOptions = (0, _helpers2.getSelectableOptions)(options);
|
|
167
176
|
var hasSearch = selectableOptions.length > 5 && !isMobile;
|
|
168
177
|
var selected = value ? multiple ? value.map(function (v) {
|
|
@@ -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","_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","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","getBoundingClientRect","window","addEventListener","removeEventListener","optionsContainer","querySelector","undefined","children","reduce","sum","option","offsetHeight","useEffect","handleClick","_ref2","target","contains","document","flattenedOptions","flattenOptions","indexOption","findIndex","_optionsContainer$chi","height","scrollTo","top","handlePress","prevState","handleSelect","optionValue","item","concat","handleSelectAll","selectableOptions","getSelectableOptions","map","filteredOptions","group","items","filteredItems","JSON","stringify","toLowerCase","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","rightElement","Option","isGroupItem","groupItem","title","label","onClose","onPress","menu","withSearch","Pressable","InputSelect","inputSelect","exports","propTypes","PropTypes","string","any","shape","labelSearch","bool","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 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.getBoundingClientRect().width);\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 filteredOptions = !search\n ? options\n : options\n .map((option) => {\n if (option.group && option.items) {\n const filteredItems = option.items.filter((item) =>\n JSON.stringify(item).toLowerCase().includes(search.toLowerCase()),\n );\n\n if (filteredItems.length > 0 || option.group.toLowerCase().includes(search.toLowerCase())) {\n return {\n ...option,\n items: filteredItems.length > 0 ? filteredItems : option.items,\n };\n }\n return undefined;\n } else {\n return JSON.stringify(option).toLowerCase().includes(search.toLowerCase()) ? option : 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 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 icon,\n multiple,\n name,\n rightElement,\n selected,\n value,\n isGroupItem: option.isGroupItem,\n }}\n />\n ),\n value,\n className: option.isGroupItem ? style.groupItem : undefined,\n };\n }\n }),\n ]}\n selected={value}\n title={others.label}\n visible={visible}\n onClose={() => setVisible(false)}\n onPress={handleSelect}\n className={styles(style.menu, hasSearch && style.withSearch)}\n style={{ maxHeight, width }}\n testId={`${testId}-menu`}\n >\n <Pressable onPress={handlePress} style={{ width }} testId={`${testId}-pressable`}>\n <InputSelect\n {...rest}\n icon={selected?.icon || icon}\n options={[caption]}\n value={caption}\n className={style.inputSelect}\n />\n </Pressable>\n </Menu>\n </View>\n );\n};\n\nInputList.propTypes = {\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","InputList","_ref","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","getBoundingClientRect","window","addEventListener","removeEventListener","optionsContainer","querySelector","undefined","children","reduce","sum","option","offsetHeight","useEffect","handleClick","_ref2","target","contains","document","flattenedOptions","flattenOptions","indexOption","findIndex","_optionsContainer$chi","height","scrollTo","top","handlePress","prevState","handleSelect","optionValue","item","concat","handleSelectAll","selectableOptions","getSelectableOptions","map","filteredOptions","_ref3","rightElement","group","items","filteredItems","_ref4","JSON","stringify","toLowerCase","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","groupItem","title","label","onClose","onPress","menu","withSearch","Pressable","InputSelect","inputSelect","exports","propTypes","PropTypes","string","any","shape","labelSearch","bool","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 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.getBoundingClientRect().width);\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 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(search.toLowerCase()),\n );\n\n if (filteredItems.length > 0 || option.group.toLowerCase().includes(search.toLowerCase())) {\n return {\n ...option,\n items: filteredItems.length > 0 ? filteredItems : option.items,\n };\n }\n return undefined;\n } else {\n return JSON.stringify(option).toLowerCase().includes(search.toLowerCase()) ? option : 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 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 icon,\n multiple,\n name,\n rightElement,\n selected,\n value,\n isGroupItem: option.isGroupItem,\n }}\n />\n ),\n value,\n className: option.isGroupItem ? style.groupItem : undefined,\n };\n }\n }),\n ]}\n selected={value}\n title={others.label}\n visible={visible}\n onClose={() => setVisible(false)}\n onPress={handleSelect}\n className={styles(style.menu, hasSearch && style.withSearch)}\n style={{ maxHeight, width }}\n testId={`${testId}-menu`}\n >\n <Pressable onPress={handlePress} style={{ width }} testId={`${testId}-pressable`}>\n <InputSelect\n {...rest}\n icon={selected?.icon || icon}\n options={[caption]}\n value={caption}\n className={style.inputSelect}\n />\n </Pressable>\n </Menu>\n </View>\n );\n};\n\nInputList.propTypes = {\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":[]}
|