@redsift/table 11.6.0-muiv5-alpha.4 → 11.6.0-muiv5-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_internal/BaseComponents.js +3 -0
- package/_internal/BaseComponents.js.map +1 -0
- package/_internal/BasePopper.js +2448 -0
- package/_internal/BasePopper.js.map +1 -0
- package/_internal/BaseTextField.js +15 -0
- package/_internal/BaseTextField.js.map +1 -0
- package/_internal/ControlledPagination.js +10484 -0
- package/_internal/ControlledPagination.js.map +1 -0
- package/_internal/DataGrid.js +6 -0
- package/_internal/DataGrid.js.map +1 -0
- package/{components/DataGrid/DataGrid.d.ts → _internal/DataGrid2.js} +2 -2
- package/_internal/DataGrid2.js.map +1 -0
- package/_internal/GridToolbarFilterSemanticField.js +5 -0
- package/_internal/GridToolbarFilterSemanticField.js.map +1 -0
- package/{components/GridToolbarFilterSemanticField/GridToolbarFilterSemanticField.d.ts → _internal/GridToolbarFilterSemanticField2.js} +2 -2
- package/_internal/GridToolbarFilterSemanticField2.js.map +1 -0
- package/_internal/Pagination.js +7 -0
- package/_internal/Pagination.js.map +1 -0
- package/_internal/Portal.js +4363 -0
- package/_internal/Portal.js.map +1 -0
- package/{components/Pagination/ServerSideControlledPagination.d.ts → _internal/ServerSideControlledPagination.js} +19 -3
- package/_internal/StatefulDataGrid.js +6 -0
- package/_internal/StatefulDataGrid.js.map +1 -0
- package/{components/StatefulDataGrid/types.d.ts → _internal/StatefulDataGrid2.js} +5 -2
- package/_internal/StatefulDataGrid2.js.map +1 -0
- package/_internal/TextCell.js +3 -0
- package/_internal/TextCell.js.map +1 -0
- package/{components/TextCell/types.d.ts → _internal/TextCell2.js} +7 -2
- package/_internal/TextCell2.js.map +1 -0
- package/_internal/Toolbar.js +4 -0
- package/_internal/Toolbar.js.map +1 -0
- package/{components/Toolbar/types.d.ts → _internal/Toolbar2.js} +19 -3
- package/_internal/Toolbar2.js.map +1 -0
- package/_internal/ToolbarWrapper.js +6 -0
- package/_internal/ToolbarWrapper.js.map +1 -0
- package/{components/ToolbarWrapper/ToolbarWrapper.d.ts → _internal/ToolbarWrapper2.js} +2 -2
- package/_internal/ToolbarWrapper2.js.map +1 -0
- package/{_virtual → _internal}/_rollupPluginBabelHelpers.js +1 -1
- package/_internal/jsx-runtime.js +1342 -0
- package/_internal/jsx-runtime.js.map +1 -0
- package/{components/DataGrid/types.d.ts → _internal/types.js} +1 -2
- package/{components/GridToolbarFilterSemanticField/types.d.ts → _internal/types2.js} +1 -1
- package/_internal/useControlledDatagridState.js +2175 -0
- package/_internal/useControlledDatagridState.js.map +1 -0
- package/index.js +406 -38
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/_virtual/_commonjsHelpers.js +0 -6
- package/_virtual/_commonjsHelpers.js.map +0 -1
- package/_virtual/index.js +0 -4
- package/_virtual/index.js.map +0 -1
- package/_virtual/index2.js +0 -4
- package/_virtual/index2.js.map +0 -1
- package/_virtual/index3.js +0 -4
- package/_virtual/index3.js.map +0 -1
- package/_virtual/jsx-runtime.js +0 -4
- package/_virtual/jsx-runtime.js.map +0 -1
- package/_virtual/react-is.development.js +0 -4
- package/_virtual/react-is.development.js.map +0 -1
- package/_virtual/react-is.development2.js +0 -4
- package/_virtual/react-is.development2.js.map +0 -1
- package/_virtual/react-is.production.min.js +0 -4
- package/_virtual/react-is.production.min.js.map +0 -1
- package/_virtual/react-is.production.min2.js +0 -4
- package/_virtual/react-is.production.min2.js.map +0 -1
- package/_virtual/react-jsx-runtime.development.js +0 -4
- package/_virtual/react-jsx-runtime.development.js.map +0 -1
- package/_virtual/react-jsx-runtime.production.min.js +0 -4
- package/_virtual/react-jsx-runtime.production.min.js.map +0 -1
- package/components/BaseComponents/BaseButton.d.ts +0 -5
- package/components/BaseComponents/BaseButton.js +0 -41
- package/components/BaseComponents/BaseButton.js.map +0 -1
- package/components/BaseComponents/BaseCheckbox.d.ts +0 -5
- package/components/BaseComponents/BaseCheckbox.js +0 -24
- package/components/BaseComponents/BaseCheckbox.js.map +0 -1
- package/components/BaseComponents/BaseIcon.d.ts +0 -7
- package/components/BaseComponents/BaseIcon.js +0 -33
- package/components/BaseComponents/BaseIcon.js.map +0 -1
- package/components/BaseComponents/BasePopper.d.ts +0 -5
- package/components/BaseComponents/BasePopper.js +0 -13
- package/components/BaseComponents/BasePopper.js.map +0 -1
- package/components/BaseComponents/BaseTextField.d.ts +0 -5
- package/components/BaseComponents/BaseTextField.js +0 -26
- package/components/BaseComponents/BaseTextField.js.map +0 -1
- package/components/DataGrid/DataGrid.js +0 -340
- package/components/DataGrid/DataGrid.js.map +0 -1
- package/components/DataGrid/styles.js +0 -74
- package/components/DataGrid/styles.js.map +0 -1
- package/components/GridToolbarFilterSemanticField/GridToolbarFilterSemanticField.js +0 -183
- package/components/GridToolbarFilterSemanticField/GridToolbarFilterSemanticField.js.map +0 -1
- package/components/GridToolbarFilterSemanticField/styles.js +0 -20
- package/components/GridToolbarFilterSemanticField/styles.js.map +0 -1
- package/components/Pagination/ControlledPagination.d.ts +0 -21
- package/components/Pagination/ControlledPagination.js +0 -74
- package/components/Pagination/ControlledPagination.js.map +0 -1
- package/components/Pagination/ServerSideControlledPagination.js +0 -102
- package/components/Pagination/ServerSideControlledPagination.js.map +0 -1
- package/components/StatefulDataGrid/StatefulDataGrid.d.ts +0 -6
- package/components/StatefulDataGrid/StatefulDataGrid.js +0 -373
- package/components/StatefulDataGrid/StatefulDataGrid.js.map +0 -1
- package/components/TextCell/TextCell.d.ts +0 -9
- package/components/TextCell/TextCell.js +0 -48
- package/components/TextCell/TextCell.js.map +0 -1
- package/components/TextCell/styles.js +0 -22
- package/components/TextCell/styles.js.map +0 -1
- package/components/Toolbar/Toolbar.d.ts +0 -20
- package/components/Toolbar/Toolbar.js +0 -72
- package/components/Toolbar/Toolbar.js.map +0 -1
- package/components/Toolbar/styles.js +0 -17
- package/components/Toolbar/styles.js.map +0 -1
- package/components/ToolbarWrapper/ToolbarWrapper.js +0 -60
- package/components/ToolbarWrapper/ToolbarWrapper.js.map +0 -1
- package/hooks/useControlledDatagridState.js +0 -109
- package/hooks/useControlledDatagridState.js.map +0 -1
- package/hooks/useFetchState.js +0 -34
- package/hooks/useFetchState.js.map +0 -1
- package/hooks/useStatefulTable.d.ts +0 -12
- package/hooks/useStatefulTable.js +0 -182
- package/hooks/useStatefulTable.js.map +0 -1
- package/hooks/useTableStates.js +0 -52
- package/hooks/useTableStates.js.map +0 -1
- package/index.d.ts +0 -40
- package/packages/design-system/src/components/theme/context.js +0 -7
- package/packages/design-system/src/components/theme/context.js.map +0 -1
- package/packages/popovers/src/components/tooltip/Tooltip.js +0 -60
- package/packages/popovers/src/components/tooltip/Tooltip.js.map +0 -1
- package/packages/popovers/src/components/tooltip/context.js +0 -6
- package/packages/popovers/src/components/tooltip/context.js.map +0 -1
- package/packages/popovers/src/components/tooltip/types.js +0 -28
- package/packages/popovers/src/components/tooltip/types.js.map +0 -1
- package/packages/popovers/src/components/tooltip/useTooltip.js +0 -78
- package/packages/popovers/src/components/tooltip/useTooltip.js.map +0 -1
- package/packages/popovers/src/components/tooltip/useTooltipContext.js +0 -13
- package/packages/popovers/src/components/tooltip/useTooltipContext.js.map +0 -1
- package/packages/popovers/src/components/tooltip-content/TooltipContent.js +0 -79
- package/packages/popovers/src/components/tooltip-content/TooltipContent.js.map +0 -1
- package/packages/popovers/src/components/tooltip-content/styles.js +0 -127
- package/packages/popovers/src/components/tooltip-content/styles.js.map +0 -1
- package/packages/popovers/src/components/tooltip-trigger/TooltipTrigger.js +0 -47
- package/packages/popovers/src/components/tooltip-trigger/TooltipTrigger.js.map +0 -1
- package/utils/columnTypes/index.d.ts +0 -78
- package/utils/columnTypes/index.js +0 -49
- package/utils/columnTypes/index.js.map +0 -1
- package/utils/columns/detailPanelToggleColDef.d.ts +0 -5
- package/utils/columns/detailPanelToggleColDef.js +0 -8
- package/utils/columns/detailPanelToggleColDef.js.map +0 -1
- package/utils/fields/InputNumberInterval.js +0 -85
- package/utils/fields/InputNumberInterval.js.map +0 -1
- package/utils/gpt.d.ts +0 -3
- package/utils/gpt.js +0 -33
- package/utils/gpt.js.map +0 -1
- package/utils/localStorage.d.ts +0 -17
- package/utils/localStorage.js +0 -59
- package/utils/localStorage.js.map +0 -1
- package/utils/operators/index.d.ts +0 -68
- package/utils/operators/index.js +0 -52
- package/utils/operators/index.js.map +0 -1
- package/utils/operators/numeric/getGridNumericOperators.d.ts +0 -5
- package/utils/operators/numeric/getGridNumericOperators.js +0 -7
- package/utils/operators/numeric/getGridNumericOperators.js.map +0 -1
- package/utils/operators/numeric/isBetween.d.ts +0 -10
- package/utils/operators/numeric/isBetween.js +0 -28
- package/utils/operators/numeric/isBetween.js.map +0 -1
- package/utils/operators/string/doesNotContain.d.ts +0 -10
- package/utils/operators/string/doesNotContain.js +0 -25
- package/utils/operators/string/doesNotContain.js.map +0 -1
- package/utils/operators/string/doesNotEqual.d.ts +0 -10
- package/utils/operators/string/doesNotEqual.js +0 -25
- package/utils/operators/string/doesNotEqual.js.map +0 -1
- package/utils/operators/string/doesNotHave.d.ts +0 -16
- package/utils/operators/string/doesNotHave.js +0 -24
- package/utils/operators/string/doesNotHave.js.map +0 -1
- package/utils/operators/string/getGridStringOperators.d.ts +0 -5
- package/utils/operators/string/getGridStringOperators.js +0 -9
- package/utils/operators/string/getGridStringOperators.js.map +0 -1
- package/utils/operators/string/has.d.ts +0 -16
- package/utils/operators/string/has.js +0 -24
- package/utils/operators/string/has.js.map +0 -1
- package/utils/operators/string/hasOnly.d.ts +0 -16
- package/utils/operators/string/hasOnly.js +0 -24
- package/utils/operators/string/hasOnly.js.map +0 -1
- package/utils/operators/string/is.d.ts +0 -16
- package/utils/operators/string/is.js +0 -26
- package/utils/operators/string/is.js.map +0 -1
- package/utils/operators/string/isNot.d.ts +0 -16
- package/utils/operators/string/isNot.js +0 -26
- package/utils/operators/string/isNot.js.map +0 -1
- package/utils/operators/string-array/containsAnyOf.d.ts +0 -16
- package/utils/operators/string-array/containsAnyOf.js +0 -56
- package/utils/operators/string-array/containsAnyOf.js.map +0 -1
- package/utils/operators/string-array/doesNotHaveAnyOf.js +0 -26
- package/utils/operators/string-array/doesNotHaveAnyOf.js.map +0 -1
- package/utils/operators/string-array/endsWithAnyOf.d.ts +0 -10
- package/utils/operators/string-array/endsWithAnyOf.js +0 -31
- package/utils/operators/string-array/endsWithAnyOf.js.map +0 -1
- package/utils/operators/string-array/getGridStringArrayOperators.d.ts +0 -7
- package/utils/operators/string-array/getGridStringArrayOperators.js +0 -19
- package/utils/operators/string-array/getGridStringArrayOperators.js.map +0 -1
- package/utils/operators/string-array/hasAnyOf.d.ts +0 -16
- package/utils/operators/string-array/hasAnyOf.js +0 -28
- package/utils/operators/string-array/hasAnyOf.js.map +0 -1
- package/utils/operators/string-array/isAnyOf.d.ts +0 -16
- package/utils/operators/string-array/isAnyOf.js +0 -32
- package/utils/operators/string-array/isAnyOf.js.map +0 -1
- package/utils/operators/string-array/isNotAnyOf.d.ts +0 -10
- package/utils/operators/string-array/isNotAnyOf.js +0 -28
- package/utils/operators/string-array/isNotAnyOf.js.map +0 -1
- package/utils/operators/string-array/startsWithAnyOf.d.ts +0 -10
- package/utils/operators/string-array/startsWithAnyOf.js +0 -31
- package/utils/operators/string-array/startsWithAnyOf.js.map +0 -1
- package/utils/urlLocalStorageSync.d.ts +0 -73
- package/utils/urlLocalStorageSync.js +0 -756
- package/utils/urlLocalStorageSync.js.map +0 -1
- /package/{_virtual → _internal}/_rollupPluginBabelHelpers.js.map +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urlLocalStorageSync.js","sources":["../../src/utils/urlLocalStorageSync.ts"],"sourcesContent":["import {\n GridColDef,\n GridFilterModel,\n GridColumnVisibilityModel,\n GridSortModel,\n GridLinkOperator,\n GridFilterItem,\n GridSortItem,\n GridPinnedColumns,\n} from '@mui/x-data-grid-pro';\nimport { DataGridProps } from '../components/DataGrid';\nimport { operatorList } from './operators';\nimport {\n ExtendedGridFilterItem,\n ExtendedGridFilterModel,\n ExtendedGridPaginationModel,\n} from '../hooks/useStatefulTable';\nimport { GridInitialStatePro } from '@mui/x-data-grid-pro/models/gridStatePro';\n\ntype OperatorType = 'string' | 'number' | 'date' | 'dateTime' | 'boolean' | 'singleSelect';\n\ntype OperatorValue = string | string[];\n\n// reference value: https://www.w3schools.com/tags/ref_urlencode.ASP\nconst DECODER: Record<string, string> = {\n '%20': ' ',\n '%26': '&',\n '%3D': '=',\n '%3F': '?',\n '%5B': '[',\n '%5D': ']',\n '%2C': ',',\n '%3C': '<',\n '%3E': '>',\n '%21': '!',\n '%22': '\"',\n};\n\nconst ENCODER = {\n ' ': '%20',\n '&': '%26',\n '=': '%3D',\n '?': '%3F',\n '[': '%5B',\n ']': '%5D',\n ',': '%2C',\n '<': '%3C',\n '>': '%3E',\n '!': '%21',\n '\"': '%22',\n} as const;\n\nexport const decodeValue = (value: string): OperatorValue => {\n if (value === '') {\n return '';\n }\n\n const re = new RegExp(\n Object.keys(DECODER).reduce((acc, curr) => `${acc}|${curr}`),\n 'g'\n );\n // decodeValue for lists:\n if (value.startsWith('list[')) {\n const arrayValues = value.split('[')[1].split(']')[0];\n const arrayList = arrayValues\n .split(',')\n .map((v) => v.replace(re, (encoded) => DECODER[encoded]))\n .filter((item) => item);\n return arrayList.length > 0 ? arrayList : [];\n }\n\n return value.replace(re, (encoded) => DECODER[encoded]);\n};\n\nexport const encodeValue = (value: string | undefined) => {\n if (!value) {\n return '';\n }\n\n // Array encoding for value:\n // we are representing it as list[encoded], where encoded is the list comma separated\n if (Array.isArray(value)) {\n const encodedArray = value\n .map((entry: string) => {\n return String(entry).replace(/\\s|&|=|\\?|\\[|\\]/g, (encoded) => ENCODER[encoded as keyof typeof ENCODER]);\n })\n .join(',');\n return `list[${encodedArray}]`;\n }\n\n // we might also pass integers\n const castedValue = String(value);\n\n return castedValue.replace(/\\s|&|=|\\?|\\[|\\]/g, (encoded) => ENCODER[encoded as keyof typeof ENCODER]);\n};\n\nexport const urlSearchParamsToString = (searchParams: URLSearchParams): string => {\n let searchString = '';\n for (const [key, value] of searchParams) {\n searchString = searchString + `${key}=${value}&`;\n }\n return searchString.slice(0, searchString.length - 1);\n};\n\nexport const numberOperatorEncoder: Record<string, string> = {\n '=': 'eq',\n '!=': 'ne',\n '>': 'gt',\n '>=': 'gte',\n '<': 'lt',\n '<=': 'lte',\n};\n\nexport const numberOperatorDecoder: Record<string, string> = {\n eq: '=',\n ne: '!=',\n gt: '>',\n gte: '>=',\n lt: '<',\n lte: '<=',\n};\n\nconst isOperatorValueValid = (\n columnField: string,\n operatorValue: OperatorValue,\n columns: DataGridProps['columns']\n): boolean => {\n const column = columns.find((column) => column.field === columnField);\n if (!column) {\n return false;\n }\n const columnType = (column?.type || 'string') as OperatorType;\n const operators = operatorList[columnType];\n\n if (!operators) {\n return false;\n }\n\n if ('filterOperators' in operators) {\n return !!(operators as any).filterOperators.find((op: any) =>\n columnType === 'number' && Object.keys(numberOperatorEncoder).includes(op.value)\n ? numberOperatorEncoder[op.value] === operatorValue\n : op['value'] === operatorValue\n );\n }\n return !!(operators as any).find((op: any) =>\n ['number', 'rsNumber'].includes(columnType) && Object.keys(numberOperatorEncoder).includes(op.value)\n ? numberOperatorEncoder[op.value] === operatorValue\n : op['value'] === operatorValue\n );\n};\n\nconst listOperators = [\n 'containsAnyOf',\n 'doesNotContainAnyOf',\n 'endsWithAnyOf',\n 'doesNotEndWithAnyOf',\n 'hasAnyOf',\n 'doesNotHaveAnyOf',\n 'isAnyOf',\n 'isNotAnyOf',\n 'startsWithAnyOf',\n 'doesNotStartWithAnyOf',\n];\n\n// Check if the value doesn't break\nconst isValueValid = (\n value: OperatorValue,\n columnField: string,\n columns: DataGridProps['columns'],\n operatorValue: OperatorValue\n): boolean => {\n // every field accepts undefined as value for default\n if (value === undefined || value === '') {\n return true;\n }\n\n // xxxAnyOf accepts as value only lists, and we are declearing them in the\n // URL as `list=[...]`\n if (listOperators.includes(operatorValue as string)) {\n return Array.isArray(value) || value === '';\n }\n\n // We are accepting arrays only if they are of the 'xxxAnyOf' type\n if (Array.isArray(value) && !listOperators.includes(operatorValue as string)) {\n return false;\n }\n\n const column = columns.find((column) => column.field === columnField);\n if (!column) {\n return false;\n }\n const type = column['type'] ?? 'string';\n\n // Only date and rating fail with 500s, other set themselves as undefined\n if (type !== 'date' && type !== 'rating') {\n return true;\n }\n\n // just checking that rating is a number.\n if (type === 'rating') {\n return !isNaN(Number(value));\n }\n\n // format: YYYY-MM-DD\n // just verifying that the 3 values are numbers to avoid 500s,\n // If the value is invalid the form will appear as undefined\n if (type === 'date') {\n const dateSplitted = (value as string).split('-');\n if (dateSplitted.length !== 3) {\n return false;\n }\n const [YYYY, MM, DD] = dateSplitted;\n\n return !isNaN(parseInt(YYYY)) && !isNaN(parseInt(MM)) && !isNaN(parseInt(DD));\n }\n return false;\n};\n\n/** FILTERS */\n\n// example:\n// unicodeDomain[contains]=a&unicodeDomain[contains]=dsa&logicOperator=and&tab=ignored\nexport const getFilterModelFromString = (\n searchString: string,\n columns: DataGridProps['columns']\n): ExtendedGridFilterModel | 'invalid' => {\n if (!searchString) {\n return 'invalid';\n }\n\n let linkOperator = GridLinkOperator.And;\n let quickFilterValues: string[] = [];\n\n const searchParams = new URLSearchParams();\n for (const [key, value] of new URLSearchParams(searchString)) {\n if (\n key.startsWith('_') &&\n ![\n '_logicOperator',\n '_sortColumn',\n '_pinnedColumnsLeft',\n '_pinnedColumnsRight',\n '_columnVisibility',\n '_pagination',\n '_quickFilterValues',\n ].includes(key)\n ) {\n searchParams.set(key, value);\n }\n\n if (key === '_logicOperator') {\n linkOperator = value as GridLinkOperator;\n }\n\n if (key === '_quickFilterValues') {\n try {\n quickFilterValues = JSON.parse(decodeURIComponent(value));\n } catch {\n quickFilterValues = [];\n }\n }\n }\n\n let id = 5000;\n const fields = columns.map((column) => column.field);\n\n let isInvalid = false;\n\n const items: ExtendedGridFilterItem[] = [];\n searchParams.forEach((value, key) => {\n if (isInvalid) {\n return;\n }\n\n const field = key.split('[')[0].slice(1); // Slice to remove the _ at the beginning\n if (!fields.includes(field)) {\n return;\n }\n\n const columnType = columns.find((column) => column.field === field)?.type;\n\n const left = key.split(']')[0];\n if (left.split('[').length < 2) {\n isInvalid = true;\n return;\n }\n\n const splitRight = key.split('[')[1].split(']')[0].split(',');\n const type = splitRight[1];\n if (type !== columnType) {\n isInvalid = true;\n return;\n }\n\n const operator = splitRight[0];\n // if the operator is not part of the valid operators invalidate the URL\n if (!isOperatorValueValid(field, operator, columns) || Array.isArray(operator)) {\n isInvalid = true;\n return;\n }\n id += 1;\n\n const decodedValue = decodeValue(value);\n if (!isValueValid(decodedValue, field, columns, operator)) {\n isInvalid = true;\n return;\n }\n\n items.push({\n columnField: field,\n operatorValue:\n ['number', 'rsNumber'].includes(columnType!) && Object.keys(numberOperatorDecoder).includes(operator)\n ? numberOperatorDecoder[operator]\n : operator,\n id,\n value: listOperators.includes(operator as string) && decodedValue === '' ? [] : decodedValue,\n type,\n });\n });\n\n // If we found some condition that results in an invalid URL,\n // return the empty filterModel (this will trigger the localStorage)\n // and will pick up the last valid search\n if (isInvalid) {\n return 'invalid';\n }\n\n return { items, linkOperator, quickFilterValues };\n};\n\nexport const getSearchParamsFromFilterModel = (filterModel: ExtendedGridFilterModel): URLSearchParams => {\n const searchParams = new URLSearchParams();\n searchParams.set('_logicOperator', filterModel['linkOperator'] || '');\n filterModel['items'].forEach((item: ExtendedGridFilterItem) => {\n const { columnField, operatorValue, value, type } = item;\n\n if (Object.keys(numberOperatorEncoder).includes(operatorValue!)) {\n searchParams.set(\n `_${columnField}[${numberOperatorEncoder[operatorValue!]},${encodeValue(type)}]`,\n encodeValue(value)\n );\n } else {\n searchParams.set(`_${columnField}[${encodeValue(operatorValue)},${encodeValue(type)}]`, encodeValue(value));\n }\n });\n\n if (filterModel.quickFilterValues?.length) {\n searchParams.set('_quickFilterValues', encodeURIComponent(JSON.stringify(filterModel.quickFilterValues)));\n }\n\n return searchParams;\n};\n\n// Rules:\n// - if we have something in the URL, use that info\n// - if we don't have that, use the localStorage and update the URL\n// - if we don't have that, return an empty FilterModel\nconst getFilterModel = (\n search: string,\n columns: DataGridProps['columns'],\n localStorageFilters: string,\n setLocalStorageFilters: (search: string) => void,\n initialState: GridInitialStatePro | undefined,\n isNewVersion: boolean\n): ExtendedGridFilterModel => {\n const defaultValue =\n initialState && initialState.filter && initialState.filter.filterModel\n ? initialState.filter.filterModel\n : {\n items: [],\n linkOperator: GridLinkOperator.And,\n };\n\n if (isNewVersion) {\n return defaultValue;\n }\n\n const filterModelFromSearch = getFilterModelFromString(search, columns);\n\n if (filterModelFromSearch !== 'invalid') {\n const searchFromFilterModel = getSearchParamsFromFilterModel(filterModelFromSearch);\n const searchString = urlSearchParamsToString(searchFromFilterModel);\n if (searchString !== localStorageFilters) {\n setLocalStorageFilters(searchString);\n }\n return filterModelFromSearch;\n }\n\n const filterModelFromLocalStorage = getFilterModelFromString(localStorageFilters, columns);\n\n if (filterModelFromLocalStorage !== 'invalid') {\n return filterModelFromLocalStorage;\n }\n\n return defaultValue;\n};\n\n/** SORT */\n\nexport const getSortingFromString = (\n searchString: string,\n columns: DataGridProps['columns']\n): GridSortModel | 'invalid' => {\n if (!searchString) {\n return 'invalid';\n }\n\n const searchParams = new URLSearchParams(searchString);\n\n const value = searchParams.get('_sortColumn');\n\n if (value === '' || value === null || value === '[]') {\n return [];\n }\n\n const fields = columns.map((column) => column.field);\n const [column, order] = value.slice(1, value.length - 1).split(',');\n\n if (fields.includes(column) && (order === 'asc' || order === 'desc')) {\n return [\n {\n field: column,\n sort: order,\n },\n ];\n }\n\n return 'invalid';\n};\n\nexport const getSearchParamsFromSorting = (sorting: GridSortItem[]): URLSearchParams => {\n const searchParams = new URLSearchParams();\n searchParams.set(\n '_sortColumn',\n sorting.length > 0 && sorting[0].sort ? `[${encodeValue(sorting[0].field)},${encodeValue(sorting[0].sort)}]` : '[]'\n );\n\n return searchParams;\n};\n\n// Rules:\n// - if we have something in the URL, use that info\n// - if we don't have that, use the localStorage and update the URL\n// - if we don't have that, return an empty SortModel\nconst getSortModel = (\n search: string,\n columns: DataGridProps['columns'],\n localStorageSorting: string,\n setLocalStorageSorting: (search: string) => void,\n initialState: GridInitialStatePro | undefined,\n isNewVersion: boolean\n) => {\n const defaultValue = initialState?.sorting?.sortModel ? initialState.sorting.sortModel : [];\n\n if (isNewVersion) {\n return defaultValue;\n }\n\n const sorting = getSortingFromString(search, columns);\n\n if (sorting !== 'invalid') {\n const searchFromSortModel = getSearchParamsFromSorting(sorting);\n const searchString = urlSearchParamsToString(searchFromSortModel);\n if (searchString !== localStorageSorting) {\n setLocalStorageSorting(searchString);\n }\n return sorting;\n }\n\n const sortModelFromLocalStorage = getSortingFromString(localStorageSorting, columns);\n\n if (sortModelFromLocalStorage !== 'invalid') {\n return sortModelFromLocalStorage;\n }\n\n return defaultValue;\n};\n\n/** PAGINATION */\n\nexport const getPaginationFromString = (searchString: string): ExtendedGridPaginationModel | 'invalid' => {\n if (!searchString) {\n return 'invalid';\n }\n\n const searchParams = new URLSearchParams(searchString);\n\n const value = searchParams.get('_pagination');\n\n if (value === '' || value === null || value === '[]') {\n return 'invalid';\n }\n\n const pagination = value.slice(1, value.length - 1).split(',');\n const page = parseFloat(pagination[0]);\n const pageSize = parseFloat(pagination[1]);\n const direction = pagination[2];\n\n if (!Number.isNaN(page) && !Number.isNaN(pageSize) && direction && ['next', 'back'].includes(direction)) {\n return { page, pageSize, direction: direction as 'next' | 'back' };\n }\n\n return 'invalid';\n};\n\nexport const getSearchParamsFromPagination = (pagination: ExtendedGridPaginationModel): URLSearchParams => {\n const searchParams = new URLSearchParams();\n searchParams.set('_pagination', `[${pagination.page},${pagination.pageSize},${pagination.direction}]`);\n\n return searchParams;\n};\n\n// Rules:\n// - if we have something in the URL, use that info\n// - if we don't have that, use the localStorage and update the URL\n// - if we don't have that, return an empty PaginationModel\nconst getPaginationModel = (\n search: string,\n localStoragePagination: string,\n setLocalStoragePagination: (search: string) => void,\n initialState: GridInitialStatePro | undefined,\n isNewVersion: boolean\n) => {\n const defaultValue = initialState?.pagination\n ? ({ page: 0, pageSize: 25, direction: 'next', ...initialState.pagination } as ExtendedGridPaginationModel)\n : ({ page: 0, pageSize: 25, direction: 'next' } as ExtendedGridPaginationModel);\n\n if (isNewVersion) {\n return defaultValue;\n }\n\n const pagination = getPaginationFromString(search);\n\n if (pagination !== 'invalid') {\n const searchFromPaginationModel = getSearchParamsFromPagination(pagination);\n const searchString = urlSearchParamsToString(searchFromPaginationModel);\n if (searchString !== localStoragePagination) {\n setLocalStoragePagination(searchString);\n }\n return pagination;\n }\n\n const paginationModelFromLocalStorage = getPaginationFromString(localStoragePagination);\n\n if (paginationModelFromLocalStorage !== 'invalid') {\n return paginationModelFromLocalStorage;\n }\n\n return defaultValue;\n};\n\n/** COLUMN VISIBILITY */\n\nexport const getSearchParamsFromColumnVisibility = (\n columnVisibility: GridColumnVisibilityModel,\n columns: DataGridProps['columns']\n): URLSearchParams => {\n const searchParams = new URLSearchParams();\n const columnFields = columns.map((column) => column.field);\n\n // if column visibility model is empty, show all columns\n if (Object.keys(columnVisibility).length == 0) {\n searchParams.set('_columnVisibility', `[${columnFields.join(',')}]`);\n return searchParams;\n }\n\n const finalColumnVisibility = columns\n .filter((c) => !(c?.hideable ?? true))\n .map((c) => c.field)\n .reduce((acc, colName) => {\n return { ...acc, [colName]: true };\n }, columnVisibility);\n\n const visibleColumns = Object.entries(finalColumnVisibility)\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .filter(([_, visible]) => visible)\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(([column, _]) => encodeValue(column));\n\n searchParams.set('_columnVisibility', `[${visibleColumns.join(',')}]`);\n return searchParams;\n};\n\nexport const getColumnVisibilityFromString = (\n notParsed: string,\n tableColumns: DataGridProps['columns']\n): GridColumnVisibilityModel | 'invalid' => {\n if (!notParsed || (notParsed.length === 1 && notParsed[0] === '?')) {\n return 'invalid';\n }\n // remove the initial ? if present\n const parsed = notParsed[0] === '?' ? notParsed.slice(1) : notParsed;\n\n const visibility: GridColumnVisibilityModel = {};\n let exist = false;\n let visibleColumnsCount = 0;\n for (const item of parsed.split('&')) {\n // if it's not column visibility field, skip\n const fieldURL = item.split('=')[0];\n if (fieldURL !== '_columnVisibility') {\n continue;\n }\n // e.g. item = _columnVisibility[abc,def]\n const left = item.split(']')[0];\n if (left.split('[').length < 2) {\n continue;\n }\n\n const encodedValues = item.split('[')[1].split(']')[0];\n if (typeof encodedValues !== 'string') {\n continue;\n }\n\n exist = true;\n\n const columnFields = tableColumns.map((column) => column.field);\n // TODO: Add validation that , is present\n const columns = encodedValues.split(',').map((value) => decodeValue(value));\n\n // for each column, check if it's visible and add it to visibility model\n for (const column of columnFields) {\n const isColumnVisible = columns.includes(column);\n visibility[column] = isColumnVisible;\n if (isColumnVisible) {\n visibleColumnsCount += 1;\n }\n }\n }\n\n if (visibleColumnsCount === 0 && !exist) {\n return 'invalid';\n }\n\n return visibility;\n};\n\n// Rules:\n// - if we have something in the URL, use that info\n// - if we don't have that, use the localStorage and update the URL\n// - if we don't have that, return an empty ColumnVisibilityModel (which is all columns)\n// NOTE: the `defaultHidden` is a custom field and not standard DataGrid\n// The reason is the following bug: https://github.com/mui/mui-x/issues/8407\nconst getColumnsVisibility = (\n search: string,\n columns: (GridColDef & { defaultHidden?: boolean })[],\n localStorageColumnsVisibility: string,\n setLocalStorageColumnsVisibility: (search: string) => void,\n initialState: GridInitialStatePro | undefined,\n isNewVersion: boolean\n): GridColumnVisibilityModel => {\n const defaultValue: GridColumnVisibilityModel = {};\n for (const column of columns) {\n const field = column.field;\n if (initialState?.columns?.columnVisibilityModel?.[field] !== undefined) {\n defaultValue[field] = initialState.columns.columnVisibilityModel[field];\n } else {\n defaultValue[field] = column.defaultHidden !== true; // undefined will be true\n }\n }\n\n if (isNewVersion) {\n return defaultValue;\n }\n\n const columnVisibility = getColumnVisibilityFromString(search, columns);\n\n if (columnVisibility !== 'invalid') {\n const searchColumnVisibility = getSearchParamsFromColumnVisibility(columnVisibility, columns);\n\n if (searchColumnVisibility.toString() !== localStorageColumnsVisibility) {\n setLocalStorageColumnsVisibility(searchColumnVisibility.toString());\n }\n return columnVisibility;\n }\n\n const columnVisibilityFromLocalStorage = getColumnVisibilityFromString(localStorageColumnsVisibility, columns);\n\n if (columnVisibilityFromLocalStorage !== 'invalid') {\n return columnVisibilityFromLocalStorage;\n }\n\n if (initialState?.columns?.columnVisibilityModel) {\n return initialState.columns.columnVisibilityModel;\n }\n\n return defaultValue;\n};\n\nexport const getPinnedColumnsFromString = (\n notParsed: string,\n tableColumns: DataGridProps['columns']\n): PinnedColumns | 'invalid' => {\n if (!notParsed || (notParsed.length === 1 && notParsed[0] === '?')) {\n return 'invalid';\n }\n // remove the initial ? if present\n const parsed = notParsed[0] === '?' ? notParsed.slice(1) : notParsed;\n\n const pinnedColumns: Partial<PinnedColumns> = {};\n\n for (const item of parsed.split('&')) {\n const fieldURL = item.split('=')[0];\n if (fieldURL !== '_pinnedColumnsLeft' && fieldURL !== '_pinnedColumnsRight') {\n continue;\n }\n\n const left = item.split(']')[0];\n if (left.split('[').length < 2) {\n continue;\n }\n\n const encodedValues = item.split('[')[1].split(']')[0];\n if (typeof encodedValues !== 'string') {\n continue;\n }\n\n const columnFields = [...tableColumns.map((column) => column.field), '__check__'];\n\n const columns = encodedValues\n .split(',')\n .map((value) => decodeValue(value))\n .filter((val): val is string => typeof val === 'string' && columnFields.includes(val));\n\n if (fieldURL === '_pinnedColumnsLeft') {\n pinnedColumns['left'] = columns;\n }\n if (fieldURL === '_pinnedColumnsRight') {\n pinnedColumns['right'] = columns;\n }\n }\n\n return pinnedColumns['left'] || pinnedColumns['right']\n ? {\n left: pinnedColumns['left'] || [],\n right: pinnedColumns['right'] || [],\n }\n : 'invalid';\n};\n\nexport const getSearchParamsFromPinnedColumns = (pinnedColumns: GridPinnedColumns): URLSearchParams => {\n const searchParams = new URLSearchParams();\n const pinnedColumnLeft = pinnedColumns.left?.map((val) => encodeValue(val)) || [];\n const pinnedColumnRight = pinnedColumns.right?.map((val) => encodeValue(val)) || [];\n\n searchParams.set('_pinnedColumnsLeft', `[${pinnedColumnLeft.join(',')}]`);\n searchParams.set('_pinnedColumnsRight', `[${pinnedColumnRight.join(',')}]`);\n\n return searchParams;\n};\n\n// Rules:\n// - if we have something in the URL, use that info\n// - if we don't have that, use the localStorage and update the URL\n// - if we don't have that, return an empty ColumnVisibilityModel (which is all columns)\nconst getPinnedColumns = (\n search: string,\n columns: DataGridProps['columns'],\n localStoragePinnedColumns: string,\n setLocalStoragePinnedColumns: (pinnedColumns: string) => void,\n initialState: GridInitialStatePro | undefined,\n isNewVersion: boolean\n): PinnedColumns => {\n const defaultValue = initialState?.pinnedColumns\n ? {\n left: initialState?.pinnedColumns['left'] || [],\n right: initialState?.pinnedColumns['right'] || [],\n }\n : { left: [], right: [] };\n\n if (isNewVersion) {\n return defaultValue;\n }\n\n const pinnedColumns = getPinnedColumnsFromString(search, columns);\n\n if (pinnedColumns !== 'invalid') {\n const searchPinnedColumns = getSearchParamsFromPinnedColumns(pinnedColumns);\n\n if (searchPinnedColumns.toString() !== localStoragePinnedColumns) {\n setLocalStoragePinnedColumns(searchPinnedColumns.toString());\n }\n return pinnedColumns;\n }\n\n const pinnedColumnsFromLocalStorage = getPinnedColumnsFromString(localStoragePinnedColumns, columns);\n\n if (pinnedColumnsFromLocalStorage !== 'invalid') {\n return pinnedColumnsFromLocalStorage;\n }\n\n return defaultValue;\n};\n\nexport const getSearchParamsFromTab = (search: string): URLSearchParams => {\n const searchParams = new URLSearchParams();\n const openTab = new URLSearchParams(search).get('tab');\n if (openTab) {\n searchParams.set('tab', openTab);\n }\n return searchParams;\n};\n\ntype FinalSearchInput = {\n localStorageVersion: number;\n filterModel: GridFilterModel;\n sortModel: GridSortModel;\n paginationModel: ExtendedGridPaginationModel;\n columnsVisibilityModel: GridColumnVisibilityModel;\n pinnedColumnsModel: GridPinnedColumns;\n search: string;\n columns: DataGridProps['columns'];\n};\n\nexport const getFinalSearch = ({\n search,\n localStorageVersion,\n filterModel,\n sortModel,\n paginationModel,\n columnsVisibilityModel,\n pinnedColumnsModel,\n columns,\n}: FinalSearchInput): URLSearchParams => {\n const filterModelSearch = getSearchParamsFromFilterModel(filterModel);\n const sortModelSearch = getSearchParamsFromSorting(sortModel);\n const paginationModelSearch = getSearchParamsFromPagination(paginationModel);\n const columnVisibilityModelSearch = getSearchParamsFromColumnVisibility(columnsVisibilityModel, columns);\n const pinnedColumnsModelSearch = getSearchParamsFromPinnedColumns(pinnedColumnsModel);\n const tabSearch = getSearchParamsFromTab(search);\n\n const searchParams = new URLSearchParams();\n\n for (const [key, value] of new URLSearchParams(search)) {\n if (!key.startsWith('_')) {\n searchParams.set(key, value);\n }\n }\n searchParams.set('v', `${localStorageVersion}`);\n\n // Add quickFilterValues explicitly if present in filterModel\n if (filterModel.quickFilterValues && filterModel.quickFilterValues.length > 0) {\n // Encode array as JSON string to preserve all values in one param\n searchParams.set('_quickFilterValues', encodeURIComponent(JSON.stringify(filterModel.quickFilterValues)));\n }\n\n return new URLSearchParams([\n ...searchParams,\n ...filterModelSearch,\n ...sortModelSearch,\n ...paginationModelSearch,\n ...tabSearch,\n ...pinnedColumnsModelSearch,\n ...columnVisibilityModelSearch,\n ]);\n};\n\nexport type PinnedColumns = {\n left: string[];\n right: string[];\n};\n\ntype ModelsLocalStorage = {\n localStorageFilters: string;\n setLocalStorageFilters: (search: string) => void;\n localStorageSorting: string;\n setLocalStorageSorting: (search: string) => void;\n localStoragePagination: string;\n setLocalStoragePagination: (search: string) => void;\n localStorageColumnsVisibility: string;\n setLocalStorageColumnsVisibility: (search: string) => void;\n localStoragePinnedColumns: string;\n setLocalStoragePinnedColumns: (search: string) => void;\n};\n\ntype ModelsTable = {\n filterModel: GridFilterModel;\n sortModel: GridSortModel;\n paginationModel: ExtendedGridPaginationModel;\n columnVisibilityModel: GridColumnVisibilityModel;\n pinnedColumnsModel: PinnedColumns;\n};\n\n/** Return the state of the table given the URL and the local storage state */\nexport const getModelsParsedOrUpdateLocalStorage = (\n search: string,\n localStorageVersion: number,\n columns: DataGridProps['columns'],\n historyReplace: (newSearch: string) => void,\n initialState: GridInitialStatePro | undefined,\n localStorage: ModelsLocalStorage\n): ModelsTable => {\n const currentVersion = new URLSearchParams(search).get('v');\n const isNewVersion = !currentVersion || Number(currentVersion) !== localStorageVersion;\n\n const {\n localStorageFilters,\n setLocalStorageFilters,\n localStorageSorting,\n setLocalStorageSorting,\n localStoragePagination,\n setLocalStoragePagination,\n localStorageColumnsVisibility,\n setLocalStorageColumnsVisibility,\n localStoragePinnedColumns,\n setLocalStoragePinnedColumns,\n } = localStorage;\n\n const filterModel = getFilterModel(\n search,\n columns,\n localStorageFilters,\n setLocalStorageFilters,\n initialState,\n isNewVersion\n );\n const sortModel = getSortModel(\n search,\n columns,\n localStorageSorting,\n setLocalStorageSorting,\n initialState,\n isNewVersion\n );\n const paginationModel = getPaginationModel(\n search,\n localStoragePagination,\n setLocalStoragePagination,\n initialState,\n isNewVersion\n );\n const columnVisibilityModel = getColumnsVisibility(\n search,\n columns as (GridColDef & { defaultHidden?: boolean })[],\n localStorageColumnsVisibility,\n setLocalStorageColumnsVisibility,\n initialState,\n isNewVersion\n );\n const pinnedColumnsModel = getPinnedColumns(\n search,\n columns,\n localStoragePinnedColumns,\n setLocalStoragePinnedColumns,\n initialState,\n isNewVersion\n );\n\n const finalSearch = getFinalSearch({\n localStorageVersion,\n search,\n filterModel,\n sortModel,\n paginationModel,\n columnsVisibilityModel: columnVisibilityModel,\n pinnedColumnsModel,\n columns,\n });\n\n const searchString = urlSearchParamsToString(finalSearch);\n if (searchString !== search) {\n historyReplace(searchString);\n }\n\n return {\n filterModel,\n sortModel,\n paginationModel,\n columnVisibilityModel,\n pinnedColumnsModel,\n };\n};\n\nexport type DataGridModel = {\n filterModel: GridFilterModel;\n sortModel: GridSortModel;\n paginationModel: ExtendedGridPaginationModel;\n columnsModel: GridColumnVisibilityModel;\n pinnedColumnsModel: GridPinnedColumns;\n};\n\nexport const updateUrl = (\n { filterModel, sortModel, paginationModel, columnsModel: columnsVisibilityModel, pinnedColumnsModel }: DataGridModel,\n search: string,\n localStorageVersion: number,\n historyReplace: (newSearch: string) => void,\n columns: DataGridProps['columns']\n) => {\n const newSearch = getFinalSearch({\n search,\n localStorageVersion,\n filterModel,\n sortModel,\n paginationModel,\n columnsVisibilityModel,\n pinnedColumnsModel,\n columns,\n });\n\n const searchString = urlSearchParamsToString(newSearch);\n if (searchString !== search) {\n historyReplace(searchString);\n }\n};\n\n// Note: this is a comparator to sort the filters, not pure comparison\n// do not use it for equivalence (e.g. with value `3` and undefined we\n// will get 0).\nconst compareFilters = (firstFilter: GridFilterItem, secondFilter: GridFilterItem): number => {\n if (firstFilter.columnField < secondFilter.columnField) {\n return -1;\n } else if (firstFilter.columnField > secondFilter.columnField) {\n return 1;\n }\n if (firstFilter.operatorValue === undefined || secondFilter.operatorValue === undefined) {\n return 0;\n }\n if (firstFilter.operatorValue < secondFilter.operatorValue) {\n return -1;\n } else if (firstFilter.operatorValue > secondFilter.operatorValue) {\n return 1;\n }\n\n if (firstFilter.value < secondFilter.value) {\n return -1;\n } else if (firstFilter.value > secondFilter.value) {\n return 1;\n }\n\n return 0;\n};\n\nconst areFiltersEquivalent = (firstFilter: GridFilterItem, secondFilter: GridFilterItem): boolean => {\n return (\n firstFilter.columnField === secondFilter.columnField &&\n firstFilter.operatorValue === secondFilter.operatorValue &&\n firstFilter.value === secondFilter.value\n );\n};\n\nexport const areFilterModelsEquivalent = (\n filterModel: GridFilterModel,\n filterModelToMatch: GridFilterModel\n): boolean => {\n const { items, linkOperator } = filterModel;\n const { items: itemsToMatch, linkOperator: linkOperatorToMatch } = filterModelToMatch;\n\n if (linkOperator !== linkOperatorToMatch) {\n return false;\n }\n\n if (items.length !== itemsToMatch.length) {\n return false;\n }\n\n items.sort(compareFilters);\n itemsToMatch.sort(compareFilters);\n\n for (let i = 0; i < items.length; i++) {\n const filter = items[i];\n const filterToCompare = itemsToMatch[i];\n\n // compareFilters return 0 if and only if the filters have the same\n // columnField, operatorValue, and value\n if (!areFiltersEquivalent(filter, filterToCompare)) {\n return false;\n }\n }\n\n return true;\n};\n"],"names":["DECODER","ENCODER","decodeValue","value","re","RegExp","Object","keys","reduce","acc","curr","startsWith","arrayValues","split","arrayList","map","v","replace","encoded","filter","item","length","encodeValue","Array","isArray","encodedArray","entry","String","join","castedValue","urlSearchParamsToString","searchParams","searchString","key","slice","numberOperatorEncoder","numberOperatorDecoder","eq","ne","gt","gte","lt","lte","isOperatorValueValid","columnField","operatorValue","columns","column","find","field","columnType","type","operators","operatorList","filterOperators","op","includes","listOperators","isValueValid","_column$type","undefined","isNaN","Number","dateSplitted","YYYY","MM","DD","parseInt","getFilterModelFromString","linkOperator","GridLinkOperator","And","quickFilterValues","URLSearchParams","set","JSON","parse","decodeURIComponent","id","fields","isInvalid","items","forEach","_columns$find","left","splitRight","operator","decodedValue","push","getSearchParamsFromFilterModel","filterModel","_filterModel$quickFil","encodeURIComponent","stringify","getFilterModel","search","localStorageFilters","setLocalStorageFilters","initialState","isNewVersion","defaultValue","filterModelFromSearch","searchFromFilterModel","filterModelFromLocalStorage","getSortingFromString","get","order","sort","getSearchParamsFromSorting","sorting","getSortModel","localStorageSorting","setLocalStorageSorting","_initialState$sorting","sortModel","searchFromSortModel","sortModelFromLocalStorage","getPaginationFromString","pagination","page","parseFloat","pageSize","direction","getSearchParamsFromPagination","getPaginationModel","localStoragePagination","setLocalStoragePagination","_objectSpread","searchFromPaginationModel","paginationModelFromLocalStorage","getSearchParamsFromColumnVisibility","columnVisibility","columnFields","finalColumnVisibility","c","_c$hideable","hideable","colName","visibleColumns","entries","_ref","_","visible","_ref2","getColumnVisibilityFromString","notParsed","tableColumns","parsed","visibility","exist","visibleColumnsCount","fieldURL","encodedValues","isColumnVisible","getColumnsVisibility","localStorageColumnsVisibility","setLocalStorageColumnsVisibility","_initialState$columns3","_initialState$columns","_initialState$columns2","columnVisibilityModel","defaultHidden","searchColumnVisibility","toString","columnVisibilityFromLocalStorage","getPinnedColumnsFromString","pinnedColumns","val","right","getSearchParamsFromPinnedColumns","_pinnedColumns$left","_pinnedColumns$right","pinnedColumnLeft","pinnedColumnRight","getPinnedColumns","localStoragePinnedColumns","setLocalStoragePinnedColumns","searchPinnedColumns","pinnedColumnsFromLocalStorage","getSearchParamsFromTab","openTab","getFinalSearch","_ref3","localStorageVersion","paginationModel","columnsVisibilityModel","pinnedColumnsModel","filterModelSearch","sortModelSearch","paginationModelSearch","columnVisibilityModelSearch","pinnedColumnsModelSearch","tabSearch","getModelsParsedOrUpdateLocalStorage","historyReplace","localStorage","currentVersion","finalSearch","updateUrl","_ref4","columnsModel","newSearch","compareFilters","firstFilter","secondFilter","areFiltersEquivalent","areFilterModelsEquivalent","filterModelToMatch","itemsToMatch","linkOperatorToMatch","i","filterToCompare"],"mappings":"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"}
|
|
File without changes
|