@bigbinary/neeto-filters-frontend 4.3.32 → 4.3.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -2
- package/dist/.ready +1 -0
- package/dist/Bar.js +15 -26
- package/dist/Bar.js.map +1 -1
- package/dist/Filters.js +8 -7
- package/dist/Filters.js.map +1 -1
- package/dist/Segments.js +12 -9
- package/dist/Segments.js.map +1 -1
- package/dist/cjs/Bar.js +19 -30
- package/dist/cjs/Bar.js.map +1 -1
- package/dist/cjs/Filters.js +8 -7
- package/dist/cjs/Filters.js.map +1 -1
- package/dist/cjs/Segments.js +8 -5
- package/dist/cjs/Segments.js.map +1 -1
- package/dist/cjs/hooks.js +1 -1
- package/dist/cjs/index.js +9 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +2 -1
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/v2/Bar.js +661 -0
- package/dist/cjs/v2/Bar.js.map +1 -0
- package/dist/cjs/v2/Filters.js +336 -0
- package/dist/cjs/v2/Filters.js.map +1 -0
- package/dist/cjs/v2/Segments.js +520 -0
- package/dist/cjs/v2/Segments.js.map +1 -0
- package/dist/cjs/v2/index.js +58 -0
- package/dist/cjs/v2/index.js.map +1 -0
- package/dist/cjs/v2/utils.js +70 -0
- package/dist/cjs/v2/utils.js.map +1 -0
- package/dist/{constants-8DtAPJaA.js → constants-BaYBNRZa.js} +2 -2
- package/dist/{constants-8DtAPJaA.js.map → constants-BaYBNRZa.js.map} +1 -1
- package/dist/dayjs-9rsrbiYS.js +6 -0
- package/dist/dayjs-9rsrbiYS.js.map +1 -0
- package/dist/dayjs-DNGB9yJD.js +4 -0
- package/dist/dayjs-DNGB9yJD.js.map +1 -0
- package/dist/hooks.js +2 -2
- package/dist/{index-Bq32eLIG.js → index-BCnobjnZ.js} +5 -18
- package/dist/index-BCnobjnZ.js.map +1 -0
- package/dist/index-BD5y7_BW.js +969 -0
- package/dist/index-BD5y7_BW.js.map +1 -0
- package/dist/index-BxEtpFbP.js +301 -0
- package/dist/index-BxEtpFbP.js.map +1 -0
- package/dist/{index-CzUm_HaL.js → index-Bzw5oKqg.js} +48 -166
- package/dist/index-Bzw5oKqg.js.map +1 -0
- package/dist/index-C4AC0OfA.js +967 -0
- package/dist/index-C4AC0OfA.js.map +1 -0
- package/dist/{index-Rn6zFKPg.js → index-Cdvbpy-b.js} +30 -147
- package/dist/index-Cdvbpy-b.js.map +1 -0
- package/dist/index-CpgjbwJP.js +299 -0
- package/dist/index-CpgjbwJP.js.map +1 -0
- package/dist/{index-BYRIatjo.js → index-aOxl-IeV.js} +6 -38
- package/dist/index-aOxl-IeV.js.map +1 -0
- package/dist/index.js +10 -5
- package/dist/index.js.map +1 -1
- package/dist/inject-css-B6qYtOJe.js +6 -0
- package/dist/inject-css-B6qYtOJe.js.map +1 -0
- package/dist/inject-css-C2dztUxs.js +4 -0
- package/dist/inject-css-C2dztUxs.js.map +1 -0
- package/dist/keyboardShortcuts-DcgoM1dR.js +20 -0
- package/dist/keyboardShortcuts-DcgoM1dR.js.map +1 -0
- package/dist/keyboardShortcuts-oiJyIaFr.js +18 -0
- package/dist/keyboardShortcuts-oiJyIaFr.js.map +1 -0
- package/dist/{useSegmentsApi-wYy0UPCH.js → useSegmentsApi-C6mffm-a.js} +4 -4
- package/dist/{useSegmentsApi-wYy0UPCH.js.map → useSegmentsApi-C6mffm-a.js.map} +1 -1
- package/dist/{useSegmentsApi-CDE1HWEv.js → useSegmentsApi-DlvMy4A9.js} +2 -2
- package/dist/{useSegmentsApi-CDE1HWEv.js.map → useSegmentsApi-DlvMy4A9.js.map} +1 -1
- package/dist/utils-B3464cET.js +126 -0
- package/dist/utils-B3464cET.js.map +1 -0
- package/dist/utils-BUFBOQlR.js +802 -0
- package/dist/utils-BUFBOQlR.js.map +1 -0
- package/dist/utils-Cj2MY2tu.js +38 -0
- package/dist/utils-Cj2MY2tu.js.map +1 -0
- package/dist/utils-ClTYBS1C.js +865 -0
- package/dist/utils-ClTYBS1C.js.map +1 -0
- package/dist/utils-CwKBnC3c.js +17 -0
- package/dist/utils-CwKBnC3c.js.map +1 -0
- package/dist/{utils-BuCOQsNv.js → utils-CzRCzZ3I.js} +3 -4
- package/dist/utils-CzRCzZ3I.js.map +1 -0
- package/dist/utils-Dh5ByFPA.js +138 -0
- package/dist/utils-Dh5ByFPA.js.map +1 -0
- package/dist/{utils-CxVWpPGf.js → utils-Q-OTPVjq.js} +8 -9
- package/dist/utils-Q-OTPVjq.js.map +1 -0
- package/dist/utils.js +3 -2
- package/dist/utils.js.map +1 -1
- package/dist/v2/Bar.js +659 -0
- package/dist/v2/Bar.js.map +1 -0
- package/dist/v2/Filters.js +334 -0
- package/dist/v2/Filters.js.map +1 -0
- package/dist/v2/Segments.js +518 -0
- package/dist/v2/Segments.js.map +1 -0
- package/dist/v2/index.js +42 -0
- package/dist/v2/index.js.map +1 -0
- package/dist/v2/utils.js +12 -0
- package/dist/v2/utils.js.map +1 -0
- package/package.json +41 -28
- package/dist/index-BYRIatjo.js.map +0 -1
- package/dist/index-Bq32eLIG.js.map +0 -1
- package/dist/index-CzUm_HaL.js.map +0 -1
- package/dist/index-Rn6zFKPg.js.map +0 -1
- package/dist/utils-BuCOQsNv.js.map +0 -1
- package/dist/utils-CxVWpPGf.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-C4AC0OfA.js","sources":["../app/javascript/src/components/v2/Pane/Item/utils.js","../app/javascript/src/components/v2/Pane/Item/Boolean.jsx","../app/javascript/src/components/v2/Pane/Item/Datetime.jsx","../app/javascript/src/components/v2/Pane/Item/Dropdown.jsx","../app/javascript/src/components/v2/Pane/Item/SingleDatetime.jsx","../app/javascript/src/components/v2/Pane/Item/SingleTime.jsx","../app/javascript/src/components/v2/Pane/Item/Text.jsx","../app/javascript/src/components/v2/Pane/Item/Time.jsx","../app/javascript/src/components/v2/Pane/Item/TreeSelect.jsx","../app/javascript/src/components/v2/Pane/Item/index.jsx"],"sourcesContent":["import { findBy, isNotPresent, 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 {\n DATE_OPTIONS,\n DATE_RANGE_OPTIONS,\n TIME_OPTIONS,\n TIME_RANGE_OPTIONS,\n} from \"common/constants\";\nimport dayjs from \"common/dayjs\";\n\nimport { DEFAULT_HELP_ICON_PROPS } from \"./constants\";\n\nimport {\n isDateRange,\n isMulti,\n isNilOrEmpty,\n isTimeRange,\n isTreeSelect,\n} 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 if (isEmpty(options)) {\n if (isDateRange(defaultType)) {\n options = DATE_RANGE_OPTIONS;\n } else if (isTimeRange(defaultType)) {\n options = TIME_RANGE_OPTIONS;\n }\n }\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 (isNotPresent(times)) return false;\n\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 { Select } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter, isCheckbox } from \"components/utils\";\n\nimport { DEFAULT_BOOLEAN_OPTIONS, CHECKBOX_OPTIONS } from \"./constants\";\nimport { 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 = isNotPresent(values)\n ? isCheckbox(defaultType)\n ? CHECKBOX_OPTIONS\n : DEFAULT_BOOLEAN_OPTIONS\n : values;\n const otherProps = getOtherProps(column);\n const value = filter?.value ?? null;\n const { t } = useTranslation();\n\n const handleChange = selectedValue => {\n if (isEmpty(selectedValue) || isNil(selectedValue)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const option = findBy({ value: selectedValue }, options);\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-testid={`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 { DatePicker, Select } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\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(\n () => initializeDateRule(filter)?.value ?? null\n );\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 = selectedValue => {\n if (isEmpty(selectedValue) || isNil(selectedValue)) {\n handleApplyFilter({ _delete: true });\n setSelectedRule(null);\n\n return;\n }\n setSelectedRule(selectedValue);\n\n const option = findBy({ value: selectedValue }, DATE_OPTIONS);\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(null);\n\n return;\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {\n value: buildDateValues(dates, { value: selectedRule }).map(date =>\n date.toISOString()\n ),\n },\n });\n handleApplyFilter(updatedFilter);\n };\n\n useEffect(() => {\n isNil(filter) && setSelectedRule(null);\n }, [filter]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n <Select\n {...{ autoFocus, label }}\n isClearable\n data-testid={`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-testid={`neeto-filters-${hyphenate(key)}-date-range`}\n getPopupContainer={prop(\"parentNode\")}\n type={selectedRule === \"custom-date-range\" ? \"range\" : \"date\"}\n value={getDateValue(filter?.value, { 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 { Select } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { MULTI_DROPDOWN_RULES, SINGLE_DROPDOWN_RULES } from \"./constants\";\nimport {\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\n const value = isMulti(defaultType)\n ? (filter?.value ?? [])\n : (filter?.value ?? null);\n\n const [selectedRule, setSelectedRule] = useState(\n () =>\n (findBy({ value: filter?.rule }, dropdownRules) || dropdownRules[0]).value\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 if (isMulti(defaultType)) {\n return options.filter(o => value?.includes(o.value));\n }\n\n return findBy({ value }, options);\n };\n\n const handleRuleChange = ruleValue => {\n const isPreviousRuleEmpty = isRuleEmpty(selectedRule);\n const isNewRuleEmpty = isRuleEmpty(ruleValue);\n setSelectedRule(ruleValue);\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: ruleValue,\n option: getOption(isNewRuleEmpty, options, value),\n });\n\n handleApplyFilter(updatedFilter);\n };\n\n const handleChange = selectedValue => {\n if (isEmpty(selectedValue) || isNil(selectedValue)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const option = isMulti(defaultType)\n ? options.filter(o => selectedValue.includes(o.value))\n : findBy({ value: selectedValue }, options);\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option,\n rule: selectedRule,\n });\n\n handleApplyFilter(updatedFilter);\n };\n\n useEffect(() => {\n if (!isEmpty(filters)) return;\n isRuleEmpty(selectedRule) && setSelectedRule(dropdownRules[0].value);\n }, [filters]);\n\n return (\n <div className=\"neeto-filters-pane-filter__item-wrapper\">\n {showRuleSelector && (\n <Select\n {...{ label }}\n defaultValue={dropdownRules[0].value}\n options={dropdownRules}\n value={selectedRule}\n onChange={handleRuleChange}\n />\n )}\n {!isRuleEmpty(selectedRule) && (\n <Select\n {...{ autoFocus, options, value }}\n data-testid={`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 { DatePicker, Select } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\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 (\n findBy({ value: filter?.rule }, SINGLE_DATE_OPTIONS) ||\n SINGLE_DATE_OPTIONS[0]\n ).value\n );\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const datePickerType = selectedRule === \"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].value);\n }, [filters]);\n\n const handleRuleChange = ruleValue => {\n setSelectedRule(ruleValue);\n\n // Clear value if switched between incompatible types\n let updateValue = value;\n if (\n (datePickerType === \"range\" && ruleValue !== \"between\") ||\n (datePickerType === \"date\" && ruleValue === \"between\")\n ) {\n updateValue = \"\";\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleValue,\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,\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-testid={`neeto-filters-${hyphenate(key)}-filter-rule`}\n defaultValue={SINGLE_DATE_OPTIONS[0].value}\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-testid={`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 { Select, TimePicker } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\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 (\n findBy({ value: filter?.rule }, SINGLE_TIME_OPTIONS) ||\n SINGLE_TIME_OPTIONS[0]\n ).value\n );\n const { key, defaultType = column.type, label, helpIconProps = {} } = column;\n const otherProps = getOtherProps(column);\n const timePickerType = selectedRule === \"between\" ? \"range\" : \"time\";\n const value = filter?.value;\n\n useEffect(() => {\n if (!isEmpty(filters)) return;\n setSelectedRule(SINGLE_TIME_OPTIONS[0].value);\n }, [filters]);\n\n const handleRuleChange = ruleValue => {\n setSelectedRule(ruleValue);\n\n // Clear value if switched between incompatible types\n let updateValue = value;\n if (\n (timePickerType === \"range\" && ruleValue !== \"between\") ||\n (timePickerType === \"time\" && ruleValue === \"between\")\n ) {\n updateValue = \"\";\n }\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleValue,\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,\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].value}\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-testid={`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 { Input, Select } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\nimport { useDebounce } from \"neetocommons/react-utils\";\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]).value\n );\n const debouncedInputValue = useDebounce(inputValue);\n const { t } = useTranslation();\n\n const handleUpdateAndApplyFilter = (\n value = debouncedInputValue,\n ruleValue = selectedRule\n ) => {\n if (equals(filter?.value, value) && equals(selectedRule, ruleValue)) return;\n\n const updatedFilter = buildUpdatedFilter({\n column,\n defaultType,\n option: {},\n rule: ruleValue,\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 = ruleValue => {\n setSelectedRule(ruleValue);\n if (!debouncedInputValue) return;\n handleUpdateAndApplyFilter(debouncedInputValue, ruleValue);\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-testid={`neeto-filters-${hyphenate(key)}-filter-rule`}\n defaultValue={ruleOptions[0].value}\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-testid={`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 { Select, TimePicker } from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty } from \"neetocist\";\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 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 = filter?.value ?? null;\n const isCustomTimeRangeShown = filter && isCustomTimeRange(filter.value);\n\n const { t } = useTranslation();\n\n const handleChange = selectedValue => {\n if (isEmpty(selectedValue) || isNil(selectedValue)) {\n handleApplyFilter({ _delete: true });\n\n return;\n }\n\n const option = findBy({ value: selectedValue }, TIME_OPTIONS);\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-testid={`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-testid={`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 {\n Select,\n TreeSelect as NeetoUITreeSelect,\n} from \"@bigbinary/neeto-atoms\";\nimport { findBy, hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter } from \"components/utils\";\n\nimport { TREE_SELECT_RULES } from \"./constants\";\nimport { buildHelpIconProps, getOtherProps, isRuleEmpty } 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 ).value;\n const [selectedRule, setSelectedRule] = useState(initialRule);\n\n const { t } = useTranslation();\n\n const selectedOption = filter?.value ?? [];\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,\n });\n\n return handleApplyFilter(updatedFilter);\n };\n\n const handleRuleChange = ruleValue => {\n const isPreviousRuleEmpty = isRuleEmpty(selectedRule);\n const isNewRuleEmpty = isRuleEmpty(ruleValue);\n setSelectedRule(ruleValue);\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: ruleValue,\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].value}\n options={TREE_SELECT_RULES}\n value={selectedRule}\n onChange={handleRuleChange}\n />\n )}\n {!isRuleEmpty(selectedRule) && (\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-testid={`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 (\n <Boolean\n {...{ autoFocus, column, defaultType, filter, handleApplyFilter }}\n />\n );\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":["getOtherProps","props","omit","buildDropdownOptions","_ref3","defaultType","filter","_ref3$options","options","isEmpty","isDateRange","DATE_RANGE_OPTIONS","isTimeRange","TIME_RANGE_OPTIONS","map","modify","value","toString","isMulti","selectedOptions","findBy","toLabelAndValue","nonSelectedOptions","option","includes","concat","append","initializeDateRule","DATE_OPTIONS","findDateOption","getDateValue","rule","isNil","dayjs","add","subtract","isBeforeOrAfter","diff","not","last","currentMoment","diffWithStart","Math","abs","diffWithEnd","buildDateValues","dates","selectedRule","buildHelpIconProps","helpIconProps","mergeDeepRight","DEFAULT_HELP_ICON_PROPS","hasInvalidTimes","times","isNotPresent","Array","isArray","some","time","isValid","areCustomTimeRangeValuesNotValid","every","isRuleEmpty","equals","Boolean","_ref","_filter$value","column","handleApplyFilter","autoFocus","key","_column$defaultType","type","label","values","_column$helpIconProps","isCheckbox","CHECKBOX_OPTIONS","DEFAULT_BOOLEAN_OPTIONS","otherProps","_useTranslation","useTranslation","t","handleChange","selectedValue","_delete","updatedFilter","buildUpdatedFilter","_jsx","className","children","Select","_objectSpread","isClearable","isNotEmpty","labelProps","hyphenate","strategy","placeholder","resource","onChange","memo","Datetime","_useState","useState","_initializeDateRule$v","_initializeDateRule","_useState2","_slicedToArray","setSelectedRule","isDatePickerShown","isCustomDateRange","handleDateRangeChange","date","toISOString","useEffect","_jsxs","DatePicker","getPopupContainer","prop","Dropdown","_filter$value2","filters","defaultValue","_column$showRuleSelec","showRuleSelector","_column$isClearable","dropdownRules","MULTI_DROPDOWN_RULES","SINGLE_DROPDOWN_RULES","getOption","isSelectedRuleEmpty","o","handleRuleChange","ruleValue","isPreviousRuleEmpty","isNewRuleEmpty","SingleDatetime","SINGLE_DATE_OPTIONS","datePickerType","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","TIME_OPTIONS","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","isTreeSelect"],"mappings":";;;;;;;;;;;;;;;AAsDO,IAAMA,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAChCC,IAAI,CACF,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,CAAC,EACvED,KACF,CAAC;AAAA,CAAA;AAEI,IAAME,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,KAAA,EAA8C;AAAA,EAAA,IAAxCC,WAAW,GAAAD,KAAA,CAAXC,WAAW;IAAEC,MAAM,GAAAF,KAAA,CAANE,MAAM;IAAAC,aAAA,GAAAH,KAAA,CAAEI,OAAO;AAAPA,IAAAA,OAAO,GAAAD,aAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,aAAA;AACtE,EAAA,IAAIE,OAAO,CAACD,OAAO,CAAC,EAAE;AACpB,IAAA,IAAIE,WAAW,CAACL,WAAW,CAAC,EAAE;AAC5BG,MAAAA,OAAO,GAAGG,kBAAkB;AAC9B,IAAA,CAAC,MAAM,IAAIC,WAAW,CAACP,WAAW,CAAC,EAAE;AACnCG,MAAAA,OAAO,GAAGK,kBAAkB;AAC9B,IAAA;AACF,EAAA;EACAL,OAAO,GAAGA,OAAO,CAACM,GAAG,CAACC,MAAM,CAAC,OAAO,EAAE,UAAAC,KAAK,EAAA;IAAA,OAAIA,KAAK,aAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAEC,QAAQ,EAAE;AAAA,EAAA,CAAA,CAAC,CAAC;AAElE,EAAA,IAAI,CAACX,MAAM,EAAE,OAAOE,OAAO;AAE3B,EAAA,IAAIU,OAAO,CAACb,WAAW,CAAC,EAAE;IACxB,IAAMc,eAAe,GAAGb,MAAM,CAACU,KAAK,CAACF,GAAG,CACtC,UAAAE,KAAK,EAAA;AAAA,MAAA,OAAII,MAAM,CAAC;AAAEJ,QAAAA,KAAK,EAALA;AAAM,OAAC,EAAER,OAAO,CAAC,IAAIa,eAAe,CAACL,KAAK,CAAC;AAAA,IAAA,CAC/D,CAAC;AAED,IAAA,IAAMM,kBAAkB,GAAGd,OAAO,CAACF,MAAM,CACvC,UAAAiB,MAAM,EAAA;MAAA,OAAI,CAACjB,MAAM,CAACU,KAAK,CAACQ,QAAQ,CAACD,MAAM,CAACP,KAAK,CAAC;AAAA,IAAA,CAChD,CAAC;AAED,IAAA,OAAOS,MAAM,CAACN,eAAe,EAAEG,kBAAkB,CAAC;AACpD,EAAA;EAEA,IAAI,CAACF,MAAM,CAAC;IAAEJ,KAAK,EAAEV,MAAM,CAACU;GAAO,EAAER,OAAO,CAAC,EAAE;IAC7C,OAAOkB,MAAM,CAACL,eAAe,CAACf,MAAM,CAACU,KAAK,CAAC,EAAER,OAAO,CAAC;AACvD,EAAA;AAEA,EAAA,OAAOA,OAAO;AAChB,CAAC;AAEM,IAAMmB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGrB,MAAM,EAAA;EAAA,OACtCA,MAAM,GACFc,MAAM,CAAC;AAAEJ,IAAAA,KAAK,EAAEV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU;AAAM,GAAC,EAAEY,YAAY,CAAC,IAC9CC,cAAc,CAACvB,MAAM,EAAEsB,YAAY,CAAC,GACpC,EAAE;AAAA,CAAA;AAED,IAAME,YAAY,GAAG,SAAfA,YAAYA,CAAId,KAAK,EAAEe,IAAI,EAAK;EAC3C,IAAItB,OAAO,CAACO,KAAK,CAAC,IAAIgB,KAAK,CAAChB,KAAK,CAAC,EAAE;AAClC,IAAA,OAAO,IAAI;AACb,EAAA;AAEA,EAAA,IAAIe,IAAI,CAACf,KAAK,KAAK,mBAAmB,EAAE;AACtC,IAAA,OAAOA,KAAK;AACd,EAAA;AAEA,EAAA,OAAOe,IAAI,CAACf,KAAK,KAAK,QAAQ,GAC1BiB,KAAK,CAACjB,KAAK,CAAC,CAAC,CAAC,CAAC,CAACkB,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAC7BD,KAAK,CAACjB,KAAK,CAAC,CAAC,CAAC,CAAC,CAACmB,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC;AACxC,CAAC;AAEM,IAAMN,cAAc,GAAG,SAAjBA,cAAcA,CAAIvB,MAAM,EAAEE,OAAO,EAAK;AACjD,EAAA,IAAQQ,KAAK,GAAKV,MAAM,CAAhBU,KAAK;EACb,IAAMoB,eAAe,GAAGH,KAAK,CAACjB,KAAK,CAAC,CAAC,CAAC,CAAC,CAACqB,IAAI,CAACJ,KAAK,CAACjB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE;AAC3E,EAAA,IAAIsB,GAAG,CAACF,eAAe,CAAC,EAAE;IACxB,OAAOG,IAAI,CAAC/B,OAAO,CAAC;AACtB,EAAA;AACA,EAAA,IAAMgC,aAAa,GAAGP,KAAK,EAAE;EAE7B,IAAMQ,aAAa,GAAGC,IAAI,CAACC,GAAG,CAACH,aAAa,CAACH,IAAI,CAACJ,KAAK,CAACjB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;EAC3E,IAAM4B,WAAW,GAAGF,IAAI,CAACC,GAAG,CAACH,aAAa,CAACH,IAAI,CAACJ,KAAK,CAACjB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAEzE,EAAA,OAAOyB,aAAa,GAAGG,WAAW,GAC9BxB,MAAM,CAAC;AAAEJ,IAAAA,KAAK,EAAE;AAAQ,GAAC,EAAER,OAAO,CAAC,GACnCY,MAAM,CAAC;AAAEJ,IAAAA,KAAK,EAAE;GAAU,EAAER,OAAO,CAAC;AAC1C,CAAC;AAEM,IAAMqC,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAAK,EAAEC,YAAY,EAAK;AACtD,EAAA,IAAIA,YAAY,CAAC/B,KAAK,KAAK,OAAO,EAAE;AAClC,IAAA,OAAO,CAAC8B,KAAK,CAACZ,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAEY,KAAK,CAACZ,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACtD,EAAA,CAAC,MAAM,IAAIa,YAAY,CAAC/B,KAAK,KAAK,QAAQ,EAAE;AAC1C,IAAA,OAAO,CAAC8B,KAAK,CAACX,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,EAAEW,KAAK,CAACX,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAChE,EAAA;AAEA,EAAA,OAAOW,KAAK;AACd,CAAC;AAEM,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,aAAa,EAAA;AAAA,EAAA,OAC7CC,cAAc,CAACC,uBAAuB,EAAEF,aAAa,CAAC;AAAA,CAAA;AAEjD,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,KAAK,EAAI;AACtC,EAAA,IAAIC,YAAY,CAACD,KAAK,CAAC,EAAE,OAAO,KAAK;AAErC,EAAA,IAAIE,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;AACxB,IAAA,OAAOA,KAAK,CAACI,IAAI,CAAC,UAAAC,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACC,OAAO,EAAE;AAAA,IAAA,CAAA,CAAC,KAAK,KAAK;AACrD,EAAA;AAEA,EAAA,OAAO,CAACN,KAAK,CAACM,OAAO,EAAE;AACzB,CAAC;AAEM,IAAMC,gCAAgC,GAAG,SAAnCA,gCAAgCA,CAAGP,KAAK,EAAA;AAAA,EAAA,OACnD,CAACA,KAAK,CAACQ,KAAK,CAAC,UAAAH,IAAI,EAAA;AAAA,IAAA,OAAIA,IAAI,CAACC,OAAO,EAAE;EAAA,CAAA,CAAC;AAAA,CAAA;AAe/B,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAG/B,IAAI,EAAA;AAAA,EAAA,OAAIgC,MAAM,CAAChC,IAAI,EAAE,YAAY,CAAC;AAAA,CAAA;;;;ACxJ7D,IAAMiC,SAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAAyD;AAAA,EAAA,IAAAC,aAAA;AAAA,EAAA,IAAnDC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAE7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IAAE8D,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS;AAC7D,EAAA,IACEC,GAAG,GAKDH,MAAM,CALRG,GAAG;IAAAC,mBAAA,GAKDJ,MAAM,CAJR9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IACzBE,KAAK,GAGHN,MAAM,CAHRM,KAAK;IACLC,MAAM,GAEJP,MAAM,CAFRO,MAAM;IAAAC,qBAAA,GAEJR,MAAM,CADRlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAGpB,EAAA,IAAMnE,OAAO,GAAG8C,YAAY,CAACoB,MAAM,CAAC,GAChCE,UAAU,CAACvE,WAAW,CAAC,GACrBwE,gBAAgB,GAChBC,uBAAuB,GACzBJ,MAAM;AACV,EAAA,IAAMK,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;AACxC,EAAA,IAAMnD,KAAK,GAAA,CAAAkD,aAAA,GAAG5D,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,MAAA,IAAA,IAAAkD,aAAA,KAAA,MAAA,GAAAA,aAAA,GAAI,IAAI;AACnC,EAAA,IAAAc,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGC,aAAa,EAAI;IACpC,IAAI3E,OAAO,CAAC2E,aAAa,CAAC,IAAIpD,KAAK,CAACoD,aAAa,CAAC,EAAE;AAClDhB,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;IAEA,IAAM9D,MAAM,GAAGH,MAAM,CAAC;AAAEJ,MAAAA,KAAK,EAAEoE;KAAe,EAAE5E,OAAO,CAAC;IACxD,IAAM8E,aAAa,GAAGC,kBAAkB,CAAC;AAAEpB,MAAAA,MAAM,EAANA,MAAM;AAAE9D,MAAAA,WAAW,EAAXA,WAAW;AAAEkB,MAAAA,MAAM,EAANA;AAAO,KAAC,CAAC;IACzE6C,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,oBACEE,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,eACtDF,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCvB,MAAAA,SAAS,EAATA,SAAS;AAAEI,MAAAA,KAAK,EAALA,KAAK;AAAEjE,MAAAA,OAAO,EAAPA,OAAO;AAAEQ,MAAAA,KAAK,EAALA,KAAK;MACtC6E,WAAW,EAAA;AAAA,KAAA,EACNC,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACD,MAAA,aAAA,EAAA,gBAAA,CAAAxB,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtD2B,MAAAA,QAAQ,EAAC,OAAO;AAChBC,MAAAA,WAAW,EAAEhB,CAAC,CAAC,oCAAoC,EAAE;AACnDiB,QAAAA,QAAQ,EAAE1B;AACZ,OAAC,CAAE;AACH2B,MAAAA,QAAQ,EAAEjB;AAAa,KAAA,EACnBJ,UAAU,CACf;AAAC,GACC,CAAC;AAEV,CAAC;AAED,cAAA,aAAesB,IAAI,CAACrC,SAAO,CAAC;;;;AC5C5B,IAAMsC,UAAQ,GAAG,SAAXA,QAAQA,CAAArC,IAAA,EAAyD;AAAA,EAAA,IAAnDE,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAE7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IAAE8D,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS;EAC9D,IAAAkC,SAAA,GAAwCC,QAAQ,CAC9C,YAAA;MAAA,IAAAC,qBAAA,EAAAC,mBAAA;AAAA,MAAA,OAAA,CAAAD,qBAAA,GAAA,CAAAC,mBAAA,GAAM/E,kBAAkB,CAACrB,MAAM,CAAC,MAAA,IAAA,IAAAoG,mBAAA,KAAA,MAAA,GAAA,MAAA,GAA1BA,mBAAA,CAA4B1F,KAAK,MAAA,IAAA,IAAAyF,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,IAAI;AAAA,IAAA,CACjD,CAAC;IAAAE,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAFMxD,IAAAA,YAAY,GAAA4D,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAIpC,EAAA,IAAA3B,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAQZ,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/D9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7BlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;EACjE,IAAMmC,iBAAiB,GAAGxG,MAAM,IAAIyG,iBAAiB,CAACzG,MAAM,CAACU,KAAK,CAAC;AACnE,EAAA,IAAM+D,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;AAExC,EAAA,IAAMgB,YAAY,GAAG,SAAfA,YAAYA,CAAGC,aAAa,EAAI;IACpC,IAAI3E,OAAO,CAAC2E,aAAa,CAAC,IAAIpD,KAAK,CAACoD,aAAa,CAAC,EAAE;AAClDhB,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;MACpCwB,eAAe,CAAC,IAAI,CAAC;AAErB,MAAA;AACF,IAAA;IACAA,eAAe,CAACzB,aAAa,CAAC;IAE9B,IAAM7D,MAAM,GAAGH,MAAM,CAAC;AAAEJ,MAAAA,KAAK,EAAEoE;KAAe,EAAExD,YAAY,CAAC;IAC7D,IAAM0D,aAAa,GAAGC,kBAAkB,CAAC;AAAEpB,MAAAA,MAAM,EAANA,MAAM;AAAE9D,MAAAA,WAAW,EAAXA,WAAW;AAAEkB,MAAAA,MAAM,EAANA;AAAO,KAAC,CAAC;IACzE6C,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,IAAM0B,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGlE,KAAK,EAAI;IACrC,IAAIrC,OAAO,CAACqC,KAAK,CAAC,IAAId,KAAK,CAACc,KAAK,CAAC,EAAE;AAClCsB,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;MACpCwB,eAAe,CAAC,IAAI,CAAC;AAErB,MAAA;AACF,IAAA;IAEA,IAAMvB,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;AACXkB,MAAAA,MAAM,EAAE;AACNP,QAAAA,KAAK,EAAE6B,eAAe,CAACC,KAAK,EAAE;AAAE9B,UAAAA,KAAK,EAAE+B;AAAa,SAAC,CAAC,CAACjC,GAAG,CAAC,UAAAmG,IAAI,EAAA;AAAA,UAAA,OAC7DA,IAAI,CAACC,WAAW,EAAE;QAAA,CACpB;AACF;AACF,KAAC,CAAC;IACF9C,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED6B,EAAAA,SAAS,CAAC,YAAM;AACdnF,IAAAA,KAAK,CAAC1B,MAAM,CAAC,IAAIuG,eAAe,CAAC,IAAI,CAAC;AACxC,EAAA,CAAC,EAAE,CAACvG,MAAM,CAAC,CAAC;AAEZ,EAAA,oBACE8G,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCvB,MAAAA,SAAS,EAATA,SAAS;AAAEI,MAAAA,KAAK,EAALA,KAAK;MACtBoB,WAAW,EAAA,IAAA;AACX,MAAA,aAAA,EAAA,gBAAA,CAAApE,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtD9D,MAAAA,OAAO,EAAEoB,YAAa;AACtBqE,MAAAA,QAAQ,EAAC,OAAO;AAChBjF,MAAAA,KAAK,EAAE+B,YAAa;AACpBmD,MAAAA,WAAW,EAAEhB,CAAC,CAAC,sCAAsC,EAAE;AACrDiB,QAAAA,QAAQ,EAAE1B;OACX;AAAE,KAAA,EACEqB,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACDmD,MAAAA,QAAQ,EAAEjB;KAAa,CACxB,CAAC,EACD2B,iBAAiB,iBAChBtB,GAAA,CAAC6B,UAAU,EAAAzB,eAAA,CAAA;AACT,MAAA,aAAA,EAAA,gBAAA,CAAAnE,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,aAAA,CAAc;AAC1DgD,MAAAA,iBAAiB,EAAEC,IAAI,CAAC,YAAY,CAAE;AACtC/C,MAAAA,IAAI,EAAEzB,YAAY,KAAK,mBAAmB,GAAG,OAAO,GAAG,MAAO;MAC9D/B,KAAK,EAAEc,YAAY,CAACxB,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,EAAE;AAAEA,QAAAA,KAAK,EAAE+B;AAAa,OAAC,CAAE;AAC5DqD,MAAAA,QAAQ,EAAEY;KAAsB,EAC5BjC,UAAU,CACf,CACF;AAAA,GACE,CAAC;AAEV,CAAC;AAED,eAAA,aAAesB,IAAI,CAACC,UAAQ,CAAC;;;;ACjF7B,IAAMkB,UAAQ,GAAG,SAAXA,QAAQA,CAAAvD,IAAA,EAMR;EAAA,IAAAC,aAAA,EAAAuD,cAAA;AAAA,EAAA,IALJtD,MAAM,GAAAF,IAAA,CAANE,MAAM;IACN7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IACN8D,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACTqD,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;AAEP,EAAA,IACEpD,GAAG,GAQDH,MAAM,CARRG,GAAG;IACHG,KAAK,GAOHN,MAAM,CAPRM,KAAK;IACLC,MAAM,GAMJP,MAAM,CANRO,MAAM;IACNiD,YAAY,GAKVxD,MAAM,CALRwD,YAAY;IAAApD,mBAAA,GAKVJ,MAAM,CAJR9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAAqD,qBAAA,GAIvBzD,MAAM,CAHR0D,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAE,mBAAA,GAGtB3D,MAAM,CAFR0B,WAAW;AAAXA,IAAAA,WAAW,GAAAiC,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;IAAAnD,qBAAA,GAEhBR,MAAM,CADRlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEpB,EAAA,IAAMI,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;EACxC,IAAM3D,OAAO,GAAGL,oBAAoB,CAAC;AACnCE,IAAAA,WAAW,EAAXA,WAAW;AACXC,IAAAA,MAAM,EAANA,MAAM;AACNE,IAAAA,OAAO,EAAEkE;AACX,GAAC,CAAC;EAEF,IAAMqD,aAAa,GAAG7G,OAAO,CAACb,WAAW,CAAC,GACtC2H,oBAAoB,GACpBC,qBAAqB;AAEzB,EAAA,IAAMjH,KAAK,GAAGE,OAAO,CAACb,WAAW,CAAC,GAAA,CAAA6D,aAAA,GAC7B5D,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,MAAA,IAAA,IAAAkD,aAAA,KAAA,MAAA,GAAAA,aAAA,GAAI,EAAE,GAAA,CAAAuD,cAAA,GACnBnH,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,MAAA,IAAA,IAAAyG,cAAA,KAAA,MAAA,GAAAA,cAAA,GAAI,IAAK;EAE3B,IAAAlB,SAAA,GAAwCC,QAAQ,CAC9C,YAAA;MAAA,OACE,CAACpF,MAAM,CAAC;AAAEJ,QAAAA,KAAK,EAAEV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEyB;OAAM,EAAEgG,aAAa,CAAC,IAAIA,aAAa,CAAC,CAAC,CAAC,EAAE/G,KAAK;AAAA,IAAA,CAC9E,CAAC;IAAA2F,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAHMxD,IAAAA,YAAY,GAAA4D,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAIpC,EAAA,IAAA3B,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAMgD,SAAS,GAAG,SAAZA,SAASA,CAAIC,mBAAmB,EAAE3H,OAAO,EAAEQ,KAAK,EAAK;AACzD,IAAA,IAAImH,mBAAmB,EAAE;AACvB,MAAA,OAAOjH,OAAO,CAACb,WAAW,CAAC,GAAG,CAACG,OAAO,CAAC,CAAC,CAAC,CAAC,GAAGA,OAAO,CAAC,CAAC,CAAC;AACzD,IAAA;AAEA,IAAA,IAAIU,OAAO,CAACb,WAAW,CAAC,EAAE;AACxB,MAAA,OAAOG,OAAO,CAACF,MAAM,CAAC,UAAA8H,CAAC,EAAA;QAAA,OAAIpH,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAEQ,QAAQ,CAAC4G,CAAC,CAACpH,KAAK,CAAC;MAAA,CAAA,CAAC;AACtD,IAAA;AAEA,IAAA,OAAOI,MAAM,CAAC;AAAEJ,MAAAA,KAAK,EAALA;KAAO,EAAER,OAAO,CAAC;EACnC,CAAC;AAED,EAAA,IAAM6H,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,SAAS,EAAI;AACpC,IAAA,IAAMC,mBAAmB,GAAGzE,WAAW,CAACf,YAAY,CAAC;AACrD,IAAA,IAAMyF,cAAc,GAAG1E,WAAW,CAACwE,SAAS,CAAC;IAC7CzB,eAAe,CAACyB,SAAS,CAAC;AAE1B,IAAA,IACEC,mBAAmB,IAClB,CAACC,cAAc,IAAIlF,YAAY,CAAChD,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,CAAE,EAChD;AACAoD,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;IAEA,IAAMC,aAAa,GAAGC,oBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;AACX0B,MAAAA,IAAI,EAAEuG,SAAS;AACf/G,MAAAA,MAAM,EAAE2G,SAAS,CAACM,cAAc,EAAEhI,OAAO,EAAEQ,KAAK;AAClD,KAAC,CAAC;IAEFoD,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,IAAMH,YAAY,GAAG,SAAfA,YAAYA,CAAGC,aAAa,EAAI;IACpC,IAAI3E,OAAO,CAAC2E,aAAa,CAAC,IAAIpD,KAAK,CAACoD,aAAa,CAAC,EAAE;AAClDhB,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;AAEA,IAAA,IAAM9D,MAAM,GAAGL,OAAO,CAACb,WAAW,CAAC,GAC/BG,OAAO,CAACF,MAAM,CAAC,UAAA8H,CAAC,EAAA;AAAA,MAAA,OAAIhD,aAAa,CAAC5D,QAAQ,CAAC4G,CAAC,CAACpH,KAAK,CAAC;IAAA,CAAA,CAAC,GACpDI,MAAM,CAAC;AAAEJ,MAAAA,KAAK,EAAEoE;KAAe,EAAE5E,OAAO,CAAC;IAE7C,IAAM8E,aAAa,GAAGC,oBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;AACXkB,MAAAA,MAAM,EAANA,MAAM;AACNQ,MAAAA,IAAI,EAAEgB;AACR,KAAC,CAAC;IAEFqB,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED6B,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC1G,OAAO,CAACiH,OAAO,CAAC,EAAE;AACvB5D,IAAAA,WAAW,CAACf,YAAY,CAAC,IAAI8D,eAAe,CAACkB,aAAa,CAAC,CAAC,CAAC,CAAC/G,KAAK,CAAC;AACtE,EAAA,CAAC,EAAE,CAAC0G,OAAO,CAAC,CAAC;AAEb,EAAA,oBACEN,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,EAAA,CACrDmC,gBAAgB,iBACfrC,GAAA,CAACG,MAAM,EAAA;AACClB,MAAAA,KAAK,EAALA,KAAK;AACXkD,MAAAA,YAAY,EAAEI,aAAa,CAAC,CAAC,CAAC,CAAC/G,KAAM;AACrCR,MAAAA,OAAO,EAAEuH,aAAc;AACvB/G,MAAAA,KAAK,EAAE+B,YAAa;AACpBqD,MAAAA,QAAQ,EAAEiC;AAAiB,KAC5B,CACF,EACA,CAACvE,WAAW,CAACf,YAAY,CAAC,iBACzByC,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCvB,MAAAA,SAAS,EAATA,SAAS;AAAE7D,MAAAA,OAAO,EAAPA,OAAO;AAAEQ,MAAAA,KAAK,EAALA,KAAK;AAC/B,MAAA,aAAA,EAAA,gBAAA,CAAAS,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtDuB,MAAAA,WAAW,EAAE,CAAC8B,YAAY,IAAI9B,WAAY;AAC1C3E,MAAAA,OAAO,EAAEA,OAAO,CAACb,WAAW,CAAE;AAC9BoE,MAAAA,KAAK,EAAE,CAACoD,gBAAgB,IAAIpD,KAAM;AAClCwB,MAAAA,QAAQ,EAAC,OAAO;AAChBC,MAAAA,WAAW,EAAEhB,CAAC,CAAC,sCAAsC,EAAE;AACrDiB,QAAAA,QAAQ,EAAE1B;OACX;AAAE,KAAA,EACEqB,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACDmD,MAAAA,QAAQ,EAAEjB;KAAa,EACnBJ,UAAU,CACf,CACF;AAAA,GACE,CAAC;AAEV,CAAC;AAED,eAAA,aAAesB,IAAI,CAACmB,UAAQ,CAAC;;;;AC3I7B,IAAMiB,cAAc,GAAG,SAAjBA,cAAcA,CAAAxE,IAAA,EAMd;AAAA,EAAA,IALJE,MAAM,GAAAF,IAAA,CAANE,MAAM;IACN7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IACNoH,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;IACPtD,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,SAAS,GAAAJ,IAAA,CAATI,SAAS;EAET,IAAAkC,SAAA,GAAwCC,QAAQ,CAC9C,YAAA;MAAA,OACE,CACEpF,MAAM,CAAC;AAAEJ,QAAAA,KAAK,EAAEV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEyB;OAAM,EAAE2G,mBAAmB,CAAC,IACpDA,mBAAmB,CAAC,CAAC,CAAC,EACtB1H,KAAK;AAAA,IAAA,CACX,CAAC;IAAA2F,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AANMxD,IAAAA,YAAY,GAAA4D,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAOpC,EAAA,IAAQrC,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/D9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7BlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AACjE,EAAA,IAAMI,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;EACxC,IAAMwE,cAAc,GAAG5F,YAAY,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM;EACpE,IAAM/B,KAAK,GAAGV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK;;AAE3B;AACAmG,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC1G,OAAO,CAACiH,OAAO,CAAC,EAAE;AACvBb,IAAAA,eAAe,CAAC6B,mBAAmB,CAAC,CAAC,CAAC,CAAC1H,KAAK,CAAC;AAC/C,EAAA,CAAC,EAAE,CAAC0G,OAAO,CAAC,CAAC;AAEb,EAAA,IAAMW,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,SAAS,EAAI;IACpCzB,eAAe,CAACyB,SAAS,CAAC;;AAE1B;IACA,IAAIM,WAAW,GAAG5H,KAAK;AACvB,IAAA,IACG2H,cAAc,KAAK,OAAO,IAAIL,SAAS,KAAK,SAAS,IACrDK,cAAc,KAAK,MAAM,IAAIL,SAAS,KAAK,SAAU,EACtD;AACAM,MAAAA,WAAW,GAAG,EAAE;AAClB,IAAA;IAEA,IAAMtD,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;MACXkB,MAAM,EAAE,EAAE;AACVQ,MAAAA,IAAI,EAAEuG,SAAS;AACftH,MAAAA,KAAK,EAAE4H;AACT,KAAC,CAAC;IACFxE,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,IAAMH,YAAY,GAAG,SAAfA,YAAYA,CAAGrC,KAAK,EAAI;IAC5B,IAAIrC,OAAO,CAACqC,KAAK,CAAC,IAAId,KAAK,CAACc,KAAK,CAAC,EAAE;AAClCsB,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;IAEA,IAAMrE,KAAK,GACT2H,cAAc,KAAK,OAAO,GACtB7F,KAAK,CAAChC,GAAG,CAAC,UAAAmG,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACC,WAAW,EAAE;AAAA,IAAA,CAAA,CAAC,GACrCpE,KAAK;IAEX,IAAMwC,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;MACXkB,MAAM,EAAE,EAAE;AACVQ,MAAAA,IAAI,EAAEgB,YAAY;AAClB/B,MAAAA,KAAK,EAALA;AACF,KAAC,CAAC;IACFoD,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,oBACE8B,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCnB,MAAAA,KAAK,EAALA,KAAK;AACX,MAAA,aAAA,EAAA,gBAAA,CAAAhD,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,cAAA,CAAe;AAC3DqD,MAAAA,YAAY,EAAEe,mBAAmB,CAAC,CAAC,CAAC,CAAC1H,KAAM;AAC3CR,MAAAA,OAAO,EAAEkI,mBAAoB;AAC7BzC,MAAAA,QAAQ,EAAC,OAAO;AAChBjF,MAAAA,KAAK,EAAE+B;AAAa,KAAA,EACf+C,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACDmD,MAAAA,QAAQ,EAAEiC;AAAiB,KAAA,CAC5B,CAAC,eACF7C,GAAA,CAAC6B,UAAU,EAAAzB,eAAA,CAAA;AACHvB,MAAAA,SAAS,EAATA,SAAS;AAAErD,MAAAA,KAAK,EAALA,KAAK;AACtB,MAAA,aAAA,EAAA,gBAAA,CAAAS,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtDgD,MAAAA,iBAAiB,EAAEC,IAAI,CAAC,YAAY,CAAE;AACtC/C,MAAAA,IAAI,EAAEmE,cAAe;AACrBvC,MAAAA,QAAQ,EAAEjB;KAAa,EACnBJ,UAAU,CACf,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;;;ACzFD,IAAM8D,UAAU,GAAG,SAAbA,UAAUA,CAAA5E,IAAA,EAMV;AAAA,EAAA,IALJE,MAAM,GAAAF,IAAA,CAANE,MAAM;IACN7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IACNoH,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;IACPtD,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,SAAS,GAAAJ,IAAA,CAATI,SAAS;EAET,IAAAkC,SAAA,GAAwCC,QAAQ,CAC9C,YAAA;MAAA,OACE,CACEpF,MAAM,CAAC;AAAEJ,QAAAA,KAAK,EAAEV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEyB;OAAM,EAAE+G,mBAAmB,CAAC,IACpDA,mBAAmB,CAAC,CAAC,CAAC,EACtB9H,KAAK;AAAA,IAAA,CACX,CAAC;IAAA2F,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AANMxD,IAAAA,YAAY,GAAA4D,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAOpC,EAAA,IAAQrC,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/D9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7BlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AACjE,EAAA,IAAMI,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;EACxC,IAAM4E,cAAc,GAAGhG,YAAY,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM;EACpE,IAAM/B,KAAK,GAAGV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK;AAE3BmG,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC1G,OAAO,CAACiH,OAAO,CAAC,EAAE;AACvBb,IAAAA,eAAe,CAACiC,mBAAmB,CAAC,CAAC,CAAC,CAAC9H,KAAK,CAAC;AAC/C,EAAA,CAAC,EAAE,CAAC0G,OAAO,CAAC,CAAC;AAEb,EAAA,IAAMW,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,SAAS,EAAI;IACpCzB,eAAe,CAACyB,SAAS,CAAC;;AAE1B;IACA,IAAIM,WAAW,GAAG5H,KAAK;AACvB,IAAA,IACG+H,cAAc,KAAK,OAAO,IAAIT,SAAS,KAAK,SAAS,IACrDS,cAAc,KAAK,MAAM,IAAIT,SAAS,KAAK,SAAU,EACtD;AACAM,MAAAA,WAAW,GAAG,EAAE;AAClB,IAAA;IAEA,IAAMtD,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;MACXkB,MAAM,EAAE,EAAE;AACVQ,MAAAA,IAAI,EAAEuG,SAAS;AACftH,MAAAA,KAAK,EAAE4H;AACT,KAAC,CAAC;IACFxE,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,IAAMH,YAAY,GAAG,SAAfA,YAAYA,CAAG9B,KAAK,EAAI;AAC5B,IAAA,IAAID,eAAe,CAACC,KAAK,CAAC,EAAE;AAC1Be,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;IAEA,IAAI0D,cAAc,KAAK,OAAO,IAAInF,gCAAgC,CAACP,KAAK,CAAC,EAAE;AACzE,MAAA;AACF,IAAA;AAEA,IAAA,IAAMrC,KAAK,GACT+H,cAAc,KAAK,OAAO,GACtB1F,KAAK,KAAA,IAAA,IAALA,KAAK,uBAALA,KAAK,CAAEvC,GAAG,CAAC,UAAA4C,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACwD,WAAW,EAAE;IAAA,CAAA,CAAC,GACtC7D,KAAK,KAAA,IAAA,IAALA,KAAK,uBAALA,KAAK,CAAE6D,WAAW,EAAE;IAE1B,IAAM5B,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;MACXkB,MAAM,EAAE,EAAE;AACVQ,MAAAA,IAAI,EAAEgB,YAAY;AAClB/B,MAAAA,KAAK,EAALA;AACF,KAAC,CAAC;IACFoD,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,oBACE8B,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCnB,MAAAA,KAAK,EAALA,KAAK;AACXkD,MAAAA,YAAY,EAAEmB,mBAAmB,CAAC,CAAC,CAAC,CAAC9H,KAAM;AAC3CR,MAAAA,OAAO,EAAEsI,mBAAoB;AAC7B7C,MAAAA,QAAQ,EAAC,OAAO;AAChBjF,MAAAA,KAAK,EAAE+B;AAAa,KAAA,EACf+C,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACDmD,MAAAA,QAAQ,EAAEiC;AAAiB,KAAA,CAC5B,CAAC,eACF7C,GAAA,CAACwD,UAAU,EAAApD,eAAA,CAAA;AACHvB,MAAAA,SAAS,EAATA,SAAS;AAAErD,MAAAA,KAAK,EAALA,KAAK;AACtByE,MAAAA,SAAS,EAAC,QAAQ;AAClB,MAAA,aAAA,EAAA,gBAAA,CAAAhE,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtD2E,MAAAA,MAAM,EAAEC,WAAY;AACpB1E,MAAAA,IAAI,EAAEuE,cAAe;AACrB3C,MAAAA,QAAQ,EAAEjB;KAAa,EACnBJ,UAAU,CACf,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;;;AChGD,IAAMoE,IAAI,GAAG,SAAPA,IAAIA,CAAAlF,IAAA,EAOJ;AAAA,EAAA,IANJE,MAAM,GAAAF,IAAA,CAANE,MAAM;IACN7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IACNoH,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;IACPtD,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACT+E,OAAO,GAAAnF,IAAA,CAAPmF,OAAO;AAEP,EAAA,IACE9E,GAAG,GAKDH,MAAM,CALRG,GAAG;IAAAC,mBAAA,GAKDJ,MAAM,CAJR9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IACzBE,KAAK,GAGHN,MAAM,CAHRM,KAAK;IAAAmD,qBAAA,GAGHzD,MAAM,CAFR0D,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAjD,qBAAA,GAEtBR,MAAM,CADRlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEpB,EAAA,IAAMI,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;EACxC,IAAMkF,WAAW,GAAGC,gBAAgB,CAAC;AAAEjJ,IAAAA,WAAW,EAAXA;AAAY,GAAC,CAAC;AACrD,EAAA,IAAMkJ,SAAS,GACblJ,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,aAAa,GAAG,MAAM,GAAG,QAAQ;EAE7E,IAAAkG,SAAA,GAAoCC,QAAQ,CAAClG,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,CAAC;IAAA2F,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAApDiD,IAAAA,UAAU,GAAA7C,UAAA,CAAA,CAAA,CAAA;AAAE8C,IAAAA,aAAa,GAAA9C,UAAA,CAAA,CAAA,CAAA;EAChC,IAAA+C,UAAA,GAAwClD,QAAQ,CAC9C,YAAA;MAAA,OAAM,CAACpF,MAAM,CAAC;AAAEJ,QAAAA,KAAK,EAAEV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEyB;OAAM,EAAEsH,WAAW,CAAC,IAAIA,WAAW,CAAC,CAAC,CAAC,EAAErI,KAAK;AAAA,IAAA,CAC9E,CAAC;IAAA2I,UAAA,GAAA/C,cAAA,CAAA8C,UAAA,EAAA,CAAA,CAAA;AAFM3G,IAAAA,YAAY,GAAA4G,UAAA,CAAA,CAAA,CAAA;AAAE9C,IAAAA,eAAe,GAAA8C,UAAA,CAAA,CAAA,CAAA;AAGpC,EAAA,IAAMC,mBAAmB,GAAGC,WAAW,CAACL,UAAU,CAAC;AACnD,EAAA,IAAAxE,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAM4E,0BAA0B,GAAG,SAA7BA,0BAA0BA,GAG3B;AAAA,IAAA,IAFH9I,KAAK,GAAA+I,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAGH,mBAAmB;AAAA,IAAA,IAC3BtB,SAAS,GAAAyB,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAGhH,YAAY;AAExB,IAAA,IAAIgB,MAAM,CAACzD,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,EAAEA,KAAK,CAAC,IAAI+C,MAAM,CAAChB,YAAY,EAAEuF,SAAS,CAAC,EAAE;IAErE,IAAMhD,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;MACXkB,MAAM,EAAE,EAAE;AACVQ,MAAAA,IAAI,EAAEuG,SAAS;AACftH,MAAAA,KAAK,EAAEA,KAAK,CAACkJ,IAAI;AACnB,KAAC,CAAC;IACF9F,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,IAAM6E,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,CAAC,EAAI;AACzB,IAAA,IAAI,EAAEA,CAAC,CAAC9F,GAAG,KAAK,OAAO,CAAC,EAAE;IAC1BwF,0BAA0B,CAACN,UAAU,CAAC;AACtCJ,IAAAA,OAAO,EAAE;EACX,CAAC;AAED,EAAA,IAAMf,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,SAAS,EAAI;IACpCzB,eAAe,CAACyB,SAAS,CAAC;IAC1B,IAAI,CAACsB,mBAAmB,EAAE;AAC1BE,IAAAA,0BAA0B,CAACF,mBAAmB,EAAEtB,SAAS,CAAC;EAC5D,CAAC;;AAED;AACAnB,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,CAAC1G,OAAO,CAACiH,OAAO,CAAC,IAAI1F,KAAK,CAAC1B,MAAM,CAAC,KAAKmJ,aAAa,CAAC,EAAE,CAAC;AAC1D,EAAA,CAAC,EAAE,CAACnJ,MAAM,CAAC,CAAC;AAEZ6G,EAAAA,SAAS,CAAC,YAAM;IACd,IAAI,CAACyC,mBAAmB,EAAE;AACxB,MAAA,CAACS,kBAAkB,CAAC/J,MAAM,CAAC,IAAI8D,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEnE,MAAA;AACF,IAAA;AAEAyE,IAAAA,0BAA0B,EAAE;AAC9B,EAAA,CAAC,EAAE,CAACF,mBAAmB,CAAC,CAAC;AAEzB,EAAA,oBACExC,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,GACrDmC,gBAAgB,iBACfrC,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAA;AACCnB,MAAAA,KAAK,EAALA,KAAK;AACX,MAAA,aAAA,EAAA,gBAAA,CAAAhD,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,cAAA,CAAe;AAC3DqD,MAAAA,YAAY,EAAE0B,WAAW,CAAC,CAAC,CAAC,CAACrI,KAAM;AACnCR,MAAAA,OAAO,EAAE6I,WAAY;AACrBpD,MAAAA,QAAQ,EAAC,OAAO;AAChBjF,MAAAA,KAAK,EAAE+B,YAAa;AACpBqD,MAAAA,QAAQ,EAAEiC;AAAiB,KAAA,EACtBvC,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CACF,CACF,eACDuC,GAAA,CAAC8E,KAAK,EAAA1E,eAAA,CAAAA,eAAA,CAAA;AACEvB,MAAAA,SAAS,EAATA,SAAS;AACf,MAAA,aAAA,EAAA,gBAAA,CAAA5C,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtDG,MAAAA,KAAK,EAAE,CAACoD,gBAAgB,IAAIpD,KAAM;AAClCD,MAAAA,IAAI,EAAE+E,SAAU;AAChBvI,MAAAA,KAAK,EAAEwI;AAAW,KAAA,EACb1D,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACDiD,MAAAA,WAAW,EAAEhB,CAAC,CAAC,qCAAqC,EAAE;AACpDiB,QAAAA,QAAQ,EAAE1B;AACZ,OAAC,CAAE;AACH2B,MAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEmE,KAAK,EAAA;AAAA,QAAA,OAAId,aAAa,CAACc,KAAK,CAACC,MAAM,CAACxJ,KAAK,CAAC;MAAA,CAAC;AACrDyJ,MAAAA,SAAS,EAAEN;KAAc,EACrBpF,UAAU,CACf,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;;;ACrGD,IAAM2F,MAAI,GAAG,SAAPA,IAAIA,CAAAzG,IAAA,EAAyD;AAAA,EAAA,IAAAC,aAAA;AAAA,EAAA,IAAnDC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAE7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IAAE8D,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS;AAC1D,EAAA,IAAQC,GAAG,GAA2DH,MAAM,CAApEG,GAAG;IAAAC,mBAAA,GAA2DJ,MAAM,CAA/D9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IAAEE,KAAK,GAAyBN,MAAM,CAApCM,KAAK;IAAAE,qBAAA,GAAyBR,MAAM,CAA7BlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AACjE,EAAA,IAAMI,UAAU,GAAG/E,aAAa,CAACmE,MAAM,CAAC;AACxC,EAAA,IAAMnD,KAAK,GAAA,CAAAkD,aAAA,GAAG5D,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,MAAA,IAAA,IAAAkD,aAAA,KAAA,MAAA,GAAAA,aAAA,GAAI,IAAI;EACnC,IAAMyG,sBAAsB,GAAGrK,MAAM,IAAIsK,iBAAiB,CAACtK,MAAM,CAACU,KAAK,CAAC;AAExE,EAAA,IAAAgE,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAGC,aAAa,EAAI;IACpC,IAAI3E,OAAO,CAAC2E,aAAa,CAAC,IAAIpD,KAAK,CAACoD,aAAa,CAAC,EAAE;AAClDhB,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;IAEA,IAAM9D,MAAM,GAAGH,MAAM,CAAC;AAAEJ,MAAAA,KAAK,EAAEoE;KAAe,EAAEyF,YAAY,CAAC;IAC7D,IAAMvF,aAAa,GAAGC,kBAAkB,CAAC;AAAEpB,MAAAA,MAAM,EAANA,MAAM;AAAE9D,MAAAA,WAAW,EAAXA,WAAW;AAAEkB,MAAAA,MAAM,EAANA;AAAO,KAAC,CAAC;IACzE6C,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,IAAMwF,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGzH,KAAK,EAAI;AACrC,IAAA,IAAID,eAAe,CAACC,KAAK,CAAC,EAAE;AAC1Be,MAAAA,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAEpC,MAAA;AACF,IAAA;AAEA,IAAA,IAAIsF,sBAAsB,IAAI/G,gCAAgC,CAACP,KAAK,CAAC,EAAE;AACrE,MAAA;AACF,IAAA;IAEA,IAAMiC,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;AACXkB,MAAAA,MAAM,EAAE;AAAEP,QAAAA,KAAK,EAAEqC,KAAK,CAACvC,GAAG,CAAC,UAAA4C,IAAI,EAAA;AAAA,UAAA,OAAIA,IAAI,CAACwD,WAAW,EAAE;AAAA,QAAA,CAAA;AAAE;AACzD,KAAC,CAAC;IACF9C,iBAAiB,CAACkB,aAAa,CAAC;EAClC,CAAC;AAED,EAAA,oBACE8B,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,gBACtDF,GAAA,CAACG,MAAM,EAAAC,eAAA,CAAAA,eAAA,CAAA;AACCvB,MAAAA,SAAS,EAATA,SAAS;AAAEI,MAAAA,KAAK,EAALA,KAAK;AAAEzD,MAAAA,KAAK,EAALA,KAAK;MAC7B6E,WAAW,EAAA,IAAA;AACX,MAAA,aAAA,EAAA,gBAAA,CAAApE,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtD9D,MAAAA,OAAO,EAAEqK,YAAa;AACtB5E,MAAAA,QAAQ,EAAC,OAAO;AAChBC,MAAAA,WAAW,EAAEhB,CAAC,CAAC,sCAAsC,EAAE;AACrDiB,QAAAA,QAAQ,EAAE1B;OACX;AAAE,KAAA,EACEqB,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;KAChE,CAAA,EAAA,EAAA,EAAA;AACDmD,MAAAA,QAAQ,EAAEjB;KAAa,CACxB,CAAC,EACDwF,sBAAsB,iBACrBnF,GAAA,CAACwD,UAAU,EAAApD,eAAA,CAAA;AACTH,MAAAA,SAAS,EAAC,QAAQ;AAClB,MAAA,aAAA,EAAA,gBAAA,CAAAhE,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,aAAA,CAAc;AAC1D2E,MAAAA,MAAM,EAAEC,WAAY;AACpB1E,MAAAA,IAAI,EAAC,OAAO;MACZxD,KAAK,EAAEV,MAAM,CAACU,KAAM;AACpBoF,MAAAA,QAAQ,EAAE0E;KAAsB,EAC5B/F,UAAU,CACf,CACF;AAAA,GACE,CAAC;AAEV,CAAC;AAED,WAAA,aAAesB,IAAI,CAACqE,MAAI,CAAC;;;;AC1EzB,IAAMK,YAAU,GAAG,SAAbA,UAAUA,CAAA9G,IAAA,EAAyD;EAAA,IAAA+G,OAAA,EAAA9G,aAAA;AAAA,EAAA,IAAnDG,SAAS,GAAAJ,IAAA,CAATI,SAAS;IAAEF,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAE7D,MAAM,GAAA2D,IAAA,CAAN3D,MAAM;IAAE8D,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;AAChE,EAAA,IACEE,GAAG,GAQDH,MAAM,CARRG,GAAG;IACHG,KAAK,GAOHN,MAAM,CAPRM,KAAK;IAAAF,mBAAA,GAOHJ,MAAM,CANR9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;IACzBoD,YAAY,GAKVxD,MAAM,CALRwD,YAAY;IAAAhD,qBAAA,GAKVR,MAAM,CAJRlB,aAAa;AAAbA,IAAAA,aAAa,GAAA0B,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAmD,mBAAA,GAIhB3D,MAAM,CAHR0B,WAAW;AAAXA,IAAAA,WAAW,GAAAiC,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;IAAAF,qBAAA,GAGhBzD,MAAM,CAFR0D,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAChBpH,OAAO,GACb2D,MAAM,CADRO,MAAM;AAGR,EAAA,IAAMuG,WAAW,GAAG,CAAA,CAAAD,OAAA,GAClB5J,MAAM,CAAC;AAAEJ,IAAAA,KAAK,EAAEV,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEyB;AAAK,GAAC,EAAEmJ,iBAAiB,CAAC,MAAA,IAAA,IAAAF,OAAA,KAAA,MAAA,GAAAA,OAAA,GAAIE,iBAAiB,CAAC,CAAC,CAAC,EAC1ElK,KAAK;AACP,EAAA,IAAAuF,SAAA,GAAwCC,QAAQ,CAACyE,WAAW,CAAC;IAAAtE,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAAtDxD,IAAAA,YAAY,GAAA4D,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAA3B,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMiG,cAAc,GAAA,CAAAjH,aAAA,GAAG5D,MAAM,aAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,MAAA,IAAA,IAAAkD,aAAA,KAAA,MAAA,GAAAA,aAAA,GAAI,EAAE;AAE1C,EAAA,IAAMiB,YAAY,GAAG,SAAfA,YAAYA,CAAG5D,MAAM,EAAI;AAC7B,IAAA,IAAI+B,YAAY,CAAC/B,MAAM,CAAC,EAAE,OAAO6C,iBAAiB,CAAC;AAAEiB,MAAAA,OAAO,EAAE;AAAK,KAAC,CAAC;IAErE,IAAMC,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;AACXkB,MAAAA,MAAM,EAANA,MAAM;AACNQ,MAAAA,IAAI,EAAEgB;AACR,KAAC,CAAC;IAEF,OAAOqB,iBAAiB,CAACkB,aAAa,CAAC;EACzC,CAAC;AAED,EAAA,IAAM+C,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,SAAS,EAAI;AACpC,IAAA,IAAMC,mBAAmB,GAAGzE,WAAW,CAACf,YAAY,CAAC;AACrD,IAAA,IAAMyF,cAAc,GAAG1E,WAAW,CAACwE,SAAS,CAAC;IAC7CzB,eAAe,CAACyB,SAAS,CAAC;AAE1B,IAAA,IACEC,mBAAmB,IAClB,CAACC,cAAc,IAAIlF,YAAY,CAAChD,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,MAAA,GAAA,MAAA,GAANA,MAAM,CAAEU,KAAK,CAAE,EAChD;AACA,MAAA,OAAOoD,iBAAiB,CAAC;AAAEiB,QAAAA,OAAO,EAAE;AAAK,OAAC,CAAC;AAC7C,IAAA;IAEA,IAAMC,aAAa,GAAGC,kBAAkB,CAAC;AACvCpB,MAAAA,MAAM,EAANA,MAAM;AACN9D,MAAAA,WAAW,EAAXA,WAAW;MACXkB,MAAM,EAAEiH,cAAc,GAAG,CAAChI,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG2K,cAAc;AACtDpJ,MAAAA,IAAI,EAAEuG;AACR,KAAC,CAAC;IAEF,OAAOlE,iBAAiB,CAACkB,aAAa,CAAC;EACzC,CAAC;AAED,EAAA,oBACE8B,IAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAC,yCAAyC;AAAAC,IAAAA,QAAA,EAAA,CACrDmC,gBAAgB,iBACfrC,GAAA,CAACG,MAAM,EAAA;AACClB,MAAAA,KAAK,EAALA,KAAK;AACXkD,MAAAA,YAAY,EAAEuD,iBAAiB,CAAC,CAAC,CAAC,CAAClK,KAAM;AACzCR,MAAAA,OAAO,EAAE0K,iBAAkB;AAC3BlK,MAAAA,KAAK,EAAE+B,YAAa;AACpBqD,MAAAA,QAAQ,EAAEiC;AAAiB,KAC5B,CACF,EACA,CAACvE,WAAW,CAACf,YAAY,CAAC;AAAA;AACzB;AACAyC,IAAAA,GAAA,CAAC4F,YAAiB,EAAAxF,aAAA,CAAAA,aAAA,CAAA;AACVvB,MAAAA,SAAS,EAATA,SAAS;MACfgH,QAAQ,EAAA,IAAA;MACRC,UAAU,EAAA,IAAA;MACVC,kBAAkB,EAAA,IAAA;AAClBC,MAAAA,UAAU,EAAE,CAAC7D,YAAY,IAAI9B,WAAY;AACzC,MAAA,aAAA,EAAA,gBAAA,CAAApE,MAAA,CAA8BuE,SAAS,CAAC1B,GAAG,CAAC,EAAA,SAAA,CAAU;AACtDG,MAAAA,KAAK,EAAE,CAACoD,gBAAgB,IAAIpD,KAAM;AAClCgH,MAAAA,QAAQ,EAAEjL,OAAQ;AAClBQ,MAAAA,KAAK,EAAEmK,cAAe;AACtBjF,MAAAA,WAAW,EAAEhB,CAAC,CAAC,sCAAsC,EAAE;AACrDiB,QAAAA,QAAQ,EAAE1B;AACZ,OAAC,CAAE;AACH2B,MAAAA,QAAQ,EAAEjB;AAAa,KAAA,EAClBW,UAAU,CAAC7C,aAAa,CAAC,IAAI;AAChC8C,MAAAA,UAAU,EAAE;QAAE9C,aAAa,EAAED,kBAAkB,CAACC,aAAa;AAAE;AACjE,KAAC,GACGjD,aAAa,CAACmE,MAAM,CAAC,CAC1B,CACF;AAAA,GACE,CAAC;AAEV,CAAC;AAED,iBAAA,aAAekC,IAAI,CAAC0E,YAAU,CAAC;;ACnF/B,IAAMW,IAAI,GAAG,SAAPA,IAAIA,CAAAzH,IAAA,EAAiE;AAAA,EAAA,IAA3DE,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEuD,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;IAAEtB,QAAQ,GAAAnC,IAAA,CAARmC,QAAQ;IAAE/B,SAAS,GAAAJ,IAAA,CAATI,SAAS;IAAAsH,YAAA,GAAA1H,IAAA,CAAEmF,OAAO;AAAPA,IAAAA,OAAO,GAAAuC,YAAA,KAAA,MAAA,GAAGC,IAAI,GAAAD,YAAA;AAClE,EAAA,IAAQrH,GAAG,GAAgCH,MAAM,CAAzCG,GAAG;IAAAC,mBAAA,GAAgCJ,MAAM,CAApC9D,WAAW;AAAXA,IAAAA,WAAW,GAAAkE,mBAAA,KAAA,MAAA,GAAGJ,MAAM,CAACK,IAAI,GAAAD,mBAAA;EAEtC,IAAMjE,MAAM,GAAGuL,OAAO,CAAC,YAAA;AAAA,IAAA,OAAMzK,MAAM,CAAC;AAAEkD,MAAAA,GAAG,EAAHA;KAAK,EAAEoD,OAAO,CAAC;AAAA,EAAA,CAAA,EAAE,CAACA,OAAO,EAAEpD,GAAG,CAAC,CAAC;AAEtE,EAAA,IAAMF,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGkB,aAAa,EAAI;AACzC,IAAA,IAAIA,aAAa,CAACD,OAAO,EAAEe,QAAQ,CAAC0F,QAAQ,CAAC;AAAExH,MAAAA,GAAG,EAAHA;KAAK,EAAEoD,OAAO,CAAC,CAAC,CAAC,KAC3D,IAAI,CAACpH,MAAM,EAAE8F,QAAQ,CAAC1E,MAAM,CAAC4D,aAAa,EAAEoC,OAAO,CAAC,CAAC,CAAC,KACtDtB,QAAQ,CAAC2F,SAAS,CAAC;AAAEzH,MAAAA,GAAG,EAAHA;AAAI,KAAC,EAAEgB,aAAa,EAAEoC,OAAO,CAAC,CAAC;EAC3D,CAAC;EAED,IAAIsE,MAAM,CAAC3L,WAAW,CAAC,IAAI4L,OAAO,CAAC5L,WAAW,CAAC,EAAE;IAC/C,oBACEmF,GAAA,CAAC2D,IAAI,EAAA;AACG9E,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE7D,MAAAA,MAAM,EAANA,MAAM;AAAEoH,MAAAA,OAAO,EAAPA,OAAO;AAAEtD,MAAAA,iBAAiB,EAAjBA,iBAAiB;AAAEgF,MAAAA,OAAO,EAAPA;AAAO,KACrE,CAAC;AAEN,EAAA;AAEA,EAAA,IAAI8C,MAAM,CAAC7L,WAAW,CAAC,EAAE;IACvB,oBAAOmF,GAAA,CAACc,QAAQ,EAAA;AAAOjC,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE7D,MAAAA,MAAM,EAANA,MAAM;AAAE8D,MAAAA,iBAAiB,EAAjBA;AAAiB,KAAK,CAAC;AAC3E,EAAA;AAEA,EAAA,IAAI+H,MAAM,CAAC9L,WAAW,CAAC,EAAE;IACvB,oBAAOmF,GAAA,CAACkF,IAAI,EAAA;AAAOrG,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE7D,MAAAA,MAAM,EAANA,MAAM;AAAE8D,MAAAA,iBAAiB,EAAjBA;AAAiB,KAAK,CAAC;AACvE,EAAA;AAEA,EAAA,IAAIgI,YAAY,CAAC/L,WAAW,CAAC,EAAE;IAC7B,oBACEmF,GAAA,CAACiD,cAAc,EAAA;AACPpE,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE7D,MAAAA,MAAM,EAANA,MAAM;AAAEoH,MAAAA,OAAO,EAAPA,OAAO;AAAEtD,MAAAA,iBAAiB,EAAjBA;AAAiB,KAC5D,CAAC;AAEN,EAAA;AAEA,EAAA,IAAIiI,YAAY,CAAChM,WAAW,CAAC,EAAE;IAC7B,oBACEmF,GAAA,CAACqD,UAAU,EAAA;AACHxE,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE7D,MAAAA,MAAM,EAANA,MAAM;AAAEoH,MAAAA,OAAO,EAAPA,OAAO;AAAEtD,MAAAA,iBAAiB,EAAjBA;AAAiB,KAC5D,CAAC;AAEN,EAAA;EAEA,IAAIkI,SAAS,CAACjM,WAAW,CAAC,IAAIuE,YAAU,CAACvE,WAAW,CAAC,EAAE;IACrD,oBACEmF,GAAA,CAACxB,OAAO,EAAA;AACAK,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE9D,MAAAA,WAAW,EAAXA,WAAW;AAAEC,MAAAA,MAAM,EAANA,MAAM;AAAE8D,MAAAA,iBAAiB,EAAjBA;AAAiB,KAChE,CAAC;AAEN,EAAA;AAEA,EAAA,IAAImI,YAAY,CAAClM,WAAW,CAAC,EAAE;IAC7B,oBAAOmF,GAAA,CAACuF,UAAU,EAAA;AAAO1G,MAAAA,SAAS,EAATA,SAAS;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAE7D,MAAAA,MAAM,EAANA,MAAM;AAAE8D,MAAAA,iBAAiB,EAAjBA;AAAiB,KAAK,CAAC;AAC7E,EAAA;EAEA,oBACEoB,GAAA,CAACgC,QAAQ,EAAA;AAAOnD,IAAAA,SAAS,EAATA,SAAS;AAAEF,IAAAA,MAAM,EAANA,MAAM;AAAE7D,IAAAA,MAAM,EAANA,MAAM;AAAEoH,IAAAA,OAAO,EAAPA,OAAO;AAAEtD,IAAAA,iBAAiB,EAAjBA;AAAiB,GAAK,CAAC;AAE/E;;;;"}
|
|
@@ -1,140 +1,23 @@
|
|
|
1
1
|
import { memo, useState, useEffect, useMemo } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { isNotPresent, hyphenate, isNotEmpty, findBy, noop, removeBy, replaceBy } from '@bigbinary/neeto-cist';
|
|
3
|
+
import { isEmpty, isNil, prop, equals, append } from 'ramda';
|
|
4
4
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
5
5
|
import Select from '@bigbinary/neetoui/Select';
|
|
6
6
|
import { useTranslation } from 'react-i18next';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { dayjs } from '@bigbinary/neeto-commons-frontend/utils';
|
|
7
|
+
import { F as isCheckbox, G as CHECKBOX_OPTIONS, H as DEFAULT_BOOLEAN_OPTIONS, I as buildUpdatedFilter, t as isCustomDateRange, M as MULTI_DROPDOWN_RULES, S as SINGLE_DROPDOWN_RULES, i as isMulti, J as TIME_FORMAT, K as buildRuleOptions, L as isUndefinedOrEmpty, v as isCustomTimeRange, O as TREE_SELECT_RULES, A as isText, B as isDigit, s as isDate, u as isTime, w as isSingleDate, x as isSingleTime, y as isBoolean, f as isTreeSelect } from './utils-Q-OTPVjq.js';
|
|
8
|
+
import { g as getOtherProps, b as buildDropdownValue, a as buildHelpIconProps, c as initializeDateRule, d as getDateValue, e as buildDateValues, f as buildDropdownOptions, i as isRuleEmpty, h as hasInvalidTimes, j as areCustomTimeRangeValuesNotValid, k as buildSingleTimeValue } from './utils-B3464cET.js';
|
|
10
9
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
11
10
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
12
11
|
import DatePicker from '@bigbinary/neetoui/DatePicker';
|
|
12
|
+
import { D as DATE_OPTIONS, f as SINGLE_DATE_OPTIONS, g as SINGLE_TIME_OPTIONS, T as TIME_OPTIONS } from './constants-BaYBNRZa.js';
|
|
13
13
|
import TimePicker from '@bigbinary/neetoui/TimePicker';
|
|
14
14
|
import { useDebounce } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
15
15
|
import Input from '@bigbinary/neetoui/Input';
|
|
16
16
|
import NeetoUITreeSelect from '@bigbinary/neetoui/TreeSelect';
|
|
17
17
|
|
|
18
|
-
var buildDropdownValue = function buildDropdownValue(_ref) {
|
|
19
|
-
var defaultType = _ref.defaultType,
|
|
20
|
-
filter = _ref.filter,
|
|
21
|
-
options = _ref.options;
|
|
22
|
-
if (!filter) return null;
|
|
23
|
-
if (isMulti(defaultType) || isTreeSelect(defaultType)) {
|
|
24
|
-
return options.filter(function (_ref2) {
|
|
25
|
-
var value = _ref2.value;
|
|
26
|
-
return filter.value.includes(value);
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
return findBy({
|
|
30
|
-
value: filter.value
|
|
31
|
-
}, options);
|
|
32
|
-
};
|
|
33
|
-
var buildSingleTimeValue = function buildSingleTimeValue(filter) {
|
|
34
|
-
var _findBy2;
|
|
35
|
-
if (!filter) return null;
|
|
36
|
-
return (_findBy2 = findBy({
|
|
37
|
-
value: filter.value
|
|
38
|
-
}, TIME_OPTIONS)) !== null && _findBy2 !== void 0 ? _findBy2 : last(TIME_OPTIONS);
|
|
39
|
-
};
|
|
40
|
-
var getOtherProps = function getOtherProps(props) {
|
|
41
|
-
return omit(["key", "node", "label", "type", "values", "model", "showRuleSelector"], props);
|
|
42
|
-
};
|
|
43
|
-
var buildDropdownOptions = function buildDropdownOptions(_ref3) {
|
|
44
|
-
var defaultType = _ref3.defaultType,
|
|
45
|
-
filter = _ref3.filter,
|
|
46
|
-
_ref3$options = _ref3.options,
|
|
47
|
-
options = _ref3$options === void 0 ? [] : _ref3$options;
|
|
48
|
-
if (isEmpty(options)) {
|
|
49
|
-
if (isDateRange(defaultType)) {
|
|
50
|
-
options = DATE_RANGE_OPTIONS;
|
|
51
|
-
} else if (isTimeRange(defaultType)) {
|
|
52
|
-
options = TIME_RANGE_OPTIONS;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
options = options.map(modify("value", function (value) {
|
|
56
|
-
return value === null || value === void 0 ? void 0 : value.toString();
|
|
57
|
-
}));
|
|
58
|
-
if (!filter) return options;
|
|
59
|
-
if (isMulti(defaultType)) {
|
|
60
|
-
var selectedOptions = filter.value.map(function (value) {
|
|
61
|
-
return findBy({
|
|
62
|
-
value: value
|
|
63
|
-
}, options) || toLabelAndValue(value);
|
|
64
|
-
});
|
|
65
|
-
var nonSelectedOptions = options.filter(function (option) {
|
|
66
|
-
return !filter.value.includes(option.value);
|
|
67
|
-
});
|
|
68
|
-
return concat(selectedOptions, nonSelectedOptions);
|
|
69
|
-
}
|
|
70
|
-
if (!findBy({
|
|
71
|
-
value: filter.value
|
|
72
|
-
}, options)) {
|
|
73
|
-
return append(toLabelAndValue(filter.value), options);
|
|
74
|
-
}
|
|
75
|
-
return options;
|
|
76
|
-
};
|
|
77
|
-
var initializeDateRule = function initializeDateRule(filter) {
|
|
78
|
-
return filter ? findBy({
|
|
79
|
-
value: filter === null || filter === void 0 ? void 0 : filter.value
|
|
80
|
-
}, DATE_OPTIONS) || findDateOption(filter, DATE_OPTIONS) : {};
|
|
81
|
-
};
|
|
82
|
-
var getDateValue = function getDateValue(value, rule) {
|
|
83
|
-
if (isEmpty(value) || isNil(value)) {
|
|
84
|
-
return null;
|
|
85
|
-
}
|
|
86
|
-
if (rule.value === "custom-date-range") {
|
|
87
|
-
return value;
|
|
88
|
-
}
|
|
89
|
-
return rule.value === "before" ? dayjs(value[1]).add(1, "day") : dayjs(value[0]).subtract(1, "day");
|
|
90
|
-
};
|
|
91
|
-
var findDateOption = function findDateOption(filter, options) {
|
|
92
|
-
var value = filter.value;
|
|
93
|
-
var isBeforeOrAfter = dayjs(value[1]).diff(dayjs(value[0]), "year") >= 90;
|
|
94
|
-
if (not(isBeforeOrAfter)) {
|
|
95
|
-
return last(options);
|
|
96
|
-
}
|
|
97
|
-
var currentMoment = dayjs();
|
|
98
|
-
var diffWithStart = Math.abs(currentMoment.diff(dayjs(value[0]), "year"));
|
|
99
|
-
var diffWithEnd = Math.abs(currentMoment.diff(dayjs(value[1]), "year"));
|
|
100
|
-
return diffWithStart < diffWithEnd ? findBy({
|
|
101
|
-
value: "after"
|
|
102
|
-
}, options) : findBy({
|
|
103
|
-
value: "before"
|
|
104
|
-
}, options);
|
|
105
|
-
};
|
|
106
|
-
var buildDateValues = function buildDateValues(dates, selectedRule) {
|
|
107
|
-
if (selectedRule.value === "after") {
|
|
108
|
-
return [dates.add(1, "day"), dates.add(100, "year")];
|
|
109
|
-
} else if (selectedRule.value === "before") {
|
|
110
|
-
return [dates.subtract(100, "year"), dates.subtract(1, "day")];
|
|
111
|
-
}
|
|
112
|
-
return dates;
|
|
113
|
-
};
|
|
114
|
-
var buildHelpIconProps = function buildHelpIconProps(helpIconProps) {
|
|
115
|
-
return mergeDeepRight(DEFAULT_HELP_ICON_PROPS, helpIconProps);
|
|
116
|
-
};
|
|
117
|
-
var hasInvalidTimes = function hasInvalidTimes(times) {
|
|
118
|
-
if (isNotPresent(times)) return false;
|
|
119
|
-
if (Array.isArray(times)) {
|
|
120
|
-
return times.some(function (time) {
|
|
121
|
-
return time.isValid();
|
|
122
|
-
}) === false;
|
|
123
|
-
}
|
|
124
|
-
return !times.isValid();
|
|
125
|
-
};
|
|
126
|
-
var areCustomTimeRangeValuesNotValid = function areCustomTimeRangeValuesNotValid(times) {
|
|
127
|
-
return !times.every(function (time) {
|
|
128
|
-
return time.isValid();
|
|
129
|
-
});
|
|
130
|
-
};
|
|
131
|
-
var isRuleEmpty = function isRuleEmpty(rule) {
|
|
132
|
-
return equals(rule, "is_unknown");
|
|
133
|
-
};
|
|
134
|
-
|
|
135
18
|
function ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
136
|
-
function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t),
|
|
137
|
-
var Boolean = function Boolean(_ref) {
|
|
19
|
+
function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
20
|
+
var Boolean$1 = function Boolean(_ref) {
|
|
138
21
|
var column = _ref.column,
|
|
139
22
|
filter = _ref.filter,
|
|
140
23
|
handleApplyFilter = _ref.handleApplyFilter,
|
|
@@ -191,11 +74,11 @@ var Boolean = function Boolean(_ref) {
|
|
|
191
74
|
}, otherProps))
|
|
192
75
|
});
|
|
193
76
|
};
|
|
194
|
-
var Boolean
|
|
77
|
+
var Boolean = /*#__PURE__*/memo(Boolean$1);
|
|
195
78
|
|
|
196
79
|
function ownKeys$6(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
197
|
-
function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t),
|
|
198
|
-
var Datetime = function Datetime(_ref) {
|
|
80
|
+
function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
81
|
+
var Datetime$1 = function Datetime(_ref) {
|
|
199
82
|
var column = _ref.column,
|
|
200
83
|
filter = _ref.filter,
|
|
201
84
|
handleApplyFilter = _ref.handleApplyFilter,
|
|
@@ -280,11 +163,11 @@ var Datetime = function Datetime(_ref) {
|
|
|
280
163
|
}, otherProps))]
|
|
281
164
|
});
|
|
282
165
|
};
|
|
283
|
-
var Datetime
|
|
166
|
+
var Datetime = /*#__PURE__*/memo(Datetime$1);
|
|
284
167
|
|
|
285
168
|
function ownKeys$5(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
286
|
-
function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t),
|
|
287
|
-
var Dropdown = function Dropdown(_ref) {
|
|
169
|
+
function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
170
|
+
var Dropdown$1 = function Dropdown(_ref) {
|
|
288
171
|
var column = _ref.column,
|
|
289
172
|
filter = _ref.filter,
|
|
290
173
|
handleApplyFilter = _ref.handleApplyFilter,
|
|
@@ -394,10 +277,10 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
394
277
|
}, otherProps))]
|
|
395
278
|
});
|
|
396
279
|
};
|
|
397
|
-
var Dropdown
|
|
280
|
+
var Dropdown = /*#__PURE__*/memo(Dropdown$1);
|
|
398
281
|
|
|
399
282
|
function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
400
|
-
function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t),
|
|
283
|
+
function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
401
284
|
var SingleDatetime = function SingleDatetime(_ref) {
|
|
402
285
|
var column = _ref.column,
|
|
403
286
|
filter = _ref.filter,
|
|
@@ -490,7 +373,7 @@ var SingleDatetime = function SingleDatetime(_ref) {
|
|
|
490
373
|
};
|
|
491
374
|
|
|
492
375
|
function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
493
|
-
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t),
|
|
376
|
+
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
494
377
|
var SingleTime = function SingleTime(_ref) {
|
|
495
378
|
var column = _ref.column,
|
|
496
379
|
filter = _ref.filter,
|
|
@@ -584,7 +467,7 @@ var SingleTime = function SingleTime(_ref) {
|
|
|
584
467
|
};
|
|
585
468
|
|
|
586
469
|
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
587
|
-
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t),
|
|
470
|
+
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
588
471
|
var Text = function Text(_ref) {
|
|
589
472
|
var column = _ref.column,
|
|
590
473
|
filter = _ref.filter,
|
|
@@ -694,8 +577,8 @@ var Text = function Text(_ref) {
|
|
|
694
577
|
};
|
|
695
578
|
|
|
696
579
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
697
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t),
|
|
698
|
-
var Time = function Time(_ref) {
|
|
580
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
581
|
+
var Time$1 = function Time(_ref) {
|
|
699
582
|
var column = _ref.column,
|
|
700
583
|
filter = _ref.filter,
|
|
701
584
|
handleApplyFilter = _ref.handleApplyFilter,
|
|
@@ -775,11 +658,11 @@ var Time = function Time(_ref) {
|
|
|
775
658
|
}, otherProps))]
|
|
776
659
|
});
|
|
777
660
|
};
|
|
778
|
-
var Time
|
|
661
|
+
var Time = /*#__PURE__*/memo(Time$1);
|
|
779
662
|
|
|
780
663
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
781
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t),
|
|
782
|
-
var TreeSelect = function TreeSelect(_ref) {
|
|
664
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
665
|
+
var TreeSelect$1 = function TreeSelect(_ref) {
|
|
783
666
|
var _findBy;
|
|
784
667
|
var autoFocus = _ref.autoFocus,
|
|
785
668
|
column = _ref.column,
|
|
@@ -872,7 +755,7 @@ var TreeSelect = function TreeSelect(_ref) {
|
|
|
872
755
|
}), getOtherProps(column)))]
|
|
873
756
|
});
|
|
874
757
|
};
|
|
875
|
-
var TreeSelect
|
|
758
|
+
var TreeSelect = /*#__PURE__*/memo(TreeSelect$1);
|
|
876
759
|
|
|
877
760
|
var Item = function Item(_ref) {
|
|
878
761
|
var column = _ref.column,
|
|
@@ -907,7 +790,7 @@ var Item = function Item(_ref) {
|
|
|
907
790
|
});
|
|
908
791
|
}
|
|
909
792
|
if (isDate(defaultType)) {
|
|
910
|
-
return /*#__PURE__*/jsx(Datetime
|
|
793
|
+
return /*#__PURE__*/jsx(Datetime, {
|
|
911
794
|
autoFocus: autoFocus,
|
|
912
795
|
column: column,
|
|
913
796
|
filter: filter,
|
|
@@ -915,7 +798,7 @@ var Item = function Item(_ref) {
|
|
|
915
798
|
});
|
|
916
799
|
}
|
|
917
800
|
if (isTime(defaultType)) {
|
|
918
|
-
return /*#__PURE__*/jsx(Time
|
|
801
|
+
return /*#__PURE__*/jsx(Time, {
|
|
919
802
|
autoFocus: autoFocus,
|
|
920
803
|
column: column,
|
|
921
804
|
filter: filter,
|
|
@@ -941,7 +824,7 @@ var Item = function Item(_ref) {
|
|
|
941
824
|
});
|
|
942
825
|
}
|
|
943
826
|
if (isBoolean(defaultType) || isCheckbox(defaultType)) {
|
|
944
|
-
return /*#__PURE__*/jsx(Boolean
|
|
827
|
+
return /*#__PURE__*/jsx(Boolean, {
|
|
945
828
|
autoFocus: autoFocus,
|
|
946
829
|
column: column,
|
|
947
830
|
defaultType: defaultType,
|
|
@@ -950,14 +833,14 @@ var Item = function Item(_ref) {
|
|
|
950
833
|
});
|
|
951
834
|
}
|
|
952
835
|
if (isTreeSelect(defaultType)) {
|
|
953
|
-
return /*#__PURE__*/jsx(TreeSelect
|
|
836
|
+
return /*#__PURE__*/jsx(TreeSelect, {
|
|
954
837
|
autoFocus: autoFocus,
|
|
955
838
|
column: column,
|
|
956
839
|
filter: filter,
|
|
957
840
|
handleApplyFilter: handleApplyFilter
|
|
958
841
|
});
|
|
959
842
|
}
|
|
960
|
-
return /*#__PURE__*/jsx(Dropdown
|
|
843
|
+
return /*#__PURE__*/jsx(Dropdown, {
|
|
961
844
|
autoFocus: autoFocus,
|
|
962
845
|
column: column,
|
|
963
846
|
filter: filter,
|
|
@@ -966,5 +849,5 @@ var Item = function Item(_ref) {
|
|
|
966
849
|
});
|
|
967
850
|
};
|
|
968
851
|
|
|
969
|
-
export { Item as I
|
|
970
|
-
//# sourceMappingURL=index-
|
|
852
|
+
export { Item as I };
|
|
853
|
+
//# sourceMappingURL=index-Cdvbpy-b.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-Cdvbpy-b.js","sources":["../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":["// type: boolean\n\nimport { memo } from \"react\";\n\nimport { hyphenate, isNotEmpty, isNotPresent } from \"neetocist\";\nimport { Select } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { buildUpdatedFilter, isCheckbox } from \"components/utils\";\n\nimport { DEFAULT_BOOLEAN_OPTIONS, CHECKBOX_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 = isNotPresent(values)\n ? isCheckbox(defaultType)\n ? CHECKBOX_OPTIONS\n : DEFAULT_BOOLEAN_OPTIONS\n : 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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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-testid={`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 (\n <Boolean\n {...{ autoFocus, column, defaultType, filter, handleApplyFilter }}\n />\n );\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":["Boolean","_ref","column","filter","handleApplyFilter","autoFocus","key","_column$defaultType","defaultType","type","label","values","_column$helpIconProps","helpIconProps","options","isNotPresent","isCheckbox","CHECKBOX_OPTIONS","DEFAULT_BOOLEAN_OPTIONS","otherProps","getOtherProps","value","buildDropdownValue","_useTranslation","useTranslation","t","handleChange","option","isEmpty","isNil","_delete","updatedFilter","buildUpdatedFilter","_jsx","className","children","Select","_objectSpread","isClearable","isNotEmpty","labelProps","buildHelpIconProps","concat","hyphenate","strategy","placeholder","resource","onChange","memo","Datetime","_useState","useState","initializeDateRule","_useState2","_slicedToArray","selectedRule","setSelectedRule","isDatePickerShown","isCustomDateRange","handleDateRangeChange","dates","buildDateValues","map","date","toISOString","useEffect","_jsxs","DATE_OPTIONS","DatePicker","getPopupContainer","prop","getDateValue","Dropdown","filters","defaultValue","_column$showRuleSelec","showRuleSelector","_column$isClearable","buildDropdownOptions","dropdownRules","isMulti","MULTI_DROPDOWN_RULES","SINGLE_DROPDOWN_RULES","findBy","rule","getOption","isSelectedRuleEmpty","handleRuleChange","isPreviousRuleEmpty","isRuleEmpty","isNewRuleEmpty","SingleDatetime","SINGLE_DATE_OPTIONS","datePickerType","ruleOption","updateValue","SingleTime","SINGLE_TIME_OPTIONS","timePickerType","times","hasInvalidTimes","areCustomTimeRangeValuesNotValid","time","TimePicker","format","TIME_FORMAT","Text","onClose","ruleOptions","buildRuleOptions","inputType","inputValue","setInputValue","_useState3","_useState4","debouncedInputValue","useDebounce","handleUpdateAndApplyFilter","arguments","length","undefined","equals","trim","handleKeydown","e","isUndefinedOrEmpty","Input","event","target","onKeyDown","Time","buildSingleTimeValue","isCustomTimeRangeShown","isCustomTimeRange","handleTimeRangeChange","TIME_OPTIONS","TreeSelect","_findBy","initialRule","TREE_SELECT_RULES","selectedOption","NeetoUITreeSelect","multiple","showSearch","treeDataSimpleMode","allowClear","treeData","Item","_ref$onClose","noop","useMemo","removeBy","append","replaceBy","isText","isDigit","isDate","isTime","isSingleDate","isSingleTime","isBoolean","isTreeSelect"],"mappings":"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"}
|