@bigbinary/neeto-filters-frontend 4.3.31 → 4.3.33
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/app/javascript/src/translations/hu.json +80 -0
- package/dist/.ready +1 -0
- package/dist/Bar.js +9 -22
- package/dist/Bar.js.map +1 -1
- package/dist/Filters.js +6 -9
- package/dist/Filters.js.map +1 -1
- package/dist/Segments.js +9 -8
- package/dist/Segments.js.map +1 -1
- package/dist/cjs/Bar.js +11 -24
- package/dist/cjs/Bar.js.map +1 -1
- package/dist/cjs/Filters.js +6 -9
- package/dist/cjs/Filters.js.map +1 -1
- package/dist/cjs/Segments.js +6 -5
- package/dist/cjs/Segments.js.map +1 -1
- package/dist/cjs/hooks.js +1 -1
- package/dist/cjs/index.js +7 -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 +673 -0
- package/dist/cjs/v2/Bar.js.map +1 -0
- package/dist/cjs/v2/Filters.js +1282 -0
- package/dist/cjs/v2/Filters.js.map +1 -0
- package/dist/cjs/v2/Segments.js +532 -0
- package/dist/cjs/v2/Segments.js.map +1 -0
- package/dist/cjs/v2/index.js +70 -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/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 +1 -1
- package/dist/{index-Bq32eLIG.js → index-00KCfktU.js} +4 -4
- package/dist/{index-Bq32eLIG.js.map → index-00KCfktU.js.map} +1 -1
- package/dist/{index-Rn6zFKPg.js → index-4MKjSNsp.js} +28 -27
- package/dist/{index-Rn6zFKPg.js.map → index-4MKjSNsp.js.map} +1 -1
- package/dist/{index-CzUm_HaL.js → index-BiqUQPwR.js} +11 -10
- package/dist/{index-CzUm_HaL.js.map → index-BiqUQPwR.js.map} +1 -1
- package/dist/index-BzkSk3Jh.js +5 -0
- package/dist/index-BzkSk3Jh.js.map +1 -0
- package/dist/{index-BYRIatjo.js → index-D5wjkRUM.js} +4 -4
- package/dist/{index-BYRIatjo.js.map → index-D5wjkRUM.js.map} +1 -1
- package/dist/index-DX0qF4mf.js +7 -0
- package/dist/index-DX0qF4mf.js.map +1 -0
- package/dist/index.js +7 -4
- package/dist/index.js.map +1 -1
- 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-0Le3BZOo.js} +3 -3
- package/dist/{useSegmentsApi-wYy0UPCH.js.map → useSegmentsApi-0Le3BZOo.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-ClTYBS1C.js +865 -0
- package/dist/utils-ClTYBS1C.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-Dqmvcb8M.js +802 -0
- package/dist/utils-Dqmvcb8M.js.map +1 -0
- package/dist/{utils-CxVWpPGf.js → utils-l0QK_DBo.js} +7 -8
- package/dist/utils-l0QK_DBo.js.map +1 -0
- package/dist/utils.js +2 -1
- package/dist/utils.js.map +1 -1
- package/dist/v2/Bar.js +671 -0
- package/dist/v2/Bar.js.map +1 -0
- package/dist/v2/Filters.js +1280 -0
- package/dist/v2/Filters.js.map +1 -0
- package/dist/v2/Segments.js +530 -0
- package/dist/v2/Segments.js.map +1 -0
- package/dist/v2/index.js +54 -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 +43 -30
- package/dist/utils-BuCOQsNv.js.map +0 -1
- package/dist/utils-CxVWpPGf.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Filters.js","sources":["../../app/javascript/src/components/v2/Pane/hooks/useFilters.js","../../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","../../app/javascript/src/components/v2/Pane/index.jsx","../../app/javascript/src/components/v2/Filters.jsx"],"sourcesContent":["import { useRef, useEffect, useTransition } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { pluck, isNil, concat, isEmpty, append, mergeRight } from \"ramda\";\nimport { useHistory, useLocation } from \"react-router-dom\";\n\nimport {\n buildDefaultFilters,\n buildFiltersFromSearchParams,\n buildFiltersPayload,\n buildSelectorsFromURL,\n buildUrlFromFilters,\n compareFilters,\n getSearchTermFromUrl,\n getSnakeCasedQueryParams,\n isKeywordFilterPresent,\n} from \"../../utils\";\n\nconst useFilters = ({\n onFiltersChange,\n columns,\n keywordFilter,\n onSelectorsChange,\n}) => {\n const [_, startTransition] = useTransition();\n\n const initialRender = useRef(true);\n const prevFilters = useRef([]);\n const location = useLocation();\n let filters = buildFiltersFromSearchParams(columns, false);\n const history = useHistory();\n const defaultValuesOfColumns = JSON.stringify(pluck(\"defaultValue\", columns));\n\n const handlePrecenseOfDefaultFilters = defaultFilters => {\n const params = buildUrlFromFilters({\n columns,\n filters:\n isKeywordFilterPresent(keywordFilter) &&\n isNotEmpty(getSearchTermFromUrl())\n ? [...defaultFilters, keywordFilter]\n : defaultFilters,\n });\n\n history.replace({ search: params });\n };\n\n const handleFiltersChange = filtersPayload => {\n startTransition(() => {\n onFiltersChange(\n buildFiltersPayload(\n filtersPayload.filter(filter => !isNil(filter.node))\n )\n );\n });\n };\n\n //This function sends the updated filters to host via callbacks.\n const sendUpdatedFilters = () => {\n if (compareFilters(append(keywordFilter, filters), prevFilters.current)) {\n return;\n }\n\n const newFilters = buildFiltersFromSearchParams(columns);\n const filtersPayload =\n isKeywordFilterPresent(keywordFilter) &&\n isNotEmpty(getSearchTermFromUrl())\n ? append(keywordFilter, newFilters)\n : newFilters;\n\n handleFiltersChange(filtersPayload);\n\n onSelectorsChange(buildSelectorsFromURL(columns));\n };\n\n const handleChangesInURL = () => {\n const defaultFilters = buildDefaultFilters(columns, filters);\n const searchParams = getSnakeCasedQueryParams();\n const keys = pluck(\"key\", append(keywordFilter, columns));\n if (\n keys.every(key => isNil(searchParams[key])) &&\n !isEmpty(defaultFilters)\n ) {\n history.replace({\n search: buildUrlFromFilters({\n columns,\n filters: concat(defaultFilters, filters),\n }),\n });\n filters = buildFiltersFromSearchParams(columns, false);\n }\n };\n\n useEffect(() => {\n if (initialRender.current) {\n initialRender.current = false;\n const keywordValue = getSearchTermFromUrl();\n const defaultFilters = buildDefaultFilters(columns, filters);\n isNotEmpty(defaultFilters) &&\n handlePrecenseOfDefaultFilters(defaultFilters);\n\n prevFilters.current = append(\n mergeRight(keywordFilter, { value: keywordValue }),\n filters\n );\n } else {\n handleChangesInURL();\n sendUpdatedFilters();\n prevFilters.current = append(keywordFilter, filters);\n }\n }, [location.search, defaultValuesOfColumns]);\n\n return filters;\n};\n\nexport default useFilters;\n","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","import { useMemo, useState } from \"react\";\n\nimport { Accordion, Button, Typography, Sheet } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { existsBy, findBy, isNotEmpty, isPresent } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport Search from \"neetomolecules/Search\";\nimport { isEmpty, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { SEARCH_TERM_KEY } from \"src/common/constants\";\n\nimport useFilters from \"./hooks/useFilters\";\nimport Item from \"./Item\";\n\nimport {\n buildFilteredColumns,\n buildUrlFromFilters,\n getColumnsWithStandardizedType,\n getSearchTermFromUrl,\n getSnakeCasedQueryParams,\n isKeywordFilterPresent,\n} from \"../utils\";\n\nconst Pane = ({\n isOpen,\n onClose,\n columns,\n onChange,\n isSearchable,\n keyword,\n onSelectorsChange,\n childrenKeys = [],\n children,\n className,\n ...otherProps\n}) => {\n const searchParams = useQueryParams({ toCamelCase: false });\n const [searchTerm, setSearchTerm] = useState(\"\");\n const history = useHistory();\n const { t } = useTranslation();\n\n columns = useMemo(() => getColumnsWithStandardizedType(columns), [columns]);\n\n const { groupedColumns = [], ungroupedColumns = [] } = buildFilteredColumns({\n searchTerm,\n columns,\n });\n\n const keywordFilter = {\n type: \"text\",\n rule: \"contains\",\n label: t(\"neetoFilters.common.searchTerm\"),\n ...keyword,\n key: SEARCH_TERM_KEY,\n value: searchParams[SEARCH_TERM_KEY] || \"\",\n };\n\n const filters = useFilters({\n onFiltersChange: onChange,\n columns,\n keywordFilter,\n onSelectorsChange,\n });\n\n const handleChange = (newFilters, isClearAll = false) => {\n const params = buildUrlFromFilters({\n columns,\n filters:\n isKeywordFilterPresent(keywordFilter) &&\n isNotEmpty(getSearchTermFromUrl())\n ? [...newFilters, keywordFilter]\n : newFilters,\n ...(isClearAll && { isClearAll: true, childrenKeys }),\n });\n\n history.push({ search: params });\n };\n\n const handleClearAll = () => {\n const params = isKeywordFilterPresent(keywordFilter)\n ? omit([SEARCH_TERM_KEY], getSnakeCasedQueryParams())\n : getSnakeCasedQueryParams();\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n handleChange([], true);\n };\n\n const handleClearTermAndClose = () => {\n setSearchTerm(\"\");\n onClose();\n };\n\n const handleClose = () => {\n columns.forEach(({ key }) => {\n const filter = findBy({ key }, filters);\n if (filter?.value === \"\") delete searchParams[key];\n });\n handleClearTermAndClose();\n };\n\n const isClearFiltersDisabled =\n !filters.some(\n ({ value, defaultValue }) => isPresent(value) && value !== defaultValue\n ) && !childrenKeys.some(key => searchParams[key]);\n\n return (\n <Sheet\n {...{ isOpen }}\n backdropClassName=\"neeto-filters-pane-backdrop\"\n className={classnames(\"neeto-filters-pane-filter\", {\n [className]: className,\n })}\n onClose={handleClose}\n {...otherProps}\n >\n <Sheet.Header data-testid=\"neeto-filters-pane-header\">\n <Sheet.Title weight=\"semibold\">\n {t(\"neetoFilters.common.filters\")}\n </Sheet.Title>\n </Sheet.Header>\n <Sheet.Body className=\"neeto-filters-pane-filter__body pb-6\">\n {isSearchable && (\n <Search\n data-testid=\"neeto-filters-column-search\"\n placeholder={t(\"neetoFilters.messages.searchResources\", {\n resources: t(\"neetoFilters.common.filters\"),\n })}\n onSearch={value => setSearchTerm(value)}\n />\n )}\n {ungroupedColumns.map(column => (\n <Item\n {...{ column, filters }}\n autoFocus={column.key === isOpen}\n key={column.key}\n onChange={handleChange}\n onClose={handleClearTermAndClose}\n />\n ))}\n {isPresent(groupedColumns) && (\n <Accordion\n collapsible\n type=\"single\"\n defaultValue={`item-${groupedColumns.findIndex(({ columns }) =>\n existsBy({ key: isOpen }, columns)\n )}`}\n >\n {groupedColumns.map(({ group, columns }) => (\n <Accordion.Item\n className=\"accordion_item\"\n key={group}\n title={group}\n >\n {columns.map(column => (\n <Item\n {...{ column, filters }}\n autoFocus={column.key === isOpen}\n key={column.key}\n onChange={handleChange}\n onClose={handleClearTermAndClose}\n />\n ))}\n </Accordion.Item>\n ))}\n </Accordion>\n )}\n {isEmpty(ungroupedColumns) && isEmpty(groupedColumns) && (\n <Typography variant=\"body2\">\n {t(\"neetoFilters.messages.noResourcesFound\", {\n resources: t(\"neetoFilters.common.columns\"),\n })}\n </Typography>\n )}\n {children}\n </Sheet.Body>\n <Sheet.Footer className=\"gap-x-2\">\n <Button\n data-testid=\"neeto-filters-done-btn\"\n label={t(\"neetoFilters.common.done\")}\n onClick={handleClearTermAndClose}\n />\n <Button\n data-testid=\"neeto-filters-clear-btn\"\n disabled={isClearFiltersDisabled}\n label={t(\"neetoFilters.common.clearFilters\")}\n variant=\"ghost\"\n onClick={handleClearAll}\n />\n </Sheet.Footer>\n </Sheet>\n );\n};\n\nexport default Pane;\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { identity } from \"ramda\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/index.css\";\n\nimport Pane from \"./Pane\";\n\nconst Filters = withT(\n ({\n t,\n isOpen = false,\n setIsOpen = identity,\n columns = [],\n onChange = identity,\n buttonProps = {},\n paneProps = {},\n isSearchable = false,\n className,\n onSelectorsChange = noop,\n keyword = { node: \"\", value: \"\", setValue: noop },\n childrenKeys,\n children,\n }) => (\n <span className={classnames({ [className]: className })}>\n <Button\n data-testid=\"neeto-filters-toggle-btn\"\n label={t(\"neetoFilters.common.filter\")}\n variant=\"secondary\"\n onClick={() => setIsOpen(true)}\n {...buttonProps}\n />\n <Pane\n onClose={() => setIsOpen(false)}\n {...{\n childrenKeys,\n columns,\n isOpen,\n isSearchable,\n keyword,\n onChange,\n onSelectorsChange,\n ...paneProps,\n }}\n >\n {children}\n </Pane>\n </span>\n )\n);\n\nexport default Filters;\n"],"names":["useFilters","_ref","onFiltersChange","columns","keywordFilter","onSelectorsChange","_useTransition","useTransition","_useTransition2","_slicedToArray","_","startTransition","initialRender","useRef","prevFilters","location","useLocation","filters","buildFiltersFromSearchParams","history","useHistory","defaultValuesOfColumns","JSON","stringify","pluck","handlePrecenseOfDefaultFilters","defaultFilters","params","buildUrlFromFilters","isKeywordFilterPresent","isNotEmpty","getSearchTermFromUrl","concat","_toConsumableArray","replace","search","handleFiltersChange","filtersPayload","buildFiltersPayload","filter","isNil","node","sendUpdatedFilters","compareFilters","append","current","newFilters","buildSelectorsFromURL","handleChangesInURL","buildDefaultFilters","searchParams","getSnakeCasedQueryParams","keys","every","key","isEmpty","useEffect","keywordValue","mergeRight","value","getOtherProps","props","omit","buildDropdownOptions","_ref3","defaultType","_ref3$options","options","isDateRange","DATE_RANGE_OPTIONS","isTimeRange","TIME_RANGE_OPTIONS","map","modify","toString","isMulti","selectedOptions","findBy","toLabelAndValue","nonSelectedOptions","option","includes","initializeDateRule","DATE_OPTIONS","findDateOption","getDateValue","rule","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","isRuleEmpty","equals","Boolean","_filter$value","column","handleApplyFilter","autoFocus","_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","labelProps","hyphenate","strategy","placeholder","resource","onChange","memo","Datetime","_useState","useState","_initializeDateRule$v","_initializeDateRule","_useState2","setSelectedRule","isDatePickerShown","isCustomDateRange","handleDateRangeChange","date","toISOString","_jsxs","DatePicker","getPopupContainer","prop","Dropdown","_filter$value2","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","Pane","isOpen","isSearchable","keyword","_ref$childrenKeys","childrenKeys","_objectWithoutProperties","_excluded","useQueryParams","toCamelCase","searchTerm","setSearchTerm","getColumnsWithStandardizedType","_buildFilteredColumns","buildFilteredColumns","_buildFilteredColumns2","groupedColumns","_buildFilteredColumns3","ungroupedColumns","SEARCH_TERM_KEY","isClearAll","push","handleClearAll","pathname","window","buildUrl","handleClearTermAndClose","handleClose","forEach","_ref2","isClearFiltersDisabled","isPresent","Sheet","backdropClassName","classnames","_defineProperty","Header","Title","weight","Body","Search","resources","onSearch","_createElement","Accordion","collapsible","findIndex","_ref4","existsBy","_ref5","group","title","Typography","variant","Footer","Button","onClick","disabled","Filters","withT","_ref$isOpen","_ref$setIsOpen","setIsOpen","identity","_ref$columns","_ref$onChange","_ref$buttonProps","buttonProps","_ref$paneProps","paneProps","_ref$isSearchable","_ref$onSelectorsChang","_ref$keyword","setValue"],"mappings":"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"}
|