@bigbinary/neeto-filters-frontend 4.3.5 → 4.3.6
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/dist/Bar.js +5 -5
- package/dist/Filters.js +3 -3
- package/dist/Filters.js.map +1 -1
- package/dist/Segments.js +5 -5
- package/dist/cjs/Bar.js +27 -40
- package/dist/cjs/Bar.js.map +1 -1
- package/dist/cjs/Filters.js +24 -37
- package/dist/cjs/Filters.js.map +1 -1
- package/dist/cjs/Segments.js +24 -37
- package/dist/cjs/Segments.js.map +1 -1
- package/dist/cjs/hooks.js +2 -4
- package/dist/cjs/hooks.js.map +1 -1
- package/dist/cjs/index.js +7 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +2 -4
- package/dist/cjs/utils.js.map +1 -1
- package/dist/{constants-fad9a281.js → constants-CEZMHAxx.js} +2 -2
- package/dist/{constants-fad9a281.js.map → constants-CEZMHAxx.js.map} +1 -1
- package/dist/{constants-b2c7e869.js → constants-S_zU7eDN.js} +1 -1
- package/dist/{constants-b2c7e869.js.map → constants-S_zU7eDN.js.map} +1 -1
- package/dist/hooks.js +2 -2
- package/dist/{index-93da3b47.js → index-9XJ2QBWT.js} +3 -3
- package/dist/{index-93da3b47.js.map → index-9XJ2QBWT.js.map} +1 -1
- package/dist/{index-7257957a.js → index-B4GTy1mo.js} +27 -43
- package/dist/{index-7257957a.js.map → index-B4GTy1mo.js.map} +1 -1
- package/dist/{index-030a7902.js → index-Cnchjnt1.js} +33 -43
- package/dist/index-Cnchjnt1.js.map +1 -0
- package/dist/{index-566faa52.js → index-DL2dUxuB.js} +3 -3
- package/dist/{index-566faa52.js.map → index-DL2dUxuB.js.map} +1 -1
- package/dist/index.js +7 -7
- package/dist/{useSegmentsApi-3805ee98.js → useSegmentsApi-D4rKaXUX.js} +8 -13
- package/dist/useSegmentsApi-D4rKaXUX.js.map +1 -0
- package/dist/{useSegmentsApi-f084f44a.js → useSegmentsApi-DNEfAQG5.js} +3 -3
- package/dist/{useSegmentsApi-f084f44a.js.map → useSegmentsApi-DNEfAQG5.js.map} +1 -1
- package/dist/{utils-2e4fb117.js → utils-CPBlIPqx.js} +3 -3
- package/dist/{utils-2e4fb117.js.map → utils-CPBlIPqx.js.map} +1 -1
- package/dist/{utils-e0b52fa1.js → utils-PyL0UYCZ.js} +14 -22
- package/dist/utils-PyL0UYCZ.js.map +1 -0
- package/dist/utils.js +2 -2
- package/package.json +11 -11
- package/dist/index-030a7902.js.map +0 -1
- package/dist/useSegmentsApi-3805ee98.js.map +0 -1
- package/dist/utils-e0b52fa1.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-filters-frontend",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.6",
|
|
4
4
|
"description": "Manage filters across neeto products.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"homepage": "https://github.com/bigbinary/neeto-filters-nano",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"module": "dist/index.js",
|
|
19
19
|
"types": "types.d.ts",
|
|
20
20
|
"scripts": {
|
|
21
|
-
"build": "NODE_ENV=production rollup -c --environment production",
|
|
21
|
+
"build": "NODE_ENV=production rollup --bundleConfigAsCjs -c --environment production",
|
|
22
22
|
"build-preview": "NODE_ENV=production webpack",
|
|
23
23
|
"prepare": "husky install",
|
|
24
24
|
"release": "yarn build && yalc push --sig"
|
|
@@ -62,12 +62,12 @@
|
|
|
62
62
|
"@bigbinary/babel-preset-neeto": "^1.0.3",
|
|
63
63
|
"@bigbinary/eslint-plugin-neeto": "1.5.4",
|
|
64
64
|
"@bigbinary/neeto-cist": "1.0.12",
|
|
65
|
-
"@bigbinary/neeto-commons-frontend": "4.8.
|
|
66
|
-
"@bigbinary/neeto-filters-frontend": "4.3.
|
|
65
|
+
"@bigbinary/neeto-commons-frontend": "4.8.6",
|
|
66
|
+
"@bigbinary/neeto-filters-frontend": "4.3.5",
|
|
67
67
|
"@bigbinary/neeto-hotkeys": "1.0.7",
|
|
68
68
|
"@bigbinary/neeto-icons": "1.20.8",
|
|
69
|
-
"@bigbinary/neeto-molecules": "3.7.
|
|
70
|
-
"@bigbinary/neetoui": "8.2.
|
|
69
|
+
"@bigbinary/neeto-molecules": "3.7.24",
|
|
70
|
+
"@bigbinary/neetoui": "8.2.25",
|
|
71
71
|
"@emotion/is-prop-valid": "1.2.0",
|
|
72
72
|
"@faker-js/faker": "8.2.0",
|
|
73
73
|
"@hello-pangea/dnd": "16.3.0",
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
"react-router-dom": "5.3.3",
|
|
144
144
|
"react-toastify": "8.0.2",
|
|
145
145
|
"react_ujs": "^3.1.1",
|
|
146
|
-
"rollup": "
|
|
146
|
+
"rollup": "^4.24.0",
|
|
147
147
|
"rollup-plugin-analyzer": "4.0.0",
|
|
148
148
|
"rollup-plugin-cleaner": "1.0.0",
|
|
149
149
|
"rollup-plugin-copy": "3.5.0",
|
|
@@ -171,12 +171,12 @@
|
|
|
171
171
|
"peerDependencies": {
|
|
172
172
|
"@babel/runtime": "7.19.0",
|
|
173
173
|
"@bigbinary/neeto-cist": "1.0.12",
|
|
174
|
-
"@bigbinary/neeto-commons-frontend": "4.8.
|
|
175
|
-
"@bigbinary/neeto-filters-frontend": "4.3.
|
|
174
|
+
"@bigbinary/neeto-commons-frontend": "4.8.6",
|
|
175
|
+
"@bigbinary/neeto-filters-frontend": "4.3.5",
|
|
176
176
|
"@bigbinary/neeto-hotkeys": "1.0.7",
|
|
177
177
|
"@bigbinary/neeto-icons": "1.20.8",
|
|
178
|
-
"@bigbinary/neeto-molecules": "3.7.
|
|
179
|
-
"@bigbinary/neetoui": "8.2.
|
|
178
|
+
"@bigbinary/neeto-molecules": "3.7.24",
|
|
179
|
+
"@bigbinary/neetoui": "8.2.25",
|
|
180
180
|
"@hello-pangea/dnd": "16.3.0",
|
|
181
181
|
"@honeybadger-io/js": "^6.4.1",
|
|
182
182
|
"@honeybadger-io/react": "^6.1.3",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-030a7902.js","sources":["../app/javascript/src/components/Pane/Item/utils.js","../app/javascript/src/components/Pane/Item/Boolean.jsx","../app/javascript/src/components/Pane/Item/Datetime.jsx","../app/javascript/src/components/Pane/Item/Dropdown.jsx","../app/javascript/src/components/Pane/Item/SingleDatetime.jsx","../app/javascript/src/components/Pane/Item/SingleTime.jsx","../app/javascript/src/components/Pane/Item/Text.jsx","../app/javascript/src/components/Pane/Item/Time.jsx","../app/javascript/src/components/Pane/Item/TreeSelect.jsx","../app/javascript/src/components/Pane/Item/index.jsx"],"sourcesContent":["import { findBy, toLabelAndValue } from \"neetocist\";\nimport {\n append,\n concat,\n equals,\n isEmpty,\n isNil,\n last,\n mergeDeepRight,\n modify,\n not,\n omit,\n} from \"ramda\";\n\nimport { DATE_OPTIONS, TIME_OPTIONS } from \"common/constants\";\nimport dayjs from \"common/dayjs\";\n\nimport { DEFAULT_HELP_ICON_PROPS } from \"./constants\";\n\nimport { isMulti, isNilOrEmpty, isTreeSelect } from \"../../utils\";\n\nexport const buildDropdownValue = ({ defaultType, filter, options }) => {\n if (!filter) return null;\n\n if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return options.filter(({ value }) => filter.value.includes(value));\n }\n\n return findBy({ value: filter.value }, options);\n};\n\nexport const buildDatetimeValue = filter => {\n if (!filter) return null;\n\n return findBy({ value: filter.value }, DATE_OPTIONS) ?? last(DATE_OPTIONS);\n};\n\nexport const buildSingleTimeValue = filter => {\n if (!filter) return null;\n\n return findBy({ value: filter.value }, TIME_OPTIONS) ?? last(TIME_OPTIONS);\n};\n\nexport const getOtherProps = props =>\n omit(\n [\"key\", \"node\", \"label\", \"type\", \"values\", \"model\", \"showRuleSelector\"],\n props\n );\n\nexport const buildDropdownOptions = ({ defaultType, filter, options }) => {\n options = options.map(modify(\"value\", value => value?.toString()));\n\n if (!filter) return options;\n\n if (isMulti(defaultType)) {\n const selectedOptions = filter.value.map(\n value => findBy({ value }, options) || toLabelAndValue(value)\n );\n\n const nonSelectedOptions = options.filter(\n option => !filter.value.includes(option.value)\n );\n\n return concat(selectedOptions, nonSelectedOptions);\n }\n\n if (!findBy({ value: filter.value }, options)) {\n return append(toLabelAndValue(filter.value), options);\n }\n\n return options;\n};\n\nexport const initializeDateRule = filter =>\n filter\n ? findBy({ value: filter?.value }, DATE_OPTIONS) ||\n findDateOption(filter, DATE_OPTIONS)\n : {};\n\nexport const getDateValue = (value, rule) => {\n if (isEmpty(value) || isNil(value)) {\n return null;\n }\n\n if (rule.value === \"custom-date-range\") {\n return value;\n }\n\n return rule.value === \"before\"\n ? dayjs(value[1]).add(1, \"day\")\n : dayjs(value[0]).subtract(1, \"day\");\n};\n\nexport const findDateOption = (filter, options) => {\n const { value } = filter;\n const isBeforeOrAfter = dayjs(value[1]).diff(dayjs(value[0]), \"year\") >= 90;\n if (not(isBeforeOrAfter)) {\n return last(options);\n }\n const currentMoment = dayjs();\n\n const diffWithStart = Math.abs(currentMoment.diff(dayjs(value[0]), \"year\"));\n const diffWithEnd = Math.abs(currentMoment.diff(dayjs(value[1]), \"year\"));\n\n return diffWithStart < diffWithEnd\n ? findBy({ value: \"after\" }, options)\n : findBy({ value: \"before\" }, options);\n};\n\nexport const buildDateValues = (dates, selectedRule) => {\n if (selectedRule.value === \"after\") {\n return [dates.add(1, \"day\"), dates.add(100, \"year\")];\n } else if (selectedRule.value === \"before\") {\n return [dates.subtract(100, \"year\"), dates.subtract(1, \"day\")];\n }\n\n return dates;\n};\n\nexport const buildHelpIconProps = helpIconProps =>\n mergeDeepRight(DEFAULT_HELP_ICON_PROPS, helpIconProps);\n\nexport const hasInvalidTimes = times => {\n if (Array.isArray(times)) {\n return times.some(time => time.isValid()) === false;\n }\n\n return !times.isValid();\n};\n\nexport const areCustomTimeRangeValuesNotValid = times =>\n !times.every(time => time.isValid());\n\n// eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats\nexport const formatSingleTime = time => dayjs(time).format(\"HH:mm:ss\");\n\nexport const formatTime = (value, timePickerType) => {\n if (isNilOrEmpty(value)) return null;\n\n if (timePickerType === \"range\") {\n return value.map(formatSingleTime);\n }\n\n return formatSingleTime(value);\n};\n\nexport const isRuleEmpty = rule => equals(rule, \"is_unknown\");\n","// type: boolean\n\nimport { memo } from \"react\";\n\nimport { hyphenate, isNotEmpty } from \"neetocist\";\nimport { Select } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { DEFAULT_BOOLEAN_OPTIONS } from \"./constants\";\nimport { buildDropdownValue, buildHelpIconProps, getOtherProps } from \"./utils\";\n\nconst Boolean = ({ column, filter, handleApplyFilter, autoFocus }) => {\n const {\n key,\n defaultType = column.type,\n label,\n values,\n helpIconProps = {},\n } = column;\n\n const options =\n isNil(values) || isEmpty(values) ? DEFAULT_BOOLEAN_OPTIONS : values;\n const otherProps = getOtherProps(column);\n const value = buildDropdownValue({ defaultType, filter, options });\n const { t } = useTranslation();\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({ column, defaultType, option });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label, options, value }}\n isClearable\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n strategy=\"fixed\"\n placeholder={t(\"neetoFilters.messages.selectOption\", {\n resource: label,\n })}\n onChange={handleChange}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default memo(Boolean);\n","// type: date\n\nimport { memo, useState, useEffect } from \"react\";\n\nimport { hyphenate, isNotEmpty } from \"neetocist\";\nimport { DatePicker, Select } from \"neetoui\";\nimport { isEmpty, isNil, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter, isCustomDateRange } from \"components/utils\";\n\nimport {\n buildDateValues,\n buildHelpIconProps,\n getDateValue,\n getOtherProps,\n initializeDateRule,\n} from \"./utils\";\n\nconst Datetime = ({ column, filter, handleApplyFilter, autoFocus }) => {\n const [selectedRule, setSelectedRule] = useState(initializeDateRule(filter));\n\n const { t } = useTranslation();\n\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const isDatePickerShown = filter && isCustomDateRange(filter.value);\n const otherProps = getOtherProps(column);\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n setSelectedRule({});\n\n return;\n }\n setSelectedRule(option);\n\n const updatedFilter = buildUpdatedFilter({ column, defaultType, option });\n handleApplyFilter(updatedFilter);\n };\n\n const handleDateRangeChange = dates => {\n if (isEmpty(dates) || isNil(dates)) {\n handleApplyFilter({ _delete: true });\n setSelectedRule({});\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {\n value: buildDateValues(dates, selectedRule).map(date =>\n date.toISOString()\n ),\n },\n });\n handleApplyFilter(updatedFilter);\n };\n\n useEffect(() => {\n isNil(filter) && setSelectedRule({});\n }, [filter]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label }}\n isClearable\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n options={DATE_OPTIONS}\n strategy=\"fixed\"\n value={selectedRule}\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleChange}\n />\n {isDatePickerShown && (\n <DatePicker\n data-cy={`neeto-filters-${hyphenate(key)}-date-range`}\n getPopupContainer={prop(\"parentNode\")}\n type={selectedRule?.value === \"custom-date-range\" ? \"range\" : \"date\"}\n value={getDateValue(filter?.value, selectedRule)}\n onChange={handleDateRangeChange}\n {...otherProps}\n />\n )}\n </div>\n );\n};\n\nexport default memo(Datetime);\n","// type: single_option, multi_option\n\nimport { memo, useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Select } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { MULTI_DROPDOWN_RULES, SINGLE_DROPDOWN_RULES } from \"./constants\";\nimport {\n buildDropdownValue,\n buildDropdownOptions,\n getOtherProps,\n buildHelpIconProps,\n isRuleEmpty,\n} from \"./utils\";\n\nimport { buildUpdatedFilter, isMulti } from \"../../utils\";\n\nconst Dropdown = ({\n column,\n filter,\n handleApplyFilter,\n autoFocus,\n filters,\n}) => {\n const {\n key,\n label,\n values,\n defaultValue,\n defaultType = column.type,\n showRuleSelector = false,\n isClearable = true,\n helpIconProps = {},\n } = column;\n const otherProps = getOtherProps(column);\n const options = buildDropdownOptions({\n defaultType,\n filter,\n options: values,\n });\n\n const dropdownRules = isMulti(defaultType)\n ? MULTI_DROPDOWN_RULES\n : SINGLE_DROPDOWN_RULES;\n const value = buildDropdownValue({ defaultType, filter, options });\n const [selectedRule, setSelectedRule] = useState(\n findBy({ value: filter?.rule }, dropdownRules) || dropdownRules[0]\n );\n const { t } = useTranslation();\n\n const getOption = (isSelectedRuleEmpty, options, value) => {\n if (isSelectedRuleEmpty) {\n return isMulti(defaultType) ? [options[0]] : options[0];\n }\n\n return value;\n };\n\n const handleRuleChange = rule => {\n const isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);\n const isNewRuleEmpty = isRuleEmpty(rule.value);\n setSelectedRule(rule);\n\n if (\n isPreviousRuleEmpty ||\n (!isNewRuleEmpty && isNotPresent(filter?.value))\n ) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n rule: rule.value,\n option: getOption(isNewRuleEmpty, options, value),\n });\n\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option,\n rule: selectedRule.value,\n });\n\n handleApplyFilter(updatedFilter);\n };\n\n useEffect(() => {\n if (!isEmpty(filters)) return;\n isRuleEmpty(selectedRule.value) && setSelectedRule(dropdownRules[0]);\n }, [filters]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n defaultValue={dropdownRules[0]}\n options={dropdownRules}\n value={selectedRule}\n onChange={handleRuleChange}\n />\n )}\n {!isRuleEmpty(selectedRule.value) && (\n <Select\n {...{ autoFocus, options, value }}\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n isClearable={!defaultValue && isClearable}\n isMulti={isMulti(defaultType)}\n label={!showRuleSelector && label}\n strategy=\"fixed\"\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleChange}\n {...otherProps}\n />\n )}\n </div>\n );\n};\n\nexport default memo(Dropdown);\n","// type: single_date\n\nimport { useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { DatePicker, Select } from \"neetoui\";\nimport { isEmpty, isNil, prop } from \"ramda\";\n\nimport { SINGLE_DATE_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { buildHelpIconProps, getOtherProps } from \"./utils\";\n\nconst SingleDatetime = ({\n column,\n filter,\n filters,\n handleApplyFilter,\n autoFocus,\n}) => {\n const [selectedRule, setSelectedRule] = useState(\n () =>\n findBy({ value: filter?.rule }, SINGLE_DATE_OPTIONS) ||\n SINGLE_DATE_OPTIONS[0]\n );\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const datePickerType = selectedRule.value === \"between\" ? \"range\" : \"date\";\n const value = filter?.value;\n\n // Reset states when \"Clear filters\" button is clicked.\n useEffect(() => {\n if (!isEmpty(filters)) return;\n setSelectedRule(SINGLE_DATE_OPTIONS[0]);\n }, [filters]);\n\n const handleRuleChange = ruleOption => {\n setSelectedRule(ruleOption);\n\n // Clear value if switched between incompatable types\n let updateValue = value;\n if (\n (datePickerType === \"range\" && ruleOption.value !== \"between\") ||\n (datePickerType === \"date\" && ruleOption.value === \"between\")\n ) {\n updateValue = \"\";\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleOption.value,\n value: updateValue,\n });\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = dates => {\n if (isEmpty(dates) || isNil(dates)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const value =\n datePickerType === \"range\"\n ? dates.map(date => date.toISOString())\n : dates;\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: selectedRule.value,\n value,\n });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ label }}\n data-cy={`neeto-filters-${hyphenate(key)}-filter-rule`}\n defaultValue={SINGLE_DATE_OPTIONS[0]}\n options={SINGLE_DATE_OPTIONS}\n strategy=\"fixed\"\n value={selectedRule}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleRuleChange}\n />\n <DatePicker\n {...{ autoFocus, value }}\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n getPopupContainer={prop(\"parentNode\")}\n type={datePickerType}\n onChange={handleChange}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default SingleDatetime;\n","import { useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { Select, TimePicker } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport { SINGLE_TIME_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { TIME_FORMAT } from \"./constants\";\nimport {\n areCustomTimeRangeValuesNotValid,\n buildHelpIconProps,\n getOtherProps,\n hasInvalidTimes,\n} from \"./utils\";\n\nconst SingleTime = ({\n column,\n filter,\n filters,\n handleApplyFilter,\n autoFocus,\n}) => {\n const [selectedRule, setSelectedRule] = useState(\n () =>\n findBy({ value: filter?.rule }, SINGLE_TIME_OPTIONS) ||\n SINGLE_TIME_OPTIONS[0]\n );\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const timePickerType = selectedRule.value === \"between\" ? \"range\" : \"time\";\n const value = filter?.value;\n\n useEffect(() => {\n if (!isEmpty(filters)) return;\n setSelectedRule(SINGLE_TIME_OPTIONS[0]);\n }, [filters]);\n\n const handleRuleChange = ruleOption => {\n setSelectedRule(ruleOption);\n\n // Clear value if switched between incompatible types\n let updateValue = value;\n if (\n (timePickerType === \"range\" && ruleOption.value !== \"between\") ||\n (timePickerType === \"time\" && ruleOption.value === \"between\")\n ) {\n updateValue = \"\";\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleOption.value,\n value: updateValue,\n });\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = times => {\n if (hasInvalidTimes(times)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n if (timePickerType === \"range\" && areCustomTimeRangeValuesNotValid(times)) {\n return;\n }\n\n const value =\n timePickerType === \"range\"\n ? times.map(time => time.toISOString())\n : times.toISOString();\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: selectedRule.value,\n value,\n });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ label }}\n defaultValue={SINGLE_TIME_OPTIONS[0]}\n options={SINGLE_TIME_OPTIONS}\n strategy=\"fixed\"\n value={selectedRule}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleRuleChange}\n />\n <TimePicker\n {...{ autoFocus, value }}\n className=\"w-full\"\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n format={TIME_FORMAT}\n type={timePickerType}\n onChange={handleChange}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default SingleTime;\n","// type: text, number, decimal\nimport { useEffect, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { useDebounce } from \"neetocommons/react-utils\";\nimport { Input, Select } from \"neetoui\";\nimport { equals, isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n buildRuleOptions,\n buildUpdatedFilter,\n isUndefinedOrEmpty,\n} from \"components/utils\";\n\nimport { buildHelpIconProps, getOtherProps } from \"./utils\";\n\nconst Text = ({\n column,\n filter,\n filters,\n handleApplyFilter,\n autoFocus,\n onClose,\n}) => {\n const {\n key,\n defaultType = column.type,\n label,\n showRuleSelector = false,\n helpIconProps = {},\n } = column;\n const otherProps = getOtherProps(column);\n const ruleOptions = buildRuleOptions({ defaultType });\n const inputType =\n defaultType === \"text\" || defaultType === \"custom.text\" ? \"text\" : \"number\";\n\n const [inputValue, setInputValue] = useState(filter?.value);\n const [selectedRule, setSelectedRule] = useState(\n () => findBy({ value: filter?.rule }, ruleOptions) || ruleOptions[0]\n );\n const debouncedInputValue = useDebounce(inputValue);\n const { t } = useTranslation();\n\n const handleUpdateAndApplyFilter = (\n value = debouncedInputValue,\n rule = selectedRule\n ) => {\n if (equals(filter?.value, value) && equals(selectedRule, rule)) return;\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: rule.value,\n value: value.trim(),\n });\n handleApplyFilter(updatedFilter);\n };\n\n const handleKeydown = e => {\n if (!(e.key === \"Enter\")) return;\n handleUpdateAndApplyFilter(inputValue);\n onClose();\n };\n\n const handleRuleChange = ruleOption => {\n setSelectedRule(ruleOption);\n if (!debouncedInputValue) return;\n handleUpdateAndApplyFilter(debouncedInputValue, ruleOption);\n };\n\n // Reset states when \"Clear filters\" button is clicked.\n useEffect(() => {\n (isEmpty(filters) || isNil(filter)) && setInputValue(\"\");\n }, [filter]);\n\n useEffect(() => {\n if (!debouncedInputValue) {\n !isUndefinedOrEmpty(filter) && handleApplyFilter({ _delete: true });\n\n return;\n }\n\n handleUpdateAndApplyFilter();\n }, [debouncedInputValue]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n data-cy={`neeto-filters-${hyphenate(key)}-filter-rule`}\n defaultValue={ruleOptions[0]}\n options={ruleOptions}\n strategy=\"fixed\"\n value={selectedRule}\n onChange={handleRuleChange}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n />\n )}\n <Input\n {...{ autoFocus }}\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n label={!showRuleSelector && label}\n type={inputType}\n value={inputValue}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n placeholder={t(\"neetoFilters.messages.enterResource\", {\n resource: label,\n })}\n onChange={event => setInputValue(event.target.value)}\n onKeyDown={handleKeydown}\n {...otherProps}\n />\n </div>\n );\n};\n\nexport default Text;\n","// type: time\n\nimport { memo } from \"react\";\n\nimport { hyphenate, isNotEmpty } from \"neetocist\";\nimport { Select, TimePicker } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { TIME_OPTIONS } from \"common/constants\";\nimport { buildUpdatedFilter, isCustomTimeRange } from \"components/utils\";\n\nimport { TIME_FORMAT } from \"./constants\";\nimport {\n areCustomTimeRangeValuesNotValid,\n buildHelpIconProps,\n buildSingleTimeValue,\n getOtherProps,\n hasInvalidTimes,\n} from \"./utils\";\n\nconst Time = ({ column, filter, handleApplyFilter, autoFocus }) => {\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const value = buildSingleTimeValue(filter);\n const isCustomTimeRangeShown = filter && isCustomTimeRange(filter.value);\n\n const { t } = useTranslation();\n\n const handleChange = option => {\n if (isEmpty(option) || isNil(option)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({ column, defaultType, option });\n handleApplyFilter(updatedFilter);\n };\n\n const handleTimeRangeChange = times => {\n if (hasInvalidTimes(times)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n if (isCustomTimeRangeShown && areCustomTimeRangeValuesNotValid(times)) {\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: { value: times.map(time => time.toISOString()) },\n });\n handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label, value }}\n isClearable\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n options={TIME_OPTIONS}\n strategy=\"fixed\"\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n onChange={handleChange}\n />\n {isCustomTimeRangeShown && (\n <TimePicker\n className=\"w-full\"\n data-cy={`neeto-filters-${hyphenate(key)}-date-range`}\n format={TIME_FORMAT}\n type=\"range\"\n value={filter.value}\n onChange={handleTimeRangeChange}\n {...otherProps}\n />\n )}\n </div>\n );\n};\n\nexport default memo(Time);\n","// type: tree_select\n\nimport { memo, useState } from \"react\";\n\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Select, TreeSelect as NeetoUITreeSelect } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { TREE_SELECT_RULES } from \"./constants\";\nimport {\n buildDropdownValue,\n buildHelpIconProps,\n getOtherProps,\n isRuleEmpty,\n} from \"./utils\";\n\nconst TreeSelect = ({ autoFocus, column, filter, handleApplyFilter }) => {\n const {\n key,\n label,\n defaultType = column.type,\n defaultValue,\n helpIconProps = {},\n isClearable = true,\n showRuleSelector = false,\n values: options,\n } = column;\n\n const initialRule =\n findBy({ value: filter?.rule }, TREE_SELECT_RULES) ?? TREE_SELECT_RULES[0];\n const [selectedRule, setSelectedRule] = useState(initialRule);\n\n const { t } = useTranslation();\n\n const selectedOption = buildDropdownValue({ defaultType, filter, options });\n\n const handleChange = option => {\n if (isNotPresent(option)) return handleApplyFilter({ _delete: true });\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option,\n rule: selectedRule.value,\n });\n\n return handleApplyFilter(updatedFilter);\n };\n\n const handleRuleChange = rule => {\n const isPreviousRuleEmpty = isRuleEmpty(selectedRule.value);\n const isNewRuleEmpty = isRuleEmpty(rule.value);\n setSelectedRule(rule);\n\n if (\n isPreviousRuleEmpty ||\n (!isNewRuleEmpty && isNotPresent(filter?.value))\n ) {\n return handleApplyFilter({ _delete: true });\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: isNewRuleEmpty ? [options[0]] : selectedOption,\n rule: rule.value,\n });\n\n return handleApplyFilter(updatedFilter);\n };\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n defaultValue={TREE_SELECT_RULES[0]}\n options={TREE_SELECT_RULES}\n value={selectedRule}\n onChange={handleRuleChange}\n />\n )}\n {!isRuleEmpty(selectedRule.value) && (\n // eslint-disable-next-line @bigbinary/neeto/merge-spread-attributes\n <NeetoUITreeSelect\n {...{ autoFocus }}\n multiple\n showSearch\n treeDataSimpleMode\n allowClear={!defaultValue && isClearable}\n data-cy={`neeto-filters-${hyphenate(key)}-filter`}\n label={!showRuleSelector && label}\n treeData={options}\n value={selectedOption}\n placeholder={t(\"neetoFilters.messages.selectResource\", {\n resource: label,\n })}\n onChange={handleChange}\n {...(isNotEmpty(helpIconProps) && {\n labelProps: { helpIconProps: buildHelpIconProps(helpIconProps) },\n })}\n {...getOtherProps(column)}\n />\n )}\n </div>\n );\n};\n\nexport default memo(TreeSelect);\n","import { useMemo } from \"react\";\n\nimport { findBy, removeBy, replaceBy, noop } from \"neetocist\";\nimport { append } from \"ramda\";\n\nimport Boolean from \"./Boolean\";\nimport Datetime from \"./Datetime\";\nimport Dropdown from \"./Dropdown\";\nimport SingleDatetime from \"./SingleDatetime\";\nimport SingleTime from \"./SingleTime\";\nimport Text from \"./Text\";\nimport Time from \"./Time\";\nimport TreeSelect from \"./TreeSelect\";\n\nimport {\n isBoolean,\n isCheckbox,\n isDate,\n isDigit,\n isSingleDate,\n isSingleTime,\n isText,\n isTime,\n isTreeSelect,\n} from \"../../utils\";\n\nconst Item = ({ column, filters, onChange, autoFocus, onClose = noop }) => {\n const { key, defaultType = column.type } = column;\n\n const filter = useMemo(() => findBy({ key }, filters), [filters, key]);\n\n const handleApplyFilter = updatedFilter => {\n if (updatedFilter._delete) onChange(removeBy({ key }, filters));\n else if (!filter) onChange(append(updatedFilter, filters));\n else onChange(replaceBy({ key }, updatedFilter, filters));\n };\n\n if (isText(defaultType) || isDigit(defaultType)) {\n return (\n <Text\n {...{ autoFocus, column, filter, filters, handleApplyFilter, onClose }}\n />\n );\n }\n\n if (isDate(defaultType)) {\n return <Datetime {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n if (isTime(defaultType)) {\n return <Time {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n if (isSingleDate(defaultType)) {\n return (\n <SingleDatetime\n {...{ autoFocus, column, filter, filters, handleApplyFilter }}\n />\n );\n }\n\n if (isSingleTime(defaultType)) {\n return (\n <SingleTime\n {...{ autoFocus, column, filter, filters, handleApplyFilter }}\n />\n );\n }\n\n if (isBoolean(defaultType) || isCheckbox(defaultType)) {\n return <Boolean {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n if (isTreeSelect(defaultType)) {\n return <TreeSelect {...{ autoFocus, column, filter, handleApplyFilter }} />;\n }\n\n return (\n <Dropdown {...{ autoFocus, column, filter, filters, handleApplyFilter }} />\n );\n};\n\nexport default Item;\n"],"names":["buildDropdownValue","_ref","defaultType","filter","options","isMulti","isTreeSelect","_ref2","value","includes","findBy","buildSingleTimeValue","_findBy2","TIME_OPTIONS","last","getOtherProps","props","omit","buildDropdownOptions","_ref3","map","modify","toString","selectedOptions","toLabelAndValue","nonSelectedOptions","option","concat","append","initializeDateRule","DATE_OPTIONS","findDateOption","getDateValue","rule","isEmpty","isNil","dayjs","add","subtract","isBeforeOrAfter","diff","not","currentMoment","diffWithStart","Math","abs","diffWithEnd","buildDateValues","dates","selectedRule","buildHelpIconProps","helpIconProps","mergeDeepRight","DEFAULT_HELP_ICON_PROPS","hasInvalidTimes","times","Array","isArray","some","time","isValid","areCustomTimeRangeValuesNotValid","every","isRuleEmpty","equals","Boolean","column","handleApplyFilter","autoFocus","key","_column$defaultType","type","label","values","_column$helpIconProps","DEFAULT_BOOLEAN_OPTIONS","otherProps","_useTranslation","useTranslation","t","handleChange","_delete","updatedFilter","buildUpdatedFilter","_jsx","className","children","Select","_objectSpread","isClearable","isNotEmpty","labelProps","hyphenate","strategy","placeholder","resource","onChange","memo","Datetime","_useState","useState","_useState2","_slicedToArray","setSelectedRule","isDatePickerShown","isCustomDateRange","handleDateRangeChange","date","toISOString","useEffect","_jsxs","DatePicker","getPopupContainer","prop","Dropdown","filters","defaultValue","_column$showRuleSelec","showRuleSelector","_column$isClearable","dropdownRules","MULTI_DROPDOWN_RULES","SINGLE_DROPDOWN_RULES","getOption","isSelectedRuleEmpty","handleRuleChange","isPreviousRuleEmpty","isNewRuleEmpty","isNotPresent","SingleDatetime","SINGLE_DATE_OPTIONS","datePickerType","ruleOption","updateValue","SingleTime","SINGLE_TIME_OPTIONS","timePickerType","TimePicker","format","TIME_FORMAT","Text","onClose","ruleOptions","buildRuleOptions","inputType","inputValue","setInputValue","_useState3","_useState4","debouncedInputValue","useDebounce","handleUpdateAndApplyFilter","arguments","length","undefined","trim","handleKeydown","e","isUndefinedOrEmpty","Input","event","target","onKeyDown","Time","isCustomTimeRangeShown","isCustomTimeRange","handleTimeRangeChange","TreeSelect","_findBy","initialRule","TREE_SELECT_RULES","selectedOption","NeetoUITreeSelect","multiple","showSearch","treeDataSimpleMode","allowClear","treeData","Item","_ref$onClose","noop","useMemo","removeBy","replaceBy","isText","isDigit","isDate","isTime","isSingleDate","isSingleTime","isBoolean","isCheckbox"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAAyC;AAAA,EAAA,IAAnCC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO,CAAA;AAC/D,EAAA,IAAI,CAACD,MAAM,EAAE,OAAO,IAAI,CAAA;EAExB,IAAIE,aAAO,CAACH,WAAW,CAAC,IAAII,kBAAY,CAACJ,WAAW,CAAC,EAAE;AACrD,IAAA,OAAOE,OAAO,CAACD,MAAM,CAAC,UAAAI,KAAA,EAAA;AAAA,MAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK,CAAA;AAAA,MAAA,OAAOL,MAAM,CAACK,KAAK,CAACC,QAAQ,CAACD,KAAK,CAAC,CAAA;KAAC,CAAA,CAAA;AACpE,GAAA;AAEA,EAAA,OAAOE,gBAAM,CAAC;IAAEF,KAAK,EAAEL,MAAM,CAACK,KAAAA;GAAO,EAAEJ,OAAO,CAAC,CAAA;AACjD,CAAC,CAAA;AAQM,IAAMO,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGR,MAAM,EAAI;AAAA,EAAA,IAAAS,QAAA,CAAA;AAC5C,EAAA,IAAI,CAACT,MAAM,EAAE,OAAO,IAAI,CAAA;EAExB,OAAAS,CAAAA,QAAA,GAAOF,gBAAM,CAAC;IAAEF,KAAK,EAAEL,MAAM,CAACK,KAAAA;GAAO,EAAEK,sBAAY,CAAC,MAAAD,IAAAA,IAAAA,QAAA,KAAAA,KAAAA,CAAAA,GAAAA,QAAA,GAAIE,UAAI,CAACD,sBAAY,CAAC,CAAA;AAC5E,CAAC,CAAA;AAEM,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAChCC,UAAI,CACF,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,CAAC,EACvED,KACF,CAAC,CAAA;AAAA,CAAA,CAAA;AAEI,IAAME,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,KAAA,EAAyC;AAAA,EAAA,IAAnCjB,WAAW,GAAAiB,KAAA,CAAXjB,WAAW;IAAEC,MAAM,GAAAgB,KAAA,CAANhB,MAAM;IAAEC,OAAO,GAAAe,KAAA,CAAPf,OAAO,CAAA;EACjEA,OAAO,GAAGA,OAAO,CAACgB,GAAG,CAACC,YAAM,CAAC,OAAO,EAAE,UAAAb,KAAK,EAAA;IAAA,OAAIA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEc,QAAQ,EAAE,CAAA;AAAA,GAAA,CAAC,CAAC,CAAA;AAElE,EAAA,IAAI,CAACnB,MAAM,EAAE,OAAOC,OAAO,CAAA;AAE3B,EAAA,IAAIC,aAAO,CAACH,WAAW,CAAC,EAAE;IACxB,IAAMqB,eAAe,GAAGpB,MAAM,CAACK,KAAK,CAACY,GAAG,CACtC,UAAAZ,KAAK,EAAA;AAAA,MAAA,OAAIE,gBAAM,CAAC;AAAEF,QAAAA,KAAK,EAALA,KAAAA;AAAM,OAAC,EAAEJ,OAAO,CAAC,IAAIoB,yBAAe,CAAChB,KAAK,CAAC,CAAA;AAAA,KAC/D,CAAC,CAAA;AAED,IAAA,IAAMiB,kBAAkB,GAAGrB,OAAO,CAACD,MAAM,CACvC,UAAAuB,MAAM,EAAA;MAAA,OAAI,CAACvB,MAAM,CAACK,KAAK,CAACC,QAAQ,CAACiB,MAAM,CAAClB,KAAK,CAAC,CAAA;AAAA,KAChD,CAAC,CAAA;AAED,IAAA,OAAOmB,YAAM,CAACJ,eAAe,EAAEE,kBAAkB,CAAC,CAAA;AACpD,GAAA;EAEA,IAAI,CAACf,gBAAM,CAAC;IAAEF,KAAK,EAAEL,MAAM,CAACK,KAAAA;GAAO,EAAEJ,OAAO,CAAC,EAAE;IAC7C,OAAOwB,YAAM,CAACJ,yBAAe,CAACrB,MAAM,CAACK,KAAK,CAAC,EAAEJ,OAAO,CAAC,CAAA;AACvD,GAAA;AAEA,EAAA,OAAOA,OAAO,CAAA;AAChB,CAAC,CAAA;AAEM,IAAMyB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAG1B,MAAM,EAAA;EAAA,OACtCA,MAAM,GACFO,gBAAM,CAAC;AAAEF,IAAAA,KAAK,EAAEL,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAEK,KAAAA;AAAM,GAAC,EAAEsB,sBAAY,CAAC,IAC9CC,cAAc,CAAC5B,MAAM,EAAE2B,sBAAY,CAAC,GACpC,EAAE,CAAA;AAAA,CAAA,CAAA;AAED,IAAME,YAAY,GAAG,SAAfA,YAAYA,CAAIxB,KAAK,EAAEyB,IAAI,EAAK;EAC3C,IAAIC,aAAO,CAAC1B,KAAK,CAAC,IAAI2B,WAAK,CAAC3B,KAAK,CAAC,EAAE;AAClC,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;AAEA,EAAA,IAAIyB,IAAI,CAACzB,KAAK,KAAK,mBAAmB,EAAE;AACtC,IAAA,OAAOA,KAAK,CAAA;AACd,GAAA;AAEA,EAAA,OAAOyB,IAAI,CAACzB,KAAK,KAAK,QAAQ,GAC1B4B,aAAK,CAAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC6B,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAC7BD,aAAK,CAAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC8B,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;AACxC,CAAC,CAAA;AAEM,IAAMP,cAAc,GAAG,SAAjBA,cAAcA,CAAI5B,MAAM,EAAEC,OAAO,EAAK;AACjD,EAAA,IAAQI,KAAK,GAAKL,MAAM,CAAhBK,KAAK,CAAA;EACb,IAAM+B,eAAe,GAAGH,aAAK,CAAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,CAACgC,IAAI,CAACJ,aAAK,CAAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;AAC3E,EAAA,IAAIiC,SAAG,CAACF,eAAe,CAAC,EAAE;IACxB,OAAOzB,UAAI,CAACV,OAAO,CAAC,CAAA;AACtB,GAAA;AACA,EAAA,IAAMsC,aAAa,GAAGN,aAAK,EAAE,CAAA;EAE7B,IAAMO,aAAa,GAAGC,IAAI,CAACC,GAAG,CAACH,aAAa,CAACF,IAAI,CAACJ,aAAK,CAAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;EAC3E,IAAMsC,WAAW,GAAGF,IAAI,CAACC,GAAG,CAACH,aAAa,CAACF,IAAI,CAACJ,aAAK,CAAC5B,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;AAEzE,EAAA,OAAOmC,aAAa,GAAGG,WAAW,GAC9BpC,gBAAM,CAAC;AAAEF,IAAAA,KAAK,EAAE,OAAA;AAAQ,GAAC,EAAEJ,OAAO,CAAC,GACnCM,gBAAM,CAAC;AAAEF,IAAAA,KAAK,EAAE,QAAA;GAAU,EAAEJ,OAAO,CAAC,CAAA;AAC1C,CAAC,CAAA;AAEM,IAAM2C,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAAK,EAAEC,YAAY,EAAK;AACtD,EAAA,IAAIA,YAAY,CAACzC,KAAK,KAAK,OAAO,EAAE;AAClC,IAAA,OAAO,CAACwC,KAAK,CAACX,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAEW,KAAK,CAACX,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;AACtD,GAAC,MAAM,IAAIY,YAAY,CAACzC,KAAK,KAAK,QAAQ,EAAE;AAC1C,IAAA,OAAO,CAACwC,KAAK,CAACV,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,EAAEU,KAAK,CAACV,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;AAChE,GAAA;AAEA,EAAA,OAAOU,KAAK,CAAA;AACd,CAAC,CAAA;AAEM,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,aAAa,EAAA;AAAA,EAAA,OAC7CC,oBAAc,CAACC,6BAAuB,EAAEF,aAAa,CAAC,CAAA;AAAA,CAAA,CAAA;AAEjD,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,KAAK,EAAI;AACtC,EAAA,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;AACxB,IAAA,OAAOA,KAAK,CAACG,IAAI,CAAC,UAAAC,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACC,OAAO,EAAE,CAAA;AAAA,KAAA,CAAC,KAAK,KAAK,CAAA;AACrD,GAAA;AAEA,EAAA,OAAO,CAACL,KAAK,CAACK,OAAO,EAAE,CAAA;AACzB,CAAC,CAAA;AAEM,IAAMC,gCAAgC,GAAG,SAAnCA,gCAAgCA,CAAGN,KAAK,EAAA;AAAA,EAAA,OACnD,CAACA,KAAK,CAACO,KAAK,CAAC,UAAAH,IAAI,EAAA;AAAA,IAAA,OAAIA,IAAI,CAACC,OAAO,EAAE,CAAA;GAAC,CAAA,CAAA;AAAA,CAAA,CAAA;IAezBG,WAAW,GAAG,SAAdA,WAAWA,CAAG9B,IAAI,EAAA;AAAA,EAAA,OAAI+B,YAAM,CAAC/B,IAAI,EAAE,YAAY,CAAC,CAAA;AAAA;;;;ACpI7D,IAAMgC,OAAO,GAAG,SAAVA,OAAOA,CAAAhE,IAAA,EAAyD;AAAA,EAAA,IAAnDiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IAAE/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEgE,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IAAEC,SAAS,GAAAnE,IAAA,CAATmE,SAAS,CAAA;AAC7D,EAAA,IACEC,GAAG,GAKDH,MAAM,CALRG,GAAG;IAAAC,mBAAA,GAKDJ,MAAM,CAJRhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IACzBE,KAAK,GAGHN,MAAM,CAHRM,KAAK;IACLC,MAAM,GAEJP,MAAM,CAFRO,MAAM;IAAAC,qBAAA,GAEJR,MAAM,CADRf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;AAGpB,EAAA,IAAMtE,OAAO,GACX+B,WAAK,CAACsC,MAAM,CAAC,IAAIvC,aAAO,CAACuC,MAAM,CAAC,GAAGE,6BAAuB,GAAGF,MAAM,CAAA;AACrE,EAAA,IAAMG,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;EACxC,IAAM1D,KAAK,GAAGR,kBAAkB,CAAC;AAAEE,IAAAA,WAAW,EAAXA,WAAW;AAAEC,IAAAA,MAAM,EAANA,MAAM;AAAEC,IAAAA,OAAO,EAAPA,OAAAA;AAAQ,GAAC,CAAC,CAAA;AAClE,EAAA,IAAAyE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGtD,MAAM,EAAI;IAC7B,IAAIQ,aAAO,CAACR,MAAM,CAAC,IAAIS,WAAK,CAACT,MAAM,CAAC,EAAE;AACpCyC,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;IAEA,IAAMC,aAAa,GAAGC,wBAAkB,CAAC;AAAEjB,MAAAA,MAAM,EAANA,MAAM;AAAEhE,MAAAA,WAAW,EAAXA,WAAW;AAAEwB,MAAAA,MAAM,EAANA,MAAAA;AAAO,KAAC,CAAC,CAAA;IACzEyC,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,oBACEE,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,eACtDF,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCpB,MAAAA,SAAS,EAATA,SAAS;AAAEI,MAAAA,KAAK,EAALA,KAAK;AAAEpE,MAAAA,OAAO,EAAPA,OAAO;AAAEI,MAAAA,KAAK,EAALA,KAAK;MACtCiF,WAAW,EAAA,IAAA;AAAA,KAAA,EACNC,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD,MAAA,SAAA,EAAA,gBAAA,CAAAxB,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDwB,MAAAA,QAAQ,EAAC,OAAO;AAChBC,MAAAA,WAAW,EAAEf,CAAC,CAAC,oCAAoC,EAAE;AACnDgB,QAAAA,QAAQ,EAAEvB,KAAAA;AACZ,OAAC,CAAE;AACHwB,MAAAA,QAAQ,EAAEhB,YAAAA;AAAa,KAAA,EACnBJ,UAAU,CACf,CAAA;AAAC,GACC,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,gBAAeqB,aAAAA,UAAI,CAAChC,OAAO,CAAC;;;;ACxC5B,IAAMiC,QAAQ,GAAG,SAAXA,QAAQA,CAAAjG,IAAA,EAAyD;AAAA,EAAA,IAAnDiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IAAE/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEgE,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IAAEC,SAAS,GAAAnE,IAAA,CAATmE,SAAS,CAAA;EAC9D,IAAA+B,SAAA,GAAwCC,cAAQ,CAACvE,kBAAkB,CAAC1B,MAAM,CAAC,CAAC;IAAAkG,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAArElD,IAAAA,YAAY,GAAAoD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAAxB,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAQV,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/DhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7Bf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;EACjE,IAAM8B,iBAAiB,GAAGrG,MAAM,IAAIsG,uBAAiB,CAACtG,MAAM,CAACK,KAAK,CAAC,CAAA;AACnE,EAAA,IAAMoE,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;AAExC,EAAA,IAAMc,YAAY,GAAG,SAAfA,YAAYA,CAAGtD,MAAM,EAAI;IAC7B,IAAIQ,aAAO,CAACR,MAAM,CAAC,IAAIS,WAAK,CAACT,MAAM,CAAC,EAAE;AACpCyC,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;MACpCsB,eAAe,CAAC,EAAE,CAAC,CAAA;AAEnB,MAAA,OAAA;AACF,KAAA;IACAA,eAAe,CAAC7E,MAAM,CAAC,CAAA;IAEvB,IAAMwD,aAAa,GAAGC,wBAAkB,CAAC;AAAEjB,MAAAA,MAAM,EAANA,MAAM;AAAEhE,MAAAA,WAAW,EAAXA,WAAW;AAAEwB,MAAAA,MAAM,EAANA,MAAAA;AAAO,KAAC,CAAC,CAAA;IACzEyC,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAMwB,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAG1D,KAAK,EAAI;IACrC,IAAId,aAAO,CAACc,KAAK,CAAC,IAAIb,WAAK,CAACa,KAAK,CAAC,EAAE;AAClCmB,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;MACpCsB,eAAe,CAAC,EAAE,CAAC,CAAA;AAEnB,MAAA,OAAA;AACF,KAAA;IAEA,IAAMrB,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;AACXwB,MAAAA,MAAM,EAAE;QACNlB,KAAK,EAAEuC,eAAe,CAACC,KAAK,EAAEC,YAAY,CAAC,CAAC7B,GAAG,CAAC,UAAAuF,IAAI,EAAA;AAAA,UAAA,OAClDA,IAAI,CAACC,WAAW,EAAE,CAAA;SACpB,CAAA;AACF,OAAA;AACF,KAAC,CAAC,CAAA;IACFzC,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED2B,EAAAA,eAAS,CAAC,YAAM;IACd1E,WAAK,CAAChC,MAAM,CAAC,IAAIoG,eAAe,CAAC,EAAE,CAAC,CAAA;AACtC,GAAC,EAAE,CAACpG,MAAM,CAAC,CAAC,CAAA;AAEZ,EAAA,oBACE2G,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCpB,MAAAA,SAAS,EAATA,SAAS;AAAEI,MAAAA,KAAK,EAALA,KAAK;MACtBiB,WAAW,EAAA,IAAA;AACX,MAAA,SAAA,EAAA,gBAAA,CAAA9D,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDjE,MAAAA,OAAO,EAAE0B,sBAAa;AACtB+D,MAAAA,QAAQ,EAAC,OAAO;AAChBrF,MAAAA,KAAK,EAAEyC,YAAa;AACpB6C,MAAAA,WAAW,EAAEf,CAAC,CAAC,sCAAsC,EAAE;AACrDgB,QAAAA,QAAQ,EAAEvB,KAAAA;OACX,CAAA;AAAE,KAAA,EACEkB,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD6C,MAAAA,QAAQ,EAAEhB,YAAAA;KACX,CAAA,CAAC,EACDwB,iBAAiB,iBAChBpB,cAAA,CAAC2B,8BAAU,EAAAvB,eAAA,CAAA;AACT,MAAA,SAAA,EAAA,gBAAA,CAAA7D,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAc,aAAA,CAAA;AACtD2C,MAAAA,iBAAiB,EAAEC,UAAI,CAAC,YAAY,CAAE;AACtC1C,MAAAA,IAAI,EAAE,CAAAtB,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAEzC,KAAK,MAAK,mBAAmB,GAAG,OAAO,GAAG,MAAO;AACrEA,MAAAA,KAAK,EAAEwB,YAAY,CAAC7B,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEK,KAAK,EAAEyC,YAAY,CAAE;AACjD+C,MAAAA,QAAQ,EAAEU,qBAAAA;KACN9B,EAAAA,UAAU,CACf,CACF,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,iBAAeqB,aAAAA,UAAI,CAACC,QAAQ,CAAC;;;;AC7E7B,IAAMgB,QAAQ,GAAG,SAAXA,QAAQA,CAAAjH,IAAA,EAMR;AAAA,EAAA,IALJiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IACN/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNgE,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IACjBC,SAAS,GAAAnE,IAAA,CAATmE,SAAS;IACT+C,OAAO,GAAAlH,IAAA,CAAPkH,OAAO,CAAA;AAEP,EAAA,IACE9C,GAAG,GAQDH,MAAM,CARRG,GAAG;IACHG,KAAK,GAOHN,MAAM,CAPRM,KAAK;IACLC,MAAM,GAMJP,MAAM,CANRO,MAAM;IACN2C,YAAY,GAKVlD,MAAM,CALRkD,YAAY;IAAA9C,mBAAA,GAKVJ,MAAM,CAJRhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAA+C,qBAAA,GAIvBnD,MAAM,CAHRoD,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAE,mBAAA,GAGtBrD,MAAM,CAFRuB,WAAW;AAAXA,IAAAA,WAAW,GAAA8B,mBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,mBAAA;IAAA7C,qBAAA,GAEhBR,MAAM,CADRf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;AAEpB,EAAA,IAAME,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;EACxC,IAAM9D,OAAO,GAAGc,oBAAoB,CAAC;AACnChB,IAAAA,WAAW,EAAXA,WAAW;AACXC,IAAAA,MAAM,EAANA,MAAM;AACNC,IAAAA,OAAO,EAAEqE,MAAAA;AACX,GAAC,CAAC,CAAA;EAEF,IAAM+C,aAAa,GAAGnH,aAAO,CAACH,WAAW,CAAC,GACtCuH,0BAAoB,GACpBC,2BAAqB,CAAA;EACzB,IAAMlH,KAAK,GAAGR,kBAAkB,CAAC;AAAEE,IAAAA,WAAW,EAAXA,WAAW;AAAEC,IAAAA,MAAM,EAANA,MAAM;AAAEC,IAAAA,OAAO,EAAPA,OAAAA;AAAQ,GAAC,CAAC,CAAA;AAClE,EAAA,IAAA+F,SAAA,GAAwCC,cAAQ,CAC9C1F,gBAAM,CAAC;AAAEF,MAAAA,KAAK,EAAEL,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE8B,IAAAA;KAAM,EAAEuF,aAAa,CAAC,IAAIA,aAAa,CAAC,CAAC,CACnE,CAAC;IAAAnB,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAFMlD,IAAAA,YAAY,GAAAoD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAGpC,EAAA,IAAAxB,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;EAET,IAAM4C,SAAS,GAAG,SAAZA,SAASA,CAAIC,mBAAmB,EAAExH,OAAO,EAAEI,KAAK,EAAK;AACzD,IAAA,IAAIoH,mBAAmB,EAAE;AACvB,MAAA,OAAOvH,aAAO,CAACH,WAAW,CAAC,GAAG,CAACE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAGA,OAAO,CAAC,CAAC,CAAC,CAAA;AACzD,KAAA;AAEA,IAAA,OAAOI,KAAK,CAAA;GACb,CAAA;AAED,EAAA,IAAMqH,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG5F,IAAI,EAAI;AAC/B,IAAA,IAAM6F,mBAAmB,GAAG/D,WAAW,CAACd,YAAY,CAACzC,KAAK,CAAC,CAAA;AAC3D,IAAA,IAAMuH,cAAc,GAAGhE,WAAW,CAAC9B,IAAI,CAACzB,KAAK,CAAC,CAAA;IAC9C+F,eAAe,CAACtE,IAAI,CAAC,CAAA;AAErB,IAAA,IACE6F,mBAAmB,IAClB,CAACC,cAAc,IAAIC,sBAAY,CAAC7H,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEK,KAAK,CAAE,EAChD;AACA2D,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;IAEA,IAAMC,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACX+B,IAAI,EAAEA,IAAI,CAACzB,KAAK;AAChBkB,MAAAA,MAAM,EAAEiG,SAAS,CAACI,cAAc,EAAE3H,OAAO,EAAEI,KAAK,CAAA;AAClD,KAAC,CAAC,CAAA;IAEF2D,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAMF,YAAY,GAAG,SAAfA,YAAYA,CAAGtD,MAAM,EAAI;IAC7B,IAAIQ,aAAO,CAACR,MAAM,CAAC,IAAIS,WAAK,CAACT,MAAM,CAAC,EAAE;AACpCyC,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;IAEA,IAAMC,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;AACXwB,MAAAA,MAAM,EAANA,MAAM;MACNO,IAAI,EAAEgB,YAAY,CAACzC,KAAAA;AACrB,KAAC,CAAC,CAAA;IAEF2D,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED2B,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC3E,aAAO,CAACiF,OAAO,CAAC,EAAE,OAAA;AACvBpD,IAAAA,WAAW,CAACd,YAAY,CAACzC,KAAK,CAAC,IAAI+F,eAAe,CAACiB,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;AACtE,GAAC,EAAE,CAACL,OAAO,CAAC,CAAC,CAAA;AAEb,EAAA,oBACEL,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,EACrDgC,CAAAA,gBAAgB,iBACflC,cAAA,CAACG,0BAAM,EAAA;AACCf,MAAAA,KAAK,EAALA,KAAK;AACX4C,MAAAA,YAAY,EAAEI,aAAa,CAAC,CAAC,CAAE;AAC/BpH,MAAAA,OAAO,EAAEoH,aAAc;AACvBhH,MAAAA,KAAK,EAAEyC,YAAa;AACpB+C,MAAAA,QAAQ,EAAE6B,gBAAAA;AAAiB,KAC5B,CACF,EACA,CAAC9D,WAAW,CAACd,YAAY,CAACzC,KAAK,CAAC,iBAC/B4E,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCpB,MAAAA,SAAS,EAATA,SAAS;AAAEhE,MAAAA,OAAO,EAAPA,OAAO;AAAEI,MAAAA,KAAK,EAALA,KAAK;AAC/B,MAAA,SAAA,EAAA,gBAAA,CAAAmB,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDoB,MAAAA,WAAW,EAAE,CAAC2B,YAAY,IAAI3B,WAAY;AAC1CpF,MAAAA,OAAO,EAAEA,aAAO,CAACH,WAAW,CAAE;AAC9BsE,MAAAA,KAAK,EAAE,CAAC8C,gBAAgB,IAAI9C,KAAM;AAClCqB,MAAAA,QAAQ,EAAC,OAAO;AAChBC,MAAAA,WAAW,EAAEf,CAAC,CAAC,sCAAsC,EAAE;AACrDgB,QAAAA,QAAQ,EAAEvB,KAAAA;OACX,CAAA;AAAE,KAAA,EACEkB,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD6C,MAAAA,QAAQ,EAAEhB,YAAAA;KACNJ,EAAAA,UAAU,CACf,CACF,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,iBAAeqB,aAAAA,UAAI,CAACiB,QAAQ,CAAC;;;;AC/H7B,IAAMe,cAAc,GAAG,SAAjBA,cAAcA,CAAAhI,IAAA,EAMd;AAAA,EAAA,IALJiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IACN/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNgH,OAAO,GAAAlH,IAAA,CAAPkH,OAAO;IACPhD,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IACjBC,SAAS,GAAAnE,IAAA,CAATmE,SAAS,CAAA;EAET,IAAA+B,SAAA,GAAwCC,cAAQ,CAC9C,YAAA;AAAA,MAAA,OACE1F,gBAAM,CAAC;AAAEF,QAAAA,KAAK,EAAEL,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE8B,IAAAA;AAAK,OAAC,EAAEiG,6BAAmB,CAAC,IACpDA,6BAAmB,CAAC,CAAC,CAAC,CAAA;AAAA,KAC1B,CAAC;IAAA7B,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAJMlD,IAAAA,YAAY,GAAAoD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAKpC,EAAA,IAAQhC,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/DhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7Bf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;AACjE,EAAA,IAAME,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;EACxC,IAAMiE,cAAc,GAAGlF,YAAY,CAACzC,KAAK,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;EAC1E,IAAMA,KAAK,GAAGL,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEK,KAAK,CAAA;;AAE3B;AACAqG,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC3E,aAAO,CAACiF,OAAO,CAAC,EAAE,OAAA;AACvBZ,IAAAA,eAAe,CAAC2B,6BAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;AACzC,GAAC,EAAE,CAACf,OAAO,CAAC,CAAC,CAAA;AAEb,EAAA,IAAMU,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGO,UAAU,EAAI;IACrC7B,eAAe,CAAC6B,UAAU,CAAC,CAAA;;AAE3B;IACA,IAAIC,WAAW,GAAG7H,KAAK,CAAA;AACvB,IAAA,IACG2H,cAAc,KAAK,OAAO,IAAIC,UAAU,CAAC5H,KAAK,KAAK,SAAS,IAC5D2H,cAAc,KAAK,MAAM,IAAIC,UAAU,CAAC5H,KAAK,KAAK,SAAU,EAC7D;AACA6H,MAAAA,WAAW,GAAG,EAAE,CAAA;AAClB,KAAA;IAEA,IAAMnD,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACXwB,MAAM,EAAE,EAAE;MACVO,IAAI,EAAEmG,UAAU,CAAC5H,KAAK;AACtBA,MAAAA,KAAK,EAAE6H,WAAAA;AACT,KAAC,CAAC,CAAA;IACFlE,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAMF,YAAY,GAAG,SAAfA,YAAYA,CAAGhC,KAAK,EAAI;IAC5B,IAAId,aAAO,CAACc,KAAK,CAAC,IAAIb,WAAK,CAACa,KAAK,CAAC,EAAE;AAClCmB,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;IAEA,IAAMzE,KAAK,GACT2H,cAAc,KAAK,OAAO,GACtBnF,KAAK,CAAC5B,GAAG,CAAC,UAAAuF,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACC,WAAW,EAAE,CAAA;AAAA,KAAA,CAAC,GACrC5D,KAAK,CAAA;IAEX,IAAMkC,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACXwB,MAAM,EAAE,EAAE;MACVO,IAAI,EAAEgB,YAAY,CAACzC,KAAK;AACxBA,MAAAA,KAAK,EAALA,KAAAA;AACF,KAAC,CAAC,CAAA;IACF2D,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,oBACE4B,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACChB,MAAAA,KAAK,EAALA,KAAK;AACX,MAAA,SAAA,EAAA,gBAAA,CAAA7C,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAe,cAAA,CAAA;AACvD+C,MAAAA,YAAY,EAAEc,6BAAmB,CAAC,CAAC,CAAE;AACrC9H,MAAAA,OAAO,EAAE8H,6BAAoB;AAC7BrC,MAAAA,QAAQ,EAAC,OAAO;AAChBrF,MAAAA,KAAK,EAAEyC,YAAAA;AAAa,KAAA,EACfyC,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD6C,MAAAA,QAAQ,EAAE6B,gBAAAA;AAAiB,KAAA,CAC5B,CAAC,eACFzC,cAAA,CAAC2B,8BAAU,EAAAvB,eAAA,CAAA;AACHpB,MAAAA,SAAS,EAATA,SAAS;AAAE5D,MAAAA,KAAK,EAALA,KAAK;AACtB,MAAA,SAAA,EAAA,gBAAA,CAAAmB,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClD2C,MAAAA,iBAAiB,EAAEC,UAAI,CAAC,YAAY,CAAE;AACtC1C,MAAAA,IAAI,EAAE4D,cAAe;AACrBnC,MAAAA,QAAQ,EAAEhB,YAAAA;KACNJ,EAAAA,UAAU,CACf,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAEV,CAAC;;;;ACvFD,IAAM0D,UAAU,GAAG,SAAbA,UAAUA,CAAArI,IAAA,EAMV;AAAA,EAAA,IALJiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IACN/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNgH,OAAO,GAAAlH,IAAA,CAAPkH,OAAO;IACPhD,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IACjBC,SAAS,GAAAnE,IAAA,CAATmE,SAAS,CAAA;EAET,IAAA+B,SAAA,GAAwCC,cAAQ,CAC9C,YAAA;AAAA,MAAA,OACE1F,gBAAM,CAAC;AAAEF,QAAAA,KAAK,EAAEL,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE8B,IAAAA;AAAK,OAAC,EAAEsG,6BAAmB,CAAC,IACpDA,6BAAmB,CAAC,CAAC,CAAC,CAAA;AAAA,KAC1B,CAAC;IAAAlC,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAJMlD,IAAAA,YAAY,GAAAoD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAKpC,EAAA,IAAQhC,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/DhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7Bf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;AACjE,EAAA,IAAME,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;EACxC,IAAMsE,cAAc,GAAGvF,YAAY,CAACzC,KAAK,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;EAC1E,IAAMA,KAAK,GAAGL,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEK,KAAK,CAAA;AAE3BqG,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC3E,aAAO,CAACiF,OAAO,CAAC,EAAE,OAAA;AACvBZ,IAAAA,eAAe,CAACgC,6BAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;AACzC,GAAC,EAAE,CAACpB,OAAO,CAAC,CAAC,CAAA;AAEb,EAAA,IAAMU,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGO,UAAU,EAAI;IACrC7B,eAAe,CAAC6B,UAAU,CAAC,CAAA;;AAE3B;IACA,IAAIC,WAAW,GAAG7H,KAAK,CAAA;AACvB,IAAA,IACGgI,cAAc,KAAK,OAAO,IAAIJ,UAAU,CAAC5H,KAAK,KAAK,SAAS,IAC5DgI,cAAc,KAAK,MAAM,IAAIJ,UAAU,CAAC5H,KAAK,KAAK,SAAU,EAC7D;AACA6H,MAAAA,WAAW,GAAG,EAAE,CAAA;AAClB,KAAA;IAEA,IAAMnD,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACXwB,MAAM,EAAE,EAAE;MACVO,IAAI,EAAEmG,UAAU,CAAC5H,KAAK;AACtBA,MAAAA,KAAK,EAAE6H,WAAAA;AACT,KAAC,CAAC,CAAA;IACFlE,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAMF,YAAY,GAAG,SAAfA,YAAYA,CAAGzB,KAAK,EAAI;AAC5B,IAAA,IAAID,eAAe,CAACC,KAAK,CAAC,EAAE;AAC1BY,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;IAEA,IAAIuD,cAAc,KAAK,OAAO,IAAI3E,gCAAgC,CAACN,KAAK,CAAC,EAAE;AACzE,MAAA,OAAA;AACF,KAAA;IAEA,IAAM/C,KAAK,GACTgI,cAAc,KAAK,OAAO,GACtBjF,KAAK,CAACnC,GAAG,CAAC,UAAAuC,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACiD,WAAW,EAAE,CAAA;AAAA,KAAA,CAAC,GACrCrD,KAAK,CAACqD,WAAW,EAAE,CAAA;IAEzB,IAAM1B,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACXwB,MAAM,EAAE,EAAE;MACVO,IAAI,EAAEgB,YAAY,CAACzC,KAAK;AACxBA,MAAAA,KAAK,EAALA,KAAAA;AACF,KAAC,CAAC,CAAA;IACF2D,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,oBACE4B,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACChB,MAAAA,KAAK,EAALA,KAAK;AACX4C,MAAAA,YAAY,EAAEmB,6BAAmB,CAAC,CAAC,CAAE;AACrCnI,MAAAA,OAAO,EAAEmI,6BAAoB;AAC7B1C,MAAAA,QAAQ,EAAC,OAAO;AAChBrF,MAAAA,KAAK,EAAEyC,YAAAA;AAAa,KAAA,EACfyC,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD6C,MAAAA,QAAQ,EAAE6B,gBAAAA;AAAiB,KAAA,CAC5B,CAAC,eACFzC,cAAA,CAACqD,8BAAU,EAAAjD,eAAA,CAAA;AACHpB,MAAAA,SAAS,EAATA,SAAS;AAAE5D,MAAAA,KAAK,EAALA,KAAK;AACtB6E,MAAAA,SAAS,EAAC,QAAQ;AAClB,MAAA,SAAA,EAAA,gBAAA,CAAA1D,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDqE,MAAAA,MAAM,EAAEC,iBAAY;AACpBpE,MAAAA,IAAI,EAAEiE,cAAe;AACrBxC,MAAAA,QAAQ,EAAEhB,YAAAA;KACNJ,EAAAA,UAAU,CACf,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAEV,CAAC;;;;AC9FD,IAAMgE,IAAI,GAAG,SAAPA,IAAIA,CAAA3I,IAAA,EAOJ;AAAA,EAAA,IANJiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IACN/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNgH,OAAO,GAAAlH,IAAA,CAAPkH,OAAO;IACPhD,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IACjBC,SAAS,GAAAnE,IAAA,CAATmE,SAAS;IACTyE,OAAO,GAAA5I,IAAA,CAAP4I,OAAO,CAAA;AAEP,EAAA,IACExE,GAAG,GAKDH,MAAM,CALRG,GAAG;IAAAC,mBAAA,GAKDJ,MAAM,CAJRhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IACzBE,KAAK,GAGHN,MAAM,CAHRM,KAAK;IAAA6C,qBAAA,GAGHnD,MAAM,CAFRoD,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAA3C,qBAAA,GAEtBR,MAAM,CADRf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;AAEpB,EAAA,IAAME,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;EACxC,IAAM4E,WAAW,GAAGC,sBAAgB,CAAC;AAAE7I,IAAAA,WAAW,EAAXA,WAAAA;AAAY,GAAC,CAAC,CAAA;AACrD,EAAA,IAAM8I,SAAS,GACb9I,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,aAAa,GAAG,MAAM,GAAG,QAAQ,CAAA;EAE7E,IAAAiG,SAAA,GAAoCC,cAAQ,CAACjG,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEK,KAAK,CAAC;IAAA6F,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApD8C,IAAAA,UAAU,GAAA5C,UAAA,CAAA,CAAA,CAAA;AAAE6C,IAAAA,aAAa,GAAA7C,UAAA,CAAA,CAAA,CAAA,CAAA;EAChC,IAAA8C,UAAA,GAAwC/C,cAAQ,CAC9C,YAAA;AAAA,MAAA,OAAM1F,gBAAM,CAAC;AAAEF,QAAAA,KAAK,EAAEL,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE8B,IAAAA;AAAK,OAAC,EAAE6G,WAAW,CAAC,IAAIA,WAAW,CAAC,CAAC,CAAC,CAAA;AAAA,KACtE,CAAC;IAAAM,UAAA,GAAA9C,kCAAA,CAAA6C,UAAA,EAAA,CAAA,CAAA;AAFMlG,IAAAA,YAAY,GAAAmG,UAAA,CAAA,CAAA,CAAA;AAAE7C,IAAAA,eAAe,GAAA6C,UAAA,CAAA,CAAA,CAAA,CAAA;AAGpC,EAAA,IAAMC,mBAAmB,GAAGC,sBAAW,CAACL,UAAU,CAAC,CAAA;AACnD,EAAA,IAAApE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMwE,0BAA0B,GAAG,SAA7BA,0BAA0BA,GAG3B;AAAA,IAAA,IAFH/I,KAAK,GAAAgJ,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAGH,mBAAmB,CAAA;AAAA,IAAA,IAC3BpH,IAAI,GAAAuH,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAGvG,YAAY,CAAA;AAEnB,IAAA,IAAIe,YAAM,CAAC7D,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAEK,KAAK,EAAEA,KAAK,CAAC,IAAIwD,YAAM,CAACf,YAAY,EAAEhB,IAAI,CAAC,EAAE,OAAA;IAEhE,IAAMiD,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACXwB,MAAM,EAAE,EAAE;MACVO,IAAI,EAAEA,IAAI,CAACzB,KAAK;AAChBA,MAAAA,KAAK,EAAEA,KAAK,CAACmJ,IAAI,EAAC;AACpB,KAAC,CAAC,CAAA;IACFxF,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAM0E,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,CAAC,EAAI;AACzB,IAAA,IAAI,EAAEA,CAAC,CAACxF,GAAG,KAAK,OAAO,CAAC,EAAE,OAAA;IAC1BkF,0BAA0B,CAACN,UAAU,CAAC,CAAA;AACtCJ,IAAAA,OAAO,EAAE,CAAA;GACV,CAAA;AAED,EAAA,IAAMhB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGO,UAAU,EAAI;IACrC7B,eAAe,CAAC6B,UAAU,CAAC,CAAA;IAC3B,IAAI,CAACiB,mBAAmB,EAAE,OAAA;AAC1BE,IAAAA,0BAA0B,CAACF,mBAAmB,EAAEjB,UAAU,CAAC,CAAA;GAC5D,CAAA;;AAED;AACAvB,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,CAAC3E,aAAO,CAACiF,OAAO,CAAC,IAAIhF,WAAK,CAAChC,MAAM,CAAC,KAAK+I,aAAa,CAAC,EAAE,CAAC,CAAA;AAC1D,GAAC,EAAE,CAAC/I,MAAM,CAAC,CAAC,CAAA;AAEZ0G,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,CAACwC,mBAAmB,EAAE;AACxB,MAAA,CAACS,wBAAkB,CAAC3J,MAAM,CAAC,IAAIgE,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEnE,MAAA,OAAA;AACF,KAAA;AAEAsE,IAAAA,0BAA0B,EAAE,CAAA;AAC9B,GAAC,EAAE,CAACF,mBAAmB,CAAC,CAAC,CAAA;AAEzB,EAAA,oBACEvC,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,GACrDgC,gBAAgB,iBACflC,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAA;AACChB,MAAAA,KAAK,EAALA,KAAK;AACX,MAAA,SAAA,EAAA,gBAAA,CAAA7C,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAe,cAAA,CAAA;AACvD+C,MAAAA,YAAY,EAAE0B,WAAW,CAAC,CAAC,CAAE;AAC7B1I,MAAAA,OAAO,EAAE0I,WAAY;AACrBjD,MAAAA,QAAQ,EAAC,OAAO;AAChBrF,MAAAA,KAAK,EAAEyC,YAAa;AACpB+C,MAAAA,QAAQ,EAAE6B,gBAAAA;AAAiB,KAAA,EACtBnC,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CACF,CACF,eACDiC,cAAA,CAAC2E,yBAAK,EAAAvE,eAAA,CAAAA,eAAA,CAAA;AACEpB,MAAAA,SAAS,EAATA,SAAS;AACf,MAAA,SAAA,EAAA,gBAAA,CAAAzC,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDG,MAAAA,KAAK,EAAE,CAAC8C,gBAAgB,IAAI9C,KAAM;AAClCD,MAAAA,IAAI,EAAEyE,SAAU;AAChBxI,MAAAA,KAAK,EAAEyI,UAAAA;AAAW,KAAA,EACbvD,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD2C,MAAAA,WAAW,EAAEf,CAAC,CAAC,qCAAqC,EAAE;AACpDgB,QAAAA,QAAQ,EAAEvB,KAAAA;AACZ,OAAC,CAAE;AACHwB,MAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEgE,KAAK,EAAA;AAAA,QAAA,OAAId,aAAa,CAACc,KAAK,CAACC,MAAM,CAACzJ,KAAK,CAAC,CAAA;OAAC;AACrD0J,MAAAA,SAAS,EAAEN,aAAAA;KACPhF,EAAAA,UAAU,CACf,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAEV,CAAC;;;;ACpGD,IAAMuF,IAAI,GAAG,SAAPA,IAAIA,CAAAlK,IAAA,EAAyD;AAAA,EAAA,IAAnDiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IAAE/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEgE,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB;IAAEC,SAAS,GAAAnE,IAAA,CAATmE,SAAS,CAAA;AAC1D,EAAA,IAAQC,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/DhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7Bf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA,CAAA;AACjE,EAAA,IAAME,UAAU,GAAG7D,aAAa,CAACmD,MAAM,CAAC,CAAA;AACxC,EAAA,IAAM1D,KAAK,GAAGG,oBAAoB,CAACR,MAAM,CAAC,CAAA;EAC1C,IAAMiK,sBAAsB,GAAGjK,MAAM,IAAIkK,uBAAiB,CAAClK,MAAM,CAACK,KAAK,CAAC,CAAA;AAExE,EAAA,IAAAqE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGtD,MAAM,EAAI;IAC7B,IAAIQ,aAAO,CAACR,MAAM,CAAC,IAAIS,WAAK,CAACT,MAAM,CAAC,EAAE;AACpCyC,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;IAEA,IAAMC,aAAa,GAAGC,wBAAkB,CAAC;AAAEjB,MAAAA,MAAM,EAANA,MAAM;AAAEhE,MAAAA,WAAW,EAAXA,WAAW;AAAEwB,MAAAA,MAAM,EAANA,MAAAA;AAAO,KAAC,CAAC,CAAA;IACzEyC,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,IAAMoF,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAG/G,KAAK,EAAI;AACrC,IAAA,IAAID,eAAe,CAACC,KAAK,CAAC,EAAE;AAC1BY,MAAAA,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAEpC,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,IAAImF,sBAAsB,IAAIvG,gCAAgC,CAACN,KAAK,CAAC,EAAE;AACrE,MAAA,OAAA;AACF,KAAA;IAEA,IAAM2B,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;AACXwB,MAAAA,MAAM,EAAE;AAAElB,QAAAA,KAAK,EAAE+C,KAAK,CAACnC,GAAG,CAAC,UAAAuC,IAAI,EAAA;AAAA,UAAA,OAAIA,IAAI,CAACiD,WAAW,EAAE,CAAA;AAAA,SAAA,CAAA;AAAE,OAAA;AACzD,KAAC,CAAC,CAAA;IACFzC,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACjC,CAAA;AAED,EAAA,oBACE4B,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,cAAA,CAACG,0BAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCpB,MAAAA,SAAS,EAATA,SAAS;AAAEI,MAAAA,KAAK,EAALA,KAAK;AAAEhE,MAAAA,KAAK,EAALA,KAAK;MAC7BiF,WAAW,EAAA,IAAA;AACX,MAAA,SAAA,EAAA,gBAAA,CAAA9D,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDjE,MAAAA,OAAO,EAAES,sBAAa;AACtBgF,MAAAA,QAAQ,EAAC,OAAO;AAChBC,MAAAA,WAAW,EAAEf,CAAC,CAAC,sCAAsC,EAAE;AACrDgB,QAAAA,QAAQ,EAAEvB,KAAAA;OACX,CAAA;AAAE,KAAA,EACEkB,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;KAChE,CAAA,EAAA,EAAA,EAAA;AACD6C,MAAAA,QAAQ,EAAEhB,YAAAA;KACX,CAAA,CAAC,EACDoF,sBAAsB,iBACrBhF,cAAA,CAACqD,8BAAU,EAAAjD,eAAA,CAAA;AACTH,MAAAA,SAAS,EAAC,QAAQ;AAClB,MAAA,SAAA,EAAA,gBAAA,CAAA1D,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAc,aAAA,CAAA;AACtDqE,MAAAA,MAAM,EAAEC,iBAAY;AACpBpE,MAAAA,IAAI,EAAC,OAAO;MACZ/D,KAAK,EAAEL,MAAM,CAACK,KAAM;AACpBwF,MAAAA,QAAQ,EAAEsE,qBAAAA;KACN1F,EAAAA,UAAU,CACf,CACF,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,aAAeqB,aAAAA,UAAI,CAACkE,IAAI,CAAC;;;;ACxEzB,IAAMI,UAAU,GAAG,SAAbA,UAAUA,CAAAtK,IAAA,EAAyD;AAAA,EAAA,IAAAuK,OAAA,CAAA;AAAA,EAAA,IAAnDpG,SAAS,GAAAnE,IAAA,CAATmE,SAAS;IAAEF,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IAAE/D,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEgE,iBAAiB,GAAAlE,IAAA,CAAjBkE,iBAAiB,CAAA;AAChE,EAAA,IACEE,GAAG,GAQDH,MAAM,CARRG,GAAG;IACHG,KAAK,GAOHN,MAAM,CAPRM,KAAK;IAAAF,mBAAA,GAOHJ,MAAM,CANRhE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IACzB8C,YAAY,GAKVlD,MAAM,CALRkD,YAAY;IAAA1C,qBAAA,GAKVR,MAAM,CAJRf,aAAa;AAAbA,IAAAA,aAAa,GAAAuB,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA;IAAA6C,mBAAA,GAIhBrD,MAAM,CAHRuB,WAAW;AAAXA,IAAAA,WAAW,GAAA8B,mBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,mBAAA;IAAAF,qBAAA,GAGhBnD,MAAM,CAFRoD,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAChBjH,OAAO,GACb8D,MAAM,CADRO,MAAM,CAAA;AAGR,EAAA,IAAMgG,WAAW,GAAA,CAAAD,OAAA,GACf9J,gBAAM,CAAC;AAAEF,IAAAA,KAAK,EAAEL,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE8B,IAAAA;GAAM,EAAEyI,uBAAiB,CAAC,MAAAF,IAAAA,IAAAA,OAAA,KAAAA,KAAAA,CAAAA,GAAAA,OAAA,GAAIE,uBAAiB,CAAC,CAAC,CAAC,CAAA;AAC5E,EAAA,IAAAvE,SAAA,GAAwCC,cAAQ,CAACqE,WAAW,CAAC;IAAApE,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDlD,IAAAA,YAAY,GAAAoD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAAxB,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;EAET,IAAM4F,cAAc,GAAG3K,kBAAkB,CAAC;AAAEE,IAAAA,WAAW,EAAXA,WAAW;AAAEC,IAAAA,MAAM,EAANA,MAAM;AAAEC,IAAAA,OAAO,EAAPA,OAAAA;AAAQ,GAAC,CAAC,CAAA;AAE3E,EAAA,IAAM4E,YAAY,GAAG,SAAfA,YAAYA,CAAGtD,MAAM,EAAI;AAC7B,IAAA,IAAIsG,sBAAY,CAACtG,MAAM,CAAC,EAAE,OAAOyC,iBAAiB,CAAC;AAAEc,MAAAA,OAAO,EAAE,IAAA;AAAK,KAAC,CAAC,CAAA;IAErE,IAAMC,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;AACXwB,MAAAA,MAAM,EAANA,MAAM;MACNO,IAAI,EAAEgB,YAAY,CAACzC,KAAAA;AACrB,KAAC,CAAC,CAAA;IAEF,OAAO2D,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACxC,CAAA;AAED,EAAA,IAAM2C,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAG5F,IAAI,EAAI;AAC/B,IAAA,IAAM6F,mBAAmB,GAAG/D,WAAW,CAACd,YAAY,CAACzC,KAAK,CAAC,CAAA;AAC3D,IAAA,IAAMuH,cAAc,GAAGhE,WAAW,CAAC9B,IAAI,CAACzB,KAAK,CAAC,CAAA;IAC9C+F,eAAe,CAACtE,IAAI,CAAC,CAAA;AAErB,IAAA,IACE6F,mBAAmB,IAClB,CAACC,cAAc,IAAIC,sBAAY,CAAC7H,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEK,KAAK,CAAE,EAChD;AACA,MAAA,OAAO2D,iBAAiB,CAAC;AAAEc,QAAAA,OAAO,EAAE,IAAA;AAAK,OAAC,CAAC,CAAA;AAC7C,KAAA;IAEA,IAAMC,aAAa,GAAGC,wBAAkB,CAAC;AACvCjB,MAAAA,MAAM,EAANA,MAAM;AACNhE,MAAAA,WAAW,EAAXA,WAAW;MACXwB,MAAM,EAAEqG,cAAc,GAAG,CAAC3H,OAAO,CAAC,CAAC,CAAC,CAAC,GAAGuK,cAAc;MACtD1I,IAAI,EAAEA,IAAI,CAACzB,KAAAA;AACb,KAAC,CAAC,CAAA;IAEF,OAAO2D,iBAAiB,CAACe,aAAa,CAAC,CAAA;GACxC,CAAA;AAED,EAAA,oBACE4B,eAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,EACrDgC,CAAAA,gBAAgB,iBACflC,cAAA,CAACG,0BAAM,EAAA;AACCf,MAAAA,KAAK,EAALA,KAAK;AACX4C,MAAAA,YAAY,EAAEsD,uBAAiB,CAAC,CAAC,CAAE;AACnCtK,MAAAA,OAAO,EAAEsK,uBAAkB;AAC3BlK,MAAAA,KAAK,EAAEyC,YAAa;AACpB+C,MAAAA,QAAQ,EAAE6B,gBAAAA;KACX,CACF,EACA,CAAC9D,WAAW,CAACd,YAAY,CAACzC,KAAK,CAAC;AAAA;AAC/B;AACA4E,IAAAA,cAAA,CAACwF,qCAAiB,EAAApF,aAAA,CAAAA,aAAA,CAAA;AACVpB,MAAAA,SAAS,EAATA,SAAS;MACfyG,QAAQ,EAAA,IAAA;MACRC,UAAU,EAAA,IAAA;MACVC,kBAAkB,EAAA,IAAA;AAClBC,MAAAA,UAAU,EAAE,CAAC5D,YAAY,IAAI3B,WAAY;AACzC,MAAA,SAAA,EAAA,gBAAA,CAAA9D,MAAA,CAA0BiE,mBAAS,CAACvB,GAAG,CAAC,EAAU,SAAA,CAAA;AAClDG,MAAAA,KAAK,EAAE,CAAC8C,gBAAgB,IAAI9C,KAAM;AAClCyG,MAAAA,QAAQ,EAAE7K,OAAQ;AAClBI,MAAAA,KAAK,EAAEmK,cAAe;AACtB7E,MAAAA,WAAW,EAAEf,CAAC,CAAC,sCAAsC,EAAE;AACrDgB,QAAAA,QAAQ,EAAEvB,KAAAA;AACZ,OAAC,CAAE;AACHwB,MAAAA,QAAQ,EAAEhB,YAAAA;AAAa,KAAA,EAClBU,oBAAU,CAACvC,aAAa,CAAC,IAAI;AAChCwC,MAAAA,UAAU,EAAE;QAAExC,aAAa,EAAED,kBAAkB,CAACC,aAAa,CAAA;AAAE,OAAA;AACjE,KAAC,GACGpC,aAAa,CAACmD,MAAM,CAAC,CAC1B,CACF,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,mBAAe+B,aAAAA,UAAI,CAACsE,UAAU,CAAC;;ACpF/B,IAAMW,IAAI,GAAG,SAAPA,IAAIA,CAAAjL,IAAA,EAAiE;AAAA,EAAA,IAA3DiE,MAAM,GAAAjE,IAAA,CAANiE,MAAM;IAAEiD,OAAO,GAAAlH,IAAA,CAAPkH,OAAO;IAAEnB,QAAQ,GAAA/F,IAAA,CAAR+F,QAAQ;IAAE5B,SAAS,GAAAnE,IAAA,CAATmE,SAAS;IAAA+G,YAAA,GAAAlL,IAAA,CAAE4I,OAAO;AAAPA,IAAAA,OAAO,GAAAsC,YAAA,KAAGC,KAAAA,CAAAA,GAAAA,cAAI,GAAAD,YAAA,CAAA;AAClE,EAAA,IAAQ9G,GAAG,GAAgCH,MAAM,CAAzCG,GAAG;IAAAC,mBAAA,GAAgCJ,MAAM,CAApChE,WAAW;AAAXA,IAAAA,WAAW,GAAAoE,mBAAA,KAAA,KAAA,CAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA,CAAA;EAEtC,IAAMnE,MAAM,GAAGkL,aAAO,CAAC,YAAA;AAAA,IAAA,OAAM3K,gBAAM,CAAC;AAAE2D,MAAAA,GAAG,EAAHA,GAAAA;KAAK,EAAE8C,OAAO,CAAC,CAAA;AAAA,GAAA,EAAE,CAACA,OAAO,EAAE9C,GAAG,CAAC,CAAC,CAAA;AAEtE,EAAA,IAAMF,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGe,aAAa,EAAI;AACzC,IAAA,IAAIA,aAAa,CAACD,OAAO,EAAEe,QAAQ,CAACsF,kBAAQ,CAAC;AAAEjH,MAAAA,GAAG,EAAHA,GAAAA;KAAK,EAAE8C,OAAO,CAAC,CAAC,CAAC,KAC3D,IAAI,CAAChH,MAAM,EAAE6F,QAAQ,CAACpE,YAAM,CAACsD,aAAa,EAAEiC,OAAO,CAAC,CAAC,CAAC,KACtDnB,QAAQ,CAACuF,mBAAS,CAAC;AAAElH,MAAAA,GAAG,EAAHA,GAAAA;AAAI,KAAC,EAAEa,aAAa,EAAEiC,OAAO,CAAC,CAAC,CAAA;GAC1D,CAAA;EAED,IAAIqE,YAAM,CAACtL,WAAW,CAAC,IAAIuL,aAAO,CAACvL,WAAW,CAAC,EAAE;IAC/C,oBACEkF,cAAA,CAACwD,IAAI,EAAA;AACGxE,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgH,MAAAA,OAAO,EAAPA,OAAO;AAAEhD,MAAAA,iBAAiB,EAAjBA,iBAAiB;AAAE0E,MAAAA,OAAO,EAAPA,OAAAA;AAAO,KACrE,CAAC,CAAA;AAEN,GAAA;AAEA,EAAA,IAAI6C,YAAM,CAACxL,WAAW,CAAC,EAAE;IACvB,oBAAOkF,cAAA,CAACc,UAAQ,EAAA;AAAO9B,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgE,MAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,KAAK,CAAC,CAAA;AAC3E,GAAA;AAEA,EAAA,IAAIwH,YAAM,CAACzL,WAAW,CAAC,EAAE;IACvB,oBAAOkF,cAAA,CAAC+E,MAAI,EAAA;AAAO/F,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgE,MAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,KAAK,CAAC,CAAA;AACvE,GAAA;AAEA,EAAA,IAAIyH,kBAAY,CAAC1L,WAAW,CAAC,EAAE;IAC7B,oBACEkF,cAAA,CAAC6C,cAAc,EAAA;AACP7D,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgH,MAAAA,OAAO,EAAPA,OAAO;AAAEhD,MAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,KAC5D,CAAC,CAAA;AAEN,GAAA;AAEA,EAAA,IAAI0H,kBAAY,CAAC3L,WAAW,CAAC,EAAE;IAC7B,oBACEkF,cAAA,CAACkD,UAAU,EAAA;AACHlE,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgH,MAAAA,OAAO,EAAPA,OAAO;AAAEhD,MAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,KAC5D,CAAC,CAAA;AAEN,GAAA;EAEA,IAAI2H,eAAS,CAAC5L,WAAW,CAAC,IAAI6L,gBAAU,CAAC7L,WAAW,CAAC,EAAE;IACrD,oBAAOkF,cAAA,CAACnB,SAAO,EAAA;AAAOG,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgE,MAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,KAAK,CAAC,CAAA;AAC1E,GAAA;AAEA,EAAA,IAAI7D,kBAAY,CAACJ,WAAW,CAAC,EAAE;IAC7B,oBAAOkF,cAAA,CAACmF,YAAU,EAAA;AAAOnG,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE/D,MAAAA,MAAM,EAANA,MAAM;AAAEgE,MAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,KAAK,CAAC,CAAA;AAC7E,GAAA;EAEA,oBACEiB,cAAA,CAAC8B,UAAQ,EAAA;AAAO9C,IAAAA,SAAS,EAATA,SAAS;AAAEF,IAAAA,MAAM,EAANA,MAAM;AAAE/D,IAAAA,MAAM,EAANA,MAAM;AAAEgH,IAAAA,OAAO,EAAPA,OAAO;AAAEhD,IAAAA,iBAAiB,EAAjBA,iBAAAA;AAAiB,GAAK,CAAC,CAAA;AAE/E;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSegmentsApi-3805ee98.js","sources":["../app/javascript/src/constants/query.js","../app/javascript/src/apis/segments.js","../app/javascript/src/hooks/reactQuery/useSegmentsApi.js"],"sourcesContent":["export const QUERY_KEYS = { SEGMENTS_LIST: \"segments-list\" };\n\nexport const SEGMENTS_STALE_TIME = 900_000; // 15 mins\n","import axios from \"axios\";\n\nimport { SEGMENTS_BASE_URL } from \"common/constants\";\n\nconst fetch = params => axios.get(SEGMENTS_BASE_URL, { params });\n\nconst show = id =>\n axios.get(`${SEGMENTS_BASE_URL}/${id}`, { transformResponseCase: false });\n\nconst create = payload =>\n axios.post(SEGMENTS_BASE_URL, { segment: payload }, { showToastr: false });\n\nconst update = ({ id, payload, showToastr = true }) =>\n axios.put(`${SEGMENTS_BASE_URL}/${id}`, payload, { showToastr });\n\nconst destroy = id => axios.delete(`${SEGMENTS_BASE_URL}/${id}`);\n\nconst segmentsApi = { fetch, show, create, update, destroy };\n\nexport default segmentsApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\n\nimport segmentsApi from \"apis/segments\";\nimport { SEGMENTS_STALE_TIME, QUERY_KEYS } from \"src/constants/query\";\n\nconst { SEGMENTS_LIST } = QUERY_KEYS;\n\nconst useFetchSegments = ({ entity, searchTerm = \"\" }, options = {}) =>\n useQuery({\n queryKey: [SEGMENTS_LIST, entity, searchTerm],\n queryFn: () => segmentsApi.fetch({ entity, searchTerm }),\n select: prop(\"segments\"),\n staleTime: SEGMENTS_STALE_TIME,\n ...options,\n });\n\nconst useShowSegment = (id, options = {}) =>\n useQuery({\n queryKey: [SEGMENTS_LIST, id],\n queryFn: () => segmentsApi.show(id),\n select: prop(\"segment\"),\n staleTime: SEGMENTS_STALE_TIME,\n ...options,\n });\n\nconst useCreateSegment = options =>\n useMutationWithInvalidation(segmentsApi.create, {\n keysToInvalidate: [[SEGMENTS_LIST]],\n ...options,\n });\n\nconst useUpdateSegment = options =>\n useMutationWithInvalidation(segmentsApi.update, {\n keysToInvalidate: [[SEGMENTS_LIST]],\n ...options,\n });\n\nconst useDestroySegment = options =>\n useMutationWithInvalidation(segmentsApi.destroy, {\n keysToInvalidate: [[SEGMENTS_LIST]],\n ...options,\n });\n\nexport {\n useFetchSegments,\n useShowSegment,\n useCreateSegment,\n useUpdateSegment,\n useDestroySegment,\n};\n"],"names":["QUERY_KEYS","SEGMENTS_LIST","SEGMENTS_STALE_TIME","fetch","params","axios","get","SEGMENTS_BASE_URL","show","id","concat","transformResponseCase","create","payload","post","segment","showToastr","update","_ref","_ref$showToastr","put","destroy","segmentsApi","useFetchSegments","entity","_ref$searchTerm","searchTerm","options","arguments","length","undefined","useQuery","_objectSpread","queryKey","queryFn","select","prop","staleTime","useCreateSegment","useMutationWithInvalidation","keysToInvalidate","useUpdateSegment","useDestroySegment"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils-e0b52fa1.js","sources":["../app/javascript/src/common/dayjs.js","../app/javascript/src/components/Pane/Item/constants.js","../app/javascript/src/components/utils.js"],"sourcesContent":["import { dayjs } from \"neetocommons/utils\";\n\ndayjs.Ls.en.weekStart = 1;\n\nexport default dayjs;\n","import { t } from \"i18next\";\nimport { Help } from \"neetoicons\";\n\nexport const NUMBER_RULES = [\n { label: t(\"neetoFilters.rules.is\"), value: \"is\" },\n { label: t(\"neetoFilters.rules.isNot\"), value: \"is_not\" },\n { label: t(\"neetoFilters.rules.greaterThan\"), value: \"greater_than\" },\n { label: t(\"neetoFilters.rules.lessThan\"), value: \"less_than\" },\n];\n\nexport const TEXT_RULES = [\n { label: t(\"neetoFilters.rules.contains\"), value: \"contains\" },\n { label: t(\"neetoFilters.rules.doesNotContain\"), value: \"does_not_contain\" },\n { label: t(\"neetoFilters.rules.is\"), value: \"is\" },\n { label: t(\"neetoFilters.rules.isNot\"), value: \"is_not\" },\n { label: t(\"neetoFilters.rules.startsWith\"), value: \"starts_with\" },\n {\n label: t(\"neetoFilters.rules.doesNotStartWith\"),\n value: \"does_not_start_with\",\n },\n { label: t(\"neetoFilters.rules.endsWith\"), value: \"ends_with\" },\n { label: t(\"neetoFilters.rules.doesNotEndWith\"), value: \"does_not_end_with\" },\n];\n\nexport const MULTI_DROPDOWN_RULES = [\n { label: t(\"neetoFilters.rules.in\"), value: \"in\" },\n { label: t(\"neetoFilters.rules.notIn\"), value: \"not_in\" },\n { label: t(\"neetoFilters.rules.isEmpty\"), value: \"is_unknown\" },\n];\n\nexport const SINGLE_DROPDOWN_RULES = [\n { label: t(\"neetoFilters.rules.is\"), value: \"is\" },\n { label: t(\"neetoFilters.rules.isNot\"), value: \"is_not\" },\n { label: t(\"neetoFilters.rules.isEmpty\"), value: \"is_unknown\" },\n];\n\nexport const DEFAULT_BOOLEAN_OPTIONS = [\n { label: t(\"neetoFilters.common.yes\"), value: \"true\" },\n { label: t(\"neetoFilters.common.no\"), value: \"false\" },\n];\n\nexport const TREE_SELECT_RULES = [\n { label: t(\"neetoFilters.rules.in\"), value: \"in\" },\n { label: t(\"neetoFilters.rules.notIn\"), value: \"not_in\" },\n { label: t(\"neetoFilters.rules.isEmpty\"), value: \"is_unknown\" },\n];\n\nexport const DEFAULT_HELP_ICON_PROPS = { icon: Help };\n\nexport const TIME_FORMAT = \"h:mm A\";\n","import i18next from \"i18next\";\nimport { findBy, removeBy, isNotEmpty, capitalize } from \"neetocist\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport {\n any,\n anyPass,\n concat,\n either,\n equals,\n groupBy,\n has,\n identity,\n isEmpty,\n isNil,\n mergeLeft,\n mergeRight,\n not,\n omit,\n pick,\n pluck,\n toLower,\n toPairs,\n} from \"ramda\";\n\nimport {\n DATE_OPTIONS,\n DATE_RULES,\n SEARCH_TERM_KEY,\n SEGMENT_ID_KEY,\n TIME_OPTIONS,\n} from \"common/constants\";\nimport dayjs from \"common/dayjs\";\n\nimport {\n DEFAULT_BOOLEAN_OPTIONS,\n NUMBER_RULES,\n TEXT_RULES,\n} from \"./Pane/Item/constants\";\n\nconst groupByGroup = groupBy(({ group }) => group || \"individual\");\n\nconst standardizeColumnType = kind => {\n // neeto-fields-nano supports `monetary` and `number` as type of fields, which will be acting as `decimal` in action.\n if ([\"custom.monetary\", \"custom.number\"].includes(kind)) {\n return \"custom.decimal\";\n }\n\n return kind;\n};\n\nexport const getSnakeCasedQueryParams = () =>\n getQueryParams({ toCamelCase: false });\n\nexport const isBoolean = type =>\n type === \"boolean\" || type === \"custom.boolean\";\nexport const isCheckbox = type =>\n type === \"checkbox\" || type === \"custom.checkbox\";\nexport const isDate = type =>\n type === \"date\" || type === \"custom.date\" || type === \"custom.datetime\";\nexport const isSingleDate = type =>\n type === \"single_date\" || type === \"custom.single_date\";\nexport const isSingleTime = type =>\n type === \"single_time\" || type === \"custom.single_time\";\nexport const isTime = type => type === \"time\" || type === \"custom.time\";\nexport const isMulti = type =>\n type === \"multi_option\" || type === \"custom.multi_option\";\nexport const isSingle = type =>\n type === \"single_option\" || type === \"custom.single_option\";\nexport const isText = type => type === \"text\" || type === \"custom.text\";\nexport const isDigit = type =>\n [\"number\", \"decimal\", \"custom.decimal\", \"custom.number\"].includes(type);\nexport const isTreeSelect = type => type === \"tree_select\";\n\nexport const isCustomDateRange = value =>\n !pluck(\"value\", DATE_OPTIONS).includes(value);\n\nexport const isCustomTimeRange = value =>\n !pluck(\"value\", TIME_OPTIONS).includes(value);\n\nexport const isMultiModelFilter = ({ model = \"\" }) =>\n model.split(\",\").length > 1;\n\nexport const getTimezone = () => dayjs().$x?.$timezone || dayjs.tz.guess();\n\nexport const getLabelFromBool = ({ value, values }) =>\n findBy(\n { value },\n either(isEmpty, isNil)(values) ? DEFAULT_BOOLEAN_OPTIONS : values\n ).label;\n\nexport const getBoolFromLabel = ({ label, values }) =>\n findBy(\n { label },\n either(isEmpty, isNil)(values) ? DEFAULT_BOOLEAN_OPTIONS : values\n ).value;\n\nexport const buildRuleOptions = ({ defaultType }) => {\n if (isText(defaultType)) return TEXT_RULES;\n else if (isDigit(defaultType)) return NUMBER_RULES;\n\n return [];\n};\n\nexport const getDefaultRuleValue = defaultType =>\n buildRuleOptions({ defaultType })?.[0]?.value || \"\";\n\nexport const isUndefinedOrEmpty = anyPass([isNil, isEmpty, any(isNil)]);\n\n// Following function split node on comma followed by non-comma characters and a dot\nexport const splitNode = joinedNodes => joinedNodes.split(/,(?=[^,]*\\.)/);\n\nexport const splitFilter = multiColumnFilter => {\n const splittedNodes = splitNode(multiColumnFilter.node);\n const splittedModels = multiColumnFilter.model.split(\",\");\n\n return splittedNodes.map((node, index) =>\n mergeLeft(\n {\n node,\n model: splittedModels[index],\n conditions_join_type: index < splittedNodes.length - 1 ? \"or\" : \"and\",\n },\n omit([\"key\", \"label\", \"values\", \"setValue\"], multiColumnFilter)\n )\n );\n};\n\nexport const buildDateValue = ({ value }) => {\n const rule = DATE_RULES[value] || \"between\";\n const dateValue = [\"before\", \"after\", \"custom-date-range\"].includes(value)\n ? \"\"\n : value;\n\n return { value: dateValue, rule, timezone: getTimezone() };\n};\n\nexport const buildTimeValue = ({ value }) => {\n const dateValue = value === \"custom-time-range\" ? \"\" : value;\n\n return { value: dateValue, rule: \"between\" };\n};\n\nexport const buildUpdatedFilter = ({\n column,\n defaultType,\n option,\n rule = \"\",\n value = \"\",\n}) => {\n const filter = omit([\"values\", \"preprocessor\"], column);\n if (isMulti(defaultType)) {\n return mergeLeft(filter, { value: pluck(\"value\", option), rule });\n } else if (isDate(defaultType)) {\n return mergeLeft(filter, buildDateValue(option));\n } else if (isSingleDate(defaultType)) {\n return mergeLeft(filter, { value, rule, timezone: getTimezone() });\n } else if (isText(defaultType) || isDigit(defaultType)) {\n return mergeLeft(filter, {\n rule,\n value: column?.preprocessor?.(value) || value,\n });\n } else if (isSingleTime(defaultType)) {\n return mergeLeft(filter, { value, rule });\n } else if (isTime(defaultType)) {\n return mergeLeft(filter, buildTimeValue(option));\n } else if (isSingle(defaultType)) {\n return mergeLeft(filter, { value: option.value, rule });\n } else if (isTreeSelect(defaultType)) {\n return mergeLeft(filter, { value: option, rule });\n }\n\n return mergeLeft(filter, { value: option.value, rule: \"is\" });\n};\n\nexport const buildFiltersFromSearchParams = (columns, skipEmpty = true) => {\n const searchParams = getSnakeCasedQueryParams();\n\n return columns\n .map(column => {\n const value = searchParams[column.key];\n const defaultType = column.defaultType || column.type;\n\n if (!skipEmpty && value === \"\") {\n return mergeLeft({ value: \"\" }, column);\n } else if (isNil(value) || value === \"\" || column.key === \"keyword\") {\n return null;\n } else if (column.key === SEARCH_TERM_KEY) {\n if (isNil(column.node)) return null;\n\n return mergeLeft({ value, type: \"text\", rule: \"contains\" }, column);\n } else if (isDate(defaultType) && isCustomDateRange(value)) {\n return mergeLeft({ value }, column);\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n const [filterValue, rule] = value.split(\"+rule-\");\n\n return mergeLeft(\n { rule: rule ?? \"in\", value: filterValue.split(\"|\") },\n column\n );\n } else if (isSingle(defaultType)) {\n const [filterValue, rule] = value.split(\"+rule-\");\n\n return mergeLeft({ rule: rule ?? \"in\", value: filterValue }, column);\n } else if (isDigit(defaultType) || isText(defaultType)) {\n const [filterValue, rule] = value.split(\"+rule-\");\n\n return mergeLeft({ rule, value: filterValue }, column);\n } else if (isTime(defaultType) && isCustomTimeRange(value)) {\n return mergeLeft({ value }, column);\n } else if (isSingleDate(defaultType)) {\n const [filterValue, rule] = value.split(\"+rule-\");\n\n return mergeLeft(\n {\n rule,\n value: rule === \"between\" ? filterValue.split(\",\") : filterValue,\n },\n column\n );\n } else if (isSingleTime(defaultType)) {\n const [filterValue, rule] = value.split(\"+rule-\");\n\n return mergeLeft(\n {\n rule,\n value: rule === \"between\" ? filterValue.split(\",\") : filterValue,\n },\n column\n );\n } else if (isBoolean(defaultType)) {\n return mergeLeft(\n {\n rule: \"is\",\n value: getBoolFromLabel({ label: value, values: column.values }),\n },\n column\n );\n }\n\n return mergeLeft({ rule: \"is\", value }, column);\n })\n .filter(identity);\n};\n\nexport const buildTimePayload = value => {\n const timeValue = {\n \"this-hour\": [dayjs().startOf(\"hour\"), dayjs().endOf(\"hour\")],\n \"last-hour\": [\n dayjs().add(-1, \"hour\").startOf(\"hour\"),\n dayjs().add(-1, \"hour\").endOf(\"hour\"),\n ],\n \"next-hour\": [\n dayjs().add(1, \"hour\").startOf(\"hour\"),\n dayjs().add(1, \"hour\").endOf(\"hour\"),\n ],\n };\n if (isCustomTimeRange(value)) {\n return { value: value ? value.join(\",\") : \"\", rule: \"between\" };\n }\n\n return {\n value: timeValue[value].map(time => time.toISOString()).join(\",\"),\n rule: \"between\",\n };\n};\n\nexport const buildDatePayload = value => {\n const dateValue = {\n \"this-week\": [dayjs().startOf(\"week\"), dayjs().endOf(\"week\")],\n \"last-week\": [\n dayjs().add(-1, \"week\").startOf(\"week\"),\n dayjs().add(-1, \"week\").endOf(\"week\"),\n ],\n \"this-month\": [dayjs().startOf(\"month\"), dayjs().endOf(\"month\")],\n \"last-month\": [\n dayjs().add(-1, \"month\").startOf(\"month\"),\n dayjs().add(-1, \"month\").endOf(\"month\"),\n ],\n \"this-year\": [dayjs().startOf(\"year\"), dayjs().endOf(\"year\")],\n \"last-year\": [\n dayjs().add(-1, \"year\").startOf(\"year\"),\n dayjs().add(-1, \"year\").endOf(\"year\"),\n ],\n };\n\n if (value === \"today\") {\n return {\n value: dayjs().toISOString(),\n rule: \"on\",\n timezone: getTimezone(),\n };\n } else if (value === \"yesterday\") {\n return {\n value: dayjs().add(-1, \"day\").toISOString(),\n rule: \"on\",\n timezone: getTimezone(),\n };\n } else if (value === \"all-time\") {\n return {\n value: dayjs().toISOString(),\n rule: \"before\",\n timezone: getTimezone(),\n type: \"datetime\",\n };\n } else if (isCustomDateRange(value)) {\n //custom-date-range\n return {\n value: value ? value.join(\",\") : \"\",\n rule: \"between\",\n timezone: getTimezone(),\n };\n }\n\n return {\n value: dateValue[value].map(date => date.toISOString()).join(\",\"),\n rule: \"between\",\n timezone: getTimezone(),\n };\n};\n\nexport const buildSingleDatePayload = filter => {\n const { value } = filter;\n const filterValue = Array.isArray(value) ? value.join(\",\") : value;\n const type = filter.defaultType ? filter.type : \"date\";\n\n return { ...filter, value: filterValue, type, timezone: getTimezone() };\n};\n\nexport const buildSingleTimePayload = filter => {\n const { value } = filter;\n const filterValue = Array.isArray(value) ? value.join(\",\") : value;\n const type = filter.defaultType ? filter.type : \"time\";\n\n return { ...filter, value: filterValue, type, timezone: getTimezone() };\n};\nexport const flattenPayload = payload => {\n const flattenedPayload = [];\n payload.forEach(\n item =>\n Array.isArray(item)\n ? flattenedPayload.unshift(...item)\n : flattenedPayload.push(item),\n []\n );\n\n return flattenedPayload;\n};\nexport const buildMultiOptionPayload = values =>\n values.map(value => value.toString()).join(\"|\");\n\nexport const buildFiltersPayload = filters => {\n const payload = removeBy({ value: \"\" }, filters).map(filter => {\n if (filter.key === SEARCH_TERM_KEY && isMultiModelFilter(filter)) {\n return splitFilter(filter);\n }\n const filterPayload = omit([\"key\", \"label\", \"values\", \"setValue\"], filter);\n const { defaultType = filterPayload.type, value } = filterPayload;\n\n if (isMultiModelFilter(filterPayload)) {\n throw i18next.t(\"neetoFilters.errors.cannotPassMultipleModels\");\n }\n\n if (isDate(defaultType)) {\n return mergeRight(filterPayload, buildDatePayload(value));\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return mergeRight(filterPayload, {\n value: buildMultiOptionPayload(value),\n });\n } else if (isSingleDate(defaultType)) {\n return mergeRight(filterPayload, buildSingleDatePayload(filterPayload));\n } else if (isSingleTime(defaultType)) {\n return mergeRight(filterPayload, buildSingleTimePayload(filterPayload));\n } else if (isTime(defaultType)) {\n return mergeRight(filterPayload, buildTimePayload(value));\n }\n\n return filterPayload;\n });\n\n return isEmpty(payload) ? [] : [{ conditions: flattenPayload(payload) }];\n};\n\nexport const buildSegmentsPayload = (filters, childrenKeys = []) => {\n const payload = removeBy({ value: \"\" }, filters).map(filter => {\n if (filter.key === SEARCH_TERM_KEY) {\n return false;\n }\n\n const filterPayload = omit(\n [\"label\", \"values\", \"setValue\", \"defaultValue\"],\n filter\n );\n const { defaultType = filterPayload.type, value } = filterPayload;\n if (filter.key !== SEARCH_TERM_KEY && isMultiModelFilter(filterPayload)) {\n throw i18next.t(\"neetoFilters.errors.cannotPassMultipleModels\");\n }\n\n if (isMulti(defaultType)) {\n return mergeRight(filterPayload, {\n value: buildMultiOptionPayload(value),\n });\n }\n\n return filterPayload;\n });\n const searchParams = getSnakeCasedQueryParams();\n\n const modifiedPayload = childrenKeys.reduce((acc, key) => {\n if (has(key, searchParams)) {\n const filterPayload = {\n key,\n node: \"children\",\n value: searchParams[key],\n };\n\n return acc.concat(filterPayload);\n }\n\n return acc;\n }, payload);\n\n return isEmpty(modifiedPayload)\n ? []\n : [{ conditions: flattenPayload(modifiedPayload) }];\n};\n\nexport const buildFiltersFromURL = columns =>\n buildFiltersPayload(\n buildFiltersFromSearchParams(columns.filter(column => !isNil(column.node)))\n );\n\nexport const buildSelectorsFromURL = columns => {\n const searchParams = getSnakeCasedQueryParams();\n const selectors = {};\n columns\n .filter(({ node }) => !node)\n .forEach(({ key, defaultType, type }) => {\n const value = searchParams[key];\n if (value) {\n selectors[key] = isMulti(defaultType || type)\n ? value.split(\"|\")\n : value;\n }\n });\n\n return selectors;\n};\n\nexport const compareFilters = (oldFilters, newFilters) => {\n const formatFilters = filters =>\n removeBy({ value: \"\" }, filters).map(pick([\"key\", \"rule\", \"value\"]));\n\n return equals(formatFilters(oldFilters), formatFilters(newFilters));\n};\n\nexport const buildFilteredColumns = ({ searchTerm = \"\", columns }) => {\n const groupedColumsObject = groupByGroup(\n columns.filter(\n ({ label, hidden = false }) =>\n label\n .toLocaleLowerCase()\n .includes(searchTerm.trim().toLocaleLowerCase()) && !hidden\n )\n );\n\n return {\n groupedColumns: toPairs(omit([\"individual\"], groupedColumsObject)).map(\n ([group, columns]) => ({ group, columns })\n ),\n ungroupedColumns: groupedColumsObject.individual,\n };\n};\n\nexport const buildDefaultFilters = (columns, filters) =>\n columns\n .filter(\n column =>\n !isUndefinedOrEmpty(column.defaultValue) &&\n !findBy({ key: column.key }, filters)\n )\n .map(column => {\n const defaultType = column.defaultType || column.type;\n\n return buildUpdatedFilter({\n column,\n defaultType,\n rule: getDefaultRuleValue(defaultType),\n option: column.defaultValue,\n value: column.defaultValue,\n });\n });\n\nexport const createUrlParamString = ({ filter, columns }) => {\n const { key, value, defaultType = filter.type, rule } = filter;\n if (key === SEARCH_TERM_KEY) {\n return value;\n } else if (isDigit(defaultType) || isText(defaultType)) {\n return `${value}+rule-${rule}`;\n } else if (isSingleDate(defaultType) || isSingleTime(defaultType)) {\n return (value && `${value}+rule-${rule}`) || value;\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return `${value.join(\"|\")}+rule-${rule}`;\n } else if (isSingle(defaultType)) {\n return `${value}+rule-${rule}`;\n } else if (isBoolean(defaultType)) {\n return getLabelFromBool({\n value,\n values: findBy({ key }, columns).values,\n });\n }\n\n return value;\n};\n\nexport const buildUrlFromFilters = ({\n columns,\n filters,\n isClearAll = false,\n childrenKeys = [],\n}) => {\n const searchParams = getSnakeCasedQueryParams();\n const isKeywordFilterPresent = findBy({ key: SEARCH_TERM_KEY }, filters);\n columns.forEach(\n ({ key, defaultValue }) => !defaultValue && delete searchParams[key]\n );\n\n if (isClearAll) {\n childrenKeys.forEach(key => delete searchParams[key]);\n delete searchParams[SEGMENT_ID_KEY];\n }\n\n const defaultFilters = buildDefaultFilters(columns, filters);\n isKeywordFilterPresent && delete searchParams[SEARCH_TERM_KEY];\n concat(filters, defaultFilters).forEach(filter => {\n searchParams[filter.key] = createUrlParamString({ filter, columns });\n });\n\n if (isEmpty(omit([SEGMENT_ID_KEY], searchParams))) {\n delete searchParams[SEGMENT_ID_KEY];\n }\n\n return buildUrl(\"\", searchParams).slice(1);\n};\n\nexport const createUrlParamStringForSegments = ({ filter, columns }) => {\n const { value, defaultType = filter.type } = filter;\n if (isMulti(defaultType)) {\n return value;\n }\n\n return createUrlParamString({ filter, columns });\n};\n\nexport const buildUrlFromSegment = ({ columns, filters, id }) => {\n const searchParams = getSnakeCasedQueryParams();\n columns.forEach(\n ({ key, defaultValue }) => !defaultValue && delete searchParams[key]\n );\n delete searchParams[SEARCH_TERM_KEY];\n const defaultFilters = buildDefaultFilters(columns, filters);\n const newSearchParams = concat(filters, defaultFilters).reduce(\n (acc, filter) => {\n acc[filter.key] = createUrlParamStringForSegments({\n filter,\n columns,\n });\n\n return acc;\n },\n isNotEmpty(id) ? { [SEGMENT_ID_KEY]: id } : {}\n );\n\n return buildUrl(\"\", mergeLeft(newSearchParams, searchParams)).slice(1);\n};\n\nexport const getSearchTermFromUrl = () => getQueryParams().searchTerm || \"\";\n\nexport const buildFilterColumnsFromFields = ({\n fields,\n selectedFields = [],\n showRuleSelector = false,\n groupName,\n}) =>\n fields.reduce((columns, field) => {\n if (isEmpty(selectedFields) || selectedFields.includes(field.name)) {\n const { id, name, kind } = field;\n const column = {\n key: toLower(name),\n node: `${name}:${id}`,\n label: capitalize(name),\n type: `custom.${kind}`,\n showRuleSelector,\n ...(groupName && { group: groupName }),\n };\n\n if (kind === \"single_option\" || kind === \"multi_option\") {\n column.values = field.data.map(item => ({\n label: capitalize(item.label),\n value: item.id,\n }));\n }\n\n columns.push(column);\n }\n\n return columns;\n }, []);\n\nexport const getColumnsWithStandardizedType = columns =>\n columns.map(column => ({\n ...column,\n type: standardizeColumnType(column.type),\n }));\n\nexport const isKeywordFilterPresent = keyworFilter =>\n not(isEmpty(keyworFilter.node));\n\nexport const isNilOrEmpty = param => isNil(param) || isEmpty(param);\n"],"names":["dayjs","Ls","en","weekStart","NUMBER_RULES","label","t","value","TEXT_RULES","MULTI_DROPDOWN_RULES","SINGLE_DROPDOWN_RULES","DEFAULT_BOOLEAN_OPTIONS","TREE_SELECT_RULES","DEFAULT_HELP_ICON_PROPS","icon","Help","TIME_FORMAT","groupByGroup","groupBy","_ref","group","standardizeColumnType","kind","includes","getSnakeCasedQueryParams","getQueryParams","toCamelCase","isBoolean","type","isCheckbox","isDate","isSingleDate","isSingleTime","isTime","isMulti","isSingle","isText","isDigit","isTreeSelect","isCustomDateRange","pluck","DATE_OPTIONS","isCustomTimeRange","TIME_OPTIONS","isMultiModelFilter","_ref2","_ref2$model","model","split","length","getTimezone","_dayjs$$x","$x","$timezone","tz","guess","getLabelFromBool","_ref3","values","findBy","either","isEmpty","isNil","getBoolFromLabel","_ref4","buildRuleOptions","_ref5","defaultType","getDefaultRuleValue","_buildRuleOptions","_buildRuleOptions$","isUndefinedOrEmpty","anyPass","any","splitNode","joinedNodes","splitFilter","multiColumnFilter","splittedNodes","node","splittedModels","map","index","mergeLeft","conditions_join_type","omit","buildDateValue","_ref6","rule","DATE_RULES","dateValue","timezone","buildTimeValue","_ref7","buildUpdatedFilter","_ref8","column","option","_ref8$rule","_ref8$value","filter","_column$preprocessor","preprocessor","call","buildFiltersFromSearchParams","columns","skipEmpty","arguments","undefined","searchParams","key","SEARCH_TERM_KEY","_value$split","_value$split2","_slicedToArray","filterValue","_value$split3","_value$split4","_value$split5","_value$split6","_value$split7","_value$split8","_value$split9","_value$split10","identity","buildTimePayload","timeValue","startOf","endOf","add","join","time","toISOString","buildDatePayload","date","buildSingleDatePayload","Array","isArray","_objectSpread","buildSingleTimePayload","flattenPayload","payload","flattenedPayload","forEach","item","unshift","apply","_toConsumableArray","push","buildMultiOptionPayload","toString","buildFiltersPayload","filters","removeBy","filterPayload","_filterPayload$defaul","i18next","mergeRight","conditions","buildSegmentsPayload","childrenKeys","_filterPayload$defaul2","modifiedPayload","reduce","acc","has","concat","buildFiltersFromURL","buildSelectorsFromURL","selectors","_ref9","_ref10","compareFilters","oldFilters","newFilters","formatFilters","pick","equals","buildFilteredColumns","_ref11","_ref11$searchTerm","searchTerm","groupedColumsObject","_ref12","_ref12$hidden","hidden","toLocaleLowerCase","trim","groupedColumns","toPairs","_ref13","_ref14","ungroupedColumns","individual","buildDefaultFilters","defaultValue","createUrlParamString","_ref15","_filter$defaultType","buildUrlFromFilters","_ref16","_ref16$isClearAll","isClearAll","_ref16$childrenKeys","isKeywordFilterPresent","_ref17","SEGMENT_ID_KEY","defaultFilters","buildUrl","slice","createUrlParamStringForSegments","_ref18","_filter$defaultType2","buildUrlFromSegment","_ref19","id","_ref20","newSearchParams","isNotEmpty","_defineProperty","getSearchTermFromUrl","buildFilterColumnsFromFields","_ref22","fields","_ref22$selectedFields","selectedFields","_ref22$showRuleSelect","showRuleSelector","groupName","field","name","toLower","capitalize","data","getColumnsWithStandardizedType","keyworFilter","not"],"mappings":"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"}
|