drf-react-by-schema 0.19.17 → 0.19.18
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/dist/components/DataGridBySchemaEditable/DataGridDesktop.d.ts +4 -3
- package/dist/components/DataGridBySchemaEditable/DataGridDesktop.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/DataGridDesktop.js +12 -16
- package/dist/components/GenericModelList.d.ts +3 -2
- package/dist/components/GenericModelList.d.ts.map +1 -1
- package/dist/components/GenericModelList.js +5 -5
- package/dist/components/GenericRelatedModelList.d.ts +3 -2
- package/dist/components/GenericRelatedModelList.d.ts.map +1 -1
- package/dist/components/GenericRelatedModelList.js +1 -1
- package/dist/components/GenericRelatedModelListTable.d.ts +3 -2
- package/dist/components/GenericRelatedModelListTable.d.ts.map +1 -1
- package/dist/components/GenericRelatedModelListTable.js +2 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +71 -3
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { JSX } from 'react';
|
|
2
2
|
import { GridRowId, GridRenderCellParams } from '@mui/x-data-grid';
|
|
3
3
|
import * as Yup from 'yup';
|
|
4
4
|
import { SxProps } from '@mui/material';
|
|
@@ -63,6 +63,7 @@ interface DataGridDesktopProps {
|
|
|
63
63
|
setSnackBar: React.Dispatch<React.SetStateAction<Item>>;
|
|
64
64
|
yupValidationSchema: Yup.AnySchema | null;
|
|
65
65
|
}
|
|
66
|
-
declare
|
|
67
|
-
|
|
66
|
+
declare function DataGridDesktop({ schema, dataGrid, setDataGrid, rowCount, columns, model, name, indexField, addExistingModel, indexFieldMinWidth, indexFieldBasePath, indexFieldViewBasePath, stateToLink, minWidth, loading, modelParent, modelParentId, customColumnOperations, customFieldFormLayouts, customLinkDestination, LinkComponent, onProcessRow, onDataChange, onEditModel, isEditable, hasBulkSelect, onSelectActions, isAutoHeight, hideFooterPagination, setVisibleRows, paginationModel, setPaginationModel, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions, customActions, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, optionsAC: optionsACExternal, emptyItem, handleDeleteClick, setSnackBar, yupValidationSchema, }: DataGridDesktopProps): JSX.Element;
|
|
67
|
+
declare const _default: React.MemoExoticComponent<typeof DataGridDesktop>;
|
|
68
|
+
export default _default;
|
|
68
69
|
//# sourceMappingURL=DataGridDesktop.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataGridDesktop.d.ts","sourceRoot":"","sources":["../../../src/components/DataGridBySchemaEditable/DataGridDesktop.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"DataGridDesktop.d.ts","sourceRoot":"","sources":["../../../src/components/DataGridBySchemaEditable/DataGridDesktop.tsx"],"names":[],"mappings":"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"}
|
|
@@ -70,7 +70,7 @@ const GridPatternInput_1 = require("./GridPatternInput");
|
|
|
70
70
|
const BooleanInputCell_1 = require("./BooleanInputCell");
|
|
71
71
|
const FooterToolbar_1 = require("./FooterToolbar");
|
|
72
72
|
const APIWrapperContext_1 = require("../../context/APIWrapperContext");
|
|
73
|
-
|
|
73
|
+
function DataGridDesktop({ schema, dataGrid, setDataGrid, rowCount = 0, columns, model, name = Math.floor(Math.random() * 1000000).toString(), indexField = 'nome', addExistingModel, indexFieldMinWidth = 350, indexFieldBasePath = '', indexFieldViewBasePath, stateToLink = {}, minWidth = 80, loading, modelParent, modelParentId, customColumnOperations, customFieldFormLayouts, customLinkDestination, LinkComponent, onProcessRow, onDataChange, onEditModel, isEditable = false, hasBulkSelect = false, onSelectActions, isAutoHeight = false, hideFooterPagination = false, setVisibleRows, paginationModel = undefined, setPaginationModel = undefined, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions = ['editInline', 'remove'], customActions, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, optionsAC: optionsACExternal, emptyItem, handleDeleteClick, setSnackBar, yupValidationSchema, }) {
|
|
74
74
|
const { serverEndPoint } = (0, DRFReactBySchemaContext_1.useDRFReactBySchema)();
|
|
75
75
|
const apiContext = (0, APIWrapperContext_1.useAPIWrapper)();
|
|
76
76
|
const [preparedColumns, setPreparedColumns] = (0, react_1.useState)(null);
|
|
@@ -84,7 +84,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
84
84
|
if (!onEditModel) {
|
|
85
85
|
onEditModel = apiContext.onEditModel;
|
|
86
86
|
}
|
|
87
|
-
const updateOptionsAC = () => __awaiter(
|
|
87
|
+
const updateOptionsAC = () => __awaiter(this, void 0, void 0, function* () {
|
|
88
88
|
optionsAC.current = {};
|
|
89
89
|
for (const col of columns) {
|
|
90
90
|
if (optionsACExternal && col.field in optionsACExternal) {
|
|
@@ -126,7 +126,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
128
|
});
|
|
129
|
-
const initColumns = () => __awaiter(
|
|
129
|
+
const initColumns = () => __awaiter(this, void 0, void 0, function* () {
|
|
130
130
|
const actionCols = [];
|
|
131
131
|
if (isEditable) {
|
|
132
132
|
const handleSaveClick = (id) => () => {
|
|
@@ -210,7 +210,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
210
210
|
});
|
|
211
211
|
}
|
|
212
212
|
const cols = [...actionCols, ...columns];
|
|
213
|
-
const colsPromises = cols.map((col) => __awaiter(
|
|
213
|
+
const colsPromises = cols.map((col) => __awaiter(this, void 0, void 0, function* () {
|
|
214
214
|
if (!schema[col.field]) {
|
|
215
215
|
return col;
|
|
216
216
|
}
|
|
@@ -445,7 +445,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
445
445
|
}
|
|
446
446
|
}
|
|
447
447
|
};
|
|
448
|
-
const bulkUpdateData = (newData) => __awaiter(
|
|
448
|
+
const bulkUpdateData = (newData) => __awaiter(this, void 0, void 0, function* () {
|
|
449
449
|
const promises = [];
|
|
450
450
|
const ids = [];
|
|
451
451
|
newData.map((item) => {
|
|
@@ -482,7 +482,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
482
482
|
};
|
|
483
483
|
});
|
|
484
484
|
});
|
|
485
|
-
const bulkDeleteData = (ids) => __awaiter(
|
|
485
|
+
const bulkDeleteData = (ids) => __awaiter(this, void 0, void 0, function* () {
|
|
486
486
|
const promises = [];
|
|
487
487
|
ids.map((id) => {
|
|
488
488
|
promises.push((0, api_1.deleteData)(model, serverEndPoint, id));
|
|
@@ -507,7 +507,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
507
507
|
};
|
|
508
508
|
});
|
|
509
509
|
});
|
|
510
|
-
const bulkCreateData = (ids) => __awaiter(
|
|
510
|
+
const bulkCreateData = (ids) => __awaiter(this, void 0, void 0, function* () {
|
|
511
511
|
handleAddItems(ids.length);
|
|
512
512
|
setSelectionModel([]);
|
|
513
513
|
setSelectionModelIds([]);
|
|
@@ -522,16 +522,14 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
522
522
|
initColumns();
|
|
523
523
|
});
|
|
524
524
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
525
|
-
}, [rowModesModel,
|
|
526
|
-
const processRowUpdate = (editedRow) => __awaiter(
|
|
525
|
+
}, [rowModesModel, columns]);
|
|
526
|
+
const processRowUpdate = (editedRow) => __awaiter(this, void 0, void 0, function* () {
|
|
527
527
|
if (!preparedColumns || !yupValidationSchema) {
|
|
528
528
|
return false;
|
|
529
529
|
}
|
|
530
|
-
console.log('processRowUpdate2');
|
|
531
530
|
setDataGridLoading(true);
|
|
532
531
|
const indexCol = preparedColumns.find((col) => col.field === indexField);
|
|
533
532
|
processingRow.current = editedRow.id;
|
|
534
|
-
console.log(`processRowUpdate: editedRow.id: ${editedRow.id}`);
|
|
535
533
|
yield yupValidationSchema.validate(editedRow);
|
|
536
534
|
const onlyAddExisting = indexField &&
|
|
537
535
|
(0, utils_1.isTmpId)(editedRow.id) &&
|
|
@@ -674,8 +672,7 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
674
672
|
const hasValueFormatter = (indexColumn === null || indexColumn === void 0 ? void 0 : indexColumn.valueFormatter) !== undefined;
|
|
675
673
|
const isIndexFieldEditable = !optionsAC.current || !(indexField in optionsAC.current) || hasValueFormatter;
|
|
676
674
|
return (isRowInEditMode &&
|
|
677
|
-
(isPermanentRow ||
|
|
678
|
-
((0, utils_1.isTmpId)(params.row.id) && (isIndexField || isIndexFieldEditable))));
|
|
675
|
+
(isPermanentRow || ((0, utils_1.isTmpId)(params.row.id) && (isIndexField || isIndexFieldEditable))));
|
|
679
676
|
}, checkboxSelection: checkboxSelection, onSelectionModelChange: (newSelectionModel) => {
|
|
680
677
|
const selectedData = dataGrid.data.filter((item) => newSelectionModel.includes(item.id));
|
|
681
678
|
setSelectionModel(selectedData);
|
|
@@ -755,6 +752,5 @@ const DataGridDesktop = (0, react_1.forwardRef)(({ schema, dataGrid, setDataGrid
|
|
|
755
752
|
}
|
|
756
753
|
}
|
|
757
754
|
: undefined }))));
|
|
758
|
-
}
|
|
759
|
-
|
|
760
|
-
exports.default = DataGridDesktop;
|
|
755
|
+
}
|
|
756
|
+
exports.default = react_1.default.memo(DataGridDesktop, utils_1.shouldMemoUpdate);
|
|
@@ -40,6 +40,7 @@ interface GenericModelListProps {
|
|
|
40
40
|
extraValidators?: Item;
|
|
41
41
|
MobileListRenderItem?: MobileListRenderItemType;
|
|
42
42
|
}
|
|
43
|
-
declare
|
|
44
|
-
|
|
43
|
+
declare function GenericModelList({ model, columnFields, hiddenFields, creatableFields, disabledFields, minWidthFields, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, onProcessRow, onDataChange, reloadAfterRowUpdate, customColumnOperations, customFieldFormLayouts, customLinkDestination, isEditable, hasBulkSelect, onSelectActions, sumRows, isAutoHeight, forceReload, LinkComponent, hasHeader, paginationMode, defaultFilter, queryParams, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions, customActions, optionsAC, defaultValues, disableScreenLoading, extraValidators, MobileListRenderItem, }: GenericModelListProps): React.JSX.Element;
|
|
44
|
+
declare const _default: React.MemoExoticComponent<typeof GenericModelList>;
|
|
45
|
+
export default _default;
|
|
45
46
|
//# sourceMappingURL=GenericModelList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericModelList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAOnD,OAAO,EAAa,eAAe,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAMpF,OAAO,EACL,0BAA0B,EAG1B,UAAU,EACV,IAAI,EACJ,eAAe,EACf,SAAS,EACT,eAAe,EACf,YAAY,EAEZ,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,WAAW,CAAC;AAMnB,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,sBAAsB,CAAC,EAAE,CACvB,MAAM,EAAE,0BAA0B,KAC/B,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACtE,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IAC3D,qBAAqB,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,MAAM,CAAC;IAC5D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACpC,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,IAAI,CAAC;IAEvB,oBAAoB,CAAC,EAAE,wBAAwB,CAAC;CACjD;AAED,
|
|
1
|
+
{"version":3,"file":"GenericModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericModelList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAOnD,OAAO,EAAa,eAAe,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAMpF,OAAO,EACL,0BAA0B,EAG1B,UAAU,EACV,IAAI,EACJ,eAAe,EACf,SAAS,EACT,eAAe,EACf,YAAY,EAEZ,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,WAAW,CAAC;AAMnB,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,sBAAsB,CAAC,EAAE,CACvB,MAAM,EAAE,0BAA0B,KAC/B,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACtE,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IAC3D,qBAAqB,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,MAAM,CAAC;IAC5D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACpC,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,IAAI,CAAC;IAEvB,oBAAoB,CAAC,EAAE,wBAAwB,CAAC;CACjD;AAED,iBAAS,gBAAgB,CAAC,EACxB,KAAK,EACL,YAAY,EACZ,YAAiB,EACjB,eAAe,EACf,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,UAAU,EACV,aAAqB,EACrB,eAAe,EACf,OAAO,EACP,YAAmB,EACnB,WAAmB,EACnB,aAAoB,EACpB,SAAiB,EACjB,cAAyB,EACzB,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,OAAO,EACP,aAAa,EACb,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,eAAe,EAEf,oBAAoB,GACrB,EAAE,qBAAqB,qBA0NvB;;AAED,wBAA8D"}
|
|
@@ -60,7 +60,7 @@ const utils_1 = require("../utils");
|
|
|
60
60
|
const api_1 = require("../api");
|
|
61
61
|
const DRFReactBySchemaContext_1 = require("../context/DRFReactBySchemaContext");
|
|
62
62
|
const APIWrapperContext_1 = require("../context/APIWrapperContext");
|
|
63
|
-
|
|
63
|
+
function GenericModelList({ model, columnFields, hiddenFields = [], creatableFields, disabledFields, minWidthFields, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, onProcessRow, onDataChange, reloadAfterRowUpdate, customColumnOperations, customFieldFormLayouts, customLinkDestination, isEditable, hasBulkSelect = false, onSelectActions, sumRows, isAutoHeight = true, forceReload = false, LinkComponent = null, hasHeader = false, paginationMode = 'client', defaultFilter, queryParams, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions, customActions, optionsAC, defaultValues, disableScreenLoading, extraValidators, MobileListRenderItem, }) {
|
|
64
64
|
const { serverEndPoint, isInBatches, firstBatchLength } = (0, DRFReactBySchemaContext_1.useDRFReactBySchema)();
|
|
65
65
|
const { onEditModel } = (0, APIWrapperContext_1.useAPIWrapper)();
|
|
66
66
|
const [data, setData] = (0, react_1.useState)(false);
|
|
@@ -68,7 +68,7 @@ const GenericModelList = ({ model, columnFields, hiddenFields = [], creatableFie
|
|
|
68
68
|
const [visibleRows, setVisibleRows] = (0, react_1.useState)([]);
|
|
69
69
|
const [hideFooterPagination, setHideFooterPagination] = (0, react_1.useState)(false);
|
|
70
70
|
const [paginationModel, setPaginationModel] = (0, react_1.useState)(paginationMode === 'server' ? { page: 0, pageSize: 100 } : undefined);
|
|
71
|
-
const finalCustomColumnOperations = (column) => __awaiter(
|
|
71
|
+
const finalCustomColumnOperations = (column) => __awaiter(this, void 0, void 0, function* () {
|
|
72
72
|
if (minWidthFields) {
|
|
73
73
|
if (column.field in minWidthFields) {
|
|
74
74
|
column.minWidth = minWidthFields[column.field];
|
|
@@ -79,7 +79,7 @@ const GenericModelList = ({ model, columnFields, hiddenFields = [], creatableFie
|
|
|
79
79
|
}
|
|
80
80
|
return column;
|
|
81
81
|
});
|
|
82
|
-
const loadObjectList = () => __awaiter(
|
|
82
|
+
const loadObjectList = () => __awaiter(this, void 0, void 0, function* () {
|
|
83
83
|
if (!disableScreenLoading) {
|
|
84
84
|
setLoading(true);
|
|
85
85
|
}
|
|
@@ -182,5 +182,5 @@ const GenericModelList = ({ model, columnFields, hiddenFields = [], creatableFie
|
|
|
182
182
|
: 0, extraValidators: extraValidators, MobileListRenderItem: MobileListRenderItem })),
|
|
183
183
|
paginationMode === 'client' ? (react_1.default.createElement(DataTotals_1.default, { data: data.data, sumRows: sumRows, visibleRows: visibleRows })) : (react_1.default.createElement(DataTotalsServer_1.default, { sumRows: sumRows, totals: data.sumRowsTotals })))) : (react_1.default.createElement(Backdrop_1.default, { invisible: true, sx: { color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }, open: loading },
|
|
184
184
|
react_1.default.createElement(CircularProgress_1.default, null)))));
|
|
185
|
-
}
|
|
186
|
-
exports.default = GenericModelList;
|
|
185
|
+
}
|
|
186
|
+
exports.default = react_1.default.memo(GenericModelList, utils_1.shouldMemoUpdate);
|
|
@@ -40,6 +40,7 @@ interface GenericRelatedModelListProps {
|
|
|
40
40
|
extraValidators?: Item;
|
|
41
41
|
MobileListRenderItem?: MobileListRenderItemType;
|
|
42
42
|
}
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
declare function GenericRelatedModelList({ model, id, relatedModel, columnFields, hiddenFields, creatableFields, disabledFields, usuaria, minWidthFields, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, label, onProcessRow, onDataChange, reloadAfterRowUpdate, customColumnOperations, isEditable, hasBulkSelect, onSelectActions, sumRows, isAutoHeight, isInBatches, noCardWrapper, paginationMode, defaultFilter, queryParams, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, }: GenericRelatedModelListProps): React.JSX.Element;
|
|
44
|
+
declare const _default: React.MemoExoticComponent<typeof GenericRelatedModelList>;
|
|
45
|
+
export default _default;
|
|
45
46
|
//# sourceMappingURL=GenericRelatedModelList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericRelatedModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,eAAe,EAAa,MAAM,kBAAkB,CAAC;AAG9D,OAAO,EACL,UAAU,
|
|
1
|
+
{"version":3,"file":"GenericRelatedModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -45,7 +45,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
45
45
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
46
|
};
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
-
exports.default = GenericRelatedModelList;
|
|
49
48
|
const react_1 = __importStar(require("react"));
|
|
50
49
|
const Card_1 = __importDefault(require("@mui/material/Card"));
|
|
51
50
|
const CardHeader_1 = __importDefault(require("@mui/material/CardHeader"));
|
|
@@ -165,3 +164,4 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
165
164
|
react_1.default.createElement(CardContent_1.default, null,
|
|
166
165
|
react_1.default.createElement(GenericRelatedModelListTable_1.default, { data: data, relatedModel: relatedModel, model: model, loading: loading, id: id, indexField: indexField || '', indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, addExistingModel: addExistingModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, onEditModel: onEditModel, onDeleteRelatedModel: onDeleteRelatedModel, finalCustomColumnOperations: finalCustomColumnOperations, setVisibleRows: setVisibleRows, visibleRows: visibleRows, isAutoHeight: isAutoHeight, tableAutoHeight: tableAutoHeight, hideFooterPagination: hideFooterPagination, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, onProcessRow: onProcessRow, onDataChange: onDataChangeLocal, sumRows: sumRows, paginationMode: paginationMode, paginationModel: paginationModel, setPaginationModel: setPaginationModel, actions: actions, optionsAC: optionsAC, defaultValues: defaultValues, LinkComponent: LinkComponent, extraValidators: extraValidators, MobileListRenderItem: MobileListRenderItem }))))))));
|
|
167
166
|
}
|
|
167
|
+
exports.default = react_1.default.memo(GenericRelatedModelList, utils_1.shouldMemoUpdate);
|
|
@@ -39,6 +39,7 @@ interface GenericRelatedModelListTableProps {
|
|
|
39
39
|
extraValidators?: Item;
|
|
40
40
|
MobileListRenderItem?: MobileListRenderItemType;
|
|
41
41
|
}
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
declare function GenericRelatedModelListTable({ data, relatedModel, model, loading, id, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, isEditable, onEditModel, finalCustomColumnOperations, setVisibleRows, visibleRows, isAutoHeight, hideFooterPagination, hideFooterComponent, hideToolbarComponent, onProcessRow, onDataChange, sumRows, paginationMode, paginationModel, setPaginationModel, hasBulkSelect, onSelectActions, tableAutoHeight, actions, customActions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, }: GenericRelatedModelListTableProps): React.JSX.Element;
|
|
43
|
+
declare const _default: React.MemoExoticComponent<typeof GenericRelatedModelListTable>;
|
|
44
|
+
export default _default;
|
|
44
45
|
//# sourceMappingURL=GenericRelatedModelListTable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericRelatedModelListTable.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelListTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAK7C,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACzF,OAAO,EACL,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,0BAA0B,EAC1B,EAAE,EACF,IAAI,EACJ,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,SAAS,EACT,eAAe,EACf,WAAW,EACZ,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"GenericRelatedModelListTable.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelListTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.default = GenericRelatedModelListTable;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const Box_1 = __importDefault(require("@mui/material/Box"));
|
|
9
8
|
const Backdrop_1 = __importDefault(require("@mui/material/Backdrop"));
|
|
@@ -12,6 +11,7 @@ const DataGridBySchemaEditable_1 = __importDefault(require("./DataGridBySchemaEd
|
|
|
12
11
|
const DataTotals_1 = __importDefault(require("./DataTotals"));
|
|
13
12
|
const DataTotalsServer_1 = __importDefault(require("./DataTotalsServer"));
|
|
14
13
|
const styles_1 = require("../styles");
|
|
14
|
+
const utils_1 = require("../utils");
|
|
15
15
|
function GenericRelatedModelListTable({ data, relatedModel, model, loading, id, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, isEditable, onEditModel, finalCustomColumnOperations, setVisibleRows, visibleRows, isAutoHeight, hideFooterPagination, hideFooterComponent, hideToolbarComponent, onProcessRow, onDataChange, sumRows, paginationMode = 'client', paginationModel, setPaginationModel, hasBulkSelect, onSelectActions, tableAutoHeight, actions, customActions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, }) {
|
|
16
16
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
17
17
|
data.columns ? (react_1.default.createElement(Box_1.default, { sx: tableAutoHeight ? {} : styles_1.Layout.dataGridFixedHeight },
|
|
@@ -23,3 +23,4 @@ function GenericRelatedModelListTable({ data, relatedModel, model, loading, id,
|
|
|
23
23
|
react_1.default.createElement(CircularProgress_1.default, null))),
|
|
24
24
|
paginationMode === 'client' ? (react_1.default.createElement(DataTotals_1.default, { data: data.data, sumRows: sumRows, visibleRows: visibleRows })) : (react_1.default.createElement(DataTotalsServer_1.default, { sumRows: sumRows, totals: data.sumRowsTotals }))));
|
|
25
25
|
}
|
|
26
|
+
exports.default = react_1.default.memo(GenericRelatedModelListTable, utils_1.shouldMemoUpdate);
|
package/dist/utils.d.ts
CHANGED
|
@@ -35,4 +35,5 @@ export declare function initViewColumns({ schema, columns, customColumnOperation
|
|
|
35
35
|
columns: GridEnrichedBySchemaColDef[];
|
|
36
36
|
customColumnOperations?: (p: GridEnrichedBySchemaColDef) => GridEnrichedBySchemaColDef | Promise<GridEnrichedBySchemaColDef>;
|
|
37
37
|
}): Promise<any>;
|
|
38
|
+
export declare function shouldMemoUpdate<T extends object>(prevProps: Readonly<T>, nextProps: Readonly<T>): boolean;
|
|
38
39
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EACL,MAAM,EACN,WAAW,EAEX,YAAY,EACZ,0BAA0B,EAC1B,IAAI,EACJ,UAAU,EACX,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,WAAW,EAAE,YAyBzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,8BASjF,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,kBAAkB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EACL,MAAM,EACN,WAAW,EAEX,YAAY,EACZ,0BAA0B,EAC1B,IAAI,EACJ,UAAU,EACX,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,WAAW,EAAE,YAyBzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,8BASjF,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,kBAAkB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,SA8ClF,CAAC;AAsDF,eAAO,MAAM,+BAA+B,GAAI,sDAM7C;IACD,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,QAiEA,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,4CAKxB;IACD,MAAM,EAAE,IAAI,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;;;CAkBA,CAAC;AAEF,eAAO,MAAM,QAAQ,cAEpB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,YAK7D,CAAC;AAEF,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,YAQtE;AAED,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,WAqB5C,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,mDA0B7E;AAED,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,EAAE,sBAAoB,WAWhE,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,GAAG,IAAI,WAa1C,CAAC;AAEF,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,eAAe,GAAG,SAAS,EAC1C,MAAM,EAAE,eAAe,GAAG,SAAS,OAyBpC;AAED,wBAAsB,eAAe,CAAC,EACpC,MAAM,EACN,OAAO,EACP,sBAAsB,GACvB,EAAE;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,0BAA0B,EAAE,CAAC;IACtC,sBAAsB,CAAC,EAAE,CACvB,CAAC,EAAE,0BAA0B,KAC1B,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACvE,gBAqFA;AA0CD,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAC/C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EACtB,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,GACrB,OAAO,CAwCT"}
|
package/dist/utils.js
CHANGED
|
@@ -50,6 +50,7 @@ exports.reducer = reducer;
|
|
|
50
50
|
exports.buildDateFormatBySchema = buildDateFormatBySchema;
|
|
51
51
|
exports.mergeFilterItems = mergeFilterItems;
|
|
52
52
|
exports.initViewColumns = initViewColumns;
|
|
53
|
+
exports.shouldMemoUpdate = shouldMemoUpdate;
|
|
53
54
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
54
55
|
const Yup = __importStar(require("yup"));
|
|
55
56
|
const string_mask_1 = __importDefault(require("string-mask"));
|
|
@@ -131,7 +132,6 @@ const populateValues = ({ data, schema }) => {
|
|
|
131
132
|
}
|
|
132
133
|
values[key] = data[key];
|
|
133
134
|
}
|
|
134
|
-
// console.log(values);
|
|
135
135
|
return values;
|
|
136
136
|
};
|
|
137
137
|
exports.populateValues = populateValues;
|
|
@@ -194,7 +194,6 @@ const buildGenericYupValidationSchema = ({ data, schema, many = false, skipField
|
|
|
194
194
|
if (!data || !(key in data) || key === 'id' || skipFields.includes(key)) {
|
|
195
195
|
continue;
|
|
196
196
|
}
|
|
197
|
-
// console.log({ key, field, data: data[key] });
|
|
198
197
|
// OneToMany or ManyToMany:
|
|
199
198
|
if (field.type === 'field' && field.child) {
|
|
200
199
|
yupValidator[key] = (0, exports.buildGenericYupValidationSchema)({
|
|
@@ -240,7 +239,6 @@ const buildGenericYupValidationSchema = ({ data, schema, many = false, skipField
|
|
|
240
239
|
}
|
|
241
240
|
}
|
|
242
241
|
}
|
|
243
|
-
// console.log({ yupValidator });
|
|
244
242
|
return many ? Yup.array().of(Yup.object().shape(yupValidator)) : Yup.object().shape(yupValidator);
|
|
245
243
|
};
|
|
246
244
|
exports.buildGenericYupValidationSchema = buildGenericYupValidationSchema;
|
|
@@ -463,3 +461,73 @@ function initViewColumns(_a) {
|
|
|
463
461
|
return finalCols;
|
|
464
462
|
});
|
|
465
463
|
}
|
|
464
|
+
function deepEqual(a, b) {
|
|
465
|
+
if (!a && !b) {
|
|
466
|
+
return true;
|
|
467
|
+
}
|
|
468
|
+
if (a === b) {
|
|
469
|
+
return true;
|
|
470
|
+
}
|
|
471
|
+
if (typeof a === 'function' && typeof b === 'function') {
|
|
472
|
+
if (a.toString() !== b.toString()) {
|
|
473
|
+
return false;
|
|
474
|
+
}
|
|
475
|
+
return true;
|
|
476
|
+
}
|
|
477
|
+
if (a === null || b === null || typeof a !== 'object' || typeof b !== 'object') {
|
|
478
|
+
return false;
|
|
479
|
+
}
|
|
480
|
+
// Handle arrays
|
|
481
|
+
if (Array.isArray(a) && Array.isArray(b)) {
|
|
482
|
+
if (a.length !== b.length) {
|
|
483
|
+
return false;
|
|
484
|
+
}
|
|
485
|
+
return a.every((val, i) => deepEqual(val, b[i]));
|
|
486
|
+
}
|
|
487
|
+
// Handle objects
|
|
488
|
+
const keysA = Object.keys(a);
|
|
489
|
+
const keysB = Object.keys(b);
|
|
490
|
+
if (keysA.length !== keysB.length) {
|
|
491
|
+
return false;
|
|
492
|
+
}
|
|
493
|
+
return keysA.every((key) => {
|
|
494
|
+
const valA = a[key];
|
|
495
|
+
const valB = b[key];
|
|
496
|
+
return deepEqual(valA, valB);
|
|
497
|
+
});
|
|
498
|
+
}
|
|
499
|
+
function shouldMemoUpdate(prevProps, nextProps) {
|
|
500
|
+
const propKeys = new Set([...Object.keys(prevProps), ...Object.keys(nextProps)]);
|
|
501
|
+
for (const key of propKeys) {
|
|
502
|
+
if (typeof key === 'string' && key.startsWith('_'))
|
|
503
|
+
continue;
|
|
504
|
+
const prevVal = prevProps[key];
|
|
505
|
+
const nextVal = nextProps[key];
|
|
506
|
+
// Fast path for identical references
|
|
507
|
+
if (prevVal === nextVal)
|
|
508
|
+
continue;
|
|
509
|
+
// Handle null/undefined mismatches
|
|
510
|
+
if (prevVal == null || nextVal == null) {
|
|
511
|
+
return false;
|
|
512
|
+
}
|
|
513
|
+
// Special handling for functions
|
|
514
|
+
if (typeof prevVal === 'function' && typeof nextVal === 'function') {
|
|
515
|
+
if (prevVal.toString() !== nextVal.toString()) {
|
|
516
|
+
return false;
|
|
517
|
+
}
|
|
518
|
+
continue;
|
|
519
|
+
}
|
|
520
|
+
// Deep compare objects
|
|
521
|
+
if (typeof prevVal === 'object' && typeof nextVal === 'object') {
|
|
522
|
+
if (!deepEqual(prevVal, nextVal)) {
|
|
523
|
+
return false;
|
|
524
|
+
}
|
|
525
|
+
continue;
|
|
526
|
+
}
|
|
527
|
+
// Final comparison for primitives
|
|
528
|
+
if (prevVal !== nextVal) {
|
|
529
|
+
return false;
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
return true;
|
|
533
|
+
}
|
package/package.json
CHANGED