@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
@@ -1 +1 @@
1
- {"version":3,"file":"IterateOverSteps.js","names":["_react","_interopRequireWildcard","require","_hooks","_componentHelper","_WizardContext","_interopRequireDefault","_Step","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","IterateOverSteps","_ref","children","check","stepsRef","activeIndexRef","totalStepsRef","stepStatusRef","prerenderFieldProps","prerenderFieldPropsRef","hasErrorInOtherStepRef","useContext","WizardContext","current","incrementIndex","translations","useTranslation","childrenArray","React","Children","map","child","isValidElement","_child","_child2","step","type","Step","_step","apply","props","title","titleProp","inactive","include","includeWhen","id","handleDeprecatedStepProps","visibleWhen","index","undefined","convertJsxToString","state","status","stepHasError","statusState","key","clone","cloneElement","document","length"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/IterateOverSteps.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { useTranslation } from '../../hooks'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport WizardContext from '../Context/WizardContext'\nimport Step, {\n Props as StepProps,\n handleDeprecatedProps as handleDeprecatedStepProps,\n} from '../Step/Step'\n\nexport function IterateOverSteps({ children }) {\n const {\n check,\n stepsRef,\n activeIndexRef,\n totalStepsRef,\n stepStatusRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n hasErrorInOtherStepRef,\n } = useContext(WizardContext)\n hasErrorInOtherStepRef.current = false\n\n stepsRef.current = {}\n let incrementIndex = -1\n\n const translations = useTranslation()\n\n const childrenArray = React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n let step = child\n\n if (child?.type !== Step && typeof child.type === 'function') {\n step = child.type.apply(child.type, [\n child.props,\n ]) as React.ReactElement\n\n if (step?.type === Step) {\n child = step\n }\n }\n\n if (child?.type === Step) {\n const {\n title: titleProp,\n inactive,\n include,\n includeWhen,\n id,\n } = handleDeprecatedStepProps(child.props)\n\n if (include === false) {\n return null\n }\n\n if (\n includeWhen &&\n !check({\n visibleWhen: includeWhen,\n })\n ) {\n return null\n }\n\n incrementIndex++\n\n const index = incrementIndex\n const title =\n titleProp !== undefined\n ? convertJsxToString(titleProp)\n : 'Title missing'\n const state = stepStatusRef.current[index]\n const status =\n index !== activeIndexRef.current\n ? state === 'error'\n ? translations.Step.stepHasError\n : state === 'unknown'\n ? 'Unknown state'\n : undefined\n : undefined\n const statusState = state === 'error' ? 'error' : undefined // undefined shows 'warn' by default\n const key = `${index}-${activeIndexRef.current}`\n\n if (status) {\n hasErrorInOtherStepRef.current = true\n }\n\n stepsRef.current[index] = {\n id,\n title,\n inactive,\n status,\n statusState,\n }\n\n const clone = (props) =>\n React.cloneElement(child as React.ReactElement<StepProps>, props)\n\n if (\n prerenderFieldProps &&\n typeof document !== 'undefined' &&\n index !== activeIndexRef.current &&\n typeof prerenderFieldPropsRef.current['step-' + index] ===\n 'undefined'\n ) {\n prerenderFieldPropsRef.current['step-' + index] = () =>\n clone({\n key,\n index,\n prerenderFieldProps: true,\n })\n }\n\n return clone({\n key,\n index,\n })\n }\n }\n\n return child\n })\n\n // Ensure we never have a higher index than the available children\n // else we get a white screen\n if (childrenArray?.length === 0) {\n activeIndexRef.current = 0\n } else if (childrenArray?.length < activeIndexRef.current + 1) {\n activeIndexRef.current = childrenArray.length - 1\n }\n\n totalStepsRef.current = childrenArray?.length\n\n return childrenArray\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"IterateOverSteps.js","names":["_react","_interopRequireWildcard","require","_WizardContext","_interopRequireDefault","_StepContext","_Step","_useCollectStepsData","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","IterateOverSteps","_ref","children","check","stepsRef","activeIndexRef","totalStepsRef","stepIndexRef","prerenderFieldProps","prerenderFieldPropsRef","hasErrorInOtherStepRef","mapOverChildrenRef","useContext","WizardContext","collectStepsData","useCollectStepsData","current","Map","childrenArray","React","Children","map","child","isValidElement","_child","_child2","step","type","Step","_step","apply","props","title","inactive","include","includeWhen","id","handleDeprecatedStepProps","visibleWhen","index","document","key","cloneElement","createElement","Provider","value"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/IterateOverSteps.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport WizardContext from '../Context/WizardContext'\nimport WizardStepContext from '../Step/StepContext'\nimport Step, {\n Props as StepProps,\n handleDeprecatedProps as handleDeprecatedStepProps,\n} from '../Step/Step'\nimport { useCollectStepsData } from './useCollectStepsData'\n\nexport function IterateOverSteps({\n children,\n}: {\n children: React.ReactNode\n}): React.ReactNode {\n const {\n check,\n stepsRef,\n activeIndexRef,\n totalStepsRef,\n stepIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n hasErrorInOtherStepRef,\n mapOverChildrenRef,\n } = useContext(WizardContext)\n\n const { collectStepsData } = useCollectStepsData()\n\n // Reset before iterating and calling \"collectStepsData\" and other variables are collected.\n stepsRef.current = new Map()\n hasErrorInOtherStepRef.current = false\n stepIndexRef.current = -1\n totalStepsRef.current = 0\n\n const childrenArray = React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n let step = child\n\n if (child?.type !== Step && typeof child.type === 'function') {\n step = child.type.apply(child.type, [\n child.props,\n ]) as React.ReactElement\n\n if (step?.type === Step) {\n child = step\n }\n }\n\n if (child?.type === Step) {\n const { title, inactive, include, includeWhen, id } =\n handleDeprecatedStepProps(child.props)\n\n if (include === false) {\n return null\n }\n\n if (\n includeWhen &&\n !check({\n visibleWhen: includeWhen,\n })\n ) {\n return null\n }\n\n const index = totalStepsRef.current\n totalStepsRef.current = totalStepsRef.current + 1\n\n collectStepsData({\n id,\n index,\n inactive,\n title,\n })\n\n if (\n prerenderFieldProps &&\n typeof document !== 'undefined' &&\n index !== activeIndexRef.current &&\n typeof prerenderFieldPropsRef.current['step-' + index] ===\n 'undefined'\n ) {\n const key = `${index}-${activeIndexRef.current}`\n prerenderFieldPropsRef.current['step-' + index] = () =>\n React.cloneElement(child as React.ReactElement<StepProps>, {\n key,\n index,\n prerenderFieldProps: true,\n })\n }\n\n return child\n }\n }\n\n return child\n })\n\n // Ensure we never have a higher index than the available children\n // else we get a white screen\n if (totalStepsRef.current === 0) {\n activeIndexRef.current = 0\n } else if (totalStepsRef.current < activeIndexRef.current + 1) {\n activeIndexRef.current = totalStepsRef.current - 1\n }\n\n if (mapOverChildrenRef.current) {\n return childrenArray.map((child, index) => {\n return (\n <WizardStepContext.Provider key={index} value={{ index }}>\n {child}\n </WizardStepContext.Provider>\n )\n })\n }\n\n return children\n}\n"],"mappings":"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","ignoreList":[]}
@@ -36,7 +36,7 @@ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i
36
36
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
37
37
  const useLayoutEffect = typeof window === 'undefined' ? _react.default.useEffect : _react.default.useLayoutEffect;
38
38
  function WizardContainer(props) {
39
- var _dataContext$setHandl;
39
+ var _dataContext$setField;
40
40
  const {
41
41
  className,
42
42
  id: idProp,
@@ -66,26 +66,24 @@ function WizardContainer(props) {
66
66
  const [, forceUpdate] = (0, _react.useReducer)(() => ({}), {});
67
67
  const activeIndexRef = (0, _react.useRef)(initialActiveIndex);
68
68
  const totalStepsRef = (0, _react.useRef)(NaN);
69
- const stepStatusRef = (0, _react.useRef)({});
70
- const hasVisibleErrorRef = (0, _react.useRef)({});
69
+ const submitCountRef = (0, _react.useRef)(0);
70
+ const visitedStepsRef = (0, _react.useRef)(new Map());
71
+ const fieldErrorRef = (0, _react.useRef)(new Map());
72
+ const storeStepStateRef = (0, _react.useRef)(new Map());
71
73
  const hasErrorInOtherStepRef = (0, _react.useRef)(false);
72
- const visitedStepsRef = (0, _react.useRef)({});
73
74
  const elementRef = (0, _react.useRef)();
74
75
  const stepElementRef = (0, _react.useRef)();
75
76
  const preventNextStepRef = (0, _react.useRef)(false);
76
- const stepsRef = (0, _react.useRef)({});
77
- const tmpStepsRef = (0, _react.useRef)({});
77
+ const stepsRef = (0, _react.useRef)(new Map());
78
+ const tmpStepsRef = (0, _react.useRef)();
79
+ const stepIndexRef = (0, _react.useRef)(-1);
78
80
  const updateTitlesRef = (0, _react.useRef)();
79
81
  const prerenderFieldPropsRef = (0, _react.useRef)({});
80
82
  const bypassOnNavigation = validationMode === 'bypassOnNavigation';
81
83
  const sharedStateRef = (0, _react.useRef)();
82
84
  sharedStateRef.current = (0, _useSharedState.useSharedState)(hasContext && id ? (0, _useSharedState.createReferenceKey)(id, 'wizard') : undefined);
83
- visitedStepsRef.current[activeIndexRef.current] = true;
84
- const setStepState = (0, _react.useCallback)((index, state) => {
85
- stepStatusRef.current[index] = state;
86
- }, []);
87
85
  const hasFieldErrorInStep = (0, _react.useCallback)(index => {
88
- return Object.values(hasVisibleErrorRef.current).some(_ref => {
86
+ return Array.from(fieldErrorRef.current.values()).some(_ref => {
89
87
  let {
90
88
  index: i,
91
89
  hasError
@@ -93,31 +91,77 @@ function WizardContainer(props) {
93
91
  return i === index && hasError;
94
92
  });
95
93
  }, []);
96
- const revealError = (0, _react.useCallback)((index, path, hasError) => {
97
- hasVisibleErrorRef.current[path] = {
98
- index,
99
- hasError
100
- };
101
- if (hasFieldErrorInStep(index)) {
102
- setStepState(index, 'error');
94
+ const setStepAsVisited = (0, _react.useCallback)(index => {
95
+ visitedStepsRef.current.set(index, true);
96
+ }, []);
97
+ (0, _react.useEffect)(() => {
98
+ if (!initialActiveIndex) {
99
+ setStepAsVisited(activeIndexRef.current);
103
100
  }
104
- }, [hasFieldErrorInStep, setStepState]);
105
- const activeIndex = activeIndexRef.current;
106
- const hasErrorInActiveStep = hasFieldErrorInStep(activeIndex);
107
- (0, _react.useMemo)(() => {
108
- const currentState = stepStatusRef.current[activeIndex];
109
- if (!hasErrorInActiveStep && ['error', 'valid'].includes(currentState)) {
110
- setStepState(activeIndex, 'valid');
111
- } else {
112
- setStepState(activeIndex, hasErrorInActiveStep ? 'error' : undefined);
101
+ }, [initialActiveIndex, setStepAsVisited]);
102
+ const writeStepsState = (0, _react.useCallback)(function () {
103
+ let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
104
+ let forStates = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['unknown', 'error'];
105
+ for (let i = 0; i < totalStepsRef.current; i++) {
106
+ if (index !== undefined && index !== i) {
107
+ continue;
108
+ }
109
+ let result = undefined;
110
+ const existingState = storeStepStateRef.current.get(i);
111
+ if (forStates.includes('unknown')) {
112
+ const state = i < activeIndexRef.current && visitedStepsRef.current.get(i) === undefined;
113
+ if (state) {
114
+ result = 'unknown';
115
+ }
116
+ }
117
+ if (forStates.includes('error')) {
118
+ const state = hasFieldErrorInStep(i);
119
+ if (state) {
120
+ result = 'error';
121
+ } else if (existingState === 'error') {
122
+ if (i === activeIndexRef.current) {
123
+ result = undefined;
124
+ } else {
125
+ result = existingState;
126
+ }
127
+ }
128
+ }
129
+ storeStepStateRef.current.set(i, result);
130
+ }
131
+ }, [hasFieldErrorInStep]);
132
+ const hasInvalidStepsState = (0, _react.useCallback)(function () {
133
+ let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
134
+ let forStates = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['unknown', 'error'];
135
+ for (let i = 0; i < totalStepsRef.current; i++) {
136
+ if (index !== undefined && index !== i) {
137
+ continue;
138
+ }
139
+ const state = storeStepStateRef.current.get(i);
140
+ if (forStates.includes('unknown')) {
141
+ if (state === 'unknown') {
142
+ return true;
143
+ }
144
+ }
145
+ if (forStates.includes('error')) {
146
+ if (state === 'error') {
147
+ return true;
148
+ }
149
+ }
113
150
  }
114
- }, [activeIndex, hasErrorInActiveStep, setStepState]);
151
+ return false;
152
+ }, []);
153
+ const setFieldError = (0, _react.useCallback)((index, path, hasError) => {
154
+ fieldErrorRef.current.set(path, {
155
+ index,
156
+ hasError
157
+ });
158
+ }, []);
115
159
  const preventNavigation = (0, _react.useCallback)(function () {
116
160
  let shouldPrevent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
117
161
  preventNextStepRef.current = shouldPrevent;
118
162
  }, []);
119
163
  const getStepChangeOptions = (0, _react.useCallback)(index => {
120
- var _stepsRef$current$ind;
164
+ var _stepsRef$current$get;
121
165
  const previousIndex = activeIndexRef.current;
122
166
  const options = {
123
167
  preventNavigation,
@@ -125,10 +169,10 @@ function WizardContainer(props) {
125
169
  index: previousIndex
126
170
  }
127
171
  };
128
- const id = (_stepsRef$current$ind = stepsRef.current[index]) === null || _stepsRef$current$ind === void 0 ? void 0 : _stepsRef$current$ind.id;
172
+ const id = (_stepsRef$current$get = stepsRef.current.get(index)) === null || _stepsRef$current$get === void 0 ? void 0 : _stepsRef$current$get.id;
129
173
  if (id) {
130
- var _stepsRef$current$pre;
131
- const previousId = (_stepsRef$current$pre = stepsRef.current[previousIndex]) === null || _stepsRef$current$pre === void 0 ? void 0 : _stepsRef$current$pre.id;
174
+ var _stepsRef$current$get2;
175
+ const previousId = (_stepsRef$current$get2 = stepsRef.current.get(previousIndex)) === null || _stepsRef$current$get2 === void 0 ? void 0 : _stepsRef$current$get2.id;
132
176
  Object.assign(options, {
133
177
  id
134
178
  });
@@ -186,10 +230,11 @@ function WizardContainer(props) {
186
230
  result = await callOnStepChange(index, mode);
187
231
  }
188
232
  setFormState('abort');
189
- setShowAllErrors(bypassOnNavigation ? false : stepStatusRef.current[index] === 'error');
233
+ setShowAllErrors(bypassOnNavigation ? false : hasInvalidStepsState(index, ['error']));
190
234
  if (!preventNextStepRef.current && !(result instanceof Error)) {
191
235
  handleLayoutEffect();
192
236
  activeIndexRef.current = index;
237
+ setStepAsVisited(activeIndexRef.current);
193
238
  forceUpdate();
194
239
  }
195
240
  preventNextStepRef.current = false;
@@ -206,13 +251,15 @@ function WizardContainer(props) {
206
251
  if (bypassOnNavigation) {
207
252
  await onSubmit();
208
253
  } else {
209
- const state = stepStatusRef.current[activeIndexRef.current];
210
- if (mode === 'next' && state === 'valid') {
211
- await onSubmit();
254
+ if (mode === 'next') {
255
+ writeStepsState(activeIndexRef.current, ['error']);
256
+ if (!hasInvalidStepsState(activeIndexRef.current)) {
257
+ await onSubmit();
258
+ }
212
259
  }
213
260
  }
214
261
  }
215
- }, [bypassOnNavigation, callOnStepChange, getStepChangeOptions, handleLayoutEffect, handleSubmitCall, isInteractionRef, onStepChange, setFormState, setShowAllErrors]);
262
+ }, [bypassOnNavigation, callOnStepChange, getStepChangeOptions, handleLayoutEffect, handleSubmitCall, hasInvalidStepsState, isInteractionRef, onStepChange, setFormState, setShowAllErrors, setStepAsVisited, writeStepsState]);
216
263
  const setActiveIndex = (0, _react.useCallback)((index, options) => {
217
264
  if (index === activeIndexRef.current) {
218
265
  return;
@@ -243,23 +290,11 @@ function WizardContainer(props) {
243
290
  error
244
291
  });
245
292
  }, [setSubmitState]);
246
- const handleUnknownStepsState = (0, _react.useCallback)(() => {
247
- const index = activeIndexRef.current;
248
- for (let i = 0; i < totalStepsRef.current; i++) {
249
- if (!visitedStepsRef.current[i] && stepStatusRef.current[i] === undefined && i < index && i !== index) {
250
- setStepState(i, 'unknown');
251
- }
252
- }
253
- }, [setStepState]);
254
- const hasInvalidStepsState = (0, _react.useCallback)(forStates => {
255
- const steps = Object.values(stepStatusRef.current);
256
- return (forStates || ['unknown', 'error']).some(state => steps.includes(state));
257
- }, []);
258
293
  const handleSubmit = (0, _react.useCallback)(_ref4 => {
259
294
  let {
260
295
  preventSubmit
261
296
  } = _ref4;
262
- handleUnknownStepsState();
297
+ submitCountRef.current += 1;
263
298
  if (hasInvalidStepsState()) {
264
299
  return preventSubmit();
265
300
  }
@@ -267,11 +302,16 @@ function WizardContainer(props) {
267
302
  handleNext();
268
303
  preventSubmit();
269
304
  }
270
- }, [handleUnknownStepsState, hasInvalidStepsState, handleNext]);
271
- (_dataContext$setHandl = dataContext.setHandleSubmit) === null || _dataContext$setHandl === void 0 ? void 0 : _dataContext$setHandl.call(dataContext, handleSubmit);
305
+ }, [hasInvalidStepsState, handleNext]);
306
+ (_dataContext$setField = dataContext.setFieldEventListener) === null || _dataContext$setField === void 0 ? void 0 : _dataContext$setField.call(dataContext, undefined, 'onSubmit', handleSubmit);
272
307
  const {
273
308
  check
274
309
  } = (0, _useVisibility.default)();
310
+ const mapOverChildrenRef = (0, _react.useRef)(false);
311
+ const enableMapOverChildren = (0, _react.useCallback)(() => {
312
+ mapOverChildrenRef.current = true;
313
+ }, []);
314
+ const activeIndex = activeIndexRef.current;
275
315
  const providerValue = (0, _react.useMemo)(() => {
276
316
  return {
277
317
  id,
@@ -281,21 +321,25 @@ function WizardContainer(props) {
281
321
  stepsRef,
282
322
  updateTitlesRef,
283
323
  activeIndexRef,
324
+ stepIndexRef,
284
325
  totalStepsRef,
285
- stepStatusRef,
326
+ submitCountRef,
286
327
  prerenderFieldProps,
287
328
  prerenderFieldPropsRef,
288
329
  hasErrorInOtherStepRef,
289
330
  keepInDOM,
331
+ enableMapOverChildren,
332
+ mapOverChildrenRef,
290
333
  check,
291
334
  setActiveIndex,
292
335
  handlePrevious,
293
336
  hasInvalidStepsState,
294
- revealError,
337
+ writeStepsState,
338
+ setFieldError,
295
339
  handleNext,
296
340
  setFormError
297
341
  };
298
- }, [id, activeIndex, initialActiveIndex, prerenderFieldProps, keepInDOM, check, setActiveIndex, handlePrevious, hasInvalidStepsState, revealError, handleNext, setFormError]);
342
+ }, [id, activeIndex, initialActiveIndex, prerenderFieldProps, keepInDOM, enableMapOverChildren, check, setActiveIndex, handlePrevious, hasInvalidStepsState, writeStepsState, setFieldError, handleNext, setFormError]);
299
343
  useLayoutEffect(() => {
300
344
  if (id && hasContext) {
301
345
  sharedStateRef.current.extend(providerValue);
@@ -306,8 +350,11 @@ function WizardContainer(props) {
306
350
  (_updateTitlesRef$curr = updateTitlesRef.current) === null || _updateTitlesRef$curr === void 0 ? void 0 : _updateTitlesRef$curr.call(updateTitlesRef);
307
351
  }, [stepsRef.current]);
308
352
  const stepsLengthDidChange = (0, _react.useCallback)(() => {
309
- const count = Object.keys(stepsRef.current).length;
310
- const tmpCount = Object.keys(tmpStepsRef.current).length;
353
+ const tmpCount = tmpStepsRef.current;
354
+ if (tmpCount === undefined) {
355
+ return false;
356
+ }
357
+ const count = totalStepsRef.current;
311
358
  return count !== 0 && tmpCount !== 0 && count !== tmpCount;
312
359
  }, []);
313
360
  useLayoutEffect(() => {
@@ -316,8 +363,8 @@ function WizardContainer(props) {
316
363
  callOnStepChange(activeIndexRef.current, 'stepListModified');
317
364
  (_executeLayoutAnimati = executeLayoutAnimationRef.current) === null || _executeLayoutAnimati === void 0 ? void 0 : _executeLayoutAnimati.call(executeLayoutAnimationRef);
318
365
  }
319
- tmpStepsRef.current = stepsRef.current;
320
- }, [stepsRef.current, callOnStepChange, stepsLengthDidChange]);
366
+ tmpStepsRef.current = totalStepsRef.current;
367
+ }, [totalStepsRef.current, callOnStepChange, stepsLengthDidChange]);
321
368
  if (!hasContext) {
322
369
  (0, _componentHelper.warn)('You may wrap Wizard.Container in Form.Handler');
323
370
  return _react.default.createElement(_Handler.default, null, _react.default.createElement(WizardContainer, _extends({}, props, {
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_componentHelper","_isAsync","_useId","_WizardContext","_Context","_Handler","_useSharedState","_useHandleLayoutEffect","_useStepAnimation","_useVisibility","_DisplaySteps","_IterateOverSteps","_PrerenderFieldPropsOfOtherSteps","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","useLayoutEffect","window","React","useEffect","WizardContainer","props","_dataContext$setHandl","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","keepInDOM","validationMode","variant","sidebarId","rest","dataContext","useContext","DataContext","hasContext","setFormState","handleSubmitCall","setShowAllErrors","setSubmitState","useId","forceUpdate","useReducer","activeIndexRef","useRef","totalStepsRef","NaN","stepStatusRef","hasVisibleErrorRef","hasErrorInOtherStepRef","visitedStepsRef","elementRef","stepElementRef","preventNextStepRef","stepsRef","tmpStepsRef","updateTitlesRef","prerenderFieldPropsRef","bypassOnNavigation","sharedStateRef","current","useSharedState","createReferenceKey","undefined","setStepState","useCallback","index","state","hasFieldErrorInStep","values","some","_ref","hasError","revealError","path","activeIndex","hasErrorInActiveStep","useMemo","currentState","includes","preventNavigation","shouldPrevent","getStepChangeOptions","_stepsRef$current$ind","previousIndex","options","previousStep","_stepsRef$current$pre","previousId","callOnStepChange","isAsync","setFocus","scrollToTop","isInteractionRef","useHandleLayoutEffect","executeLayoutAnimationRef","useStepAnimation","handleLayoutEffect","handleStepChange","_ref2","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","didSubmit","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","result","Error","skipFieldValidation","enableAsyncBehavior","setActiveIndex","handlePrevious","handleNext","handleChange","_ref3","current_step","setFormError","error","handleUnknownStepsState","hasInvalidStepsState","forStates","steps","handleSubmit","_ref4","preventSubmit","setHandleSubmit","check","useVisibility","providerValue","extend","_updateTitlesRef$curr","stepsLengthDidChange","count","tmpCount","_executeLayoutAnimati","warn","createElement","Provider","Space","classnames","innerRef","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","_supportsSpacingProps","_default","exports"],"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","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_componentHelper","_isAsync","_useId","_WizardContext","_Context","_Handler","_useSharedState","_useHandleLayoutEffect","_useStepAnimation","_useVisibility","_DisplaySteps","_IterateOverSteps","_PrerenderFieldPropsOfOtherSteps","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","useLayoutEffect","window","React","useEffect","WizardContainer","props","_dataContext$setField","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","keepInDOM","validationMode","variant","sidebarId","rest","dataContext","useContext","DataContext","hasContext","setFormState","handleSubmitCall","setShowAllErrors","setSubmitState","useId","forceUpdate","useReducer","activeIndexRef","useRef","totalStepsRef","NaN","submitCountRef","visitedStepsRef","Map","fieldErrorRef","storeStepStateRef","hasErrorInOtherStepRef","elementRef","stepElementRef","preventNextStepRef","stepsRef","tmpStepsRef","stepIndexRef","updateTitlesRef","prerenderFieldPropsRef","bypassOnNavigation","sharedStateRef","current","useSharedState","createReferenceKey","undefined","hasFieldErrorInStep","useCallback","index","Array","from","values","some","_ref","hasError","setStepAsVisited","writeStepsState","forStates","result","existingState","includes","state","hasInvalidStepsState","setFieldError","path","preventNavigation","shouldPrevent","getStepChangeOptions","_stepsRef$current$get","previousIndex","options","previousStep","_stepsRef$current$get2","previousId","callOnStepChange","isAsync","setFocus","scrollToTop","isInteractionRef","useHandleLayoutEffect","executeLayoutAnimationRef","useStepAnimation","handleLayoutEffect","handleStepChange","_ref2","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","didSubmit","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","Error","skipFieldValidation","enableAsyncBehavior","setActiveIndex","handlePrevious","handleNext","handleChange","_ref3","current_step","setFormError","error","handleSubmit","_ref4","preventSubmit","setFieldEventListener","check","useVisibility","mapOverChildrenRef","enableMapOverChildren","activeIndex","providerValue","useMemo","extend","_updateTitlesRef$curr","stepsLengthDidChange","tmpCount","count","_executeLayoutAnimati","warn","createElement","Provider","Space","classnames","innerRef","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","_supportsSpacingProps","_default","exports"],"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,66 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useCollectStepsData = useCollectStepsData;
8
+ var _react = require("react");
9
+ var _componentHelper = require("../../../../shared/component-helper");
10
+ var _WizardContext = _interopRequireDefault(require("../Context/WizardContext"));
11
+ var _hooks = require("../../hooks");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function useCollectStepsData() {
14
+ const {
15
+ activeIndexRef,
16
+ hasErrorInOtherStepRef,
17
+ stepsRef,
18
+ submitCountRef,
19
+ writeStepsState,
20
+ hasInvalidStepsState
21
+ } = (0, _react.useContext)(_WizardContext.default) || {};
22
+ const translations = (0, _hooks.useTranslation)();
23
+ const collectStepsData = (0, _react.useCallback)(_ref => {
24
+ let {
25
+ id,
26
+ index,
27
+ inactive,
28
+ title
29
+ } = _ref;
30
+ if (!hasInvalidStepsState) {
31
+ return;
32
+ }
33
+ writeStepsState(index);
34
+ const stringifiedTitle = title !== undefined ? (0, _componentHelper.convertJsxToString)(title) : 'Title missing';
35
+ let status = undefined;
36
+ let statusState = undefined;
37
+ if (index !== activeIndexRef.current && !inactive) {
38
+ if (hasInvalidStepsState(index, ['error'])) {
39
+ status = translations.Step.stepHasError;
40
+ statusState = 'error';
41
+ } else if (submitCountRef.current > 0 && hasInvalidStepsState(index, ['unknown'])) {
42
+ status = 'Unknown state';
43
+ statusState = 'warn';
44
+ }
45
+ }
46
+ if (status) {
47
+ hasErrorInOtherStepRef.current = true;
48
+ }
49
+ stepsRef.current.set(index, {
50
+ index,
51
+ id,
52
+ title,
53
+ stringifiedTitle,
54
+ inactive,
55
+ status,
56
+ statusState
57
+ });
58
+ return {
59
+ title
60
+ };
61
+ }, [activeIndexRef, hasErrorInOtherStepRef, hasInvalidStepsState, stepsRef, submitCountRef, translations.Step.stepHasError, writeStepsState]);
62
+ return {
63
+ collectStepsData
64
+ };
65
+ }
66
+ //# sourceMappingURL=useCollectStepsData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCollectStepsData.js","names":["_react","require","_componentHelper","_WizardContext","_interopRequireDefault","_hooks","e","__esModule","default","useCollectStepsData","activeIndexRef","hasErrorInOtherStepRef","stepsRef","submitCountRef","writeStepsState","hasInvalidStepsState","useContext","WizardContext","translations","useTranslation","collectStepsData","useCallback","_ref","id","index","inactive","title","stringifiedTitle","undefined","convertJsxToString","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,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAA4C,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErC,SAASG,mBAAmBA,CAAA,EAAG;EACpC,MAAM;IACJC,cAAc;IACdC,sBAAsB;IACtBC,QAAQ;IACRC,cAAc;IACdC,eAAe;IACfC;EACF,CAAC,GAAG,IAAAC,iBAAU,EAACC,sBAAa,CAAC,IAAI,CAAC,CAAC;EAEnC,MAAMC,YAAY,GAAG,IAAAC,qBAAc,EAAC,CAAC;EAErC,MAAMC,gBAAgB,GAAG,IAAAC,kBAAW,EAClCC,IAAA,IAAoC;IAAA,IAAnC;MAAEC,EAAE;MAAEC,KAAK;MAAEC,QAAQ;MAAEC;IAAM,CAAC,GAAAJ,IAAA;IAC7B,IAAI,CAACP,oBAAoB,EAAE;MACzB;IACF;IAEAD,eAAe,CAACU,KAAK,CAAC;IAEtB,MAAMG,gBAAgB,GACpBD,KAAK,KAAKE,SAAS,GAAG,IAAAC,mCAAkB,EAACH,KAAK,CAAC,GAAG,eAAe;IAEnE,IAAII,MAAM,GAAGF,SAAS;IACtB,IAAIG,WAAW,GAAGH,SAAS;IAC3B,IAAIJ,KAAK,KAAKd,cAAc,CAACsB,OAAO,IAAI,CAACP,QAAQ,EAAE;MACjD,IAAIV,oBAAoB,CAACS,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE;QAC1CM,MAAM,GAAGZ,YAAY,CAACe,IAAI,CAACC,YAAY;QACvCH,WAAW,GAAG,OAAO;MACvB,CAAC,MAAM,IACLlB,cAAc,CAACmB,OAAO,GAAG,CAAC,IAC1BjB,oBAAoB,CAACS,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,EACxC;QACAM,MAAM,GAAG,eAAe;QACxBC,WAAW,GAAG,MAAM;MACtB;IACF;IAEA,IAAID,MAAM,EAAE;MACVnB,sBAAsB,CAACqB,OAAO,GAAG,IAAI;IACvC;IAEApB,QAAQ,CAACoB,OAAO,CAACG,GAAG,CAACX,KAAK,EAAE;MAC1BA,KAAK;MACLD,EAAE;MACFG,KAAK;MACLC,gBAAgB;MAChBF,QAAQ;MACRK,MAAM;MACNC;IACF,CAAC,CAAC;IAEF,OAAO;MAAEL;IAAM,CAAC;EAClB,CAAC,EACD,CACEhB,cAAc,EACdC,sBAAsB,EACtBI,oBAAoB,EACpBH,QAAQ,EACRC,cAAc,EACdK,YAAY,CAACe,IAAI,CAACC,YAAY,EAC9BpB,eAAe,CAEnB,CAAC;EAED,OAAO;IAAEM;EAAiB,CAAC;AAC7B","ignoreList":[]}