@nvs-dynamic-form/react-core 2.7.1 → 2.7.3

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 Novatorsoft Dynamic Form
3
+ Copyright (c) 2024 Novatorsoft
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md ADDED
@@ -0,0 +1,25 @@
1
+ <p align="center"><a href="https://novatorsoft.com" target="_blank"><img src="https://os.novatorsoft.com/novatorsoft/dark-logo.png" width="700" alt="Novatorsoft Logo"/></a></p>
2
+
3
+ <h1 align="center">React Dynamic Form</h1>
4
+ <p align="center">A React core library that provides the foundational building blocks for creating typed, schema-driven dynamic forms with a consistent developer experience.</p>
5
+
6
+ <p align="center">
7
+ <a href="https://www.npmjs.com/package/nestjs-auth-module" target="_blank"><img src="https://img.shields.io/npm/v/nestjs-auth-module.svg" alt="NPM Version" /></a>
8
+ <a href="https://www.npmjs.com/package/nestjs-auth-module" target="_blank"><img src="https://img.shields.io/npm/l/nestjs-auth-module.svg" alt="Package License" /></a>
9
+ <a href="https://www.npmjs.com/package/nestjs-auth-module" target="_blank"><img src="https://img.shields.io/npm/dm/nestjs-auth-module.svg" alt="NPM Downloads" /></a>
10
+ </p>
11
+ <p align="center">
12
+ <a href="https://www.instagram.com/novatorsoft/" target="_blank"><img src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white" alt="Instagram" /></a>
13
+ <a href="https://www.linkedin.com/company/novatorsoft/" target="_blank"><img src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white" alt="LinkedIn" /></a>
14
+ </p>
15
+
16
+ ## About
17
+ `@nvs-dynamic-form/react-core` helps you build reusable dynamic form systems by centralizing core form primitives, types, and patterns, while integrating with common form and validation tooling (notably Formik and Yup). It’s designed to standardize how dynamic fields are defined, rendered, and validated across projects, reducing duplicated form logic and making complex, data-driven UI forms easier to maintain and scale.
18
+
19
+ ## Documentation
20
+
21
+ For installation, usage, configuration, and examples, see the documentation:
22
+ - [Documentation](https://opensource.novatorsoft.com/docs/dynamic-form-react-core/intro)
23
+
24
+ ## License
25
+ MIT — see [LICENSE](./LICENSE).
@@ -13,4 +13,4 @@ export declare const Elements: ({ fields, formElements, containerComponent, useC
13
13
  fieldArrayAddButtonDefaultOptions?: ArrayFieldAddButton;
14
14
  fieldArrayRemoveButtonDefaultOptions?: ArrayFieldAddButton;
15
15
  labelDefaultOptions?: LabelOptions;
16
- }) => React.JSX.Element | JSX.Element[];
16
+ }) => React.JSX.Element;
@@ -1,47 +1,26 @@
1
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;
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.Elements = void 0;
27
7
  const types_1 = require("../../../types");
28
8
  const field_1 = require("../field");
29
- const react_1 = __importStar(require("react"));
9
+ const react_1 = __importDefault(require("react"));
30
10
  const arrayField_1 = require("../arrayField");
31
11
  const groupField_1 = require("../groupField");
32
12
  const Elements = ({ fields, formElements, containerComponent, useContainersOutsideGroup, useGroupContainer, containerVisible, buttonComponent, fieldArrayAddButtonDefaultOptions = {}, fieldArrayRemoveButtonDefaultOptions = {}, labelDefaultOptions = {}, }) => {
33
- const [fieldsElements, setFieldsElements] = (0, react_1.useState)([]);
34
13
  const createFormElements = () => {
35
- const fieldsElements = [];
14
+ const elements = [];
36
15
  for (const field of fields) {
37
16
  if (field instanceof types_1.GroupField)
38
- fieldsElements.push(createGroupFieldElement(field));
17
+ elements.push(createGroupFieldElement(field));
39
18
  else if (field instanceof types_1.ArrayField)
40
- fieldsElements.push(createArrayFieldElement(field));
19
+ elements.push(createArrayFieldElement(field));
41
20
  else
42
- fieldsElements.push(createSingleFieldElement(field));
21
+ elements.push(createSingleFieldElement(field));
43
22
  }
44
- return fieldsElements;
23
+ return elements;
45
24
  };
46
25
  const createSingleFieldElement = (field) => {
47
26
  return react_1.default.createElement(field_1.Field, { key: field.id, formElements: formElements, field: field });
@@ -52,11 +31,8 @@ const Elements = ({ fields, formElements, containerComponent, useContainersOutsi
52
31
  const createArrayFieldElement = (field) => {
53
32
  return (react_1.default.createElement(arrayField_1.ArrayField, { key: field.id, formElements: formElements, field: field, containerComponent: containerComponent, useContainersOutsideGroup: useContainersOutsideGroup, useGroupContainer: useGroupContainer, containerVisible: containerVisible, buttonComponent: buttonComponent, addButtonDefaultOptions: fieldArrayAddButtonDefaultOptions, removeButtonDefaultOptions: fieldArrayRemoveButtonDefaultOptions, labelDefaultOptions: labelDefaultOptions }));
54
33
  };
55
- (0, react_1.useEffect)(() => {
56
- if (fields.length > 0)
57
- setFieldsElements(createFormElements());
58
- }, [fields]);
59
- return fieldsElements.length > 0 ? fieldsElements : react_1.default.createElement(react_1.default.Fragment, null);
34
+ const fieldsElements = fields.length > 0 ? createFormElements() : [];
35
+ return fieldsElements.length > 0 ? react_1.default.createElement(react_1.default.Fragment, null, fieldsElements) : react_1.default.createElement(react_1.default.Fragment, null);
60
36
  };
61
37
  exports.Elements = Elements;
62
38
  //# sourceMappingURL=_template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/elements/_template.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAKwB;AACxB,oCAA+C;AAC/C,+CAAmD;AAEnD,8CAAgE;AAGhE,8CAAgE;AAEzD,MAAM,QAAQ,GAAG,CAAC,EACvB,MAAM,EACN,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iCAAiC,GAAG,EAAE,EACtC,oCAAoC,GAAG,EAAE,EACzC,mBAAmB,GAAG,EAAE,GAYzB,EAAE,EAAE;IACH,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAgB,EAAE,CAAC,CAAC;IAExE,MAAM,kBAAkB,GAAG,GAAkB,EAAE;QAC7C,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,YAAY,kBAAU;gBAC7B,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;iBACjD,IAAI,KAAK,YAAY,kBAAU;gBAClC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;;gBACjD,cAAc,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,KAAyB,EAAE,EAAE;QAC7D,OAAO,8BAAC,aAAK,IAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5E,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,8BAAC,uBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,GACjC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,8BAAC,uBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,EACjC,uBAAuB,EAAE,iCAAiC,EAC1D,0BAA0B,EAAE,oCAAoC,EAChE,mBAAmB,EAAE,mBAAmB,GACxC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACjE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,6DAAK,CAAC;AAC5D,CAAC,CAAC;AA/EW,QAAA,QAAQ,YA+EnB"}
1
+ {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/elements/_template.tsx"],"names":[],"mappings":";;;;;;AAAA,0CAKwB;AACxB,oCAA+C;AAC/C,kDAA0B;AAE1B,8CAAgE;AAGhE,8CAAgE;AAEzD,MAAM,QAAQ,GAAG,CAAC,EACvB,MAAM,EACN,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iCAAiC,GAAG,EAAE,EACtC,oCAAoC,GAAG,EAAE,EACzC,mBAAmB,GAAG,EAAE,GAYzB,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,GAAkB,EAAE;QAC7C,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,YAAY,kBAAU;gBAC7B,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;iBAC3C,IAAI,KAAK,YAAY,kBAAU;gBAClC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;;gBAC3C,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,KAAyB,EAAE,EAAE;QAC7D,OAAO,8BAAC,aAAK,IAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5E,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,8BAAC,uBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,GACjC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,8BAAC,uBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,EACjC,uBAAuB,EAAE,iCAAiC,EAC1D,0BAA0B,EAAE,oCAAoC,EAChE,mBAAmB,EAAE,mBAAmB,GACxC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,8DAAG,cAAc,CAAI,CAAC,CAAC,CAAC,6DAAK,CAAC;AACnE,CAAC,CAAC;AA1EW,QAAA,QAAQ,YA0EnB"}
@@ -1,48 +1,24 @@
1
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;
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.FormBuilder = void 0;
27
- const react_1 = __importStar(require("react"));
7
+ const react_1 = __importDefault(require("react"));
28
8
  const types_1 = require("../../../types");
29
9
  const container_1 = require("../container");
30
10
  const elements_1 = require("../elements");
31
11
  const FormBuilder = ({ containerComponent, formElements, useContainersOutsideGroup, useGroupContainer, containerVisible, fields, containerOptions = {}, buttonComponent, fieldArrayAddButtonDefaultOptions, fieldArrayRemoveButtonDefaultOptions, labelDefaultOptions, }) => {
32
- const [formContent, setFormContent] = (0, react_1.useState)();
33
12
  const createFormContent = () => {
34
13
  const singleFields = createSingleFieldsElements();
35
14
  const groupFields = createGroupFieldsElements();
36
- let formContent;
37
15
  if (containerVisible && useContainersOutsideGroup && singleFields)
38
- formContent = (react_1.default.createElement(react_1.default.Fragment, null,
16
+ return (react_1.default.createElement(react_1.default.Fragment, null,
39
17
  createContainer(singleFields, containerOptions),
40
18
  groupFields));
41
- else
42
- formContent = createFormGroup(react_1.default.createElement(react_1.default.Fragment, null,
43
- singleFields,
44
- groupFields));
45
- return formContent;
19
+ return createFormGroup(react_1.default.createElement(react_1.default.Fragment, null,
20
+ singleFields,
21
+ groupFields));
46
22
  };
47
23
  const createContentContainer = (formElements) => {
48
24
  return (react_1.default.createElement("div", { className: "nvs-container-fluid" },
@@ -75,10 +51,7 @@ const FormBuilder = ({ containerComponent, formElements, useContainersOutsideGro
75
51
  const createFormGroup = (formContent) => {
76
52
  return react_1.default.createElement("div", { className: "df-form-group" }, formContent);
77
53
  };
78
- (0, react_1.useEffect)(() => {
79
- setFormContent(createFormContent());
80
- }, [fields]);
81
- return react_1.default.createElement(react_1.default.Fragment, null, formContent);
54
+ return react_1.default.createElement(react_1.default.Fragment, null, createFormContent());
82
55
  };
83
56
  exports.FormBuilder = FormBuilder;
84
57
  //# sourceMappingURL=_template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/formBuilder/_template.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/formBuilder/_template.tsx"],"names":[],"mappings":"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"}
@@ -13,4 +13,4 @@ export declare const Elements: ({ fields, formElements, containerComponent, useC
13
13
  fieldArrayAddButtonDefaultOptions?: ArrayFieldAddButton;
14
14
  fieldArrayRemoveButtonDefaultOptions?: ArrayFieldAddButton;
15
15
  labelDefaultOptions?: LabelOptions;
16
- }) => React.JSX.Element | JSX.Element[];
16
+ }) => React.JSX.Element;
@@ -1,21 +1,20 @@
1
1
  import { ArrayField, GroupField, } from "../../../types";
2
2
  import { Field } from "../field";
3
- import React, { useEffect, useState } from "react";
3
+ import React from "react";
4
4
  import { ArrayField as ArrayFieldElement } from "../arrayField";
5
5
  import { GroupField as GroupFieldElement } from "../groupField";
6
6
  export const Elements = ({ fields, formElements, containerComponent, useContainersOutsideGroup, useGroupContainer, containerVisible, buttonComponent, fieldArrayAddButtonDefaultOptions = {}, fieldArrayRemoveButtonDefaultOptions = {}, labelDefaultOptions = {}, }) => {
7
- const [fieldsElements, setFieldsElements] = useState([]);
8
7
  const createFormElements = () => {
9
- const fieldsElements = [];
8
+ const elements = [];
10
9
  for (const field of fields) {
11
10
  if (field instanceof GroupField)
12
- fieldsElements.push(createGroupFieldElement(field));
11
+ elements.push(createGroupFieldElement(field));
13
12
  else if (field instanceof ArrayField)
14
- fieldsElements.push(createArrayFieldElement(field));
13
+ elements.push(createArrayFieldElement(field));
15
14
  else
16
- fieldsElements.push(createSingleFieldElement(field));
15
+ elements.push(createSingleFieldElement(field));
17
16
  }
18
- return fieldsElements;
17
+ return elements;
19
18
  };
20
19
  const createSingleFieldElement = (field) => {
21
20
  return React.createElement(Field, { key: field.id, formElements: formElements, field: field });
@@ -26,10 +25,7 @@ export const Elements = ({ fields, formElements, containerComponent, useContaine
26
25
  const createArrayFieldElement = (field) => {
27
26
  return (React.createElement(ArrayFieldElement, { key: field.id, formElements: formElements, field: field, containerComponent: containerComponent, useContainersOutsideGroup: useContainersOutsideGroup, useGroupContainer: useGroupContainer, containerVisible: containerVisible, buttonComponent: buttonComponent, addButtonDefaultOptions: fieldArrayAddButtonDefaultOptions, removeButtonDefaultOptions: fieldArrayRemoveButtonDefaultOptions, labelDefaultOptions: labelDefaultOptions }));
28
27
  };
29
- useEffect(() => {
30
- if (fields.length > 0)
31
- setFieldsElements(createFormElements());
32
- }, [fields]);
33
- return fieldsElements.length > 0 ? fieldsElements : React.createElement(React.Fragment, null);
28
+ const fieldsElements = fields.length > 0 ? createFormElements() : [];
29
+ return fieldsElements.length > 0 ? React.createElement(React.Fragment, null, fieldsElements) : React.createElement(React.Fragment, null);
34
30
  };
35
31
  //# sourceMappingURL=_template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/elements/_template.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,UAAU,GAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAgB,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGhE,OAAO,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEhE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,MAAM,EACN,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iCAAiC,GAAG,EAAE,EACtC,oCAAoC,GAAG,EAAE,EACzC,mBAAmB,GAAG,EAAE,GAYzB,EAAE,EAAE;IACH,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAExE,MAAM,kBAAkB,GAAG,GAAkB,EAAE;QAC7C,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,YAAY,UAAU;gBAC7B,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;iBACjD,IAAI,KAAK,YAAY,UAAU;gBAClC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;;gBACjD,cAAc,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,KAAyB,EAAE,EAAE;QAC7D,OAAO,oBAAC,KAAK,IAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5E,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,oBAAC,iBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,GACjC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,oBAAC,iBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,EACjC,uBAAuB,EAAE,iCAAiC,EAC1D,0BAA0B,EAAE,oCAAoC,EAChE,mBAAmB,EAAE,mBAAmB,GACxC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACjE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,yCAAK,CAAC;AAC5D,CAAC,CAAC"}
1
+ {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/elements/_template.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,UAAU,GAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAgB,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGhE,OAAO,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEhE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,MAAM,EACN,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iCAAiC,GAAG,EAAE,EACtC,oCAAoC,GAAG,EAAE,EACzC,mBAAmB,GAAG,EAAE,GAYzB,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,GAAkB,EAAE;QAC7C,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,YAAY,UAAU;gBAC7B,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;iBAC3C,IAAI,KAAK,YAAY,UAAU;gBAClC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;;gBAC3C,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,KAAyB,EAAE,EAAE;QAC7D,OAAO,oBAAC,KAAK,IAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5E,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,oBAAC,iBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,GACjC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,KAAiB,EAAE,EAAE;QACpD,OAAO,CACL,oBAAC,iBAAiB,IAChB,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,kBAAkB,EAAE,kBAAkB,EACtC,yBAAyB,EAAE,yBAAyB,EACpD,iBAAiB,EAAE,iBAAiB,EACpC,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAgB,EACjC,uBAAuB,EAAE,iCAAiC,EAC1D,0BAA0B,EAAE,oCAAoC,EAChE,mBAAmB,EAAE,mBAAmB,GACxC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,0CAAG,cAAc,CAAI,CAAC,CAAC,CAAC,yCAAK,CAAC;AACnE,CAAC,CAAC"}
@@ -1,22 +1,18 @@
1
- import React, { useEffect, useState } from "react";
1
+ import React from "react";
2
2
  import { ArrayField, GroupField } from "../../../types";
3
3
  import { Container } from "../container";
4
4
  import { Elements } from "../elements";
5
5
  export const FormBuilder = ({ containerComponent, formElements, useContainersOutsideGroup, useGroupContainer, containerVisible, fields, containerOptions = {}, buttonComponent, fieldArrayAddButtonDefaultOptions, fieldArrayRemoveButtonDefaultOptions, labelDefaultOptions, }) => {
6
- const [formContent, setFormContent] = useState();
7
6
  const createFormContent = () => {
8
7
  const singleFields = createSingleFieldsElements();
9
8
  const groupFields = createGroupFieldsElements();
10
- let formContent;
11
9
  if (containerVisible && useContainersOutsideGroup && singleFields)
12
- formContent = (React.createElement(React.Fragment, null,
10
+ return (React.createElement(React.Fragment, null,
13
11
  createContainer(singleFields, containerOptions),
14
12
  groupFields));
15
- else
16
- formContent = createFormGroup(React.createElement(React.Fragment, null,
17
- singleFields,
18
- groupFields));
19
- return formContent;
13
+ return createFormGroup(React.createElement(React.Fragment, null,
14
+ singleFields,
15
+ groupFields));
20
16
  };
21
17
  const createContentContainer = (formElements) => {
22
18
  return (React.createElement("div", { className: "nvs-container-fluid" },
@@ -49,9 +45,6 @@ export const FormBuilder = ({ containerComponent, formElements, useContainersOut
49
45
  const createFormGroup = (formContent) => {
50
46
  return React.createElement("div", { className: "df-form-group" }, formContent);
51
47
  };
52
- useEffect(() => {
53
- setFormContent(createFormContent());
54
- }, [fields]);
55
- return React.createElement(React.Fragment, null, formContent);
48
+ return React.createElement(React.Fragment, null, createFormContent());
56
49
  };
57
50
  //# sourceMappingURL=_template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/formBuilder/_template.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../../lib/nvs-dynamic-form/components/formBuilder/_template.tsx"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import {
5
5
  LabelOptions,
6
6
  } from "../../../types";
7
7
  import { Field, IFormElement } from "../field";
8
- import React, { useEffect, useState } from "react";
8
+ import React from "react";
9
9
 
10
10
  import { ArrayField as ArrayFieldElement } from "../arrayField";
11
11
  import { FieldBase } from "../../../types";
@@ -35,18 +35,16 @@ export const Elements = ({
35
35
  fieldArrayRemoveButtonDefaultOptions?: ArrayFieldAddButton;
36
36
  labelDefaultOptions?: LabelOptions;
37
37
  }) => {
38
- const [fieldsElements, setFieldsElements] = useState<JSX.Element[]>([]);
39
-
40
38
  const createFormElements = (): JSX.Element[] => {
41
- const fieldsElements = [];
39
+ const elements = [];
42
40
  for (const field of fields) {
43
41
  if (field instanceof GroupField)
44
- fieldsElements.push(createGroupFieldElement(field));
42
+ elements.push(createGroupFieldElement(field));
45
43
  else if (field instanceof ArrayField)
46
- fieldsElements.push(createArrayFieldElement(field));
47
- else fieldsElements.push(createSingleFieldElement(field));
44
+ elements.push(createArrayFieldElement(field));
45
+ else elements.push(createSingleFieldElement(field));
48
46
  }
49
- return fieldsElements;
47
+ return elements;
50
48
  };
51
49
 
52
50
  const createSingleFieldElement = (field: FieldBase<unknown>) => {
@@ -86,9 +84,6 @@ export const Elements = ({
86
84
  );
87
85
  };
88
86
 
89
- useEffect(() => {
90
- if (fields.length > 0) setFieldsElements(createFormElements());
91
- }, [fields]);
92
-
93
- return fieldsElements.length > 0 ? fieldsElements : <></>;
87
+ const fieldsElements = fields.length > 0 ? createFormElements() : [];
88
+ return fieldsElements.length > 0 ? <>{fieldsElements}</> : <></>;
94
89
  };
@@ -1,4 +1,4 @@
1
- import React, { ReactNode, useEffect, useState } from "react";
1
+ import React, { ReactNode } from "react";
2
2
  import { ArrayField, GroupField, LabelOptions } from "../../../types";
3
3
  import { IFormElement } from "../field";
4
4
  import { FieldType } from "../../_type";
@@ -31,29 +31,24 @@ export const FormBuilder = ({
31
31
  fieldArrayRemoveButtonDefaultOptions?: ArrayFieldAddButton;
32
32
  labelDefaultOptions?: LabelOptions;
33
33
  }) => {
34
- const [formContent, setFormContent] = useState<ReactNode>();
35
-
36
34
  const createFormContent = () => {
37
35
  const singleFields = createSingleFieldsElements();
38
36
  const groupFields = createGroupFieldsElements();
39
37
 
40
- let formContent;
41
38
  if (containerVisible && useContainersOutsideGroup && singleFields)
42
- formContent = (
39
+ return (
43
40
  <>
44
41
  {createContainer(singleFields, containerOptions)}
45
42
  {groupFields}
46
43
  </>
47
44
  );
48
- else
49
- formContent = createFormGroup(
50
- <>
51
- {singleFields}
52
- {groupFields}
53
- </>,
54
- );
55
45
 
56
- return formContent;
46
+ return createFormGroup(
47
+ <>
48
+ {singleFields}
49
+ {groupFields}
50
+ </>,
51
+ );
57
52
  };
58
53
 
59
54
  const createContentContainer = (formElements: ReactNode) => {
@@ -141,9 +136,5 @@ export const FormBuilder = ({
141
136
  return <div className="df-form-group">{formContent}</div>;
142
137
  };
143
138
 
144
- useEffect(() => {
145
- setFormContent(createFormContent());
146
- }, [fields]);
147
-
148
- return <>{formContent}</>;
139
+ return <>{createFormContent()}</>;
149
140
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nvs-dynamic-form/react-core",
3
- "version": "2.7.1",
3
+ "version": "2.7.3",
4
4
  "types": "dist/cjs/index.d.ts",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",