drf-react-by-schema 0.22.4 → 0.23.0
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/@types/index.d.ts +25 -14
- package/dist/@types/index.d.ts.map +1 -1
- package/dist/api.d.ts +7 -11
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +50 -28
- package/dist/components/DataGridBySchemaEditable/BooleanInputCell.d.ts +4 -21
- package/dist/components/DataGridBySchemaEditable/BooleanInputCell.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/BooleanInputCell.js +64 -19
- package/dist/components/DataGridBySchemaEditable/CustomToolbar.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/CustomToolbar.js +6 -4
- package/dist/components/DataGridBySchemaEditable/DataGridDesktop.d.ts +8 -8
- package/dist/components/DataGridBySchemaEditable/DataGridDesktop.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/DataGridDesktop.js +234 -737
- package/dist/components/DataGridBySchemaEditable/DataGridMobile.js +1 -1
- package/dist/components/DataGridBySchemaEditable/FileInputCell.d.ts +4 -21
- package/dist/components/DataGridBySchemaEditable/FileInputCell.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/FileInputCell.js +62 -21
- package/dist/components/DataGridBySchemaEditable/FooterToolbar.d.ts +5 -1
- package/dist/components/DataGridBySchemaEditable/FooterToolbar.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/FooterToolbar.js +18 -2
- package/dist/components/DataGridBySchemaEditable/GridDateInput.d.ts +4 -9
- package/dist/components/DataGridBySchemaEditable/GridDateInput.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/GridDateInput.js +125 -5
- package/dist/components/DataGridBySchemaEditable/GridDecimalInput.d.ts +4 -9
- package/dist/components/DataGridBySchemaEditable/GridDecimalInput.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/GridDecimalInput.js +51 -7
- package/dist/components/DataGridBySchemaEditable/GridGenericInput.d.ts +8 -0
- package/dist/components/DataGridBySchemaEditable/GridGenericInput.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/GridGenericInput.js +30 -0
- package/dist/components/DataGridBySchemaEditable/GridPatternInput.d.ts +4 -7
- package/dist/components/DataGridBySchemaEditable/GridPatternInput.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/GridPatternInput.js +59 -5
- package/dist/components/DataGridBySchemaEditable/InputInterval.d.ts +2 -2
- package/dist/components/DataGridBySchemaEditable/InputInterval.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/InputInterval.js +23 -4
- package/dist/components/DataGridBySchemaEditable/SelectEditInputCell.d.ts +4 -1
- package/dist/components/DataGridBySchemaEditable/SelectEditInputCell.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable/SelectEditInputCell.js +72 -25
- package/dist/components/DataGridBySchemaEditable/hooks/useDataGridActions.d.ts +34 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useDataGridActions.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useDataGridActions.js +170 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useOptionsAC.d.ts +14 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useOptionsAC.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useOptionsAC.js +67 -0
- package/dist/components/DataGridBySchemaEditable/hooks/usePreparedColumns.d.ts +9 -0
- package/dist/components/DataGridBySchemaEditable/hooks/usePreparedColumns.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/hooks/usePreparedColumns.js +68 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useProcessRowUpdate.d.ts +33 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useProcessRowUpdate.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useProcessRowUpdate.js +219 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useRowMode.d.ts +18 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useRowMode.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/hooks/useRowMode.js +43 -0
- package/dist/components/DataGridBySchemaEditable/utils/columnFactory.d.ts +30 -0
- package/dist/components/DataGridBySchemaEditable/utils/columnFactory.d.ts.map +1 -0
- package/dist/components/DataGridBySchemaEditable/utils/columnFactory.js +180 -0
- package/dist/components/DataGridBySchemaEditable.d.ts +2 -1
- package/dist/components/DataGridBySchemaEditable.d.ts.map +1 -1
- package/dist/components/DataGridBySchemaEditable.js +5 -4
- package/dist/components/GenericModelList.d.ts.map +1 -1
- package/dist/components/GenericModelList.js +13 -8
- package/dist/components/GenericRelatedModelList.d.ts.map +1 -1
- package/dist/components/GenericRelatedModelList.js +13 -8
- package/dist/components/GenericRelatedModelListTable.d.ts +3 -2
- package/dist/components/GenericRelatedModelListTable.d.ts.map +1 -1
- package/dist/components/GenericRelatedModelListTable.js +3 -3
- package/dist/components/details/DetailBySchema.js +2 -2
- package/dist/components/details/DetailFieldBySchema.d.ts.map +1 -1
- package/dist/components/details/DetailFieldBySchema.js +3 -0
- package/dist/components/forms/DialogFormBySchema.d.ts +4 -3
- package/dist/components/forms/DialogFormBySchema.d.ts.map +1 -1
- package/dist/components/forms/FieldBySchema.d.ts.map +1 -1
- package/dist/components/forms/Form.d.ts +4 -3
- package/dist/components/forms/Form.d.ts.map +1 -1
- package/dist/components/forms/Form.js +3 -2
- package/dist/components/forms/FormBySchema.d.ts +3 -2
- package/dist/components/forms/FormBySchema.d.ts.map +1 -1
- package/dist/components/forms/FormBySchema.js +3 -2
- package/dist/context/APIWrapper.d.ts.map +1 -1
- package/dist/context/APIWrapper.js +35 -29
- package/dist/context/APIWrapperContext.d.ts +17 -14
- package/dist/context/APIWrapperContext.d.ts.map +1 -1
- package/dist/context/APIWrapperContext.js +12 -10
- package/dist/context/DRFReactBySchemaProvider.d.ts.map +1 -1
- package/dist/context/DRFReactBySchemaProvider.js +2 -1
- package/dist/styles/grid.d.ts +3 -0
- package/dist/styles/grid.d.ts.map +1 -0
- package/dist/styles/grid.js +42 -0
- package/dist/styles/theme.d.ts.map +1 -1
- package/dist/styles/theme.js +17 -7
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +24 -28
- package/package.json +9 -8
|
@@ -45,7 +45,7 @@ const APIWrapperContext_1 = require("../context/APIWrapperContext");
|
|
|
45
45
|
const ConfirmDialog_1 = require("./DataGridBySchemaEditable/ConfirmDialog");
|
|
46
46
|
const DataGridDesktop_1 = __importDefault(require("./DataGridBySchemaEditable/DataGridDesktop"));
|
|
47
47
|
const DataGridMobile_1 = __importDefault(require("./DataGridBySchemaEditable/DataGridMobile"));
|
|
48
|
-
const DataGridBySchemaEditable = (0, react_1.forwardRef)(({ schema, data, 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, defaultValues = {}, hideFooterPagination = false, setVisibleRows, paginationModel = undefined, setPaginationModel = undefined, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions = ['editInline', 'remove'], customActions, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, optionsAC, extraValidators, MobileListRenderItem, MobileRenderNoResults, }, _) => {
|
|
48
|
+
const DataGridBySchemaEditable = (0, react_1.forwardRef)(({ schema, data, rowCount = 0, columns, columnVisibilityModel, 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, defaultValues = {}, hideFooterPagination = false, setVisibleRows, paginationModel = undefined, setPaginationModel = undefined, hideFooterComponent, hideToolbarComponent, tableAutoHeight, actions = ['editInline', 'remove'], customActions, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, optionsAC, extraValidators, MobileListRenderItem, MobileRenderNoResults, }, _) => {
|
|
49
49
|
const wrapperRef = (0, react_1.useRef)(null);
|
|
50
50
|
const apiContext = (0, APIWrapperContext_1.useAPIWrapper)();
|
|
51
51
|
const initialSnackBar = {
|
|
@@ -86,7 +86,8 @@ const DataGridBySchemaEditable = (0, react_1.forwardRef)(({ schema, data, rowCou
|
|
|
86
86
|
idToRemove.current = null;
|
|
87
87
|
setConfirmDialogOpen(false);
|
|
88
88
|
};
|
|
89
|
-
const handleDeleteClick = (id) =>
|
|
89
|
+
const handleDeleteClick = (id) => {
|
|
90
|
+
console.log('oi???');
|
|
90
91
|
idToRemove.current = id;
|
|
91
92
|
setConfirmDialogOpen(true);
|
|
92
93
|
};
|
|
@@ -144,8 +145,8 @@ const DataGridBySchemaEditable = (0, react_1.forwardRef)(({ schema, data, rowCou
|
|
|
144
145
|
}
|
|
145
146
|
return () => observer.disconnect();
|
|
146
147
|
}, []);
|
|
147
|
-
return (react_1.default.createElement(Box_1.default, { sx: { height: '100%' }, ref: !apiContext.isMobile || !MobileListRenderItem ? wrapperRef : undefined },
|
|
148
|
-
apiContext.isMobile && MobileListRenderItem ? (react_1.default.createElement(DataGridMobile_1.default, { name: name, data: data, schema: schema, columns: columns, customColumnOperations: customColumnOperations, MobileListRenderItem: MobileListRenderItem, MobileRenderNoResults: MobileRenderNoResults, hideQuickFilterBar: hideQuickFilterBar, paginationModel: paginationModel, setPaginationModel: setPaginationModel, rowCount: rowCount })) : (react_1.default.createElement(DataGridDesktop_1.default, { schema: schema, dataGrid: dataGrid, setDataGrid: setDataGrid, rowCount: rowCount, columns: columns, model: model, name: name, indexField: indexField, addExistingModel: addExistingModel, indexFieldMinWidth: indexFieldMinWidth, indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, stateToLink: stateToLink, minWidth: minWidth, loading: loading, modelParentId: modelParentId, modelParent: modelParent, customColumnOperations: customColumnOperations, customFieldFormLayouts: customFieldFormLayouts, customLinkDestination: customLinkDestination, LinkComponent: LinkComponent, onProcessRow: onProcessRow, onDataChange: onDataChange, onEditModel: onEditModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, isAutoHeight: isAutoHeight, defaultValues: defaultValues, hideFooterPagination: hideFooterPagination, setVisibleRows: setVisibleRows, paginationModel: paginationModel, setPaginationModel: setPaginationModel, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, tableAutoHeight: tableAutoHeight, actions: actions, customActions: customActions, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, optionsAC: optionsAC, extraValidators: extraValidators, emptyItem: emptyItem, handleDeleteClick: handleDeleteClick, setSnackBar: setSnackBar, yupValidationSchema: yupValidationSchema.current })),
|
|
148
|
+
return (react_1.default.createElement(Box_1.default, { sx: { height: '100%', width: '100%', maxWidth: '100%' }, ref: !apiContext.isMobile || !MobileListRenderItem ? wrapperRef : undefined },
|
|
149
|
+
apiContext.isMobile && MobileListRenderItem ? (react_1.default.createElement(DataGridMobile_1.default, { name: name, data: data, schema: schema, columns: columns, customColumnOperations: customColumnOperations, MobileListRenderItem: MobileListRenderItem, MobileRenderNoResults: MobileRenderNoResults, hideQuickFilterBar: hideQuickFilterBar, paginationModel: paginationModel, setPaginationModel: setPaginationModel, rowCount: rowCount })) : (react_1.default.createElement(DataGridDesktop_1.default, { schema: schema, dataGrid: dataGrid, setDataGrid: setDataGrid, rowCount: rowCount, columns: columns, columnVisibilityModel: columnVisibilityModel, model: model, name: name, indexField: indexField, addExistingModel: addExistingModel, indexFieldMinWidth: indexFieldMinWidth, indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, stateToLink: stateToLink, minWidth: minWidth, loading: loading, modelParentId: modelParentId, modelParent: modelParent, customColumnOperations: customColumnOperations, customFieldFormLayouts: customFieldFormLayouts, customLinkDestination: customLinkDestination, LinkComponent: LinkComponent, onProcessRow: onProcessRow, onDataChange: onDataChange, onEditModel: onEditModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, isAutoHeight: isAutoHeight, defaultValues: defaultValues, hideFooterPagination: hideFooterPagination, setVisibleRows: setVisibleRows, paginationModel: paginationModel, setPaginationModel: setPaginationModel, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, tableAutoHeight: tableAutoHeight, actions: actions, customActions: customActions, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, optionsAC: optionsAC, extraValidators: extraValidators, emptyItem: emptyItem, handleDeleteClick: handleDeleteClick, setSnackBar: setSnackBar, yupValidationSchema: yupValidationSchema.current })),
|
|
149
150
|
react_1.default.createElement(ConfirmDialog_1.ConfirmDialog, { open: confirmDialogOpen, onClose: handleConfirmDialogClose, onConfirm: handleDeleteSave }),
|
|
150
151
|
react_1.default.createElement(Snackbar_1.default, { open: snackBar.open, autoHideDuration: 5000, onClose: () => {
|
|
151
152
|
setSnackBar(Object.assign(Object.assign({}, initialSnackBar), { open: false }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericModelList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAuB,YAAY,
|
|
1
|
+
{"version":3,"file":"GenericModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericModelList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
46
46
|
};
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
48
|
const react_1 = __importStar(require("react"));
|
|
49
|
+
const axios_1 = __importDefault(require("axios"));
|
|
49
50
|
const Box_1 = __importDefault(require("@mui/material/Box"));
|
|
50
51
|
const Typography_1 = __importDefault(require("@mui/material/Typography"));
|
|
51
52
|
const Button_1 = __importDefault(require("@mui/material/Button"));
|
|
@@ -68,6 +69,13 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
68
69
|
const [visibleRows, setVisibleRows] = (0, react_1.useState)([]);
|
|
69
70
|
const [hideFooterPagination, setHideFooterPagination] = (0, react_1.useState)(false);
|
|
70
71
|
const [paginationModel, setPaginationModel] = (0, react_1.useState)(paginationMode === 'server' ? { page: 0, pageSize: 100 } : undefined);
|
|
72
|
+
const columnVisibilityModel = (0, react_1.useMemo)(() => {
|
|
73
|
+
const model = {};
|
|
74
|
+
hiddenFields === null || hiddenFields === void 0 ? void 0 : hiddenFields.forEach((col) => {
|
|
75
|
+
model[col] = false;
|
|
76
|
+
});
|
|
77
|
+
return model;
|
|
78
|
+
}, [hiddenFields]);
|
|
71
79
|
const finalCustomColumnOperations = (0, react_1.useCallback)((column) => __awaiter(this, void 0, void 0, function* () {
|
|
72
80
|
if (minWidthFields) {
|
|
73
81
|
if (column.field in minWidthFields) {
|
|
@@ -89,7 +97,6 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
89
97
|
model,
|
|
90
98
|
serverEndPoint,
|
|
91
99
|
columnFields,
|
|
92
|
-
hiddenFields,
|
|
93
100
|
creatableFields,
|
|
94
101
|
disabledFields,
|
|
95
102
|
isInBatches,
|
|
@@ -97,13 +104,13 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
97
104
|
filter: defaultFilter,
|
|
98
105
|
};
|
|
99
106
|
const loadedData = yield (0, api_1.getGenericModelList)(loadParams);
|
|
100
|
-
if (loadedData &&
|
|
107
|
+
if (loadedData && !axios_1.default.isAxiosError(loadedData)) {
|
|
101
108
|
setData(loadedData);
|
|
102
109
|
setLoading(false);
|
|
103
110
|
if (isInBatches && loadedData.data.length === firstBatchLength) {
|
|
104
111
|
setHideFooterPagination(true);
|
|
105
112
|
(0, api_1.getGenericModelList)(Object.assign(Object.assign({}, loadParams), { loadedSchema: loadedData.schema, loadedModelOptions: loadedData.modelOptions })).then((lastBatchData) => {
|
|
106
|
-
if (lastBatchData &&
|
|
113
|
+
if (lastBatchData && !axios_1.default.isAxiosError(lastBatchData)) {
|
|
107
114
|
setData(Object.assign(Object.assign({}, loadedData), { data: [...loadedData.data, ...lastBatchData.data] }));
|
|
108
115
|
}
|
|
109
116
|
setHideFooterPagination(false);
|
|
@@ -121,7 +128,6 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
121
128
|
model,
|
|
122
129
|
serverEndPoint,
|
|
123
130
|
columnFields,
|
|
124
|
-
hiddenFields,
|
|
125
131
|
creatableFields,
|
|
126
132
|
disabledFields,
|
|
127
133
|
page,
|
|
@@ -131,7 +137,7 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
131
137
|
sumRows,
|
|
132
138
|
};
|
|
133
139
|
const paginatedData = yield (0, api_1.getGenericModelList)(loadPaginatedParams);
|
|
134
|
-
if (paginatedData &&
|
|
140
|
+
if (paginatedData && !axios_1.default.isAxiosError(paginatedData)) {
|
|
135
141
|
setData(paginatedData);
|
|
136
142
|
setLoading(false);
|
|
137
143
|
return;
|
|
@@ -146,7 +152,6 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
146
152
|
disableScreenLoading,
|
|
147
153
|
disabledFields,
|
|
148
154
|
firstBatchLength,
|
|
149
|
-
hiddenFields,
|
|
150
155
|
isInBatches,
|
|
151
156
|
model,
|
|
152
157
|
paginationMode,
|
|
@@ -177,7 +182,7 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
177
182
|
react_1.default.createElement(LinkComponent, { to: `novo` },
|
|
178
183
|
react_1.default.createElement(Button_1.default, { variant: "contained", size: "medium", sx: { alignSelf: 'stretch' }, startIcon: react_1.default.createElement(AddCircleOutline_1.default, null) }, "Adicionar")))))),
|
|
179
184
|
react_1.default.createElement(Box_1.default, { sx: tableAutoHeight ? {} : styles_1.Layout.dataGridWithTabs },
|
|
180
|
-
react_1.default.createElement(DataGridBySchemaEditable_1.default, { data: data.data, columns: data.columns, schema: data.schema || {}, model: model, loading: loading, indexField: indexField, indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, addExistingModel: addExistingModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, onEditModel: onEditModel, isAutoHeight: isAutoHeight, tableAutoHeight: tableAutoHeight, customColumnOperations: finalCustomColumnOperations, customFieldFormLayouts: customFieldFormLayouts, setVisibleRows: setVisibleRows, hideFooterPagination: hideFooterPagination, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, customLinkDestination: customLinkDestination, actions: actions, customActions: customActions, optionsAC: optionsAC, defaultValues: defaultValues, onProcessRow: onProcessRow, onDataChange: (newData) => {
|
|
185
|
+
react_1.default.createElement(DataGridBySchemaEditable_1.default, { data: data.data, columns: data.columns, columnVisibilityModel: columnVisibilityModel, schema: data.schema || {}, model: model, loading: loading, indexField: indexField, indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, addExistingModel: addExistingModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, onEditModel: onEditModel, isAutoHeight: isAutoHeight, tableAutoHeight: tableAutoHeight, customColumnOperations: finalCustomColumnOperations, customFieldFormLayouts: customFieldFormLayouts, setVisibleRows: setVisibleRows, hideFooterPagination: hideFooterPagination, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, customLinkDestination: customLinkDestination, actions: actions, customActions: customActions, optionsAC: optionsAC, defaultValues: defaultValues, onProcessRow: onProcessRow, onDataChange: (newData) => {
|
|
181
186
|
if (reloadAfterRowUpdate) {
|
|
182
187
|
loadObjectList();
|
|
183
188
|
return;
|
|
@@ -192,6 +197,6 @@ function GenericModelList({ model, columnFields, hiddenFields, creatableFields,
|
|
|
192
197
|
? data.rowCount
|
|
193
198
|
: 0, extraValidators: extraValidators, MobileListRenderItem: MobileListRenderItem, MobileRenderNoResults: MobileRenderNoResults })),
|
|
194
199
|
data.data.length > 0 && (!isMobile || !MobileListRenderItem) && (react_1.default.createElement(react_1.default.Fragment, null, paginationMode === 'client' ? (react_1.default.createElement(DataTotals_1.default, { schema: data.schema, data: data.data, sumRows: sumRows, visibleRows: visibleRows })) : (react_1.default.createElement(DataTotalsServer_1.default, { schema: data.schema, 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 },
|
|
195
|
-
react_1.default.createElement(CircularProgress_1.default,
|
|
200
|
+
react_1.default.createElement(CircularProgress_1.default, null)))));
|
|
196
201
|
}
|
|
197
202
|
exports.default = react_1.default.memo(GenericModelList, utils_1.shouldMemoUpdate);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericRelatedModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAuB,YAAY,
|
|
1
|
+
{"version":3,"file":"GenericRelatedModelList.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
46
46
|
};
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
48
|
const react_1 = __importStar(require("react"));
|
|
49
|
+
const axios_1 = __importDefault(require("axios"));
|
|
49
50
|
const Card_1 = __importDefault(require("@mui/material/Card"));
|
|
50
51
|
const CardHeader_1 = __importDefault(require("@mui/material/CardHeader"));
|
|
51
52
|
const CardContent_1 = __importDefault(require("@mui/material/CardContent"));
|
|
@@ -60,6 +61,13 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
60
61
|
const [hideFooterPagination, setHideFooterPagination] = (0, react_1.useState)(false);
|
|
61
62
|
const [paginationModel, setPaginationModel] = (0, react_1.useState)(paginationMode === 'server' ? { page: 0, pageSize: 100 } : undefined);
|
|
62
63
|
const { onEditModel, onDeleteRelatedModel, getGenericModelList } = (0, APIWrapperContext_1.useAPIWrapper)();
|
|
64
|
+
const columnVisibilityModel = (0, react_1.useMemo)(() => {
|
|
65
|
+
const model = {};
|
|
66
|
+
hiddenFields === null || hiddenFields === void 0 ? void 0 : hiddenFields.forEach((field) => {
|
|
67
|
+
model[field] = false;
|
|
68
|
+
});
|
|
69
|
+
return model;
|
|
70
|
+
}, [hiddenFields]);
|
|
63
71
|
const finalCustomColumnOperations = (0, react_1.useCallback)((column) => __awaiter(this, void 0, void 0, function* () {
|
|
64
72
|
if (minWidthFields) {
|
|
65
73
|
if (column.field in minWidthFields) {
|
|
@@ -83,20 +91,19 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
83
91
|
columnFields,
|
|
84
92
|
creatableFields,
|
|
85
93
|
disabledFields,
|
|
86
|
-
hiddenFields,
|
|
87
94
|
usuaria,
|
|
88
95
|
isInBatches,
|
|
89
96
|
queryParams,
|
|
90
97
|
filter: defaultFilter,
|
|
91
98
|
};
|
|
92
99
|
const loadedData = yield getGenericModelList(loadParams);
|
|
93
|
-
if (loadedData &&
|
|
100
|
+
if (loadedData && !axios_1.default.isAxiosError(loadedData)) {
|
|
94
101
|
setData(loadedData);
|
|
95
102
|
setLoading(false);
|
|
96
103
|
if (isInBatches && loadedData.data.length === 100) {
|
|
97
104
|
setHideFooterPagination(true);
|
|
98
105
|
getGenericModelList(Object.assign(Object.assign({}, loadParams), { loadedSchema: loadedData.schema })).then((lastBatchData) => {
|
|
99
|
-
if (lastBatchData) {
|
|
106
|
+
if (lastBatchData && !axios_1.default.isAxiosError(lastBatchData)) {
|
|
100
107
|
setData(Object.assign(Object.assign({}, loadedData), { data: [...loadedData.data, ...lastBatchData.data] }));
|
|
101
108
|
setHideFooterPagination(false);
|
|
102
109
|
}
|
|
@@ -115,7 +122,6 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
115
122
|
id,
|
|
116
123
|
relatedModel,
|
|
117
124
|
columnFields,
|
|
118
|
-
hiddenFields,
|
|
119
125
|
creatableFields,
|
|
120
126
|
disabledFields,
|
|
121
127
|
page,
|
|
@@ -124,7 +130,7 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
124
130
|
sumRows,
|
|
125
131
|
queryParams,
|
|
126
132
|
});
|
|
127
|
-
if (paginatedData &&
|
|
133
|
+
if (paginatedData && !axios_1.default.isAxiosError(paginatedData)) {
|
|
128
134
|
setData(paginatedData);
|
|
129
135
|
setLoading(false);
|
|
130
136
|
return;
|
|
@@ -137,7 +143,6 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
137
143
|
creatableFields,
|
|
138
144
|
defaultFilter,
|
|
139
145
|
disabledFields,
|
|
140
|
-
hiddenFields,
|
|
141
146
|
id,
|
|
142
147
|
indexFieldBasePath,
|
|
143
148
|
isInBatches,
|
|
@@ -167,9 +172,9 @@ function GenericRelatedModelList({ model, id, relatedModel, columnFields, hidden
|
|
|
167
172
|
loadObjectList();
|
|
168
173
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
169
174
|
}, [id, model, defaultFilter, queryParams, paginationModel, reloadStateStamp]);
|
|
170
|
-
return (react_1.default.createElement(react_1.default.Fragment, null, typeof data !== 'boolean' && data.columns && (react_1.default.createElement(react_1.default.Fragment, null, noCardWrapper ? (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, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, onProcessRow: onProcessRow, onDataChange: onDataChangeLocal, sumRows: sumRows, paginationMode: paginationMode, paginationModel: paginationModel, setPaginationModel: setPaginationModel, actions: actions, optionsAC: optionsAC, defaultValues: defaultValues, LinkComponent: LinkComponent, extraValidators: extraValidators, MobileListRenderItem: MobileListRenderItem, MobileRenderNoResults: MobileRenderNoResults })) : (react_1.default.createElement(Card_1.default, { sx: styles_1.Layout.formCard },
|
|
175
|
+
return (react_1.default.createElement(react_1.default.Fragment, null, typeof data !== 'boolean' && data.columns && (react_1.default.createElement(react_1.default.Fragment, null, noCardWrapper ? (react_1.default.createElement(GenericRelatedModelListTable_1.default, { data: data, columnVisibilityModel: columnVisibilityModel, 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, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, onProcessRow: onProcessRow, onDataChange: onDataChangeLocal, sumRows: sumRows, paginationMode: paginationMode, paginationModel: paginationModel, setPaginationModel: setPaginationModel, actions: actions, optionsAC: optionsAC, defaultValues: defaultValues, LinkComponent: LinkComponent, extraValidators: extraValidators, MobileListRenderItem: MobileListRenderItem, MobileRenderNoResults: MobileRenderNoResults })) : (react_1.default.createElement(Card_1.default, { sx: styles_1.Layout.formCard },
|
|
171
176
|
react_1.default.createElement(CardHeader_1.default, { title: label }),
|
|
172
177
|
react_1.default.createElement(CardContent_1.default, null,
|
|
173
|
-
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, MobileRenderNoResults: MobileRenderNoResults }))))))));
|
|
178
|
+
react_1.default.createElement(GenericRelatedModelListTable_1.default, { data: data, columnVisibilityModel: columnVisibilityModel, 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, MobileRenderNoResults: MobileRenderNoResults }))))))));
|
|
174
179
|
}
|
|
175
180
|
exports.default = react_1.default.memo(GenericRelatedModelList, utils_1.shouldMemoUpdate);
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import React, { ReactElement } from 'react';
|
|
2
|
-
import { GridRowId } from '@mui/x-data-grid';
|
|
2
|
+
import { GridColumnVisibilityModel, GridRowId } from '@mui/x-data-grid';
|
|
3
3
|
import { OnEditModelType, OnDeleteRelatedModelType } from '../context/APIWrapperContext';
|
|
4
4
|
import { ActionType, CustomAction, DataSchemaColumnsType, ExtraValidators, GridEnrichedBySchemaColDef, Id, Item, LinkComponentType, MobileListRenderItemType, OnSelectActions, OptionsAC, PaginationModel, SumRowsType } from '../@types';
|
|
5
5
|
interface GenericRelatedModelListTableProps {
|
|
6
6
|
data: DataSchemaColumnsType;
|
|
7
|
+
columnVisibilityModel?: GridColumnVisibilityModel;
|
|
7
8
|
relatedModel: string;
|
|
8
9
|
model: string;
|
|
9
10
|
loading?: boolean;
|
|
@@ -45,7 +46,7 @@ interface GenericRelatedModelListTableProps {
|
|
|
45
46
|
MobileListRenderItem?: MobileListRenderItemType;
|
|
46
47
|
MobileRenderNoResults?: () => ReactElement | null;
|
|
47
48
|
}
|
|
48
|
-
declare function GenericRelatedModelListTable({ data, relatedModel, model, loading, id, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, isEditable, onEditModel, finalCustomColumnOperations, setVisibleRows, visibleRows, isAutoHeight, hideFooterPagination, hideFooterComponent, hideToolbarComponent, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, onProcessRow, onDataChange, sumRows, paginationMode, paginationModel, setPaginationModel, hasBulkSelect, onSelectActions, tableAutoHeight, actions, customActions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, MobileRenderNoResults, }: GenericRelatedModelListTableProps): React.JSX.Element;
|
|
49
|
+
declare function GenericRelatedModelListTable({ data, columnVisibilityModel, relatedModel, model, loading, id, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, isEditable, onEditModel, finalCustomColumnOperations, setVisibleRows, visibleRows, isAutoHeight, hideFooterPagination, hideFooterComponent, hideToolbarComponent, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, onProcessRow, onDataChange, sumRows, paginationMode, paginationModel, setPaginationModel, hasBulkSelect, onSelectActions, tableAutoHeight, actions, customActions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, MobileRenderNoResults, }: GenericRelatedModelListTableProps): React.JSX.Element;
|
|
49
50
|
declare const _default: React.MemoExoticComponent<typeof GenericRelatedModelListTable>;
|
|
50
51
|
export default _default;
|
|
51
52
|
//# 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,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI5C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"GenericRelatedModelListTable.d.ts","sourceRoot":"","sources":["../../src/components/GenericRelatedModelListTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,18 +13,18 @@ const DataTotalsServer_1 = __importDefault(require("./DataTotalsServer"));
|
|
|
13
13
|
const APIWrapperContext_1 = require("../context/APIWrapperContext");
|
|
14
14
|
const styles_1 = require("../styles");
|
|
15
15
|
const utils_1 = require("../utils");
|
|
16
|
-
function GenericRelatedModelListTable({ data, relatedModel, model, loading, id, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, isEditable, onEditModel, finalCustomColumnOperations, setVisibleRows, visibleRows, isAutoHeight, hideFooterPagination, hideFooterComponent, hideToolbarComponent, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, onProcessRow, onDataChange, sumRows, paginationMode = 'client', paginationModel, setPaginationModel, hasBulkSelect, onSelectActions, tableAutoHeight, actions, customActions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, MobileRenderNoResults, }) {
|
|
16
|
+
function GenericRelatedModelListTable({ data, columnVisibilityModel, relatedModel, model, loading, id, indexField, indexFieldBasePath, indexFieldViewBasePath, addExistingModel, isEditable, onEditModel, finalCustomColumnOperations, setVisibleRows, visibleRows, isAutoHeight, hideFooterPagination, hideFooterComponent, hideToolbarComponent, hideColumnsButton, hideFilterButton, hideDensityButton, hideExportButton, hideQuickFilterBar, onProcessRow, onDataChange, sumRows, paginationMode = 'client', paginationModel, setPaginationModel, hasBulkSelect, onSelectActions, tableAutoHeight, actions, customActions, optionsAC, defaultValues, LinkComponent, extraValidators, MobileListRenderItem, MobileRenderNoResults, }) {
|
|
17
17
|
const { isMobile } = (0, APIWrapperContext_1.useAPIWrapper)();
|
|
18
18
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
19
19
|
data.columns ? (react_1.default.createElement(react_1.default.Fragment, null,
|
|
20
20
|
data.data.length > 0 && isMobile && MobileListRenderItem && (react_1.default.createElement(react_1.default.Fragment, null, paginationMode === 'client' ? (react_1.default.createElement(DataTotals_1.default, { schema: data.schema, data: data.data, sumRows: sumRows, visibleRows: visibleRows })) : (react_1.default.createElement(DataTotalsServer_1.default, { schema: data.schema, sumRows: sumRows, totals: data.sumRowsTotals })))),
|
|
21
21
|
react_1.default.createElement(Box_1.default, { sx: tableAutoHeight ? {} : styles_1.Layout.dataGridFixedHeight },
|
|
22
|
-
react_1.default.createElement(DataGridBySchemaEditable_1.default, { data: data.data, columns: data.columns, schema: data.schema, model: relatedModel, modelParent: model, modelParentId: id, loading: loading, indexField: indexField, indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, addExistingModel: addExistingModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, onEditModel: onEditModel, isAutoHeight: isAutoHeight, tableAutoHeight: tableAutoHeight, customColumnOperations: finalCustomColumnOperations, setVisibleRows: setVisibleRows, hideFooterPagination: hideFooterPagination, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, actions: actions, customActions: customActions, optionsAC: optionsAC, defaultValues: defaultValues, onProcessRow: onProcessRow, onDataChange: onDataChange, paginationModel: paginationMode === 'server' ? paginationModel : undefined, setPaginationModel: paginationMode === 'server' ? setPaginationModel : undefined, rowCount: paginationMode === 'client'
|
|
22
|
+
react_1.default.createElement(DataGridBySchemaEditable_1.default, { data: data.data, columns: data.columns, columnVisibilityModel: columnVisibilityModel, schema: data.schema, model: relatedModel, modelParent: model, modelParentId: id, loading: loading, indexField: indexField, indexFieldBasePath: indexFieldBasePath, indexFieldViewBasePath: indexFieldViewBasePath, addExistingModel: addExistingModel, isEditable: isEditable, hasBulkSelect: hasBulkSelect, onSelectActions: onSelectActions, onEditModel: onEditModel, isAutoHeight: isAutoHeight, tableAutoHeight: tableAutoHeight, customColumnOperations: finalCustomColumnOperations, setVisibleRows: setVisibleRows, hideFooterPagination: hideFooterPagination, hideFooterComponent: hideFooterComponent, hideToolbarComponent: hideToolbarComponent, hideColumnsButton: hideColumnsButton, hideFilterButton: hideFilterButton, hideDensityButton: hideDensityButton, hideExportButton: hideExportButton, hideQuickFilterBar: hideQuickFilterBar, actions: actions, customActions: customActions, optionsAC: optionsAC, defaultValues: defaultValues, onProcessRow: onProcessRow, onDataChange: onDataChange, paginationModel: paginationMode === 'server' ? paginationModel : undefined, setPaginationModel: paginationMode === 'server' ? setPaginationModel : undefined, rowCount: paginationMode === 'client'
|
|
23
23
|
? undefined
|
|
24
24
|
: typeof data.rowCount !== undefined
|
|
25
25
|
? data.rowCount
|
|
26
26
|
: 0, LinkComponent: LinkComponent || undefined, extraValidators: extraValidators, MobileListRenderItem: MobileListRenderItem, MobileRenderNoResults: MobileRenderNoResults })))) : (react_1.default.createElement(Backdrop_1.default, { invisible: true, sx: { color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }, open: loading || false },
|
|
27
|
-
react_1.default.createElement(CircularProgress_1.default,
|
|
27
|
+
react_1.default.createElement(CircularProgress_1.default, null))),
|
|
28
28
|
data.data.length > 0 && (!isMobile || !MobileListRenderItem) && (react_1.default.createElement(react_1.default.Fragment, null, paginationMode === 'client' ? (react_1.default.createElement(DataTotals_1.default, { schema: data.schema, data: data.data, sumRows: sumRows, visibleRows: visibleRows })) : (react_1.default.createElement(DataTotalsServer_1.default, { schema: data.schema, sumRows: sumRows, totals: data.sumRowsTotals }))))));
|
|
29
29
|
}
|
|
30
30
|
exports.default = react_1.default.memo(GenericRelatedModelListTable, utils_1.shouldMemoUpdate);
|
|
@@ -97,7 +97,7 @@ function DetailBySchema({ values, schema, columns, loading, editLink, editLabel,
|
|
|
97
97
|
valueStr: !values[field] && typeof values[field] !== 'boolean'
|
|
98
98
|
? '-'
|
|
99
99
|
: column.valueFormatter
|
|
100
|
-
? column.valueFormatter(
|
|
100
|
+
? column.valueFormatter(values[field], values, column, undefined)
|
|
101
101
|
: values[field],
|
|
102
102
|
value: values[field],
|
|
103
103
|
};
|
|
@@ -151,7 +151,7 @@ function DetailBySchema({ values, schema, columns, loading, editLink, editLabel,
|
|
|
151
151
|
return (react_1.default.createElement(Card_1.default, { sx: styles_1.Layout.formCard },
|
|
152
152
|
react_1.default.createElement(CardContent_1.default, null,
|
|
153
153
|
react_1.default.createElement(Box_1.default, { sx: styles_1.Layout.loadingBoxWhite },
|
|
154
|
-
react_1.default.createElement(CircularProgress_1.default,
|
|
154
|
+
react_1.default.createElement(CircularProgress_1.default, null)))));
|
|
155
155
|
}
|
|
156
156
|
const SectionContentComponent = ({ section }) => (react_1.default.createElement(SectionContent, { sectionRows: section.rows, item: formattedValues, schema: schema, fieldsProps: fieldsProps, SectionCustomElement: section.CustomElement, sxRow: section.sxRow || sxRow, sxRowMultiple: section.sxRowMultiple || sxRowMultiple, sxField: section.sxField || sxField, sxLabel: section.sxLabel || sxLabel, sxValue: section.sxValue || sxValue, sxValueList: section.sxValueList || sxValueList, sxValueListItem: section.sxValueListItem || sxValueListItem, sxValueListItemText: section.sxValueListItemText || sxValueListItemText }));
|
|
157
157
|
return (react_1.default.createElement(react_1.default.Fragment, null, fieldsLayout.map((section, sectionIndex) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailFieldBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/details/DetailFieldBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAMxD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,QAAQ,EACR,WAAW,EACX,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,WAAW,EACX,eAAe,EACf,mBAAmB,GACpB,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"DetailFieldBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/details/DetailFieldBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAMxD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,QAAQ,EACR,WAAW,EACX,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,WAAW,EACX,eAAe,EACf,mBAAmB,GACpB,EAAE,wBAAwB,4BAgJ1B"}
|
|
@@ -21,6 +21,9 @@ function DetailFieldBySchema({ fieldKey, fieldSchema, value, sxField, sxLabel, s
|
|
|
21
21
|
console.error(`DetailFieldBySchema: could not find schema for field ${fieldKey}`);
|
|
22
22
|
return null;
|
|
23
23
|
}
|
|
24
|
+
if (!value) {
|
|
25
|
+
return react_1.default.createElement(Box_1.default, { sx: sxField }, "-");
|
|
26
|
+
}
|
|
24
27
|
switch (fieldSchema.type) {
|
|
25
28
|
case 'nested object':
|
|
26
29
|
case 'field':
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { AxiosError } from 'axios';
|
|
2
3
|
import { AnyObjectSchema } from 'yup';
|
|
3
|
-
import { FormFieldLayout, Item, OptionsAC, SchemaType } from '../../@types';
|
|
4
|
+
import { AutocompleteItem, FormFieldLayout, Item, OptionsAC, SchemaType } from '../../@types';
|
|
4
5
|
import { DialogType } from '../../context/APIWrapperContext';
|
|
5
6
|
interface DialogFormBySchemaProps {
|
|
6
7
|
schema: SchemaType;
|
|
7
8
|
validationSchema: AnyObjectSchema;
|
|
8
9
|
initialValues: Item;
|
|
9
|
-
onEditModelSave: (p: Item) => Promise<boolean>;
|
|
10
|
+
onEditModelSave: (p: Item) => Promise<boolean | AxiosError>;
|
|
10
11
|
setDialog: (x: Partial<DialogType>) => void;
|
|
11
|
-
getAutoComplete: (model: string) => Promise<
|
|
12
|
+
getAutoComplete: (model: string) => Promise<AutocompleteItem[] | AxiosError>;
|
|
12
13
|
fieldsLayout?: FormFieldLayout[];
|
|
13
14
|
isCancelDisabled?: boolean;
|
|
14
15
|
forceSaveEnabled?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogFormBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/forms/DialogFormBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DialogFormBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/forms/DialogFormBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,OAAO,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAKtC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE9F,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,UAAU,uBAAuB;IAC/B,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,EAAE,eAAe,CAAC;IAClC,aAAa,EAAE,IAAI,CAAC;IACpB,eAAe,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC;IAC5D,SAAS,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAC5C,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,EAAE,GAAG,UAAU,CAAC,CAAC;IAC7E,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;CAC/C;AAED,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,MAAM,EACN,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,GACjB,EAAE,uBAAuB,qBAmEzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FieldBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,
|
|
1
|
+
{"version":3,"file":"FieldBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FieldBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAc,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAa9D,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,IAAI,EACJ,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAiB,EACjB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,QAAiB,EACjB,KAAK,EACL,SAAS,EACT,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,EAAE,EACF,OAAO,EACP,YAAoB,EACpB,KAAK,EACL,aAAa,EACb,YAAgB,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,kBAAkB,qBAyNpB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { AxiosError } from 'axios';
|
|
2
3
|
import { UseFormRegister } from 'react-hook-form';
|
|
3
|
-
import { CommonFieldProps, ExtraSxCommonFieldProps, FormFieldLayout, GenericValue, Id, Item, OptionsAC } from '../../@types';
|
|
4
|
+
import { AutocompleteItem, CommonFieldProps, ExtraSxCommonFieldProps, FormFieldLayout, GenericValue, Id, Item, OptionsAC } from '../../@types';
|
|
4
5
|
interface FormProps extends CommonFieldProps {
|
|
5
6
|
model: string;
|
|
6
7
|
objId?: Id;
|
|
@@ -8,7 +9,7 @@ interface FormProps extends CommonFieldProps {
|
|
|
8
9
|
defaults?: Record<string, GenericValue>;
|
|
9
10
|
objTitleField?: string;
|
|
10
11
|
onCancel?: React.MouseEventHandler<HTMLButtonElement>;
|
|
11
|
-
onSave?: (currentId: Id, newId: Id |
|
|
12
|
+
onSave?: (currentId: Id, newId: Id | AxiosError) => void;
|
|
12
13
|
onSaveExit?: (currentId: Id, newId: Id) => void;
|
|
13
14
|
onSaveCreateNew?: (currentId: Id, newId: Id) => void;
|
|
14
15
|
onDelete?: (removedId: Id) => void;
|
|
@@ -24,7 +25,7 @@ interface FormProps extends CommonFieldProps {
|
|
|
24
25
|
hiddenFields?: string[];
|
|
25
26
|
register?: UseFormRegister<Item>;
|
|
26
27
|
setOptionsAC?: (x: OptionsAC) => void;
|
|
27
|
-
isolatedGetAutoComplete?: (model: string) => Promise<
|
|
28
|
+
isolatedGetAutoComplete?: (model: string) => Promise<AutocompleteItem[] | AxiosError>;
|
|
28
29
|
fieldsProps?: Record<string, CommonFieldProps>;
|
|
29
30
|
relatedEditable?: boolean;
|
|
30
31
|
autoFocusField?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../../src/components/forms/Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAClD,OAAO,EAAwB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGxE,OAAO,EACL,gBAAgB,EAEhB,uBAAuB,EACvB,eAAe,EACf,YAAY,EACZ,EAAE,EACF,IAAI,EACJ,SAAS,EACV,MAAM,cAAc,CAAC;AAOtB,UAAU,SAAU,SAAQ,gBAAgB;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,EAAE,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["../../../src/components/forms/Form.tsx"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
48
|
exports.default = Form;
|
|
49
49
|
const react_1 = __importStar(require("react"));
|
|
50
|
+
const axios_1 = __importDefault(require("axios"));
|
|
50
51
|
const react_hook_form_1 = require("react-hook-form");
|
|
51
52
|
const yup_1 = require("@hookform/resolvers/yup");
|
|
52
53
|
const APIWrapperContext_1 = require("../../context/APIWrapperContext");
|
|
@@ -94,7 +95,7 @@ function Form({ model, objId, basePath, defaults, objTitleField, onCancel, onSav
|
|
|
94
95
|
const localOnSubmit = (data, event) => __awaiter(this, void 0, void 0, function* () {
|
|
95
96
|
const currentId = objId || (0, utils_1.getTmpId)();
|
|
96
97
|
const newId = yield onSubmit(model, currentId, data, event);
|
|
97
|
-
if (newId
|
|
98
|
+
if (newId && !axios_1.default.isAxiosError(newId)) {
|
|
98
99
|
const buttonType = (event === null || event === void 0 ? void 0 : event.nativeEvent.submitter.name) || 'exitOnSave';
|
|
99
100
|
if (buttonType === 'exitOnSave' && onSaveExit) {
|
|
100
101
|
onSaveExit(currentId, newId);
|
|
@@ -118,7 +119,7 @@ function Form({ model, objId, basePath, defaults, objTitleField, onCancel, onSav
|
|
|
118
119
|
basePath,
|
|
119
120
|
objTitleField,
|
|
120
121
|
});
|
|
121
|
-
if (values) {
|
|
122
|
+
if (values && !axios_1.default.isAxiosError(values)) {
|
|
122
123
|
reset(values);
|
|
123
124
|
}
|
|
124
125
|
});
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { AxiosError } from 'axios';
|
|
2
3
|
import { UseFormRegister } from 'react-hook-form';
|
|
3
|
-
import { CommonFieldProps, ConditionalVisible, ExtraSxCommonFieldProps, FieldBySchemaProps, FormFieldLayout, GenericValue, Item, OptionsAC } from '../../@types';
|
|
4
|
+
import { AutocompleteItem, CommonFieldProps, ConditionalVisible, ExtraSxCommonFieldProps, FieldBySchemaProps, FormFieldLayout, GenericValue, Item, OptionsAC } from '../../@types';
|
|
4
5
|
interface FormBySchemaProps extends Omit<FieldBySchemaProps, 'name'> {
|
|
5
6
|
fieldsLayout?: FormFieldLayout[];
|
|
6
7
|
customFieldFormLayouts?: Record<string, FormFieldLayout[]>;
|
|
@@ -8,7 +9,7 @@ interface FormBySchemaProps extends Omit<FieldBySchemaProps, 'name'> {
|
|
|
8
9
|
register?: UseFormRegister<Item>;
|
|
9
10
|
setOptionsAC?: (x: OptionsAC) => void;
|
|
10
11
|
forceReload?: boolean;
|
|
11
|
-
isolatedGetAutoComplete?: (model: string) => Promise<
|
|
12
|
+
isolatedGetAutoComplete?: (model: string) => Promise<AutocompleteItem[] | AxiosError>;
|
|
12
13
|
fieldsProps?: Record<string, CommonFieldProps>;
|
|
13
14
|
relatedEditable?: boolean;
|
|
14
15
|
autoFocusField?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAUlD,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,IAAI,EACJ,SAAS,EACV,MAAM,cAAc,CAAC;AAOtB,UAAU,iBAAkB,SAAQ,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAClE,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;IACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"FormBySchema.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormBySchema.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAC5D,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAUlD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,IAAI,EACJ,SAAS,EACV,MAAM,cAAc,CAAC;AAOtB,UAAU,iBAAkB,SAAQ,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAClE,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;IACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,EAAE,GAAG,UAAU,CAAC,CAAC;IACtF,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC1C,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,QAAiB,EACjB,KAAK,EACL,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EACP,YAAY,EACZ,KAAK,EACL,YAAgB,EAEhB,YAAY,EAAE,mBAAmB,EACjC,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EAEb,WAAW,EACX,YAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,cAAc,EACd,SAAS,EAKT,KAAK,EACL,aAAa,EACb,SAAS,EACT,cAAc,GAKf,EAAE,iBAAiB,GAClB,IAAI,CACF,uBAAuB,EACrB,IAAI,GACJ,SAAS,GACT,SAAS,GACT,SAAS,GACT,aAAa,GACb,iBAAiB,GACjB,qBAAqB,CACxB,qBA0UF"}
|
|
@@ -47,6 +47,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
48
|
exports.default = FormBySchema;
|
|
49
49
|
const react_1 = __importStar(require("react"));
|
|
50
|
+
const axios_1 = __importDefault(require("axios"));
|
|
50
51
|
const Box_1 = __importDefault(require("@mui/material/Box"));
|
|
51
52
|
const Card_1 = __importDefault(require("@mui/material/Card"));
|
|
52
53
|
const CardHeader_1 = __importDefault(require("@mui/material/CardHeader"));
|
|
@@ -163,7 +164,7 @@ sxRow, sxRowMultiple, sxSection, sxSectionTitle,
|
|
|
163
164
|
const newOptionsAC = {};
|
|
164
165
|
const results = yield Promise.all(promises);
|
|
165
166
|
results.map((result, index) => {
|
|
166
|
-
if (result
|
|
167
|
+
if (!axios_1.default.isAxiosError(result)) {
|
|
167
168
|
newOptionsAC[fieldsToLoad[index]] = result;
|
|
168
169
|
}
|
|
169
170
|
});
|
|
@@ -182,7 +183,7 @@ sxRow, sxRowMultiple, sxSection, sxSectionTitle,
|
|
|
182
183
|
return (react_1.default.createElement(Card_1.default, { sx: sxSection ? Object.assign(Object.assign({}, styles_1.Layout.formCard), sxSection) : styles_1.Layout.formCard, elevation: elevation },
|
|
183
184
|
react_1.default.createElement(CardContent_1.default, null,
|
|
184
185
|
react_1.default.createElement(Box_1.default, { sx: styles_1.Layout.loadingBoxWhite },
|
|
185
|
-
react_1.default.createElement(CircularProgress_1.default,
|
|
186
|
+
react_1.default.createElement(CircularProgress_1.default, null)))));
|
|
186
187
|
}
|
|
187
188
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
188
189
|
register &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APIWrapper.d.ts","sourceRoot":"","sources":["../../src/context/APIWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"APIWrapper.d.ts","sourceRoot":"","sources":["../../src/context/APIWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwE,MAAM,OAAO,CAAC;AAiD7F,OAAO,EAEL,UAAU,EAQV,YAAY,EACb,MAAM,qBAAqB,CAAC;AAG7B,UAAU,eAAe;IACvB,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,WAAW,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;IAChD,SAAS,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACxE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAYD,iBAAS,UAAU,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,eAAe,qBA+rBvF;;AAED,wBAAsC"}
|