@bigbinary/neeto-filters-frontend 4.3.38 → 4.3.40

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 (52) hide show
  1. package/dist/.ready +1 -1
  2. package/dist/Bar.js +4 -4
  3. package/dist/Filters.js +3 -3
  4. package/dist/Segments.js +4 -4
  5. package/dist/cjs/Bar.js +4 -4
  6. package/dist/cjs/Filters.js +3 -3
  7. package/dist/cjs/Segments.js +4 -4
  8. package/dist/cjs/index.js +4 -4
  9. package/dist/cjs/utils.js +1 -1
  10. package/dist/cjs/v2/Bar.js +4 -4
  11. package/dist/cjs/v2/Filters.js +2 -2
  12. package/dist/cjs/v2/Segments.js +3 -3
  13. package/dist/cjs/v2/index.js +4 -4
  14. package/dist/cjs/v2/utils.js +1 -1
  15. package/dist/{index-BnuYw-vQ.js → index-BUy-T-f-.js} +3 -5
  16. package/dist/index-BUy-T-f-.js.map +1 -0
  17. package/dist/{index-BS_DcqfC.js → index-BgriOtQk.js} +3 -3
  18. package/dist/{index-BS_DcqfC.js.map → index-BgriOtQk.js.map} +1 -1
  19. package/dist/{index-v-4-tsRc.js → index-CYqwc9xX.js} +32 -22
  20. package/dist/index-CYqwc9xX.js.map +1 -0
  21. package/dist/{index-XdSGRCDF.js → index-DSR9cB9x.js} +32 -22
  22. package/dist/index-DSR9cB9x.js.map +1 -0
  23. package/dist/{index-BDc8DpmZ.js → index-DWrbuEjN.js} +3 -5
  24. package/dist/index-DWrbuEjN.js.map +1 -0
  25. package/dist/{index-mn_LYbVM.js → index-DwUu_zQL.js} +3 -3
  26. package/dist/{index-mn_LYbVM.js.map → index-DwUu_zQL.js.map} +1 -1
  27. package/dist/{index-CPQB3dbB.js → index-FjZrMS34.js} +3 -3
  28. package/dist/{index-CPQB3dbB.js.map → index-FjZrMS34.js.map} +1 -1
  29. package/dist/{index-tbeeSrep.js → index-ptWtPjco.js} +3 -3
  30. package/dist/{index-tbeeSrep.js.map → index-ptWtPjco.js.map} +1 -1
  31. package/dist/index.js +4 -4
  32. package/dist/{utils-C5RcrSnO.js → utils-2wOrEJEY.js} +2 -2
  33. package/dist/{utils-C5RcrSnO.js.map → utils-2wOrEJEY.js.map} +1 -1
  34. package/dist/{utils-7qsBJxsE.js → utils-CJy_Ilbi.js} +31 -21
  35. package/dist/utils-CJy_Ilbi.js.map +1 -0
  36. package/dist/{utils-xNgUSPbr.js → utils-CN8lsON0.js} +2 -2
  37. package/dist/{utils-xNgUSPbr.js.map → utils-CN8lsON0.js.map} +1 -1
  38. package/dist/{utils-C3k2IuDv.js → utils-DXOrtV1K.js} +31 -21
  39. package/dist/utils-DXOrtV1K.js.map +1 -0
  40. package/dist/utils.js +1 -1
  41. package/dist/v2/Bar.js +4 -4
  42. package/dist/v2/Filters.js +2 -2
  43. package/dist/v2/Segments.js +3 -3
  44. package/dist/v2/index.js +4 -4
  45. package/dist/v2/utils.js +1 -1
  46. package/package.json +23 -23
  47. package/dist/index-BDc8DpmZ.js.map +0 -1
  48. package/dist/index-BnuYw-vQ.js.map +0 -1
  49. package/dist/index-XdSGRCDF.js.map +0 -1
  50. package/dist/index-v-4-tsRc.js.map +0 -1
  51. package/dist/utils-7qsBJxsE.js.map +0 -1
  52. package/dist/utils-C3k2IuDv.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-DXOrtV1K.js","sources":["../app/javascript/src/common/dayjs.js","../app/javascript/src/components/Pane/Item/constants.js","../app/javascript/src/components/utils.js"],"sourcesContent":["import { dayjs } from \"neetocommons/utils\";\n\ndayjs.Ls.en.weekStart = 1;\n\nexport default dayjs;\n","import { t } from \"i18next\";\nimport { Help } from \"neetoicons\";\n\nexport const NUMBER_RULES = [\n { label: t(\"neetoFilters.rules.is\"), value: \"is\" },\n { label: t(\"neetoFilters.rules.isNot\"), value: \"is_not\" },\n { label: t(\"neetoFilters.rules.greaterThan\"), value: \"greater_than\" },\n { label: t(\"neetoFilters.rules.lessThan\"), value: \"less_than\" },\n];\n\nexport const TEXT_RULES = [\n { label: t(\"neetoFilters.rules.contains\"), value: \"contains\" },\n { label: t(\"neetoFilters.rules.doesNotContain\"), value: \"does_not_contain\" },\n { label: t(\"neetoFilters.rules.is\"), value: \"is\" },\n { label: t(\"neetoFilters.rules.isNot\"), value: \"is_not\" },\n { label: t(\"neetoFilters.rules.startsWith\"), value: \"starts_with\" },\n {\n label: t(\"neetoFilters.rules.doesNotStartWith\"),\n value: \"does_not_start_with\",\n },\n { label: t(\"neetoFilters.rules.endsWith\"), value: \"ends_with\" },\n { label: t(\"neetoFilters.rules.doesNotEndWith\"), value: \"does_not_end_with\" },\n];\n\nexport const MULTI_DROPDOWN_RULES = [\n { label: t(\"neetoFilters.rules.in\"), value: \"in\" },\n { label: t(\"neetoFilters.rules.notIn\"), value: \"not_in\" },\n { label: t(\"neetoFilters.rules.isEmpty\"), value: \"is_unknown\" },\n];\n\nexport const SINGLE_DROPDOWN_RULES = [\n { label: t(\"neetoFilters.rules.is\"), value: \"is\" },\n { label: t(\"neetoFilters.rules.isNot\"), value: \"is_not\" },\n { label: t(\"neetoFilters.rules.isEmpty\"), value: \"is_unknown\" },\n];\n\nexport const DEFAULT_BOOLEAN_OPTIONS = [\n { label: t(\"neetoFilters.common.yes\"), value: \"true\" },\n { label: t(\"neetoFilters.common.no\"), value: \"false\" },\n];\n\nexport const CHECKBOX_OPTIONS = [\n { label: t(\"neetoFilters.rules.checked\"), value: \"true\" },\n { label: t(\"neetoFilters.rules.unchecked\"), value: \"false\" },\n];\n\nexport const TREE_SELECT_RULES = [\n { label: t(\"neetoFilters.rules.in\"), value: \"in\" },\n { label: t(\"neetoFilters.rules.notIn\"), value: \"not_in\" },\n { label: t(\"neetoFilters.rules.isEmpty\"), value: \"is_unknown\" },\n];\n\nexport const DEFAULT_HELP_ICON_PROPS = { icon: Help };\n\nexport const TIME_FORMAT = \"h:mm A\";\n","import i18next from \"i18next\";\nimport {\n findBy,\n removeBy,\n isNotEmpty,\n capitalize,\n isNotPresent,\n} from \"neetocist\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport {\n any,\n anyPass,\n concat,\n either,\n equals,\n groupBy,\n has,\n identity,\n isEmpty,\n isNil,\n mergeLeft,\n mergeRight,\n not,\n omit,\n pick,\n pluck,\n toLower,\n toPairs,\n} from \"ramda\";\n\nimport {\n DATE_OPTIONS,\n DATE_RULES,\n SEARCH_TERM_KEY,\n SEGMENT_ID_KEY,\n TIME_OPTIONS,\n} from \"common/constants\";\nimport dayjs from \"common/dayjs\";\n\nimport {\n DEFAULT_BOOLEAN_OPTIONS,\n NUMBER_RULES,\n TEXT_RULES,\n} from \"./Pane/Item/constants\";\n\nconst groupByGroup = groupBy(({ group }) => group || \"individual\");\n\nconst standardizeColumnType = kind => {\n // neeto-fields-nano supports `monetary` and `number` as type of fields, which will be acting as `decimal` in action.\n if ([\"custom.monetary\", \"custom.number\"].includes(kind)) {\n return \"custom.decimal\";\n }\n\n return kind;\n};\n\nexport const getSnakeCasedQueryParams = () =>\n getQueryParams({ toCamelCase: false });\n\n// Splits a filter URL param value into [filterValue, rule].\n// Tolerates both `value+rule-X` (correct encoding) and `value rule-X` — the\n// latter occurs when browsers like Arc decode `%2B` to `+` in the address bar,\n// after which `qs.parse` interprets the literal `+` as a space per the\n// application/x-www-form-urlencoded spec.\nconst splitValueAndRule = value => {\n const match = value.match(/[+ ]rule-([^+ ]+)$/);\n\n return match ? [value.slice(0, match.index), match[1]] : [value];\n};\n\nexport const isBoolean = type =>\n type === \"boolean\" || type === \"custom.boolean\";\nexport const isCheckbox = type =>\n type === \"checkbox\" || type === \"custom.checkbox\";\nexport const isDate = type =>\n type === \"date\" || type === \"custom.date\" || type === \"custom.datetime\";\nexport const isSingleDate = type =>\n type === \"single_date\" || type === \"custom.single_date\";\nexport const isSingleTime = type =>\n type === \"single_time\" || type === \"custom.single_time\";\nexport const isTime = type => type === \"time\" || type === \"custom.time\";\nexport const isMulti = type =>\n type === \"multi_option\" || type === \"custom.multi_option\";\nexport const isSingle = type =>\n type === \"single_option\" || type === \"custom.single_option\";\nexport const isText = type => type === \"text\" || type === \"custom.text\";\nexport const isDigit = type =>\n [\"number\", \"decimal\", \"custom.decimal\", \"custom.number\"].includes(type);\nexport const isTreeSelect = type => type === \"tree_select\";\nexport const isDateRange = type =>\n type === \"date_range\" || type === \"custom.date_range\";\nexport const isTimeRange = type =>\n type === \"time_range\" || type === \"custom.time_range\";\n\nexport const isCustomDateRange = value =>\n !pluck(\"value\", DATE_OPTIONS).includes(value);\n\nexport const isCustomTimeRange = value =>\n !pluck(\"value\", TIME_OPTIONS).includes(value);\n\nexport const isMultiModelFilter = ({ model = \"\" }) =>\n model.split(\",\").length > 1;\n\nexport const getTimezone = () => dayjs().$x?.$timezone || dayjs.tz.guess();\n\nexport const getLabelFromBool = ({ value, values }) =>\n findBy(\n { value },\n either(isEmpty, isNil)(values) ? DEFAULT_BOOLEAN_OPTIONS : values\n ).label;\n\nexport const getBoolFromLabel = ({ label, values }) =>\n findBy(\n { label },\n either(isEmpty, isNil)(values) ? DEFAULT_BOOLEAN_OPTIONS : values\n ).value;\n\nexport const buildRuleOptions = ({ defaultType }) => {\n if (isText(defaultType)) return TEXT_RULES;\n else if (isDigit(defaultType)) return NUMBER_RULES;\n\n return [];\n};\n\nexport const getDefaultRuleValue = defaultType =>\n buildRuleOptions({ defaultType })?.[0]?.value || \"\";\n\nexport const isUndefinedOrEmpty = anyPass([isNil, isEmpty, any(isNil)]);\n\n// Following function split node on comma followed by non-comma characters and a dot\nexport const splitNode = joinedNodes => joinedNodes.split(/,(?=[^,]*\\.)/);\n\nexport const splitFilter = multiColumnFilter => {\n const splittedNodes = splitNode(multiColumnFilter.node);\n const splittedModels = multiColumnFilter.model.split(\",\");\n\n return splittedNodes.map((node, index) =>\n mergeLeft(\n {\n node,\n model: splittedModels[index],\n conditions_join_type: index < splittedNodes.length - 1 ? \"or\" : \"and\",\n },\n omit([\"key\", \"label\", \"values\", \"setValue\"], multiColumnFilter)\n )\n );\n};\n\nexport const buildDateValue = ({ value }) => {\n const rule = DATE_RULES[value] || \"between\";\n const dateValue = [\"before\", \"after\", \"custom-date-range\"].includes(value)\n ? \"\"\n : value;\n\n return { value: dateValue, rule, timezone: getTimezone() };\n};\n\nexport const buildTimeValue = ({ value }) => {\n const dateValue = value === \"custom-time-range\" ? \"\" : value;\n\n return { value: dateValue, rule: \"between\" };\n};\n\nexport const buildUpdatedFilter = ({\n column,\n defaultType,\n option,\n rule = \"\",\n value = \"\",\n}) => {\n const filter = omit([\"values\", \"preprocessor\"], column);\n if (isMulti(defaultType)) {\n return mergeLeft(filter, { value: pluck(\"value\", option), rule });\n } else if (isDate(defaultType)) {\n return mergeLeft(filter, buildDateValue(option));\n } else if (isSingleDate(defaultType)) {\n return mergeLeft(filter, { value, rule, timezone: getTimezone() });\n } else if (isText(defaultType) || isDigit(defaultType)) {\n return mergeLeft(filter, {\n rule,\n value: column?.preprocessor?.(value) || value,\n });\n } else if (isSingleTime(defaultType)) {\n return mergeLeft(filter, { value, rule });\n } else if (isTime(defaultType)) {\n return mergeLeft(filter, buildTimeValue(option));\n } else if (isSingle(defaultType)) {\n return mergeLeft(filter, { value: option.value, rule });\n } else if (isTreeSelect(defaultType)) {\n return mergeLeft(filter, { value: option, rule });\n }\n\n return mergeLeft(filter, { value: option.value, rule: \"is\" });\n};\n\nexport const buildFiltersFromSearchParams = (columns, skipEmpty = true) => {\n const searchParams = getSnakeCasedQueryParams();\n\n return columns\n .map(column => {\n const value = searchParams[column.key];\n const defaultType = column.defaultType || column.type;\n\n if (!skipEmpty && value === \"\") {\n return mergeLeft({ value: \"\" }, column);\n } else if (isNil(value) || value === \"\" || column.key === \"keyword\") {\n return null;\n } else if (column.key === SEARCH_TERM_KEY) {\n if (isNil(column.node)) return null;\n\n return mergeLeft({ value, type: \"text\", rule: \"contains\" }, column);\n } else if (isDate(defaultType) && isCustomDateRange(value)) {\n return mergeLeft({ value }, column);\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n const [filterValue, rule] = splitValueAndRule(value);\n\n return mergeLeft(\n { rule: rule ?? \"in\", value: filterValue.split(\"|\") },\n column\n );\n } else if (isSingle(defaultType)) {\n const [filterValue, rule] = splitValueAndRule(value);\n\n return mergeLeft({ rule: rule ?? \"in\", value: filterValue }, column);\n } else if (isDigit(defaultType) || isText(defaultType)) {\n const [filterValue, rule] = splitValueAndRule(value);\n\n return mergeLeft({ rule, value: filterValue }, column);\n } else if (isTime(defaultType) && isCustomTimeRange(value)) {\n return mergeLeft({ value }, column);\n } else if (isSingleDate(defaultType)) {\n const [filterValue, rule] = splitValueAndRule(value);\n\n return mergeLeft(\n {\n rule,\n value: rule === \"between\" ? filterValue.split(\",\") : filterValue,\n },\n column\n );\n } else if (isSingleTime(defaultType)) {\n const [filterValue, rule] = splitValueAndRule(value);\n\n return mergeLeft(\n {\n rule,\n value: rule === \"between\" ? filterValue.split(\",\") : filterValue,\n },\n column\n );\n } else if (isBoolean(defaultType)) {\n return mergeLeft(\n {\n rule: \"is\",\n value: getBoolFromLabel({ label: value, values: column.values }),\n },\n column\n );\n }\n\n return mergeLeft({ rule: \"is\", value }, column);\n })\n .filter(identity);\n};\n\nexport const buildTimePayload = value => {\n const timeValue = {\n \"this-hour\": [dayjs().startOf(\"hour\"), dayjs().endOf(\"hour\")],\n \"last-hour\": [\n dayjs().add(-1, \"hour\").startOf(\"hour\"),\n dayjs().add(-1, \"hour\").endOf(\"hour\"),\n ],\n \"next-hour\": [\n dayjs().add(1, \"hour\").startOf(\"hour\"),\n dayjs().add(1, \"hour\").endOf(\"hour\"),\n ],\n };\n if (isCustomTimeRange(value)) {\n return {\n value: value ? value.join(\",\") : \"\",\n rule: \"between\",\n timezone: getTimezone(),\n };\n }\n\n const times = timeValue[value] || timeValue[\"this-hour\"];\n\n return {\n value: times.map(time => time.toISOString()).join(\",\"),\n rule: \"between\",\n timezone: getTimezone(),\n };\n};\n\nexport const buildDatePayload = value => {\n const dateValue = {\n \"this-week\": [dayjs().startOf(\"week\"), dayjs().endOf(\"week\")],\n \"last-week\": [\n dayjs().add(-1, \"week\").startOf(\"week\"),\n dayjs().add(-1, \"week\").endOf(\"week\"),\n ],\n \"this-month\": [dayjs().startOf(\"month\"), dayjs().endOf(\"month\")],\n \"last-month\": [\n dayjs().add(-1, \"month\").startOf(\"month\"),\n dayjs().add(-1, \"month\").endOf(\"month\"),\n ],\n \"this-year\": [dayjs().startOf(\"year\"), dayjs().endOf(\"year\")],\n \"last-year\": [\n dayjs().add(-1, \"year\").startOf(\"year\"),\n dayjs().add(-1, \"year\").endOf(\"year\"),\n ],\n };\n\n if (value === \"today\") {\n return {\n value: dayjs().toISOString(),\n rule: \"on\",\n timezone: getTimezone(),\n };\n } else if (value === \"yesterday\") {\n return {\n value: dayjs().add(-1, \"day\").toISOString(),\n rule: \"on\",\n timezone: getTimezone(),\n };\n } else if (value === \"all-time\") {\n return {\n value: dayjs().toISOString(),\n rule: \"has_any_value\",\n timezone: getTimezone(),\n };\n } else if (isCustomDateRange(value)) {\n //custom-date-range\n return {\n value: value ? value.join(\",\") : \"\",\n rule: \"between\",\n timezone: getTimezone(),\n };\n }\n\n const dates = dateValue[value] || dateValue[\"tihs-week\"];\n\n return {\n value: dates.map(date => date.toISOString()).join(\",\"),\n rule: \"between\",\n timezone: getTimezone(),\n };\n};\n\nexport const buildSingleDatePayload = filter => {\n const { value } = filter;\n const filterValue = Array.isArray(value) ? value.join(\",\") : value;\n const type = filter.defaultType ? filter.type : \"date\";\n\n return { ...filter, value: filterValue, type, timezone: getTimezone() };\n};\n\nexport const buildSingleTimePayload = filter => {\n const { value } = filter;\n const filterValue = Array.isArray(value) ? value.join(\",\") : value;\n const type = filter.defaultType ? filter.type : \"time\";\n\n return { ...filter, value: filterValue, type, timezone: getTimezone() };\n};\nexport const flattenPayload = payload => {\n const flattenedPayload = [];\n payload.forEach(\n item =>\n Array.isArray(item)\n ? flattenedPayload.unshift(...item)\n : flattenedPayload.push(item),\n []\n );\n\n return flattenedPayload;\n};\nexport const buildMultiOptionPayload = values =>\n values.map(value => value.toString()).join(\"|\");\n\nexport const buildFiltersPayload = filters => {\n const payload = removeBy({ value: \"\" }, filters).map(filter => {\n if (filter.key === SEARCH_TERM_KEY && isMultiModelFilter(filter)) {\n return splitFilter(filter);\n }\n const filterPayload = omit([\"key\", \"label\", \"values\", \"setValue\"], filter);\n const { defaultType = filterPayload.type, value } = filterPayload;\n\n if (isMultiModelFilter(filterPayload)) {\n throw i18next.t(\"neetoFilters.errors.cannotPassMultipleModels\");\n }\n\n if (isDate(defaultType)) {\n return mergeRight(filterPayload, buildDatePayload(value));\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return mergeRight(filterPayload, {\n value: buildMultiOptionPayload(value),\n });\n } else if (isSingleDate(defaultType)) {\n return mergeRight(filterPayload, buildSingleDatePayload(filterPayload));\n } else if (isSingleTime(defaultType)) {\n return mergeRight(filterPayload, buildSingleTimePayload(filterPayload));\n } else if (isTime(defaultType)) {\n return mergeRight(filterPayload, buildTimePayload(value));\n } else if (isDateRange(defaultType)) {\n return mergeRight(filterPayload, buildDateRangePayload(value));\n } else if (isTimeRange(defaultType)) {\n return mergeRight(filterPayload, buildTimeRangePayload(value));\n }\n\n return filterPayload;\n });\n\n return isEmpty(payload) ? [] : [{ conditions: flattenPayload(payload) }];\n};\n\nexport const buildTimeRangePayload = value => {\n const timeValue = {\n \"this-hour\": [dayjs().startOf(\"hour\"), dayjs().endOf(\"hour\")],\n \"last-hour\": [\n dayjs().add(-1, \"hour\").startOf(\"hour\"),\n dayjs().add(-1, \"hour\").endOf(\"hour\"),\n ],\n \"next-hour\": [\n dayjs().add(1, \"hour\").startOf(\"hour\"),\n dayjs().add(1, \"hour\").endOf(\"hour\"),\n ],\n };\n\n const times = timeValue[value] || timeValue[\"this-hour\"];\n\n return {\n value: times.map(time => time.toISOString()).join(\",\"),\n rule: \"contains\",\n timezone: getTimezone(),\n };\n};\n\nexport const buildDateRangePayload = value => {\n const dateValue = {\n today: [dayjs().startOf(\"day\"), dayjs().endOf(\"day\")],\n yesterday: [\n dayjs().add(-1, \"day\").startOf(\"day\"),\n dayjs().add(-1, \"day\").endOf(\"day\"),\n ],\n \"this-week\": [dayjs().startOf(\"week\"), dayjs().endOf(\"week\")],\n \"last-week\": [\n dayjs().add(-1, \"week\").startOf(\"week\"),\n dayjs().add(-1, \"week\").endOf(\"week\"),\n ],\n \"this-month\": [dayjs().startOf(\"month\"), dayjs().endOf(\"month\")],\n \"last-month\": [\n dayjs().add(-1, \"month\").startOf(\"month\"),\n dayjs().add(-1, \"month\").endOf(\"month\"),\n ],\n \"this-year\": [dayjs().startOf(\"year\"), dayjs().endOf(\"year\")],\n \"last-year\": [\n dayjs().add(-1, \"year\").startOf(\"year\"),\n dayjs().add(-1, \"year\").endOf(\"year\"),\n ],\n };\n\n if (value === \"all-time\" || isNotPresent(dateValue[value])) {\n return {\n value: dayjs().toISOString(),\n rule: \"has_any_value\",\n timezone: getTimezone(),\n };\n }\n\n return {\n value: dateValue[value].map(date => date.toISOString()).join(\",\"),\n rule: \"contains\",\n timezone: getTimezone(),\n };\n};\n\nexport const buildSegmentsPayload = (filters, childrenKeys = []) => {\n const payload = removeBy({ value: \"\" }, filters).map(filter => {\n if (filter.key === SEARCH_TERM_KEY) {\n return false;\n }\n\n const filterPayload = omit(\n [\"label\", \"values\", \"setValue\", \"defaultValue\"],\n filter\n );\n const { defaultType = filterPayload.type, value } = filterPayload;\n if (filter.key !== SEARCH_TERM_KEY && isMultiModelFilter(filterPayload)) {\n throw i18next.t(\"neetoFilters.errors.cannotPassMultipleModels\");\n }\n\n if (isMulti(defaultType)) {\n return mergeRight(filterPayload, {\n value: buildMultiOptionPayload(value),\n });\n }\n\n return filterPayload;\n });\n const searchParams = getSnakeCasedQueryParams();\n\n const modifiedPayload = childrenKeys.reduce((acc, key) => {\n if (has(key, searchParams)) {\n const filterPayload = {\n key,\n node: \"children\",\n value: searchParams[key],\n };\n\n return acc.concat(filterPayload);\n }\n\n return acc;\n }, payload);\n\n return isEmpty(modifiedPayload)\n ? []\n : [{ conditions: flattenPayload(modifiedPayload) }];\n};\n\nexport const buildFiltersFromURL = columns =>\n buildFiltersPayload(\n buildFiltersFromSearchParams(columns.filter(column => !isNil(column.node)))\n );\n\nexport const buildSelectorsFromURL = columns => {\n const searchParams = getSnakeCasedQueryParams();\n const selectors = {};\n columns\n .filter(({ node }) => !node)\n .forEach(({ key, defaultType, type }) => {\n const value = searchParams[key];\n if (value) {\n selectors[key] = isMulti(defaultType || type)\n ? value.split(\"|\")\n : value;\n }\n });\n\n return selectors;\n};\n\nexport const compareFilters = (oldFilters, newFilters) => {\n const formatFilters = filters =>\n removeBy({ value: \"\" }, filters).map(pick([\"key\", \"rule\", \"value\"]));\n\n return equals(formatFilters(oldFilters), formatFilters(newFilters));\n};\n\nexport const buildFilteredColumns = ({ searchTerm = \"\", columns }) => {\n const groupedColumsObject = groupByGroup(\n columns.filter(\n ({ label, hidden = false }) =>\n label\n .toLocaleLowerCase()\n .includes(searchTerm.trim().toLocaleLowerCase()) && !hidden\n )\n );\n\n return {\n groupedColumns: toPairs(omit([\"individual\"], groupedColumsObject)).map(\n ([group, columns]) => ({ group, columns })\n ),\n ungroupedColumns: groupedColumsObject.individual,\n };\n};\n\nexport const buildDefaultFilters = (columns, filters) =>\n columns\n .filter(\n column =>\n !isUndefinedOrEmpty(column.defaultValue) &&\n !findBy({ key: column.key }, filters)\n )\n .map(column => {\n const defaultType = column.defaultType || column.type;\n\n return buildUpdatedFilter({\n column,\n defaultType,\n rule: getDefaultRuleValue(defaultType),\n option: column.defaultValue,\n value: column.defaultValue,\n });\n });\n\nexport const createUrlParamString = ({ filter, columns }) => {\n const { key, value, defaultType = filter.type, rule } = filter;\n if (key === SEARCH_TERM_KEY) {\n return value;\n } else if (isDigit(defaultType) || isText(defaultType)) {\n return `${value}+rule-${rule}`;\n } else if (isSingleDate(defaultType) || isSingleTime(defaultType)) {\n return (value && `${value}+rule-${rule}`) || value;\n } else if (isMulti(defaultType) || isTreeSelect(defaultType)) {\n return `${value.join(\"|\")}+rule-${rule}`;\n } else if (isSingle(defaultType)) {\n return `${value}+rule-${rule}`;\n } else if (isBoolean(defaultType)) {\n return getLabelFromBool({\n value,\n values: findBy({ key }, columns).values,\n });\n }\n\n return value;\n};\n\nexport const buildUrlFromFilters = ({\n columns,\n filters,\n isClearAll = false,\n childrenKeys = [],\n}) => {\n const searchParams = getSnakeCasedQueryParams();\n const isKeywordFilterPresent = findBy({ key: SEARCH_TERM_KEY }, filters);\n columns.forEach(\n ({ key, defaultValue }) => !defaultValue && delete searchParams[key]\n );\n\n if (isClearAll) {\n childrenKeys.forEach(key => delete searchParams[key]);\n delete searchParams[SEGMENT_ID_KEY];\n }\n\n const defaultFilters = buildDefaultFilters(columns, filters);\n isKeywordFilterPresent && delete searchParams[SEARCH_TERM_KEY];\n concat(filters, defaultFilters).forEach(filter => {\n searchParams[filter.key] = createUrlParamString({ filter, columns });\n });\n\n if (isEmpty(omit([SEGMENT_ID_KEY], searchParams))) {\n delete searchParams[SEGMENT_ID_KEY];\n }\n\n return buildUrl(\"\", searchParams).slice(1);\n};\n\nexport const createUrlParamStringForSegments = ({ filter, columns }) => {\n const { value, defaultType = filter.type } = filter;\n if (isMulti(defaultType)) {\n return value;\n }\n\n return createUrlParamString({ filter, columns });\n};\n\nexport const buildUrlFromSegment = ({ columns, filters, id }) => {\n const searchParams = getSnakeCasedQueryParams();\n columns.forEach(\n ({ key, defaultValue }) => !defaultValue && delete searchParams[key]\n );\n delete searchParams[SEARCH_TERM_KEY];\n const defaultFilters = buildDefaultFilters(columns, filters);\n const newSearchParams = concat(filters, defaultFilters).reduce(\n (acc, filter) => {\n acc[filter.key] = createUrlParamStringForSegments({\n filter,\n columns,\n });\n\n return acc;\n },\n isNotEmpty(id) ? { [SEGMENT_ID_KEY]: id } : {}\n );\n\n return buildUrl(\"\", mergeLeft(newSearchParams, searchParams)).slice(1);\n};\n\nexport const getSearchTermFromUrl = () => getQueryParams().searchTerm || \"\";\n\nexport const buildFilterColumnsFromFields = ({\n fields,\n selectedFields = [],\n showRuleSelector = false,\n groupName,\n}) =>\n fields.reduce((columns, field) => {\n if (isEmpty(selectedFields) || selectedFields.includes(field.name)) {\n const { id, name, kind } = field;\n const column = {\n key: `custom${toLower(name)}`,\n node: `${name}:${id}`,\n label: capitalize(name),\n type: `custom.${kind}`,\n showRuleSelector,\n ...(groupName && { group: groupName }),\n };\n\n if (kind === \"single_option\" || kind === \"multi_option\") {\n column.values = field.data.map(item => ({\n label: capitalize(item.label),\n value: item.id,\n }));\n }\n\n columns.push(column);\n }\n\n return columns;\n }, []);\n\nexport const getColumnsWithStandardizedType = columns =>\n columns.map(column => ({\n ...column,\n type: standardizeColumnType(column.type),\n }));\n\nexport const isKeywordFilterPresent = keyworFilter =>\n not(isEmpty(keyworFilter.node));\n\nexport const isNilOrEmpty = param => isNil(param) || isEmpty(param);\n"],"names":["dayjs","Ls","en","weekStart","NUMBER_RULES","label","t","value","TEXT_RULES","MULTI_DROPDOWN_RULES","SINGLE_DROPDOWN_RULES","DEFAULT_BOOLEAN_OPTIONS","CHECKBOX_OPTIONS","TREE_SELECT_RULES","DEFAULT_HELP_ICON_PROPS","icon","Help","TIME_FORMAT","groupByGroup","groupBy","_ref","group","standardizeColumnType","kind","includes","getSnakeCasedQueryParams","getQueryParams","toCamelCase","splitValueAndRule","match","slice","index","isBoolean","type","isCheckbox","isDate","isSingleDate","isSingleTime","isTime","isMulti","isSingle","isText","isDigit","isTreeSelect","isDateRange","isTimeRange","isCustomDateRange","pluck","DATE_OPTIONS","isCustomTimeRange","TIME_OPTIONS","isMultiModelFilter","_ref2","_ref2$model","model","split","length","getTimezone","_dayjs$$x","$x","$timezone","tz","guess","getLabelFromBool","_ref3","values","findBy","either","isEmpty","isNil","getBoolFromLabel","_ref4","buildRuleOptions","_ref5","defaultType","getDefaultRuleValue","_buildRuleOptions","isUndefinedOrEmpty","anyPass","any","splitNode","joinedNodes","splitFilter","multiColumnFilter","splittedNodes","node","splittedModels","map","mergeLeft","conditions_join_type","omit","buildDateValue","_ref6","rule","DATE_RULES","dateValue","timezone","buildTimeValue","_ref7","buildUpdatedFilter","_ref8","column","option","_ref8$rule","_ref8$value","filter","_column$preprocessor","preprocessor","call","buildFiltersFromSearchParams","columns","skipEmpty","arguments","undefined","searchParams","key","SEARCH_TERM_KEY","_splitValueAndRule","_splitValueAndRule2","_slicedToArray","filterValue","_splitValueAndRule3","_splitValueAndRule4","_splitValueAndRule5","_splitValueAndRule6","_splitValueAndRule7","_splitValueAndRule8","_splitValueAndRule9","_splitValueAndRule10","identity","buildTimePayload","timeValue","startOf","endOf","add","join","times","time","toISOString","buildDatePayload","dates","date","buildSingleDatePayload","Array","isArray","_objectSpread","buildSingleTimePayload","flattenPayload","payload","flattenedPayload","forEach","item","unshift","apply","_toConsumableArray","push","buildMultiOptionPayload","toString","buildFiltersPayload","filters","removeBy","filterPayload","_filterPayload$defaul","i18next","mergeRight","buildDateRangePayload","buildTimeRangePayload","conditions","today","yesterday","isNotPresent","buildSegmentsPayload","childrenKeys","_filterPayload$defaul2","modifiedPayload","reduce","acc","has","concat","buildFiltersFromURL","buildSelectorsFromURL","selectors","_ref9","_ref10","compareFilters","oldFilters","newFilters","formatFilters","pick","equals","buildFilteredColumns","_ref11","_ref11$searchTerm","searchTerm","groupedColumsObject","_ref12","_ref12$hidden","hidden","toLocaleLowerCase","trim","groupedColumns","toPairs","_ref13","_ref14","ungroupedColumns","individual","buildDefaultFilters","defaultValue","createUrlParamString","_ref15","_filter$defaultType","buildUrlFromFilters","_ref16","_ref16$isClearAll","isClearAll","_ref16$childrenKeys","isKeywordFilterPresent","_ref17","SEGMENT_ID_KEY","defaultFilters","buildUrl","createUrlParamStringForSegments","_ref18","_filter$defaultType2","buildUrlFromSegment","_ref19","id","_ref20","newSearchParams","isNotEmpty","_defineProperty","getSearchTermFromUrl","buildFilterColumnsFromFields","_ref22","fields","_ref22$selectedFields","selectedFields","_ref22$showRuleSelect","showRuleSelector","groupName","field","name","toLower","capitalize","data","getColumnsWithStandardizedType","keyworFilter","not"],"mappings":"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"}
package/dist/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- export { b as buildFilterColumnsFromFields, a as buildFiltersFromURL, c as buildSelectorsFromURL, d as buildUrlFromFilters, e as buildUrlFromSegment } from './utils-7qsBJxsE.js';
1
+ export { b as buildFilterColumnsFromFields, a as buildFiltersFromURL, c as buildSelectorsFromURL, d as buildUrlFromFilters, e as buildUrlFromSegment } from './utils-CJy_Ilbi.js';
2
2
  import '@babel/runtime/helpers/toConsumableArray';
3
3
  import '@babel/runtime/helpers/defineProperty';
4
4
  import '@babel/runtime/helpers/slicedToArray';
package/dist/v2/Bar.js CHANGED
@@ -7,7 +7,7 @@ import { findBy, removeBy, humanize, hyphenate, isPresent, isNotEmpty, noop, fin
7
7
  import { useQueryParams } from '@bigbinary/neeto-commons-frontend/v2/react-utils';
8
8
  import { reject, sortBy, prop, project, modify, has, omit, isEmpty, identity, assoc } from 'ramda';
9
9
  import { c as useCreateSegment, b as useUpdateSegment, Q as QUERY_KEYS } from '../useSegmentsApi-D3c_HZ_8.js';
10
- import { S as SegmentForm } from '../index-BDc8DpmZ.js';
10
+ import { S as SegmentForm } from '../index-DWrbuEjN.js';
11
11
  import { Tooltip, Typography, Button, DropdownMenu } from '@bigbinary/neeto-atoms';
12
12
  import { dateFormat, dayjs, buildUrl, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/v2/utils';
13
13
  import { useTranslation } from 'react-i18next';
@@ -15,13 +15,13 @@ import { useHistory } from 'react-router-dom';
15
15
  import { c as SEARCH_TERM_KEY, f as SINGLE_DATE_OPTIONS, g as SINGLE_TIME_OPTIONS } from '../constants-CZToVVIz.js';
16
16
  import { XIcon } from 'lucide-react';
17
17
  import useHotkeys from '@bigbinary/neeto-hotkeys';
18
- import { i as isRuleEmpty } from '../utils-xNgUSPbr.js';
18
+ import { i as isRuleEmpty } from '../utils-CN8lsON0.js';
19
19
  import { S as SHORTCUTS } from '../keyboardShortcuts-oiJyIaFr.js';
20
- 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, k as getSnakeCasedQueryParams, j as isKeywordFilterPresent } from '../index-XdSGRCDF.js';
20
+ 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, k as getSnakeCasedQueryParams, j as isKeywordFilterPresent } from '../index-DSR9cB9x.js';
21
21
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
22
22
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
23
23
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
24
- import { k as buildFiltersFromSearchParams, n as isKeywordFilterPresent$1, d as buildUrlFromFilters, l as getSearchTermFromUrl, E as buildSegmentsPayload, e as buildUrlFromSegment, o as getSnakeCasedQueryParams$1 } from '../utils-7qsBJxsE.js';
24
+ import { k as buildFiltersFromSearchParams, n as isKeywordFilterPresent$1, d as buildUrlFromFilters, l as getSearchTermFromUrl, E as buildSegmentsPayload, e as buildUrlFromSegment, o as getSnakeCasedQueryParams$1 } from '../utils-CJy_Ilbi.js';
25
25
  import '@bigbinary/neeto-commons-frontend/react-utils';
26
26
  import 'axios';
27
27
  import '@bigbinary/neeto-atoms/formik';
@@ -14,9 +14,9 @@ import Search from '@bigbinary/neeto-molecules/v2/Search';
14
14
  import { useTranslation } from 'react-i18next';
15
15
  import { useLocation, useHistory } from 'react-router-dom';
16
16
  import { c as SEARCH_TERM_KEY } from '../constants-CZToVVIz.js';
17
- import { g as buildFiltersFromSearchParams, h as getSearchTermFromUrl, i as buildDefaultFilters, d as buildUrlFromFilters, j as isKeywordFilterPresent, k as getSnakeCasedQueryParams, l as compareFilters, c as buildSelectorsFromURL, m as buildFiltersPayload, n as getColumnsWithStandardizedType, f as buildFilteredColumns, I as Item } from '../index-XdSGRCDF.js';
17
+ import { g as buildFiltersFromSearchParams, h as getSearchTermFromUrl, i as buildDefaultFilters, d as buildUrlFromFilters, j as isKeywordFilterPresent, k as getSnakeCasedQueryParams, l as compareFilters, c as buildSelectorsFromURL, m as buildFiltersPayload, n as getColumnsWithStandardizedType, f as buildFilteredColumns, I as Item } from '../index-DSR9cB9x.js';
18
18
  import { jsxs, jsx } from 'react/jsx-runtime';
19
- import '../utils-7qsBJxsE.js';
19
+ import '../utils-CJy_Ilbi.js';
20
20
  import 'i18next';
21
21
  import '@bigbinary/neeto-commons-frontend/utils';
22
22
  import '@bigbinary/neeto-icons/Help';
@@ -1,13 +1,13 @@
1
1
  import { useState, useEffect, memo, createElement, useRef } from 'react';
2
2
  import { useQueryParams } from '@bigbinary/neeto-commons-frontend/v2/react-utils';
3
- import { S as SegmentForm } from '../index-BDc8DpmZ.js';
3
+ import { S as SegmentForm } from '../index-DWrbuEjN.js';
4
4
  import { t } from 'i18next';
5
5
  import { Alert, Spinner, Typography, Button } from '@bigbinary/neeto-atoms';
6
6
  import { getQueryParams, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/v2/utils';
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, k as buildFiltersFromSearchParams, E as buildSegmentsPayload, e as buildUrlFromSegment } from '../utils-7qsBJxsE.js';
10
+ import { d as buildUrlFromFilters, a as buildFiltersFromURL, k as buildFiltersFromSearchParams, E as buildSegmentsPayload, e as buildUrlFromSegment } from '../utils-CJy_Ilbi.js';
11
11
  import { u as useDestroySegment, a as useFetchSegments, b as useUpdateSegment } from '../useSegmentsApi-D3c_HZ_8.js';
12
12
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
13
13
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
@@ -23,7 +23,7 @@ import '@bigbinary/neeto-atoms/formik';
23
23
  import '@bigbinary/neeto-molecules/v2/HelpPopover';
24
24
  import '../utils-CwKBnC3c.js';
25
25
  import 'yup';
26
- import '../index-XdSGRCDF.js';
26
+ import '../index-DSR9cB9x.js';
27
27
  import '../constants-CZToVVIz.js';
28
28
  import '@bigbinary/neeto-commons-frontend/utils';
29
29
  import '@bigbinary/neeto-icons/Help';
package/dist/v2/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export { default as Filters } from './Filters.js';
2
2
  export { default as Bar } from './Bar.js';
3
3
  export { default as Segments } from './Segments.js';
4
- export { b as buildFilterColumnsFromFields, a as buildFiltersFromURL, c as buildSelectorsFromURL, d as buildUrlFromFilters, e as buildUrlFromSegment } from '../index-XdSGRCDF.js';
4
+ export { b as buildFilterColumnsFromFields, a as buildFiltersFromURL, c as buildSelectorsFromURL, d as buildUrlFromFilters, e as buildUrlFromSegment } from '../index-DSR9cB9x.js';
5
5
  export { u as useDestroySegment, a as useFetchSegments, b as useUpdateSegment } from '../useSegmentsApi-D3c_HZ_8.js';
6
6
  import '@babel/runtime/helpers/defineProperty';
7
7
  import '@bigbinary/neeto-atoms';
@@ -22,15 +22,15 @@ import '../constants-CZToVVIz.js';
22
22
  import 'react/jsx-runtime';
23
23
  import '@tanstack/react-query';
24
24
  import 'i18next';
25
- import '../index-BDc8DpmZ.js';
25
+ import '../index-DWrbuEjN.js';
26
26
  import '@bigbinary/neeto-atoms/formik';
27
27
  import 'lucide-react';
28
28
  import '@bigbinary/neeto-molecules/v2/HelpPopover';
29
29
  import '../utils-CwKBnC3c.js';
30
30
  import 'yup';
31
31
  import '@bigbinary/neeto-hotkeys';
32
- import '../utils-xNgUSPbr.js';
33
- import '../utils-7qsBJxsE.js';
32
+ import '../utils-CN8lsON0.js';
33
+ import '../utils-CJy_Ilbi.js';
34
34
  import '@bigbinary/neeto-commons-frontend/utils';
35
35
  import '@bigbinary/neeto-icons/Help';
36
36
  import '../keyboardShortcuts-oiJyIaFr.js';
package/dist/v2/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- export { b as buildFilterColumnsFromFields, a as buildFiltersFromURL, c as buildSelectorsFromURL, d as buildUrlFromFilters, e as buildUrlFromSegment } from '../utils-7qsBJxsE.js';
1
+ export { b as buildFilterColumnsFromFields, a as buildFiltersFromURL, c as buildSelectorsFromURL, d as buildUrlFromFilters, e as buildUrlFromSegment } from '../utils-CJy_Ilbi.js';
2
2
  import '@babel/runtime/helpers/toConsumableArray';
3
3
  import '@babel/runtime/helpers/defineProperty';
4
4
  import '@babel/runtime/helpers/slicedToArray';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-filters-frontend",
3
- "version": "4.3.38",
3
+ "version": "4.3.40",
4
4
  "description": "Manage filters across neeto products.",
5
5
  "license": "UNLICENSED",
6
6
  "homepage": "https://github.com/bigbinary/neeto-filters-nano",
@@ -69,17 +69,17 @@
69
69
  "@babel/preset-env": "7.26.0",
70
70
  "@babel/preset-react": "7.25.9",
71
71
  "@babel/preset-typescript": "7.26.0",
72
- "@babel/runtime": "7.29.2",
72
+ "@babel/runtime": "7.29.7",
73
73
  "@bigbinary/babel-preset-neeto": "^1.0.3",
74
74
  "@bigbinary/eslint-plugin-neeto": "1.9.0",
75
- "@bigbinary/neeto-atoms": "^1.0.42",
75
+ "@bigbinary/neeto-atoms": "1.0.84",
76
76
  "@bigbinary/neeto-cist": "1.0.17",
77
- "@bigbinary/neeto-commons-frontend": "4.13.127",
78
- "@bigbinary/neeto-filters-frontend": "4.3.37",
77
+ "@bigbinary/neeto-commons-frontend": "4.13.132",
78
+ "@bigbinary/neeto-filters-frontend": "4.3.39",
79
79
  "@bigbinary/neeto-hotkeys": "1.0.9",
80
- "@bigbinary/neeto-icons": "1.20.88",
81
- "@bigbinary/neeto-molecules": "4.3.0",
82
- "@bigbinary/neetoui": "8.8.0",
80
+ "@bigbinary/neeto-icons": "1.20.89",
81
+ "@bigbinary/neeto-molecules": "5.1.28",
82
+ "@bigbinary/neetoui": "8.8.1",
83
83
  "@emotion/is-prop-valid": "1.2.0",
84
84
  "@faker-js/faker": "8.2.0",
85
85
  "@hello-pangea/dnd": "16.3.0",
@@ -98,7 +98,7 @@
98
98
  "@tanstack/react-query-devtools": "5.59.20",
99
99
  "antd": "5.22.1",
100
100
  "autoprefixer": "^10.4.5",
101
- "axios": "1.16.0",
101
+ "axios": "1.17.0",
102
102
  "babel-loader": "^8.2.5",
103
103
  "babel-plugin-istanbul": "^6.1.1",
104
104
  "babel-plugin-js-logger": "1.0.17",
@@ -114,7 +114,7 @@
114
114
  "crypto-browserify": "3.12.1",
115
115
  "css-loader": "6.8.1",
116
116
  "dayjs": "1.11.10",
117
- "dompurify": "3.4.1",
117
+ "dompurify": "3.4.7",
118
118
  "dotenv-webpack": "^8.0.1",
119
119
  "eslint": "^9.25.1",
120
120
  "eslint-config-prettier": "^10.1.2",
@@ -145,14 +145,14 @@
145
145
  "mixpanel-browser": "2.47.0",
146
146
  "os-browserify": "0.3.0",
147
147
  "path-browserify": "^1.0.1",
148
- "postcss": "8.5.11",
148
+ "postcss": "8.5.12",
149
149
  "postcss-import": "^15.0.0",
150
150
  "postcss-loader": "^7.0.1",
151
151
  "postcss-preset-env": "7.8.2",
152
152
  "prettier": "3",
153
153
  "prettier-plugin-tailwindcss": "^0.7.1",
154
154
  "process": "0.11.10",
155
- "qs": "6.15.0",
155
+ "qs": "6.15.2",
156
156
  "ramda": "0.29.0",
157
157
  "react": "18.3.1",
158
158
  "react-dom": "18.3.1",
@@ -180,20 +180,20 @@
180
180
  "webpack": "5.104.1",
181
181
  "webpack-assets-manifest": "5.1.0",
182
182
  "webpack-cli": "5.1.4",
183
- "webpack-dev-server": "5.2.1",
183
+ "webpack-dev-server": "5.2.4",
184
184
  "yup": "0.32.11",
185
185
  "zustand": "4.4.2"
186
186
  },
187
187
  "peerDependencies": {
188
- "@babel/runtime": "7.29.2",
189
- "@bigbinary/neeto-atoms": "^1.0.42",
188
+ "@babel/runtime": "7.29.7",
189
+ "@bigbinary/neeto-atoms": "1.0.84",
190
190
  "@bigbinary/neeto-cist": "1.0.17",
191
- "@bigbinary/neeto-commons-frontend": "4.13.127",
192
- "@bigbinary/neeto-filters-frontend": "4.3.37",
191
+ "@bigbinary/neeto-commons-frontend": "4.13.132",
192
+ "@bigbinary/neeto-filters-frontend": "4.3.39",
193
193
  "@bigbinary/neeto-hotkeys": "1.0.9",
194
- "@bigbinary/neeto-icons": "1.20.88",
195
- "@bigbinary/neeto-molecules": "4.3.0",
196
- "@bigbinary/neetoui": "8.8.0",
194
+ "@bigbinary/neeto-icons": "1.20.89",
195
+ "@bigbinary/neeto-molecules": "5.1.28",
196
+ "@bigbinary/neetoui": "8.8.1",
197
197
  "@hello-pangea/dnd": "16.3.0",
198
198
  "@honeybadger-io/js": "6.10.1",
199
199
  "@honeybadger-io/react": "6.1.25",
@@ -201,12 +201,12 @@
201
201
  "@tanstack/react-query": "5.59.20",
202
202
  "@tanstack/react-query-devtools": "5.59.20",
203
203
  "antd": "5.22.1",
204
- "axios": "1.16.0",
204
+ "axios": "1.17.0",
205
205
  "buffer": "^6.0.3",
206
206
  "classnames": "2.5.1",
207
207
  "crypto-browserify": "3.12.1",
208
208
  "dayjs": "1.11.10",
209
- "dompurify": "3.4.1",
209
+ "dompurify": "3.4.7",
210
210
  "formik": "2.4.6",
211
211
  "https-browserify": "1.0.0",
212
212
  "i18next": "22.5.1",
@@ -215,7 +215,7 @@
215
215
  "mixpanel-browser": "^2.45.0",
216
216
  "os-browserify": "0.3.0",
217
217
  "path-browserify": "^1.0.1",
218
- "qs": "6.15.0",
218
+ "qs": "6.15.2",
219
219
  "ramda": "0.29.0",
220
220
  "react": "18.3.1",
221
221
  "react-dom": "18.3.1",
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BDc8DpmZ.js","sources":["../app/javascript/src/v2/common/SegmentForm/constants.js","../app/javascript/src/v2/common/SegmentForm/AddFilter.jsx","../app/javascript/src/v2/common/SegmentForm/index.jsx"],"sourcesContent":["export const STEPS = { ADD: \"add\", COLUMN: \"column\", VALUE: \"value\" };\n","import { useState } from \"react\";\n\nimport { Button, Select } from \"@bigbinary/neeto-atoms\";\nimport { PlusIcon, Trash2Icon } from \"lucide-react\";\nimport { existsBy, findBy, isNotPresent } from \"neetocist\";\nimport { assoc, isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Item from \"v2/components/Pane/Item\";\n\nimport { STEPS } from \"./constants\";\n\nconst AddFilter = ({\n columns,\n filters,\n handleChange,\n handleClearFilter,\n disabled = false,\n}) => {\n const { t } = useTranslation();\n const [selectedColumn, setSelectedColumn] = useState({\n step: STEPS.ADD,\n column: {},\n });\n\n // Disable the add button when\n // 1. No value is entered for previous filter\n // 2. There are no more columns\n const disableAddButton =\n (selectedColumn.step !== STEPS.ADD &&\n isNotPresent(\n findBy({ key: selectedColumn.column.key }, filters)?.value\n )) ||\n isEmpty(columns);\n\n const columnOptions = columns.map(({ label, key }) => ({\n label,\n value: key,\n }));\n\n return (\n <>\n {selectedColumn.step !== STEPS.ADD ? (\n <>\n <div className=\"flex w-full gap-4\">\n {selectedColumn.step === STEPS.COLUMN && (\n <Select\n isSearchable\n label={t(\"neetoFilters.views.newFilter\")}\n options={columnOptions}\n placeholder={t(\"neetoFilters.views.selectFilter\")}\n onChange={value => {\n const column = findBy({ key: value }, columns);\n setSelectedColumn({ step: STEPS.VALUE, column });\n }}\n />\n )}\n {selectedColumn.step === STEPS.VALUE && (\n <Item\n {...{ filters }}\n autoFocus\n column={selectedColumn.column}\n onChange={handleChange}\n />\n )}\n <Button\n className=\"mt-6 self-center\"\n icon={Trash2Icon}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => {\n handleClearFilter(selectedColumn.column);\n setSelectedColumn(assoc(\"step\", STEPS.ADD));\n }}\n />\n </div>\n <AddFilter\n {...{ filters, handleChange, handleClearFilter }}\n columns={columns.filter(({ key }) => !existsBy({ key }, filters))}\n disabled={disableAddButton}\n />\n </>\n ) : (\n <Button\n {...{ disabled }}\n className=\"self-start\"\n data-testid=\"neeto-filters-add-filter-button\"\n icon={PlusIcon}\n iconPosition=\"left\"\n label={t(\"neetoFilters.views.addFilter\")}\n variant=\"link\"\n onClick={() => setSelectedColumn(assoc(\"step\", STEPS.COLUMN))}\n />\n )}\n </>\n );\n};\n\nexport default AddFilter;\n","import { Accordion, Button, Sheet, Typography } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { Trash2Icon } from \"lucide-react\";\nimport { _existsBy, existsBy, isPresent, removeBy } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { buildSegmentsValidationSchema } from \"src/common/utils\";\nimport Item from \"v2/components/Pane/Item\";\nimport { buildFilteredColumns, buildUrlFromFilters } from \"v2/components/utils\";\n\nimport AddFilter from \"./AddFilter\";\n\nconst SegmentForm = ({\n isEdit = false,\n segmentFormInitialRef,\n isOpen,\n onClose,\n isSubmitting,\n handleSubmit,\n defaultSegmentName,\n initialValues,\n customFilters,\n columns,\n filters,\n childrenKeys,\n segmentHelpPopoverProps,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n\n const { groupedColumns = [], ungroupedColumns = [] } = buildFilteredColumns({\n searchTerm: \"\",\n columns,\n });\n\n const handleChange = (newFilters, isClearAll = false) => {\n const params = buildUrlFromFilters({\n columns,\n filters: newFilters,\n ...(isClearAll && { isClearAll: true, childrenKeys }),\n });\n\n history.push({ search: params });\n };\n\n const handleClearFilter = (column, values, setFieldValue) => {\n const formState = [\n {\n conditions: removeBy({ key: column.key }, values.filters[0].conditions),\n },\n ];\n const globalState = removeBy({ key: column.key }, filters);\n setFieldValue(\"filters\", formState);\n handleChange(globalState);\n };\n\n return (\n <Sheet {...{ isOpen, onClose }} initialFocusRef={segmentFormInitialRef}>\n <Sheet.Header>\n <div className=\"flex items-center gap-2\">\n <Typography variant=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"neetoFilters.views.editView\")\n : t(\"neetoFilters.views.addNewView\")}\n </Typography>\n {isPresent(segmentHelpPopoverProps) && (\n <HelpPopover {...segmentHelpPopoverProps} />\n )}\n </div>\n </Sheet.Header>\n <Form\n className=\"w-full\"\n formProps={{ noValidate: true }}\n formikProps={{\n initialValues,\n validateOnChange: true,\n validateOnBlur: true,\n validationSchema: buildSegmentsValidationSchema(defaultSegmentName),\n onSubmit: handleSubmit,\n }}\n >\n {({ errors, values, setFieldValue }) => (\n <>\n <Sheet.Body>\n <Input\n className=\"w-full grow-0\"\n error={errors.name}\n label={t(\"neetoFilters.views.name\")}\n name=\"name\"\n placeholder={t(\"neetoFilters.views.viewName\")}\n ref={segmentFormInitialRef}\n />\n <Typography className=\"mb-2 mt-4\" variant=\"h4\">\n {t(\"neetoFilters.common.filters\")}\n </Typography>\n <div className=\"neeto-filters-pane-filter__body flex w-full flex-col gap-5\">\n {ungroupedColumns\n .filter(({ key }) =>\n _existsBy({ key }, values.filters[0].conditions)\n )\n .map(column => (\n <div className=\"flex w-full gap-4\" key={column.key}>\n <Item\n {...{ column, filters }}\n autoFocus={column.key === isOpen}\n onChange={filters => {\n setFieldValue(\"filters\", [{ conditions: filters }]);\n handleChange(filters);\n }}\n />\n <Button\n className=\"mt-6 self-center\"\n icon={Trash2Icon}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() =>\n handleClearFilter(column, values, setFieldValue)\n }\n />\n </div>\n ))}\n {isPresent(groupedColumns) && (\n <Accordion>\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 />\n ))}\n </Accordion.Item>\n ))}\n </Accordion>\n )}\n {isEmpty([...groupedColumns, ...ungroupedColumns]) && (\n <Typography variant=\"body2\">\n {t(\"neetoFilters.messages.noResourcesFound\", {\n resources: t(\"neetoFilters.common.columns\"),\n })}\n </Typography>\n )}\n {customFilters}\n <AddFilter\n {...{ filters, handleChange }}\n columns={ungroupedColumns.filter(\n ({ key }) => !existsBy({ key }, filters)\n )}\n handleClearFilter={({ key }) =>\n handleChange(removeBy({ key }, filters))\n }\n />\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n disabled: isSubmitting || isEmpty(filters),\n }}\n />\n </Sheet.Footer>\n </>\n )}\n </Form>\n </Sheet>\n );\n};\n\nexport default SegmentForm;\n"],"names":["STEPS","ADD","COLUMN","VALUE","AddFilter","_ref","_findBy","columns","filters","handleChange","handleClearFilter","_ref$disabled","disabled","_useTranslation","useTranslation","t","_useState","useState","step","column","_useState2","_slicedToArray","selectedColumn","setSelectedColumn","disableAddButton","isNotPresent","findBy","key","value","isEmpty","columnOptions","map","_ref2","label","_jsx","_Fragment","children","_jsxs","className","Select","isSearchable","options","placeholder","onChange","Item","autoFocus","Button","icon","Trash2Icon","size","variant","onClick","assoc","_AddFilter","filter","_ref3","existsBy","PlusIcon","iconPosition","SegmentForm","_ref$isEdit","isEdit","segmentFormInitialRef","isOpen","onClose","isSubmitting","handleSubmit","defaultSegmentName","initialValues","customFilters","childrenKeys","segmentHelpPopoverProps","history","useHistory","_buildFilteredColumns","buildFilteredColumns","searchTerm","_buildFilteredColumns2","groupedColumns","_buildFilteredColumns3","ungroupedColumns","newFilters","isClearAll","arguments","length","undefined","params","buildUrlFromFilters","_objectSpread","push","search","values","setFieldValue","formState","conditions","removeBy","globalState","Sheet","initialFocusRef","Header","Typography","weight","isPresent","HelpPopover","Form","formProps","noValidate","formikProps","validateOnChange","validateOnBlur","validationSchema","buildSegmentsValidationSchema","onSubmit","errors","Body","Input","error","name","ref","_existsBy","Accordion","_ref4","group","title","_createElement","concat","_toConsumableArray","resources","_ref5","_ref6","Footer","ActionBlock","cancelButtonProps","submitButtonProps"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BnuYw-vQ.js","sources":["../app/javascript/src/v2/common/SegmentForm/constants.js","../app/javascript/src/v2/common/SegmentForm/AddFilter.jsx","../app/javascript/src/v2/common/SegmentForm/index.jsx"],"sourcesContent":["export const STEPS = { ADD: \"add\", COLUMN: \"column\", VALUE: \"value\" };\n","import { useState } from \"react\";\n\nimport { Button, Select } from \"@bigbinary/neeto-atoms\";\nimport { PlusIcon, Trash2Icon } from \"lucide-react\";\nimport { existsBy, findBy, isNotPresent } from \"neetocist\";\nimport { assoc, isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Item from \"v2/components/Pane/Item\";\n\nimport { STEPS } from \"./constants\";\n\nconst AddFilter = ({\n columns,\n filters,\n handleChange,\n handleClearFilter,\n disabled = false,\n}) => {\n const { t } = useTranslation();\n const [selectedColumn, setSelectedColumn] = useState({\n step: STEPS.ADD,\n column: {},\n });\n\n // Disable the add button when\n // 1. No value is entered for previous filter\n // 2. There are no more columns\n const disableAddButton =\n (selectedColumn.step !== STEPS.ADD &&\n isNotPresent(\n findBy({ key: selectedColumn.column.key }, filters)?.value\n )) ||\n isEmpty(columns);\n\n const columnOptions = columns.map(({ label, key }) => ({\n label,\n value: key,\n }));\n\n return (\n <>\n {selectedColumn.step !== STEPS.ADD ? (\n <>\n <div className=\"flex w-full gap-4\">\n {selectedColumn.step === STEPS.COLUMN && (\n <Select\n isSearchable\n label={t(\"neetoFilters.views.newFilter\")}\n options={columnOptions}\n placeholder={t(\"neetoFilters.views.selectFilter\")}\n onChange={value => {\n const column = findBy({ key: value }, columns);\n setSelectedColumn({ step: STEPS.VALUE, column });\n }}\n />\n )}\n {selectedColumn.step === STEPS.VALUE && (\n <Item\n {...{ filters }}\n autoFocus\n column={selectedColumn.column}\n onChange={handleChange}\n />\n )}\n <Button\n className=\"mt-6 self-center\"\n icon={Trash2Icon}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => {\n handleClearFilter(selectedColumn.column);\n setSelectedColumn(assoc(\"step\", STEPS.ADD));\n }}\n />\n </div>\n <AddFilter\n {...{ filters, handleChange, handleClearFilter }}\n columns={columns.filter(({ key }) => !existsBy({ key }, filters))}\n disabled={disableAddButton}\n />\n </>\n ) : (\n <Button\n {...{ disabled }}\n className=\"self-start\"\n data-testid=\"neeto-filters-add-filter-button\"\n icon={PlusIcon}\n iconPosition=\"left\"\n label={t(\"neetoFilters.views.addFilter\")}\n variant=\"link\"\n onClick={() => setSelectedColumn(assoc(\"step\", STEPS.COLUMN))}\n />\n )}\n </>\n );\n};\n\nexport default AddFilter;\n","import { Accordion, Button, Sheet, Typography } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { Trash2Icon } from \"lucide-react\";\nimport { _existsBy, existsBy, isPresent, removeBy } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { buildSegmentsValidationSchema } from \"src/common/utils\";\nimport Item from \"v2/components/Pane/Item\";\nimport { buildFilteredColumns, buildUrlFromFilters } from \"v2/components/utils\";\n\nimport AddFilter from \"./AddFilter\";\n\nconst SegmentForm = ({\n isEdit = false,\n segmentFormInitialRef,\n isOpen,\n onClose,\n isSubmitting,\n handleSubmit,\n defaultSegmentName,\n initialValues,\n customFilters,\n columns,\n filters,\n childrenKeys,\n segmentHelpPopoverProps,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n\n const { groupedColumns = [], ungroupedColumns = [] } = buildFilteredColumns({\n searchTerm: \"\",\n columns,\n });\n\n const handleChange = (newFilters, isClearAll = false) => {\n const params = buildUrlFromFilters({\n columns,\n filters: newFilters,\n ...(isClearAll && { isClearAll: true, childrenKeys }),\n });\n\n history.push({ search: params });\n };\n\n const handleClearFilter = (column, values, setFieldValue) => {\n const formState = [\n {\n conditions: removeBy({ key: column.key }, values.filters[0].conditions),\n },\n ];\n const globalState = removeBy({ key: column.key }, filters);\n setFieldValue(\"filters\", formState);\n handleChange(globalState);\n };\n\n return (\n <Sheet {...{ isOpen, onClose }} initialFocusRef={segmentFormInitialRef}>\n <Sheet.Header>\n <div className=\"flex items-center gap-2\">\n <Typography variant=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"neetoFilters.views.editView\")\n : t(\"neetoFilters.views.addNewView\")}\n </Typography>\n {isPresent(segmentHelpPopoverProps) && (\n <HelpPopover {...segmentHelpPopoverProps} />\n )}\n </div>\n </Sheet.Header>\n <Form\n className=\"w-full\"\n formProps={{ noValidate: true }}\n formikProps={{\n initialValues,\n validateOnChange: true,\n validateOnBlur: true,\n validationSchema: buildSegmentsValidationSchema(defaultSegmentName),\n onSubmit: handleSubmit,\n }}\n >\n {({ errors, values, setFieldValue }) => (\n <>\n <Sheet.Body>\n <Input\n className=\"w-full grow-0\"\n error={errors.name}\n label={t(\"neetoFilters.views.name\")}\n name=\"name\"\n placeholder={t(\"neetoFilters.views.viewName\")}\n ref={segmentFormInitialRef}\n />\n <Typography className=\"mb-2 mt-4\" variant=\"h4\">\n {t(\"neetoFilters.common.filters\")}\n </Typography>\n <div className=\"neeto-filters-pane-filter__body flex w-full flex-col gap-5\">\n {ungroupedColumns\n .filter(({ key }) =>\n _existsBy({ key }, values.filters[0].conditions)\n )\n .map(column => (\n <div className=\"flex w-full gap-4\" key={column.key}>\n <Item\n {...{ column, filters }}\n autoFocus={column.key === isOpen}\n onChange={filters => {\n setFieldValue(\"filters\", [{ conditions: filters }]);\n handleChange(filters);\n }}\n />\n <Button\n className=\"mt-6 self-center\"\n icon={Trash2Icon}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() =>\n handleClearFilter(column, values, setFieldValue)\n }\n />\n </div>\n ))}\n {isPresent(groupedColumns) && (\n <Accordion>\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 />\n ))}\n </Accordion.Item>\n ))}\n </Accordion>\n )}\n {isEmpty([...groupedColumns, ...ungroupedColumns]) && (\n <Typography variant=\"body2\">\n {t(\"neetoFilters.messages.noResourcesFound\", {\n resources: t(\"neetoFilters.common.columns\"),\n })}\n </Typography>\n )}\n {customFilters}\n <AddFilter\n {...{ filters, handleChange }}\n columns={ungroupedColumns.filter(\n ({ key }) => !existsBy({ key }, filters)\n )}\n handleClearFilter={({ key }) =>\n handleChange(removeBy({ key }, filters))\n }\n />\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n submitButtonProps={{\n disabled: isSubmitting || isEmpty(filters),\n }}\n />\n </Sheet.Footer>\n </>\n )}\n </Form>\n </Sheet>\n );\n};\n\nexport default SegmentForm;\n"],"names":["STEPS","ADD","COLUMN","VALUE","AddFilter","_ref","_findBy","columns","filters","handleChange","handleClearFilter","_ref$disabled","disabled","_useTranslation","useTranslation","t","_useState","useState","step","column","_useState2","_slicedToArray","selectedColumn","setSelectedColumn","disableAddButton","isNotPresent","findBy","key","value","isEmpty","columnOptions","map","_ref2","label","_jsx","_Fragment","children","_jsxs","className","Select","isSearchable","options","placeholder","onChange","Item","autoFocus","Button","icon","Trash2Icon","size","variant","onClick","assoc","_AddFilter","filter","_ref3","existsBy","PlusIcon","iconPosition","SegmentForm","_ref$isEdit","isEdit","segmentFormInitialRef","isOpen","onClose","isSubmitting","handleSubmit","defaultSegmentName","initialValues","customFilters","childrenKeys","segmentHelpPopoverProps","history","useHistory","_buildFilteredColumns","buildFilteredColumns","searchTerm","_buildFilteredColumns2","groupedColumns","_buildFilteredColumns3","ungroupedColumns","newFilters","isClearAll","arguments","length","undefined","params","buildUrlFromFilters","_objectSpread","push","search","values","setFieldValue","formState","conditions","removeBy","globalState","Sheet","initialFocusRef","Header","Typography","weight","isPresent","HelpPopover","Form","formProps","noValidate","formikProps","validateOnChange","validateOnBlur","validationSchema","buildSegmentsValidationSchema","onSubmit","errors","Body","Input","error","name","ref","_existsBy","Accordion","_ref4","group","title","_createElement","concat","_toConsumableArray","resources","_ref5","_ref6","Footer","ActionBlock","cancelButtonProps","submitButtonProps"],"mappings":"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"}