@redsift/table 12.4.0 → 12.5.0-muiv7

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/index.js CHANGED
@@ -1,18 +1,16 @@
1
- import { o as operatorList, D as DOES_NOT_CONTAIN, a as DOES_NOT_EQUAL, b as DOES_NOT_START_WITH, c as DOES_NOT_END_WITH, I as IS_ANY_OF, d as IS_NOT_ANY_OF, C as CONTAINS_ANY_OF, e as DOES_NOT_CONTAIN_ANY_OF, S as STARTS_WITH_ANY_OF, f as DOES_NOT_START_WITH_ANY_OF, E as ENDS_WITH_ANY_OF, g as DOES_NOT_END_WITH_ANY_OF, h as IS_BETWEEN, i as IS_WITH_SELECT, j as IS_NOT_WITH_SELECT, k as IS_ANY_OF_WITH_SELECT, l as IS_NOT_ANY_OF_WITH_SELECT, A as ARRAY_IS_EMPTY, m as ARRAY_IS_NOT_EMPTY, H as HAS_WITH_SELECT, n as DOES_NOT_HAVE_WITH_SELECT, p as HAS_ANY_OF_WITH_SELECT, q as HAS_ALL_OF_WITH_SELECT, r as DOES_NOT_HAVE_ANY_OF_WITH_SELECT, s as HAS_ONLY_WITH_SELECT, t as HAS, u as DOES_NOT_HAVE, v as HAS_ANY_OF, w as HAS_ALL_OF, x as DOES_NOT_HAVE_ANY_OF, y as HAS_ONLY } from './_internal/StatefulDataGrid2.js';
2
- export { A as ARRAY_IS_EMPTY, m as ARRAY_IS_NOT_EMPTY, T as CATEGORIES, C as CONTAINS_ANY_OF, Q as DIMENSION_MODEL_KEY, D as DOES_NOT_CONTAIN, e as DOES_NOT_CONTAIN_ANY_OF, c as DOES_NOT_END_WITH, g as DOES_NOT_END_WITH_ANY_OF, a as DOES_NOT_EQUAL, u as DOES_NOT_HAVE, x as DOES_NOT_HAVE_ANY_OF, r as DOES_NOT_HAVE_ANY_OF_WITH_SELECT, n as DOES_NOT_HAVE_WITH_SELECT, b as DOES_NOT_START_WITH, f as DOES_NOT_START_WITH_ANY_OF, E as ENDS_WITH_ANY_OF, M as FILTER_MODEL_KEY, R as FILTER_SEARCH_KEY, t as HAS, w as HAS_ALL_OF, q as HAS_ALL_OF_WITH_SELECT, v as HAS_ANY_OF, p as HAS_ANY_OF_WITH_SELECT, y as HAS_ONLY, s as HAS_ONLY_WITH_SELECT, H as HAS_WITH_SELECT, B as IS, I as IS_ANY_OF, k as IS_ANY_OF_WITH_SELECT, h as IS_BETWEEN, F as IS_NOT, d as IS_NOT_ANY_OF, l as IS_NOT_ANY_OF_WITH_SELECT, j as IS_NOT_WITH_SELECT, i as IS_WITH_SELECT, P as PAGINATION_MODEL_KEY, O as PINNED_COLUMNS, N as SORT_MODEL_KEY, S as STARTS_WITH_ANY_OF, am as StatefulDataGrid, V as VISIBILITY_MODEL_KEY, al as areFilterModelsEquivalent, $ as areSearchStringsEqual, _ as buildQueryParamsString, U as buildStorageKey, W as clearPreviousVersionStorage, Y as convertFromDisplayFormat, X as convertToDisplayFormat, a0 as decodeValue, a1 as encodeValue, ad as getColumnVisibilityFromString, Z as getDecodedSearchFromUrl, a7 as getFilterModelFromString, ai as getFinalSearch, z as getGridNumericOperators, J as getGridStringArrayOperators, K as getGridStringArrayOperatorsWithSelect, L as getGridStringArrayOperatorsWithSelectOnStringArrayColumns, G as getGridStringOperators, aj as getModelsParsedOrUpdateLocalStorage, ab as getPaginationFromString, af as getPinnedColumnsFromString, ae as getSearchParamsFromColumnVisibility, a8 as getSearchParamsFromFilterModel, ac as getSearchParamsFromPagination, ag as getSearchParamsFromPinnedColumns, aa as getSearchParamsFromSorting, ah as getSearchParamsFromTab, a9 as getSortingFromString, a5 as isOperatorValueValid, a6 as isValueValid, a4 as numberOperatorDecoder, a3 as numberOperatorEncoder, o as operatorList, ak as updateUrl, a2 as urlSearchParamsToString } from './_internal/StatefulDataGrid2.js';
3
- import { GRID_DETAIL_PANEL_TOGGLE_COL_DEF, GridFilterInputMultipleValue, GridFilterInputMultipleSingleSelect, getGridDateOperators, getGridStringOperators, getGridNumericOperators } from '@mui/x-data-grid-premium';
4
- export { getGridBooleanOperators, getGridDateOperators, getGridSingleSelectOperators } from '@mui/x-data-grid-premium';
1
+ import { B as Box, T as TextField, o as operatorList, D as DOES_NOT_CONTAIN, a as DOES_NOT_EQUAL, b as DOES_NOT_START_WITH, c as DOES_NOT_END_WITH, I as IS_ANY_OF, d as IS_NOT_ANY_OF, C as CONTAINS_ANY_OF, e as DOES_NOT_CONTAIN_ANY_OF, S as STARTS_WITH_ANY_OF, f as DOES_NOT_START_WITH_ANY_OF, E as ENDS_WITH_ANY_OF, g as DOES_NOT_END_WITH_ANY_OF, h as IS_BETWEEN, i as IS_WITH_SELECT, j as IS_NOT_WITH_SELECT, k as IS_ANY_OF_WITH_SELECT, l as IS_NOT_ANY_OF_WITH_SELECT, A as ARRAY_IS_EMPTY, m as ARRAY_IS_NOT_EMPTY, H as HAS_WITH_SELECT, n as DOES_NOT_HAVE_WITH_SELECT, p as HAS_ANY_OF_WITH_SELECT, q as HAS_ALL_OF_WITH_SELECT, r as DOES_NOT_HAVE_ANY_OF_WITH_SELECT, s as HAS_ONLY_WITH_SELECT, t as HAS, u as DOES_NOT_HAVE, v as HAS_ANY_OF, w as HAS_ALL_OF, x as DOES_NOT_HAVE_ANY_OF, y as HAS_ONLY } from './_internal/StatefulDataGrid2.js';
2
+ export { A as ARRAY_IS_EMPTY, m as ARRAY_IS_NOT_EMPTY, X as CATEGORIES, C as CONTAINS_ANY_OF, W as DENSITY_MODEL_KEY, R as DIMENSION_MODEL_KEY, D as DOES_NOT_CONTAIN, e as DOES_NOT_CONTAIN_ANY_OF, c as DOES_NOT_END_WITH, g as DOES_NOT_END_WITH_ANY_OF, a as DOES_NOT_EQUAL, u as DOES_NOT_HAVE, x as DOES_NOT_HAVE_ANY_OF, r as DOES_NOT_HAVE_ANY_OF_WITH_SELECT, n as DOES_NOT_HAVE_WITH_SELECT, b as DOES_NOT_START_WITH, f as DOES_NOT_START_WITH_ANY_OF, E as ENDS_WITH_ANY_OF, N as FILTER_MODEL_KEY, U as FILTER_SEARCH_KEY, t as HAS, w as HAS_ALL_OF, q as HAS_ALL_OF_WITH_SELECT, v as HAS_ANY_OF, p as HAS_ANY_OF_WITH_SELECT, y as HAS_ONLY, s as HAS_ONLY_WITH_SELECT, H as HAS_WITH_SELECT, F as IS, I as IS_ANY_OF, k as IS_ANY_OF_WITH_SELECT, h as IS_BETWEEN, G as IS_NOT, d as IS_NOT_ANY_OF, l as IS_NOT_ANY_OF_WITH_SELECT, j as IS_NOT_WITH_SELECT, i as IS_WITH_SELECT, P as PAGINATION_MODEL_KEY, Q as PINNED_COLUMNS, O as SORT_MODEL_KEY, S as STARTS_WITH_ANY_OF, ar as StatefulDataGrid, V as VISIBILITY_MODEL_KEY, aq as areFilterModelsEquivalent, a2 as areSearchStringsEqual, a1 as buildQueryParamsString, Y as buildStorageKey, Z as clearPreviousVersionStorage, $ as convertFromDisplayFormat, _ as convertToDisplayFormat, a3 as decodeValue, a4 as encodeValue, ag as getColumnVisibilityFromString, a0 as getDecodedSearchFromUrl, al as getDensityFromString, aa as getFilterModelFromString, an as getFinalSearch, z as getGridNumericOperators, K as getGridStringArrayOperators, L as getGridStringArrayOperatorsWithSelect, M as getGridStringArrayOperatorsWithSelectOnStringArrayColumns, J as getGridStringOperators, ao as getModelsParsedOrUpdateLocalStorage, ae as getPaginationFromString, ai as getPinnedColumnsFromString, ah as getSearchParamsFromColumnVisibility, am as getSearchParamsFromDensity, ab as getSearchParamsFromFilterModel, af as getSearchParamsFromPagination, aj as getSearchParamsFromPinnedColumns, ad as getSearchParamsFromSorting, ak as getSearchParamsFromTab, ac as getSortingFromString, a8 as isOperatorValueValid, a9 as isValueValid, a7 as numberOperatorDecoder, a6 as numberOperatorEncoder, o as operatorList, ap as updateUrl, a5 as urlSearchParamsToString } from './_internal/StatefulDataGrid2.js';
3
+ import { GRID_DETAIL_PANEL_TOGGLE_COL_DEF, getGridDateOperators, getGridStringOperators, getGridNumericOperators } from '@mui/x-data-grid-pro';
4
+ export { getGridBooleanOperators, getGridDateOperators, getGridSingleSelectOperators } from '@mui/x-data-grid-pro';
5
5
  import { _ as _objectSpread2 } from './_internal/_rollupPluginBabelHelpers.js';
6
6
  import * as React from 'react';
7
- import Box from '@mui/material/Box';
8
- import TextField from '@mui/material/TextField';
9
7
  import { Icon } from '@redsift/design-system';
10
8
  import { mdiSync } from '@redsift/icons';
11
9
  export { D as DEFAULT_OPERATORS, G as GridToolbarFilterSemanticField, g as getCompletion } from './_internal/GridToolbarFilterSemanticField2.js';
12
- export { C as ControlledPagination, E as EMPTY_ROW_SELECTION_MODEL, S as ServerSideControlledPagination, c as createRowSelectionModel, a as getSelectedIds, g as getSelectionCount, i as isRowSelected, n as normalizeRowSelectionModel, o as onServerSideSelectionStatusChange } from './_internal/ServerSideControlledPagination.js';
13
- export { B as BaseButton, a as BaseCheckbox, b as BaseIcon, c as BaseIconButton, m as muiIconToDSIcon } from './_internal/BaseIconButton.js';
10
+ export { B as BaseButton, a as BaseCheckbox, b as BaseIcon, c as BasePopper, m as muiIconToDSIcon } from './_internal/BasePopper.js';
14
11
  export { B as BaseTextField } from './_internal/BaseTextField.js';
15
12
  export { D as DataGrid } from './_internal/DataGrid2.js';
13
+ export { C as ControlledPagination, S as ServerSideControlledPagination, f as fixServerSideHeaderCheckboxSelection, g as getSelectableRowIdsInPage, o as onServerSideSelectionStatusChange } from './_internal/ControlledPagination.js';
16
14
  export { T as TextCell } from './_internal/TextCell2.js';
17
15
  export { T as Toolbar } from './_internal/Toolbar2.js';
18
16
  export { T as ToolbarWrapper } from './_internal/ToolbarWrapper2.js';
@@ -21,37 +19,6 @@ export { T as ToolbarWrapper } from './_internal/ToolbarWrapper2.js';
21
19
  const DETAIL_PANEL_TOGGLE_COL_DEF = GRID_DETAIL_PANEL_TOGGLE_COL_DEF;
22
20
  DETAIL_PANEL_TOGGLE_COL_DEF.type = 'actions';
23
21
 
24
- const isAnyOfIOperator = {
25
- label: 'is any of (case-insensitive)',
26
- value: 'isAnyOfI',
27
- getApplyFilterFn: filterItem => {
28
- if (!filterItem.field || !filterItem.value || !filterItem.operator) {
29
- return null;
30
- }
31
- const lowerCaseFilterValues = filterItem.value.map(v => String(v).toLowerCase());
32
- return value => {
33
- if (filterItem.value.length === 0) {
34
- return true;
35
- }
36
- if (value == null) {
37
- return false;
38
- }
39
- const paramValues = Array.isArray(value) ? value : [value];
40
- for (const paramValue of paramValues) {
41
- if (lowerCaseFilterValues.includes(String(paramValue).toLowerCase())) {
42
- return true;
43
- }
44
- }
45
- return false;
46
- };
47
- },
48
- InputComponent: GridFilterInputMultipleValue
49
- };
50
- const IS_ANY_OF_I = isAnyOfIOperator;
51
- const IS_ANY_OF_I_WITH_SELECT = _objectSpread2(_objectSpread2({}, IS_ANY_OF_I), {}, {
52
- InputComponent: GridFilterInputMultipleSingleSelect
53
- });
54
-
55
22
  const SUBMIT_FILTER_STROKE_TIME = 500;
56
23
  const InputDateInterval = props => {
57
24
  var _item$value, _filterValueState$, _filterValueState$2;
@@ -205,9 +172,8 @@ const wrapCaseInsensitive = operator => {
205
172
  if (!originalFn) {
206
173
  return null;
207
174
  }
208
- return (value, row, column, apiRef) => {
209
- const lowercasedValue = lowercaseValue(value);
210
- return originalFn(lowercasedValue, row, column, apiRef);
175
+ return value => {
176
+ return originalFn(lowercaseValue(value));
211
177
  };
212
178
  }
213
179
  });
@@ -295,7 +261,7 @@ const getTagsOperatorsCompact = () => [HAS, DOES_NOT_HAVE, HAS_ANY_OF];
295
261
  // ---------------------------------------------------------------------------
296
262
 
297
263
  const isOverrideOptions = options => {
298
- return options && 'operators' in options;
264
+ return options != null && typeof options === 'object' && 'operators' in options;
299
265
  };
300
266
  const arraySortComparator = (a, b) => {
301
267
  const arrA = Array.isArray(a) ? a : [];
@@ -415,5 +381,5 @@ function getOperatorsForType(type, compact) {
415
381
  }
416
382
  }
417
383
 
418
- export { DATE_IS_BETWEEN, DETAIL_PANEL_TOGGLE_COL_DEF, IS_ANY_OF_I, IS_ANY_OF_I_WITH_SELECT, createColumn, customColumnTypes, getGridDateOperatorsExtended, getRsMultipleSelectColumnType, getRsMultipleSelectWithShortOperatorListColumnType, getRsNumberColumnType, getRsSingleSelectColumnType, getRsSingleSelectWithShortOperatorListColumnType, getRsStringColumnType, makeCaseInsensitive, wrapCaseInsensitive };
384
+ export { DATE_IS_BETWEEN, DETAIL_PANEL_TOGGLE_COL_DEF, createColumn, customColumnTypes, getGridDateOperatorsExtended, getRsMultipleSelectColumnType, getRsMultipleSelectWithShortOperatorListColumnType, getRsNumberColumnType, getRsSingleSelectColumnType, getRsSingleSelectWithShortOperatorListColumnType, getRsStringColumnType, makeCaseInsensitive, wrapCaseInsensitive };
419
385
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/utils/columns/detailPanelToggleColDef.ts","../src/utils/operators/string-array/isAnyOfI.tsx","../src/utils/fields/InputDateInterval.tsx","../src/utils/operators/date/isBetween.tsx","../src/utils/operators/date/getGridDateOperators.ts","../src/utils/operators/utils/caseInsensitive.ts","../src/utils/columnTypes/index.ts","../src/utils/createColumn.ts"],"sourcesContent":["import { GRID_DETAIL_PANEL_TOGGLE_COL_DEF } from '@mui/x-data-grid-premium';\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","import { GridFilterInputMultipleSingleSelect, GridFilterInputMultipleValue, GridFilterOperator } from '@mui/x-data-grid-premium';\n\nconst isAnyOfIOperator: GridFilterOperator<any, string | string[], any> = {\n label: 'is any of (case-insensitive)',\n value: 'isAnyOfI',\n getApplyFilterFn: (filterItem) => {\n if (!filterItem.field || !filterItem.value || !filterItem.operator) {\n return null;\n }\n const lowerCaseFilterValues = filterItem.value.map((v: string) => String(v).toLowerCase());\n\n return (value) => {\n if (filterItem.value.length === 0) {\n return true;\n }\n if (value == null) {\n return false;\n }\n const paramValues = Array.isArray(value) ? value : [value];\n\n for (const paramValue of paramValues) {\n if (lowerCaseFilterValues.includes(String(paramValue).toLowerCase())) {\n return true;\n }\n }\n return false;\n };\n },\n InputComponent: GridFilterInputMultipleValue,\n};\n\nexport const IS_ANY_OF_I = isAnyOfIOperator;\n\nexport const IS_ANY_OF_I_WITH_SELECT = { ...IS_ANY_OF_I, InputComponent: GridFilterInputMultipleSingleSelect };\n","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';\nimport { GridFilterInputValueProps } from '@mui/x-data-grid-premium';\n\nconst SUBMIT_FILTER_STROKE_TIME = 500;\n\nexport const InputDateInterval = (props: GridFilterInputValueProps) => {\n const { item, applyValue, focusElementRef = null } = props;\n\n const filterTimeout = React.useRef<ReturnType<typeof setTimeout>>();\n const [filterValueState, setFilterValueState] = React.useState<[string, string]>(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 ?? ['', ''];\n setFilterValueState(itemValue);\n }, [item.value]);\n\n const updateFilterValue = (from: string, to: string) => {\n clearTimeout(filterTimeout.current);\n setFilterValueState([from, to]);\n\n setIsApplying(true);\n filterTimeout.current = setTimeout(() => {\n setIsApplying(false);\n applyValue({ ...item, value: [from, to] });\n }, SUBMIT_FILTER_STROKE_TIME);\n };\n\n const handleFromChange: TextFieldProps['onChange'] = (event) => {\n const newFrom = event.target.value;\n updateFilterValue(newFrom, filterValueState[1]);\n };\n\n const handleToChange: TextFieldProps['onChange'] = (event) => {\n const newTo = event.target.value;\n updateFilterValue(filterValueState[0], newTo);\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=\"date-from-input\"\n placeholder=\"From\"\n label=\"From\"\n variant=\"standard\"\n value={filterValueState[0] ?? ''}\n onChange={handleFromChange}\n type=\"date\"\n inputRef={focusElementRef}\n sx={{ mr: 2 }}\n InputLabelProps={{ shrink: true }}\n />\n <TextField\n name=\"date-to-input\"\n placeholder=\"To\"\n label=\"To\"\n variant=\"standard\"\n value={filterValueState[1] ?? ''}\n onChange={handleToChange}\n type=\"date\"\n InputProps={applying ? { endAdornment: <Icon icon={mdiSync} /> } : {}}\n InputLabelProps={{ shrink: true }}\n />\n </Box>\n );\n};\n","import { GridFilterOperator } from '@mui/x-data-grid-premium';\nimport { InputDateInterval } from '../../fields/InputDateInterval';\n\nconst isBetweenOperator: GridFilterOperator<any, string | string[], any> = {\n label: 'is between',\n value: 'isBetween',\n getApplyFilterFn: (filterItem) => {\n if (!filterItem.field || !filterItem.value || !filterItem.operator) {\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] || !filterItem.value[1]) {\n return null;\n }\n\n // Parse as local time (not UTC) since the date input produces YYYY-MM-DD\n // strings representing dates in the user's local timezone.\n const [fromYear, fromMonth, fromDay] = filterItem.value[0].split('-').map(Number);\n const [toYear, toMonth, toDay] = filterItem.value[1].split('-').map(Number);\n\n const fromTime = new Date(fromYear, fromMonth - 1, fromDay).getTime();\n // Set upper bound to end-of-day so dateTime values later that day are included.\n const toTime = new Date(toYear, toMonth - 1, toDay, 23, 59, 59, 999).getTime();\n\n if (isNaN(fromTime) || isNaN(toTime)) {\n return null;\n }\n\n return (value) => {\n if (value == null) {\n return false;\n }\n const cellTime = value instanceof Date ? value.getTime() : new Date(value as string).getTime();\n if (isNaN(cellTime)) {\n return false;\n }\n return cellTime >= fromTime && cellTime <= toTime;\n };\n },\n InputComponent: InputDateInterval,\n};\n\nexport const DATE_IS_BETWEEN = isBetweenOperator;\n","import { getGridDateOperators as forwardOperators, GridFilterOperator } from '@mui/x-data-grid-premium';\nimport { DATE_IS_BETWEEN } from './isBetween';\n\nexport const getGridDateOperatorsExtended: (showTime?: boolean) => GridFilterOperator[] = (showTime = false) => [\n ...forwardOperators(showTime),\n DATE_IS_BETWEEN,\n];\n","import { GridFilterItem, GridFilterOperator } from '@mui/x-data-grid-premium';\n\ntype ApplyFilterFn = ((value: any, row?: any, column?: any, apiRef?: any) => boolean) | null;\ntype GetApplyFilterFn = (filterItem: GridFilterItem, column?: any) => ApplyFilterFn;\n\nconst lowercaseValue = (value: unknown): unknown => {\n if (typeof value === 'string') {\n return value.toLowerCase();\n }\n if (Array.isArray(value)) {\n return value.map(lowercaseValue);\n }\n return value;\n};\n\n/**\n * Wraps a filter operator's `getApplyFilterFn` to lowercase both the cell value\n * and the filter value before comparison, making the operator case-insensitive.\n *\n * Only affects string-based values — numbers, dates, and booleans pass through unchanged.\n */\nexport const wrapCaseInsensitive = (operator: GridFilterOperator): GridFilterOperator => {\n const originalGetApplyFilterFn = operator.getApplyFilterFn as GetApplyFilterFn;\n\n return {\n ...operator,\n getApplyFilterFn: (filterItem: GridFilterItem, column?: any) => {\n const caseInsensitiveFilterItem = {\n ...filterItem,\n value: lowercaseValue(filterItem.value),\n };\n\n const originalFn = originalGetApplyFilterFn(caseInsensitiveFilterItem, column);\n if (!originalFn) {\n return null;\n }\n\n return (value: any, row?: any, column?: any, apiRef?: any) => {\n const lowercasedValue = lowercaseValue(value);\n return originalFn(lowercasedValue, row, column, apiRef);\n };\n },\n };\n};\n\n/**\n * Applies case-insensitive wrapping to an array of filter operators.\n */\nexport const makeCaseInsensitive = (operators: GridFilterOperator[]): GridFilterOperator[] => {\n return operators.map(wrapCaseInsensitive);\n};\n","import { GridColType, GridColTypeDef } from '@mui/x-data-grid-premium';\nimport { operatorList } from '../operators';\n\nexport const getRsStringColumnType = () => {\n return {\n type: 'string' as const,\n filterOperators: operatorList.rsString,\n } as GridColTypeDef;\n};\n\nexport const getRsNumberColumnType = () => {\n return {\n type: 'number' as const,\n filterOperators: operatorList.rsNumber,\n } as GridColTypeDef;\n};\n\nexport const getRsSingleSelectColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsSingleSelect,\n } as GridColTypeDef;\n};\n\nexport const getRsSingleSelectWithShortOperatorListColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsSingleSelectWithShortOperatorList,\n } as GridColTypeDef;\n};\n\nexport const getRsMultipleSelectColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsMultipleSelect,\n } as GridColTypeDef;\n};\n\nexport const getRsMultipleSelectWithShortOperatorListColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsMultipleSelectWithShortOperatorList,\n } as GridColTypeDef;\n};\n\nexport const customColumnTypes: Record<GridColType | string, GridColTypeDef> = {\n rsString: getRsStringColumnType(),\n rsNumber: getRsNumberColumnType(),\n rsSingleSelect: getRsSingleSelectColumnType(),\n rsSingleSelectWithShortOperatorList: getRsSingleSelectWithShortOperatorListColumnType(),\n rsMultipleSelect: getRsMultipleSelectColumnType(),\n rsMultipleSelectWithShortOperatorList: getRsMultipleSelectWithShortOperatorListColumnType(),\n};\n","import {\n getGridStringOperators as nativeGetGridStringOperators,\n getGridNumericOperators as nativeGetGridNumericOperators,\n getGridDateOperators as nativeGetGridDateOperators,\n GridColDef,\n GridColType,\n GridFilterOperator,\n} from '@mui/x-data-grid-premium';\n\nimport { DOES_NOT_CONTAIN } from './operators/string/doesNotContain';\nimport { DOES_NOT_END_WITH } from './operators/string/doesNotEndWith';\nimport { DOES_NOT_EQUAL } from './operators/string/doesNotEqual';\nimport { DOES_NOT_HAVE, DOES_NOT_HAVE_WITH_SELECT } from './operators/string/doesNotHave';\nimport { DOES_NOT_START_WITH } from './operators/string/doesNotStartWith';\nimport { HAS, HAS_WITH_SELECT } from './operators/string/has';\nimport { HAS_ONLY, HAS_ONLY_WITH_SELECT } from './operators/string/hasOnly';\nimport { IS_WITH_SELECT } from './operators/string/is';\nimport { IS_NOT_WITH_SELECT } from './operators/string/isNot';\n\nimport { CONTAINS_ANY_OF } from './operators/string-array/containsAnyOf';\nimport { DOES_NOT_CONTAIN_ANY_OF } from './operators/string-array/doesNotContainAnyOf';\nimport { DOES_NOT_END_WITH_ANY_OF } from './operators/string-array/doesNotEndWithAnyOf';\nimport { DOES_NOT_HAVE_ANY_OF, DOES_NOT_HAVE_ANY_OF_WITH_SELECT } from './operators/string-array/doesNotHaveAnyOf';\nimport { DOES_NOT_START_WITH_ANY_OF } from './operators/string-array/doesNotStartWithAnyOf';\nimport { ENDS_WITH_ANY_OF } from './operators/string-array/endsWithAnyOf';\nimport { HAS_ALL_OF, HAS_ALL_OF_WITH_SELECT } from './operators/string-array/hasAllOf';\nimport { HAS_ANY_OF, HAS_ANY_OF_WITH_SELECT } from './operators/string-array/hasAnyOf';\nimport { IS_ANY_OF, IS_ANY_OF_WITH_SELECT } from './operators/string-array/isAnyOf';\nimport { IS_NOT_ANY_OF, IS_NOT_ANY_OF_WITH_SELECT } from './operators/string-array/isNotAnyOf';\nimport { STARTS_WITH_ANY_OF } from './operators/string-array/startsWithAnyOf';\n\nimport { IS_BETWEEN } from './operators/numeric/isBetween';\nimport { DATE_IS_BETWEEN } from './operators/date/isBetween';\nimport { ARRAY_IS_EMPTY, ARRAY_IS_NOT_EMPTY } from './operators/common/isEmpty';\nimport { makeCaseInsensitive } from './operators/utils/caseInsensitive';\n\n// ---------------------------------------------------------------------------\n// Operator name unions (for typed `exclude`)\n// ---------------------------------------------------------------------------\n\nexport type StringOperatorName =\n | 'contains'\n | 'doesNotContain'\n | 'equals'\n | 'doesNotEqual'\n | 'startsWith'\n | 'doesNotStartWith'\n | 'endsWith'\n | 'doesNotEndWith'\n | 'isEmpty'\n | 'isNotEmpty'\n | 'isAnyOf'\n | 'isNotAnyOf'\n | 'containsAnyOf'\n | 'doesNotContainAnyOf'\n | 'startsWithAnyOf'\n | 'doesNotStartWithAnyOf'\n | 'endsWithAnyOf'\n | 'doesNotEndWithAnyOf';\n\nexport type NumberOperatorName = '=' | '!=' | '>' | '>=' | '<' | '<=' | 'isEmpty' | 'isNotEmpty' | 'isBetween';\n\nexport type DateOperatorName =\n | 'is'\n | 'not'\n | 'after'\n | 'onOrAfter'\n | 'before'\n | 'onOrBefore'\n | 'isEmpty'\n | 'isNotEmpty'\n | 'isBetween';\n\nexport type SingleSelectOperatorName = 'is' | 'isNot' | 'isAnyOf' | 'isNotAnyOf' | 'isEmpty' | 'isNotEmpty';\n\nexport type MultiSelectOperatorName =\n | 'has'\n | 'doesNotHave'\n | 'hasAnyOf'\n | 'hasAllOf'\n | 'doesNotHaveAnyOf'\n | 'hasOnly'\n | 'isEmpty'\n | 'isNotEmpty';\n\nexport type TagsOperatorName =\n | 'has'\n | 'doesNotHave'\n | 'hasAnyOf'\n | 'hasAllOf'\n | 'doesNotHaveAnyOf'\n | 'hasOnly'\n | 'containsAnyOf'\n | 'doesNotContainAnyOf'\n | 'isEmpty'\n | 'isNotEmpty';\n\n// ---------------------------------------------------------------------------\n// Column type\n// ---------------------------------------------------------------------------\n\nexport type ColumnType = 'string' | 'number' | 'date' | 'dateTime' | 'singleSelect' | 'multiSelect' | 'tags';\n\n// ---------------------------------------------------------------------------\n// Options: discriminated union (built-in vs override)\n// ---------------------------------------------------------------------------\n\ntype BuiltInOptions<TOperatorName extends string> = {\n compact?: boolean;\n exclude?: TOperatorName[];\n extend?: GridFilterOperator[];\n caseSensitive?: boolean;\n};\n\ntype OverrideOptions = {\n operators: GridFilterOperator[];\n};\n\ntype StringColumnOptions = BuiltInOptions<StringOperatorName> | OverrideOptions;\ntype NumberColumnOptions = Omit<BuiltInOptions<NumberOperatorName>, 'caseSensitive'> | OverrideOptions;\ntype DateColumnOptions = Omit<BuiltInOptions<DateOperatorName>, 'caseSensitive'> | OverrideOptions;\ntype SingleSelectColumnOptions = BuiltInOptions<SingleSelectOperatorName> | OverrideOptions;\ntype MultiSelectColumnOptions = BuiltInOptions<MultiSelectOperatorName> | OverrideOptions;\ntype TagsColumnOptions = BuiltInOptions<TagsOperatorName> | OverrideOptions;\n\nexport type ColumnOptions<T extends ColumnType> = T extends 'string'\n ? StringColumnOptions\n : T extends 'number'\n ? NumberColumnOptions\n : T extends 'date' | 'dateTime'\n ? DateColumnOptions\n : T extends 'singleSelect'\n ? SingleSelectColumnOptions\n : T extends 'multiSelect'\n ? MultiSelectColumnOptions\n : T extends 'tags'\n ? TagsColumnOptions\n : never;\n\n// ---------------------------------------------------------------------------\n// Full & compact operator lists\n// ---------------------------------------------------------------------------\n\nconst getStringOperatorsFull = (): GridFilterOperator[] => [\n ...nativeGetGridStringOperators().filter((op) => !['isAnyOf'].includes(op.value)),\n DOES_NOT_CONTAIN,\n DOES_NOT_EQUAL,\n DOES_NOT_START_WITH,\n DOES_NOT_END_WITH,\n IS_ANY_OF,\n IS_NOT_ANY_OF,\n CONTAINS_ANY_OF,\n DOES_NOT_CONTAIN_ANY_OF,\n STARTS_WITH_ANY_OF,\n DOES_NOT_START_WITH_ANY_OF,\n ENDS_WITH_ANY_OF,\n DOES_NOT_END_WITH_ANY_OF,\n];\n\nconst getStringOperatorsCompact = (): GridFilterOperator[] => [\n ...nativeGetGridStringOperators().filter((op) => !['isAnyOf', 'startsWith', 'endsWith'].includes(op.value)),\n DOES_NOT_CONTAIN,\n DOES_NOT_EQUAL,\n IS_ANY_OF,\n];\n\nconst getNumberOperatorsFull = (): GridFilterOperator[] => [...nativeGetGridNumericOperators(), IS_BETWEEN];\n\nconst getNumberOperatorsCompact = (): GridFilterOperator[] => nativeGetGridNumericOperators();\n\nconst getDateOperatorsFull = (showTime: boolean): GridFilterOperator[] => [\n ...nativeGetGridDateOperators(showTime),\n DATE_IS_BETWEEN,\n];\n\nconst getDateOperatorsCompact = (showTime: boolean): GridFilterOperator[] => nativeGetGridDateOperators(showTime);\n\nconst getSingleSelectOperatorsFull = (): GridFilterOperator[] => [\n IS_WITH_SELECT,\n IS_NOT_WITH_SELECT,\n IS_ANY_OF_WITH_SELECT,\n IS_NOT_ANY_OF_WITH_SELECT,\n ARRAY_IS_EMPTY,\n ARRAY_IS_NOT_EMPTY,\n];\n\nconst getSingleSelectOperatorsCompact = (): GridFilterOperator[] => [\n IS_WITH_SELECT,\n IS_NOT_WITH_SELECT,\n IS_ANY_OF_WITH_SELECT,\n];\n\nconst getMultiSelectOperatorsFull = (): GridFilterOperator[] => [\n HAS_WITH_SELECT,\n DOES_NOT_HAVE_WITH_SELECT,\n HAS_ANY_OF_WITH_SELECT,\n HAS_ALL_OF_WITH_SELECT,\n DOES_NOT_HAVE_ANY_OF_WITH_SELECT,\n HAS_ONLY_WITH_SELECT,\n ARRAY_IS_EMPTY,\n ARRAY_IS_NOT_EMPTY,\n];\n\nconst getMultiSelectOperatorsCompact = (): GridFilterOperator[] => [\n HAS_WITH_SELECT,\n DOES_NOT_HAVE_WITH_SELECT,\n HAS_ANY_OF_WITH_SELECT,\n];\n\nconst getTagsOperatorsFull = (): GridFilterOperator[] => [\n HAS,\n DOES_NOT_HAVE,\n HAS_ANY_OF,\n HAS_ALL_OF,\n DOES_NOT_HAVE_ANY_OF,\n HAS_ONLY,\n CONTAINS_ANY_OF,\n DOES_NOT_CONTAIN_ANY_OF,\n ARRAY_IS_EMPTY,\n ARRAY_IS_NOT_EMPTY,\n];\n\nconst getTagsOperatorsCompact = (): GridFilterOperator[] => [HAS, DOES_NOT_HAVE, HAS_ANY_OF];\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\nconst isOverrideOptions = (options: any): options is OverrideOptions => {\n return options && 'operators' in options;\n};\n\nconst arraySortComparator = (a: unknown, b: unknown): number => {\n const arrA = Array.isArray(a) ? a : [];\n const arrB = Array.isArray(b) ? b : [];\n if (arrA.length !== arrB.length) {\n return arrA.length - arrB.length;\n }\n const strA = arrA.map(String).sort().join(',');\n const strB = arrB.map(String).sort().join(',');\n return strA.localeCompare(strB);\n};\n\nconst arrayValueFormatter = (value: unknown): string => {\n if (Array.isArray(value)) {\n return value.map(String).join(', ');\n }\n return value != null ? String(value) : '';\n};\n\n// ---------------------------------------------------------------------------\n// Operator type strings that support case-insensitive wrapping\n// ---------------------------------------------------------------------------\n\nconst CASE_INSENSITIVE_TYPES: ColumnType[] = ['string', 'singleSelect', 'tags'];\n\n// ---------------------------------------------------------------------------\n// createColumn()\n// ---------------------------------------------------------------------------\n\n/**\n * Creates a column configuration with the appropriate MUI type and filter operators\n * for the given column type. Spread the result into your column definition.\n *\n * @example\n * ```tsx\n * const columns = [\n * { ...createColumn('string'), field: 'name', headerName: 'Name' },\n * { ...createColumn('number'), field: 'price', headerName: 'Price' },\n * { ...createColumn('singleSelect', { compact: true }), field: 'status', valueOptions: ['active', 'inactive'] },\n * { ...createColumn('multiSelect'), field: 'tags', valueOptions: ['a', 'b', 'c'] },\n * { ...createColumn('tags'), field: 'labels', headerName: 'Labels' },\n * ];\n * ```\n */\nexport function createColumn<T extends ColumnType>(type: T, options?: ColumnOptions<T>): Partial<GridColDef> {\n // Override mode: consumer provides full operator list\n if (options && isOverrideOptions(options)) {\n const result: Partial<GridColDef> = {\n type: getMuiType(type),\n filterOperators: options.operators,\n };\n if (type === 'multiSelect' || type === 'tags') {\n result.sortComparator = arraySortComparator;\n result.valueFormatter = arrayValueFormatter;\n }\n return result;\n }\n\n // Built-in mode\n const builtInOpts = (options ?? {}) as BuiltInOptions<string>;\n const compact = builtInOpts.compact ?? false;\n const caseSensitive = builtInOpts.caseSensitive ?? false;\n\n let operators = getOperatorsForType(type, compact);\n\n // Apply exclude\n if (builtInOpts.exclude && builtInOpts.exclude.length > 0) {\n const excludeSet = new Set(builtInOpts.exclude);\n operators = operators.filter((op) => !excludeSet.has(op.value));\n }\n\n // Apply case-insensitive wrapping\n if (!caseSensitive && CASE_INSENSITIVE_TYPES.includes(type)) {\n operators = makeCaseInsensitive(operators);\n }\n\n // Apply extend\n if (builtInOpts.extend && builtInOpts.extend.length > 0) {\n operators = [...operators, ...builtInOpts.extend];\n }\n\n const result: Partial<GridColDef> = {\n type: getMuiType(type),\n filterOperators: operators,\n };\n\n if (type === 'multiSelect' || type === 'tags') {\n result.sortComparator = arraySortComparator;\n result.valueFormatter = arrayValueFormatter;\n }\n\n return result;\n}\n\nfunction getMuiType(type: ColumnType): GridColType {\n switch (type) {\n case 'multiSelect':\n case 'singleSelect':\n return 'singleSelect';\n case 'tags':\n return 'string';\n default:\n return type as GridColType;\n }\n}\n\nfunction getOperatorsForType(type: ColumnType, compact: boolean): GridFilterOperator[] {\n switch (type) {\n case 'string':\n return compact ? getStringOperatorsCompact() : getStringOperatorsFull();\n case 'number':\n return compact ? getNumberOperatorsCompact() : getNumberOperatorsFull();\n case 'date':\n return compact ? getDateOperatorsCompact(false) : getDateOperatorsFull(false);\n case 'dateTime':\n return compact ? getDateOperatorsCompact(true) : getDateOperatorsFull(true);\n case 'singleSelect':\n return compact ? getSingleSelectOperatorsCompact() : getSingleSelectOperatorsFull();\n case 'multiSelect':\n return compact ? getMultiSelectOperatorsCompact() : getMultiSelectOperatorsFull();\n case 'tags':\n return compact ? getTagsOperatorsCompact() : getTagsOperatorsFull();\n }\n}\n"],"names":["DETAIL_PANEL_TOGGLE_COL_DEF","GRID_DETAIL_PANEL_TOGGLE_COL_DEF","type","isAnyOfIOperator","label","value","getApplyFilterFn","filterItem","field","operator","lowerCaseFilterValues","map","v","String","toLowerCase","length","paramValues","Array","isArray","paramValue","includes","InputComponent","GridFilterInputMultipleValue","IS_ANY_OF_I","IS_ANY_OF_I_WITH_SELECT","_objectSpread","GridFilterInputMultipleSingleSelect","SUBMIT_FILTER_STROKE_TIME","InputDateInterval","props","_item$value","_filterValueState$","_filterValueState$2","item","applyValue","focusElementRef","filterTimeout","React","useRef","filterValueState","setFilterValueState","useState","applying","setIsApplying","useEffect","clearTimeout","current","_item$value2","itemValue","updateFilterValue","from","to","setTimeout","handleFromChange","event","newFrom","target","handleToChange","newTo","createElement","Box","sx","display","flexDirection","alignItems","height","pl","TextField","name","placeholder","variant","onChange","inputRef","mr","InputLabelProps","shrink","InputProps","endAdornment","Icon","icon","mdiSync","isBetweenOperator","fromYear","fromMonth","fromDay","split","Number","toYear","toMonth","toDay","fromTime","Date","getTime","toTime","isNaN","cellTime","DATE_IS_BETWEEN","getGridDateOperatorsExtended","showTime","arguments","undefined","forwardOperators","lowercaseValue","wrapCaseInsensitive","originalGetApplyFilterFn","column","caseInsensitiveFilterItem","originalFn","row","apiRef","lowercasedValue","makeCaseInsensitive","operators","getRsStringColumnType","filterOperators","operatorList","rsString","getRsNumberColumnType","rsNumber","getRsSingleSelectColumnType","rsSingleSelect","getRsSingleSelectWithShortOperatorListColumnType","rsSingleSelectWithShortOperatorList","getRsMultipleSelectColumnType","rsMultipleSelect","getRsMultipleSelectWithShortOperatorListColumnType","rsMultipleSelectWithShortOperatorList","customColumnTypes","getStringOperatorsFull","nativeGetGridStringOperators","filter","op","DOES_NOT_CONTAIN","DOES_NOT_EQUAL","DOES_NOT_START_WITH","DOES_NOT_END_WITH","IS_ANY_OF","IS_NOT_ANY_OF","CONTAINS_ANY_OF","DOES_NOT_CONTAIN_ANY_OF","STARTS_WITH_ANY_OF","DOES_NOT_START_WITH_ANY_OF","ENDS_WITH_ANY_OF","DOES_NOT_END_WITH_ANY_OF","getStringOperatorsCompact","getNumberOperatorsFull","nativeGetGridNumericOperators","IS_BETWEEN","getNumberOperatorsCompact","getDateOperatorsFull","nativeGetGridDateOperators","getDateOperatorsCompact","getSingleSelectOperatorsFull","IS_WITH_SELECT","IS_NOT_WITH_SELECT","IS_ANY_OF_WITH_SELECT","IS_NOT_ANY_OF_WITH_SELECT","ARRAY_IS_EMPTY","ARRAY_IS_NOT_EMPTY","getSingleSelectOperatorsCompact","getMultiSelectOperatorsFull","HAS_WITH_SELECT","DOES_NOT_HAVE_WITH_SELECT","HAS_ANY_OF_WITH_SELECT","HAS_ALL_OF_WITH_SELECT","DOES_NOT_HAVE_ANY_OF_WITH_SELECT","HAS_ONLY_WITH_SELECT","getMultiSelectOperatorsCompact","getTagsOperatorsFull","HAS","DOES_NOT_HAVE","HAS_ANY_OF","HAS_ALL_OF","DOES_NOT_HAVE_ANY_OF","HAS_ONLY","getTagsOperatorsCompact","isOverrideOptions","options","arraySortComparator","a","b","arrA","arrB","strA","sort","join","strB","localeCompare","arrayValueFormatter","CASE_INSENSITIVE_TYPES","createColumn","_builtInOpts$compact","_builtInOpts$caseSens","result","getMuiType","sortComparator","valueFormatter","builtInOpts","compact","caseSensitive","getOperatorsForType","exclude","excludeSet","Set","has","extend"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/utils/columns/detailPanelToggleColDef.ts","../src/utils/fields/InputDateInterval.tsx","../src/utils/operators/date/isBetween.tsx","../src/utils/operators/date/getGridDateOperators.ts","../src/utils/operators/utils/caseInsensitive.ts","../src/utils/columnTypes/index.ts","../src/utils/createColumn.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","import * as React from 'react';\nimport Box from '@mui/material/Box';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport { GridFilterInputValueProps } from '@mui/x-data-grid-pro';\nimport { Icon } from '@redsift/design-system';\nimport { mdiSync } from '@redsift/icons';\n\nconst SUBMIT_FILTER_STROKE_TIME = 500;\n\nexport const InputDateInterval = (props: GridFilterInputValueProps) => {\n const { item, applyValue, focusElementRef = null } = props;\n\n const filterTimeout = React.useRef<ReturnType<typeof setTimeout>>();\n const [filterValueState, setFilterValueState] = React.useState<[string, string]>(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 ?? ['', ''];\n setFilterValueState(itemValue);\n }, [item.value]);\n\n const updateFilterValue = (from: string, to: string) => {\n clearTimeout(filterTimeout.current);\n setFilterValueState([from, to]);\n\n setIsApplying(true);\n filterTimeout.current = setTimeout(() => {\n setIsApplying(false);\n applyValue({ ...item, value: [from, to] });\n }, SUBMIT_FILTER_STROKE_TIME);\n };\n\n const handleFromChange: TextFieldProps['onChange'] = (event) => {\n const newFrom = event.target.value;\n updateFilterValue(newFrom, filterValueState[1]);\n };\n\n const handleToChange: TextFieldProps['onChange'] = (event) => {\n const newTo = event.target.value;\n updateFilterValue(filterValueState[0], newTo);\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=\"date-from-input\"\n placeholder=\"From\"\n label=\"From\"\n variant=\"standard\"\n value={filterValueState[0] ?? ''}\n onChange={handleFromChange}\n type=\"date\"\n inputRef={focusElementRef}\n sx={{ mr: 2 }}\n InputLabelProps={{ shrink: true }}\n />\n <TextField\n name=\"date-to-input\"\n placeholder=\"To\"\n label=\"To\"\n variant=\"standard\"\n value={filterValueState[1] ?? ''}\n onChange={handleToChange}\n type=\"date\"\n InputProps={applying ? { endAdornment: <Icon icon={mdiSync} /> } : {}}\n InputLabelProps={{ shrink: true }}\n />\n </Box>\n );\n};\n","import { GridFilterOperator } from '@mui/x-data-grid-pro';\nimport { InputDateInterval } from '../../fields/InputDateInterval';\n\nconst isBetweenOperator: GridFilterOperator<any, unknown, any> = {\n label: 'is between',\n value: 'isBetween',\n getApplyFilterFn: (filterItem) => {\n if (!filterItem.field || !filterItem.value || !filterItem.operator) {\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] || !filterItem.value[1]) {\n return null;\n }\n\n // Parse as local time (not UTC) since the date input produces YYYY-MM-DD\n // strings representing dates in the user's local timezone.\n const [fromYear, fromMonth, fromDay] = filterItem.value[0].split('-').map(Number);\n const [toYear, toMonth, toDay] = filterItem.value[1].split('-').map(Number);\n\n const fromTime = new Date(fromYear, fromMonth - 1, fromDay).getTime();\n // Set upper bound to end-of-day so dateTime values later that day are included.\n const toTime = new Date(toYear, toMonth - 1, toDay, 23, 59, 59, 999).getTime();\n\n if (isNaN(fromTime) || isNaN(toTime)) {\n return null;\n }\n\n return (value) => {\n if (value == null) {\n return false;\n }\n const cellTime = value instanceof Date ? value.getTime() : new Date(value as string).getTime();\n if (isNaN(cellTime)) {\n return false;\n }\n return cellTime >= fromTime && cellTime <= toTime;\n };\n },\n InputComponent: InputDateInterval,\n};\n\nexport const DATE_IS_BETWEEN = isBetweenOperator;\n","import { getGridDateOperators as forwardOperators, GridFilterOperator } from '@mui/x-data-grid-pro';\nimport { DATE_IS_BETWEEN } from './isBetween';\n\nexport const getGridDateOperatorsExtended: (showTime?: boolean) => GridFilterOperator[] = (showTime = false) => [\n ...forwardOperators(showTime),\n DATE_IS_BETWEEN,\n];\n","import { GridFilterItem, GridFilterOperator } from '@mui/x-data-grid-pro';\n\ntype ApplyFilterFn = ((value: any) => boolean) | null;\ntype GetApplyFilterFn = (filterItem: GridFilterItem, column?: any) => ApplyFilterFn;\n\nconst lowercaseValue = (value: unknown): unknown => {\n if (typeof value === 'string') {\n return value.toLowerCase();\n }\n if (Array.isArray(value)) {\n return value.map(lowercaseValue);\n }\n return value;\n};\n\n/**\n * Wraps a filter operator's `getApplyFilterFn` to lowercase both the cell value\n * and the filter value before comparison, making the operator case-insensitive.\n *\n * Only affects string-based values — numbers, dates, and booleans pass through unchanged.\n */\nexport const wrapCaseInsensitive = (operator: GridFilterOperator): GridFilterOperator => {\n const originalGetApplyFilterFn = operator.getApplyFilterFn as GetApplyFilterFn;\n\n return {\n ...operator,\n getApplyFilterFn: (filterItem, column?: any) => {\n const caseInsensitiveFilterItem = {\n ...filterItem,\n value: lowercaseValue(filterItem.value),\n };\n\n const originalFn = originalGetApplyFilterFn(caseInsensitiveFilterItem, column);\n if (!originalFn) {\n return null;\n }\n\n return (value) => {\n return originalFn(lowercaseValue(value));\n };\n },\n };\n};\n\n/**\n * Applies case-insensitive wrapping to an array of filter operators.\n */\nexport const makeCaseInsensitive = (operators: GridFilterOperator[]): GridFilterOperator[] => {\n return operators.map(wrapCaseInsensitive);\n};\n","import { GridColType, GridColTypeDef } from '@mui/x-data-grid-pro';\nimport { operatorList } from '../operators';\n\nexport const getRsStringColumnType = () => {\n return {\n type: 'string' as const,\n filterOperators: operatorList.rsString,\n } as GridColTypeDef;\n};\n\nexport const getRsNumberColumnType = () => {\n return {\n type: 'number' as const,\n filterOperators: operatorList.rsNumber,\n } as GridColTypeDef;\n};\n\nexport const getRsSingleSelectColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsSingleSelect,\n } as GridColTypeDef;\n};\n\nexport const getRsSingleSelectWithShortOperatorListColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsSingleSelectWithShortOperatorList,\n } as GridColTypeDef;\n};\n\nexport const getRsMultipleSelectColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsMultipleSelect,\n } as GridColTypeDef;\n};\n\nexport const getRsMultipleSelectWithShortOperatorListColumnType = () => {\n return {\n type: 'singleSelect' as const,\n filterOperators: operatorList.rsMultipleSelectWithShortOperatorList,\n } as GridColTypeDef;\n};\n\nexport const customColumnTypes: Record<GridColType | string, GridColTypeDef> = {\n rsString: getRsStringColumnType(),\n rsNumber: getRsNumberColumnType(),\n rsSingleSelect: getRsSingleSelectColumnType(),\n rsSingleSelectWithShortOperatorList: getRsSingleSelectWithShortOperatorListColumnType(),\n rsMultipleSelect: getRsMultipleSelectColumnType(),\n rsMultipleSelectWithShortOperatorList: getRsMultipleSelectWithShortOperatorListColumnType(),\n};\n","import {\n getGridStringOperators as nativeGetGridStringOperators,\n getGridNumericOperators as nativeGetGridNumericOperators,\n getGridDateOperators as nativeGetGridDateOperators,\n GridColDef,\n GridColType,\n GridFilterOperator,\n} from '@mui/x-data-grid-pro';\n\nimport { DOES_NOT_CONTAIN } from './operators/string/doesNotContain';\nimport { DOES_NOT_END_WITH } from './operators/string/doesNotEndWith';\nimport { DOES_NOT_EQUAL } from './operators/string/doesNotEqual';\nimport { DOES_NOT_HAVE, DOES_NOT_HAVE_WITH_SELECT } from './operators/string/doesNotHave';\nimport { DOES_NOT_START_WITH } from './operators/string/doesNotStartWith';\nimport { HAS, HAS_WITH_SELECT } from './operators/string/has';\nimport { HAS_ONLY, HAS_ONLY_WITH_SELECT } from './operators/string/hasOnly';\nimport { IS_WITH_SELECT } from './operators/string/is';\nimport { IS_NOT_WITH_SELECT } from './operators/string/isNot';\n\nimport { CONTAINS_ANY_OF } from './operators/string-array/containsAnyOf';\nimport { DOES_NOT_CONTAIN_ANY_OF } from './operators/string-array/doesNotContainAnyOf';\nimport { DOES_NOT_END_WITH_ANY_OF } from './operators/string-array/doesNotEndWithAnyOf';\nimport { DOES_NOT_HAVE_ANY_OF, DOES_NOT_HAVE_ANY_OF_WITH_SELECT } from './operators/string-array/doesNotHaveAnyOf';\nimport { DOES_NOT_START_WITH_ANY_OF } from './operators/string-array/doesNotStartWithAnyOf';\nimport { ENDS_WITH_ANY_OF } from './operators/string-array/endsWithAnyOf';\nimport { HAS_ALL_OF, HAS_ALL_OF_WITH_SELECT } from './operators/string-array/hasAllOf';\nimport { HAS_ANY_OF, HAS_ANY_OF_WITH_SELECT } from './operators/string-array/hasAnyOf';\nimport { IS_ANY_OF, IS_ANY_OF_WITH_SELECT } from './operators/string-array/isAnyOf';\nimport { IS_NOT_ANY_OF, IS_NOT_ANY_OF_WITH_SELECT } from './operators/string-array/isNotAnyOf';\nimport { STARTS_WITH_ANY_OF } from './operators/string-array/startsWithAnyOf';\n\nimport { IS_BETWEEN } from './operators/numeric/isBetween';\nimport { DATE_IS_BETWEEN } from './operators/date/isBetween';\nimport { ARRAY_IS_EMPTY, ARRAY_IS_NOT_EMPTY } from './operators/common/isEmpty';\nimport { makeCaseInsensitive } from './operators/utils/caseInsensitive';\n\n// ---------------------------------------------------------------------------\n// Operator name unions (for typed `exclude`)\n// ---------------------------------------------------------------------------\n\nexport type StringOperatorName =\n | 'contains'\n | 'doesNotContain'\n | 'equals'\n | 'doesNotEqual'\n | 'startsWith'\n | 'doesNotStartWith'\n | 'endsWith'\n | 'doesNotEndWith'\n | 'isEmpty'\n | 'isNotEmpty'\n | 'isAnyOf'\n | 'isNotAnyOf'\n | 'containsAnyOf'\n | 'doesNotContainAnyOf'\n | 'startsWithAnyOf'\n | 'doesNotStartWithAnyOf'\n | 'endsWithAnyOf'\n | 'doesNotEndWithAnyOf';\n\nexport type NumberOperatorName = '=' | '!=' | '>' | '>=' | '<' | '<=' | 'isEmpty' | 'isNotEmpty' | 'isBetween';\n\nexport type DateOperatorName =\n | 'is'\n | 'not'\n | 'after'\n | 'onOrAfter'\n | 'before'\n | 'onOrBefore'\n | 'isEmpty'\n | 'isNotEmpty'\n | 'isBetween';\n\nexport type SingleSelectOperatorName = 'is' | 'isNot' | 'isAnyOf' | 'isNotAnyOf' | 'isEmpty' | 'isNotEmpty';\n\nexport type MultiSelectOperatorName =\n | 'has'\n | 'doesNotHave'\n | 'hasAnyOf'\n | 'hasAllOf'\n | 'doesNotHaveAnyOf'\n | 'hasOnly'\n | 'isEmpty'\n | 'isNotEmpty';\n\nexport type TagsOperatorName =\n | 'has'\n | 'doesNotHave'\n | 'hasAnyOf'\n | 'hasAllOf'\n | 'doesNotHaveAnyOf'\n | 'hasOnly'\n | 'containsAnyOf'\n | 'doesNotContainAnyOf'\n | 'isEmpty'\n | 'isNotEmpty';\n\n// ---------------------------------------------------------------------------\n// Column type\n// ---------------------------------------------------------------------------\n\nexport type ColumnType = 'string' | 'number' | 'date' | 'dateTime' | 'singleSelect' | 'multiSelect' | 'tags';\n\n// ---------------------------------------------------------------------------\n// Options: discriminated union (built-in vs override)\n// ---------------------------------------------------------------------------\n\ntype BuiltInOptions<TOperatorName extends string> = {\n compact?: boolean;\n exclude?: TOperatorName[];\n extend?: GridFilterOperator[];\n caseSensitive?: boolean;\n};\n\ntype OverrideOptions = {\n operators: GridFilterOperator[];\n};\n\ntype StringColumnOptions = BuiltInOptions<StringOperatorName> | OverrideOptions;\ntype NumberColumnOptions = Omit<BuiltInOptions<NumberOperatorName>, 'caseSensitive'> | OverrideOptions;\ntype DateColumnOptions = Omit<BuiltInOptions<DateOperatorName>, 'caseSensitive'> | OverrideOptions;\ntype SingleSelectColumnOptions = BuiltInOptions<SingleSelectOperatorName> | OverrideOptions;\ntype MultiSelectColumnOptions = BuiltInOptions<MultiSelectOperatorName> | OverrideOptions;\ntype TagsColumnOptions = BuiltInOptions<TagsOperatorName> | OverrideOptions;\n\nexport type ColumnOptions<T extends ColumnType> = T extends 'string'\n ? StringColumnOptions\n : T extends 'number'\n ? NumberColumnOptions\n : T extends 'date' | 'dateTime'\n ? DateColumnOptions\n : T extends 'singleSelect'\n ? SingleSelectColumnOptions\n : T extends 'multiSelect'\n ? MultiSelectColumnOptions\n : T extends 'tags'\n ? TagsColumnOptions\n : never;\n\n// ---------------------------------------------------------------------------\n// Full & compact operator lists\n// ---------------------------------------------------------------------------\n\nconst getStringOperatorsFull = (): GridFilterOperator[] => [\n ...nativeGetGridStringOperators().filter((op) => !['isAnyOf'].includes(op.value)),\n DOES_NOT_CONTAIN,\n DOES_NOT_EQUAL,\n DOES_NOT_START_WITH,\n DOES_NOT_END_WITH,\n IS_ANY_OF,\n IS_NOT_ANY_OF,\n CONTAINS_ANY_OF,\n DOES_NOT_CONTAIN_ANY_OF,\n STARTS_WITH_ANY_OF,\n DOES_NOT_START_WITH_ANY_OF,\n ENDS_WITH_ANY_OF,\n DOES_NOT_END_WITH_ANY_OF,\n];\n\nconst getStringOperatorsCompact = (): GridFilterOperator[] => [\n ...nativeGetGridStringOperators().filter((op) => !['isAnyOf', 'startsWith', 'endsWith'].includes(op.value)),\n DOES_NOT_CONTAIN,\n DOES_NOT_EQUAL,\n IS_ANY_OF,\n];\n\nconst getNumberOperatorsFull = (): GridFilterOperator[] => [...nativeGetGridNumericOperators(), IS_BETWEEN];\n\nconst getNumberOperatorsCompact = (): GridFilterOperator[] => nativeGetGridNumericOperators();\n\nconst getDateOperatorsFull = (showTime: boolean): GridFilterOperator[] => [\n ...nativeGetGridDateOperators(showTime),\n DATE_IS_BETWEEN,\n];\n\nconst getDateOperatorsCompact = (showTime: boolean): GridFilterOperator[] => nativeGetGridDateOperators(showTime);\n\nconst getSingleSelectOperatorsFull = (): GridFilterOperator[] => [\n IS_WITH_SELECT,\n IS_NOT_WITH_SELECT,\n IS_ANY_OF_WITH_SELECT,\n IS_NOT_ANY_OF_WITH_SELECT,\n ARRAY_IS_EMPTY,\n ARRAY_IS_NOT_EMPTY,\n];\n\nconst getSingleSelectOperatorsCompact = (): GridFilterOperator[] => [\n IS_WITH_SELECT,\n IS_NOT_WITH_SELECT,\n IS_ANY_OF_WITH_SELECT,\n];\n\nconst getMultiSelectOperatorsFull = (): GridFilterOperator[] => [\n HAS_WITH_SELECT,\n DOES_NOT_HAVE_WITH_SELECT,\n HAS_ANY_OF_WITH_SELECT,\n HAS_ALL_OF_WITH_SELECT,\n DOES_NOT_HAVE_ANY_OF_WITH_SELECT,\n HAS_ONLY_WITH_SELECT,\n ARRAY_IS_EMPTY,\n ARRAY_IS_NOT_EMPTY,\n];\n\nconst getMultiSelectOperatorsCompact = (): GridFilterOperator[] => [\n HAS_WITH_SELECT,\n DOES_NOT_HAVE_WITH_SELECT,\n HAS_ANY_OF_WITH_SELECT,\n];\n\nconst getTagsOperatorsFull = (): GridFilterOperator[] => [\n HAS,\n DOES_NOT_HAVE,\n HAS_ANY_OF,\n HAS_ALL_OF,\n DOES_NOT_HAVE_ANY_OF,\n HAS_ONLY,\n CONTAINS_ANY_OF,\n DOES_NOT_CONTAIN_ANY_OF,\n ARRAY_IS_EMPTY,\n ARRAY_IS_NOT_EMPTY,\n];\n\nconst getTagsOperatorsCompact = (): GridFilterOperator[] => [HAS, DOES_NOT_HAVE, HAS_ANY_OF];\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\nconst isOverrideOptions = (options: unknown): options is OverrideOptions => {\n return options != null && typeof options === 'object' && 'operators' in options;\n};\n\nconst arraySortComparator = (a: unknown, b: unknown): number => {\n const arrA = Array.isArray(a) ? a : [];\n const arrB = Array.isArray(b) ? b : [];\n if (arrA.length !== arrB.length) {\n return arrA.length - arrB.length;\n }\n const strA = arrA.map(String).sort().join(',');\n const strB = arrB.map(String).sort().join(',');\n return strA.localeCompare(strB);\n};\n\nconst arrayValueFormatter = (value: unknown): string => {\n if (Array.isArray(value)) {\n return value.map(String).join(', ');\n }\n return value != null ? String(value) : '';\n};\n\n// ---------------------------------------------------------------------------\n// Operator type strings that support case-insensitive wrapping\n// ---------------------------------------------------------------------------\n\nconst CASE_INSENSITIVE_TYPES: ColumnType[] = ['string', 'singleSelect', 'tags'];\n\n// ---------------------------------------------------------------------------\n// createColumn()\n// ---------------------------------------------------------------------------\n\n/**\n * Creates a column configuration with the appropriate MUI type and filter operators\n * for the given column type. Spread the result into your column definition.\n *\n * @example\n * ```tsx\n * const columns = [\n * { ...createColumn('string'), field: 'name', headerName: 'Name' },\n * { ...createColumn('number'), field: 'price', headerName: 'Price' },\n * { ...createColumn('singleSelect', { compact: true }), field: 'status', valueOptions: ['active', 'inactive'] },\n * { ...createColumn('multiSelect'), field: 'tags', valueOptions: ['a', 'b', 'c'] },\n * { ...createColumn('tags'), field: 'labels', headerName: 'Labels' },\n * ];\n * ```\n */\nexport function createColumn<T extends ColumnType>(type: T, options?: ColumnOptions<T>): Partial<GridColDef> {\n // Override mode: consumer provides full operator list\n if (options && isOverrideOptions(options)) {\n const result: Partial<GridColDef> = {\n type: getMuiType(type),\n filterOperators: options.operators,\n };\n if (type === 'multiSelect' || type === 'tags') {\n result.sortComparator = arraySortComparator;\n result.valueFormatter = arrayValueFormatter;\n }\n return result;\n }\n\n // Built-in mode\n const builtInOpts = (options ?? {}) as BuiltInOptions<string>;\n const compact = builtInOpts.compact ?? false;\n const caseSensitive = builtInOpts.caseSensitive ?? false;\n\n let operators = getOperatorsForType(type, compact);\n\n // Apply exclude\n if (builtInOpts.exclude && builtInOpts.exclude.length > 0) {\n const excludeSet = new Set(builtInOpts.exclude);\n operators = operators.filter((op) => !excludeSet.has(op.value));\n }\n\n // Apply case-insensitive wrapping\n if (!caseSensitive && CASE_INSENSITIVE_TYPES.includes(type)) {\n operators = makeCaseInsensitive(operators);\n }\n\n // Apply extend\n if (builtInOpts.extend && builtInOpts.extend.length > 0) {\n operators = [...operators, ...builtInOpts.extend];\n }\n\n const result: Partial<GridColDef> = {\n type: getMuiType(type),\n filterOperators: operators,\n };\n\n if (type === 'multiSelect' || type === 'tags') {\n result.sortComparator = arraySortComparator;\n result.valueFormatter = arrayValueFormatter;\n }\n\n return result;\n}\n\nfunction getMuiType(type: ColumnType): GridColType {\n switch (type) {\n case 'multiSelect':\n case 'singleSelect':\n return 'singleSelect';\n case 'tags':\n return 'string';\n default:\n return type as GridColType;\n }\n}\n\nfunction getOperatorsForType(type: ColumnType, compact: boolean): GridFilterOperator[] {\n switch (type) {\n case 'string':\n return compact ? getStringOperatorsCompact() : getStringOperatorsFull();\n case 'number':\n return compact ? getNumberOperatorsCompact() : getNumberOperatorsFull();\n case 'date':\n return compact ? getDateOperatorsCompact(false) : getDateOperatorsFull(false);\n case 'dateTime':\n return compact ? getDateOperatorsCompact(true) : getDateOperatorsFull(true);\n case 'singleSelect':\n return compact ? getSingleSelectOperatorsCompact() : getSingleSelectOperatorsFull();\n case 'multiSelect':\n return compact ? getMultiSelectOperatorsCompact() : getMultiSelectOperatorsFull();\n case 'tags':\n return compact ? getTagsOperatorsCompact() : getTagsOperatorsFull();\n }\n}\n"],"names":["DETAIL_PANEL_TOGGLE_COL_DEF","GRID_DETAIL_PANEL_TOGGLE_COL_DEF","type","SUBMIT_FILTER_STROKE_TIME","InputDateInterval","props","_item$value","_filterValueState$","_filterValueState$2","item","applyValue","focusElementRef","filterTimeout","React","useRef","filterValueState","setFilterValueState","useState","value","applying","setIsApplying","useEffect","clearTimeout","current","_item$value2","itemValue","updateFilterValue","from","to","setTimeout","_objectSpread","handleFromChange","event","newFrom","target","handleToChange","newTo","createElement","Box","sx","display","flexDirection","alignItems","height","pl","TextField","name","placeholder","label","variant","onChange","inputRef","mr","InputLabelProps","shrink","InputProps","endAdornment","Icon","icon","mdiSync","isBetweenOperator","getApplyFilterFn","filterItem","field","operator","Array","isArray","length","fromYear","fromMonth","fromDay","split","map","Number","toYear","toMonth","toDay","fromTime","Date","getTime","toTime","isNaN","cellTime","InputComponent","DATE_IS_BETWEEN","getGridDateOperatorsExtended","showTime","arguments","undefined","forwardOperators","lowercaseValue","toLowerCase","wrapCaseInsensitive","originalGetApplyFilterFn","column","caseInsensitiveFilterItem","originalFn","makeCaseInsensitive","operators","getRsStringColumnType","filterOperators","operatorList","rsString","getRsNumberColumnType","rsNumber","getRsSingleSelectColumnType","rsSingleSelect","getRsSingleSelectWithShortOperatorListColumnType","rsSingleSelectWithShortOperatorList","getRsMultipleSelectColumnType","rsMultipleSelect","getRsMultipleSelectWithShortOperatorListColumnType","rsMultipleSelectWithShortOperatorList","customColumnTypes","getStringOperatorsFull","nativeGetGridStringOperators","filter","op","includes","DOES_NOT_CONTAIN","DOES_NOT_EQUAL","DOES_NOT_START_WITH","DOES_NOT_END_WITH","IS_ANY_OF","IS_NOT_ANY_OF","CONTAINS_ANY_OF","DOES_NOT_CONTAIN_ANY_OF","STARTS_WITH_ANY_OF","DOES_NOT_START_WITH_ANY_OF","ENDS_WITH_ANY_OF","DOES_NOT_END_WITH_ANY_OF","getStringOperatorsCompact","getNumberOperatorsFull","nativeGetGridNumericOperators","IS_BETWEEN","getNumberOperatorsCompact","getDateOperatorsFull","nativeGetGridDateOperators","getDateOperatorsCompact","getSingleSelectOperatorsFull","IS_WITH_SELECT","IS_NOT_WITH_SELECT","IS_ANY_OF_WITH_SELECT","IS_NOT_ANY_OF_WITH_SELECT","ARRAY_IS_EMPTY","ARRAY_IS_NOT_EMPTY","getSingleSelectOperatorsCompact","getMultiSelectOperatorsFull","HAS_WITH_SELECT","DOES_NOT_HAVE_WITH_SELECT","HAS_ANY_OF_WITH_SELECT","HAS_ALL_OF_WITH_SELECT","DOES_NOT_HAVE_ANY_OF_WITH_SELECT","HAS_ONLY_WITH_SELECT","getMultiSelectOperatorsCompact","getTagsOperatorsFull","HAS","DOES_NOT_HAVE","HAS_ANY_OF","HAS_ALL_OF","DOES_NOT_HAVE_ANY_OF","HAS_ONLY","getTagsOperatorsCompact","isOverrideOptions","options","arraySortComparator","a","b","arrA","arrB","strA","String","sort","join","strB","localeCompare","arrayValueFormatter","CASE_INSENSITIVE_TYPES","createColumn","_builtInOpts$compact","_builtInOpts$caseSens","result","getMuiType","sortComparator","valueFormatter","builtInOpts","compact","caseSensitive","getOperatorsForType","exclude","excludeSet","Set","has","extend"],"mappings":"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"}
package/package.json CHANGED
@@ -30,11 +30,12 @@
30
30
  "test": "yarn test:unit && yarn test:storybook"
31
31
  },
32
32
  "types": "index.d.ts",
33
- "version": "12.4.0",
33
+ "version": "12.5.0-muiv7",
34
34
  "dependencies": {
35
35
  "@emotion/react": "^11.11.0",
36
36
  "@emotion/styled": "^11.11.0",
37
- "@mui/material": "^7.0.0",
37
+ "@mui/material": "^6.0.0",
38
+ "@mui/styled-engine-sc": "^6.0.0",
38
39
  "classnames": "^2.3.1"
39
40
  },
40
41
  "devDependencies": {
@@ -49,12 +50,12 @@
49
50
  "@babel/preset-env": "^7.17.10",
50
51
  "@babel/preset-react": "^7.17.12",
51
52
  "@babel/preset-typescript": "^7.16.7",
52
- "@mui/x-data-grid-premium": "^8.24.0",
53
- "@mui/x-license": "^8.0.0",
53
+ "@mui/x-data-grid-pro": "^7.29.12",
54
+ "@mui/x-license": "^7.0.0",
54
55
  "@rollup/plugin-babel": "^6.0.2",
55
56
  "@rollup/plugin-commonjs": "^24.0.0",
56
57
  "@rollup/plugin-json": "^6.0.0",
57
- "@rollup/plugin-node-resolve": "^15.3.1",
58
+ "@rollup/plugin-node-resolve": "^13.3.0",
58
59
  "@testing-library/dom": "^8.5.0",
59
60
  "@testing-library/jest-dom": "^5.16.4",
60
61
  "@testing-library/react": "^13.4.0",
@@ -83,12 +84,12 @@
83
84
  "ts-jest": "^29.2.0"
84
85
  },
85
86
  "peerDependencies": {
86
- "@mui/x-data-grid-pro": ">=8",
87
- "@redsift/design-system": "^12.4.0-0",
88
- "@redsift/icons": "^12.4.0-0",
87
+ "@mui/x-data-grid-pro": ">=7",
88
+ "@redsift/design-system": "^12.5.0-0",
89
+ "@redsift/icons": "^12.5.0-0",
89
90
  "react": ">=17",
90
91
  "react-dom": ">=17",
91
92
  "styled-components": "6.1.19"
92
93
  },
93
- "gitHead": "01c485a1a597cdec0af3bb199675dcb7577a26e4"
94
+ "gitHead": "40daf19b3c4b6032f4ce486dc7802a3a74906468"
94
95
  }
@@ -1,126 +0,0 @@
1
- import { a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
- import React__default, { forwardRef } from 'react';
3
- import { ButtonsColorPalette, IconButton, Button, Checkbox, Icon } from '@redsift/design-system';
4
- import { mdiFilterVariant, mdiViewColumn, mdiArrowUp, mdiArrowDown, mdiViewHeadline, mdiViewSequential, mdiViewStream, mdiChevronDown, mdiChevronRight, mdiTrayArrowDown } from '@redsift/icons';
5
-
6
- const _excluded$3 = ["children", "color", "onClick", "startIcon"];
7
- const BaseButton = /*#__PURE__*/forwardRef((props, ref) => {
8
- var _props$className;
9
- const {
10
- children,
11
- color: propsColor,
12
- onClick,
13
- startIcon
14
- } = props,
15
- forwardedProps = _objectWithoutProperties(props, _excluded$3);
16
- const color = Object.keys(ButtonsColorPalette).includes(propsColor) ? propsColor : 'primary';
17
- if ((_props$className = props.className) !== null && _props$className !== void 0 && _props$className.includes('redsift-condensed')) {
18
- return /*#__PURE__*/React__default.createElement(IconButton, _extends({}, forwardedProps, {
19
- color: color,
20
- onClick: onClick,
21
- ref: ref,
22
- variant: "unstyled",
23
- isActive: props['aria-expanded'] === 'true',
24
- icon: typeof startIcon !== 'string' ? /*#__PURE__*/React__default.cloneElement(startIcon, {
25
- fontSize: 'medium'
26
- }) : startIcon,
27
- "aria-label": children,
28
- size: "medium"
29
- }));
30
- }
31
- return /*#__PURE__*/React__default.createElement(Button, _extends({}, forwardedProps, {
32
- color: color,
33
- onClick: onClick,
34
- ref: ref,
35
- variant: "unstyled",
36
- isActive: props['aria-expanded'] === 'true',
37
- leftIcon: startIcon
38
- }), children);
39
- });
40
-
41
- const _excluded$2 = ["checked", "indeterminate", "disabled", "onChange", "label", "slotProps", "material", "field", "isSelected", "inputProps", "touchRippleRef"];
42
- const BaseCheckbox = /*#__PURE__*/forwardRef((props, ref) => {
43
- const {
44
- checked,
45
- indeterminate,
46
- disabled,
47
- onChange,
48
- label,
49
- // MUI DataGrid v8 injects these props — strip them to avoid DOM warnings
50
- slotProps,
51
- material,
52
- field,
53
- isSelected,
54
- inputProps,
55
- touchRippleRef
56
- } = props,
57
- forwardedProps = _objectWithoutProperties(props, _excluded$2);
58
- return /*#__PURE__*/React__default.createElement(Checkbox, _extends({}, forwardedProps, inputProps, {
59
- isSelected: checked && !indeterminate,
60
- isDisabled: disabled,
61
- isIndeterminate: indeterminate,
62
- ref: ref,
63
- onChange: (isChecked, value, name, event) => onChange(event),
64
- "aria-label": label || 'Select row'
65
- }), label);
66
- });
67
-
68
- const _excluded$1 = ["displayName"];
69
- const muiIconToDSIcon = {
70
- columnFilteredIcon: mdiFilterVariant,
71
- columnSelectorIcon: mdiViewColumn,
72
- columnSortedAscendingIcon: mdiArrowUp,
73
- columnSortedDescendingIcon: mdiArrowDown,
74
- densityCompactIcon: mdiViewHeadline,
75
- densityStandardIcon: mdiViewSequential,
76
- densityComfortableIcon: mdiViewStream,
77
- detailPanelCollapseIcon: mdiChevronDown,
78
- detailPanelExpandIcon: mdiChevronRight,
79
- exportIcon: mdiTrayArrowDown,
80
- openFilterButtonIcon: mdiFilterVariant
81
- };
82
- const BaseIcon = /*#__PURE__*/forwardRef((props, ref) => {
83
- const {
84
- displayName
85
- } = props,
86
- forwardedProps = _objectWithoutProperties(props, _excluded$1);
87
- return /*#__PURE__*/React__default.createElement(Icon, _extends({}, forwardedProps, forwardedProps.inputProps, {
88
- ref: ref,
89
- size: forwardedProps.fontSize,
90
- icon: muiIconToDSIcon[displayName]
91
- }));
92
- });
93
-
94
- const _excluded = ["children", "color", "onClick", "field"];
95
- const BaseIconButton = /*#__PURE__*/forwardRef((props, ref) => {
96
- const {
97
- children,
98
- color: propsColor,
99
- onClick,
100
- field
101
- } = props,
102
- forwardedProps = _objectWithoutProperties(props, _excluded);
103
- const color = Object.keys(ButtonsColorPalette).includes(propsColor) ? propsColor : 'primary';
104
-
105
- // MUI passes the icon as children (already rendered), but DS IconButton expects an icon prop
106
- // We pass children directly as the icon - the Icon component can handle ReactElements
107
- return /*#__PURE__*/React__default.createElement(IconButton, _extends({}, forwardedProps, {
108
- color: color,
109
- onClick: onClick,
110
- ref: ref,
111
- variant: "unstyled",
112
- isActive: props['aria-expanded'] === 'true',
113
- icon: children,
114
- size: "medium",
115
- iconProps: {
116
- style: {
117
- display: 'flex',
118
- alignItems: 'center',
119
- justifyContent: 'center'
120
- }
121
- }
122
- }));
123
- });
124
-
125
- export { BaseButton as B, BaseCheckbox as a, BaseIcon as b, BaseIconButton as c, muiIconToDSIcon as m };
126
- //# sourceMappingURL=BaseIconButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseIconButton.js","sources":["../../src/components/BaseComponents/BaseButton.tsx","../../src/components/BaseComponents/BaseCheckbox.tsx","../../src/components/BaseComponents/BaseIcon.tsx","../../src/components/BaseComponents/BaseIconButton.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { Button, ButtonsColorPalette, IconButton } from '@redsift/design-system';\n\nexport const BaseButton: React.JSXElementConstructor<any> = forwardRef((props, ref) => {\n const { children, color: propsColor, onClick, startIcon, ...forwardedProps } = props;\n\n const color = Object.keys(ButtonsColorPalette).includes(propsColor) ? propsColor : 'primary';\n\n if (props.className?.includes('redsift-condensed')) {\n return (\n <IconButton\n {...forwardedProps}\n color={color}\n onClick={onClick}\n ref={ref}\n variant=\"unstyled\"\n isActive={props['aria-expanded'] === 'true'}\n icon={typeof startIcon !== 'string' ? React.cloneElement(startIcon, { fontSize: 'medium' }) : startIcon}\n aria-label={children}\n size=\"medium\"\n />\n );\n }\n\n return (\n <Button\n {...forwardedProps}\n color={color}\n onClick={onClick}\n ref={ref}\n variant=\"unstyled\"\n isActive={props['aria-expanded'] === 'true'}\n leftIcon={startIcon}\n >\n {children}\n </Button>\n );\n});\n","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React, { forwardRef, MutableRefObject } from 'react';\nimport { Checkbox } from '@redsift/design-system';\n\nexport const BaseCheckbox: React.JSXElementConstructor<any> = forwardRef((props, ref) => {\n const {\n checked,\n indeterminate,\n disabled,\n onChange,\n label,\n // MUI DataGrid v8 injects these props — strip them to avoid DOM warnings\n slotProps,\n material,\n field,\n isSelected,\n inputProps,\n touchRippleRef,\n ...forwardedProps\n } = props;\n\n return (\n <Checkbox\n {...forwardedProps}\n {...inputProps}\n isSelected={checked && !indeterminate}\n isDisabled={disabled}\n isIndeterminate={indeterminate}\n ref={ref as MutableRefObject<HTMLLabelElement>}\n onChange={(isChecked, value, name, event) => onChange(event)}\n aria-label={label || 'Select row'}\n >\n {label}\n </Checkbox>\n );\n});\n","import React, { forwardRef } from 'react';\nimport { Icon } from '@redsift/design-system';\nimport {\n mdiArrowDown,\n mdiArrowUp,\n mdiChevronDown,\n mdiChevronRight,\n mdiFilterVariant,\n mdiTrayArrowDown,\n mdiViewColumn,\n mdiViewHeadline,\n mdiViewSequential,\n mdiViewStream,\n} from '@redsift/icons';\nimport { GridSlotsComponent } from '@mui/x-data-grid-premium';\n\nexport const muiIconToDSIcon: Partial<Record<keyof GridSlotsComponent, string>> = {\n columnFilteredIcon: mdiFilterVariant,\n columnSelectorIcon: mdiViewColumn,\n columnSortedAscendingIcon: mdiArrowUp,\n columnSortedDescendingIcon: mdiArrowDown,\n densityCompactIcon: mdiViewHeadline,\n densityStandardIcon: mdiViewSequential,\n densityComfortableIcon: mdiViewStream,\n detailPanelCollapseIcon: mdiChevronDown,\n detailPanelExpandIcon: mdiChevronRight,\n exportIcon: mdiTrayArrowDown,\n openFilterButtonIcon: mdiFilterVariant,\n};\n\nexport const BaseIcon: React.JSXElementConstructor<any> = forwardRef((props, ref) => {\n const { displayName, ...forwardedProps } = props;\n\n return (\n <Icon\n {...forwardedProps}\n {...forwardedProps.inputProps}\n ref={ref}\n size={forwardedProps.fontSize}\n icon={muiIconToDSIcon[displayName as keyof GridSlotsComponent]}\n />\n );\n});\n","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React, { forwardRef } from 'react';\nimport { IconButton, ButtonsColorPalette } from '@redsift/design-system';\n\nexport const BaseIconButton: React.JSXElementConstructor<any> = forwardRef((props, ref) => {\n const { children, color: propsColor, onClick, field, ...forwardedProps } = props;\n\n const color = Object.keys(ButtonsColorPalette).includes(propsColor) ? propsColor : 'primary';\n\n // MUI passes the icon as children (already rendered), but DS IconButton expects an icon prop\n // We pass children directly as the icon - the Icon component can handle ReactElements\n return (\n <IconButton\n {...forwardedProps}\n color={color}\n onClick={onClick}\n ref={ref}\n variant=\"unstyled\"\n isActive={props['aria-expanded'] === 'true'}\n icon={children}\n size=\"medium\"\n iconProps={{ style: { display: 'flex', alignItems: 'center', justifyContent: 'center' } }}\n />\n );\n});\n"],"names":["BaseButton","forwardRef","props","ref","_props$className","children","color","propsColor","onClick","startIcon","forwardedProps","_objectWithoutProperties","_excluded","Object","keys","ButtonsColorPalette","includes","className","React","createElement","IconButton","_extends","variant","isActive","icon","cloneElement","fontSize","size","Button","leftIcon","BaseCheckbox","checked","indeterminate","disabled","onChange","label","slotProps","material","field","isSelected","inputProps","touchRippleRef","Checkbox","isDisabled","isIndeterminate","isChecked","value","name","event","muiIconToDSIcon","columnFilteredIcon","mdiFilterVariant","columnSelectorIcon","mdiViewColumn","columnSortedAscendingIcon","mdiArrowUp","columnSortedDescendingIcon","mdiArrowDown","densityCompactIcon","mdiViewHeadline","densityStandardIcon","mdiViewSequential","densityComfortableIcon","mdiViewStream","detailPanelCollapseIcon","mdiChevronDown","detailPanelExpandIcon","mdiChevronRight","exportIcon","mdiTrayArrowDown","openFilterButtonIcon","BaseIcon","displayName","Icon","BaseIconButton","iconProps","style","display","alignItems","justifyContent"],"mappings":"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"}