@nvs-dynamic-form/react-core 1.5.0 → 2.1.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/cjs/nvs-dynamic-form/_style.css +40 -0
- package/dist/cjs/nvs-dynamic-form/_template.d.ts +2 -2
- package/dist/cjs/nvs-dynamic-form/_template.js +24 -62
- package/dist/cjs/nvs-dynamic-form/_template.js.map +1 -1
- package/dist/cjs/nvs-dynamic-form/_type.d.ts +20 -4
- package/dist/cjs/nvs-dynamic-form/elements/arrayField/_template.d.ts +3 -0
- package/dist/cjs/nvs-dynamic-form/elements/arrayField/_template.js +88 -0
- package/dist/cjs/nvs-dynamic-form/elements/arrayField/_template.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/arrayField/_type.d.ts +12 -0
- package/dist/cjs/nvs-dynamic-form/elements/arrayField/_type.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/arrayField/index.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/_template.d.ts +3 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/_template.js +28 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/_template.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/_type.d.ts +8 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/_type.js +3 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/_type.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/index.js +19 -0
- package/dist/cjs/nvs-dynamic-form/elements/button/index.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/_template.d.ts +3 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/_template.js +12 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/_template.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/_type.d.ts +8 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/_type.js +3 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/_type.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/index.d.ts +2 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/index.js +19 -0
- package/dist/cjs/nvs-dynamic-form/elements/container/index.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/field/_type.d.ts +7 -6
- package/dist/cjs/nvs-dynamic-form/elements/groupField/_template.d.ts +2 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/_template.js +26 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/_template.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/_type.d.ts +9 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/_type.js +3 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/_type.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/index.d.ts +2 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/index.js +19 -0
- package/dist/cjs/nvs-dynamic-form/elements/groupField/index.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/_template.d.ts +3 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/_template.js +87 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/_template.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/_type.d.ts +8 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/_type.js +3 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/_type.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/index.d.ts +1 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/index.js +18 -0
- package/dist/cjs/nvs-dynamic-form/formikForm/index.js.map +1 -0
- package/dist/cjs/nvs-dynamic-form/services/generateFormContentUtils.d.ts +44 -0
- package/dist/cjs/nvs-dynamic-form/services/generateFormContentUtils.js +96 -0
- package/dist/cjs/nvs-dynamic-form/services/generateFormContentUtils.js.map +1 -0
- package/dist/cjs/types/array-field-action-button.type.d.ts +14 -0
- package/dist/cjs/types/array-field-action-button.type.js +26 -0
- package/dist/cjs/types/array-field-action-button.type.js.map +1 -0
- package/dist/cjs/types/array-field.type.d.ts +13 -0
- package/dist/cjs/types/array-field.type.js +15 -0
- package/dist/cjs/types/array-field.type.js.map +1 -0
- package/dist/cjs/types/{form-field.type.js → field-base.type.js} +1 -1
- package/dist/cjs/types/{form-field.type.js.map → field-base.type.js.map} +1 -1
- package/dist/cjs/types/group-field.type.d.ts +10 -0
- package/dist/cjs/types/group-field.type.js +13 -0
- package/dist/cjs/types/group-field.type.js.map +1 -0
- package/dist/cjs/types/index.d.ts +5 -2
- package/dist/cjs/types/index.js +5 -2
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/{submit-button-options.type.d.ts → submit-button-default-options.type.d.ts} +1 -1
- package/dist/cjs/types/submit-button-default-options.type.js +3 -0
- package/dist/cjs/types/submit-button-default-options.type.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/_style.css +40 -0
- package/dist/esm/nvs-dynamic-form/_template.d.ts +2 -2
- package/dist/esm/nvs-dynamic-form/_template.js +22 -40
- package/dist/esm/nvs-dynamic-form/_template.js.map +1 -1
- package/dist/esm/nvs-dynamic-form/_type.d.ts +20 -4
- package/dist/esm/nvs-dynamic-form/elements/arrayField/_template.d.ts +3 -0
- package/dist/esm/nvs-dynamic-form/elements/arrayField/_template.js +61 -0
- package/dist/esm/nvs-dynamic-form/elements/arrayField/_template.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/arrayField/_type.d.ts +12 -0
- package/dist/esm/nvs-dynamic-form/elements/arrayField/_type.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/arrayField/index.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/button/_template.d.ts +3 -0
- package/dist/esm/nvs-dynamic-form/elements/button/_template.js +21 -0
- package/dist/esm/nvs-dynamic-form/elements/button/_template.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/button/_type.d.ts +8 -0
- package/dist/esm/nvs-dynamic-form/elements/button/_type.js +2 -0
- package/dist/esm/nvs-dynamic-form/elements/button/_type.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/button/index.d.ts +2 -0
- package/dist/esm/nvs-dynamic-form/elements/button/index.js +3 -0
- package/dist/esm/nvs-dynamic-form/elements/button/index.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/container/_template.d.ts +3 -0
- package/dist/esm/nvs-dynamic-form/elements/container/_template.js +5 -0
- package/dist/esm/nvs-dynamic-form/elements/container/_template.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/container/_type.d.ts +8 -0
- package/dist/esm/nvs-dynamic-form/elements/container/_type.js +2 -0
- package/dist/esm/nvs-dynamic-form/elements/container/_type.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/container/index.d.ts +2 -0
- package/dist/esm/nvs-dynamic-form/elements/container/index.js +3 -0
- package/dist/esm/nvs-dynamic-form/elements/container/index.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/field/_type.d.ts +7 -6
- package/dist/esm/nvs-dynamic-form/elements/groupField/_template.d.ts +2 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/_template.js +22 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/_template.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/_type.d.ts +9 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/_type.js +2 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/_type.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/index.d.ts +2 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/index.js +3 -0
- package/dist/esm/nvs-dynamic-form/elements/groupField/index.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/formikForm/_template.d.ts +3 -0
- package/dist/esm/nvs-dynamic-form/formikForm/_template.js +60 -0
- package/dist/esm/nvs-dynamic-form/formikForm/_template.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/formikForm/_type.d.ts +8 -0
- package/dist/esm/nvs-dynamic-form/formikForm/_type.js +2 -0
- package/dist/esm/nvs-dynamic-form/formikForm/_type.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/formikForm/index.d.ts +1 -0
- package/dist/esm/nvs-dynamic-form/formikForm/index.js +2 -0
- package/dist/esm/nvs-dynamic-form/formikForm/index.js.map +1 -0
- package/dist/esm/nvs-dynamic-form/services/generateFormContentUtils.d.ts +44 -0
- package/dist/esm/nvs-dynamic-form/services/generateFormContentUtils.js +89 -0
- package/dist/esm/nvs-dynamic-form/services/generateFormContentUtils.js.map +1 -0
- package/dist/esm/types/array-field-action-button.type.d.ts +14 -0
- package/dist/esm/types/array-field-action-button.type.js +20 -0
- package/dist/esm/types/array-field-action-button.type.js.map +1 -0
- package/dist/esm/types/array-field.type.d.ts +13 -0
- package/dist/esm/types/array-field.type.js +11 -0
- package/dist/esm/types/array-field.type.js.map +1 -0
- package/dist/esm/types/{form-field.type.js → field-base.type.js} +1 -1
- package/dist/esm/types/{form-field.type.js.map → field-base.type.js.map} +1 -1
- package/dist/esm/types/group-field.type.d.ts +10 -0
- package/dist/esm/types/group-field.type.js +9 -0
- package/dist/esm/types/group-field.type.js.map +1 -0
- package/dist/esm/types/index.d.ts +5 -2
- package/dist/esm/types/index.js +5 -2
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/{submit-button-options.type.d.ts → submit-button-default-options.type.d.ts} +1 -1
- package/dist/esm/types/submit-button-default-options.type.js +2 -0
- package/dist/esm/types/submit-button-default-options.type.js.map +1 -0
- package/lib/nvs-dynamic-form/_stories.tsx +275 -16
- package/lib/nvs-dynamic-form/_style.css +40 -0
- package/lib/nvs-dynamic-form/_template.tsx +44 -65
- package/lib/nvs-dynamic-form/_type.tsx +27 -4
- package/lib/nvs-dynamic-form/elements/arrayField/_template.tsx +149 -0
- package/lib/nvs-dynamic-form/elements/arrayField/_type.tsx +18 -0
- package/lib/nvs-dynamic-form/elements/arrayField/index.tsx +2 -0
- package/lib/nvs-dynamic-form/elements/button/_template.tsx +42 -0
- package/lib/nvs-dynamic-form/elements/button/_type.tsx +8 -0
- package/lib/nvs-dynamic-form/elements/button/index.tsx +2 -0
- package/lib/nvs-dynamic-form/elements/container/_template.tsx +10 -0
- package/lib/nvs-dynamic-form/elements/container/_type.tsx +7 -0
- package/lib/nvs-dynamic-form/elements/container/index.tsx +2 -0
- package/lib/nvs-dynamic-form/elements/field/_type.tsx +8 -6
- package/lib/nvs-dynamic-form/elements/groupField/_template.tsx +32 -0
- package/lib/nvs-dynamic-form/elements/groupField/_type.tsx +10 -0
- package/lib/nvs-dynamic-form/elements/groupField/index.tsx +2 -0
- package/lib/nvs-dynamic-form/formikForm/_template.tsx +85 -0
- package/lib/nvs-dynamic-form/formikForm/_type.tsx +9 -0
- package/lib/nvs-dynamic-form/formikForm/index.tsx +1 -0
- package/lib/nvs-dynamic-form/services/generateFormContentUtils.tsx +190 -0
- package/lib/types/array-field-action-button.type.tsx +26 -0
- package/lib/types/array-field.type.tsx +23 -0
- package/lib/types/group-field.type.tsx +15 -0
- package/lib/types/index.tsx +5 -2
- package/lib/types/submit-button-default-options.type.tsx +5 -0
- package/package.json +1 -1
- package/dist/cjs/nvs-dynamic-form/elements/submit-button/_template.d.ts +0 -3
- package/dist/cjs/nvs-dynamic-form/elements/submit-button/_template.js +0 -30
- package/dist/cjs/nvs-dynamic-form/elements/submit-button/_template.js.map +0 -1
- package/dist/cjs/nvs-dynamic-form/elements/submit-button/_type.d.ts +0 -11
- package/dist/cjs/nvs-dynamic-form/elements/submit-button/_type.js.map +0 -1
- package/dist/cjs/nvs-dynamic-form/elements/submit-button/index.js.map +0 -1
- package/dist/cjs/types/submit-button-options.type.js +0 -7
- package/dist/cjs/types/submit-button-options.type.js.map +0 -1
- package/dist/esm/nvs-dynamic-form/elements/submit-button/_template.d.ts +0 -3
- package/dist/esm/nvs-dynamic-form/elements/submit-button/_template.js +0 -23
- package/dist/esm/nvs-dynamic-form/elements/submit-button/_template.js.map +0 -1
- package/dist/esm/nvs-dynamic-form/elements/submit-button/_type.d.ts +0 -11
- package/dist/esm/nvs-dynamic-form/elements/submit-button/_type.js.map +0 -1
- package/dist/esm/nvs-dynamic-form/elements/submit-button/index.js.map +0 -1
- package/dist/esm/types/submit-button-options.type.js +0 -3
- package/dist/esm/types/submit-button-options.type.js.map +0 -1
- package/lib/nvs-dynamic-form/elements/submit-button/_template.tsx +0 -42
- package/lib/nvs-dynamic-form/elements/submit-button/_type.tsx +0 -12
- package/lib/types/submit-button-options.type.tsx +0 -5
- /package/dist/cjs/nvs-dynamic-form/elements/{submit-button → arrayField}/_type.js +0 -0
- /package/dist/cjs/nvs-dynamic-form/elements/{submit-button → arrayField}/index.d.ts +0 -0
- /package/dist/cjs/nvs-dynamic-form/elements/{submit-button → arrayField}/index.js +0 -0
- /package/dist/{esm/nvs-dynamic-form/elements/submit-button → cjs/nvs-dynamic-form/elements/button}/index.d.ts +0 -0
- /package/dist/cjs/types/{form-field.type.d.ts → field-base.type.d.ts} +0 -0
- /package/dist/esm/nvs-dynamic-form/elements/{submit-button → arrayField}/_type.js +0 -0
- /package/{lib/nvs-dynamic-form/elements/submit-button/index.tsx → dist/esm/nvs-dynamic-form/elements/arrayField/index.d.ts} +0 -0
- /package/dist/esm/nvs-dynamic-form/elements/{submit-button → arrayField}/index.js +0 -0
- /package/dist/esm/types/{form-field.type.d.ts → field-base.type.d.ts} +0 -0
- /package/lib/types/{form-field.type.tsx → field-base.type.tsx} +0 -0
|
@@ -3,3 +3,43 @@
|
|
|
3
3
|
margin-top: 8px;
|
|
4
4
|
padding: 0 4px;
|
|
5
5
|
}
|
|
6
|
+
|
|
7
|
+
.df-form-group {
|
|
8
|
+
gap: 8px;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.df-array-field {
|
|
14
|
+
display: flex;
|
|
15
|
+
width: 100%;
|
|
16
|
+
box-sizing: border-box;
|
|
17
|
+
align-items: center;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.df-array-field-content {
|
|
21
|
+
flex-grow: 1;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.df-array-field-remove-button {
|
|
25
|
+
flex-shrink: 0;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.df-array-field.remove-button-bottom {
|
|
29
|
+
flex-direction: column;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.df-array-field.remove-button-bottom .df-array-field-content {
|
|
33
|
+
width: 100%;
|
|
34
|
+
margin-right: 0;
|
|
35
|
+
margin-bottom: 8px;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.df-array-field.remove-button-bottom .df-array-field-remove-button {
|
|
39
|
+
width: 100%;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.df-array-field-add-button {
|
|
43
|
+
width: 100%;
|
|
44
|
+
padding: 0 4px;
|
|
45
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "nvs-flexgrid";
|
|
2
2
|
import "./_style.css";
|
|
3
|
-
import React from "react";
|
|
4
3
|
import { INvsDynamicForm } from "./_type";
|
|
5
|
-
|
|
4
|
+
import React from "react";
|
|
5
|
+
export declare const NvsDynamicForm: ({ onSubmit, formElements, fields, formClass, buttonComponent, submitButtonDefaultOptions, submitButtonVisible, submitButtonLabel, submitButtonIsFullWidth, submitButtonPosition, submitButtonContainerClass, container, containerVisible, containerOptions, useContainersOutsideGroup, useGroupContainer, addButtonDefaultOptions, removeButtonDefaultOptions, }: INvsDynamicForm) => React.JSX.Element;
|
|
@@ -1,72 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
4
|
};
|
|
25
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
6
|
exports.NvsDynamicForm = void 0;
|
|
27
7
|
require("nvs-flexgrid");
|
|
28
8
|
require("./_style.css");
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
return acc;
|
|
47
|
-
}, {});
|
|
48
|
-
return Yup.object(validationSchema);
|
|
49
|
-
};
|
|
50
|
-
const [defaultValues, setDefaultValues] = (0, react_1.useState)(getDefaultValues());
|
|
51
|
-
const [validateSchema, setValidateSchema] = (0, react_1.useState)(getValidateSchema());
|
|
52
|
-
(0, react_1.useEffect)(() => {
|
|
53
|
-
setDefaultValues(getDefaultValues());
|
|
54
|
-
setValidateSchema(getValidateSchema());
|
|
55
|
-
}, [fields]);
|
|
56
|
-
const createFormElements = () => {
|
|
57
|
-
return fields.map((field) => (react_1.default.createElement(field_1.Field, { key: field.id, formElements: formElements, field: field })));
|
|
58
|
-
};
|
|
59
|
-
const createForm = () => (react_1.default.createElement(formik_1.Form, { className: `nvs-container-fluid${formClass ? ` ${formClass}` : ""}` },
|
|
60
|
-
react_1.default.createElement("div", { className: "nvs-row" }, createFormElements()),
|
|
61
|
-
react_1.default.createElement(submit_button_1.SubmitButton, { submitButton: submitButton, submitButtonVisible: submitButtonVisible, submitButtonLabel: submitButtonLabel, submitButtonIsFullWidth: submitButtonIsFullWidth, submitButtonPosition: submitButtonPosition })));
|
|
62
|
-
const formik = (0, formik_1.useFormik)({
|
|
63
|
-
initialValues: defaultValues,
|
|
64
|
-
validationSchema: validateSchema,
|
|
65
|
-
onSubmit: async (values) => {
|
|
66
|
-
onSubmit && (await onSubmit(values));
|
|
67
|
-
},
|
|
9
|
+
const button_1 = require("./elements/button");
|
|
10
|
+
const formikForm_1 = require("./formikForm");
|
|
11
|
+
const generateFormContentUtils_1 = require("./services/generateFormContentUtils");
|
|
12
|
+
const react_1 = __importDefault(require("react"));
|
|
13
|
+
const NvsDynamicForm = ({ onSubmit, formElements = {}, fields = [], formClass, buttonComponent, submitButtonDefaultOptions, submitButtonVisible = true, submitButtonLabel = submitButtonDefaultOptions.label, submitButtonIsFullWidth = submitButtonDefaultOptions.isFullWidth, submitButtonPosition = submitButtonDefaultOptions.position, submitButtonContainerClass, container = ({ children }) => react_1.default.createElement(react_1.default.Fragment, null, children), containerVisible = false, containerOptions = {}, useContainersOutsideGroup = false, useGroupContainer = false, addButtonDefaultOptions, removeButtonDefaultOptions, }) => {
|
|
14
|
+
const generateFormContentUtils = new generateFormContentUtils_1.GenerateFormContentUtils({
|
|
15
|
+
containerComponent: container,
|
|
16
|
+
formElements,
|
|
17
|
+
useContainersOutsideGroup,
|
|
18
|
+
useGroupContainer,
|
|
19
|
+
containerVisible,
|
|
20
|
+
fields,
|
|
21
|
+
containerOptions,
|
|
22
|
+
buttonComponent,
|
|
23
|
+
fieldArrayAddButtonDefaultOptions: addButtonDefaultOptions,
|
|
24
|
+
fieldArrayRemoveButtonDefaultOptions: removeButtonDefaultOptions,
|
|
68
25
|
});
|
|
69
|
-
|
|
26
|
+
const formikForm = (react_1.default.createElement(formikForm_1.FormikForm, { onSubmit: onSubmit, fields: fields, formClass: formClass },
|
|
27
|
+
generateFormContentUtils.createFormContent(),
|
|
28
|
+
react_1.default.createElement(button_1.Button, { buttonComponent: buttonComponent, visible: submitButtonVisible, label: submitButtonLabel, isFullWidth: submitButtonIsFullWidth, position: submitButtonPosition, containerClass: submitButtonContainerClass })));
|
|
29
|
+
return containerVisible && !useContainersOutsideGroup
|
|
30
|
+
? generateFormContentUtils.createContainer(formikForm, containerOptions)
|
|
31
|
+
: formikForm;
|
|
70
32
|
};
|
|
71
33
|
exports.NvsDynamicForm = NvsDynamicForm;
|
|
72
34
|
//# sourceMappingURL=_template.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../lib/nvs-dynamic-form/_template.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../lib/nvs-dynamic-form/_template.tsx"],"names":[],"mappings":";;;;;;AAAA,wBAAsB;AACtB,wBAAsB;AAEtB,8CAA2C;AAC3C,6CAA0C;AAC1C,kFAA+E;AAE/E,kDAA0B;AAEnB,MAAM,cAAc,GAAG,CAAC,EAC7B,QAAQ,EACR,YAAY,GAAG,EAAE,EACjB,MAAM,GAAG,EAAE,EACX,SAAS,EACT,eAAe,EACf,0BAA0B,EAC1B,mBAAmB,GAAG,IAAI,EAC1B,iBAAiB,GAAG,0BAA0B,CAAC,KAAK,EACpD,uBAAuB,GAAG,0BAA0B,CAAC,WAAW,EAChE,oBAAoB,GAAG,0BAA0B,CAAC,QAAQ,EAC1D,0BAA0B,EAC1B,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,8DAAG,QAAQ,CAAI,EAC7C,gBAAgB,GAAG,KAAK,EACxB,gBAAgB,GAAG,EAAE,EACrB,yBAAyB,GAAG,KAAK,EACjC,iBAAiB,GAAG,KAAK,EACzB,uBAAuB,EACvB,0BAA0B,GACV,EAAE,EAAE;IACpB,MAAM,wBAAwB,GAAG,IAAI,mDAAwB,CAAC;QAC5D,kBAAkB,EAAE,SAAS;QAC7B,YAAY;QACZ,yBAAyB;QACzB,iBAAiB;QACjB,gBAAgB;QAChB,MAAM;QACN,gBAAgB;QAChB,eAAe;QACf,iCAAiC,EAAE,uBAAuB;QAC1D,oCAAoC,EAAE,0BAA0B;KACjE,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,CACjB,8BAAC,uBAAU,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;QACjE,wBAAwB,CAAC,iBAAiB,EAAE;QAC7C,8BAAC,eAAM,IACL,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,iBAAiB,EACxB,WAAW,EAAE,uBAAuB,EACpC,QAAQ,EAAE,oBAAoB,EAC9B,cAAc,EAAE,0BAA0B,GAC1C,CACS,CACd,CAAC;IAEF,OAAO,gBAAgB,IAAI,CAAC,yBAAyB;QACnD,CAAC,CAAC,wBAAwB,CAAC,eAAe,CAAC,UAAU,EAAE,gBAAgB,CAAC;QACxE,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC,CAAC;AAlDW,QAAA,cAAc,kBAkDzB"}
|
|
@@ -1,8 +1,24 @@
|
|
|
1
|
-
import { FieldBase } from "../types";
|
|
1
|
+
import { ArrayField, ArrayFieldAddButton, ArrayFieldRemoveButton, FieldBase, GroupField, ISubmitButtonDefaultOptions } from "../types";
|
|
2
2
|
import { IField } from "./elements/field";
|
|
3
|
-
|
|
4
|
-
export interface INvsDynamicForm extends
|
|
3
|
+
export type FieldType = FieldBase<any> | GroupField | ArrayField<any>;
|
|
4
|
+
export interface INvsDynamicForm extends Omit<IField, "field"> {
|
|
5
5
|
onSubmit?: ((values: unknown) => void) | ((values: unknown) => Promise<void>);
|
|
6
|
-
fields: Array<
|
|
6
|
+
fields: Array<FieldType>;
|
|
7
7
|
formClass?: string;
|
|
8
|
+
container?: React.FC<any>;
|
|
9
|
+
containerOptions?: {
|
|
10
|
+
[key: string]: any;
|
|
11
|
+
};
|
|
12
|
+
containerVisible?: boolean;
|
|
13
|
+
useContainersOutsideGroup?: boolean;
|
|
14
|
+
useGroupContainer?: boolean;
|
|
15
|
+
buttonComponent: React.FC<any>;
|
|
16
|
+
submitButtonDefaultOptions: ISubmitButtonDefaultOptions;
|
|
17
|
+
submitButtonVisible?: boolean;
|
|
18
|
+
submitButtonLabel?: string;
|
|
19
|
+
submitButtonPosition?: "left" | "center" | "right";
|
|
20
|
+
submitButtonIsFullWidth?: boolean;
|
|
21
|
+
submitButtonContainerClass?: string;
|
|
22
|
+
addButtonDefaultOptions?: ArrayFieldAddButton;
|
|
23
|
+
removeButtonDefaultOptions?: ArrayFieldRemoveButton;
|
|
8
24
|
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.ArrayField = void 0;
|
|
27
|
+
const lodash = __importStar(require("lodash"));
|
|
28
|
+
const types_1 = require("../../../types");
|
|
29
|
+
const react_1 = __importStar(require("react"));
|
|
30
|
+
const formik_1 = require("formik");
|
|
31
|
+
const generateFormContentUtils_1 = require("../../services/generateFormContentUtils");
|
|
32
|
+
const ArrayField = ({ field: arrayField, formElements, containerComponent, containerVisible, useContainersOutsideGroup, useGroupContainer, buttonComponent: ButtonComponent, addButtonDefaultOptions, removeButtonDefaultOptions, }) => {
|
|
33
|
+
const [addButtonOptions] = (0, react_1.useState)(new types_1.ArrayFieldAddButton(lodash.merge(addButtonDefaultOptions ?? {}, arrayField.addButtonOptions ?? {})));
|
|
34
|
+
const [removeButtonOptions] = (0, react_1.useState)(new types_1.ArrayFieldRemoveButton(lodash.merge(removeButtonDefaultOptions ?? {}, arrayField.removeButtonOptions ?? {})));
|
|
35
|
+
const generateFormContentUtils = new generateFormContentUtils_1.GenerateFormContentUtils({
|
|
36
|
+
containerComponent,
|
|
37
|
+
formElements,
|
|
38
|
+
useContainersOutsideGroup,
|
|
39
|
+
useGroupContainer,
|
|
40
|
+
containerVisible: containerVisible,
|
|
41
|
+
fields: arrayField.fields,
|
|
42
|
+
fieldArrayAddButtonDefaultOptions: addButtonDefaultOptions,
|
|
43
|
+
fieldArrayRemoveButtonDefaultOptions: removeButtonDefaultOptions,
|
|
44
|
+
});
|
|
45
|
+
const createArrayItem = (name, index) => {
|
|
46
|
+
return arrayField.fields.map((field) => ({
|
|
47
|
+
...field,
|
|
48
|
+
id: `${name}[${index}].${field.id}`,
|
|
49
|
+
}));
|
|
50
|
+
};
|
|
51
|
+
const getDefaultItem = () => {
|
|
52
|
+
return arrayField.fields.reduce((acc, field) => {
|
|
53
|
+
acc[field.id] = field.defaultValue;
|
|
54
|
+
return acc;
|
|
55
|
+
}, {});
|
|
56
|
+
};
|
|
57
|
+
const createArrayFields = (index) => {
|
|
58
|
+
return (react_1.default.createElement("div", { className: "df-array-field-content" },
|
|
59
|
+
react_1.default.createElement("div", { className: "nvs-container-fluid" },
|
|
60
|
+
react_1.default.createElement("div", { className: "nvs-row" }, generateFormContentUtils.createFormElements(createArrayItem(arrayField.id, index))))));
|
|
61
|
+
};
|
|
62
|
+
const createRemoveButton = (onRemoveItem) => {
|
|
63
|
+
return (react_1.default.createElement("div", { className: "nvs-col-12" },
|
|
64
|
+
react_1.default.createElement(ButtonComponent, { onClick: () => {
|
|
65
|
+
onRemoveItem();
|
|
66
|
+
}, type: "button", ...removeButtonOptions.options }, removeButtonOptions.label)));
|
|
67
|
+
};
|
|
68
|
+
const createArrayItemRemoveButton = (onRemoveItem) => {
|
|
69
|
+
return (react_1.default.createElement("div", { className: "df-array-field-remove-button" }, generateFormContentUtils.createContentContainer(createRemoveButton(onRemoveItem))));
|
|
70
|
+
};
|
|
71
|
+
const createFieldArrayContent = (onRemoveItem, index) => {
|
|
72
|
+
return (react_1.default.createElement("div", { className: `df-array-field remove-button-${removeButtonOptions.position}`, key: index },
|
|
73
|
+
createArrayFields(index),
|
|
74
|
+
createArrayItemRemoveButton(() => onRemoveItem(index))));
|
|
75
|
+
};
|
|
76
|
+
const createAddButton = (onAddItem) => {
|
|
77
|
+
return (react_1.default.createElement("div", { className: "df-array-field-add-button" },
|
|
78
|
+
react_1.default.createElement(ButtonComponent, { onClick: () => onAddItem(getDefaultItem()), type: "button", ...addButtonOptions.options }, addButtonOptions.label)));
|
|
79
|
+
};
|
|
80
|
+
const createArrayItemAddButton = (onAddItem) => {
|
|
81
|
+
return generateFormContentUtils.createContentContainer(createAddButton(onAddItem));
|
|
82
|
+
};
|
|
83
|
+
return (react_1.default.createElement(formik_1.FieldArray, { name: arrayField.id }, ({ push, remove, form }) => (react_1.default.createElement(react_1.default.Fragment, null,
|
|
84
|
+
form.values[arrayField.id]?.map((_, index) => createFieldArrayContent(remove, index)),
|
|
85
|
+
createArrayItemAddButton(push)))));
|
|
86
|
+
};
|
|
87
|
+
exports.ArrayField = ArrayField;
|
|
88
|
+
//# sourceMappingURL=_template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/arrayField/_template.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,0CAA6E;AAC7E,+CAAwC;AAExC,mCAAoC;AACpC,sFAAmF;AAG5E,MAAM,UAAU,GAA0B,CAAC,EAChD,KAAK,EAAE,UAAU,EACjB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,eAAe,EAAE,eAAe,EAChC,uBAAuB,EACvB,0BAA0B,GACd,EAAE,EAAE;IAChB,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EACjC,IAAI,2BAAmB,CACrB,MAAM,CAAC,KAAK,CACV,uBAAuB,IAAI,EAAE,EAC7B,UAAU,CAAC,gBAAgB,IAAI,EAAE,CAClC,CACF,CACF,CAAC;IACF,MAAM,CAAC,mBAAmB,CAAC,GAAG,IAAA,gBAAQ,EACpC,IAAI,8BAAsB,CACxB,MAAM,CAAC,KAAK,CACV,0BAA0B,IAAI,EAAE,EAChC,UAAU,CAAC,mBAAmB,IAAI,EAAE,CACrC,CACF,CACF,CAAC;IACF,MAAM,wBAAwB,GAAG,IAAI,mDAAwB,CAAC;QAC5D,kBAAkB;QAClB,YAAY;QACZ,yBAAyB;QACzB,iBAAiB;QACjB,gBAAgB,EAAE,gBAAgB;QAClC,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,iCAAiC,EAAE,uBAAuB;QAC1D,oCAAoC,EAAE,0BAA0B;KACjE,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QACtD,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvC,GAAG,KAAK;YACR,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,EAAE;SACpC,CAAC,CAAC,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,KAAK,EAAE,EAAE;YACrE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;YACnC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,EAAE;QAC1C,OAAO,CACL,uCAAK,SAAS,EAAC,wBAAwB;YACrC,uCAAK,SAAS,EAAC,qBAAqB;gBAClC,uCAAK,SAAS,EAAC,SAAS,IACrB,wBAAwB,CAAC,kBAAkB,CAC1C,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CACtC,CACG,CACF,CACF,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,YAAsB,EAAE,EAAE;QACpD,OAAO,CACL,uCAAK,SAAS,EAAC,YAAY;YACzB,8BAAC,eAAe,IACd,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,EAAE,CAAC;gBACjB,CAAC,EACD,IAAI,EAAC,QAAQ,KACT,mBAAmB,CAAC,OAAO,IAE9B,mBAAmB,CAAC,KAAK,CACV,CACd,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,YAAsB,EAAE,EAAE;QAC7D,OAAO,CACL,uCAAK,SAAS,EAAC,8BAA8B,IAC1C,wBAAwB,CAAC,sBAAsB,CAC9C,kBAAkB,CAAC,YAAY,CAAC,CACjC,CACG,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAC9B,YAAqC,EACrC,KAAa,EACb,EAAE;QACF,OAAO,CACL,uCACE,SAAS,EAAE,gCAAgC,mBAAmB,CAAC,QAAQ,EAAE,EACzE,GAAG,EAAE,KAAK;YAET,iBAAiB,CAAC,KAAK,CAAC;YACxB,2BAA2B,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CACnD,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,SAAmB,EAAE,EAAE;QAC9C,OAAO,CACL,uCAAK,SAAS,EAAC,2BAA2B;YACxC,8BAAC,eAAe,IACd,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,EAC1C,IAAI,EAAC,QAAQ,KACT,gBAAgB,CAAC,OAAO,IAE3B,gBAAgB,CAAC,KAAK,CACP,CACd,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,SAAmB,EAAE,EAAE;QACvD,OAAO,wBAAwB,CAAC,sBAAsB,CACpD,eAAe,CAAC,SAAS,CAAC,CAC3B,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,mBAAU,IAAC,IAAI,EAAE,UAAU,CAAC,EAAE,IAC5B,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAC3B;QACG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,KAAa,EAAE,EAAE,CACzD,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CACvC;QACA,wBAAwB,CAAC,IAAI,CAAC,CAC9B,CACJ,CACU,CACd,CAAC;AACJ,CAAC,CAAC;AA3IW,QAAA,UAAU,cA2IrB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ArrayField, ArrayFieldAddButton, ArrayFieldRemoveButton } from "../../../types";
|
|
2
|
+
import { IField } from "../field";
|
|
3
|
+
export interface IArrayField extends IField {
|
|
4
|
+
field: ArrayField;
|
|
5
|
+
buttonComponent: React.FC<any>;
|
|
6
|
+
containerComponent: React.FC<any>;
|
|
7
|
+
containerVisible: boolean;
|
|
8
|
+
useContainersOutsideGroup: boolean;
|
|
9
|
+
useGroupContainer: boolean;
|
|
10
|
+
addButtonDefaultOptions?: ArrayFieldAddButton;
|
|
11
|
+
removeButtonDefaultOptions?: ArrayFieldRemoveButton;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_type.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/arrayField/_type.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/arrayField/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,0CAAwB"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Button = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const Button = ({ buttonComponent: ButtonComponent, visible, label, position = "right", isFullWidth, containerClass, }) => {
|
|
9
|
+
const getButtonPositionClass = (position) => {
|
|
10
|
+
const classes = {
|
|
11
|
+
left: "nvs-jc-start",
|
|
12
|
+
right: "nvs-jc-end",
|
|
13
|
+
center: "nvs-jc-center",
|
|
14
|
+
};
|
|
15
|
+
return classes[position];
|
|
16
|
+
};
|
|
17
|
+
const getSubmitButtonClasses = () => {
|
|
18
|
+
const buttonClasses = ["df-button"];
|
|
19
|
+
isFullWidth && buttonClasses.push("nvs-col-12");
|
|
20
|
+
return buttonClasses.join(" ");
|
|
21
|
+
};
|
|
22
|
+
return visible ? (react_1.default.createElement("div", { className: `nvs-container-fluid${containerClass ? ` ${containerClass}` : ""}` },
|
|
23
|
+
react_1.default.createElement("div", { className: `nvs-row ${getButtonPositionClass(position)}` },
|
|
24
|
+
react_1.default.createElement("div", { className: getSubmitButtonClasses() },
|
|
25
|
+
react_1.default.createElement(ButtonComponent, null, label))))) : (react_1.default.createElement(react_1.default.Fragment, null));
|
|
26
|
+
};
|
|
27
|
+
exports.Button = Button;
|
|
28
|
+
//# sourceMappingURL=_template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/button/_template.tsx"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAEnB,MAAM,MAAM,GAAG,CAAC,EACrB,eAAe,EAAE,eAAe,EAChC,OAAO,EACP,KAAK,EACL,QAAQ,GAAG,OAAO,EAClB,WAAW,EACX,cAAc,GACN,EAAE,EAAE;IACZ,MAAM,sBAAsB,GAAG,CAAC,QAAqC,EAAE,EAAE;QACvE,MAAM,OAAO,GAAG;YACd,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE,eAAe;SACxB,CAAC;QACF,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAClC,MAAM,aAAa,GAAG,CAAC,WAAW,CAAC,CAAC;QAEpC,WAAW,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEhD,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,CAAC,CAAC,CACf,uCACE,SAAS,EAAE,sBAAsB,cAAc,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QAE7E,uCAAK,SAAS,EAAE,WAAW,sBAAsB,CAAC,QAAQ,CAAC,EAAE;YAC3D,uCAAK,SAAS,EAAE,sBAAsB,EAAE;gBACtC,8BAAC,eAAe,QAAE,KAAK,CAAmB,CACtC,CACF,CACF,CACP,CAAC,CAAC,CAAC,CACF,6DAAK,CACN,CAAC;AACJ,CAAC,CAAC;AAtCW,QAAA,MAAM,UAsCjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_type.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/button/_type.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./_template"), exports);
|
|
18
|
+
__exportStar(require("./_type"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/button/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,0CAAwB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Container = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const Container = ({ containerComponent: CustomContainer, options = {}, children, }) => {
|
|
9
|
+
return react_1.default.createElement(CustomContainer, { ...options }, children);
|
|
10
|
+
};
|
|
11
|
+
exports.Container = Container;
|
|
12
|
+
//# sourceMappingURL=_template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/container/_template.tsx"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAEnB,MAAM,SAAS,GAAG,CAAC,EACxB,kBAAkB,EAAE,eAAe,EACnC,OAAO,GAAG,EAAE,EACZ,QAAQ,GACG,EAAE,EAAE;IACf,OAAO,8BAAC,eAAe,OAAK,OAAO,IAAG,QAAQ,CAAmB,CAAC;AACpE,CAAC,CAAC;AANW,QAAA,SAAS,aAMpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_type.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/container/_type.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./_type"), exports);
|
|
18
|
+
__exportStar(require("./_template"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/container/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,8CAA4B"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { FieldBase } from "../../../types";
|
|
2
|
+
export interface IFormElement {
|
|
3
|
+
[key: string]: {
|
|
4
|
+
component: React.FC<any>;
|
|
5
|
+
class: typeof FieldBase<any>;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
2
8
|
export interface IField {
|
|
3
9
|
field: FieldBase<unknown>;
|
|
4
|
-
formElements:
|
|
5
|
-
[key: string]: {
|
|
6
|
-
component: React.FC<any>;
|
|
7
|
-
class: typeof FieldBase<any>;
|
|
8
|
-
};
|
|
9
|
-
};
|
|
10
|
+
formElements: IFormElement;
|
|
10
11
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GroupField = void 0;
|
|
4
|
+
const generateFormContentUtils_1 = require("../../services/generateFormContentUtils");
|
|
5
|
+
const GroupField = ({ field: groupField, formElements, containerComponent, containerVisible, useContainersOutsideGroup, useGroupContainer, }) => {
|
|
6
|
+
const generateFormContentUtils = new generateFormContentUtils_1.GenerateFormContentUtils({
|
|
7
|
+
containerComponent,
|
|
8
|
+
formElements,
|
|
9
|
+
useContainersOutsideGroup,
|
|
10
|
+
useGroupContainer,
|
|
11
|
+
containerOptions: groupField.containerOptions,
|
|
12
|
+
containerVisible: containerVisible && groupField.containerVisible,
|
|
13
|
+
fields: groupField.fields.map((field) => {
|
|
14
|
+
field.id = `${groupField.id}.${field.id}`;
|
|
15
|
+
return field;
|
|
16
|
+
}),
|
|
17
|
+
});
|
|
18
|
+
const isContainerVisible = () => {
|
|
19
|
+
return groupField.containerVisible && useGroupContainer && containerVisible;
|
|
20
|
+
};
|
|
21
|
+
return isContainerVisible()
|
|
22
|
+
? generateFormContentUtils.createFormContent()
|
|
23
|
+
: generateFormContentUtils.createFormElements(groupField.fields);
|
|
24
|
+
};
|
|
25
|
+
exports.GroupField = GroupField;
|
|
26
|
+
//# sourceMappingURL=_template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/groupField/_template.tsx"],"names":[],"mappings":";;;AAAA,sFAAmF;AAG5E,MAAM,UAAU,GAAG,CAAC,EACzB,KAAK,EAAE,UAAU,EACjB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,GACL,EAAE,EAAE;IAChB,MAAM,wBAAwB,GAAG,IAAI,mDAAwB,CAAC;QAC5D,kBAAkB;QAClB,YAAY;QACZ,yBAAyB;QACzB,iBAAiB;QACjB,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;QAC7C,gBAAgB,EAAE,gBAAgB,IAAI,UAAU,CAAC,gBAAiB;QAClE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACtC,KAAK,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,OAAO,UAAU,CAAC,gBAAgB,IAAI,iBAAiB,IAAI,gBAAgB,CAAC;IAC9E,CAAC,CAAC;IAEF,OAAO,kBAAkB,EAAE;QACzB,CAAC,CAAC,wBAAwB,CAAC,iBAAiB,EAAE;QAC9C,CAAC,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACrE,CAAC,CAAC;AA5BW,QAAA,UAAU,cA4BrB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GroupField } from "../../../types";
|
|
2
|
+
import { IField } from "../field";
|
|
3
|
+
export interface IGroupField extends IField {
|
|
4
|
+
field: GroupField;
|
|
5
|
+
containerComponent: React.FC<any>;
|
|
6
|
+
containerVisible: boolean;
|
|
7
|
+
useContainersOutsideGroup: boolean;
|
|
8
|
+
useGroupContainer: boolean;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_type.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/groupField/_type.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./_type"), exports);
|
|
18
|
+
__exportStar(require("./_template"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/elements/groupField/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,8CAA4B"}
|