@dnb/eufemia 10.69.0 → 10.70.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 (900) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/cjs/components/aria-live/AriaLiveDocs.d.ts +2 -0
  3. package/cjs/components/aria-live/AriaLiveDocs.js +54 -0
  4. package/cjs/components/aria-live/AriaLiveDocs.js.map +1 -0
  5. package/cjs/components/avatar/Avatar.d.ts +10 -0
  6. package/cjs/components/avatar/Avatar.js +17 -3
  7. package/cjs/components/avatar/Avatar.js.map +1 -1
  8. package/cjs/components/avatar/AvatarDocs.d.ts +3 -0
  9. package/cjs/components/avatar/AvatarDocs.js +101 -0
  10. package/cjs/components/avatar/AvatarDocs.js.map +1 -0
  11. package/cjs/components/avatar/AvatarGroup.d.ts +10 -0
  12. package/cjs/components/avatar/AvatarGroup.js +17 -5
  13. package/cjs/components/avatar/AvatarGroup.js.map +1 -1
  14. package/cjs/components/avatar/style/dnb-avatar.css +8 -0
  15. package/cjs/components/avatar/style/dnb-avatar.min.css +1 -1
  16. package/cjs/components/avatar/style/dnb-avatar.scss +9 -0
  17. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +5 -5
  18. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  19. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +5 -6
  20. package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.css +5 -5
  21. package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
  22. package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.scss +5 -5
  23. package/cjs/components/badge/BadgeDocs.d.ts +2 -0
  24. package/cjs/components/badge/BadgeDocs.js +54 -0
  25. package/cjs/components/badge/BadgeDocs.js.map +1 -0
  26. package/cjs/components/breadcrumb/BreadcrumbDocs.d.ts +5 -0
  27. package/cjs/components/breadcrumb/BreadcrumbDocs.js +125 -0
  28. package/cjs/components/breadcrumb/BreadcrumbDocs.js.map +1 -0
  29. package/cjs/components/button/Button.d.ts +0 -3
  30. package/cjs/components/button/ButtonDocs.d.ts +1 -0
  31. package/cjs/components/button/ButtonDocs.js +8 -1
  32. package/cjs/components/button/ButtonDocs.js.map +1 -1
  33. package/cjs/components/date-picker/DatePickerAddon.js +1 -3
  34. package/cjs/components/date-picker/DatePickerAddon.js.map +1 -1
  35. package/cjs/components/date-picker/DatePickerCalc.d.ts +13 -0
  36. package/cjs/components/date-picker/DatePickerCalc.js +44 -0
  37. package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
  38. package/cjs/components/date-picker/DatePickerCalendar.js +13 -11
  39. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  40. package/cjs/components/date-picker/DatePickerContext.d.ts +1 -1
  41. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  42. package/cjs/components/date-picker/DatePickerProvider.js +2 -2
  43. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  44. package/cjs/components/date-picker/hooks/useViews.d.ts +2 -4
  45. package/cjs/components/date-picker/hooks/useViews.js +37 -23
  46. package/cjs/components/date-picker/hooks/useViews.js.map +1 -1
  47. package/cjs/components/dialog/DialogDocs.d.ts +1 -0
  48. package/cjs/components/dialog/DialogDocs.js +13 -1
  49. package/cjs/components/dialog/DialogDocs.js.map +1 -1
  50. package/cjs/components/drawer/DrawerDocs.d.ts +2 -0
  51. package/cjs/components/drawer/DrawerDocs.js +69 -0
  52. package/cjs/components/drawer/DrawerDocs.js.map +1 -0
  53. package/cjs/components/dropdown/DropdownDocs.d.ts +2 -0
  54. package/cjs/components/dropdown/DropdownDocs.js +29 -0
  55. package/cjs/components/dropdown/DropdownDocs.js.map +1 -0
  56. package/cjs/components/form-label/FormLabelDocs.d.ts +2 -0
  57. package/cjs/components/form-label/FormLabelDocs.js +59 -0
  58. package/cjs/components/form-label/FormLabelDocs.js.map +1 -0
  59. package/cjs/components/form-row/FormRow.d.ts +45 -0
  60. package/cjs/components/form-row/FormRowDocs.d.ts +2 -0
  61. package/cjs/components/form-row/FormRowDocs.js +89 -0
  62. package/cjs/components/form-row/FormRowDocs.js.map +1 -0
  63. package/cjs/components/form-set/FormSet.d.ts +18 -0
  64. package/cjs/components/form-set/FormSetDocs.d.ts +3 -0
  65. package/cjs/components/form-set/FormSetDocs.js +56 -0
  66. package/cjs/components/form-set/FormSetDocs.js.map +1 -0
  67. package/cjs/components/form-status/FormStatus.d.ts +18 -18
  68. package/cjs/components/form-status/FormStatusDocs.d.ts +2 -0
  69. package/cjs/components/form-status/FormStatusDocs.js +89 -0
  70. package/cjs/components/form-status/FormStatusDocs.js.map +1 -0
  71. package/cjs/components/global-error/GlobalError.d.ts +13 -1
  72. package/cjs/components/global-error/GlobalError.js +15 -6
  73. package/cjs/components/global-error/GlobalError.js.map +1 -1
  74. package/cjs/components/global-error/GlobalErrorDocs.d.ts +2 -0
  75. package/cjs/components/global-error/GlobalErrorDocs.js +74 -0
  76. package/cjs/components/global-error/GlobalErrorDocs.js.map +1 -0
  77. package/cjs/components/global-status/GlobalStatus.d.ts +37 -58
  78. package/cjs/components/global-status/GlobalStatusController.d.ts +0 -9
  79. package/cjs/components/global-status/GlobalStatusDocs.d.ts +6 -0
  80. package/cjs/components/global-status/GlobalStatusDocs.js +192 -0
  81. package/cjs/components/global-status/GlobalStatusDocs.js.map +1 -0
  82. package/cjs/components/heading/HeadingDocs.d.ts +2 -0
  83. package/cjs/components/heading/HeadingDocs.js +79 -0
  84. package/cjs/components/heading/HeadingDocs.js.map +1 -0
  85. package/cjs/components/help-button/HelpButtonDocs.d.ts +3 -0
  86. package/cjs/components/help-button/HelpButtonDocs.js +46 -0
  87. package/cjs/components/help-button/HelpButtonDocs.js.map +1 -0
  88. package/cjs/components/icon/IconDocs.d.ts +2 -0
  89. package/cjs/components/icon/IconDocs.js +59 -0
  90. package/cjs/components/icon/IconDocs.js.map +1 -0
  91. package/cjs/components/icon/IconPrimaryDocs.d.ts +2 -0
  92. package/cjs/components/icon/IconPrimaryDocs.js +24 -0
  93. package/cjs/components/icon/IconPrimaryDocs.js.map +1 -0
  94. package/cjs/components/info-card/InfoCard.d.ts +6 -1
  95. package/cjs/components/info-card/InfoCard.js +4 -3
  96. package/cjs/components/info-card/InfoCard.js.map +1 -1
  97. package/cjs/components/info-card/InfoCardDocs.d.ts +3 -0
  98. package/cjs/components/info-card/InfoCardDocs.js +106 -0
  99. package/cjs/components/info-card/InfoCardDocs.js.map +1 -0
  100. package/cjs/components/input/Input.d.ts +0 -21
  101. package/cjs/components/input/InputDocs.d.ts +1 -0
  102. package/cjs/components/input/InputDocs.js +33 -1
  103. package/cjs/components/input/InputDocs.js.map +1 -1
  104. package/cjs/components/input-masked/InputMasked.d.ts +0 -12
  105. package/cjs/components/input-masked/InputMaskedDocs.d.ts +1 -0
  106. package/cjs/components/input-masked/InputMaskedDocs.js +13 -1
  107. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  108. package/cjs/components/input-masked/MultiInputMaskedDocs.d.ts +2 -0
  109. package/cjs/components/input-masked/MultiInputMaskedDocs.js +24 -0
  110. package/cjs/components/input-masked/MultiInputMaskedDocs.js.map +1 -0
  111. package/cjs/components/pagination/Pagination.d.ts +35 -33
  112. package/cjs/components/pagination/Pagination.js +2 -0
  113. package/cjs/components/pagination/Pagination.js.map +1 -1
  114. package/cjs/components/pagination/PaginationDocs.d.ts +3 -0
  115. package/cjs/components/pagination/PaginationDocs.js +191 -0
  116. package/cjs/components/pagination/PaginationDocs.js.map +1 -0
  117. package/cjs/components/pagination/PaginationHelpers.d.ts +0 -3
  118. package/cjs/components/pagination/PaginationInfinity.d.ts +0 -3
  119. package/cjs/components/pagination/PaginationProvider.js +1 -1
  120. package/cjs/components/pagination/PaginationProvider.js.map +1 -1
  121. package/cjs/components/radio/Radio.d.ts +12 -15
  122. package/cjs/components/radio/RadioDocs.d.ts +5 -0
  123. package/cjs/components/radio/RadioDocs.js +145 -0
  124. package/cjs/components/radio/RadioDocs.js.map +1 -0
  125. package/cjs/components/radio/RadioGroup.d.ts +0 -30
  126. package/cjs/components/skeleton/SkeletonDocs.d.ts +2 -0
  127. package/cjs/components/skeleton/SkeletonDocs.js +44 -0
  128. package/cjs/components/skeleton/SkeletonDocs.js.map +1 -0
  129. package/cjs/components/skeleton/SkeletonHelper.d.ts +0 -6
  130. package/cjs/components/skip-content/SkipContentDocs.d.ts +2 -0
  131. package/cjs/components/skip-content/SkipContentDocs.js +29 -0
  132. package/cjs/components/skip-content/SkipContentDocs.js.map +1 -0
  133. package/cjs/components/tabs/Tabs.js +2 -2
  134. package/cjs/components/tabs/Tabs.js.map +1 -1
  135. package/cjs/components/tag/TagDocs.d.ts +4 -0
  136. package/cjs/components/tag/TagDocs.js +93 -0
  137. package/cjs/components/tag/TagDocs.js.map +1 -0
  138. package/cjs/components/textarea/Textarea.d.ts +0 -12
  139. package/cjs/components/textarea/TextareaDocs.d.ts +1 -0
  140. package/cjs/components/textarea/TextareaDocs.js +23 -1
  141. package/cjs/components/textarea/TextareaDocs.js.map +1 -1
  142. package/cjs/components/timeline/TimelineDocs.d.ts +3 -0
  143. package/cjs/components/timeline/TimelineDocs.js +66 -0
  144. package/cjs/components/timeline/TimelineDocs.js.map +1 -0
  145. package/cjs/components/toggle-button/ToggleButton.d.ts +0 -3
  146. package/cjs/components/toggle-button/ToggleButtonDocs.d.ts +1 -0
  147. package/cjs/components/toggle-button/ToggleButtonDocs.js +8 -1
  148. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  149. package/cjs/components/toggle-button/ToggleButtonGroup.d.ts +0 -3
  150. package/cjs/components/toggle-button/ToggleButtonGroupDocs.d.ts +1 -0
  151. package/cjs/components/toggle-button/ToggleButtonGroupDocs.js +8 -1
  152. package/cjs/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -1
  153. package/cjs/components/tooltip/TooltipDocs.d.ts +2 -0
  154. package/cjs/components/tooltip/TooltipDocs.js +79 -0
  155. package/cjs/components/tooltip/TooltipDocs.js.map +1 -0
  156. package/cjs/components/upload/Upload.js +6 -4
  157. package/cjs/components/upload/Upload.js.map +1 -1
  158. package/cjs/components/upload/UploadDocs.js +5 -0
  159. package/cjs/components/upload/UploadDocs.js.map +1 -1
  160. package/cjs/components/upload/UploadFileList.js +5 -4
  161. package/cjs/components/upload/UploadFileList.js.map +1 -1
  162. package/cjs/components/upload/UploadFileListCell.d.ts +6 -1
  163. package/cjs/components/upload/UploadFileListCell.js +8 -5
  164. package/cjs/components/upload/UploadFileListCell.js.map +1 -1
  165. package/cjs/components/upload/types.d.ts +5 -0
  166. package/cjs/components/upload/types.js.map +1 -1
  167. package/cjs/components/upload/useUpload.d.ts +1 -0
  168. package/cjs/components/upload/useUpload.js +9 -2
  169. package/cjs/components/upload/useUpload.js.map +1 -1
  170. package/cjs/components/visually-hidden/VisuallyHiddenDocs.d.ts +2 -0
  171. package/cjs/components/visually-hidden/VisuallyHiddenDocs.js +19 -0
  172. package/cjs/components/visually-hidden/VisuallyHiddenDocs.js.map +1 -0
  173. package/cjs/extensions/forms/DataContext/Context.d.ts +7 -6
  174. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  175. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +4 -4
  176. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  177. package/cjs/extensions/forms/DataContext/Provider/Provider.js +63 -75
  178. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  179. package/cjs/extensions/forms/Field/Date/Date.d.ts +1 -0
  180. package/cjs/extensions/forms/Field/Date/Date.js +8 -8
  181. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  182. package/cjs/extensions/forms/Field/Password/Password.js +2 -1
  183. package/cjs/extensions/forms/Field/Password/Password.js.map +1 -1
  184. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +9 -3
  185. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  186. package/cjs/extensions/forms/Field/Upload/Upload.js +10 -2
  187. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  188. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -2
  189. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  190. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
  191. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  192. package/cjs/extensions/forms/Form/Isolation/Isolation.js +3 -4
  193. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  194. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +4 -4
  195. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  196. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +1 -10
  197. package/cjs/extensions/forms/Form/Visibility/Visibility.js +1 -0
  198. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  199. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -1
  200. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  201. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  202. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  203. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +11 -15
  204. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  205. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
  206. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  207. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -2
  208. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  209. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js +1 -1
  210. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
  211. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
  212. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  213. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js +1 -1
  214. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -1
  215. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +9 -2
  216. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  217. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
  218. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  219. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
  220. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  221. package/cjs/extensions/forms/Value/Date/Date.d.ts +0 -6
  222. package/cjs/extensions/forms/Value/Date/Date.js +14 -38
  223. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  224. package/cjs/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
  225. package/cjs/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
  226. package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js +6 -5
  227. package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
  228. package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +4 -3
  229. package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.js +36 -35
  230. package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -1
  231. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +106 -59
  232. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  233. package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.d.ts +10 -0
  234. package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.js +66 -0
  235. package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -0
  236. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -4
  237. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  238. package/cjs/extensions/forms/Wizard/Context/types.d.ts +9 -6
  239. package/cjs/extensions/forms/Wizard/Context/types.js.map +1 -1
  240. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +1 -1
  241. package/cjs/extensions/forms/Wizard/Step/Step.js +65 -22
  242. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  243. package/cjs/extensions/forms/Wizard/Step/StepDocs.js +2 -2
  244. package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  245. package/cjs/extensions/forms/Wizard/hooks/useStep.js +10 -18
  246. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  247. package/cjs/extensions/forms/hooks/useFieldProps.js +16 -9
  248. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  249. package/cjs/extensions/forms/hooks/useValueProps.js +1 -1
  250. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  251. package/cjs/extensions/payment-card/PaymentCard.d.ts +7 -7
  252. package/cjs/extensions/payment-card/PaymentCardDocs.d.ts +5 -0
  253. package/cjs/extensions/payment-card/PaymentCardDocs.js +205 -0
  254. package/cjs/extensions/payment-card/PaymentCardDocs.js.map +1 -0
  255. package/cjs/fragments/scroll-view/ScrollViewDocs.d.ts +2 -0
  256. package/cjs/fragments/scroll-view/ScrollViewDocs.js +19 -0
  257. package/cjs/fragments/scroll-view/ScrollViewDocs.js.map +1 -0
  258. package/cjs/fragments/text-counter/TextCounterDocs.d.ts +2 -0
  259. package/cjs/fragments/text-counter/TextCounterDocs.js +29 -0
  260. package/cjs/fragments/text-counter/TextCounterDocs.js.map +1 -0
  261. package/cjs/shared/Eufemia.d.ts +1 -1
  262. package/cjs/shared/Eufemia.js +2 -2
  263. package/cjs/shared/Eufemia.js.map +1 -1
  264. package/cjs/shared/MediaQueryDocs.d.ts +2 -0
  265. package/cjs/shared/MediaQueryDocs.js +34 -0
  266. package/cjs/shared/MediaQueryDocs.js.map +1 -0
  267. package/cjs/shared/ThemeDocs.d.ts +2 -0
  268. package/cjs/shared/ThemeDocs.js +39 -0
  269. package/cjs/shared/ThemeDocs.js.map +1 -0
  270. package/cjs/shared/component-helper.js +1 -1
  271. package/cjs/shared/component-helper.js.map +1 -1
  272. package/cjs/shared/locales/en-GB.d.ts +1 -0
  273. package/cjs/shared/locales/en-GB.js +1 -0
  274. package/cjs/shared/locales/en-GB.js.map +1 -1
  275. package/cjs/shared/locales/en-US.d.ts +1 -0
  276. package/cjs/shared/locales/index.d.ts +2 -0
  277. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  278. package/cjs/shared/locales/nb-NO.js +1 -0
  279. package/cjs/shared/locales/nb-NO.js.map +1 -1
  280. package/cjs/shared/locales/sv-SE.d.ts +1 -0
  281. package/cjs/shared/locales/sv-SE.js +1 -0
  282. package/cjs/shared/locales/sv-SE.js.map +1 -1
  283. package/cjs/style/core/scopes.scss +1 -1
  284. package/cjs/style/dnb-ui-basis.css +1 -1
  285. package/cjs/style/dnb-ui-basis.min.css +1 -1
  286. package/cjs/style/dnb-ui-body.css +1 -1
  287. package/cjs/style/dnb-ui-body.min.css +1 -1
  288. package/cjs/style/dnb-ui-components.css +8 -0
  289. package/cjs/style/dnb-ui-components.min.css +1 -1
  290. package/cjs/style/dnb-ui-core.css +1 -1
  291. package/cjs/style/dnb-ui-core.min.css +1 -1
  292. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +13 -5
  293. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  294. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +13 -5
  295. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  296. package/cjs/style/themes/theme-ui/ui-theme-components.css +13 -5
  297. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  298. package/components/aria-live/AriaLiveDocs.d.ts +2 -0
  299. package/components/aria-live/AriaLiveDocs.js +48 -0
  300. package/components/aria-live/AriaLiveDocs.js.map +1 -0
  301. package/components/avatar/Avatar.d.ts +10 -0
  302. package/components/avatar/Avatar.js +17 -3
  303. package/components/avatar/Avatar.js.map +1 -1
  304. package/components/avatar/AvatarDocs.d.ts +3 -0
  305. package/components/avatar/AvatarDocs.js +95 -0
  306. package/components/avatar/AvatarDocs.js.map +1 -0
  307. package/components/avatar/AvatarGroup.d.ts +10 -0
  308. package/components/avatar/AvatarGroup.js +17 -5
  309. package/components/avatar/AvatarGroup.js.map +1 -1
  310. package/components/avatar/style/dnb-avatar.css +8 -0
  311. package/components/avatar/style/dnb-avatar.min.css +1 -1
  312. package/components/avatar/style/dnb-avatar.scss +9 -0
  313. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +5 -5
  314. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  315. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +5 -6
  316. package/components/avatar/style/themes/dnb-avatar-theme-ui.css +5 -5
  317. package/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
  318. package/components/avatar/style/themes/dnb-avatar-theme-ui.scss +5 -5
  319. package/components/badge/BadgeDocs.d.ts +2 -0
  320. package/components/badge/BadgeDocs.js +48 -0
  321. package/components/badge/BadgeDocs.js.map +1 -0
  322. package/components/breadcrumb/BreadcrumbDocs.d.ts +5 -0
  323. package/components/breadcrumb/BreadcrumbDocs.js +119 -0
  324. package/components/breadcrumb/BreadcrumbDocs.js.map +1 -0
  325. package/components/button/Button.d.ts +0 -3
  326. package/components/button/ButtonDocs.d.ts +1 -0
  327. package/components/button/ButtonDocs.js +7 -0
  328. package/components/button/ButtonDocs.js.map +1 -1
  329. package/components/date-picker/DatePickerAddon.js +1 -3
  330. package/components/date-picker/DatePickerAddon.js.map +1 -1
  331. package/components/date-picker/DatePickerCalc.d.ts +13 -0
  332. package/components/date-picker/DatePickerCalc.js +41 -0
  333. package/components/date-picker/DatePickerCalc.js.map +1 -1
  334. package/components/date-picker/DatePickerCalendar.js +13 -11
  335. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  336. package/components/date-picker/DatePickerContext.d.ts +1 -1
  337. package/components/date-picker/DatePickerContext.js.map +1 -1
  338. package/components/date-picker/DatePickerProvider.js +2 -2
  339. package/components/date-picker/DatePickerProvider.js.map +1 -1
  340. package/components/date-picker/hooks/useViews.d.ts +2 -4
  341. package/components/date-picker/hooks/useViews.js +38 -24
  342. package/components/date-picker/hooks/useViews.js.map +1 -1
  343. package/components/dialog/DialogDocs.d.ts +1 -0
  344. package/components/dialog/DialogDocs.js +12 -0
  345. package/components/dialog/DialogDocs.js.map +1 -1
  346. package/components/drawer/DrawerDocs.d.ts +2 -0
  347. package/components/drawer/DrawerDocs.js +63 -0
  348. package/components/drawer/DrawerDocs.js.map +1 -0
  349. package/components/dropdown/DropdownDocs.d.ts +2 -0
  350. package/components/dropdown/DropdownDocs.js +23 -0
  351. package/components/dropdown/DropdownDocs.js.map +1 -0
  352. package/components/form-label/FormLabelDocs.d.ts +2 -0
  353. package/components/form-label/FormLabelDocs.js +53 -0
  354. package/components/form-label/FormLabelDocs.js.map +1 -0
  355. package/components/form-row/FormRow.d.ts +45 -0
  356. package/components/form-row/FormRowDocs.d.ts +2 -0
  357. package/components/form-row/FormRowDocs.js +83 -0
  358. package/components/form-row/FormRowDocs.js.map +1 -0
  359. package/components/form-set/FormSet.d.ts +18 -0
  360. package/components/form-set/FormSetDocs.d.ts +3 -0
  361. package/components/form-set/FormSetDocs.js +50 -0
  362. package/components/form-set/FormSetDocs.js.map +1 -0
  363. package/components/form-status/FormStatus.d.ts +18 -18
  364. package/components/form-status/FormStatusDocs.d.ts +2 -0
  365. package/components/form-status/FormStatusDocs.js +83 -0
  366. package/components/form-status/FormStatusDocs.js.map +1 -0
  367. package/components/global-error/GlobalError.d.ts +13 -1
  368. package/components/global-error/GlobalError.js +15 -6
  369. package/components/global-error/GlobalError.js.map +1 -1
  370. package/components/global-error/GlobalErrorDocs.d.ts +2 -0
  371. package/components/global-error/GlobalErrorDocs.js +68 -0
  372. package/components/global-error/GlobalErrorDocs.js.map +1 -0
  373. package/components/global-status/GlobalStatus.d.ts +37 -58
  374. package/components/global-status/GlobalStatusController.d.ts +0 -9
  375. package/components/global-status/GlobalStatusDocs.d.ts +6 -0
  376. package/components/global-status/GlobalStatusDocs.js +186 -0
  377. package/components/global-status/GlobalStatusDocs.js.map +1 -0
  378. package/components/heading/HeadingDocs.d.ts +2 -0
  379. package/components/heading/HeadingDocs.js +73 -0
  380. package/components/heading/HeadingDocs.js.map +1 -0
  381. package/components/help-button/HelpButtonDocs.d.ts +3 -0
  382. package/components/help-button/HelpButtonDocs.js +40 -0
  383. package/components/help-button/HelpButtonDocs.js.map +1 -0
  384. package/components/icon/IconDocs.d.ts +2 -0
  385. package/components/icon/IconDocs.js +53 -0
  386. package/components/icon/IconDocs.js.map +1 -0
  387. package/components/icon/IconPrimaryDocs.d.ts +2 -0
  388. package/components/icon/IconPrimaryDocs.js +18 -0
  389. package/components/icon/IconPrimaryDocs.js.map +1 -0
  390. package/components/info-card/InfoCard.d.ts +6 -1
  391. package/components/info-card/InfoCard.js +4 -3
  392. package/components/info-card/InfoCard.js.map +1 -1
  393. package/components/info-card/InfoCardDocs.d.ts +3 -0
  394. package/components/info-card/InfoCardDocs.js +100 -0
  395. package/components/info-card/InfoCardDocs.js.map +1 -0
  396. package/components/input/Input.d.ts +0 -21
  397. package/components/input/InputDocs.d.ts +1 -0
  398. package/components/input/InputDocs.js +32 -0
  399. package/components/input/InputDocs.js.map +1 -1
  400. package/components/input-masked/InputMasked.d.ts +0 -12
  401. package/components/input-masked/InputMaskedDocs.d.ts +1 -0
  402. package/components/input-masked/InputMaskedDocs.js +12 -0
  403. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  404. package/components/input-masked/MultiInputMaskedDocs.d.ts +2 -0
  405. package/components/input-masked/MultiInputMaskedDocs.js +18 -0
  406. package/components/input-masked/MultiInputMaskedDocs.js.map +1 -0
  407. package/components/pagination/Pagination.d.ts +35 -33
  408. package/components/pagination/Pagination.js +2 -0
  409. package/components/pagination/Pagination.js.map +1 -1
  410. package/components/pagination/PaginationDocs.d.ts +3 -0
  411. package/components/pagination/PaginationDocs.js +185 -0
  412. package/components/pagination/PaginationDocs.js.map +1 -0
  413. package/components/pagination/PaginationHelpers.d.ts +0 -3
  414. package/components/pagination/PaginationInfinity.d.ts +0 -3
  415. package/components/pagination/PaginationProvider.js +1 -1
  416. package/components/pagination/PaginationProvider.js.map +1 -1
  417. package/components/radio/Radio.d.ts +12 -15
  418. package/components/radio/RadioDocs.d.ts +5 -0
  419. package/components/radio/RadioDocs.js +139 -0
  420. package/components/radio/RadioDocs.js.map +1 -0
  421. package/components/radio/RadioGroup.d.ts +0 -30
  422. package/components/skeleton/SkeletonDocs.d.ts +2 -0
  423. package/components/skeleton/SkeletonDocs.js +38 -0
  424. package/components/skeleton/SkeletonDocs.js.map +1 -0
  425. package/components/skeleton/SkeletonHelper.d.ts +0 -6
  426. package/components/skip-content/SkipContentDocs.d.ts +2 -0
  427. package/components/skip-content/SkipContentDocs.js +23 -0
  428. package/components/skip-content/SkipContentDocs.js.map +1 -0
  429. package/components/tabs/Tabs.js +2 -2
  430. package/components/tabs/Tabs.js.map +1 -1
  431. package/components/tag/TagDocs.d.ts +4 -0
  432. package/components/tag/TagDocs.js +87 -0
  433. package/components/tag/TagDocs.js.map +1 -0
  434. package/components/textarea/Textarea.d.ts +0 -12
  435. package/components/textarea/TextareaDocs.d.ts +1 -0
  436. package/components/textarea/TextareaDocs.js +22 -0
  437. package/components/textarea/TextareaDocs.js.map +1 -1
  438. package/components/timeline/TimelineDocs.d.ts +3 -0
  439. package/components/timeline/TimelineDocs.js +60 -0
  440. package/components/timeline/TimelineDocs.js.map +1 -0
  441. package/components/toggle-button/ToggleButton.d.ts +0 -3
  442. package/components/toggle-button/ToggleButtonDocs.d.ts +1 -0
  443. package/components/toggle-button/ToggleButtonDocs.js +7 -0
  444. package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  445. package/components/toggle-button/ToggleButtonGroup.d.ts +0 -3
  446. package/components/toggle-button/ToggleButtonGroupDocs.d.ts +1 -0
  447. package/components/toggle-button/ToggleButtonGroupDocs.js +7 -0
  448. package/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -1
  449. package/components/tooltip/TooltipDocs.d.ts +2 -0
  450. package/components/tooltip/TooltipDocs.js +73 -0
  451. package/components/tooltip/TooltipDocs.js.map +1 -0
  452. package/components/upload/Upload.js +6 -4
  453. package/components/upload/Upload.js.map +1 -1
  454. package/components/upload/UploadDocs.js +5 -0
  455. package/components/upload/UploadDocs.js.map +1 -1
  456. package/components/upload/UploadFileList.js +5 -4
  457. package/components/upload/UploadFileList.js.map +1 -1
  458. package/components/upload/UploadFileListCell.d.ts +6 -1
  459. package/components/upload/UploadFileListCell.js +8 -5
  460. package/components/upload/UploadFileListCell.js.map +1 -1
  461. package/components/upload/types.d.ts +5 -0
  462. package/components/upload/types.js.map +1 -1
  463. package/components/upload/useUpload.d.ts +1 -0
  464. package/components/upload/useUpload.js +7 -1
  465. package/components/upload/useUpload.js.map +1 -1
  466. package/components/visually-hidden/VisuallyHiddenDocs.d.ts +2 -0
  467. package/components/visually-hidden/VisuallyHiddenDocs.js +13 -0
  468. package/components/visually-hidden/VisuallyHiddenDocs.js.map +1 -0
  469. package/es/components/aria-live/AriaLiveDocs.d.ts +2 -0
  470. package/es/components/aria-live/AriaLiveDocs.js +48 -0
  471. package/es/components/aria-live/AriaLiveDocs.js.map +1 -0
  472. package/es/components/avatar/Avatar.d.ts +10 -0
  473. package/es/components/avatar/Avatar.js +17 -3
  474. package/es/components/avatar/Avatar.js.map +1 -1
  475. package/es/components/avatar/AvatarDocs.d.ts +3 -0
  476. package/es/components/avatar/AvatarDocs.js +95 -0
  477. package/es/components/avatar/AvatarDocs.js.map +1 -0
  478. package/es/components/avatar/AvatarGroup.d.ts +10 -0
  479. package/es/components/avatar/AvatarGroup.js +17 -5
  480. package/es/components/avatar/AvatarGroup.js.map +1 -1
  481. package/es/components/avatar/style/dnb-avatar.css +8 -0
  482. package/es/components/avatar/style/dnb-avatar.min.css +1 -1
  483. package/es/components/avatar/style/dnb-avatar.scss +9 -0
  484. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +5 -5
  485. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  486. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +5 -6
  487. package/es/components/avatar/style/themes/dnb-avatar-theme-ui.css +5 -5
  488. package/es/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
  489. package/es/components/avatar/style/themes/dnb-avatar-theme-ui.scss +5 -5
  490. package/es/components/badge/BadgeDocs.d.ts +2 -0
  491. package/es/components/badge/BadgeDocs.js +48 -0
  492. package/es/components/badge/BadgeDocs.js.map +1 -0
  493. package/es/components/breadcrumb/BreadcrumbDocs.d.ts +5 -0
  494. package/es/components/breadcrumb/BreadcrumbDocs.js +119 -0
  495. package/es/components/breadcrumb/BreadcrumbDocs.js.map +1 -0
  496. package/es/components/button/Button.d.ts +0 -3
  497. package/es/components/button/ButtonDocs.d.ts +1 -0
  498. package/es/components/button/ButtonDocs.js +7 -0
  499. package/es/components/button/ButtonDocs.js.map +1 -1
  500. package/es/components/date-picker/DatePickerAddon.js +1 -3
  501. package/es/components/date-picker/DatePickerAddon.js.map +1 -1
  502. package/es/components/date-picker/DatePickerCalc.d.ts +13 -0
  503. package/es/components/date-picker/DatePickerCalc.js +39 -0
  504. package/es/components/date-picker/DatePickerCalc.js.map +1 -1
  505. package/es/components/date-picker/DatePickerCalendar.js +13 -11
  506. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  507. package/es/components/date-picker/DatePickerContext.d.ts +1 -1
  508. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  509. package/es/components/date-picker/DatePickerProvider.js +2 -2
  510. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  511. package/es/components/date-picker/hooks/useViews.d.ts +2 -4
  512. package/es/components/date-picker/hooks/useViews.js +39 -25
  513. package/es/components/date-picker/hooks/useViews.js.map +1 -1
  514. package/es/components/dialog/DialogDocs.d.ts +1 -0
  515. package/es/components/dialog/DialogDocs.js +12 -0
  516. package/es/components/dialog/DialogDocs.js.map +1 -1
  517. package/es/components/drawer/DrawerDocs.d.ts +2 -0
  518. package/es/components/drawer/DrawerDocs.js +63 -0
  519. package/es/components/drawer/DrawerDocs.js.map +1 -0
  520. package/es/components/dropdown/DropdownDocs.d.ts +2 -0
  521. package/es/components/dropdown/DropdownDocs.js +23 -0
  522. package/es/components/dropdown/DropdownDocs.js.map +1 -0
  523. package/es/components/form-label/FormLabelDocs.d.ts +2 -0
  524. package/es/components/form-label/FormLabelDocs.js +53 -0
  525. package/es/components/form-label/FormLabelDocs.js.map +1 -0
  526. package/es/components/form-row/FormRow.d.ts +45 -0
  527. package/es/components/form-row/FormRowDocs.d.ts +2 -0
  528. package/es/components/form-row/FormRowDocs.js +83 -0
  529. package/es/components/form-row/FormRowDocs.js.map +1 -0
  530. package/es/components/form-set/FormSet.d.ts +18 -0
  531. package/es/components/form-set/FormSetDocs.d.ts +3 -0
  532. package/es/components/form-set/FormSetDocs.js +50 -0
  533. package/es/components/form-set/FormSetDocs.js.map +1 -0
  534. package/es/components/form-status/FormStatus.d.ts +18 -18
  535. package/es/components/form-status/FormStatusDocs.d.ts +2 -0
  536. package/es/components/form-status/FormStatusDocs.js +83 -0
  537. package/es/components/form-status/FormStatusDocs.js.map +1 -0
  538. package/es/components/global-error/GlobalError.d.ts +13 -1
  539. package/es/components/global-error/GlobalError.js +14 -6
  540. package/es/components/global-error/GlobalError.js.map +1 -1
  541. package/es/components/global-error/GlobalErrorDocs.d.ts +2 -0
  542. package/es/components/global-error/GlobalErrorDocs.js +68 -0
  543. package/es/components/global-error/GlobalErrorDocs.js.map +1 -0
  544. package/es/components/global-status/GlobalStatus.d.ts +37 -58
  545. package/es/components/global-status/GlobalStatusController.d.ts +0 -9
  546. package/es/components/global-status/GlobalStatusDocs.d.ts +6 -0
  547. package/es/components/global-status/GlobalStatusDocs.js +186 -0
  548. package/es/components/global-status/GlobalStatusDocs.js.map +1 -0
  549. package/es/components/heading/HeadingDocs.d.ts +2 -0
  550. package/es/components/heading/HeadingDocs.js +73 -0
  551. package/es/components/heading/HeadingDocs.js.map +1 -0
  552. package/es/components/help-button/HelpButtonDocs.d.ts +3 -0
  553. package/es/components/help-button/HelpButtonDocs.js +40 -0
  554. package/es/components/help-button/HelpButtonDocs.js.map +1 -0
  555. package/es/components/icon/IconDocs.d.ts +2 -0
  556. package/es/components/icon/IconDocs.js +53 -0
  557. package/es/components/icon/IconDocs.js.map +1 -0
  558. package/es/components/icon/IconPrimaryDocs.d.ts +2 -0
  559. package/es/components/icon/IconPrimaryDocs.js +18 -0
  560. package/es/components/icon/IconPrimaryDocs.js.map +1 -0
  561. package/es/components/info-card/InfoCard.d.ts +6 -1
  562. package/es/components/info-card/InfoCard.js +4 -3
  563. package/es/components/info-card/InfoCard.js.map +1 -1
  564. package/es/components/info-card/InfoCardDocs.d.ts +3 -0
  565. package/es/components/info-card/InfoCardDocs.js +100 -0
  566. package/es/components/info-card/InfoCardDocs.js.map +1 -0
  567. package/es/components/input/Input.d.ts +0 -21
  568. package/es/components/input/InputDocs.d.ts +1 -0
  569. package/es/components/input/InputDocs.js +32 -0
  570. package/es/components/input/InputDocs.js.map +1 -1
  571. package/es/components/input-masked/InputMasked.d.ts +0 -12
  572. package/es/components/input-masked/InputMaskedDocs.d.ts +1 -0
  573. package/es/components/input-masked/InputMaskedDocs.js +12 -0
  574. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  575. package/es/components/input-masked/MultiInputMaskedDocs.d.ts +2 -0
  576. package/es/components/input-masked/MultiInputMaskedDocs.js +18 -0
  577. package/es/components/input-masked/MultiInputMaskedDocs.js.map +1 -0
  578. package/es/components/pagination/Pagination.d.ts +35 -33
  579. package/es/components/pagination/Pagination.js +2 -0
  580. package/es/components/pagination/Pagination.js.map +1 -1
  581. package/es/components/pagination/PaginationDocs.d.ts +3 -0
  582. package/es/components/pagination/PaginationDocs.js +185 -0
  583. package/es/components/pagination/PaginationDocs.js.map +1 -0
  584. package/es/components/pagination/PaginationHelpers.d.ts +0 -3
  585. package/es/components/pagination/PaginationInfinity.d.ts +0 -3
  586. package/es/components/pagination/PaginationProvider.js +1 -1
  587. package/es/components/pagination/PaginationProvider.js.map +1 -1
  588. package/es/components/radio/Radio.d.ts +12 -15
  589. package/es/components/radio/RadioDocs.d.ts +5 -0
  590. package/es/components/radio/RadioDocs.js +139 -0
  591. package/es/components/radio/RadioDocs.js.map +1 -0
  592. package/es/components/radio/RadioGroup.d.ts +0 -30
  593. package/es/components/skeleton/SkeletonDocs.d.ts +2 -0
  594. package/es/components/skeleton/SkeletonDocs.js +38 -0
  595. package/es/components/skeleton/SkeletonDocs.js.map +1 -0
  596. package/es/components/skeleton/SkeletonHelper.d.ts +0 -6
  597. package/es/components/skip-content/SkipContentDocs.d.ts +2 -0
  598. package/es/components/skip-content/SkipContentDocs.js +23 -0
  599. package/es/components/skip-content/SkipContentDocs.js.map +1 -0
  600. package/es/components/tabs/Tabs.js +2 -2
  601. package/es/components/tabs/Tabs.js.map +1 -1
  602. package/es/components/tag/TagDocs.d.ts +4 -0
  603. package/es/components/tag/TagDocs.js +87 -0
  604. package/es/components/tag/TagDocs.js.map +1 -0
  605. package/es/components/textarea/Textarea.d.ts +0 -12
  606. package/es/components/textarea/TextareaDocs.d.ts +1 -0
  607. package/es/components/textarea/TextareaDocs.js +22 -0
  608. package/es/components/textarea/TextareaDocs.js.map +1 -1
  609. package/es/components/timeline/TimelineDocs.d.ts +3 -0
  610. package/es/components/timeline/TimelineDocs.js +60 -0
  611. package/es/components/timeline/TimelineDocs.js.map +1 -0
  612. package/es/components/toggle-button/ToggleButton.d.ts +0 -3
  613. package/es/components/toggle-button/ToggleButtonDocs.d.ts +1 -0
  614. package/es/components/toggle-button/ToggleButtonDocs.js +7 -0
  615. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  616. package/es/components/toggle-button/ToggleButtonGroup.d.ts +0 -3
  617. package/es/components/toggle-button/ToggleButtonGroupDocs.d.ts +1 -0
  618. package/es/components/toggle-button/ToggleButtonGroupDocs.js +7 -0
  619. package/es/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -1
  620. package/es/components/tooltip/TooltipDocs.d.ts +2 -0
  621. package/es/components/tooltip/TooltipDocs.js +73 -0
  622. package/es/components/tooltip/TooltipDocs.js.map +1 -0
  623. package/es/components/upload/Upload.js +6 -4
  624. package/es/components/upload/Upload.js.map +1 -1
  625. package/es/components/upload/UploadDocs.js +5 -0
  626. package/es/components/upload/UploadDocs.js.map +1 -1
  627. package/es/components/upload/UploadFileList.js +5 -4
  628. package/es/components/upload/UploadFileList.js.map +1 -1
  629. package/es/components/upload/UploadFileListCell.d.ts +6 -1
  630. package/es/components/upload/UploadFileListCell.js +8 -5
  631. package/es/components/upload/UploadFileListCell.js.map +1 -1
  632. package/es/components/upload/types.d.ts +5 -0
  633. package/es/components/upload/types.js.map +1 -1
  634. package/es/components/upload/useUpload.d.ts +1 -0
  635. package/es/components/upload/useUpload.js +7 -1
  636. package/es/components/upload/useUpload.js.map +1 -1
  637. package/es/components/visually-hidden/VisuallyHiddenDocs.d.ts +2 -0
  638. package/es/components/visually-hidden/VisuallyHiddenDocs.js +13 -0
  639. package/es/components/visually-hidden/VisuallyHiddenDocs.js.map +1 -0
  640. package/es/extensions/forms/DataContext/Context.d.ts +7 -6
  641. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  642. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +4 -4
  643. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  644. package/es/extensions/forms/DataContext/Provider/Provider.js +48 -62
  645. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  646. package/es/extensions/forms/Field/Date/Date.d.ts +1 -0
  647. package/es/extensions/forms/Field/Date/Date.js +2 -3
  648. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  649. package/es/extensions/forms/Field/Password/Password.js +2 -1
  650. package/es/extensions/forms/Field/Password/Password.js.map +1 -1
  651. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +9 -3
  652. package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  653. package/es/extensions/forms/Field/Upload/Upload.js +10 -2
  654. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  655. package/es/extensions/forms/FieldBlock/FieldBlock.js +2 -2
  656. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  657. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
  658. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  659. package/es/extensions/forms/Form/Isolation/Isolation.js +3 -4
  660. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  661. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +4 -4
  662. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  663. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +1 -10
  664. package/es/extensions/forms/Form/Visibility/Visibility.js +1 -0
  665. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  666. package/es/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -1
  667. package/es/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  668. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  669. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  670. package/es/extensions/forms/Form/Visibility/useVisibility.js +11 -15
  671. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  672. package/es/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
  673. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  674. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -2
  675. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  676. package/es/extensions/forms/Iterate/EditContainer/DoneButton.js +1 -1
  677. package/es/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
  678. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
  679. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  680. package/es/extensions/forms/Iterate/PushContainer/OpenButton.js +1 -1
  681. package/es/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -1
  682. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +9 -2
  683. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  684. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
  685. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  686. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
  687. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  688. package/es/extensions/forms/Value/Date/Date.d.ts +0 -6
  689. package/es/extensions/forms/Value/Date/Date.js +13 -34
  690. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  691. package/es/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
  692. package/es/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
  693. package/es/extensions/forms/Wizard/Container/DisplaySteps.js +6 -5
  694. package/es/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
  695. package/es/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +4 -3
  696. package/es/extensions/forms/Wizard/Container/IterateOverSteps.js +35 -34
  697. package/es/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -1
  698. package/es/extensions/forms/Wizard/Container/WizardContainer.js +103 -60
  699. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  700. package/es/extensions/forms/Wizard/Container/useCollectStepsData.d.ts +10 -0
  701. package/es/extensions/forms/Wizard/Container/useCollectStepsData.js +59 -0
  702. package/es/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -0
  703. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -4
  704. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  705. package/es/extensions/forms/Wizard/Context/types.d.ts +9 -6
  706. package/es/extensions/forms/Wizard/Context/types.js.map +1 -1
  707. package/es/extensions/forms/Wizard/Step/Step.d.ts +1 -1
  708. package/es/extensions/forms/Wizard/Step/Step.js +64 -22
  709. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  710. package/es/extensions/forms/Wizard/Step/StepDocs.js +2 -2
  711. package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  712. package/es/extensions/forms/Wizard/hooks/useStep.js +10 -18
  713. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  714. package/es/extensions/forms/hooks/useFieldProps.js +16 -9
  715. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  716. package/es/extensions/forms/hooks/useValueProps.js +1 -1
  717. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  718. package/es/extensions/payment-card/PaymentCard.d.ts +7 -7
  719. package/es/extensions/payment-card/PaymentCardDocs.d.ts +5 -0
  720. package/es/extensions/payment-card/PaymentCardDocs.js +199 -0
  721. package/es/extensions/payment-card/PaymentCardDocs.js.map +1 -0
  722. package/es/fragments/scroll-view/ScrollViewDocs.d.ts +2 -0
  723. package/es/fragments/scroll-view/ScrollViewDocs.js +13 -0
  724. package/es/fragments/scroll-view/ScrollViewDocs.js.map +1 -0
  725. package/es/fragments/text-counter/TextCounterDocs.d.ts +2 -0
  726. package/es/fragments/text-counter/TextCounterDocs.js +23 -0
  727. package/es/fragments/text-counter/TextCounterDocs.js.map +1 -0
  728. package/es/shared/Eufemia.d.ts +1 -1
  729. package/es/shared/Eufemia.js +2 -2
  730. package/es/shared/Eufemia.js.map +1 -1
  731. package/es/shared/MediaQueryDocs.d.ts +2 -0
  732. package/es/shared/MediaQueryDocs.js +28 -0
  733. package/es/shared/MediaQueryDocs.js.map +1 -0
  734. package/es/shared/ThemeDocs.d.ts +2 -0
  735. package/es/shared/ThemeDocs.js +33 -0
  736. package/es/shared/ThemeDocs.js.map +1 -0
  737. package/es/shared/component-helper.js +1 -1
  738. package/es/shared/component-helper.js.map +1 -1
  739. package/es/shared/locales/en-GB.d.ts +1 -0
  740. package/es/shared/locales/en-GB.js +1 -0
  741. package/es/shared/locales/en-GB.js.map +1 -1
  742. package/es/shared/locales/en-US.d.ts +1 -0
  743. package/es/shared/locales/index.d.ts +2 -0
  744. package/es/shared/locales/nb-NO.d.ts +1 -0
  745. package/es/shared/locales/nb-NO.js +1 -0
  746. package/es/shared/locales/nb-NO.js.map +1 -1
  747. package/es/shared/locales/sv-SE.d.ts +1 -0
  748. package/es/shared/locales/sv-SE.js +1 -0
  749. package/es/shared/locales/sv-SE.js.map +1 -1
  750. package/es/style/core/scopes.scss +1 -1
  751. package/es/style/dnb-ui-basis.css +1 -1
  752. package/es/style/dnb-ui-basis.min.css +1 -1
  753. package/es/style/dnb-ui-body.css +1 -1
  754. package/es/style/dnb-ui-body.min.css +1 -1
  755. package/es/style/dnb-ui-components.css +8 -0
  756. package/es/style/dnb-ui-components.min.css +1 -1
  757. package/es/style/dnb-ui-core.css +1 -1
  758. package/es/style/dnb-ui-core.min.css +1 -1
  759. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +13 -5
  760. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  761. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +13 -5
  762. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  763. package/es/style/themes/theme-ui/ui-theme-components.css +13 -5
  764. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  765. package/esm/dnb-ui-basis.min.mjs +1 -1
  766. package/esm/dnb-ui-components.min.mjs +1 -1
  767. package/esm/dnb-ui-elements.min.mjs +1 -1
  768. package/esm/dnb-ui-extensions.min.mjs +1 -1
  769. package/esm/dnb-ui-lib.min.mjs +1 -1
  770. package/extensions/forms/DataContext/Context.d.ts +7 -6
  771. package/extensions/forms/DataContext/Context.js.map +1 -1
  772. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +4 -4
  773. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  774. package/extensions/forms/DataContext/Provider/Provider.js +63 -75
  775. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  776. package/extensions/forms/Field/Date/Date.d.ts +1 -0
  777. package/extensions/forms/Field/Date/Date.js +2 -3
  778. package/extensions/forms/Field/Date/Date.js.map +1 -1
  779. package/extensions/forms/Field/Password/Password.js +2 -1
  780. package/extensions/forms/Field/Password/Password.js.map +1 -1
  781. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +9 -3
  782. package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  783. package/extensions/forms/Field/Upload/Upload.js +10 -2
  784. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  785. package/extensions/forms/FieldBlock/FieldBlock.js +2 -2
  786. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  787. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
  788. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  789. package/extensions/forms/Form/Isolation/Isolation.js +3 -4
  790. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  791. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +4 -4
  792. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  793. package/extensions/forms/Form/Visibility/Visibility.d.ts +1 -10
  794. package/extensions/forms/Form/Visibility/Visibility.js +1 -0
  795. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  796. package/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -1
  797. package/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  798. package/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  799. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  800. package/extensions/forms/Form/Visibility/useVisibility.js +11 -15
  801. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  802. package/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
  803. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  804. package/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -2
  805. package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  806. package/extensions/forms/Iterate/EditContainer/DoneButton.js +1 -1
  807. package/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
  808. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
  809. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  810. package/extensions/forms/Iterate/PushContainer/OpenButton.js +1 -1
  811. package/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -1
  812. package/extensions/forms/Iterate/PushContainer/PushContainer.js +9 -2
  813. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  814. package/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
  815. package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  816. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
  817. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  818. package/extensions/forms/Value/Date/Date.d.ts +0 -6
  819. package/extensions/forms/Value/Date/Date.js +14 -36
  820. package/extensions/forms/Value/Date/Date.js.map +1 -1
  821. package/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
  822. package/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
  823. package/extensions/forms/Wizard/Container/DisplaySteps.js +6 -5
  824. package/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
  825. package/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +4 -3
  826. package/extensions/forms/Wizard/Container/IterateOverSteps.js +36 -34
  827. package/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -1
  828. package/extensions/forms/Wizard/Container/WizardContainer.js +107 -60
  829. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  830. package/extensions/forms/Wizard/Container/useCollectStepsData.d.ts +10 -0
  831. package/extensions/forms/Wizard/Container/useCollectStepsData.js +60 -0
  832. package/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -0
  833. package/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -4
  834. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  835. package/extensions/forms/Wizard/Context/types.d.ts +9 -6
  836. package/extensions/forms/Wizard/Context/types.js.map +1 -1
  837. package/extensions/forms/Wizard/Step/Step.d.ts +1 -1
  838. package/extensions/forms/Wizard/Step/Step.js +66 -22
  839. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  840. package/extensions/forms/Wizard/Step/StepDocs.js +2 -2
  841. package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  842. package/extensions/forms/Wizard/hooks/useStep.js +10 -18
  843. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  844. package/extensions/forms/hooks/useFieldProps.js +16 -9
  845. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  846. package/extensions/forms/hooks/useValueProps.js +1 -1
  847. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  848. package/extensions/payment-card/PaymentCard.d.ts +7 -7
  849. package/extensions/payment-card/PaymentCardDocs.d.ts +5 -0
  850. package/extensions/payment-card/PaymentCardDocs.js +199 -0
  851. package/extensions/payment-card/PaymentCardDocs.js.map +1 -0
  852. package/fragments/scroll-view/ScrollViewDocs.d.ts +2 -0
  853. package/fragments/scroll-view/ScrollViewDocs.js +13 -0
  854. package/fragments/scroll-view/ScrollViewDocs.js.map +1 -0
  855. package/fragments/text-counter/TextCounterDocs.d.ts +2 -0
  856. package/fragments/text-counter/TextCounterDocs.js +23 -0
  857. package/fragments/text-counter/TextCounterDocs.js.map +1 -0
  858. package/package.json +1 -1
  859. package/shared/Eufemia.d.ts +1 -1
  860. package/shared/Eufemia.js +2 -2
  861. package/shared/Eufemia.js.map +1 -1
  862. package/shared/MediaQueryDocs.d.ts +2 -0
  863. package/shared/MediaQueryDocs.js +28 -0
  864. package/shared/MediaQueryDocs.js.map +1 -0
  865. package/shared/ThemeDocs.d.ts +2 -0
  866. package/shared/ThemeDocs.js +33 -0
  867. package/shared/ThemeDocs.js.map +1 -0
  868. package/shared/component-helper.js +1 -1
  869. package/shared/component-helper.js.map +1 -1
  870. package/shared/locales/en-GB.d.ts +1 -0
  871. package/shared/locales/en-GB.js +1 -0
  872. package/shared/locales/en-GB.js.map +1 -1
  873. package/shared/locales/en-US.d.ts +1 -0
  874. package/shared/locales/index.d.ts +2 -0
  875. package/shared/locales/nb-NO.d.ts +1 -0
  876. package/shared/locales/nb-NO.js +1 -0
  877. package/shared/locales/nb-NO.js.map +1 -1
  878. package/shared/locales/sv-SE.d.ts +1 -0
  879. package/shared/locales/sv-SE.js +1 -0
  880. package/shared/locales/sv-SE.js.map +1 -1
  881. package/style/core/scopes.scss +1 -1
  882. package/style/dnb-ui-basis.css +1 -1
  883. package/style/dnb-ui-basis.min.css +1 -1
  884. package/style/dnb-ui-body.css +1 -1
  885. package/style/dnb-ui-body.min.css +1 -1
  886. package/style/dnb-ui-components.css +8 -0
  887. package/style/dnb-ui-components.min.css +1 -1
  888. package/style/dnb-ui-core.css +1 -1
  889. package/style/dnb-ui-core.min.css +1 -1
  890. package/style/themes/theme-eiendom/eiendom-theme-components.css +13 -5
  891. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  892. package/style/themes/theme-sbanken/sbanken-theme-components.css +13 -5
  893. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  894. package/style/themes/theme-ui/ui-theme-components.css +13 -5
  895. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  896. package/umd/dnb-ui-basis.min.js +1 -1
  897. package/umd/dnb-ui-components.min.js +1 -1
  898. package/umd/dnb-ui-elements.min.js +1 -1
  899. package/umd/dnb-ui-extensions.min.js +1 -1
  900. package/umd/dnb-ui-lib.min.js +1 -1
@@ -6,7 +6,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
6
6
  const _excluded = ["className", "id", "mode", "initialActiveIndex", "omitScrollManagement", "omitFocusManagement", "onStepChange", "children", "noAnimation", "prerenderFieldProps", "keepInDOM", "validationMode", "variant", "sidebarId"];
7
7
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
8
8
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9
- import React, { useContext, useCallback, useRef, useReducer, useMemo } from 'react';
9
+ import React, { useContext, useCallback, useRef, useReducer, useMemo, useEffect } from 'react';
10
10
  import classnames from 'classnames';
11
11
  import { Space } from '../../../../components';
12
12
  import { warn } from '../../../../shared/component-helper';
@@ -24,7 +24,7 @@ import { IterateOverSteps } from './IterateOverSteps';
24
24
  import { PrerenderFieldPropsOfOtherSteps } from './PrerenderFieldPropsOfOtherSteps';
25
25
  const useLayoutEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;
26
26
  function WizardContainer(props) {
27
- var _dataContext$setHandl;
27
+ var _dataContext$setField;
28
28
  const {
29
29
  className,
30
30
  id: idProp,
@@ -54,56 +54,96 @@ function WizardContainer(props) {
54
54
  const [, forceUpdate] = useReducer(() => ({}), {});
55
55
  const activeIndexRef = useRef(initialActiveIndex);
56
56
  const totalStepsRef = useRef(NaN);
57
- const stepStatusRef = useRef({});
58
- const hasVisibleErrorRef = useRef({});
57
+ const submitCountRef = useRef(0);
58
+ const visitedStepsRef = useRef(new Map());
59
+ const fieldErrorRef = useRef(new Map());
60
+ const storeStepStateRef = useRef(new Map());
59
61
  const hasErrorInOtherStepRef = useRef(false);
60
- const visitedStepsRef = useRef({});
61
62
  const elementRef = useRef();
62
63
  const stepElementRef = useRef();
63
64
  const preventNextStepRef = useRef(false);
64
- const stepsRef = useRef({});
65
- const tmpStepsRef = useRef({});
65
+ const stepsRef = useRef(new Map());
66
+ const tmpStepsRef = useRef();
67
+ const stepIndexRef = useRef(-1);
66
68
  const updateTitlesRef = useRef();
67
69
  const prerenderFieldPropsRef = useRef({});
68
70
  const bypassOnNavigation = validationMode === 'bypassOnNavigation';
69
71
  const sharedStateRef = useRef();
70
72
  sharedStateRef.current = useSharedState(hasContext && id ? createReferenceKey(id, 'wizard') : undefined);
71
- visitedStepsRef.current[activeIndexRef.current] = true;
72
- const setStepState = useCallback((index, state) => {
73
- stepStatusRef.current[index] = state;
74
- }, []);
75
73
  const hasFieldErrorInStep = useCallback(index => {
76
- return Object.values(hasVisibleErrorRef.current).some(({
74
+ return Array.from(fieldErrorRef.current.values()).some(({
77
75
  index: i,
78
76
  hasError
79
77
  }) => {
80
78
  return i === index && hasError;
81
79
  });
82
80
  }, []);
83
- const revealError = useCallback((index, path, hasError) => {
84
- hasVisibleErrorRef.current[path] = {
85
- index,
86
- hasError
87
- };
88
- if (hasFieldErrorInStep(index)) {
89
- setStepState(index, 'error');
81
+ const setStepAsVisited = useCallback(index => {
82
+ visitedStepsRef.current.set(index, true);
83
+ }, []);
84
+ useEffect(() => {
85
+ if (!initialActiveIndex) {
86
+ setStepAsVisited(activeIndexRef.current);
90
87
  }
91
- }, [hasFieldErrorInStep, setStepState]);
92
- const activeIndex = activeIndexRef.current;
93
- const hasErrorInActiveStep = hasFieldErrorInStep(activeIndex);
94
- useMemo(() => {
95
- const currentState = stepStatusRef.current[activeIndex];
96
- if (!hasErrorInActiveStep && ['error', 'valid'].includes(currentState)) {
97
- setStepState(activeIndex, 'valid');
98
- } else {
99
- setStepState(activeIndex, hasErrorInActiveStep ? 'error' : undefined);
88
+ }, [initialActiveIndex, setStepAsVisited]);
89
+ const writeStepsState = useCallback((index = undefined, forStates = ['unknown', 'error']) => {
90
+ for (let i = 0; i < totalStepsRef.current; i++) {
91
+ if (index !== undefined && index !== i) {
92
+ continue;
93
+ }
94
+ let result = undefined;
95
+ const existingState = storeStepStateRef.current.get(i);
96
+ if (forStates.includes('unknown')) {
97
+ const state = i < activeIndexRef.current && visitedStepsRef.current.get(i) === undefined;
98
+ if (state) {
99
+ result = 'unknown';
100
+ }
101
+ }
102
+ if (forStates.includes('error')) {
103
+ const state = hasFieldErrorInStep(i);
104
+ if (state) {
105
+ result = 'error';
106
+ } else if (existingState === 'error') {
107
+ if (i === activeIndexRef.current) {
108
+ result = undefined;
109
+ } else {
110
+ result = existingState;
111
+ }
112
+ }
113
+ }
114
+ storeStepStateRef.current.set(i, result);
115
+ }
116
+ }, [hasFieldErrorInStep]);
117
+ const hasInvalidStepsState = useCallback((index = undefined, forStates = ['unknown', 'error']) => {
118
+ for (let i = 0; i < totalStepsRef.current; i++) {
119
+ if (index !== undefined && index !== i) {
120
+ continue;
121
+ }
122
+ const state = storeStepStateRef.current.get(i);
123
+ if (forStates.includes('unknown')) {
124
+ if (state === 'unknown') {
125
+ return true;
126
+ }
127
+ }
128
+ if (forStates.includes('error')) {
129
+ if (state === 'error') {
130
+ return true;
131
+ }
132
+ }
100
133
  }
101
- }, [activeIndex, hasErrorInActiveStep, setStepState]);
134
+ return false;
135
+ }, []);
136
+ const setFieldError = useCallback((index, path, hasError) => {
137
+ fieldErrorRef.current.set(path, {
138
+ index,
139
+ hasError
140
+ });
141
+ }, []);
102
142
  const preventNavigation = useCallback((shouldPrevent = true) => {
103
143
  preventNextStepRef.current = shouldPrevent;
104
144
  }, []);
105
145
  const getStepChangeOptions = useCallback(index => {
106
- var _stepsRef$current$ind;
146
+ var _stepsRef$current$get;
107
147
  const previousIndex = activeIndexRef.current;
108
148
  const options = {
109
149
  preventNavigation,
@@ -111,10 +151,10 @@ function WizardContainer(props) {
111
151
  index: previousIndex
112
152
  }
113
153
  };
114
- const id = (_stepsRef$current$ind = stepsRef.current[index]) === null || _stepsRef$current$ind === void 0 ? void 0 : _stepsRef$current$ind.id;
154
+ const id = (_stepsRef$current$get = stepsRef.current.get(index)) === null || _stepsRef$current$get === void 0 ? void 0 : _stepsRef$current$get.id;
115
155
  if (id) {
116
- var _stepsRef$current$pre;
117
- const previousId = (_stepsRef$current$pre = stepsRef.current[previousIndex]) === null || _stepsRef$current$pre === void 0 ? void 0 : _stepsRef$current$pre.id;
156
+ var _stepsRef$current$get2;
157
+ const previousId = (_stepsRef$current$get2 = stepsRef.current.get(previousIndex)) === null || _stepsRef$current$get2 === void 0 ? void 0 : _stepsRef$current$get2.id;
118
158
  Object.assign(options, {
119
159
  id
120
160
  });
@@ -171,10 +211,11 @@ function WizardContainer(props) {
171
211
  result = await callOnStepChange(index, mode);
172
212
  }
173
213
  setFormState('abort');
174
- setShowAllErrors(bypassOnNavigation ? false : stepStatusRef.current[index] === 'error');
214
+ setShowAllErrors(bypassOnNavigation ? false : hasInvalidStepsState(index, ['error']));
175
215
  if (!preventNextStepRef.current && !(result instanceof Error)) {
176
216
  handleLayoutEffect();
177
217
  activeIndexRef.current = index;
218
+ setStepAsVisited(activeIndexRef.current);
178
219
  forceUpdate();
179
220
  }
180
221
  preventNextStepRef.current = false;
@@ -191,13 +232,15 @@ function WizardContainer(props) {
191
232
  if (bypassOnNavigation) {
192
233
  await onSubmit();
193
234
  } else {
194
- const state = stepStatusRef.current[activeIndexRef.current];
195
- if (mode === 'next' && state === 'valid') {
196
- await onSubmit();
235
+ if (mode === 'next') {
236
+ writeStepsState(activeIndexRef.current, ['error']);
237
+ if (!hasInvalidStepsState(activeIndexRef.current)) {
238
+ await onSubmit();
239
+ }
197
240
  }
198
241
  }
199
242
  }
200
- }, [bypassOnNavigation, callOnStepChange, getStepChangeOptions, handleLayoutEffect, handleSubmitCall, isInteractionRef, onStepChange, setFormState, setShowAllErrors]);
243
+ }, [bypassOnNavigation, callOnStepChange, getStepChangeOptions, handleLayoutEffect, handleSubmitCall, hasInvalidStepsState, isInteractionRef, onStepChange, setFormState, setShowAllErrors, setStepAsVisited, writeStepsState]);
201
244
  const setActiveIndex = useCallback((index, options) => {
202
245
  if (index === activeIndexRef.current) {
203
246
  return;
@@ -227,22 +270,10 @@ function WizardContainer(props) {
227
270
  error
228
271
  });
229
272
  }, [setSubmitState]);
230
- const handleUnknownStepsState = useCallback(() => {
231
- const index = activeIndexRef.current;
232
- for (let i = 0; i < totalStepsRef.current; i++) {
233
- if (!visitedStepsRef.current[i] && stepStatusRef.current[i] === undefined && i < index && i !== index) {
234
- setStepState(i, 'unknown');
235
- }
236
- }
237
- }, [setStepState]);
238
- const hasInvalidStepsState = useCallback(forStates => {
239
- const steps = Object.values(stepStatusRef.current);
240
- return (forStates || ['unknown', 'error']).some(state => steps.includes(state));
241
- }, []);
242
273
  const handleSubmit = useCallback(({
243
274
  preventSubmit
244
275
  }) => {
245
- handleUnknownStepsState();
276
+ submitCountRef.current += 1;
246
277
  if (hasInvalidStepsState()) {
247
278
  return preventSubmit();
248
279
  }
@@ -250,11 +281,16 @@ function WizardContainer(props) {
250
281
  handleNext();
251
282
  preventSubmit();
252
283
  }
253
- }, [handleUnknownStepsState, hasInvalidStepsState, handleNext]);
254
- (_dataContext$setHandl = dataContext.setHandleSubmit) === null || _dataContext$setHandl === void 0 ? void 0 : _dataContext$setHandl.call(dataContext, handleSubmit);
284
+ }, [hasInvalidStepsState, handleNext]);
285
+ (_dataContext$setField = dataContext.setFieldEventListener) === null || _dataContext$setField === void 0 ? void 0 : _dataContext$setField.call(dataContext, undefined, 'onSubmit', handleSubmit);
255
286
  const {
256
287
  check
257
288
  } = useVisibility();
289
+ const mapOverChildrenRef = useRef(false);
290
+ const enableMapOverChildren = useCallback(() => {
291
+ mapOverChildrenRef.current = true;
292
+ }, []);
293
+ const activeIndex = activeIndexRef.current;
258
294
  const providerValue = useMemo(() => {
259
295
  return {
260
296
  id,
@@ -264,21 +300,25 @@ function WizardContainer(props) {
264
300
  stepsRef,
265
301
  updateTitlesRef,
266
302
  activeIndexRef,
303
+ stepIndexRef,
267
304
  totalStepsRef,
268
- stepStatusRef,
305
+ submitCountRef,
269
306
  prerenderFieldProps,
270
307
  prerenderFieldPropsRef,
271
308
  hasErrorInOtherStepRef,
272
309
  keepInDOM,
310
+ enableMapOverChildren,
311
+ mapOverChildrenRef,
273
312
  check,
274
313
  setActiveIndex,
275
314
  handlePrevious,
276
315
  hasInvalidStepsState,
277
- revealError,
316
+ writeStepsState,
317
+ setFieldError,
278
318
  handleNext,
279
319
  setFormError
280
320
  };
281
- }, [id, activeIndex, initialActiveIndex, prerenderFieldProps, keepInDOM, check, setActiveIndex, handlePrevious, hasInvalidStepsState, revealError, handleNext, setFormError]);
321
+ }, [id, activeIndex, initialActiveIndex, prerenderFieldProps, keepInDOM, enableMapOverChildren, check, setActiveIndex, handlePrevious, hasInvalidStepsState, writeStepsState, setFieldError, handleNext, setFormError]);
282
322
  useLayoutEffect(() => {
283
323
  if (id && hasContext) {
284
324
  sharedStateRef.current.extend(providerValue);
@@ -289,8 +329,11 @@ function WizardContainer(props) {
289
329
  (_updateTitlesRef$curr = updateTitlesRef.current) === null || _updateTitlesRef$curr === void 0 ? void 0 : _updateTitlesRef$curr.call(updateTitlesRef);
290
330
  }, [stepsRef.current]);
291
331
  const stepsLengthDidChange = useCallback(() => {
292
- const count = Object.keys(stepsRef.current).length;
293
- const tmpCount = Object.keys(tmpStepsRef.current).length;
332
+ const tmpCount = tmpStepsRef.current;
333
+ if (tmpCount === undefined) {
334
+ return false;
335
+ }
336
+ const count = totalStepsRef.current;
294
337
  return count !== 0 && tmpCount !== 0 && count !== tmpCount;
295
338
  }, []);
296
339
  useLayoutEffect(() => {
@@ -299,8 +342,8 @@ function WizardContainer(props) {
299
342
  callOnStepChange(activeIndexRef.current, 'stepListModified');
300
343
  (_executeLayoutAnimati = executeLayoutAnimationRef.current) === null || _executeLayoutAnimati === void 0 ? void 0 : _executeLayoutAnimati.call(executeLayoutAnimationRef);
301
344
  }
302
- tmpStepsRef.current = stepsRef.current;
303
- }, [stepsRef.current, callOnStepChange, stepsLengthDidChange]);
345
+ tmpStepsRef.current = totalStepsRef.current;
346
+ }, [totalStepsRef.current, callOnStepChange, stepsLengthDidChange]);
304
347
  if (!hasContext) {
305
348
  warn('You may wrap Wizard.Container in Form.Handler');
306
349
  return React.createElement(Handler, null, React.createElement(WizardContainer, _extends({}, props, {
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContainer.js","names":["React","useContext","useCallback","useRef","useReducer","useMemo","classnames","Space","warn","isAsync","useId","WizardContext","DataContext","Handler","createReferenceKey","useSharedState","useHandleLayoutEffect","useStepAnimation","useVisibility","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","useLayoutEffect","window","useEffect","WizardContainer","props","_dataContext$setHandl","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","keepInDOM","validationMode","variant","sidebarId","rest","_objectWithoutProperties","_excluded","dataContext","hasContext","setFormState","handleSubmitCall","setShowAllErrors","setSubmitState","forceUpdate","activeIndexRef","totalStepsRef","NaN","stepStatusRef","hasVisibleErrorRef","hasErrorInOtherStepRef","visitedStepsRef","elementRef","stepElementRef","preventNextStepRef","stepsRef","tmpStepsRef","updateTitlesRef","prerenderFieldPropsRef","bypassOnNavigation","sharedStateRef","current","undefined","setStepState","index","state","hasFieldErrorInStep","Object","values","some","i","hasError","revealError","path","activeIndex","hasErrorInActiveStep","currentState","includes","preventNavigation","shouldPrevent","getStepChangeOptions","_stepsRef$current$ind","previousIndex","options","previousStep","_stepsRef$current$pre","previousId","assign","callOnStepChange","setFocus","scrollToTop","isInteractionRef","executeLayoutAnimationRef","handleLayoutEffect","handleStepChange","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","didSubmit","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","call","result","Error","skipFieldValidation","enableAsyncBehavior","setActiveIndex","_objectSpread","handlePrevious","handleNext","handleChange","current_step","setFormError","error","handleUnknownStepsState","hasInvalidStepsState","forStates","steps","handleSubmit","preventSubmit","setHandleSubmit","check","providerValue","extend","_updateTitlesRef$curr","stepsLengthDidChange","count","keys","length","tmpCount","_executeLayoutAnimati","createElement","_extends","Provider","value","innerRef","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/WizardContainer.tsx"],"sourcesContent":["import React, {\n useContext,\n useCallback,\n useRef,\n useReducer,\n useMemo,\n} from 'react'\nimport classnames from 'classnames'\nimport { Space } from '../../../../components'\nimport { warn } from '../../../../shared/component-helper'\nimport { isAsync } from '../../../../shared/helpers/isAsync'\nimport useId from '../../../../shared/helpers/useId'\nimport WizardContext, {\n WizardContextState,\n} from '../Context/WizardContext'\nimport type {\n OnStepChange,\n OnStepChangeOptions,\n OnStepsChangeMode,\n SetActiveIndexOptions,\n StepIndex,\n Steps,\n InternalFieldError,\n InternalStepStatus,\n InternalStepStatuses,\n InternalVisitedSteps,\n} from '../Context/types'\nimport DataContext from '../../DataContext/Context'\nimport Handler from '../../Form/Handler/Handler'\nimport {\n SharedStateReturn,\n createReferenceKey,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport useHandleLayoutEffect from './useHandleLayoutEffect'\nimport useStepAnimation from './useStepAnimation'\nimport { ComponentProps } from '../../types'\nimport useVisibility from '../../Form/Visibility/useVisibility'\nimport { DisplaySteps } from './DisplaySteps'\nimport { IterateOverSteps } from './IterateOverSteps'\nimport { PrerenderFieldPropsOfOtherSteps } from './PrerenderFieldPropsOfOtherSteps'\n\n// SSR warning fix: https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\nconst useLayoutEffect =\n typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect\n\nexport type Props = ComponentProps & {\n id?: string\n\n /**\n * The mode of the wizard.\n */\n mode?: 'static' | 'strict' | 'loose'\n\n /**\n * If set to `true`, the wizard will not scroll to the first step when the user clicks on the next button.\n */\n omitScrollManagement?: boolean\n\n /**\n * If set to `true`, the wizard will not focus on the next step when the user clicks on the next button.\n */\n omitFocusManagement?: boolean\n\n /**\n * The index of the first step to be rendered.\n */\n initialActiveIndex?: StepIndex\n\n /**\n * The callback function that will be called when the user clicks on the next button.\n */\n onStepChange?: OnStepChange\n\n /**\n * The sidebar variant.\n */\n variant?: 'sidebar' | 'drawer'\n sidebarId?: string\n\n /**\n * If set to `true`, the wizard will not animate the steps.\n */\n noAnimation?: boolean\n\n /**\n * If set to `true`, the wizard will not unmount the steps when navigating back and forth.\n */\n keepInDOM?: boolean\n\n /**\n * If set to `true`, the wizard pre-render all steps so the props of each field is available in the data context.\n * Defaults to `true`.\n */\n prerenderFieldProps?: boolean\n\n /**\n * Determines if and how the validation will be bypassed.\n */\n validationMode?: 'bypassOnNavigation'\n\n /**\n * The children of the wizard container.\n */\n children: React.ReactNode\n\n /**\n * @deprecated Is enabled by default. You can disable it with \"omitScrollManagement\"\n */\n scrollTopOnStepChange?: boolean\n}\n\nfunction WizardContainer(props: Props) {\n const {\n className,\n id: idProp,\n mode = 'strict',\n initialActiveIndex = 0,\n omitScrollManagement,\n omitFocusManagement,\n onStepChange,\n children,\n noAnimation = true,\n prerenderFieldProps = true,\n keepInDOM,\n validationMode,\n variant = 'sidebar',\n sidebarId,\n ...rest\n } = props\n\n const dataContext = useContext(DataContext)\n const {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n setSubmitState,\n } = dataContext\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const totalStepsRef = useRef<number>(NaN)\n const stepStatusRef = useRef<InternalStepStatuses>({})\n const hasVisibleErrorRef = useRef<InternalFieldError>({})\n const hasErrorInOtherStepRef = useRef<boolean>(false)\n const visitedStepsRef = useRef<InternalVisitedSteps>({})\n const elementRef = useRef<HTMLElement>()\n const stepElementRef = useRef<HTMLElement>()\n const preventNextStepRef = useRef(false)\n const stepsRef = useRef<Steps>({})\n const tmpStepsRef = useRef<Steps>({})\n const updateTitlesRef = useRef<() => void>()\n const prerenderFieldPropsRef = useRef<\n Record<string, () => React.ReactElement>\n >({})\n\n const bypassOnNavigation = validationMode === 'bypassOnNavigation'\n\n // - Handle shared state\n const sharedStateRef =\n useRef<\n SharedStateReturn<\n WizardContextState & { onStepChange?: OnStepChange }\n >\n >()\n sharedStateRef.current = useSharedState<WizardContextState>(\n hasContext && id ? createReferenceKey(id, 'wizard') : undefined\n )\n\n visitedStepsRef.current[activeIndexRef.current] = true\n\n const setStepState = useCallback(\n (index: number, state: InternalStepStatus) => {\n stepStatusRef.current[index] = state\n },\n []\n )\n const hasFieldErrorInStep = useCallback((index: StepIndex) => {\n return Object.values(hasVisibleErrorRef.current).some(\n ({ index: i, hasError }) => {\n return i === index && hasError\n }\n )\n }, [])\n const revealError: WizardContextState['revealError'] = useCallback(\n (index, path, hasError) => {\n hasVisibleErrorRef.current[path] = { index, hasError }\n\n if (hasFieldErrorInStep(index)) {\n setStepState(index, 'error')\n }\n },\n [hasFieldErrorInStep, setStepState]\n )\n\n const activeIndex = activeIndexRef.current\n const hasErrorInActiveStep = hasFieldErrorInStep(activeIndex)\n useMemo(() => {\n const currentState = stepStatusRef.current[activeIndex]\n if (\n !hasErrorInActiveStep &&\n ['error', 'valid'].includes(currentState)\n ) {\n setStepState(activeIndex, 'valid')\n } else {\n setStepState(activeIndex, hasErrorInActiveStep ? 'error' : undefined)\n }\n }, [activeIndex, hasErrorInActiveStep, setStepState])\n\n const preventNavigation = useCallback((shouldPrevent = true) => {\n preventNextStepRef.current = shouldPrevent\n }, [])\n\n const getStepChangeOptions: (index: StepIndex) => OnStepChangeOptions =\n useCallback(\n (index) => {\n const previousIndex = activeIndexRef.current\n const options = {\n preventNavigation,\n previousStep: { index: previousIndex },\n }\n\n const id = stepsRef.current[index]?.id\n if (id) {\n const previousId = stepsRef.current[previousIndex]?.id\n Object.assign(options, { id })\n Object.assign(options.previousStep, { id: previousId })\n }\n\n return options\n },\n [preventNavigation]\n )\n\n const callOnStepChange = useCallback(\n async (index: StepIndex, mode: OnStepsChangeMode) => {\n if (isAsync(onStepChange)) {\n return await onStepChange(index, mode, getStepChangeOptions(index))\n }\n\n return onStepChange?.(index, mode, getStepChangeOptions(index))\n },\n [getStepChangeOptions, onStepChange]\n )\n\n const { setFocus, scrollToTop, isInteractionRef } =\n useHandleLayoutEffect({ elementRef, stepElementRef })\n\n const executeLayoutAnimationRef = useRef<() => void>()\n useStepAnimation({\n activeIndexRef,\n stepElementRef,\n executeLayoutAnimationRef,\n })\n\n const handleLayoutEffect = useCallback(() => {\n if (!omitFocusManagement) {\n setFocus()\n }\n if (!omitScrollManagement) {\n scrollToTop()\n }\n }, [omitScrollManagement, omitFocusManagement, setFocus, scrollToTop])\n\n const handleStepChange = useCallback(\n async ({\n index,\n skipErrorCheck,\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n mode,\n }: {\n index: StepIndex\n mode: OnStepsChangeMode\n } & SetActiveIndexOptions) => {\n let didSubmit = false\n const onSubmit = async () => {\n if (!skipStepChangeCallFromHook) {\n sharedStateRef.current?.data?.onStepChange?.(\n index,\n mode,\n getStepChangeOptions(index)\n )\n }\n\n let result = undefined\n\n if (\n !skipStepChangeCall &&\n !(skipStepChangeCallBeforeMounted && !isInteractionRef.current)\n ) {\n result = await callOnStepChange(index, mode)\n }\n\n // Hide async indicator\n setFormState('abort')\n\n // Set the \"showAllErrors\" to the step we got to\n setShowAllErrors(\n bypassOnNavigation\n ? false\n : stepStatusRef.current[index] === 'error'\n )\n\n if (!preventNextStepRef.current && !(result instanceof Error)) {\n handleLayoutEffect()\n\n activeIndexRef.current = index\n forceUpdate()\n }\n\n preventNextStepRef.current = false\n didSubmit = true\n\n return result\n }\n\n await handleSubmitCall({\n skipErrorCheck,\n skipFieldValidation: skipErrorCheck,\n enableAsyncBehavior: isAsync(onStepChange),\n onSubmit: bypassOnNavigation ? () => null : onSubmit,\n })\n\n if (!didSubmit) {\n if (bypassOnNavigation) {\n await onSubmit()\n } else {\n // In case steps were visited before, or they use the \"keepInDOM\" prop,\n // we need to check the step status, because other steps may report an error,\n // so the user will not be able to navigate to the next step,\n // because the form contains errors. Thats why onSubmit will not be called via handleSubmitCall.\n const state = stepStatusRef.current[activeIndexRef.current]\n if (mode === 'next' && state === 'valid') {\n await onSubmit()\n }\n }\n }\n },\n [\n bypassOnNavigation,\n callOnStepChange,\n getStepChangeOptions,\n handleLayoutEffect,\n handleSubmitCall,\n isInteractionRef,\n onStepChange,\n setFormState,\n setShowAllErrors,\n ]\n )\n\n const setActiveIndex = useCallback(\n (index: StepIndex, options?: SetActiveIndexOptions) => {\n if (index === activeIndexRef.current) {\n return\n }\n\n const mode = index > activeIndexRef.current ? 'next' : 'previous'\n\n handleStepChange({\n index,\n skipErrorCheck: mode === 'previous',\n mode,\n ...options,\n })\n },\n [handleStepChange]\n )\n\n const handlePrevious = useCallback(() => {\n setActiveIndex(activeIndexRef.current - 1)\n }, [setActiveIndex])\n\n const handleNext = useCallback(() => {\n setActiveIndex(activeIndexRef.current + 1)\n }, [setActiveIndex])\n\n const handleChange = useCallback(\n ({ current_step }) => {\n setActiveIndex(\n current_step,\n mode === 'loose' ? { skipErrorCheck: true } : undefined\n )\n },\n [mode, setActiveIndex]\n )\n\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n const handleUnknownStepsState = useCallback(() => {\n const index = activeIndexRef.current\n for (let i = 0; i < totalStepsRef.current; i++) {\n // - Check if the step was visited before,\n // - if, not check if the step has already an state,\n // - if, not check if the step is before the active step and and below.\n // - Only then set the state to \"unknown\"\n if (\n !visitedStepsRef.current[i] &&\n stepStatusRef.current[i] === undefined &&\n i < index &&\n i !== index\n ) {\n setStepState(i, 'unknown')\n }\n }\n }, [setStepState])\n\n const hasInvalidStepsState: WizardContextState['hasInvalidStepsState'] =\n useCallback((forStates) => {\n const steps = Object.values(stepStatusRef.current)\n return (forStates || ['unknown', 'error']).some((state) =>\n steps.includes(state)\n )\n }, [])\n\n const handleSubmit = useCallback(\n ({ preventSubmit }) => {\n handleUnknownStepsState()\n\n // - If there is an unknown step state, we need to prevent the submit\n if (hasInvalidStepsState()) {\n return preventSubmit()\n }\n\n if (activeIndexRef.current + 1 < totalStepsRef.current) {\n handleNext()\n preventSubmit()\n }\n },\n [handleUnknownStepsState, hasInvalidStepsState, handleNext]\n )\n dataContext.setHandleSubmit?.(handleSubmit)\n\n const { check } = useVisibility()\n\n const providerValue = useMemo<WizardContextState>(() => {\n return {\n id,\n activeIndex,\n initialActiveIndex,\n stepElementRef,\n stepsRef,\n updateTitlesRef,\n activeIndexRef,\n totalStepsRef,\n stepStatusRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n hasErrorInOtherStepRef,\n keepInDOM,\n check,\n setActiveIndex,\n handlePrevious,\n hasInvalidStepsState,\n revealError,\n handleNext,\n setFormError,\n }\n }, [\n id,\n activeIndex,\n initialActiveIndex,\n prerenderFieldProps,\n keepInDOM,\n check,\n setActiveIndex,\n handlePrevious,\n hasInvalidStepsState,\n revealError,\n handleNext,\n setFormError,\n ])\n\n // - Handle shared state\n useLayoutEffect(() => {\n if (id && hasContext) {\n sharedStateRef.current.extend(providerValue)\n }\n }, [hasContext, id, providerValue])\n\n useLayoutEffect(() => {\n updateTitlesRef.current?.()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [stepsRef.current])\n\n const stepsLengthDidChange = useCallback(() => {\n const count = Object.keys(stepsRef.current).length\n const tmpCount = Object.keys(tmpStepsRef.current).length\n return count !== 0 && tmpCount !== 0 && count !== tmpCount\n }, [])\n\n // - Call onStepChange when step gets replaced or added (e.g. via includeWhen)\n useLayoutEffect(() => {\n if (stepsLengthDidChange()) {\n callOnStepChange(activeIndexRef.current, 'stepListModified')\n executeLayoutAnimationRef.current?.()\n }\n tmpStepsRef.current = stepsRef.current\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [stepsRef.current, callOnStepChange, stepsLengthDidChange])\n\n if (!hasContext) {\n warn('You may wrap Wizard.Container in Form.Handler')\n return (\n <Handler>\n <WizardContainer {...props} id={id} />\n </Handler>\n )\n }\n\n return (\n <WizardContext.Provider value={providerValue}>\n <Space\n className={classnames(\n 'dnb-forms-wizard-layout',\n `dnb-forms-wizard-layout--${variant}`,\n className\n )}\n innerRef={elementRef}\n {...rest}\n >\n <DisplaySteps\n mode={mode}\n variant={variant}\n noAnimation={noAnimation}\n handleChange={handleChange}\n sidebarId={sidebarId}\n />\n\n <div className=\"dnb-forms-wizard-layout__contents\">\n <IterateOverSteps>{children}</IterateOverSteps>\n </div>\n </Space>\n\n {prerenderFieldProps && !keepInDOM && (\n <PrerenderFieldPropsOfOtherSteps\n prerenderFieldPropsRef={prerenderFieldPropsRef}\n />\n )}\n </WizardContext.Provider>\n )\n}\n\nWizardContainer._supportsSpacingProps = true\n\nexport default WizardContainer\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"WizardContainer.js","names":["React","useContext","useCallback","useRef","useReducer","useMemo","useEffect","classnames","Space","warn","isAsync","useId","WizardContext","DataContext","Handler","createReferenceKey","useSharedState","useHandleLayoutEffect","useStepAnimation","useVisibility","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","useLayoutEffect","window","WizardContainer","props","_dataContext$setField","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","keepInDOM","validationMode","variant","sidebarId","rest","_objectWithoutProperties","_excluded","dataContext","hasContext","setFormState","handleSubmitCall","setShowAllErrors","setSubmitState","forceUpdate","activeIndexRef","totalStepsRef","NaN","submitCountRef","visitedStepsRef","Map","fieldErrorRef","storeStepStateRef","hasErrorInOtherStepRef","elementRef","stepElementRef","preventNextStepRef","stepsRef","tmpStepsRef","stepIndexRef","updateTitlesRef","prerenderFieldPropsRef","bypassOnNavigation","sharedStateRef","current","undefined","hasFieldErrorInStep","index","Array","from","values","some","i","hasError","setStepAsVisited","set","writeStepsState","forStates","result","existingState","get","includes","state","hasInvalidStepsState","setFieldError","path","preventNavigation","shouldPrevent","getStepChangeOptions","_stepsRef$current$get","previousIndex","options","previousStep","_stepsRef$current$get2","previousId","Object","assign","callOnStepChange","setFocus","scrollToTop","isInteractionRef","executeLayoutAnimationRef","handleLayoutEffect","handleStepChange","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","didSubmit","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","call","Error","skipFieldValidation","enableAsyncBehavior","setActiveIndex","_objectSpread","handlePrevious","handleNext","handleChange","current_step","setFormError","error","handleSubmit","preventSubmit","setFieldEventListener","check","mapOverChildrenRef","enableMapOverChildren","activeIndex","providerValue","extend","_updateTitlesRef$curr","stepsLengthDidChange","tmpCount","count","_executeLayoutAnimati","createElement","_extends","Provider","value","innerRef","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/WizardContainer.tsx"],"sourcesContent":["import React, {\n useContext,\n useCallback,\n useRef,\n useReducer,\n useMemo,\n useEffect,\n} from 'react'\nimport classnames from 'classnames'\nimport { Space } from '../../../../components'\nimport { warn } from '../../../../shared/component-helper'\nimport { isAsync } from '../../../../shared/helpers/isAsync'\nimport useId from '../../../../shared/helpers/useId'\nimport WizardContext, {\n WizardContextState,\n} from '../Context/WizardContext'\nimport type {\n OnStepChange,\n OnStepChangeOptions,\n OnStepsChangeMode,\n SetActiveIndexOptions,\n StepIndex,\n Steps,\n InternalFieldError,\n InternalVisitedSteps,\n InternalStepStatus,\n InternalStepStatuses,\n} from '../Context/types'\nimport DataContext from '../../DataContext/Context'\nimport Handler from '../../Form/Handler/Handler'\nimport {\n SharedStateReturn,\n createReferenceKey,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport useHandleLayoutEffect from './useHandleLayoutEffect'\nimport useStepAnimation from './useStepAnimation'\nimport { ComponentProps } from '../../types'\nimport useVisibility from '../../Form/Visibility/useVisibility'\nimport { DisplaySteps } from './DisplaySteps'\nimport { IterateOverSteps } from './IterateOverSteps'\nimport { PrerenderFieldPropsOfOtherSteps } from './PrerenderFieldPropsOfOtherSteps'\n\n// SSR warning fix: https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\nconst useLayoutEffect =\n typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect\n\nexport type Props = ComponentProps & {\n id?: string\n\n /**\n * The mode of the wizard.\n */\n mode?: 'static' | 'strict' | 'loose'\n\n /**\n * If set to `true`, the wizard will not scroll to the first step when the user clicks on the next button.\n */\n omitScrollManagement?: boolean\n\n /**\n * If set to `true`, the wizard will not focus on the next step when the user clicks on the next button.\n */\n omitFocusManagement?: boolean\n\n /**\n * The index of the first step to be rendered.\n */\n initialActiveIndex?: StepIndex\n\n /**\n * The callback function that will be called when the user clicks on the next button.\n */\n onStepChange?: OnStepChange\n\n /**\n * The sidebar variant.\n */\n variant?: 'sidebar' | 'drawer'\n sidebarId?: string\n\n /**\n * If set to `true`, the wizard will not animate the steps.\n */\n noAnimation?: boolean\n\n /**\n * If set to `true`, the wizard will not unmount the steps when navigating back and forth.\n */\n keepInDOM?: boolean\n\n /**\n * If set to `true`, the wizard pre-render all steps so the props of each field is available in the data context.\n * Defaults to `true`.\n */\n prerenderFieldProps?: boolean\n\n /**\n * Determines if and how the validation will be bypassed.\n */\n validationMode?: 'bypassOnNavigation'\n\n /**\n * The children of the wizard container.\n */\n children: React.ReactNode\n\n /**\n * @deprecated Is enabled by default. You can disable it with \"omitScrollManagement\"\n */\n scrollTopOnStepChange?: boolean\n}\n\nfunction WizardContainer(props: Props) {\n const {\n className,\n id: idProp,\n mode = 'strict',\n initialActiveIndex = 0,\n omitScrollManagement,\n omitFocusManagement,\n onStepChange,\n children,\n noAnimation = true,\n prerenderFieldProps = true,\n keepInDOM,\n validationMode,\n variant = 'sidebar',\n sidebarId,\n ...rest\n } = props\n\n const dataContext = useContext(DataContext)\n const {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n setSubmitState,\n } = dataContext\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const totalStepsRef = useRef<number>(NaN)\n const submitCountRef = useRef(0)\n const visitedStepsRef = useRef<InternalVisitedSteps>(new Map())\n const fieldErrorRef = useRef<InternalFieldError>(new Map())\n const storeStepStateRef = useRef<InternalStepStatuses>(new Map())\n const hasErrorInOtherStepRef = useRef<boolean>(false)\n const elementRef = useRef<HTMLElement>()\n const stepElementRef = useRef<HTMLElement>()\n const preventNextStepRef = useRef(false)\n const stepsRef = useRef<Steps>(new Map())\n const tmpStepsRef = useRef<number>()\n const stepIndexRef = useRef<number>(-1)\n const updateTitlesRef = useRef<() => void>()\n const prerenderFieldPropsRef = useRef<\n Record<string, () => React.ReactElement>\n >({})\n\n const bypassOnNavigation = validationMode === 'bypassOnNavigation'\n\n // - Handle shared state\n const sharedStateRef =\n useRef<\n SharedStateReturn<\n WizardContextState & { onStepChange?: OnStepChange }\n >\n >()\n sharedStateRef.current = useSharedState<WizardContextState>(\n hasContext && id ? createReferenceKey(id, 'wizard') : undefined\n )\n\n const hasFieldErrorInStep = useCallback((index: StepIndex) => {\n return Array.from(fieldErrorRef.current.values()).some(\n ({ index: i, hasError }) => {\n return i === index && hasError\n }\n )\n }, [])\n\n const setStepAsVisited = useCallback((index: StepIndex) => {\n visitedStepsRef.current.set(index, true)\n }, [])\n\n useEffect(() => {\n if (!initialActiveIndex) {\n setStepAsVisited(activeIndexRef.current)\n }\n }, [initialActiveIndex, setStepAsVisited])\n\n /**\n * - This method is used to check if a step (or any step) has an invalid state.\n *\n * If a step was not visited before, it will be set to \"unknown\".\n * If a step was visited before, but has an invalid state, it will be set to \"error\".\n * If an index is given, it will check if the step, with the given index, has an invalid state.\n */\n const writeStepsState: WizardContextState['writeStepsState'] =\n useCallback(\n (index = undefined, forStates = ['unknown', 'error']) => {\n for (let i = 0; i < totalStepsRef.current; i++) {\n if (index !== undefined && index !== i) {\n continue\n }\n\n let result: InternalStepStatus = undefined\n const existingState = storeStepStateRef.current.get(i)\n\n if (forStates.includes('unknown')) {\n const state =\n i < activeIndexRef.current &&\n visitedStepsRef.current.get(i) === undefined\n if (state) {\n result = 'unknown'\n }\n }\n\n if (forStates.includes('error')) {\n const state = hasFieldErrorInStep(i)\n if (state) {\n result = 'error'\n } else if (existingState === 'error') {\n if (i === activeIndexRef.current) {\n result = undefined\n } else {\n result = existingState\n }\n }\n }\n\n storeStepStateRef.current.set(i, result)\n }\n },\n [hasFieldErrorInStep]\n )\n\n const hasInvalidStepsState: WizardContextState['hasInvalidStepsState'] =\n useCallback((index = undefined, forStates = ['unknown', 'error']) => {\n for (let i = 0; i < totalStepsRef.current; i++) {\n if (index !== undefined && index !== i) {\n continue\n }\n\n const state = storeStepStateRef.current.get(i)\n\n if (forStates.includes('unknown')) {\n if (state === 'unknown') {\n return true\n }\n }\n\n if (forStates.includes('error')) {\n if (state === 'error') {\n return true\n }\n }\n }\n\n return false\n }, [])\n\n const setFieldError: WizardContextState['setFieldError'] = useCallback(\n (index, path, hasError) => {\n fieldErrorRef.current.set(path, { index, hasError })\n },\n []\n )\n\n const preventNavigation = useCallback((shouldPrevent = true) => {\n preventNextStepRef.current = shouldPrevent\n }, [])\n\n const getStepChangeOptions: (index: StepIndex) => OnStepChangeOptions =\n useCallback(\n (index) => {\n const previousIndex = activeIndexRef.current\n const options = {\n preventNavigation,\n previousStep: { index: previousIndex },\n }\n\n const id = stepsRef.current.get(index)?.id\n if (id) {\n const previousId = stepsRef.current.get(previousIndex)?.id\n Object.assign(options, { id })\n Object.assign(options.previousStep, { id: previousId })\n }\n\n return options\n },\n [preventNavigation]\n )\n\n const callOnStepChange = useCallback(\n async (index: StepIndex, mode: OnStepsChangeMode) => {\n if (isAsync(onStepChange)) {\n return await onStepChange(index, mode, getStepChangeOptions(index))\n }\n\n return onStepChange?.(index, mode, getStepChangeOptions(index))\n },\n [getStepChangeOptions, onStepChange]\n )\n\n const { setFocus, scrollToTop, isInteractionRef } =\n useHandleLayoutEffect({ elementRef, stepElementRef })\n\n const executeLayoutAnimationRef = useRef<() => void>()\n useStepAnimation({\n activeIndexRef,\n stepElementRef,\n executeLayoutAnimationRef,\n })\n\n const handleLayoutEffect = useCallback(() => {\n if (!omitFocusManagement) {\n setFocus()\n }\n if (!omitScrollManagement) {\n scrollToTop()\n }\n }, [omitScrollManagement, omitFocusManagement, setFocus, scrollToTop])\n\n const handleStepChange = useCallback(\n async ({\n index,\n skipErrorCheck,\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n mode,\n }: {\n index: StepIndex\n mode: OnStepsChangeMode\n } & SetActiveIndexOptions) => {\n let didSubmit = false\n const onSubmit = async () => {\n if (!skipStepChangeCallFromHook) {\n sharedStateRef.current?.data?.onStepChange?.(\n index,\n mode,\n getStepChangeOptions(index)\n )\n }\n\n let result = undefined\n\n if (\n !skipStepChangeCall &&\n !(skipStepChangeCallBeforeMounted && !isInteractionRef.current)\n ) {\n result = await callOnStepChange(index, mode)\n }\n\n // Hide async indicator\n setFormState('abort')\n\n // Set the \"showAllErrors\" to the step we got to\n setShowAllErrors(\n bypassOnNavigation\n ? false\n : hasInvalidStepsState(index, ['error'])\n )\n\n if (!preventNextStepRef.current && !(result instanceof Error)) {\n handleLayoutEffect()\n\n activeIndexRef.current = index\n setStepAsVisited(activeIndexRef.current)\n forceUpdate()\n }\n\n preventNextStepRef.current = false\n didSubmit = true\n\n return result\n }\n\n await handleSubmitCall({\n skipErrorCheck,\n skipFieldValidation: skipErrorCheck,\n enableAsyncBehavior: isAsync(onStepChange),\n onSubmit: bypassOnNavigation ? () => null : onSubmit,\n })\n\n if (!didSubmit) {\n if (bypassOnNavigation) {\n await onSubmit()\n } else {\n if (mode === 'next') {\n // First we need to write the steps state for the current active index.\n writeStepsState(activeIndexRef.current, ['error'])\n\n // In case steps were visited before, or they use the \"keepInDOM\" prop,\n // we need to check the step status, because other steps may report an error,\n // so the user will not be able to navigate to the next step,\n // because the form contains errors. Thats why onSubmit will not be called via handleSubmitCall.\n if (!hasInvalidStepsState(activeIndexRef.current)) {\n await onSubmit()\n }\n }\n }\n }\n },\n [\n bypassOnNavigation,\n callOnStepChange,\n getStepChangeOptions,\n handleLayoutEffect,\n handleSubmitCall,\n hasInvalidStepsState,\n isInteractionRef,\n onStepChange,\n setFormState,\n setShowAllErrors,\n setStepAsVisited,\n writeStepsState,\n ]\n )\n\n const setActiveIndex = useCallback(\n (index: StepIndex, options?: SetActiveIndexOptions) => {\n if (index === activeIndexRef.current) {\n return\n }\n\n const mode = index > activeIndexRef.current ? 'next' : 'previous'\n\n handleStepChange({\n index,\n skipErrorCheck: mode === 'previous',\n mode,\n ...options,\n })\n },\n [handleStepChange]\n )\n\n const handlePrevious = useCallback(() => {\n setActiveIndex(activeIndexRef.current - 1)\n }, [setActiveIndex])\n\n const handleNext = useCallback(() => {\n setActiveIndex(activeIndexRef.current + 1)\n }, [setActiveIndex])\n\n const handleChange = useCallback(\n ({ current_step }) => {\n setActiveIndex(\n current_step,\n mode === 'loose' ? { skipErrorCheck: true } : undefined\n )\n },\n [mode, setActiveIndex]\n )\n\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n const handleSubmit = useCallback(\n ({ preventSubmit }) => {\n submitCountRef.current += 1\n\n // - If there is an unknown step state, we need to prevent the submit\n if (hasInvalidStepsState()) {\n return preventSubmit()\n }\n\n if (activeIndexRef.current + 1 < totalStepsRef.current) {\n handleNext()\n preventSubmit()\n }\n },\n [hasInvalidStepsState, handleNext]\n )\n dataContext.setFieldEventListener?.(undefined, 'onSubmit', handleSubmit)\n\n // NB: useVisibility needs to be imported here,\n // because it need the outer context to be available.\n const { check } = useVisibility()\n\n // This is used to map over the children and to give them the correct index,\n // in case it could be given properly, like if no id or title was given in React.StrictMode.\n const mapOverChildrenRef = useRef(false)\n const enableMapOverChildren = useCallback(() => {\n mapOverChildrenRef.current = true\n }, [])\n\n const activeIndex = activeIndexRef.current\n const providerValue = useMemo<WizardContextState>(() => {\n return {\n id,\n activeIndex,\n initialActiveIndex,\n stepElementRef,\n stepsRef,\n updateTitlesRef,\n activeIndexRef,\n stepIndexRef,\n totalStepsRef,\n submitCountRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n hasErrorInOtherStepRef,\n keepInDOM,\n enableMapOverChildren,\n mapOverChildrenRef,\n check,\n setActiveIndex,\n handlePrevious,\n hasInvalidStepsState,\n writeStepsState,\n setFieldError,\n handleNext,\n setFormError,\n } satisfies WizardContextState\n }, [\n id,\n activeIndex,\n initialActiveIndex,\n prerenderFieldProps,\n keepInDOM,\n enableMapOverChildren,\n check,\n setActiveIndex,\n handlePrevious,\n hasInvalidStepsState,\n writeStepsState,\n setFieldError,\n handleNext,\n setFormError,\n ])\n\n // - Handle shared state\n useLayoutEffect(() => {\n if (id && hasContext) {\n sharedStateRef.current.extend(providerValue)\n }\n }, [hasContext, id, providerValue])\n\n useLayoutEffect(() => {\n updateTitlesRef.current?.()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [stepsRef.current])\n\n const stepsLengthDidChange = useCallback(() => {\n const tmpCount = tmpStepsRef.current\n if (tmpCount === undefined) {\n return false\n }\n const count = totalStepsRef.current\n return count !== 0 && tmpCount !== 0 && count !== tmpCount\n }, [])\n\n // - Call onStepChange when step gets replaced or added (e.g. via includeWhen)\n useLayoutEffect(() => {\n if (stepsLengthDidChange()) {\n callOnStepChange(activeIndexRef.current, 'stepListModified')\n executeLayoutAnimationRef.current?.()\n }\n\n tmpStepsRef.current = totalStepsRef.current\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n totalStepsRef.current, // Include the totalStepsRef.current to trigger the useEffect on change\n callOnStepChange,\n stepsLengthDidChange,\n ])\n\n if (!hasContext) {\n warn('You may wrap Wizard.Container in Form.Handler')\n return (\n <Handler>\n <WizardContainer {...props} id={id} />\n </Handler>\n )\n }\n\n return (\n <WizardContext.Provider value={providerValue}>\n <Space\n className={classnames(\n 'dnb-forms-wizard-layout',\n `dnb-forms-wizard-layout--${variant}`,\n className\n )}\n innerRef={elementRef}\n {...rest}\n >\n <DisplaySteps\n mode={mode}\n variant={variant}\n noAnimation={noAnimation}\n handleChange={handleChange}\n sidebarId={sidebarId}\n />\n\n <div className=\"dnb-forms-wizard-layout__contents\">\n <IterateOverSteps>{children}</IterateOverSteps>\n </div>\n </Space>\n\n {prerenderFieldProps && !keepInDOM && (\n <PrerenderFieldPropsOfOtherSteps\n prerenderFieldPropsRef={prerenderFieldPropsRef}\n />\n )}\n </WizardContext.Provider>\n )\n}\n\nWizardContainer._supportsSpacingProps = true\n\nexport default WizardContainer\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ export declare function useCollectStepsData(): {
2
+ collectStepsData: ({ id, index, inactive, title }: {
3
+ id: any;
4
+ index: any;
5
+ inactive: any;
6
+ title: any;
7
+ }) => {
8
+ title: any;
9
+ };
10
+ };
@@ -0,0 +1,59 @@
1
+ "use client";
2
+
3
+ import { useCallback, useContext } from 'react';
4
+ import { convertJsxToString } from '../../../../shared/component-helper';
5
+ import WizardContext from '../Context/WizardContext';
6
+ import { useTranslation } from '../../hooks';
7
+ export function useCollectStepsData() {
8
+ const {
9
+ activeIndexRef,
10
+ hasErrorInOtherStepRef,
11
+ stepsRef,
12
+ submitCountRef,
13
+ writeStepsState,
14
+ hasInvalidStepsState
15
+ } = useContext(WizardContext) || {};
16
+ const translations = useTranslation();
17
+ const collectStepsData = useCallback(({
18
+ id,
19
+ index,
20
+ inactive,
21
+ title
22
+ }) => {
23
+ if (!hasInvalidStepsState) {
24
+ return;
25
+ }
26
+ writeStepsState(index);
27
+ const stringifiedTitle = title !== undefined ? convertJsxToString(title) : 'Title missing';
28
+ let status = undefined;
29
+ let statusState = undefined;
30
+ if (index !== activeIndexRef.current && !inactive) {
31
+ if (hasInvalidStepsState(index, ['error'])) {
32
+ status = translations.Step.stepHasError;
33
+ statusState = 'error';
34
+ } else if (submitCountRef.current > 0 && hasInvalidStepsState(index, ['unknown'])) {
35
+ status = 'Unknown state';
36
+ statusState = 'warn';
37
+ }
38
+ }
39
+ if (status) {
40
+ hasErrorInOtherStepRef.current = true;
41
+ }
42
+ stepsRef.current.set(index, {
43
+ index,
44
+ id,
45
+ title,
46
+ stringifiedTitle,
47
+ inactive,
48
+ status,
49
+ statusState
50
+ });
51
+ return {
52
+ title
53
+ };
54
+ }, [activeIndexRef, hasErrorInOtherStepRef, hasInvalidStepsState, stepsRef, submitCountRef, translations.Step.stepHasError, writeStepsState]);
55
+ return {
56
+ collectStepsData
57
+ };
58
+ }
59
+ //# sourceMappingURL=useCollectStepsData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCollectStepsData.js","names":["useCallback","useContext","convertJsxToString","WizardContext","useTranslation","useCollectStepsData","activeIndexRef","hasErrorInOtherStepRef","stepsRef","submitCountRef","writeStepsState","hasInvalidStepsState","translations","collectStepsData","id","index","inactive","title","stringifiedTitle","undefined","status","statusState","current","Step","stepHasError","set"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/useCollectStepsData.tsx"],"sourcesContent":["import { useCallback, useContext } from 'react'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport WizardContext from '../Context/WizardContext'\nimport { useTranslation } from '../../hooks'\n\nexport function useCollectStepsData() {\n const {\n activeIndexRef,\n hasErrorInOtherStepRef,\n stepsRef,\n submitCountRef,\n writeStepsState,\n hasInvalidStepsState,\n } = useContext(WizardContext) || {}\n\n const translations = useTranslation()\n\n const collectStepsData = useCallback(\n ({ id, index, inactive, title }) => {\n if (!hasInvalidStepsState) {\n return // stop here\n }\n\n writeStepsState(index)\n\n const stringifiedTitle =\n title !== undefined ? convertJsxToString(title) : 'Title missing'\n\n let status = undefined\n let statusState = undefined\n if (index !== activeIndexRef.current && !inactive) {\n if (hasInvalidStepsState(index, ['error'])) {\n status = translations.Step.stepHasError\n statusState = 'error'\n } else if (\n submitCountRef.current > 0 &&\n hasInvalidStepsState(index, ['unknown'])\n ) {\n status = 'Unknown state'\n statusState = 'warn'\n }\n }\n\n if (status) {\n hasErrorInOtherStepRef.current = true\n }\n\n stepsRef.current.set(index, {\n index,\n id,\n title,\n stringifiedTitle,\n inactive,\n status,\n statusState,\n })\n\n return { title }\n },\n [\n activeIndexRef,\n hasErrorInOtherStepRef,\n hasInvalidStepsState,\n stepsRef,\n submitCountRef,\n translations.Step.stepHasError,\n writeStepsState,\n ]\n )\n\n return { collectStepsData }\n}\n"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,UAAU,QAAQ,OAAO;AAC/C,SAASC,kBAAkB,QAAQ,qCAAqC;AACxE,OAAOC,aAAa,MAAM,0BAA0B;AACpD,SAASC,cAAc,QAAQ,aAAa;AAE5C,OAAO,SAASC,mBAAmBA,CAAA,EAAG;EACpC,MAAM;IACJC,cAAc;IACdC,sBAAsB;IACtBC,QAAQ;IACRC,cAAc;IACdC,eAAe;IACfC;EACF,CAAC,GAAGV,UAAU,CAACE,aAAa,CAAC,IAAI,CAAC,CAAC;EAEnC,MAAMS,YAAY,GAAGR,cAAc,CAAC,CAAC;EAErC,MAAMS,gBAAgB,GAAGb,WAAW,CAClC,CAAC;IAAEc,EAAE;IAAEC,KAAK;IAAEC,QAAQ;IAAEC;EAAM,CAAC,KAAK;IAClC,IAAI,CAACN,oBAAoB,EAAE;MACzB;IACF;IAEAD,eAAe,CAACK,KAAK,CAAC;IAEtB,MAAMG,gBAAgB,GACpBD,KAAK,KAAKE,SAAS,GAAGjB,kBAAkB,CAACe,KAAK,CAAC,GAAG,eAAe;IAEnE,IAAIG,MAAM,GAAGD,SAAS;IACtB,IAAIE,WAAW,GAAGF,SAAS;IAC3B,IAAIJ,KAAK,KAAKT,cAAc,CAACgB,OAAO,IAAI,CAACN,QAAQ,EAAE;MACjD,IAAIL,oBAAoB,CAACI,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE;QAC1CK,MAAM,GAAGR,YAAY,CAACW,IAAI,CAACC,YAAY;QACvCH,WAAW,GAAG,OAAO;MACvB,CAAC,MAAM,IACLZ,cAAc,CAACa,OAAO,GAAG,CAAC,IAC1BX,oBAAoB,CAACI,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,EACxC;QACAK,MAAM,GAAG,eAAe;QACxBC,WAAW,GAAG,MAAM;MACtB;IACF;IAEA,IAAID,MAAM,EAAE;MACVb,sBAAsB,CAACe,OAAO,GAAG,IAAI;IACvC;IAEAd,QAAQ,CAACc,OAAO,CAACG,GAAG,CAACV,KAAK,EAAE;MAC1BA,KAAK;MACLD,EAAE;MACFG,KAAK;MACLC,gBAAgB;MAChBF,QAAQ;MACRI,MAAM;MACNC;IACF,CAAC,CAAC;IAEF,OAAO;MAAEJ;IAAM,CAAC;EAClB,CAAC,EACD,CACEX,cAAc,EACdC,sBAAsB,EACtBI,oBAAoB,EACpBH,QAAQ,EACRC,cAAc,EACdG,YAAY,CAACW,IAAI,CAACC,YAAY,EAC9Bd,eAAe,CAEnB,CAAC;EAED,OAAO;IAAEG;EAAiB,CAAC;AAC7B","ignoreList":[]}
@@ -1,7 +1,13 @@
1
1
  import React from 'react';
2
2
  import { Path } from '../../types';
3
3
  import { VisibleWhen } from '../../Form/Visibility';
4
- import { InternalStepStatus, InternalStepStatuses, SetActiveIndexOptions, StepIndex, Steps } from './types';
4
+ import { InternalStepStatus, SetActiveIndexOptions, StepIndex, Steps } from './types';
5
+ export type HandleStatusArgs = {
6
+ id: string;
7
+ index: StepIndex;
8
+ inactive: boolean;
9
+ titleProp: React.ReactNode;
10
+ };
5
11
  export interface WizardContextState {
6
12
  id?: string;
7
13
  totalSteps?: number;
@@ -11,8 +17,9 @@ export interface WizardContextState {
11
17
  stepsRef?: React.MutableRefObject<Steps>;
12
18
  updateTitlesRef?: React.MutableRefObject<() => void>;
13
19
  activeIndexRef?: React.MutableRefObject<StepIndex>;
20
+ stepIndexRef?: React.MutableRefObject<StepIndex>;
14
21
  totalStepsRef?: React.MutableRefObject<number>;
15
- stepStatusRef?: React.MutableRefObject<InternalStepStatuses>;
22
+ submitCountRef?: React.MutableRefObject<number>;
16
23
  prerenderFieldPropsRef?: React.MutableRefObject<Record<string, () => React.ReactElement>>;
17
24
  hasErrorInOtherStepRef?: React.MutableRefObject<boolean>;
18
25
  prerenderFieldProps?: boolean;
@@ -21,11 +28,17 @@ export interface WizardContextState {
21
28
  handleNext?: () => void;
22
29
  setActiveIndex?: (index: StepIndex, { skipStepChangeCall, skipStepChangeCallBeforeMounted, skipStepChangeCallFromHook, }?: SetActiveIndexOptions) => void;
23
30
  setFormError?: (error: Error) => void;
24
- revealError?: (index: StepIndex, path: Path, hasError: boolean) => void;
25
- hasInvalidStepsState?: (forStates?: Array<InternalStepStatus>) => boolean;
31
+ setFieldError?: (index: StepIndex, path: Path, hasError: boolean) => void;
32
+ writeStepsState?: (index?: StepIndex, forStates?: Array<InternalStepStatus>) => void;
33
+ hasInvalidStepsState?: (index?: StepIndex, forStates?: Array<InternalStepStatus>) => boolean;
26
34
  check?: ({ visibleWhen }: {
27
35
  visibleWhen: VisibleWhen;
28
36
  }) => boolean;
37
+ collectStepsData?: (args: HandleStatusArgs) => {
38
+ title: string;
39
+ };
40
+ enableMapOverChildren?: () => void;
41
+ mapOverChildrenRef?: React.MutableRefObject<boolean>;
29
42
  }
30
43
  declare const WizardContext: React.Context<WizardContextState>;
31
44
  export default WizardContext;
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContext.js","names":["React","WizardContext","createContext","undefined"],"sources":["../../../../../../src/extensions/forms/Wizard/Context/WizardContext.ts"],"sourcesContent":["import React from 'react'\nimport { Path } from '../../types'\nimport { VisibleWhen } from '../../Form/Visibility'\nimport {\n InternalStepStatus,\n InternalStepStatuses,\n SetActiveIndexOptions,\n StepIndex,\n Steps,\n} from './types'\n\nexport interface WizardContextState {\n id?: string\n totalSteps?: number\n activeIndex?: StepIndex\n initialActiveIndex?: StepIndex\n stepElementRef?: React.MutableRefObject<HTMLElement>\n stepsRef?: React.MutableRefObject<Steps>\n updateTitlesRef?: React.MutableRefObject<() => void>\n activeIndexRef?: React.MutableRefObject<StepIndex>\n totalStepsRef?: React.MutableRefObject<number>\n stepStatusRef?: React.MutableRefObject<InternalStepStatuses>\n prerenderFieldPropsRef?: React.MutableRefObject<\n Record<string, () => React.ReactElement>\n >\n hasErrorInOtherStepRef?: React.MutableRefObject<boolean>\n prerenderFieldProps?: boolean\n keepInDOM?: boolean\n handlePrevious?: () => void\n handleNext?: () => void\n setActiveIndex?: (\n index: StepIndex,\n {\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n }?: SetActiveIndexOptions\n ) => void\n setFormError?: (error: Error) => void\n revealError?: (index: StepIndex, path: Path, hasError: boolean) => void\n hasInvalidStepsState?: (forStates?: Array<InternalStepStatus>) => boolean\n check?: ({ visibleWhen }: { visibleWhen: VisibleWhen }) => boolean\n}\n\nconst WizardContext = React.createContext<WizardContextState | undefined>(\n undefined\n)\n\nexport default WizardContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AA4CzB,MAAMC,aAAa,GAAGD,KAAK,CAACE,aAAa,CACvCC,SACF,CAAC;AAED,eAAeF,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"WizardContext.js","names":["React","WizardContext","createContext","undefined"],"sources":["../../../../../../src/extensions/forms/Wizard/Context/WizardContext.ts"],"sourcesContent":["import React from 'react'\nimport { Path } from '../../types'\nimport { VisibleWhen } from '../../Form/Visibility'\nimport {\n InternalStepStatus,\n SetActiveIndexOptions,\n StepIndex,\n Steps,\n} from './types'\n\nexport type HandleStatusArgs = {\n id: string\n index: StepIndex\n inactive: boolean\n titleProp: React.ReactNode\n}\n\nexport interface WizardContextState {\n id?: string\n totalSteps?: number\n activeIndex?: StepIndex\n initialActiveIndex?: StepIndex\n stepElementRef?: React.MutableRefObject<HTMLElement>\n stepsRef?: React.MutableRefObject<Steps>\n updateTitlesRef?: React.MutableRefObject<() => void>\n activeIndexRef?: React.MutableRefObject<StepIndex>\n stepIndexRef?: React.MutableRefObject<StepIndex>\n totalStepsRef?: React.MutableRefObject<number>\n submitCountRef?: React.MutableRefObject<number>\n prerenderFieldPropsRef?: React.MutableRefObject<\n Record<string, () => React.ReactElement>\n >\n hasErrorInOtherStepRef?: React.MutableRefObject<boolean>\n prerenderFieldProps?: boolean\n keepInDOM?: boolean\n handlePrevious?: () => void\n handleNext?: () => void\n setActiveIndex?: (\n index: StepIndex,\n {\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n }?: SetActiveIndexOptions\n ) => void\n setFormError?: (error: Error) => void\n setFieldError?: (index: StepIndex, path: Path, hasError: boolean) => void\n writeStepsState?: (\n index?: StepIndex,\n forStates?: Array<InternalStepStatus>\n ) => void\n hasInvalidStepsState?: (\n index?: StepIndex,\n forStates?: Array<InternalStepStatus>\n ) => boolean\n check?: ({ visibleWhen }: { visibleWhen: VisibleWhen }) => boolean\n collectStepsData?: (args: HandleStatusArgs) => { title: string }\n enableMapOverChildren?: () => void\n mapOverChildrenRef?: React.MutableRefObject<boolean>\n}\n\nconst WizardContext = React.createContext<WizardContextState | undefined>(\n undefined\n)\n\nexport default WizardContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AA6DzB,MAAMC,aAAa,GAAGD,KAAK,CAACE,aAAa,CACvCC,SACF,CAAC;AAED,eAAeF,aAAa","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { StepIndicatorStatusState } from '../../../../components/step-indicator/StepIndicatorItem';
2
3
  import { EventReturnWithStateObject, Path } from '../../types';
3
4
  export type OnStepsChangeMode = 'previous' | 'next' | 'stepListModified';
@@ -11,9 +12,11 @@ export type OnStepChangeOptions = {
11
12
  };
12
13
  export type OnStepChange = (index: StepIndex, mode: OnStepsChangeMode, options: OnStepChangeOptions) => EventReturnWithStateObject | void | Promise<EventReturnWithStateObject | void>;
13
14
  export type StepIndex = number;
14
- export type Steps = Record<string, {
15
- title: string;
15
+ export type Steps = Map<StepIndex, {
16
+ index: StepIndex;
16
17
  id: string;
18
+ title: React.ReactNode;
19
+ stringifiedTitle: string;
17
20
  inactive?: boolean;
18
21
  /** Used internally to set the status */
19
22
  status?: string;
@@ -26,10 +29,10 @@ export type SetActiveIndexOptions = {
26
29
  skipStepChangeCallFromHook?: boolean;
27
30
  skipErrorCheck?: boolean;
28
31
  };
29
- export type InternalStepStatus = 'error' | 'valid' | 'unknown' | undefined;
30
- export type InternalStepStatuses = Record<StepIndex, InternalStepStatus>;
31
- export type InternalVisitedSteps = Record<StepIndex, boolean>;
32
- export type InternalFieldError = Record<Path, {
32
+ export type InternalStepStatus = 'error' | 'unknown' | undefined;
33
+ export type InternalStepStatuses = Map<StepIndex, InternalStepStatus>;
34
+ export type InternalVisitedSteps = Map<StepIndex, boolean>;
35
+ export type InternalFieldError = Map<Path, {
33
36
  index: StepIndex;
34
37
  hasError: boolean;
35
38
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../../../src/extensions/forms/Wizard/Context/types.ts"],"sourcesContent":["import { StepIndicatorStatusState } from '../../../../components/step-indicator/StepIndicatorItem'\nimport { EventReturnWithStateObject, Path } from '../../types'\n\nexport type OnStepsChangeMode = 'previous' | 'next' | 'stepListModified'\nexport type OnStepChangeOptions = {\n preventNavigation: (shouldPrevent?: boolean) => void\n id?: string\n previousStep: {\n index: StepIndex\n id?: string\n }\n}\nexport type OnStepChange = (\n index: StepIndex,\n mode: OnStepsChangeMode,\n options: OnStepChangeOptions\n) =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n\nexport type StepIndex = number\nexport type Steps = Record<\n string,\n {\n title: string\n id: string\n inactive?: boolean\n\n /** Used internally to set the status */\n status?: string\n\n /** Used internally to set the statusState */\n statusState?: StepIndicatorStatusState\n }\n>\nexport type SetActiveIndexOptions = {\n skipStepChangeCall?: boolean\n skipStepChangeCallBeforeMounted?: boolean\n skipStepChangeCallFromHook?: boolean\n skipErrorCheck?: boolean\n}\n\nexport type InternalStepStatus = 'error' | 'valid' | 'unknown' | undefined\nexport type InternalStepStatuses = Record<StepIndex, InternalStepStatus>\nexport type InternalVisitedSteps = Record<StepIndex, boolean>\nexport type InternalFieldError = Record<\n Path,\n {\n index: StepIndex\n hasError: boolean\n }\n>\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../../src/extensions/forms/Wizard/Context/types.ts"],"sourcesContent":["import { StepIndicatorStatusState } from '../../../../components/step-indicator/StepIndicatorItem'\nimport { EventReturnWithStateObject, Path } from '../../types'\n\nexport type OnStepsChangeMode = 'previous' | 'next' | 'stepListModified'\nexport type OnStepChangeOptions = {\n preventNavigation: (shouldPrevent?: boolean) => void\n id?: string\n previousStep: {\n index: StepIndex\n id?: string\n }\n}\nexport type OnStepChange = (\n index: StepIndex,\n mode: OnStepsChangeMode,\n options: OnStepChangeOptions\n) =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n\nexport type StepIndex = number\nexport type Steps = Map<\n StepIndex,\n {\n index: StepIndex\n id: string\n title: React.ReactNode\n stringifiedTitle: string\n inactive?: boolean\n\n /** Used internally to set the status */\n status?: string\n\n /** Used internally to set the statusState */\n statusState?: StepIndicatorStatusState\n }\n>\nexport type SetActiveIndexOptions = {\n skipStepChangeCall?: boolean\n skipStepChangeCallBeforeMounted?: boolean\n skipStepChangeCallFromHook?: boolean\n skipErrorCheck?: boolean\n}\n\nexport type InternalStepStatus = 'error' | 'unknown' | undefined\nexport type InternalStepStatuses = Map<StepIndex, InternalStepStatus>\nexport type InternalVisitedSteps = Map<StepIndex, boolean>\nexport type InternalFieldError = Map<\n Path,\n {\n index: StepIndex\n hasError: boolean\n }\n>\n"],"mappings":"","ignoreList":[]}