drf-react-by-schema 0.17.13 → 0.17.15

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.
@@ -81,9 +81,9 @@ const CustomToolbar = ({ preparedColumns, setPreparedColumns, onSelectActions, s
81
81
  }
82
82
  selectAction.action(selectionModel, bulkUpdateData);
83
83
  } }, selectAction.title)))))),
84
- hideColumnsButton && (react_1.default.createElement(x_data_grid_1.GridToolbarColumnsButton, { sx: { ml: '10px', fontSize: '13px' }, placeholder: '' })),
85
- hideFilterButton && (react_1.default.createElement(x_data_grid_1.GridToolbarFilterButton, { sx: { ml: '10px', fontSize: '13px' }, placeholder: '' })),
86
- hideDensityButton && (react_1.default.createElement(react_1.default.Fragment, null,
84
+ !hideColumnsButton && (react_1.default.createElement(x_data_grid_1.GridToolbarColumnsButton, { sx: { ml: '10px', fontSize: '13px' }, placeholder: '' })),
85
+ !hideFilterButton && (react_1.default.createElement(x_data_grid_1.GridToolbarFilterButton, { sx: { ml: '10px', fontSize: '13px' }, placeholder: '' })),
86
+ !hideDensityButton && (react_1.default.createElement(react_1.default.Fragment, null,
87
87
  react_1.default.createElement(x_data_grid_1.GridToolbarDensitySelector, { sx: { ml: '10px', fontSize: '13px' }, placeholder: '' }),
88
88
  react_1.default.createElement(Button_1.default, { onClick: openResizeMenu, sx: { ml: '0px', fontSize: '13px' } },
89
89
  react_1.default.createElement(Expand_1.default, { sx: { transform: 'rotate(90deg)', mr: '6px' } }),
@@ -97,8 +97,8 @@ const CustomToolbar = ({ preparedColumns, setPreparedColumns, onSelectActions, s
97
97
  closeResizeMenu();
98
98
  setPreparedColumns((0, utils_1.resizeColumns)(preparedColumns, 'maxContent', apiRef));
99
99
  } }, "Ajustar ao conte\u00FAdo")))),
100
- hideExportButton && react_1.default.createElement(x_data_grid_1.GridToolbarExport, { sx: { ml: '0px', fontSize: '13px' } })),
101
- hideQuickFilterBar && (react_1.default.createElement("div", null,
100
+ !hideExportButton && react_1.default.createElement(x_data_grid_1.GridToolbarExport, { sx: { ml: '0px', fontSize: '13px' } })),
101
+ !hideQuickFilterBar && (react_1.default.createElement("div", null,
102
102
  react_1.default.createElement(x_data_grid_1.GridToolbarQuickFilter, null)))));
103
103
  };
104
104
  exports.CustomToolbar = CustomToolbar;
@@ -129,6 +129,16 @@ function SelectEditInputCell({ field, id, value, column, type, optionsAC, isInde
129
129
  }
130
130
  if (newValue && newValue.inputValue) {
131
131
  const tmpId = (0, utils_1.getTmpId)();
132
+ if (onEditModel) {
133
+ // Open modal to save new item:
134
+ onEditModel({
135
+ model: field,
136
+ id: tmpId,
137
+ labelKey,
138
+ fieldsLayout,
139
+ });
140
+ }
141
+ // Define new Item as an "optimistic response"
132
142
  newValue = {
133
143
  [valueKey]: tmpId,
134
144
  [labelKey]: newValue.inputValue,
@@ -142,7 +152,7 @@ function SelectEditInputCell({ field, id, value, column, type, optionsAC, isInde
142
152
  open: true,
143
153
  loading: false,
144
154
  title: 'Linha sendo criada',
145
- Body: 'Esta linha está sendo criado agora por você. Para editar suas propriedades, salve antes, e depois você poderá editar!',
155
+ Body: 'Esta linha está sendo criada agora por você. Para editar suas propriedades, salve antes, e depois você poderá editar!',
146
156
  Actions: (react_1.default.createElement(DialogActions_1.default, { setDialog: setDialog, btnCancel: "Entendi" })),
147
157
  });
148
158
  return;
@@ -51,6 +51,7 @@ interface DataGridBySchemaEditableProps {
51
51
  hideExportButton?: boolean;
52
52
  hideQuickFilterBar?: boolean;
53
53
  optionsAC?: OptionsAC;
54
+ extraValidators?: Item;
54
55
  }
55
56
  declare const DataGridBySchemaEditable: React.ForwardRefExoticComponent<DataGridBySchemaEditableProps & React.RefAttributes<unknown>>;
56
57
  export default DataGridBySchemaEditable;
@@ -63,7 +63,7 @@ const BooleanInputCell_1 = require("./DataGridBySchemaEditable/BooleanInputCell"
63
63
  const FooterToolbar_1 = require("./DataGridBySchemaEditable/FooterToolbar");
64
64
  const ConfirmDialog_1 = require("./DataGridBySchemaEditable/ConfirmDialog");
65
65
  const APIWrapperContext_1 = require("../context/APIWrapperContext");
66
- 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: optionsACExternal, }, ref) => {
66
+ 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: optionsACExternal, extraValidators, }, ref) => {
67
67
  const { serverEndPoint } = (0, DRFReactBySchemaContext_1.useDRFReactBySchema)();
68
68
  const apiContext = (0, APIWrapperContext_1.useAPIWrapper)();
69
69
  const initialSnackBar = {
@@ -577,6 +577,7 @@ const DataGridBySchemaEditable = (0, react_1.forwardRef)(({ schema, data, rowCou
577
577
  data: emptyItem.current,
578
578
  schema,
579
579
  skipFields,
580
+ extraValidators,
580
581
  });
581
582
  setDataGrid({
582
583
  data,
@@ -121,20 +121,21 @@ const EditableAutocompleteFieldBySchema = react_1.default.forwardRef((_a, ref) =
121
121
  };
122
122
  }
123
123
  if (newValue && newValue.inputValue) {
124
+ const tmpId = (0, utils_1.getTmpId)();
124
125
  if (onEditModel) {
126
+ // Open modal to save new item:
125
127
  onEditModel({
126
128
  fieldKey,
127
129
  index,
128
130
  model: optionsModel,
129
- id: (0, utils_1.getTmpId)(),
131
+ id: tmpId,
130
132
  labelKey,
131
133
  setValue,
132
134
  getValues,
133
135
  fieldsLayout,
134
136
  });
135
- return;
136
137
  }
137
- const tmpId = (0, utils_1.getTmpId)();
138
+ // Define new Item as an "optimistic response"
138
139
  newValue = {
139
140
  id: tmpId,
140
141
  label: newValue.inputValue,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drf-react-by-schema",
3
- "version": "0.17.13",
3
+ "version": "0.17.15",
4
4
  "description": "Components and Tools for building a React App having Django Rest Framework (DRF) as server",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",