@dnb/eufemia 10.50.0 → 10.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (901) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/cjs/components/accordion/style/dnb-accordion.css +3 -3
  3. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  4. package/cjs/components/autocomplete/style/dnb-autocomplete.css +1 -1
  5. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  6. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  7. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  8. package/cjs/components/button/Button.d.ts +2 -2
  9. package/cjs/components/card/style/dnb-card.css +1 -1
  10. package/cjs/components/card/style/dnb-card.min.css +1 -1
  11. package/cjs/components/date-picker/DatePicker.d.ts +13 -4
  12. package/cjs/components/drawer/style/dnb-drawer.css +3 -3
  13. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  14. package/cjs/components/dropdown/style/dnb-dropdown.css +1 -1
  15. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  16. package/cjs/components/form-row/style/dnb-form-row.css +1 -1
  17. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  18. package/cjs/components/form-status/FormStatus.d.ts +1 -1
  19. package/cjs/components/grid/style/dnb-grid.css +6 -6
  20. package/cjs/components/grid/style/dnb-grid.min.css +1 -1
  21. package/cjs/components/input-masked/InputMasked.d.ts +1 -1
  22. package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
  23. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  24. package/cjs/components/number-format/NumberFormat.d.ts +14 -28
  25. package/cjs/components/number-format/NumberFormat.js +6 -2
  26. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  27. package/cjs/components/number-format/NumberFormatDocs.d.ts +3 -0
  28. package/cjs/components/number-format/NumberFormatDocs.js +161 -0
  29. package/cjs/components/number-format/NumberFormatDocs.js.map +1 -0
  30. package/cjs/components/number-format/NumberUtils.d.ts +21 -1
  31. package/cjs/components/number-format/NumberUtils.js +33 -8
  32. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  33. package/cjs/components/pagination/Pagination.d.ts +1 -1
  34. package/cjs/components/section/style/dnb-section.css +2 -2
  35. package/cjs/components/section/style/dnb-section.min.css +2 -2
  36. package/cjs/components/space/style/dnb-space.css +2 -2
  37. package/cjs/components/space/style/dnb-space.min.css +1 -1
  38. package/cjs/components/switch/Switch.d.ts +100 -91
  39. package/cjs/components/switch/Switch.js +167 -239
  40. package/cjs/components/switch/Switch.js.map +1 -1
  41. package/cjs/components/switch/SwitchDocs.d.ts +3 -0
  42. package/cjs/components/switch/SwitchDocs.js +93 -0
  43. package/cjs/components/switch/SwitchDocs.js.map +1 -0
  44. package/cjs/components/tabs/style/dnb-tabs.css +1 -0
  45. package/cjs/components/tabs/style/dnb-tabs.min.css +1 -1
  46. package/cjs/components/tabs/style/dnb-tabs.scss +1 -0
  47. package/cjs/components/toggle-button/style/dnb-toggle-button.css +1 -1
  48. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  49. package/cjs/extensions/forms/DataContext/At/At.js +1 -1
  50. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  51. package/cjs/extensions/forms/DataContext/Context.d.ts +20 -9
  52. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  53. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  54. package/cjs/extensions/forms/DataContext/Provider/Provider.js +105 -60
  55. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  56. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  57. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  58. package/cjs/extensions/forms/Field/Date/Date.d.ts +6 -0
  59. package/cjs/extensions/forms/Field/Date/Date.js +20 -4
  60. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  61. package/{extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts → cjs/extensions/forms/Field/Date/DateDocs.d.ts} +1 -1
  62. package/cjs/extensions/forms/Field/Date/DateDocs.js +20 -0
  63. package/cjs/extensions/forms/Field/Date/DateDocs.js.map +1 -0
  64. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +1 -1
  65. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  66. package/{es/extensions/forms/Form/FieldProps/FieldProps.d.ts → cjs/extensions/forms/Field/Provider/FieldProvider.d.ts} +5 -7
  67. package/cjs/extensions/forms/Field/Provider/FieldProvider.js +33 -0
  68. package/cjs/extensions/forms/Field/Provider/FieldProvider.js.map +1 -0
  69. package/cjs/extensions/forms/{Form/FieldProps/FieldPropsContext.d.ts → Field/Provider/FieldProviderContext.d.ts} +3 -3
  70. package/cjs/extensions/forms/{Form/FieldProps/FieldPropsContext.js → Field/Provider/FieldProviderContext.js} +3 -3
  71. package/cjs/extensions/forms/Field/Provider/FieldProviderContext.js.map +1 -0
  72. package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.d.ts +2 -0
  73. package/cjs/extensions/forms/{Form/FieldProps/FieldPropsDocs.js → Field/Provider/FieldProviderDocs.js} +4 -4
  74. package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -0
  75. package/cjs/extensions/forms/Field/Provider/index.d.ts +2 -0
  76. package/cjs/extensions/forms/{Form/FieldProps → Field/Provider}/index.js +5 -5
  77. package/cjs/extensions/forms/Field/Provider/index.js.map +1 -0
  78. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +121 -0
  79. package/cjs/extensions/forms/{Form/FieldProps/FieldProps.js → Field/Provider/useFieldProvider.js} +34 -34
  80. package/cjs/extensions/forms/Field/Provider/useFieldProvider.js.map +1 -0
  81. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  82. package/cjs/extensions/forms/Field/index.js +7 -0
  83. package/cjs/extensions/forms/Field/index.js.map +1 -1
  84. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +12 -1
  85. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  86. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  87. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  88. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  89. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  90. package/cjs/extensions/forms/Form/Element/Element.js +4 -4
  91. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  92. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  93. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  94. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +2 -2
  95. package/cjs/extensions/forms/Form/Isolation/Isolation.js +1 -1
  96. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  97. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  98. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  99. package/cjs/extensions/forms/Form/Section/Section.d.ts +2 -1
  100. package/cjs/extensions/forms/Form/Section/Section.js +2 -2
  101. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  102. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.d.ts +25 -0
  103. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +153 -0
  104. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -0
  105. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.d.ts +2 -0
  106. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js +30 -0
  107. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js.map +1 -0
  108. package/cjs/extensions/forms/Form/SubmitConfirmation/index.d.ts +2 -0
  109. package/cjs/extensions/forms/Form/SubmitConfirmation/index.js +27 -0
  110. package/cjs/extensions/forms/Form/SubmitConfirmation/index.js.map +1 -0
  111. package/cjs/extensions/forms/Form/Visibility/Visibility.js +3 -3
  112. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  113. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.d.ts +1 -0
  114. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  115. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +1 -1
  116. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  117. package/cjs/extensions/forms/Form/data-context/getData.js +1 -1
  118. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
  119. package/cjs/extensions/forms/Form/data-context/useData.d.ts +3 -2
  120. package/cjs/extensions/forms/Form/data-context/useData.js +13 -15
  121. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  122. package/{es/extensions/forms/Form/data-context/useError.d.ts → cjs/extensions/forms/Form/data-context/useValidation.d.ts} +3 -1
  123. package/cjs/extensions/forms/Form/data-context/useValidation.js +60 -0
  124. package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -0
  125. package/cjs/extensions/forms/Form/index.d.ts +13 -2
  126. package/cjs/extensions/forms/Form/index.js +19 -9
  127. package/cjs/extensions/forms/Form/index.js.map +1 -1
  128. package/cjs/extensions/forms/Iterate/Array/Array.js +4 -12
  129. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  130. package/cjs/extensions/forms/Iterate/Count/Count.js +1 -1
  131. package/cjs/extensions/forms/Iterate/Count/Count.js.map +1 -1
  132. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -2
  133. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  134. package/cjs/extensions/forms/Tools/GenerateSchema.d.ts +1 -1
  135. package/cjs/extensions/forms/Tools/GenerateSchema.js +1 -1
  136. package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  137. package/cjs/extensions/forms/Tools/ListAllProps.d.ts +1 -1
  138. package/cjs/extensions/forms/Tools/ListAllProps.js +1 -1
  139. package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -1
  140. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +3 -3
  141. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  142. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +2 -2
  143. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  144. package/cjs/extensions/forms/Value/Currency/CurrencyDocs.d.ts +2 -0
  145. package/cjs/extensions/forms/Value/Currency/CurrencyDocs.js +28 -0
  146. package/cjs/extensions/forms/Value/Currency/CurrencyDocs.js.map +1 -0
  147. package/cjs/extensions/forms/Value/Date/Date.js +25 -16
  148. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  149. package/cjs/extensions/forms/Value/Number/NumberDocs.js +9 -2
  150. package/cjs/extensions/forms/Value/Number/NumberDocs.js.map +1 -1
  151. package/cjs/extensions/forms/Value/Provider/ValueProvider.d.ts +13 -0
  152. package/cjs/extensions/forms/Value/Provider/ValueProvider.js +27 -0
  153. package/cjs/extensions/forms/Value/Provider/ValueProvider.js.map +1 -0
  154. package/cjs/extensions/forms/Value/Provider/ValueProviderContext.d.ts +9 -0
  155. package/cjs/extensions/forms/Value/Provider/ValueProviderContext.js +15 -0
  156. package/cjs/extensions/forms/Value/Provider/ValueProviderContext.js.map +1 -0
  157. package/cjs/extensions/forms/Value/Provider/ValueProviderDocs.d.ts +3 -0
  158. package/cjs/extensions/forms/Value/Provider/ValueProviderDocs.js +23 -0
  159. package/cjs/extensions/forms/Value/Provider/ValueProviderDocs.js.map +1 -0
  160. package/cjs/extensions/forms/Value/Provider/index.d.ts +2 -0
  161. package/cjs/extensions/forms/Value/Provider/index.js +27 -0
  162. package/cjs/extensions/forms/Value/Provider/index.js.map +1 -0
  163. package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +31 -0
  164. package/cjs/extensions/forms/Value/Provider/useValueProvider.js +50 -0
  165. package/cjs/extensions/forms/Value/Provider/useValueProvider.js.map +1 -0
  166. package/cjs/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -1
  167. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +11 -3
  168. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  169. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.d.ts +3 -0
  170. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js +37 -0
  171. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -0
  172. package/cjs/extensions/forms/Value/index.d.ts +3 -2
  173. package/cjs/extensions/forms/Value/index.js +9 -2
  174. package/cjs/extensions/forms/Value/index.js.map +1 -1
  175. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  176. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  177. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +2 -1
  178. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  179. package/cjs/extensions/forms/Wizard/Step/Step.js +2 -2
  180. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  181. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -5
  182. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  183. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -4
  184. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.d.ts +1 -2
  185. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +13 -15
  186. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  187. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js +0 -5
  188. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js.map +1 -1
  189. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +0 -2
  190. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +0 -2
  191. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  192. package/cjs/extensions/forms/hooks/useDataValue.d.ts +1 -1
  193. package/cjs/extensions/forms/hooks/useDataValue.js +1 -1
  194. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  195. package/cjs/extensions/forms/hooks/useExternalValue.js +1 -1
  196. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  197. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  198. package/cjs/extensions/forms/hooks/useFieldProps.js +111 -56
  199. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  200. package/cjs/extensions/forms/hooks/usePath.js +7 -4
  201. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  202. package/cjs/extensions/forms/hooks/useValueProps.d.ts +1 -1
  203. package/cjs/extensions/forms/hooks/useValueProps.js +7 -2
  204. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  205. package/cjs/extensions/forms/style/dnb-forms.css +10 -21
  206. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  207. package/cjs/extensions/forms/types.d.ts +7 -3
  208. package/cjs/extensions/forms/types.js.map +1 -1
  209. package/cjs/extensions/forms/utils/ajv.d.ts +2 -1
  210. package/cjs/extensions/forms/utils/ajv.js +1 -1
  211. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  212. package/cjs/extensions/forms/utils/index.d.ts +1 -0
  213. package/cjs/extensions/forms/utils/index.js +12 -0
  214. package/cjs/extensions/forms/utils/index.js.map +1 -1
  215. package/cjs/extensions/forms/utils/json-pointer/export.d.ts +1 -0
  216. package/cjs/extensions/forms/utils/json-pointer/export.js +17 -0
  217. package/cjs/extensions/forms/utils/json-pointer/export.js.map +1 -0
  218. package/cjs/extensions/forms/utils/json-pointer/json-pointer.d.ts +43 -0
  219. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js +139 -0
  220. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -0
  221. package/cjs/extensions/forms/utils/json-pointer.d.ts +3 -0
  222. package/cjs/extensions/forms/utils/json-pointer.js +24 -0
  223. package/cjs/extensions/forms/utils/json-pointer.js.map +1 -0
  224. package/cjs/shared/Context.d.ts +2 -0
  225. package/cjs/shared/Context.js +1 -1
  226. package/cjs/shared/Context.js.map +1 -1
  227. package/cjs/shared/Eufemia.d.ts +1 -1
  228. package/cjs/shared/Eufemia.js +2 -2
  229. package/cjs/shared/Eufemia.js.map +1 -1
  230. package/cjs/shared/MediaQueryUtils.d.ts +0 -1
  231. package/cjs/shared/MediaQueryUtils.js +17 -14
  232. package/cjs/shared/MediaQueryUtils.js.map +1 -1
  233. package/cjs/shared/helpers/extendPropsWithContext.js +3 -3
  234. package/cjs/shared/helpers/extendPropsWithContext.js.map +1 -1
  235. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  236. package/cjs/style/core/scopes.scss +1 -1
  237. package/cjs/style/core/utilities.scss +10 -5
  238. package/cjs/style/dnb-ui-basis.css +1 -1
  239. package/cjs/style/dnb-ui-basis.min.css +1 -1
  240. package/cjs/style/dnb-ui-body.css +1 -1
  241. package/cjs/style/dnb-ui-body.min.css +1 -1
  242. package/cjs/style/dnb-ui-components.css +35 -45
  243. package/cjs/style/dnb-ui-components.min.css +5 -5
  244. package/cjs/style/dnb-ui-core.css +1 -1
  245. package/cjs/style/dnb-ui-core.min.css +1 -1
  246. package/cjs/style/dnb-ui-elements.css +1 -1
  247. package/cjs/style/dnb-ui-elements.min.css +1 -1
  248. package/cjs/style/dnb-ui-extensions.css +10 -21
  249. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  250. package/cjs/style/dnb-ui-forms.css +10 -21
  251. package/cjs/style/dnb-ui-forms.min.css +1 -1
  252. package/cjs/style/dnb-ui-forms.scss +0 -1
  253. package/cjs/style/dnb-ui-fragments.css +2 -2
  254. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  255. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  256. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  257. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +46 -67
  258. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  259. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  260. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  261. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +10 -21
  262. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  263. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +10 -21
  264. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  265. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  266. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  267. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +46 -67
  268. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  269. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  270. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  271. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +10 -21
  272. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  273. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +10 -21
  274. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  275. package/cjs/style/themes/theme-ui/ui-theme-basis.css +1 -1
  276. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  277. package/cjs/style/themes/theme-ui/ui-theme-components.css +46 -67
  278. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  279. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
  280. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  281. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +10 -21
  282. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  283. package/cjs/style/themes/theme-ui/ui-theme-forms.css +10 -21
  284. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  285. package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -1
  286. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  287. package/components/accordion/style/dnb-accordion.css +3 -3
  288. package/components/accordion/style/dnb-accordion.min.css +1 -1
  289. package/components/autocomplete/style/dnb-autocomplete.css +1 -1
  290. package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  291. package/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  292. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  293. package/components/button/Button.d.ts +2 -2
  294. package/components/card/style/dnb-card.css +1 -1
  295. package/components/card/style/dnb-card.min.css +1 -1
  296. package/components/date-picker/DatePicker.d.ts +13 -4
  297. package/components/drawer/style/dnb-drawer.css +3 -3
  298. package/components/drawer/style/dnb-drawer.min.css +1 -1
  299. package/components/dropdown/style/dnb-dropdown.css +1 -1
  300. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  301. package/components/form-row/style/dnb-form-row.css +1 -1
  302. package/components/form-row/style/dnb-form-row.min.css +1 -1
  303. package/components/form-status/FormStatus.d.ts +1 -1
  304. package/components/grid/style/dnb-grid.css +6 -6
  305. package/components/grid/style/dnb-grid.min.css +1 -1
  306. package/components/input-masked/InputMasked.d.ts +1 -1
  307. package/components/input-masked/InputMaskedDocs.js +1 -1
  308. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  309. package/components/number-format/NumberFormat.d.ts +14 -28
  310. package/components/number-format/NumberFormat.js +6 -2
  311. package/components/number-format/NumberFormat.js.map +1 -1
  312. package/components/number-format/NumberFormatDocs.d.ts +3 -0
  313. package/components/number-format/NumberFormatDocs.js +153 -0
  314. package/components/number-format/NumberFormatDocs.js.map +1 -0
  315. package/components/number-format/NumberUtils.d.ts +21 -1
  316. package/components/number-format/NumberUtils.js +32 -8
  317. package/components/number-format/NumberUtils.js.map +1 -1
  318. package/components/pagination/Pagination.d.ts +1 -1
  319. package/components/section/style/dnb-section.css +2 -2
  320. package/components/section/style/dnb-section.min.css +2 -2
  321. package/components/space/style/dnb-space.css +2 -2
  322. package/components/space/style/dnb-space.min.css +1 -1
  323. package/components/switch/Switch.d.ts +100 -91
  324. package/components/switch/Switch.js +165 -238
  325. package/components/switch/Switch.js.map +1 -1
  326. package/components/switch/SwitchDocs.d.ts +3 -0
  327. package/components/switch/SwitchDocs.js +85 -0
  328. package/components/switch/SwitchDocs.js.map +1 -0
  329. package/components/tabs/style/dnb-tabs.css +1 -0
  330. package/components/tabs/style/dnb-tabs.min.css +1 -1
  331. package/components/tabs/style/dnb-tabs.scss +1 -0
  332. package/components/toggle-button/style/dnb-toggle-button.css +1 -1
  333. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  334. package/es/components/accordion/style/dnb-accordion.css +3 -3
  335. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  336. package/es/components/autocomplete/style/dnb-autocomplete.css +1 -1
  337. package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  338. package/es/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  339. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  340. package/es/components/button/Button.d.ts +2 -2
  341. package/es/components/card/style/dnb-card.css +1 -1
  342. package/es/components/card/style/dnb-card.min.css +1 -1
  343. package/es/components/date-picker/DatePicker.d.ts +13 -4
  344. package/es/components/drawer/style/dnb-drawer.css +3 -3
  345. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  346. package/es/components/dropdown/style/dnb-dropdown.css +1 -1
  347. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  348. package/es/components/form-row/style/dnb-form-row.css +1 -1
  349. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  350. package/es/components/form-status/FormStatus.d.ts +1 -1
  351. package/es/components/grid/style/dnb-grid.css +6 -6
  352. package/es/components/grid/style/dnb-grid.min.css +1 -1
  353. package/es/components/input-masked/InputMasked.d.ts +1 -1
  354. package/es/components/input-masked/InputMaskedDocs.js +1 -1
  355. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  356. package/es/components/number-format/NumberFormat.d.ts +14 -28
  357. package/es/components/number-format/NumberFormat.js +6 -2
  358. package/es/components/number-format/NumberFormat.js.map +1 -1
  359. package/es/components/number-format/NumberFormatDocs.d.ts +3 -0
  360. package/es/components/number-format/NumberFormatDocs.js +150 -0
  361. package/es/components/number-format/NumberFormatDocs.js.map +1 -0
  362. package/es/components/number-format/NumberUtils.d.ts +21 -1
  363. package/es/components/number-format/NumberUtils.js +31 -7
  364. package/es/components/number-format/NumberUtils.js.map +1 -1
  365. package/es/components/pagination/Pagination.d.ts +1 -1
  366. package/es/components/section/style/dnb-section.css +2 -2
  367. package/es/components/section/style/dnb-section.min.css +2 -2
  368. package/es/components/space/style/dnb-space.css +2 -2
  369. package/es/components/space/style/dnb-space.min.css +1 -1
  370. package/es/components/switch/Switch.d.ts +100 -91
  371. package/es/components/switch/Switch.js +164 -238
  372. package/es/components/switch/Switch.js.map +1 -1
  373. package/es/components/switch/SwitchDocs.d.ts +3 -0
  374. package/es/components/switch/SwitchDocs.js +85 -0
  375. package/es/components/switch/SwitchDocs.js.map +1 -0
  376. package/es/components/tabs/style/dnb-tabs.css +1 -0
  377. package/es/components/tabs/style/dnb-tabs.min.css +1 -1
  378. package/es/components/tabs/style/dnb-tabs.scss +1 -0
  379. package/es/components/toggle-button/style/dnb-toggle-button.css +1 -1
  380. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  381. package/es/extensions/forms/DataContext/At/At.js +1 -1
  382. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  383. package/es/extensions/forms/DataContext/Context.d.ts +20 -9
  384. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  385. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  386. package/es/extensions/forms/DataContext/Provider/Provider.js +100 -58
  387. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  388. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  389. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  390. package/es/extensions/forms/Field/Date/Date.d.ts +6 -0
  391. package/es/extensions/forms/Field/Date/Date.js +20 -4
  392. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  393. package/{cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts → es/extensions/forms/Field/Date/DateDocs.d.ts} +1 -1
  394. package/es/extensions/forms/Field/Date/DateDocs.js +13 -0
  395. package/es/extensions/forms/Field/Date/DateDocs.js.map +1 -0
  396. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +1 -1
  397. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  398. package/{extensions/forms/Form/FieldProps/FieldProps.d.ts → es/extensions/forms/Field/Provider/FieldProvider.d.ts} +5 -7
  399. package/es/extensions/forms/Field/Provider/FieldProvider.js +24 -0
  400. package/es/extensions/forms/Field/Provider/FieldProvider.js.map +1 -0
  401. package/{extensions/forms/Form/FieldProps/FieldPropsContext.d.ts → es/extensions/forms/Field/Provider/FieldProviderContext.d.ts} +3 -3
  402. package/es/extensions/forms/Field/Provider/FieldProviderContext.js +7 -0
  403. package/es/extensions/forms/Field/Provider/FieldProviderContext.js.map +1 -0
  404. package/es/extensions/forms/Field/Provider/FieldProviderDocs.d.ts +2 -0
  405. package/{extensions/forms/Form/FieldProps/FieldPropsDocs.js → es/extensions/forms/Field/Provider/FieldProviderDocs.js} +2 -2
  406. package/es/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -0
  407. package/es/extensions/forms/Field/Provider/index.d.ts +2 -0
  408. package/es/extensions/forms/Field/Provider/index.js +3 -0
  409. package/es/extensions/forms/Field/Provider/index.js.map +1 -0
  410. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +121 -0
  411. package/es/extensions/forms/{Form/FieldProps/FieldProps.js → Field/Provider/useFieldProvider.js} +34 -32
  412. package/es/extensions/forms/Field/Provider/useFieldProvider.js.map +1 -0
  413. package/es/extensions/forms/Field/index.d.ts +1 -0
  414. package/es/extensions/forms/Field/index.js +1 -0
  415. package/es/extensions/forms/Field/index.js.map +1 -1
  416. package/es/extensions/forms/FieldBlock/FieldBlock.js +12 -1
  417. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  418. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  419. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  420. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  421. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  422. package/es/extensions/forms/Form/Element/Element.js +4 -4
  423. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  424. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  425. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  426. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +2 -2
  427. package/es/extensions/forms/Form/Isolation/Isolation.js +1 -1
  428. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  429. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  430. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  431. package/es/extensions/forms/Form/Section/Section.d.ts +2 -1
  432. package/es/extensions/forms/Form/Section/Section.js +1 -1
  433. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  434. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.d.ts +25 -0
  435. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +140 -0
  436. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -0
  437. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.d.ts +2 -0
  438. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js +23 -0
  439. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js.map +1 -0
  440. package/es/extensions/forms/Form/SubmitConfirmation/index.d.ts +2 -0
  441. package/es/extensions/forms/Form/SubmitConfirmation/index.js +3 -0
  442. package/es/extensions/forms/Form/SubmitConfirmation/index.js.map +1 -0
  443. package/es/extensions/forms/Form/Visibility/Visibility.js +3 -3
  444. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  445. package/es/extensions/forms/Form/Visibility/VisibilityContext.d.ts +1 -0
  446. package/es/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  447. package/es/extensions/forms/Form/Visibility/useVisibility.js +1 -1
  448. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  449. package/es/extensions/forms/Form/data-context/getData.js +1 -1
  450. package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
  451. package/es/extensions/forms/Form/data-context/useData.d.ts +3 -2
  452. package/es/extensions/forms/Form/data-context/useData.js +13 -15
  453. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  454. package/{extensions/forms/Form/data-context/useError.d.ts → es/extensions/forms/Form/data-context/useValidation.d.ts} +3 -1
  455. package/es/extensions/forms/Form/data-context/useValidation.js +52 -0
  456. package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -0
  457. package/es/extensions/forms/Form/index.d.ts +13 -2
  458. package/es/extensions/forms/Form/index.js +5 -2
  459. package/es/extensions/forms/Form/index.js.map +1 -1
  460. package/es/extensions/forms/Iterate/Array/Array.js +4 -12
  461. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  462. package/es/extensions/forms/Iterate/Count/Count.js +1 -1
  463. package/es/extensions/forms/Iterate/Count/Count.js.map +1 -1
  464. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -2
  465. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  466. package/es/extensions/forms/Tools/GenerateSchema.d.ts +1 -1
  467. package/es/extensions/forms/Tools/GenerateSchema.js +1 -1
  468. package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  469. package/es/extensions/forms/Tools/ListAllProps.d.ts +1 -1
  470. package/es/extensions/forms/Tools/ListAllProps.js +1 -1
  471. package/es/extensions/forms/Tools/ListAllProps.js.map +1 -1
  472. package/es/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +3 -3
  473. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  474. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +2 -2
  475. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  476. package/es/extensions/forms/Value/Currency/CurrencyDocs.d.ts +2 -0
  477. package/es/extensions/forms/Value/Currency/CurrencyDocs.js +19 -0
  478. package/es/extensions/forms/Value/Currency/CurrencyDocs.js.map +1 -0
  479. package/es/extensions/forms/Value/Date/Date.js +25 -16
  480. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  481. package/es/extensions/forms/Value/Number/NumberDocs.js +7 -2
  482. package/es/extensions/forms/Value/Number/NumberDocs.js.map +1 -1
  483. package/es/extensions/forms/Value/Provider/ValueProvider.d.ts +13 -0
  484. package/es/extensions/forms/Value/Provider/ValueProvider.js +18 -0
  485. package/es/extensions/forms/Value/Provider/ValueProvider.js.map +1 -0
  486. package/es/extensions/forms/Value/Provider/ValueProviderContext.d.ts +9 -0
  487. package/es/extensions/forms/Value/Provider/ValueProviderContext.js +7 -0
  488. package/es/extensions/forms/Value/Provider/ValueProviderContext.js.map +1 -0
  489. package/es/extensions/forms/Value/Provider/ValueProviderDocs.d.ts +3 -0
  490. package/es/extensions/forms/Value/Provider/ValueProviderDocs.js +13 -0
  491. package/es/extensions/forms/Value/Provider/ValueProviderDocs.js.map +1 -0
  492. package/es/extensions/forms/Value/Provider/index.d.ts +2 -0
  493. package/es/extensions/forms/Value/Provider/index.js +3 -0
  494. package/es/extensions/forms/Value/Provider/index.js.map +1 -0
  495. package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +31 -0
  496. package/es/extensions/forms/Value/Provider/useValueProvider.js +40 -0
  497. package/es/extensions/forms/Value/Provider/useValueProvider.js.map +1 -0
  498. package/es/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -1
  499. package/es/extensions/forms/Value/SummaryList/SummaryList.js +11 -3
  500. package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  501. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.d.ts +3 -0
  502. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js +29 -0
  503. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -0
  504. package/es/extensions/forms/Value/index.d.ts +3 -2
  505. package/es/extensions/forms/Value/index.js +3 -2
  506. package/es/extensions/forms/Value/index.js.map +1 -1
  507. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  508. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  509. package/es/extensions/forms/Wizard/Container/WizardContainer.js +2 -1
  510. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  511. package/es/extensions/forms/Wizard/Step/Step.js +2 -2
  512. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  513. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -5
  514. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  515. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -4
  516. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.d.ts +1 -2
  517. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +13 -15
  518. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  519. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js +0 -5
  520. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js.map +1 -1
  521. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +0 -2
  522. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +0 -2
  523. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  524. package/es/extensions/forms/hooks/useDataValue.d.ts +1 -1
  525. package/es/extensions/forms/hooks/useDataValue.js +1 -1
  526. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  527. package/es/extensions/forms/hooks/useExternalValue.js +1 -1
  528. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  529. package/es/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  530. package/es/extensions/forms/hooks/useFieldProps.js +111 -56
  531. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  532. package/es/extensions/forms/hooks/usePath.js +7 -4
  533. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  534. package/es/extensions/forms/hooks/useValueProps.d.ts +1 -1
  535. package/es/extensions/forms/hooks/useValueProps.js +7 -2
  536. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  537. package/es/extensions/forms/style/dnb-forms.css +10 -21
  538. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  539. package/es/extensions/forms/types.d.ts +7 -3
  540. package/es/extensions/forms/types.js.map +1 -1
  541. package/es/extensions/forms/utils/ajv.d.ts +2 -1
  542. package/es/extensions/forms/utils/ajv.js +1 -1
  543. package/es/extensions/forms/utils/ajv.js.map +1 -1
  544. package/es/extensions/forms/utils/index.d.ts +1 -0
  545. package/es/extensions/forms/utils/index.js +1 -0
  546. package/es/extensions/forms/utils/index.js.map +1 -1
  547. package/es/extensions/forms/utils/json-pointer/export.d.ts +1 -0
  548. package/es/extensions/forms/utils/json-pointer/export.js +1 -0
  549. package/es/extensions/forms/utils/json-pointer/export.js.map +1 -0
  550. package/es/extensions/forms/utils/json-pointer/json-pointer.d.ts +43 -0
  551. package/es/extensions/forms/utils/json-pointer/json-pointer.js +122 -0
  552. package/es/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -0
  553. package/es/extensions/forms/utils/json-pointer.d.ts +3 -0
  554. package/es/extensions/forms/utils/json-pointer.js +4 -0
  555. package/es/extensions/forms/utils/json-pointer.js.map +1 -0
  556. package/es/shared/Context.d.ts +2 -0
  557. package/es/shared/Context.js +1 -1
  558. package/es/shared/Context.js.map +1 -1
  559. package/es/shared/Eufemia.d.ts +1 -1
  560. package/es/shared/Eufemia.js +2 -2
  561. package/es/shared/Eufemia.js.map +1 -1
  562. package/es/shared/MediaQueryUtils.d.ts +0 -1
  563. package/es/shared/MediaQueryUtils.js +17 -14
  564. package/es/shared/MediaQueryUtils.js.map +1 -1
  565. package/es/shared/helpers/extendPropsWithContext.js +3 -3
  566. package/es/shared/helpers/extendPropsWithContext.js.map +1 -1
  567. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  568. package/es/style/core/scopes.scss +1 -1
  569. package/es/style/core/utilities.scss +10 -5
  570. package/es/style/dnb-ui-basis.css +1 -1
  571. package/es/style/dnb-ui-basis.min.css +1 -1
  572. package/es/style/dnb-ui-body.css +1 -1
  573. package/es/style/dnb-ui-body.min.css +1 -1
  574. package/es/style/dnb-ui-components.css +35 -45
  575. package/es/style/dnb-ui-components.min.css +5 -5
  576. package/es/style/dnb-ui-core.css +1 -1
  577. package/es/style/dnb-ui-core.min.css +1 -1
  578. package/es/style/dnb-ui-elements.css +1 -1
  579. package/es/style/dnb-ui-elements.min.css +1 -1
  580. package/es/style/dnb-ui-extensions.css +10 -21
  581. package/es/style/dnb-ui-extensions.min.css +1 -1
  582. package/es/style/dnb-ui-forms.css +10 -21
  583. package/es/style/dnb-ui-forms.min.css +1 -1
  584. package/es/style/dnb-ui-forms.scss +0 -1
  585. package/es/style/dnb-ui-fragments.css +2 -2
  586. package/es/style/dnb-ui-fragments.min.css +1 -1
  587. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  588. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  589. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +46 -67
  590. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  591. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  592. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  593. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +10 -21
  594. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  595. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +10 -21
  596. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  597. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  598. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  599. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +46 -67
  600. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  601. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  602. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  603. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +10 -21
  604. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  605. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +10 -21
  606. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  607. package/es/style/themes/theme-ui/ui-theme-basis.css +1 -1
  608. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  609. package/es/style/themes/theme-ui/ui-theme-components.css +46 -67
  610. package/es/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  611. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
  612. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  613. package/es/style/themes/theme-ui/ui-theme-extensions.css +10 -21
  614. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  615. package/es/style/themes/theme-ui/ui-theme-forms.css +10 -21
  616. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  617. package/es/style/themes/theme-ui/ui-theme-tags.css +1 -1
  618. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  619. package/esm/dnb-ui-basis.min.mjs +1 -1
  620. package/esm/dnb-ui-components.min.mjs +1 -1
  621. package/esm/dnb-ui-elements.min.mjs +1 -1
  622. package/esm/dnb-ui-extensions.min.mjs +5 -5
  623. package/esm/dnb-ui-lib.min.mjs +1 -1
  624. package/extensions/forms/DataContext/At/At.js +1 -1
  625. package/extensions/forms/DataContext/At/At.js.map +1 -1
  626. package/extensions/forms/DataContext/Context.d.ts +20 -9
  627. package/extensions/forms/DataContext/Context.js.map +1 -1
  628. package/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  629. package/extensions/forms/DataContext/Provider/Provider.js +104 -59
  630. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  631. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  632. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  633. package/extensions/forms/Field/Date/Date.d.ts +6 -0
  634. package/extensions/forms/Field/Date/Date.js +20 -4
  635. package/extensions/forms/Field/Date/Date.js.map +1 -1
  636. package/{es/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts → extensions/forms/Field/Date/DateDocs.d.ts} +1 -1
  637. package/extensions/forms/Field/Date/DateDocs.js +13 -0
  638. package/extensions/forms/Field/Date/DateDocs.js.map +1 -0
  639. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +1 -1
  640. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  641. package/{cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts → extensions/forms/Field/Provider/FieldProvider.d.ts} +5 -7
  642. package/extensions/forms/Field/Provider/FieldProvider.js +24 -0
  643. package/extensions/forms/Field/Provider/FieldProvider.js.map +1 -0
  644. package/{es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts → extensions/forms/Field/Provider/FieldProviderContext.d.ts} +3 -3
  645. package/extensions/forms/Field/Provider/FieldProviderContext.js +7 -0
  646. package/extensions/forms/Field/Provider/FieldProviderContext.js.map +1 -0
  647. package/extensions/forms/Field/Provider/FieldProviderDocs.d.ts +2 -0
  648. package/{es/extensions/forms/Form/FieldProps/FieldPropsDocs.js → extensions/forms/Field/Provider/FieldProviderDocs.js} +2 -2
  649. package/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -0
  650. package/extensions/forms/Field/Provider/index.d.ts +2 -0
  651. package/extensions/forms/Field/Provider/index.js +3 -0
  652. package/extensions/forms/Field/Provider/index.js.map +1 -0
  653. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +121 -0
  654. package/extensions/forms/{Form/FieldProps/FieldProps.js → Field/Provider/useFieldProvider.js} +34 -32
  655. package/extensions/forms/Field/Provider/useFieldProvider.js.map +1 -0
  656. package/extensions/forms/Field/index.d.ts +1 -0
  657. package/extensions/forms/Field/index.js +1 -0
  658. package/extensions/forms/Field/index.js.map +1 -1
  659. package/extensions/forms/FieldBlock/FieldBlock.js +12 -1
  660. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  661. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  662. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  663. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  664. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  665. package/extensions/forms/Form/Element/Element.js +4 -4
  666. package/extensions/forms/Form/Element/Element.js.map +1 -1
  667. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  668. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  669. package/extensions/forms/Form/Isolation/Isolation.d.ts +2 -2
  670. package/extensions/forms/Form/Isolation/Isolation.js +1 -1
  671. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  672. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  673. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  674. package/extensions/forms/Form/Section/Section.d.ts +2 -1
  675. package/extensions/forms/Form/Section/Section.js +1 -1
  676. package/extensions/forms/Form/Section/Section.js.map +1 -1
  677. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.d.ts +25 -0
  678. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +142 -0
  679. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -0
  680. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.d.ts +2 -0
  681. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js +23 -0
  682. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js.map +1 -0
  683. package/extensions/forms/Form/SubmitConfirmation/index.d.ts +2 -0
  684. package/extensions/forms/Form/SubmitConfirmation/index.js +3 -0
  685. package/extensions/forms/Form/SubmitConfirmation/index.js.map +1 -0
  686. package/extensions/forms/Form/Visibility/Visibility.js +3 -3
  687. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  688. package/extensions/forms/Form/Visibility/VisibilityContext.d.ts +1 -0
  689. package/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  690. package/extensions/forms/Form/Visibility/useVisibility.js +1 -1
  691. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  692. package/extensions/forms/Form/data-context/getData.js +1 -1
  693. package/extensions/forms/Form/data-context/getData.js.map +1 -1
  694. package/extensions/forms/Form/data-context/useData.d.ts +3 -2
  695. package/extensions/forms/Form/data-context/useData.js +13 -15
  696. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  697. package/{cjs/extensions/forms/Form/data-context/useError.d.ts → extensions/forms/Form/data-context/useValidation.d.ts} +3 -1
  698. package/extensions/forms/Form/data-context/useValidation.js +54 -0
  699. package/extensions/forms/Form/data-context/useValidation.js.map +1 -0
  700. package/extensions/forms/Form/index.d.ts +13 -2
  701. package/extensions/forms/Form/index.js +5 -2
  702. package/extensions/forms/Form/index.js.map +1 -1
  703. package/extensions/forms/Iterate/Array/Array.js +4 -12
  704. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  705. package/extensions/forms/Iterate/Count/Count.js +1 -1
  706. package/extensions/forms/Iterate/Count/Count.js.map +1 -1
  707. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -2
  708. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  709. package/extensions/forms/Tools/GenerateSchema.d.ts +1 -1
  710. package/extensions/forms/Tools/GenerateSchema.js +1 -1
  711. package/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  712. package/extensions/forms/Tools/ListAllProps.d.ts +1 -1
  713. package/extensions/forms/Tools/ListAllProps.js +1 -1
  714. package/extensions/forms/Tools/ListAllProps.js.map +1 -1
  715. package/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +3 -3
  716. package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  717. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +2 -2
  718. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  719. package/extensions/forms/Value/Currency/CurrencyDocs.d.ts +2 -0
  720. package/extensions/forms/Value/Currency/CurrencyDocs.js +19 -0
  721. package/extensions/forms/Value/Currency/CurrencyDocs.js.map +1 -0
  722. package/extensions/forms/Value/Date/Date.js +25 -16
  723. package/extensions/forms/Value/Date/Date.js.map +1 -1
  724. package/extensions/forms/Value/Number/NumberDocs.js +7 -2
  725. package/extensions/forms/Value/Number/NumberDocs.js.map +1 -1
  726. package/extensions/forms/Value/Provider/ValueProvider.d.ts +13 -0
  727. package/extensions/forms/Value/Provider/ValueProvider.js +18 -0
  728. package/extensions/forms/Value/Provider/ValueProvider.js.map +1 -0
  729. package/extensions/forms/Value/Provider/ValueProviderContext.d.ts +9 -0
  730. package/extensions/forms/Value/Provider/ValueProviderContext.js +7 -0
  731. package/extensions/forms/Value/Provider/ValueProviderContext.js.map +1 -0
  732. package/extensions/forms/Value/Provider/ValueProviderDocs.d.ts +3 -0
  733. package/extensions/forms/Value/Provider/ValueProviderDocs.js +13 -0
  734. package/extensions/forms/Value/Provider/ValueProviderDocs.js.map +1 -0
  735. package/extensions/forms/Value/Provider/index.d.ts +2 -0
  736. package/extensions/forms/Value/Provider/index.js +3 -0
  737. package/extensions/forms/Value/Provider/index.js.map +1 -0
  738. package/extensions/forms/Value/Provider/useValueProvider.d.ts +31 -0
  739. package/extensions/forms/Value/Provider/useValueProvider.js +40 -0
  740. package/extensions/forms/Value/Provider/useValueProvider.js.map +1 -0
  741. package/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -1
  742. package/extensions/forms/Value/SummaryList/SummaryList.js +11 -3
  743. package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  744. package/extensions/forms/Value/SummaryList/SummaryListDocs.d.ts +3 -0
  745. package/extensions/forms/Value/SummaryList/SummaryListDocs.js +29 -0
  746. package/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -0
  747. package/extensions/forms/Value/index.d.ts +3 -2
  748. package/extensions/forms/Value/index.js +3 -2
  749. package/extensions/forms/Value/index.js.map +1 -1
  750. package/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  751. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  752. package/extensions/forms/Wizard/Container/WizardContainer.js +2 -1
  753. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  754. package/extensions/forms/Wizard/Step/Step.js +2 -2
  755. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  756. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -5
  757. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  758. package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -4
  759. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.d.ts +1 -2
  760. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +13 -15
  761. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  762. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js +0 -5
  763. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js.map +1 -1
  764. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +0 -2
  765. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +0 -2
  766. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  767. package/extensions/forms/hooks/useDataValue.d.ts +1 -1
  768. package/extensions/forms/hooks/useDataValue.js +1 -1
  769. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  770. package/extensions/forms/hooks/useExternalValue.js +1 -1
  771. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  772. package/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  773. package/extensions/forms/hooks/useFieldProps.js +111 -56
  774. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  775. package/extensions/forms/hooks/usePath.js +7 -4
  776. package/extensions/forms/hooks/usePath.js.map +1 -1
  777. package/extensions/forms/hooks/useValueProps.d.ts +1 -1
  778. package/extensions/forms/hooks/useValueProps.js +7 -2
  779. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  780. package/extensions/forms/style/dnb-forms.css +10 -21
  781. package/extensions/forms/style/dnb-forms.min.css +1 -1
  782. package/extensions/forms/types.d.ts +7 -3
  783. package/extensions/forms/types.js.map +1 -1
  784. package/extensions/forms/utils/ajv.d.ts +2 -1
  785. package/extensions/forms/utils/ajv.js +1 -1
  786. package/extensions/forms/utils/ajv.js.map +1 -1
  787. package/extensions/forms/utils/index.d.ts +1 -0
  788. package/extensions/forms/utils/index.js +1 -0
  789. package/extensions/forms/utils/index.js.map +1 -1
  790. package/extensions/forms/utils/json-pointer/export.d.ts +1 -0
  791. package/extensions/forms/utils/json-pointer/export.js +1 -0
  792. package/extensions/forms/utils/json-pointer/export.js.map +1 -0
  793. package/extensions/forms/utils/json-pointer/json-pointer.d.ts +43 -0
  794. package/extensions/forms/utils/json-pointer/json-pointer.js +124 -0
  795. package/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -0
  796. package/extensions/forms/utils/json-pointer.d.ts +3 -0
  797. package/extensions/forms/utils/json-pointer.js +4 -0
  798. package/extensions/forms/utils/json-pointer.js.map +1 -0
  799. package/package.json +1 -2
  800. package/shared/Context.d.ts +2 -0
  801. package/shared/Context.js +1 -1
  802. package/shared/Context.js.map +1 -1
  803. package/shared/Eufemia.d.ts +1 -1
  804. package/shared/Eufemia.js +2 -2
  805. package/shared/Eufemia.js.map +1 -1
  806. package/shared/MediaQueryUtils.d.ts +0 -1
  807. package/shared/MediaQueryUtils.js +17 -14
  808. package/shared/MediaQueryUtils.js.map +1 -1
  809. package/shared/helpers/extendPropsWithContext.js +3 -3
  810. package/shared/helpers/extendPropsWithContext.js.map +1 -1
  811. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  812. package/style/core/scopes.scss +1 -1
  813. package/style/core/utilities.scss +10 -5
  814. package/style/dnb-ui-basis.css +1 -1
  815. package/style/dnb-ui-basis.min.css +1 -1
  816. package/style/dnb-ui-body.css +1 -1
  817. package/style/dnb-ui-body.min.css +1 -1
  818. package/style/dnb-ui-components.css +35 -45
  819. package/style/dnb-ui-components.min.css +5 -5
  820. package/style/dnb-ui-core.css +1 -1
  821. package/style/dnb-ui-core.min.css +1 -1
  822. package/style/dnb-ui-elements.css +1 -1
  823. package/style/dnb-ui-elements.min.css +1 -1
  824. package/style/dnb-ui-extensions.css +10 -21
  825. package/style/dnb-ui-extensions.min.css +1 -1
  826. package/style/dnb-ui-forms.css +10 -21
  827. package/style/dnb-ui-forms.min.css +1 -1
  828. package/style/dnb-ui-forms.scss +0 -1
  829. package/style/dnb-ui-fragments.css +2 -2
  830. package/style/dnb-ui-fragments.min.css +1 -1
  831. package/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  832. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  833. package/style/themes/theme-eiendom/eiendom-theme-components.css +46 -67
  834. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  835. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  836. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  837. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +10 -21
  838. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  839. package/style/themes/theme-eiendom/eiendom-theme-forms.css +10 -21
  840. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  841. package/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  842. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  843. package/style/themes/theme-sbanken/sbanken-theme-components.css +46 -67
  844. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  845. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  846. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  847. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +10 -21
  848. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  849. package/style/themes/theme-sbanken/sbanken-theme-forms.css +10 -21
  850. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  851. package/style/themes/theme-ui/ui-theme-basis.css +1 -1
  852. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  853. package/style/themes/theme-ui/ui-theme-components.css +46 -67
  854. package/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  855. package/style/themes/theme-ui/ui-theme-elements.css +1 -1
  856. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  857. package/style/themes/theme-ui/ui-theme-extensions.css +10 -21
  858. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  859. package/style/themes/theme-ui/ui-theme-forms.css +10 -21
  860. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  861. package/style/themes/theme-ui/ui-theme-tags.css +1 -1
  862. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  863. package/umd/dnb-ui-basis.min.js +1 -1
  864. package/umd/dnb-ui-components.min.js +1 -1
  865. package/umd/dnb-ui-elements.min.js +1 -1
  866. package/umd/dnb-ui-extensions.min.js +5 -5
  867. package/umd/dnb-ui-lib.min.js +1 -1
  868. package/cjs/extensions/forms/Form/Element/style/dnb-form-element.css +0 -7
  869. package/cjs/extensions/forms/Form/Element/style/dnb-form-element.min.css +0 -1
  870. package/cjs/extensions/forms/Form/Element/style/dnb-form-element.scss +0 -9
  871. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +0 -1
  872. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +0 -1
  873. package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +0 -1
  874. package/cjs/extensions/forms/Form/FieldProps/index.d.ts +0 -2
  875. package/cjs/extensions/forms/Form/FieldProps/index.js.map +0 -1
  876. package/cjs/extensions/forms/Form/data-context/useError.js +0 -33
  877. package/cjs/extensions/forms/Form/data-context/useError.js.map +0 -1
  878. package/es/extensions/forms/Form/Element/style/dnb-form-element.css +0 -7
  879. package/es/extensions/forms/Form/Element/style/dnb-form-element.min.css +0 -1
  880. package/es/extensions/forms/Form/Element/style/dnb-form-element.scss +0 -9
  881. package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +0 -1
  882. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js +0 -7
  883. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +0 -1
  884. package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +0 -1
  885. package/es/extensions/forms/Form/FieldProps/index.d.ts +0 -2
  886. package/es/extensions/forms/Form/FieldProps/index.js +0 -3
  887. package/es/extensions/forms/Form/FieldProps/index.js.map +0 -1
  888. package/es/extensions/forms/Form/data-context/useError.js +0 -26
  889. package/es/extensions/forms/Form/data-context/useError.js.map +0 -1
  890. package/extensions/forms/Form/Element/style/dnb-form-element.css +0 -7
  891. package/extensions/forms/Form/Element/style/dnb-form-element.min.css +0 -1
  892. package/extensions/forms/Form/Element/style/dnb-form-element.scss +0 -9
  893. package/extensions/forms/Form/FieldProps/FieldProps.js.map +0 -1
  894. package/extensions/forms/Form/FieldProps/FieldPropsContext.js +0 -7
  895. package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +0 -1
  896. package/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +0 -1
  897. package/extensions/forms/Form/FieldProps/index.d.ts +0 -2
  898. package/extensions/forms/Form/FieldProps/index.js +0 -3
  899. package/extensions/forms/Form/FieldProps/index.js.map +0 -1
  900. package/extensions/forms/Form/data-context/useError.js +0 -27
  901. package/extensions/forms/Form/data-context/useError.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FieldBlock.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_FieldBlockContext","_Context","_IterateItemContext","_components","_elements","_componentHelper","_useId","_types","_SubmitIndicator","_useSharedState","_useTranslation","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","states","exports","FieldBlock","props","dataContext","useContext","DataContext","nestedFieldBlockContext","FieldBlockContext","sharedData","createSharedState","forId","id","_Object$assign","data","className","layout","composition","label","labelProp","labelDescription","labelSuffix","labelSrOnly","asFieldset","required","info","warning","error","errorProp","fieldState","disabled","width","contentWidth","align","labelSize","contentClassName","children","rest","iterateItemContext","IterateElementContext","index","iterateIndex","blockId","useId","wasUpdated","forceUpdate","useReducer","mountedFieldsRef","useRef","stateRecordRef","fieldStateIdsRef","contentsRef","hasInitiallyErrorProp","useMemo","Boolean","optionalLabelSuffix","useTranslation","Field","labelSuffixText","content","convertJsxToString","replace","includes","React","isValidElement","createElement","Fragment","setInternalRecord","useCallback","stateId","identifier","type","current","existingIndex","findIndex","item","setFieldState","showFieldError","show","map","showInitially","statusContent","statesWithMessages","entries","flatMap","_ref","reduce","acc","cur","existing","find","message","getMessage","messages","state","width_element","no_animation","process","env","NODE_ENV","globalThis","IS_TEST","found","msg","_ref2","arr","text","CombineMessages","useEffect","mainClasses","classnames","gridClasses","enableFieldset","useEnableFieldset","labelProps","element","srOnly","space","top","bottom","size","prerenderFieldProps","warn","Provider","hasErrorProp","Space","LabelDescription","FormLabel","FormStatus","ref","_ref3","result","count","findElementInChildren","child","_child$props","_child$type","_ref4","translations","errorSummary","stateSummary","Ul","_ref5","Li","_ref6","Error","FormError","toString","_supportsSpacingProps","_default"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlock.tsx"],"sourcesContent":["import React, {\n useMemo,\n useContext,\n useCallback,\n useRef,\n useReducer,\n useEffect,\n} from 'react'\nimport classnames from 'classnames'\n\nimport FieldBlockContext, {\n StateWithMessage,\n StatesWithMessages,\n FieldErrorIdsRef,\n MountedFieldsRef,\n StateRecord,\n StateMessage,\n StateTypes,\n StatusContent,\n FieldBlockContextProps,\n StateBasis,\n} from './FieldBlockContext'\nimport DataContext from '../DataContext/Context'\nimport IterateElementContext from '../Iterate/IterateItemContext'\nimport { Space, FormLabel, FormStatus } from '../../../components'\nimport { Ul, Li } from '../../../elements'\nimport {\n convertJsxToString,\n findElementInChildren,\n warn,\n} from '../../../shared/component-helper'\nimport useId from '../../../shared/helpers/useId'\nimport {\n ComponentProps,\n FieldProps,\n FormError,\n SubmitState,\n Identifier,\n FieldBlockWidth,\n} from '../types'\nimport type { FormLabelAllProps } from '../../../components/FormLabel'\nimport SubmitIndicator from '../Form/SubmitIndicator/SubmitIndicator'\nimport { createSharedState } from '../../../shared/helpers/useSharedState'\nimport useTranslation from '../hooks/useTranslation'\n\nexport const states: Array<StateTypes> = ['error', 'info', 'warning']\n\nexport type Props = Pick<\n FieldProps,\n | keyof ComponentProps\n | 'layout'\n | 'label'\n | 'labelSuffix'\n | 'labelDescription'\n | 'info'\n | 'warning'\n | 'error'\n | 'disabled'\n> & {\n /** The id to link a element with */\n forId?: string\n /** Use true if you have more than one form element */\n asFieldset?: boolean\n /** use `true` to make the label only readable by screen readers. */\n labelSrOnly?: boolean\n /** Defines the layout of nested fields */\n composition?: FieldBlockContextProps['composition']\n /** Width of outer block element */\n width?: FieldBlockWidth\n /** Width of contents block, while label etc can be wider if space is available */\n contentWidth?: FieldBlockWidth\n /** For composition only: Align the contents vertically */\n align?: 'center' | 'bottom'\n /** Class name for the contents block */\n contentClassName?: string\n /** To show the SubmitIndicator during async validation */\n fieldState?: SubmitState\n /** Typography size */\n labelSize?: 'medium' | 'large'\n /** For internal use only */\n required?: boolean\n children?: React.ReactNode\n} & React.HTMLAttributes<HTMLDivElement>\n\nfunction FieldBlock(props: Props) {\n const dataContext = useContext(DataContext)\n const nestedFieldBlockContext = useContext(FieldBlockContext)\n\n const sharedData = createSharedState<Props>(\n 'field-block-props-' + (props.forId || props.id)\n )\n const {\n className,\n forId,\n layout = 'vertical',\n composition,\n label: labelProp,\n labelDescription,\n labelSuffix,\n labelSrOnly,\n asFieldset,\n required,\n info,\n warning,\n error: errorProp,\n fieldState,\n disabled,\n width,\n contentWidth,\n align,\n labelSize,\n contentClassName,\n children,\n ...rest\n } = Object.assign({}, sharedData.data, props)\n\n const iterateItemContext = useContext(IterateElementContext)\n const { index: iterateIndex } = iterateItemContext ?? {}\n\n const blockId = useId(props.id)\n const [wasUpdated, forceUpdate] = useReducer(() => ({}), {})\n const mountedFieldsRef = useRef<MountedFieldsRef>({})\n const stateRecordRef = useRef<StateRecord>({})\n const fieldStateIdsRef = useRef<FieldErrorIdsRef>(null)\n const contentsRef = useRef<HTMLDivElement>(null)\n const hasInitiallyErrorProp = useMemo(() => {\n return Boolean(errorProp)\n }, []) // eslint-disable-line react-hooks/exhaustive-deps\n\n const { optionalLabelSuffix } = useTranslation().Field\n const labelSuffixText = useMemo(() => {\n if (required === false || typeof labelSuffix !== 'undefined') {\n return labelSuffix ?? optionalLabelSuffix\n }\n return ''\n }, [required, labelSuffix, optionalLabelSuffix])\n\n const label = useMemo(() => {\n let content = labelProp\n\n if (iterateIndex !== undefined) {\n content = convertJsxToString(labelProp).replace(\n '{itemNo}',\n String(iterateIndex + 1)\n )\n }\n\n if (labelSuffixText) {\n if (convertJsxToString(content).includes(optionalLabelSuffix)) {\n return content\n }\n\n if (typeof content === 'string') {\n return content + ' ' + labelSuffixText\n }\n\n if (React.isValidElement(content)) {\n return (\n <>\n {content}\n {' '}\n {labelSuffixText}\n </>\n )\n }\n }\n\n return content\n }, [iterateIndex, labelProp, labelSuffixText])\n\n const setInternalRecord = useCallback((props: StateBasis) => {\n const { stateId, identifier, type } = props\n\n if (!stateRecordRef.current[identifier]) {\n stateRecordRef.current[identifier] = []\n }\n\n fieldStateIdsRef.current = { error: null, warning: null, info: null }\n\n const existingIndex = stateRecordRef.current[identifier].findIndex(\n (item) => {\n return item.stateId === stateId && item.type === type\n }\n )\n\n if (existingIndex > -1) {\n stateRecordRef.current[identifier][existingIndex] = {\n ...stateRecordRef.current[identifier][existingIndex],\n ...props,\n }\n } else {\n stateRecordRef.current[identifier].push(props)\n }\n }, [])\n\n const setFieldState = useCallback(\n (props: StateBasis) => {\n if (nestedFieldBlockContext) {\n // If this FieldBlock is inside another one, forward the call to the outer one\n nestedFieldBlockContext.setFieldState(props)\n return\n }\n\n setInternalRecord(props)\n\n forceUpdate()\n },\n [nestedFieldBlockContext, setInternalRecord]\n )\n\n const showFieldError = useCallback(\n (identifier: Identifier, show: boolean) => {\n if (nestedFieldBlockContext) {\n // If this FieldBlock is inside another one, forward the call to the outer one\n nestedFieldBlockContext.showFieldError(identifier, show)\n return\n }\n\n if (stateRecordRef.current[identifier]) {\n stateRecordRef.current[identifier] = stateRecordRef.current[\n identifier\n ].map((item) => {\n if (item.showInitially) {\n return item\n }\n\n return {\n ...item,\n show,\n }\n })\n\n forceUpdate()\n }\n },\n [nestedFieldBlockContext]\n )\n\n const statusContent = useMemo(() => {\n if (typeof errorProp !== 'undefined') {\n setInternalRecord({\n identifier: blockId,\n showInitially: hasInitiallyErrorProp,\n type: 'error',\n content: errorProp,\n })\n }\n\n if (typeof warning !== 'undefined') {\n setInternalRecord({\n identifier: blockId,\n showInitially: true,\n type: 'warning',\n content: warning,\n })\n }\n\n if (typeof info !== 'undefined') {\n setInternalRecord({\n identifier: blockId,\n showInitially: true,\n type: 'info',\n content: info,\n })\n }\n\n const statesWithMessages: Array<StatesWithMessages> =\n // 1. Prepare the states for later use\n Object.entries(stateRecordRef.current)\n .flatMap(([identifier, states]) =>\n states.map((props) => {\n return {\n identifier,\n ...props,\n }\n })\n )\n\n // 2. Take states and group the same type together\n .reduce((acc, cur) => {\n const existing = acc.find((item) => {\n return item.type === cur.type\n })\n\n const message = getMessage(cur)\n\n if (existing) {\n existing.messages.push({\n ...cur,\n message,\n })\n } else {\n acc.push({\n ...cur,\n content: undefined,\n messages: [\n {\n ...cur,\n message,\n },\n ],\n })\n }\n\n return acc\n }, [] as Array<StatesWithMessages>)\n\n // 3. Return the grouped states/messages\n return states.reduce((acc, type) => {\n const id = `${props.id || forId || blockId}-form-status--${type}`\n acc[type] = {\n id,\n label,\n state: type === 'warning' ? 'warn' : type,\n width_element: contentsRef,\n\n // Enable animation only in the browser and not in tests\n no_animation:\n process.env.NODE_ENV === 'test'\n ? true\n : typeof globalThis !== 'undefined'\n ? globalThis.IS_TEST === true\n : false,\n }\n\n const found = statesWithMessages.find((item) => {\n return item.type === type\n })\n\n if (found?.messages) {\n // Hide/remove messages that should be hidden and are not marked as to be shown initially\n const messages = found.messages\n .map((msg) => {\n if (msg.type === 'error') {\n if (!msg.showInitially && !msg.show) {\n msg.message = null\n }\n }\n\n return msg\n })\n .filter(({ message }) => message)\n .reduce((acc, msg, i, arr) => {\n const existingIndex = arr.findIndex((item) => {\n return (\n convertJsxToString(item.message) ===\n convertJsxToString(msg.message)\n )\n })\n\n // Remove duplicates, use the first found message\n if (existingIndex === i) {\n acc.push(msg)\n }\n\n return acc\n }, [])\n\n // Combine the messages and put them in an ul/li list\n if (messages.length > 0) {\n acc[type] = {\n ...acc[type],\n text: <CombineMessages type={type} messages={messages} />,\n }\n\n fieldStateIdsRef.current[type] = id\n } else {\n fieldStateIdsRef.current[type] = undefined\n }\n }\n\n return acc\n }, {}) as StatusContent\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n info,\n warning,\n errorProp,\n nestedFieldBlockContext,\n setInternalRecord,\n blockId,\n wasUpdated, // wasUpdated is needed to get the current errors\n ])\n\n // Handle the error prop from outside\n useEffect(() => {\n if (!nestedFieldBlockContext) {\n showFieldError(blockId, Boolean(errorProp))\n }\n }, [errorProp, blockId, showFieldError, nestedFieldBlockContext])\n\n useEffect(\n () => () => {\n mountedFieldsRef.current = {}\n stateRecordRef.current = {}\n },\n []\n )\n\n const mainClasses = classnames(\n 'dnb-forms-field-block',\n width !== undefined && `dnb-forms-field-block--width-${width}`,\n className\n )\n const gridClasses = classnames(\n 'dnb-forms-field-block__grid',\n `dnb-forms-field-block--layout-${layout}`\n )\n\n // A child component with a label was found, use fieldset/legend instead of div/label\n const enableFieldset = useEnableFieldset({\n label,\n asFieldset,\n children,\n nestedFieldBlockContext,\n })\n\n const labelProps: FormLabelAllProps = {\n element: enableFieldset ? 'legend' : 'label',\n forId: enableFieldset ? undefined : forId,\n srOnly: labelSrOnly,\n space: { top: 0, bottom: 'x-small' },\n size: labelSize,\n disabled,\n }\n\n if (dataContext?.prerenderFieldProps) {\n return null\n }\n\n if (fieldState && typeof label === 'undefined') {\n warn(\n 'Provide a label when using an async validator or onChange event.'\n )\n }\n\n return (\n <FieldBlockContext.Provider\n value={{\n setFieldState,\n showFieldError,\n hasErrorProp: Boolean(errorProp),\n fieldStateIdsRef,\n mountedFieldsRef,\n composition,\n }}\n >\n <Space\n element={enableFieldset ? 'fieldset' : 'div'} // use fieldset and legend to enhance a11y\n className={mainClasses}\n {...rest}\n >\n <div className={gridClasses}>\n <LabelDescription labelDescription={labelDescription}>\n {(label || labelDescription) && (\n <FormLabel {...labelProps}>\n <SubmitIndicator state={fieldState}>\n {label}\n {labelDescription && (\n <span className=\"dnb-forms-field-block__label-description\">\n {labelDescription}\n </span>\n )}\n </SubmitIndicator>\n </FormLabel>\n )}\n </LabelDescription>\n\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus {...statusContent?.error} />\n <FormStatus {...statusContent?.warning} />\n <FormStatus {...statusContent?.info} />\n </div>\n\n <div\n className={classnames(\n 'dnb-forms-field-block__contents',\n contentWidth &&\n `dnb-forms-field-block__contents--width-${contentWidth}`,\n align && `dnb-forms-field-block__contents--align-${align}`,\n composition &&\n `dnb-forms-field-block__contents__composition--${\n composition === true ? 'horizontal' : composition\n }`,\n contentClassName\n )}\n ref={contentsRef}\n >\n {children}\n </div>\n </div>\n </Space>\n </FieldBlockContext.Provider>\n )\n}\n\nfunction useEnableFieldset({\n label,\n asFieldset,\n children,\n nestedFieldBlockContext,\n}) {\n return useMemo(() => {\n if (asFieldset === false) {\n return false\n }\n\n let result = asFieldset\n\n if (label && !result && !nestedFieldBlockContext) {\n let count = 0\n\n findElementInChildren(children, (child: React.ReactElement) => {\n if (\n child?.props?.label ||\n child?.type?.['_formElement'] === true\n ) {\n count++\n }\n if (count > 1) {\n return (result = true)\n }\n })\n }\n\n return Boolean(result)\n }, [asFieldset, children, label, nestedFieldBlockContext])\n}\n\nfunction CombineMessages({\n type,\n messages,\n}: {\n type: StateTypes\n messages: Array<StateWithMessage>\n}) {\n const translations = useTranslation().Field\n\n if (messages.length === 1) {\n return <>{messages[0].message}</>\n }\n\n return (\n <>\n {type === 'error'\n ? translations.errorSummary\n : translations.stateSummary}\n <Ul>\n {messages.map(({ message }, i) => {\n return <Li key={i}>{message}</Li>\n })}\n </Ul>\n </>\n )\n}\n\nfunction LabelDescription({ labelDescription, children }) {\n if (!labelDescription) {\n return children ?? null\n }\n return <div className=\"dnb-forms-field-block__label\">{children}</div>\n}\n\nexport function getMessage(item: Partial<StateWithMessage>): StateMessage {\n const { content } = item\n\n return ((content instanceof Error && content.message) ||\n (content instanceof FormError && content.message) ||\n content?.toString() ||\n content) as StateMessage\n}\n\nFieldBlock._supportsSpacingProps = true\n\nexport default FieldBlock\n"],"mappings":"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"}
1
+ {"version":3,"file":"FieldBlock.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_FieldBlockContext","_Context","_IterateItemContext","_components","_elements","_componentHelper","_useId","_types","_SubmitIndicator","_useSharedState","_useTranslation","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","states","exports","FieldBlock","props","dataContext","useContext","DataContext","nestedFieldBlockContext","FieldBlockContext","sharedData","createSharedState","forId","id","_Object$assign","data","className","layout","composition","label","labelProp","labelDescription","labelSuffix","labelSrOnly","asFieldset","required","info","warning","error","errorProp","fieldState","disabled","width","contentWidth","align","labelSize","contentClassName","children","rest","iterateItemContext","IterateElementContext","index","iterateIndex","blockId","useId","wasUpdated","forceUpdate","useReducer","mountedFieldsRef","useRef","stateRecordRef","fieldStateIdsRef","contentsRef","hasInitiallyErrorProp","useMemo","Boolean","optionalLabelSuffix","useTranslation","Field","labelSuffixText","content","convertJsxToString","replace","includes","React","isValidElement","createElement","Fragment","setInternalRecord","useCallback","stateId","identifier","type","current","existingIndex","findIndex","item","setFieldState","showFieldError","show","map","showInitially","statusContent","statesWithMessages","entries","flatMap","_ref","reduce","acc","cur","existing","find","message","getMessage","messages","state","width_element","no_animation","process","env","NODE_ENV","globalThis","IS_TEST","found","msg","_ref2","arr","text","CombineMessages","useEffect","mainClasses","classnames","gridClasses","enableFieldset","useEnableFieldset","labelProps","element","srOnly","space","top","bottom","size","prerenderFieldProps","warn","hasLabelDescription","isFragment","fragmentHasChildren","fragmentHasOnlyUndefinedChildren","Provider","hasErrorProp","Space","LabelDescription","FormLabel","FormStatus","ref","_ref3","result","count","findElementInChildren","child","_child$props","_child$type","_ref4","translations","errorSummary","stateSummary","Ul","_ref5","Li","_ref6","Error","FormError","toString","fragment","Children","isUndefined","toArray","every","_supportsSpacingProps","_default"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlock.tsx"],"sourcesContent":["import React, {\n useMemo,\n useContext,\n useCallback,\n useRef,\n useReducer,\n useEffect,\n} from 'react'\nimport classnames from 'classnames'\n\nimport FieldBlockContext, {\n StateWithMessage,\n StatesWithMessages,\n FieldErrorIdsRef,\n MountedFieldsRef,\n StateRecord,\n StateMessage,\n StateTypes,\n StatusContent,\n FieldBlockContextProps,\n StateBasis,\n} from './FieldBlockContext'\nimport DataContext from '../DataContext/Context'\nimport IterateElementContext from '../Iterate/IterateItemContext'\nimport { Space, FormLabel, FormStatus } from '../../../components'\nimport { Ul, Li } from '../../../elements'\nimport {\n convertJsxToString,\n findElementInChildren,\n warn,\n} from '../../../shared/component-helper'\nimport useId from '../../../shared/helpers/useId'\nimport {\n ComponentProps,\n FieldProps,\n FormError,\n SubmitState,\n Identifier,\n FieldBlockWidth,\n} from '../types'\nimport type { FormLabelAllProps } from '../../../components/FormLabel'\nimport SubmitIndicator from '../Form/SubmitIndicator/SubmitIndicator'\nimport { createSharedState } from '../../../shared/helpers/useSharedState'\nimport useTranslation from '../hooks/useTranslation'\n\nexport const states: Array<StateTypes> = ['error', 'info', 'warning']\n\nexport type Props = Pick<\n FieldProps,\n | keyof ComponentProps\n | 'layout'\n | 'label'\n | 'labelSuffix'\n | 'labelDescription'\n | 'info'\n | 'warning'\n | 'error'\n | 'disabled'\n> & {\n /** The id to link a element with */\n forId?: string\n /** Use true if you have more than one form element */\n asFieldset?: boolean\n /** use `true` to make the label only readable by screen readers. */\n labelSrOnly?: boolean\n /** Defines the layout of nested fields */\n composition?: FieldBlockContextProps['composition']\n /** Width of outer block element */\n width?: FieldBlockWidth\n /** Width of contents block, while label etc can be wider if space is available */\n contentWidth?: FieldBlockWidth\n /** For composition only: Align the contents vertically */\n align?: 'center' | 'bottom'\n /** Class name for the contents block */\n contentClassName?: string\n /** To show the SubmitIndicator during async validation */\n fieldState?: SubmitState\n /** Typography size */\n labelSize?: 'medium' | 'large'\n /** For internal use only */\n required?: boolean\n children?: React.ReactNode\n} & React.HTMLAttributes<HTMLDivElement>\n\nfunction FieldBlock(props: Props) {\n const dataContext = useContext(DataContext)\n const nestedFieldBlockContext = useContext(FieldBlockContext)\n\n const sharedData = createSharedState<Props>(\n 'field-block-props-' + (props.forId || props.id)\n )\n const {\n className,\n forId,\n layout = 'vertical',\n composition,\n label: labelProp,\n labelDescription,\n labelSuffix,\n labelSrOnly,\n asFieldset,\n required,\n info,\n warning,\n error: errorProp,\n fieldState,\n disabled,\n width,\n contentWidth,\n align,\n labelSize,\n contentClassName,\n children,\n ...rest\n } = Object.assign({}, sharedData.data, props)\n\n const iterateItemContext = useContext(IterateElementContext)\n const { index: iterateIndex } = iterateItemContext ?? {}\n\n const blockId = useId(props.id)\n const [wasUpdated, forceUpdate] = useReducer(() => ({}), {})\n const mountedFieldsRef = useRef<MountedFieldsRef>({})\n const stateRecordRef = useRef<StateRecord>({})\n const fieldStateIdsRef = useRef<FieldErrorIdsRef>(null)\n const contentsRef = useRef<HTMLDivElement>(null)\n const hasInitiallyErrorProp = useMemo(() => {\n return Boolean(errorProp)\n }, []) // eslint-disable-line react-hooks/exhaustive-deps\n\n const { optionalLabelSuffix } = useTranslation().Field\n const labelSuffixText = useMemo(() => {\n if (required === false || typeof labelSuffix !== 'undefined') {\n return labelSuffix ?? optionalLabelSuffix\n }\n return ''\n }, [required, labelSuffix, optionalLabelSuffix])\n\n const label = useMemo(() => {\n let content = labelProp\n\n if (iterateIndex !== undefined) {\n content = convertJsxToString(labelProp).replace(\n '{itemNo}',\n String(iterateIndex + 1)\n )\n }\n\n if (labelSuffixText) {\n if (convertJsxToString(content).includes(optionalLabelSuffix)) {\n return content\n }\n\n if (typeof content === 'string') {\n return content + ' ' + labelSuffixText\n }\n\n if (React.isValidElement(content)) {\n return (\n <>\n {content}\n {' '}\n {labelSuffixText}\n </>\n )\n }\n }\n\n return content\n }, [iterateIndex, labelProp, labelSuffixText])\n\n const setInternalRecord = useCallback((props: StateBasis) => {\n const { stateId, identifier, type } = props\n\n if (!stateRecordRef.current[identifier]) {\n stateRecordRef.current[identifier] = []\n }\n\n fieldStateIdsRef.current = { error: null, warning: null, info: null }\n\n const existingIndex = stateRecordRef.current[identifier].findIndex(\n (item) => {\n return item.stateId === stateId && item.type === type\n }\n )\n\n if (existingIndex > -1) {\n stateRecordRef.current[identifier][existingIndex] = {\n ...stateRecordRef.current[identifier][existingIndex],\n ...props,\n }\n } else {\n stateRecordRef.current[identifier].push(props)\n }\n }, [])\n\n const setFieldState = useCallback(\n (props: StateBasis) => {\n if (nestedFieldBlockContext) {\n // If this FieldBlock is inside another one, forward the call to the outer one\n nestedFieldBlockContext.setFieldState(props)\n return\n }\n\n setInternalRecord(props)\n\n forceUpdate()\n },\n [nestedFieldBlockContext, setInternalRecord]\n )\n\n const showFieldError = useCallback(\n (identifier: Identifier, show: boolean) => {\n if (nestedFieldBlockContext) {\n // If this FieldBlock is inside another one, forward the call to the outer one\n nestedFieldBlockContext.showFieldError(identifier, show)\n return\n }\n\n if (stateRecordRef.current[identifier]) {\n stateRecordRef.current[identifier] = stateRecordRef.current[\n identifier\n ].map((item) => {\n if (item.showInitially) {\n return item\n }\n\n return {\n ...item,\n show,\n }\n })\n\n forceUpdate()\n }\n },\n [nestedFieldBlockContext]\n )\n\n const statusContent = useMemo(() => {\n if (typeof errorProp !== 'undefined') {\n setInternalRecord({\n identifier: blockId,\n showInitially: hasInitiallyErrorProp,\n type: 'error',\n content: errorProp,\n })\n }\n\n if (typeof warning !== 'undefined') {\n setInternalRecord({\n identifier: blockId,\n showInitially: true,\n type: 'warning',\n content: warning,\n })\n }\n\n if (typeof info !== 'undefined') {\n setInternalRecord({\n identifier: blockId,\n showInitially: true,\n type: 'info',\n content: info,\n })\n }\n\n const statesWithMessages: Array<StatesWithMessages> =\n // 1. Prepare the states for later use\n Object.entries(stateRecordRef.current)\n .flatMap(([identifier, states]) =>\n states.map((props) => {\n return {\n identifier,\n ...props,\n }\n })\n )\n\n // 2. Take states and group the same type together\n .reduce((acc, cur) => {\n const existing = acc.find((item) => {\n return item.type === cur.type\n })\n\n const message = getMessage(cur)\n\n if (existing) {\n existing.messages.push({\n ...cur,\n message,\n })\n } else {\n acc.push({\n ...cur,\n content: undefined,\n messages: [\n {\n ...cur,\n message,\n },\n ],\n })\n }\n\n return acc\n }, [] as Array<StatesWithMessages>)\n\n // 3. Return the grouped states/messages\n return states.reduce((acc, type) => {\n const id = `${props.id || forId || blockId}-form-status--${type}`\n acc[type] = {\n id,\n label,\n state: type === 'warning' ? 'warn' : type,\n width_element: contentsRef,\n\n // Enable animation only in the browser and not in tests\n no_animation:\n process.env.NODE_ENV === 'test'\n ? true\n : typeof globalThis !== 'undefined'\n ? globalThis.IS_TEST === true\n : false,\n }\n\n const found = statesWithMessages.find((item) => {\n return item.type === type\n })\n\n if (found?.messages) {\n // Hide/remove messages that should be hidden and are not marked as to be shown initially\n const messages = found.messages\n .map((msg) => {\n if (msg.type === 'error') {\n if (!msg.showInitially && !msg.show) {\n msg.message = null\n }\n }\n\n return msg\n })\n .filter(({ message }) => message)\n .reduce((acc, msg, i, arr) => {\n const existingIndex = arr.findIndex((item) => {\n return (\n convertJsxToString(item.message) ===\n convertJsxToString(msg.message)\n )\n })\n\n // Remove duplicates, use the first found message\n if (existingIndex === i) {\n acc.push(msg)\n }\n\n return acc\n }, [])\n\n // Combine the messages and put them in an ul/li list\n if (messages.length > 0) {\n acc[type] = {\n ...acc[type],\n text: <CombineMessages type={type} messages={messages} />,\n }\n\n fieldStateIdsRef.current[type] = id\n } else {\n fieldStateIdsRef.current[type] = undefined\n }\n }\n\n return acc\n }, {}) as StatusContent\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n info,\n warning,\n errorProp,\n nestedFieldBlockContext,\n setInternalRecord,\n blockId,\n wasUpdated, // wasUpdated is needed to get the current errors\n ])\n\n // Handle the error prop from outside\n useEffect(() => {\n if (!nestedFieldBlockContext) {\n showFieldError(blockId, Boolean(errorProp))\n }\n }, [errorProp, blockId, showFieldError, nestedFieldBlockContext])\n\n useEffect(\n () => () => {\n mountedFieldsRef.current = {}\n stateRecordRef.current = {}\n },\n []\n )\n\n const mainClasses = classnames(\n 'dnb-forms-field-block',\n width !== undefined && `dnb-forms-field-block--width-${width}`,\n className\n )\n const gridClasses = classnames(\n 'dnb-forms-field-block__grid',\n `dnb-forms-field-block--layout-${layout}`\n )\n\n // A child component with a label was found, use fieldset/legend instead of div/label\n const enableFieldset = useEnableFieldset({\n label,\n asFieldset,\n children,\n nestedFieldBlockContext,\n })\n\n const labelProps: FormLabelAllProps = {\n element: enableFieldset ? 'legend' : 'label',\n forId: enableFieldset ? undefined : forId,\n srOnly: labelSrOnly,\n space: { top: 0, bottom: 'x-small' },\n size: labelSize,\n disabled,\n }\n\n if (dataContext?.prerenderFieldProps) {\n return null\n }\n\n if (fieldState && typeof label === 'undefined') {\n warn(\n 'Provide a label when using an async validator or onChange event.'\n )\n }\n\n const hasLabelDescription = isFragment(labelDescription)\n ? fragmentHasChildren(labelDescription) &&\n !fragmentHasOnlyUndefinedChildren(labelDescription)\n : labelDescription\n\n return (\n <FieldBlockContext.Provider\n value={{\n setFieldState,\n showFieldError,\n hasErrorProp: Boolean(errorProp),\n fieldStateIdsRef,\n mountedFieldsRef,\n composition,\n }}\n >\n <Space\n element={enableFieldset ? 'fieldset' : 'div'} // use fieldset and legend to enhance a11y\n className={mainClasses}\n {...rest}\n >\n <div className={gridClasses}>\n <LabelDescription labelDescription={labelDescription}>\n {(label || labelDescription) && (\n <FormLabel {...labelProps}>\n <SubmitIndicator state={fieldState}>\n {label}\n {hasLabelDescription && (\n <span className=\"dnb-forms-field-block__label-description\">\n {labelDescription}\n </span>\n )}\n </SubmitIndicator>\n </FormLabel>\n )}\n </LabelDescription>\n\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus {...statusContent?.error} />\n <FormStatus {...statusContent?.warning} />\n <FormStatus {...statusContent?.info} />\n </div>\n\n <div\n className={classnames(\n 'dnb-forms-field-block__contents',\n contentWidth &&\n `dnb-forms-field-block__contents--width-${contentWidth}`,\n align && `dnb-forms-field-block__contents--align-${align}`,\n composition &&\n `dnb-forms-field-block__contents__composition--${\n composition === true ? 'horizontal' : composition\n }`,\n contentClassName\n )}\n ref={contentsRef}\n >\n {children}\n </div>\n </div>\n </Space>\n </FieldBlockContext.Provider>\n )\n}\n\nfunction useEnableFieldset({\n label,\n asFieldset,\n children,\n nestedFieldBlockContext,\n}) {\n return useMemo(() => {\n if (asFieldset === false) {\n return false\n }\n\n let result = asFieldset\n\n if (label && !result && !nestedFieldBlockContext) {\n let count = 0\n\n findElementInChildren(children, (child: React.ReactElement) => {\n if (\n child?.props?.label ||\n child?.type?.['_formElement'] === true\n ) {\n count++\n }\n if (count > 1) {\n return (result = true)\n }\n })\n }\n\n return Boolean(result)\n }, [asFieldset, children, label, nestedFieldBlockContext])\n}\n\nfunction CombineMessages({\n type,\n messages,\n}: {\n type: StateTypes\n messages: Array<StateWithMessage>\n}) {\n const translations = useTranslation().Field\n\n if (messages.length === 1) {\n return <>{messages[0].message}</>\n }\n\n return (\n <>\n {type === 'error'\n ? translations.errorSummary\n : translations.stateSummary}\n <Ul>\n {messages.map(({ message }, i) => {\n return <Li key={i}>{message}</Li>\n })}\n </Ul>\n </>\n )\n}\n\nfunction LabelDescription({ labelDescription, children }) {\n if (!labelDescription) {\n return children ?? null\n }\n return <div className=\"dnb-forms-field-block__label\">{children}</div>\n}\n\nexport function getMessage(item: Partial<StateWithMessage>): StateMessage {\n const { content } = item\n\n return ((content instanceof Error && content.message) ||\n (content instanceof FormError && content.message) ||\n content?.toString() ||\n content) as StateMessage\n}\n\nfunction isFragment(fragment: React.ReactNode) {\n return React.isValidElement(fragment) && fragment.type === React.Fragment\n}\n\nfunction fragmentHasChildren(fragment: React.ReactNode) {\n return (\n React.isValidElement(fragment) &&\n React.Children.count(fragment.props.children) > 0\n )\n}\n\nfunction fragmentHasOnlyUndefinedChildren(fragment: React.ReactNode) {\n const isUndefined = (child) => child === undefined\n\n return (\n React.isValidElement(fragment) &&\n React.Children.toArray(fragment.props.children).every(isUndefined)\n )\n}\n\nFieldBlock._supportsSpacingProps = true\n\nexport default FieldBlock\n"],"mappings":"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"}
@@ -54,7 +54,7 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
54
54
  .dnb-forms-field-block--width-stretch {
55
55
  flex-grow: 1;
56
56
  }
57
- @media screen and (min-width: 25.0625em) {
57
+ @media screen and (min-width: 25.00625em) {
58
58
  .dnb-forms-field-block--width-small {
59
59
  width: var(--forms-field-width--small);
60
60
  }
@@ -93,7 +93,7 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
93
93
  .dnb-forms-field-block__contents--width-stretch {
94
94
  width: 100%;
95
95
  }
96
- @media screen and (min-width: 25.0625em) {
96
+ @media screen and (min-width: 25.00625em) {
97
97
  .dnb-forms-field-block__contents--width-small {
98
98
  width: var(--forms-field-width--small);
99
99
  }
@@ -115,7 +115,7 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
115
115
  -moz-column-gap: var(--spacing-small);
116
116
  column-gap: var(--spacing-small);
117
117
  }
118
- @media screen and (min-width: 25.0625em) {
118
+ @media screen and (min-width: 25.00625em) {
119
119
  .dnb-forms-field-block__contents__composition--horizontal {
120
120
  align-items: flex-end;
121
121
  }
@@ -1 +1 @@
1
- :root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}@media screen and (max-width:15em){.dnb-forms-field-number .dnb-input__shell,.dnb-forms-field-string .dnb-input__shell{width:90%}}fieldset.dnb-forms-field-block{border:none;padding:0}fieldset.dnb-forms-field-block:not([class*=space__top]){margin-top:0}fieldset.dnb-forms-field-block:not([class*=space__right]){margin-right:0}fieldset.dnb-forms-field-block:not([class*=space__bottom]){margin-bottom:0}fieldset.dnb-forms-field-block:not([class*=space__left]){margin-left:0}.dnb-forms-field-block__grid{display:grid}@media screen and (max-width:40em){.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid{flex-wrap:wrap}.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-forms-field-block--layout-vertical{grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{grid-template-areas:"label contents" "status status";grid-template-columns:fit-content(100%) auto}.dnb-forms-field-block--width-stretch{flex-grow:1}@media screen and (min-width:25.0625em){.dnb-forms-field-block--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__status .dnb-form-status__shell{margin-top:.5rem}@media screen and (max-width:15em){.dnb-forms-field-block__status{width:90%}}.dnb-forms-field-block__contents{grid-area:contents;width:100%}.dnb-forms-field-block__contents--width-stretch{width:100%}@media screen and (min-width:25.0625em){.dnb-forms-field-block__contents--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block__contents--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block__contents--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__contents__composition--vertical{display:flex;flex-flow:column;row-gap:var(--spacing-small)}.dnb-forms-field-block__contents__composition--horizontal{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row}@media screen and (min-width:25.0625em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}.dnb-forms-field-block__contents__composition--horizontal[class*=align-center]{align-items:center}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}
1
+ :root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}@media screen and (max-width:15em){.dnb-forms-field-number .dnb-input__shell,.dnb-forms-field-string .dnb-input__shell{width:90%}}fieldset.dnb-forms-field-block{border:none;padding:0}fieldset.dnb-forms-field-block:not([class*=space__top]){margin-top:0}fieldset.dnb-forms-field-block:not([class*=space__right]){margin-right:0}fieldset.dnb-forms-field-block:not([class*=space__bottom]){margin-bottom:0}fieldset.dnb-forms-field-block:not([class*=space__left]){margin-left:0}.dnb-forms-field-block__grid{display:grid}@media screen and (max-width:40em){.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid{flex-wrap:wrap}.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-forms-field-block--layout-vertical{grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{grid-template-areas:"label contents" "status status";grid-template-columns:fit-content(100%) auto}.dnb-forms-field-block--width-stretch{flex-grow:1}@media screen and (min-width:25.00625em){.dnb-forms-field-block--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__status .dnb-form-status__shell{margin-top:.5rem}@media screen and (max-width:15em){.dnb-forms-field-block__status{width:90%}}.dnb-forms-field-block__contents{grid-area:contents;width:100%}.dnb-forms-field-block__contents--width-stretch{width:100%}@media screen and (min-width:25.00625em){.dnb-forms-field-block__contents--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block__contents--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block__contents--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__contents__composition--vertical{display:flex;flex-flow:column;row-gap:var(--spacing-small)}.dnb-forms-field-block__contents__composition--horizontal{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row}@media screen and (min-width:25.00625em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}.dnb-forms-field-block__contents__composition--horizontal[class*=align-center]{align-items:center}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}
@@ -16,7 +16,7 @@
16
16
  .dnb-card + .dnb-button--primary:not([class*=space__top]) .dnb-button[class*=space__top] {
17
17
  margin-top: 0;
18
18
  }
19
- @media screen and (min-width: 40.0625em) {
19
+ @media screen and (min-width: 40.00625em) {
20
20
  .dnb-card + .dnb-forms-button-row:not([class*=space__left]),
21
21
  .dnb-card + .dnb-button--primary:not([class*=space__left]) {
22
22
  margin-left: var(--spacing-medium);
@@ -1 +1 @@
1
- .dnb-forms-button-row{display:flex;flex-flow:row;flex-wrap:wrap;gap:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]),.dnb-card+.dnb-forms-button-row:not([class*=space__top]){margin-top:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]) .dnb-button[class*=space__top],.dnb-card+.dnb-forms-button-row:not([class*=space__top]) .dnb-button[class*=space__top]{margin-top:0}@media screen and (min-width:40.0625em){.dnb-card+.dnb-button--primary:not([class*=space__left]),.dnb-card+.dnb-forms-button-row:not([class*=space__left]){margin-left:var(--spacing-medium)}}
1
+ .dnb-forms-button-row{display:flex;flex-flow:row;flex-wrap:wrap;gap:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]),.dnb-card+.dnb-forms-button-row:not([class*=space__top]){margin-top:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]) .dnb-button[class*=space__top],.dnb-card+.dnb-forms-button-row:not([class*=space__top]) .dnb-button[class*=space__top]{margin-top:0}@media screen and (min-width:40.00625em){.dnb-card+.dnb-button--primary:not([class*=space__left]),.dnb-card+.dnb-forms-button-row:not([class*=space__left]){margin-left:var(--spacing-medium)}}
@@ -26,12 +26,12 @@ function FormElement(_ref) {
26
26
  const dataContext = (0, _react.useContext)(_Context.default);
27
27
  dataContext.isInsideFormElement = true;
28
28
  const onSubmitHandler = (0, _react.useCallback)(event => {
29
- var _dataContext$handleSu;
30
29
  event === null || event === void 0 ? void 0 : event.preventDefault();
31
30
  const formElement = event.target;
32
- dataContext === null || dataContext === void 0 ? void 0 : (_dataContext$handleSu = dataContext.handleSubmit) === null || _dataContext$handleSu === void 0 ? void 0 : _dataContext$handleSu.call(dataContext, {
33
- formElement
34
- });
31
+ if (dataContext.hasContext) {
32
+ dataContext.formElementRef.current = formElement;
33
+ dataContext.handleSubmit();
34
+ }
35
35
  if (typeof onSubmit === 'function') {
36
36
  onSubmit(event);
37
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Element.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Space","_classnames","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","FormElement","_ref","children","className","onSubmit","rest","dataContext","useContext","Context","isInsideFormElement","onSubmitHandler","useCallback","event","_dataContext$handleSu","preventDefault","formElement","handleSubmit","createElement","element","classnames"],"sources":["../../../../../../src/extensions/forms/Form/Element/Element.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport Context from '../../DataContext/Context'\nimport Space from '../../../../components/space/Space'\nimport classnames from 'classnames'\nimport type { SpacingProps } from '../../../../shared/types'\n\nexport type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps\n\nexport default function FormElement({\n children,\n className = null,\n onSubmit = null,\n ...rest\n}: Props) {\n const dataContext = useContext(Context)\n\n /**\n * Set to true,\n * this way we prevent \"handleSubmit\" to be called twice when the SubmitButton is pressed.\n */\n dataContext.isInsideFormElement = true\n\n const onSubmitHandler = useCallback(\n (event: React.SyntheticEvent<HTMLFormElement>) => {\n event?.preventDefault()\n\n const formElement = event.target as HTMLFormElement\n dataContext?.handleSubmit?.({ formElement })\n\n if (typeof onSubmit === 'function') {\n onSubmit(event)\n }\n },\n [dataContext, onSubmit]\n )\n\n return (\n <Space\n element=\"form\"\n className={classnames('dnb-forms-form', className)}\n onSubmit={onSubmitHandler}\n {...rest}\n >\n {children}\n </Space>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Element.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Space","_classnames","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","FormElement","_ref","children","className","onSubmit","rest","dataContext","useContext","Context","isInsideFormElement","onSubmitHandler","useCallback","event","preventDefault","formElement","hasContext","formElementRef","current","handleSubmit","createElement","element","classnames"],"sources":["../../../../../../src/extensions/forms/Form/Element/Element.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport Context from '../../DataContext/Context'\nimport Space from '../../../../components/space/Space'\nimport classnames from 'classnames'\nimport type { SpacingProps } from '../../../../shared/types'\n\nexport type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps\n\nexport default function FormElement({\n children,\n className = null,\n onSubmit = null,\n ...rest\n}: Props) {\n const dataContext = useContext(Context)\n\n /**\n * Set to true,\n * this way we prevent \"handleSubmit\" to be called twice when the SubmitButton is pressed.\n */\n dataContext.isInsideFormElement = true\n\n const onSubmitHandler = useCallback(\n (event: React.SyntheticEvent<HTMLFormElement>) => {\n event?.preventDefault()\n\n const formElement = event.target as HTMLFormElement\n\n if (dataContext.hasContext) {\n dataContext.formElementRef.current = formElement\n dataContext.handleSubmit()\n }\n\n if (typeof onSubmit === 'function') {\n onSubmit(event)\n }\n },\n [dataContext, onSubmit]\n )\n\n return (\n <Space\n element=\"form\"\n className={classnames('dnb-forms-form', className)}\n onSubmit={onSubmitHandler}\n {...rest}\n >\n {children}\n </Space>\n )\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { JsonObject } from 'json-pointer';
1
+ import { JsonObject } from '../../utils/json-pointer';
2
2
  import { Props as ProviderProps } from '../../DataContext/Provider';
3
3
  import type { ElementAllProps } from '../../../../elements/Element';
4
4
  export type Props = Omit<ElementAllProps, 'data' | 'as' | 'autoComplete'> & {
@@ -1 +1 @@
1
- {"version":3,"file":"Handler.js","names":["_react","_interopRequireWildcard","require","_Provider","_interopRequireDefault","_Context","_Element","_FormStatus","_useId","_componentHelper","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","FormHandler","_ref","children","defaultData","data","schema","ajvInstance","errorMessages","globalStatusId","filterSubmitData","transformIn","transformOut","onChange","onPathChange","onSubmit","onSubmitRequest","onSubmitComplete","onClear","minimumAsyncBehaviorTime","asyncSubmitTimeout","scrollTopOnSubmit","sessionStorageId","autoComplete","locale","translations","disabled","required","rest","providerProps","id","createElement","FormElementWithState","_ref2","useId","submitState","useContext","DataContext","states","entries","filter","_ref3","value","combineLabelledBy","map","_ref4","undefined","state","className","show","Boolean","no_animation","shellSpace","top","bottom","String"],"sources":["../../../../../../src/extensions/forms/Form/Handler/Handler.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { JsonObject } from 'json-pointer'\nimport DataContextProvider, {\n Props as ProviderProps,\n} from '../../DataContext/Provider'\nimport DataContext from '../../DataContext/Context'\nimport FormElement from '../Element'\nimport type { ElementAllProps } from '../../../../elements/Element'\nimport FormStatus from '../../../../components/FormStatus'\nimport useId from '../../../../shared/helpers/useId'\nimport { combineLabelledBy } from '../../../../shared/component-helper'\n\nexport type Props = Omit<\n ElementAllProps,\n 'data' | 'as' | 'autoComplete'\n> & {\n /**\n * Will enable autoComplete for all nested Field.String fields\n */\n autoComplete?: boolean\n}\n\nexport default function FormHandler<Data extends JsonObject>({\n children,\n defaultData,\n data,\n schema,\n ajvInstance,\n errorMessages,\n globalStatusId,\n filterSubmitData,\n transformIn,\n transformOut,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n onSubmitComplete,\n onClear,\n minimumAsyncBehaviorTime,\n asyncSubmitTimeout,\n scrollTopOnSubmit,\n sessionStorageId,\n autoComplete,\n locale,\n translations,\n disabled,\n required,\n ...rest\n}: ProviderProps<Data> & Omit<Props, keyof ProviderProps<Data>>) {\n const providerProps = {\n id: rest.id,\n defaultData,\n data,\n schema,\n ajvInstance,\n errorMessages,\n globalStatusId,\n filterSubmitData,\n transformIn,\n transformOut,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n onSubmitComplete,\n onClear,\n minimumAsyncBehaviorTime,\n asyncSubmitTimeout,\n scrollTopOnSubmit,\n sessionStorageId,\n autoComplete,\n locale,\n translations,\n disabled,\n required,\n }\n\n return (\n <DataContextProvider {...providerProps}>\n <FormElementWithState {...rest}>{children}</FormElementWithState>\n </DataContextProvider>\n )\n}\n\nfunction FormElementWithState({ children, ...rest }) {\n const id = useId()\n const { submitState } = useContext(DataContext) || {}\n const states = Object.entries(submitState || {}).filter(\n ([, value]) => value\n )\n\n return (\n <FormElement\n {...rest}\n aria-labelledby={\n combineLabelledBy(\n rest,\n states.map(([key]) => {\n return `${id}-form-status-${key}`\n })\n ) || undefined\n }\n >\n {children}\n\n {['error', 'warning', 'info'].map((key) => {\n const value = submitState?.[key]\n return (\n <FormStatus\n key={key}\n state={key}\n id={`${id}-form-status-${key}`}\n className=\"dnb-forms-status\"\n show={Boolean(value)}\n no_animation={false}\n shellSpace={{ top: 'small', bottom: 'medium' }}\n >\n {String(value?.['message'] || value || '')}\n </FormStatus>\n )\n })}\n </FormElement>\n )\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,QAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,MAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,gBAAA,GAAAP,OAAA;AAAuE,MAAAQ,SAAA;EAAAC,UAAA;AAAA,SAAAP,uBAAAQ,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAf,wBAAAW,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA;AAAA,SAAAI,yBAAAF,MAAA,EAAAG,QAAA,QAAAH,MAAA,yBAAAJ,MAAA,GAAAQ,6BAAA,CAAAJ,MAAA,EAAAG,QAAA,OAAAhB,GAAA,EAAAU,CAAA,MAAAb,MAAA,CAAAqB,qBAAA,QAAAC,gBAAA,GAAAtB,MAAA,CAAAqB,qBAAA,CAAAL,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAS,gBAAA,CAAAP,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAmB,gBAAA,CAAAT,CAAA,OAAAM,QAAA,CAAAI,OAAA,CAAApB,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAoB,oBAAA,CAAAlB,IAAA,CAAAU,MAAA,EAAAb,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,cAAAS,MAAA;AAAA,SAAAQ,8BAAAJ,MAAA,EAAAG,QAAA,QAAAH,MAAA,yBAAAJ,MAAA,WAAAa,UAAA,GAAAzB,MAAA,CAAA0B,IAAA,CAAAV,MAAA,OAAAb,GAAA,EAAAU,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAY,UAAA,CAAAV,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAsB,UAAA,CAAAZ,CAAA,OAAAM,QAAA,CAAAI,OAAA,CAAApB,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,YAAAS,MAAA;AAYxD,SAASe,WAAWA,CAAAC,IAAA,EA2B8B;EAAA,IA3BJ;MAC3DC,QAAQ;MACRC,WAAW;MACXC,IAAI;MACJC,MAAM;MACNC,WAAW;MACXC,aAAa;MACbC,cAAc;MACdC,gBAAgB;MAChBC,WAAW;MACXC,YAAY;MACZC,QAAQ;MACRC,YAAY;MACZC,QAAQ;MACRC,eAAe;MACfC,gBAAgB;MAChBC,OAAO;MACPC,wBAAwB;MACxBC,kBAAkB;MAClBC,iBAAiB;MACjBC,gBAAgB;MAChBC,YAAY;MACZC,MAAM;MACNC,YAAY;MACZC,QAAQ;MACRC;IAE4D,CAAC,GAAAzB,IAAA;IAD1D0B,IAAI,GAAApC,wBAAA,CAAAU,IAAA,EAAA3C,SAAA;EAEP,MAAMsE,aAAa,GAAG;IACpBC,EAAE,EAAEF,IAAI,CAACE,EAAE;IACX1B,WAAW;IACXC,IAAI;IACJC,MAAM;IACNC,WAAW;IACXC,aAAa;IACbC,cAAc;IACdC,gBAAgB;IAChBC,WAAW;IACXC,YAAY;IACZC,QAAQ;IACRC,YAAY;IACZC,QAAQ;IACRC,eAAe;IACfC,gBAAgB;IAChBC,OAAO;IACPC,wBAAwB;IACxBC,kBAAkB;IAClBC,iBAAiB;IACjBC,gBAAgB;IAChBC,YAAY;IACZC,MAAM;IACNC,YAAY;IACZC,QAAQ;IACRC;EACF,CAAC;EAED,OACE9E,MAAA,CAAAc,OAAA,CAAAoE,aAAA,CAAC/E,SAAA,CAAAW,OAAmB,EAAKkE,aAAa,EACpChF,MAAA,CAAAc,OAAA,CAAAoE,aAAA,CAACC,oBAAoB,EAAKJ,IAAI,EAAGzB,QAA+B,CAC7C,CAAC;AAE1B;AAEA,SAAS6B,oBAAoBA,CAAAC,KAAA,EAAwB;EAAA,IAAvB;MAAE9B;IAAkB,CAAC,GAAA8B,KAAA;IAANL,IAAI,GAAApC,wBAAA,CAAAyC,KAAA,EAAAzE,UAAA;EAC/C,MAAMsE,EAAE,GAAG,IAAAI,cAAK,EAAC,CAAC;EAClB,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC,IAAI,CAAC,CAAC;EACrD,MAAMC,MAAM,GAAGhE,MAAM,CAACiE,OAAO,CAACJ,WAAW,IAAI,CAAC,CAAC,CAAC,CAACK,MAAM,CACrDC,KAAA;IAAA,IAAC,GAAGC,KAAK,CAAC,GAAAD,KAAA;IAAA,OAAKC,KAAK;EAAA,CACtB,CAAC;EAED,OACE7F,MAAA,CAAAc,OAAA,CAAAoE,aAAA,CAAC5E,QAAA,CAAAQ,OAAW,EAAAoB,QAAA,KACN6C,IAAI;IACR,mBACE,IAAAe,kCAAiB,EACff,IAAI,EACJU,MAAM,CAACM,GAAG,CAACC,KAAA,IAAW;MAAA,IAAV,CAACpE,GAAG,CAAC,GAAAoE,KAAA;MACf,OAAQ,GAAEf,EAAG,gBAAerD,GAAI,EAAC;IACnC,CAAC,CACH,CAAC,IAAIqE;EACN,IAEA3C,QAAQ,EAER,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAACyC,GAAG,CAAEnE,GAAG,IAAK;IACzC,MAAMiE,KAAK,GAAGP,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAG1D,GAAG,CAAC;IAChC,OACE5B,MAAA,CAAAc,OAAA,CAAAoE,aAAA,CAAC3E,WAAA,CAAAO,OAAU;MACTc,GAAG,EAAEA,GAAI;MACTsE,KAAK,EAAEtE,GAAI;MACXqD,EAAE,EAAG,GAAEA,EAAG,gBAAerD,GAAI,EAAE;MAC/BuE,SAAS,EAAC,kBAAkB;MAC5BC,IAAI,EAAEC,OAAO,CAACR,KAAK,CAAE;MACrBS,YAAY,EAAE,KAAM;MACpBC,UAAU,EAAE;QAAEC,GAAG,EAAE,OAAO;QAAEC,MAAM,EAAE;MAAS;IAAE,GAE9CC,MAAM,CAAC,CAAAb,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAG,SAAS,CAAC,KAAIA,KAAK,IAAI,EAAE,CAC/B,CAAC;EAEjB,CAAC,CACU,CAAC;AAElB"}
1
+ {"version":3,"file":"Handler.js","names":["_react","_interopRequireWildcard","require","_Provider","_interopRequireDefault","_Context","_Element","_FormStatus","_useId","_componentHelper","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","FormHandler","_ref","children","defaultData","data","schema","ajvInstance","errorMessages","globalStatusId","filterSubmitData","transformIn","transformOut","onChange","onPathChange","onSubmit","onSubmitRequest","onSubmitComplete","onClear","minimumAsyncBehaviorTime","asyncSubmitTimeout","scrollTopOnSubmit","sessionStorageId","autoComplete","locale","translations","disabled","required","rest","providerProps","id","createElement","FormElementWithState","_ref2","useId","submitState","useContext","DataContext","states","entries","filter","_ref3","value","combineLabelledBy","map","_ref4","undefined","state","className","show","Boolean","no_animation","shellSpace","top","bottom","String"],"sources":["../../../../../../src/extensions/forms/Form/Handler/Handler.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { JsonObject } from '../../utils/json-pointer'\nimport DataContextProvider, {\n Props as ProviderProps,\n} from '../../DataContext/Provider'\nimport DataContext from '../../DataContext/Context'\nimport FormElement from '../Element'\nimport type { ElementAllProps } from '../../../../elements/Element'\nimport FormStatus from '../../../../components/FormStatus'\nimport useId from '../../../../shared/helpers/useId'\nimport { combineLabelledBy } from '../../../../shared/component-helper'\n\nexport type Props = Omit<\n ElementAllProps,\n 'data' | 'as' | 'autoComplete'\n> & {\n /**\n * Will enable autoComplete for all nested Field.String fields\n */\n autoComplete?: boolean\n}\n\nexport default function FormHandler<Data extends JsonObject>({\n children,\n defaultData,\n data,\n schema,\n ajvInstance,\n errorMessages,\n globalStatusId,\n filterSubmitData,\n transformIn,\n transformOut,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n onSubmitComplete,\n onClear,\n minimumAsyncBehaviorTime,\n asyncSubmitTimeout,\n scrollTopOnSubmit,\n sessionStorageId,\n autoComplete,\n locale,\n translations,\n disabled,\n required,\n ...rest\n}: ProviderProps<Data> & Omit<Props, keyof ProviderProps<Data>>) {\n const providerProps = {\n id: rest.id,\n defaultData,\n data,\n schema,\n ajvInstance,\n errorMessages,\n globalStatusId,\n filterSubmitData,\n transformIn,\n transformOut,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n onSubmitComplete,\n onClear,\n minimumAsyncBehaviorTime,\n asyncSubmitTimeout,\n scrollTopOnSubmit,\n sessionStorageId,\n autoComplete,\n locale,\n translations,\n disabled,\n required,\n }\n\n return (\n <DataContextProvider {...providerProps}>\n <FormElementWithState {...rest}>{children}</FormElementWithState>\n </DataContextProvider>\n )\n}\n\nfunction FormElementWithState({ children, ...rest }) {\n const id = useId()\n const { submitState } = useContext(DataContext) || {}\n const states = Object.entries(submitState || {}).filter(\n ([, value]) => value\n )\n\n return (\n <FormElement\n {...rest}\n aria-labelledby={\n combineLabelledBy(\n rest,\n states.map(([key]) => {\n return `${id}-form-status-${key}`\n })\n ) || undefined\n }\n >\n {children}\n\n {['error', 'warning', 'info'].map((key) => {\n const value = submitState?.[key]\n return (\n <FormStatus\n key={key}\n state={key}\n id={`${id}-form-status-${key}`}\n className=\"dnb-forms-status\"\n show={Boolean(value)}\n no_animation={false}\n shellSpace={{ top: 'small', bottom: 'medium' }}\n >\n {String(value?.['message'] || value || '')}\n </FormStatus>\n )\n })}\n </FormElement>\n )\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { JsonObject } from 'json-pointer';
2
+ import { JsonObject } from '../../utils/json-pointer';
3
3
  import IsolationCommitButton from './IsolationCommitButton';
4
4
  import { type Props as ProviderProps } from '../../DataContext/Provider';
5
5
  import type { OnCommit, Path } from '../../types';
@@ -17,7 +17,7 @@ export type IsolationProviderProps<Data> = {
17
17
  * It will receive the data from the isolated context and the data from the outer context.
18
18
  * You can use this to transform the data before it is committed.
19
19
  */
20
- transformOnCommit?: (isolatedData: Data, handlerData: Data) => Data;
20
+ transformOnCommit?: (isolatedData: JsonObject, handlerData: JsonObject) => unknown;
21
21
  /**
22
22
  * Used internally by the Form.Isolation component
23
23
  */
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
- var _jsonPointer = _interopRequireDefault(require("json-pointer"));
9
+ var _jsonPointer = _interopRequireDefault(require("../../utils/json-pointer"));
10
10
  var _componentHelper = require("../../../../shared/component-helper");
11
11
  var _isAsync = require("../../../../shared/helpers/isAsync");
12
12
  var _useDataValue = _interopRequireDefault(require("../../hooks/useDataValue"));
@@ -1 +1 @@
1
- {"version":3,"file":"Isolation.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_componentHelper","_isAsync","_useDataValue","_DataContext","_SectionContext","_IsolationCommitButton","_Provider","_structuredClone","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","IsolationProvider","props","children","onPathChange","onCommit","onCommitProp","onClear","onClearProp","transformOnCommit","transformOnCommitProp","commitHandleRef","data","defaultData","forceUpdate","useReducer","internalDataRef","useRef","localDataRef","dataContextRef","outerContext","useContext","Context","path","pathSection","SectionContext","handlePathChange","handlePathChangeOuter","dataOuter","moveValueToPath","useDataValue","onPathChangeHandler","useCallback","current","clearedData","pointer","replace","removeSectionPath","getMountedData","mounterData","_dataContextRef$curre","mountedFieldsRef","field","isMounted","useEffect","useMemo","localData","assign","additionalArgs","_props$path","mountedData","outerData","isolatedData","structuredClone","stop","preventCommit","commitData","result","isAsync","Array","isArray","extendDeep","providerProps","isolate","createElement","Provider","Consumer","dataContext","handleSubmit","CommitButton","IsolationCommitButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/Isolation.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { extendDeep } from '../../../../shared/component-helper'\nimport { isAsync } from '../../../../shared/helpers/isAsync'\nimport useDataValue from '../../hooks/useDataValue'\nimport { Context, ContextState, Provider } from '../../DataContext'\nimport SectionContext from '../Section/SectionContext'\nimport IsolationCommitButton from './IsolationCommitButton'\nimport {\n clearedData,\n type Props as ProviderProps,\n} from '../../DataContext/Provider'\nimport type { OnCommit, Path } from '../../types'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport type IsolationProviderProps<Data> = {\n /**\n * Form.Isolation: Will be called when the isolated context is committed.\n */\n onCommit?: OnCommit<Data>\n /**\n * Form.Isolation: Will be called when the form is cleared via Form.clearData\n */\n onClear?: () => void\n /**\n * Form.Isolation: A function that will be called when the isolated context is committed.\n * It will receive the data from the isolated context and the data from the outer context.\n * You can use this to transform the data before it is committed.\n */\n transformOnCommit?: (isolatedData: Data, handlerData: Data) => Data\n /**\n * Used internally by the Form.Isolation component\n */\n path?: Path\n /**\n * Used internally by the Form.Isolation component\n */\n isolate?: boolean\n}\n\nexport type IsolationProps<Data> = Omit<\n ProviderProps<Data>,\n | 'onSubmit'\n | 'onSubmitRequest'\n | 'onSubmitComplete'\n | 'minimumAsyncBehaviorTime'\n | 'asyncSubmitTimeout'\n | 'scrollTopOnSubmit'\n | 'sessionStorageId'\n | 'globalStatusId'\n> & {\n /**\n * A ref (function) that you can call in order to commit the data programmatically to the outer context.\n */\n commitHandleRef?: React.MutableRefObject<() => void>\n}\n\nfunction IsolationProvider<Data extends JsonObject>(\n props: IsolationProps<Data>\n) {\n const {\n children,\n onPathChange,\n onCommit: onCommitProp,\n onClear: onClearProp,\n transformOnCommit: transformOnCommitProp,\n commitHandleRef,\n data,\n defaultData,\n } = props\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const internalDataRef = useRef<Data>()\n const localDataRef = useRef<Partial<Data>>({})\n const dataContextRef = useRef<ContextState>(null)\n const outerContext = useContext(Context)\n const { path: pathSection } = useContext(SectionContext) || {}\n const { handlePathChange: handlePathChangeOuter, data: dataOuter } =\n outerContext || {}\n const { moveValueToPath } = useDataValue()\n\n const onPathChangeHandler = useCallback(\n async (path: Path, value: unknown) => {\n if (localDataRef.current === clearedData) {\n localDataRef.current = {}\n }\n\n pointer.set(localDataRef.current, path, value)\n\n if (pathSection) {\n path = path.replace(pathSection, '')\n }\n\n return await onPathChange?.(path, value)\n },\n [onPathChange, pathSection]\n )\n\n const removeSectionPath = useCallback(\n (data: Data) => {\n return pathSection && pointer.has(data, pathSection)\n ? pointer.get(data, pathSection)\n : data\n },\n [pathSection]\n )\n\n const getMountedData = useCallback((data: Data) => {\n const mounterData = {} as Data\n for (const path in dataContextRef.current?.mountedFieldsRef.current) {\n const field = dataContextRef.current.mountedFieldsRef.current[path]\n if (field.isMounted && pointer.has(data, path)) {\n pointer.set(mounterData, path, pointer.get(data, path))\n }\n }\n return mounterData\n }, [])\n\n useEffect(() => {\n localDataRef.current = getMountedData(internalDataRef.current)\n }, [getMountedData])\n\n // Update the isolated data with the outside context data\n useMemo(() => {\n if (localDataRef.current === clearedData) {\n return // stop here\n }\n\n let localData = data ?? defaultData\n\n if (\n localData &&\n pathSection &&\n !pointer.has(localDataRef.current, pathSection)\n ) {\n localData = moveValueToPath<Data>(pathSection, localData)\n }\n\n internalDataRef.current = Object.assign(\n {},\n localData || dataOuter || {},\n localDataRef.current\n )\n }, [data, defaultData, pathSection, dataOuter, moveValueToPath])\n\n const onCommit: IsolationProps<Data>['onCommit'] = useCallback(\n async (data: Data, additionalArgs) => {\n const mountedData = getMountedData(data)\n const path = props.path ?? '/'\n const outerData =\n props.path && pointer.has(dataOuter, path)\n ? pointer.get(dataOuter, path)\n : dataOuter\n\n localDataRef.current = mountedData\n let isolatedData = structuredClone(mountedData) as Data\n\n if (typeof transformOnCommitProp === 'function') {\n isolatedData = transformOnCommitProp(isolatedData, outerData)\n }\n\n let stop = false\n additionalArgs.preventCommit = () => (stop = true)\n\n const commitData = removeSectionPath(isolatedData)\n const result = isAsync(onCommitProp)\n ? await onCommitProp?.(commitData, additionalArgs)\n : onCommitProp?.(commitData, additionalArgs)\n\n if (stop) {\n return // stop here\n }\n\n // Commit the internal data to the nested context data\n await handlePathChangeOuter?.(\n path,\n Array.isArray(isolatedData)\n ? isolatedData\n : extendDeep({}, outerData, isolatedData)\n )\n\n return result\n },\n [\n getMountedData,\n props.path,\n dataOuter,\n transformOnCommitProp,\n handlePathChangeOuter,\n onCommitProp,\n removeSectionPath,\n ]\n )\n\n const onClear = useCallback(() => {\n localDataRef.current = clearedData\n internalDataRef.current = clearedData as Data\n forceUpdate()\n onClearProp?.()\n }, [onClearProp])\n\n const providerProps: IsolationProps<Data> = {\n ...props,\n [defaultData ? 'defaultData' : 'data']: internalDataRef.current,\n onPathChange: onPathChangeHandler,\n onCommit,\n onClear,\n isolate: true,\n }\n\n return (\n <Provider {...providerProps}>\n <Context.Consumer>\n {(dataContext) => {\n dataContextRef.current = dataContext\n\n if (commitHandleRef) {\n commitHandleRef.current = dataContext?.handleSubmit\n }\n\n return children\n }}\n </Context.Consumer>\n </Provider>\n )\n}\n\nIsolationProvider.CommitButton = IsolationCommitButton\nIsolationProvider._supportsSpacingProps = undefined\n\nexport default IsolationProvider\n"],"mappings":"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"}
1
+ {"version":3,"file":"Isolation.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_componentHelper","_isAsync","_useDataValue","_DataContext","_SectionContext","_IsolationCommitButton","_Provider","_structuredClone","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","IsolationProvider","props","children","onPathChange","onCommit","onCommitProp","onClear","onClearProp","transformOnCommit","transformOnCommitProp","commitHandleRef","data","defaultData","forceUpdate","useReducer","internalDataRef","useRef","localDataRef","dataContextRef","outerContext","useContext","Context","path","pathSection","SectionContext","handlePathChange","handlePathChangeOuter","dataOuter","moveValueToPath","useDataValue","onPathChangeHandler","useCallback","current","clearedData","pointer","replace","removeSectionPath","getMountedData","mounterData","_dataContextRef$curre","mountedFieldsRef","field","isMounted","useEffect","useMemo","localData","assign","additionalArgs","_props$path","mountedData","outerData","isolatedData","structuredClone","stop","preventCommit","commitData","result","isAsync","Array","isArray","extendDeep","providerProps","isolate","createElement","Provider","Consumer","dataContext","handleSubmit","CommitButton","IsolationCommitButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/Isolation.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport pointer, { JsonObject } from '../../utils/json-pointer'\nimport { extendDeep } from '../../../../shared/component-helper'\nimport { isAsync } from '../../../../shared/helpers/isAsync'\nimport useDataValue from '../../hooks/useDataValue'\nimport { Context, ContextState, Provider } from '../../DataContext'\nimport SectionContext from '../Section/SectionContext'\nimport IsolationCommitButton from './IsolationCommitButton'\nimport {\n clearedData,\n type Props as ProviderProps,\n} from '../../DataContext/Provider'\nimport type { OnCommit, Path } from '../../types'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport type IsolationProviderProps<Data> = {\n /**\n * Form.Isolation: Will be called when the isolated context is committed.\n */\n onCommit?: OnCommit<Data>\n /**\n * Form.Isolation: Will be called when the form is cleared via Form.clearData\n */\n onClear?: () => void\n /**\n * Form.Isolation: A function that will be called when the isolated context is committed.\n * It will receive the data from the isolated context and the data from the outer context.\n * You can use this to transform the data before it is committed.\n */\n transformOnCommit?: (\n isolatedData: JsonObject,\n handlerData: JsonObject\n ) => unknown\n /**\n * Used internally by the Form.Isolation component\n */\n path?: Path\n /**\n * Used internally by the Form.Isolation component\n */\n isolate?: boolean\n}\n\nexport type IsolationProps<Data> = Omit<\n ProviderProps<Data>,\n | 'onSubmit'\n | 'onSubmitRequest'\n | 'onSubmitComplete'\n | 'minimumAsyncBehaviorTime'\n | 'asyncSubmitTimeout'\n | 'scrollTopOnSubmit'\n | 'sessionStorageId'\n | 'globalStatusId'\n> & {\n /**\n * A ref (function) that you can call in order to commit the data programmatically to the outer context.\n */\n commitHandleRef?: React.MutableRefObject<() => void>\n}\n\nfunction IsolationProvider<Data extends JsonObject>(\n props: IsolationProps<Data>\n) {\n const {\n children,\n onPathChange,\n onCommit: onCommitProp,\n onClear: onClearProp,\n transformOnCommit: transformOnCommitProp,\n commitHandleRef,\n data,\n defaultData,\n } = props\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const internalDataRef = useRef<Data>()\n const localDataRef = useRef<Partial<Data>>({})\n const dataContextRef = useRef<ContextState>(null)\n const outerContext = useContext(Context)\n const { path: pathSection } = useContext(SectionContext) || {}\n const { handlePathChange: handlePathChangeOuter, data: dataOuter } =\n outerContext || {}\n const { moveValueToPath } = useDataValue()\n\n const onPathChangeHandler = useCallback(\n async (path: Path, value: unknown) => {\n if (localDataRef.current === clearedData) {\n localDataRef.current = {}\n }\n\n pointer.set(localDataRef.current, path, value)\n\n if (pathSection) {\n path = path.replace(pathSection, '')\n }\n\n return await onPathChange?.(path, value)\n },\n [onPathChange, pathSection]\n )\n\n const removeSectionPath = useCallback(\n (data: Data) => {\n return pathSection && pointer.has(data, pathSection)\n ? pointer.get(data, pathSection)\n : data\n },\n [pathSection]\n )\n\n const getMountedData = useCallback((data: Data) => {\n const mounterData = {} as Data\n for (const path in dataContextRef.current?.mountedFieldsRef.current) {\n const field = dataContextRef.current.mountedFieldsRef.current[path]\n if (field.isMounted && pointer.has(data, path)) {\n pointer.set(mounterData, path, pointer.get(data, path))\n }\n }\n return mounterData\n }, [])\n\n useEffect(() => {\n localDataRef.current = getMountedData(internalDataRef.current)\n }, [getMountedData])\n\n // Update the isolated data with the outside context data\n useMemo(() => {\n if (localDataRef.current === clearedData) {\n return // stop here\n }\n\n let localData = data ?? defaultData\n\n if (\n localData &&\n pathSection &&\n !pointer.has(localDataRef.current, pathSection)\n ) {\n localData = moveValueToPath<Data>(pathSection, localData)\n }\n\n internalDataRef.current = Object.assign(\n {},\n localData || dataOuter || {},\n localDataRef.current\n )\n }, [data, defaultData, pathSection, dataOuter, moveValueToPath])\n\n const onCommit: IsolationProps<Data>['onCommit'] = useCallback(\n async (data: Data, additionalArgs) => {\n const mountedData = getMountedData(data)\n const path = props.path ?? '/'\n const outerData =\n props.path && pointer.has(dataOuter, path)\n ? pointer.get(dataOuter, path)\n : dataOuter\n\n localDataRef.current = mountedData\n let isolatedData = structuredClone(mountedData)\n\n if (typeof transformOnCommitProp === 'function') {\n isolatedData = transformOnCommitProp(isolatedData, outerData)\n }\n\n let stop = false\n additionalArgs.preventCommit = () => (stop = true)\n\n const commitData = removeSectionPath(isolatedData)\n const result = isAsync(onCommitProp)\n ? await onCommitProp?.(commitData, additionalArgs)\n : onCommitProp?.(commitData, additionalArgs)\n\n if (stop) {\n return // stop here\n }\n\n // Commit the internal data to the nested context data\n await handlePathChangeOuter?.(\n path,\n Array.isArray(isolatedData)\n ? isolatedData\n : extendDeep({}, outerData, isolatedData)\n )\n\n return result\n },\n [\n getMountedData,\n props.path,\n dataOuter,\n transformOnCommitProp,\n handlePathChangeOuter,\n onCommitProp,\n removeSectionPath,\n ]\n )\n\n const onClear = useCallback(() => {\n localDataRef.current = clearedData\n internalDataRef.current = clearedData as Data\n forceUpdate()\n onClearProp?.()\n }, [onClearProp])\n\n const providerProps: IsolationProps<Data> = {\n ...props,\n [defaultData ? 'defaultData' : 'data']: internalDataRef.current,\n onPathChange: onPathChangeHandler,\n onCommit,\n onClear,\n isolate: true,\n }\n\n return (\n <Provider {...providerProps}>\n <Context.Consumer>\n {(dataContext) => {\n dataContextRef.current = dataContext\n\n if (commitHandleRef) {\n commitHandleRef.current = dataContext?.handleSubmit\n }\n\n return children\n }}\n </Context.Consumer>\n </Provider>\n )\n}\n\nIsolationProvider.CommitButton = IsolationCommitButton\nIsolationProvider._supportsSpacingProps = undefined\n\nexport default IsolationProvider\n"],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  .dnb-spacing .dnb-forms-main-heading.dnb-h--large:not([class*=space__]) {
5
5
  margin: 0;
6
6
  }
7
- @media screen and (min-width: 40.0625em) {
7
+ @media screen and (min-width: 40.00625em) {
8
8
  .dnb-forms-main-heading:has(+ .dnb-flex-stack > .dnb-card, + .dnb-card):not([class*=space__left]) {
9
9
  margin-left: var(--spacing-medium);
10
10
  }
@@ -1 +1 @@
1
- .dnb-spacing .dnb-forms-main-heading.dnb-h--large:not([class*=space__]){margin:0}@media screen and (min-width:40.0625em){.dnb-forms-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__left]){margin-left:var(--spacing-medium)}}.dnb-forms-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__bottom]){margin-bottom:var(--spacing-small)}
1
+ .dnb-spacing .dnb-forms-main-heading.dnb-h--large:not([class*=space__]){margin:0}@media screen and (min-width:40.00625em){.dnb-forms-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__left]){margin-left:var(--spacing-medium)}}.dnb-forms-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__bottom]){margin-bottom:var(--spacing-small)}
@@ -3,6 +3,7 @@ import { SectionContextState } from './SectionContext';
3
3
  import type { Props as DataContextProps } from '../../DataContext/Provider';
4
4
  import type { ContainerMode } from './containers/SectionContainer';
5
5
  import type { FieldBlockProps, Path, FieldProps } from '../../types';
6
+ import type { JsonObject } from '../../utils/json-pointer';
6
7
  export type OverwritePropsDefaults = {
7
8
  [key: Path]: (FieldProps & FieldBlockProps) | OverwritePropsDefaults;
8
9
  };
@@ -36,7 +37,7 @@ export type SectionProps<overwriteProps = OverwritePropsDefaults> = {
36
37
  * Can be `fieldSchema`, `sectionSchema` or `contextSchema.
37
38
  */
38
39
  errorPrioritization?: SectionContextState['errorPrioritization'];
39
- } & Pick<DataContextProps<unknown>, 'data' | 'defaultData' | 'onChange' | 'translations'>;
40
+ } & Pick<DataContextProps<JsonObject>, 'data' | 'defaultData' | 'onChange' | 'translations'>;
40
41
  export type LocalProps = SectionProps & {
41
42
  children: React.ReactNode;
42
43
  };
@@ -9,7 +9,7 @@ var _react = _interopRequireWildcard(require("react"));
9
9
  var _SectionContext = _interopRequireDefault(require("./SectionContext"));
10
10
  var _Context = _interopRequireDefault(require("../../DataContext/Context"));
11
11
  var _Provider = _interopRequireDefault(require("../../DataContext/Provider/Provider"));
12
- var _FieldProps = _interopRequireDefault(require("../FieldProps"));
12
+ var _Provider2 = _interopRequireDefault(require("../../Field/Provider"));
13
13
  var _SectionContainerProvider = _interopRequireDefault(require("./containers/SectionContainerProvider"));
14
14
  var _ViewContainer = _interopRequireDefault(require("./ViewContainer"));
15
15
  var _EditContainer = _interopRequireDefault(require("./EditContainer"));
@@ -76,7 +76,7 @@ function SectionComponent(props) {
76
76
  }, _react.default.createElement(_SectionContainerProvider.default, {
77
77
  validateInitially: validateInitially,
78
78
  containerMode: containerMode
79
- }, _react.default.createElement(_FieldProps.default, _extends({
79
+ }, _react.default.createElement(_Provider2.default, _extends({
80
80
  overwriteProps: _objectSpread(_objectSpread({}, overwriteProps), nestedProps === null || nestedProps === void 0 ? void 0 : (_nestedProps$overwrit = nestedProps.overwriteProps) === null || _nestedProps$overwrit === void 0 ? void 0 : _nestedProps$overwrit[path.substring(1)]),
81
81
  translations: translations
82
82
  }, fieldProps), children)));
@@ -1 +1 @@
1
- {"version":3,"file":"Section.js","names":["_react","_interopRequireWildcard","require","_SectionContext","_interopRequireDefault","_Context","_Provider","_FieldProps","_SectionContainerProvider","_ViewContainer","_EditContainer","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SectionComponent","props","_path$startsWith","_nestedProps$overwrit","path","overwriteProps","translations","required","data","defaultData","validateInitially","containerMode","onChange","errorPrioritization","children","startsWith","Error","hasContext","addOnChangeHandler","useContext","DataContext","nestedPath","nestedProps","SectionContext","handleChange","useCallback","_len","args","Array","_key","identifier","useMemo","fieldProps","createElement","Provider","substring","ViewContainer","EditContainer","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Section/Section.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport SectionContext, { SectionContextState } from './SectionContext'\nimport DataContext from '../../DataContext/Context'\nimport Provider from '../../DataContext/Provider/Provider'\nimport FieldPropsProvider from '../FieldProps'\nimport SectionContainerProvider from './containers/SectionContainerProvider'\nimport ViewContainer from './ViewContainer'\nimport EditContainer from './EditContainer'\n\nimport type { Props as DataContextProps } from '../../DataContext/Provider'\nimport type { ContainerMode } from './containers/SectionContainer'\nimport type {\n FieldBlockProps,\n Path,\n FieldProps,\n OnChange,\n} from '../../types'\n\nexport type OverwritePropsDefaults = {\n [key: Path]: (FieldProps & FieldBlockProps) | OverwritePropsDefaults\n}\nexport type SectionProps<overwriteProps = OverwritePropsDefaults> = {\n /**\n * Path to the section.\n * When defined, fields inside the section will get this path as a prefix of their own path.\n */\n path?: Path\n\n /**\n * Overwrite field props for the section.\n */\n overwriteProps?: overwriteProps | OverwritePropsDefaults\n\n /**\n * Makes all fields inside it required.\n */\n required?: boolean\n\n /**\n * If set to `true`, the whole section will be validated initially. All fields will then automatically get `validateInitially` and show their error messages. Can be useful in combination with `containerMode=\"auto\"`.\n */\n validateInitially?: boolean\n\n /**\n * Defines the container mode. Can be `view`, `edit` or `auto`.\n * When set to `auto`, the mode will initially be \"edit\" if fields contain errors.\n * Defaults to `auto`.\n */\n containerMode?: ContainerMode\n\n /**\n * Only for internal use and undocumented for now.\n * Prioritize error techniques for the section.\n * Can be `fieldSchema`, `sectionSchema` or `contextSchema.\n */\n errorPrioritization?: SectionContextState['errorPrioritization']\n} & Pick<\n DataContextProps<unknown>,\n 'data' | 'defaultData' | 'onChange' | 'translations'\n>\n\nexport type LocalProps = SectionProps & {\n children: React.ReactNode\n}\n\nfunction SectionComponent(props: LocalProps) {\n const {\n path,\n overwriteProps,\n translations,\n required,\n data,\n defaultData,\n validateInitially,\n containerMode = 'auto',\n onChange,\n errorPrioritization = ['contextSchema'],\n children,\n } = props\n\n if (path && !path.startsWith?.('/')) {\n throw new Error(`path=\"${path}\" must start with a slash`)\n }\n\n const { hasContext, addOnChangeHandler } = useContext(DataContext)\n\n const { path: nestedPath, props: nestedProps } =\n useContext(SectionContext) || {}\n\n const handleChange = useCallback<OnChange>(\n (...args) => onChange?.(...args),\n [onChange]\n )\n addOnChangeHandler?.(handleChange)\n\n const identifier = useMemo(() => {\n return `${nestedPath && nestedPath !== '/' ? nestedPath : ''}${\n path || ''\n }`\n }, [path, nestedPath])\n const fieldProps = required ? { required: true } : undefined\n\n if (!hasContext) {\n return (\n <Provider data={data} defaultData={defaultData}>\n <SectionComponent {...props} />\n </Provider>\n )\n }\n\n return (\n <SectionContext.Provider\n value={{\n path: identifier,\n errorPrioritization,\n props,\n }}\n >\n <SectionContainerProvider\n validateInitially={validateInitially}\n containerMode={containerMode}\n >\n <FieldPropsProvider\n overwriteProps={{\n ...overwriteProps,\n ...(nestedProps?.overwriteProps?.[\n path.substring(1)\n ] as OverwritePropsDefaults),\n }}\n translations={translations}\n {...fieldProps}\n >\n {children}\n </FieldPropsProvider>\n </SectionContainerProvider>\n </SectionContext.Provider>\n )\n}\n\nSectionComponent.ViewContainer = ViewContainer\nSectionComponent.EditContainer = EditContainer\n\nSectionComponent._supportsSpacingProps = undefined\nexport default SectionComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Section.js","names":["_react","_interopRequireWildcard","require","_SectionContext","_interopRequireDefault","_Context","_Provider","_Provider2","_SectionContainerProvider","_ViewContainer","_EditContainer","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SectionComponent","props","_path$startsWith","_nestedProps$overwrit","path","overwriteProps","translations","required","data","defaultData","validateInitially","containerMode","onChange","errorPrioritization","children","startsWith","Error","hasContext","addOnChangeHandler","useContext","DataContext","nestedPath","nestedProps","SectionContext","handleChange","useCallback","_len","args","Array","_key","identifier","useMemo","fieldProps","createElement","Provider","substring","ViewContainer","EditContainer","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Section/Section.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport SectionContext, { SectionContextState } from './SectionContext'\nimport DataContext from '../../DataContext/Context'\nimport Provider from '../../DataContext/Provider/Provider'\nimport FieldPropsProvider from '../../Field/Provider'\nimport SectionContainerProvider from './containers/SectionContainerProvider'\nimport ViewContainer from './ViewContainer'\nimport EditContainer from './EditContainer'\n\nimport type { Props as DataContextProps } from '../../DataContext/Provider'\nimport type { ContainerMode } from './containers/SectionContainer'\nimport type {\n FieldBlockProps,\n Path,\n FieldProps,\n OnChange,\n} from '../../types'\nimport type { JsonObject } from '../../utils/json-pointer'\n\nexport type OverwritePropsDefaults = {\n [key: Path]: (FieldProps & FieldBlockProps) | OverwritePropsDefaults\n}\nexport type SectionProps<overwriteProps = OverwritePropsDefaults> = {\n /**\n * Path to the section.\n * When defined, fields inside the section will get this path as a prefix of their own path.\n */\n path?: Path\n\n /**\n * Overwrite field props for the section.\n */\n overwriteProps?: overwriteProps | OverwritePropsDefaults\n\n /**\n * Makes all fields inside it required.\n */\n required?: boolean\n\n /**\n * If set to `true`, the whole section will be validated initially. All fields will then automatically get `validateInitially` and show their error messages. Can be useful in combination with `containerMode=\"auto\"`.\n */\n validateInitially?: boolean\n\n /**\n * Defines the container mode. Can be `view`, `edit` or `auto`.\n * When set to `auto`, the mode will initially be \"edit\" if fields contain errors.\n * Defaults to `auto`.\n */\n containerMode?: ContainerMode\n\n /**\n * Only for internal use and undocumented for now.\n * Prioritize error techniques for the section.\n * Can be `fieldSchema`, `sectionSchema` or `contextSchema.\n */\n errorPrioritization?: SectionContextState['errorPrioritization']\n} & Pick<\n DataContextProps<JsonObject>,\n 'data' | 'defaultData' | 'onChange' | 'translations'\n>\n\nexport type LocalProps = SectionProps & {\n children: React.ReactNode\n}\n\nfunction SectionComponent(props: LocalProps) {\n const {\n path,\n overwriteProps,\n translations,\n required,\n data,\n defaultData,\n validateInitially,\n containerMode = 'auto',\n onChange,\n errorPrioritization = ['contextSchema'],\n children,\n } = props\n\n if (path && !path.startsWith?.('/')) {\n throw new Error(`path=\"${path}\" must start with a slash`)\n }\n\n const { hasContext, addOnChangeHandler } = useContext(DataContext)\n\n const { path: nestedPath, props: nestedProps } =\n useContext(SectionContext) || {}\n\n const handleChange = useCallback<OnChange>(\n (...args) => onChange?.(...args),\n [onChange]\n )\n addOnChangeHandler?.(handleChange)\n\n const identifier = useMemo(() => {\n return `${nestedPath && nestedPath !== '/' ? nestedPath : ''}${\n path || ''\n }`\n }, [path, nestedPath])\n const fieldProps = required ? { required: true } : undefined\n\n if (!hasContext) {\n return (\n <Provider data={data} defaultData={defaultData}>\n <SectionComponent {...props} />\n </Provider>\n )\n }\n\n return (\n <SectionContext.Provider\n value={{\n path: identifier,\n errorPrioritization,\n props,\n }}\n >\n <SectionContainerProvider\n validateInitially={validateInitially}\n containerMode={containerMode}\n >\n <FieldPropsProvider\n overwriteProps={{\n ...overwriteProps,\n ...(nestedProps?.overwriteProps?.[\n path.substring(1)\n ] as OverwritePropsDefaults),\n }}\n translations={translations}\n {...fieldProps}\n >\n {children}\n </FieldPropsProvider>\n </SectionContainerProvider>\n </SectionContext.Provider>\n )\n}\n\nSectionComponent.ViewContainer = ViewContainer\nSectionComponent.EditContainer = EditContainer\n\nSectionComponent._supportsSpacingProps = undefined\nexport default SectionComponent\n"],"mappings":"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"}