@micromerce/formbuilder-react 1.0.664 → 1.0.665

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.
Files changed (228) hide show
  1. package/dist/formbuilder.js +521 -0
  2. package/dist/formbuilder.js.LICENSE.txt +60 -0
  3. package/dist/formbuilder.js.map +1 -0
  4. package/package.json +5 -4
  5. package/dist/assets/icons/error/Error.js +0 -6
  6. package/dist/assets/icons/error/Error.js.map +0 -1
  7. package/dist/components/Checkbox/Checkbox.js +0 -37
  8. package/dist/components/Checkbox/Checkbox.js.map +0 -1
  9. package/dist/components/Checkbox/Checkbox.module.scss +0 -10
  10. package/dist/components/Checkbox/index.js +0 -2
  11. package/dist/components/Checkbox/index.js.map +0 -1
  12. package/dist/components/ControlWrapper/ControlWrapper.js +0 -37
  13. package/dist/components/ControlWrapper/ControlWrapper.js.map +0 -1
  14. package/dist/components/ControlWrapper/index.js +0 -2
  15. package/dist/components/ControlWrapper/index.js.map +0 -1
  16. package/dist/components/DateRangeGroup/DateRangeGroup.js +0 -69
  17. package/dist/components/DateRangeGroup/DateRangeGroup.js.map +0 -1
  18. package/dist/components/DateRangeGroup/DateRangeGroup.styles.js +0 -59
  19. package/dist/components/DateRangeGroup/DateRangeGroup.styles.js.map +0 -1
  20. package/dist/components/DateRangeGroup/components/CalendarModal.js +0 -90
  21. package/dist/components/DateRangeGroup/components/CalendarModal.js.map +0 -1
  22. package/dist/components/DateRangeGroup/index.js +0 -2
  23. package/dist/components/DateRangeGroup/index.js.map +0 -1
  24. package/dist/components/ErrorBoundary/ErrorBoundary.js +0 -22
  25. package/dist/components/ErrorBoundary/ErrorBoundary.js.map +0 -1
  26. package/dist/components/FileUploader/FileUploader.js +0 -30
  27. package/dist/components/FileUploader/FileUploader.js.map +0 -1
  28. package/dist/components/FileUploader/index.js +0 -2
  29. package/dist/components/FileUploader/index.js.map +0 -1
  30. package/dist/components/FormBuilder/FormBuilder.js +0 -74
  31. package/dist/components/FormBuilder/FormBuilder.js.map +0 -1
  32. package/dist/components/FormBuilder/FormBuilder.module.scss +0 -94
  33. package/dist/components/FormBuilder/index.js +0 -2
  34. package/dist/components/FormBuilder/index.js.map +0 -1
  35. package/dist/components/FormBuilder/utils/extractFormControlValues/extractFormControlValues.js +0 -50
  36. package/dist/components/FormBuilder/utils/extractFormControlValues/extractFormControlValues.js.map +0 -1
  37. package/dist/components/FormBuilder/utils/extractFormControlValues/index.js +0 -2
  38. package/dist/components/FormBuilder/utils/extractFormControlValues/index.js.map +0 -1
  39. package/dist/components/FormBuilder/utils/jsonToUrlEncoded/index.js +0 -2
  40. package/dist/components/FormBuilder/utils/jsonToUrlEncoded/index.js.map +0 -1
  41. package/dist/components/FormBuilder/utils/jsonToUrlEncoded/jsonToUrlEncoded.js +0 -15
  42. package/dist/components/FormBuilder/utils/jsonToUrlEncoded/jsonToUrlEncoded.js.map +0 -1
  43. package/dist/components/FormFooter/FormFooter.js +0 -46
  44. package/dist/components/FormFooter/FormFooter.js.map +0 -1
  45. package/dist/components/FormFooter/FormFooter.module.scss +0 -65
  46. package/dist/components/FormFooter/components/Switch.js +0 -15
  47. package/dist/components/FormFooter/components/Switch.js.map +0 -1
  48. package/dist/components/FormFooter/index.js +0 -2
  49. package/dist/components/FormFooter/index.js.map +0 -1
  50. package/dist/components/FormGroup/FormGroup.js +0 -18
  51. package/dist/components/FormGroup/FormGroup.js.map +0 -1
  52. package/dist/components/FormGroup/FormGroup.module.scss +0 -69
  53. package/dist/components/FormGroup/index.js +0 -2
  54. package/dist/components/FormGroup/index.js.map +0 -1
  55. package/dist/components/FormList/FormList.js +0 -66
  56. package/dist/components/FormList/FormList.js.map +0 -1
  57. package/dist/components/FormList/FormList.module.scss +0 -173
  58. package/dist/components/FormList/index.js +0 -2
  59. package/dist/components/FormList/index.js.map +0 -1
  60. package/dist/components/GeneralFormGroup/GeneralFormGroup.js +0 -4
  61. package/dist/components/GeneralFormGroup/GeneralFormGroup.js.map +0 -1
  62. package/dist/components/GeneralFormGroup/index.js +0 -2
  63. package/dist/components/GeneralFormGroup/index.js.map +0 -1
  64. package/dist/components/Group/Group.js +0 -32
  65. package/dist/components/Group/Group.js.map +0 -1
  66. package/dist/components/Group/Group.module.scss +0 -28
  67. package/dist/components/Group/index.js +0 -2
  68. package/dist/components/Group/index.js.map +0 -1
  69. package/dist/components/Input/Input.js +0 -57
  70. package/dist/components/Input/Input.js.map +0 -1
  71. package/dist/components/Input/Input.module.scss +0 -3
  72. package/dist/components/Input/index.js +0 -2
  73. package/dist/components/Input/index.js.map +0 -1
  74. package/dist/components/Input/input.styles.js +0 -24
  75. package/dist/components/Input/input.styles.js.map +0 -1
  76. package/dist/components/InputFreeSolo/InputFreeSolo.js +0 -67
  77. package/dist/components/InputFreeSolo/InputFreeSolo.js.map +0 -1
  78. package/dist/components/InputFreeSolo/InputFreeSolo.module.scss +0 -29
  79. package/dist/components/InputFreeSolo/index.js +0 -2
  80. package/dist/components/InputFreeSolo/index.js.map +0 -1
  81. package/dist/components/MrnInput/MrnInput.js +0 -64
  82. package/dist/components/MrnInput/MrnInput.js.map +0 -1
  83. package/dist/components/MrnInput/MrnInput.module.scss +0 -31
  84. package/dist/components/MrnInput/hooks/useMrn.js +0 -92
  85. package/dist/components/MrnInput/hooks/useMrn.js.map +0 -1
  86. package/dist/components/MrnInput/index.js +0 -2
  87. package/dist/components/MrnInput/index.js.map +0 -1
  88. package/dist/components/MrnInput/services/fetchMrn.js +0 -30
  89. package/dist/components/MrnInput/services/fetchMrn.js.map +0 -1
  90. package/dist/components/MrnInput/ui-helper/Link/Link.js +0 -15
  91. package/dist/components/MrnInput/ui-helper/Link/Link.js.map +0 -1
  92. package/dist/components/MrnInput/utils/mrnUtils/mrnUtils.js +0 -35
  93. package/dist/components/MrnInput/utils/mrnUtils/mrnUtils.js.map +0 -1
  94. package/dist/components/MrnInput/utils/resolveMrnLinks/resolveMrnLink.js +0 -11
  95. package/dist/components/MrnInput/utils/resolveMrnLinks/resolveMrnLink.js.map +0 -1
  96. package/dist/components/MrnInput/utils/resolveNestedQueryLink/resolveNestedQueryLink.js +0 -19
  97. package/dist/components/MrnInput/utils/resolveNestedQueryLink/resolveNestedQueryLink.js.map +0 -1
  98. package/dist/components/MrnInput/utils/urlSearchParam/urlSearchParam.js +0 -8
  99. package/dist/components/MrnInput/utils/urlSearchParam/urlSearchParam.js.map +0 -1
  100. package/dist/components/MultiSelect/MultiSelect.js +0 -61
  101. package/dist/components/MultiSelect/MultiSelect.js.map +0 -1
  102. package/dist/components/MultiSelect/MultiSelect.module.scss +0 -13
  103. package/dist/components/MultiSelect/index.js +0 -2
  104. package/dist/components/MultiSelect/index.js.map +0 -1
  105. package/dist/components/MultiSelect/utils/extractSelectedOptionValues/extractSelectedOptionValues.js +0 -21
  106. package/dist/components/MultiSelect/utils/extractSelectedOptionValues/extractSelectedOptionValues.js.map +0 -1
  107. package/dist/components/MultiSelect/utils/extractSelectedOptionValues/index.js +0 -2
  108. package/dist/components/MultiSelect/utils/extractSelectedOptionValues/index.js.map +0 -1
  109. package/dist/components/PasswordInput/PasswordInput.js +0 -21
  110. package/dist/components/PasswordInput/PasswordInput.js.map +0 -1
  111. package/dist/components/PasswordInput/PasswordInput.module.scss +0 -26
  112. package/dist/components/PasswordInput/index.js +0 -2
  113. package/dist/components/PasswordInput/index.js.map +0 -1
  114. package/dist/components/QueryControl/QueryControl.js +0 -95
  115. package/dist/components/QueryControl/QueryControl.js.map +0 -1
  116. package/dist/components/QueryControl/data/defaultControls.js +0 -95
  117. package/dist/components/QueryControl/data/defaultControls.js.map +0 -1
  118. package/dist/components/QueryControl/index.js +0 -2
  119. package/dist/components/QueryControl/index.js.map +0 -1
  120. package/dist/components/QueryControl/ui-helper/Wrapper/QueryControlWrapper.js +0 -8
  121. package/dist/components/QueryControl/ui-helper/Wrapper/QueryControlWrapper.js.map +0 -1
  122. package/dist/components/QueryControl/ui-helper/Wrapper/QueryControlWrapper.styles.js +0 -14
  123. package/dist/components/QueryControl/ui-helper/Wrapper/QueryControlWrapper.styles.js.map +0 -1
  124. package/dist/components/QueryControl/ui-helper/Wrapper/index.js +0 -2
  125. package/dist/components/QueryControl/ui-helper/Wrapper/index.js.map +0 -1
  126. package/dist/components/QueryControl/utils/allControlsHidden/allControlsHidden.js +0 -39
  127. package/dist/components/QueryControl/utils/allControlsHidden/allControlsHidden.js.map +0 -1
  128. package/dist/components/QueryControl/utils/allControlsHidden/index.js +0 -2
  129. package/dist/components/QueryControl/utils/allControlsHidden/index.js.map +0 -1
  130. package/dist/components/QueryControl/utils/getMatchingControls.js +0 -19
  131. package/dist/components/QueryControl/utils/getMatchingControls.js.map +0 -1
  132. package/dist/components/QueryControl/utils/hasExpertControl/hasExpertControl.js +0 -38
  133. package/dist/components/QueryControl/utils/hasExpertControl/hasExpertControl.js.map +0 -1
  134. package/dist/components/QueryControl/utils/hasExpertControl/index.js +0 -2
  135. package/dist/components/QueryControl/utils/hasExpertControl/index.js.map +0 -1
  136. package/dist/components/QueryControl/utils/hideGroup/hideGroup.js +0 -9
  137. package/dist/components/QueryControl/utils/hideGroup/hideGroup.js.map +0 -1
  138. package/dist/components/QueryControl/utils/hideGroup/index.js +0 -2
  139. package/dist/components/QueryControl/utils/hideGroup/index.js.map +0 -1
  140. package/dist/components/Select/Select.js +0 -67
  141. package/dist/components/Select/Select.js.map +0 -1
  142. package/dist/components/Select/Select.module.scss +0 -15
  143. package/dist/components/Select/index.js +0 -2
  144. package/dist/components/Select/index.js.map +0 -1
  145. package/dist/components/Select/utils/getSelectedOption.js +0 -8
  146. package/dist/components/Select/utils/getSelectedOption.js.map +0 -1
  147. package/dist/components/Textarea/Textarea.js +0 -55
  148. package/dist/components/Textarea/Textarea.js.map +0 -1
  149. package/dist/components/Textarea/Textarea.module.scss +0 -14
  150. package/dist/components/Textarea/Textarea.types.js +0 -2
  151. package/dist/components/Textarea/Textarea.types.js.map +0 -1
  152. package/dist/components/Textarea/aiWrapper/aiAction.js +0 -21
  153. package/dist/components/Textarea/aiWrapper/aiAction.js.map +0 -1
  154. package/dist/components/Textarea/aiWrapper/aiLayout.js +0 -21
  155. package/dist/components/Textarea/aiWrapper/aiLayout.js.map +0 -1
  156. package/dist/components/Textarea/aiWrapper/index.js +0 -29
  157. package/dist/components/Textarea/aiWrapper/index.js.map +0 -1
  158. package/dist/components/Textarea/aiWrapper/useAi.js +0 -74
  159. package/dist/components/Textarea/aiWrapper/useAi.js.map +0 -1
  160. package/dist/components/Textarea/editors/Default.js +0 -26
  161. package/dist/components/Textarea/editors/Default.js.map +0 -1
  162. package/dist/components/Textarea/editors/Html.js +0 -9
  163. package/dist/components/Textarea/editors/Html.js.map +0 -1
  164. package/dist/components/Textarea/editors/Json.js +0 -9
  165. package/dist/components/Textarea/editors/Json.js.map +0 -1
  166. package/dist/components/Textarea/editors/Markdown.js +0 -20
  167. package/dist/components/Textarea/editors/Markdown.js.map +0 -1
  168. package/dist/components/Textarea/editors/Richtext.js +0 -13
  169. package/dist/components/Textarea/editors/Richtext.js.map +0 -1
  170. package/dist/components/Textarea/index.js +0 -2
  171. package/dist/components/Textarea/index.js.map +0 -1
  172. package/dist/components/addressGroup/AddressGroup.js +0 -39
  173. package/dist/components/addressGroup/AddressGroup.js.map +0 -1
  174. package/dist/components/addressGroup/AddressGroup.module.scss +0 -72
  175. package/dist/components/addressGroup/index.js +0 -2
  176. package/dist/components/addressGroup/index.js.map +0 -1
  177. package/dist/components/addressGroup/utils/Countries.js +0 -1249
  178. package/dist/components/addressGroup/utils/Countries.js.map +0 -1
  179. package/dist/components/states/error/index.js +0 -15
  180. package/dist/components/states/error/index.js.map +0 -1
  181. package/dist/context/FormData.js +0 -109
  182. package/dist/context/FormData.js.map +0 -1
  183. package/dist/hooks/useDependent/enhanced/useInputDependent/useInputDependent.js +0 -36
  184. package/dist/hooks/useDependent/enhanced/useInputDependent/useInputDependent.js.map +0 -1
  185. package/dist/hooks/useDependent/enhanced/useOptionsGenerator/useOptionsGenerator.js +0 -16
  186. package/dist/hooks/useDependent/enhanced/useOptionsGenerator/useOptionsGenerator.js.map +0 -1
  187. package/dist/hooks/useDependent/useDependent.js +0 -86
  188. package/dist/hooks/useDependent/useDependent.js.map +0 -1
  189. package/dist/hooks/useValueGenerator/useValueGenerator.js +0 -99
  190. package/dist/hooks/useValueGenerator/useValueGenerator.js.map +0 -1
  191. package/dist/index.js +0 -17
  192. package/dist/index.js.map +0 -1
  193. package/dist/styles/Hidden.styles.js +0 -16
  194. package/dist/styles/Hidden.styles.js.map +0 -1
  195. package/dist/styles/Skeleton.js +0 -40
  196. package/dist/styles/Skeleton.js.map +0 -1
  197. package/dist/styles/Textfield.styles.js +0 -34
  198. package/dist/styles/Textfield.styles.js.map +0 -1
  199. package/dist/styles/formControl.module.scss +0 -59
  200. package/dist/testutils.js +0 -22
  201. package/dist/testutils.js.map +0 -1
  202. package/dist/types/controlProps.js +0 -2
  203. package/dist/types/controlProps.js.map +0 -1
  204. package/dist/types/index.js +0 -2
  205. package/dist/types/index.js.map +0 -1
  206. package/dist/types/package.json +0 -3
  207. package/dist/ui/menu/hooks/useMenu.js +0 -41
  208. package/dist/ui/menu/hooks/useMenu.js.map +0 -1
  209. package/dist/ui/menu/index.js +0 -13
  210. package/dist/ui/menu/index.js.map +0 -1
  211. package/dist/ui/menu/test/createControl.js +0 -30
  212. package/dist/ui/menu/test/createControl.js.map +0 -1
  213. package/dist/ui/menu/utils/detemineSubmenuTabs/index.js +0 -82
  214. package/dist/ui/menu/utils/detemineSubmenuTabs/index.js.map +0 -1
  215. package/dist/ui-helper/HeaderCollapseButton/index.js +0 -9
  216. package/dist/ui-helper/HeaderCollapseButton/index.js.map +0 -1
  217. package/dist/ui-helper/notifications/Error.js +0 -77
  218. package/dist/ui-helper/notifications/Error.js.map +0 -1
  219. package/dist/ui-helper/notifications/images/background.js +0 -7
  220. package/dist/ui-helper/notifications/images/background.js.map +0 -1
  221. package/dist/ui-helper/notifications/images/spinner.js +0 -6
  222. package/dist/ui-helper/notifications/images/spinner.js.map +0 -1
  223. package/dist/ui-helper/notifications/images/under-improvement.js +0 -6
  224. package/dist/ui-helper/notifications/images/under-improvement.js.map +0 -1
  225. package/dist/utils/findFormControlError/index.js +0 -24
  226. package/dist/utils/findFormControlError/index.js.map +0 -1
  227. package/dist/utils/hasGroupRequiredFieldsWithValues/index.js +0 -22
  228. package/dist/utils/hasGroupRequiredFieldsWithValues/index.js.map +0 -1
@@ -1,94 +0,0 @@
1
- .hasSubmenu {
2
- padding: 0 !important;
3
- }
4
-
5
- .form-builder-container {
6
- font-family: 'Roboto', sans-serif;
7
- background-color: white;
8
- z-index: 9;
9
- padding: 0 20px;
10
-
11
- @media screen and (max-width: 767px) {
12
- padding: 0 40px;
13
- }
14
-
15
- *:not(i) {
16
- font-family: inherit;
17
- }
18
-
19
- .required-message {
20
- display: block;
21
- font-size: 12px;
22
- padding-top: 15px;
23
- padding-bottom: 10px;
24
- color: rgba(0,0,0,.54);
25
- }
26
-
27
- .xhtml-form-button {
28
- min-width: 40px;
29
- width: fit-content;
30
- color: #4a95d0;
31
- background-color: #fff;
32
-
33
- padding: 3px 8px 3px 5px;
34
- box-sizing: border-box;
35
- transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
36
- font-size: 14px;
37
- font-weight: 400;
38
- border-radius: 4px;
39
- border: 1px solid #4a95d0;
40
-
41
- cursor: pointer;
42
- margin: 0;
43
- margin-bottom: 2px;
44
- display: inline-flex;
45
- outline: 0;
46
- position: relative;
47
- align-items: center;
48
- user-select: none;
49
- vertical-align: middle;
50
- -moz-appearance: none;
51
- justify-content: center;
52
- text-decoration: none;
53
- -webkit-appearance: none;
54
- -webkit-tap-highlight-color: transparent;
55
-
56
- svg {
57
- fill: #4a95d0;
58
- transition: fill 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
59
- }
60
-
61
- &:hover {
62
- color: #fff;
63
- background-color: #4a95d0;
64
- svg {
65
- fill: #fff;
66
- }
67
- }
68
-
69
- &.remove-item {
70
- width: 40px;
71
- height: 40px;
72
- padding: 0;
73
- background: transparent;
74
- box-shadow: none;
75
- margin-top: -5px !important;
76
- svg {
77
- font-size: 16px;
78
- padding: 0 2px;
79
- fill: rgba(0,0,0,.54);
80
- transition: fill 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
81
- }
82
- &:hover {
83
- background: #F0F0F0;
84
- svg {
85
- fill: #EB5757;
86
- }
87
- }
88
- @media screen and (min-width: 768px) {
89
- margin-top: 10px !important;
90
- margin-left: -30px;
91
- }
92
- }
93
- }
94
- }
@@ -1,2 +0,0 @@
1
- export { default, Form } from "./FormBuilder";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FormBuilder/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC"}
@@ -1,50 +0,0 @@
1
- import { convert } from "html-to-text";
2
- import getSelectedOption from "../../../Select/utils/getSelectedOption";
3
- const extractFormControlValues = (controls) => {
4
- const formState = {};
5
- controls &&
6
- Object.entries(controls)?.forEach(([key, control]) => {
7
- const formControl = control.control;
8
- const notListOrGroup = formControl !== "list" && formControl !== "group";
9
- const isTextarea = formControl === "textarea";
10
- const textareaEditorType = control?.["custom-attributes"]?.editor;
11
- const textareaRichtext = isTextarea && textareaEditorType === "richtext";
12
- const isSelect = formControl === "select";
13
- if (formControl === "list") {
14
- const listControls = control.items
15
- ?.map((item) => extractFormControlValues(item))
16
- .filter(Boolean);
17
- if (listControls?.length > 0)
18
- formState[key] = listControls;
19
- }
20
- if (formControl === "group") {
21
- const groupControls = extractFormControlValues(control.controls);
22
- if (Object.entries(groupControls)?.length > 0) {
23
- formState[key] = groupControls;
24
- }
25
- }
26
- if (isTextarea) {
27
- // get textarea attributes
28
- let textareaValue = control.value;
29
- // check if html value is empty (can be <h1></h1>)
30
- if (textareaRichtext) {
31
- const trimedValue = convert(textareaValue);
32
- if (trimedValue.trim().length <= 0) {
33
- textareaValue = undefined;
34
- }
35
- }
36
- formState[key] = textareaValue;
37
- }
38
- // get selected value from select because select control is possible not rendered because of sub menu component
39
- if (isSelect && !control?.value) {
40
- const selectDefaultValue = getSelectedOption(control.options, "");
41
- formState[key] = selectDefaultValue?.value;
42
- }
43
- if (notListOrGroup && control.value && !isTextarea) {
44
- formState[key] = control.value;
45
- }
46
- });
47
- return formState;
48
- };
49
- export default extractFormControlValues;
50
- //# sourceMappingURL=extractFormControlValues.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extractFormControlValues.js","sourceRoot":"","sources":["../../../../../src/components/FormBuilder/utils/extractFormControlValues/extractFormControlValues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,iBAAiB,MAAM,yCAAyC,CAAC;AAMxE,MAAM,wBAAwB,GAAG,CAAC,QAAsB,EAAE,EAAE;IAC1D,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,QAAQ;QACN,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;YACnD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;YACpC,MAAM,cAAc,GAAG,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,OAAO,CAAC;YACzE,MAAM,UAAU,GAAG,WAAW,KAAK,UAAU,CAAC;YAC9C,MAAM,kBAAkB,GAAG,OAAO,EAAE,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;YAClE,MAAM,gBAAgB,GAAG,UAAU,IAAI,kBAAkB,KAAK,UAAU,CAAC;YACzE,MAAM,QAAQ,GAAG,WAAW,KAAK,QAAQ,CAAC;YAE1C,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC3B,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK;oBAChC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;qBAC9C,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnB,IAAI,YAAY,EAAE,MAAM,GAAG,CAAC;oBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;YAC9D,CAAC;YACD,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;gBAC5B,MAAM,aAAa,GAAG,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACjE,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,SAAS,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC;gBACjC,CAAC;YACH,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,0BAA0B;gBAC1B,IAAI,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC;gBAElC,kDAAkD;gBAClD,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;oBAC3C,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;wBACnC,aAAa,GAAG,SAAS,CAAC;oBAC5B,CAAC;gBACH,CAAC;gBAED,SAAS,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC;YACjC,CAAC;YACD,+GAA+G;YAC/G,IAAI,QAAQ,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;gBAChC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAClE,SAAS,CAAC,GAAG,CAAC,GAAG,kBAAkB,EAAE,KAAK,CAAC;YAC7C,CAAC;YACD,IAAI,cAAc,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnD,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;YACjC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default } from "./extractFormControlValues";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/FormBuilder/utils/extractFormControlValues/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default } from "./jsonToUrlEncoded";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/FormBuilder/utils/jsonToUrlEncoded/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,15 +0,0 @@
1
- import qs from "qs";
2
- const jsonToUrlEncoded = (obj) => {
3
- return qs.stringify(obj, {
4
- allowDots: true,
5
- encoder: function (str, defaultEncoder, charset, type) {
6
- const listKey = str[str.length - 1] === "]";
7
- if (type === "key" && listKey) {
8
- return encodeURIComponent(str.replace(/\[\d+\]$/, "")); // listKey[0] -> listKey
9
- }
10
- return encodeURIComponent(str);
11
- },
12
- });
13
- };
14
- export default jsonToUrlEncoded;
15
- //# sourceMappingURL=jsonToUrlEncoded.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonToUrlEncoded.js","sourceRoot":"","sources":["../../../../../src/components/FormBuilder/utils/jsonToUrlEncoded/jsonToUrlEncoded.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAMpB,MAAM,gBAAgB,GAAG,CAAC,GAAY,EAAE,EAAE;IACxC,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE;QACvB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,UAAU,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI;YACnD,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;YAE5C,IAAI,IAAI,KAAK,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC9B,OAAO,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB;YAClF,CAAC;YAED,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -1,46 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import AddIcon from "@mui/icons-material/Add";
3
- import SaveIcon from "@mui/icons-material/Save";
4
- import { FaSyncAlt } from "@react-icons/all-files/fa/FaSyncAlt";
5
- import Button from "@mui/material/Button";
6
- import FormControlLabel from "@mui/material/FormControlLabel";
7
- import capitalize from "lodash/capitalize";
8
- import { useContext } from "react";
9
- import { FormDataContext } from "../../context/FormData";
10
- import ErrorState from "../states/error";
11
- import * as styles from "./FormFooter.module.scss";
12
- import { CustomSwitch } from "./components/Switch";
13
- const icon = {
14
- add: _jsx(AddIcon, { "data-testid": "formfooter__add-icon" }),
15
- save: _jsx(SaveIcon, { "data-testid": "formfooter__save-icon" }),
16
- update: _jsx(FaSyncAlt, { size: 14, "data-testid": "formfooter__update-icon" }),
17
- };
18
- const FormFooter = ({ controlProps, error, iconType, loading, onSubmit, }) => {
19
- const { formControls, isExpertMode, hasExpertMode, toggleExpertMode } = useContext(FormDataContext);
20
- const footerIcon = iconType && icon[iconType.toLowerCase()];
21
- const buttonText = (iconType && capitalize(iconType)) || "Add";
22
- const footerStyle = controlProps?.footerProps?.style ?? {};
23
- const footerContainerStyle = controlProps?.footerProps?.container?.style ?? {};
24
- const footerSubmitButtonContainerStyle = controlProps?.footerProps?.submitButtonContainer?.style ?? {};
25
- const footerSubmitButtonStyle = controlProps?.footerProps?.submitButton?.sx ?? {};
26
- return (_jsxs("div", { "data-testid": "form-footer-container", className: styles["form-footer-container"], style: footerStyle, children: [error && (_jsx("div", { className: styles.notificationContainer, children: _jsx(ErrorState, { error: error }) })), _jsxs("div", { className: styles.controlsContainer, style: footerContainerStyle, children: [hasExpertMode ? (_jsx(FormControlLabel, { "data-testid": "formfooter__expert-mode", control: _jsx(CustomSwitch, { checked: isExpertMode, onChange: toggleExpertMode }), label: "Expert Mode", sx: {
27
- color: "rgba(0,0,0,.54)",
28
- marginBottom: 0,
29
- input: {
30
- marginTop: 0,
31
- },
32
- ".MuiTypography-root": {
33
- fontSize: 12,
34
- },
35
- } })) : (_jsx("div", {})), _jsxs("div", { className: styles["submit-container"], style: footerSubmitButtonContainerStyle, children: [_jsx("span", { className: styles["required-message"], children: "* Please fill in all required fields" }), _jsx(Button, { "data-testid": "formfooter__submit", id: "submit-button", variant: "contained", type: "submit", form: "form-horizontal xhtmlInstantForm", onClick: () => onSubmit(formControls), sx: {
36
- backgroundColor: "#4A96D2",
37
- boxShadow: "none",
38
- "&:hover": {
39
- backgroundColor: "#0B5BA6",
40
- boxShadow: "none",
41
- },
42
- ...footerSubmitButtonStyle,
43
- }, endIcon: loading ? (_jsx("svg", { className: `${styles["run-button__spinner"]} run-button__spinner`, "data-testid": "formfooter__loading-icon", xmlns: "http://www.w3.org/2000/svg", width: "21.076", height: "20.31", viewBox: "0 0 21.076 20.31", children: _jsxs("g", { id: "Gruppe_272", "data-name": "Gruppe 272", transform: "translate(-269.58 -82.717)", children: [_jsx("path", { id: "Pfad_338", "data-name": "Pfad 338", d: "M278.934,84.754l3.514-2.03v4.06l-3.514,2.03Z", transform: "translate(-5.841 -0.004)", fill: "#fff" }), _jsx("path", { id: "Pfad_339", "data-name": "Pfad 339", d: "M288.29,86.784v-4.06l3.514,2.03v4.06Z", transform: "translate(-11.683 -0.004)", fill: "#f0f0f0" }), _jsx("path", { id: "Pfad_340", "data-name": "Pfad 340", d: "M282.45,119.233v-4.06l-3.514,2.03v4.06Z", transform: "translate(-5.842 -20.266)", fill: "#f0f0f0" }), _jsx("path", { id: "Pfad_341", "data-name": "Pfad 341", d: "M285.963,128.014l-3.515-2.03-3.514,2.03,3.514,2.03Z", transform: "translate(-5.841 -27.017)", fill: "#fff" }), _jsx("path", { id: "Pfad_342", "data-name": "Pfad 342", d: "M297.625,124.639l3.514,2.03v-4.06l-3.514-2.03Z", transform: "translate(-17.513 -23.642)", fill: "#fff" }), _jsx("path", { id: "Pfad_343", "data-name": "Pfad 343", d: "M306.981,122.609v4.06l3.514-2.03v-4.06Z", transform: "translate(-23.355 -23.642)", fill: "#f0f0f0" }), _jsx("path", { id: "Pfad_344", "data-name": "Pfad 344", d: "M273.094,106.394v4.06l-3.514-2.03v-4.06Z", transform: "translate(0 -13.516)", fill: "#f0f0f0" }), _jsx("path", { id: "Pfad_345", "data-name": "Pfad 345", d: "M276.608,100.988l-3.514,2.03-3.514-2.03,3.514-2.03Z", transform: "translate(0 -10.141)", fill: "#fff" }), _jsx("path", { id: "Pfad_346", "data-name": "Pfad 346", d: "M310.5,92.185l-3.514,2.03v-4.06l3.514-2.03Z", transform: "translate(-23.355 -3.377)", fill: "#f0f0f0" }), _jsx("path", { id: "Pfad_347", "data-name": "Pfad 347", d: "M304.657,84.747l-3.514,2.03-3.514-2.03,3.514-2.03Z", transform: "translate(-17.515)", fill: "#fff" }), _jsx("path", { id: "Pfad_348", "data-name": "Pfad 348", d: "M319.853,100.968l-3.514-2.03V103l3.514,2.03Z", transform: "translate(-29.198 -10.129)", fill: "#f0f0f0" }), _jsx("path", { id: "Pfad_349", "data-name": "Pfad 349", d: "M314.011,111.778l-3.514-2.03-3.514,2.03,3.514,2.03Z", transform: "translate(-23.356 -16.879)", fill: "#fff" })] }) })) : (footerIcon || icon.add), children: buttonText })] })] })] }));
44
- };
45
- export default FormFooter;
46
- //# sourceMappingURL=FormFooter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormFooter.js","sourceRoot":"","sources":["../../../src/components/FormFooter/FormFooter.tsx"],"names":[],"mappings":"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"}
@@ -1,65 +0,0 @@
1
- .form-footer-container {
2
- display: flex;
3
- flex-direction: column;
4
- align-items: center;
5
- justify-content: space-between;
6
- font-family: 'Roboto', sans-serif;
7
-
8
- width: 100%;
9
- border-radius: 0 0 4px 4px;
10
-
11
- background: #FFFFFF;
12
- z-index: 1;
13
-
14
- .notificationContainer {
15
- width: 100%;
16
- display: flex;
17
- align-items: center;
18
- padding: 20px 20px 0 20px;
19
- max-height: 300px;
20
- }
21
-
22
- .controlsContainer {
23
- width: 100%;
24
- display: flex;
25
- align-items: center;
26
- justify-content: space-between;
27
- padding: 16px;
28
-
29
- .submit-container {
30
- display: flex;
31
- align-items: center;
32
- gap: 24px;
33
- }
34
-
35
- .required-message {
36
- display: block;
37
- font-size: 12px;
38
- color: rgba(0,0,0,.54);
39
- }
40
- }
41
-
42
- button:last-child {
43
- margin-left: auto;
44
- }
45
-
46
- .run-button__spinner {
47
- -moz-animation: spin 2s infinite linear;
48
- -o-animation: spin 2s infinite linear;
49
- -webkit-animation: spin 2s infinite linear;
50
- animation: spin 2s infinite linear;
51
- }
52
-
53
- @keyframes spin {
54
- 0% {
55
- transform: rotate(0);
56
- }
57
- 100% {
58
- transform: rotate(360deg);
59
- }
60
- }
61
-
62
- @media (max-width: 991px) {
63
- border-radius: 0;
64
- }
65
- }
@@ -1,15 +0,0 @@
1
- import { styled } from "@mui/material/styles";
2
- import Switch from "@mui/material/Switch";
3
- export const CustomSwitch = styled(Switch)(() => ({
4
- "& .MuiSwitch-switchBase.Mui-checked": {
5
- color: "white",
6
- },
7
- "& .MuiSwitch-switchBase.Mui-checked + .MuiSwitch-track": {
8
- backgroundColor: "#4A96D2",
9
- opacity: 1,
10
- "&:hover": {
11
- backgroundColor: "#255F8E",
12
- },
13
- },
14
- }));
15
- //# sourceMappingURL=Switch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Switch.js","sourceRoot":"","sources":["../../../../src/components/FormFooter/components/Switch.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAE1C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,qCAAqC,EAAE;QACrC,KAAK,EAAE,OAAO;KACf;IACD,wDAAwD,EAAE;QACxD,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,CAAC;QACV,SAAS,EAAE;YACT,eAAe,EAAE,SAAS;SAC3B;KACF;CACF,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default } from "./FormFooter";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FormFooter/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
@@ -1,18 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as listStyles from "../FormList/FormList.module.scss";
3
- import * as styles from "./FormGroup.module.scss";
4
- const FormGroup = ({ controlProps, ...props }) => {
5
- const { id, objectPathId, error, displayName, required, hideLabel = false, isExpert, children, } = props;
6
- const errorClass = error ? "error" : "";
7
- const expertClass = isExpert ? "expert" : "";
8
- const currObjectPathId = objectPathId || id;
9
- const wrapperClasses = objectPathId
10
- ? `${styles["control-wrapper"]} ${listStyles["control-wrapper"]}`
11
- : `${styles["control-wrapper"]} ${listStyles["control-wrapper"]} ${styles["control-wrapper-firstlayer"]}`;
12
- const controlWrapperStyle = controlProps?.controlWrapperProps?.style ?? {};
13
- const controlWrapperLabelStyle = controlProps?.controlWrapperProps?.label?.style ?? {};
14
- const controlWrapperContainerStyle = controlProps?.controlWrapperProps?.container?.style ?? {};
15
- return (_jsxs("div", { className: `${styles["form-group"]} ${listStyles["form-group"]} ${styles[errorClass]} ${styles[expertClass]}`, style: controlWrapperStyle, children: [!hideLabel && (_jsx("label", { htmlFor: currObjectPathId, "data-testid": "control-label", className: `${styles["control-label"]} ${listStyles["control-label"]}`, style: controlWrapperLabelStyle, children: required ? displayName + " *" : displayName })), _jsxs("div", { className: wrapperClasses, style: controlWrapperContainerStyle, children: [children, _jsx("label", { htmlFor: currObjectPathId, className: styles["error-message"], children: error })] })] }));
16
- };
17
- export default FormGroup;
18
- //# sourceMappingURL=FormGroup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormGroup.js","sourceRoot":"","sources":["../../../src/components/FormGroup/FormGroup.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,UAAU,MAAM,kCAAkC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAC;AAgBlD,MAAM,SAAS,GAAG,CAAC,EAAE,YAAY,EAAE,GAAG,KAAK,EAAU,EAAE,EAAE;IACvD,MAAM,EACJ,EAAE,EACF,YAAY,EACZ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAS,GAAG,KAAK,EACjB,QAAQ,EACR,QAAQ,GACT,GAAG,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,MAAM,gBAAgB,GAAG,YAAY,IAAI,EAAE,CAAC;IAE5C,MAAM,cAAc,GAAG,YAAY;QACjC,CAAC,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE;QACjE,CAAC,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,UAAU,CAAC,iBAAiB,CAAC,IAAI,MAAM,CAAC,4BAA4B,CAAC,EAAE,CAAC;IAE5G,MAAM,mBAAmB,GAAG,YAAY,EAAE,mBAAmB,EAAE,KAAK,IAAI,EAAE,CAAC;IAC3E,MAAM,wBAAwB,GAC5B,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;IACxD,MAAM,4BAA4B,GAChC,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC;IAE5D,OAAO,CACL,eACE,SAAS,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,EAC7G,KAAK,EAAE,mBAAmB,aAEzB,CAAC,SAAS,IAAI,CACb,gBACE,OAAO,EAAE,gBAAgB,iBACb,eAAe,EAC3B,SAAS,EAAE,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,EACtE,KAAK,EAAE,wBAAwB,YAE9B,QAAQ,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,GACtC,CACT,EACD,eAAK,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,4BAA4B,aAChE,QAAQ,EACT,gBAAO,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,YACjE,KAAK,GACA,IACJ,IACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,69 +0,0 @@
1
- .form-group {
2
- display: flex;
3
- gap: 10px;
4
- margin-bottom: -10px;
5
- padding: 10px 0;
6
- font-size: 14px;
7
- font-weight: 400;
8
- box-sizing: border-box;
9
-
10
- @media screen and (max-width: 767px) {
11
- flex-direction: column;
12
- gap: 5px;
13
- }
14
-
15
- &.expert {
16
- background-color: #f0f0f0;
17
- padding-right: 10px;
18
- margin: 10px 0;
19
- }
20
-
21
- &.error {
22
- color: #a94442;
23
-
24
- .error-message {
25
- color: #a94442;
26
- display: block !important;
27
- font-weight: inherit;
28
- font-size: 14px;
29
- padding-top: 5px;
30
- padding-left: 2px;
31
- line-height: 1.42857;
32
- }
33
- }
34
-
35
- .error-message {
36
- display: none;
37
- }
38
-
39
- .control-label {
40
- font-weight: 400;
41
- width: 200px;
42
- text-align: right;
43
- flex-shrink: 0;
44
- margin: 0 !important; // bootstrap overwrites label selector
45
- padding-top: 9px;
46
- color: rgba(0, 0, 0, 0.87);
47
- font-size: 14px;
48
-
49
- @media screen and (max-width: 767px) {
50
- text-align: left;
51
- width: 100%;
52
- }
53
- }
54
-
55
- .control-wrapper {
56
- display: flex;
57
- flex-direction: column;
58
- // width: 0;
59
- flex: 1;
60
- }
61
-
62
- .control-wrapper-firstlayer {
63
- width: calc(100% - 210px);
64
-
65
- @media screen and (max-width: 767px) {
66
- width: 100%;
67
- }
68
- }
69
- }
@@ -1,2 +0,0 @@
1
- export { default } from "./FormGroup";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FormGroup/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC"}
@@ -1,66 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import AddIcon from "@mui/icons-material/Add";
3
- import { Box } from "@mui/material";
4
- import Tooltip from "@mui/material/Tooltip";
5
- import { FaChevronDown } from "@react-icons/all-files/fa/FaChevronDown";
6
- import { FaChevronUp } from "@react-icons/all-files/fa/FaChevronUp";
7
- import { FaTrashAlt } from "@react-icons/all-files/fa/FaTrashAlt";
8
- import cx from "classnames";
9
- import { useContext, useEffect, useState } from "react";
10
- import { FormDataContext } from "../../context/FormData";
11
- import HeaderCollapseButton from "../../ui-helper/HeaderCollapseButton";
12
- import findFormControlError from "../../utils/findFormControlError";
13
- import * as formBuilderStyles from "../FormBuilder/FormBuilder.module.scss";
14
- import QueryControl from "../QueryControl";
15
- import * as styles from "./FormList.module.scss";
16
- const FormList = ({ ...props }) => {
17
- const { id, control, objectPathId, groupIsRequired, controlProps } = props;
18
- const { addListItem, removeListItem, moveListItemUp, moveListItemDown } = useContext(FormDataContext);
19
- const { "custom-attributes": customAttributes, displayName, items, error, template, required, } = control;
20
- const itemsLength = items?.length ?? 0;
21
- const defaultCollapseThreshold = Number(customAttributes?.defaultCollapseThreshold);
22
- const hasError = items?.some((item) => findFormControlError(item)) || error;
23
- const isClosed = itemsLength === 0 || defaultCollapseThreshold <= itemsLength;
24
- const [isOpen, setIsOpen] = useState(!isClosed);
25
- useEffect(() => {
26
- if (hasError)
27
- setIsOpen(true); //* list is always open if there is an error
28
- }, [isOpen, isClosed]);
29
- const handleToggleOpenState = () => setIsOpen((prev) => !prev);
30
- const handleAddItem = () => {
31
- addListItem(currObjectPathId);
32
- setIsOpen(true);
33
- };
34
- const currObjectPathId = objectPathId || id;
35
- const longList = template && Object.entries(template).length > 1;
36
- const displayNameWithRequired = required ? displayName + " *" : displayName;
37
- const className = longList
38
- ? "form-list-multiple-items"
39
- : "form-list-single-item";
40
- const firstControlTitle = !longList && template && Object.values(template)?.[0]?.displayName;
41
- const title = firstControlTitle || displayNameWithRequired || "";
42
- const mapControls = (key, configItem, listIndex) => {
43
- const index = listIndex || 0;
44
- const objectPathId = `${currObjectPathId}.items.[${index}].${key}`;
45
- return (_jsx(QueryControl, { formControl: configItem, id: key, objectPathId: objectPathId, hideLabel: !longList, groupIsRequired: groupIsRequired, controlProps: controlProps }, objectPathId));
46
- };
47
- const listStyle = controlProps?.listProps?.style ?? {};
48
- const listLabelStyle = controlProps?.listProps?.label?.style ?? {};
49
- const listContainerStyle = controlProps?.listProps?.container?.style ?? {};
50
- const listAddButtonStyle = controlProps?.listProps?.addButton?.sx ?? {};
51
- const controlTooltip = control?.["custom-attributes"]?.tooltip;
52
- const isHiddenList = !isOpen
53
- ? { display: "none", visibility: "hidden" }
54
- : {};
55
- return (_jsxs("div", { className: styles["list-container"], "data-testid": "form-list", style: listStyle, children: [_jsxs("div", { className: styles["list-header"], children: [_jsxs("div", { className: styles["list-header-label-button"], children: [_jsxs("div", { className: styles["list-header-label"], children: [_jsx("label", { "data-testid": "list-control-label", className: styles["list-label"], style: listLabelStyle, children: displayNameWithRequired }), controlTooltip && (_jsx(Tooltip, { title: controlTooltip, arrow: true, children: _jsx("span", { children: _jsx("i", { className: "fas fa-info-circle fa-xs" }) }) }))] }), _jsxs(Box, { "data-testid": title, className: cx("formbuilder_add-button", formBuilderStyles["xhtml-form-button"]), role: "alert", onClick: handleAddItem, sx: listAddButtonStyle, children: [_jsx(AddIcon, { sx: { fontSize: 20 }, "data-testid": "form-list__add-icon" }), "\u00A0", title] })] }), _jsx(HeaderCollapseButton, { itemsCount: itemsLength, isOpen: isOpen, onClick: handleToggleOpenState })] }), _jsx("div", { id: className, "data-testid": "form-list-children", role: "list", className: cx(styles[className], styles["list-children-container"]), "data-title": title, style: { ...isHiddenList, ...listContainerStyle }, children: items?.map((item, i) => {
56
- if (!item)
57
- return null;
58
- const isLast = i === items.length - 1;
59
- const isFirst = i === 0;
60
- const sortableItems = items.length > 1;
61
- return (_jsxs("div", { className: styles["form-list"], "data-testid": "form-list-child-element", role: "listitem", "data-is-filled": true, children: [item &&
62
- Object.entries(item)?.map(([key, value]) => mapControls(key, value, i)), _jsx("button", { type: "button", className: cx(formBuilderStyles["xhtml-form-button"], formBuilderStyles["remove-item"], styles["remove-item"]), "data-testid": "form-list__remove-list-item-button", onClick: () => removeListItem(currObjectPathId, i), children: _jsx(FaTrashAlt, {}) }), _jsxs("div", { className: styles["sort-buttons"], children: [_jsx("button", { type: "button", onClick: () => moveListItemUp(currObjectPathId, i), disabled: isFirst || !sortableItems, children: _jsx(FaChevronUp, { "data-testid": "form-list__sort-up-button" }) }), _jsx("button", { type: "button", onClick: () => moveListItemDown(currObjectPathId, i), disabled: isLast || !sortableItems, children: _jsx(FaChevronDown, { "data-testid": "form-list__sort-down-button" }) })] })] }, `${objectPathId}-${i}`));
63
- }) })] }, id));
64
- };
65
- export default FormList;
66
- //# sourceMappingURL=FormList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormList.js","sourceRoot":"","sources":["../../../src/components/FormList/FormList.tsx"],"names":[],"mappings":"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"}