@redsift/table 11.6.0-muiv5-alpha.11 → 11.6.0-muiv5-alpha.12
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/{packages/table/src/components/BaseComponents/_internal → _internal}/BaseComponents.js.map +1 -1
- package/_internal/BasePopper.js +2448 -0
- package/_internal/BasePopper.js.map +1 -0
- package/{packages/table/src/components/BaseComponents/_internal → _internal}/BaseTextField.js +1 -1
- package/_internal/BaseTextField.js.map +1 -0
- package/_internal/ControlledPagination.js +10484 -0
- package/_internal/ControlledPagination.js.map +1 -0
- package/_internal/DataGrid.js +2 -0
- package/{packages/table/src/components/DataGrid/_internal → _internal}/DataGrid2.js +8 -16
- package/_internal/DataGrid2.js.map +1 -0
- package/_internal/GridToolbarFilterSemanticField.js +2 -0
- package/_internal/GridToolbarFilterSemanticField2.js +5581 -0
- package/_internal/GridToolbarFilterSemanticField2.js.map +1 -0
- package/_internal/Pagination.js +2 -0
- package/{packages/table/src/components/Pagination/_internal → _internal}/Pagination.js.map +1 -1
- package/_internal/Portal.js +4363 -0
- package/_internal/Portal.js.map +1 -0
- package/_internal/StatefulDataGrid.js +2 -0
- package/{packages/table/src/utils/_internal/urlLocalStorageSync.js → _internal/StatefulDataGrid2.js} +671 -5
- package/_internal/StatefulDataGrid2.js.map +1 -0
- package/_internal/TextCell.js +2 -0
- package/{packages/table/src/components/TextCell/_internal → _internal}/TextCell2.js +21 -3
- package/_internal/TextCell2.js.map +1 -0
- package/_internal/Toolbar.js +2 -0
- package/{packages/table/src/components/Toolbar/_internal → _internal}/Toolbar2.js +17 -4
- package/_internal/Toolbar2.js.map +1 -0
- package/_internal/ToolbarWrapper.js +2 -0
- package/{packages/table/src/components/ToolbarWrapper/_internal → _internal}/ToolbarWrapper2.js +3 -4
- package/_internal/ToolbarWrapper2.js.map +1 -0
- package/{_virtual/_internal → _internal}/_rollupPluginBabelHelpers.js +1 -1
- package/_internal/jsx-runtime.js +1342 -0
- package/_internal/jsx-runtime.js.map +1 -0
- package/_internal/useControlledDatagridState.js +2175 -0
- package/_internal/useControlledDatagridState.js.map +1 -0
- package/index.js +19 -0
- package/index.js.map +1 -0
- package/package.json +2 -2
- package/_virtual/_internal/_commonjsHelpers.js +0 -6
- package/_virtual/_internal/_commonjsHelpers.js.map +0 -1
- package/_virtual/_internal/jsx-runtime.js +0 -4
- package/_virtual/_internal/jsx-runtime.js.map +0 -1
- package/_virtual/_internal/react-is.development.js +0 -4
- package/_virtual/_internal/react-is.development.js.map +0 -1
- package/_virtual/_internal/react-is.development2.js +0 -4
- package/_virtual/_internal/react-is.development2.js.map +0 -1
- package/_virtual/_internal/react-is.production.min.js +0 -4
- package/_virtual/_internal/react-is.production.min.js.map +0 -1
- package/_virtual/_internal/react-is.production.min2.js +0 -4
- package/_virtual/_internal/react-is.production.min2.js.map +0 -1
- package/_virtual/_internal/react-jsx-runtime.development.js +0 -4
- package/_virtual/_internal/react-jsx-runtime.development.js.map +0 -1
- package/_virtual/_internal/react-jsx-runtime.production.min.js +0 -4
- package/_virtual/_internal/react-jsx-runtime.production.min.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/packages/design-system/src/components/theme/_internal/context.js +0 -7
- package/packages/design-system/src/components/theme/_internal/context.js.map +0 -1
- package/packages/popovers/src/components/tooltip/_internal/Tooltip.js +0 -60
- package/packages/popovers/src/components/tooltip/_internal/Tooltip.js.map +0 -1
- package/packages/popovers/src/components/tooltip/_internal/context.js +0 -6
- package/packages/popovers/src/components/tooltip/_internal/context.js.map +0 -1
- package/packages/popovers/src/components/tooltip/_internal/types.js +0 -28
- package/packages/popovers/src/components/tooltip/_internal/types.js.map +0 -1
- package/packages/popovers/src/components/tooltip/_internal/useTooltip.js +0 -78
- package/packages/popovers/src/components/tooltip/_internal/useTooltip.js.map +0 -1
- package/packages/popovers/src/components/tooltip/_internal/useTooltipContext.js +0 -13
- package/packages/popovers/src/components/tooltip/_internal/useTooltipContext.js.map +0 -1
- package/packages/popovers/src/components/tooltip-content/_internal/TooltipContent.js +0 -79
- package/packages/popovers/src/components/tooltip-content/_internal/TooltipContent.js.map +0 -1
- package/packages/popovers/src/components/tooltip-content/_internal/styles.js +0 -127
- package/packages/popovers/src/components/tooltip-content/_internal/styles.js.map +0 -1
- package/packages/popovers/src/components/tooltip-trigger/_internal/TooltipTrigger.js +0 -47
- package/packages/popovers/src/components/tooltip-trigger/_internal/TooltipTrigger.js.map +0 -1
- package/packages/table/src/components/BaseComponents/_internal/BaseButton.js +0 -41
- package/packages/table/src/components/BaseComponents/_internal/BaseButton.js.map +0 -1
- package/packages/table/src/components/BaseComponents/_internal/BaseCheckbox.js +0 -24
- package/packages/table/src/components/BaseComponents/_internal/BaseCheckbox.js.map +0 -1
- package/packages/table/src/components/BaseComponents/_internal/BaseComponents.js +0 -6
- package/packages/table/src/components/BaseComponents/_internal/BaseIcon.js +0 -33
- package/packages/table/src/components/BaseComponents/_internal/BaseIcon.js.map +0 -1
- package/packages/table/src/components/BaseComponents/_internal/BasePopper.js +0 -13
- package/packages/table/src/components/BaseComponents/_internal/BasePopper.js.map +0 -1
- package/packages/table/src/components/BaseComponents/_internal/BaseTextField.js.map +0 -1
- package/packages/table/src/components/DataGrid/_internal/DataGrid.js +0 -2
- package/packages/table/src/components/DataGrid/_internal/DataGrid2.js.map +0 -1
- package/packages/table/src/components/DataGrid/_internal/styles.js +0 -74
- package/packages/table/src/components/DataGrid/_internal/styles.js.map +0 -1
- package/packages/table/src/components/GridToolbarFilterSemanticField/_internal/GridToolbarFilterSemanticField.js +0 -2
- package/packages/table/src/components/GridToolbarFilterSemanticField/_internal/GridToolbarFilterSemanticField2.js +0 -183
- package/packages/table/src/components/GridToolbarFilterSemanticField/_internal/GridToolbarFilterSemanticField2.js.map +0 -1
- package/packages/table/src/components/GridToolbarFilterSemanticField/_internal/styles.js +0 -20
- package/packages/table/src/components/GridToolbarFilterSemanticField/_internal/styles.js.map +0 -1
- package/packages/table/src/components/Pagination/_internal/ControlledPagination.js +0 -74
- package/packages/table/src/components/Pagination/_internal/ControlledPagination.js.map +0 -1
- package/packages/table/src/components/Pagination/_internal/Pagination.js +0 -3
- package/packages/table/src/components/Pagination/_internal/ServerSideControlledPagination.js +0 -102
- package/packages/table/src/components/Pagination/_internal/ServerSideControlledPagination.js.map +0 -1
- package/packages/table/src/components/StatefulDataGrid/_internal/StatefulDataGrid.js +0 -2
- package/packages/table/src/components/StatefulDataGrid/_internal/StatefulDataGrid2.js +0 -373
- package/packages/table/src/components/StatefulDataGrid/_internal/StatefulDataGrid2.js.map +0 -1
- package/packages/table/src/components/TextCell/_internal/TextCell.js +0 -2
- package/packages/table/src/components/TextCell/_internal/TextCell2.js.map +0 -1
- package/packages/table/src/components/TextCell/_internal/styles.js +0 -22
- package/packages/table/src/components/TextCell/_internal/styles.js.map +0 -1
- package/packages/table/src/components/Toolbar/_internal/Toolbar.js +0 -2
- package/packages/table/src/components/Toolbar/_internal/Toolbar2.js.map +0 -1
- package/packages/table/src/components/Toolbar/_internal/styles.js +0 -17
- package/packages/table/src/components/Toolbar/_internal/styles.js.map +0 -1
- package/packages/table/src/components/ToolbarWrapper/_internal/ToolbarWrapper.js +0 -2
- package/packages/table/src/components/ToolbarWrapper/_internal/ToolbarWrapper2.js.map +0 -1
- package/packages/table/src/hooks/_internal/useControlledDatagridState.js +0 -109
- package/packages/table/src/hooks/_internal/useControlledDatagridState.js.map +0 -1
- package/packages/table/src/hooks/_internal/useFetchState.js +0 -34
- package/packages/table/src/hooks/_internal/useFetchState.js.map +0 -1
- package/packages/table/src/hooks/_internal/useStatefulTable.js +0 -182
- package/packages/table/src/hooks/_internal/useStatefulTable.js.map +0 -1
- package/packages/table/src/hooks/_internal/useTableStates.js +0 -52
- package/packages/table/src/hooks/_internal/useTableStates.js.map +0 -1
- package/packages/table/src/index.js +0 -38
- package/packages/table/src/index.js.map +0 -1
- package/packages/table/src/utils/_internal/gpt.js +0 -33
- package/packages/table/src/utils/_internal/gpt.js.map +0 -1
- package/packages/table/src/utils/_internal/localStorage.js +0 -59
- package/packages/table/src/utils/_internal/localStorage.js.map +0 -1
- package/packages/table/src/utils/_internal/urlLocalStorageSync.js.map +0 -1
- package/packages/table/src/utils/columnTypes/index.js +0 -49
- package/packages/table/src/utils/columnTypes/index.js.map +0 -1
- package/packages/table/src/utils/columns/_internal/detailPanelToggleColDef.js +0 -8
- package/packages/table/src/utils/columns/_internal/detailPanelToggleColDef.js.map +0 -1
- package/packages/table/src/utils/fields/_internal/InputNumberInterval.js +0 -85
- package/packages/table/src/utils/fields/_internal/InputNumberInterval.js.map +0 -1
- package/packages/table/src/utils/operators/index.js +0 -52
- package/packages/table/src/utils/operators/index.js.map +0 -1
- package/packages/table/src/utils/operators/numeric/_internal/getGridNumericOperators.js +0 -7
- package/packages/table/src/utils/operators/numeric/_internal/getGridNumericOperators.js.map +0 -1
- package/packages/table/src/utils/operators/numeric/_internal/isBetween.js +0 -28
- package/packages/table/src/utils/operators/numeric/_internal/isBetween.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/doesNotContain.js +0 -25
- package/packages/table/src/utils/operators/string/_internal/doesNotContain.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/doesNotEqual.js +0 -25
- package/packages/table/src/utils/operators/string/_internal/doesNotEqual.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/doesNotHave.js +0 -24
- package/packages/table/src/utils/operators/string/_internal/doesNotHave.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/getGridStringOperators.js +0 -9
- package/packages/table/src/utils/operators/string/_internal/getGridStringOperators.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/has.js +0 -24
- package/packages/table/src/utils/operators/string/_internal/has.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/hasOnly.js +0 -24
- package/packages/table/src/utils/operators/string/_internal/hasOnly.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/is.js +0 -26
- package/packages/table/src/utils/operators/string/_internal/is.js.map +0 -1
- package/packages/table/src/utils/operators/string/_internal/isNot.js +0 -26
- package/packages/table/src/utils/operators/string/_internal/isNot.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/containsAnyOf.js +0 -56
- package/packages/table/src/utils/operators/string-array/_internal/containsAnyOf.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/doesNotHaveAnyOf.js +0 -26
- package/packages/table/src/utils/operators/string-array/_internal/doesNotHaveAnyOf.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/endsWithAnyOf.js +0 -31
- package/packages/table/src/utils/operators/string-array/_internal/endsWithAnyOf.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/getGridStringArrayOperators.js +0 -19
- package/packages/table/src/utils/operators/string-array/_internal/getGridStringArrayOperators.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/hasAnyOf.js +0 -28
- package/packages/table/src/utils/operators/string-array/_internal/hasAnyOf.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/isAnyOf.js +0 -32
- package/packages/table/src/utils/operators/string-array/_internal/isAnyOf.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/isNotAnyOf.js +0 -28
- package/packages/table/src/utils/operators/string-array/_internal/isNotAnyOf.js.map +0 -1
- package/packages/table/src/utils/operators/string-array/_internal/startsWithAnyOf.js +0 -31
- package/packages/table/src/utils/operators/string-array/_internal/startsWithAnyOf.js.map +0 -1
- /package/{packages/table/src/components/DataGrid/_internal → _internal}/DataGrid.js.map +0 -0
- /package/{packages/table/src/components/GridToolbarFilterSemanticField/_internal → _internal}/GridToolbarFilterSemanticField.js.map +0 -0
- /package/{packages/table/src/components/StatefulDataGrid/_internal → _internal}/StatefulDataGrid.js.map +0 -0
- /package/{packages/table/src/components/TextCell/_internal → _internal}/TextCell.js.map +0 -0
- /package/{packages/table/src/components/Toolbar/_internal → _internal}/Toolbar.js.map +0 -0
- /package/{packages/table/src/components/ToolbarWrapper/_internal → _internal}/ToolbarWrapper.js.map +0 -0
- /package/{_virtual/_internal → _internal}/_rollupPluginBabelHelpers.js.map +0 -0
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
const PAGINATION_MODEL_KEY = 'paginationModel';
|
|
2
|
-
const FILTER_MODEL_KEY = 'filterModel';
|
|
3
|
-
const SORT_MODEL_KEY = 'sortModel';
|
|
4
|
-
const VISIBILITY_MODEL_KEY = 'visibilityModel';
|
|
5
|
-
const PINNED_COLUMNS = 'pinnedColumns';
|
|
6
|
-
const DIMENSION_MODEL_KEY = 'dimension';
|
|
7
|
-
const FILTER_SEARCH_KEY = 'searchModel';
|
|
8
|
-
const CATEGORIES = [PAGINATION_MODEL_KEY, FILTER_MODEL_KEY, SORT_MODEL_KEY, VISIBILITY_MODEL_KEY, DIMENSION_MODEL_KEY, FILTER_SEARCH_KEY, PINNED_COLUMNS];
|
|
9
|
-
const buildStorageKey = _ref => {
|
|
10
|
-
let {
|
|
11
|
-
id,
|
|
12
|
-
version,
|
|
13
|
-
category
|
|
14
|
-
} = _ref;
|
|
15
|
-
return `${id}:${version}:${category}`;
|
|
16
|
-
};
|
|
17
|
-
const clearPreviousVersionStorage = (id, previousLocalStorageVersions) => {
|
|
18
|
-
for (const version of previousLocalStorageVersions) {
|
|
19
|
-
const keysToDelete = [buildStorageKey({
|
|
20
|
-
id,
|
|
21
|
-
version,
|
|
22
|
-
category: PAGINATION_MODEL_KEY
|
|
23
|
-
}), buildStorageKey({
|
|
24
|
-
id,
|
|
25
|
-
version,
|
|
26
|
-
category: SORT_MODEL_KEY
|
|
27
|
-
}), buildStorageKey({
|
|
28
|
-
id,
|
|
29
|
-
version,
|
|
30
|
-
category: FILTER_MODEL_KEY
|
|
31
|
-
}), buildStorageKey({
|
|
32
|
-
id,
|
|
33
|
-
version,
|
|
34
|
-
category: VISIBILITY_MODEL_KEY
|
|
35
|
-
}), buildStorageKey({
|
|
36
|
-
id,
|
|
37
|
-
version,
|
|
38
|
-
category: PINNED_COLUMNS
|
|
39
|
-
}), buildStorageKey({
|
|
40
|
-
id,
|
|
41
|
-
version,
|
|
42
|
-
category: FILTER_SEARCH_KEY
|
|
43
|
-
}), buildStorageKey({
|
|
44
|
-
id,
|
|
45
|
-
version,
|
|
46
|
-
category: DIMENSION_MODEL_KEY
|
|
47
|
-
})];
|
|
48
|
-
for (const keyToDelete of keysToDelete) {
|
|
49
|
-
try {
|
|
50
|
-
window.localStorage.removeItem(keyToDelete);
|
|
51
|
-
} catch (e) {
|
|
52
|
-
// Ignore
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export { CATEGORIES, DIMENSION_MODEL_KEY, FILTER_MODEL_KEY, FILTER_SEARCH_KEY, PAGINATION_MODEL_KEY, PINNED_COLUMNS, SORT_MODEL_KEY, VISIBILITY_MODEL_KEY, buildStorageKey, clearPreviousVersionStorage };
|
|
59
|
-
//# sourceMappingURL=localStorage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"localStorage.js","sources":["../../../../../../src/utils/localStorage.ts"],"sourcesContent":["export const PAGINATION_MODEL_KEY = 'paginationModel';\nexport const FILTER_MODEL_KEY = 'filterModel';\nexport const SORT_MODEL_KEY = 'sortModel';\nexport const VISIBILITY_MODEL_KEY = 'visibilityModel';\nexport const PINNED_COLUMNS = 'pinnedColumns';\nexport const DIMENSION_MODEL_KEY = 'dimension';\nexport const FILTER_SEARCH_KEY = 'searchModel';\nexport const CATEGORIES = [\n PAGINATION_MODEL_KEY,\n FILTER_MODEL_KEY,\n SORT_MODEL_KEY,\n VISIBILITY_MODEL_KEY,\n DIMENSION_MODEL_KEY,\n FILTER_SEARCH_KEY,\n PINNED_COLUMNS,\n] as const;\n\nexport type Category = (typeof CATEGORIES)[number];\n\nexport const buildStorageKey = ({ id, version, category }: { id: string; version: number; category: Category }) => {\n return `${id}:${version}:${category}` as const;\n};\n\nexport const clearPreviousVersionStorage = (id: string, previousLocalStorageVersions: number[]): void => {\n for (const version of previousLocalStorageVersions) {\n const keysToDelete = [\n buildStorageKey({\n id,\n version,\n category: PAGINATION_MODEL_KEY,\n }),\n buildStorageKey({ id, version, category: SORT_MODEL_KEY }),\n buildStorageKey({\n id,\n version,\n category: FILTER_MODEL_KEY,\n }),\n buildStorageKey({\n id,\n version,\n category: VISIBILITY_MODEL_KEY,\n }),\n buildStorageKey({\n id,\n version,\n category: PINNED_COLUMNS,\n }),\n buildStorageKey({\n id,\n version,\n category: FILTER_SEARCH_KEY,\n }),\n buildStorageKey({\n id,\n version,\n category: DIMENSION_MODEL_KEY,\n }),\n ];\n\n for (const keyToDelete of keysToDelete) {\n try {\n window.localStorage.removeItem(keyToDelete);\n } catch (e) {\n // Ignore\n }\n }\n }\n};\n"],"names":["PAGINATION_MODEL_KEY","FILTER_MODEL_KEY","SORT_MODEL_KEY","VISIBILITY_MODEL_KEY","PINNED_COLUMNS","DIMENSION_MODEL_KEY","FILTER_SEARCH_KEY","CATEGORIES","buildStorageKey","_ref","id","version","category","clearPreviousVersionStorage","previousLocalStorageVersions","keysToDelete","keyToDelete","window","localStorage","removeItem","e"],"mappings":"AAAO,MAAMA,oBAAoB,GAAG,kBAAiB;AAC9C,MAAMC,gBAAgB,GAAG,cAAa;AACtC,MAAMC,cAAc,GAAG,YAAW;AAClC,MAAMC,oBAAoB,GAAG,kBAAiB;AAC9C,MAAMC,cAAc,GAAG,gBAAe;AACtC,MAAMC,mBAAmB,GAAG,YAAW;AACvC,MAAMC,iBAAiB,GAAG,cAAa;MACjCC,UAAU,GAAG,CACxBP,oBAAoB,EACpBC,gBAAgB,EAChBC,cAAc,EACdC,oBAAoB,EACpBE,mBAAmB,EACnBC,iBAAiB,EACjBF,cAAc,EACN;AAIGI,MAAAA,eAAe,GAAGC,IAAA,IAAoF;EAAA,IAAnF;IAAEC,EAAE;IAAEC,OAAO;AAAEC,IAAAA,QAAAA;AAA8D,GAAC,GAAAH,IAAA,CAAA;AAC5G,EAAA,OAAQ,GAAEC,EAAG,CAAA,CAAA,EAAGC,OAAQ,CAAA,CAAA,EAAGC,QAAS,CAAC,CAAA,CAAA;AACvC,EAAC;MAEYC,2BAA2B,GAAGA,CAACH,EAAU,EAAEI,4BAAsC,KAAW;AACvG,EAAA,KAAK,MAAMH,OAAO,IAAIG,4BAA4B,EAAE;AAClD,IAAA,MAAMC,YAAY,GAAG,CACnBP,eAAe,CAAC;MACdE,EAAE;MACFC,OAAO;AACPC,MAAAA,QAAQ,EAAEZ,oBAAAA;KACX,CAAC,EACFQ,eAAe,CAAC;MAAEE,EAAE;MAAEC,OAAO;AAAEC,MAAAA,QAAQ,EAAEV,cAAAA;KAAgB,CAAC,EAC1DM,eAAe,CAAC;MACdE,EAAE;MACFC,OAAO;AACPC,MAAAA,QAAQ,EAAEX,gBAAAA;KACX,CAAC,EACFO,eAAe,CAAC;MACdE,EAAE;MACFC,OAAO;AACPC,MAAAA,QAAQ,EAAET,oBAAAA;KACX,CAAC,EACFK,eAAe,CAAC;MACdE,EAAE;MACFC,OAAO;AACPC,MAAAA,QAAQ,EAAER,cAAAA;KACX,CAAC,EACFI,eAAe,CAAC;MACdE,EAAE;MACFC,OAAO;AACPC,MAAAA,QAAQ,EAAEN,iBAAAA;KACX,CAAC,EACFE,eAAe,CAAC;MACdE,EAAE;MACFC,OAAO;AACPC,MAAAA,QAAQ,EAAEP,mBAAAA;AACZ,KAAC,CAAC,CACH,CAAA;AAED,IAAA,KAAK,MAAMW,WAAW,IAAID,YAAY,EAAE;MACtC,IAAI;AACFE,QAAAA,MAAM,CAACC,YAAY,CAACC,UAAU,CAACH,WAAW,CAAC,CAAA;OAC5C,CAAC,OAAOI,CAAC,EAAE;AACV;AAAA,OAAA;AAEJ,KAAA;AACF,GAAA;AACF;;;;"}
|
|
@@ -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":";;;;AAuBA;AACA,MAAMA,OAA+B,GAAG;AACtC,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAG;AACV,EAAA,KAAK,EAAE,GAAA;AACT,CAAC,CAAA;AAED,MAAMC,OAAO,GAAG;AACd,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAK;AACV,EAAA,GAAG,EAAE,KAAA;AACP,CAAU,CAAA;AAEGC,MAAAA,WAAW,GAAIC,KAAa,IAAoB;EAC3D,IAAIA,KAAK,KAAK,EAAE,EAAE;AAChB,IAAA,OAAO,EAAE,CAAA;AACX,GAAA;EAEA,MAAMC,EAAE,GAAG,IAAIC,MAAM,CACnBC,MAAM,CAACC,IAAI,CAACP,OAAO,CAAC,CAACQ,MAAM,CAAC,CAACC,GAAG,EAAEC,IAAI,KAAM,CAAED,EAAAA,GAAI,CAAGC,CAAAA,EAAAA,IAAK,CAAC,CAAA,CAAC,EAC5D,GACF,CAAC,CAAA;AACD;AACA,EAAA,IAAIP,KAAK,CAACQ,UAAU,CAAC,OAAO,CAAC,EAAE;AAC7B,IAAA,MAAMC,WAAW,GAAGT,KAAK,CAACU,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACA,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACrD,IAAA,MAAMC,SAAS,GAAGF,WAAW,CAC1BC,KAAK,CAAC,GAAG,CAAC,CACVE,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,OAAO,CAACb,EAAE,EAAGc,OAAO,IAAKlB,OAAO,CAACkB,OAAO,CAAC,CAAC,CAAC,CACxDC,MAAM,CAAEC,IAAI,IAAKA,IAAI,CAAC,CAAA;IACzB,OAAON,SAAS,CAACO,MAAM,GAAG,CAAC,GAAGP,SAAS,GAAG,EAAE,CAAA;AAC9C,GAAA;AAEA,EAAA,OAAOX,KAAK,CAACc,OAAO,CAACb,EAAE,EAAGc,OAAO,IAAKlB,OAAO,CAACkB,OAAO,CAAC,CAAC,CAAA;AACzD,EAAC;AAEYI,MAAAA,WAAW,GAAInB,KAAyB,IAAK;EACxD,IAAI,CAACA,KAAK,EAAE;AACV,IAAA,OAAO,EAAE,CAAA;AACX,GAAA;;AAEA;AACA;AACA,EAAA,IAAIoB,KAAK,CAACC,OAAO,CAACrB,KAAK,CAAC,EAAE;AACxB,IAAA,MAAMsB,YAAY,GAAGtB,KAAK,CACvBY,GAAG,CAAEW,KAAa,IAAK;AACtB,MAAA,OAAOC,MAAM,CAACD,KAAK,CAAC,CAACT,OAAO,CAAC,kBAAkB,EAAGC,OAAO,IAAKjB,OAAO,CAACiB,OAAO,CAAyB,CAAC,CAAA;AACzG,KAAC,CAAC,CACDU,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,OAAQ,CAAA,KAAA,EAAOH,YAAa,CAAE,CAAA,CAAA,CAAA;AAChC,GAAA;;AAEA;AACA,EAAA,MAAMI,WAAW,GAAGF,MAAM,CAACxB,KAAK,CAAC,CAAA;AAEjC,EAAA,OAAO0B,WAAW,CAACZ,OAAO,CAAC,kBAAkB,EAAGC,OAAO,IAAKjB,OAAO,CAACiB,OAAO,CAAyB,CAAC,CAAA;AACvG,EAAC;AAEYY,MAAAA,uBAAuB,GAAIC,YAA6B,IAAa;EAChF,IAAIC,YAAY,GAAG,EAAE,CAAA;EACrB,KAAK,MAAM,CAACC,GAAG,EAAE9B,KAAK,CAAC,IAAI4B,YAAY,EAAE;AACvCC,IAAAA,YAAY,GAAGA,YAAY,GAAI,GAAEC,GAAI,CAAA,CAAA,EAAG9B,KAAM,CAAE,CAAA,CAAA,CAAA;AAClD,GAAA;EACA,OAAO6B,YAAY,CAACE,KAAK,CAAC,CAAC,EAAEF,YAAY,CAACX,MAAM,GAAG,CAAC,CAAC,CAAA;AACvD,EAAC;AAEM,MAAMc,qBAA6C,GAAG;AAC3D,EAAA,GAAG,EAAE,IAAI;AACT,EAAA,IAAI,EAAE,IAAI;AACV,EAAA,GAAG,EAAE,IAAI;AACT,EAAA,IAAI,EAAE,KAAK;AACX,EAAA,GAAG,EAAE,IAAI;AACT,EAAA,IAAI,EAAE,KAAA;AACR,EAAC;AAEM,MAAMC,qBAA6C,GAAG;AAC3DC,EAAAA,EAAE,EAAE,GAAG;AACPC,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,EAAE,EAAE,GAAG;AACPC,EAAAA,GAAG,EAAE,IAAI;AACTC,EAAAA,EAAE,EAAE,GAAG;AACPC,EAAAA,GAAG,EAAE,IAAA;AACP,EAAC;AAED,MAAMC,oBAAoB,GAAGA,CAC3BC,WAAmB,EACnBC,aAA4B,EAC5BC,OAAiC,KACrB;AACZ,EAAA,MAAMC,MAAM,GAAGD,OAAO,CAACE,IAAI,CAAED,MAAM,IAAKA,MAAM,CAACE,KAAK,KAAKL,WAAW,CAAC,CAAA;EACrE,IAAI,CAACG,MAAM,EAAE;AACX,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;EACA,MAAMG,UAAU,GAAI,CAAAH,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAEI,IAAI,KAAI,QAAyB,CAAA;AAC7D,EAAA,MAAMC,SAAS,GAAGC,YAAY,CAACH,UAAU,CAAC,CAAA;EAE1C,IAAI,CAACE,SAAS,EAAE;AACd,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;EAEA,IAAI,iBAAiB,IAAIA,SAAS,EAAE;AAClC,IAAA,OAAO,CAAC,CAAEA,SAAS,CAASE,eAAe,CAACN,IAAI,CAAEO,EAAO,IACvDL,UAAU,KAAK,QAAQ,IAAI5C,MAAM,CAACC,IAAI,CAAC4B,qBAAqB,CAAC,CAACqB,QAAQ,CAACD,EAAE,CAACpD,KAAK,CAAC,GAC5EgC,qBAAqB,CAACoB,EAAE,CAACpD,KAAK,CAAC,KAAK0C,aAAa,GACjDU,EAAE,CAAC,OAAO,CAAC,KAAKV,aACtB,CAAC,CAAA;AACH,GAAA;EACA,OAAO,CAAC,CAAEO,SAAS,CAASJ,IAAI,CAAEO,EAAO,IACvC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAACC,QAAQ,CAACN,UAAU,CAAC,IAAI5C,MAAM,CAACC,IAAI,CAAC4B,qBAAqB,CAAC,CAACqB,QAAQ,CAACD,EAAE,CAACpD,KAAK,CAAC,GAChGgC,qBAAqB,CAACoB,EAAE,CAACpD,KAAK,CAAC,KAAK0C,aAAa,GACjDU,EAAE,CAAC,OAAO,CAAC,KAAKV,aACtB,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAMY,aAAa,GAAG,CACpB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,CACxB,CAAA;;AAED;AACA,MAAMC,YAAY,GAAGA,CACnBvD,KAAoB,EACpByC,WAAmB,EACnBE,OAAiC,EACjCD,aAA4B,KAChB;AAAA,EAAA,IAAAc,YAAA,CAAA;AACZ;AACA,EAAA,IAAIxD,KAAK,KAAKyD,SAAS,IAAIzD,KAAK,KAAK,EAAE,EAAE;AACvC,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;;AAEA;AACA;AACA,EAAA,IAAIsD,aAAa,CAACD,QAAQ,CAACX,aAAuB,CAAC,EAAE;IACnD,OAAOtB,KAAK,CAACC,OAAO,CAACrB,KAAK,CAAC,IAAIA,KAAK,KAAK,EAAE,CAAA;AAC7C,GAAA;;AAEA;AACA,EAAA,IAAIoB,KAAK,CAACC,OAAO,CAACrB,KAAK,CAAC,IAAI,CAACsD,aAAa,CAACD,QAAQ,CAACX,aAAuB,CAAC,EAAE;AAC5E,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;AAEA,EAAA,MAAME,MAAM,GAAGD,OAAO,CAACE,IAAI,CAAED,MAAM,IAAKA,MAAM,CAACE,KAAK,KAAKL,WAAW,CAAC,CAAA;EACrE,IAAI,CAACG,MAAM,EAAE;AACX,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;AACA,EAAA,MAAMI,IAAI,GAAA,CAAAQ,YAAA,GAAGZ,MAAM,CAAC,MAAM,CAAC,MAAAY,IAAAA,IAAAA,YAAA,KAAAA,KAAAA,CAAAA,GAAAA,YAAA,GAAI,QAAQ,CAAA;;AAEvC;AACA,EAAA,IAAIR,IAAI,KAAK,MAAM,IAAIA,IAAI,KAAK,QAAQ,EAAE;AACxC,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;;AAEA;EACA,IAAIA,IAAI,KAAK,QAAQ,EAAE;AACrB,IAAA,OAAO,CAACU,KAAK,CAACC,MAAM,CAAC3D,KAAK,CAAC,CAAC,CAAA;AAC9B,GAAA;;AAEA;AACA;AACA;EACA,IAAIgD,IAAI,KAAK,MAAM,EAAE;AACnB,IAAA,MAAMY,YAAY,GAAI5D,KAAK,CAAYU,KAAK,CAAC,GAAG,CAAC,CAAA;AACjD,IAAA,IAAIkD,YAAY,CAAC1C,MAAM,KAAK,CAAC,EAAE;AAC7B,MAAA,OAAO,KAAK,CAAA;AACd,KAAA;IACA,MAAM,CAAC2C,IAAI,EAAEC,EAAE,EAAEC,EAAE,CAAC,GAAGH,YAAY,CAAA;IAEnC,OAAO,CAACF,KAAK,CAACM,QAAQ,CAACH,IAAI,CAAC,CAAC,IAAI,CAACH,KAAK,CAACM,QAAQ,CAACF,EAAE,CAAC,CAAC,IAAI,CAACJ,KAAK,CAACM,QAAQ,CAACD,EAAE,CAAC,CAAC,CAAA;AAC/E,GAAA;AACA,EAAA,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;;AAED;;AAEA;AACA;MACaE,wBAAwB,GAAGA,CACtCpC,YAAoB,EACpBc,OAAiC,KACO;EACxC,IAAI,CAACd,YAAY,EAAE;AACjB,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AAEA,EAAA,IAAIqC,YAAY,GAAGC,gBAAgB,CAACC,GAAG,CAAA;EACvC,IAAIC,iBAA2B,GAAG,EAAE,CAAA;AAEpC,EAAA,MAAMzC,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;AAC1C,EAAA,KAAK,MAAM,CAACxC,GAAG,EAAE9B,KAAK,CAAC,IAAI,IAAIsE,eAAe,CAACzC,YAAY,CAAC,EAAE;AAC5D,IAAA,IACEC,GAAG,CAACtB,UAAU,CAAC,GAAG,CAAC,IACnB,CAAC,CACC,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,oBAAoB,CACrB,CAAC6C,QAAQ,CAACvB,GAAG,CAAC,EACf;AACAF,MAAAA,YAAY,CAAC2C,GAAG,CAACzC,GAAG,EAAE9B,KAAK,CAAC,CAAA;AAC9B,KAAA;IAEA,IAAI8B,GAAG,KAAK,gBAAgB,EAAE;AAC5BoC,MAAAA,YAAY,GAAGlE,KAAyB,CAAA;AAC1C,KAAA;IAEA,IAAI8B,GAAG,KAAK,oBAAoB,EAAE;MAChC,IAAI;QACFuC,iBAAiB,GAAGG,IAAI,CAACC,KAAK,CAACC,kBAAkB,CAAC1E,KAAK,CAAC,CAAC,CAAA;AAC3D,OAAC,CAAC,MAAM;AACNqE,QAAAA,iBAAiB,GAAG,EAAE,CAAA;AACxB,OAAA;AACF,KAAA;AACF,GAAA;EAEA,IAAIM,EAAE,GAAG,IAAI,CAAA;EACb,MAAMC,MAAM,GAAGjC,OAAO,CAAC/B,GAAG,CAAEgC,MAAM,IAAKA,MAAM,CAACE,KAAK,CAAC,CAAA;EAEpD,IAAI+B,SAAS,GAAG,KAAK,CAAA;EAErB,MAAMC,KAA+B,GAAG,EAAE,CAAA;AAC1ClD,EAAAA,YAAY,CAACmD,OAAO,CAAC,CAAC/E,KAAK,EAAE8B,GAAG,KAAK;AAAA,IAAA,IAAAkD,aAAA,CAAA;AACnC,IAAA,IAAIH,SAAS,EAAE;AACb,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,MAAM/B,KAAK,GAAGhB,GAAG,CAACpB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACqB,KAAK,CAAC,CAAC,CAAC,CAAC;AACzC,IAAA,IAAI,CAAC6C,MAAM,CAACvB,QAAQ,CAACP,KAAK,CAAC,EAAE;AAC3B,MAAA,OAAA;AACF,KAAA;IAEA,MAAMC,UAAU,IAAAiC,aAAA,GAAGrC,OAAO,CAACE,IAAI,CAAED,MAAM,IAAKA,MAAM,CAACE,KAAK,KAAKA,KAAK,CAAC,cAAAkC,aAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhDA,aAAA,CAAkDhC,IAAI,CAAA;IAEzE,MAAMiC,IAAI,GAAGnD,GAAG,CAACpB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9B,IAAIuE,IAAI,CAACvE,KAAK,CAAC,GAAG,CAAC,CAACQ,MAAM,GAAG,CAAC,EAAE;AAC9B2D,MAAAA,SAAS,GAAG,IAAI,CAAA;AAChB,MAAA,OAAA;AACF,KAAA;IAEA,MAAMK,UAAU,GAAGpD,GAAG,CAACpB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACA,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACA,KAAK,CAAC,GAAG,CAAC,CAAA;AAC7D,IAAA,MAAMsC,IAAI,GAAGkC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC1B,IAAIlC,IAAI,KAAKD,UAAU,EAAE;AACvB8B,MAAAA,SAAS,GAAG,IAAI,CAAA;AAChB,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,MAAMM,QAAQ,GAAGD,UAAU,CAAC,CAAC,CAAC,CAAA;AAC9B;AACA,IAAA,IAAI,CAAC1C,oBAAoB,CAACM,KAAK,EAAEqC,QAAQ,EAAExC,OAAO,CAAC,IAAIvB,KAAK,CAACC,OAAO,CAAC8D,QAAQ,CAAC,EAAE;AAC9EN,MAAAA,SAAS,GAAG,IAAI,CAAA;AAChB,MAAA,OAAA;AACF,KAAA;AACAF,IAAAA,EAAE,IAAI,CAAC,CAAA;AAEP,IAAA,MAAMS,YAAY,GAAGrF,WAAW,CAACC,KAAK,CAAC,CAAA;IACvC,IAAI,CAACuD,YAAY,CAAC6B,YAAY,EAAEtC,KAAK,EAAEH,OAAO,EAAEwC,QAAQ,CAAC,EAAE;AACzDN,MAAAA,SAAS,GAAG,IAAI,CAAA;AAChB,MAAA,OAAA;AACF,KAAA;IAEAC,KAAK,CAACO,IAAI,CAAC;AACT5C,MAAAA,WAAW,EAAEK,KAAK;AAClBJ,MAAAA,aAAa,EACX,CAAC,QAAQ,EAAE,UAAU,CAAC,CAACW,QAAQ,CAACN,UAAW,CAAC,IAAI5C,MAAM,CAACC,IAAI,CAAC6B,qBAAqB,CAAC,CAACoB,QAAQ,CAAC8B,QAAQ,CAAC,GACjGlD,qBAAqB,CAACkD,QAAQ,CAAC,GAC/BA,QAAQ;MACdR,EAAE;AACF3E,MAAAA,KAAK,EAAEsD,aAAa,CAACD,QAAQ,CAAC8B,QAAkB,CAAC,IAAIC,YAAY,KAAK,EAAE,GAAG,EAAE,GAAGA,YAAY;AAC5FpC,MAAAA,IAAAA;AACF,KAAC,CAAC,CAAA;AACJ,GAAC,CAAC,CAAA;;AAEF;AACA;AACA;AACA,EAAA,IAAI6B,SAAS,EAAE;AACb,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;EAEA,OAAO;IAAEC,KAAK;IAAEZ,YAAY;AAAEG,IAAAA,iBAAAA;GAAmB,CAAA;AACnD,EAAC;AAEYiB,MAAAA,8BAA8B,GAAIC,WAAoC,IAAsB;AAAA,EAAA,IAAAC,qBAAA,CAAA;AACvG,EAAA,MAAM5D,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;EAC1C1C,YAAY,CAAC2C,GAAG,CAAC,gBAAgB,EAAEgB,WAAW,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAA;AACrEA,EAAAA,WAAW,CAAC,OAAO,CAAC,CAACR,OAAO,CAAE9D,IAA4B,IAAK;IAC7D,MAAM;MAAEwB,WAAW;MAAEC,aAAa;MAAE1C,KAAK;AAAEgD,MAAAA,IAAAA;AAAK,KAAC,GAAG/B,IAAI,CAAA;IAExD,IAAId,MAAM,CAACC,IAAI,CAAC4B,qBAAqB,CAAC,CAACqB,QAAQ,CAACX,aAAc,CAAC,EAAE;MAC/Dd,YAAY,CAAC2C,GAAG,CACb,CAAA,CAAA,EAAG9B,WAAY,CAAGT,CAAAA,EAAAA,qBAAqB,CAACU,aAAa,CAAG,IAAGvB,WAAW,CAAC6B,IAAI,CAAE,CAAA,CAAA,CAAE,EAChF7B,WAAW,CAACnB,KAAK,CACnB,CAAC,CAAA;AACH,KAAC,MAAM;MACL4B,YAAY,CAAC2C,GAAG,CAAE,CAAA,CAAA,EAAG9B,WAAY,CAAGtB,CAAAA,EAAAA,WAAW,CAACuB,aAAa,CAAE,IAAGvB,WAAW,CAAC6B,IAAI,CAAE,CAAA,CAAA,CAAE,EAAE7B,WAAW,CAACnB,KAAK,CAAC,CAAC,CAAA;AAC7G,KAAA;AACF,GAAC,CAAC,CAAA;EAEF,IAAAwF,CAAAA,qBAAA,GAAID,WAAW,CAAClB,iBAAiB,MAAAmB,IAAAA,IAAAA,qBAAA,KAA7BA,KAAAA,CAAAA,IAAAA,qBAAA,CAA+BtE,MAAM,EAAE;AACzCU,IAAAA,YAAY,CAAC2C,GAAG,CAAC,oBAAoB,EAAEkB,kBAAkB,CAACjB,IAAI,CAACkB,SAAS,CAACH,WAAW,CAAClB,iBAAiB,CAAC,CAAC,CAAC,CAAA;AAC3G,GAAA;AAEA,EAAA,OAAOzC,YAAY,CAAA;AACrB,EAAC;;AAED;AACA;AACA;AACA;AACA,MAAM+D,cAAc,GAAGA,CACrBC,MAAc,EACdjD,OAAiC,EACjCkD,mBAA2B,EAC3BC,sBAAgD,EAChDC,YAA6C,EAC7CC,YAAqB,KACO;AAC5B,EAAA,MAAMC,YAAY,GAChBF,YAAY,IAAIA,YAAY,CAAC/E,MAAM,IAAI+E,YAAY,CAAC/E,MAAM,CAACuE,WAAW,GAClEQ,YAAY,CAAC/E,MAAM,CAACuE,WAAW,GAC/B;AACET,IAAAA,KAAK,EAAE,EAAE;IACTZ,YAAY,EAAEC,gBAAgB,CAACC,GAAAA;GAChC,CAAA;AAEP,EAAA,IAAI4B,YAAY,EAAE;AAChB,IAAA,OAAOC,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,MAAMC,qBAAqB,GAAGjC,wBAAwB,CAAC2B,MAAM,EAAEjD,OAAO,CAAC,CAAA;EAEvE,IAAIuD,qBAAqB,KAAK,SAAS,EAAE;AACvC,IAAA,MAAMC,qBAAqB,GAAGb,8BAA8B,CAACY,qBAAqB,CAAC,CAAA;AACnF,IAAA,MAAMrE,YAAY,GAAGF,uBAAuB,CAACwE,qBAAqB,CAAC,CAAA;IACnE,IAAItE,YAAY,KAAKgE,mBAAmB,EAAE;MACxCC,sBAAsB,CAACjE,YAAY,CAAC,CAAA;AACtC,KAAA;AACA,IAAA,OAAOqE,qBAAqB,CAAA;AAC9B,GAAA;AAEA,EAAA,MAAME,2BAA2B,GAAGnC,wBAAwB,CAAC4B,mBAAmB,EAAElD,OAAO,CAAC,CAAA;EAE1F,IAAIyD,2BAA2B,KAAK,SAAS,EAAE;AAC7C,IAAA,OAAOA,2BAA2B,CAAA;AACpC,GAAA;AAEA,EAAA,OAAOH,YAAY,CAAA;AACrB,CAAC,CAAA;;AAED;;MAEaI,oBAAoB,GAAGA,CAClCxE,YAAoB,EACpBc,OAAiC,KACH;EAC9B,IAAI,CAACd,YAAY,EAAE;AACjB,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AAEA,EAAA,MAAMD,YAAY,GAAG,IAAI0C,eAAe,CAACzC,YAAY,CAAC,CAAA;AAEtD,EAAA,MAAM7B,KAAK,GAAG4B,YAAY,CAAC0E,GAAG,CAAC,aAAa,CAAC,CAAA;EAE7C,IAAItG,KAAK,KAAK,EAAE,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAK,IAAI,EAAE;AACpD,IAAA,OAAO,EAAE,CAAA;AACX,GAAA;EAEA,MAAM4E,MAAM,GAAGjC,OAAO,CAAC/B,GAAG,CAAEgC,MAAM,IAAKA,MAAM,CAACE,KAAK,CAAC,CAAA;EACpD,MAAM,CAACF,MAAM,EAAE2D,KAAK,CAAC,GAAGvG,KAAK,CAAC+B,KAAK,CAAC,CAAC,EAAE/B,KAAK,CAACkB,MAAM,GAAG,CAAC,CAAC,CAACR,KAAK,CAAC,GAAG,CAAC,CAAA;AAEnE,EAAA,IAAIkE,MAAM,CAACvB,QAAQ,CAACT,MAAM,CAAC,KAAK2D,KAAK,KAAK,KAAK,IAAIA,KAAK,KAAK,MAAM,CAAC,EAAE;AACpE,IAAA,OAAO,CACL;AACEzD,MAAAA,KAAK,EAAEF,MAAM;AACb4D,MAAAA,IAAI,EAAED,KAAAA;AACR,KAAC,CACF,CAAA;AACH,GAAA;AAEA,EAAA,OAAO,SAAS,CAAA;AAClB,EAAC;AAEYE,MAAAA,0BAA0B,GAAIC,OAAuB,IAAsB;AACtF,EAAA,MAAM9E,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;AAC1C1C,EAAAA,YAAY,CAAC2C,GAAG,CACd,aAAa,EACbmC,OAAO,CAACxF,MAAM,GAAG,CAAC,IAAIwF,OAAO,CAAC,CAAC,CAAC,CAACF,IAAI,GAAI,CAAGrF,CAAAA,EAAAA,WAAW,CAACuF,OAAO,CAAC,CAAC,CAAC,CAAC5D,KAAK,CAAE,IAAG3B,WAAW,CAACuF,OAAO,CAAC,CAAC,CAAC,CAACF,IAAI,CAAE,CAAE,CAAA,CAAA,GAAG,IACjH,CAAC,CAAA;AAED,EAAA,OAAO5E,YAAY,CAAA;AACrB,EAAC;;AAED;AACA;AACA;AACA;AACA,MAAM+E,YAAY,GAAGA,CACnBf,MAAc,EACdjD,OAAiC,EACjCiE,mBAA2B,EAC3BC,sBAAgD,EAChDd,YAA6C,EAC7CC,YAAqB,KAClB;AAAA,EAAA,IAAAc,qBAAA,CAAA;EACH,MAAMb,YAAY,GAAGF,YAAY,KAAZA,IAAAA,IAAAA,YAAY,gBAAAe,qBAAA,GAAZf,YAAY,CAAEW,OAAO,MAAA,IAAA,IAAAI,qBAAA,KAArBA,KAAAA,CAAAA,IAAAA,qBAAA,CAAuBC,SAAS,GAAGhB,YAAY,CAACW,OAAO,CAACK,SAAS,GAAG,EAAE,CAAA;AAE3F,EAAA,IAAIf,YAAY,EAAE;AAChB,IAAA,OAAOC,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,MAAMS,OAAO,GAAGL,oBAAoB,CAACT,MAAM,EAAEjD,OAAO,CAAC,CAAA;EAErD,IAAI+D,OAAO,KAAK,SAAS,EAAE;AACzB,IAAA,MAAMM,mBAAmB,GAAGP,0BAA0B,CAACC,OAAO,CAAC,CAAA;AAC/D,IAAA,MAAM7E,YAAY,GAAGF,uBAAuB,CAACqF,mBAAmB,CAAC,CAAA;IACjE,IAAInF,YAAY,KAAK+E,mBAAmB,EAAE;MACxCC,sBAAsB,CAAChF,YAAY,CAAC,CAAA;AACtC,KAAA;AACA,IAAA,OAAO6E,OAAO,CAAA;AAChB,GAAA;AAEA,EAAA,MAAMO,yBAAyB,GAAGZ,oBAAoB,CAACO,mBAAmB,EAAEjE,OAAO,CAAC,CAAA;EAEpF,IAAIsE,yBAAyB,KAAK,SAAS,EAAE;AAC3C,IAAA,OAAOA,yBAAyB,CAAA;AAClC,GAAA;AAEA,EAAA,OAAOhB,YAAY,CAAA;AACrB,CAAC,CAAA;;AAED;;AAEaiB,MAAAA,uBAAuB,GAAIrF,YAAoB,IAA8C;EACxG,IAAI,CAACA,YAAY,EAAE;AACjB,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AAEA,EAAA,MAAMD,YAAY,GAAG,IAAI0C,eAAe,CAACzC,YAAY,CAAC,CAAA;AAEtD,EAAA,MAAM7B,KAAK,GAAG4B,YAAY,CAAC0E,GAAG,CAAC,aAAa,CAAC,CAAA;EAE7C,IAAItG,KAAK,KAAK,EAAE,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAK,IAAI,EAAE;AACpD,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AAEA,EAAA,MAAMmH,UAAU,GAAGnH,KAAK,CAAC+B,KAAK,CAAC,CAAC,EAAE/B,KAAK,CAACkB,MAAM,GAAG,CAAC,CAAC,CAACR,KAAK,CAAC,GAAG,CAAC,CAAA;EAC9D,MAAM0G,IAAI,GAAGC,UAAU,CAACF,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;EACtC,MAAMG,QAAQ,GAAGD,UAAU,CAACF,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AAC1C,EAAA,MAAMI,SAAS,GAAGJ,UAAU,CAAC,CAAC,CAAC,CAAA;AAE/B,EAAA,IAAI,CAACxD,MAAM,CAACD,KAAK,CAAC0D,IAAI,CAAC,IAAI,CAACzD,MAAM,CAACD,KAAK,CAAC4D,QAAQ,CAAC,IAAIC,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAClE,QAAQ,CAACkE,SAAS,CAAC,EAAE;IACvG,OAAO;MAAEH,IAAI;MAAEE,QAAQ;AAAEC,MAAAA,SAAS,EAAEA,SAAAA;KAA8B,CAAA;AACpE,GAAA;AAEA,EAAA,OAAO,SAAS,CAAA;AAClB,EAAC;AAEYC,MAAAA,6BAA6B,GAAIL,UAAuC,IAAsB;AACzG,EAAA,MAAMvF,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;AAC1C1C,EAAAA,YAAY,CAAC2C,GAAG,CAAC,aAAa,EAAG,CAAA,CAAA,EAAG4C,UAAU,CAACC,IAAK,CAAGD,CAAAA,EAAAA,UAAU,CAACG,QAAS,CAAA,CAAA,EAAGH,UAAU,CAACI,SAAU,GAAE,CAAC,CAAA;AAEtG,EAAA,OAAO3F,YAAY,CAAA;AACrB,EAAC;;AAED;AACA;AACA;AACA;AACA,MAAM6F,kBAAkB,GAAGA,CACzB7B,MAAc,EACd8B,sBAA8B,EAC9BC,yBAAmD,EACnD5B,YAA6C,EAC7CC,YAAqB,KAClB;EACH,MAAMC,YAAY,GAAGF,YAAY,KAAZA,IAAAA,IAAAA,YAAY,eAAZA,YAAY,CAAEoB,UAAU,GAAAS,cAAA,CAAA;AACtCR,IAAAA,IAAI,EAAE,CAAC;AAAEE,IAAAA,QAAQ,EAAE,EAAE;AAAEC,IAAAA,SAAS,EAAE,MAAA;GAAWxB,EAAAA,YAAY,CAACoB,UAAU,CACtE,GAAA;AAAEC,IAAAA,IAAI,EAAE,CAAC;AAAEE,IAAAA,QAAQ,EAAE,EAAE;AAAEC,IAAAA,SAAS,EAAE,MAAA;GAAwC,CAAA;AAEjF,EAAA,IAAIvB,YAAY,EAAE;AAChB,IAAA,OAAOC,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,MAAMkB,UAAU,GAAGD,uBAAuB,CAACtB,MAAM,CAAC,CAAA;EAElD,IAAIuB,UAAU,KAAK,SAAS,EAAE;AAC5B,IAAA,MAAMU,yBAAyB,GAAGL,6BAA6B,CAACL,UAAU,CAAC,CAAA;AAC3E,IAAA,MAAMtF,YAAY,GAAGF,uBAAuB,CAACkG,yBAAyB,CAAC,CAAA;IACvE,IAAIhG,YAAY,KAAK6F,sBAAsB,EAAE;MAC3CC,yBAAyB,CAAC9F,YAAY,CAAC,CAAA;AACzC,KAAA;AACA,IAAA,OAAOsF,UAAU,CAAA;AACnB,GAAA;AAEA,EAAA,MAAMW,+BAA+B,GAAGZ,uBAAuB,CAACQ,sBAAsB,CAAC,CAAA;EAEvF,IAAII,+BAA+B,KAAK,SAAS,EAAE;AACjD,IAAA,OAAOA,+BAA+B,CAAA;AACxC,GAAA;AAEA,EAAA,OAAO7B,YAAY,CAAA;AACrB,CAAC,CAAA;;AAED;;MAEa8B,mCAAmC,GAAGA,CACjDC,gBAA2C,EAC3CrF,OAAiC,KACb;AACpB,EAAA,MAAMf,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;EAC1C,MAAM2D,YAAY,GAAGtF,OAAO,CAAC/B,GAAG,CAAEgC,MAAM,IAAKA,MAAM,CAACE,KAAK,CAAC,CAAA;;AAE1D;EACA,IAAI3C,MAAM,CAACC,IAAI,CAAC4H,gBAAgB,CAAC,CAAC9G,MAAM,IAAI,CAAC,EAAE;AAC7CU,IAAAA,YAAY,CAAC2C,GAAG,CAAC,mBAAmB,EAAG,CAAA,CAAA,EAAG0D,YAAY,CAACxG,IAAI,CAAC,GAAG,CAAE,GAAE,CAAC,CAAA;AACpE,IAAA,OAAOG,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,MAAMsG,qBAAqB,GAAGvF,OAAO,CAClC3B,MAAM,CAAEmH,CAAC,IAAA;AAAA,IAAA,IAAAC,WAAA,CAAA;AAAA,IAAA,OAAK,GAAAA,WAAA,GAAED,CAAC,KAAA,IAAA,IAADA,CAAC,KAADA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAC,CAAEE,QAAQ,cAAAD,WAAA,KAAA,KAAA,CAAA,GAAAA,WAAA,GAAI,IAAI,CAAC,CAAA;AAAA,GAAA,CAAC,CACrCxH,GAAG,CAAEuH,CAAC,IAAKA,CAAC,CAACrF,KAAK,CAAC,CACnBzC,MAAM,CAAC,CAACC,GAAG,EAAEgI,OAAO,KAAK;AACxB,IAAA,OAAAV,cAAA,CAAAA,cAAA,CAAA,EAAA,EAAYtH,GAAG,CAAA,EAAA,EAAA,EAAA;AAAE,MAAA,CAACgI,OAAO,GAAG,IAAA;AAAI,KAAA,CAAA,CAAA;GACjC,EAAEN,gBAAgB,CAAC,CAAA;AAEtB,EAAA,MAAMO,cAAc,GAAGpI,MAAM,CAACqI,OAAO,CAACN,qBAAqB,CAAA;AACzD;GACClH,MAAM,CAACyH,IAAA,IAAA;AAAA,IAAA,IAAC,CAACC,CAAC,EAAEC,OAAO,CAAC,GAAAF,IAAA,CAAA;AAAA,IAAA,OAAKE,OAAO,CAAA;AAAA,GAAA,CAAA;AACjC;GACC/H,GAAG,CAACgI,KAAA,IAAA;AAAA,IAAA,IAAC,CAAChG,MAAM,EAAE8F,CAAC,CAAC,GAAAE,KAAA,CAAA;IAAA,OAAKzH,WAAW,CAACyB,MAAM,CAAC,CAAA;GAAC,CAAA,CAAA;AAE5ChB,EAAAA,YAAY,CAAC2C,GAAG,CAAC,mBAAmB,EAAG,CAAA,CAAA,EAAGgE,cAAc,CAAC9G,IAAI,CAAC,GAAG,CAAE,GAAE,CAAC,CAAA;AACtE,EAAA,OAAOG,YAAY,CAAA;AACrB,EAAC;MAEYiH,6BAA6B,GAAGA,CAC3CC,SAAiB,EACjBC,YAAsC,KACI;AAC1C,EAAA,IAAI,CAACD,SAAS,IAAKA,SAAS,CAAC5H,MAAM,KAAK,CAAC,IAAI4H,SAAS,CAAC,CAAC,CAAC,KAAK,GAAI,EAAE;AAClE,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AACA;AACA,EAAA,MAAME,MAAM,GAAGF,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,GAAGA,SAAS,CAAC/G,KAAK,CAAC,CAAC,CAAC,GAAG+G,SAAS,CAAA;EAEpE,MAAMG,UAAqC,GAAG,EAAE,CAAA;EAChD,IAAIC,KAAK,GAAG,KAAK,CAAA;EACjB,IAAIC,mBAAmB,GAAG,CAAC,CAAA;EAC3B,KAAK,MAAMlI,IAAI,IAAI+H,MAAM,CAACtI,KAAK,CAAC,GAAG,CAAC,EAAE;AACpC;IACA,MAAM0I,QAAQ,GAAGnI,IAAI,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACnC,IAAI0I,QAAQ,KAAK,mBAAmB,EAAE;AACpC,MAAA,SAAA;AACF,KAAA;AACA;IACA,MAAMnE,IAAI,GAAGhE,IAAI,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/B,IAAIuE,IAAI,CAACvE,KAAK,CAAC,GAAG,CAAC,CAACQ,MAAM,GAAG,CAAC,EAAE;AAC9B,MAAA,SAAA;AACF,KAAA;AAEA,IAAA,MAAMmI,aAAa,GAAGpI,IAAI,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACA,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACtD,IAAA,IAAI,OAAO2I,aAAa,KAAK,QAAQ,EAAE;AACrC,MAAA,SAAA;AACF,KAAA;AAEAH,IAAAA,KAAK,GAAG,IAAI,CAAA;IAEZ,MAAMjB,YAAY,GAAGc,YAAY,CAACnI,GAAG,CAAEgC,MAAM,IAAKA,MAAM,CAACE,KAAK,CAAC,CAAA;AAC/D;AACA,IAAA,MAAMH,OAAO,GAAG0G,aAAa,CAAC3I,KAAK,CAAC,GAAG,CAAC,CAACE,GAAG,CAAEZ,KAAK,IAAKD,WAAW,CAACC,KAAK,CAAC,CAAC,CAAA;;AAE3E;AACA,IAAA,KAAK,MAAM4C,MAAM,IAAIqF,YAAY,EAAE;AACjC,MAAA,MAAMqB,eAAe,GAAG3G,OAAO,CAACU,QAAQ,CAACT,MAAM,CAAC,CAAA;AAChDqG,MAAAA,UAAU,CAACrG,MAAM,CAAC,GAAG0G,eAAe,CAAA;AACpC,MAAA,IAAIA,eAAe,EAAE;AACnBH,QAAAA,mBAAmB,IAAI,CAAC,CAAA;AAC1B,OAAA;AACF,KAAA;AACF,GAAA;AAEA,EAAA,IAAIA,mBAAmB,KAAK,CAAC,IAAI,CAACD,KAAK,EAAE;AACvC,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AAEA,EAAA,OAAOD,UAAU,CAAA;AACnB,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,MAAMM,oBAAoB,GAAGA,CAC3B3D,MAAc,EACdjD,OAAqD,EACrD6G,6BAAqC,EACrCC,gCAA0D,EAC1D1D,YAA6C,EAC7CC,YAAqB,KACS;AAAA,EAAA,IAAA0D,sBAAA,CAAA;EAC9B,MAAMzD,YAAuC,GAAG,EAAE,CAAA;AAClD,EAAA,KAAK,MAAMrD,MAAM,IAAID,OAAO,EAAE;IAAA,IAAAgH,qBAAA,EAAAC,sBAAA,CAAA;AAC5B,IAAA,MAAM9G,KAAK,GAAGF,MAAM,CAACE,KAAK,CAAA;IAC1B,IAAI,CAAAiD,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA4D,qBAAA,GAAZ5D,YAAY,CAAEpD,OAAO,MAAA,IAAA,IAAAgH,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAAC,sBAAA,GAArBD,qBAAA,CAAuBE,qBAAqB,MAAA,IAAA,IAAAD,sBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAA5CA,sBAAA,CAA+C9G,KAAK,CAAC,MAAKW,SAAS,EAAE;MACvEwC,YAAY,CAACnD,KAAK,CAAC,GAAGiD,YAAY,CAACpD,OAAO,CAACkH,qBAAqB,CAAC/G,KAAK,CAAC,CAAA;AACzE,KAAC,MAAM;MACLmD,YAAY,CAACnD,KAAK,CAAC,GAAGF,MAAM,CAACkH,aAAa,KAAK,IAAI,CAAC;AACtD,KAAA;AACF,GAAA;;AAEA,EAAA,IAAI9D,YAAY,EAAE;AAChB,IAAA,OAAOC,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,MAAM+B,gBAAgB,GAAGa,6BAA6B,CAACjD,MAAM,EAAEjD,OAAO,CAAC,CAAA;EAEvE,IAAIqF,gBAAgB,KAAK,SAAS,EAAE;AAClC,IAAA,MAAM+B,sBAAsB,GAAGhC,mCAAmC,CAACC,gBAAgB,EAAErF,OAAO,CAAC,CAAA;AAE7F,IAAA,IAAIoH,sBAAsB,CAACC,QAAQ,EAAE,KAAKR,6BAA6B,EAAE;AACvEC,MAAAA,gCAAgC,CAACM,sBAAsB,CAACC,QAAQ,EAAE,CAAC,CAAA;AACrE,KAAA;AACA,IAAA,OAAOhC,gBAAgB,CAAA;AACzB,GAAA;AAEA,EAAA,MAAMiC,gCAAgC,GAAGpB,6BAA6B,CAACW,6BAA6B,EAAE7G,OAAO,CAAC,CAAA;EAE9G,IAAIsH,gCAAgC,KAAK,SAAS,EAAE;AAClD,IAAA,OAAOA,gCAAgC,CAAA;AACzC,GAAA;AAEA,EAAA,IAAIlE,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,IAAA,CAAA2D,sBAAA,GAAZ3D,YAAY,CAAEpD,OAAO,cAAA+G,sBAAA,KAAA,KAAA,CAAA,IAArBA,sBAAA,CAAuBG,qBAAqB,EAAE;AAChD,IAAA,OAAO9D,YAAY,CAACpD,OAAO,CAACkH,qBAAqB,CAAA;AACnD,GAAA;AAEA,EAAA,OAAO5D,YAAY,CAAA;AACrB,CAAC,CAAA;MAEYiE,0BAA0B,GAAGA,CACxCpB,SAAiB,EACjBC,YAAsC,KACR;AAC9B,EAAA,IAAI,CAACD,SAAS,IAAKA,SAAS,CAAC5H,MAAM,KAAK,CAAC,IAAI4H,SAAS,CAAC,CAAC,CAAC,KAAK,GAAI,EAAE;AAClE,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AACA;AACA,EAAA,MAAME,MAAM,GAAGF,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,GAAGA,SAAS,CAAC/G,KAAK,CAAC,CAAC,CAAC,GAAG+G,SAAS,CAAA;EAEpE,MAAMqB,aAAqC,GAAG,EAAE,CAAA;EAEhD,KAAK,MAAMlJ,IAAI,IAAI+H,MAAM,CAACtI,KAAK,CAAC,GAAG,CAAC,EAAE;IACpC,MAAM0I,QAAQ,GAAGnI,IAAI,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACnC,IAAA,IAAI0I,QAAQ,KAAK,oBAAoB,IAAIA,QAAQ,KAAK,qBAAqB,EAAE;AAC3E,MAAA,SAAA;AACF,KAAA;IAEA,MAAMnE,IAAI,GAAGhE,IAAI,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/B,IAAIuE,IAAI,CAACvE,KAAK,CAAC,GAAG,CAAC,CAACQ,MAAM,GAAG,CAAC,EAAE;AAC9B,MAAA,SAAA;AACF,KAAA;AAEA,IAAA,MAAMmI,aAAa,GAAGpI,IAAI,CAACP,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAACA,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACtD,IAAA,IAAI,OAAO2I,aAAa,KAAK,QAAQ,EAAE;AACrC,MAAA,SAAA;AACF,KAAA;AAEA,IAAA,MAAMpB,YAAY,GAAG,CAAC,GAAGc,YAAY,CAACnI,GAAG,CAAEgC,MAAM,IAAKA,MAAM,CAACE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAA;AAEjF,IAAA,MAAMH,OAAO,GAAG0G,aAAa,CAC1B3I,KAAK,CAAC,GAAG,CAAC,CACVE,GAAG,CAAEZ,KAAK,IAAKD,WAAW,CAACC,KAAK,CAAC,CAAC,CAClCgB,MAAM,CAAEoJ,GAAG,IAAoB,OAAOA,GAAG,KAAK,QAAQ,IAAInC,YAAY,CAAC5E,QAAQ,CAAC+G,GAAG,CAAC,CAAC,CAAA;IAExF,IAAIhB,QAAQ,KAAK,oBAAoB,EAAE;AACrCe,MAAAA,aAAa,CAAC,MAAM,CAAC,GAAGxH,OAAO,CAAA;AACjC,KAAA;IACA,IAAIyG,QAAQ,KAAK,qBAAqB,EAAE;AACtCe,MAAAA,aAAa,CAAC,OAAO,CAAC,GAAGxH,OAAO,CAAA;AAClC,KAAA;AACF,GAAA;EAEA,OAAOwH,aAAa,CAAC,MAAM,CAAC,IAAIA,aAAa,CAAC,OAAO,CAAC,GAClD;AACElF,IAAAA,IAAI,EAAEkF,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE;AACjCE,IAAAA,KAAK,EAAEF,aAAa,CAAC,OAAO,CAAC,IAAI,EAAA;AACnC,GAAC,GACD,SAAS,CAAA;AACf,EAAC;AAEYG,MAAAA,gCAAgC,GAAIH,aAAgC,IAAsB;EAAA,IAAAI,mBAAA,EAAAC,oBAAA,CAAA;AACrG,EAAA,MAAM5I,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;EAC1C,MAAMmG,gBAAgB,GAAG,CAAAF,CAAAA,mBAAA,GAAAJ,aAAa,CAAClF,IAAI,MAAA,IAAA,IAAAsF,mBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAlBA,mBAAA,CAAoB3J,GAAG,CAAEwJ,GAAG,IAAKjJ,WAAW,CAACiJ,GAAG,CAAC,CAAC,KAAI,EAAE,CAAA;EACjF,MAAMM,iBAAiB,GAAG,CAAAF,CAAAA,oBAAA,GAAAL,aAAa,CAACE,KAAK,MAAA,IAAA,IAAAG,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAnBA,oBAAA,CAAqB5J,GAAG,CAAEwJ,GAAG,IAAKjJ,WAAW,CAACiJ,GAAG,CAAC,CAAC,KAAI,EAAE,CAAA;AAEnFxI,EAAAA,YAAY,CAAC2C,GAAG,CAAC,oBAAoB,EAAG,CAAA,CAAA,EAAGkG,gBAAgB,CAAChJ,IAAI,CAAC,GAAG,CAAE,GAAE,CAAC,CAAA;AACzEG,EAAAA,YAAY,CAAC2C,GAAG,CAAC,qBAAqB,EAAG,CAAA,CAAA,EAAGmG,iBAAiB,CAACjJ,IAAI,CAAC,GAAG,CAAE,GAAE,CAAC,CAAA;AAE3E,EAAA,OAAOG,YAAY,CAAA;AACrB,EAAC;;AAED;AACA;AACA;AACA;AACA,MAAM+I,gBAAgB,GAAGA,CACvB/E,MAAc,EACdjD,OAAiC,EACjCiI,yBAAiC,EACjCC,4BAA6D,EAC7D9E,YAA6C,EAC7CC,YAAqB,KACH;EAClB,MAAMC,YAAY,GAAGF,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,IAAAA,YAAY,CAAEoE,aAAa,GAC5C;AACElF,IAAAA,IAAI,EAAE,CAAAc,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEoE,aAAa,CAAC,MAAM,CAAC,KAAI,EAAE;AAC/CE,IAAAA,KAAK,EAAE,CAAAtE,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEoE,aAAa,CAAC,OAAO,CAAC,KAAI,EAAA;AACjD,GAAC,GACD;AAAElF,IAAAA,IAAI,EAAE,EAAE;AAAEoF,IAAAA,KAAK,EAAE,EAAA;GAAI,CAAA;AAE3B,EAAA,IAAIrE,YAAY,EAAE;AAChB,IAAA,OAAOC,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,MAAMkE,aAAa,GAAGD,0BAA0B,CAACtE,MAAM,EAAEjD,OAAO,CAAC,CAAA;EAEjE,IAAIwH,aAAa,KAAK,SAAS,EAAE;AAC/B,IAAA,MAAMW,mBAAmB,GAAGR,gCAAgC,CAACH,aAAa,CAAC,CAAA;AAE3E,IAAA,IAAIW,mBAAmB,CAACd,QAAQ,EAAE,KAAKY,yBAAyB,EAAE;AAChEC,MAAAA,4BAA4B,CAACC,mBAAmB,CAACd,QAAQ,EAAE,CAAC,CAAA;AAC9D,KAAA;AACA,IAAA,OAAOG,aAAa,CAAA;AACtB,GAAA;AAEA,EAAA,MAAMY,6BAA6B,GAAGb,0BAA0B,CAACU,yBAAyB,EAAEjI,OAAO,CAAC,CAAA;EAEpG,IAAIoI,6BAA6B,KAAK,SAAS,EAAE;AAC/C,IAAA,OAAOA,6BAA6B,CAAA;AACtC,GAAA;AAEA,EAAA,OAAO9E,YAAY,CAAA;AACrB,CAAC,CAAA;AAEY+E,MAAAA,sBAAsB,GAAIpF,MAAc,IAAsB;AACzE,EAAA,MAAMhE,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;EAC1C,MAAM2G,OAAO,GAAG,IAAI3G,eAAe,CAACsB,MAAM,CAAC,CAACU,GAAG,CAAC,KAAK,CAAC,CAAA;AACtD,EAAA,IAAI2E,OAAO,EAAE;AACXrJ,IAAAA,YAAY,CAAC2C,GAAG,CAAC,KAAK,EAAE0G,OAAO,CAAC,CAAA;AAClC,GAAA;AACA,EAAA,OAAOrJ,YAAY,CAAA;AACrB,EAAC;AAaYsJ,MAAAA,cAAc,GAAGC,KAAA,IASW;EAAA,IATV;IAC7BvF,MAAM;IACNwF,mBAAmB;IACnB7F,WAAW;IACXwB,SAAS;IACTsE,eAAe;IACfC,sBAAsB;IACtBC,kBAAkB;AAClB5I,IAAAA,OAAAA;AACgB,GAAC,GAAAwI,KAAA,CAAA;AACjB,EAAA,MAAMK,iBAAiB,GAAGlG,8BAA8B,CAACC,WAAW,CAAC,CAAA;AACrE,EAAA,MAAMkG,eAAe,GAAGhF,0BAA0B,CAACM,SAAS,CAAC,CAAA;AAC7D,EAAA,MAAM2E,qBAAqB,GAAGlE,6BAA6B,CAAC6D,eAAe,CAAC,CAAA;AAC5E,EAAA,MAAMM,2BAA2B,GAAG5D,mCAAmC,CAACuD,sBAAsB,EAAE3I,OAAO,CAAC,CAAA;AACxG,EAAA,MAAMiJ,wBAAwB,GAAGtB,gCAAgC,CAACiB,kBAAkB,CAAC,CAAA;AACrF,EAAA,MAAMM,SAAS,GAAGb,sBAAsB,CAACpF,MAAM,CAAC,CAAA;AAEhD,EAAA,MAAMhE,YAAY,GAAG,IAAI0C,eAAe,EAAE,CAAA;AAE1C,EAAA,KAAK,MAAM,CAACxC,GAAG,EAAE9B,KAAK,CAAC,IAAI,IAAIsE,eAAe,CAACsB,MAAM,CAAC,EAAE;AACtD,IAAA,IAAI,CAAC9D,GAAG,CAACtB,UAAU,CAAC,GAAG,CAAC,EAAE;AACxBoB,MAAAA,YAAY,CAAC2C,GAAG,CAACzC,GAAG,EAAE9B,KAAK,CAAC,CAAA;AAC9B,KAAA;AACF,GAAA;EACA4B,YAAY,CAAC2C,GAAG,CAAC,GAAG,EAAG,CAAE6G,EAAAA,mBAAoB,EAAC,CAAC,CAAA;;AAE/C;EACA,IAAI7F,WAAW,CAAClB,iBAAiB,IAAIkB,WAAW,CAAClB,iBAAiB,CAACnD,MAAM,GAAG,CAAC,EAAE;AAC7E;AACAU,IAAAA,YAAY,CAAC2C,GAAG,CAAC,oBAAoB,EAAEkB,kBAAkB,CAACjB,IAAI,CAACkB,SAAS,CAACH,WAAW,CAAClB,iBAAiB,CAAC,CAAC,CAAC,CAAA;AAC3G,GAAA;EAEA,OAAO,IAAIC,eAAe,CAAC,CACzB,GAAG1C,YAAY,EACf,GAAG4J,iBAAiB,EACpB,GAAGC,eAAe,EAClB,GAAGC,qBAAqB,EACxB,GAAGG,SAAS,EACZ,GAAGD,wBAAwB,EAC3B,GAAGD,2BAA2B,CAC/B,CAAC,CAAA;AACJ,EAAC;AA4BD;AACaG,MAAAA,mCAAmC,GAAGA,CACjDlG,MAAc,EACdwF,mBAA2B,EAC3BzI,OAAiC,EACjCoJ,cAA2C,EAC3ChG,YAA6C,EAC7CiG,YAAgC,KAChB;EAChB,MAAMC,cAAc,GAAG,IAAI3H,eAAe,CAACsB,MAAM,CAAC,CAACU,GAAG,CAAC,GAAG,CAAC,CAAA;EAC3D,MAAMN,YAAY,GAAG,CAACiG,cAAc,IAAItI,MAAM,CAACsI,cAAc,CAAC,KAAKb,mBAAmB,CAAA;EAEtF,MAAM;IACJvF,mBAAmB;IACnBC,sBAAsB;IACtBc,mBAAmB;IACnBC,sBAAsB;IACtBa,sBAAsB;IACtBC,yBAAyB;IACzB6B,6BAA6B;IAC7BC,gCAAgC;IAChCmB,yBAAyB;AACzBC,IAAAA,4BAAAA;AACF,GAAC,GAAGmB,YAAY,CAAA;AAEhB,EAAA,MAAMzG,WAAW,GAAGI,cAAc,CAChCC,MAAM,EACNjD,OAAO,EACPkD,mBAAmB,EACnBC,sBAAsB,EACtBC,YAAY,EACZC,YACF,CAAC,CAAA;AACD,EAAA,MAAMe,SAAS,GAAGJ,YAAY,CAC5Bf,MAAM,EACNjD,OAAO,EACPiE,mBAAmB,EACnBC,sBAAsB,EACtBd,YAAY,EACZC,YACF,CAAC,CAAA;AACD,EAAA,MAAMqF,eAAe,GAAG5D,kBAAkB,CACxC7B,MAAM,EACN8B,sBAAsB,EACtBC,yBAAyB,EACzB5B,YAAY,EACZC,YACF,CAAC,CAAA;AACD,EAAA,MAAM6D,qBAAqB,GAAGN,oBAAoB,CAChD3D,MAAM,EACNjD,OAAO,EACP6G,6BAA6B,EAC7BC,gCAAgC,EAChC1D,YAAY,EACZC,YACF,CAAC,CAAA;AACD,EAAA,MAAMuF,kBAAkB,GAAGZ,gBAAgB,CACzC/E,MAAM,EACNjD,OAAO,EACPiI,yBAAyB,EACzBC,4BAA4B,EAC5B9E,YAAY,EACZC,YACF,CAAC,CAAA;EAED,MAAMkG,WAAW,GAAGhB,cAAc,CAAC;IACjCE,mBAAmB;IACnBxF,MAAM;IACNL,WAAW;IACXwB,SAAS;IACTsE,eAAe;AACfC,IAAAA,sBAAsB,EAAEzB,qBAAqB;IAC7C0B,kBAAkB;AAClB5I,IAAAA,OAAAA;AACF,GAAC,CAAC,CAAA;AAEF,EAAA,MAAMd,YAAY,GAAGF,uBAAuB,CAACuK,WAAW,CAAC,CAAA;EACzD,IAAIrK,YAAY,KAAK+D,MAAM,EAAE;IAC3BmG,cAAc,CAAClK,YAAY,CAAC,CAAA;AAC9B,GAAA;EAEA,OAAO;IACL0D,WAAW;IACXwB,SAAS;IACTsE,eAAe;IACfxB,qBAAqB;AACrB0B,IAAAA,kBAAAA;GACD,CAAA;AACH,EAAC;AAUYY,MAAAA,SAAS,GAAGA,CAAAC,KAAA,EAEvBxG,MAAc,EACdwF,mBAA2B,EAC3BW,cAA2C,EAC3CpJ,OAAiC,KAC9B;EAAA,IALH;IAAE4C,WAAW;IAAEwB,SAAS;IAAEsE,eAAe;AAAEgB,IAAAA,YAAY,EAAEf,sBAAsB;AAAEC,IAAAA,kBAAAA;AAAkC,GAAC,GAAAa,KAAA,CAAA;EAMpH,MAAME,SAAS,GAAGpB,cAAc,CAAC;IAC/BtF,MAAM;IACNwF,mBAAmB;IACnB7F,WAAW;IACXwB,SAAS;IACTsE,eAAe;IACfC,sBAAsB;IACtBC,kBAAkB;AAClB5I,IAAAA,OAAAA;AACF,GAAC,CAAC,CAAA;AAEF,EAAA,MAAMd,YAAY,GAAGF,uBAAuB,CAAC2K,SAAS,CAAC,CAAA;EACvD,IAAIzK,YAAY,KAAK+D,MAAM,EAAE;IAC3BmG,cAAc,CAAClK,YAAY,CAAC,CAAA;AAC9B,GAAA;AACF,EAAC;;AAED;AACA;AACA;AACA,MAAM0K,cAAc,GAAGA,CAACC,WAA2B,EAAEC,YAA4B,KAAa;AAC5F,EAAA,IAAID,WAAW,CAAC/J,WAAW,GAAGgK,YAAY,CAAChK,WAAW,EAAE;AACtD,IAAA,OAAO,CAAC,CAAC,CAAA;GACV,MAAM,IAAI+J,WAAW,CAAC/J,WAAW,GAAGgK,YAAY,CAAChK,WAAW,EAAE;AAC7D,IAAA,OAAO,CAAC,CAAA;AACV,GAAA;EACA,IAAI+J,WAAW,CAAC9J,aAAa,KAAKe,SAAS,IAAIgJ,YAAY,CAAC/J,aAAa,KAAKe,SAAS,EAAE;AACvF,IAAA,OAAO,CAAC,CAAA;AACV,GAAA;AACA,EAAA,IAAI+I,WAAW,CAAC9J,aAAa,GAAG+J,YAAY,CAAC/J,aAAa,EAAE;AAC1D,IAAA,OAAO,CAAC,CAAC,CAAA;GACV,MAAM,IAAI8J,WAAW,CAAC9J,aAAa,GAAG+J,YAAY,CAAC/J,aAAa,EAAE;AACjE,IAAA,OAAO,CAAC,CAAA;AACV,GAAA;AAEA,EAAA,IAAI8J,WAAW,CAACxM,KAAK,GAAGyM,YAAY,CAACzM,KAAK,EAAE;AAC1C,IAAA,OAAO,CAAC,CAAC,CAAA;GACV,MAAM,IAAIwM,WAAW,CAACxM,KAAK,GAAGyM,YAAY,CAACzM,KAAK,EAAE;AACjD,IAAA,OAAO,CAAC,CAAA;AACV,GAAA;AAEA,EAAA,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAED,MAAM0M,oBAAoB,GAAGA,CAACF,WAA2B,EAAEC,YAA4B,KAAc;EACnG,OACED,WAAW,CAAC/J,WAAW,KAAKgK,YAAY,CAAChK,WAAW,IACpD+J,WAAW,CAAC9J,aAAa,KAAK+J,YAAY,CAAC/J,aAAa,IACxD8J,WAAW,CAACxM,KAAK,KAAKyM,YAAY,CAACzM,KAAK,CAAA;AAE5C,CAAC,CAAA;MAEY2M,yBAAyB,GAAGA,CACvCpH,WAA4B,EAC5BqH,kBAAmC,KACvB;EACZ,MAAM;IAAE9H,KAAK;AAAEZ,IAAAA,YAAAA;AAAa,GAAC,GAAGqB,WAAW,CAAA;EAC3C,MAAM;AAAET,IAAAA,KAAK,EAAE+H,YAAY;AAAE3I,IAAAA,YAAY,EAAE4I,mBAAAA;AAAoB,GAAC,GAAGF,kBAAkB,CAAA;EAErF,IAAI1I,YAAY,KAAK4I,mBAAmB,EAAE;AACxC,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;AAEA,EAAA,IAAIhI,KAAK,CAAC5D,MAAM,KAAK2L,YAAY,CAAC3L,MAAM,EAAE;AACxC,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;AAEA4D,EAAAA,KAAK,CAAC0B,IAAI,CAAC+F,cAAc,CAAC,CAAA;AAC1BM,EAAAA,YAAY,CAACrG,IAAI,CAAC+F,cAAc,CAAC,CAAA;AAEjC,EAAA,KAAK,IAAIQ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGjI,KAAK,CAAC5D,MAAM,EAAE6L,CAAC,EAAE,EAAE;AACrC,IAAA,MAAM/L,MAAM,GAAG8D,KAAK,CAACiI,CAAC,CAAC,CAAA;AACvB,IAAA,MAAMC,eAAe,GAAGH,YAAY,CAACE,CAAC,CAAC,CAAA;;AAEvC;AACA;AACA,IAAA,IAAI,CAACL,oBAAoB,CAAC1L,MAAM,EAAEgM,eAAe,CAAC,EAAE;AAClD,MAAA,OAAO,KAAK,CAAA;AACd,KAAA;AACF,GAAA;AAEA,EAAA,OAAO,IAAI,CAAA;AACb;;;;"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { operatorList } from '../operators/index.js';
|
|
2
|
-
|
|
3
|
-
const getRsStringColumnType = () => {
|
|
4
|
-
return {
|
|
5
|
-
extendType: 'string',
|
|
6
|
-
filterOperators: operatorList.rsString
|
|
7
|
-
};
|
|
8
|
-
};
|
|
9
|
-
const getRsNumberColumnType = () => {
|
|
10
|
-
return {
|
|
11
|
-
extendType: 'number',
|
|
12
|
-
filterOperators: operatorList.rsNumber
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
const getRsSingleSelectColumnType = () => {
|
|
16
|
-
return {
|
|
17
|
-
extendType: 'singleSelect',
|
|
18
|
-
filterOperators: operatorList.rsSingleSelect
|
|
19
|
-
};
|
|
20
|
-
};
|
|
21
|
-
const getRsSingleSelectWithShortOperatorListColumnType = () => {
|
|
22
|
-
return {
|
|
23
|
-
extendType: 'singleSelect',
|
|
24
|
-
filterOperators: operatorList.rsSingleSelectWithShortOperatorList
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
const getRsMultipleSelectColumnType = () => {
|
|
28
|
-
return {
|
|
29
|
-
extendType: 'singleSelect',
|
|
30
|
-
filterOperators: operatorList.rsMultipleSelect
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
|
-
const getRsMultipleSelectWithShortOperatorListColumnType = () => {
|
|
34
|
-
return {
|
|
35
|
-
extendType: 'singleSelect',
|
|
36
|
-
filterOperators: operatorList.rsMultipleSelectWithShortOperatorList
|
|
37
|
-
};
|
|
38
|
-
};
|
|
39
|
-
const customColumnTypes = {
|
|
40
|
-
rsString: getRsStringColumnType(),
|
|
41
|
-
rsNumber: getRsNumberColumnType(),
|
|
42
|
-
rsSingleSelect: getRsSingleSelectColumnType(),
|
|
43
|
-
rsSingleSelectWithShortOperatorList: getRsSingleSelectWithShortOperatorListColumnType(),
|
|
44
|
-
rsMultipleSelect: getRsMultipleSelectColumnType(),
|
|
45
|
-
rsMultipleSelectWithShortOperatorList: getRsMultipleSelectWithShortOperatorListColumnType()
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
export { customColumnTypes, getRsMultipleSelectColumnType, getRsMultipleSelectWithShortOperatorListColumnType, getRsNumberColumnType, getRsSingleSelectColumnType, getRsSingleSelectWithShortOperatorListColumnType, getRsStringColumnType };
|
|
49
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/utils/columnTypes/index.ts"],"sourcesContent":["import { GridColumnTypesRecord, GridNativeColTypes } from '@mui/x-data-grid-pro';\nimport { operatorList } from '../operators';\n\nexport const getRsStringColumnType = () => {\n return {\n extendType: 'string' as GridNativeColTypes,\n filterOperators: operatorList.rsString,\n };\n};\n\nexport const getRsNumberColumnType = () => {\n return {\n extendType: 'number' as GridNativeColTypes,\n filterOperators: operatorList.rsNumber,\n };\n};\n\nexport const getRsSingleSelectColumnType = () => {\n return {\n extendType: 'singleSelect' as GridNativeColTypes,\n filterOperators: operatorList.rsSingleSelect,\n };\n};\n\nexport const getRsSingleSelectWithShortOperatorListColumnType = () => {\n return {\n extendType: 'singleSelect' as GridNativeColTypes,\n filterOperators: operatorList.rsSingleSelectWithShortOperatorList,\n };\n};\n\nexport const getRsMultipleSelectColumnType = () => {\n return {\n extendType: 'singleSelect' as GridNativeColTypes,\n filterOperators: operatorList.rsMultipleSelect,\n };\n};\n\nexport const getRsMultipleSelectWithShortOperatorListColumnType = () => {\n return {\n extendType: 'singleSelect' as GridNativeColTypes,\n filterOperators: operatorList.rsMultipleSelectWithShortOperatorList,\n };\n};\n\nexport const customColumnTypes: GridColumnTypesRecord = {\n rsString: getRsStringColumnType(),\n rsNumber: getRsNumberColumnType(),\n rsSingleSelect: getRsSingleSelectColumnType(),\n rsSingleSelectWithShortOperatorList: getRsSingleSelectWithShortOperatorListColumnType(),\n rsMultipleSelect: getRsMultipleSelectColumnType(),\n rsMultipleSelectWithShortOperatorList: getRsMultipleSelectWithShortOperatorListColumnType(),\n};\n"],"names":["getRsStringColumnType","extendType","filterOperators","operatorList","rsString","getRsNumberColumnType","rsNumber","getRsSingleSelectColumnType","rsSingleSelect","getRsSingleSelectWithShortOperatorListColumnType","rsSingleSelectWithShortOperatorList","getRsMultipleSelectColumnType","rsMultipleSelect","getRsMultipleSelectWithShortOperatorListColumnType","rsMultipleSelectWithShortOperatorList","customColumnTypes"],"mappings":";;AAGaA,MAAAA,qBAAqB,GAAGA,MAAM;EACzC,OAAO;AACLC,IAAAA,UAAU,EAAE,QAA8B;IAC1CC,eAAe,EAAEC,YAAY,CAACC,QAAAA;GAC/B,CAAA;AACH,EAAC;AAEYC,MAAAA,qBAAqB,GAAGA,MAAM;EACzC,OAAO;AACLJ,IAAAA,UAAU,EAAE,QAA8B;IAC1CC,eAAe,EAAEC,YAAY,CAACG,QAAAA;GAC/B,CAAA;AACH,EAAC;AAEYC,MAAAA,2BAA2B,GAAGA,MAAM;EAC/C,OAAO;AACLN,IAAAA,UAAU,EAAE,cAAoC;IAChDC,eAAe,EAAEC,YAAY,CAACK,cAAAA;GAC/B,CAAA;AACH,EAAC;AAEYC,MAAAA,gDAAgD,GAAGA,MAAM;EACpE,OAAO;AACLR,IAAAA,UAAU,EAAE,cAAoC;IAChDC,eAAe,EAAEC,YAAY,CAACO,mCAAAA;GAC/B,CAAA;AACH,EAAC;AAEYC,MAAAA,6BAA6B,GAAGA,MAAM;EACjD,OAAO;AACLV,IAAAA,UAAU,EAAE,cAAoC;IAChDC,eAAe,EAAEC,YAAY,CAACS,gBAAAA;GAC/B,CAAA;AACH,EAAC;AAEYC,MAAAA,kDAAkD,GAAGA,MAAM;EACtE,OAAO;AACLZ,IAAAA,UAAU,EAAE,cAAoC;IAChDC,eAAe,EAAEC,YAAY,CAACW,qCAAAA;GAC/B,CAAA;AACH,EAAC;AAEM,MAAMC,iBAAwC,GAAG;EACtDX,QAAQ,EAAEJ,qBAAqB,EAAE;EACjCM,QAAQ,EAAED,qBAAqB,EAAE;EACjCG,cAAc,EAAED,2BAA2B,EAAE;EAC7CG,mCAAmC,EAAED,gDAAgD,EAAE;EACvFG,gBAAgB,EAAED,6BAA6B,EAAE;EACjDG,qCAAqC,EAAED,kDAAkD,EAAC;AAC5F;;;;"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { GRID_DETAIL_PANEL_TOGGLE_COL_DEF } from '@mui/x-data-grid-pro';
|
|
2
|
-
|
|
3
|
-
// Don't use a spread operator there or it will break the build due to MUI internal components
|
|
4
|
-
const DETAIL_PANEL_TOGGLE_COL_DEF = GRID_DETAIL_PANEL_TOGGLE_COL_DEF;
|
|
5
|
-
DETAIL_PANEL_TOGGLE_COL_DEF.type = 'actions';
|
|
6
|
-
|
|
7
|
-
export { DETAIL_PANEL_TOGGLE_COL_DEF };
|
|
8
|
-
//# sourceMappingURL=detailPanelToggleColDef.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"detailPanelToggleColDef.js","sources":["../../../../../../../src/utils/columns/detailPanelToggleColDef.ts"],"sourcesContent":["import { GRID_DETAIL_PANEL_TOGGLE_COL_DEF } from '@mui/x-data-grid-pro';\n\n// Don't use a spread operator there or it will break the build due to MUI internal components\nconst DETAIL_PANEL_TOGGLE_COL_DEF = GRID_DETAIL_PANEL_TOGGLE_COL_DEF;\nDETAIL_PANEL_TOGGLE_COL_DEF.type = 'actions';\n\nexport { DETAIL_PANEL_TOGGLE_COL_DEF };\n"],"names":["DETAIL_PANEL_TOGGLE_COL_DEF","GRID_DETAIL_PANEL_TOGGLE_COL_DEF","type"],"mappings":";;AAEA;AACMA,MAAAA,2BAA2B,GAAGC,iCAAgC;AACpED,2BAA2B,CAACE,IAAI,GAAG,SAAS;;;;"}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { objectSpread2 as _objectSpread2 } from '../../../../../../_virtual/_internal/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import { Icon } from '@redsift/design-system';
|
|
4
|
-
import { mdiSync } from '@redsift/icons';
|
|
5
|
-
import Box from '../../../../../../node_modules/@mui/material/Box/_internal/Box.js';
|
|
6
|
-
import TextField from '../../../../../../node_modules/@mui/material/TextField/_internal/TextField.js';
|
|
7
|
-
|
|
8
|
-
const SUBMIT_FILTER_STROKE_TIME = 500;
|
|
9
|
-
const InputNumberInterval = props => {
|
|
10
|
-
var _item$value;
|
|
11
|
-
const {
|
|
12
|
-
item,
|
|
13
|
-
applyValue,
|
|
14
|
-
focusElementRef = null
|
|
15
|
-
} = props;
|
|
16
|
-
const filterTimeout = React.useRef();
|
|
17
|
-
const [filterValueState, setFilterValueState] = React.useState((_item$value = item.value) !== null && _item$value !== void 0 ? _item$value : '');
|
|
18
|
-
const [applying, setIsApplying] = React.useState(false);
|
|
19
|
-
React.useEffect(() => {
|
|
20
|
-
return () => {
|
|
21
|
-
clearTimeout(filterTimeout.current);
|
|
22
|
-
};
|
|
23
|
-
}, []);
|
|
24
|
-
React.useEffect(() => {
|
|
25
|
-
var _item$value2;
|
|
26
|
-
const itemValue = (_item$value2 = item.value) !== null && _item$value2 !== void 0 ? _item$value2 : [undefined, undefined];
|
|
27
|
-
setFilterValueState(itemValue);
|
|
28
|
-
}, [item.value]);
|
|
29
|
-
const updateFilterValue = (lowerBound, upperBound) => {
|
|
30
|
-
clearTimeout(filterTimeout.current);
|
|
31
|
-
setFilterValueState([lowerBound, upperBound]);
|
|
32
|
-
setIsApplying(true);
|
|
33
|
-
filterTimeout.current = setTimeout(() => {
|
|
34
|
-
setIsApplying(false);
|
|
35
|
-
applyValue(_objectSpread2(_objectSpread2({}, item), {}, {
|
|
36
|
-
value: [lowerBound, upperBound]
|
|
37
|
-
}));
|
|
38
|
-
}, SUBMIT_FILTER_STROKE_TIME);
|
|
39
|
-
};
|
|
40
|
-
const handleUpperFilterChange = event => {
|
|
41
|
-
const newUpperBound = event.target.value;
|
|
42
|
-
updateFilterValue(filterValueState[0], newUpperBound);
|
|
43
|
-
};
|
|
44
|
-
const handleLowerFilterChange = event => {
|
|
45
|
-
const newLowerBound = event.target.value;
|
|
46
|
-
updateFilterValue(newLowerBound, filterValueState[1]);
|
|
47
|
-
};
|
|
48
|
-
return /*#__PURE__*/React.createElement(Box, {
|
|
49
|
-
sx: {
|
|
50
|
-
display: 'inline-flex',
|
|
51
|
-
flexDirection: 'row',
|
|
52
|
-
alignItems: 'end',
|
|
53
|
-
height: 48,
|
|
54
|
-
pl: '20px'
|
|
55
|
-
}
|
|
56
|
-
}, /*#__PURE__*/React.createElement(TextField, {
|
|
57
|
-
name: "lower-bound-input",
|
|
58
|
-
placeholder: "From",
|
|
59
|
-
label: "From",
|
|
60
|
-
variant: "standard",
|
|
61
|
-
value: Number(filterValueState[0]),
|
|
62
|
-
onChange: handleLowerFilterChange,
|
|
63
|
-
type: "number",
|
|
64
|
-
inputRef: focusElementRef,
|
|
65
|
-
sx: {
|
|
66
|
-
mr: 2
|
|
67
|
-
}
|
|
68
|
-
}), /*#__PURE__*/React.createElement(TextField, {
|
|
69
|
-
name: "upper-bound-input",
|
|
70
|
-
placeholder: "To",
|
|
71
|
-
label: "To",
|
|
72
|
-
variant: "standard",
|
|
73
|
-
value: Number(filterValueState[1]),
|
|
74
|
-
onChange: handleUpperFilterChange,
|
|
75
|
-
type: "number",
|
|
76
|
-
InputProps: applying ? {
|
|
77
|
-
endAdornment: /*#__PURE__*/React.createElement(Icon, {
|
|
78
|
-
icon: mdiSync
|
|
79
|
-
})
|
|
80
|
-
} : {}
|
|
81
|
-
}));
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
export { InputNumberInterval };
|
|
85
|
-
//# sourceMappingURL=InputNumberInterval.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InputNumberInterval.js","sources":["../../../../../../../src/utils/fields/InputNumberInterval.tsx"],"sourcesContent":["import * as React from 'react';\nimport Box from '@mui/material/Box';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport { Icon } from '@redsift/design-system';\nimport { mdiSync } from '@redsift/icons';\n\nconst SUBMIT_FILTER_STROKE_TIME = 500;\n\nexport const InputNumberInterval = (props: any) => {\n const { item, applyValue, focusElementRef = null } = props;\n\n const filterTimeout = React.useRef<any>();\n const [filterValueState, setFilterValueState] = React.useState<\n [string, string]\n >(item.value ?? '');\n const [applying, setIsApplying] = React.useState(false);\n\n React.useEffect(() => {\n return () => {\n clearTimeout(filterTimeout.current);\n };\n }, []);\n\n React.useEffect(() => {\n const itemValue = item.value ?? [undefined, undefined];\n setFilterValueState(itemValue);\n }, [item.value]);\n\n const updateFilterValue = (lowerBound: string, upperBound: string) => {\n clearTimeout(filterTimeout.current);\n setFilterValueState([lowerBound, upperBound]);\n\n setIsApplying(true);\n filterTimeout.current = setTimeout(() => {\n setIsApplying(false);\n applyValue({ ...item, value: [lowerBound, upperBound] });\n }, SUBMIT_FILTER_STROKE_TIME);\n };\n\n const handleUpperFilterChange: TextFieldProps['onChange'] = (event) => {\n const newUpperBound = event.target.value;\n updateFilterValue(filterValueState[0], newUpperBound);\n };\n const handleLowerFilterChange: TextFieldProps['onChange'] = (event) => {\n const newLowerBound = event.target.value;\n updateFilterValue(newLowerBound, filterValueState[1]);\n };\n\n return (\n <Box\n sx={{\n display: 'inline-flex',\n flexDirection: 'row',\n alignItems: 'end',\n height: 48,\n pl: '20px',\n }}\n >\n <TextField\n name=\"lower-bound-input\"\n placeholder=\"From\"\n label=\"From\"\n variant=\"standard\"\n value={Number(filterValueState[0])}\n onChange={handleLowerFilterChange}\n type=\"number\"\n inputRef={focusElementRef}\n sx={{ mr: 2 }}\n />\n <TextField\n name=\"upper-bound-input\"\n placeholder=\"To\"\n label=\"To\"\n variant=\"standard\"\n value={Number(filterValueState[1])}\n onChange={handleUpperFilterChange}\n type=\"number\"\n InputProps={applying ? { endAdornment: <Icon icon={mdiSync} /> } : {}}\n />\n </Box>\n );\n};\n"],"names":["SUBMIT_FILTER_STROKE_TIME","InputNumberInterval","props","_item$value","item","applyValue","focusElementRef","filterTimeout","React","useRef","filterValueState","setFilterValueState","useState","value","applying","setIsApplying","useEffect","clearTimeout","current","_item$value2","itemValue","undefined","updateFilterValue","lowerBound","upperBound","setTimeout","_objectSpread","handleUpperFilterChange","event","newUpperBound","target","handleLowerFilterChange","newLowerBound","createElement","Box","sx","display","flexDirection","alignItems","height","pl","TextField","name","placeholder","label","variant","Number","onChange","type","inputRef","mr","InputProps","endAdornment","Icon","icon","mdiSync"],"mappings":";;;;;;;AAMA,MAAMA,yBAAyB,GAAG,GAAG,CAAA;AAExBC,MAAAA,mBAAmB,GAAIC,KAAU,IAAK;AAAA,EAAA,IAAAC,WAAA,CAAA;EACjD,MAAM;IAAEC,IAAI;IAAEC,UAAU;AAAEC,IAAAA,eAAe,GAAG,IAAA;AAAK,GAAC,GAAGJ,KAAK,CAAA;AAE1D,EAAA,MAAMK,aAAa,GAAGC,KAAK,CAACC,MAAM,EAAO,CAAA;EACzC,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGH,KAAK,CAACI,QAAQ,CAAA,CAAAT,WAAA,GAE5DC,IAAI,CAACS,KAAK,MAAA,IAAA,IAAAV,WAAA,KAAAA,KAAAA,CAAAA,GAAAA,WAAA,GAAI,EAAE,CAAC,CAAA;EACnB,MAAM,CAACW,QAAQ,EAAEC,aAAa,CAAC,GAAGP,KAAK,CAACI,QAAQ,CAAC,KAAK,CAAC,CAAA;EAEvDJ,KAAK,CAACQ,SAAS,CAAC,MAAM;AACpB,IAAA,OAAO,MAAM;AACXC,MAAAA,YAAY,CAACV,aAAa,CAACW,OAAO,CAAC,CAAA;KACpC,CAAA;GACF,EAAE,EAAE,CAAC,CAAA;EAENV,KAAK,CAACQ,SAAS,CAAC,MAAM;AAAA,IAAA,IAAAG,YAAA,CAAA;AACpB,IAAA,MAAMC,SAAS,GAAAD,CAAAA,YAAA,GAAGf,IAAI,CAACS,KAAK,MAAA,IAAA,IAAAM,YAAA,KAAA,KAAA,CAAA,GAAAA,YAAA,GAAI,CAACE,SAAS,EAAEA,SAAS,CAAC,CAAA;IACtDV,mBAAmB,CAACS,SAAS,CAAC,CAAA;AAChC,GAAC,EAAE,CAAChB,IAAI,CAACS,KAAK,CAAC,CAAC,CAAA;AAEhB,EAAA,MAAMS,iBAAiB,GAAGA,CAACC,UAAkB,EAAEC,UAAkB,KAAK;AACpEP,IAAAA,YAAY,CAACV,aAAa,CAACW,OAAO,CAAC,CAAA;AACnCP,IAAAA,mBAAmB,CAAC,CAACY,UAAU,EAAEC,UAAU,CAAC,CAAC,CAAA;IAE7CT,aAAa,CAAC,IAAI,CAAC,CAAA;AACnBR,IAAAA,aAAa,CAACW,OAAO,GAAGO,UAAU,CAAC,MAAM;MACvCV,aAAa,CAAC,KAAK,CAAC,CAAA;AACpBV,MAAAA,UAAU,CAAAqB,cAAA,CAAAA,cAAA,KAAMtB,IAAI,CAAA,EAAA,EAAA,EAAA;AAAES,QAAAA,KAAK,EAAE,CAACU,UAAU,EAAEC,UAAU,CAAA;AAAC,OAAA,CAAE,CAAC,CAAA;KACzD,EAAExB,yBAAyB,CAAC,CAAA;GAC9B,CAAA;EAED,MAAM2B,uBAAmD,GAAIC,KAAK,IAAK;AACrE,IAAA,MAAMC,aAAa,GAAGD,KAAK,CAACE,MAAM,CAACjB,KAAK,CAAA;AACxCS,IAAAA,iBAAiB,CAACZ,gBAAgB,CAAC,CAAC,CAAC,EAAEmB,aAAa,CAAC,CAAA;GACtD,CAAA;EACD,MAAME,uBAAmD,GAAIH,KAAK,IAAK;AACrE,IAAA,MAAMI,aAAa,GAAGJ,KAAK,CAACE,MAAM,CAACjB,KAAK,CAAA;AACxCS,IAAAA,iBAAiB,CAACU,aAAa,EAAEtB,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;GACtD,CAAA;AAED,EAAA,oBACEF,KAAA,CAAAyB,aAAA,CAACC,GAAG,EAAA;AACFC,IAAAA,EAAE,EAAE;AACFC,MAAAA,OAAO,EAAE,aAAa;AACtBC,MAAAA,aAAa,EAAE,KAAK;AACpBC,MAAAA,UAAU,EAAE,KAAK;AACjBC,MAAAA,MAAM,EAAE,EAAE;AACVC,MAAAA,EAAE,EAAE,MAAA;AACN,KAAA;AAAE,GAAA,eAEFhC,KAAA,CAAAyB,aAAA,CAACQ,SAAS,EAAA;AACRC,IAAAA,IAAI,EAAC,mBAAmB;AACxBC,IAAAA,WAAW,EAAC,MAAM;AAClBC,IAAAA,KAAK,EAAC,MAAM;AACZC,IAAAA,OAAO,EAAC,UAAU;AAClBhC,IAAAA,KAAK,EAAEiC,MAAM,CAACpC,gBAAgB,CAAC,CAAC,CAAC,CAAE;AACnCqC,IAAAA,QAAQ,EAAEhB,uBAAwB;AAClCiB,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE3C,eAAgB;AAC1B6B,IAAAA,EAAE,EAAE;AAAEe,MAAAA,EAAE,EAAE,CAAA;AAAE,KAAA;AAAE,GACf,CAAC,eACF1C,KAAA,CAAAyB,aAAA,CAACQ,SAAS,EAAA;AACRC,IAAAA,IAAI,EAAC,mBAAmB;AACxBC,IAAAA,WAAW,EAAC,IAAI;AAChBC,IAAAA,KAAK,EAAC,IAAI;AACVC,IAAAA,OAAO,EAAC,UAAU;AAClBhC,IAAAA,KAAK,EAAEiC,MAAM,CAACpC,gBAAgB,CAAC,CAAC,CAAC,CAAE;AACnCqC,IAAAA,QAAQ,EAAEpB,uBAAwB;AAClCqB,IAAAA,IAAI,EAAC,QAAQ;IACbG,UAAU,EAAErC,QAAQ,GAAG;AAAEsC,MAAAA,YAAY,eAAE5C,KAAA,CAAAyB,aAAA,CAACoB,IAAI,EAAA;AAACC,QAAAA,IAAI,EAAEC,OAAAA;OAAU,CAAA;AAAE,KAAC,GAAG,EAAC;AAAE,GACvE,CACE,CAAC,CAAA;AAEV;;;;"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { getGridStringOperators, getGridNumericOperators, getGridBooleanOperators, getGridDateOperators, getGridSingleSelectOperators } from '@mui/x-data-grid-pro';
|
|
2
|
-
export { getGridBooleanOperators, getGridDateOperators, getGridSingleSelectOperators } from '@mui/x-data-grid-pro';
|
|
3
|
-
import { DOES_NOT_HAVE_ANY_OF_WITH_SELECT } from './string-array/_internal/doesNotHaveAnyOf.js';
|
|
4
|
-
import { getGridStringOperators as getGridStringOperators$1 } from './string/_internal/getGridStringOperators.js';
|
|
5
|
-
export { getGridStringOperators } from './string/_internal/getGridStringOperators.js';
|
|
6
|
-
import { getGridNumericOperators as getGridNumericOperators$1 } from './numeric/_internal/getGridNumericOperators.js';
|
|
7
|
-
export { getGridNumericOperators } from './numeric/_internal/getGridNumericOperators.js';
|
|
8
|
-
import { CONTAINS_ANY_OF } from './string-array/_internal/containsAnyOf.js';
|
|
9
|
-
export { CONTAINS_ANY_OF, CONTAINS_ANY_OF_I } from './string-array/_internal/containsAnyOf.js';
|
|
10
|
-
import { ENDS_WITH_ANY_OF } from './string-array/_internal/endsWithAnyOf.js';
|
|
11
|
-
export { ENDS_WITH_ANY_OF } from './string-array/_internal/endsWithAnyOf.js';
|
|
12
|
-
import { IS_ANY_OF_WITH_SELECT } from './string-array/_internal/isAnyOf.js';
|
|
13
|
-
export { IS_ANY_OF, IS_ANY_OF_WITH_SELECT } from './string-array/_internal/isAnyOf.js';
|
|
14
|
-
import { IS_NOT_WITH_SELECT } from './string/_internal/isNot.js';
|
|
15
|
-
export { IS_NOT, IS_NOT_WITH_SELECT } from './string/_internal/isNot.js';
|
|
16
|
-
import { IS_WITH_SELECT } from './string/_internal/is.js';
|
|
17
|
-
export { IS, IS_WITH_SELECT } from './string/_internal/is.js';
|
|
18
|
-
import { STARTS_WITH_ANY_OF } from './string-array/_internal/startsWithAnyOf.js';
|
|
19
|
-
export { STARTS_WITH_ANY_OF } from './string-array/_internal/startsWithAnyOf.js';
|
|
20
|
-
import { HAS_WITH_SELECT } from './string/_internal/has.js';
|
|
21
|
-
export { HAS, HAS_WITH_SELECT } from './string/_internal/has.js';
|
|
22
|
-
import { HAS_ANY_OF_WITH_SELECT } from './string-array/_internal/hasAnyOf.js';
|
|
23
|
-
export { HAS_ANY_OF, HAS_ANY_OF_WITH_SELECT } from './string-array/_internal/hasAnyOf.js';
|
|
24
|
-
import { HAS_ONLY_WITH_SELECT } from './string/_internal/hasOnly.js';
|
|
25
|
-
export { HAS_ONLY, HAS_ONLY_WITH_SELECT } from './string/_internal/hasOnly.js';
|
|
26
|
-
import { DOES_NOT_HAVE_WITH_SELECT } from './string/_internal/doesNotHave.js';
|
|
27
|
-
export { DOES_NOT_HAVE, DOES_NOT_HAVE_WITH_SELECT } from './string/_internal/doesNotHave.js';
|
|
28
|
-
import { getGridStringArrayOperators } from './string-array/_internal/getGridStringArrayOperators.js';
|
|
29
|
-
export { getGridStringArrayOperators, getGridStringArrayOperatorsWithSelect, getGridStringArrayOperatorsWithSelectOnStringArrayColumns } from './string-array/_internal/getGridStringArrayOperators.js';
|
|
30
|
-
|
|
31
|
-
// istanbul ignore file
|
|
32
|
-
const operatorList = {
|
|
33
|
-
// Default types
|
|
34
|
-
string: getGridStringOperators(),
|
|
35
|
-
number: getGridNumericOperators(),
|
|
36
|
-
boolean: getGridBooleanOperators(),
|
|
37
|
-
date: getGridDateOperators(),
|
|
38
|
-
dateTime: getGridDateOperators(true),
|
|
39
|
-
singleSelect: getGridSingleSelectOperators(),
|
|
40
|
-
// Extended types
|
|
41
|
-
rsString: getGridStringOperators$1(),
|
|
42
|
-
rsNumber: getGridNumericOperators$1(),
|
|
43
|
-
rsSingleSelect: [CONTAINS_ANY_OF, ENDS_WITH_ANY_OF, IS_ANY_OF_WITH_SELECT, IS_NOT_WITH_SELECT, IS_WITH_SELECT, STARTS_WITH_ANY_OF],
|
|
44
|
-
rsSingleSelectWithShortOperatorList: [IS_WITH_SELECT, IS_NOT_WITH_SELECT, IS_ANY_OF_WITH_SELECT],
|
|
45
|
-
rsMultipleSelect: [HAS_WITH_SELECT, HAS_ANY_OF_WITH_SELECT, HAS_ONLY_WITH_SELECT, DOES_NOT_HAVE_WITH_SELECT, DOES_NOT_HAVE_ANY_OF_WITH_SELECT],
|
|
46
|
-
rsMultipleSelectWithShortOperatorList: [HAS_WITH_SELECT, DOES_NOT_HAVE_WITH_SELECT, HAS_ANY_OF_WITH_SELECT],
|
|
47
|
-
// Custom types
|
|
48
|
-
rsStringArray: getGridStringArrayOperators()
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
export { operatorList };
|
|
52
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/utils/operators/index.ts"],"sourcesContent":["// istanbul ignore file\n\nimport {\n getGridBooleanOperators,\n getGridDateOperators,\n getGridSingleSelectOperators,\n getGridStringOperators as nativeGetGridStringOperators,\n getGridNumericOperators as nativeGetGridNumericOperators,\n} from '@mui/x-data-grid-pro';\nimport { getGridNumericOperators } from './numeric';\nimport {\n DOES_NOT_HAVE_WITH_SELECT,\n getGridStringOperators,\n HAS_ONLY_WITH_SELECT,\n HAS_WITH_SELECT,\n IS_NOT_WITH_SELECT,\n IS_WITH_SELECT,\n} from './string';\nimport {\n CONTAINS_ANY_OF,\n ENDS_WITH_ANY_OF,\n getGridStringArrayOperators,\n HAS_ANY_OF_WITH_SELECT,\n IS_ANY_OF_WITH_SELECT,\n STARTS_WITH_ANY_OF,\n} from './string-array';\nimport { DOES_NOT_HAVE_ANY_OF_WITH_SELECT } from './string-array/doesNotHaveAnyOf';\n\nexport { getGridBooleanOperators, getGridDateOperators, getGridSingleSelectOperators } from '@mui/x-data-grid-pro';\nexport * from './numeric';\nexport * from './string';\nexport * from './string-array';\n\nexport const operatorList = {\n // Default types\n string: nativeGetGridStringOperators(),\n number: nativeGetGridNumericOperators(),\n boolean: getGridBooleanOperators(),\n date: getGridDateOperators(),\n dateTime: getGridDateOperators(true),\n singleSelect: getGridSingleSelectOperators(),\n\n // Extended types\n rsString: getGridStringOperators(),\n rsNumber: getGridNumericOperators(),\n rsSingleSelect: [\n CONTAINS_ANY_OF,\n ENDS_WITH_ANY_OF,\n IS_ANY_OF_WITH_SELECT,\n IS_NOT_WITH_SELECT,\n IS_WITH_SELECT,\n STARTS_WITH_ANY_OF,\n ],\n rsSingleSelectWithShortOperatorList: [IS_WITH_SELECT, IS_NOT_WITH_SELECT, IS_ANY_OF_WITH_SELECT],\n rsMultipleSelect: [\n HAS_WITH_SELECT,\n HAS_ANY_OF_WITH_SELECT,\n HAS_ONLY_WITH_SELECT,\n DOES_NOT_HAVE_WITH_SELECT,\n DOES_NOT_HAVE_ANY_OF_WITH_SELECT,\n ],\n rsMultipleSelectWithShortOperatorList: [HAS_WITH_SELECT, DOES_NOT_HAVE_WITH_SELECT, HAS_ANY_OF_WITH_SELECT],\n\n // Custom types\n rsStringArray: getGridStringArrayOperators(),\n};\n"],"names":["operatorList","string","nativeGetGridStringOperators","number","nativeGetGridNumericOperators","boolean","getGridBooleanOperators","date","getGridDateOperators","dateTime","singleSelect","getGridSingleSelectOperators","rsString","getGridStringOperators","rsNumber","getGridNumericOperators","rsSingleSelect","CONTAINS_ANY_OF","ENDS_WITH_ANY_OF","IS_ANY_OF_WITH_SELECT","IS_NOT_WITH_SELECT","IS_WITH_SELECT","STARTS_WITH_ANY_OF","rsSingleSelectWithShortOperatorList","rsMultipleSelect","HAS_WITH_SELECT","HAS_ANY_OF_WITH_SELECT","HAS_ONLY_WITH_SELECT","DOES_NOT_HAVE_WITH_SELECT","DOES_NOT_HAVE_ANY_OF_WITH_SELECT","rsMultipleSelectWithShortOperatorList","rsStringArray","getGridStringArrayOperators"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAiCO,MAAMA,YAAY,GAAG;AAC1B;EACAC,MAAM,EAAEC,sBAA4B,EAAE;EACtCC,MAAM,EAAEC,uBAA6B,EAAE;EACvCC,OAAO,EAAEC,uBAAuB,EAAE;EAClCC,IAAI,EAAEC,oBAAoB,EAAE;AAC5BC,EAAAA,QAAQ,EAAED,oBAAoB,CAAC,IAAI,CAAC;EACpCE,YAAY,EAAEC,4BAA4B,EAAE;AAE5C;EACAC,QAAQ,EAAEC,wBAAsB,EAAE;EAClCC,QAAQ,EAAEC,yBAAuB,EAAE;AACnCC,EAAAA,cAAc,EAAE,CACdC,eAAe,EACfC,gBAAgB,EAChBC,qBAAqB,EACrBC,kBAAkB,EAClBC,cAAc,EACdC,kBAAkB,CACnB;AACDC,EAAAA,mCAAmC,EAAE,CAACF,cAAc,EAAED,kBAAkB,EAAED,qBAAqB,CAAC;EAChGK,gBAAgB,EAAE,CAChBC,eAAe,EACfC,sBAAsB,EACtBC,oBAAoB,EACpBC,yBAAyB,EACzBC,gCAAgC,CACjC;AACDC,EAAAA,qCAAqC,EAAE,CAACL,eAAe,EAAEG,yBAAyB,EAAEF,sBAAsB,CAAC;AAE3G;EACAK,aAAa,EAAEC,2BAA2B,EAAC;AAC7C;;;;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { getGridNumericOperators as getGridNumericOperators$1 } from '@mui/x-data-grid-pro';
|
|
2
|
-
import { IS_BETWEEN } from './isBetween.js';
|
|
3
|
-
|
|
4
|
-
const getGridNumericOperators = () => [...getGridNumericOperators$1(), IS_BETWEEN];
|
|
5
|
-
|
|
6
|
-
export { getGridNumericOperators };
|
|
7
|
-
//# sourceMappingURL=getGridNumericOperators.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getGridNumericOperators.js","sources":["../../../../../../../../src/utils/operators/numeric/getGridNumericOperators.ts"],"sourcesContent":["import {\n getGridNumericOperators as forwardOperators,\n GridFilterOperator,\n} from '@mui/x-data-grid-pro';\nimport { IS_BETWEEN } from './isBetween';\n\nexport const getGridNumericOperators: () => GridFilterOperator<\n any,\n number | string | null,\n any\n>[] = () => [...forwardOperators(), IS_BETWEEN];\n"],"names":["getGridNumericOperators","forwardOperators","IS_BETWEEN"],"mappings":";;;AAMaA,MAAAA,uBAIV,GAAGA,MAAM,CAAC,GAAGC,yBAAgB,EAAE,EAAEC,UAAU;;;;"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { InputNumberInterval } from '../../../fields/_internal/InputNumberInterval.js';
|
|
2
|
-
|
|
3
|
-
const isBetweenOperator = {
|
|
4
|
-
label: 'is between',
|
|
5
|
-
value: 'isBetween',
|
|
6
|
-
getApplyFilterFn: filterItem => {
|
|
7
|
-
if (!filterItem.columnField || !filterItem.value || !filterItem.operatorValue) {
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
if (!Array.isArray(filterItem.value) || filterItem.value.length !== 2) {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
if (filterItem.value[0] == null || filterItem.value[1] == null) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
if (typeof filterItem.value[0] !== 'number' || typeof filterItem.value[1] !== 'number') {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
return params => {
|
|
20
|
-
return params.value !== null && filterItem.value[0] <= params.value && params.value <= filterItem.value[1];
|
|
21
|
-
};
|
|
22
|
-
},
|
|
23
|
-
InputComponent: InputNumberInterval
|
|
24
|
-
};
|
|
25
|
-
const IS_BETWEEN = isBetweenOperator;
|
|
26
|
-
|
|
27
|
-
export { IS_BETWEEN };
|
|
28
|
-
//# sourceMappingURL=isBetween.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isBetween.js","sources":["../../../../../../../../src/utils/operators/numeric/isBetween.tsx"],"sourcesContent":["import { GridCellParams, GridFilterItem } from '@mui/x-data-grid-pro';\nimport { InputNumberInterval } from '../../fields/InputNumberInterval';\n\nconst isBetweenOperator = {\n label: 'is between',\n value: 'isBetween',\n getApplyFilterFn: (filterItem: GridFilterItem) => {\n if (\n !filterItem.columnField ||\n !filterItem.value ||\n !filterItem.operatorValue\n ) {\n return null;\n }\n\n if (!Array.isArray(filterItem.value) || filterItem.value.length !== 2) {\n return null;\n }\n\n if (filterItem.value[0] == null || filterItem.value[1] == null) {\n return null;\n }\n\n if (\n typeof filterItem.value[0] !== 'number' ||\n typeof filterItem.value[1] !== 'number'\n ) {\n return null;\n }\n\n return (params: GridCellParams): boolean => {\n return (\n params.value !== null &&\n filterItem.value[0] <= params.value &&\n params.value <= filterItem.value[1]\n );\n };\n },\n InputComponent: InputNumberInterval,\n};\n\nexport const IS_BETWEEN = isBetweenOperator;\n"],"names":["isBetweenOperator","label","value","getApplyFilterFn","filterItem","columnField","operatorValue","Array","isArray","length","params","InputComponent","InputNumberInterval","IS_BETWEEN"],"mappings":";;AAGA,MAAMA,iBAAiB,GAAG;AACxBC,EAAAA,KAAK,EAAE,YAAY;AACnBC,EAAAA,KAAK,EAAE,WAAW;EAClBC,gBAAgB,EAAGC,UAA0B,IAAK;AAChD,IAAA,IACE,CAACA,UAAU,CAACC,WAAW,IACvB,CAACD,UAAU,CAACF,KAAK,IACjB,CAACE,UAAU,CAACE,aAAa,EACzB;AACA,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,IAAI,CAACC,KAAK,CAACC,OAAO,CAACJ,UAAU,CAACF,KAAK,CAAC,IAAIE,UAAU,CAACF,KAAK,CAACO,MAAM,KAAK,CAAC,EAAE;AACrE,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,IAAIL,UAAU,CAACF,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAIE,UAAU,CAACF,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;AAC9D,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,IACE,OAAOE,UAAU,CAACF,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,IACvC,OAAOE,UAAU,CAACF,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,EACvC;AACA,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,OAAQQ,MAAsB,IAAc;MAC1C,OACEA,MAAM,CAACR,KAAK,KAAK,IAAI,IACrBE,UAAU,CAACF,KAAK,CAAC,CAAC,CAAC,IAAIQ,MAAM,CAACR,KAAK,IACnCQ,MAAM,CAACR,KAAK,IAAIE,UAAU,CAACF,KAAK,CAAC,CAAC,CAAC,CAAA;KAEtC,CAAA;GACF;AACDS,EAAAA,cAAc,EAAEC,mBAAAA;AAClB,CAAC,CAAA;AAEM,MAAMC,UAAU,GAAGb;;;;"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { GridFilterInputValue } from '@mui/x-data-grid-pro';
|
|
2
|
-
|
|
3
|
-
const doesNotContain = {
|
|
4
|
-
label: 'does not contain',
|
|
5
|
-
value: 'doesNotContain',
|
|
6
|
-
getApplyFilterFn: filterItem => {
|
|
7
|
-
if (!filterItem.columnField || !filterItem.value || !filterItem.operatorValue) {
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
return params => {
|
|
11
|
-
if (filterItem.value.length === 0) {
|
|
12
|
-
return true;
|
|
13
|
-
}
|
|
14
|
-
if (String(params.value).indexOf(filterItem.value) !== -1) {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
return true;
|
|
18
|
-
};
|
|
19
|
-
},
|
|
20
|
-
InputComponent: GridFilterInputValue
|
|
21
|
-
};
|
|
22
|
-
const DOES_NOT_CONTAIN = doesNotContain;
|
|
23
|
-
|
|
24
|
-
export { DOES_NOT_CONTAIN };
|
|
25
|
-
//# sourceMappingURL=doesNotContain.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"doesNotContain.js","sources":["../../../../../../../../src/utils/operators/string/doesNotContain.tsx"],"sourcesContent":["import { GridCellParams, GridFilterInputValue, GridFilterItem } from '@mui/x-data-grid-pro';\n\nconst doesNotContain = {\n label: 'does not contain',\n value: 'doesNotContain',\n getApplyFilterFn: (filterItem: GridFilterItem) => {\n if (!filterItem.columnField || !filterItem.value || !filterItem.operatorValue) {\n return null;\n }\n\n return (params: GridCellParams): boolean => {\n if (filterItem.value.length === 0) {\n return true;\n }\n\n if (String(params.value).indexOf(filterItem.value) !== -1) {\n return false;\n }\n\n return true;\n };\n },\n InputComponent: GridFilterInputValue,\n};\n\nexport const DOES_NOT_CONTAIN = doesNotContain;\n"],"names":["doesNotContain","label","value","getApplyFilterFn","filterItem","columnField","operatorValue","params","length","String","indexOf","InputComponent","GridFilterInputValue","DOES_NOT_CONTAIN"],"mappings":";;AAEA,MAAMA,cAAc,GAAG;AACrBC,EAAAA,KAAK,EAAE,kBAAkB;AACzBC,EAAAA,KAAK,EAAE,gBAAgB;EACvBC,gBAAgB,EAAGC,UAA0B,IAAK;AAChD,IAAA,IAAI,CAACA,UAAU,CAACC,WAAW,IAAI,CAACD,UAAU,CAACF,KAAK,IAAI,CAACE,UAAU,CAACE,aAAa,EAAE;AAC7E,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,OAAQC,MAAsB,IAAc;AAC1C,MAAA,IAAIH,UAAU,CAACF,KAAK,CAACM,MAAM,KAAK,CAAC,EAAE;AACjC,QAAA,OAAO,IAAI,CAAA;AACb,OAAA;AAEA,MAAA,IAAIC,MAAM,CAACF,MAAM,CAACL,KAAK,CAAC,CAACQ,OAAO,CAACN,UAAU,CAACF,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;AACzD,QAAA,OAAO,KAAK,CAAA;AACd,OAAA;AAEA,MAAA,OAAO,IAAI,CAAA;KACZ,CAAA;GACF;AACDS,EAAAA,cAAc,EAAEC,oBAAAA;AAClB,CAAC,CAAA;AAEM,MAAMC,gBAAgB,GAAGb;;;;"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { GridFilterInputValue } from '@mui/x-data-grid-pro';
|
|
2
|
-
|
|
3
|
-
const doesNotEqual = {
|
|
4
|
-
label: 'does not equal',
|
|
5
|
-
value: 'doesNotEqual',
|
|
6
|
-
getApplyFilterFn: filterItem => {
|
|
7
|
-
if (!filterItem.columnField || !filterItem.value || !filterItem.operatorValue) {
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
return params => {
|
|
11
|
-
if (filterItem.value.length === 0) {
|
|
12
|
-
return true;
|
|
13
|
-
}
|
|
14
|
-
if (String(params.value) === filterItem.value) {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
return true;
|
|
18
|
-
};
|
|
19
|
-
},
|
|
20
|
-
InputComponent: GridFilterInputValue
|
|
21
|
-
};
|
|
22
|
-
const DOES_NOT_EQUAL = doesNotEqual;
|
|
23
|
-
|
|
24
|
-
export { DOES_NOT_EQUAL };
|
|
25
|
-
//# sourceMappingURL=doesNotEqual.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"doesNotEqual.js","sources":["../../../../../../../../src/utils/operators/string/doesNotEqual.tsx"],"sourcesContent":["import { GridCellParams, GridFilterInputValue, GridFilterItem } from '@mui/x-data-grid-pro';\n\nconst doesNotEqual = {\n label: 'does not equal',\n value: 'doesNotEqual',\n getApplyFilterFn: (filterItem: GridFilterItem) => {\n if (!filterItem.columnField || !filterItem.value || !filterItem.operatorValue) {\n return null;\n }\n\n return (params: GridCellParams): boolean => {\n if (filterItem.value.length === 0) {\n return true;\n }\n\n if (String(params.value) === filterItem.value) {\n return false;\n }\n\n return true;\n };\n },\n InputComponent: GridFilterInputValue,\n};\n\nexport const DOES_NOT_EQUAL = doesNotEqual;\n"],"names":["doesNotEqual","label","value","getApplyFilterFn","filterItem","columnField","operatorValue","params","length","String","InputComponent","GridFilterInputValue","DOES_NOT_EQUAL"],"mappings":";;AAEA,MAAMA,YAAY,GAAG;AACnBC,EAAAA,KAAK,EAAE,gBAAgB;AACvBC,EAAAA,KAAK,EAAE,cAAc;EACrBC,gBAAgB,EAAGC,UAA0B,IAAK;AAChD,IAAA,IAAI,CAACA,UAAU,CAACC,WAAW,IAAI,CAACD,UAAU,CAACF,KAAK,IAAI,CAACE,UAAU,CAACE,aAAa,EAAE;AAC7E,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,OAAQC,MAAsB,IAAc;AAC1C,MAAA,IAAIH,UAAU,CAACF,KAAK,CAACM,MAAM,KAAK,CAAC,EAAE;AACjC,QAAA,OAAO,IAAI,CAAA;AACb,OAAA;MAEA,IAAIC,MAAM,CAACF,MAAM,CAACL,KAAK,CAAC,KAAKE,UAAU,CAACF,KAAK,EAAE;AAC7C,QAAA,OAAO,KAAK,CAAA;AACd,OAAA;AAEA,MAAA,OAAO,IAAI,CAAA;KACZ,CAAA;GACF;AACDQ,EAAAA,cAAc,EAAEC,oBAAAA;AAClB,CAAC,CAAA;AAEM,MAAMC,cAAc,GAAGZ;;;;"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { objectSpread2 as _objectSpread2 } from '../../../../../../../_virtual/_internal/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import { GridFilterInputValue, GridFilterInputSingleSelect } from '@mui/x-data-grid-pro';
|
|
3
|
-
|
|
4
|
-
const doesNotHaveOperator = {
|
|
5
|
-
label: "doesn't have",
|
|
6
|
-
value: 'doesNotHave',
|
|
7
|
-
getApplyFilterFn: filterItem => {
|
|
8
|
-
if (!filterItem.columnField || !filterItem.value || !filterItem.operatorValue) {
|
|
9
|
-
return null;
|
|
10
|
-
}
|
|
11
|
-
return params => {
|
|
12
|
-
const cellValues = Array.isArray(params.value) ? params.value : [params.value];
|
|
13
|
-
return !cellValues.map(value => String(value)).includes(filterItem.value);
|
|
14
|
-
};
|
|
15
|
-
},
|
|
16
|
-
InputComponent: GridFilterInputValue
|
|
17
|
-
};
|
|
18
|
-
const DOES_NOT_HAVE = doesNotHaveOperator;
|
|
19
|
-
const DOES_NOT_HAVE_WITH_SELECT = _objectSpread2(_objectSpread2({}, DOES_NOT_HAVE), {}, {
|
|
20
|
-
InputComponent: GridFilterInputSingleSelect
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
export { DOES_NOT_HAVE, DOES_NOT_HAVE_WITH_SELECT };
|
|
24
|
-
//# sourceMappingURL=doesNotHave.js.map
|