@gravity-ui/page-constructor 6.3.2-alpha.11 → 6.3.2-alpha.12

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 (406) hide show
  1. package/build/cjs/blocks/CardLayout/index.d.ts +1 -1
  2. package/build/cjs/blocks/CardLayout/index.js.map +1 -1
  3. package/build/cjs/blocks/ContentLayout/index.d.ts +1 -1
  4. package/build/cjs/blocks/ExtendedFeatures/index.d.ts +1 -1
  5. package/build/cjs/blocks/FilterBlock/index.d.ts +1 -1
  6. package/build/cjs/blocks/Form/index.d.ts +1 -1
  7. package/build/cjs/blocks/Header/dynamic-form.d.ts +1 -1
  8. package/build/cjs/blocks/Header/dynamic-form.js.map +1 -1
  9. package/build/cjs/blocks/Header/index.d.ts +1 -1
  10. package/build/cjs/blocks/HeaderSlider/index.d.ts +1 -1
  11. package/build/cjs/blocks/Icons/index.d.ts +1 -1
  12. package/build/cjs/blocks/Info/index.d.ts +1 -1
  13. package/build/cjs/blocks/Map/index.d.ts +1 -1
  14. package/build/cjs/blocks/Media/index.d.ts +1 -1
  15. package/build/cjs/blocks/PromoFeaturesBlock/index.d.ts +1 -1
  16. package/build/cjs/blocks/Questions/index.d.ts +1 -1
  17. package/build/cjs/blocks/Share/index.d.ts +1 -1
  18. package/build/cjs/blocks/Slider/dynamic-form.d.ts +1 -1
  19. package/build/cjs/blocks/Slider/dynamic-form.js.map +1 -1
  20. package/build/cjs/blocks/Slider/index.d.ts +1 -1
  21. package/build/cjs/blocks/Table/index.d.ts +1 -1
  22. package/build/cjs/blocks/Tabs/index.d.ts +1 -1
  23. package/build/cjs/blocks/TestEditorBlock/form.d.ts +1 -1
  24. package/build/cjs/blocks/TestEditorBlock/form.js.map +1 -1
  25. package/build/cjs/blocks/TestEditorBlock/index.d.ts +1 -1
  26. package/build/cjs/common/store.d.ts +2 -1
  27. package/build/cjs/common/store.js.map +1 -1
  28. package/build/cjs/common/types/common.d.ts +1 -1
  29. package/build/cjs/common/types/common.js.map +1 -1
  30. package/build/cjs/common/types/index.d.ts +0 -1
  31. package/build/cjs/common/types/index.js +0 -1
  32. package/build/cjs/common/types/index.js.map +1 -1
  33. package/build/cjs/components/Image/dynamic-form.d.ts +1 -1
  34. package/build/cjs/components/Image/dynamic-form.js.map +1 -1
  35. package/build/cjs/components/Title/TitleItem.d.ts +1 -1
  36. package/build/cjs/constructor-items.d.ts +1 -1
  37. package/build/cjs/constructor-items.js.map +1 -1
  38. package/build/cjs/editor-v2/containers/BlockConfigForm/BlockConfigForm.js +2 -2
  39. package/build/cjs/editor-v2/containers/BlockConfigForm/BlockConfigForm.js.map +1 -1
  40. package/build/cjs/editor-v2/containers/GlobalConfig/GlobalConfig.js +2 -3
  41. package/build/cjs/editor-v2/containers/GlobalConfig/GlobalConfig.js.map +1 -1
  42. package/build/cjs/editor-v2/store.d.ts +1 -1
  43. package/build/cjs/editor-v2/store.js.map +1 -1
  44. package/build/cjs/form-builder/FormBuilder.d.ts +3 -0
  45. package/build/cjs/form-builder/FormBuilder.js +12 -0
  46. package/build/cjs/form-builder/FormBuilder.js.map +1 -0
  47. package/build/cjs/form-builder/components/AddPropertyButton/AddPropertyButton.css +3 -0
  48. package/build/cjs/{form-generator → form-builder}/components/AddPropertyButton/AddPropertyButton.d.ts +1 -1
  49. package/build/cjs/{form-generator → form-builder}/components/AddPropertyButton/AddPropertyButton.js +1 -1
  50. package/build/cjs/form-builder/components/AddPropertyButton/AddPropertyButton.js.map +1 -0
  51. package/build/cjs/{form-generator → form-builder}/components/ArrayFieldRenderer/ArrayFieldRenderer.css +5 -5
  52. package/build/cjs/{form-generator → form-builder}/components/ArrayFieldRenderer/ArrayFieldRenderer.d.ts +2 -2
  53. package/build/cjs/{form-generator → form-builder}/components/ArrayFieldRenderer/ArrayFieldRenderer.js +1 -1
  54. package/build/cjs/form-builder/components/ArrayFieldRenderer/ArrayFieldRenderer.js.map +1 -0
  55. package/build/{esm/form-generator → cjs/form-builder}/components/ConfigRow/ConfigRow.css +3 -3
  56. package/build/cjs/{form-generator → form-builder}/components/ConfigRow/ConfigRow.js +1 -1
  57. package/build/cjs/form-builder/components/ConfigRow/ConfigRow.js.map +1 -0
  58. package/build/cjs/{form-generator → form-builder}/components/FieldCard/FieldCard.css +3 -3
  59. package/build/cjs/{form-generator → form-builder}/components/FieldCard/FieldCard.d.ts +1 -1
  60. package/build/cjs/{form-generator → form-builder}/components/FieldCard/FieldCard.js +1 -1
  61. package/build/cjs/form-builder/components/FieldCard/FieldCard.js.map +1 -0
  62. package/build/{esm/form-generator → cjs/form-builder}/components/FieldHeader/FieldHeader.css +1 -1
  63. package/build/cjs/{form-generator → form-builder}/components/FieldHeader/FieldHeader.js +1 -1
  64. package/build/cjs/form-builder/components/FieldHeader/FieldHeader.js.map +1 -0
  65. package/build/{esm/form-generator/components/FormBuilder/FormBuilder.css → cjs/form-builder/components/FormBuilderBody/FormBuilderBody.css} +18 -18
  66. package/build/cjs/form-builder/components/FormBuilderBody/FormBuilderBody.d.ts +6 -0
  67. package/build/cjs/{form-generator/components/FormBuilder/FormBuilder.js → form-builder/components/FormBuilderBody/FormBuilderBody.js} +6 -7
  68. package/build/cjs/form-builder/components/FormBuilderBody/FormBuilderBody.js.map +1 -0
  69. package/build/cjs/{form-generator → form-builder}/components/ObjectFieldRenderer/ObjectFieldRenderer.css +1 -1
  70. package/build/cjs/{form-generator → form-builder}/components/ObjectFieldRenderer/ObjectFieldRenderer.d.ts +2 -2
  71. package/build/cjs/{form-generator → form-builder}/components/ObjectFieldRenderer/ObjectFieldRenderer.js +1 -1
  72. package/build/cjs/form-builder/components/ObjectFieldRenderer/ObjectFieldRenderer.js.map +1 -0
  73. package/build/cjs/{form-generator → form-builder}/components/OptionHeader/OptionHeader.css +1 -1
  74. package/build/cjs/{form-generator → form-builder}/components/OptionHeader/OptionHeader.js +1 -1
  75. package/build/cjs/form-builder/components/OptionHeader/OptionHeader.js.map +1 -0
  76. package/build/cjs/{form-generator → form-builder}/components/OptionsRenderer/OptionsRenderer.css +6 -6
  77. package/build/cjs/{form-generator → form-builder}/components/OptionsRenderer/OptionsRenderer.d.ts +2 -2
  78. package/build/cjs/{form-generator → form-builder}/components/OptionsRenderer/OptionsRenderer.js +1 -1
  79. package/build/cjs/form-builder/components/OptionsRenderer/OptionsRenderer.js.map +1 -0
  80. package/build/cjs/form-builder/components/SectionHeader/SectionHeader.css +3 -0
  81. package/build/cjs/{form-generator → form-builder}/components/SectionHeader/SectionHeader.js +1 -1
  82. package/build/cjs/form-builder/components/SectionHeader/SectionHeader.js.map +1 -0
  83. package/build/cjs/{form-generator → form-builder}/components/SelectFieldRenderer/SelectFieldRenderer.css +8 -8
  84. package/build/cjs/{form-generator → form-builder}/components/SelectFieldRenderer/SelectFieldRenderer.d.ts +1 -1
  85. package/build/cjs/{form-generator → form-builder}/components/SelectFieldRenderer/SelectFieldRenderer.js +1 -1
  86. package/build/cjs/form-builder/components/SelectFieldRenderer/SelectFieldRenderer.js.map +1 -0
  87. package/build/cjs/form-builder/hooks/FormContext.d.ts +11 -0
  88. package/build/cjs/{form-generator → form-builder}/hooks/FormContext.js +2 -2
  89. package/build/cjs/form-builder/hooks/FormContext.js.map +1 -0
  90. package/build/{esm/form-generator → cjs/form-builder}/hooks/useFormFields.d.ts +8 -3
  91. package/build/cjs/{form-generator → form-builder}/hooks/useFormFields.js +66 -66
  92. package/build/cjs/form-builder/hooks/useFormFields.js.map +1 -0
  93. package/build/cjs/form-builder/index.d.ts +4 -0
  94. package/build/cjs/form-builder/index.js +8 -0
  95. package/build/cjs/form-builder/index.js.map +1 -0
  96. package/build/cjs/form-builder/styles/variables.css +0 -0
  97. package/build/cjs/{form-generator/hooks → form-builder}/types.d.ts +6 -1
  98. package/build/cjs/form-builder/types.js.map +1 -0
  99. package/build/cjs/form-builder/utils/cn.d.ts +2 -0
  100. package/build/cjs/form-builder/utils/cn.js +7 -0
  101. package/build/cjs/form-builder/utils/cn.js.map +1 -0
  102. package/build/cjs/form-generator/FormGenerator.css +7 -0
  103. package/build/cjs/form-generator/FormGenerator.d.ts +10 -0
  104. package/build/cjs/{editor-v2/components/DynamicForm/DynamicForm.js → form-generator/FormGenerator.js} +19 -17
  105. package/build/cjs/form-generator/FormGenerator.js.map +1 -0
  106. package/build/{esm/editor-v2/components/DynamicForm → cjs/form-generator/components}/FieldBase/FieldBase.css +19 -17
  107. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/FieldBase/FieldBase.js +3 -3
  108. package/build/cjs/form-generator/components/FieldBase/FieldBase.js.map +1 -0
  109. package/build/cjs/form-generator/components/Fields/AnyOf/AnyOf.css +8 -0
  110. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/AnyOf/AnyOf.d.ts +1 -1
  111. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/AnyOf/AnyOf.js +4 -4
  112. package/build/cjs/form-generator/components/Fields/AnyOf/AnyOf.js.map +1 -0
  113. package/build/cjs/form-generator/components/Fields/Array/Array.css +40 -0
  114. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/Array.d.ts +1 -1
  115. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/Array.js +5 -5
  116. package/build/cjs/form-generator/components/Fields/Array/Array.js.map +1 -0
  117. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/ItemButton/ItemButton.js +2 -2
  118. package/build/cjs/form-generator/components/Fields/Array/ItemButton/ItemButton.js.map +1 -0
  119. package/build/cjs/form-generator/components/Fields/Boolean/Boolean.css +5 -0
  120. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Boolean/Boolean.js +2 -2
  121. package/build/cjs/form-generator/components/Fields/Boolean/Boolean.js.map +1 -0
  122. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Number/Number.js +2 -2
  123. package/build/cjs/form-generator/components/Fields/Number/Number.js.map +1 -0
  124. package/build/{esm/editor-v2/components/DynamicForm → cjs/form-generator/components}/Fields/Object/Object.d.ts +1 -1
  125. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Object/Object.js +2 -2
  126. package/build/cjs/form-generator/components/Fields/Object/Object.js.map +1 -0
  127. package/build/cjs/form-generator/components/Fields/OneOf/OneOf.css +8 -0
  128. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/OneOf/OneOf.d.ts +1 -1
  129. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/OneOf/OneOf.js +4 -4
  130. package/build/cjs/form-generator/components/Fields/OneOf/OneOf.js.map +1 -0
  131. package/build/cjs/form-generator/components/Fields/Select/Select.css +5 -0
  132. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Select/Select.d.ts +1 -1
  133. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Select/Select.js +2 -2
  134. package/build/cjs/form-generator/components/Fields/Select/Select.js.map +1 -0
  135. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Text/Text.js +2 -2
  136. package/build/cjs/form-generator/components/Fields/Text/Text.js.map +1 -0
  137. package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/TextArea/TextArea.js +2 -2
  138. package/build/cjs/form-generator/components/Fields/TextArea/TextArea.js.map +1 -0
  139. package/build/cjs/form-generator/index.d.ts +2 -7
  140. package/build/cjs/form-generator/index.js +2 -7
  141. package/build/cjs/form-generator/index.js.map +1 -1
  142. package/build/cjs/form-generator/styles/mixins.css +2 -0
  143. package/build/cjs/{common/types/forms.d.ts → form-generator/types.d.ts} +1 -1
  144. package/build/cjs/{common/types/forms.js → form-generator/types.js} +1 -1
  145. package/build/cjs/form-generator/types.js.map +1 -0
  146. package/build/cjs/{editor-v2/components/DynamicForm/utils.d.ts → form-generator/utils/common.d.ts} +1 -1
  147. package/build/cjs/{editor-v2/components/DynamicForm/utils.js → form-generator/utils/common.js} +1 -1
  148. package/build/cjs/form-generator/utils/common.js.map +1 -0
  149. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.d.ts +1 -1
  150. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.js.map +1 -1
  151. package/build/cjs/utils/form-generator.d.ts +1 -1
  152. package/build/cjs/utils/form-generator.js.map +1 -1
  153. package/build/esm/blocks/CardLayout/index.d.ts +1 -1
  154. package/build/esm/blocks/CardLayout/index.js.map +1 -1
  155. package/build/esm/blocks/ContentLayout/index.d.ts +1 -1
  156. package/build/esm/blocks/ExtendedFeatures/index.d.ts +1 -1
  157. package/build/esm/blocks/FilterBlock/index.d.ts +1 -1
  158. package/build/esm/blocks/Form/index.d.ts +1 -1
  159. package/build/esm/blocks/Header/dynamic-form.d.ts +1 -1
  160. package/build/esm/blocks/Header/dynamic-form.js.map +1 -1
  161. package/build/esm/blocks/Header/index.d.ts +1 -1
  162. package/build/esm/blocks/HeaderSlider/index.d.ts +1 -1
  163. package/build/esm/blocks/Icons/index.d.ts +1 -1
  164. package/build/esm/blocks/Info/index.d.ts +1 -1
  165. package/build/esm/blocks/Map/index.d.ts +1 -1
  166. package/build/esm/blocks/Media/index.d.ts +1 -1
  167. package/build/esm/blocks/PromoFeaturesBlock/index.d.ts +1 -1
  168. package/build/esm/blocks/Questions/index.d.ts +1 -1
  169. package/build/esm/blocks/Share/index.d.ts +1 -1
  170. package/build/esm/blocks/Slider/dynamic-form.d.ts +1 -1
  171. package/build/esm/blocks/Slider/dynamic-form.js.map +1 -1
  172. package/build/esm/blocks/Slider/index.d.ts +1 -1
  173. package/build/esm/blocks/Table/index.d.ts +1 -1
  174. package/build/esm/blocks/Tabs/index.d.ts +1 -1
  175. package/build/esm/blocks/TestEditorBlock/form.d.ts +1 -1
  176. package/build/esm/blocks/TestEditorBlock/form.js.map +1 -1
  177. package/build/esm/blocks/TestEditorBlock/index.d.ts +1 -1
  178. package/build/esm/common/store.d.ts +2 -1
  179. package/build/esm/common/store.js.map +1 -1
  180. package/build/esm/common/types/common.d.ts +1 -1
  181. package/build/esm/common/types/common.js.map +1 -1
  182. package/build/esm/common/types/index.d.ts +0 -1
  183. package/build/esm/common/types/index.js +0 -1
  184. package/build/esm/common/types/index.js.map +1 -1
  185. package/build/esm/components/Image/dynamic-form.d.ts +1 -1
  186. package/build/esm/components/Image/dynamic-form.js.map +1 -1
  187. package/build/esm/components/Title/TitleItem.d.ts +1 -1
  188. package/build/esm/constructor-items.d.ts +1 -1
  189. package/build/esm/constructor-items.js.map +1 -1
  190. package/build/esm/editor-v2/containers/BlockConfigForm/BlockConfigForm.js +2 -2
  191. package/build/esm/editor-v2/containers/BlockConfigForm/BlockConfigForm.js.map +1 -1
  192. package/build/esm/editor-v2/containers/GlobalConfig/GlobalConfig.js +2 -2
  193. package/build/esm/editor-v2/containers/GlobalConfig/GlobalConfig.js.map +1 -1
  194. package/build/esm/editor-v2/store.d.ts +1 -1
  195. package/build/esm/editor-v2/store.js.map +1 -1
  196. package/build/esm/form-builder/FormBuilder.d.ts +3 -0
  197. package/build/esm/form-builder/FormBuilder.js +8 -0
  198. package/build/esm/form-builder/FormBuilder.js.map +1 -0
  199. package/build/esm/form-builder/components/AddPropertyButton/AddPropertyButton.css +3 -0
  200. package/build/esm/{form-generator → form-builder}/components/AddPropertyButton/AddPropertyButton.d.ts +1 -1
  201. package/build/esm/{form-generator → form-builder}/components/AddPropertyButton/AddPropertyButton.js +2 -2
  202. package/build/esm/form-builder/components/AddPropertyButton/AddPropertyButton.js.map +1 -0
  203. package/build/esm/{form-generator → form-builder}/components/ArrayFieldRenderer/ArrayFieldRenderer.css +5 -5
  204. package/build/esm/{form-generator → form-builder}/components/ArrayFieldRenderer/ArrayFieldRenderer.d.ts +2 -2
  205. package/build/esm/{form-generator → form-builder}/components/ArrayFieldRenderer/ArrayFieldRenderer.js +2 -2
  206. package/build/esm/form-builder/components/ArrayFieldRenderer/ArrayFieldRenderer.js.map +1 -0
  207. package/build/{cjs/form-generator → esm/form-builder}/components/ConfigRow/ConfigRow.css +3 -3
  208. package/build/esm/{form-generator → form-builder}/components/ConfigRow/ConfigRow.js +2 -2
  209. package/build/esm/form-builder/components/ConfigRow/ConfigRow.js.map +1 -0
  210. package/build/esm/{form-generator → form-builder}/components/FieldCard/FieldCard.css +3 -3
  211. package/build/esm/{form-generator → form-builder}/components/FieldCard/FieldCard.d.ts +1 -1
  212. package/build/esm/{form-generator → form-builder}/components/FieldCard/FieldCard.js +2 -2
  213. package/build/esm/form-builder/components/FieldCard/FieldCard.js.map +1 -0
  214. package/build/{cjs/form-generator → esm/form-builder}/components/FieldHeader/FieldHeader.css +1 -1
  215. package/build/esm/{form-generator → form-builder}/components/FieldHeader/FieldHeader.js +2 -2
  216. package/build/esm/form-builder/components/FieldHeader/FieldHeader.js.map +1 -0
  217. package/build/{cjs/form-generator/components/FormBuilder/FormBuilder.css → esm/form-builder/components/FormBuilderBody/FormBuilderBody.css} +18 -18
  218. package/build/esm/form-builder/components/FormBuilderBody/FormBuilderBody.d.ts +7 -0
  219. package/build/esm/{form-generator/components/FormBuilder/FormBuilder.js → form-builder/components/FormBuilderBody/FormBuilderBody.js} +6 -7
  220. package/build/esm/form-builder/components/FormBuilderBody/FormBuilderBody.js.map +1 -0
  221. package/build/esm/{form-generator → form-builder}/components/ObjectFieldRenderer/ObjectFieldRenderer.css +1 -1
  222. package/build/esm/{form-generator → form-builder}/components/ObjectFieldRenderer/ObjectFieldRenderer.d.ts +2 -2
  223. package/build/esm/{form-generator → form-builder}/components/ObjectFieldRenderer/ObjectFieldRenderer.js +2 -2
  224. package/build/esm/form-builder/components/ObjectFieldRenderer/ObjectFieldRenderer.js.map +1 -0
  225. package/build/esm/{form-generator → form-builder}/components/OptionHeader/OptionHeader.css +1 -1
  226. package/build/esm/{form-generator → form-builder}/components/OptionHeader/OptionHeader.js +2 -2
  227. package/build/esm/form-builder/components/OptionHeader/OptionHeader.js.map +1 -0
  228. package/build/esm/{form-generator → form-builder}/components/OptionsRenderer/OptionsRenderer.css +6 -6
  229. package/build/esm/{form-generator → form-builder}/components/OptionsRenderer/OptionsRenderer.d.ts +2 -2
  230. package/build/esm/{form-generator → form-builder}/components/OptionsRenderer/OptionsRenderer.js +2 -2
  231. package/build/esm/form-builder/components/OptionsRenderer/OptionsRenderer.js.map +1 -0
  232. package/build/esm/form-builder/components/SectionHeader/SectionHeader.css +3 -0
  233. package/build/esm/{form-generator → form-builder}/components/SectionHeader/SectionHeader.js +2 -2
  234. package/build/esm/form-builder/components/SectionHeader/SectionHeader.js.map +1 -0
  235. package/build/esm/{form-generator → form-builder}/components/SelectFieldRenderer/SelectFieldRenderer.css +8 -8
  236. package/build/esm/{form-generator → form-builder}/components/SelectFieldRenderer/SelectFieldRenderer.d.ts +1 -1
  237. package/build/esm/{form-generator → form-builder}/components/SelectFieldRenderer/SelectFieldRenderer.js +2 -2
  238. package/build/esm/form-builder/components/SelectFieldRenderer/SelectFieldRenderer.js.map +1 -0
  239. package/build/esm/form-builder/hooks/FormContext.d.ts +11 -0
  240. package/build/esm/{form-generator → form-builder}/hooks/FormContext.js +2 -2
  241. package/build/esm/form-builder/hooks/FormContext.js.map +1 -0
  242. package/build/{cjs/form-generator → esm/form-builder}/hooks/useFormFields.d.ts +8 -3
  243. package/build/esm/{form-generator → form-builder}/hooks/useFormFields.js +66 -66
  244. package/build/esm/form-builder/hooks/useFormFields.js.map +1 -0
  245. package/build/esm/form-builder/index.d.ts +4 -0
  246. package/build/esm/form-builder/index.js +5 -0
  247. package/build/esm/form-builder/index.js.map +1 -0
  248. package/build/esm/form-builder/styles/variables.css +0 -0
  249. package/build/esm/{form-generator/hooks → form-builder}/types.d.ts +6 -1
  250. package/build/esm/form-builder/types.js.map +1 -0
  251. package/build/esm/form-builder/utils/cn.d.ts +2 -0
  252. package/build/esm/form-builder/utils/cn.js +4 -0
  253. package/build/esm/form-builder/utils/cn.js.map +1 -0
  254. package/build/esm/form-generator/FormGenerator.css +7 -0
  255. package/build/esm/form-generator/FormGenerator.d.ts +11 -0
  256. package/build/esm/{editor-v2/components/DynamicForm/DynamicForm.js → form-generator/FormGenerator.js} +16 -16
  257. package/build/esm/form-generator/FormGenerator.js.map +1 -0
  258. package/build/{cjs/editor-v2/components/DynamicForm → esm/form-generator/components}/FieldBase/FieldBase.css +19 -17
  259. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/FieldBase/FieldBase.js +3 -3
  260. package/build/esm/form-generator/components/FieldBase/FieldBase.js.map +1 -0
  261. package/build/esm/form-generator/components/Fields/AnyOf/AnyOf.css +8 -0
  262. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/AnyOf/AnyOf.d.ts +1 -1
  263. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/AnyOf/AnyOf.js +3 -3
  264. package/build/esm/form-generator/components/Fields/AnyOf/AnyOf.js.map +1 -0
  265. package/build/esm/form-generator/components/Fields/Array/Array.css +40 -0
  266. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/Array.d.ts +1 -1
  267. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/Array.js +5 -5
  268. package/build/esm/form-generator/components/Fields/Array/Array.js.map +1 -0
  269. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/ItemButton/ItemButton.js +2 -2
  270. package/build/esm/form-generator/components/Fields/Array/ItemButton/ItemButton.js.map +1 -0
  271. package/build/esm/form-generator/components/Fields/Boolean/Boolean.css +5 -0
  272. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Boolean/Boolean.js +2 -2
  273. package/build/esm/form-generator/components/Fields/Boolean/Boolean.js.map +1 -0
  274. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Number/Number.js +2 -2
  275. package/build/esm/form-generator/components/Fields/Number/Number.js.map +1 -0
  276. package/build/{cjs/editor-v2/components/DynamicForm → esm/form-generator/components}/Fields/Object/Object.d.ts +1 -1
  277. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Object/Object.js +1 -1
  278. package/build/esm/form-generator/components/Fields/Object/Object.js.map +1 -0
  279. package/build/esm/form-generator/components/Fields/OneOf/OneOf.css +8 -0
  280. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/OneOf/OneOf.d.ts +1 -1
  281. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/OneOf/OneOf.js +3 -3
  282. package/build/esm/form-generator/components/Fields/OneOf/OneOf.js.map +1 -0
  283. package/build/esm/form-generator/components/Fields/Select/Select.css +5 -0
  284. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Select/Select.d.ts +1 -1
  285. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Select/Select.js +2 -2
  286. package/build/esm/form-generator/components/Fields/Select/Select.js.map +1 -0
  287. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Text/Text.js +2 -2
  288. package/build/esm/form-generator/components/Fields/Text/Text.js.map +1 -0
  289. package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/TextArea/TextArea.js +2 -2
  290. package/build/esm/form-generator/components/Fields/TextArea/TextArea.js.map +1 -0
  291. package/build/esm/form-generator/index.d.ts +2 -7
  292. package/build/esm/form-generator/index.js +2 -7
  293. package/build/esm/form-generator/index.js.map +1 -1
  294. package/build/esm/form-generator/styles/mixins.css +2 -0
  295. package/build/esm/{common/types/forms.d.ts → form-generator/types.d.ts} +1 -1
  296. package/build/esm/form-generator/types.js +2 -0
  297. package/build/esm/form-generator/types.js.map +1 -0
  298. package/build/esm/{editor-v2/components/DynamicForm/utils.d.ts → form-generator/utils/common.d.ts} +1 -1
  299. package/build/esm/{editor-v2/components/DynamicForm/utils.js → form-generator/utils/common.js} +1 -1
  300. package/build/esm/form-generator/utils/common.js.map +1 -0
  301. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.d.ts +1 -1
  302. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.js.map +1 -1
  303. package/build/esm/utils/form-generator.d.ts +1 -1
  304. package/build/esm/utils/form-generator.js.map +1 -1
  305. package/package.json +9 -1
  306. package/build/cjs/common/types/forms.js.map +0 -1
  307. package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.css +0 -5
  308. package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.d.ts +0 -10
  309. package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.js.map +0 -1
  310. package/build/cjs/editor-v2/components/DynamicForm/FieldBase/FieldBase.js.map +0 -1
  311. package/build/cjs/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.css +0 -6
  312. package/build/cjs/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.js.map +0 -1
  313. package/build/cjs/editor-v2/components/DynamicForm/Fields/Array/Array.css +0 -38
  314. package/build/cjs/editor-v2/components/DynamicForm/Fields/Array/Array.js.map +0 -1
  315. package/build/cjs/editor-v2/components/DynamicForm/Fields/Array/ItemButton/ItemButton.js.map +0 -1
  316. package/build/cjs/editor-v2/components/DynamicForm/Fields/Boolean/Boolean.css +0 -3
  317. package/build/cjs/editor-v2/components/DynamicForm/Fields/Boolean/Boolean.js.map +0 -1
  318. package/build/cjs/editor-v2/components/DynamicForm/Fields/Number/Number.js.map +0 -1
  319. package/build/cjs/editor-v2/components/DynamicForm/Fields/Object/Object.js.map +0 -1
  320. package/build/cjs/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.css +0 -6
  321. package/build/cjs/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.js.map +0 -1
  322. package/build/cjs/editor-v2/components/DynamicForm/Fields/Select/Select.css +0 -3
  323. package/build/cjs/editor-v2/components/DynamicForm/Fields/Select/Select.js.map +0 -1
  324. package/build/cjs/editor-v2/components/DynamicForm/Fields/Text/Text.js.map +0 -1
  325. package/build/cjs/editor-v2/components/DynamicForm/Fields/TextArea/TextArea.js.map +0 -1
  326. package/build/cjs/editor-v2/components/DynamicForm/utils.js.map +0 -1
  327. package/build/cjs/form-generator/components/AddPropertyButton/AddPropertyButton.css +0 -3
  328. package/build/cjs/form-generator/components/AddPropertyButton/AddPropertyButton.js.map +0 -1
  329. package/build/cjs/form-generator/components/ArrayFieldRenderer/ArrayFieldRenderer.js.map +0 -1
  330. package/build/cjs/form-generator/components/ConfigRow/ConfigRow.js.map +0 -1
  331. package/build/cjs/form-generator/components/FieldCard/FieldCard.js.map +0 -1
  332. package/build/cjs/form-generator/components/FieldHeader/FieldHeader.js.map +0 -1
  333. package/build/cjs/form-generator/components/FormBuilder/FormBuilder.d.ts +0 -8
  334. package/build/cjs/form-generator/components/FormBuilder/FormBuilder.js.map +0 -1
  335. package/build/cjs/form-generator/components/ObjectFieldRenderer/ObjectFieldRenderer.js.map +0 -1
  336. package/build/cjs/form-generator/components/OptionHeader/OptionHeader.js.map +0 -1
  337. package/build/cjs/form-generator/components/OptionsRenderer/OptionsRenderer.js.map +0 -1
  338. package/build/cjs/form-generator/components/SectionHeader/SectionHeader.css +0 -3
  339. package/build/cjs/form-generator/components/SectionHeader/SectionHeader.js.map +0 -1
  340. package/build/cjs/form-generator/components/SelectFieldRenderer/SelectFieldRenderer.js.map +0 -1
  341. package/build/cjs/form-generator/hooks/FormContext.d.ts +0 -7
  342. package/build/cjs/form-generator/hooks/FormContext.js.map +0 -1
  343. package/build/cjs/form-generator/hooks/types.js.map +0 -1
  344. package/build/cjs/form-generator/hooks/useFormFields.js.map +0 -1
  345. package/build/esm/common/types/forms.js +0 -2
  346. package/build/esm/common/types/forms.js.map +0 -1
  347. package/build/esm/editor-v2/components/DynamicForm/DynamicForm.css +0 -5
  348. package/build/esm/editor-v2/components/DynamicForm/DynamicForm.d.ts +0 -11
  349. package/build/esm/editor-v2/components/DynamicForm/DynamicForm.js.map +0 -1
  350. package/build/esm/editor-v2/components/DynamicForm/FieldBase/FieldBase.js.map +0 -1
  351. package/build/esm/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.css +0 -6
  352. package/build/esm/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.js.map +0 -1
  353. package/build/esm/editor-v2/components/DynamicForm/Fields/Array/Array.css +0 -38
  354. package/build/esm/editor-v2/components/DynamicForm/Fields/Array/Array.js.map +0 -1
  355. package/build/esm/editor-v2/components/DynamicForm/Fields/Array/ItemButton/ItemButton.js.map +0 -1
  356. package/build/esm/editor-v2/components/DynamicForm/Fields/Boolean/Boolean.css +0 -3
  357. package/build/esm/editor-v2/components/DynamicForm/Fields/Boolean/Boolean.js.map +0 -1
  358. package/build/esm/editor-v2/components/DynamicForm/Fields/Number/Number.js.map +0 -1
  359. package/build/esm/editor-v2/components/DynamicForm/Fields/Object/Object.js.map +0 -1
  360. package/build/esm/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.css +0 -6
  361. package/build/esm/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.js.map +0 -1
  362. package/build/esm/editor-v2/components/DynamicForm/Fields/Select/Select.css +0 -3
  363. package/build/esm/editor-v2/components/DynamicForm/Fields/Select/Select.js.map +0 -1
  364. package/build/esm/editor-v2/components/DynamicForm/Fields/Text/Text.js.map +0 -1
  365. package/build/esm/editor-v2/components/DynamicForm/Fields/TextArea/TextArea.js.map +0 -1
  366. package/build/esm/editor-v2/components/DynamicForm/utils.js.map +0 -1
  367. package/build/esm/form-generator/components/AddPropertyButton/AddPropertyButton.css +0 -3
  368. package/build/esm/form-generator/components/AddPropertyButton/AddPropertyButton.js.map +0 -1
  369. package/build/esm/form-generator/components/ArrayFieldRenderer/ArrayFieldRenderer.js.map +0 -1
  370. package/build/esm/form-generator/components/ConfigRow/ConfigRow.js.map +0 -1
  371. package/build/esm/form-generator/components/FieldCard/FieldCard.js.map +0 -1
  372. package/build/esm/form-generator/components/FieldHeader/FieldHeader.js.map +0 -1
  373. package/build/esm/form-generator/components/FormBuilder/FormBuilder.d.ts +0 -9
  374. package/build/esm/form-generator/components/FormBuilder/FormBuilder.js.map +0 -1
  375. package/build/esm/form-generator/components/ObjectFieldRenderer/ObjectFieldRenderer.js.map +0 -1
  376. package/build/esm/form-generator/components/OptionHeader/OptionHeader.js.map +0 -1
  377. package/build/esm/form-generator/components/OptionsRenderer/OptionsRenderer.js.map +0 -1
  378. package/build/esm/form-generator/components/SectionHeader/SectionHeader.css +0 -3
  379. package/build/esm/form-generator/components/SectionHeader/SectionHeader.js.map +0 -1
  380. package/build/esm/form-generator/components/SelectFieldRenderer/SelectFieldRenderer.js.map +0 -1
  381. package/build/esm/form-generator/hooks/FormContext.d.ts +0 -7
  382. package/build/esm/form-generator/hooks/FormContext.js.map +0 -1
  383. package/build/esm/form-generator/hooks/types.js.map +0 -1
  384. package/build/esm/form-generator/hooks/useFormFields.js.map +0 -1
  385. /package/build/cjs/{form-generator → form-builder}/components/ConfigRow/ConfigRow.d.ts +0 -0
  386. /package/build/cjs/{form-generator → form-builder}/components/FieldHeader/FieldHeader.d.ts +0 -0
  387. /package/build/cjs/{form-generator → form-builder}/components/OptionHeader/OptionHeader.d.ts +0 -0
  388. /package/build/cjs/{form-generator → form-builder}/components/SectionHeader/SectionHeader.d.ts +0 -0
  389. /package/build/cjs/{form-generator/hooks → form-builder}/types.js +0 -0
  390. /package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/FieldBase/FieldBase.d.ts +0 -0
  391. /package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/ItemButton/ItemButton.d.ts +0 -0
  392. /package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Boolean/Boolean.d.ts +0 -0
  393. /package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Number/Number.d.ts +0 -0
  394. /package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Text/Text.d.ts +0 -0
  395. /package/build/cjs/{editor-v2/components/DynamicForm → form-generator/components}/Fields/TextArea/TextArea.d.ts +0 -0
  396. /package/build/esm/{form-generator → form-builder}/components/ConfigRow/ConfigRow.d.ts +0 -0
  397. /package/build/esm/{form-generator → form-builder}/components/FieldHeader/FieldHeader.d.ts +0 -0
  398. /package/build/esm/{form-generator → form-builder}/components/OptionHeader/OptionHeader.d.ts +0 -0
  399. /package/build/esm/{form-generator → form-builder}/components/SectionHeader/SectionHeader.d.ts +0 -0
  400. /package/build/esm/{form-generator/hooks → form-builder}/types.js +0 -0
  401. /package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/FieldBase/FieldBase.d.ts +0 -0
  402. /package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Array/ItemButton/ItemButton.d.ts +0 -0
  403. /package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Boolean/Boolean.d.ts +0 -0
  404. /package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Number/Number.d.ts +0 -0
  405. /package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/Text/Text.d.ts +0 -0
  406. /package/build/esm/{editor-v2/components/DynamicForm → form-generator/components}/Fields/TextArea/TextArea.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { ConfigInput } from "../../../editor-v2/index.js";
3
- import { FormOptionsField, InputTypeMenuItem } from "../../hooks/types.js";
2
+ import { ConfigInput } from "../../../form-generator/index.js";
3
+ import { FormOptionsField, InputTypeMenuItem } from "../../types.js";
4
4
  import './OptionsRenderer.css';
5
5
  interface OptionsRendererProps {
6
6
  field: FormOptionsField;
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { formGeneratorCn } from "../../utils/cn.js";
2
+ import { formBuilderCn } from "../../utils/cn.js";
3
3
  import { Button } from '@gravity-ui/uikit';
4
4
  import { AddPropertyButton } from "../AddPropertyButton/AddPropertyButton.js";
5
5
  import { OptionHeader } from "../OptionHeader/OptionHeader.js";
6
6
  import { SectionHeader } from "../SectionHeader/SectionHeader.js";
7
7
  import { useFormContext } from "../../hooks/FormContext.js";
8
8
  import './OptionsRenderer.css';
9
- const b = formGeneratorCn('options-renderer');
9
+ const b = formBuilderCn('options-renderer');
10
10
  export const OptionsRenderer = ({ field, fieldName: _fieldName, inputTypeMenuItems, renderNestedField, }) => {
11
11
  const { addOptionProperty, addOption, removeOption } = useFormContext();
12
12
  return (_jsxs("div", { className: b('nested-fields'), children: [_jsxs("div", { className: b('header'), children: [_jsx(SectionHeader, { title: "Options:" }), _jsx(Button, { view: "normal", size: "s", onClick: () => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptionsRenderer.js","sourceRoot":"../../../../../src","sources":["form-builder/components/OptionsRenderer/OptionsRenderer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAC,aAAa,EAAC,0BAAuB;AAC7C,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAC,iBAAiB,EAAC,kDAA+C;AACzE,OAAO,EAAC,YAAY,EAAC,wCAAqC;AAC1D,OAAO,EAAC,aAAa,EAAC,0CAAuC;AAC7D,OAAO,EAAC,cAAc,EAAC,mCAAgC;AAGvD,OAAO,uBAAuB,CAAC;AAE/B,MAAM,CAAC,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;AAc5C,MAAM,CAAC,MAAM,eAAe,GAAmC,CAAC,EAC5D,KAAK,EACL,SAAS,EAAE,UAAU,EACrB,kBAAkB,EAClB,iBAAiB,GACpB,EAAE,EAAE;IACD,MAAM,EAAC,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAC,GAAG,cAAc,EAAE,CAAC;IAEtE,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,aAC9B,eAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,aACvB,KAAC,aAAa,IAAC,KAAK,EAAC,UAAU,GAAG,EAClC,KAAC,MAAM,IACH,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,GAAG,EACR,OAAO,EAAE,GAAG,EAAE;4BACV,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBACxB,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,mBAAmB,CAAC,6BAG5B,IACP,EAEL,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CACxC,eAAmC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,aACrD,eAAK,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,aAC9B,KAAC,YAAY,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAI,EACpC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACzB,KAAC,MAAM,IACH,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,GAAG,EAAE;oCACV,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;gCACxC,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,sBAAsB,CAAC,uBAG/B,CACZ,IACC,EAEN,eAAK,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,aAC9B,KAAC,aAAa,IAAC,KAAK,EAAC,aAAa,EAAC,OAAO,EAAC,QAAQ,GAAG,EAErD,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,CAC3C,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE,WAAW,CAAC,CAChE,EAED,KAAC,iBAAiB,IACd,kBAAkB,EAAE,kBAAkB,EACtC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;oCACZ,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;gCACnD,CAAC,GACH,IACA,KA9BA,UAAU,WAAW,EAAE,CA+B3B,CACT,CAAC,IACA,CACT,CAAC;AACN,CAAC,CAAC","sourcesContent":["import * as React from 'react';\nimport {formBuilderCn} from '../../utils/cn';\nimport {Button} from '@gravity-ui/uikit';\nimport {ConfigInput} from '../../../form-generator';\nimport {AddPropertyButton} from '../AddPropertyButton/AddPropertyButton';\nimport {OptionHeader} from '../OptionHeader/OptionHeader';\nimport {SectionHeader} from '../SectionHeader/SectionHeader';\nimport {useFormContext} from '../../hooks/FormContext';\nimport {FormOptionsField, InputTypeMenuItem} from '../../types';\n\nimport './OptionsRenderer.scss';\n\nconst b = formBuilderCn('options-renderer');\n\ninterface OptionsRendererProps {\n field: FormOptionsField;\n fieldName: string;\n inputTypeMenuItems: InputTypeMenuItem[];\n renderNestedField: (\n field: ConfigInput,\n index: number,\n parentId: string,\n optionIndex?: number,\n ) => React.ReactNode;\n}\n\nexport const OptionsRenderer: React.FC<OptionsRendererProps> = ({\n field,\n fieldName: _fieldName,\n inputTypeMenuItems,\n renderNestedField,\n}) => {\n const {addOptionProperty, addOption, removeOption} = useFormContext();\n\n return (\n <div className={b('nested-fields')}>\n <div className={b('header')}>\n <SectionHeader title=\"Options:\" />\n <Button\n view=\"normal\"\n size=\"s\"\n onClick={() => {\n addOption(field.id);\n }}\n className={b('add-option-button')}\n >\n + Add Option\n </Button>\n </div>\n\n {field.options.map((option, optionIndex) => (\n <div key={`option_${optionIndex}`} className={b('option')}>\n <div className={b('option-header')}>\n <OptionHeader title={option.title} />\n {field.options.length > 1 && (\n <Button\n view=\"normal\"\n size=\"xs\"\n onClick={() => {\n removeOption(field.id, optionIndex);\n }}\n className={b('remove-option-button')}\n >\n Remove\n </Button>\n )}\n </div>\n\n <div className={b('nested-fields')}>\n <SectionHeader title=\"Properties:\" variant=\"body-2\" />\n\n {option.properties.map((property, propIndex) =>\n renderNestedField(property, propIndex, field.id, optionIndex),\n )}\n\n <AddPropertyButton\n inputTypeMenuItems={inputTypeMenuItems}\n onAdd={(type) => {\n addOptionProperty(field.id, optionIndex, type);\n }}\n />\n </div>\n </div>\n ))}\n </div>\n );\n};\n"]}
@@ -0,0 +1,3 @@
1
+ .pcformbuilder-section-header {
2
+ margin-bottom: 8px;
3
+ }
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Text } from '@gravity-ui/uikit';
3
- import { formGeneratorCn } from "../../utils/cn.js";
3
+ import { formBuilderCn } from "../../utils/cn.js";
4
4
  import './SectionHeader.css';
5
- const b = formGeneratorCn('section-header');
5
+ const b = formBuilderCn('section-header');
6
6
  export const SectionHeader = ({ title, variant = 'body-1' }) => (_jsx("div", { className: b(), children: _jsx(Text, { variant: variant, children: title }) }));
7
7
  //# sourceMappingURL=SectionHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SectionHeader.js","sourceRoot":"../../../../../src","sources":["form-builder/components/SectionHeader/SectionHeader.tsx"],"names":[],"mappings":";AACA,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,aAAa,EAAC,0BAAuB;AAE7C,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAC;AAO1C,MAAM,CAAC,MAAM,aAAa,GAAiC,CAAC,EAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,EAAC,EAAE,EAAE,CAAC,CACxF,cAAK,SAAS,EAAE,CAAC,EAAE,YACf,KAAC,IAAI,IAAC,OAAO,EAAE,OAAO,YAAG,KAAK,GAAQ,GACpC,CACT,CAAC","sourcesContent":["import * as React from 'react';\nimport {Text} from '@gravity-ui/uikit';\nimport {formBuilderCn} from '../../utils/cn';\n\nimport './SectionHeader.scss';\n\nconst b = formBuilderCn('section-header');\n\ninterface SectionHeaderProps {\n title: string;\n variant?: 'body-1' | 'body-2';\n}\n\nexport const SectionHeader: React.FC<SectionHeaderProps> = ({title, variant = 'body-1'}) => (\n <div className={b()}>\n <Text variant={variant}>{title}</Text>\n </div>\n);\n"]}
@@ -1,23 +1,23 @@
1
- .pcformgenerator-select-field-renderer__config-row {
1
+ .pcformbuilder-select-field-renderer__config-row {
2
2
  display: flex;
3
3
  align-items: center;
4
4
  gap: 8px;
5
5
  }
6
- .pcformgenerator-select-field-renderer__config-row > span {
6
+ .pcformbuilder-select-field-renderer__config-row > span {
7
7
  min-width: 90px;
8
8
  font-weight: 500;
9
9
  }
10
- .pcformgenerator-select-field-renderer__config-row > div {
10
+ .pcformbuilder-select-field-renderer__config-row > div {
11
11
  flex: 1;
12
12
  }
13
- .pcformgenerator-select-field-renderer__config-row_vertical {
13
+ .pcformbuilder-select-field-renderer__config-row_vertical {
14
14
  flex-direction: column;
15
15
  align-items: flex-start;
16
16
  }
17
- .pcformgenerator-select-field-renderer__options-title {
17
+ .pcformbuilder-select-field-renderer__options-title {
18
18
  margin-bottom: 8px;
19
19
  }
20
- .pcformgenerator-select-field-renderer__enum-option {
20
+ .pcformbuilder-select-field-renderer__enum-option {
21
21
  margin-top: 8px;
22
22
  padding: 12px;
23
23
  background-color: var(--g-color-base-generic-ultralight);
@@ -27,10 +27,10 @@
27
27
  flex-direction: column;
28
28
  gap: 8px;
29
29
  }
30
- .pcformgenerator-select-field-renderer__remove-button {
30
+ .pcformbuilder-select-field-renderer__remove-button {
31
31
  align-self: flex-end;
32
32
  margin-top: 4px;
33
33
  }
34
- .pcformgenerator-select-field-renderer__add-button {
34
+ .pcformbuilder-select-field-renderer__add-button {
35
35
  margin-top: 8px;
36
36
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { FormField } from "../../hooks/types.js";
2
+ import { FormField } from "../../types.js";
3
3
  import './SelectFieldRenderer.css';
4
4
  interface SelectFieldRendererProps {
5
5
  field: FormField;
@@ -1,10 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
3
  import { Button, DropdownMenu, Text, TextInput } from '@gravity-ui/uikit';
4
- import { formGeneratorCn } from "../../utils/cn.js";
4
+ import { formBuilderCn } from "../../utils/cn.js";
5
5
  import { useFormContext } from "../../hooks/FormContext.js";
6
6
  import './SelectFieldRenderer.css';
7
- const b = formGeneratorCn('select-field-renderer');
7
+ const b = formBuilderCn('select-field-renderer');
8
8
  export const SelectFieldRenderer = ({ field }) => {
9
9
  const { updateField } = useFormContext();
10
10
  if (field.type !== 'select') {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectFieldRenderer.js","sourceRoot":"../../../../../src","sources":["form-builder/components/SelectFieldRenderer/SelectFieldRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {Button, DropdownMenu, Text, TextInput} from '@gravity-ui/uikit';\nimport {formBuilderCn} from '../../utils/cn';\nimport {FormField} from '../../types';\nimport {useFormContext} from '../../hooks/FormContext';\n\nimport './SelectFieldRenderer.scss';\n\nconst b = formBuilderCn('select-field-renderer');\n\ninterface SelectFieldRendererProps {\n field: FormField;\n}\n\ninterface SelectFieldOption {\n content: string;\n value: string;\n}\n\nexport const SelectFieldRenderer: React.FC<SelectFieldRendererProps> = ({field}) => {\n const {updateField} = useFormContext();\n\n if (field.type !== 'select') {\n return null;\n }\n\n const view = field.view as 'select' | 'radiobutton';\n const mode = field.mode as 'single' | 'multiple';\n const enumValues = (field.enum || []) as SelectFieldOption[];\n\n return (\n <React.Fragment>\n <div className={b('config-row')}>\n <Text variant=\"body-2\">View:</Text>\n <DropdownMenu\n items={[\n {\n action: () => updateField(field.id, {view: 'select'}),\n text: 'Select',\n },\n {\n action: () => updateField(field.id, {view: 'radiobutton'}),\n text: 'Radio Button',\n },\n ]}\n renderSwitcher={(props) => (\n <Button {...props} view=\"normal\" size=\"s\">\n {view === 'radiobutton' ? 'Radio Button' : 'Select'}\n </Button>\n )}\n />\n </div>\n\n <div className={b('config-row')}>\n <Text variant=\"body-2\">Mode:</Text>\n <DropdownMenu\n items={[\n {\n action: () => updateField(field.id, {mode: 'single'}),\n text: 'Single',\n },\n {\n action: () => updateField(field.id, {mode: 'multiple'}),\n text: 'Multiple',\n },\n ]}\n renderSwitcher={(props) => (\n <Button {...props} view=\"normal\" size=\"s\">\n {mode === 'multiple' ? 'Multiple' : 'Single'}\n </Button>\n )}\n />\n </div>\n\n <div className={b('config-row', {vertical: true})}>\n <Text variant=\"body-2\" className={b('options-title')}>\n Options:\n </Text>\n {enumValues.map((option, index) => (\n <div key={`enum_${index}`} className={b('enum-option')}>\n <div className={b('config-row')}>\n <Text variant=\"body-2\">Label:</Text>\n <TextInput\n value={option.content}\n onUpdate={(value) => {\n const newEnum = [...enumValues];\n newEnum[index] = {\n ...newEnum[index],\n content: value,\n };\n updateField(field.id, {enum: newEnum});\n }}\n size=\"s\"\n />\n </div>\n <div className={b('config-row')}>\n <Text variant=\"body-2\">Value:</Text>\n <TextInput\n value={option.value}\n onUpdate={(value) => {\n const newEnum = [...enumValues];\n newEnum[index] = {\n ...newEnum[index],\n value,\n };\n updateField(field.id, {enum: newEnum});\n }}\n size=\"s\"\n />\n </div>\n <Button\n view=\"flat-danger\"\n size=\"xs\"\n onClick={() => {\n const newEnum = [...enumValues];\n newEnum.splice(index, 1);\n updateField(field.id, {enum: newEnum});\n }}\n className={b('remove-button')}\n >\n Remove\n </Button>\n </div>\n ))}\n <Button\n view=\"normal\"\n size=\"s\"\n onClick={() => {\n const newEnum = [...(enumValues || [])];\n newEnum.push({\n content: `Option ${newEnum.length + 1}`,\n value: `option${newEnum.length + 1}`,\n });\n updateField(field.id, {enum: newEnum});\n }}\n className={b('add-button')}\n >\n + Add Option\n </Button>\n </div>\n </React.Fragment>\n );\n};\n"]}
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ import { FormContextType, FormField } from "../types.js";
3
+ export declare const FormContext: React.Context<FormContextType>;
4
+ interface FormProviderProps {
5
+ children: React.ReactNode;
6
+ formFields: FormField[];
7
+ onChange?: (fields: FormField[]) => void;
8
+ }
9
+ export declare const FormProvider: React.FC<FormProviderProps>;
10
+ export declare const useFormContext: () => FormContextType;
11
+ export {};
@@ -2,8 +2,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
3
  import { useFormFields } from "./useFormFields.js";
4
4
  export const FormContext = React.createContext({});
5
- export const FormProvider = ({ children }) => {
6
- const formFieldsData = useFormFields();
5
+ export const FormProvider = ({ children, formFields, onChange }) => {
6
+ const formFieldsData = useFormFields({ initialFields: formFields, onChange });
7
7
  return _jsx(FormContext.Provider, { value: formFieldsData, children: children });
8
8
  };
9
9
  export const useFormContext = () => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormContext.js","sourceRoot":"../../../../src","sources":["form-builder/hooks/FormContext.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,aAAa,EAAC,2BAAwB;AAG9C,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAkB,EAAqB,CAAC,CAAC;AAQvF,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAC,EAAE,EAAE;IAC1F,MAAM,cAAc,GAAG,aAAa,CAAC,EAAC,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,CAAC;IAC5E,OAAO,KAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,cAAc,YAAG,QAAQ,GAAwB,CAAC;AAC1F,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC,CAAC","sourcesContent":["import * as React from 'react';\nimport {useFormFields} from './useFormFields';\nimport {FormContextType, FormField} from '../types';\n\nexport const FormContext = React.createContext<FormContextType>({} as FormContextType);\n\ninterface FormProviderProps {\n children: React.ReactNode;\n formFields: FormField[];\n onChange?: (fields: FormField[]) => void;\n}\n\nexport const FormProvider: React.FC<FormProviderProps> = ({children, formFields, onChange}) => {\n const formFieldsData = useFormFields({initialFields: formFields, onChange});\n return <FormContext.Provider value={formFieldsData}>{children}</FormContext.Provider>;\n};\n\nexport const useFormContext = () => {\n const context = React.useContext(FormContext);\n\n if (!context) {\n throw new Error('useFormContext must be used within a FormProvider');\n }\n\n return context;\n};\n"]}
@@ -1,6 +1,10 @@
1
- import { ConfigInput } from "../../editor-v2/index.js";
2
- import { FormField } from "./types.js";
3
- export declare const useFormFields: () => {
1
+ import { ConfigInput } from "../../form-generator/index.js";
2
+ import { FormField } from "../types.js";
3
+ interface UseFormFieldsProps {
4
+ initialFields: FormField[];
5
+ onChange?: (fields: FormField[]) => void;
6
+ }
7
+ export declare const useFormFields: ({ initialFields, onChange }: UseFormFieldsProps) => {
4
8
  formFields: FormField[];
5
9
  createField: (type: ConfigInput["type"], name?: string) => FormField;
6
10
  addField: (type: ConfigInput["type"]) => void;
@@ -16,3 +20,4 @@ export declare const useFormFields: () => {
16
20
  removeOption: (fieldId: string, optionIndex: number) => void;
17
21
  resetForm: () => void;
18
22
  };
23
+ export {};
@@ -1,17 +1,21 @@
1
1
  import * as React from 'react';
2
- export const useFormFields = () => {
3
- const [formFields, setFormFields] = React.useState([]);
4
- const [nextId, setNextId] = React.useState(1);
5
- const generateId = () => {
2
+ export const useFormFields = ({ initialFields, onChange }) => {
3
+ const [formFields, setFormFields] = React.useState(initialFields);
4
+ const [nextId, setNextId] = React.useState(initialFields.length + 1);
5
+ const generateId = React.useCallback(() => {
6
6
  const id = `field_id_${nextId}`;
7
7
  setNextId((prev) => prev + 1);
8
8
  return id;
9
- };
10
- const generateName = () => {
9
+ }, [nextId]);
10
+ const generateName = React.useCallback(() => {
11
11
  const name = `field_${nextId}`;
12
12
  return name;
13
- };
14
- const createField = (type, name = '') => {
13
+ }, [nextId]);
14
+ const updateFormFields = React.useCallback((fields) => {
15
+ setFormFields(fields);
16
+ onChange?.(fields);
17
+ }, [onChange]);
18
+ const createField = React.useCallback((type, name = '') => {
15
19
  const fieldName = name || generateName();
16
20
  const fieldId = generateId();
17
21
  let newField;
@@ -160,8 +164,8 @@ export const useFormFields = () => {
160
164
  return createField('text', fieldName);
161
165
  }
162
166
  return newField;
163
- };
164
- const updateFieldById = (fields, fieldId, updates) => {
167
+ }, [generateId, generateName]);
168
+ const updateFieldById = React.useCallback((fields, fieldId, updates) => {
165
169
  return fields.map((field) => {
166
170
  if (field.id === fieldId) {
167
171
  return { ...field, ...updates };
@@ -193,18 +197,18 @@ export const useFormFields = () => {
193
197
  }
194
198
  return field;
195
199
  });
196
- };
197
- const addField = (type) => {
200
+ }, []);
201
+ const addField = React.useCallback((type) => {
198
202
  const newField = createField(type);
199
- setFormFields((prev) => [...prev, newField]);
200
- };
201
- const removeField = (fieldId) => {
202
- setFormFields((prev) => prev.filter((field) => field.id !== fieldId));
203
- };
204
- const updateField = (fieldId, updates) => {
205
- setFormFields((prev) => updateFieldById(prev, fieldId, updates));
206
- };
207
- const addPropertyToObjectById = (fields, objectId, type = 'text') => {
203
+ updateFormFields([...formFields, newField]);
204
+ }, [createField, formFields, updateFormFields]);
205
+ const removeField = React.useCallback((fieldId) => {
206
+ updateFormFields(formFields.filter((field) => field.id !== fieldId));
207
+ }, [formFields, updateFormFields]);
208
+ const updateField = React.useCallback((fieldId, updates) => {
209
+ updateFormFields(updateFieldById(formFields, fieldId, updates));
210
+ }, [formFields, updateFieldById, updateFormFields]);
211
+ const addPropertyToObjectById = React.useCallback((fields, objectId, type = 'text') => {
208
212
  return fields.map((field) => {
209
213
  if (field.id === objectId && field.type === 'object') {
210
214
  const objectField = field;
@@ -252,11 +256,11 @@ export const useFormFields = () => {
252
256
  }
253
257
  return field;
254
258
  });
255
- };
256
- const addObjectProperty = (objectId, type = 'text') => {
257
- setFormFields((prev) => addPropertyToObjectById(prev, objectId, type));
258
- };
259
- const addOptionProperty = (fieldId, optionIndex, type = 'text') => {
259
+ }, [createField]);
260
+ const addObjectProperty = React.useCallback((objectId, type = 'text') => {
261
+ updateFormFields(addPropertyToObjectById(formFields, objectId, type));
262
+ }, [formFields, addPropertyToObjectById, updateFormFields]);
263
+ const addOptionProperty = React.useCallback((fieldId, optionIndex, type = 'text') => {
260
264
  const addPropertyToOptionRecursive = (fields, targetFieldId, targetOptionIndex) => {
261
265
  return fields.map((field) => {
262
266
  if (field.id === targetFieldId &&
@@ -305,20 +309,18 @@ export const useFormFields = () => {
305
309
  });
306
310
  };
307
311
  setFormFields((prev) => addPropertyToOptionRecursive(prev, fieldId, optionIndex));
308
- };
309
- const removeObjectProperty = (fieldId, propertyIndex) => {
310
- setFormFields((prev) => {
311
- return prev.map((field) => {
312
- if (field.id !== fieldId)
313
- return field;
314
- const updatedField = JSON.parse(JSON.stringify(field));
315
- const objectInput = updatedField;
316
- objectInput.properties.splice(propertyIndex, 1);
317
- return updatedField;
318
- });
319
- });
320
- };
321
- const removeOptionProperty = (fieldId, optionIndex, propertyIndex) => {
312
+ }, [createField]);
313
+ const removeObjectProperty = React.useCallback((fieldId, propertyIndex) => {
314
+ updateFormFields(formFields.map((field) => {
315
+ if (field.id !== fieldId)
316
+ return field;
317
+ const updatedField = JSON.parse(JSON.stringify(field));
318
+ const objectInput = updatedField;
319
+ objectInput.properties.splice(propertyIndex, 1);
320
+ return updatedField;
321
+ }));
322
+ }, [formFields, updateFormFields]);
323
+ const removeOptionProperty = React.useCallback((fieldId, optionIndex, propertyIndex) => {
322
324
  const removePropertyFromOptionRecursive = (fields, targetFieldId, targetOptionIndex, targetPropertyIndex) => {
323
325
  return fields.map((field) => {
324
326
  if (field.id === targetFieldId &&
@@ -367,23 +369,21 @@ export const useFormFields = () => {
367
369
  });
368
370
  };
369
371
  setFormFields((prev) => removePropertyFromOptionRecursive(prev, fieldId, optionIndex, propertyIndex));
370
- };
371
- const updateObjectProperty = (fieldId, propertyIndex, updates) => {
372
- setFormFields((prev) => {
373
- return prev.map((field) => {
374
- if (field.id !== fieldId)
375
- return field;
376
- const updatedField = JSON.parse(JSON.stringify(field));
377
- const objectInput = updatedField;
378
- objectInput.properties[propertyIndex] = {
379
- ...objectInput.properties[propertyIndex],
380
- ...updates,
381
- };
382
- return updatedField;
383
- });
384
- });
385
- };
386
- const updateOptionProperty = (fieldId, optionIndex, propertyIndex, updates) => {
372
+ }, []);
373
+ const updateObjectProperty = React.useCallback((fieldId, propertyIndex, updates) => {
374
+ updateFormFields(formFields.map((field) => {
375
+ if (field.id !== fieldId)
376
+ return field;
377
+ const updatedField = JSON.parse(JSON.stringify(field));
378
+ const objectInput = updatedField;
379
+ objectInput.properties[propertyIndex] = {
380
+ ...objectInput.properties[propertyIndex],
381
+ ...updates,
382
+ };
383
+ return updatedField;
384
+ }));
385
+ }, [formFields, updateFormFields]);
386
+ const updateOptionProperty = React.useCallback((fieldId, optionIndex, propertyIndex, updates) => {
387
387
  const updatePropertyInOptionRecursive = (fields, targetFieldId, targetOptionIndex, targetPropertyIndex, propertyUpdates) => {
388
388
  return fields.map((field) => {
389
389
  if (field.id === targetFieldId &&
@@ -435,8 +435,8 @@ export const useFormFields = () => {
435
435
  });
436
436
  };
437
437
  setFormFields((prev) => updatePropertyInOptionRecursive(prev, fieldId, optionIndex, propertyIndex, updates));
438
- };
439
- const addOption = (fieldId) => {
438
+ }, []);
439
+ const addOption = React.useCallback((fieldId) => {
440
440
  const addOptionRecursive = (fields, targetFieldId) => {
441
441
  return fields.map((field) => {
442
442
  if (field.id === targetFieldId &&
@@ -492,8 +492,8 @@ export const useFormFields = () => {
492
492
  });
493
493
  };
494
494
  setFormFields((prev) => addOptionRecursive(prev, fieldId));
495
- };
496
- const removeOption = (fieldId, optionIndex) => {
495
+ }, [generateId]);
496
+ const removeOption = React.useCallback((fieldId, optionIndex) => {
497
497
  const removeOptionRecursive = (fields, targetFieldId, targetOptionIndex) => {
498
498
  return fields.map((field) => {
499
499
  if (field.id === targetFieldId &&
@@ -540,11 +540,11 @@ export const useFormFields = () => {
540
540
  return field;
541
541
  });
542
542
  };
543
- setFormFields((prev) => removeOptionRecursive(prev, fieldId, optionIndex));
544
- };
545
- const resetForm = () => {
546
- setFormFields([]);
547
- };
543
+ updateFormFields(removeOptionRecursive(formFields, fieldId, optionIndex));
544
+ }, [formFields, updateFormFields]);
545
+ const resetForm = React.useCallback(() => {
546
+ updateFormFields([]);
547
+ }, [updateFormFields]);
548
548
  return {
549
549
  formFields,
550
550
  createField,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFormFields.js","sourceRoot":"../../../../src","sources":["form-builder/hooks/useFormFields.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {AnyOfInput, ConfigInput, ObjectInput, OneOfInput} from '../../form-generator';\nimport {FormArrayField, FormField} from '../types';\n\ninterface UseFormFieldsProps {\n initialFields: FormField[];\n onChange?: (fields: FormField[]) => void;\n}\n\nexport const useFormFields = ({initialFields, onChange}: UseFormFieldsProps) => {\n const [formFields, setFormFields] = React.useState<FormField[]>(initialFields);\n\n const [nextId, setNextId] = React.useState<number>(initialFields.length + 1);\n\n const generateId = React.useCallback(() => {\n const id = `field_id_${nextId}`;\n setNextId((prev) => prev + 1);\n return id;\n }, [nextId]);\n\n const generateName = React.useCallback(() => {\n const name = `field_${nextId}`;\n return name;\n }, [nextId]);\n\n const updateFormFields = React.useCallback(\n (fields: FormField[]) => {\n setFormFields(fields);\n onChange?.(fields);\n },\n [onChange],\n );\n\n const createField = React.useCallback(\n (type: ConfigInput['type'], name = ''): FormField => {\n const fieldName = name || generateName();\n const fieldId = generateId();\n let newField: FormField;\n\n switch (type) {\n case 'text':\n newField = {\n type: 'text',\n name: fieldName,\n title: 'Text Input',\n id: fieldId,\n } as FormField;\n break;\n case 'number':\n newField = {\n type: 'number',\n name: fieldName,\n title: 'Number Input',\n id: fieldId,\n } as FormField;\n break;\n case 'boolean':\n newField = {\n type: 'boolean',\n name: fieldName,\n title: 'Boolean Input',\n id: fieldId,\n } as FormField;\n break;\n case 'textarea':\n newField = {\n type: 'textarea',\n name: fieldName,\n title: 'Textarea Input',\n id: fieldId,\n } as FormField;\n break;\n case 'select':\n newField = {\n type: 'select',\n name: fieldName,\n title: 'Select Input',\n view: 'select',\n mode: 'single',\n enum: [\n {content: 'Option 1', value: 'option1'},\n {content: 'Option 2', value: 'option2'},\n ],\n id: fieldId,\n } as FormField;\n break;\n case 'object':\n newField = {\n type: 'object',\n name: fieldName,\n title: 'Object Input',\n properties: [\n {\n type: 'text',\n name: 'property1',\n title: 'Property 1',\n id: generateId(),\n } as FormField,\n ],\n id: fieldId,\n } as FormField;\n break;\n case 'array':\n newField = {\n type: 'array',\n name: fieldName,\n title: 'Array Input',\n buttonText: 'Add Item',\n arrayType: 'text',\n id: fieldId,\n } as FormField;\n break;\n case 'oneOf':\n newField = {\n type: 'oneOf',\n name: fieldName,\n title: 'OneOf Input',\n options: [\n {\n title: 'Option A',\n value: 'optionA',\n properties: [\n {\n type: 'text',\n name: 'textField',\n title: 'Text Field',\n id: generateId(),\n } as FormField,\n ],\n },\n {\n title: 'Option B',\n value: 'optionB',\n properties: [\n {\n type: 'number',\n name: 'numberField',\n title: 'Number Field',\n id: generateId(),\n } as FormField,\n ],\n },\n ],\n id: fieldId,\n } as FormField;\n break;\n case 'anyOf':\n newField = {\n type: 'anyOf',\n name: fieldName,\n title: 'AnyOf Input',\n options: [\n {\n title: 'Option A',\n value: 'optionA',\n properties: [\n {\n type: 'text',\n name: 'textField',\n title: 'Text Field',\n id: generateId(),\n } as FormField,\n ],\n },\n {\n title: 'Option B',\n value: 'optionB',\n properties: [\n {\n type: 'boolean',\n name: 'booleanField',\n title: 'Boolean Field',\n id: generateId(),\n } as FormField,\n ],\n },\n ],\n id: fieldId,\n } as FormField;\n break;\n default:\n return createField('text', fieldName);\n }\n\n return newField;\n },\n [generateId, generateName],\n );\n\n const updateFieldById = React.useCallback(\n (fields: FormField[], fieldId: string, updates: Partial<ConfigInput>): FormField[] => {\n return fields.map((field) => {\n if (field.id === fieldId) {\n return {...field, ...updates} as FormField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: updateFieldById(\n objectField.properties as FormField[],\n fieldId,\n updates,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: updateFieldById(\n option.properties as FormField[],\n fieldId,\n updates,\n ),\n })),\n } as FormField;\n }\n\n if (field.type === 'array' && field.arrayType === 'object') {\n const arrayField = field as FormArrayField;\n return {\n ...field,\n properties: updateFieldById(\n arrayField.properties as FormField[],\n fieldId,\n updates,\n ),\n } as FormField;\n }\n\n return field;\n });\n },\n [],\n );\n\n const addField = React.useCallback(\n (type: ConfigInput['type']) => {\n const newField = createField(type);\n updateFormFields([...formFields, newField]);\n },\n [createField, formFields, updateFormFields],\n );\n\n const removeField = React.useCallback(\n (fieldId: string) => {\n updateFormFields(formFields.filter((field) => field.id !== fieldId));\n },\n [formFields, updateFormFields],\n );\n\n const updateField = React.useCallback(\n (fieldId: string, updates: Partial<ConfigInput>) => {\n updateFormFields(updateFieldById(formFields, fieldId, updates));\n },\n [formFields, updateFieldById, updateFormFields],\n );\n\n const addPropertyToObjectById = React.useCallback(\n (\n fields: FormField[],\n objectId: string,\n type: ConfigInput['type'] = 'text',\n ): FormField[] => {\n return fields.map((field) => {\n if (field.id === objectId && field.type === 'object') {\n const objectField = field as ObjectInput;\n const propertyName = `property${(objectField.properties?.length || 0) + 1}`;\n const newProperty = createField(type, propertyName);\n\n return {\n ...field,\n properties: [...(objectField.properties || []), newProperty],\n } as FormField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: addPropertyToObjectById(\n objectField.properties as FormField[],\n objectId,\n type,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: addPropertyToObjectById(\n option.properties as FormField[],\n objectId,\n type,\n ),\n })),\n } as FormField;\n }\n\n if (field.type === 'array' && field.arrayType === 'object') {\n const arrayField = field as FormArrayField;\n\n if (field.id === objectId) {\n const propertyName = `property${(arrayField.properties?.length || 0) + 1}`;\n const newProperty = createField(type, propertyName);\n\n return {\n ...field,\n properties: [...(arrayField.properties || []), newProperty],\n } as FormField;\n }\n\n if (arrayField.properties && arrayField.properties.length > 0) {\n return {\n ...field,\n properties: addPropertyToObjectById(\n arrayField.properties,\n objectId,\n type,\n ),\n } as FormField;\n }\n }\n\n return field;\n });\n },\n [createField],\n );\n\n const addObjectProperty = React.useCallback(\n (objectId: string, type: ConfigInput['type'] = 'text') => {\n updateFormFields(addPropertyToObjectById(formFields, objectId, type));\n },\n [formFields, addPropertyToObjectById, updateFormFields],\n );\n\n const addOptionProperty = React.useCallback(\n (fieldId: string, optionIndex: number, type: ConfigInput['type'] = 'text') => {\n const addPropertyToOptionRecursive = (\n fields: FormField[],\n targetFieldId: string,\n targetOptionIndex: number,\n ): FormField[] => {\n return fields.map((field) => {\n if (\n field.id === targetFieldId &&\n (field.type === 'oneOf' || field.type === 'anyOf')\n ) {\n const updatedField = JSON.parse(JSON.stringify(field));\n const options = updatedField.options;\n\n if (\n options &&\n Array.isArray(options) &&\n targetOptionIndex >= 0 &&\n targetOptionIndex < options.length &&\n options[targetOptionIndex].properties\n ) {\n const propertyName = `property${options[targetOptionIndex].properties.length + 1}`;\n const newProperty = createField(type, propertyName);\n\n options[targetOptionIndex].properties.push(newProperty);\n }\n\n return updatedField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: addPropertyToOptionRecursive(\n objectField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: addPropertyToOptionRecursive(\n option.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n ),\n })),\n } as FormField;\n }\n\n if (\n field.type === 'array' &&\n field.arrayType === 'object' &&\n (field as FormArrayField).properties\n ) {\n const arrayField = field as FormArrayField;\n return {\n ...field,\n properties: addPropertyToOptionRecursive(\n arrayField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n ),\n } as FormField;\n }\n\n return field;\n });\n };\n\n setFormFields((prev) => addPropertyToOptionRecursive(prev, fieldId, optionIndex));\n },\n [createField],\n );\n\n const removeObjectProperty = React.useCallback(\n (fieldId: string, propertyIndex: number) => {\n updateFormFields(\n formFields.map((field) => {\n if (field.id !== fieldId) return field;\n\n const updatedField = JSON.parse(JSON.stringify(field));\n const objectInput = updatedField as ObjectInput;\n\n objectInput.properties.splice(propertyIndex, 1);\n\n return updatedField;\n }) as FormField[],\n );\n },\n [formFields, updateFormFields],\n );\n\n const removeOptionProperty = React.useCallback(\n (fieldId: string, optionIndex: number, propertyIndex: number) => {\n const removePropertyFromOptionRecursive = (\n fields: FormField[],\n targetFieldId: string,\n targetOptionIndex: number,\n targetPropertyIndex: number,\n ): FormField[] => {\n return fields.map((field) => {\n if (\n field.id === targetFieldId &&\n (field.type === 'oneOf' || field.type === 'anyOf')\n ) {\n const updatedField = JSON.parse(JSON.stringify(field));\n const options = updatedField.options;\n\n if (\n options &&\n Array.isArray(options) &&\n targetOptionIndex >= 0 &&\n targetOptionIndex < options.length &&\n options[targetOptionIndex].properties &&\n targetPropertyIndex >= 0 &&\n targetPropertyIndex < options[targetOptionIndex].properties.length\n ) {\n options[targetOptionIndex].properties.splice(targetPropertyIndex, 1);\n }\n\n return updatedField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: removePropertyFromOptionRecursive(\n objectField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n targetPropertyIndex,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: removePropertyFromOptionRecursive(\n option.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n targetPropertyIndex,\n ),\n })),\n } as FormField;\n }\n\n if (\n field.type === 'array' &&\n field.arrayType === 'object' &&\n (field as FormArrayField).properties\n ) {\n const arrayField = field as FormArrayField;\n return {\n ...field,\n properties: removePropertyFromOptionRecursive(\n arrayField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n targetPropertyIndex,\n ),\n } as FormField;\n }\n\n return field;\n });\n };\n\n setFormFields((prev) =>\n removePropertyFromOptionRecursive(prev, fieldId, optionIndex, propertyIndex),\n );\n },\n [],\n );\n\n const updateObjectProperty = React.useCallback(\n (fieldId: string, propertyIndex: number, updates: Partial<ConfigInput>) => {\n updateFormFields(\n formFields.map((field) => {\n if (field.id !== fieldId) return field;\n\n const updatedField = JSON.parse(JSON.stringify(field));\n const objectInput = updatedField as ObjectInput;\n\n objectInput.properties[propertyIndex] = {\n ...objectInput.properties[propertyIndex],\n ...updates,\n } as ConfigInput;\n\n return updatedField;\n }) as FormField[],\n );\n },\n [formFields, updateFormFields],\n );\n\n const updateOptionProperty = React.useCallback(\n (\n fieldId: string,\n optionIndex: number,\n propertyIndex: number,\n updates: Partial<ConfigInput>,\n ) => {\n const updatePropertyInOptionRecursive = (\n fields: FormField[],\n targetFieldId: string,\n targetOptionIndex: number,\n targetPropertyIndex: number,\n propertyUpdates: Partial<ConfigInput>,\n ): FormField[] => {\n return fields.map((field) => {\n if (\n field.id === targetFieldId &&\n (field.type === 'oneOf' || field.type === 'anyOf')\n ) {\n const updatedField = JSON.parse(JSON.stringify(field));\n const options = updatedField.options;\n\n if (\n options &&\n Array.isArray(options) &&\n targetOptionIndex >= 0 &&\n targetOptionIndex < options.length &&\n options[targetOptionIndex].properties &&\n targetPropertyIndex >= 0 &&\n targetPropertyIndex < options[targetOptionIndex].properties.length\n ) {\n options[targetOptionIndex].properties[targetPropertyIndex] = {\n ...options[targetOptionIndex].properties[targetPropertyIndex],\n ...propertyUpdates,\n } as ConfigInput;\n }\n\n return updatedField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: updatePropertyInOptionRecursive(\n objectField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n targetPropertyIndex,\n propertyUpdates,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: updatePropertyInOptionRecursive(\n option.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n targetPropertyIndex,\n propertyUpdates,\n ),\n })),\n } as FormField;\n }\n\n if (\n field.type === 'array' &&\n field.arrayType === 'object' &&\n (field as FormArrayField).properties\n ) {\n const arrayField = field as FormArrayField;\n return {\n ...field,\n properties: updatePropertyInOptionRecursive(\n arrayField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n targetPropertyIndex,\n propertyUpdates,\n ),\n } as FormField;\n }\n\n return field;\n });\n };\n\n setFormFields((prev) =>\n updatePropertyInOptionRecursive(prev, fieldId, optionIndex, propertyIndex, updates),\n );\n },\n [],\n );\n\n const addOption = React.useCallback(\n (fieldId: string) => {\n const addOptionRecursive = (\n fields: FormField[],\n targetFieldId: string,\n ): FormField[] => {\n return fields.map((field) => {\n if (\n field.id === targetFieldId &&\n (field.type === 'oneOf' || field.type === 'anyOf')\n ) {\n const updatedField = JSON.parse(JSON.stringify(field));\n const options = updatedField.options;\n\n if (options && Array.isArray(options)) {\n const optionLetter = String.fromCharCode(65 + options.length);\n const newOption = {\n title: `Option ${optionLetter}`,\n value: `option${optionLetter.toLowerCase()}`,\n properties: [\n {\n type: 'text',\n name: 'textField',\n title: 'Text Field',\n id: generateId(),\n } as FormField,\n ],\n };\n\n options.push(newOption);\n }\n\n return updatedField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: addOptionRecursive(\n objectField.properties as FormField[],\n targetFieldId,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: addOptionRecursive(\n option.properties as FormField[],\n targetFieldId,\n ),\n })),\n } as FormField;\n }\n\n if (\n field.type === 'array' &&\n field.arrayType === 'object' &&\n (field as FormArrayField).properties\n ) {\n const arrayField = field as FormArrayField;\n return {\n ...field,\n properties: addOptionRecursive(\n arrayField.properties as FormField[],\n targetFieldId,\n ),\n } as FormField;\n }\n\n return field;\n });\n };\n\n setFormFields((prev) => addOptionRecursive(prev, fieldId));\n },\n [generateId],\n );\n\n const removeOption = React.useCallback(\n (fieldId: string, optionIndex: number) => {\n const removeOptionRecursive = (\n fields: FormField[],\n targetFieldId: string,\n targetOptionIndex: number,\n ): FormField[] => {\n return fields.map((field) => {\n if (\n field.id === targetFieldId &&\n (field.type === 'oneOf' || field.type === 'anyOf')\n ) {\n const updatedField = JSON.parse(JSON.stringify(field));\n const options = updatedField.options;\n\n if (\n options &&\n Array.isArray(options) &&\n targetOptionIndex >= 0 &&\n targetOptionIndex < options.length\n ) {\n if (options.length > 1) {\n options.splice(targetOptionIndex, 1);\n }\n }\n\n return updatedField;\n }\n\n if (field.type === 'object' && (field as ObjectInput).properties) {\n const objectField = field as ObjectInput;\n return {\n ...field,\n properties: removeOptionRecursive(\n objectField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n ),\n } as FormField;\n }\n\n if (\n (field.type === 'oneOf' || field.type === 'anyOf') &&\n (field as OneOfInput | AnyOfInput).options\n ) {\n const optionsField = field as OneOfInput | AnyOfInput;\n return {\n ...field,\n options: optionsField.options.map((option) => ({\n ...option,\n properties: removeOptionRecursive(\n option.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n ),\n })),\n } as FormField;\n }\n\n if (\n field.type === 'array' &&\n field.arrayType === 'object' &&\n (field as FormArrayField).properties\n ) {\n const arrayField = field as FormArrayField;\n return {\n ...field,\n properties: removeOptionRecursive(\n arrayField.properties as FormField[],\n targetFieldId,\n targetOptionIndex,\n ),\n } as FormField;\n }\n\n return field;\n });\n };\n\n updateFormFields(removeOptionRecursive(formFields, fieldId, optionIndex));\n },\n [formFields, updateFormFields],\n );\n\n const resetForm = React.useCallback(() => {\n updateFormFields([]);\n }, [updateFormFields]);\n\n return {\n formFields,\n createField,\n addField,\n removeField,\n updateField,\n addObjectProperty,\n addOptionProperty,\n removeObjectProperty,\n removeOptionProperty,\n updateObjectProperty,\n updateOptionProperty,\n addOption,\n removeOption,\n resetForm,\n };\n};\n"]}
@@ -0,0 +1,4 @@
1
+ export * from "./FormBuilder.js";
2
+ export * from "./hooks/FormContext.js";
3
+ export * from "./hooks/useFormFields.js";
4
+ export * from "./types.js";
@@ -0,0 +1,5 @@
1
+ export * from "./FormBuilder.js";
2
+ export * from "./hooks/FormContext.js";
3
+ export * from "./hooks/useFormFields.js";
4
+ export * from "./types.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["form-builder/index.ts"],"names":[],"mappings":"AAAA,iCAA8B;AAC9B,uCAAoC;AACpC,yCAAsC;AACtC,2BAAwB","sourcesContent":["export * from './FormBuilder';\nexport * from './hooks/FormContext';\nexport * from './hooks/useFormFields';\nexport * from './types';\n"]}
File without changes
@@ -1,4 +1,4 @@
1
- import { AnyOfInput, ArrayObjectInput, ArrayTextInput, ConfigInput, ObjectInput, OneOfInput } from "../../editor-v2/index.js";
1
+ import { AnyOfInput, ArrayObjectInput, ArrayTextInput, ConfigInput, ObjectInput, OneOfInput } from "../form-generator/index.js";
2
2
  export type FormField = ConfigInput & {
3
3
  id: string;
4
4
  };
@@ -46,3 +46,8 @@ export interface FormData {
46
46
  }
47
47
  export interface FormContextType extends FormData, FormFieldsActions {
48
48
  }
49
+ export interface FormBuilderProps {
50
+ className?: string;
51
+ formFields: Array<FormField>;
52
+ onChange?: (fields: FormField[]) => void;
53
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"../../../src","sources":["form-builder/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n AnyOfInput,\n ArrayObjectInput,\n ArrayTextInput,\n ConfigInput,\n ObjectInput,\n OneOfInput,\n} from '../form-generator';\n\nexport type FormField = ConfigInput & {id: string};\n\nexport type FormObjectField = ObjectInput & {id: string};\nexport type FormArrayField = (ArrayTextInput | ArrayObjectInput) & {\n id: string;\n properties?: FormField[];\n};\nexport type FormOneOfField = OneOfInput & {id: string};\nexport type FormAnyOfField = AnyOfInput & {id: string};\nexport type FormOptionsField = (OneOfInput | AnyOfInput) & {id: string};\n\nexport interface InputTypeMenuItem {\n action: () => void;\n text: string;\n type: string;\n}\n\nexport interface ContentConfig {\n [key: string]: unknown;\n}\n\nexport interface FormFieldsActions {\n createField: (type: ConfigInput['type'], name?: string) => FormField;\n addField: (type: ConfigInput['type']) => void;\n removeField: (fieldId: string) => void;\n updateField: (fieldId: string, updates: Partial<ConfigInput>) => void;\n\n addObjectProperty: (objectId: string, type: ConfigInput['type']) => void;\n removeObjectProperty: (fieldId: string, propertyIndex: number) => void;\n updateObjectProperty: (\n fieldId: string,\n propertyIndex: number,\n updates: Partial<ConfigInput>,\n ) => void;\n\n addOption: (fieldId: string) => void;\n removeOption: (fieldId: string, optionIndex: number) => void;\n addOptionProperty: (fieldId: string, optionIndex: number, type?: ConfigInput['type']) => void;\n removeOptionProperty: (fieldId: string, optionIndex: number, propertyIndex: number) => void;\n updateOptionProperty: (\n fieldId: string,\n optionIndex: number,\n propertyIndex: number,\n updates: Partial<ConfigInput>,\n ) => void;\n\n resetForm: () => void;\n}\n\nexport interface FormData {\n formFields: Array<FormField>;\n}\n\nexport interface FormContextType extends FormData, FormFieldsActions {}\n\nexport interface FormBuilderProps {\n className?: string;\n formFields: Array<FormField>;\n onChange?: (fields: FormField[]) => void;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export declare const FORM_BUILDER_NAMESPACE = "pcformbuilder-";
2
+ export declare const formBuilderCn: import("@bem-react/classname").ClassNameInitilizer;
@@ -0,0 +1,4 @@
1
+ import { withNaming } from '@bem-react/classname';
2
+ export const FORM_BUILDER_NAMESPACE = 'pcformbuilder-';
3
+ export const formBuilderCn = withNaming({ n: FORM_BUILDER_NAMESPACE, e: '__', m: '_' });
4
+ //# sourceMappingURL=cn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cn.js","sourceRoot":"../../../../src","sources":["form-builder/utils/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAEhD,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CAAC;AAEvD,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC,EAAC,CAAC,EAAE,sBAAsB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAC,CAAC,CAAC","sourcesContent":["import {withNaming} from '@bem-react/classname';\n\nexport const FORM_BUILDER_NAMESPACE = 'pcformbuilder-';\n\nexport const formBuilderCn = withNaming({n: FORM_BUILDER_NAMESPACE, e: '__', m: '_'});\n"]}
@@ -0,0 +1,7 @@
1
+ /* use this for style redefinitions to awoid problems with
2
+ unpredictable css rules order in build */
3
+ .pcformgenerator-form-generator {
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: 12px;
7
+ }
@@ -0,0 +1,11 @@
1
+ import { ConfigInput, DynamicFormValue } from "./types.js";
2
+ import './FormGenerator.css';
3
+ interface FormGeneratorProps {
4
+ blockConfig: Array<ConfigInput>;
5
+ contentConfig?: object;
6
+ onUpdateByKey?: (key: string, value: DynamicFormValue) => void;
7
+ onUpdate?: (value: object) => void;
8
+ className?: string;
9
+ }
10
+ export declare const FormGenerator: ({ blockConfig, onUpdateByKey, onUpdate, contentConfig, }: FormGeneratorProps) => import("react/jsx-runtime").JSX.Element;
11
+ export default FormGenerator;