@dnb/eufemia 10.28.0 → 10.30.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 (828) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
  3. package/cjs/components/autocomplete/Autocomplete.d.ts +19 -5
  4. package/cjs/components/dropdown/Dropdown.d.ts +22 -5
  5. package/cjs/components/height-animation/HeightAnimationInstance.js +5 -0
  6. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  7. package/cjs/components/icon/style/dnb-icon.css +1 -0
  8. package/cjs/components/icon/style/dnb-icon.min.css +1 -1
  9. package/cjs/components/icon/style/dnb-icon.scss +1 -0
  10. package/cjs/components/progress-indicator/ProgressIndicator.d.ts +2 -52
  11. package/cjs/components/progress-indicator/ProgressIndicator.js +27 -14
  12. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  13. package/cjs/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
  14. package/cjs/components/progress-indicator/ProgressIndicatorCircular.js +63 -27
  15. package/cjs/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
  16. package/cjs/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
  17. package/cjs/components/progress-indicator/ProgressIndicatorDocs.js +45 -11
  18. package/cjs/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
  19. package/cjs/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
  20. package/cjs/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
  21. package/cjs/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
  22. package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
  23. package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  24. package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
  25. package/cjs/components/progress-indicator/types.d.ts +95 -0
  26. package/cjs/components/progress-indicator/types.js +11 -0
  27. package/cjs/components/progress-indicator/types.js.map +1 -0
  28. package/cjs/extensions/forms/DataContext/Context.d.ts +7 -2
  29. package/cjs/extensions/forms/DataContext/Context.js +0 -2
  30. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  31. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
  32. package/cjs/extensions/forms/DataContext/Provider/Provider.js +69 -35
  33. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  34. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
  35. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  36. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
  37. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  38. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
  39. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  40. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
  41. package/cjs/extensions/forms/Field/Name/Name.d.ts +10 -0
  42. package/cjs/extensions/forms/Field/Name/Name.js +73 -0
  43. package/cjs/extensions/forms/Field/Name/Name.js.map +1 -0
  44. package/cjs/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
  45. package/cjs/extensions/forms/Field/Name/NameDocs.js +15 -0
  46. package/cjs/extensions/forms/Field/Name/NameDocs.js.map +1 -0
  47. package/cjs/extensions/forms/Field/Name/index.d.ts +2 -0
  48. package/cjs/extensions/forms/Field/Name/index.js +27 -0
  49. package/cjs/extensions/forms/Field/Name/index.js.map +1 -0
  50. package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -2
  51. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  52. package/cjs/extensions/forms/Field/Option/Option.d.ts +2 -0
  53. package/cjs/extensions/forms/Field/Option/Option.js +21 -0
  54. package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
  55. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
  56. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +25 -0
  57. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
  58. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
  59. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  60. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +11 -4
  61. package/cjs/extensions/forms/Field/Selection/Selection.js +20 -32
  62. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  63. package/cjs/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
  64. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +45 -0
  65. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
  66. package/cjs/extensions/forms/Field/String/String.d.ts +2 -2
  67. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  68. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  69. package/cjs/extensions/forms/Field/index.js +7 -0
  70. package/cjs/extensions/forms/Field/index.js.map +1 -1
  71. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
  72. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  73. package/cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
  74. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +80 -0
  75. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
  76. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
  77. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js +15 -0
  78. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
  79. package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
  80. package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js +18 -0
  81. package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
  82. package/cjs/extensions/forms/Form/FieldProps/index.d.ts +2 -0
  83. package/cjs/extensions/forms/Form/FieldProps/index.js +27 -0
  84. package/cjs/extensions/forms/Form/FieldProps/index.js.map +1 -0
  85. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  86. package/cjs/extensions/forms/Form/Handler/Handler.js +18 -4
  87. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  88. package/cjs/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
  89. package/cjs/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
  90. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
  91. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  92. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
  93. package/cjs/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
  94. package/cjs/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
  95. package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
  96. package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
  97. package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
  98. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
  99. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
  100. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
  101. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
  102. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
  103. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
  104. package/cjs/extensions/forms/Form/Visibility/Visibility.js +7 -4
  105. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  106. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
  107. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  108. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  109. package/cjs/extensions/forms/Form/index.js +7 -0
  110. package/cjs/extensions/forms/Form/index.js.map +1 -1
  111. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -4
  112. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  113. package/cjs/extensions/forms/Iterate/Array/Array.js +2 -2
  114. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  115. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
  116. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  117. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  118. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  119. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  120. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  121. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  122. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  123. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
  124. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  125. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
  126. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  127. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
  128. package/cjs/extensions/forms/Value/Boolean/Boolean.js +8 -3
  129. package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  130. package/cjs/extensions/forms/Value/Name/Name.d.ts +10 -0
  131. package/cjs/extensions/forms/Value/Name/Name.js +50 -0
  132. package/cjs/extensions/forms/Value/Name/Name.js.map +1 -0
  133. package/cjs/extensions/forms/Value/Name/index.d.ts +2 -0
  134. package/cjs/extensions/forms/Value/Name/index.js +27 -0
  135. package/cjs/extensions/forms/Value/Name/index.js.map +1 -0
  136. package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
  137. package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +36 -0
  138. package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
  139. package/cjs/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
  140. package/cjs/extensions/forms/Value/OrganizationNumber/index.js +27 -0
  141. package/cjs/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
  142. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
  143. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +41 -0
  144. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
  145. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
  146. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +20 -0
  147. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
  148. package/cjs/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
  149. package/cjs/extensions/forms/Value/PostalCodeAndCity/index.js +27 -0
  150. package/cjs/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
  151. package/cjs/extensions/forms/Value/String/String.js +8 -3
  152. package/cjs/extensions/forms/Value/String/String.js.map +1 -1
  153. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
  154. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  155. package/cjs/extensions/forms/Value/ValueDocs.js +6 -1
  156. package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
  157. package/cjs/extensions/forms/Value/index.d.ts +3 -0
  158. package/cjs/extensions/forms/Value/index.js +21 -0
  159. package/cjs/extensions/forms/Value/index.js.map +1 -1
  160. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +2 -1
  161. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  162. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
  163. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  164. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
  165. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +17 -52
  166. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  167. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
  168. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +53 -0
  169. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
  170. package/cjs/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
  171. package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js +37 -0
  172. package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
  173. package/cjs/extensions/forms/Wizard/Step/Step.js +13 -1
  174. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  175. package/cjs/extensions/forms/Wizard/hooks/useStep.js +5 -2
  176. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  177. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
  178. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  179. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
  180. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +9 -0
  181. package/cjs/extensions/forms/constants/locales/en-GB.js +12 -3
  182. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  183. package/cjs/extensions/forms/constants/locales/en-US.d.ts +9 -0
  184. package/cjs/extensions/forms/constants/locales/index.d.ts +18 -0
  185. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
  186. package/cjs/extensions/forms/constants/locales/nb-NO.js +11 -2
  187. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  188. package/cjs/extensions/forms/hooks/useFieldProps.js +8 -4
  189. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  190. package/cjs/extensions/forms/hooks/useTranslation.js +3 -1
  191. package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
  192. package/cjs/extensions/forms/style/dnb-forms.css +77 -43
  193. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  194. package/cjs/extensions/forms/types.d.ts +3 -2
  195. package/cjs/extensions/forms/types.js.map +1 -1
  196. package/cjs/fragments/drawer-list/DrawerList.d.ts +8 -4
  197. package/cjs/shared/Context.d.ts +4 -4
  198. package/cjs/shared/Context.js.map +1 -1
  199. package/cjs/shared/Eufemia.d.ts +1 -1
  200. package/cjs/shared/Eufemia.js +2 -2
  201. package/cjs/shared/Eufemia.js.map +1 -1
  202. package/cjs/shared/component-helper.d.ts +1 -0
  203. package/cjs/shared/component-helper.js +8 -1
  204. package/cjs/shared/component-helper.js.map +1 -1
  205. package/cjs/shared/helpers/assignPropsWithContext.d.ts +1 -0
  206. package/cjs/shared/helpers/assignPropsWithContext.js +22 -0
  207. package/cjs/shared/helpers/assignPropsWithContext.js.map +1 -0
  208. package/cjs/shared/helpers/extendPropsWithContext.d.ts +1 -0
  209. package/cjs/shared/helpers/extendPropsWithContext.js +1 -0
  210. package/cjs/shared/helpers/extendPropsWithContext.js.map +1 -1
  211. package/cjs/shared/helpers/filterValidProps.d.ts +1 -0
  212. package/cjs/shared/helpers/filterValidProps.js.map +1 -1
  213. package/cjs/shared/helpers/runCssVersionMismatchWarning.js +14 -3
  214. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  215. package/cjs/style/core/scopes.scss +1 -1
  216. package/cjs/style/dnb-ui-basis.css +1 -1
  217. package/cjs/style/dnb-ui-basis.min.css +1 -1
  218. package/cjs/style/dnb-ui-body.css +1 -1
  219. package/cjs/style/dnb-ui-body.min.css +1 -1
  220. package/cjs/style/dnb-ui-components.css +129 -98
  221. package/cjs/style/dnb-ui-components.min.css +2 -2
  222. package/cjs/style/dnb-ui-core.css +1 -1
  223. package/cjs/style/dnb-ui-core.min.css +1 -1
  224. package/cjs/style/dnb-ui-extensions.css +77 -43
  225. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  226. package/cjs/style/dnb-ui-forms.css +77 -43
  227. package/cjs/style/dnb-ui-forms.min.css +1 -1
  228. package/cjs/style/dnb-ui-forms.scss +1 -1
  229. package/cjs/style/themes/eiendom/basis.js +4 -0
  230. package/cjs/style/themes/eiendom/basis.js.map +1 -0
  231. package/cjs/style/themes/eiendom/index.js +5 -0
  232. package/cjs/style/themes/eiendom/index.js.map +1 -0
  233. package/cjs/style/themes/sbanken/basis.js +4 -0
  234. package/cjs/style/themes/sbanken/basis.js.map +1 -0
  235. package/cjs/style/themes/sbanken/index.js +5 -0
  236. package/cjs/style/themes/sbanken/index.js.map +1 -0
  237. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
  238. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  239. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
  240. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  241. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
  242. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  243. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
  244. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  245. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
  246. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  247. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
  248. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  249. package/cjs/style/themes/theme-ui/ui-theme-components.css +205 -141
  250. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  251. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +77 -43
  252. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  253. package/cjs/style/themes/theme-ui/ui-theme-forms.css +77 -43
  254. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  255. package/cjs/style/themes/ui/basis.js +4 -0
  256. package/cjs/style/themes/ui/basis.js.map +1 -0
  257. package/cjs/style/themes/ui/index.js +5 -0
  258. package/cjs/style/themes/ui/index.js.map +1 -0
  259. package/components/aria-live/useAriaLive.d.ts +1 -1
  260. package/components/autocomplete/Autocomplete.d.ts +19 -5
  261. package/components/dropdown/Dropdown.d.ts +22 -5
  262. package/components/height-animation/HeightAnimationInstance.js +5 -0
  263. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  264. package/components/icon/style/dnb-icon.css +1 -0
  265. package/components/icon/style/dnb-icon.min.css +1 -1
  266. package/components/icon/style/dnb-icon.scss +1 -0
  267. package/components/progress-indicator/ProgressIndicator.d.ts +2 -52
  268. package/components/progress-indicator/ProgressIndicator.js +27 -14
  269. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  270. package/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
  271. package/components/progress-indicator/ProgressIndicatorCircular.js +63 -27
  272. package/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
  273. package/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
  274. package/components/progress-indicator/ProgressIndicatorDocs.js +43 -10
  275. package/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
  276. package/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
  277. package/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
  278. package/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
  279. package/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
  280. package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  281. package/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
  282. package/components/progress-indicator/types.d.ts +95 -0
  283. package/components/progress-indicator/types.js +5 -0
  284. package/components/progress-indicator/types.js.map +1 -0
  285. package/es/components/aria-live/useAriaLive.d.ts +1 -1
  286. package/es/components/autocomplete/Autocomplete.d.ts +19 -5
  287. package/es/components/dropdown/Dropdown.d.ts +22 -5
  288. package/es/components/height-animation/HeightAnimationInstance.js +5 -0
  289. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  290. package/es/components/icon/style/dnb-icon.css +1 -0
  291. package/es/components/icon/style/dnb-icon.min.css +1 -1
  292. package/es/components/icon/style/dnb-icon.scss +1 -0
  293. package/es/components/progress-indicator/ProgressIndicator.d.ts +2 -52
  294. package/es/components/progress-indicator/ProgressIndicator.js +27 -14
  295. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  296. package/es/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
  297. package/es/components/progress-indicator/ProgressIndicatorCircular.js +62 -27
  298. package/es/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
  299. package/es/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
  300. package/es/components/progress-indicator/ProgressIndicatorDocs.js +43 -10
  301. package/es/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
  302. package/es/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
  303. package/es/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
  304. package/es/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
  305. package/es/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
  306. package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  307. package/es/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
  308. package/es/components/progress-indicator/types.d.ts +95 -0
  309. package/es/components/progress-indicator/types.js +5 -0
  310. package/es/components/progress-indicator/types.js.map +1 -0
  311. package/es/extensions/forms/DataContext/Context.d.ts +7 -2
  312. package/es/extensions/forms/DataContext/Context.js +0 -2
  313. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  314. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
  315. package/es/extensions/forms/DataContext/Provider/Provider.js +67 -34
  316. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  317. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
  318. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  319. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
  320. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  321. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
  322. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  323. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
  324. package/es/extensions/forms/Field/Name/Name.d.ts +10 -0
  325. package/es/extensions/forms/Field/Name/Name.js +63 -0
  326. package/es/extensions/forms/Field/Name/Name.js.map +1 -0
  327. package/es/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
  328. package/es/extensions/forms/Field/Name/NameDocs.js +8 -0
  329. package/es/extensions/forms/Field/Name/NameDocs.js.map +1 -0
  330. package/es/extensions/forms/Field/Name/index.d.ts +2 -0
  331. package/es/extensions/forms/Field/Name/index.js +3 -0
  332. package/es/extensions/forms/Field/Name/index.js.map +1 -0
  333. package/es/extensions/forms/Field/Number/Number.d.ts +2 -2
  334. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  335. package/es/extensions/forms/Field/Option/Option.d.ts +2 -0
  336. package/es/extensions/forms/Field/Option/Option.js +20 -0
  337. package/es/extensions/forms/Field/Option/Option.js.map +1 -1
  338. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
  339. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +18 -0
  340. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
  341. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
  342. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  343. package/es/extensions/forms/Field/Selection/Selection.d.ts +11 -4
  344. package/es/extensions/forms/Field/Selection/Selection.js +20 -32
  345. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  346. package/es/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
  347. package/es/extensions/forms/Field/Selection/SelectionDocs.js +38 -0
  348. package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
  349. package/es/extensions/forms/Field/String/String.d.ts +2 -2
  350. package/es/extensions/forms/Field/String/String.js.map +1 -1
  351. package/es/extensions/forms/Field/index.d.ts +1 -0
  352. package/es/extensions/forms/Field/index.js +1 -0
  353. package/es/extensions/forms/Field/index.js.map +1 -1
  354. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
  355. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  356. package/es/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
  357. package/es/extensions/forms/Form/FieldProps/FieldProps.js +71 -0
  358. package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
  359. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
  360. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js +7 -0
  361. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
  362. package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
  363. package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js +11 -0
  364. package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
  365. package/es/extensions/forms/Form/FieldProps/index.d.ts +2 -0
  366. package/es/extensions/forms/Form/FieldProps/index.js +3 -0
  367. package/es/extensions/forms/Form/FieldProps/index.js.map +1 -0
  368. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  369. package/es/extensions/forms/Form/Handler/Handler.js +18 -4
  370. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  371. package/es/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
  372. package/es/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
  373. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
  374. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  375. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
  376. package/es/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
  377. package/es/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
  378. package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
  379. package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
  380. package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
  381. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
  382. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
  383. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
  384. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
  385. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
  386. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
  387. package/es/extensions/forms/Form/Visibility/Visibility.js +7 -4
  388. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  389. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
  390. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  391. package/es/extensions/forms/Form/index.d.ts +1 -0
  392. package/es/extensions/forms/Form/index.js +1 -0
  393. package/es/extensions/forms/Form/index.js.map +1 -1
  394. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -4
  395. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  396. package/es/extensions/forms/Iterate/Array/Array.js +2 -2
  397. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  398. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
  399. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  400. package/es/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  401. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  402. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  403. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  404. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  405. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  406. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
  407. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  408. package/es/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
  409. package/es/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  410. package/es/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
  411. package/es/extensions/forms/Value/Boolean/Boolean.js +8 -3
  412. package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  413. package/es/extensions/forms/Value/Name/Name.d.ts +10 -0
  414. package/es/extensions/forms/Value/Name/Name.js +40 -0
  415. package/es/extensions/forms/Value/Name/Name.js.map +1 -0
  416. package/es/extensions/forms/Value/Name/index.d.ts +2 -0
  417. package/es/extensions/forms/Value/Name/index.js +3 -0
  418. package/es/extensions/forms/Value/Name/index.js.map +1 -0
  419. package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
  420. package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +24 -0
  421. package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
  422. package/es/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
  423. package/es/extensions/forms/Value/OrganizationNumber/index.js +3 -0
  424. package/es/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
  425. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
  426. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +31 -0
  427. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
  428. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
  429. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +13 -0
  430. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
  431. package/es/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
  432. package/es/extensions/forms/Value/PostalCodeAndCity/index.js +3 -0
  433. package/es/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
  434. package/es/extensions/forms/Value/String/String.js +8 -3
  435. package/es/extensions/forms/Value/String/String.js.map +1 -1
  436. package/es/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
  437. package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  438. package/es/extensions/forms/Value/ValueDocs.js +6 -1
  439. package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
  440. package/es/extensions/forms/Value/index.d.ts +3 -0
  441. package/es/extensions/forms/Value/index.js +3 -0
  442. package/es/extensions/forms/Value/index.js.map +1 -1
  443. package/es/extensions/forms/ValueBlock/ValueBlock.js +2 -1
  444. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  445. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
  446. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  447. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
  448. package/es/extensions/forms/Wizard/Container/WizardContainer.js +17 -51
  449. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  450. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
  451. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +46 -0
  452. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
  453. package/es/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
  454. package/es/extensions/forms/Wizard/Container/useStepAnimation.js +29 -0
  455. package/es/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
  456. package/es/extensions/forms/Wizard/Step/Step.js +14 -2
  457. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  458. package/es/extensions/forms/Wizard/hooks/useStep.js +3 -2
  459. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  460. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
  461. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  462. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
  463. package/es/extensions/forms/constants/locales/en-GB.d.ts +9 -0
  464. package/es/extensions/forms/constants/locales/en-GB.js +12 -3
  465. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  466. package/es/extensions/forms/constants/locales/en-US.d.ts +9 -0
  467. package/es/extensions/forms/constants/locales/index.d.ts +18 -0
  468. package/es/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
  469. package/es/extensions/forms/constants/locales/nb-NO.js +11 -2
  470. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  471. package/es/extensions/forms/hooks/useFieldProps.js +8 -3
  472. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  473. package/es/extensions/forms/hooks/useTranslation.js +3 -1
  474. package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
  475. package/es/extensions/forms/style/dnb-forms.css +77 -43
  476. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  477. package/es/extensions/forms/types.d.ts +3 -2
  478. package/es/extensions/forms/types.js.map +1 -1
  479. package/es/fragments/drawer-list/DrawerList.d.ts +8 -4
  480. package/es/shared/Context.d.ts +4 -4
  481. package/es/shared/Context.js.map +1 -1
  482. package/es/shared/Eufemia.d.ts +1 -1
  483. package/es/shared/Eufemia.js +2 -2
  484. package/es/shared/Eufemia.js.map +1 -1
  485. package/es/shared/component-helper.d.ts +1 -0
  486. package/es/shared/component-helper.js +2 -1
  487. package/es/shared/component-helper.js.map +1 -1
  488. package/es/shared/helpers/assignPropsWithContext.d.ts +1 -0
  489. package/es/shared/helpers/assignPropsWithContext.js +12 -0
  490. package/es/shared/helpers/assignPropsWithContext.js.map +1 -0
  491. package/es/shared/helpers/extendPropsWithContext.d.ts +1 -0
  492. package/es/shared/helpers/extendPropsWithContext.js +1 -1
  493. package/es/shared/helpers/extendPropsWithContext.js.map +1 -1
  494. package/es/shared/helpers/filterValidProps.d.ts +1 -0
  495. package/es/shared/helpers/filterValidProps.js.map +1 -1
  496. package/es/shared/helpers/runCssVersionMismatchWarning.js +14 -3
  497. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  498. package/es/style/core/scopes.scss +1 -1
  499. package/es/style/dnb-ui-basis.css +1 -1
  500. package/es/style/dnb-ui-basis.min.css +1 -1
  501. package/es/style/dnb-ui-body.css +1 -1
  502. package/es/style/dnb-ui-body.min.css +1 -1
  503. package/es/style/dnb-ui-components.css +129 -98
  504. package/es/style/dnb-ui-components.min.css +2 -2
  505. package/es/style/dnb-ui-core.css +1 -1
  506. package/es/style/dnb-ui-core.min.css +1 -1
  507. package/es/style/dnb-ui-extensions.css +77 -43
  508. package/es/style/dnb-ui-extensions.min.css +1 -1
  509. package/es/style/dnb-ui-forms.css +77 -43
  510. package/es/style/dnb-ui-forms.min.css +1 -1
  511. package/es/style/dnb-ui-forms.scss +1 -1
  512. package/es/style/themes/eiendom/basis.js +1 -0
  513. package/es/style/themes/eiendom/basis.js.map +1 -0
  514. package/es/style/themes/eiendom/index.js +3 -0
  515. package/es/style/themes/eiendom/index.js.map +1 -0
  516. package/es/style/themes/sbanken/basis.js +1 -0
  517. package/es/style/themes/sbanken/basis.js.map +1 -0
  518. package/es/style/themes/sbanken/index.d.ts +1 -0
  519. package/es/style/themes/sbanken/index.js +3 -0
  520. package/es/style/themes/sbanken/index.js.map +1 -0
  521. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
  522. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  523. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
  524. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  525. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
  526. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  527. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
  528. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  529. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
  530. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  531. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
  532. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  533. package/es/style/themes/theme-ui/ui-theme-components.css +205 -141
  534. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  535. package/es/style/themes/theme-ui/ui-theme-extensions.css +77 -43
  536. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  537. package/es/style/themes/theme-ui/ui-theme-forms.css +77 -43
  538. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  539. package/es/style/themes/ui/basis.d.ts +1 -0
  540. package/es/style/themes/ui/basis.js +1 -0
  541. package/es/style/themes/ui/basis.js.map +1 -0
  542. package/es/style/themes/ui/index.d.ts +1 -0
  543. package/es/style/themes/ui/index.js +3 -0
  544. package/es/style/themes/ui/index.js.map +1 -0
  545. package/esm/dnb-ui-basis.min.mjs +1 -1
  546. package/esm/dnb-ui-components.min.mjs +1 -1
  547. package/esm/dnb-ui-elements.min.mjs +1 -1
  548. package/esm/dnb-ui-extensions.min.mjs +3 -3
  549. package/esm/dnb-ui-lib.min.mjs +1 -1
  550. package/extensions/forms/DataContext/Context.d.ts +7 -2
  551. package/extensions/forms/DataContext/Context.js +0 -2
  552. package/extensions/forms/DataContext/Context.js.map +1 -1
  553. package/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
  554. package/extensions/forms/DataContext/Provider/Provider.js +69 -35
  555. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  556. package/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
  557. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  558. package/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
  559. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  560. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
  561. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  562. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
  563. package/extensions/forms/Field/Name/Name.d.ts +10 -0
  564. package/extensions/forms/Field/Name/Name.js +63 -0
  565. package/extensions/forms/Field/Name/Name.js.map +1 -0
  566. package/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
  567. package/extensions/forms/Field/Name/NameDocs.js +8 -0
  568. package/extensions/forms/Field/Name/NameDocs.js.map +1 -0
  569. package/extensions/forms/Field/Name/index.d.ts +2 -0
  570. package/extensions/forms/Field/Name/index.js +3 -0
  571. package/extensions/forms/Field/Name/index.js.map +1 -0
  572. package/extensions/forms/Field/Number/Number.d.ts +2 -2
  573. package/extensions/forms/Field/Number/Number.js.map +1 -1
  574. package/extensions/forms/Field/Option/Option.d.ts +2 -0
  575. package/extensions/forms/Field/Option/Option.js +20 -0
  576. package/extensions/forms/Field/Option/Option.js.map +1 -1
  577. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
  578. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +18 -0
  579. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
  580. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
  581. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  582. package/extensions/forms/Field/Selection/Selection.d.ts +11 -4
  583. package/extensions/forms/Field/Selection/Selection.js +20 -32
  584. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  585. package/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
  586. package/extensions/forms/Field/Selection/SelectionDocs.js +38 -0
  587. package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
  588. package/extensions/forms/Field/String/String.d.ts +2 -2
  589. package/extensions/forms/Field/String/String.js.map +1 -1
  590. package/extensions/forms/Field/index.d.ts +1 -0
  591. package/extensions/forms/Field/index.js +1 -0
  592. package/extensions/forms/Field/index.js.map +1 -1
  593. package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
  594. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  595. package/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
  596. package/extensions/forms/Form/FieldProps/FieldProps.js +71 -0
  597. package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
  598. package/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
  599. package/extensions/forms/Form/FieldProps/FieldPropsContext.js +7 -0
  600. package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
  601. package/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
  602. package/extensions/forms/Form/FieldProps/FieldPropsDocs.js +11 -0
  603. package/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
  604. package/extensions/forms/Form/FieldProps/index.d.ts +2 -0
  605. package/extensions/forms/Form/FieldProps/index.js +3 -0
  606. package/extensions/forms/Form/FieldProps/index.js.map +1 -0
  607. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  608. package/extensions/forms/Form/Handler/Handler.js +18 -4
  609. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  610. package/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
  611. package/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
  612. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
  613. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  614. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
  615. package/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
  616. package/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
  617. package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
  618. package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
  619. package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
  620. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
  621. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
  622. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
  623. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
  624. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
  625. package/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
  626. package/extensions/forms/Form/Visibility/Visibility.js +7 -4
  627. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  628. package/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
  629. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  630. package/extensions/forms/Form/index.d.ts +1 -0
  631. package/extensions/forms/Form/index.js +1 -0
  632. package/extensions/forms/Form/index.js.map +1 -1
  633. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -4
  634. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  635. package/extensions/forms/Iterate/Array/Array.js +2 -2
  636. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  637. package/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
  638. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  639. package/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  640. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  641. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  642. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  643. package/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  644. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  645. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
  646. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  647. package/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
  648. package/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  649. package/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
  650. package/extensions/forms/Value/Boolean/Boolean.js +8 -3
  651. package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  652. package/extensions/forms/Value/Name/Name.d.ts +10 -0
  653. package/extensions/forms/Value/Name/Name.js +40 -0
  654. package/extensions/forms/Value/Name/Name.js.map +1 -0
  655. package/extensions/forms/Value/Name/index.d.ts +2 -0
  656. package/extensions/forms/Value/Name/index.js +3 -0
  657. package/extensions/forms/Value/Name/index.js.map +1 -0
  658. package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
  659. package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +24 -0
  660. package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
  661. package/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
  662. package/extensions/forms/Value/OrganizationNumber/index.js +3 -0
  663. package/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
  664. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
  665. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +31 -0
  666. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
  667. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
  668. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +13 -0
  669. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
  670. package/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
  671. package/extensions/forms/Value/PostalCodeAndCity/index.js +3 -0
  672. package/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
  673. package/extensions/forms/Value/String/String.js +8 -3
  674. package/extensions/forms/Value/String/String.js.map +1 -1
  675. package/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
  676. package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  677. package/extensions/forms/Value/ValueDocs.js +6 -1
  678. package/extensions/forms/Value/ValueDocs.js.map +1 -1
  679. package/extensions/forms/Value/index.d.ts +3 -0
  680. package/extensions/forms/Value/index.js +3 -0
  681. package/extensions/forms/Value/index.js.map +1 -1
  682. package/extensions/forms/ValueBlock/ValueBlock.js +2 -1
  683. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  684. package/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
  685. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  686. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
  687. package/extensions/forms/Wizard/Container/WizardContainer.js +17 -52
  688. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  689. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
  690. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +47 -0
  691. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
  692. package/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
  693. package/extensions/forms/Wizard/Container/useStepAnimation.js +30 -0
  694. package/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
  695. package/extensions/forms/Wizard/Step/Step.js +14 -2
  696. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  697. package/extensions/forms/Wizard/hooks/useStep.js +3 -2
  698. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  699. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
  700. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  701. package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
  702. package/extensions/forms/constants/locales/en-GB.d.ts +9 -0
  703. package/extensions/forms/constants/locales/en-GB.js +12 -3
  704. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  705. package/extensions/forms/constants/locales/en-US.d.ts +9 -0
  706. package/extensions/forms/constants/locales/index.d.ts +18 -0
  707. package/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
  708. package/extensions/forms/constants/locales/nb-NO.js +11 -2
  709. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  710. package/extensions/forms/hooks/useFieldProps.js +8 -4
  711. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  712. package/extensions/forms/hooks/useTranslation.js +3 -1
  713. package/extensions/forms/hooks/useTranslation.js.map +1 -1
  714. package/extensions/forms/style/dnb-forms.css +77 -43
  715. package/extensions/forms/style/dnb-forms.min.css +1 -1
  716. package/extensions/forms/types.d.ts +3 -2
  717. package/extensions/forms/types.js.map +1 -1
  718. package/fragments/drawer-list/DrawerList.d.ts +8 -4
  719. package/package.json +1 -1
  720. package/shared/Context.d.ts +4 -4
  721. package/shared/Context.js.map +1 -1
  722. package/shared/Eufemia.d.ts +1 -1
  723. package/shared/Eufemia.js +2 -2
  724. package/shared/Eufemia.js.map +1 -1
  725. package/shared/component-helper.d.ts +1 -0
  726. package/shared/component-helper.js +2 -1
  727. package/shared/component-helper.js.map +1 -1
  728. package/shared/helpers/assignPropsWithContext.d.ts +1 -0
  729. package/shared/helpers/assignPropsWithContext.js +16 -0
  730. package/shared/helpers/assignPropsWithContext.js.map +1 -0
  731. package/shared/helpers/extendPropsWithContext.d.ts +1 -0
  732. package/shared/helpers/extendPropsWithContext.js +1 -1
  733. package/shared/helpers/extendPropsWithContext.js.map +1 -1
  734. package/shared/helpers/filterValidProps.d.ts +1 -0
  735. package/shared/helpers/filterValidProps.js.map +1 -1
  736. package/shared/helpers/runCssVersionMismatchWarning.js +14 -3
  737. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  738. package/style/core/scopes.scss +1 -1
  739. package/style/dnb-ui-basis.css +1 -1
  740. package/style/dnb-ui-basis.min.css +1 -1
  741. package/style/dnb-ui-body.css +1 -1
  742. package/style/dnb-ui-body.min.css +1 -1
  743. package/style/dnb-ui-components.css +129 -98
  744. package/style/dnb-ui-components.min.css +2 -2
  745. package/style/dnb-ui-core.css +1 -1
  746. package/style/dnb-ui-core.min.css +1 -1
  747. package/style/dnb-ui-extensions.css +77 -43
  748. package/style/dnb-ui-extensions.min.css +1 -1
  749. package/style/dnb-ui-forms.css +77 -43
  750. package/style/dnb-ui-forms.min.css +1 -1
  751. package/style/dnb-ui-forms.scss +1 -1
  752. package/style/themes/eiendom/basis.d.ts +1 -0
  753. package/style/themes/eiendom/basis.js +1 -0
  754. package/style/themes/eiendom/basis.js.map +1 -0
  755. package/style/themes/eiendom/index.d.ts +1 -0
  756. package/style/themes/eiendom/index.js +3 -0
  757. package/style/themes/eiendom/index.js.map +1 -0
  758. package/style/themes/sbanken/basis.d.ts +1 -0
  759. package/style/themes/sbanken/basis.js +1 -0
  760. package/style/themes/sbanken/basis.js.map +1 -0
  761. package/style/themes/sbanken/index.d.ts +1 -0
  762. package/style/themes/sbanken/index.js +3 -0
  763. package/style/themes/sbanken/index.js.map +1 -0
  764. package/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
  765. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  766. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
  767. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  768. package/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
  769. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  770. package/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
  771. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  772. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
  773. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  774. package/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
  775. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  776. package/style/themes/theme-ui/ui-theme-components.css +205 -141
  777. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  778. package/style/themes/theme-ui/ui-theme-extensions.css +77 -43
  779. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  780. package/style/themes/theme-ui/ui-theme-forms.css +77 -43
  781. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  782. package/style/themes/ui/basis.d.ts +1 -0
  783. package/style/themes/ui/basis.js +1 -0
  784. package/style/themes/ui/basis.js.map +1 -0
  785. package/style/themes/ui/index.d.ts +1 -0
  786. package/style/themes/ui/index.js +3 -0
  787. package/style/themes/ui/index.js.map +1 -0
  788. package/umd/dnb-ui-basis.min.js +1 -1
  789. package/umd/dnb-ui-components.min.js +1 -1
  790. package/umd/dnb-ui-elements.min.js +1 -1
  791. package/umd/dnb-ui-extensions.min.js +3 -3
  792. package/umd/dnb-ui-lib.min.js +1 -1
  793. package/cjs/style/themes/eiendom.js +0 -5
  794. package/cjs/style/themes/eiendom.js.map +0 -1
  795. package/cjs/style/themes/sbanken.js +0 -5
  796. package/cjs/style/themes/sbanken.js.map +0 -1
  797. package/cjs/style/themes/ui.js +0 -5
  798. package/cjs/style/themes/ui.js.map +0 -1
  799. package/es/style/themes/eiendom.js +0 -3
  800. package/es/style/themes/eiendom.js.map +0 -1
  801. package/es/style/themes/sbanken.js +0 -3
  802. package/es/style/themes/sbanken.js.map +0 -1
  803. package/es/style/themes/ui.js +0 -3
  804. package/es/style/themes/ui.js.map +0 -1
  805. package/style/themes/eiendom.js +0 -3
  806. package/style/themes/eiendom.js.map +0 -1
  807. package/style/themes/sbanken.js +0 -3
  808. package/style/themes/sbanken.js.map +0 -1
  809. package/style/themes/ui.js +0 -3
  810. package/style/themes/ui.js.map +0 -1
  811. /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
  812. /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
  813. /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
  814. /package/cjs/style/themes/{eiendom.d.ts → eiendom/basis.d.ts} +0 -0
  815. /package/cjs/style/themes/{sbanken.d.ts → eiendom/index.d.ts} +0 -0
  816. /package/cjs/style/themes/{ui.d.ts → sbanken/basis.d.ts} +0 -0
  817. /package/{es/style/themes/eiendom.d.ts → cjs/style/themes/sbanken/index.d.ts} +0 -0
  818. /package/{es/style/themes/sbanken.d.ts → cjs/style/themes/ui/basis.d.ts} +0 -0
  819. /package/{es/style/themes/ui.d.ts → cjs/style/themes/ui/index.d.ts} +0 -0
  820. /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
  821. /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
  822. /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
  823. /package/{style/themes/eiendom.d.ts → es/style/themes/eiendom/basis.d.ts} +0 -0
  824. /package/{style/themes/sbanken.d.ts → es/style/themes/eiendom/index.d.ts} +0 -0
  825. /package/{style/themes/ui.d.ts → es/style/themes/sbanken/basis.d.ts} +0 -0
  826. /package/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
  827. /package/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
  828. /package/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
@@ -14,6 +14,9 @@ export type FilterDataHandler<Data> = (data: Data, filter: FilterData) => Partia
14
14
  export type FilterData = (path: Path, value: any, props: FieldProps, internal: {
15
15
  error: Error | undefined;
16
16
  }) => boolean | undefined;
17
+ export type TransformData = (path: Path, value: any, props: FieldProps, internal: {
18
+ error: Error | undefined;
19
+ }) => any;
17
20
  export interface ContextState {
18
21
  id?: Identifier;
19
22
  hasContext: boolean;
@@ -27,7 +30,8 @@ export interface ContextState {
27
30
  handlePathChangeUnvalidated: (path: Path, value: any) => void;
28
31
  updateDataValue: (path: Path, value: any) => void;
29
32
  setData: (data: any) => void;
30
- filterDataHandler: (data: any, filter: FilterData) => any;
33
+ mutateDataHandler?: (data: any, mutate: TransformData) => any;
34
+ filterDataHandler?: (data: any, filter: FilterData) => any;
31
35
  validateData: () => void;
32
36
  handleSubmit: (props?: HandleSubmitProps) => any;
33
37
  scrollToTop: () => void;
@@ -55,7 +59,8 @@ export interface ContextState {
55
59
  ajvInstance: Ajv;
56
60
  contextErrorMessages: CustomErrorMessagesWithPaths;
57
61
  schema: AllJSONSchemaVersions;
58
- disabled: boolean;
62
+ disabled?: boolean;
63
+ required?: boolean;
59
64
  submitState: Partial<EventStateObject>;
60
65
  _isInsideFormElement?: boolean;
61
66
  props: ProviderProps<unknown>;
@@ -4,13 +4,11 @@ export const defaultContextState = {
4
4
  hasContext: false,
5
5
  data: undefined,
6
6
  schema: undefined,
7
- disabled: undefined,
8
7
  submitState: undefined,
9
8
  handlePathChange: () => null,
10
9
  handlePathChangeUnvalidated: () => null,
11
10
  updateDataValue: () => null,
12
11
  setData: () => null,
13
- filterDataHandler: () => null,
14
12
  validateData: () => null,
15
13
  handleSubmit: () => null,
16
14
  scrollToTop: () => null,
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","names":["React","makeAjvInstance","defaultContextState","hasContext","data","undefined","schema","disabled","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","filterDataHandler","validateData","handleSubmit","scrollToTop","showAllErrors","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","mountedFieldPaths","handleMountField","handleUnMountField","hasErrors","hasFieldState","checkFieldStateFor","setFieldState","setFieldError","setProps","ajvInstance","contextErrorMessages","_isInsideFormElement","props","Context","createContext"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path: Path\n type: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterData = (\n path: Path,\n value: any,\n props: FieldProps,\n internal: {\n error: Error | undefined\n }\n) => boolean | undefined\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n filterDataHandler: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n // Error status\n showAllErrors: boolean\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n checkFieldStateFor: (path: Path, state: SubmitState) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n // Mounted fields - Components telling the provider what fields is on screen at any time\n mountedFieldPaths: string[]\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n formState: SubmitState\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setProps: (path: Path, props: any) => void\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n disabled: boolean\n submitState: Partial<EventStateObject>\n _isInsideFormElement?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n disabled: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n filterDataHandler: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n mountedFieldPaths: [],\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n checkFieldStateFor: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n setProps: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n _isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAcC,eAAe,QAAQ,cAAc;AAwGnD,OAAO,MAAMC,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,QAAQ,EAAEF,SAAS;EACnBG,WAAW,EAAEH,SAAS;EACtBI,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,iBAAiB,EAAEA,CAAA,KAAM,IAAI;EAC7BC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,SAAS,EAAEb,SAAS;EACpBc,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,iBAAiB,EAAE,EAAE;EACrBC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,kBAAkB,EAAEA,CAAA,KAAM,KAAK;EAC/BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,QAAQ,EAAEA,CAAA,KAAM,IAAI;EACpBC,WAAW,EAAEhC,eAAe,CAAC,CAAC;EAC9BiC,oBAAoB,EAAE7B,SAAS;EAC/B8B,oBAAoB,EAAE,KAAK;EAC3BC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,OAAO,GAAGrC,KAAK,CAACsC,aAAa,CAAepC,mBAAmB,CAAC;AAEtE,eAAemC,OAAO"}
1
+ {"version":3,"file":"Context.js","names":["React","makeAjvInstance","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","mountedFieldPaths","handleMountField","handleUnMountField","hasErrors","hasFieldState","checkFieldStateFor","setFieldState","setFieldError","setProps","ajvInstance","contextErrorMessages","_isInsideFormElement","props","Context","createContext"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path: Path\n type: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterData = (\n path: Path,\n value: any,\n props: FieldProps,\n internal: {\n error: Error | undefined\n }\n) => boolean | undefined\nexport type TransformData = (\n path: Path,\n value: any,\n props: FieldProps,\n internal: {\n error: Error | undefined\n }\n) => any\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n // Error status\n showAllErrors: boolean\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n checkFieldStateFor: (path: Path, state: SubmitState) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n // Mounted fields - Components telling the provider what fields is on screen at any time\n mountedFieldPaths: string[]\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n formState: SubmitState\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setProps: (path: Path, props: any) => void\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n _isInsideFormElement?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n mountedFieldPaths: [],\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n checkFieldStateFor: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n setProps: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n _isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAcC,eAAe,QAAQ,cAAc;AAkHnD,OAAO,MAAMC,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,SAAS,EAAEX,SAAS;EACpBY,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,iBAAiB,EAAE,EAAE;EACrBC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,kBAAkB,EAAEA,CAAA,KAAM,KAAK;EAC/BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,QAAQ,EAAEA,CAAA,KAAM,IAAI;EACpBC,WAAW,EAAE9B,eAAe,CAAC,CAAC;EAC9B+B,oBAAoB,EAAE3B,SAAS;EAC/B4B,oBAAoB,EAAE,KAAK;EAC3BC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,OAAO,GAAGnC,KAAK,CAACoC,aAAa,CAAelC,mBAAmB,CAAC;AAEtE,eAAeiC,OAAO"}
@@ -2,7 +2,8 @@ import React from 'react';
2
2
  import { JsonObject } from 'json-pointer';
3
3
  import { Ajv } from '../../utils/ajv';
4
4
  import { CustomErrorMessagesWithPaths, AllJSONSchemaVersions, Path, OnSubmit, OnChange, EventReturnWithStateObject } from '../../types';
5
- import { FilterData } from '../Context';
5
+ import { ContextProps } from '../../../../shared/Context';
6
+ import { FilterData, TransformData } from '../Context';
6
7
  export interface Props<Data extends JsonObject> {
7
8
  /**
8
9
  * Unique ID to communicate with the hook Form.useData
@@ -15,11 +16,11 @@ export interface Props<Data extends JsonObject> {
15
16
  /**
16
17
  * Default source data, only used if no other source is available, and not leading to updates if changed after mount
17
18
  */
18
- defaultData?: Partial<Data>;
19
+ defaultData?: Data;
19
20
  /**
20
21
  * Source data, will be used instead of defaultData, and leading to updates if changed after mount
21
22
  */
22
- data?: Partial<Data>;
23
+ data?: Data;
23
24
  /**
24
25
  * JSON Schema to validate the data against.
25
26
  */
@@ -33,9 +34,21 @@ export interface Props<Data extends JsonObject> {
33
34
  */
34
35
  errorMessages?: CustomErrorMessagesWithPaths;
35
36
  /**
36
- * Filter the internal data context based on your criteria: `(path, value, props) => !props?.disabled`. It will iterate on each data entry.
37
+ * Filter the `onSubmit` output data, based on your criteria: `(path, value, props, internal) => !props?.disabled`. It will iterate on each data entry (/path). Return false to exclude the entry.
38
+ */
39
+ filterSubmitData?: FilterData;
40
+ /**
41
+ * @deprecated Use `filterSubmitData` instead
37
42
  */
38
43
  filterData?: FilterData;
44
+ /**
45
+ * Transform the data context (internally as well) based on your criteria: `(path, value, props, internal) => 'new value'`. It will iterate on each data entry (/path).
46
+ */
47
+ transformIn?: TransformData;
48
+ /**
49
+ * Mutate the data before it enters onSubmit or onChange based on your criteria: `(path, value, props, internal) => 'new value'`. It will iterate on each data entry (/path).
50
+ */
51
+ transformOut?: TransformData;
39
52
  /**
40
53
  * Change handler for the whole data set.
41
54
  * You can provide an async function to show an indicator on the current label during a field change.
@@ -49,7 +62,7 @@ export interface Props<Data extends JsonObject> {
49
62
  * Will emit on a form submit – if validation has passed.
50
63
  * You can provide an async function to shows a submit indicator during submit. All form elements will be disabled during the submit.
51
64
  */
52
- onSubmit?: OnSubmit;
65
+ onSubmit?: OnSubmit<Data>;
53
66
  /**
54
67
  * Submit was requested, but data was invalid
55
68
  */
@@ -78,6 +91,18 @@ export interface Props<Data extends JsonObject> {
78
91
  * Key for caching the data in session storage
79
92
  */
80
93
  sessionStorageId?: string;
94
+ /**
95
+ * Locale to use for all nested Eufemia components
96
+ */
97
+ locale?: ContextProps['locale'];
98
+ /**
99
+ * Provide your own translations. Use the same format as defined in the translation files
100
+ */
101
+ translations?: ContextProps['translations'];
102
+ /**
103
+ * Make all fields required
104
+ */
105
+ required?: boolean;
81
106
  children: React.ReactNode;
82
107
  }
83
108
  export default function Provider<Data extends JsonObject>(props: Props<Data>): import("react/jsx-runtime").JSX.Element;
@@ -2,13 +2,14 @@
2
2
 
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- const _excluded = ["id", "globalStatusId", "defaultData", "data", "schema", "onChange", "onPathChange", "onSubmit", "onSubmitRequest", "onSubmitComplete", "scrollTopOnSubmit", "minimumAsyncBehaviorTime", "asyncSubmitTimeout", "sessionStorageId", "ajvInstance", "filterData", "errorMessages", "children"];
5
+ const _excluded = ["id", "globalStatusId", "defaultData", "data", "schema", "onChange", "onPathChange", "onSubmit", "onSubmitRequest", "onSubmitComplete", "scrollTopOnSubmit", "minimumAsyncBehaviorTime", "asyncSubmitTimeout", "sessionStorageId", "ajvInstance", "transformIn", "transformOut", "filterSubmitData", "filterData", "locale", "translations", "required", "errorMessages", "children"];
6
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
7
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
8
  import React, { useRef, useMemo, useCallback, useReducer, useEffect } from 'react';
9
9
  import pointer from 'json-pointer';
10
10
  import { makeAjvInstance, ajvErrorsToFormErrors } from '../../utils/ajv';
11
- import SharedProvider from '../../../../shared/Provider';
11
+ import { debounce } from '../../../../shared/helpers';
12
+ import FieldProvider from '../../Form/FieldProps';
12
13
  import useMountEffect from '../../../../shared/helpers/useMountEffect';
13
14
  import useUpdateEffect from '../../../../shared/helpers/useUpdateEffect';
14
15
  import { isAsync } from '../../../../shared/helpers/isAsync';
@@ -19,7 +20,7 @@ import structuredClone from '@ungap/structured-clone';
19
20
  const useLayoutEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;
20
21
  const isArrayJsonPointer = /^\/\d+(\/|$)/;
21
22
  export default function Provider(props) {
22
- var _sharedAttachments$da, _rest$disabled;
23
+ var _sharedAttachments$da;
23
24
  const [, forceUpdate] = useReducer(() => ({}), {});
24
25
  const {
25
26
  id,
@@ -37,7 +38,13 @@ export default function Provider(props) {
37
38
  asyncSubmitTimeout,
38
39
  sessionStorageId,
39
40
  ajvInstance,
41
+ transformIn,
42
+ transformOut,
43
+ filterSubmitData,
40
44
  filterData,
45
+ locale,
46
+ translations,
47
+ required,
41
48
  errorMessages: contextErrorMessages,
42
49
  children
43
50
  } = props,
@@ -117,25 +124,41 @@ export default function Provider(props) {
117
124
  forceUpdate();
118
125
  }
119
126
  }, []);
120
- const filterDataHandler = useCallback(function (data) {
121
- let filter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : filterData;
122
- if (filter) {
123
- const filtered = _objectSpread({}, data);
127
+ const mutateDataHandler = useCallback(function (data, fn) {
128
+ let remove = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
129
+ if (fn) {
124
130
  Object.entries(fieldPropsRef.current).forEach(_ref => {
125
- var _fieldErrorRef$curren;
126
131
  let [path, props] = _ref;
127
132
  const exists = pointer.has(data, path);
128
- const result = filter(path, exists ? pointer.get(data, path) : undefined, props, {
129
- error: (_fieldErrorRef$curren = fieldErrorRef.current) === null || _fieldErrorRef$curren === void 0 ? void 0 : _fieldErrorRef$curren[path]
130
- });
131
- if (result === false && exists) {
132
- pointer.remove(filtered, path);
133
+ if (exists) {
134
+ var _fieldErrorRef$curren;
135
+ const result = fn(path, pointer.get(data, path), props, {
136
+ error: (_fieldErrorRef$curren = fieldErrorRef.current) === null || _fieldErrorRef$curren === void 0 ? void 0 : _fieldErrorRef$curren[path]
137
+ });
138
+ if (remove) {
139
+ if (result === false) {
140
+ data = structuredClone(data);
141
+ pointer.remove(data, path);
142
+ }
143
+ } else {
144
+ if (typeof result !== 'undefined') {
145
+ data = structuredClone(data);
146
+ pointer.set(data, path, result);
147
+ }
148
+ }
133
149
  }
134
150
  });
135
- return filtered;
151
+ return data;
136
152
  }
137
153
  return data;
138
- }, [filterData]);
154
+ }, []);
155
+ const filterDataHandler = useCallback(function (data) {
156
+ let filter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : filterData || filterSubmitData;
157
+ if (filter) {
158
+ return mutateDataHandler(data, filter, true);
159
+ }
160
+ return data;
161
+ }, [filterData, filterSubmitData, mutateDataHandler]);
139
162
  const fieldPropsRef = useRef({});
140
163
  const setProps = useCallback((path, props) => {
141
164
  fieldPropsRef.current[path] = _objectSpread(_objectSpread({}, fieldPropsRef.current[path]), props);
@@ -197,11 +220,17 @@ export default function Provider(props) {
197
220
  setShowAllErrors,
198
221
  setSubmitState
199
222
  });
200
- if (filterData) {
223
+ if (filterData || filterSubmitData) {
201
224
  rerenderUseDataHook === null || rerenderUseDataHook === void 0 ? void 0 : rerenderUseDataHook();
202
225
  }
203
226
  }
204
- }, [extendAttachment, filterData, filterDataHandler, hasErrors, id, rerenderUseDataHook, setShowAllErrors, setSubmitState]);
227
+ }, [extendAttachment, filterData, filterDataHandler, filterSubmitData, hasErrors, id, rerenderUseDataHook, setShowAllErrors, setSubmitState]);
228
+ const storeInSession = useMemo(() => {
229
+ return debounce(() => {
230
+ var _window$sessionStorag2;
231
+ (_window$sessionStorag2 = window.sessionStorage) === null || _window$sessionStorag2 === void 0 ? void 0 : _window$sessionStorag2.setItem(sessionStorageId, JSON.stringify(internalDataRef.current));
232
+ }, process.env.NODE_ENV === 'test' ? 1 : 800);
233
+ }, [sessionStorageId]);
205
234
  const updateDataValue = useCallback((path, value) => {
206
235
  var _internalDataRef$curr;
207
236
  if (!path) {
@@ -217,20 +246,21 @@ export default function Provider(props) {
217
246
  if (path !== '/') {
218
247
  pointer.set(newData, path, value);
219
248
  }
249
+ if (transformIn) {
250
+ newData = mutateDataHandler(newData, transformIn);
251
+ }
220
252
  internalDataRef.current = newData;
221
253
  if (id) {
222
254
  extendSharedData === null || extendSharedData === void 0 ? void 0 : extendSharedData(newData);
223
- if (filterData) {
255
+ if (filterData || filterSubmitData) {
224
256
  rerenderUseDataHook === null || rerenderUseDataHook === void 0 ? void 0 : rerenderUseDataHook();
225
257
  }
226
258
  }
227
259
  if (sessionStorageId && typeof window !== 'undefined') {
228
- var _window$sessionStorag2;
229
- (_window$sessionStorag2 = window.sessionStorage) === null || _window$sessionStorag2 === void 0 ? void 0 : _window$sessionStorag2.setItem(sessionStorageId, JSON.stringify(newData));
260
+ storeInSession();
230
261
  }
231
262
  forceUpdate();
232
- return newData;
233
- }, [id, sessionStorageId, extendSharedData, filterData, rerenderUseDataHook]);
263
+ }, [extendSharedData, filterData, filterSubmitData, id, mutateDataHandler, rerenderUseDataHook, sessionStorageId, storeInSession, transformIn]);
234
264
  const setData = useCallback(newData => {
235
265
  internalDataRef.current = newData;
236
266
  forceUpdate();
@@ -256,11 +286,13 @@ export default function Provider(props) {
256
286
  }
257
287
  showAllErrorsRef.current = false;
258
288
  validateData();
289
+ const data = internalDataRef.current;
290
+ const transformedData = transformOut ? mutateDataHandler(data, transformOut) : data;
259
291
  if (isAsync(onChange)) {
260
- return await onChange(internalDataRef.current);
292
+ return await onChange(transformedData);
261
293
  }
262
- return onChange === null || onChange === void 0 ? void 0 : onChange(internalDataRef.current);
263
- }, [handlePathChangeUnvalidated, onChange, validateData]);
294
+ return onChange === null || onChange === void 0 ? void 0 : onChange(transformedData);
295
+ }, [handlePathChangeUnvalidated, mutateDataHandler, onChange, transformOut, validateData]);
264
296
  const handleMountField = useCallback(path => {
265
297
  mountedFieldPathsRef.current = addListPath(mountedFieldPathsRef.current, path);
266
298
  }, []);
@@ -358,7 +390,8 @@ export default function Provider(props) {
358
390
  handleSubmitCall({
359
391
  enableAsyncBehaviour: isAsync(onSubmit),
360
392
  onSubmit: async () => {
361
- const args = filterDataHandler(internalDataRef.current);
393
+ const data = internalDataRef.current;
394
+ const filteredData = filterDataHandler(transformOut ? mutateDataHandler(data, transformOut) : data);
362
395
  const opts = {
363
396
  resetForm: () => {
364
397
  var _formElement$reset;
@@ -381,11 +414,11 @@ export default function Provider(props) {
381
414
  };
382
415
  let result = undefined;
383
416
  if (isAsync(onSubmit)) {
384
- result = await onSubmit(args, opts);
417
+ result = await onSubmit(filteredData, opts);
385
418
  } else {
386
- result = onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(args, opts);
419
+ result = onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(filteredData, opts);
387
420
  }
388
- const completeResult = await (onSubmitComplete === null || onSubmitComplete === void 0 ? void 0 : onSubmitComplete(args, result));
421
+ const completeResult = await (onSubmitComplete === null || onSubmitComplete === void 0 ? void 0 : onSubmitComplete(filteredData, result));
389
422
  if (completeResult) {
390
423
  result = Object.keys(result).length > 0 ? _objectSpread(_objectSpread({}, result), completeResult) : completeResult;
391
424
  }
@@ -395,7 +428,7 @@ export default function Provider(props) {
395
428
  return result;
396
429
  }
397
430
  });
398
- }, [filterDataHandler, handleSubmitCall, id, onSubmit, onSubmitComplete, scrollToTop, scrollTopOnSubmit, sessionStorageId, setSharedData]);
431
+ }, [filterDataHandler, handleSubmitCall, id, mutateDataHandler, onSubmit, onSubmitComplete, scrollToTop, scrollTopOnSubmit, sessionStorageId, setSharedData, transformOut]);
399
432
  const fieldEventListenersRef = useRef([]);
400
433
  const setFieldEventListener = useCallback((path, type, callback) => {
401
434
  fieldEventListenersRef.current = fieldEventListenersRef.current.filter(_ref2 => {
@@ -451,7 +484,7 @@ export default function Provider(props) {
451
484
  onTimeout
452
485
  });
453
486
  const submitState = submitStateRef.current;
454
- const disabled = (_rest$disabled = rest === null || rest === void 0 ? void 0 : rest['disabled']) !== null && _rest$disabled !== void 0 ? _rest$disabled : formState === 'pending';
487
+ const disabled = typeof (rest === null || rest === void 0 ? void 0 : rest['disabled']) === 'boolean' ? rest === null || rest === void 0 ? void 0 : rest['disabled'] : formState === 'pending' === true ? true : undefined;
455
488
  return React.createElement(Context.Provider, {
456
489
  value: _objectSpread({
457
490
  handlePathChange,
@@ -477,6 +510,7 @@ export default function Provider(props) {
477
510
  scrollToTop,
478
511
  schema,
479
512
  disabled,
513
+ required,
480
514
  formState,
481
515
  submitState,
482
516
  contextErrorMessages,
@@ -489,7 +523,7 @@ export default function Provider(props) {
489
523
  data: internalDataRef.current,
490
524
  props
491
525
  }, rest)
492
- }, React.createElement(SharedProvider, {
526
+ }, React.createElement(FieldProvider, {
493
527
  FormStatus: globalStatusId ? {
494
528
  globalStatus: {
495
529
  id: globalStatusId,
@@ -497,9 +531,9 @@ export default function Provider(props) {
497
531
  show: showAllErrorsRef.current
498
532
  }
499
533
  } : undefined,
500
- formElement: {
501
- disabled
502
- }
534
+ disabled: disabled ? disabled : undefined,
535
+ locale: locale ? locale : undefined,
536
+ translations: translations ? translations : undefined
503
537
  }, children));
504
538
  }
505
539
  export function addListPath(paths, path) {