@uxf/cms 2.8.0 → 2.10.1
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/package.json
CHANGED
package/pages/FormPage/Form.d.ts
CHANGED
@@ -1,12 +1,17 @@
|
|
1
|
-
|
1
|
+
import React from "react";
|
2
2
|
import { FormProps as ReactFinalFormProps } from "react-final-form";
|
3
3
|
import { FormSchemaResponse } from "../../api";
|
4
4
|
import { FieldComponent } from "./types";
|
5
|
+
import { FormState } from "final-form";
|
6
|
+
declare type SubmitButtonComponent = React.FC<{
|
7
|
+
formState: FormState<any>;
|
8
|
+
}>;
|
5
9
|
interface FormProps<T> extends ReactFinalFormProps<T> {
|
6
10
|
schema: FormSchemaResponse;
|
7
11
|
Field?: FieldComponent;
|
8
12
|
entityAlias: string;
|
9
13
|
isEditing?: boolean;
|
14
|
+
SubmitButton?: SubmitButtonComponent;
|
10
15
|
}
|
11
16
|
export declare const Form: <T extends unknown>(props: FormProps<T>) => JSX.Element;
|
12
17
|
export {};
|
package/pages/FormPage/Form.js
CHANGED
@@ -22,16 +22,19 @@ var Save_1 = __importDefault(require("@mui/icons-material/Save"));
|
|
22
22
|
var react_1 = __importDefault(require("react"));
|
23
23
|
var react_final_form_1 = require("react-final-form");
|
24
24
|
var BaseField_1 = require("./BaseField");
|
25
|
+
var BaseSubmitButton = function (props) {
|
26
|
+
var formState = props.formState;
|
27
|
+
return (react_1.default.createElement(styles_1.Fab, { title: "Ulo\u017Eit", type: "submit", disabled: formState.submitting || formState.pristine },
|
28
|
+
react_1.default.createElement(Save_1.default, null)));
|
29
|
+
};
|
25
30
|
var Form = function (props) {
|
26
|
-
var initialValues = props.initialValues, onSubmit = props.onSubmit, schema = props.schema, _a = props.Field, Field = _a === void 0 ? BaseField_1.BaseField : _a, entityAlias = props.entityAlias, isEditing = props.isEditing;
|
27
|
-
return (react_1.default.createElement(react_final_form_1.Form, { initialValues: initialValues, onSubmit: onSubmit, mutators: __assign({}, final_form_arrays_1.default) }, function (
|
28
|
-
|
29
|
-
return (react_1.default.createElement("form", { onSubmit: handleSubmit },
|
31
|
+
var initialValues = props.initialValues, onSubmit = props.onSubmit, schema = props.schema, _a = props.Field, Field = _a === void 0 ? BaseField_1.BaseField : _a, entityAlias = props.entityAlias, isEditing = props.isEditing, _b = props.SubmitButton, SubmitButton = _b === void 0 ? BaseSubmitButton : _b;
|
32
|
+
return (react_1.default.createElement(react_final_form_1.Form, { initialValues: initialValues, onSubmit: onSubmit, mutators: __assign({}, final_form_arrays_1.default) }, function (formState) {
|
33
|
+
return (react_1.default.createElement("form", { onSubmit: formState.handleSubmit },
|
30
34
|
react_1.default.createElement(Grid_1.default, { container: true, spacing: 3 }, schema.fields.map(function (field, i) { return (react_1.default.createElement(Grid_1.default, { item: true, key: i, xs: 12 },
|
31
35
|
react_1.default.createElement(Field, { fieldSchema: field, entityAlias: entityAlias, isEditing: isEditing }))); })),
|
32
|
-
react_1.default.createElement(
|
33
|
-
react_1.default.createElement(Save_1.default, null))));
|
36
|
+
react_1.default.createElement(SubmitButton, { formState: formState })));
|
34
37
|
}));
|
35
38
|
};
|
36
39
|
exports.Form = Form;
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9Gb3JtUGFnZS9Gb3JtLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdFQUE4QztBQUM5Qyw0REFBc0M7QUFDdEMsbUNBQStCO0FBQy9CLGtFQUFnRDtBQUNoRCxnREFBMEI7QUFDMUIscURBQTRGO0FBRzVGLHlDQUF3QztBQWF4QyxJQUFNLGdCQUFnQixHQUEwQixVQUFDLEtBQUs7SUFDMUMsSUFBQSxTQUFTLEdBQUssS0FBSyxVQUFWLENBQVc7SUFDNUIsT0FBTyxDQUNILDhCQUFDLFlBQUcsSUFBQyxLQUFLLEVBQUMsYUFBUSxFQUFDLElBQUksRUFBQyxRQUFRLEVBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxVQUFVLElBQUksU0FBUyxDQUFDLFFBQVE7UUFDbEYsOEJBQUMsY0FBUSxPQUFHLENBQ1YsQ0FDVCxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUssSUFBTSxJQUFJLEdBQUcsVUFBZ0IsS0FBbUI7SUFFL0MsSUFBQSxhQUFhLEdBT2IsS0FBSyxjQVBRLEVBQ2IsUUFBUSxHQU1SLEtBQUssU0FORyxFQUNSLE1BQU0sR0FLTixLQUFLLE9BTEMsRUFDTixLQUlBLEtBQUssTUFKWSxFQUFqQixLQUFLLG1CQUFHLHFCQUFTLEtBQUEsRUFDakIsV0FBVyxHQUdYLEtBQUssWUFITSxFQUNYLFNBQVMsR0FFVCxLQUFLLFVBRkksRUFDVCxLQUNBLEtBQUssYUFEMEIsRUFBL0IsWUFBWSxtQkFBRyxnQkFBZ0IsS0FBQSxDQUN6QjtJQUVWLE9BQU8sQ0FDSCw4QkFBQyx1QkFBYyxJQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLGVBQU8sMkJBQWEsS0FDekYsVUFBQyxTQUFTO1FBQ1AsT0FBTyxDQUNILHdDQUFNLFFBQVEsRUFBRSxTQUFTLENBQUMsWUFBWTtZQUNsQyw4QkFBQyxjQUFJLElBQUMsU0FBUyxRQUFDLE9BQU8sRUFBRSxDQUFDLElBQ3JCLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQUMsS0FBSyxFQUFFLENBQUMsSUFBSyxPQUFBLENBQzdCLDhCQUFDLGNBQUksSUFBQyxJQUFJLFFBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTtnQkFDckIsOEJBQUMsS0FBSyxJQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxHQUFJLENBQzFFLENBQ1YsRUFKZ0MsQ0FJaEMsQ0FBQyxDQUNDO1lBQ1AsOEJBQUMsWUFBWSxJQUFDLFNBQVMsRUFBRSxTQUFTLEdBQUksQ0FDbkMsQ0FDVixDQUFDO0lBQ04sQ0FBQyxDQUNZLENBQ3BCLENBQUM7QUFDTixDQUFDLENBQUM7QUE3QlcsUUFBQSxJQUFJLFFBNkJmIn0=
|
@@ -96,6 +96,7 @@ var GridPageComponent = function (props) {
|
|
96
96
|
var _a;
|
97
97
|
var metaSchema = props.metaSchema, entityAlias = props.entityAlias, gridSchema = props.gridSchema, getOpenUrl = props.getOpenUrl, getEditUrl = props.getEditUrl, onOpen = props.onOpen, onAdd = props.onAdd, onEdit = props.onEdit, onRemove = props.onRemove, BodyCell = props.BodyCell, FilterInput = props.FilterInput, query = props.query, initialHiddenColumns = props.initialHiddenColumns, loader = props.loader, title = props.title, ActionCell = props.ActionCell, FilterListItem = props.FilterListItem, _b = props.Layout, Layout = _b === void 0 ? DefaultLayout : _b, actionCellWidth = props.actionCellWidth, rowHeight = props.rowHeight, FullTextInputProps = props.FullTextInputProps, defaultConfig = props.defaultConfig;
|
98
98
|
var hiddenColumnProps = (0, useHiddenColumns_1.useHiddenColumns)(entityAlias, initialHiddenColumns);
|
99
|
+
var dataGridRef = (0, react_1.useRef)();
|
99
100
|
var universalLoader = (0, react_1.useCallback)(function (gridName, request, encodedRequest) {
|
100
101
|
var _a, _b;
|
101
102
|
var response = (0, exports.dataGridLoader)(gridName !== null && gridName !== void 0 ? gridName : "", request);
|
@@ -105,11 +106,14 @@ var GridPageComponent = function (props) {
|
|
105
106
|
router_2.default.replace("".concat((0, url_1.parse)(((_a = window.history.state) === null || _a === void 0 ? void 0 : _a.url) || "").pathname, "?").concat(qs_1.default.stringify(newQuery)), "".concat((0, url_1.parse)(((_b = window.history.state) === null || _b === void 0 ? void 0 : _b.as) || "").pathname, "?").concat(qs_1.default.stringify(newQuery)), { shallow: true });
|
106
107
|
return response;
|
107
108
|
}, [query]);
|
109
|
+
var actionsBag = (0, react_1.useMemo)(function () { return ({
|
110
|
+
reload: function () { var _a; return (_a = dataGridRef.current) === null || _a === void 0 ? void 0 : _a.reload(); },
|
111
|
+
}); }, [dataGridRef]);
|
108
112
|
return (react_1.default.createElement(Layout, { key: entityAlias, title: (_a = title !== null && title !== void 0 ? title : metaSchema === null || metaSchema === void 0 ? void 0 : metaSchema.title) !== null && _a !== void 0 ? _a : "" },
|
109
113
|
react_1.default.createElement(Box_1.default, { mb: 10 },
|
110
|
-
react_1.default.createElement(data_grid_1.DataGrid, __assign({ schema: gridSchema, initialState: (query === null || query === void 0 ? void 0 : query.filter) ? (0, router_1.queryParamToString)(query === null || query === void 0 ? void 0 : query.filter) : undefined, title: title !== null && title !== void 0 ? title : metaSchema === null || metaSchema === void 0 ? void 0 : metaSchema.title, onCsvDownload: function (r) { return window.open("/api/cms/datagrid/export/".concat(entityAlias, "?").concat(qs_1.default.stringify(r))); }, gridName: entityAlias, loader: loader !== null && loader !== void 0 ? loader : universalLoader, BodyCell: BodyCell, FilterInput: FilterInput, FilterListItem: FilterListItem }, hiddenColumnProps, { onOpen: onOpen && (function (row) { return onOpen(entityAlias, row); }), getOpenUrl: getOpenUrl && (function (row) { return getOpenUrl(entityAlias, row); }), onEdit: onEdit && (function (row) { return onEdit(entityAlias, row); }), getEditUrl: getEditUrl && (function (row) { return getEditUrl(entityAlias, row); }), onRemove: onRemove && (function (row) { return onRemove(entityAlias, row); }), ActionCell: ActionCell, actionCellWidth: actionCellWidth, rowHeight: rowHeight, FullTextInputProps: FullTextInputProps, defaultConfig: defaultConfig }))),
|
114
|
+
react_1.default.createElement(data_grid_1.DataGrid, __assign({ ref: dataGridRef, schema: gridSchema, initialState: (query === null || query === void 0 ? void 0 : query.filter) ? (0, router_1.queryParamToString)(query === null || query === void 0 ? void 0 : query.filter) : undefined, title: title !== null && title !== void 0 ? title : metaSchema === null || metaSchema === void 0 ? void 0 : metaSchema.title, onCsvDownload: function (r) { return window.open("/api/cms/datagrid/export/".concat(entityAlias, "?").concat(qs_1.default.stringify(r))); }, gridName: entityAlias, loader: loader !== null && loader !== void 0 ? loader : universalLoader, BodyCell: BodyCell, FilterInput: FilterInput, FilterListItem: FilterListItem }, hiddenColumnProps, { onOpen: onOpen && (function (row) { return onOpen(entityAlias, row, actionsBag); }), getOpenUrl: getOpenUrl && (function (row) { return getOpenUrl(entityAlias, row); }), onEdit: onEdit && (function (row) { return onEdit(entityAlias, row, actionsBag); }), getEditUrl: getEditUrl && (function (row) { return getEditUrl(entityAlias, row); }), onRemove: onRemove && (function (row) { return onRemove(entityAlias, row, actionsBag); }), ActionCell: ActionCell, actionCellWidth: actionCellWidth, rowHeight: rowHeight, FullTextInputProps: FullTextInputProps, defaultConfig: defaultConfig }))),
|
111
115
|
onAdd && (!metaSchema || (metaSchema === null || metaSchema === void 0 ? void 0 : metaSchema.actions.includes("add"))) && (react_1.default.createElement(Tooltip_1.default, { title: "P\u0159idat z\u00E1znam" },
|
112
|
-
react_1.default.createElement(Fab_1.default, { sx: { position: "fixed", bottom: 16, right: 16 }, onClick: function () { return onAdd(entityAlias); }, color: "primary" },
|
116
|
+
react_1.default.createElement(Fab_1.default, { sx: { position: "fixed", bottom: 16, right: 16 }, onClick: function () { return onAdd(entityAlias, actionsBag); }, color: "primary" },
|
113
117
|
react_1.default.createElement(Add_1.default, null))))));
|
114
118
|
};
|
115
119
|
GridPageComponent.displayName = "GridPageComponent";
|
@@ -152,4 +156,4 @@ var GridPage = function (config) {
|
|
152
156
|
return (0, withAuthenticate_1.withAuthenticate)({ allowedRoles: config.allowedRoles || ["ROLE_ROOT"] })(Component);
|
153
157
|
};
|
154
158
|
exports.GridPage = GridPage;
|
155
|
-
//# sourceMappingURL=data:application/json;base64,
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JpZFBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvR3JpZFBhZ2UvR3JpZFBhZ2UudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdFQUEwQztBQUMxQywwREFBb0M7QUFDcEMsMERBQW9DO0FBQ3BDLGtFQUE0QztBQUM1Qyw0Q0FBcUU7QUFDckUsc0NBQWlEO0FBRWpELHVEQUFpQztBQUNqQywwQ0FBb0I7QUFDcEIsNkNBQTREO0FBQzVELDJCQUF3QztBQUN4QyxpQ0FBMEM7QUFDMUMsMEVBQXlFO0FBQ3pFLHFDQUFvRDtBQUNwRCxpRUFBcUY7QUFFckYsdURBQXNEO0FBQ3RELHVDQUF5QztBQUVqQyxJQUFBLFlBQVksR0FBSyxJQUFBLHlCQUFtQixHQUFFLGFBQTFCLENBQTJCO0FBRXhDLElBQU0sY0FBYyxHQUFHLFVBQUMsUUFBZ0IsRUFBRSxPQUFnQjtJQUM3RCxPQUFPLFlBQVksQ0FBVyxJQUFJLEVBQUUsNEJBQXFCLFFBQVEsQ0FBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBTixDQUFNLENBQUMsQ0FBQztBQUNuSCxDQUFDLENBQUM7QUFGVyxRQUFBLGNBQWMsa0JBRXpCO0FBRUYsSUFBTSxhQUFhLEdBQW9CLFVBQUMsS0FBSyxJQUFLLE9BQUEsa0RBQVMsS0FBSyxFQUFJLEVBQWxCLENBQWtCLENBQUM7QUFFckUsSUFBTSxpQkFBaUIsR0FBcUMsVUFBQyxLQUFLOztJQUUxRCxJQUFBLFVBQVUsR0FzQlYsS0FBSyxXQXRCSyxFQUNWLFdBQVcsR0FxQlgsS0FBSyxZQXJCTSxFQUNYLFVBQVUsR0FvQlYsS0FBSyxXQXBCSyxFQUNWLFVBQVUsR0Ft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
|
@@ -6,16 +6,19 @@ import { ParsedUrlQuery } from "querystring";
|
|
6
6
|
import { EntityMetaSchema } from "../../api";
|
7
7
|
import { LayoutProps } from "../../lib/Layout";
|
8
8
|
export declare type LayoutComponent = React.FC<LayoutProps>;
|
9
|
+
export declare type ActionsBag = {
|
10
|
+
reload: () => void;
|
11
|
+
};
|
9
12
|
export declare type GridPageComponentProps = {
|
10
13
|
entityAlias: string;
|
11
14
|
title?: string;
|
12
15
|
initialHiddenColumns: string[];
|
13
|
-
onOpen?: (entityAlias: string, row: any) => void;
|
16
|
+
onOpen?: (entityAlias: string, row: any, actions: ActionsBag) => void;
|
14
17
|
getOpenUrl?: (entityAlias: string, row: any) => string | null | undefined;
|
15
|
-
onAdd?: (entityAlias: string) => void;
|
16
|
-
onEdit?: (entityAlias: string, row: any) => void;
|
18
|
+
onAdd?: (entityAlias: string, actions: ActionsBag) => void;
|
19
|
+
onEdit?: (entityAlias: string, row: any, actions: ActionsBag) => void;
|
17
20
|
getEditUrl?: (entityAlias: string, row: any) => string | null | undefined;
|
18
|
-
onRemove?: (entityAlias: string, row: any) => void;
|
21
|
+
onRemove?: (entityAlias: string, row: any, actions: ActionsBag) => void;
|
19
22
|
query: ParsedUrlQuery;
|
20
23
|
loader?: Loader;
|
21
24
|
gridSchema: Schema<any>;
|
@@ -32,12 +35,12 @@ export declare type EntityAliasExtractor = (ctx: NextPageContext) => string;
|
|
32
35
|
export declare type GridPageConfig<T extends object = any> = {
|
33
36
|
title?: string;
|
34
37
|
entityAlias: string | EntityAliasExtractor;
|
35
|
-
onOpen?: (entityAlias: string, row: T) => void;
|
38
|
+
onOpen?: (entityAlias: string, row: T, actions: ActionsBag) => void;
|
36
39
|
getOpenUrl?: (entityAlias: string, row: T) => string | undefined | null;
|
37
|
-
onAdd?: (entityAlias: string) => void;
|
38
|
-
onEdit?: (entityAlias: string, row: T) => void;
|
40
|
+
onAdd?: (entityAlias: string, actions: ActionsBag) => void;
|
41
|
+
onEdit?: (entityAlias: string, row: T, actions: ActionsBag) => void;
|
39
42
|
getEditUrl?: (entityAlias: string, row: T) => string | undefined | null;
|
40
|
-
onRemove?: (entityAlias: string, row: T) => void;
|
43
|
+
onRemove?: (entityAlias: string, row: T, actions: ActionsBag) => void;
|
41
44
|
allowedRoles?: string[];
|
42
45
|
loader?: Loader;
|
43
46
|
BodyCell?: BodyCellComponent<any, any>;
|