@dnb/eufemia 10.24.0 → 10.26.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 (935) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/cjs/components/accordion/style/dnb-accordion.css +6 -2
  3. package/cjs/components/accordion/style/dnb-accordion.min.css +2 -2
  4. package/cjs/components/accordion/style/dnb-accordion.scss +8 -2
  5. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +5 -4
  6. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  7. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +5 -5
  8. package/cjs/components/autocomplete/Autocomplete.d.ts +0 -15
  9. package/cjs/components/autocomplete/Autocomplete.js +9 -2
  10. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  11. package/cjs/components/autocomplete/AutocompleteDocs.d.ts +3 -0
  12. package/cjs/components/autocomplete/AutocompleteDocs.js +293 -0
  13. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -0
  14. package/cjs/components/card/style/dnb-card.css +3 -0
  15. package/cjs/components/card/style/dnb-card.min.css +1 -1
  16. package/cjs/components/card/style/dnb-card.scss +4 -0
  17. package/cjs/components/dropdown/Dropdown.d.ts +0 -3
  18. package/cjs/components/input/InputDocs.js +2 -2
  19. package/cjs/components/input/InputDocs.js.map +1 -1
  20. package/cjs/components/input-masked/InputMaskedUtils.js +10 -7
  21. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  22. package/cjs/components/table/style/dnb-table.css +3 -0
  23. package/cjs/components/table/style/dnb-table.min.css +1 -1
  24. package/cjs/components/table/style/table-th.scss +4 -1
  25. package/cjs/components/textarea/Textarea.js +24 -17
  26. package/cjs/components/textarea/Textarea.js.map +1 -1
  27. package/cjs/extensions/forms/DataContext/At/At.js +6 -6
  28. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  29. package/cjs/extensions/forms/DataContext/Context.d.ts +7 -3
  30. package/cjs/extensions/forms/DataContext/Context.js +2 -0
  31. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  32. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +1 -5
  33. package/cjs/extensions/forms/DataContext/Provider/Provider.js +56 -28
  34. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  35. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +4 -4
  36. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  37. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +5 -7
  38. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  39. package/cjs/extensions/forms/Field/Boolean/Boolean.js +5 -8
  40. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  41. package/cjs/extensions/forms/Field/Composition/Composition.d.ts +6 -0
  42. package/cjs/extensions/forms/Field/Composition/Composition.js +19 -0
  43. package/cjs/extensions/forms/Field/Composition/Composition.js.map +1 -0
  44. package/cjs/extensions/forms/Field/Composition/index.d.ts +2 -0
  45. package/cjs/extensions/forms/Field/Composition/index.js +27 -0
  46. package/cjs/extensions/forms/Field/Composition/index.js.map +1 -0
  47. package/cjs/extensions/forms/Field/Currency/Currency.js +6 -4
  48. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  49. package/cjs/extensions/forms/Field/Date/Date.js +5 -7
  50. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  51. package/cjs/extensions/forms/Field/Email/Email.js +6 -10
  52. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  53. package/cjs/extensions/forms/Field/Expiry/Expiry.js +24 -12
  54. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  55. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +4 -6
  56. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  57. package/cjs/extensions/forms/Field/Number/Number.js +8 -7
  58. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  59. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +5 -7
  60. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  61. package/cjs/extensions/forms/Field/Password/Password.js +5 -8
  62. package/cjs/extensions/forms/Field/Password/Password.js.map +1 -1
  63. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  64. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +6 -5
  65. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  66. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -1
  67. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +15 -16
  68. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  69. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
  70. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -5
  71. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  72. package/cjs/extensions/forms/Field/String/String.js +9 -9
  73. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  74. package/cjs/extensions/forms/Field/Toggle/Toggle.js +6 -7
  75. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  76. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  77. package/cjs/extensions/forms/Field/index.js +7 -0
  78. package/cjs/extensions/forms/Field/index.js.map +1 -1
  79. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +3 -4
  80. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  81. package/cjs/extensions/forms/Form/Element/style/dnb-forms-element.css +7 -0
  82. package/cjs/extensions/forms/Form/Element/style/dnb-forms-element.min.css +1 -0
  83. package/cjs/extensions/forms/Form/Element/style/dnb-forms-element.scss +9 -0
  84. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  85. package/cjs/extensions/forms/Form/Handler/Handler.js +3 -3
  86. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  87. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +5 -5
  88. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  89. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.d.ts +1 -1
  90. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js +1 -1
  91. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -1
  92. package/cjs/extensions/forms/Form/data-context/useData.js +6 -3
  93. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  94. package/cjs/extensions/forms/Form/data-context/useError.d.ts +1 -0
  95. package/cjs/extensions/forms/Form/data-context/useError.js +13 -5
  96. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
  97. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  98. package/cjs/extensions/forms/Form/index.js +7 -0
  99. package/cjs/extensions/forms/Form/index.js.map +1 -1
  100. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -7
  101. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  102. package/cjs/extensions/forms/Value/Boolean/Boolean.js +4 -7
  103. package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  104. package/cjs/extensions/forms/Value/Date/Date.js +4 -7
  105. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  106. package/cjs/extensions/forms/Value/Email/Email.js +4 -7
  107. package/cjs/extensions/forms/Value/Email/Email.js.map +1 -1
  108. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -7
  109. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  110. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -7
  111. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  112. package/cjs/extensions/forms/Wizard/Buttons/Buttons.js +33 -0
  113. package/cjs/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -0
  114. package/cjs/extensions/forms/Wizard/Buttons/index.js.map +1 -0
  115. package/cjs/extensions/forms/Wizard/Container/WizardContainer.d.ts +19 -0
  116. package/cjs/extensions/forms/{StepsLayout/StepsLayout.js → Wizard/Container/WizardContainer.js} +72 -61
  117. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -0
  118. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.d.ts +3 -0
  119. package/cjs/extensions/forms/{StepsLayout/StepsLayoutDocs.js → Wizard/Container/WizardContainerDocs.js} +9 -9
  120. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -0
  121. package/cjs/extensions/forms/Wizard/Container/index.d.ts +2 -0
  122. package/cjs/extensions/forms/Wizard/Container/index.js +27 -0
  123. package/cjs/extensions/forms/Wizard/Container/index.js.map +1 -0
  124. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -0
  125. package/cjs/extensions/forms/{StepsLayout/StepsContext.js → Wizard/Context/WizardContext.js} +7 -4
  126. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -0
  127. package/cjs/extensions/forms/Wizard/Context/index.d.ts +2 -0
  128. package/cjs/extensions/forms/Wizard/Context/index.js +27 -0
  129. package/cjs/extensions/forms/Wizard/Context/index.js.map +1 -0
  130. package/cjs/extensions/forms/{StepsLayout → Wizard}/NextButton/NextButton.js +6 -6
  131. package/cjs/extensions/forms/Wizard/NextButton/NextButton.js.map +1 -0
  132. package/cjs/extensions/forms/Wizard/NextButton/index.js.map +1 -0
  133. package/cjs/extensions/forms/{StepsLayout → Wizard}/PreviousButton/PreviousButton.js +7 -7
  134. package/cjs/extensions/forms/Wizard/PreviousButton/PreviousButton.js.map +1 -0
  135. package/cjs/extensions/forms/Wizard/PreviousButton/index.js.map +1 -0
  136. package/cjs/extensions/forms/{StepsLayout → Wizard}/Step/Step.js +3 -3
  137. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -0
  138. package/cjs/extensions/forms/Wizard/Step/index.js.map +1 -0
  139. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.d.ts +7 -0
  140. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.js +52 -0
  141. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -0
  142. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.d.ts +3 -0
  143. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.js +60 -0
  144. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -0
  145. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.d.ts +6 -0
  146. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.js +56 -0
  147. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -0
  148. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.d.ts +5 -0
  149. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.js +47 -0
  150. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -0
  151. package/cjs/extensions/forms/Wizard/hooks/useStep.d.ts +5 -0
  152. package/cjs/extensions/forms/Wizard/hooks/useStep.js +30 -0
  153. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -0
  154. package/cjs/extensions/forms/Wizard/index.d.ts +13 -0
  155. package/cjs/extensions/forms/Wizard/index.js +87 -0
  156. package/cjs/extensions/forms/Wizard/index.js.map +1 -0
  157. package/{extensions/forms/StepsLayout/style/dnb-steps-layout.css → cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css} +11 -10
  158. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -0
  159. package/{extensions/forms/StepsLayout/style/dnb-steps-layout.scss → cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss} +6 -5
  160. package/cjs/extensions/forms/Wizard/style/index.d.ts +5 -0
  161. package/cjs/extensions/forms/Wizard/style/index.js +4 -0
  162. package/cjs/extensions/forms/Wizard/style/index.js.map +1 -0
  163. package/cjs/extensions/forms/Wizard/style.js.map +1 -0
  164. package/cjs/extensions/forms/constants/countries.d.ts +1 -0
  165. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  166. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +99 -0
  167. package/cjs/extensions/forms/constants/locales/en-GB.js +100 -0
  168. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -0
  169. package/cjs/extensions/forms/constants/locales/en-US.d.ts +93 -0
  170. package/cjs/extensions/forms/constants/locales/en-US.js +25 -0
  171. package/cjs/extensions/forms/constants/locales/en-US.js.map +1 -0
  172. package/cjs/extensions/forms/constants/locales/index.d.ts +183 -0
  173. package/cjs/extensions/forms/constants/locales/index.js +18 -0
  174. package/cjs/extensions/forms/constants/locales/index.js.map +1 -0
  175. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +99 -0
  176. package/cjs/extensions/forms/constants/locales/nb-NO.js +100 -0
  177. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -0
  178. package/cjs/extensions/forms/hooks/DataValueDocs.js +4 -4
  179. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  180. package/cjs/extensions/forms/hooks/useFieldProps.js +92 -65
  181. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  182. package/cjs/extensions/forms/hooks/useLocale.d.ts +10 -0
  183. package/cjs/extensions/forms/hooks/useLocale.js +32 -0
  184. package/cjs/extensions/forms/hooks/useLocale.js.map +1 -0
  185. package/cjs/extensions/forms/index.d.ts +14 -1
  186. package/cjs/extensions/forms/index.js +15 -15
  187. package/cjs/extensions/forms/index.js.map +1 -1
  188. package/cjs/extensions/forms/style/dnb-forms.css +36 -27
  189. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  190. package/cjs/extensions/forms/types.d.ts +2 -0
  191. package/cjs/extensions/forms/types.js.map +1 -1
  192. package/cjs/fragments/drawer-list/DrawerList.d.ts +95 -1
  193. package/cjs/fragments/drawer-list/DrawerListDocs.d.ts +3 -0
  194. package/cjs/fragments/drawer-list/DrawerListDocs.js +188 -0
  195. package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -0
  196. package/cjs/shared/Context.d.ts +7 -6
  197. package/cjs/shared/Context.js.map +1 -1
  198. package/cjs/shared/Eufemia.d.ts +1 -1
  199. package/cjs/shared/Eufemia.js +2 -2
  200. package/cjs/shared/Eufemia.js.map +1 -1
  201. package/cjs/shared/component-helper.d.ts +0 -1
  202. package/cjs/shared/component-helper.js +1 -9
  203. package/cjs/shared/component-helper.js.map +1 -1
  204. package/cjs/shared/helpers/runCssVersionMismatchWarning.js +2 -2
  205. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  206. package/cjs/shared/helpers/useSharedState.d.ts +3 -1
  207. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  208. package/cjs/shared/locales/en-GB.d.ts +0 -51
  209. package/cjs/shared/locales/en-GB.js +3 -54
  210. package/cjs/shared/locales/en-GB.js.map +1 -1
  211. package/cjs/shared/locales/en-US.d.ts +0 -51
  212. package/cjs/shared/locales/en-US.js.map +1 -1
  213. package/cjs/shared/locales/index.d.ts +0 -102
  214. package/cjs/shared/locales/nb-NO.d.ts +0 -51
  215. package/cjs/shared/locales/nb-NO.js +3 -54
  216. package/cjs/shared/locales/nb-NO.js.map +1 -1
  217. package/cjs/shared/types.d.ts +3 -0
  218. package/cjs/shared/types.js.map +1 -1
  219. package/cjs/shared/useLocale.d.ts +8 -1
  220. package/cjs/shared/useLocale.js +24 -11
  221. package/cjs/shared/useLocale.js.map +1 -1
  222. package/cjs/style/core/scopes.scss +1 -1
  223. package/cjs/style/dnb-ui-basis.css +1 -1
  224. package/cjs/style/dnb-ui-basis.min.css +1 -1
  225. package/cjs/style/dnb-ui-body.css +1 -1
  226. package/cjs/style/dnb-ui-body.min.css +1 -1
  227. package/cjs/style/dnb-ui-components.css +48 -29
  228. package/cjs/style/dnb-ui-components.min.css +3 -3
  229. package/cjs/style/dnb-ui-core.css +1 -1
  230. package/cjs/style/dnb-ui-core.min.css +1 -1
  231. package/cjs/style/dnb-ui-extensions.css +36 -27
  232. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  233. package/cjs/style/dnb-ui-forms.css +36 -27
  234. package/cjs/style/dnb-ui-forms.min.css +1 -1
  235. package/cjs/style/dnb-ui-forms.scss +2 -1
  236. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +84 -56
  237. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  238. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +36 -27
  239. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  240. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +36 -27
  241. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  242. package/cjs/style/themes/theme-eiendom/properties.js +10 -10
  243. package/cjs/style/themes/theme-eiendom/properties.js.map +1 -1
  244. package/cjs/style/themes/theme-sbanken/properties.js +10 -10
  245. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  246. package/cjs/style/themes/theme-sbanken/properties.scss +10 -10
  247. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +10 -10
  248. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  249. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +89 -60
  250. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  251. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +36 -27
  252. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  253. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +36 -27
  254. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  255. package/cjs/style/themes/theme-ui/properties.js +10 -10
  256. package/cjs/style/themes/theme-ui/properties.js.map +1 -1
  257. package/cjs/style/themes/theme-ui/ui-theme-components.css +84 -56
  258. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  259. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +36 -27
  260. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  261. package/cjs/style/themes/theme-ui/ui-theme-forms.css +36 -27
  262. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  263. package/components/accordion/style/dnb-accordion.css +6 -2
  264. package/components/accordion/style/dnb-accordion.min.css +2 -2
  265. package/components/accordion/style/dnb-accordion.scss +8 -2
  266. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +5 -4
  267. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  268. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +5 -5
  269. package/components/autocomplete/Autocomplete.d.ts +0 -15
  270. package/components/autocomplete/Autocomplete.js +9 -2
  271. package/components/autocomplete/Autocomplete.js.map +1 -1
  272. package/components/autocomplete/AutocompleteDocs.d.ts +3 -0
  273. package/components/autocomplete/AutocompleteDocs.js +285 -0
  274. package/components/autocomplete/AutocompleteDocs.js.map +1 -0
  275. package/components/card/style/dnb-card.css +3 -0
  276. package/components/card/style/dnb-card.min.css +1 -1
  277. package/components/card/style/dnb-card.scss +4 -0
  278. package/components/dropdown/Dropdown.d.ts +0 -3
  279. package/components/input/InputDocs.js +2 -2
  280. package/components/input/InputDocs.js.map +1 -1
  281. package/components/input-masked/InputMaskedUtils.js +10 -7
  282. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  283. package/components/table/style/dnb-table.css +3 -0
  284. package/components/table/style/dnb-table.min.css +1 -1
  285. package/components/table/style/table-th.scss +4 -1
  286. package/components/textarea/Textarea.js +24 -17
  287. package/components/textarea/Textarea.js.map +1 -1
  288. package/es/components/accordion/style/dnb-accordion.css +6 -2
  289. package/es/components/accordion/style/dnb-accordion.min.css +2 -2
  290. package/es/components/accordion/style/dnb-accordion.scss +8 -2
  291. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +5 -4
  292. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  293. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +5 -5
  294. package/es/components/autocomplete/Autocomplete.d.ts +0 -15
  295. package/es/components/autocomplete/Autocomplete.js +9 -2
  296. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  297. package/es/components/autocomplete/AutocompleteDocs.d.ts +3 -0
  298. package/es/components/autocomplete/AutocompleteDocs.js +285 -0
  299. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -0
  300. package/es/components/card/style/dnb-card.css +3 -0
  301. package/es/components/card/style/dnb-card.min.css +1 -1
  302. package/es/components/card/style/dnb-card.scss +4 -0
  303. package/es/components/dropdown/Dropdown.d.ts +0 -3
  304. package/es/components/input/InputDocs.js +2 -2
  305. package/es/components/input/InputDocs.js.map +1 -1
  306. package/es/components/input-masked/InputMaskedUtils.js +10 -7
  307. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  308. package/es/components/table/style/dnb-table.css +3 -0
  309. package/es/components/table/style/dnb-table.min.css +1 -1
  310. package/es/components/table/style/table-th.scss +4 -1
  311. package/es/components/textarea/Textarea.js +24 -17
  312. package/es/components/textarea/Textarea.js.map +1 -1
  313. package/es/extensions/forms/DataContext/At/At.js +7 -7
  314. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  315. package/es/extensions/forms/DataContext/Context.d.ts +7 -3
  316. package/es/extensions/forms/DataContext/Context.js +2 -0
  317. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  318. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +1 -5
  319. package/es/extensions/forms/DataContext/Provider/Provider.js +55 -28
  320. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  321. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +4 -4
  322. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  323. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +6 -9
  324. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  325. package/es/extensions/forms/Field/Boolean/Boolean.js +5 -7
  326. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  327. package/es/extensions/forms/Field/Composition/Composition.d.ts +6 -0
  328. package/es/extensions/forms/Field/Composition/Composition.js +11 -0
  329. package/es/extensions/forms/Field/Composition/Composition.js.map +1 -0
  330. package/es/extensions/forms/Field/Composition/index.d.ts +2 -0
  331. package/es/extensions/forms/Field/Composition/index.js +3 -0
  332. package/es/extensions/forms/Field/Composition/index.js.map +1 -0
  333. package/es/extensions/forms/Field/Currency/Currency.js +4 -4
  334. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  335. package/es/extensions/forms/Field/Date/Date.js +6 -9
  336. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  337. package/es/extensions/forms/Field/Email/Email.js +6 -9
  338. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  339. package/es/extensions/forms/Field/Expiry/Expiry.js +25 -14
  340. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  341. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +5 -8
  342. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  343. package/es/extensions/forms/Field/Number/Number.js +8 -7
  344. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  345. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +6 -9
  346. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  347. package/es/extensions/forms/Field/Password/Password.js +5 -8
  348. package/es/extensions/forms/Field/Password/Password.js.map +1 -1
  349. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  350. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +6 -5
  351. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  352. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -1
  353. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +15 -15
  354. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  355. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
  356. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -5
  357. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  358. package/es/extensions/forms/Field/String/String.js +9 -9
  359. package/es/extensions/forms/Field/String/String.js.map +1 -1
  360. package/es/extensions/forms/Field/Toggle/Toggle.js +7 -9
  361. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  362. package/es/extensions/forms/Field/index.d.ts +1 -0
  363. package/es/extensions/forms/Field/index.js +1 -0
  364. package/es/extensions/forms/Field/index.js.map +1 -1
  365. package/es/extensions/forms/FieldBlock/FieldBlock.js +3 -4
  366. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  367. package/es/extensions/forms/Form/Element/style/dnb-forms-element.css +7 -0
  368. package/es/extensions/forms/Form/Element/style/dnb-forms-element.min.css +1 -0
  369. package/es/extensions/forms/Form/Element/style/dnb-forms-element.scss +9 -0
  370. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  371. package/es/extensions/forms/Form/Handler/Handler.js +3 -3
  372. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  373. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  374. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  375. package/es/extensions/forms/Form/SubmitIndicator/style/index.d.ts +1 -1
  376. package/es/extensions/forms/Form/SubmitIndicator/style/index.js +1 -1
  377. package/es/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -1
  378. package/es/extensions/forms/Form/data-context/useData.js +7 -4
  379. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  380. package/es/extensions/forms/Form/data-context/useError.d.ts +1 -0
  381. package/es/extensions/forms/Form/data-context/useError.js +14 -6
  382. package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
  383. package/es/extensions/forms/Form/index.d.ts +1 -0
  384. package/es/extensions/forms/Form/index.js +1 -0
  385. package/es/extensions/forms/Form/index.js.map +1 -1
  386. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -6
  387. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  388. package/es/extensions/forms/Value/Boolean/Boolean.js +4 -6
  389. package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  390. package/es/extensions/forms/Value/Date/Date.js +4 -6
  391. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  392. package/es/extensions/forms/Value/Email/Email.js +4 -6
  393. package/es/extensions/forms/Value/Email/Email.js.map +1 -1
  394. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -6
  395. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  396. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -6
  397. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  398. package/es/extensions/forms/Wizard/Buttons/Buttons.js +24 -0
  399. package/es/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -0
  400. package/es/extensions/forms/Wizard/Buttons/index.js.map +1 -0
  401. package/es/extensions/forms/Wizard/Container/WizardContainer.d.ts +19 -0
  402. package/es/extensions/forms/{StepsLayout/StepsLayout.js → Wizard/Container/WizardContainer.js} +72 -61
  403. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -0
  404. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.d.ts +3 -0
  405. package/{extensions/forms/StepsLayout/StepsLayoutDocs.js → es/extensions/forms/Wizard/Container/WizardContainerDocs.js} +6 -6
  406. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -0
  407. package/es/extensions/forms/Wizard/Container/index.d.ts +2 -0
  408. package/es/extensions/forms/Wizard/Container/index.js +3 -0
  409. package/es/extensions/forms/Wizard/Container/index.js.map +1 -0
  410. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -0
  411. package/es/extensions/forms/Wizard/Context/WizardContext.js +12 -0
  412. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -0
  413. package/es/extensions/forms/Wizard/Context/index.d.ts +2 -0
  414. package/es/extensions/forms/Wizard/Context/index.js +3 -0
  415. package/es/extensions/forms/Wizard/Context/index.js.map +1 -0
  416. package/es/extensions/forms/{StepsLayout → Wizard}/NextButton/NextButton.js +6 -6
  417. package/es/extensions/forms/Wizard/NextButton/NextButton.js.map +1 -0
  418. package/es/extensions/forms/Wizard/NextButton/index.js.map +1 -0
  419. package/{extensions/forms/StepsLayout → es/extensions/forms/Wizard}/PreviousButton/PreviousButton.js +7 -7
  420. package/es/extensions/forms/Wizard/PreviousButton/PreviousButton.js.map +1 -0
  421. package/es/extensions/forms/Wizard/PreviousButton/index.js.map +1 -0
  422. package/{extensions/forms/StepsLayout → es/extensions/forms/Wizard}/Step/Step.js +3 -3
  423. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -0
  424. package/es/extensions/forms/Wizard/Step/index.js.map +1 -0
  425. package/es/extensions/forms/Wizard/hooks/useNextRouter.d.ts +7 -0
  426. package/es/extensions/forms/Wizard/hooks/useNextRouter.js +42 -0
  427. package/es/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -0
  428. package/es/extensions/forms/Wizard/hooks/useQueryLocator.d.ts +3 -0
  429. package/es/extensions/forms/Wizard/hooks/useQueryLocator.js +51 -0
  430. package/es/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -0
  431. package/es/extensions/forms/Wizard/hooks/useReachRouter.d.ts +6 -0
  432. package/es/extensions/forms/Wizard/hooks/useReachRouter.js +46 -0
  433. package/es/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -0
  434. package/es/extensions/forms/Wizard/hooks/useReactRouter.d.ts +5 -0
  435. package/es/extensions/forms/Wizard/hooks/useReactRouter.js +37 -0
  436. package/es/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -0
  437. package/es/extensions/forms/Wizard/hooks/useStep.d.ts +5 -0
  438. package/es/extensions/forms/Wizard/hooks/useStep.js +22 -0
  439. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -0
  440. package/es/extensions/forms/Wizard/index.d.ts +13 -0
  441. package/es/extensions/forms/Wizard/index.js +14 -0
  442. package/es/extensions/forms/Wizard/index.js.map +1 -0
  443. package/{cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css → es/extensions/forms/Wizard/style/dnb-wizard-layout.css} +11 -10
  444. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -0
  445. package/es/extensions/forms/{StepsLayout/style/dnb-steps-layout.scss → Wizard/style/dnb-wizard-layout.scss} +6 -5
  446. package/es/extensions/forms/Wizard/style/index.d.ts +5 -0
  447. package/es/extensions/forms/Wizard/style/index.js +1 -0
  448. package/es/extensions/forms/Wizard/style/index.js.map +1 -0
  449. package/es/extensions/forms/Wizard/style.js.map +1 -0
  450. package/es/extensions/forms/constants/countries.d.ts +1 -0
  451. package/es/extensions/forms/constants/countries.js.map +1 -1
  452. package/es/extensions/forms/constants/locales/en-GB.d.ts +99 -0
  453. package/es/extensions/forms/constants/locales/en-GB.js +93 -0
  454. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -0
  455. package/es/extensions/forms/constants/locales/en-US.d.ts +93 -0
  456. package/es/extensions/forms/constants/locales/en-US.js +15 -0
  457. package/es/extensions/forms/constants/locales/en-US.js.map +1 -0
  458. package/es/extensions/forms/constants/locales/index.d.ts +183 -0
  459. package/es/extensions/forms/constants/locales/index.js +8 -0
  460. package/es/extensions/forms/constants/locales/index.js.map +1 -0
  461. package/es/extensions/forms/constants/locales/nb-NO.d.ts +99 -0
  462. package/es/extensions/forms/constants/locales/nb-NO.js +93 -0
  463. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -0
  464. package/es/extensions/forms/hooks/DataValueDocs.js +4 -4
  465. package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  466. package/es/extensions/forms/hooks/useFieldProps.js +92 -65
  467. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  468. package/es/extensions/forms/hooks/useLocale.d.ts +10 -0
  469. package/es/extensions/forms/hooks/useLocale.js +26 -0
  470. package/es/extensions/forms/hooks/useLocale.js.map +1 -0
  471. package/es/extensions/forms/index.d.ts +14 -1
  472. package/es/extensions/forms/index.js +11 -1
  473. package/es/extensions/forms/index.js.map +1 -1
  474. package/es/extensions/forms/style/dnb-forms.css +36 -27
  475. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  476. package/es/extensions/forms/types.d.ts +2 -0
  477. package/es/extensions/forms/types.js.map +1 -1
  478. package/es/fragments/drawer-list/DrawerList.d.ts +95 -1
  479. package/es/fragments/drawer-list/DrawerListDocs.d.ts +3 -0
  480. package/es/fragments/drawer-list/DrawerListDocs.js +180 -0
  481. package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -0
  482. package/es/shared/Context.d.ts +7 -6
  483. package/es/shared/Context.js.map +1 -1
  484. package/es/shared/Eufemia.d.ts +1 -1
  485. package/es/shared/Eufemia.js +2 -2
  486. package/es/shared/Eufemia.js.map +1 -1
  487. package/es/shared/component-helper.d.ts +0 -1
  488. package/es/shared/component-helper.js +0 -1
  489. package/es/shared/component-helper.js.map +1 -1
  490. package/es/shared/helpers/runCssVersionMismatchWarning.js +2 -2
  491. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  492. package/es/shared/helpers/useSharedState.d.ts +3 -1
  493. package/es/shared/helpers/useSharedState.js.map +1 -1
  494. package/es/shared/locales/en-GB.d.ts +0 -51
  495. package/es/shared/locales/en-GB.js +3 -54
  496. package/es/shared/locales/en-GB.js.map +1 -1
  497. package/es/shared/locales/en-US.d.ts +0 -51
  498. package/es/shared/locales/en-US.js.map +1 -1
  499. package/es/shared/locales/index.d.ts +0 -102
  500. package/es/shared/locales/nb-NO.d.ts +0 -51
  501. package/es/shared/locales/nb-NO.js +3 -54
  502. package/es/shared/locales/nb-NO.js.map +1 -1
  503. package/es/shared/types.d.ts +3 -0
  504. package/es/shared/types.js.map +1 -1
  505. package/es/shared/useLocale.d.ts +8 -1
  506. package/es/shared/useLocale.js +22 -11
  507. package/es/shared/useLocale.js.map +1 -1
  508. package/es/style/core/scopes.scss +1 -1
  509. package/es/style/dnb-ui-basis.css +1 -1
  510. package/es/style/dnb-ui-basis.min.css +1 -1
  511. package/es/style/dnb-ui-body.css +1 -1
  512. package/es/style/dnb-ui-body.min.css +1 -1
  513. package/es/style/dnb-ui-components.css +48 -29
  514. package/es/style/dnb-ui-components.min.css +3 -3
  515. package/es/style/dnb-ui-core.css +1 -1
  516. package/es/style/dnb-ui-core.min.css +1 -1
  517. package/es/style/dnb-ui-extensions.css +36 -27
  518. package/es/style/dnb-ui-extensions.min.css +1 -1
  519. package/es/style/dnb-ui-forms.css +36 -27
  520. package/es/style/dnb-ui-forms.min.css +1 -1
  521. package/es/style/dnb-ui-forms.scss +2 -1
  522. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +84 -56
  523. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  524. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +36 -27
  525. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  526. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +36 -27
  527. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  528. package/es/style/themes/theme-eiendom/properties.js +10 -10
  529. package/es/style/themes/theme-eiendom/properties.js.map +1 -1
  530. package/es/style/themes/theme-sbanken/properties.js +10 -10
  531. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  532. package/es/style/themes/theme-sbanken/properties.scss +10 -10
  533. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +10 -10
  534. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  535. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +89 -60
  536. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  537. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +36 -27
  538. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  539. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +36 -27
  540. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  541. package/es/style/themes/theme-ui/properties.js +10 -10
  542. package/es/style/themes/theme-ui/properties.js.map +1 -1
  543. package/es/style/themes/theme-ui/ui-theme-components.css +84 -56
  544. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  545. package/es/style/themes/theme-ui/ui-theme-extensions.css +36 -27
  546. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  547. package/es/style/themes/theme-ui/ui-theme-forms.css +36 -27
  548. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  549. package/esm/dnb-ui-basis.min.mjs +1 -1
  550. package/esm/dnb-ui-components.min.mjs +1 -1
  551. package/esm/dnb-ui-elements.min.mjs +1 -1
  552. package/esm/dnb-ui-extensions.min.mjs +3 -3
  553. package/esm/dnb-ui-lib.min.mjs +1 -1
  554. package/extensions/forms/DataContext/At/At.js +7 -7
  555. package/extensions/forms/DataContext/At/At.js.map +1 -1
  556. package/extensions/forms/DataContext/Context.d.ts +7 -3
  557. package/extensions/forms/DataContext/Context.js +2 -0
  558. package/extensions/forms/DataContext/Context.js.map +1 -1
  559. package/extensions/forms/DataContext/Provider/Provider.d.ts +1 -5
  560. package/extensions/forms/DataContext/Provider/Provider.js +56 -28
  561. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  562. package/extensions/forms/DataContext/Provider/ProviderDocs.js +4 -4
  563. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  564. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +6 -9
  565. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  566. package/extensions/forms/Field/Boolean/Boolean.js +5 -7
  567. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  568. package/extensions/forms/Field/Composition/Composition.d.ts +6 -0
  569. package/extensions/forms/Field/Composition/Composition.js +11 -0
  570. package/extensions/forms/Field/Composition/Composition.js.map +1 -0
  571. package/extensions/forms/Field/Composition/index.d.ts +2 -0
  572. package/extensions/forms/Field/Composition/index.js +3 -0
  573. package/extensions/forms/Field/Composition/index.js.map +1 -0
  574. package/extensions/forms/Field/Currency/Currency.js +4 -4
  575. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  576. package/extensions/forms/Field/Date/Date.js +6 -9
  577. package/extensions/forms/Field/Date/Date.js.map +1 -1
  578. package/extensions/forms/Field/Email/Email.js +6 -9
  579. package/extensions/forms/Field/Email/Email.js.map +1 -1
  580. package/extensions/forms/Field/Expiry/Expiry.js +25 -14
  581. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  582. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +5 -8
  583. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  584. package/extensions/forms/Field/Number/Number.js +8 -7
  585. package/extensions/forms/Field/Number/Number.js.map +1 -1
  586. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +6 -9
  587. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  588. package/extensions/forms/Field/Password/Password.js +5 -8
  589. package/extensions/forms/Field/Password/Password.js.map +1 -1
  590. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  591. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +6 -5
  592. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  593. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -1
  594. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +15 -15
  595. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  596. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
  597. package/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -5
  598. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  599. package/extensions/forms/Field/String/String.js +9 -9
  600. package/extensions/forms/Field/String/String.js.map +1 -1
  601. package/extensions/forms/Field/Toggle/Toggle.js +7 -9
  602. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  603. package/extensions/forms/Field/index.d.ts +1 -0
  604. package/extensions/forms/Field/index.js +1 -0
  605. package/extensions/forms/Field/index.js.map +1 -1
  606. package/extensions/forms/FieldBlock/FieldBlock.js +3 -4
  607. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  608. package/extensions/forms/Form/Element/style/dnb-forms-element.css +7 -0
  609. package/extensions/forms/Form/Element/style/dnb-forms-element.min.css +1 -0
  610. package/extensions/forms/Form/Element/style/dnb-forms-element.scss +9 -0
  611. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  612. package/extensions/forms/Form/Handler/Handler.js +3 -3
  613. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  614. package/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  615. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  616. package/extensions/forms/Form/SubmitIndicator/style/index.d.ts +1 -1
  617. package/extensions/forms/Form/SubmitIndicator/style/index.js +1 -1
  618. package/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -1
  619. package/extensions/forms/Form/data-context/useData.js +7 -4
  620. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  621. package/extensions/forms/Form/data-context/useError.d.ts +1 -0
  622. package/extensions/forms/Form/data-context/useError.js +14 -6
  623. package/extensions/forms/Form/data-context/useError.js.map +1 -1
  624. package/extensions/forms/Form/index.d.ts +1 -0
  625. package/extensions/forms/Form/index.js +1 -0
  626. package/extensions/forms/Form/index.js.map +1 -1
  627. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -6
  628. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  629. package/extensions/forms/Value/Boolean/Boolean.js +4 -6
  630. package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  631. package/extensions/forms/Value/Date/Date.js +4 -6
  632. package/extensions/forms/Value/Date/Date.js.map +1 -1
  633. package/extensions/forms/Value/Email/Email.js +4 -6
  634. package/extensions/forms/Value/Email/Email.js.map +1 -1
  635. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -6
  636. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  637. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -6
  638. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  639. package/extensions/forms/Wizard/Buttons/Buttons.js +24 -0
  640. package/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -0
  641. package/extensions/forms/Wizard/Buttons/index.js.map +1 -0
  642. package/extensions/forms/Wizard/Container/WizardContainer.d.ts +19 -0
  643. package/extensions/forms/{StepsLayout/StepsLayout.js → Wizard/Container/WizardContainer.js} +72 -61
  644. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -0
  645. package/extensions/forms/Wizard/Container/WizardContainerDocs.d.ts +3 -0
  646. package/{es/extensions/forms/StepsLayout/StepsLayoutDocs.js → extensions/forms/Wizard/Container/WizardContainerDocs.js} +6 -6
  647. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -0
  648. package/extensions/forms/Wizard/Container/index.d.ts +2 -0
  649. package/extensions/forms/Wizard/Container/index.js +3 -0
  650. package/extensions/forms/Wizard/Container/index.js.map +1 -0
  651. package/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -0
  652. package/extensions/forms/Wizard/Context/WizardContext.js +12 -0
  653. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -0
  654. package/extensions/forms/Wizard/Context/index.d.ts +2 -0
  655. package/extensions/forms/Wizard/Context/index.js +3 -0
  656. package/extensions/forms/Wizard/Context/index.js.map +1 -0
  657. package/extensions/forms/{StepsLayout → Wizard}/NextButton/NextButton.js +6 -6
  658. package/extensions/forms/Wizard/NextButton/NextButton.js.map +1 -0
  659. package/extensions/forms/Wizard/NextButton/index.js.map +1 -0
  660. package/{es/extensions/forms/StepsLayout → extensions/forms/Wizard}/PreviousButton/PreviousButton.js +7 -7
  661. package/extensions/forms/Wizard/PreviousButton/PreviousButton.js.map +1 -0
  662. package/extensions/forms/Wizard/PreviousButton/index.js.map +1 -0
  663. package/{es/extensions/forms/StepsLayout → extensions/forms/Wizard}/Step/Step.js +3 -3
  664. package/extensions/forms/Wizard/Step/Step.js.map +1 -0
  665. package/extensions/forms/Wizard/Step/index.js.map +1 -0
  666. package/extensions/forms/Wizard/hooks/useNextRouter.d.ts +7 -0
  667. package/extensions/forms/Wizard/hooks/useNextRouter.js +43 -0
  668. package/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -0
  669. package/extensions/forms/Wizard/hooks/useQueryLocator.d.ts +3 -0
  670. package/extensions/forms/Wizard/hooks/useQueryLocator.js +51 -0
  671. package/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -0
  672. package/extensions/forms/Wizard/hooks/useReachRouter.d.ts +6 -0
  673. package/extensions/forms/Wizard/hooks/useReachRouter.js +47 -0
  674. package/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -0
  675. package/extensions/forms/Wizard/hooks/useReactRouter.d.ts +5 -0
  676. package/extensions/forms/Wizard/hooks/useReactRouter.js +38 -0
  677. package/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -0
  678. package/extensions/forms/Wizard/hooks/useStep.d.ts +5 -0
  679. package/extensions/forms/Wizard/hooks/useStep.js +24 -0
  680. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -0
  681. package/extensions/forms/Wizard/index.d.ts +13 -0
  682. package/extensions/forms/Wizard/index.js +14 -0
  683. package/extensions/forms/Wizard/index.js.map +1 -0
  684. package/{es/extensions/forms/StepsLayout/style/dnb-steps-layout.css → extensions/forms/Wizard/style/dnb-wizard-layout.css} +11 -10
  685. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -0
  686. package/{cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss → extensions/forms/Wizard/style/dnb-wizard-layout.scss} +6 -5
  687. package/extensions/forms/Wizard/style/index.d.ts +5 -0
  688. package/extensions/forms/Wizard/style/index.js +1 -0
  689. package/extensions/forms/Wizard/style/index.js.map +1 -0
  690. package/extensions/forms/Wizard/style.js.map +1 -0
  691. package/extensions/forms/constants/countries.d.ts +1 -0
  692. package/extensions/forms/constants/countries.js.map +1 -1
  693. package/extensions/forms/constants/locales/en-GB.d.ts +99 -0
  694. package/extensions/forms/constants/locales/en-GB.js +93 -0
  695. package/extensions/forms/constants/locales/en-GB.js.map +1 -0
  696. package/extensions/forms/constants/locales/en-US.d.ts +93 -0
  697. package/extensions/forms/constants/locales/en-US.js +15 -0
  698. package/extensions/forms/constants/locales/en-US.js.map +1 -0
  699. package/extensions/forms/constants/locales/index.d.ts +183 -0
  700. package/extensions/forms/constants/locales/index.js +8 -0
  701. package/extensions/forms/constants/locales/index.js.map +1 -0
  702. package/extensions/forms/constants/locales/nb-NO.d.ts +99 -0
  703. package/extensions/forms/constants/locales/nb-NO.js +93 -0
  704. package/extensions/forms/constants/locales/nb-NO.js.map +1 -0
  705. package/extensions/forms/hooks/DataValueDocs.js +4 -4
  706. package/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  707. package/extensions/forms/hooks/useFieldProps.js +92 -65
  708. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  709. package/extensions/forms/hooks/useLocale.d.ts +10 -0
  710. package/extensions/forms/hooks/useLocale.js +26 -0
  711. package/extensions/forms/hooks/useLocale.js.map +1 -0
  712. package/extensions/forms/index.d.ts +14 -1
  713. package/extensions/forms/index.js +12 -1
  714. package/extensions/forms/index.js.map +1 -1
  715. package/extensions/forms/style/dnb-forms.css +36 -27
  716. package/extensions/forms/style/dnb-forms.min.css +1 -1
  717. package/extensions/forms/types.d.ts +2 -0
  718. package/extensions/forms/types.js.map +1 -1
  719. package/fragments/drawer-list/DrawerList.d.ts +95 -1
  720. package/fragments/drawer-list/DrawerListDocs.d.ts +3 -0
  721. package/fragments/drawer-list/DrawerListDocs.js +180 -0
  722. package/fragments/drawer-list/DrawerListDocs.js.map +1 -0
  723. package/package.json +1 -1
  724. package/shared/Context.d.ts +7 -6
  725. package/shared/Context.js.map +1 -1
  726. package/shared/Eufemia.d.ts +1 -1
  727. package/shared/Eufemia.js +2 -2
  728. package/shared/Eufemia.js.map +1 -1
  729. package/shared/component-helper.d.ts +0 -1
  730. package/shared/component-helper.js +0 -1
  731. package/shared/component-helper.js.map +1 -1
  732. package/shared/helpers/runCssVersionMismatchWarning.js +2 -2
  733. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  734. package/shared/helpers/useSharedState.d.ts +3 -1
  735. package/shared/helpers/useSharedState.js.map +1 -1
  736. package/shared/locales/en-GB.d.ts +0 -51
  737. package/shared/locales/en-GB.js +3 -54
  738. package/shared/locales/en-GB.js.map +1 -1
  739. package/shared/locales/en-US.d.ts +0 -51
  740. package/shared/locales/en-US.js.map +1 -1
  741. package/shared/locales/index.d.ts +0 -102
  742. package/shared/locales/nb-NO.d.ts +0 -51
  743. package/shared/locales/nb-NO.js +3 -54
  744. package/shared/locales/nb-NO.js.map +1 -1
  745. package/shared/types.d.ts +3 -0
  746. package/shared/types.js.map +1 -1
  747. package/shared/useLocale.d.ts +8 -1
  748. package/shared/useLocale.js +23 -11
  749. package/shared/useLocale.js.map +1 -1
  750. package/style/core/scopes.scss +1 -1
  751. package/style/dnb-ui-basis.css +1 -1
  752. package/style/dnb-ui-basis.min.css +1 -1
  753. package/style/dnb-ui-body.css +1 -1
  754. package/style/dnb-ui-body.min.css +1 -1
  755. package/style/dnb-ui-components.css +48 -29
  756. package/style/dnb-ui-components.min.css +3 -3
  757. package/style/dnb-ui-core.css +1 -1
  758. package/style/dnb-ui-core.min.css +1 -1
  759. package/style/dnb-ui-extensions.css +36 -27
  760. package/style/dnb-ui-extensions.min.css +1 -1
  761. package/style/dnb-ui-forms.css +36 -27
  762. package/style/dnb-ui-forms.min.css +1 -1
  763. package/style/dnb-ui-forms.scss +2 -1
  764. package/style/themes/theme-eiendom/eiendom-theme-components.css +84 -56
  765. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  766. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +36 -27
  767. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  768. package/style/themes/theme-eiendom/eiendom-theme-forms.css +36 -27
  769. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  770. package/style/themes/theme-eiendom/properties.js +10 -10
  771. package/style/themes/theme-eiendom/properties.js.map +1 -1
  772. package/style/themes/theme-sbanken/properties.js +10 -10
  773. package/style/themes/theme-sbanken/properties.js.map +1 -1
  774. package/style/themes/theme-sbanken/properties.scss +10 -10
  775. package/style/themes/theme-sbanken/sbanken-theme-basis.css +10 -10
  776. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  777. package/style/themes/theme-sbanken/sbanken-theme-components.css +89 -60
  778. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  779. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +36 -27
  780. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  781. package/style/themes/theme-sbanken/sbanken-theme-forms.css +36 -27
  782. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  783. package/style/themes/theme-ui/properties.js +10 -10
  784. package/style/themes/theme-ui/properties.js.map +1 -1
  785. package/style/themes/theme-ui/ui-theme-components.css +84 -56
  786. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  787. package/style/themes/theme-ui/ui-theme-extensions.css +36 -27
  788. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  789. package/style/themes/theme-ui/ui-theme-forms.css +36 -27
  790. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  791. package/umd/dnb-ui-basis.min.js +1 -1
  792. package/umd/dnb-ui-components.min.js +1 -1
  793. package/umd/dnb-ui-elements.min.js +1 -1
  794. package/umd/dnb-ui-extensions.min.js +3 -3
  795. package/umd/dnb-ui-lib.min.js +1 -1
  796. package/cjs/extensions/forms/Field/style/index.d.ts +0 -5
  797. package/cjs/extensions/forms/Field/style/index.js +0 -4
  798. package/cjs/extensions/forms/Field/style/index.js.map +0 -1
  799. package/cjs/extensions/forms/StepsLayout/Buttons/Buttons.js +0 -26
  800. package/cjs/extensions/forms/StepsLayout/Buttons/Buttons.js.map +0 -1
  801. package/cjs/extensions/forms/StepsLayout/Buttons/index.js.map +0 -1
  802. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +0 -1
  803. package/cjs/extensions/forms/StepsLayout/NextButton/index.js.map +0 -1
  804. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +0 -1
  805. package/cjs/extensions/forms/StepsLayout/PreviousButton/index.js.map +0 -1
  806. package/cjs/extensions/forms/StepsLayout/Step/Step.js.map +0 -1
  807. package/cjs/extensions/forms/StepsLayout/Step/index.js.map +0 -1
  808. package/cjs/extensions/forms/StepsLayout/StepsContext.d.ts +0 -10
  809. package/cjs/extensions/forms/StepsLayout/StepsContext.js.map +0 -1
  810. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +0 -24
  811. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +0 -1
  812. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +0 -3
  813. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +0 -1
  814. package/cjs/extensions/forms/StepsLayout/index.d.ts +0 -3
  815. package/cjs/extensions/forms/StepsLayout/index.js +0 -18
  816. package/cjs/extensions/forms/StepsLayout/index.js.map +0 -1
  817. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +0 -1
  818. package/cjs/extensions/forms/StepsLayout/style/index.d.ts +0 -5
  819. package/cjs/extensions/forms/StepsLayout/style/index.js +0 -4
  820. package/cjs/extensions/forms/StepsLayout/style/index.js.map +0 -1
  821. package/cjs/extensions/forms/StepsLayout/style.js.map +0 -1
  822. package/cjs/extensions/forms/StepsLayout/useStep.d.ts +0 -3
  823. package/cjs/extensions/forms/StepsLayout/useStep.js +0 -19
  824. package/cjs/extensions/forms/StepsLayout/useStep.js.map +0 -1
  825. package/cjs/shared/helpers/useEventEmitter.d.ts +0 -16
  826. package/cjs/shared/helpers/useEventEmitter.js +0 -38
  827. package/cjs/shared/helpers/useEventEmitter.js.map +0 -1
  828. package/es/extensions/forms/Field/style/index.d.ts +0 -5
  829. package/es/extensions/forms/Field/style/index.js +0 -1
  830. package/es/extensions/forms/Field/style/index.js.map +0 -1
  831. package/es/extensions/forms/StepsLayout/Buttons/Buttons.js +0 -18
  832. package/es/extensions/forms/StepsLayout/Buttons/Buttons.js.map +0 -1
  833. package/es/extensions/forms/StepsLayout/Buttons/index.js.map +0 -1
  834. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +0 -1
  835. package/es/extensions/forms/StepsLayout/NextButton/index.js.map +0 -1
  836. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +0 -1
  837. package/es/extensions/forms/StepsLayout/PreviousButton/index.js.map +0 -1
  838. package/es/extensions/forms/StepsLayout/Step/Step.js.map +0 -1
  839. package/es/extensions/forms/StepsLayout/Step/index.js.map +0 -1
  840. package/es/extensions/forms/StepsLayout/StepsContext.d.ts +0 -10
  841. package/es/extensions/forms/StepsLayout/StepsContext.js +0 -9
  842. package/es/extensions/forms/StepsLayout/StepsContext.js.map +0 -1
  843. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +0 -24
  844. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +0 -1
  845. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +0 -3
  846. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +0 -1
  847. package/es/extensions/forms/StepsLayout/index.d.ts +0 -3
  848. package/es/extensions/forms/StepsLayout/index.js +0 -4
  849. package/es/extensions/forms/StepsLayout/index.js.map +0 -1
  850. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +0 -1
  851. package/es/extensions/forms/StepsLayout/style/index.d.ts +0 -5
  852. package/es/extensions/forms/StepsLayout/style/index.js +0 -1
  853. package/es/extensions/forms/StepsLayout/style/index.js.map +0 -1
  854. package/es/extensions/forms/StepsLayout/style.js.map +0 -1
  855. package/es/extensions/forms/StepsLayout/useStep.d.ts +0 -3
  856. package/es/extensions/forms/StepsLayout/useStep.js +0 -12
  857. package/es/extensions/forms/StepsLayout/useStep.js.map +0 -1
  858. package/es/shared/helpers/useEventEmitter.d.ts +0 -16
  859. package/es/shared/helpers/useEventEmitter.js +0 -29
  860. package/es/shared/helpers/useEventEmitter.js.map +0 -1
  861. package/extensions/forms/Field/style/index.d.ts +0 -5
  862. package/extensions/forms/Field/style/index.js +0 -1
  863. package/extensions/forms/Field/style/index.js.map +0 -1
  864. package/extensions/forms/StepsLayout/Buttons/Buttons.js +0 -18
  865. package/extensions/forms/StepsLayout/Buttons/Buttons.js.map +0 -1
  866. package/extensions/forms/StepsLayout/Buttons/index.js.map +0 -1
  867. package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +0 -1
  868. package/extensions/forms/StepsLayout/NextButton/index.js.map +0 -1
  869. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +0 -1
  870. package/extensions/forms/StepsLayout/PreviousButton/index.js.map +0 -1
  871. package/extensions/forms/StepsLayout/Step/Step.js.map +0 -1
  872. package/extensions/forms/StepsLayout/Step/index.js.map +0 -1
  873. package/extensions/forms/StepsLayout/StepsContext.d.ts +0 -10
  874. package/extensions/forms/StepsLayout/StepsContext.js +0 -9
  875. package/extensions/forms/StepsLayout/StepsContext.js.map +0 -1
  876. package/extensions/forms/StepsLayout/StepsLayout.d.ts +0 -24
  877. package/extensions/forms/StepsLayout/StepsLayout.js.map +0 -1
  878. package/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +0 -3
  879. package/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +0 -1
  880. package/extensions/forms/StepsLayout/index.d.ts +0 -3
  881. package/extensions/forms/StepsLayout/index.js +0 -4
  882. package/extensions/forms/StepsLayout/index.js.map +0 -1
  883. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +0 -1
  884. package/extensions/forms/StepsLayout/style/index.d.ts +0 -5
  885. package/extensions/forms/StepsLayout/style/index.js +0 -1
  886. package/extensions/forms/StepsLayout/style/index.js.map +0 -1
  887. package/extensions/forms/StepsLayout/style.js.map +0 -1
  888. package/extensions/forms/StepsLayout/useStep.d.ts +0 -3
  889. package/extensions/forms/StepsLayout/useStep.js +0 -13
  890. package/extensions/forms/StepsLayout/useStep.js.map +0 -1
  891. package/shared/helpers/useEventEmitter.d.ts +0 -16
  892. package/shared/helpers/useEventEmitter.js +0 -30
  893. package/shared/helpers/useEventEmitter.js.map +0 -1
  894. /package/cjs/extensions/forms/{StepsLayout → Wizard}/Buttons/Buttons.d.ts +0 -0
  895. /package/cjs/extensions/forms/{StepsLayout → Wizard}/Buttons/index.d.ts +0 -0
  896. /package/cjs/extensions/forms/{StepsLayout → Wizard}/Buttons/index.js +0 -0
  897. /package/cjs/extensions/forms/{StepsLayout → Wizard}/NextButton/NextButton.d.ts +0 -0
  898. /package/cjs/extensions/forms/{StepsLayout → Wizard}/NextButton/index.d.ts +0 -0
  899. /package/cjs/extensions/forms/{StepsLayout → Wizard}/NextButton/index.js +0 -0
  900. /package/cjs/extensions/forms/{StepsLayout → Wizard}/PreviousButton/PreviousButton.d.ts +0 -0
  901. /package/cjs/extensions/forms/{StepsLayout → Wizard}/PreviousButton/index.d.ts +0 -0
  902. /package/cjs/extensions/forms/{StepsLayout → Wizard}/PreviousButton/index.js +0 -0
  903. /package/cjs/extensions/forms/{StepsLayout → Wizard}/Step/Step.d.ts +0 -0
  904. /package/cjs/extensions/forms/{StepsLayout → Wizard}/Step/index.d.ts +0 -0
  905. /package/cjs/extensions/forms/{StepsLayout → Wizard}/Step/index.js +0 -0
  906. /package/cjs/extensions/forms/{StepsLayout → Wizard}/style.d.ts +0 -0
  907. /package/cjs/extensions/forms/{StepsLayout → Wizard}/style.js +0 -0
  908. /package/es/extensions/forms/{StepsLayout → Wizard}/Buttons/Buttons.d.ts +0 -0
  909. /package/es/extensions/forms/{StepsLayout → Wizard}/Buttons/index.d.ts +0 -0
  910. /package/es/extensions/forms/{StepsLayout → Wizard}/Buttons/index.js +0 -0
  911. /package/es/extensions/forms/{StepsLayout → Wizard}/NextButton/NextButton.d.ts +0 -0
  912. /package/es/extensions/forms/{StepsLayout → Wizard}/NextButton/index.d.ts +0 -0
  913. /package/es/extensions/forms/{StepsLayout → Wizard}/NextButton/index.js +0 -0
  914. /package/es/extensions/forms/{StepsLayout → Wizard}/PreviousButton/PreviousButton.d.ts +0 -0
  915. /package/es/extensions/forms/{StepsLayout → Wizard}/PreviousButton/index.d.ts +0 -0
  916. /package/es/extensions/forms/{StepsLayout → Wizard}/PreviousButton/index.js +0 -0
  917. /package/es/extensions/forms/{StepsLayout → Wizard}/Step/Step.d.ts +0 -0
  918. /package/es/extensions/forms/{StepsLayout → Wizard}/Step/index.d.ts +0 -0
  919. /package/es/extensions/forms/{StepsLayout → Wizard}/Step/index.js +0 -0
  920. /package/es/extensions/forms/{StepsLayout → Wizard}/style.d.ts +0 -0
  921. /package/es/extensions/forms/{StepsLayout → Wizard}/style.js +0 -0
  922. /package/extensions/forms/{StepsLayout → Wizard}/Buttons/Buttons.d.ts +0 -0
  923. /package/extensions/forms/{StepsLayout → Wizard}/Buttons/index.d.ts +0 -0
  924. /package/extensions/forms/{StepsLayout → Wizard}/Buttons/index.js +0 -0
  925. /package/extensions/forms/{StepsLayout → Wizard}/NextButton/NextButton.d.ts +0 -0
  926. /package/extensions/forms/{StepsLayout → Wizard}/NextButton/index.d.ts +0 -0
  927. /package/extensions/forms/{StepsLayout → Wizard}/NextButton/index.js +0 -0
  928. /package/extensions/forms/{StepsLayout → Wizard}/PreviousButton/PreviousButton.d.ts +0 -0
  929. /package/extensions/forms/{StepsLayout → Wizard}/PreviousButton/index.d.ts +0 -0
  930. /package/extensions/forms/{StepsLayout → Wizard}/PreviousButton/index.js +0 -0
  931. /package/extensions/forms/{StepsLayout → Wizard}/Step/Step.d.ts +0 -0
  932. /package/extensions/forms/{StepsLayout → Wizard}/Step/index.d.ts +0 -0
  933. /package/extensions/forms/{StepsLayout → Wizard}/Step/index.js +0 -0
  934. /package/extensions/forms/{StepsLayout → Wizard}/style.d.ts +0 -0
  935. /package/extensions/forms/{StepsLayout → Wizard}/style.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useFieldProps.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_utils","_ajv","_types","_DataContext","_componentHelper","_useId","_useUpdateEffect","_useMountEffect","_useUnmountEffect","_Context","_FieldBlockContext","_IterateElementContext","_useProcessManager","_useSharedState","_isAsync","_excluded","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","useFieldProps","props","_props$disabled","_dataContext$props","_dataContext$ajvInsta","_localErrorRef$curren","_ref2","_this","_props$path","_props$autoComplete","path","itemPath","emptyValue","required","info","warning","error","errorProp","errorMessages","onFocus","onBlur","onChange","onBlurValidator","validator","schema","validateInitially","validateUnchanged","continuousValidation","toInput","fromInput","toEvent","transformValue","fromExternal","validateRequired","_ref","disabled","readOnly","forceUpdate","useReducer","startProcess","useProcessManager","id","useId","dataContext","useContext","DataContext","fieldBlockContext","FieldBlockContext","iterateElementContext","IterateElementContext","sharedContext","SharedContext","tr","translation","Forms","transformers","useRef","handlePathChange","handlePathChangeDataContext","updateDataValue","updateDataValueDataContext","validateData","validateDataDataContext","setFieldState","setFieldStateDataContext","setFieldError","setFieldErrorDataContext","setProps","setPropsDataContext","errors","dataContextErrors","contextErrorMessages","onChangeContext","dataContextError","inFieldBlock","Boolean","setFieldStateFieldBlock","showFieldError","showFieldErrorFieldBlock","inIterate","index","iterateElementIndex","iterateElementValue","handleChange","handleIterateElementChange","substring","Error","identifier","useMemo","externalValue","current","pointer","has","get","data","valueRef","changedRef","hasFocusRef","showErrorRef","errorMethodRef","localErrorRef","contextErrorRef","validatorRef","useUpdateEffect","onBlurValidatorRef","schemaValidatorRef","ajvInstance","compile","asyncBehaviorIsEnabled","isAsync","validatedWithValue","changeEventResultRef","currentAsyncProcessRef","setCurrentAsyncProcess","useCallback","name","asyncBufferRef","fulfill","hasAsyncProcesses","window","requestAnimationFrame","eventPool","onChangeLocal","addToPool","fn","runAsync","runPool","cb","pending","fieldStateRef","state","resolveValidatingState","showError","hideError","hasVisibleError","hasErrorProp","hasError","_ref3","errorMessagesRef","fieldErrorRequired","prepareError","FormError","_error$messageValues","message","validationRule","_errorMessagesRef$cur","fieldMessage","messageWithValues","entries","messageValues","reduce","_ref4","replace","stateId","persistErrorState","method","errorArg","errorChanged","type","content","showInitially","clearErrorState","callValidator","opts","result","callOnBlurValidator","valueOverride","validateValue","isProcessActive","requiredError","isChanged","ajvErrorsToOneFormError","handleError","setHasFocus","hasFocus","yieldAsyncProcess","_ref5","waitFor","withValidatedValueOf","Promise","resolve","some","_ref6","processName","withStates","handleChangeEventResult","warningRef","infoRef","success","setEventResult","callOnChangeContext","updateValue","newValue","argFromInput","additionalArgs","currentValue","transformedValue","getArgs","args","iterateValuePath","handleFocus","handleBlur","useMountEffect","handleMountField","useUnmountEffect","handleUnMountField","_dataContext$ajvInsta2","useEffect","hasValue","existingValue","sharedState","createSharedState","sharedValue","showAllErrors","formState","onSubmitHandler","_dataContext$setField","setFieldEventListener","show","mountedFieldsRef","htmlAttributes","acc","cur","startsWith","_fieldBlockContext$fi","stateIds","fieldStateIdsRef","combineDescribedBy","ids","fieldBlockProps","fieldState","sharedData","useSharedState","set","autoComplete","omitFieldProps","restProps"],"sources":["../../../../../src/extensions/forms/hooks/useFieldProps.ts"],"sourcesContent":["import {\n useRef,\n useEffect,\n useContext,\n useCallback,\n useMemo,\n useReducer,\n AriaAttributes,\n} from 'react'\nimport pointer from 'json-pointer'\nimport { ValidateFunction } from 'ajv/dist/2020'\nimport { errorChanged } from '../utils'\nimport { ajvErrorsToOneFormError } from '../utils/ajv'\nimport {\n FormError,\n FieldProps,\n AdditionalEventArgs,\n SubmitState,\n EventReturnWithStateObjectAndSuccess,\n EventStateObjectWithSuccess,\n} from '../types'\nimport { Context as DataContext, ContextState } from '../DataContext'\nimport { combineDescribedBy } from '../../../shared/component-helper'\nimport useId from '../../../shared/helpers/useId'\nimport useUpdateEffect from '../../../shared/helpers/useUpdateEffect'\nimport useMountEffect from '../../../shared/helpers/useMountEffect'\nimport useUnmountEffect from '../../../shared/helpers/useUnmountEffect'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlockContext from '../FieldBlock/FieldBlockContext'\nimport IterateElementContext from '../Iterate/IterateElementContext'\nimport useProcessManager from './useProcessManager'\nimport {\n createSharedState,\n useSharedState,\n} from '../../../shared/helpers/useSharedState'\nimport { isAsync } from '../../../shared/helpers/isAsync'\n\ntype SubmitStateWithValidating = SubmitState | 'validating'\ntype AsyncProcesses =\n | 'validator'\n | 'onBlurValidator'\n | 'onChangeLocal'\n | 'onChangeContext'\ntype PersistErrorStateMethod =\n /**\n * Add or remove the error regardless\n */\n | 'weak'\n /**\n * Check if there is an existing error, and if so, keep it\n */\n | 'gracefully'\n /**\n * Remove the error, if any\n */\n | 'wipe'\ntype AsyncProcessesBuffer = {\n fulfill: () => void\n hasAsyncProcesses: () => boolean\n}\n\nexport type DataAttributes = {\n [property: `data-${string}`]: string\n}\n\nexport default function useFieldProps<\n Value = unknown,\n Props extends FieldProps<Value> = FieldProps<Value>,\n>(props: Props): Props & FieldProps<Value> & ReturnAdditional<Value> {\n const {\n path,\n itemPath,\n emptyValue,\n required,\n info,\n warning,\n error: errorProp,\n errorMessages,\n onFocus,\n onBlur,\n onChange,\n onBlurValidator,\n validator,\n schema,\n validateInitially,\n validateUnchanged,\n continuousValidation,\n toInput = (value: Value) => value,\n fromInput = (value: Value) => value,\n toEvent = (value: Value) => value,\n transformValue = (value: Value) => value,\n fromExternal = (value: Value) => value,\n validateRequired = (value: Value, { emptyValue, required, error }) => {\n const res =\n required &&\n (value === emptyValue ||\n (typeof emptyValue === 'undefined' && value === ''))\n ? error\n : undefined\n\n return res\n },\n } = props\n\n const disabled = props.disabled ?? props.readOnly\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { startProcess } = useProcessManager()\n const id = useId(props.id)\n const dataContext = useContext(DataContext)\n const fieldBlockContext = useContext(FieldBlockContext)\n const iterateElementContext = useContext(IterateElementContext)\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const transformers = useRef({\n toInput,\n fromInput,\n toEvent,\n fromExternal,\n transformValue,\n validateRequired,\n })\n\n const {\n handlePathChange: handlePathChangeDataContext,\n updateDataValue: updateDataValueDataContext,\n validateData: validateDataDataContext,\n setFieldState: setFieldStateDataContext,\n setFieldError: setFieldErrorDataContext,\n setProps: setPropsDataContext,\n errors: dataContextErrors,\n contextErrorMessages,\n } = dataContext ?? {}\n const onChangeContext = dataContext?.props?.onChange\n\n const dataContextError = path ? dataContextErrors?.[path] : undefined\n const inFieldBlock = Boolean(fieldBlockContext)\n const {\n setFieldState: setFieldStateFieldBlock,\n showFieldError: showFieldErrorFieldBlock,\n } = fieldBlockContext ?? {}\n const inIterate = Boolean(iterateElementContext)\n const {\n index: iterateElementIndex,\n value: iterateElementValue,\n handleChange: handleIterateElementChange,\n } = iterateElementContext ?? {}\n\n if (path && path.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid path. Data value path JSON Pointers must be from root (starting with a /).'\n )\n }\n if (itemPath && itemPath.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid itemPath. Item pathJSON Pointers must be from root of iterate element (starting with a /).'\n )\n }\n if (itemPath && !iterateElementContext) {\n throw new Error(\n 'itemPath cannot be used when not inside an iterate element context. Wrap the component in an Iterate.Loop.'\n )\n }\n\n const identifier = useMemo(() => {\n // Identifier is used is registries of multiple fields, like in the DataContext keeping track of errors\n return path ?? id\n }, [path, id])\n\n const externalValue = useMemo(() => {\n if (props.value !== emptyValue) {\n // Value-prop sent directly to the field has highest priority, overriding any surrounding source\n return transformers.current.fromExternal(props.value)\n }\n\n if (inIterate && itemPath) {\n // This field is inside an iterate, and has a pointer from the base of the element being iterated\n if (itemPath === '/') {\n return iterateElementValue\n }\n\n return pointer.has(iterateElementValue, itemPath)\n ? pointer.get(iterateElementValue, itemPath)\n : emptyValue\n }\n\n if (dataContext.data && path) {\n // There is a surrounding data context and a path for where in the source to find the data\n if (path === '/') {\n return dataContext.data\n }\n\n return pointer.has(dataContext.data, path)\n ? pointer.get(dataContext.data, path)\n : emptyValue\n }\n\n return emptyValue\n }, [\n props.value,\n emptyValue,\n inIterate,\n itemPath,\n dataContext.data,\n path,\n iterateElementValue,\n ])\n\n // Many variables are kept in refs to avoid triggering unnecessary update loops because updates using\n // useEffect depend on them (like the external `value`)\n\n // Hold an internal copy of the input value in case the input component is used uncontrolled,\n // and to handle errors in Eufemia on components that does not take updated callback functions into account.\n const valueRef = useRef<Value>(externalValue)\n const changedRef = useRef<boolean>(false)\n const hasFocusRef = useRef<boolean>(false)\n\n // Error handling\n // - Should errors received through validation be shown initially. Assume that providing a direct prop to\n // the component means it is supposed to be shown initially.\n const showErrorRef = useRef<boolean>(\n Boolean(validateInitially || errorProp)\n )\n // - Local errors are errors based on validation instructions received by\n const errorMethodRef = useRef<\n Partial<Record<PersistErrorStateMethod, Error | FormError>>\n >({})\n const localErrorRef = useRef<Error | FormError | undefined>()\n // - Context errors are from outer contexts, like validation for this field as part of the whole data set\n const contextErrorRef = useRef<Error | FormError | undefined>(\n dataContextError\n )\n\n const validatorRef = useRef(validator)\n useUpdateEffect(() => {\n validatorRef.current = validator\n }, [validator])\n const onBlurValidatorRef = useRef(onBlurValidator)\n useUpdateEffect(() => {\n onBlurValidatorRef.current = onBlurValidator\n }, [onBlurValidator])\n\n const schemaValidatorRef = useRef<ValidateFunction>(\n schema ? dataContext.ajvInstance?.compile(schema) : undefined\n )\n\n // - Async behavior\n const asyncBehaviorIsEnabled = useMemo(() => {\n return isAsync(onChange) || isAsync(onChangeContext)\n }, [onChangeContext, onChange])\n const validatedWithValue = useRef<Value>()\n const changeEventResultRef = useRef<EventStateObjectWithSuccess>(null)\n const currentAsyncProcessRef = useRef<AsyncProcesses>(null)\n const setCurrentAsyncProcess = useCallback((name: AsyncProcesses) => {\n currentAsyncProcessRef.current = name\n }, [])\n\n // When both an async onChange and async validators are used,\n // we buffer the onChange calls to avoid race conditions.\n const asyncBufferRef = useRef<\n Record<AsyncProcesses, AsyncProcessesBuffer> | Record<string, unknown>\n >({})\n\n for (const key in asyncBufferRef.current) {\n const { fulfill, hasAsyncProcesses } = (asyncBufferRef.current[key] ||\n {}) as AsyncProcessesBuffer\n if (hasAsyncProcesses?.() === false) {\n delete asyncBufferRef.current[key]\n if (typeof fulfill === 'function') {\n window.requestAnimationFrame(fulfill)\n }\n }\n }\n\n const eventPool = useRef({\n validator: null,\n onBlurValidator: null,\n onChangeContext: null,\n onChangeLocal: null,\n })\n\n const addToPool = useCallback(\n (name: keyof typeof eventPool.current, fn, runAsync) => {\n if (!eventPool.current[name]) {\n eventPool.current[name] = { fn, runAsync }\n }\n },\n []\n )\n\n const runPool = useCallback(async (cb = null) => {\n for (const key in eventPool.current) {\n if (!eventPool.current[key] || eventPool.current[key].pending) {\n continue\n }\n\n const { fn, runAsync } = eventPool.current[key] || {}\n if (fn) {\n eventPool.current[key].pending = true\n eventPool.current[key] = null\n\n if (runAsync) {\n await fn()\n } else {\n fn()\n }\n }\n }\n\n cb?.()\n }, [])\n\n // Put props into the surrounding data context\n setPropsDataContext?.(identifier, props)\n\n const fieldStateRef = useRef<SubmitStateWithValidating>()\n const setFieldState = useCallback(\n (state: SubmitStateWithValidating) => {\n fieldStateRef.current = state\n setFieldStateDataContext(identifier, resolveValidatingState(state))\n if (!validateInitially) {\n forceUpdate()\n }\n },\n [setFieldStateDataContext, identifier, validateInitially]\n )\n\n const showError = useCallback(() => {\n showErrorRef.current = true\n showFieldErrorFieldBlock?.(identifier, true)\n }, [showFieldErrorFieldBlock, identifier])\n\n const hideError = useCallback(() => {\n showErrorRef.current = false\n showFieldErrorFieldBlock?.(identifier, false)\n }, [showFieldErrorFieldBlock, identifier])\n\n const error =\n showErrorRef.current ||\n // If the error is a type error, we want to show it even if the field as not been used\n localErrorRef.current?.['validationRule'] === 'type'\n ? errorProp ?? localErrorRef.current ?? contextErrorRef.current\n : undefined\n\n const hasVisibleError =\n Boolean(error) || (inFieldBlock && fieldBlockContext.hasErrorProp)\n const hasError = useCallback(() => {\n return Boolean(\n errorProp ?? localErrorRef.current ?? contextErrorRef.current\n )\n }, [errorProp])\n\n const errorMessagesRef = useRef(null)\n errorMessagesRef.current = useMemo(() => {\n return {\n required: tr.fieldErrorRequired,\n ...errorMessages,\n }\n }, [errorMessages, tr.fieldErrorRequired])\n\n /**\n * Prepare error from validation logic with correct error messages based on props\n */\n const prepareError = useCallback(\n (error: Error | FormError | undefined): FormError | undefined => {\n if (error instanceof FormError) {\n let message = error.message\n\n const { validationRule } = error\n if (typeof validationRule === 'string') {\n const fieldMessage = errorMessagesRef.current?.[validationRule]\n if (fieldMessage) {\n message = fieldMessage\n }\n }\n\n const messageWithValues = Object.entries(\n error.messageValues ?? {}\n ).reduce((message, [key, value]) => {\n return message.replace(`{${key}}`, value)\n }, message)\n\n error.message = messageWithValues\n\n return error\n }\n\n return error\n },\n []\n )\n\n /**\n * Based on validation, update error state, locally and relevant surrounding contexts\n */\n const stateId = useId()\n const persistErrorState = useCallback(\n (\n method: PersistErrorStateMethod,\n errorArg: Error | FormError | undefined = undefined\n ) => {\n const error = prepareError(errorArg)\n\n if (!errorChanged(error, localErrorRef.current)) {\n // In case different triggers lead to validation with no changes in the result (like still no error, or the same error),\n // avoid unnecessary re-renders by letting the old error object stay in the state and skip re-rendering.\n return\n }\n\n if (method === 'wipe') {\n errorMethodRef.current = {}\n } else {\n errorMethodRef.current[method] = error\n }\n\n if (\n !error &&\n method === 'gracefully' &&\n Object.keys(errorMethodRef.current).filter(Boolean).length > 0\n ) {\n // If the error is removed, we need to check if there are other errors that still should be shown\n return\n }\n\n localErrorRef.current = error\n\n // Tell the data context about the error, so it can stop the user from submitting the form until the error has been fixed\n setFieldErrorDataContext?.(identifier, error)\n\n // Set the visual states\n setFieldStateDataContext?.(identifier, error ? 'error' : undefined)\n setFieldStateFieldBlock?.({\n stateId,\n identifier,\n type: 'error',\n content: error,\n showInitially: Boolean(inFieldBlock && validateInitially),\n })\n\n forceUpdate()\n },\n [\n prepareError,\n setFieldErrorDataContext,\n identifier,\n setFieldStateDataContext,\n setFieldStateFieldBlock,\n stateId,\n inFieldBlock,\n validateInitially,\n ]\n )\n\n const clearErrorState = useCallback(() => {\n persistErrorState('wipe')\n }, [persistErrorState])\n\n const callValidator = useCallback(async () => {\n if (typeof validatorRef.current !== 'function') {\n return\n }\n\n const runAsync = isAsync(validatorRef.current)\n\n if (runAsync) {\n setCurrentAsyncProcess('validator')\n setFieldState('validating')\n hideError()\n }\n\n const opts = {\n ...contextErrorMessages,\n ...errorMessagesRef.current,\n }\n\n // Run async regardless to support Promise based validators\n const result = await validatorRef.current(valueRef.current, opts)\n\n persistErrorState('gracefully', result as Error)\n\n if (runAsync) {\n setFieldState(result instanceof Error ? 'error' : 'complete')\n }\n\n // Because its a better UX to show the error when the validation is async/delayed\n if (continuousValidation || runAsync) {\n // Because we first need to throw the error to be able to display it, we delay the showError call\n window.requestAnimationFrame(() => {\n showError()\n forceUpdate()\n })\n }\n\n return result\n }, [\n contextErrorMessages,\n continuousValidation,\n hideError,\n persistErrorState,\n setCurrentAsyncProcess,\n setFieldState,\n showError,\n ])\n\n const callOnBlurValidator = useCallback(\n async ({ valueOverride = null } = {}) => {\n if (typeof onBlurValidatorRef.current !== 'function') {\n return\n }\n // External blur validators makes it possible to validate values but not on every character change in case of\n // expensive validation calling external services etc.\n\n // Since the validator can return either a synchronous result or an asynchronous\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlurValidator'\n )\n\n const runAsync = isAsync(onBlurValidatorRef.current)\n\n if (runAsync) {\n setCurrentAsyncProcess('onBlurValidator')\n setFieldState('validating')\n }\n\n // Run async regardless to support Promise based validators\n const result = await onBlurValidatorRef.current(value)\n\n persistErrorState('gracefully', result as Error)\n\n if (runAsync) {\n setFieldState(result instanceof Error ? 'error' : 'complete')\n }\n\n showError()\n forceUpdate()\n },\n [persistErrorState, setCurrentAsyncProcess, setFieldState, showError]\n )\n\n /**\n * Validate the current state value by provided validator instructions\n */\n const validateValue = useCallback(async () => {\n const isProcessActive = startProcess()\n\n if (disabled) {\n if (isProcessActive()) {\n clearErrorState()\n }\n hideError()\n setFieldState(undefined)\n return // stop here\n }\n\n const value = valueRef.current\n changeEventResultRef.current = null\n validatedWithValue.current = null\n\n try {\n // Validate required\n const requiredError = transformers.current.validateRequired(value, {\n emptyValue,\n required,\n isChanged: changedRef.current,\n error: new FormError('The value is required', {\n validationRule: 'required',\n }),\n })\n if (requiredError instanceof Error) {\n throw requiredError\n }\n\n // Validate by provided JSON Schema for this value\n if (\n schemaValidatorRef.current &&\n value !== undefined &&\n !schemaValidatorRef.current(value)\n ) {\n const error = ajvErrorsToOneFormError(\n schemaValidatorRef.current.errors,\n valueRef.current\n )\n throw error\n }\n\n // Validate by provided derivative validator\n if (\n validatorRef.current &&\n (changedRef.current || validateInitially)\n ) {\n const result = await callValidator()\n\n if (result instanceof Error) {\n throw result\n }\n }\n\n if (isProcessActive()) {\n clearErrorState()\n }\n\n validatedWithValue.current = value\n } catch (error: unknown) {\n if (isProcessActive()) {\n persistErrorState('weak', error as Error)\n }\n }\n }, [\n startProcess,\n disabled,\n hideError,\n setFieldState,\n clearErrorState,\n emptyValue,\n required,\n validateInitially,\n callValidator,\n persistErrorState,\n ])\n\n const handleError = useCallback(() => {\n if (\n continuousValidation ||\n (continuousValidation !== false && !hasFocusRef.current)\n ) {\n // When there is a change to the value without there having been any focus callback beforehand, it is likely\n // to believe that the blur callback will not be called either, which would trigger the display of the error.\n // The error is therefore displayed immediately (unless instructed not to with continuousValidation set to false).\n showError()\n } else {\n // When changing the value, hide errors to avoid annoying the user before they are finished filling in that value\n hideError()\n }\n }, [continuousValidation, hideError, showError])\n\n const setHasFocus = useCallback(\n async (hasFocus: boolean, valueOverride?: Value) => {\n if (hasFocus) {\n // Field was put in focus (like when clicking in a text field or opening a dropdown menu)\n hasFocusRef.current = true\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onFocus'\n )\n onFocus?.(value)\n } else {\n // Field was removed from focus (like when tabbing out of a text field or closing a dropdown menu)\n hasFocusRef.current = false\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlur'\n )\n onBlur?.(value)\n\n if (!changedRef.current && !validateUnchanged) {\n // Avoid showing errors when blurring without having changed the value, so tabbing through several\n // fields does not make errors pop up all over the place\n return\n }\n\n addToPool(\n 'onBlurValidator',\n async () => await callOnBlurValidator({ valueOverride }),\n isAsync(onBlurValidatorRef.current)\n )\n\n await runPool(() => {\n // Since the user left the field, show error (if any)\n showError()\n forceUpdate()\n })\n }\n },\n [\n addToPool,\n callOnBlurValidator,\n onBlur,\n onFocus,\n runPool,\n showError,\n validateUnchanged,\n ]\n )\n\n // Await an async operation to run after criteria are fulfilled\n const yieldAsyncProcess = useCallback(\n async ({\n name,\n waitFor,\n withValidatedValueOf,\n }: {\n name: 'onChangeLocal' | 'onChangeContext' | 'onSubmitContext'\n waitFor: Array<{\n processName?: AsyncProcesses\n withStates: Array<SubmitStateWithValidating>\n }>\n withValidatedValueOf?: Value\n }) => {\n return new Promise<void>((resolve) => {\n const fulfill = () => {\n if (\n typeof withValidatedValueOf === 'undefined' ||\n // If the value has changed during the async process, we don't want to resolve anymore\n withValidatedValueOf === validatedWithValue.current\n ) {\n resolve()\n }\n }\n\n const hasAsyncProcesses = () => {\n return waitFor.some(({ processName, withStates }) => {\n return (\n (processName\n ? processName === currentAsyncProcessRef.current\n : true) &&\n withStates.some((state) => {\n return state === fieldStateRef.current\n })\n )\n })\n }\n\n if (hasAsyncProcesses() === true) {\n asyncBufferRef.current[name] = { fulfill, hasAsyncProcesses }\n } else {\n fulfill()\n setFieldState('pending')\n }\n })\n },\n [setFieldState]\n )\n\n const handleChangeEventResult = useCallback(async () => {\n const result: EventStateObjectWithSuccess =\n changeEventResultRef.current\n\n if (typeof result?.error !== 'undefined') {\n persistErrorState('gracefully', result.error)\n showError()\n }\n if (typeof result?.warning !== 'undefined') {\n warningRef.current = result.warning\n }\n if (typeof result?.info !== 'undefined') {\n infoRef.current = result.info\n }\n\n if (asyncBehaviorIsEnabled) {\n await yieldAsyncProcess({\n name: 'onSubmitContext',\n waitFor: [{ withStates: ['validating'] }],\n })\n }\n\n if (result?.success === 'saved') {\n setFieldState('success')\n } else if (result?.error) {\n setFieldState('error')\n } else if (asyncBehaviorIsEnabled) {\n setFieldState('complete')\n }\n }, [\n asyncBehaviorIsEnabled,\n persistErrorState,\n setFieldState,\n showError,\n yieldAsyncProcess,\n ])\n\n const setEventResult = useCallback(\n (result: EventReturnWithStateObjectAndSuccess) => {\n if (result instanceof Error) {\n result = { error: result }\n }\n changeEventResultRef.current = {\n ...changeEventResultRef.current,\n ...result,\n } as EventStateObjectWithSuccess\n\n handleChangeEventResult()\n },\n [handleChangeEventResult]\n )\n\n const callOnChangeContext = useCallback(async () => {\n if (asyncBehaviorIsEnabled) {\n await yieldAsyncProcess({\n name: 'onChangeContext',\n withValidatedValueOf: valueRef.current,\n waitFor: [\n {\n processName: 'validator',\n withStates: ['validating', 'error'],\n },\n {\n processName: 'onBlurValidator',\n withStates: ['validating', 'error'],\n },\n ],\n })\n }\n\n if (path) {\n if (isAsync(onChangeContext)) {\n setCurrentAsyncProcess('onChangeContext')\n setEventResult(\n (await handlePathChangeDataContext?.(\n path,\n valueRef.current\n )) as EventReturnWithStateObjectAndSuccess\n )\n } else {\n setEventResult(\n handlePathChangeDataContext?.(\n path,\n valueRef.current\n ) as EventReturnWithStateObjectAndSuccess\n )\n }\n }\n\n forceUpdate()\n }, [\n asyncBehaviorIsEnabled,\n path,\n yieldAsyncProcess,\n onChangeContext,\n setCurrentAsyncProcess,\n setEventResult,\n handlePathChangeDataContext,\n ])\n\n const updateValue = useCallback(\n async (newValue: Value) => {\n if (newValue === valueRef.current) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n valueRef.current = newValue\n\n addToPool('validator', validateValue, isAsync(validatorRef.current))\n\n addToPool(\n 'onChangeContext',\n callOnChangeContext,\n isAsync(onChangeContext)\n )\n\n await runPool(() => {\n handleError()\n })\n },\n [\n addToPool,\n callOnChangeContext,\n handleError,\n onChangeContext,\n runPool,\n validateValue,\n ]\n )\n\n const handleChange = useCallback(\n async (\n argFromInput: Value,\n additionalArgs: AdditionalEventArgs = undefined\n ) => {\n const currentValue = valueRef.current\n const fromInput = transformers.current.fromInput(argFromInput)\n\n if (fromInput === currentValue) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n const transformedValue = transformers.current.transformValue(\n fromInput,\n currentValue\n )\n\n // Must be set before validation\n changedRef.current = true\n\n if (asyncBehaviorIsEnabled) {\n hideError()\n await updateValue(transformedValue)\n } else {\n updateValue(transformedValue)\n }\n\n const getArgs = (): [Value] | [Value, AdditionalEventArgs] => {\n const value = transformers.current.toEvent(\n valueRef.current,\n 'onChange'\n )\n\n return typeof additionalArgs !== 'undefined'\n ? [value, additionalArgs]\n : [value]\n }\n\n if (isAsync(onChange)) {\n addToPool(\n 'onChangeLocal',\n async () => {\n const args = getArgs()\n\n await yieldAsyncProcess({\n name: 'onChangeLocal',\n withValidatedValueOf: args[0],\n waitFor: [\n {\n processName: 'validator',\n withStates: ['validating', 'error'],\n },\n {\n processName: 'onBlurValidator',\n withStates: ['validating', 'error'],\n },\n {\n processName: 'onChangeContext',\n withStates: ['pending', 'error'],\n },\n ],\n })\n\n setCurrentAsyncProcess('onChangeLocal')\n\n // If the value has changed during the async process, we don't want to call the onChange anymore\n setEventResult(await onChange?.apply(this, args))\n },\n true\n )\n } else {\n setEventResult(onChange?.apply(this, getArgs()))\n }\n\n await runPool(() => {\n if (itemPath) {\n const iterateValuePath = `/${iterateElementIndex}${\n itemPath && itemPath !== '/' ? itemPath : ''\n }`\n handleIterateElementChange?.(iterateValuePath, valueRef.current)\n }\n })\n },\n [\n addToPool,\n asyncBehaviorIsEnabled,\n handleIterateElementChange,\n hideError,\n itemPath,\n iterateElementIndex,\n onChange,\n runPool,\n setCurrentAsyncProcess,\n setEventResult,\n updateValue,\n yieldAsyncProcess,\n ]\n )\n\n const handleFocus = useCallback(() => setHasFocus(true), [setHasFocus])\n const handleBlur = useCallback(() => setHasFocus(false), [setHasFocus])\n\n useMountEffect(() => {\n dataContext?.handleMountField(identifier)\n\n validateValue()\n })\n useUnmountEffect(() => {\n dataContext?.handleUnMountField(identifier)\n })\n\n useUpdateEffect(() => {\n schemaValidatorRef.current = schema\n ? dataContext.ajvInstance?.compile(schema)\n : undefined\n validateValue()\n }, [schema, validateValue])\n\n useUpdateEffect(() => {\n // Error or removed error for this field from the surrounding data context (by path)\n if (valueRef.current !== externalValue) {\n valueRef.current = externalValue\n validateValue()\n }\n forceUpdate()\n }, [externalValue, validateValue])\n\n useEffect(() => {\n const error = prepareError(dataContextError)\n if (errorChanged(error, contextErrorRef.current)) {\n contextErrorRef.current = error\n forceUpdate()\n }\n }, [dataContextError, prepareError])\n\n useEffect(() => {\n if (path) {\n let value = props.value\n\n // First, look for existing data in the context\n const hasValue = pointer.has(dataContext.data, path)\n const existingValue = hasValue\n ? pointer.get(dataContext.data, path)\n : undefined\n\n // If no data where found in the dataContext, look for shared data\n if (\n dataContext.id &&\n !hasValue &&\n typeof existingValue === 'undefined' &&\n typeof value === 'undefined'\n ) {\n const sharedState = createSharedState(dataContext.id)\n const hasValue = pointer.has(sharedState.data, path)\n if (hasValue) {\n const sharedValue = pointer.get(sharedState.data, path)\n if (sharedValue) {\n value = sharedValue\n }\n }\n }\n\n if (\n !hasValue ||\n (value !== existingValue &&\n // Prevents an infinite loop by skipping the update if the value hasn't changed\n valueRef.current !== existingValue)\n ) {\n // Update the data context when a pointer not exists,\n // but was given initially.\n updateDataValueDataContext?.(path, value)\n validateDataDataContext?.()\n }\n }\n }, [\n dataContext.data,\n dataContext.id,\n path,\n props.value,\n updateDataValueDataContext,\n validateDataDataContext,\n ])\n\n useEffect(() => {\n if (dataContext.showAllErrors) {\n // If showError on a surrounding data context was changed and set to true, it is because the user clicked next, submit or\n // something else that should lead to showing the user all errors.\n showError()\n forceUpdate()\n }\n }, [dataContext.showAllErrors, showError])\n\n useEffect(() => {\n if (\n dataContext.formState === 'pending' &&\n (validatorRef.current || onBlurValidatorRef.current)\n ) {\n hideError()\n forceUpdate()\n }\n }, [dataContext.formState, hideError])\n\n const onSubmitHandler = useCallback(async () => {\n if (hasError()) {\n return // stop here\n }\n\n addToPool('validator', callValidator, isAsync(validatorRef.current))\n addToPool(\n 'onBlurValidator',\n callOnBlurValidator,\n isAsync(onBlurValidatorRef.current)\n )\n\n await runPool()\n }, [addToPool, callOnBlurValidator, callValidator, hasError, runPool])\n\n // Validate/call validator functions during submit of the form\n useMountEffect(() => {\n dataContext?.setFieldEventListener?.(\n identifier,\n 'onSubmit',\n onSubmitHandler\n )\n })\n\n // Set the error in the field block context if this field is inside a field block\n useMountEffect(() => {\n if (inFieldBlock) {\n if (errorProp) {\n setFieldStateFieldBlock?.({\n identifier,\n type: 'error',\n content: errorProp,\n showInitially: true,\n show: true,\n })\n }\n if (warning) {\n setFieldStateFieldBlock?.({\n identifier,\n type: 'warning',\n content: warning,\n showInitially: true,\n show: true,\n })\n }\n if (info) {\n setFieldStateFieldBlock?.({\n identifier,\n type: 'info',\n content: info,\n showInitially: true,\n show: true,\n })\n }\n\n return () => {\n // Unmount procedure\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n }\n }\n })\n\n const infoRef = useRef<React.ReactNode>(info)\n const warningRef = useRef<React.ReactNode>(warning)\n useUpdateEffect(() => {\n infoRef.current = info\n warningRef.current = warning\n forceUpdate()\n }, [info, warning])\n\n // - Handle htmlAttributes\n const htmlAttributes = useMemo(() => {\n return Object.keys(props).reduce<AriaAttributes>((acc, cur) => {\n if (cur.startsWith('aria-') || cur.startsWith('data-')) {\n acc[cur] = props[cur]\n }\n return acc\n }, {})\n }, [props])\n\n if (error) {\n htmlAttributes['aria-invalid'] = error ? 'true' : 'false'\n }\n if (required) {\n htmlAttributes['aria-required'] = required ? 'true' : 'false'\n }\n if (inFieldBlock) {\n // Mount the field in the field block context\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n\n // Check if there are any state IDs to be added to the aria-describedby attribute\n const stateIds = fieldBlockContext.fieldStateIdsRef?.current\n\n if (stateIds) {\n htmlAttributes['aria-describedby'] = combineDescribedBy(\n htmlAttributes,\n [\n error && stateIds.error,\n warning && stateIds.warning,\n info && stateIds.info,\n ].filter(Boolean)\n )\n }\n } else {\n const ids = [\n (error || errorProp) && `${id}-form-status--error`,\n warning && `${id}-form-status--warning`,\n info && `${id}-form-status--info`,\n ].filter(Boolean)\n\n if (ids.length) {\n htmlAttributes['aria-describedby'] = combineDescribedBy(\n htmlAttributes,\n ids\n )\n }\n }\n\n const fieldBlockProps = {\n /** Documented APIs */\n info: !inFieldBlock ? infoRef.current : undefined,\n warning: !inFieldBlock ? warningRef.current : undefined,\n error: !inFieldBlock ? error : undefined,\n\n /** HTML Attributes */\n disabled:\n onBlurValidator &&\n currentAsyncProcessRef.current === 'onBlurValidator' &&\n fieldStateRef.current === 'validating'\n ? true\n : disabled,\n\n /** Internal */\n fieldState: resolveValidatingState(fieldStateRef.current),\n }\n\n const sharedData = useSharedState(id)\n sharedData.set(fieldBlockProps)\n\n return {\n ...props,\n ...fieldBlockProps,\n\n /** HTML Attributes */\n name: props.name || props.path?.replace('/', '') || id,\n autoComplete:\n props.autoComplete ??\n (dataContext.autoComplete === true ? 'on' : undefined),\n\n /** Documented APIs */\n id,\n value: transformers.current.toInput(valueRef.current),\n hasError: hasVisibleError,\n isChanged: changedRef.current,\n htmlAttributes,\n setHasFocus,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n\n /** Internal */\n dataContext,\n }\n}\n\nexport interface ReturnAdditional<Value> {\n /** Documented APIs */\n value: Value\n isChanged: boolean\n htmlAttributes: AriaAttributes | DataAttributes\n setHasFocus: (hasFocus: boolean, valueOverride?: unknown) => void\n handleFocus: () => void\n handleBlur: () => void\n handleChange: (\n value: Value,\n additionalArgs?: AdditionalEventArgs\n ) => void\n updateValue: (value: Value) => void\n forceUpdate: () => void\n\n /** Internal */\n dataContext: ContextState\n fieldState: SubmitState\n}\n\nexport function omitFieldProps<\n Props extends FieldProps<unknown> & ReturnAdditional<unknown>,\n>(props: Props) {\n // Do not include typical HTML attributes\n const {\n /** Documented APIs */\n name, // eslint-disable-line\n error, // eslint-disable-line\n warning, // eslint-disable-line\n info, // eslint-disable-line\n hasError, // eslint-disable-line\n isChanged, // eslint-disable-line\n htmlAttributes, // eslint-disable-line\n setHasFocus, // eslint-disable-line\n handleFocus, // eslint-disable-line\n handleBlur, // eslint-disable-line\n handleChange, // eslint-disable-line\n updateValue, // eslint-disable-line\n forceUpdate, // eslint-disable-line\n\n /** HTML Attributes */\n autoComplete, // eslint-disable-line\n\n /** Internal */\n dataContext, // eslint-disable-line\n fieldState, // eslint-disable-line\n ...restProps\n } = props\n\n return restProps\n}\n\nfunction resolveValidatingState(state: SubmitStateWithValidating) {\n return state === 'validating' ? 'pending' : state\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useFieldProps.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_utils","_ajv","_types","_DataContext","_componentHelper","_useId","_useUpdateEffect","_useMountEffect","_useUnmountEffect","_FieldBlockContext","_IterateElementContext","_useProcessManager","_useSharedState","_isAsync","_useLocale","_excluded","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","useFieldProps","props","_props$disabled","_dataContext$props","_dataContext$ajvInsta","_localErrorRef$curren","_ref2","_this","_props$path","_props$autoComplete","path","itemPath","emptyValue","required","info","warning","error","errorProp","errorMessages","onFocus","onBlur","onChange","onBlurValidator","validator","schema","validateInitially","validateUnchanged","continuousValidation","transformIn","transformOut","toInput","fromInput","toEvent","transformValue","fromExternal","validateRequired","_ref","disabled","readOnly","forceUpdate","useReducer","startProcess","useProcessManager","id","useId","dataContext","useContext","DataContext","fieldBlockContext","FieldBlockContext","iterateElementContext","IterateElementContext","tr","useLocale","transformers","useRef","handlePathChangeUnvalidated","handlePathChangeUnvalidatedDataContext","handlePathChange","handlePathChangeDataContext","updateDataValue","updateDataValueDataContext","validateData","validateDataDataContext","setFieldState","setFieldStateDataContext","setFieldError","setFieldErrorDataContext","setProps","setPropsDataContext","errors","dataContextErrors","contextErrorMessages","onChangeContext","dataContextError","inFieldBlock","Boolean","setFieldStateFieldBlock","showFieldError","showFieldErrorFieldBlock","inIterate","index","iterateElementIndex","iterateElementValue","handleChange","handleIterateElementChange","substring","Error","identifier","useMemo","externalValue","current","pointer","has","get","data","valueRef","changedRef","hasFocusRef","showErrorRef","errorMethodRef","localErrorRef","contextErrorRef","validatorRef","useUpdateEffect","onBlurValidatorRef","schemaValidatorRef","ajvInstance","compile","asyncBehaviorIsEnabled","isAsync","validatedValue","changeEventResultRef","asyncProcessRef","defineAsyncProcess","useCallback","name","asyncBufferRef","resolve","validateProcesses","window","requestAnimationFrame","eventPool","onChangeLocal","addToPool","fn","runAsync","runPool","cb","pending","fieldStateRef","state","resolveValidatingState","showError","hideError","hasVisibleError","hasErrorProp","hasError","_ref3","errorMessagesRef","Field","errorRequired","prepareError","FormError","_error$messageValues","message","validationRule","_errorMessagesRef$cur","fieldMessage","messageWithValues","entries","messageValues","reduce","_ref4","replace","stateId","persistErrorState","method","errorArg","errorChanged","type","content","showInitially","clearErrorState","callValidator","opts","tmpValue","result","unchangedValue","callOnBlurValidator","valueOverride","validateValue","isProcessActive","requiredError","isChanged","ajvErrorsToOneFormError","handleError","setHasFocus","hasFocus","yieldAsyncProcess","_ref5","waitFor","Promise","some","_ref6","processName","withStates","withValue","hasMatchingValue","handleChangeEventResult","warningRef","infoRef","success","setEventResult","callOnChangeContext","updateValue","newValue","argFromInput","additionalArgs","currentValue","transformedValue","getArgs","args","iterateValuePath","handleFocus","handleBlur","useMountEffect","handleMountField","useUnmountEffect","handleUnMountField","_dataContext$ajvInsta2","useEffect","hasValue","existingValue","sharedState","createSharedState","sharedValue","showAllErrors","formState","onSubmitHandler","_dataContext$setField","setFieldEventListener","show","mountedFieldsRef","htmlAttributes","acc","cur","startsWith","_fieldBlockContext$fi","stateIds","fieldStateIdsRef","combineDescribedBy","ids","fieldBlockProps","fieldState","sharedData","useSharedState","set","autoComplete","omitFieldProps","restProps"],"sources":["../../../../../src/extensions/forms/hooks/useFieldProps.ts"],"sourcesContent":["import {\n useRef,\n useEffect,\n useContext,\n useCallback,\n useMemo,\n useReducer,\n AriaAttributes,\n} from 'react'\nimport pointer from 'json-pointer'\nimport { ValidateFunction } from 'ajv/dist/2020'\nimport { errorChanged } from '../utils'\nimport { ajvErrorsToOneFormError } from '../utils/ajv'\nimport {\n FormError,\n FieldProps,\n AdditionalEventArgs,\n SubmitState,\n EventReturnWithStateObjectAndSuccess,\n EventStateObjectWithSuccess,\n} from '../types'\nimport { Context as DataContext, ContextState } from '../DataContext'\nimport { combineDescribedBy } from '../../../shared/component-helper'\nimport useId from '../../../shared/helpers/useId'\nimport useUpdateEffect from '../../../shared/helpers/useUpdateEffect'\nimport useMountEffect from '../../../shared/helpers/useMountEffect'\nimport useUnmountEffect from '../../../shared/helpers/useUnmountEffect'\nimport FieldBlockContext from '../FieldBlock/FieldBlockContext'\nimport IterateElementContext from '../Iterate/IterateElementContext'\nimport useProcessManager from './useProcessManager'\nimport {\n createSharedState,\n useSharedState,\n} from '../../../shared/helpers/useSharedState'\nimport { isAsync } from '../../../shared/helpers/isAsync'\nimport useLocale from './useLocale'\n\ntype SubmitStateWithValidating = SubmitState | 'validating'\ntype AsyncProcesses =\n | 'validator'\n | 'onBlurValidator'\n | 'onChangeLocal'\n | 'onChangeContext'\ntype PersistErrorStateMethod =\n /**\n * Add or remove the error regardless\n */\n | 'weak'\n /**\n * Check if there is an existing error, and if so, keep it\n */\n | 'gracefully'\n /**\n * Remove the error, if any\n */\n | 'wipe'\ntype AsyncProcessesBuffer = {\n resolve: () => void\n validateProcesses: () => boolean\n}\n\nexport type DataAttributes = {\n [property: `data-${string}`]: string\n}\n\nexport default function useFieldProps<\n Value = unknown,\n Props extends FieldProps<Value> = FieldProps<Value>,\n>(props: Props): Props & FieldProps<Value> & ReturnAdditional<Value> {\n const {\n path,\n itemPath,\n emptyValue,\n required,\n info,\n warning,\n error: errorProp,\n errorMessages,\n onFocus,\n onBlur,\n onChange,\n onBlurValidator,\n validator,\n schema,\n validateInitially,\n validateUnchanged,\n continuousValidation,\n transformIn = (value: Value) => value,\n transformOut = (value: Value) => value,\n toInput = (value: Value) => value,\n fromInput = (value: Value) => value,\n toEvent = (value: Value) => value,\n transformValue = (value: Value) => value,\n fromExternal = (value: Value) => value,\n validateRequired = (value: Value, { emptyValue, required, error }) => {\n const res =\n required &&\n (value === emptyValue ||\n (typeof emptyValue === 'undefined' && value === ''))\n ? error\n : undefined\n\n return res\n },\n } = props\n\n const disabled = props.disabled ?? props.readOnly\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { startProcess } = useProcessManager()\n const id = useId(props.id)\n const dataContext = useContext(DataContext)\n const fieldBlockContext = useContext(FieldBlockContext)\n const iterateElementContext = useContext(IterateElementContext)\n const tr = useLocale()\n\n const transformers = useRef({\n transformIn,\n transformOut,\n toInput,\n fromInput,\n toEvent,\n fromExternal,\n transformValue,\n validateRequired,\n })\n\n const {\n handlePathChangeUnvalidated: handlePathChangeUnvalidatedDataContext,\n handlePathChange: handlePathChangeDataContext,\n updateDataValue: updateDataValueDataContext,\n validateData: validateDataDataContext,\n setFieldState: setFieldStateDataContext,\n setFieldError: setFieldErrorDataContext,\n setProps: setPropsDataContext,\n errors: dataContextErrors,\n contextErrorMessages,\n } = dataContext ?? {}\n const onChangeContext = dataContext?.props?.onChange\n\n const dataContextError = path ? dataContextErrors?.[path] : undefined\n const inFieldBlock = Boolean(fieldBlockContext)\n const {\n setFieldState: setFieldStateFieldBlock,\n showFieldError: showFieldErrorFieldBlock,\n } = fieldBlockContext ?? {}\n const inIterate = Boolean(iterateElementContext)\n const {\n index: iterateElementIndex,\n value: iterateElementValue,\n handleChange: handleIterateElementChange,\n } = iterateElementContext ?? {}\n\n if (path && path.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid path. Data value path JSON Pointers must be from root (starting with a /).'\n )\n }\n if (itemPath && itemPath.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid itemPath. Item pathJSON Pointers must be from root of iterate element (starting with a /).'\n )\n }\n if (itemPath && !iterateElementContext) {\n throw new Error(\n 'itemPath cannot be used when not inside an iterate element context. Wrap the component in an Iterate.Loop.'\n )\n }\n\n const identifier = useMemo(() => {\n // Identifier is used is registries of multiple fields, like in the DataContext keeping track of errors\n return path ?? id\n }, [path, id])\n\n const externalValue = useMemo(() => {\n if (props.value !== emptyValue) {\n // Value-prop sent directly to the field has highest priority, overriding any surrounding source\n return transformers.current.fromExternal(props.value)\n }\n\n if (inIterate && itemPath) {\n // This field is inside an iterate, and has a pointer from the base of the element being iterated\n if (itemPath === '/') {\n return iterateElementValue\n }\n\n return pointer.has(iterateElementValue, itemPath)\n ? pointer.get(iterateElementValue, itemPath)\n : emptyValue\n }\n\n if (dataContext.data && path) {\n // There is a surrounding data context and a path for where in the source to find the data\n if (path === '/') {\n return dataContext.data\n }\n\n return pointer.has(dataContext.data, path)\n ? pointer.get(dataContext.data, path)\n : emptyValue\n }\n\n return emptyValue\n }, [\n props.value,\n emptyValue,\n inIterate,\n itemPath,\n dataContext.data,\n path,\n iterateElementValue,\n ])\n\n // Many variables are kept in refs to avoid triggering unnecessary update loops because updates using\n // useEffect depend on them (like the external `value`)\n\n // Hold an internal copy of the input value in case the input component is used uncontrolled,\n // and to handle errors in Eufemia on components that does not take updated callback functions into account.\n const valueRef = useRef<Value>(externalValue)\n const changedRef = useRef<boolean>(false)\n const hasFocusRef = useRef<boolean>(false)\n\n // Error handling\n // - Should errors received through validation be shown initially. Assume that providing a direct prop to\n // the component means it is supposed to be shown initially.\n const showErrorRef = useRef<boolean>(\n Boolean(validateInitially || errorProp)\n )\n // - Local errors are errors based on validation instructions received by\n const errorMethodRef = useRef<\n Partial<Record<PersistErrorStateMethod, Error | FormError>>\n >({})\n const localErrorRef = useRef<Error | FormError | undefined>()\n // - Context errors are from outer contexts, like validation for this field as part of the whole data set\n const contextErrorRef = useRef<Error | FormError | undefined>(\n dataContextError\n )\n\n const validatorRef = useRef(validator)\n useUpdateEffect(() => {\n validatorRef.current = validator\n }, [validator])\n const onBlurValidatorRef = useRef(onBlurValidator)\n useUpdateEffect(() => {\n onBlurValidatorRef.current = onBlurValidator\n }, [onBlurValidator])\n\n const schemaValidatorRef = useRef<ValidateFunction>(\n schema ? dataContext.ajvInstance?.compile(schema) : undefined\n )\n\n // - Async behavior\n const asyncBehaviorIsEnabled = useMemo(() => {\n return isAsync(onChange) || isAsync(onChangeContext)\n }, [onChangeContext, onChange])\n const validatedValue = useRef<Value>()\n const changeEventResultRef = useRef<EventStateObjectWithSuccess>(null)\n const asyncProcessRef = useRef<AsyncProcesses>(null)\n const defineAsyncProcess = useCallback((name: AsyncProcesses) => {\n asyncProcessRef.current = name\n }, [])\n\n // When both an async onChange and async validators are used,\n // we buffer the onChange calls to avoid race conditions.\n const asyncBufferRef = useRef<\n Record<AsyncProcesses, AsyncProcessesBuffer> | Record<string, unknown>\n >({})\n\n for (const key in asyncBufferRef.current) {\n const { resolve, validateProcesses } = (asyncBufferRef.current[key] ||\n {}) as AsyncProcessesBuffer\n if (validateProcesses?.() === false) {\n delete asyncBufferRef.current[key]\n if (typeof resolve === 'function') {\n window.requestAnimationFrame(resolve)\n }\n }\n }\n\n const eventPool = useRef({\n validator: null,\n onBlurValidator: null,\n onChangeContext: null,\n onChangeLocal: null,\n })\n\n const addToPool = useCallback(\n (name: keyof typeof eventPool.current, fn, runAsync) => {\n if (!eventPool.current[name]) {\n eventPool.current[name] = { fn, runAsync }\n }\n },\n []\n )\n\n const runPool = useCallback(async (cb = null) => {\n for (const key in eventPool.current) {\n if (!eventPool.current[key] || eventPool.current[key].pending) {\n continue\n }\n\n const { fn, runAsync } = eventPool.current[key] || {}\n if (fn) {\n eventPool.current[key].pending = true\n eventPool.current[key] = null\n\n if (runAsync) {\n await fn()\n } else {\n fn()\n }\n }\n }\n\n // use a callback in order to avoid any async/await,\n // because it will delay the execution of the following code\n cb?.()\n }, [])\n\n // Put props into the surrounding data context\n setPropsDataContext?.(identifier, props)\n\n const fieldStateRef = useRef<SubmitStateWithValidating>()\n const setFieldState = useCallback(\n (state: SubmitStateWithValidating) => {\n fieldStateRef.current = state\n setFieldStateDataContext(identifier, resolveValidatingState(state))\n if (!validateInitially) {\n forceUpdate()\n }\n },\n [setFieldStateDataContext, identifier, validateInitially]\n )\n\n const showError = useCallback(() => {\n showErrorRef.current = true\n showFieldErrorFieldBlock?.(identifier, true)\n }, [showFieldErrorFieldBlock, identifier])\n\n const hideError = useCallback(() => {\n showErrorRef.current = false\n showFieldErrorFieldBlock?.(identifier, false)\n }, [showFieldErrorFieldBlock, identifier])\n\n const error =\n showErrorRef.current ||\n // If the error is a type error, we want to show it even if the field as not been used\n localErrorRef.current?.['validationRule'] === 'type'\n ? errorProp ?? localErrorRef.current ?? contextErrorRef.current\n : undefined\n\n const hasVisibleError =\n Boolean(error) || (inFieldBlock && fieldBlockContext.hasErrorProp)\n const hasError = useCallback(() => {\n return Boolean(\n errorProp ?? localErrorRef.current ?? contextErrorRef.current\n )\n }, [errorProp])\n\n const errorMessagesRef = useRef(null)\n errorMessagesRef.current = useMemo(() => {\n return {\n required: tr.Field.errorRequired,\n ...errorMessages,\n }\n }, [errorMessages, tr.Field.errorRequired])\n\n /**\n * Prepare error from validation logic with correct error messages based on props\n */\n const prepareError = useCallback(\n (error: Error | FormError | undefined): FormError | undefined => {\n if (error instanceof FormError) {\n let message = error.message\n\n const { validationRule } = error\n if (typeof validationRule === 'string') {\n const fieldMessage = errorMessagesRef.current?.[validationRule]\n if (fieldMessage) {\n message = fieldMessage\n }\n }\n\n const messageWithValues = Object.entries(\n error.messageValues ?? {}\n ).reduce((message, [key, value]) => {\n return message.replace(`{${key}}`, value)\n }, message)\n\n error.message = messageWithValues\n\n return error\n }\n\n return error\n },\n []\n )\n\n /**\n * Based on validation, update error state, locally and relevant surrounding contexts\n */\n const stateId = useId()\n const persistErrorState = useCallback(\n (\n method: PersistErrorStateMethod,\n errorArg: Error | FormError | undefined = undefined\n ) => {\n const error = prepareError(errorArg)\n\n if (!errorChanged(error, localErrorRef.current)) {\n // In case different triggers lead to validation with no changes in the result (like still no error, or the same error),\n // avoid unnecessary re-renders by letting the old error object stay in the state and skip re-rendering.\n return\n }\n\n if (method === 'wipe') {\n errorMethodRef.current = {}\n } else {\n errorMethodRef.current[method] = error\n }\n\n if (\n !error &&\n method === 'gracefully' &&\n Object.keys(errorMethodRef.current).filter(Boolean).length > 0\n ) {\n // If the error is removed, we need to check if there are other errors that still should be shown\n return\n }\n\n localErrorRef.current = error\n\n // Tell the data context about the error, so it can stop the user from submitting the form until the error has been fixed\n setFieldErrorDataContext?.(identifier, error)\n\n // Set the visual states\n setFieldStateDataContext?.(identifier, error ? 'error' : undefined)\n setFieldStateFieldBlock?.({\n stateId,\n identifier,\n type: 'error',\n content: error,\n showInitially: Boolean(inFieldBlock && validateInitially),\n })\n\n forceUpdate()\n },\n [\n prepareError,\n setFieldErrorDataContext,\n identifier,\n setFieldStateDataContext,\n setFieldStateFieldBlock,\n stateId,\n inFieldBlock,\n validateInitially,\n ]\n )\n\n const clearErrorState = useCallback(() => {\n persistErrorState('wipe')\n }, [persistErrorState])\n\n const callValidator = useCallback(async () => {\n if (typeof validatorRef.current !== 'function') {\n return\n }\n\n const runAsync = isAsync(validatorRef.current)\n\n if (runAsync) {\n defineAsyncProcess('validator')\n setFieldState('validating')\n hideError()\n }\n\n const opts = {\n ...contextErrorMessages,\n ...errorMessagesRef.current,\n }\n\n const tmpValue = valueRef.current\n\n // Run async regardless to support Promise based validators\n const result = await validatorRef.current(valueRef.current, opts)\n\n const unchangedValue = tmpValue === valueRef.current\n\n // Don't show the error if the value has changed in the meantime\n if (unchangedValue) {\n persistErrorState('gracefully', result as Error)\n\n // Because its a better UX to show the error when the validation is async/delayed\n if (continuousValidation || runAsync) {\n // Because we first need to throw the error to be able to display it, we delay the showError call\n window.requestAnimationFrame(() => {\n showError()\n forceUpdate()\n })\n }\n }\n\n if (runAsync) {\n defineAsyncProcess(undefined)\n\n if (unchangedValue) {\n setFieldState(result instanceof Error ? 'error' : 'complete')\n } else {\n setFieldState('pending')\n }\n }\n\n return result\n }, [\n contextErrorMessages,\n continuousValidation,\n hideError,\n persistErrorState,\n defineAsyncProcess,\n setFieldState,\n showError,\n ])\n\n const callOnBlurValidator = useCallback(\n async ({ valueOverride = null } = {}) => {\n if (typeof onBlurValidatorRef.current !== 'function') {\n return\n }\n // External blur validators makes it possible to validate values but not on every character change in case of\n // expensive validation calling external services etc.\n\n // Since the validator can return either a synchronous result or an asynchronous\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlurValidator'\n )\n\n const runAsync = isAsync(onBlurValidatorRef.current)\n\n if (runAsync) {\n defineAsyncProcess('onBlurValidator')\n setFieldState('validating')\n }\n\n // Run async regardless to support Promise based validators\n const result = await onBlurValidatorRef.current(value)\n\n persistErrorState('gracefully', result as Error)\n\n if (runAsync) {\n defineAsyncProcess(undefined)\n setFieldState(result instanceof Error ? 'error' : 'complete')\n }\n\n showError()\n forceUpdate()\n },\n [persistErrorState, defineAsyncProcess, setFieldState, showError]\n )\n\n /**\n * Validate the current state value by provided validator instructions\n */\n const validateValue = useCallback(async () => {\n const isProcessActive = startProcess()\n\n if (disabled) {\n if (isProcessActive()) {\n clearErrorState()\n }\n hideError()\n setFieldState(undefined)\n return // stop here\n }\n\n const value = valueRef.current\n changeEventResultRef.current = null\n validatedValue.current = null\n\n try {\n // Validate required\n const requiredError = transformers.current.validateRequired(value, {\n emptyValue,\n required,\n isChanged: changedRef.current,\n error: new FormError('The value is required', {\n validationRule: 'required',\n }),\n })\n if (requiredError instanceof Error) {\n throw requiredError\n }\n\n // Validate by provided JSON Schema for this value\n if (\n schemaValidatorRef.current &&\n value !== undefined &&\n !schemaValidatorRef.current(value)\n ) {\n const error = ajvErrorsToOneFormError(\n schemaValidatorRef.current.errors,\n valueRef.current\n )\n throw error\n }\n\n // Validate by provided derivative validator\n if (\n validatorRef.current &&\n (changedRef.current || validateInitially)\n ) {\n const result = await callValidator()\n\n if (result instanceof Error) {\n throw result\n }\n }\n\n if (isProcessActive()) {\n clearErrorState()\n }\n\n validatedValue.current = value\n } catch (error: unknown) {\n if (isProcessActive()) {\n persistErrorState('weak', error as Error)\n }\n }\n }, [\n startProcess,\n disabled,\n hideError,\n setFieldState,\n clearErrorState,\n emptyValue,\n required,\n validateInitially,\n callValidator,\n persistErrorState,\n ])\n\n const handleError = useCallback(() => {\n if (\n continuousValidation ||\n (continuousValidation !== false && !hasFocusRef.current)\n ) {\n // When there is a change to the value without there having been any focus callback beforehand, it is likely\n // to believe that the blur callback will not be called either, which would trigger the display of the error.\n // The error is therefore displayed immediately (unless instructed not to with continuousValidation set to false).\n showError()\n } else {\n // When changing the value, hide errors to avoid annoying the user before they are finished filling in that value\n hideError()\n }\n }, [continuousValidation, hideError, showError])\n\n const setHasFocus = useCallback(\n async (hasFocus: boolean, valueOverride?: Value) => {\n if (hasFocus) {\n // Field was put in focus (like when clicking in a text field or opening a dropdown menu)\n hasFocusRef.current = true\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onFocus'\n )\n onFocus?.(value)\n } else {\n // Field was removed from focus (like when tabbing out of a text field or closing a dropdown menu)\n hasFocusRef.current = false\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlur'\n )\n onBlur?.(value)\n\n if (!changedRef.current && !validateUnchanged) {\n // Avoid showing errors when blurring without having changed the value, so tabbing through several\n // fields does not make errors pop up all over the place\n return\n }\n\n addToPool(\n 'onBlurValidator',\n async () => await callOnBlurValidator({ valueOverride }),\n isAsync(onBlurValidatorRef.current)\n )\n\n await runPool(() => {\n // Since the user left the field, show error (if any)\n showError()\n forceUpdate()\n })\n }\n },\n [\n addToPool,\n callOnBlurValidator,\n onBlur,\n onFocus,\n runPool,\n showError,\n validateUnchanged,\n ]\n )\n\n // Await an async operation to run after criteria are fulfilled\n const yieldAsyncProcess = useCallback(\n async ({\n name,\n waitFor,\n }: {\n name: 'onChangeLocal' | 'onChangeContext' | 'onSubmitContext'\n waitFor: Array<{\n processName?: AsyncProcesses\n withStates: Array<SubmitStateWithValidating>\n withValue?: Value\n }>\n }) => {\n return new Promise<void>((resolve) => {\n const validateProcesses = () => {\n const result = waitFor.some(\n ({ processName, withStates, withValue }) => {\n const hasMatchingValue =\n // If the value has changed during the async process, we don't want to resolve anymore\n withValue === validatedValue.current\n\n const result =\n (typeof withValue === 'undefined'\n ? false\n : !hasMatchingValue) ||\n ((processName\n ? processName === asyncProcessRef.current\n : true) &&\n withStates?.some((state) => {\n return state === fieldStateRef.current\n }))\n\n return result\n }\n )\n\n return result\n }\n\n if (validateProcesses() === true) {\n asyncBufferRef.current[name] = { resolve, validateProcesses }\n } else {\n resolve()\n setFieldState('pending')\n }\n })\n },\n [setFieldState]\n )\n\n const handleChangeEventResult = useCallback(async () => {\n const result: EventStateObjectWithSuccess =\n changeEventResultRef.current\n\n if (typeof result?.error !== 'undefined') {\n persistErrorState('gracefully', result.error)\n showError()\n }\n if (typeof result?.warning !== 'undefined') {\n warningRef.current = result.warning\n }\n if (typeof result?.info !== 'undefined') {\n infoRef.current = result.info\n }\n\n if (asyncBehaviorIsEnabled) {\n await yieldAsyncProcess({\n name: 'onSubmitContext',\n waitFor: [{ withStates: ['validating'] }],\n })\n }\n\n defineAsyncProcess(undefined)\n\n if (result?.success === 'saved') {\n setFieldState('success')\n } else if (result?.error) {\n setFieldState('error')\n } else if (asyncBehaviorIsEnabled) {\n setFieldState('complete')\n }\n }, [\n asyncBehaviorIsEnabled,\n defineAsyncProcess,\n persistErrorState,\n setFieldState,\n showError,\n yieldAsyncProcess,\n ])\n\n const setEventResult = useCallback(\n (result: EventReturnWithStateObjectAndSuccess) => {\n if (result instanceof Error) {\n result = { error: result }\n }\n changeEventResultRef.current = {\n ...changeEventResultRef.current,\n ...result,\n } as EventStateObjectWithSuccess\n\n handleChangeEventResult()\n },\n [handleChangeEventResult]\n )\n\n const callOnChangeContext = useCallback(async () => {\n if (asyncBehaviorIsEnabled) {\n await yieldAsyncProcess({\n name: 'onChangeContext',\n waitFor: [\n {\n processName: 'validator',\n withStates: ['validating', 'error'],\n withValue: valueRef.current,\n },\n {\n processName: 'onBlurValidator',\n withStates: ['validating', 'error'],\n withValue: valueRef.current,\n },\n ],\n })\n }\n\n if (path) {\n if (isAsync(onChangeContext)) {\n defineAsyncProcess('onChangeContext')\n\n // Skip sync errors, such as required\n if (!hasError()) {\n setEventResult(\n (await handlePathChangeDataContext?.(\n path\n )) as EventReturnWithStateObjectAndSuccess\n )\n } else {\n setEventResult(null)\n }\n } else {\n setEventResult(\n handlePathChangeDataContext?.(\n path\n ) as EventReturnWithStateObjectAndSuccess\n )\n }\n }\n\n forceUpdate()\n }, [\n asyncBehaviorIsEnabled,\n path,\n hasError,\n yieldAsyncProcess,\n onChangeContext,\n defineAsyncProcess,\n setEventResult,\n handlePathChangeDataContext,\n ])\n\n const updateValue = useCallback(\n async (newValue: Value) => {\n if (newValue === valueRef.current) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n valueRef.current = newValue\n\n handlePathChangeUnvalidatedDataContext(path, newValue)\n\n addToPool('validator', validateValue, isAsync(validatorRef.current))\n\n addToPool(\n 'onChangeContext',\n callOnChangeContext,\n isAsync(onChangeContext)\n )\n\n await runPool(() => {\n handleError()\n })\n },\n [\n handlePathChangeUnvalidatedDataContext,\n path,\n addToPool,\n validateValue,\n callOnChangeContext,\n onChangeContext,\n runPool,\n handleError,\n ]\n )\n\n const handleChange = useCallback(\n async (\n argFromInput: Value,\n additionalArgs: AdditionalEventArgs = undefined\n ) => {\n const currentValue = valueRef.current\n const fromInput = transformers.current.fromInput(argFromInput)\n\n if (fromInput === currentValue) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n const transformedValue = transformers.current.transformOut(\n transformers.current.transformValue(fromInput, currentValue)\n )\n\n // Must be set before validation\n changedRef.current = true\n\n if (asyncBehaviorIsEnabled) {\n hideError()\n await updateValue(transformedValue)\n } else {\n updateValue(transformedValue)\n }\n\n const getArgs = (): [Value] | [Value, AdditionalEventArgs] => {\n const value = transformers.current.toEvent(\n valueRef.current,\n 'onChange'\n )\n\n return typeof additionalArgs !== 'undefined'\n ? [value, additionalArgs]\n : [value]\n }\n\n if (isAsync(onChange)) {\n addToPool(\n 'onChangeLocal',\n async () => {\n const args = getArgs()\n\n await yieldAsyncProcess({\n name: 'onChangeLocal',\n waitFor: [\n {\n processName: 'validator',\n withStates: ['validating', 'error'],\n withValue: args[0],\n },\n {\n processName: 'onBlurValidator',\n withStates: ['validating', 'error'],\n withValue: args[0],\n },\n {\n processName: 'onChangeContext',\n withStates: ['pending', 'error'],\n withValue: args[0],\n },\n ],\n })\n\n defineAsyncProcess('onChangeLocal')\n\n // Skip sync errors, such as required\n if (!hasError()) {\n // If the value has changed during the async process, we don't want to call the onChange anymore\n setEventResult(await onChange?.apply(this, args))\n } else {\n setEventResult(null)\n }\n },\n true\n )\n } else {\n setEventResult(onChange?.apply(this, getArgs()))\n }\n\n await runPool(() => {\n if (itemPath) {\n const iterateValuePath = `/${iterateElementIndex}${\n itemPath && itemPath !== '/' ? itemPath : ''\n }`\n handleIterateElementChange?.(iterateValuePath, valueRef.current)\n }\n })\n },\n [\n addToPool,\n asyncBehaviorIsEnabled,\n handleIterateElementChange,\n hasError,\n hideError,\n itemPath,\n iterateElementIndex,\n onChange,\n runPool,\n defineAsyncProcess,\n setEventResult,\n updateValue,\n yieldAsyncProcess,\n ]\n )\n\n const handleFocus = useCallback(() => setHasFocus(true), [setHasFocus])\n const handleBlur = useCallback(() => setHasFocus(false), [setHasFocus])\n\n useMountEffect(() => {\n dataContext?.handleMountField(identifier)\n\n validateValue()\n })\n useUnmountEffect(() => {\n dataContext?.handleUnMountField(identifier)\n })\n\n useUpdateEffect(() => {\n schemaValidatorRef.current = schema\n ? dataContext.ajvInstance?.compile(schema)\n : undefined\n validateValue()\n }, [schema, validateValue])\n\n useUpdateEffect(() => {\n // Error or removed error for this field from the surrounding data context (by path)\n if (valueRef.current !== externalValue) {\n valueRef.current = externalValue\n validateValue()\n }\n forceUpdate()\n }, [externalValue, validateValue])\n\n useEffect(() => {\n const error = prepareError(dataContextError)\n if (errorChanged(error, contextErrorRef.current)) {\n contextErrorRef.current = error\n forceUpdate()\n }\n }, [dataContextError, prepareError])\n\n useEffect(() => {\n if (path) {\n let value = props.value\n\n // First, look for existing data in the context\n const hasValue = pointer.has(dataContext.data, path)\n const existingValue = hasValue\n ? pointer.get(dataContext.data, path)\n : undefined\n\n // If no data where found in the dataContext, look for shared data\n if (\n dataContext.id &&\n !hasValue &&\n typeof existingValue === 'undefined' &&\n typeof value === 'undefined'\n ) {\n const sharedState = createSharedState(dataContext.id)\n const hasValue = pointer.has(sharedState.data, path)\n if (hasValue) {\n const sharedValue = pointer.get(sharedState.data, path)\n if (sharedValue) {\n value = sharedValue\n }\n }\n }\n\n if (\n !hasValue ||\n (value !== existingValue &&\n // Prevents an infinite loop by skipping the update if the value hasn't changed\n valueRef.current !== existingValue)\n ) {\n // Update the data context when a pointer not exists,\n // but was given initially.\n updateDataValueDataContext?.(path, value)\n validateDataDataContext?.()\n }\n }\n }, [\n dataContext.data,\n dataContext.id,\n path,\n props.value,\n updateDataValueDataContext,\n validateDataDataContext,\n ])\n\n useEffect(() => {\n if (dataContext.showAllErrors) {\n // In case of async validation, we don't want to show existing errors before the validation has been completed\n if (fieldStateRef.current !== 'validating') {\n // If showError on a surrounding data context was changed and set to true, it is because the user clicked next, submit or\n // something else that should lead to showing the user all errors.\n showError()\n forceUpdate()\n }\n }\n }, [dataContext.showAllErrors, showError])\n\n useEffect(() => {\n if (\n dataContext.formState === 'pending' &&\n (validatorRef.current || onBlurValidatorRef.current)\n ) {\n hideError()\n forceUpdate()\n }\n }, [dataContext.formState, hideError])\n\n const onSubmitHandler = useCallback(async () => {\n if (hasError()) {\n return // stop here\n }\n\n addToPool('validator', callValidator, isAsync(validatorRef.current))\n addToPool(\n 'onBlurValidator',\n callOnBlurValidator,\n isAsync(onBlurValidatorRef.current)\n )\n\n await runPool()\n }, [addToPool, callOnBlurValidator, callValidator, hasError, runPool])\n\n // Validate/call validator functions during submit of the form\n useMountEffect(() => {\n dataContext?.setFieldEventListener?.(\n identifier,\n 'onSubmit',\n onSubmitHandler\n )\n })\n\n // Set the error in the field block context if this field is inside a field block\n useMountEffect(() => {\n if (inFieldBlock) {\n if (errorProp) {\n setFieldStateFieldBlock?.({\n identifier,\n type: 'error',\n content: errorProp,\n showInitially: true,\n show: true,\n })\n }\n if (warning) {\n setFieldStateFieldBlock?.({\n identifier,\n type: 'warning',\n content: warning,\n showInitially: true,\n show: true,\n })\n }\n if (info) {\n setFieldStateFieldBlock?.({\n identifier,\n type: 'info',\n content: info,\n showInitially: true,\n show: true,\n })\n }\n\n return () => {\n // Unmount procedure\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n }\n }\n })\n\n const infoRef = useRef<React.ReactNode>(info)\n const warningRef = useRef<React.ReactNode>(warning)\n useUpdateEffect(() => {\n infoRef.current = info\n warningRef.current = warning\n forceUpdate()\n }, [info, warning])\n\n // - Handle htmlAttributes\n const htmlAttributes = useMemo(() => {\n return Object.keys(props).reduce<AriaAttributes>((acc, cur) => {\n if (cur.startsWith('aria-') || cur.startsWith('data-')) {\n acc[cur] = props[cur]\n }\n return acc\n }, {})\n }, [props])\n\n if (error) {\n htmlAttributes['aria-invalid'] = error ? 'true' : 'false'\n }\n if (required) {\n htmlAttributes['aria-required'] = required ? 'true' : 'false'\n }\n if (inFieldBlock) {\n // Mount the field in the field block context\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n\n // Check if there are any state IDs to be added to the aria-describedby attribute\n const stateIds = fieldBlockContext.fieldStateIdsRef?.current\n\n if (stateIds) {\n htmlAttributes['aria-describedby'] = combineDescribedBy(\n htmlAttributes,\n [\n error && stateIds.error,\n warning && stateIds.warning,\n info && stateIds.info,\n ].filter(Boolean)\n )\n }\n } else {\n const ids = [\n (error || errorProp) && `${id}-form-status--error`,\n warning && `${id}-form-status--warning`,\n info && `${id}-form-status--info`,\n ].filter(Boolean)\n\n if (ids.length) {\n htmlAttributes['aria-describedby'] = combineDescribedBy(\n htmlAttributes,\n ids\n )\n }\n }\n\n const fieldBlockProps = {\n /** Documented APIs */\n info: !inFieldBlock ? infoRef.current : undefined,\n warning: !inFieldBlock ? warningRef.current : undefined,\n error: !inFieldBlock ? error : undefined,\n\n /** HTML Attributes */\n disabled:\n onBlurValidator &&\n asyncProcessRef.current === 'onBlurValidator' &&\n fieldStateRef.current === 'validating'\n ? true\n : disabled,\n\n /** Internal */\n fieldState: resolveValidatingState(fieldStateRef.current),\n }\n\n const sharedData = useSharedState(id)\n sharedData.set(fieldBlockProps)\n\n return {\n ...props,\n ...fieldBlockProps,\n\n /** HTML Attributes */\n name: props.name || props.path?.replace('/', '') || id,\n autoComplete:\n props.autoComplete ??\n (dataContext.autoComplete === true ? 'on' : undefined),\n\n /** Documented APIs */\n id,\n value: transformers.current.transformIn(\n transformers.current.toInput(valueRef.current)\n ),\n hasError: hasVisibleError,\n isChanged: changedRef.current,\n htmlAttributes,\n setHasFocus,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n\n /** Internal */\n dataContext,\n }\n}\n\nexport interface ReturnAdditional<Value> {\n /** Documented APIs */\n value: Value\n isChanged: boolean\n htmlAttributes: AriaAttributes | DataAttributes\n setHasFocus: (hasFocus: boolean, valueOverride?: unknown) => void\n handleFocus: () => void\n handleBlur: () => void\n handleChange: (\n value: Value,\n additionalArgs?: AdditionalEventArgs\n ) => void\n updateValue: (value: Value) => void\n forceUpdate: () => void\n\n /** Internal */\n dataContext: ContextState\n fieldState: SubmitState\n}\n\nexport function omitFieldProps<\n Props extends FieldProps<unknown> & ReturnAdditional<unknown>,\n>(props: Props) {\n // Do not include typical HTML attributes\n const {\n /** Documented APIs */\n name, // eslint-disable-line\n error, // eslint-disable-line\n warning, // eslint-disable-line\n info, // eslint-disable-line\n hasError, // eslint-disable-line\n isChanged, // eslint-disable-line\n htmlAttributes, // eslint-disable-line\n setHasFocus, // eslint-disable-line\n handleFocus, // eslint-disable-line\n handleBlur, // eslint-disable-line\n handleChange, // eslint-disable-line\n updateValue, // eslint-disable-line\n forceUpdate, // eslint-disable-line\n\n /** HTML Attributes */\n autoComplete, // eslint-disable-line\n\n /** Internal */\n dataContext, // eslint-disable-line\n fieldState, // eslint-disable-line\n ...restProps\n } = props\n\n return restProps\n}\n\nfunction resolveValidatingState(state: SubmitStateWithValidating) {\n return state === 'validating' ? 'pending' : state\n}\n"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { DeepPartial } from '../../../shared/types';
2
+ import formsLocales from '../constants/locales';
3
+ export type FormsTranslationDefaultLocales = typeof formsLocales;
4
+ export type FormsTranslationLocale = keyof FormsTranslationDefaultLocales;
5
+ export type FormsTranslationKeys = keyof FormsTranslationDefaultLocales[FormsTranslationLocale];
6
+ export type FormsTranslationValues = FormsTranslationDefaultLocales[FormsTranslationLocale];
7
+ export type FormsTranslation = DeepPartial<FormsTranslationDefaultLocales[FormsTranslationLocale]>;
8
+ type CustomLocales = Partial<Record<FormsTranslationLocale, FormsTranslation>>;
9
+ export default function useLocale<T = FormsTranslation>(locales?: FormsTranslation | CustomLocales | Record<FormsTranslationLocale, T>): T;
10
+ export {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = useLocale;
8
+ var _react = require("react");
9
+ var _Context = _interopRequireDefault(require("../../../shared/Context"));
10
+ var _useLocale = require("../../../shared/useLocale");
11
+ var _defaults = require("../../../shared/defaults");
12
+ var _locales = _interopRequireDefault(require("../constants/locales"));
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function useLocale(locales) {
15
+ const {
16
+ locale,
17
+ translation
18
+ } = (0, _react.useContext)(_Context.default);
19
+ return (0, _react.useMemo)(() => {
20
+ const tr = _locales.default[locale] || _locales.default[_defaults.LOCALE];
21
+ const Forms = translation === null || translation === void 0 ? void 0 : translation.Forms;
22
+ if (Forms) {
23
+ Object.assign(tr, Forms);
24
+ }
25
+ return (0, _useLocale.combineLocales)({
26
+ tr,
27
+ locales,
28
+ locale
29
+ });
30
+ }, [locale, locales, translation]);
31
+ }
32
+ //# sourceMappingURL=useLocale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLocale.js","names":["_react","require","_Context","_interopRequireDefault","_useLocale","_defaults","_locales","obj","__esModule","default","useLocale","locales","locale","translation","useContext","SharedContext","useMemo","tr","formsLocales","LOCALE","Forms","Object","assign","combineLocales"],"sources":["../../../../../src/extensions/forms/hooks/useLocale.tsx"],"sourcesContent":["import { useMemo, useContext } from 'react'\nimport SharedContext from '../../../shared/Context'\nimport { combineLocales } from '../../../shared/useLocale'\nimport { DeepPartial } from '../../../shared/types'\nimport { LOCALE } from '../../../shared/defaults'\nimport formsLocales from '../constants/locales'\n\nexport type FormsTranslationDefaultLocales = typeof formsLocales\nexport type FormsTranslationLocale = keyof FormsTranslationDefaultLocales\nexport type FormsTranslationKeys =\n keyof FormsTranslationDefaultLocales[FormsTranslationLocale]\nexport type FormsTranslationValues =\n FormsTranslationDefaultLocales[FormsTranslationLocale]\nexport type FormsTranslation = DeepPartial<\n FormsTranslationDefaultLocales[FormsTranslationLocale]\n>\n\ntype CustomLocales = Partial<\n Record<FormsTranslationLocale, FormsTranslation>\n>\n\nexport default function useLocale<T = FormsTranslation>(\n locales?:\n | FormsTranslation\n | CustomLocales\n | Record<FormsTranslationLocale, T>\n) {\n const { locale, translation } = useContext(SharedContext)\n\n return useMemo(() => {\n const tr = formsLocales[locale] || formsLocales[LOCALE]\n\n const Forms = translation?.Forms\n if (Forms) {\n Object.assign(tr, Forms)\n }\n\n return combineLocales({\n tr,\n locales,\n locale,\n }) as T\n }, [locale, locales, translation])\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAEA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAH,sBAAA,CAAAF,OAAA;AAA+C,SAAAE,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAgBhC,SAASG,SAASA,CAC/BC,OAGqC,EACrC;EACA,MAAM;IAAEC,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAEzD,OAAO,IAAAC,cAAO,EAAC,MAAM;IACnB,MAAMC,EAAE,GAAGC,gBAAY,CAACN,MAAM,CAAC,IAAIM,gBAAY,CAACC,gBAAM,CAAC;IAEvD,MAAMC,KAAK,GAAGP,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEO,KAAK;IAChC,IAAIA,KAAK,EAAE;MACTC,MAAM,CAACC,MAAM,CAACL,EAAE,EAAEG,KAAK,CAAC;IAC1B;IAEA,OAAO,IAAAG,yBAAc,EAAC;MACpBN,EAAE;MACFN,OAAO;MACPC;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,CAACA,MAAM,EAAED,OAAO,EAAEE,WAAW,CAAC,CAAC;AACpC"}
@@ -4,11 +4,11 @@ export * from './hooks';
4
4
  export * as Field from './Field';
5
5
  export * as Value from './Value';
6
6
  export * as Form from './Form';
7
+ export * as Wizard from './Wizard';
7
8
  export * as DataContext from './DataContext';
8
9
  export * as Iterate from './Iterate';
9
10
  export { default as FieldBlock } from './FieldBlock';
10
11
  export { default as ValueBlock } from './ValueBlock';
11
- export { default as StepsLayout, StepsContext } from './StepsLayout';
12
12
  export { default as Ajv } from 'ajv/dist/2020';
13
13
  /**
14
14
  * Deprecated and will be removed in v11
@@ -16,3 +16,16 @@ export { default as Ajv } from 'ajv/dist/2020';
16
16
  * @deprecated use import { Field } from 'Form' instead
17
17
  */
18
18
  export declare function Visibility(): void;
19
+ /**
20
+ * Deprecated and will be removed in v11
21
+ *
22
+ * @deprecated use "<Wizard.Container>" instead of "<StepsLayout>"
23
+ */
24
+ export declare function StepsLayout(props: any): import("react/jsx-runtime").JSX.Element;
25
+ export declare namespace StepsLayout {
26
+ var Step: typeof import("./Wizard/Step/Step").default;
27
+ var NextButton: typeof import("./Wizard/NextButton/NextButton").default;
28
+ var PreviousButton: typeof import("./Wizard/PreviousButton/PreviousButton").default;
29
+ var Buttons: typeof import("./Wizard/Buttons/Buttons").default;
30
+ var useStep: typeof import("./Wizard").useStep;
31
+ }
@@ -5,15 +5,15 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  var _exportNames = {
7
7
  Visibility: true,
8
+ StepsLayout: true,
8
9
  Field: true,
9
10
  Value: true,
10
11
  Form: true,
12
+ Wizard: true,
11
13
  DataContext: true,
12
14
  Iterate: true,
13
15
  FieldBlock: true,
14
16
  ValueBlock: true,
15
- StepsLayout: true,
16
- StepsContext: true,
17
17
  Ajv: true
18
18
  };
19
19
  Object.defineProperty(exports, "Ajv", {
@@ -30,18 +30,7 @@ Object.defineProperty(exports, "FieldBlock", {
30
30
  }
31
31
  });
32
32
  exports.Iterate = exports.Form = void 0;
33
- Object.defineProperty(exports, "StepsContext", {
34
- enumerable: true,
35
- get: function () {
36
- return _StepsLayout.StepsContext;
37
- }
38
- });
39
- Object.defineProperty(exports, "StepsLayout", {
40
- enumerable: true,
41
- get: function () {
42
- return _StepsLayout.default;
43
- }
44
- });
33
+ exports.StepsLayout = StepsLayout;
45
34
  exports.Value = void 0;
46
35
  Object.defineProperty(exports, "ValueBlock", {
47
36
  enumerable: true,
@@ -50,6 +39,7 @@ Object.defineProperty(exports, "ValueBlock", {
50
39
  }
51
40
  });
52
41
  exports.Visibility = Visibility;
42
+ exports.Wizard = void 0;
53
43
  var _types = require("./types");
54
44
  Object.keys(_types).forEach(function (key) {
55
45
  if (key === "default" || key === "__esModule") return;
@@ -92,13 +82,14 @@ var _Value = _interopRequireWildcard(require("./Value"));
92
82
  exports.Value = _Value;
93
83
  var _Form = _interopRequireWildcard(require("./Form"));
94
84
  exports.Form = _Form;
85
+ var _Wizard = _interopRequireWildcard(require("./Wizard"));
86
+ exports.Wizard = _Wizard;
95
87
  var _DataContext = _interopRequireWildcard(require("./DataContext"));
96
88
  exports.DataContext = _DataContext;
97
89
  var _Iterate = _interopRequireWildcard(require("./Iterate"));
98
90
  exports.Iterate = _Iterate;
99
91
  var _FieldBlock = _interopRequireDefault(require("./FieldBlock"));
100
92
  var _ValueBlock = _interopRequireDefault(require("./ValueBlock"));
101
- var _StepsLayout = _interopRequireWildcard(require("./StepsLayout"));
102
93
  var _ = _interopRequireDefault(require("ajv/dist/2020"));
103
94
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
104
95
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -106,4 +97,13 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
106
97
  function Visibility() {
107
98
  console.error('Please import Visibility from "Form.Visibility"');
108
99
  }
100
+ function StepsLayout(props) {
101
+ console.error('Please use "<Wizard.Container>" instead of "<StepsLayout>"');
102
+ return (0, _Wizard.Container)(props);
103
+ }
104
+ StepsLayout.Step = _Wizard.Step;
105
+ StepsLayout.NextButton = _Wizard.NextButton;
106
+ StepsLayout.PreviousButton = _Wizard.PreviousButton;
107
+ StepsLayout.Buttons = _Wizard.Buttons;
108
+ StepsLayout.useStep = _Wizard.useStep;
109
109
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_types","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_utils","_hooks","_Field","_interopRequireWildcard","Field","_Value","Value","_Form","Form","_DataContext","DataContext","_Iterate","Iterate","_FieldBlock","_interopRequireDefault","_ValueBlock","_StepsLayout","_","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","Visibility","console","error"],"sources":["../../../../src/extensions/forms/index.ts"],"sourcesContent":["export * from './types'\nexport * from './utils'\nexport * from './hooks'\nexport * as Field from './Field'\nexport * as Value from './Value'\nexport * as Form from './Form'\nexport * as DataContext from './DataContext'\nexport * as Iterate from './Iterate'\nexport { default as FieldBlock } from './FieldBlock'\nexport { default as ValueBlock } from './ValueBlock'\nexport { default as StepsLayout, StepsContext } from './StepsLayout'\nexport { default as Ajv } from 'ajv/dist/2020'\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use import { Field } from 'Form'\tinstead\n */\nexport function Visibility() {\n console.error('Please import Visibility from \"Form.Visibility\"')\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_types","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_utils","_hooks","_Field","_interopRequireWildcard","Field","_Value","Value","_Form","Form","_Wizard","Wizard","_DataContext","DataContext","_Iterate","Iterate","_FieldBlock","_interopRequireDefault","_ValueBlock","_","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","Visibility","console","error","StepsLayout","props","Container","Step","NextButton","PreviousButton","Buttons","useStep"],"sources":["../../../../src/extensions/forms/index.ts"],"sourcesContent":["export * from './types'\nexport * from './utils'\nexport * from './hooks'\nexport * as Field from './Field'\nexport * as Value from './Value'\nexport * as Form from './Form'\nexport * as Wizard from './Wizard'\nexport * as DataContext from './DataContext'\nexport * as Iterate from './Iterate'\nexport { default as FieldBlock } from './FieldBlock'\nexport { default as ValueBlock } from './ValueBlock'\nexport { default as Ajv } from 'ajv/dist/2020'\n\nimport {\n Container,\n Step,\n NextButton,\n PreviousButton,\n Buttons,\n useStep,\n} from './Wizard'\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use import { Field } from 'Form'\tinstead\n */\nexport function Visibility() {\n console.error('Please import Visibility from \"Form.Visibility\"')\n}\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"<Wizard.Container>\" instead of \"<StepsLayout>\"\n */\nexport function StepsLayout(props) {\n console.error(\n 'Please use \"<Wizard.Container>\" instead of \"<StepsLayout>\"'\n )\n return Container(props)\n}\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"Wizard.Step\" instead of \"StepsLayout.Step\"\n */\nStepsLayout.Step = Step\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"Wizard.Buttons\" instead of \"StepsLayout.NextButton\"\n */\nStepsLayout.NextButton = NextButton\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"Wizard.Buttons\" instead of \"StepsLayout.PreviousButton\"\n */\nStepsLayout.PreviousButton = PreviousButton\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"Wizard.Buttons\" instead of \"StepsLayout.Buttons\"\n */\nStepsLayout.Buttons = Buttons\nStepsLayout.useStep = useStep\n"],"mappings":"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"}