wip:milestone 0 fixes
Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped

This commit is contained in:
2026-03-15 12:35:42 +02:00
parent 6708cf28a7
commit cffdf8af86
61266 changed files with 4511646 additions and 1938 deletions

View File

@@ -0,0 +1,26 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_ACTIONS_COL_DEF = exports.GRID_ACTIONS_COLUMN_TYPE = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _gridStringColDef = require("./gridStringColDef");
var _GridActionsCell = require("../components/cell/GridActionsCell");
const GRID_ACTIONS_COLUMN_TYPE = exports.GRID_ACTIONS_COLUMN_TYPE = 'actions';
const GRID_ACTIONS_COL_DEF = exports.GRID_ACTIONS_COL_DEF = (0, _extends2.default)({}, _gridStringColDef.GRID_STRING_COL_DEF, {
sortable: false,
filterable: false,
// @ts-ignore
aggregable: false,
width: 100,
align: 'center',
headerAlign: 'center',
headerName: '',
disableColumnMenu: true,
disableExport: true,
renderCell: _GridActionsCell.renderActionsCell,
getApplyQuickFilterFn: undefined,
getApplyQuickFilterFnV7: undefined
});

View File

@@ -0,0 +1,51 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_BOOLEAN_COL_DEF = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _gridStringColDef = require("./gridStringColDef");
var _GridBooleanCell = require("../components/cell/GridBooleanCell");
var _GridEditBooleanCell = require("../components/cell/GridEditBooleanCell");
var _gridSortingUtils = require("../hooks/features/sorting/gridSortingUtils");
var _gridBooleanOperators = require("./gridBooleanOperators");
function gridBooleanFormatter({
value,
api
}) {
return value ? api.getLocaleText('booleanCellTrueLabel') : api.getLocaleText('booleanCellFalseLabel');
}
const stringToBoolean = value => {
switch (value.toLowerCase().trim()) {
case 'true':
case 'yes':
case '1':
return true;
case 'false':
case 'no':
case '0':
case 'null':
case 'undefined':
return false;
default:
return undefined;
}
};
const GRID_BOOLEAN_COL_DEF = exports.GRID_BOOLEAN_COL_DEF = (0, _extends2.default)({}, _gridStringColDef.GRID_STRING_COL_DEF, {
type: 'boolean',
align: 'center',
headerAlign: 'center',
renderCell: _GridBooleanCell.renderBooleanCell,
renderEditCell: _GridEditBooleanCell.renderEditBooleanCell,
sortComparator: _gridSortingUtils.gridNumberComparator,
valueFormatter: gridBooleanFormatter,
filterOperators: (0, _gridBooleanOperators.getGridBooleanOperators)(),
getApplyQuickFilterFn: undefined,
getApplyQuickFilterFnV7: undefined,
// @ts-ignore
aggregable: false,
// @ts-ignore
pastedValueParser: value => stringToBoolean(value)
});

View File

@@ -0,0 +1,22 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getGridBooleanOperators = void 0;
var _GridFilterInputBoolean = require("../components/panel/filterPanel/GridFilterInputBoolean");
var _utils = require("./utils");
const getGridBooleanOperators = () => (0, _utils.convertLegacyOperators)([{
value: 'is',
getApplyFilterFnV7: filterItem => {
if (!filterItem.value) {
return null;
}
const valueAsBoolean = filterItem.value === 'true';
return value => {
return Boolean(value) === valueAsBoolean;
};
},
InputComponent: _GridFilterInputBoolean.GridFilterInputBoolean
}]);
exports.getGridBooleanOperators = getGridBooleanOperators;

View File

@@ -0,0 +1,38 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_CHECKBOX_SELECTION_FIELD = exports.GRID_CHECKBOX_SELECTION_COL_DEF = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var React = _interopRequireWildcard(require("react"));
var _GridCellCheckboxRenderer = require("../components/columnSelection/GridCellCheckboxRenderer");
var _GridHeaderCheckbox = require("../components/columnSelection/GridHeaderCheckbox");
var _gridRowSelectionSelector = require("../hooks/features/rowSelection/gridRowSelectionSelector");
var _gridBooleanColDef = require("./gridBooleanColDef");
var _jsxRuntime = require("react/jsx-runtime");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
const GRID_CHECKBOX_SELECTION_FIELD = exports.GRID_CHECKBOX_SELECTION_FIELD = '__check__';
const GRID_CHECKBOX_SELECTION_COL_DEF = exports.GRID_CHECKBOX_SELECTION_COL_DEF = (0, _extends2.default)({}, _gridBooleanColDef.GRID_BOOLEAN_COL_DEF, {
field: GRID_CHECKBOX_SELECTION_FIELD,
type: 'checkboxSelection',
width: 50,
resizable: false,
sortable: false,
filterable: false,
// @ts-ignore
aggregable: false,
disableColumnMenu: true,
disableReorder: true,
disableExport: true,
getApplyQuickFilterFn: undefined,
getApplyQuickFilterFnV7: undefined,
valueGetter: params => {
const selectionLookup = (0, _gridRowSelectionSelector.selectedIdsLookupSelector)(params.api.state, params.api.instanceId);
return selectionLookup[params.id] !== undefined;
},
renderHeader: params => /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridHeaderCheckbox.GridHeaderCheckbox, (0, _extends2.default)({}, params)),
renderCell: params => /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridCellCheckboxRenderer.GridCellCheckboxRenderer, (0, _extends2.default)({}, params))
});

View File

@@ -0,0 +1,74 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_DATE_COL_DEF = exports.GRID_DATETIME_COL_DEF = void 0;
exports.gridDateFormatter = gridDateFormatter;
exports.gridDateTimeFormatter = gridDateTimeFormatter;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _gridSortingUtils = require("../hooks/features/sorting/gridSortingUtils");
var _gridDateOperators = require("./gridDateOperators");
var _gridStringColDef = require("./gridStringColDef");
var _GridEditDateCell = require("../components/cell/GridEditDateCell");
function throwIfNotDateObject({
value,
columnType,
rowId,
field
}) {
if (!(value instanceof Date)) {
throw new Error([`MUI: \`${columnType}\` column type only accepts \`Date\` objects as values.`, 'Use `valueGetter` to transform the value into a `Date` object.', `Row ID: ${rowId}, field: "${field}".`].join('\n'));
}
}
function gridDateFormatter({
value,
field,
id
}) {
if (!value) {
return '';
}
throwIfNotDateObject({
value,
columnType: 'date',
rowId: id,
field
});
return value.toLocaleDateString();
}
function gridDateTimeFormatter({
value,
field,
id
}) {
if (!value) {
return '';
}
throwIfNotDateObject({
value,
columnType: 'dateTime',
rowId: id,
field
});
return value.toLocaleString();
}
const GRID_DATE_COL_DEF = exports.GRID_DATE_COL_DEF = (0, _extends2.default)({}, _gridStringColDef.GRID_STRING_COL_DEF, {
type: 'date',
sortComparator: _gridSortingUtils.gridDateComparator,
valueFormatter: gridDateFormatter,
filterOperators: (0, _gridDateOperators.getGridDateOperators)(),
renderEditCell: _GridEditDateCell.renderEditDateCell,
// @ts-ignore
pastedValueParser: value => new Date(value)
});
const GRID_DATETIME_COL_DEF = exports.GRID_DATETIME_COL_DEF = (0, _extends2.default)({}, _gridStringColDef.GRID_STRING_COL_DEF, {
type: 'dateTime',
sortComparator: _gridSortingUtils.gridDateComparator,
valueFormatter: gridDateTimeFormatter,
filterOperators: (0, _gridDateOperators.getGridDateOperators)(true),
renderEditCell: _GridEditDateCell.renderEditDateCell,
// @ts-ignore
pastedValueParser: value => new Date(value)
});

View File

@@ -0,0 +1,102 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getGridDateOperators = void 0;
var _GridFilterInputDate = require("../components/panel/filterPanel/GridFilterInputDate");
var _utils = require("./utils");
const dateRegex = /(\d+)-(\d+)-(\d+)/;
const dateTimeRegex = /(\d+)-(\d+)-(\d+)T(\d+):(\d+)/;
function buildApplyFilterFn(filterItem, compareFn, showTime, keepHours) {
if (!filterItem.value) {
return null;
}
const [year, month, day, hour, minute] = filterItem.value.match(showTime ? dateTimeRegex : dateRegex).slice(1).map(Number);
const time = new Date(year, month - 1, day, hour || 0, minute || 0).getTime();
return value => {
if (!value) {
return false;
}
if (keepHours) {
return compareFn(value.getTime(), time);
}
// Make a copy of the date to not reset the hours in the original object
const dateCopy = new Date(value);
const timeToCompare = dateCopy.setHours(showTime ? value.getHours() : 0, showTime ? value.getMinutes() : 0, 0, 0);
return compareFn(timeToCompare, time);
};
}
const getGridDateOperators = showTime => (0, _utils.convertLegacyOperators)([{
value: 'is',
getApplyFilterFnV7: filterItem => {
return buildApplyFilterFn(filterItem, (value1, value2) => value1 === value2, showTime);
},
InputComponent: _GridFilterInputDate.GridFilterInputDate,
InputComponentProps: {
type: showTime ? 'datetime-local' : 'date'
}
}, {
value: 'not',
getApplyFilterFnV7: filterItem => {
return buildApplyFilterFn(filterItem, (value1, value2) => value1 !== value2, showTime);
},
InputComponent: _GridFilterInputDate.GridFilterInputDate,
InputComponentProps: {
type: showTime ? 'datetime-local' : 'date'
}
}, {
value: 'after',
getApplyFilterFnV7: filterItem => {
return buildApplyFilterFn(filterItem, (value1, value2) => value1 > value2, showTime);
},
InputComponent: _GridFilterInputDate.GridFilterInputDate,
InputComponentProps: {
type: showTime ? 'datetime-local' : 'date'
}
}, {
value: 'onOrAfter',
getApplyFilterFnV7: filterItem => {
return buildApplyFilterFn(filterItem, (value1, value2) => value1 >= value2, showTime);
},
InputComponent: _GridFilterInputDate.GridFilterInputDate,
InputComponentProps: {
type: showTime ? 'datetime-local' : 'date'
}
}, {
value: 'before',
getApplyFilterFnV7: filterItem => {
return buildApplyFilterFn(filterItem, (value1, value2) => value1 < value2, showTime, !showTime);
},
InputComponent: _GridFilterInputDate.GridFilterInputDate,
InputComponentProps: {
type: showTime ? 'datetime-local' : 'date'
}
}, {
value: 'onOrBefore',
getApplyFilterFnV7: filterItem => {
return buildApplyFilterFn(filterItem, (value1, value2) => value1 <= value2, showTime);
},
InputComponent: _GridFilterInputDate.GridFilterInputDate,
InputComponentProps: {
type: showTime ? 'datetime-local' : 'date'
}
}, {
value: 'isEmpty',
getApplyFilterFnV7: () => {
return value => {
return value == null;
};
},
requiresFilterValue: false
}, {
value: 'isNotEmpty',
getApplyFilterFnV7: () => {
return value => {
return value != null;
};
},
requiresFilterValue: false
}]);
exports.getGridDateOperators = getGridDateOperators;

View File

@@ -0,0 +1,27 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getGridDefaultColumnTypes = exports.DEFAULT_GRID_COL_TYPE_KEY = void 0;
var _gridStringColDef = require("./gridStringColDef");
var _gridNumericColDef = require("./gridNumericColDef");
var _gridDateColDef = require("./gridDateColDef");
var _gridBooleanColDef = require("./gridBooleanColDef");
var _gridSingleSelectColDef = require("./gridSingleSelectColDef");
var _gridActionsColDef = require("./gridActionsColDef");
const DEFAULT_GRID_COL_TYPE_KEY = exports.DEFAULT_GRID_COL_TYPE_KEY = '__default__';
const getGridDefaultColumnTypes = () => {
const nativeColumnTypes = {
string: _gridStringColDef.GRID_STRING_COL_DEF,
number: _gridNumericColDef.GRID_NUMERIC_COL_DEF,
date: _gridDateColDef.GRID_DATE_COL_DEF,
dateTime: _gridDateColDef.GRID_DATETIME_COL_DEF,
boolean: _gridBooleanColDef.GRID_BOOLEAN_COL_DEF,
singleSelect: _gridSingleSelectColDef.GRID_SINGLE_SELECT_COL_DEF,
[_gridActionsColDef.GRID_ACTIONS_COLUMN_TYPE]: _gridActionsColDef.GRID_ACTIONS_COL_DEF,
[DEFAULT_GRID_COL_TYPE_KEY]: _gridStringColDef.GRID_STRING_COL_DEF
};
return nativeColumnTypes;
};
exports.getGridDefaultColumnTypes = getGridDefaultColumnTypes;

View File

@@ -0,0 +1,26 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_NUMERIC_COL_DEF = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _gridSortingUtils = require("../hooks/features/sorting/gridSortingUtils");
var _utils = require("../utils/utils");
var _gridNumericOperators = require("./gridNumericOperators");
var _gridStringColDef = require("./gridStringColDef");
var _utils2 = require("./utils");
const GRID_NUMERIC_COL_DEF = exports.GRID_NUMERIC_COL_DEF = (0, _extends2.default)({}, _gridStringColDef.GRID_STRING_COL_DEF, {
type: 'number',
align: 'right',
headerAlign: 'right',
sortComparator: _gridSortingUtils.gridNumberComparator,
valueParser: value => value === '' ? null : Number(value),
valueFormatter: ({
value
}) => (0, _utils.isNumber)(value) ? value.toLocaleString() : value || '',
filterOperators: (0, _gridNumericOperators.getGridNumericOperators)(),
getApplyQuickFilterFn: (0, _utils2.convertQuickFilterV7ToLegacy)(_gridNumericOperators.getGridNumericQuickFilterFn),
getApplyQuickFilterFnV7: _gridNumericOperators.getGridNumericQuickFilterFn
});

View File

@@ -0,0 +1,151 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getGridNumericQuickFilterFn = exports.getGridNumericOperators = void 0;
var _GridFilterInputValue = require("../components/panel/filterPanel/GridFilterInputValue");
var _GridFilterInputMultipleValue = require("../components/panel/filterPanel/GridFilterInputMultipleValue");
var _utils = require("./utils");
const parseNumericValue = value => {
if (value == null) {
return null;
}
return Number(value);
};
const getGridNumericQuickFilterFn = exports.getGridNumericQuickFilterFn = (0, _utils.tagInternalFilter)(value => {
if (value == null || Number.isNaN(value) || value === '') {
return null;
}
return columnValue => {
return parseNumericValue(columnValue) === parseNumericValue(value);
};
});
const getGridNumericOperators = () => (0, _utils.convertLegacyOperators)([{
value: '=',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || Number.isNaN(filterItem.value)) {
return null;
}
return value => {
return parseNumericValue(value) === filterItem.value;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue,
InputComponentProps: {
type: 'number'
}
}, {
value: '!=',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || Number.isNaN(filterItem.value)) {
return null;
}
return value => {
return parseNumericValue(value) !== filterItem.value;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue,
InputComponentProps: {
type: 'number'
}
}, {
value: '>',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || Number.isNaN(filterItem.value)) {
return null;
}
return value => {
if (value == null) {
return false;
}
return parseNumericValue(value) > filterItem.value;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue,
InputComponentProps: {
type: 'number'
}
}, {
value: '>=',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || Number.isNaN(filterItem.value)) {
return null;
}
return value => {
if (value == null) {
return false;
}
return parseNumericValue(value) >= filterItem.value;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue,
InputComponentProps: {
type: 'number'
}
}, {
value: '<',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || Number.isNaN(filterItem.value)) {
return null;
}
return value => {
if (value == null) {
return false;
}
return parseNumericValue(value) < filterItem.value;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue,
InputComponentProps: {
type: 'number'
}
}, {
value: '<=',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || Number.isNaN(filterItem.value)) {
return null;
}
return value => {
if (value == null) {
return false;
}
return parseNumericValue(value) <= filterItem.value;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue,
InputComponentProps: {
type: 'number'
}
}, {
value: 'isEmpty',
getApplyFilterFnV7: () => {
return value => {
return value == null;
};
},
requiresFilterValue: false
}, {
value: 'isNotEmpty',
getApplyFilterFnV7: () => {
return value => {
return value != null;
};
},
requiresFilterValue: false
}, {
value: 'isAnyOf',
getApplyFilterFnV7: filterItem => {
if (!Array.isArray(filterItem.value) || filterItem.value.length === 0) {
return null;
}
return value => {
return value != null && filterItem.value.includes(Number(value));
};
},
InputComponent: _GridFilterInputMultipleValue.GridFilterInputMultipleValue,
InputComponentProps: {
type: 'number'
}
}]);
exports.getGridNumericOperators = getGridNumericOperators;

View File

@@ -0,0 +1,82 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_SINGLE_SELECT_COL_DEF = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _gridStringColDef = require("./gridStringColDef");
var _GridEditSingleSelectCell = require("../components/cell/GridEditSingleSelectCell");
var _gridSingleSelectOperators = require("./gridSingleSelectOperators");
var _filterPanelUtils = require("../components/panel/filterPanel/filterPanelUtils");
var _utils = require("../utils/utils");
const isArrayOfObjects = options => {
return typeof options[0] === 'object';
};
const defaultGetOptionValue = value => {
return (0, _utils.isObject)(value) ? value.value : value;
};
const defaultGetOptionLabel = value => {
return (0, _utils.isObject)(value) ? value.label : String(value);
};
const GRID_SINGLE_SELECT_COL_DEF = exports.GRID_SINGLE_SELECT_COL_DEF = (0, _extends2.default)({}, _gridStringColDef.GRID_STRING_COL_DEF, {
type: 'singleSelect',
getOptionLabel: defaultGetOptionLabel,
getOptionValue: defaultGetOptionValue,
valueFormatter(params) {
const {
id,
field,
value,
api
} = params;
const colDef = params.api.getColumn(field);
if (!(0, _filterPanelUtils.isSingleSelectColDef)(colDef)) {
return '';
}
let valueOptions;
if (typeof colDef.valueOptions === 'function') {
valueOptions = colDef.valueOptions({
id,
row: id ? api.getRow(id) : null,
field
});
} else {
valueOptions = colDef.valueOptions;
}
if (value == null) {
return '';
}
if (!valueOptions) {
return value;
}
if (!isArrayOfObjects(valueOptions)) {
return colDef.getOptionLabel(value);
}
const valueOption = valueOptions.find(option => colDef.getOptionValue(option) === value);
return valueOption ? colDef.getOptionLabel(valueOption) : '';
},
renderEditCell: _GridEditSingleSelectCell.renderEditSingleSelectCell,
filterOperators: (0, _gridSingleSelectOperators.getGridSingleSelectOperators)(),
// @ts-ignore
pastedValueParser: (value, params) => {
const colDef = params.colDef;
const colDefValueOptions = colDef.valueOptions;
const valueOptions = typeof colDefValueOptions === 'function' ? colDefValueOptions({
field: colDef.field
}) : colDefValueOptions || [];
const getOptionValue = colDef.getOptionValue;
const valueOption = valueOptions.find(option => {
if (getOptionValue(option) === value) {
return true;
}
return false;
});
if (valueOption) {
return value;
}
// do not paste the value if it is not in the valueOptions
return undefined;
}
});

View File

@@ -0,0 +1,46 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getGridSingleSelectOperators = void 0;
var _GridFilterInputSingleSelect = require("../components/panel/filterPanel/GridFilterInputSingleSelect");
var _GridFilterInputMultipleSingleSelect = require("../components/panel/filterPanel/GridFilterInputMultipleSingleSelect");
var _utils = require("../utils/utils");
var _utils2 = require("./utils");
const parseObjectValue = value => {
if (value == null || !(0, _utils.isObject)(value)) {
return value;
}
return value.value;
};
const getGridSingleSelectOperators = () => (0, _utils2.convertLegacyOperators)([{
value: 'is',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || filterItem.value === '') {
return null;
}
return value => parseObjectValue(value) === parseObjectValue(filterItem.value);
},
InputComponent: _GridFilterInputSingleSelect.GridFilterInputSingleSelect
}, {
value: 'not',
getApplyFilterFnV7: filterItem => {
if (filterItem.value == null || filterItem.value === '') {
return null;
}
return value => parseObjectValue(value) !== parseObjectValue(filterItem.value);
},
InputComponent: _GridFilterInputSingleSelect.GridFilterInputSingleSelect
}, {
value: 'isAnyOf',
getApplyFilterFnV7: filterItem => {
if (!Array.isArray(filterItem.value) || filterItem.value.length === 0) {
return null;
}
const filterItemValues = filterItem.value.map(parseObjectValue);
return value => filterItemValues.includes(parseObjectValue(value));
},
InputComponent: _GridFilterInputMultipleSingleSelect.GridFilterInputMultipleSingleSelect
}]);
exports.getGridSingleSelectOperators = getGridSingleSelectOperators;

View File

@@ -0,0 +1,34 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GRID_STRING_COL_DEF = void 0;
var _GridEditInputCell = require("../components/cell/GridEditInputCell");
var _gridSortingUtils = require("../hooks/features/sorting/gridSortingUtils");
var _gridStringOperators = require("./gridStringOperators");
var _utils = require("./utils");
/**
* TODO: Move pro and premium properties outside of this Community file
*/
const GRID_STRING_COL_DEF = exports.GRID_STRING_COL_DEF = {
width: 100,
minWidth: 50,
maxWidth: Infinity,
hideable: true,
sortable: true,
resizable: true,
filterable: true,
groupable: true,
pinnable: true,
// @ts-ignore
aggregable: true,
editable: false,
sortComparator: _gridSortingUtils.gridStringOrNumberComparator,
type: 'string',
align: 'left',
filterOperators: (0, _gridStringOperators.getGridStringOperators)(),
renderEditCell: _GridEditInputCell.renderEditInputCell,
getApplyQuickFilterFn: (0, _utils.convertQuickFilterV7ToLegacy)(_gridStringOperators.getGridStringQuickFilterFn),
getApplyQuickFilterFnV7: _gridStringOperators.getGridStringQuickFilterFn
};

View File

@@ -0,0 +1,113 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getGridStringQuickFilterFn = exports.getGridStringOperators = void 0;
var _GridFilterInputValue = require("../components/panel/filterPanel/GridFilterInputValue");
var _utils = require("../utils/utils");
var _GridFilterInputMultipleValue = require("../components/panel/filterPanel/GridFilterInputMultipleValue");
var _utils2 = require("./utils");
var _gridFilterUtils = require("../hooks/features/filter/gridFilterUtils");
const getGridStringQuickFilterFn = exports.getGridStringQuickFilterFn = (0, _utils2.tagInternalFilter)(value => {
if (!value) {
return null;
}
const filterRegex = new RegExp((0, _utils.escapeRegExp)(value), 'i');
return (_, row, column, apiRef) => {
let columnValue = apiRef.current.getRowFormattedValue(row, column);
if (apiRef.current.ignoreDiacritics) {
columnValue = (0, _gridFilterUtils.removeDiacritics)(columnValue);
}
return columnValue != null ? filterRegex.test(columnValue.toString()) : false;
};
});
const getGridStringOperators = (disableTrim = false) => (0, _utils2.convertLegacyOperators)([{
value: 'contains',
getApplyFilterFnV7: filterItem => {
if (!filterItem.value) {
return null;
}
const filterItemValue = disableTrim ? filterItem.value : filterItem.value.trim();
const filterRegex = new RegExp((0, _utils.escapeRegExp)(filterItemValue), 'i');
return value => {
return value != null ? filterRegex.test(String(value)) : false;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue
}, {
value: 'equals',
getApplyFilterFnV7: filterItem => {
if (!filterItem.value) {
return null;
}
const filterItemValue = disableTrim ? filterItem.value : filterItem.value.trim();
const collator = new Intl.Collator(undefined, {
sensitivity: 'base',
usage: 'search'
});
return value => {
return value != null ? collator.compare(filterItemValue, value.toString()) === 0 : false;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue
}, {
value: 'startsWith',
getApplyFilterFnV7: filterItem => {
if (!filterItem.value) {
return null;
}
const filterItemValue = disableTrim ? filterItem.value : filterItem.value.trim();
const filterRegex = new RegExp(`^${(0, _utils.escapeRegExp)(filterItemValue)}.*$`, 'i');
return value => {
return value != null ? filterRegex.test(value.toString()) : false;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue
}, {
value: 'endsWith',
getApplyFilterFnV7: filterItem => {
if (!filterItem.value) {
return null;
}
const filterItemValue = disableTrim ? filterItem.value : filterItem.value.trim();
const filterRegex = new RegExp(`.*${(0, _utils.escapeRegExp)(filterItemValue)}$`, 'i');
return value => {
return value != null ? filterRegex.test(value.toString()) : false;
};
},
InputComponent: _GridFilterInputValue.GridFilterInputValue
}, {
value: 'isEmpty',
getApplyFilterFnV7: () => {
return value => {
return value === '' || value == null;
};
},
requiresFilterValue: false
}, {
value: 'isNotEmpty',
getApplyFilterFnV7: () => {
return value => {
return value !== '' && value != null;
};
},
requiresFilterValue: false
}, {
value: 'isAnyOf',
getApplyFilterFnV7: filterItem => {
if (!Array.isArray(filterItem.value) || filterItem.value.length === 0) {
return null;
}
const filterItemValue = disableTrim ? filterItem.value : filterItem.value.map(val => val.trim());
const collator = new Intl.Collator(undefined, {
sensitivity: 'base',
usage: 'search'
});
return value => value != null ? filterItemValue.some(filterValue => {
return collator.compare(filterValue, value.toString() || '') === 0;
}) : false;
},
InputComponent: _GridFilterInputMultipleValue.GridFilterInputMultipleValue
}]);
exports.getGridStringOperators = getGridStringOperators;

View File

@@ -0,0 +1,148 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _gridActionsColDef = require("./gridActionsColDef");
Object.keys(_gridActionsColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridActionsColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridActionsColDef[key];
}
});
});
var _gridBooleanColDef = require("./gridBooleanColDef");
Object.keys(_gridBooleanColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridBooleanColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridBooleanColDef[key];
}
});
});
var _gridCheckboxSelectionColDef = require("./gridCheckboxSelectionColDef");
Object.keys(_gridCheckboxSelectionColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridCheckboxSelectionColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridCheckboxSelectionColDef[key];
}
});
});
var _gridDateColDef = require("./gridDateColDef");
Object.keys(_gridDateColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridDateColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridDateColDef[key];
}
});
});
var _gridNumericColDef = require("./gridNumericColDef");
Object.keys(_gridNumericColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridNumericColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridNumericColDef[key];
}
});
});
var _gridSingleSelectColDef = require("./gridSingleSelectColDef");
Object.keys(_gridSingleSelectColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridSingleSelectColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridSingleSelectColDef[key];
}
});
});
var _gridStringColDef = require("./gridStringColDef");
Object.keys(_gridStringColDef).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridStringColDef[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridStringColDef[key];
}
});
});
var _gridBooleanOperators = require("./gridBooleanOperators");
Object.keys(_gridBooleanOperators).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridBooleanOperators[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridBooleanOperators[key];
}
});
});
var _gridDateOperators = require("./gridDateOperators");
Object.keys(_gridDateOperators).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridDateOperators[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridDateOperators[key];
}
});
});
var _gridNumericOperators = require("./gridNumericOperators");
Object.keys(_gridNumericOperators).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridNumericOperators[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridNumericOperators[key];
}
});
});
var _gridSingleSelectOperators = require("./gridSingleSelectOperators");
Object.keys(_gridSingleSelectOperators).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridSingleSelectOperators[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridSingleSelectOperators[key];
}
});
});
var _gridStringOperators = require("./gridStringOperators");
Object.keys(_gridStringOperators).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridStringOperators[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridStringOperators[key];
}
});
});
var _gridDefaultColumnTypes = require("./gridDefaultColumnTypes");
Object.keys(_gridDefaultColumnTypes).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _gridDefaultColumnTypes[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _gridDefaultColumnTypes[key];
}
});
});

View File

@@ -0,0 +1,63 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.GLOBAL_API_REF = void 0;
exports.convertFilterV7ToLegacy = convertFilterV7ToLegacy;
exports.convertLegacyOperators = convertLegacyOperators;
exports.convertQuickFilterV7ToLegacy = convertQuickFilterV7ToLegacy;
exports.isInternalFilter = isInternalFilter;
exports.tagInternalFilter = tagInternalFilter;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
/**
* A global API ref, for v7-to-legacy converter
*/
const GLOBAL_API_REF = exports.GLOBAL_API_REF = {
current: null
};
/**
* A tagger to determine if the filter is internal or custom user-supplied.
* To be a valid internal filter, the v7 function *must* be defined/redefined at
* the same time as the legacy one.
* https://github.com/mui/mui-x/pull/9254#discussion_r1231095551
*/
function tagInternalFilter(fn) {
fn.isInternal = true;
return fn;
}
function isInternalFilter(fn) {
return fn !== undefined && fn.isInternal === true;
}
function convertFilterV7ToLegacy(fn) {
return tagInternalFilter((filterItem, column) => {
const filterFn = fn(filterItem, column);
if (!filterFn) {
return filterFn;
}
return cellParams => {
return filterFn(cellParams.value, cellParams.row, column, GLOBAL_API_REF.current);
};
});
}
function convertLegacyOperators(ops) {
return ops.map(op => {
return (0, _extends2.default)({}, op, {
getApplyFilterFn: convertFilterV7ToLegacy(op.getApplyFilterFnV7),
getApplyFilterFnV7: tagInternalFilter(op.getApplyFilterFnV7)
});
});
}
function convertQuickFilterV7ToLegacy(fn) {
return tagInternalFilter((filterItem, column, apiRef) => {
const filterFn = fn(filterItem, column, apiRef);
if (!filterFn) {
return filterFn;
}
return cellParams => {
return filterFn(cellParams.value, cellParams.row, column, apiRef);
};
});
}