@bigbinary/neeto-filters-frontend 4.3.33 → 4.3.35

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.
Files changed (81) hide show
  1. package/dist/.ready +1 -1
  2. package/dist/Bar.js +11 -9
  3. package/dist/Bar.js.map +1 -1
  4. package/dist/Filters.js +8 -4
  5. package/dist/Filters.js.map +1 -1
  6. package/dist/Segments.js +7 -5
  7. package/dist/Segments.js.map +1 -1
  8. package/dist/cjs/Bar.js +11 -9
  9. package/dist/cjs/Bar.js.map +1 -1
  10. package/dist/cjs/Filters.js +6 -2
  11. package/dist/cjs/Filters.js.map +1 -1
  12. package/dist/cjs/Segments.js +4 -2
  13. package/dist/cjs/Segments.js.map +1 -1
  14. package/dist/cjs/index.js +5 -3
  15. package/dist/cjs/index.js.map +1 -1
  16. package/dist/cjs/v2/Bar.js +34 -50
  17. package/dist/cjs/v2/Bar.js.map +1 -1
  18. package/dist/cjs/v2/Filters.js +10 -956
  19. package/dist/cjs/v2/Filters.js.map +1 -1
  20. package/dist/cjs/v2/Segments.js +10 -22
  21. package/dist/cjs/v2/Segments.js.map +1 -1
  22. package/dist/cjs/v2/index.js +11 -23
  23. package/dist/cjs/v2/index.js.map +1 -1
  24. package/dist/{constants-8DtAPJaA.js → constants-BaYBNRZa.js} +2 -2
  25. package/dist/{constants-8DtAPJaA.js.map → constants-BaYBNRZa.js.map} +1 -1
  26. package/dist/hooks.js +2 -2
  27. package/dist/{index-00KCfktU.js → index-BCnobjnZ.js} +4 -17
  28. package/dist/index-BCnobjnZ.js.map +1 -0
  29. package/dist/index-BD5y7_BW.js +969 -0
  30. package/dist/index-BD5y7_BW.js.map +1 -0
  31. package/dist/index-BxEtpFbP.js +301 -0
  32. package/dist/index-BxEtpFbP.js.map +1 -0
  33. package/dist/{index-BiqUQPwR.js → index-Bzw5oKqg.js} +39 -158
  34. package/dist/index-Bzw5oKqg.js.map +1 -0
  35. package/dist/index-C4AC0OfA.js +967 -0
  36. package/dist/index-C4AC0OfA.js.map +1 -0
  37. package/dist/{index-4MKjSNsp.js → index-Cdvbpy-b.js} +7 -125
  38. package/dist/index-Cdvbpy-b.js.map +1 -0
  39. package/dist/index-CpgjbwJP.js +299 -0
  40. package/dist/index-CpgjbwJP.js.map +1 -0
  41. package/dist/{index-D5wjkRUM.js → index-aOxl-IeV.js} +4 -36
  42. package/dist/index-aOxl-IeV.js.map +1 -0
  43. package/dist/index.js +8 -6
  44. package/dist/index.js.map +1 -1
  45. package/dist/inject-css-B6qYtOJe.js +6 -0
  46. package/dist/inject-css-B6qYtOJe.js.map +1 -0
  47. package/dist/inject-css-C2dztUxs.js +4 -0
  48. package/dist/inject-css-C2dztUxs.js.map +1 -0
  49. package/dist/{useSegmentsApi-0Le3BZOo.js → useSegmentsApi-C6mffm-a.js} +2 -2
  50. package/dist/{useSegmentsApi-0Le3BZOo.js.map → useSegmentsApi-C6mffm-a.js.map} +1 -1
  51. package/dist/utils-B3464cET.js +126 -0
  52. package/dist/utils-B3464cET.js.map +1 -0
  53. package/dist/{utils-Dqmvcb8M.js → utils-BUFBOQlR.js} +3 -3
  54. package/dist/{utils-Dqmvcb8M.js.map → utils-BUFBOQlR.js.map} +1 -1
  55. package/dist/utils-Cj2MY2tu.js +38 -0
  56. package/dist/utils-Cj2MY2tu.js.map +1 -0
  57. package/dist/utils-CwKBnC3c.js +17 -0
  58. package/dist/utils-CwKBnC3c.js.map +1 -0
  59. package/dist/utils-Dh5ByFPA.js +138 -0
  60. package/dist/utils-Dh5ByFPA.js.map +1 -0
  61. package/dist/{utils-l0QK_DBo.js → utils-Q-OTPVjq.js} +3 -3
  62. package/dist/{utils-l0QK_DBo.js.map → utils-Q-OTPVjq.js.map} +1 -1
  63. package/dist/utils.js +2 -2
  64. package/dist/v2/Bar.js +26 -42
  65. package/dist/v2/Bar.js.map +1 -1
  66. package/dist/v2/Filters.js +17 -963
  67. package/dist/v2/Filters.js.map +1 -1
  68. package/dist/v2/Segments.js +13 -25
  69. package/dist/v2/Segments.js.map +1 -1
  70. package/dist/v2/index.js +15 -27
  71. package/dist/v2/index.js.map +1 -1
  72. package/dist/v2/utils.js +2 -2
  73. package/package.json +11 -11
  74. package/dist/index-00KCfktU.js.map +0 -1
  75. package/dist/index-4MKjSNsp.js.map +0 -1
  76. package/dist/index-BiqUQPwR.js.map +0 -1
  77. package/dist/index-BzkSk3Jh.js +0 -5
  78. package/dist/index-BzkSk3Jh.js.map +0 -1
  79. package/dist/index-D5wjkRUM.js.map +0 -1
  80. package/dist/index-DX0qF4mf.js +0 -7
  81. package/dist/index-DX0qF4mf.js.map +0 -1
package/dist/.ready CHANGED
@@ -1 +1 @@
1
- Built at 2026-04-15T11:56:48.478Z
1
+ Built at 2026-04-23T17:51:29.063Z
package/dist/Bar.js CHANGED
@@ -6,20 +6,20 @@ import { t } from 'i18next';
6
6
  import { findBy, removeBy, humanize, hyphenate, isPresent, isNotEmpty, noop, findById, isNotPresent } from '@bigbinary/neeto-cist';
7
7
  import { useQueryParams } from '@bigbinary/neeto-commons-frontend/react-utils';
8
8
  import { reject, sortBy, prop, project, modify, has, omit, isEmpty, identity, assoc } from 'ramda';
9
- import { S as SegmentForm } from './index-00KCfktU.js';
10
- import { c as useCreateSegment, b as useUpdateSegment, Q as QUERY_KEYS } from './useSegmentsApi-0Le3BZOo.js';
9
+ import { S as SegmentForm } from './index-BCnobjnZ.js';
10
+ import { c as useCreateSegment, b as useUpdateSegment, Q as QUERY_KEYS } from './useSegmentsApi-C6mffm-a.js';
11
11
  import { dateFormat, dayjs, buildUrl, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/utils';
12
12
  import Button from '@bigbinary/neetoui/Button';
13
13
  import { useTranslation } from 'react-i18next';
14
14
  import { useHistory } from 'react-router-dom';
15
- import { S as SEARCH_TERM_KEY, d as SINGLE_DATE_OPTIONS, e as SINGLE_TIME_OPTIONS } from './constants-8DtAPJaA.js';
15
+ import { S as SEARCH_TERM_KEY, f as SINGLE_DATE_OPTIONS, g as SINGLE_TIME_OPTIONS } from './constants-BaYBNRZa.js';
16
16
  import useHotkeys from '@bigbinary/neeto-hotkeys';
17
17
  import Close from '@bigbinary/neeto-icons/Close';
18
18
  import Tooltip from '@bigbinary/neetoui/Tooltip';
19
19
  import Typography from '@bigbinary/neetoui/Typography';
20
- import { i as isRuleEmpty } from './index-4MKjSNsp.js';
20
+ import { i as isRuleEmpty } from './utils-B3464cET.js';
21
21
  import { S as SHORTCUTS } from './keyboardShortcuts-oiJyIaFr.js';
22
- import { o as isDate, p as isCustomDateRange, q as isTime, r as isCustomTimeRange, s as isMulti, t as isTreeSelect, u as isSingleDate, v as isSingleTime, w as isBoolean, x as getLabelFromBool, y as isText, T as TEXT_RULES, z as isDigit, N as NUMBER_RULES, A as isSingle, j as getSnakeCasedQueryParams, i as isKeywordFilterPresent, f as buildFiltersFromSearchParams, d as buildUrlFromFilters, g as getSearchTermFromUrl, B as buildSegmentsPayload, e as buildUrlFromSegment } from './utils-l0QK_DBo.js';
22
+ import { s as isDate, t as isCustomDateRange, u as isTime, v as isCustomTimeRange, i as isMulti, f as isTreeSelect, w as isSingleDate, x as isSingleTime, y as isBoolean, z as getLabelFromBool, A as isText, T as TEXT_RULES, B as isDigit, N as NUMBER_RULES, C as isSingle, o as getSnakeCasedQueryParams, n as isKeywordFilterPresent, k as buildFiltersFromSearchParams, d as buildUrlFromFilters, l as getSearchTermFromUrl, E as buildSegmentsPayload, e as buildUrlFromSegment } from './utils-Q-OTPVjq.js';
23
23
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
24
24
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
25
25
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
@@ -32,15 +32,17 @@ import '@bigbinary/neetoui/formik/ActionBlock';
32
32
  import '@bigbinary/neetoui/formik/Form';
33
33
  import '@bigbinary/neetoui/formik/Input';
34
34
  import 'react-router-dom/cjs/react-router-dom.min';
35
- import '@bigbinary/neeto-icons/Plus';
35
+ import './index-Cdvbpy-b.js';
36
36
  import '@bigbinary/neetoui/Select';
37
- import 'yup';
38
- import 'axios';
39
- import './dayjs-DNGB9yJD.js';
40
37
  import '@bigbinary/neetoui/DatePicker';
41
38
  import '@bigbinary/neetoui/TimePicker';
42
39
  import '@bigbinary/neetoui/Input';
43
40
  import '@bigbinary/neetoui/TreeSelect';
41
+ import '@bigbinary/neeto-icons/Plus';
42
+ import './utils-CwKBnC3c.js';
43
+ import 'yup';
44
+ import 'axios';
45
+ import './dayjs-DNGB9yJD.js';
44
46
  import '@bigbinary/neeto-icons/Help';
45
47
 
46
48
  var DEFAULT_SEGMENTS_CACHE = {
package/dist/Bar.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Bar.js","sources":["../app/javascript/src/components/Bar/constants.js","../app/javascript/src/components/Bar/utils.js","../app/javascript/src/components/Bar/Block.jsx","../app/javascript/src/components/Bar/ChildBlock.jsx","../app/javascript/src/components/Bar/FilterBar.jsx","../app/javascript/src/components/Bar/hooks/useSegment.js","../app/javascript/src/components/Bar/SegmentBar.jsx","../app/javascript/src/components/Bar/index.jsx"],"sourcesContent":["export const DEFAULT_SEGMENTS_CACHE = { segments: [] };\n\nexport const SEGMENT_ACTIONS = { EDIT: \"edit\", CREATE: \"create\" };\n","import { t } from \"i18next\";\nimport { findBy, humanize, removeBy } from \"neetocist\";\nimport { dateFormat, dayjs } from \"neetocommons/utils\";\nimport { modify, project, prop, reject, sortBy } from \"ramda\";\n\nimport {\n SEARCH_TERM_KEY,\n SINGLE_DATE_OPTIONS,\n SINGLE_TIME_OPTIONS,\n} from \"common/constants\";\nimport { isRuleEmpty } from \"components/Pane/Item/utils\";\n\nimport { NUMBER_RULES, TEXT_RULES } from \"../Pane/Item/constants\";\nimport {\n getLabelFromBool,\n isBoolean,\n isCustomDateRange,\n isCustomTimeRange,\n isDate,\n isDigit,\n isMulti,\n isSingle,\n isSingleDate,\n isSingleTime,\n isText,\n isTime,\n isTreeSelect,\n} from \"../utils\";\n\nconst buildCustomDateValue = value => {\n const isBeforeOrAfter =\n Math.abs(dayjs(value[1]).diff(dayjs(value[0]), \"year\")) >= 90;\n if (isBeforeOrAfter) {\n const currentMoment = dayjs();\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 ? `after-${dateFormat.date(dayjs(value[0]).subtract(1, \"day\"))}`\n : `before-${dateFormat.date(dayjs(value[1]).add(1, \"day\"))}`;\n }\n\n return value.map(dateFormat.date).join(\" - \");\n};\n\nexport const buildFilterValue = filter => {\n const {\n defaultType = filter.type,\n value,\n rule,\n values: initialValues = [],\n } = filter;\n const values = initialValues.map(modify(\"value\", value => value.toString()));\n\n if (isDate(defaultType) && isCustomDateRange(value)) {\n return buildCustomDateValue(value);\n } else if (isTime(defaultType) && isCustomTimeRange(value)) {\n return value.map(dateFormat.time).join(\" - \");\n } else if (isDate(defaultType) || isTime(defaultType)) {\n return humanize(value);\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return value\n .map(value => findBy({ value }, values)?.label || value)\n .join(\", \");\n } else if (isSingleDate(defaultType)) {\n return rule === \"between\"\n ? value.map(dateFormat.date).join(\" - \")\n : dateFormat.date(value);\n } else if (isSingleTime(defaultType)) {\n return rule === \"between\"\n ? value.map(dateFormat.time).join(\" - \")\n : dateFormat.time(value);\n } else if (isBoolean(defaultType)) {\n return getLabelFromBool({ value, values });\n }\n\n return findBy({ value }, values)?.label || value;\n};\n\nexport const buildRuleValue = ({ rule, defaultType }) => {\n try {\n if (isText(defaultType)) {\n return findBy({ value: rule }, TEXT_RULES).label;\n } else if (isDigit(defaultType)) {\n return findBy({ value: rule }, NUMBER_RULES).label;\n } else if (isSingleDate(defaultType)) {\n return findBy({ value: rule }, SINGLE_DATE_OPTIONS).label;\n } else if (isSingleTime(defaultType)) {\n return findBy({ value: rule }, SINGLE_TIME_OPTIONS).label;\n } else if (\n isMulti(defaultType) ||\n isSingle(defaultType) ||\n isTreeSelect(defaultType)\n ) {\n return isRuleEmpty(rule) ? t(\"neetoFilters.rules.isEmpty\") : \"\";\n }\n } catch {\n // This block is to handle the cases where the user modifies the URL and adds an invalid rule.\n }\n\n return \"\";\n};\n\nexport const hasOnlyKeywordFilter = filters =>\n filters.length === 1 && filters[0].key === SEARCH_TERM_KEY;\n\nexport const deepCompare = (segments, filters) => {\n const comparisonHelper = filters =>\n sortBy(\n prop(\"key\"),\n removeBy(\n { key: SEARCH_TERM_KEY },\n project([\"key\", \"rule\", \"value\", \"label\"], filters)\n )\n );\n\n return reject(filters => {\n const segment = findBy({ key: filters.key }, segments);\n\n return segment && segment.value === filters.value;\n }, comparisonHelper(filters));\n};\n","import { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Close } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\n\nimport { isRuleEmpty } from \"components/Pane/Item/utils\";\nimport { SHORTCUTS } from \"src/constants/keyboardShortcuts\";\n\nimport { buildFilterValue, buildRuleValue } from \"./utils\";\n\nconst Block = ({ filter, handleDelete, setIsPaneOpen }) => {\n const { key, defaultType = filter.type, label, rule, defaultValue } = filter;\n const filterValue = buildFilterValue(filter);\n const ruleContent = buildRuleValue({ rule, defaultType });\n const blockLength = label.length + ruleContent.length + filterValue.length;\n const toolTipDisabled = blockLength <= 50;\n const blockContent = !toolTipDisabled\n ? `${filterValue.slice(0, 50 - blockLength)}...`\n : filterValue;\n\n const deleteBlockHotKeyRef = useHotkeys(\n SHORTCUTS.deleteBlock.sequence,\n () => handleDelete(key),\n { mode: \"scoped\" }\n );\n\n const openFilterPaneHotKeyRef = useHotkeys(\n SHORTCUTS.openFilterPane.sequence,\n () => setIsPaneOpen(key),\n { mode: \"scoped\" }\n );\n\n return (\n <Tooltip\n content={filterValue}\n disabled={toolTipDisabled}\n position=\"bottom\"\n theme=\"light\"\n >\n <div\n className=\"neeto-filters-bar__block\"\n data-testid={`neeto-filters-${hyphenate(key)}-block`}\n tabIndex={0}\n ref={node => {\n deleteBlockHotKeyRef.current = node;\n openFilterPaneHotKeyRef.current = node;\n }}\n onClick={() => setIsPaneOpen(key)}\n >\n <Typography style=\"body2\">{label}:</Typography>\n <Typography className=\"neeto-ui-text-gray-500\" style=\"body2\">\n {ruleContent}\n </Typography>\n {!isRuleEmpty(rule) && (\n <Typography style=\"body2\">{blockContent}</Typography>\n )}\n {!defaultValue && (\n <div className=\"neeto-filters-bar__block-close\">\n <Close\n data-testid={`neeto-filters-${hyphenate(key)}-block-close-btn`}\n size={16}\n strokeWidth={2}\n onClick={event => {\n event.stopPropagation();\n handleDelete(key);\n }}\n />\n </div>\n )}\n </div>\n </Tooltip>\n );\n};\n\nexport default Block;\n","import { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Close } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { SHORTCUTS } from \"src/constants/keyboardShortcuts\";\n\nconst ChildBlock = ({ childKey, setIsPaneOpen, handleDelete }) => {\n const deleteBlockHotKeyRef = useHotkeys(\n SHORTCUTS.deleteBlock.sequence,\n () => handleDelete(childKey),\n { mode: \"scoped\" }\n );\n\n const openFilterPaneHotKeyRef = useHotkeys(\n SHORTCUTS.openFilterPane.sequence,\n () => setIsPaneOpen(childKey),\n { mode: \"scoped\" }\n );\n\n return (\n <div\n className=\"neeto-filters-bar__block\"\n data-testid={`neeto-filters-${hyphenate(childKey)}-block`}\n tabIndex={0}\n ref={node => {\n deleteBlockHotKeyRef.current = node;\n openFilterPaneHotKeyRef.current = node;\n }}\n onClick={() => setIsPaneOpen(childKey)}\n >\n <Typography style=\"body2\" weight=\"medium\">\n {childKey}\n </Typography>\n <div className=\"neeto-filters-bar__block-close\">\n <Close\n data-testid={`neeto-filters-${hyphenate(childKey)}-block-close-btn`}\n size={16}\n strokeWidth={2}\n onClick={event => {\n event.stopPropagation();\n handleDelete(childKey);\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default ChildBlock;\n","import { Fragment } from \"react\";\n\nimport { isPresent, removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\nimport { has, 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 Block from \"./Block\";\nimport ChildBlock from \"./ChildBlock\";\nimport { SEGMENT_ACTIONS } from \"./constants\";\nimport { hasOnlyKeywordFilter } from \"./utils\";\n\nimport { getSnakeCasedQueryParams, isKeywordFilterPresent } from \"../utils\";\n\nconst FilterBar = ({\n entity,\n filters,\n setIsSavePaneOpen,\n setIsPaneOpen,\n childrenKeys,\n nonHiddenFilters,\n childrenFiltersApplied,\n keywordFilter,\n handleApplyFilters,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const searchParams = useQueryParams({ toCamelCase: false });\n\n const handleDelete = key => {\n if (key === SEARCH_TERM_KEY) {\n const params = omit([SEARCH_TERM_KEY], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n\n return;\n }\n\n if (childrenKeys.includes(key)) {\n const params = omit([key], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n }\n\n const newFilters = removeBy({ key }, filters);\n handleApplyFilters(newFilters);\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 handleApplyFilters([], true);\n };\n\n const hideClearButton =\n nonHiddenFilters.every(\n ({ defaultValue, isClearable }) => defaultValue && !isClearable\n ) && !childrenFiltersApplied;\n\n return (\n <>\n {nonHiddenFilters.map(filter => (\n <Fragment key={filter.key}>\n <Block {...{ filter, handleDelete, setIsPaneOpen }} />\n {filter.suffixComponent?.()}\n <div className=\"neeto-filters-bar--separator\" />\n </Fragment>\n ))}\n {childrenKeys\n .filter(childKey => has(childKey, searchParams))\n .map(childKey => (\n <Fragment key={childKey}>\n <ChildBlock {...{ childKey, handleDelete, setIsPaneOpen }} />\n <div className=\"neeto-filters-bar--separator\" />\n </Fragment>\n ))}\n <div className=\"flex items-center gap-x-2\">\n {isPresent(entity) && !hasOnlyKeywordFilter(filters) && (\n <Button\n data-testid=\"save-segment-button\"\n label={t(\"neetoFilters.views.saveAsNewView\")}\n style=\"secondary\"\n onClick={() => {\n setIsPaneOpen(false);\n setIsSavePaneOpen({ action: SEGMENT_ACTIONS.CREATE });\n }}\n />\n )}\n {!hideClearButton && (\n <Button\n data-testid=\"neeto-filters-bar-clear-btn\"\n label={t(\"neetoFilters.common.clearFilters\")}\n size=\"small\"\n style=\"secondary\"\n onClick={handleClearAll}\n />\n )}\n </div>\n </>\n );\n};\n\nexport default FilterBar;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport { isNotEmpty, noop, removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { has } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n buildFiltersFromSearchParams,\n buildSegmentsPayload,\n buildUrlFromFilters,\n buildUrlFromSegment,\n getSearchTermFromUrl,\n isKeywordFilterPresent,\n} from \"components/utils\";\nimport {\n useCreateSegment,\n useUpdateSegment,\n} from \"hooks/reactQuery/useSegmentsApi\";\nimport { SEARCH_TERM_KEY } from \"src/common/constants\";\n\nimport { SEGMENT_ACTIONS } from \"../constants\";\n\nconst useSegment = ({\n entity,\n keyword,\n columns,\n childrenKeys,\n segmentsBaseUrl,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n const initialRenderRef = useRef(true);\n const { segmentId } = useQueryParams();\n\n const [isSavePaneOpen, setIsSavePaneOpen] = useState({ action: undefined });\n\n const { mutate: createSegment, isPending: isCreating } = useCreateSegment();\n const { mutate: updateSegment, isPending: isUpdating } = useUpdateSegment();\n const isSubmitting = isCreating || isUpdating;\n\n const searchParams = useQueryParams({ toCamelCase: false });\n const keywordValue = searchParams[SEARCH_TERM_KEY] || \"\";\n const isEdit = isSavePaneOpen.action === SEGMENT_ACTIONS.EDIT;\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: keywordValue,\n };\n\n const filters = buildFiltersFromSearchParams(\n isKeywordFilterPresent(keywordFilter) && isNotEmpty(keywordValue)\n ? [keywordFilter, ...columns]\n : columns\n );\n\n const nonHiddenFilters = removeBy({ hidden: true }, filters);\n\n const handleApplyFilters = (newFilters, isClearAll) => {\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 childrenFiltersApplied = childrenKeys.some(key =>\n has(key, searchParams)\n );\n\n useEffect(() => {\n if (initialRenderRef.current) {\n initialRenderRef.current = false;\n\n return noop;\n }\n\n const handler = setTimeout(() => {\n handleApplyFilters(filters);\n }, 500);\n\n return () => clearTimeout(handler);\n }, [keywordValue]);\n\n const handleCreateSuccess = ({ segment: { id, filters } }) => {\n history.push({\n pathname: segmentsBaseUrl,\n search: buildUrlFromSegment({\n columns,\n filters: filters[0]?.conditions,\n id,\n }),\n });\n setIsSavePaneOpen({ action: undefined });\n showThumbsUpToastr();\n };\n\n const handleCreate = ({ name }, { setFieldError }) => {\n const filtersPayload = buildSegmentsPayload(filters, childrenKeys);\n createSegment(\n { name, entity, filters: filtersPayload },\n {\n onSuccess: handleCreateSuccess,\n onError: error => setFieldError(\"name\", error.response.data.error),\n }\n );\n };\n\n const handleUpdate = ({ name }, { setFieldError }) => {\n const filtersPayload = buildSegmentsPayload(filters, childrenKeys);\n updateSegment(\n { id: segmentId, payload: { name, filters: filtersPayload } },\n {\n onSuccess: () => {\n setIsSavePaneOpen({ action: undefined });\n showThumbsUpToastr();\n },\n onError: error => setFieldError(\"name\", error.response.data.error),\n }\n );\n };\n\n return {\n isEdit,\n filters,\n keywordFilter,\n isSubmitting,\n nonHiddenFilters,\n isSavePaneOpen,\n setIsSavePaneOpen,\n handleApplyFilters,\n childrenFiltersApplied,\n handleSubmit: isEdit ? handleUpdate : handleCreate,\n };\n};\n\nexport default useSegment;\n","import { Fragment } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { findById, isNotEmpty, isNotPresent, removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getSnakeCasedQueryParams } from \"components/utils\";\nimport { SEARCH_TERM_KEY } from \"src/common/constants\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nimport Block from \"./Block\";\nimport { DEFAULT_SEGMENTS_CACHE, SEGMENT_ACTIONS } from \"./constants\";\nimport { deepCompare } from \"./utils\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst SegmentBar = ({\n entity,\n filters,\n setIsSavePaneOpen,\n setIsPaneOpen,\n handleApplyFilters,\n childrenKeys,\n showSegmentName,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n\n const { segmentId } = useQueryParams();\n const queryClient = useQueryClient();\n\n const cachedSegments =\n queryClient.getQueryData([QUERY_KEYS.SEGMENTS_LIST, entity, \"\"]) ||\n DEFAULT_SEGMENTS_CACHE;\n const segment = findById(segmentId, cachedSegments.segments);\n\n if (isNotPresent(segment)) return null;\n\n const handleDelete = key => {\n if (key === SEARCH_TERM_KEY) {\n const params = omit([SEARCH_TERM_KEY], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n\n return;\n }\n\n if (childrenKeys.includes(key)) {\n const params = omit([key], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n }\n\n const newFilters = removeBy({ key }, filters);\n handleApplyFilters(newFilters);\n };\n\n const changedFilters = deepCompare(segment.filters[0].conditions, filters);\n\n return (\n <>\n {showSegmentName && (\n <Typography\n className=\"neeto-ui-text-gray-600 me-4 px-2\"\n data-testid=\"neeto-filters-segment-name\"\n style=\"h4\"\n >\n {segment.name}\n </Typography>\n )}\n {isNotEmpty(changedFilters) && (\n <>\n <Dropdown\n buttonProps={{ className: \"me-2\" }}\n buttonStyle=\"secondary\"\n label={t(\"neetoFilters.views.updateView\")}\n >\n <Menu>\n <MenuItem.Button\n onClick={() =>\n setIsSavePaneOpen({ action: SEGMENT_ACTIONS.EDIT })\n }\n >\n {t(\"neetoFilters.views.updateView\")}\n </MenuItem.Button>\n <MenuItem.Button\n onClick={() => {\n setIsPaneOpen(false);\n setIsSavePaneOpen({ action: SEGMENT_ACTIONS.CREATE });\n }}\n >\n {t(\"neetoFilters.views.saveAsNewView\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n {changedFilters.map(filter => (\n <Fragment key={filter.key}>\n <Block {...{ filter, handleDelete, setIsPaneOpen }} />\n {filter.suffixComponent?.()}\n <div className=\"neeto-filters-bar--separator\" />\n </Fragment>\n ))}\n </>\n )}\n </>\n );\n};\n\nexport default SegmentBar;\n","import { useRef } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport classnames from \"classnames\";\nimport { t } from \"i18next\";\nimport { findById, isPresent, noop } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { assoc, identity, isEmpty } from \"ramda\";\n\nimport SegmentForm from \"src/common/SegmentForm\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nimport { DEFAULT_SEGMENTS_CACHE } from \"./constants\";\nimport FilterBar from \"./FilterBar\";\nimport useSegment from \"./hooks/useSegment\";\nimport SegmentBar from \"./SegmentBar\";\n\nconst Bar = ({\n entity,\n className,\n columns = [],\n segmentHelpPopoverProps,\n keyword = { node: \"\", value: \"\", setValue: noop },\n setIsPaneOpen = identity,\n childrenKeys = [],\n // eslint-disable-next-line @bigbinary/neeto/use-translation-hook-in-components\n defaultSegmentName = t(\"neetoFilters.common.allResults\"),\n segmentsBaseUrl = window.location.pathname,\n customFilters,\n showSegmentName = true,\n}) => {\n const queryClient = useQueryClient();\n const { segmentId } = useQueryParams();\n const segmentFormInitialRef = useRef(null);\n const {\n isEdit,\n filters,\n handleSubmit,\n isSubmitting,\n keywordFilter,\n isSavePaneOpen,\n nonHiddenFilters,\n setIsSavePaneOpen,\n handleApplyFilters,\n childrenFiltersApplied,\n } = useSegment({ entity, keyword, columns, childrenKeys, segmentsBaseUrl });\n\n const BarComponent = segmentId ? SegmentBar : FilterBar;\n\n const cachedSegments =\n queryClient.getQueryData([QUERY_KEYS.SEGMENTS_LIST, entity, \"\"]) ||\n DEFAULT_SEGMENTS_CACHE;\n const segment = findById(segmentId, cachedSegments.segments);\n\n if (isEmpty(nonHiddenFilters) && !childrenFiltersApplied) return null;\n\n return (\n <>\n <div\n className={classnames(\"neeto-filters-bar\", { [className]: className })}\n >\n <BarComponent\n {...{\n childrenFiltersApplied,\n childrenKeys,\n entity,\n filters,\n handleApplyFilters,\n keywordFilter,\n nonHiddenFilters,\n setIsPaneOpen,\n setIsSavePaneOpen,\n showSegmentName,\n }}\n />\n </div>\n <SegmentForm\n {...{\n childrenKeys,\n columns,\n customFilters,\n defaultSegmentName,\n filters,\n handleSubmit,\n isEdit,\n isSubmitting,\n keywordFilter,\n segmentFormInitialRef,\n segmentHelpPopoverProps,\n }}\n isOpen={isPresent(isSavePaneOpen.action)}\n initialValues={\n isEdit\n ? assoc(\"filters\", [{ conditions: filters }], segment)\n : { name: \"\", filters: [{ conditions: filters }] }\n }\n onClose={() => setIsSavePaneOpen({ action: undefined })}\n />\n </>\n );\n};\n\nexport default Bar;\n"],"names":["DEFAULT_SEGMENTS_CACHE","segments","SEGMENT_ACTIONS","EDIT","CREATE","buildCustomDateValue","value","isBeforeOrAfter","Math","abs","dayjs","diff","currentMoment","diffWithStart","diffWithEnd","concat","dateFormat","date","subtract","add","map","join","buildFilterValue","filter","_findBy2","_filter$defaultType","defaultType","type","rule","_filter$values","values","initialValues","modify","toString","isDate","isCustomDateRange","isTime","isCustomTimeRange","time","humanize","isMulti","isTreeSelect","_findBy","findBy","label","isSingleDate","isSingleTime","isBoolean","getLabelFromBool","buildRuleValue","_ref","isText","TEXT_RULES","isDigit","NUMBER_RULES","SINGLE_DATE_OPTIONS","SINGLE_TIME_OPTIONS","isSingle","isRuleEmpty","t","_unused","hasOnlyKeywordFilter","filters","length","key","SEARCH_TERM_KEY","deepCompare","comparisonHelper","sortBy","prop","removeBy","project","reject","segment","Block","handleDelete","setIsPaneOpen","defaultValue","filterValue","ruleContent","blockLength","toolTipDisabled","blockContent","slice","deleteBlockHotKeyRef","useHotkeys","SHORTCUTS","deleteBlock","sequence","mode","openFilterPaneHotKeyRef","openFilterPane","_jsx","Tooltip","content","disabled","position","theme","children","_jsxs","className","hyphenate","tabIndex","ref","node","current","onClick","Typography","style","Close","size","strokeWidth","event","stopPropagation","ChildBlock","childKey","weight","FilterBar","entity","setIsSavePaneOpen","childrenKeys","nonHiddenFilters","childrenFiltersApplied","keywordFilter","handleApplyFilters","_useTranslation","useTranslation","history","useHistory","searchParams","useQueryParams","toCamelCase","params","omit","getSnakeCasedQueryParams","pathname","window","location","push","buildUrl","includes","newFilters","handleClearAll","isKeywordFilterPresent","hideClearButton","every","_ref2","isClearable","_Fragment","_filter$suffixCompone","Fragment","suffixComponent","call","has","isPresent","Button","action","useSegment","keyword","columns","segmentsBaseUrl","initialRenderRef","useRef","_useQueryParams","segmentId","_useState","useState","undefined","_useState2","_slicedToArray","isSavePaneOpen","_useCreateSegment","useCreateSegment","createSegment","mutate","isCreating","isPending","_useUpdateSegment","useUpdateSegment","updateSegment","isUpdating","isSubmitting","keywordValue","isEdit","_objectSpread","buildFiltersFromSearchParams","isNotEmpty","_toConsumableArray","hidden","isClearAll","buildUrlFromFilters","getSearchTermFromUrl","search","some","useEffect","noop","handler","setTimeout","clearTimeout","handleCreateSuccess","_filters$","_ref2$segment","id","buildUrlFromSegment","conditions","showThumbsUpToastr","handleCreate","_ref3","_ref4","name","setFieldError","filtersPayload","buildSegmentsPayload","onSuccess","onError","error","response","data","handleUpdate","_ref5","_ref6","payload","handleSubmit","Menu","Dropdown","MenuItem","SegmentBar","showSegmentName","queryClient","useQueryClient","cachedSegments","getQueryData","QUERY_KEYS","SEGMENTS_LIST","findById","isNotPresent","changedFilters","buttonProps","buttonStyle","Bar","_ref$columns","segmentHelpPopoverProps","_ref$keyword","setValue","_ref$setIsPaneOpen","identity","_ref$childrenKeys","_ref$defaultSegmentNa","defaultSegmentName","_ref$segmentsBaseUrl","customFilters","_ref$showSegmentName","segmentFormInitialRef","_useSegment","BarComponent","isEmpty","classnames","_defineProperty","SegmentForm","isOpen","assoc","onClose"],"mappings":"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"}
1
+ {"version":3,"file":"Bar.js","sources":["../app/javascript/src/components/Bar/constants.js","../app/javascript/src/components/Bar/utils.js","../app/javascript/src/components/Bar/Block.jsx","../app/javascript/src/components/Bar/ChildBlock.jsx","../app/javascript/src/components/Bar/FilterBar.jsx","../app/javascript/src/components/Bar/hooks/useSegment.js","../app/javascript/src/components/Bar/SegmentBar.jsx","../app/javascript/src/components/Bar/index.jsx"],"sourcesContent":["export const DEFAULT_SEGMENTS_CACHE = { segments: [] };\n\nexport const SEGMENT_ACTIONS = { EDIT: \"edit\", CREATE: \"create\" };\n","import { t } from \"i18next\";\nimport { findBy, humanize, removeBy } from \"neetocist\";\nimport { dateFormat, dayjs } from \"neetocommons/utils\";\nimport { modify, project, prop, reject, sortBy } from \"ramda\";\n\nimport {\n SEARCH_TERM_KEY,\n SINGLE_DATE_OPTIONS,\n SINGLE_TIME_OPTIONS,\n} from \"common/constants\";\nimport { isRuleEmpty } from \"components/Pane/Item/utils\";\n\nimport { NUMBER_RULES, TEXT_RULES } from \"../Pane/Item/constants\";\nimport {\n getLabelFromBool,\n isBoolean,\n isCustomDateRange,\n isCustomTimeRange,\n isDate,\n isDigit,\n isMulti,\n isSingle,\n isSingleDate,\n isSingleTime,\n isText,\n isTime,\n isTreeSelect,\n} from \"../utils\";\n\nconst buildCustomDateValue = value => {\n const isBeforeOrAfter =\n Math.abs(dayjs(value[1]).diff(dayjs(value[0]), \"year\")) >= 90;\n if (isBeforeOrAfter) {\n const currentMoment = dayjs();\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 ? `after-${dateFormat.date(dayjs(value[0]).subtract(1, \"day\"))}`\n : `before-${dateFormat.date(dayjs(value[1]).add(1, \"day\"))}`;\n }\n\n return value.map(dateFormat.date).join(\" - \");\n};\n\nexport const buildFilterValue = filter => {\n const {\n defaultType = filter.type,\n value,\n rule,\n values: initialValues = [],\n } = filter;\n const values = initialValues.map(modify(\"value\", value => value.toString()));\n\n if (isDate(defaultType) && isCustomDateRange(value)) {\n return buildCustomDateValue(value);\n } else if (isTime(defaultType) && isCustomTimeRange(value)) {\n return value.map(dateFormat.time).join(\" - \");\n } else if (isDate(defaultType) || isTime(defaultType)) {\n return humanize(value);\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return value\n .map(value => findBy({ value }, values)?.label || value)\n .join(\", \");\n } else if (isSingleDate(defaultType)) {\n return rule === \"between\"\n ? value.map(dateFormat.date).join(\" - \")\n : dateFormat.date(value);\n } else if (isSingleTime(defaultType)) {\n return rule === \"between\"\n ? value.map(dateFormat.time).join(\" - \")\n : dateFormat.time(value);\n } else if (isBoolean(defaultType)) {\n return getLabelFromBool({ value, values });\n }\n\n return findBy({ value }, values)?.label || value;\n};\n\nexport const buildRuleValue = ({ rule, defaultType }) => {\n try {\n if (isText(defaultType)) {\n return findBy({ value: rule }, TEXT_RULES).label;\n } else if (isDigit(defaultType)) {\n return findBy({ value: rule }, NUMBER_RULES).label;\n } else if (isSingleDate(defaultType)) {\n return findBy({ value: rule }, SINGLE_DATE_OPTIONS).label;\n } else if (isSingleTime(defaultType)) {\n return findBy({ value: rule }, SINGLE_TIME_OPTIONS).label;\n } else if (\n isMulti(defaultType) ||\n isSingle(defaultType) ||\n isTreeSelect(defaultType)\n ) {\n return isRuleEmpty(rule) ? t(\"neetoFilters.rules.isEmpty\") : \"\";\n }\n } catch {\n // This block is to handle the cases where the user modifies the URL and adds an invalid rule.\n }\n\n return \"\";\n};\n\nexport const hasOnlyKeywordFilter = filters =>\n filters.length === 1 && filters[0].key === SEARCH_TERM_KEY;\n\nexport const deepCompare = (segments, filters) => {\n const comparisonHelper = filters =>\n sortBy(\n prop(\"key\"),\n removeBy(\n { key: SEARCH_TERM_KEY },\n project([\"key\", \"rule\", \"value\", \"label\"], filters)\n )\n );\n\n return reject(filters => {\n const segment = findBy({ key: filters.key }, segments);\n\n return segment && segment.value === filters.value;\n }, comparisonHelper(filters));\n};\n","import { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Close } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\n\nimport { isRuleEmpty } from \"components/Pane/Item/utils\";\nimport { SHORTCUTS } from \"src/constants/keyboardShortcuts\";\n\nimport { buildFilterValue, buildRuleValue } from \"./utils\";\n\nconst Block = ({ filter, handleDelete, setIsPaneOpen }) => {\n const { key, defaultType = filter.type, label, rule, defaultValue } = filter;\n const filterValue = buildFilterValue(filter);\n const ruleContent = buildRuleValue({ rule, defaultType });\n const blockLength = label.length + ruleContent.length + filterValue.length;\n const toolTipDisabled = blockLength <= 50;\n const blockContent = !toolTipDisabled\n ? `${filterValue.slice(0, 50 - blockLength)}...`\n : filterValue;\n\n const deleteBlockHotKeyRef = useHotkeys(\n SHORTCUTS.deleteBlock.sequence,\n () => handleDelete(key),\n { mode: \"scoped\" }\n );\n\n const openFilterPaneHotKeyRef = useHotkeys(\n SHORTCUTS.openFilterPane.sequence,\n () => setIsPaneOpen(key),\n { mode: \"scoped\" }\n );\n\n return (\n <Tooltip\n content={filterValue}\n disabled={toolTipDisabled}\n position=\"bottom\"\n theme=\"light\"\n >\n <div\n className=\"neeto-filters-bar__block\"\n data-testid={`neeto-filters-${hyphenate(key)}-block`}\n tabIndex={0}\n ref={node => {\n deleteBlockHotKeyRef.current = node;\n openFilterPaneHotKeyRef.current = node;\n }}\n onClick={() => setIsPaneOpen(key)}\n >\n <Typography style=\"body2\">{label}:</Typography>\n <Typography className=\"neeto-ui-text-gray-500\" style=\"body2\">\n {ruleContent}\n </Typography>\n {!isRuleEmpty(rule) && (\n <Typography style=\"body2\">{blockContent}</Typography>\n )}\n {!defaultValue && (\n <div className=\"neeto-filters-bar__block-close\">\n <Close\n data-testid={`neeto-filters-${hyphenate(key)}-block-close-btn`}\n size={16}\n strokeWidth={2}\n onClick={event => {\n event.stopPropagation();\n handleDelete(key);\n }}\n />\n </div>\n )}\n </div>\n </Tooltip>\n );\n};\n\nexport default Block;\n","import { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Close } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { SHORTCUTS } from \"src/constants/keyboardShortcuts\";\n\nconst ChildBlock = ({ childKey, setIsPaneOpen, handleDelete }) => {\n const deleteBlockHotKeyRef = useHotkeys(\n SHORTCUTS.deleteBlock.sequence,\n () => handleDelete(childKey),\n { mode: \"scoped\" }\n );\n\n const openFilterPaneHotKeyRef = useHotkeys(\n SHORTCUTS.openFilterPane.sequence,\n () => setIsPaneOpen(childKey),\n { mode: \"scoped\" }\n );\n\n return (\n <div\n className=\"neeto-filters-bar__block\"\n data-testid={`neeto-filters-${hyphenate(childKey)}-block`}\n tabIndex={0}\n ref={node => {\n deleteBlockHotKeyRef.current = node;\n openFilterPaneHotKeyRef.current = node;\n }}\n onClick={() => setIsPaneOpen(childKey)}\n >\n <Typography style=\"body2\" weight=\"medium\">\n {childKey}\n </Typography>\n <div className=\"neeto-filters-bar__block-close\">\n <Close\n data-testid={`neeto-filters-${hyphenate(childKey)}-block-close-btn`}\n size={16}\n strokeWidth={2}\n onClick={event => {\n event.stopPropagation();\n handleDelete(childKey);\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default ChildBlock;\n","import { Fragment } from \"react\";\n\nimport { isPresent, removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\nimport { has, 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 Block from \"./Block\";\nimport ChildBlock from \"./ChildBlock\";\nimport { SEGMENT_ACTIONS } from \"./constants\";\nimport { hasOnlyKeywordFilter } from \"./utils\";\n\nimport { getSnakeCasedQueryParams, isKeywordFilterPresent } from \"../utils\";\n\nconst FilterBar = ({\n entity,\n filters,\n setIsSavePaneOpen,\n setIsPaneOpen,\n childrenKeys,\n nonHiddenFilters,\n childrenFiltersApplied,\n keywordFilter,\n handleApplyFilters,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const searchParams = useQueryParams({ toCamelCase: false });\n\n const handleDelete = key => {\n if (key === SEARCH_TERM_KEY) {\n const params = omit([SEARCH_TERM_KEY], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n\n return;\n }\n\n if (childrenKeys.includes(key)) {\n const params = omit([key], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n }\n\n const newFilters = removeBy({ key }, filters);\n handleApplyFilters(newFilters);\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 handleApplyFilters([], true);\n };\n\n const hideClearButton =\n nonHiddenFilters.every(\n ({ defaultValue, isClearable }) => defaultValue && !isClearable\n ) && !childrenFiltersApplied;\n\n return (\n <>\n {nonHiddenFilters.map(filter => (\n <Fragment key={filter.key}>\n <Block {...{ filter, handleDelete, setIsPaneOpen }} />\n {filter.suffixComponent?.()}\n <div className=\"neeto-filters-bar--separator\" />\n </Fragment>\n ))}\n {childrenKeys\n .filter(childKey => has(childKey, searchParams))\n .map(childKey => (\n <Fragment key={childKey}>\n <ChildBlock {...{ childKey, handleDelete, setIsPaneOpen }} />\n <div className=\"neeto-filters-bar--separator\" />\n </Fragment>\n ))}\n <div className=\"flex items-center gap-x-2\">\n {isPresent(entity) && !hasOnlyKeywordFilter(filters) && (\n <Button\n data-testid=\"save-segment-button\"\n label={t(\"neetoFilters.views.saveAsNewView\")}\n style=\"secondary\"\n onClick={() => {\n setIsPaneOpen(false);\n setIsSavePaneOpen({ action: SEGMENT_ACTIONS.CREATE });\n }}\n />\n )}\n {!hideClearButton && (\n <Button\n data-testid=\"neeto-filters-bar-clear-btn\"\n label={t(\"neetoFilters.common.clearFilters\")}\n size=\"small\"\n style=\"secondary\"\n onClick={handleClearAll}\n />\n )}\n </div>\n </>\n );\n};\n\nexport default FilterBar;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport { isNotEmpty, noop, removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { has } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n buildFiltersFromSearchParams,\n buildSegmentsPayload,\n buildUrlFromFilters,\n buildUrlFromSegment,\n getSearchTermFromUrl,\n isKeywordFilterPresent,\n} from \"components/utils\";\nimport {\n useCreateSegment,\n useUpdateSegment,\n} from \"hooks/reactQuery/useSegmentsApi\";\nimport { SEARCH_TERM_KEY } from \"src/common/constants\";\n\nimport { SEGMENT_ACTIONS } from \"../constants\";\n\nconst useSegment = ({\n entity,\n keyword,\n columns,\n childrenKeys,\n segmentsBaseUrl,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n const initialRenderRef = useRef(true);\n const { segmentId } = useQueryParams();\n\n const [isSavePaneOpen, setIsSavePaneOpen] = useState({ action: undefined });\n\n const { mutate: createSegment, isPending: isCreating } = useCreateSegment();\n const { mutate: updateSegment, isPending: isUpdating } = useUpdateSegment();\n const isSubmitting = isCreating || isUpdating;\n\n const searchParams = useQueryParams({ toCamelCase: false });\n const keywordValue = searchParams[SEARCH_TERM_KEY] || \"\";\n const isEdit = isSavePaneOpen.action === SEGMENT_ACTIONS.EDIT;\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: keywordValue,\n };\n\n const filters = buildFiltersFromSearchParams(\n isKeywordFilterPresent(keywordFilter) && isNotEmpty(keywordValue)\n ? [keywordFilter, ...columns]\n : columns\n );\n\n const nonHiddenFilters = removeBy({ hidden: true }, filters);\n\n const handleApplyFilters = (newFilters, isClearAll) => {\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 childrenFiltersApplied = childrenKeys.some(key =>\n has(key, searchParams)\n );\n\n useEffect(() => {\n if (initialRenderRef.current) {\n initialRenderRef.current = false;\n\n return noop;\n }\n\n const handler = setTimeout(() => {\n handleApplyFilters(filters);\n }, 500);\n\n return () => clearTimeout(handler);\n }, [keywordValue]);\n\n const handleCreateSuccess = ({ segment: { id, filters } }) => {\n history.push({\n pathname: segmentsBaseUrl,\n search: buildUrlFromSegment({\n columns,\n filters: filters[0]?.conditions,\n id,\n }),\n });\n setIsSavePaneOpen({ action: undefined });\n showThumbsUpToastr();\n };\n\n const handleCreate = ({ name }, { setFieldError }) => {\n const filtersPayload = buildSegmentsPayload(filters, childrenKeys);\n createSegment(\n { name, entity, filters: filtersPayload },\n {\n onSuccess: handleCreateSuccess,\n onError: error => setFieldError(\"name\", error.response.data.error),\n }\n );\n };\n\n const handleUpdate = ({ name }, { setFieldError }) => {\n const filtersPayload = buildSegmentsPayload(filters, childrenKeys);\n updateSegment(\n { id: segmentId, payload: { name, filters: filtersPayload } },\n {\n onSuccess: () => {\n setIsSavePaneOpen({ action: undefined });\n showThumbsUpToastr();\n },\n onError: error => setFieldError(\"name\", error.response.data.error),\n }\n );\n };\n\n return {\n isEdit,\n filters,\n keywordFilter,\n isSubmitting,\n nonHiddenFilters,\n isSavePaneOpen,\n setIsSavePaneOpen,\n handleApplyFilters,\n childrenFiltersApplied,\n handleSubmit: isEdit ? handleUpdate : handleCreate,\n };\n};\n\nexport default useSegment;\n","import { Fragment } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { findById, isNotEmpty, isNotPresent, removeBy } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getSnakeCasedQueryParams } from \"components/utils\";\nimport { SEARCH_TERM_KEY } from \"src/common/constants\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nimport Block from \"./Block\";\nimport { DEFAULT_SEGMENTS_CACHE, SEGMENT_ACTIONS } from \"./constants\";\nimport { deepCompare } from \"./utils\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst SegmentBar = ({\n entity,\n filters,\n setIsSavePaneOpen,\n setIsPaneOpen,\n handleApplyFilters,\n childrenKeys,\n showSegmentName,\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n\n const { segmentId } = useQueryParams();\n const queryClient = useQueryClient();\n\n const cachedSegments =\n queryClient.getQueryData([QUERY_KEYS.SEGMENTS_LIST, entity, \"\"]) ||\n DEFAULT_SEGMENTS_CACHE;\n const segment = findById(segmentId, cachedSegments.segments);\n\n if (isNotPresent(segment)) return null;\n\n const handleDelete = key => {\n if (key === SEARCH_TERM_KEY) {\n const params = omit([SEARCH_TERM_KEY], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n\n return;\n }\n\n if (childrenKeys.includes(key)) {\n const params = omit([key], getSnakeCasedQueryParams());\n const pathname = window.location.pathname;\n history.push(buildUrl(pathname, params));\n }\n\n const newFilters = removeBy({ key }, filters);\n handleApplyFilters(newFilters);\n };\n\n const changedFilters = deepCompare(segment.filters[0].conditions, filters);\n\n return (\n <>\n {showSegmentName && (\n <Typography\n className=\"neeto-ui-text-gray-600 me-4 px-2\"\n data-testid=\"neeto-filters-segment-name\"\n style=\"h4\"\n >\n {segment.name}\n </Typography>\n )}\n {isNotEmpty(changedFilters) && (\n <>\n <Dropdown\n buttonProps={{ className: \"me-2\" }}\n buttonStyle=\"secondary\"\n label={t(\"neetoFilters.views.updateView\")}\n >\n <Menu>\n <MenuItem.Button\n onClick={() =>\n setIsSavePaneOpen({ action: SEGMENT_ACTIONS.EDIT })\n }\n >\n {t(\"neetoFilters.views.updateView\")}\n </MenuItem.Button>\n <MenuItem.Button\n onClick={() => {\n setIsPaneOpen(false);\n setIsSavePaneOpen({ action: SEGMENT_ACTIONS.CREATE });\n }}\n >\n {t(\"neetoFilters.views.saveAsNewView\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n {changedFilters.map(filter => (\n <Fragment key={filter.key}>\n <Block {...{ filter, handleDelete, setIsPaneOpen }} />\n {filter.suffixComponent?.()}\n <div className=\"neeto-filters-bar--separator\" />\n </Fragment>\n ))}\n </>\n )}\n </>\n );\n};\n\nexport default SegmentBar;\n","import { useRef } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport classnames from \"classnames\";\nimport { t } from \"i18next\";\nimport { findById, isPresent, noop } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { assoc, identity, isEmpty } from \"ramda\";\n\nimport SegmentForm from \"src/common/SegmentForm\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nimport { DEFAULT_SEGMENTS_CACHE } from \"./constants\";\nimport FilterBar from \"./FilterBar\";\nimport useSegment from \"./hooks/useSegment\";\nimport SegmentBar from \"./SegmentBar\";\n\nconst Bar = ({\n entity,\n className,\n columns = [],\n segmentHelpPopoverProps,\n keyword = { node: \"\", value: \"\", setValue: noop },\n setIsPaneOpen = identity,\n childrenKeys = [],\n // eslint-disable-next-line @bigbinary/neeto/use-translation-hook-in-components\n defaultSegmentName = t(\"neetoFilters.common.allResults\"),\n segmentsBaseUrl = window.location.pathname,\n customFilters,\n showSegmentName = true,\n}) => {\n const queryClient = useQueryClient();\n const { segmentId } = useQueryParams();\n const segmentFormInitialRef = useRef(null);\n const {\n isEdit,\n filters,\n handleSubmit,\n isSubmitting,\n keywordFilter,\n isSavePaneOpen,\n nonHiddenFilters,\n setIsSavePaneOpen,\n handleApplyFilters,\n childrenFiltersApplied,\n } = useSegment({ entity, keyword, columns, childrenKeys, segmentsBaseUrl });\n\n const BarComponent = segmentId ? SegmentBar : FilterBar;\n\n const cachedSegments =\n queryClient.getQueryData([QUERY_KEYS.SEGMENTS_LIST, entity, \"\"]) ||\n DEFAULT_SEGMENTS_CACHE;\n const segment = findById(segmentId, cachedSegments.segments);\n\n if (isEmpty(nonHiddenFilters) && !childrenFiltersApplied) return null;\n\n return (\n <>\n <div\n className={classnames(\"neeto-filters-bar\", { [className]: className })}\n >\n <BarComponent\n {...{\n childrenFiltersApplied,\n childrenKeys,\n entity,\n filters,\n handleApplyFilters,\n keywordFilter,\n nonHiddenFilters,\n setIsPaneOpen,\n setIsSavePaneOpen,\n showSegmentName,\n }}\n />\n </div>\n <SegmentForm\n {...{\n childrenKeys,\n columns,\n customFilters,\n defaultSegmentName,\n filters,\n handleSubmit,\n isEdit,\n isSubmitting,\n keywordFilter,\n segmentFormInitialRef,\n segmentHelpPopoverProps,\n }}\n isOpen={isPresent(isSavePaneOpen.action)}\n initialValues={\n isEdit\n ? assoc(\"filters\", [{ conditions: filters }], segment)\n : { name: \"\", filters: [{ conditions: filters }] }\n }\n onClose={() => setIsSavePaneOpen({ action: undefined })}\n />\n </>\n );\n};\n\nexport default Bar;\n"],"names":["DEFAULT_SEGMENTS_CACHE","segments","SEGMENT_ACTIONS","EDIT","CREATE","buildCustomDateValue","value","isBeforeOrAfter","Math","abs","dayjs","diff","currentMoment","diffWithStart","diffWithEnd","concat","dateFormat","date","subtract","add","map","join","buildFilterValue","filter","_findBy2","_filter$defaultType","defaultType","type","rule","_filter$values","values","initialValues","modify","toString","isDate","isCustomDateRange","isTime","isCustomTimeRange","time","humanize","isMulti","isTreeSelect","_findBy","findBy","label","isSingleDate","isSingleTime","isBoolean","getLabelFromBool","buildRuleValue","_ref","isText","TEXT_RULES","isDigit","NUMBER_RULES","SINGLE_DATE_OPTIONS","SINGLE_TIME_OPTIONS","isSingle","isRuleEmpty","t","_unused","hasOnlyKeywordFilter","filters","length","key","SEARCH_TERM_KEY","deepCompare","comparisonHelper","sortBy","prop","removeBy","project","reject","segment","Block","handleDelete","setIsPaneOpen","defaultValue","filterValue","ruleContent","blockLength","toolTipDisabled","blockContent","slice","deleteBlockHotKeyRef","useHotkeys","SHORTCUTS","deleteBlock","sequence","mode","openFilterPaneHotKeyRef","openFilterPane","_jsx","Tooltip","content","disabled","position","theme","children","_jsxs","className","hyphenate","tabIndex","ref","node","current","onClick","Typography","style","Close","size","strokeWidth","event","stopPropagation","ChildBlock","childKey","weight","FilterBar","entity","setIsSavePaneOpen","childrenKeys","nonHiddenFilters","childrenFiltersApplied","keywordFilter","handleApplyFilters","_useTranslation","useTranslation","history","useHistory","searchParams","useQueryParams","toCamelCase","params","omit","getSnakeCasedQueryParams","pathname","window","location","push","buildUrl","includes","newFilters","handleClearAll","isKeywordFilterPresent","hideClearButton","every","_ref2","isClearable","_Fragment","_filter$suffixCompone","Fragment","suffixComponent","call","has","isPresent","Button","action","useSegment","keyword","columns","segmentsBaseUrl","initialRenderRef","useRef","_useQueryParams","segmentId","_useState","useState","undefined","_useState2","_slicedToArray","isSavePaneOpen","_useCreateSegment","useCreateSegment","createSegment","mutate","isCreating","isPending","_useUpdateSegment","useUpdateSegment","updateSegment","isUpdating","isSubmitting","keywordValue","isEdit","_objectSpread","buildFiltersFromSearchParams","isNotEmpty","_toConsumableArray","hidden","isClearAll","buildUrlFromFilters","getSearchTermFromUrl","search","some","useEffect","noop","handler","setTimeout","clearTimeout","handleCreateSuccess","_filters$","_ref2$segment","id","buildUrlFromSegment","conditions","showThumbsUpToastr","handleCreate","_ref3","_ref4","name","setFieldError","filtersPayload","buildSegmentsPayload","onSuccess","onError","error","response","data","handleUpdate","_ref5","_ref6","payload","handleSubmit","Menu","Dropdown","MenuItem","SegmentBar","showSegmentName","queryClient","useQueryClient","cachedSegments","getQueryData","QUERY_KEYS","SEGMENTS_LIST","findById","isNotPresent","changedFilters","buttonProps","buttonStyle","Bar","_ref$columns","segmentHelpPopoverProps","_ref$keyword","setValue","_ref$setIsPaneOpen","identity","_ref$childrenKeys","_ref$defaultSegmentNa","defaultSegmentName","_ref$segmentsBaseUrl","customFilters","_ref$showSegmentName","segmentFormInitialRef","_useSegment","BarComponent","isEmpty","classnames","_defineProperty","SegmentForm","isOpen","assoc","onClose"],"mappings":"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"}
package/dist/Filters.js CHANGED
@@ -15,15 +15,16 @@ import Typography from '@bigbinary/neetoui/Typography';
15
15
  import NeetoUIPane from '@bigbinary/neetoui/Pane';
16
16
  import { useTranslation } from 'react-i18next';
17
17
  import { useLocation, useHistory } from 'react-router-dom';
18
- import { S as SEARCH_TERM_KEY } from './constants-8DtAPJaA.js';
19
- import { f as buildFiltersFromSearchParams, g as getSearchTermFromUrl, h as buildDefaultFilters, d as buildUrlFromFilters, i as isKeywordFilterPresent, j as getSnakeCasedQueryParams, k as compareFilters, c as buildSelectorsFromURL, l as buildFiltersPayload, m as getColumnsWithStandardizedType, n as buildFilteredColumns } from './utils-l0QK_DBo.js';
20
- import { I as Item } from './index-4MKjSNsp.js';
18
+ import { S as SEARCH_TERM_KEY } from './constants-BaYBNRZa.js';
19
+ import { k as buildFiltersFromSearchParams, l as getSearchTermFromUrl, m as buildDefaultFilters, d as buildUrlFromFilters, n as isKeywordFilterPresent, o as getSnakeCasedQueryParams, p as compareFilters, c as buildSelectorsFromURL, q as buildFiltersPayload, r as getColumnsWithStandardizedType, j as buildFilteredColumns } from './utils-Q-OTPVjq.js';
20
+ import { I as Item } from './index-Cdvbpy-b.js';
21
21
  import { jsxs, jsx } from 'react/jsx-runtime';
22
- import './index-BzkSk3Jh.js';
22
+ import { n } from './inject-css-C2dztUxs.js';
23
23
  import 'i18next';
24
24
  import './dayjs-DNGB9yJD.js';
25
25
  import '@bigbinary/neeto-icons/Help';
26
26
  import '@bigbinary/neetoui/Select';
27
+ import './utils-B3464cET.js';
27
28
  import '@bigbinary/neetoui/DatePicker';
28
29
  import '@bigbinary/neetoui/TimePicker';
29
30
  import '@bigbinary/neetoui/Input';
@@ -276,6 +277,9 @@ var Pane = function Pane(_ref) {
276
277
  }));
277
278
  };
278
279
 
280
+ var css = ".neeto-filters-bar{align-items:center;display:flex;flex-wrap:wrap;margin-bottom:1rem}.neeto-filters-bar__block{border-radius:var(--neeto-ui-rounded);display:flex;gap:.25rem;margin:.25rem 0;max-width:384px;overflow:hidden;padding:.25rem .5rem;position:relative;transition:var(--neeto-ui-transition);white-space:nowrap}.neeto-filters-bar__block-close{background-image:linear-gradient(90deg,rgba(var(--neeto-ui-gray-200),.5) 0,rgba(var(--neeto-ui-gray-200),1) 25%);color:rgb(var(--neeto-ui-gray-800));inset-inline-end:0;opacity:0;padding:.5rem;position:absolute;top:0;transition:var(--neeto-ui-transition)}.neeto-filters-bar__block:active,.neeto-filters-bar__block:hover{background-color:rgb(var(--neeto-ui-gray-200));cursor:pointer}.neeto-filters-bar__block:active .neeto-filters-bar__block-close,.neeto-filters-bar__block:hover .neeto-filters-bar__block-close{border-radius:var(--neeto-ui-rounded);color:rgb(var(--neeto-ui-black));opacity:1}.neeto-filters-bar__block:focus{box-shadow:0 0 0 3px rgba(var(--neeto-ui-gray-800),15%);outline:none}.neeto-filters-bar--separator{align-self:stretch;border-inline-start:1px solid rgb(var(--neeto-ui-gray-400));margin:.75rem .5rem}.neeto-filters-segment--active{border-color:rgb(var(--neeto-ui-primary-500))!important;box-shadow:0 0 0 1px rgb(var(--neeto-ui-primary-500))!important}.neeto-filters-pane-filter{overflow:visible;width:360px}.neeto-filters-pane-filter__body{align-items:stretch!important;gap:1.25rem;padding-bottom:20rem!important}.neeto-filters-pane-filter__body>*{flex-grow:0!important}.neeto-filters-pane-filter__body p{text-align:center}.neeto-filters-pane-filter__body .neeto-filters-pane-filter__item-wrapper{display:flex;flex:1;flex-direction:column;gap:.5rem}.neeto-filters-pane-filter__body .accordion_item .neeto-filters-pane-filter__item-wrapper{flex:1;margin-top:1rem}.neeto-filters-pane-filter__body .accordion_item .neeto-filters-pane-filter__item-wrapper:first-of-type{margin-top:0}.neeto-filters-pane-filter__body .accordion_item:first-of-type .neeto-ui-accordion__item{padding-top:0}.neeto-filters-pane-filter__body .neeto-ui-accordion__wrapper--last-item{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}@media screen and (max-width:767px){.neeto-filters-pane-filter{width:100vw}}.neeto-filters-pane-backdrop{backdrop-filter:blur(0)!important;background-color:rgba(var(--neeto-ui-gray-700),.2)}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL2Jhci5jc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9zZWdtZW50cy5jc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9maWx0ZXJzLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQkFHRSxrQkFBbUIsQ0FGbkIsWUFBYSxDQUNiLGNBQWUsQ0FFZixrQkFDRixDQUVBLDBCQUtFLHFDQUFzQyxDQUh0QyxZQUFhLENBRWIsVUFBWSxDQUdaLGVBQWlCLENBQ2pCLGVBQWdCLENBRWhCLGVBQWdCLENBVGhCLG9CQUF1QixDQUV2QixpQkFBa0IsQ0FHbEIscUNBQXNDLENBR3RDLGtCQUVGLENBRUEsZ0NBUUUsZ0hBRTBDLENBSjFDLG1DQUFvQyxDQUhwQyxrQkFBbUIsQ0FFbkIsU0FBVSxDQURWLGFBQWUsQ0FIZixpQkFBa0IsQ0FDbEIsS0FBTSxDQUtOLHFDQUlGLENBRUEsaUVBRUUsOENBQStDLENBQy9DLGNBQ0YsQ0FFQSxpSUFJRSxxQ0FBc0MsQ0FEdEMsZ0NBQWlDLENBRGpDLFNBR0YsQ0FFQSxnQ0FFRSx1REFBeUQsQ0FEekQsWUFFRixDQUVBLDhCQUdFLGtCQUFtQixDQUZuQiwyREFBNEQsQ0FDNUQsbUJBRUYsQ0N2REEsK0JBQ0UsdURBQXlELENBQ3pELCtEQUNGLENDSEEsMkJBRUUsZ0JBQWlCLENBRGpCLFdBRUYsQ0FFQSxpQ0FDRSw2QkFBK0IsQ0FDL0IsV0FBWSxDQUNaLDhCQUNGLENBRUEsbUNBQ0UscUJBQ0YsQ0FFQSxtQ0FDRSxpQkFDRixDQUVBLDBFQUNFLFlBQWEsQ0FHYixNQUFPLENBRlAscUJBQXNCLENBQ3RCLFNBRUYsQ0FFQSwwRkFFRSxNQUFPLENBRFAsZUFFRixDQUVBLHdHQUNFLFlBQ0YsQ0FFQSx5RkFDRSxhQUNGLENBRUEseUVBQ0Usc0RBQ0YsQ0FFQSxvQ0FDRSwyQkFDRSxXQUNGLENBQ0YsQ0FFQSw2QkFDRSxpQ0FBcUMsQ0FDckMsa0RBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIubmVldG8tZmlsdGVycy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5uZWV0by1maWx0ZXJzLWJhcl9fYmxvY2sge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBnYXA6IDAuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1uZWV0by11aS10cmFuc2l0aW9uKTtcbiAgbWFyZ2luOiAwLjI1cmVtIDA7XG4gIG1heC13aWR0aDogMzg0cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5uZWV0by1maWx0ZXJzLWJhcl9fYmxvY2stY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgaW5zZXQtaW5saW5lLWVuZDogMDtcbiAgcGFkZGluZzogMC41cmVtO1xuICBvcGFjaXR5OiAwO1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktODAwKSk7XG4gIHRyYW5zaXRpb246IHZhcigtLW5lZXRvLXVpLXRyYW5zaXRpb24pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsXG4gICAgICByZ2JhKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSwgMC41KSAwJSxcbiAgICAgIHJnYmEodmFyKC0tbmVldG8tdWktZ3JheS0yMDApLCAxKSAyNSUpO1xufVxuXG4ubmVldG8tZmlsdGVycy1iYXJfX2Jsb2NrOmhvdmVyLFxuLm5lZXRvLWZpbHRlcnMtYmFyX19ibG9jazphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0yMDApKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubmVldG8tZmlsdGVycy1iYXJfX2Jsb2NrOmhvdmVyIC5uZWV0by1maWx0ZXJzLWJhcl9fYmxvY2stY2xvc2UsXG4ubmVldG8tZmlsdGVycy1iYXJfX2Jsb2NrOmFjdGl2ZSAubmVldG8tZmlsdGVycy1iYXJfX2Jsb2NrLWNsb3NlIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ibGFjaykpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1uZWV0by11aS1yb3VuZGVkKTtcbn1cblxuLm5lZXRvLWZpbHRlcnMtYmFyX19ibG9jazpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKHZhcigtLW5lZXRvLXVpLWdyYXktODAwKSwgMTUlKTtcbn1cblxuLm5lZXRvLWZpbHRlcnMtYmFyLS1zZXBhcmF0b3Ige1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNDAwKSk7XG4gIG1hcmdpbjogMC43NXJlbSAwLjVyZW07XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59IiwiLm5lZXRvLWZpbHRlcnMtc2VnbWVudC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS01MDApKSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktNTAwKSkgIWltcG9ydGFudDtcbn1cbiIsIi5uZWV0by1maWx0ZXJzLXBhbmUtZmlsdGVyIHtcbiAgd2lkdGg6IDM2MHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm5lZXRvLWZpbHRlcnMtcGFuZS1maWx0ZXJfX2JvZHkge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICBnYXA6IDEuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyMHJlbSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tZmlsdGVycy1wYW5lLWZpbHRlcl9fYm9keSA+ICoge1xuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLWZpbHRlcnMtcGFuZS1maWx0ZXJfX2JvZHkgcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5lZXRvLWZpbHRlcnMtcGFuZS1maWx0ZXJfX2JvZHkgLm5lZXRvLWZpbHRlcnMtcGFuZS1maWx0ZXJfX2l0ZW0td3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMC41cmVtO1xuICBmbGV4OiAxO1xufVxuXG4ubmVldG8tZmlsdGVycy1wYW5lLWZpbHRlcl9fYm9keSAuYWNjb3JkaW9uX2l0ZW0gLm5lZXRvLWZpbHRlcnMtcGFuZS1maWx0ZXJfX2l0ZW0td3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGZsZXg6IDE7XG59XG5cbi5uZWV0by1maWx0ZXJzLXBhbmUtZmlsdGVyX19ib2R5IC5hY2NvcmRpb25faXRlbSAubmVldG8tZmlsdGVycy1wYW5lLWZpbHRlcl9faXRlbS13cmFwcGVyOmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubmVldG8tZmlsdGVycy1wYW5lLWZpbHRlcl9fYm9keSAuYWNjb3JkaW9uX2l0ZW06Zmlyc3Qtb2YtdHlwZSAubmVldG8tdWktYWNjb3JkaW9uX19pdGVtIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5uZWV0by1maWx0ZXJzLXBhbmUtZmlsdGVyX19ib2R5IC5uZWV0by11aS1hY2NvcmRpb25fX3dyYXBwZXItLWxhc3QtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5uZWV0by1maWx0ZXJzLXBhbmUtZmlsdGVyIHtcbiAgICB3aWR0aDogMTAwdnc7XG4gIH1cbn1cblxuLm5lZXRvLWZpbHRlcnMtcGFuZS1iYWNrZHJvcCB7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigwcHgpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tbmVldG8tdWktZ3JheS03MDApLCAwLjIpO1xufVxuIl19 */";
281
+ n(css,{});
282
+
279
283
  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; }
280
284
  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; }
281
285
  var Filters = withT(function (_ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"Filters.js","sources":["../app/javascript/src/components/Pane/hooks/useFilters.js","../app/javascript/src/components/Pane/index.jsx","../app/javascript/src/components/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 { useMemo, useState } from \"react\";\n\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 { Accordion, Button, Typography, Pane as NeetoUIPane } from \"neetoui\";\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 <NeetoUIPane\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 <NeetoUIPane.Header data-testid=\"neeto-filters-pane-header\">\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoFilters.common.filters\")}\n </Typography>\n </NeetoUIPane.Header>\n <NeetoUIPane.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 defaultActiveKey={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 style=\"body2\">\n {t(\"neetoFilters.messages.noResourcesFound\", {\n resources: t(\"neetoFilters.common.columns\"),\n })}\n </Typography>\n )}\n {children}\n </NeetoUIPane.Body>\n <NeetoUIPane.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 style=\"text\"\n onClick={handleClearAll}\n />\n </NeetoUIPane.Footer>\n </NeetoUIPane>\n );\n};\n\nexport default Pane;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Button } from \"neetoui\";\nimport { identity } from \"ramda\";\n\nimport Pane from \"./Pane\";\n\nimport \"../stylesheets/index.css\";\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 style=\"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","Pane","isOpen","onClose","onChange","isSearchable","keyword","_ref$childrenKeys","childrenKeys","children","className","otherProps","_objectWithoutProperties","_excluded","useQueryParams","toCamelCase","_useState","useState","_useState2","searchTerm","setSearchTerm","_useTranslation","useTranslation","t","useMemo","getColumnsWithStandardizedType","_buildFilteredColumns","buildFilteredColumns","_buildFilteredColumns2","groupedColumns","_buildFilteredColumns3","ungroupedColumns","_objectSpread","type","rule","label","SEARCH_TERM_KEY","handleChange","isClearAll","arguments","length","undefined","push","handleClearAll","omit","pathname","window","buildUrl","handleClearTermAndClose","handleClose","forEach","_ref2","findBy","isClearFiltersDisabled","some","_ref3","defaultValue","isPresent","_jsxs","NeetoUIPane","backdropClassName","classnames","_defineProperty","_jsx","Header","Typography","style","weight","Body","Search","placeholder","resources","onSearch","map","column","_createElement","Item","autoFocus","Accordion","defaultActiveKey","findIndex","_ref4","existsBy","_ref5","group","title","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","noop","_ref$keyword","setValue"],"mappings":"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"}
1
+ {"version":3,"file":"Filters.js","sources":["../app/javascript/src/components/Pane/hooks/useFilters.js","../app/javascript/src/components/Pane/index.jsx","../app/javascript/src/components/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 { useMemo, useState } from \"react\";\n\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 { Accordion, Button, Typography, Pane as NeetoUIPane } from \"neetoui\";\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 <NeetoUIPane\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 <NeetoUIPane.Header data-testid=\"neeto-filters-pane-header\">\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoFilters.common.filters\")}\n </Typography>\n </NeetoUIPane.Header>\n <NeetoUIPane.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 defaultActiveKey={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 style=\"body2\">\n {t(\"neetoFilters.messages.noResourcesFound\", {\n resources: t(\"neetoFilters.common.columns\"),\n })}\n </Typography>\n )}\n {children}\n </NeetoUIPane.Body>\n <NeetoUIPane.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 style=\"text\"\n onClick={handleClearAll}\n />\n </NeetoUIPane.Footer>\n </NeetoUIPane>\n );\n};\n\nexport default Pane;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Button } from \"neetoui\";\nimport { identity } from \"ramda\";\n\nimport Pane from \"./Pane\";\n\nimport \"../stylesheets/index.css\";\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 style=\"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","Pane","isOpen","onClose","onChange","isSearchable","keyword","_ref$childrenKeys","childrenKeys","children","className","otherProps","_objectWithoutProperties","_excluded","useQueryParams","toCamelCase","_useState","useState","_useState2","searchTerm","setSearchTerm","_useTranslation","useTranslation","t","useMemo","getColumnsWithStandardizedType","_buildFilteredColumns","buildFilteredColumns","_buildFilteredColumns2","groupedColumns","_buildFilteredColumns3","ungroupedColumns","_objectSpread","type","rule","label","SEARCH_TERM_KEY","handleChange","isClearAll","arguments","length","undefined","push","handleClearAll","omit","pathname","window","buildUrl","handleClearTermAndClose","handleClose","forEach","_ref2","findBy","isClearFiltersDisabled","some","_ref3","defaultValue","isPresent","_jsxs","NeetoUIPane","backdropClassName","classnames","_defineProperty","_jsx","Header","Typography","style","weight","Body","Search","placeholder","resources","onSearch","map","column","_createElement","Item","autoFocus","Accordion","defaultActiveKey","findIndex","_ref4","existsBy","_ref5","group","title","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","noop","_ref$keyword","setValue"],"mappings":"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"}
package/dist/Segments.js CHANGED
@@ -1,14 +1,14 @@
1
1
  import { useState, useEffect, memo, createElement, useRef } from 'react';
2
2
  import { useQueryParams } from '@bigbinary/neeto-commons-frontend/react-utils';
3
- import { S as SegmentForm } from './index-00KCfktU.js';
3
+ import { S as SegmentForm } from './index-BCnobjnZ.js';
4
4
  import { t } from 'i18next';
5
5
  import { getQueryParams, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/utils';
6
6
  import Alert from '@bigbinary/neetoui/Alert';
7
7
  import { equals, isEmpty, pluck } from 'ramda';
8
8
  import { useTranslation, Trans } from 'react-i18next';
9
9
  import { useHistory } from 'react-router-dom';
10
- import { d as buildUrlFromFilters, a as buildFiltersFromURL, f as buildFiltersFromSearchParams, B as buildSegmentsPayload, e as buildUrlFromSegment } from './utils-l0QK_DBo.js';
11
- import { u as useDestroySegment, a as useFetchSegments, b as useUpdateSegment } from './useSegmentsApi-0Le3BZOo.js';
10
+ import { d as buildUrlFromFilters, a as buildFiltersFromURL, k as buildFiltersFromSearchParams, E as buildSegmentsPayload, e as buildUrlFromSegment } from './utils-Q-OTPVjq.js';
11
+ import { u as useDestroySegment, a as useFetchSegments, b as useUpdateSegment } from './useSegmentsApi-C6mffm-a.js';
12
12
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
13
13
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
14
14
  import { filterBy, findById, hyphenate } from '@bigbinary/neeto-cist';
@@ -30,15 +30,17 @@ import '@bigbinary/neetoui/formik/ActionBlock';
30
30
  import '@bigbinary/neetoui/formik/Form';
31
31
  import '@bigbinary/neetoui/formik/Input';
32
32
  import 'react-router-dom/cjs/react-router-dom.min';
33
- import './index-4MKjSNsp.js';
33
+ import './index-Cdvbpy-b.js';
34
34
  import '@bigbinary/neetoui/Select';
35
- import './constants-8DtAPJaA.js';
35
+ import './utils-B3464cET.js';
36
+ import './constants-BaYBNRZa.js';
36
37
  import './dayjs-DNGB9yJD.js';
37
38
  import '@bigbinary/neetoui/DatePicker';
38
39
  import '@bigbinary/neetoui/TimePicker';
39
40
  import '@bigbinary/neetoui/Input';
40
41
  import '@bigbinary/neetoui/TreeSelect';
41
42
  import '@bigbinary/neeto-icons/Plus';
43
+ import './utils-CwKBnC3c.js';
42
44
  import 'yup';
43
45
  import '@bigbinary/neeto-icons/Help';
44
46
  import '@tanstack/react-query';