drf-react-by-schema 0.16.10 → 0.17.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/components/DataGridBySchemaEditable/GridDateInput.d.ts +4 -3
- package/dist/components/DataGridBySchemaEditable/GridDateInput.js +5 -2
- package/dist/components/DataGridBySchemaEditable.js +1 -0
- package/dist/components/forms/inputs/DesktopDatePickerBySchema.d.ts +1 -1
- package/dist/components/forms/inputs/DesktopDatePickerBySchema.js +9 -15
- package/dist/components/forms/inputs/DesktopDateTimePickerBySchema.d.ts +1 -1
- package/dist/components/forms/inputs/DesktopDateTimePickerBySchema.js +9 -15
- package/dist/utils.d.ts +3 -3
- package/dist/utils.js +2 -1
- package/package.json +3 -3
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { DateView } from '@mui/x-date-pickers';
|
|
3
|
+
import { GenericValue } from '../../utils';
|
|
3
4
|
type GridDateInputProps = {
|
|
4
5
|
field: string;
|
|
5
6
|
id: number | string;
|
|
6
|
-
value?:
|
|
7
|
+
value?: GenericValue;
|
|
7
8
|
column: object;
|
|
8
|
-
dateViews?:
|
|
9
|
+
dateViews?: DateView[];
|
|
9
10
|
};
|
|
10
11
|
export declare const GridDateInput: ({ id, value, field, dateViews }: GridDateInputProps) => React.JSX.Element;
|
|
11
12
|
export {};
|
|
@@ -15,7 +15,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.GridDateInput = void 0;
|
|
16
16
|
const react_1 = __importDefault(require("react"));
|
|
17
17
|
const x_data_grid_1 = require("@mui/x-data-grid");
|
|
18
|
-
const TextField_1 = __importDefault(require("@mui/material/TextField"));
|
|
19
18
|
const DesktopDatePicker_1 = require("@mui/x-date-pickers/DesktopDatePicker");
|
|
20
19
|
const LocalizationProvider_1 = require("@mui/x-date-pickers/LocalizationProvider");
|
|
21
20
|
const AdapterDayjs_1 = require("@mui/x-date-pickers/AdapterDayjs");
|
|
@@ -38,6 +37,10 @@ const GridDateInput = ({ id, value, field, dateViews }) => {
|
|
|
38
37
|
});
|
|
39
38
|
const openTo = buildOpenTo(dateViews);
|
|
40
39
|
return (react_1.default.createElement(LocalizationProvider_1.LocalizationProvider, { dateAdapter: AdapterDayjs_1.AdapterDayjs, adapterLocale: "pt-br" },
|
|
41
|
-
react_1.default.createElement(DesktopDatePicker_1.DesktopDatePicker, { key: field, value: value, onChange: handleChange, views: dateViews, openTo: openTo,
|
|
40
|
+
react_1.default.createElement(DesktopDatePicker_1.DesktopDatePicker, { key: field, value: value, onChange: handleChange, views: dateViews, openTo: openTo, format: inputFormat, slotProps: {
|
|
41
|
+
textField: {
|
|
42
|
+
margin: 'normal',
|
|
43
|
+
},
|
|
44
|
+
} })));
|
|
42
45
|
};
|
|
43
46
|
exports.GridDateInput = GridDateInput;
|
|
@@ -230,6 +230,7 @@ const DataGridBySchemaEditable = (0, react_1.forwardRef)(({ schema, data, rowCou
|
|
|
230
230
|
? schema[col.field].related_editable
|
|
231
231
|
: column.creatable;
|
|
232
232
|
}
|
|
233
|
+
console.log(col, schema[col.field]);
|
|
233
234
|
switch (schema[col.field].type) {
|
|
234
235
|
case 'date':
|
|
235
236
|
column.type = 'date';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import 'dayjs/locale/pt-br';
|
|
3
3
|
import { FieldBySchemaProps } from '../../../utils';
|
|
4
|
-
export default function DesktopDatePickerBySchema({ name, schema, control, errors, fieldKey, index, sx,
|
|
4
|
+
export default function DesktopDatePickerBySchema({ name, schema, control, errors, fieldKey, index, sx, }: FieldBySchemaProps): React.JSX.Element;
|
|
@@ -1,30 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
const react_1 = __importDefault(require("react"));
|
|
18
7
|
const react_hook_form_1 = require("react-hook-form");
|
|
19
|
-
const TextField_1 = __importDefault(require("@mui/material/TextField"));
|
|
20
8
|
const DesktopDatePicker_1 = require("@mui/x-date-pickers/DesktopDatePicker");
|
|
21
9
|
const LocalizationProvider_1 = require("@mui/x-date-pickers/LocalizationProvider");
|
|
22
10
|
const AdapterDayjs_1 = require("@mui/x-date-pickers/AdapterDayjs");
|
|
23
11
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
24
12
|
require("dayjs/locale/pt-br");
|
|
25
13
|
const utils_1 = require("../../../utils");
|
|
26
|
-
function DesktopDatePickerBySchema(
|
|
27
|
-
var { name, schema, control, errors, fieldKey, index, sx = { mr: 2, mt: 2 } } = _a, other = __rest(_a, ["name", "schema", "control", "errors", "fieldKey", "index", "sx"]);
|
|
14
|
+
function DesktopDatePickerBySchema({ name, schema, control, errors, fieldKey, index, sx = { mr: 2, mt: 2 }, }) {
|
|
28
15
|
if (!sx) {
|
|
29
16
|
sx = { minWidth: 200 };
|
|
30
17
|
}
|
|
@@ -48,6 +35,13 @@ function DesktopDatePickerBySchema(_a) {
|
|
|
48
35
|
helperText: errors && errors[name] ? errors[name].message : schema[name].help_text || '',
|
|
49
36
|
};
|
|
50
37
|
return (react_1.default.createElement(react_hook_form_1.Controller, { name: name, control: control, render: ({ field }) => (react_1.default.createElement(LocalizationProvider_1.LocalizationProvider, { dateAdapter: AdapterDayjs_1.AdapterDayjs, adapterLocale: "pt-br" },
|
|
51
|
-
react_1.default.createElement(DesktopDatePicker_1.DesktopDatePicker, Object.assign({}, field, { value: (0, dayjs_1.default)(field.value), label: schema[model].label, views: schema[model].date_views,
|
|
38
|
+
react_1.default.createElement(DesktopDatePicker_1.DesktopDatePicker, Object.assign({}, field, { value: (0, dayjs_1.default)(field.value), label: schema[model].label, views: schema[model].date_views, format: inputFormat, sx: Object.assign({ mt: 2, mb: 1 }, sx), slotProps: {
|
|
39
|
+
textField: {
|
|
40
|
+
error,
|
|
41
|
+
helperText,
|
|
42
|
+
sx,
|
|
43
|
+
margin: 'normal',
|
|
44
|
+
},
|
|
45
|
+
} })))) }));
|
|
52
46
|
}
|
|
53
47
|
exports.default = DesktopDatePickerBySchema;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import 'dayjs/locale/pt-br';
|
|
3
3
|
import { FieldBySchemaProps } from '../../../utils';
|
|
4
|
-
export default function DesktopDateTimePickerBySchema({ name, schema, control, errors, fieldKey, index, sx,
|
|
4
|
+
export default function DesktopDateTimePickerBySchema({ name, schema, control, errors, fieldKey, index, sx, }: FieldBySchemaProps): React.JSX.Element;
|
|
@@ -1,30 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
const react_1 = __importDefault(require("react"));
|
|
18
7
|
const react_hook_form_1 = require("react-hook-form");
|
|
19
|
-
const TextField_1 = __importDefault(require("@mui/material/TextField"));
|
|
20
8
|
const DesktopDateTimePicker_1 = require("@mui/x-date-pickers/DesktopDateTimePicker");
|
|
21
9
|
const LocalizationProvider_1 = require("@mui/x-date-pickers/LocalizationProvider");
|
|
22
10
|
const AdapterDayjs_1 = require("@mui/x-date-pickers/AdapterDayjs");
|
|
23
11
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
24
12
|
require("dayjs/locale/pt-br");
|
|
25
13
|
const utils_1 = require("../../../utils");
|
|
26
|
-
function DesktopDateTimePickerBySchema(
|
|
27
|
-
var { name, schema, control, errors, fieldKey, index, sx = { mr: 2, mt: 2 } } = _a, other = __rest(_a, ["name", "schema", "control", "errors", "fieldKey", "index", "sx"]);
|
|
14
|
+
function DesktopDateTimePickerBySchema({ name, schema, control, errors, fieldKey, index, sx = { mr: 2, mt: 2 }, }) {
|
|
28
15
|
const model = name;
|
|
29
16
|
if (fieldKey && index && index >= 0) {
|
|
30
17
|
name = `${fieldKey}.${index}.${name}`;
|
|
@@ -41,6 +28,13 @@ function DesktopDateTimePickerBySchema(_a) {
|
|
|
41
28
|
helperText: errors && errors[name] ? errors[name].message : schema[name].help_text || '',
|
|
42
29
|
};
|
|
43
30
|
return (react_1.default.createElement(react_hook_form_1.Controller, { name: name, control: control, render: ({ field }) => (react_1.default.createElement(LocalizationProvider_1.LocalizationProvider, { dateAdapter: AdapterDayjs_1.AdapterDayjs, adapterLocale: "pt-br" },
|
|
44
|
-
react_1.default.createElement(DesktopDateTimePicker_1.DesktopDateTimePicker, Object.assign({}, field, { value: (0, dayjs_1.default)(field.value), label: schema[model].label,
|
|
31
|
+
react_1.default.createElement(DesktopDateTimePicker_1.DesktopDateTimePicker, Object.assign({}, field, { value: (0, dayjs_1.default)(field.value), label: schema[model].label, format: "DD/MM/yyyy HH:mm", sx: Object.assign({ mt: 2, mb: 1 }, sx), slotProps: {
|
|
32
|
+
textField: {
|
|
33
|
+
error,
|
|
34
|
+
helperText,
|
|
35
|
+
sx,
|
|
36
|
+
margin: 'normal',
|
|
37
|
+
},
|
|
38
|
+
} })))) }));
|
|
45
39
|
}
|
|
46
40
|
exports.default = DesktopDateTimePickerBySchema;
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import * as Yup from 'yup';
|
|
3
|
-
import { CalendarPickerView } from '@mui/x-date-pickers/CalendarPicker';
|
|
4
3
|
import { GridActionsColDef, GridColDef, GridFilterModel, GridSortModel } from '@mui/x-data-grid';
|
|
5
4
|
import { Control, FieldValues, UseFormGetValues, UseFormSetValue } from 'react-hook-form';
|
|
6
5
|
import { AutocompleteRenderOptionState, SxProps } from '@mui/material';
|
|
7
6
|
import { OnEditModelType } from './context/APIWrapperContext';
|
|
8
7
|
import { serverEndPointType } from './context/DRFReactBySchemaContext';
|
|
8
|
+
import { DateView } from '@mui/x-date-pickers';
|
|
9
9
|
export type Id = string | number | null;
|
|
10
10
|
export type GenericValue = any;
|
|
11
11
|
export type Item = Record<string, GenericValue>;
|
|
@@ -61,7 +61,7 @@ export interface Field {
|
|
|
61
61
|
related_editable?: boolean;
|
|
62
62
|
validators_regex?: Item[];
|
|
63
63
|
many?: boolean;
|
|
64
|
-
date_views?:
|
|
64
|
+
date_views?: DateView[];
|
|
65
65
|
required?: boolean;
|
|
66
66
|
disabled?: boolean;
|
|
67
67
|
help_text?: string;
|
|
@@ -175,7 +175,7 @@ export declare const getPatternFormat: (type: string) => string;
|
|
|
175
175
|
export type AddParametersToEnd<TFunction extends (...args: any) => any, TParameters extends [...args: any]> = (...args: [...Parameters<TFunction>, ...TParameters]) => ReturnType<TFunction>;
|
|
176
176
|
export declare function buildDateFormatBySchema(dateViews: string[] | null | undefined): "DD/MM/YYYY" | "MM/YYYY" | "YYYY" | "MM" | "DD";
|
|
177
177
|
export declare const slugToCamelCase: (str: string) => string;
|
|
178
|
-
export declare const slugify: (text: string | null) =>
|
|
178
|
+
export declare const slugify: (text: string | null) => string;
|
|
179
179
|
export declare function mergeFilterItems(defaultFilter: GridFilterModel | undefined, filter: GridFilterModel | undefined): GridFilterModel | undefined;
|
|
180
180
|
export type ActionType = 'editInline' | 'remove' | 'edit' | 'view';
|
|
181
181
|
export type BulkUpdateData = (newData: Item[]) => Promise<{
|
package/dist/utils.js
CHANGED
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "drf-react-by-schema",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.0",
|
|
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",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"test": "echo \"There are (still) no tests in this package\"",
|
|
9
9
|
"build": "tsc",
|
|
10
|
+
"prepare_disabled": "install-peers",
|
|
10
11
|
"styleguide": "styleguidist server",
|
|
11
12
|
"styleguide:build": "styleguidist build",
|
|
12
13
|
"release:major": "tsc || true && yarn version --version $(semver $npm_package_version -i major) && yarn publish --tag latest",
|
|
@@ -51,7 +52,6 @@
|
|
|
51
52
|
"eslint-plugin-prettier": "^5.0.0",
|
|
52
53
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
53
54
|
"eslint-plugin-tsdoc": "^0.2.17",
|
|
54
|
-
"install-peers": "^1.0.4",
|
|
55
55
|
"install-peers-cli": "^2.2.0",
|
|
56
56
|
"prettier": "^3.0.0",
|
|
57
57
|
"react-docgen-typescript": "^2.2.2",
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"@mui/lab": "^5.0.0-alpha.112",
|
|
69
69
|
"@mui/material": "^5.11.0",
|
|
70
70
|
"@mui/x-data-grid": "^5.17.26",
|
|
71
|
-
"@mui/x-date-pickers": "^
|
|
71
|
+
"@mui/x-date-pickers": "^6.18.1",
|
|
72
72
|
"axios": "^0.27.2",
|
|
73
73
|
"dayjs": "^1.11.10",
|
|
74
74
|
"moment": "^2.29.4",
|