@dnb/eufemia 10.35.0 → 10.37.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 (464) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/cjs/components/accordion/Accordion.d.ts +15 -3
  3. package/cjs/components/accordion/Accordion.js +7 -0
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/accordion/AccordionDocs.d.ts +4 -0
  6. package/cjs/components/accordion/AccordionDocs.js +161 -0
  7. package/cjs/components/accordion/AccordionDocs.js.map +1 -0
  8. package/cjs/components/accordion/AccordionGroup.js +13 -3
  9. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  10. package/cjs/components/accordion/AccordionHeader.d.ts +5 -5
  11. package/cjs/components/accordion/AccordionHeader.js +3 -2
  12. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  13. package/cjs/components/accordion/AccordionProviderContext.d.ts +2 -0
  14. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  15. package/cjs/components/anchor/Anchor.d.ts +20 -0
  16. package/cjs/components/anchor/Anchor.js +13 -4
  17. package/cjs/components/anchor/Anchor.js.map +1 -1
  18. package/cjs/components/anchor/AnchorDocs.d.ts +3 -0
  19. package/cjs/components/anchor/AnchorDocs.js +82 -0
  20. package/cjs/components/anchor/AnchorDocs.js.map +1 -0
  21. package/cjs/components/autocomplete/Autocomplete.js +18 -4
  22. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  23. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  24. package/cjs/components/height-animation/HeightAnimationInstance.d.ts +3 -3
  25. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  26. package/cjs/components/height-animation/useHeightAnimation.d.ts +5 -1
  27. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  28. package/cjs/components/icon/Icon.d.ts +493 -61
  29. package/cjs/components/icon/Icon.js +97 -134
  30. package/cjs/components/icon/Icon.js.map +1 -1
  31. package/cjs/components/icon/IconHelpers.d.ts +2 -1
  32. package/cjs/components/icon/IconHelpers.js +1 -1
  33. package/cjs/components/icon/IconHelpers.js.map +1 -1
  34. package/cjs/components/icon/IconPrimary.d.ts +2 -2
  35. package/cjs/components/icon/IconPrimary.js.map +1 -1
  36. package/cjs/components/icon-primary/IconPrimary.d.ts +8 -11
  37. package/cjs/components/icon-primary/IconPrimary.js +37 -38
  38. package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
  39. package/cjs/components/step-indicator/StepIndicatorContext.js +66 -59
  40. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  41. package/cjs/components/step-indicator/StepIndicatorItem.js +15 -23
  42. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  43. package/cjs/components/step-indicator/StepIndicatorModal.js +5 -5
  44. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  45. package/cjs/components/step-indicator/StepIndicatorSidebar.js +10 -9
  46. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  47. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  48. package/cjs/components/table/Table.d.ts +1 -1
  49. package/cjs/components/table/Table.js.map +1 -1
  50. package/cjs/components/table/TableContext.d.ts +12 -2
  51. package/cjs/components/table/TableContext.js +1 -3
  52. package/cjs/components/table/TableContext.js.map +1 -1
  53. package/cjs/components/table/TableDocs.d.ts +7 -0
  54. package/cjs/components/table/TableDocs.js +202 -0
  55. package/cjs/components/table/TableDocs.js.map +1 -0
  56. package/cjs/components/table/TableTd.d.ts +3 -3
  57. package/cjs/components/table/TableTd.js +2 -2
  58. package/cjs/components/table/TableTd.js.map +1 -1
  59. package/cjs/components/table/TableTr.d.ts +9 -5
  60. package/cjs/components/table/TableTr.js +4 -4
  61. package/cjs/components/table/TableTr.js.map +1 -1
  62. package/cjs/components/table/table-accordion/TableAccordionContent.d.ts +15 -0
  63. package/cjs/components/table/{TableAccordionTd.js → table-accordion/TableAccordionContent.js} +52 -17
  64. package/cjs/components/table/table-accordion/TableAccordionContent.js.map +1 -0
  65. package/cjs/components/table/table-accordion/TableAccordionContext.d.ts +16 -0
  66. package/cjs/components/table/table-accordion/TableAccordionContext.js +11 -0
  67. package/cjs/components/table/table-accordion/TableAccordionContext.js.map +1 -0
  68. package/cjs/components/table/table-accordion/TableAccordionHead.d.ts +8 -0
  69. package/cjs/components/table/{TableAccordion.js → table-accordion/TableAccordionHead.js} +17 -18
  70. package/cjs/components/table/table-accordion/TableAccordionHead.js.map +1 -0
  71. package/{es/components/table → cjs/components/table/table-accordion}/useTableAnimationHandler.d.ts +7 -3
  72. package/cjs/components/table/{useTableAnimationHandler.js → table-accordion/useTableAnimationHandler.js} +4 -4
  73. package/cjs/components/table/table-accordion/useTableAnimationHandler.js.map +1 -0
  74. package/cjs/components/tabs/Tabs.d.ts +0 -3
  75. package/cjs/components/tabs/TabsDocs.d.ts +1 -0
  76. package/cjs/components/tabs/TabsDocs.js +32 -4
  77. package/cjs/components/tabs/TabsDocs.js.map +1 -1
  78. package/cjs/components/toggle-button/ToggleButtonGroup.js +2 -2
  79. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  80. package/cjs/components/toggle-button/style/dnb-toggle-button.css +15 -6
  81. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  82. package/cjs/components/toggle-button/style/dnb-toggle-button.scss +16 -9
  83. package/cjs/extensions/forms/DataContext/Provider/Provider.js +1 -1
  84. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  85. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +2 -2
  86. package/cjs/extensions/forms/Form/Visibility/Visibility.js +20 -72
  87. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  88. package/cjs/extensions/forms/Form/Visibility/useVisibility.d.ts +5 -0
  89. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +101 -0
  90. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -0
  91. package/cjs/extensions/forms/Value/Date/Date.d.ts +5 -1
  92. package/cjs/extensions/forms/Value/Date/Date.js +26 -3
  93. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  94. package/cjs/extensions/forms/Value/Date/DateDocs.d.ts +2 -0
  95. package/cjs/extensions/forms/Value/Date/DateDocs.js +20 -0
  96. package/cjs/extensions/forms/Value/Date/DateDocs.js.map +1 -0
  97. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +15 -9
  98. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  99. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  100. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  101. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +5 -0
  102. package/cjs/extensions/forms/Wizard/Step/Step.js +6 -2
  103. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  104. package/cjs/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  105. package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  106. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.js +1 -1
  107. package/cjs/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -1
  108. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.js +1 -1
  109. package/cjs/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -1
  110. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.js +1 -1
  111. package/cjs/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -1
  112. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.js +1 -1
  113. package/cjs/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -1
  114. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +7 -9
  115. package/cjs/extensions/forms/constants/locales/en-GB.js +7 -9
  116. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  117. package/cjs/extensions/forms/constants/locales/en-US.d.ts +7 -9
  118. package/cjs/extensions/forms/constants/locales/index.d.ts +14 -18
  119. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +7 -9
  120. package/cjs/extensions/forms/constants/locales/nb-NO.js +7 -9
  121. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  122. package/cjs/shared/Context.d.ts +4 -0
  123. package/cjs/shared/Context.js.map +1 -1
  124. package/cjs/shared/Eufemia.d.ts +1 -1
  125. package/cjs/shared/Eufemia.js +2 -2
  126. package/cjs/shared/Eufemia.js.map +1 -1
  127. package/cjs/shared/component-helper.js +1 -1
  128. package/cjs/shared/component-helper.js.map +1 -1
  129. package/cjs/style/core/scopes.scss +1 -1
  130. package/cjs/style/dnb-ui-basis.css +1 -1
  131. package/cjs/style/dnb-ui-basis.min.css +1 -1
  132. package/cjs/style/dnb-ui-body.css +1 -1
  133. package/cjs/style/dnb-ui-body.min.css +1 -1
  134. package/cjs/style/dnb-ui-components.css +15 -6
  135. package/cjs/style/dnb-ui-components.min.css +1 -1
  136. package/cjs/style/dnb-ui-core.css +1 -1
  137. package/cjs/style/dnb-ui-core.min.css +1 -1
  138. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +15 -6
  139. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  140. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +15 -6
  141. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  142. package/cjs/style/themes/theme-ui/ui-theme-components.css +15 -6
  143. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  144. package/components/accordion/Accordion.d.ts +15 -3
  145. package/components/accordion/Accordion.js +7 -0
  146. package/components/accordion/Accordion.js.map +1 -1
  147. package/components/accordion/AccordionDocs.d.ts +4 -0
  148. package/components/accordion/AccordionDocs.js +152 -0
  149. package/components/accordion/AccordionDocs.js.map +1 -0
  150. package/components/accordion/AccordionGroup.js +14 -4
  151. package/components/accordion/AccordionGroup.js.map +1 -1
  152. package/components/accordion/AccordionHeader.d.ts +5 -5
  153. package/components/accordion/AccordionHeader.js +3 -2
  154. package/components/accordion/AccordionHeader.js.map +1 -1
  155. package/components/accordion/AccordionProviderContext.d.ts +2 -0
  156. package/components/accordion/AccordionProviderContext.js.map +1 -1
  157. package/components/anchor/Anchor.d.ts +20 -0
  158. package/components/anchor/Anchor.js +13 -4
  159. package/components/anchor/Anchor.js.map +1 -1
  160. package/components/anchor/AnchorDocs.d.ts +3 -0
  161. package/components/anchor/AnchorDocs.js +74 -0
  162. package/components/anchor/AnchorDocs.js.map +1 -0
  163. package/components/autocomplete/Autocomplete.js +19 -5
  164. package/components/autocomplete/Autocomplete.js.map +1 -1
  165. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  166. package/components/height-animation/HeightAnimationInstance.d.ts +3 -3
  167. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  168. package/components/height-animation/useHeightAnimation.d.ts +5 -1
  169. package/components/height-animation/useHeightAnimation.js.map +1 -1
  170. package/components/icon/Icon.d.ts +493 -61
  171. package/components/icon/Icon.js +89 -127
  172. package/components/icon/Icon.js.map +1 -1
  173. package/components/icon/IconHelpers.d.ts +2 -1
  174. package/components/icon/IconHelpers.js +1 -1
  175. package/components/icon/IconHelpers.js.map +1 -1
  176. package/components/icon/IconPrimary.d.ts +2 -2
  177. package/components/icon/IconPrimary.js.map +1 -1
  178. package/components/icon-primary/IconPrimary.d.ts +8 -11
  179. package/components/icon-primary/IconPrimary.js +25 -31
  180. package/components/icon-primary/IconPrimary.js.map +1 -1
  181. package/components/step-indicator/StepIndicatorContext.js +67 -60
  182. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  183. package/components/step-indicator/StepIndicatorItem.js +16 -24
  184. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  185. package/components/step-indicator/StepIndicatorModal.js +6 -6
  186. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  187. package/components/step-indicator/StepIndicatorSidebar.js +11 -10
  188. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  189. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  190. package/components/table/Table.d.ts +1 -1
  191. package/components/table/Table.js.map +1 -1
  192. package/components/table/TableContext.d.ts +12 -2
  193. package/components/table/TableContext.js +0 -1
  194. package/components/table/TableContext.js.map +1 -1
  195. package/components/table/TableDocs.d.ts +7 -0
  196. package/components/table/TableDocs.js +190 -0
  197. package/components/table/TableDocs.js.map +1 -0
  198. package/components/table/TableTd.d.ts +3 -3
  199. package/components/table/TableTd.js +2 -2
  200. package/components/table/TableTd.js.map +1 -1
  201. package/components/table/TableTr.d.ts +9 -5
  202. package/components/table/TableTr.js +4 -4
  203. package/components/table/TableTr.js.map +1 -1
  204. package/components/table/table-accordion/TableAccordionContent.d.ts +15 -0
  205. package/components/table/table-accordion/TableAccordionContent.js +95 -0
  206. package/components/table/table-accordion/TableAccordionContent.js.map +1 -0
  207. package/components/table/table-accordion/TableAccordionContext.d.ts +16 -0
  208. package/components/table/table-accordion/TableAccordionContext.js +3 -0
  209. package/components/table/table-accordion/TableAccordionContext.js.map +1 -0
  210. package/components/table/table-accordion/TableAccordionHead.d.ts +8 -0
  211. package/components/table/{TableAccordion.js → table-accordion/TableAccordionHead.js} +14 -15
  212. package/components/table/table-accordion/TableAccordionHead.js.map +1 -0
  213. package/{cjs/components/table → components/table/table-accordion}/useTableAnimationHandler.d.ts +7 -3
  214. package/components/table/{useTableAnimationHandler.js → table-accordion/useTableAnimationHandler.js} +3 -3
  215. package/components/table/table-accordion/useTableAnimationHandler.js.map +1 -0
  216. package/components/tabs/Tabs.d.ts +0 -3
  217. package/components/tabs/TabsDocs.d.ts +1 -0
  218. package/components/tabs/TabsDocs.js +30 -3
  219. package/components/tabs/TabsDocs.js.map +1 -1
  220. package/components/toggle-button/ToggleButtonGroup.js +2 -2
  221. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  222. package/components/toggle-button/style/dnb-toggle-button.css +15 -6
  223. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  224. package/components/toggle-button/style/dnb-toggle-button.scss +16 -9
  225. package/es/components/accordion/Accordion.d.ts +15 -3
  226. package/es/components/accordion/Accordion.js +7 -0
  227. package/es/components/accordion/Accordion.js.map +1 -1
  228. package/es/components/accordion/AccordionDocs.d.ts +4 -0
  229. package/es/components/accordion/AccordionDocs.js +152 -0
  230. package/es/components/accordion/AccordionDocs.js.map +1 -0
  231. package/es/components/accordion/AccordionGroup.js +14 -4
  232. package/es/components/accordion/AccordionGroup.js.map +1 -1
  233. package/es/components/accordion/AccordionHeader.d.ts +5 -5
  234. package/es/components/accordion/AccordionHeader.js +3 -2
  235. package/es/components/accordion/AccordionHeader.js.map +1 -1
  236. package/es/components/accordion/AccordionProviderContext.d.ts +2 -0
  237. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  238. package/es/components/anchor/Anchor.d.ts +20 -0
  239. package/es/components/anchor/Anchor.js +13 -4
  240. package/es/components/anchor/Anchor.js.map +1 -1
  241. package/es/components/anchor/AnchorDocs.d.ts +3 -0
  242. package/es/components/anchor/AnchorDocs.js +74 -0
  243. package/es/components/anchor/AnchorDocs.js.map +1 -0
  244. package/es/components/autocomplete/Autocomplete.js +19 -5
  245. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  246. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  247. package/es/components/height-animation/HeightAnimationInstance.d.ts +3 -3
  248. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  249. package/es/components/height-animation/useHeightAnimation.d.ts +5 -1
  250. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  251. package/es/components/icon/Icon.d.ts +493 -61
  252. package/es/components/icon/Icon.js +82 -116
  253. package/es/components/icon/Icon.js.map +1 -1
  254. package/es/components/icon/IconHelpers.d.ts +2 -1
  255. package/es/components/icon/IconHelpers.js +1 -1
  256. package/es/components/icon/IconHelpers.js.map +1 -1
  257. package/es/components/icon/IconPrimary.d.ts +2 -2
  258. package/es/components/icon/IconPrimary.js.map +1 -1
  259. package/es/components/icon-primary/IconPrimary.d.ts +8 -11
  260. package/es/components/icon-primary/IconPrimary.js +25 -31
  261. package/es/components/icon-primary/IconPrimary.js.map +1 -1
  262. package/es/components/step-indicator/StepIndicatorContext.js +67 -60
  263. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  264. package/es/components/step-indicator/StepIndicatorItem.js +17 -25
  265. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  266. package/es/components/step-indicator/StepIndicatorModal.js +6 -6
  267. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  268. package/es/components/step-indicator/StepIndicatorSidebar.js +11 -10
  269. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  270. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  271. package/es/components/table/Table.d.ts +1 -1
  272. package/es/components/table/Table.js.map +1 -1
  273. package/es/components/table/TableContext.d.ts +12 -2
  274. package/es/components/table/TableContext.js +0 -1
  275. package/es/components/table/TableContext.js.map +1 -1
  276. package/es/components/table/TableDocs.d.ts +7 -0
  277. package/es/components/table/TableDocs.js +190 -0
  278. package/es/components/table/TableDocs.js.map +1 -0
  279. package/es/components/table/TableTd.d.ts +3 -3
  280. package/es/components/table/TableTd.js +2 -2
  281. package/es/components/table/TableTd.js.map +1 -1
  282. package/es/components/table/TableTr.d.ts +9 -5
  283. package/es/components/table/TableTr.js +4 -4
  284. package/es/components/table/TableTr.js.map +1 -1
  285. package/es/components/table/table-accordion/TableAccordionContent.d.ts +15 -0
  286. package/es/components/table/table-accordion/TableAccordionContent.js +92 -0
  287. package/es/components/table/table-accordion/TableAccordionContent.js.map +1 -0
  288. package/es/components/table/table-accordion/TableAccordionContext.d.ts +16 -0
  289. package/es/components/table/table-accordion/TableAccordionContext.js +3 -0
  290. package/es/components/table/table-accordion/TableAccordionContext.js.map +1 -0
  291. package/es/components/table/table-accordion/TableAccordionHead.d.ts +8 -0
  292. package/es/components/table/{TableAccordion.js → table-accordion/TableAccordionHead.js} +14 -15
  293. package/es/components/table/table-accordion/TableAccordionHead.js.map +1 -0
  294. package/{components/table → es/components/table/table-accordion}/useTableAnimationHandler.d.ts +7 -3
  295. package/es/components/table/{useTableAnimationHandler.js → table-accordion/useTableAnimationHandler.js} +3 -3
  296. package/es/components/table/table-accordion/useTableAnimationHandler.js.map +1 -0
  297. package/es/components/tabs/Tabs.d.ts +0 -3
  298. package/es/components/tabs/TabsDocs.d.ts +1 -0
  299. package/es/components/tabs/TabsDocs.js +30 -3
  300. package/es/components/tabs/TabsDocs.js.map +1 -1
  301. package/es/components/toggle-button/ToggleButtonGroup.js +2 -2
  302. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  303. package/es/components/toggle-button/style/dnb-toggle-button.css +15 -6
  304. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  305. package/es/components/toggle-button/style/dnb-toggle-button.scss +16 -9
  306. package/es/extensions/forms/DataContext/Provider/Provider.js +1 -1
  307. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  308. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +2 -2
  309. package/es/extensions/forms/Form/Visibility/Visibility.js +20 -71
  310. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  311. package/es/extensions/forms/Form/Visibility/useVisibility.d.ts +5 -0
  312. package/es/extensions/forms/Form/Visibility/useVisibility.js +94 -0
  313. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -0
  314. package/es/extensions/forms/Value/Date/Date.d.ts +5 -1
  315. package/es/extensions/forms/Value/Date/Date.js +25 -3
  316. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  317. package/es/extensions/forms/Value/Date/DateDocs.d.ts +2 -0
  318. package/es/extensions/forms/Value/Date/DateDocs.js +13 -0
  319. package/es/extensions/forms/Value/Date/DateDocs.js.map +1 -0
  320. package/es/extensions/forms/Wizard/Container/WizardContainer.js +15 -9
  321. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  322. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  323. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  324. package/es/extensions/forms/Wizard/Step/Step.d.ts +5 -0
  325. package/es/extensions/forms/Wizard/Step/Step.js +6 -2
  326. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  327. package/es/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  328. package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  329. package/es/extensions/forms/Wizard/hooks/useNextRouter.js +1 -1
  330. package/es/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -1
  331. package/es/extensions/forms/Wizard/hooks/useQueryLocator.js +1 -1
  332. package/es/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -1
  333. package/es/extensions/forms/Wizard/hooks/useReachRouter.js +1 -1
  334. package/es/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -1
  335. package/es/extensions/forms/Wizard/hooks/useReactRouter.js +1 -1
  336. package/es/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -1
  337. package/es/extensions/forms/constants/locales/en-GB.d.ts +7 -9
  338. package/es/extensions/forms/constants/locales/en-GB.js +7 -9
  339. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  340. package/es/extensions/forms/constants/locales/en-US.d.ts +7 -9
  341. package/es/extensions/forms/constants/locales/index.d.ts +14 -18
  342. package/es/extensions/forms/constants/locales/nb-NO.d.ts +7 -9
  343. package/es/extensions/forms/constants/locales/nb-NO.js +7 -9
  344. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  345. package/es/shared/Context.d.ts +4 -0
  346. package/es/shared/Context.js.map +1 -1
  347. package/es/shared/Eufemia.d.ts +1 -1
  348. package/es/shared/Eufemia.js +2 -2
  349. package/es/shared/Eufemia.js.map +1 -1
  350. package/es/shared/component-helper.js +1 -1
  351. package/es/shared/component-helper.js.map +1 -1
  352. package/es/style/core/scopes.scss +1 -1
  353. package/es/style/dnb-ui-basis.css +1 -1
  354. package/es/style/dnb-ui-basis.min.css +1 -1
  355. package/es/style/dnb-ui-body.css +1 -1
  356. package/es/style/dnb-ui-body.min.css +1 -1
  357. package/es/style/dnb-ui-components.css +15 -6
  358. package/es/style/dnb-ui-components.min.css +1 -1
  359. package/es/style/dnb-ui-core.css +1 -1
  360. package/es/style/dnb-ui-core.min.css +1 -1
  361. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +15 -6
  362. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  363. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +15 -6
  364. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  365. package/es/style/themes/theme-ui/ui-theme-components.css +15 -6
  366. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  367. package/esm/dnb-ui-basis.min.mjs +1 -1
  368. package/esm/dnb-ui-components.min.mjs +1 -1
  369. package/esm/dnb-ui-elements.min.mjs +1 -1
  370. package/esm/dnb-ui-extensions.min.mjs +5 -5
  371. package/esm/dnb-ui-lib.min.mjs +1 -1
  372. package/extensions/forms/DataContext/Provider/Provider.js +1 -1
  373. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  374. package/extensions/forms/Form/Visibility/Visibility.d.ts +2 -2
  375. package/extensions/forms/Form/Visibility/Visibility.js +20 -71
  376. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  377. package/extensions/forms/Form/Visibility/useVisibility.d.ts +5 -0
  378. package/extensions/forms/Form/Visibility/useVisibility.js +95 -0
  379. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -0
  380. package/extensions/forms/Value/Date/Date.d.ts +5 -1
  381. package/extensions/forms/Value/Date/Date.js +25 -3
  382. package/extensions/forms/Value/Date/Date.js.map +1 -1
  383. package/extensions/forms/Value/Date/DateDocs.d.ts +2 -0
  384. package/extensions/forms/Value/Date/DateDocs.js +13 -0
  385. package/extensions/forms/Value/Date/DateDocs.js.map +1 -0
  386. package/extensions/forms/Wizard/Container/WizardContainer.js +15 -9
  387. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  388. package/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  389. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  390. package/extensions/forms/Wizard/Step/Step.d.ts +5 -0
  391. package/extensions/forms/Wizard/Step/Step.js +6 -2
  392. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  393. package/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  394. package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  395. package/extensions/forms/Wizard/hooks/useNextRouter.js +1 -1
  396. package/extensions/forms/Wizard/hooks/useNextRouter.js.map +1 -1
  397. package/extensions/forms/Wizard/hooks/useQueryLocator.js +1 -1
  398. package/extensions/forms/Wizard/hooks/useQueryLocator.js.map +1 -1
  399. package/extensions/forms/Wizard/hooks/useReachRouter.js +1 -1
  400. package/extensions/forms/Wizard/hooks/useReachRouter.js.map +1 -1
  401. package/extensions/forms/Wizard/hooks/useReactRouter.js +1 -1
  402. package/extensions/forms/Wizard/hooks/useReactRouter.js.map +1 -1
  403. package/extensions/forms/constants/locales/en-GB.d.ts +7 -9
  404. package/extensions/forms/constants/locales/en-GB.js +7 -9
  405. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  406. package/extensions/forms/constants/locales/en-US.d.ts +7 -9
  407. package/extensions/forms/constants/locales/index.d.ts +14 -18
  408. package/extensions/forms/constants/locales/nb-NO.d.ts +7 -9
  409. package/extensions/forms/constants/locales/nb-NO.js +7 -9
  410. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  411. package/package.json +1 -1
  412. package/shared/Context.d.ts +4 -0
  413. package/shared/Context.js.map +1 -1
  414. package/shared/Eufemia.d.ts +1 -1
  415. package/shared/Eufemia.js +2 -2
  416. package/shared/Eufemia.js.map +1 -1
  417. package/shared/component-helper.js +1 -1
  418. package/shared/component-helper.js.map +1 -1
  419. package/style/core/scopes.scss +1 -1
  420. package/style/dnb-ui-basis.css +1 -1
  421. package/style/dnb-ui-basis.min.css +1 -1
  422. package/style/dnb-ui-body.css +1 -1
  423. package/style/dnb-ui-body.min.css +1 -1
  424. package/style/dnb-ui-components.css +15 -6
  425. package/style/dnb-ui-components.min.css +1 -1
  426. package/style/dnb-ui-core.css +1 -1
  427. package/style/dnb-ui-core.min.css +1 -1
  428. package/style/themes/theme-eiendom/eiendom-theme-components.css +15 -6
  429. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  430. package/style/themes/theme-sbanken/sbanken-theme-components.css +15 -6
  431. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  432. package/style/themes/theme-ui/ui-theme-components.css +15 -6
  433. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  434. package/umd/dnb-ui-basis.min.js +1 -1
  435. package/umd/dnb-ui-components.min.js +1 -1
  436. package/umd/dnb-ui-elements.min.js +1 -1
  437. package/umd/dnb-ui-extensions.min.js +5 -5
  438. package/umd/dnb-ui-lib.min.js +1 -1
  439. package/cjs/components/table/TableAccordion.d.ts +0 -8
  440. package/cjs/components/table/TableAccordion.js.map +0 -1
  441. package/cjs/components/table/TableAccordionTd.d.ts +0 -9
  442. package/cjs/components/table/TableAccordionTd.js.map +0 -1
  443. package/cjs/components/table/TableAccordionTr.d.ts +0 -13
  444. package/cjs/components/table/TableAccordionTr.js +0 -61
  445. package/cjs/components/table/TableAccordionTr.js.map +0 -1
  446. package/cjs/components/table/useTableAnimationHandler.js.map +0 -1
  447. package/components/table/TableAccordion.d.ts +0 -8
  448. package/components/table/TableAccordion.js.map +0 -1
  449. package/components/table/TableAccordionTd.d.ts +0 -9
  450. package/components/table/TableAccordionTd.js +0 -61
  451. package/components/table/TableAccordionTd.js.map +0 -1
  452. package/components/table/TableAccordionTr.d.ts +0 -13
  453. package/components/table/TableAccordionTr.js +0 -51
  454. package/components/table/TableAccordionTr.js.map +0 -1
  455. package/components/table/useTableAnimationHandler.js.map +0 -1
  456. package/es/components/table/TableAccordion.d.ts +0 -8
  457. package/es/components/table/TableAccordion.js.map +0 -1
  458. package/es/components/table/TableAccordionTd.d.ts +0 -9
  459. package/es/components/table/TableAccordionTd.js +0 -61
  460. package/es/components/table/TableAccordionTd.js.map +0 -1
  461. package/es/components/table/TableAccordionTr.d.ts +0 -13
  462. package/es/components/table/TableAccordionTr.js +0 -51
  463. package/es/components/table/TableAccordionTr.js.map +0 -1
  464. package/es/components/table/useTableAnimationHandler.js.map +0 -1
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = useVisibility;
8
+ var _react = require("react");
9
+ var _jsonPointer = _interopRequireDefault(require("json-pointer"));
10
+ var _Context = _interopRequireDefault(require("../../DataContext/Context"));
11
+ var _SectionContext = _interopRequireDefault(require("../Section/SectionContext"));
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ function useVisibility(props) {
14
+ const {
15
+ filterDataHandler,
16
+ data: originalData
17
+ } = (0, _react.useContext)(_Context.default);
18
+ const sectionContext = (0, _react.useContext)(_SectionContext.default);
19
+ const sectionPath = sectionContext === null || sectionContext === void 0 ? void 0 : sectionContext.path;
20
+ const composePath = (0, _react.useCallback)(path => {
21
+ return `${sectionPath && sectionPath !== '/' ? sectionPath : ''}${path}`;
22
+ }, [sectionPath]);
23
+ const propsRef = (0, _react.useRef)(props);
24
+ propsRef.current = props;
25
+ const check = (0, _react.useCallback)(function () {
26
+ let {
27
+ visible,
28
+ visibleWhen,
29
+ visibleWhenNot,
30
+ pathDefined,
31
+ pathUndefined,
32
+ pathTruthy,
33
+ pathFalsy,
34
+ pathTrue,
35
+ pathFalse,
36
+ pathValue,
37
+ whenValue,
38
+ inferData,
39
+ filterData
40
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : propsRef.current;
41
+ if (visible === false) {
42
+ return false;
43
+ }
44
+ const data = filterData && (filterDataHandler === null || filterDataHandler === void 0 ? void 0 : filterDataHandler(originalData, filterData)) || originalData;
45
+ if (visibleWhen || visibleWhenNot) {
46
+ if (visibleWhenNot) {
47
+ visibleWhen = visibleWhenNot;
48
+ }
49
+ const hasPath = _jsonPointer.default.has(data, composePath(visibleWhen.path));
50
+ if (hasPath) {
51
+ var _visibleWhen, _visibleWhen2;
52
+ const value = _jsonPointer.default.get(data, composePath(visibleWhen.path));
53
+ const withValue = (_visibleWhen = visibleWhen) === null || _visibleWhen === void 0 ? void 0 : _visibleWhen['withValue'];
54
+ const result = withValue && (withValue === null || withValue === void 0 ? void 0 : withValue(value)) === false || Object.prototype.hasOwnProperty.call(visibleWhen, 'hasValue') && ((_visibleWhen2 = visibleWhen) === null || _visibleWhen2 === void 0 ? void 0 : _visibleWhen2['hasValue']) !== value;
55
+ if (visibleWhenNot) {
56
+ if (!result) {
57
+ return false;
58
+ }
59
+ } else if (result) {
60
+ return false;
61
+ }
62
+ } else {
63
+ return false;
64
+ }
65
+ }
66
+ if (pathDefined && !_jsonPointer.default.has(data, composePath(pathDefined))) {
67
+ return false;
68
+ }
69
+ if (pathUndefined && _jsonPointer.default.has(data, composePath(pathUndefined))) {
70
+ return false;
71
+ }
72
+ const getValue = path => {
73
+ if (_jsonPointer.default.has(data, path)) {
74
+ return _jsonPointer.default.get(data, path);
75
+ }
76
+ };
77
+ if (pathTrue && getValue(composePath(pathTrue)) !== true) {
78
+ return false;
79
+ }
80
+ if (pathFalse && getValue(composePath(pathFalse)) !== false) {
81
+ return false;
82
+ }
83
+ if (pathTruthy && Boolean(getValue(composePath(pathTruthy))) === false) {
84
+ return false;
85
+ }
86
+ if (pathFalsy && Boolean(getValue(composePath(pathFalsy))) === true) {
87
+ return false;
88
+ }
89
+ if (inferData && !inferData(data)) {
90
+ return false;
91
+ }
92
+ if (pathValue && getValue(composePath(pathValue)) !== whenValue) {
93
+ return false;
94
+ }
95
+ return true;
96
+ }, [composePath, filterDataHandler, originalData]);
97
+ return {
98
+ check
99
+ };
100
+ }
101
+ //# sourceMappingURL=useVisibility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVisibility.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_Context","_SectionContext","obj","__esModule","default","useVisibility","props","filterDataHandler","data","originalData","useContext","DataContext","sectionContext","SectionContext","sectionPath","path","composePath","useCallback","propsRef","useRef","current","check","visible","visibleWhen","visibleWhenNot","pathDefined","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","pathValue","whenValue","inferData","filterData","arguments","length","undefined","hasPath","pointer","has","_visibleWhen","_visibleWhen2","value","get","withValue","result","Object","prototype","hasOwnProperty","call","getValue","Boolean"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/useVisibility.tsx"],"sourcesContent":["import { useCallback, useContext, useRef } from 'react'\nimport pointer from 'json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport SectionContext from '../Section/SectionContext'\nimport { Path } from '../../types'\nimport { Props } from './Visibility'\n\nexport type { Props }\n\nexport default function useVisibility(props?: Partial<Props>) {\n const { filterDataHandler, data: originalData } = useContext(DataContext)\n const sectionContext = useContext(SectionContext)\n\n const sectionPath = sectionContext?.path\n const composePath = useCallback(\n (path: Path) => {\n return `${\n sectionPath && sectionPath !== '/' ? sectionPath : ''\n }${path}`\n },\n [sectionPath]\n )\n\n // Forward props to the \"check\" method with ref to avoid infinite loop\n const propsRef = useRef(props)\n propsRef.current = props\n\n const check = useCallback(\n (\n {\n visible,\n visibleWhen,\n visibleWhenNot,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n inferData,\n filterData,\n }: Partial<Props> = propsRef.current\n ) => {\n if (visible === false) {\n return false\n }\n\n const data =\n (filterData && filterDataHandler?.(originalData, filterData)) ||\n originalData\n\n if (visibleWhen || visibleWhenNot) {\n if (visibleWhenNot) {\n visibleWhen = visibleWhenNot\n }\n const hasPath = pointer.has(data, composePath(visibleWhen.path))\n if (hasPath) {\n const value = pointer.get(data, composePath(visibleWhen.path))\n\n const withValue = visibleWhen?.['withValue']\n const result =\n (withValue && withValue?.(value) === false) ||\n (Object.prototype.hasOwnProperty.call(\n visibleWhen,\n 'hasValue'\n ) &&\n visibleWhen?.['hasValue'] !== value)\n\n if (visibleWhenNot) {\n if (!result) {\n return false\n }\n } else if (result) {\n return false\n }\n } else {\n return false\n }\n }\n\n if (pathDefined && !pointer.has(data, composePath(pathDefined))) {\n return false\n }\n if (pathUndefined && pointer.has(data, composePath(pathUndefined))) {\n return false\n }\n\n const getValue = (path: Path) => {\n if (pointer.has(data, path)) {\n return pointer.get(data, path)\n }\n }\n\n if (pathTrue && getValue(composePath(pathTrue)) !== true) {\n return false\n }\n if (pathFalse && getValue(composePath(pathFalse)) !== false) {\n return false\n }\n if (\n pathTruthy &&\n Boolean(getValue(composePath(pathTruthy))) === false\n ) {\n return false\n }\n if (\n pathFalsy &&\n Boolean(getValue(composePath(pathFalsy))) === true\n ) {\n return false\n }\n if (inferData && !inferData(data)) {\n return false\n }\n\n // Deprecated can be removed in v11\n if (pathValue && getValue(composePath(pathValue)) !== whenValue) {\n return false\n }\n\n return true\n },\n [composePath, filterDataHandler, originalData]\n )\n\n return { check }\n}\n"],"mappings":"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"}
@@ -1,5 +1,9 @@
1
1
  import { Props as StringValueProps } from '../String';
2
- export type Props = StringValueProps;
2
+ import { AnyLocale } from '../../../../shared/Context';
3
+ export type Props = StringValueProps & {
4
+ variant?: 'long' | 'short';
5
+ locale?: AnyLocale;
6
+ };
3
7
  declare function DateComponent(props: Props): import("react/jsx-runtime").JSX.Element;
4
8
  declare namespace DateComponent {
5
9
  var _supportsSpacingProps: boolean;
@@ -1,23 +1,46 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = _interopRequireWildcard(require("react"));
8
9
  var _String = _interopRequireDefault(require("../String"));
9
10
  var _useTranslation = _interopRequireDefault(require("../../hooks/useTranslation"));
11
+ var _Context = _interopRequireDefault(require("../../../../shared/Context"));
10
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
11
15
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
12
16
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
17
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
14
18
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
15
19
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
16
20
  function DateComponent(props) {
17
- var _props$label;
21
+ var _props$locale, _props$variant, _props$label;
18
22
  const translations = (0, _useTranslation.default)().Date;
23
+ const {
24
+ locale: contextLocale
25
+ } = (0, _react.useContext)(_Context.default);
26
+ const locale = (_props$locale = props.locale) !== null && _props$locale !== void 0 ? _props$locale : contextLocale;
27
+ const variant = (_props$variant = props.variant) !== null && _props$variant !== void 0 ? _props$variant : 'long';
28
+ const toInput = (0, _react.useCallback)(value => {
29
+ if (!value) {
30
+ return undefined;
31
+ }
32
+ const date = new Date(value);
33
+ const options = {
34
+ day: 'numeric',
35
+ month: variant,
36
+ year: 'numeric'
37
+ };
38
+ const formattedDate = typeof Intl !== 'undefined' ? new Intl.DateTimeFormat(locale, options).format(date) : date.toLocaleString(locale, options);
39
+ return formattedDate;
40
+ }, [locale, variant]);
19
41
  const stringProps = _objectSpread(_objectSpread({}, props), {}, {
20
- label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : translations.label
42
+ label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : translations.label,
43
+ toInput
21
44
  });
22
45
  return _react.default.createElement(_String.default, stringProps);
23
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Date.js","names":["_react","_interopRequireDefault","require","_String","_useTranslation","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","DateComponent","props","_props$label","translations","useTranslation","Date","stringProps","label","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Value/Date/Date.tsx"],"sourcesContent":["import React from 'react'\nimport StringValue, { Props as StringValueProps } from '../String'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type Props = StringValueProps\n\nfunction DateComponent(props: Props) {\n const translations = useTranslation().Date\n\n const stringProps: Props = {\n ...props,\n label: props.label ?? translations.label,\n }\n return <StringValue {...stringProps} />\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Date.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_useTranslation","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","DateComponent","props","_props$locale","_props$variant","_props$label","translations","useTranslation","Date","locale","contextLocale","useContext","SharedContext","variant","toInput","useCallback","date","options","day","month","year","formattedDate","Intl","DateTimeFormat","format","toLocaleString","stringProps","label","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Value/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport StringValue, { Props as StringValueProps } from '../String'\nimport useTranslation from '../../hooks/useTranslation'\nimport SharedContext, { AnyLocale } from '../../../../shared/Context'\n\nexport type Props = StringValueProps & {\n variant?: 'long' | 'short'\n locale?: AnyLocale\n}\n\nfunction DateComponent(props: Props) {\n const translations = useTranslation().Date\n const { locale: contextLocale } = useContext(SharedContext)\n const locale = props.locale ?? contextLocale\n const variant = props.variant ?? 'long'\n\n const toInput = useCallback(\n (value: string) => {\n if (!value) {\n return undefined\n }\n\n const date = new Date(value)\n const options = {\n day: 'numeric',\n month: variant,\n year: 'numeric',\n } as const\n\n const formattedDate =\n typeof Intl !== 'undefined'\n ? new Intl.DateTimeFormat(locale, options).format(date)\n : date.toLocaleString(locale, options)\n\n return formattedDate\n },\n [locale, variant]\n )\n\n const stringProps: Props = {\n ...props,\n label: props.label ?? translations.label,\n toInput,\n }\n return <StringValue {...stringProps} />\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,eAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,QAAA,GAAAF,sBAAA,CAAAF,OAAA;AAAqE,SAAAE,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAV,wBAAAM,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAZ,MAAA,CAAAY,IAAA,CAAAF,MAAA,OAAAV,MAAA,CAAAa,qBAAA,QAAAC,OAAA,GAAAd,MAAA,CAAAa,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAhB,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAC,KAAA,CAAAP,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAb,OAAA,CAAAT,MAAA,CAAAyB,MAAA,OAAAC,OAAA,WAAAvB,GAAA,IAAAwB,eAAA,CAAAN,MAAA,EAAAlB,GAAA,EAAAsB,MAAA,CAAAtB,GAAA,SAAAH,MAAA,CAAA4B,yBAAA,GAAA5B,MAAA,CAAA6B,gBAAA,CAAAR,MAAA,EAAArB,MAAA,CAAA4B,yBAAA,CAAAH,MAAA,KAAAhB,OAAA,CAAAT,MAAA,CAAAyB,MAAA,GAAAC,OAAA,WAAAvB,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAoB,MAAA,EAAAlB,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAuB,MAAA,EAAAtB,GAAA,iBAAAkB,MAAA;AAAA,SAAAM,gBAAAxC,GAAA,EAAAgB,GAAA,EAAA2B,KAAA,IAAA3B,GAAA,GAAA4B,cAAA,CAAA5B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA2B,KAAA,EAAAA,KAAA,EAAAb,UAAA,QAAAe,YAAA,QAAAC,QAAA,oBAAA9C,GAAA,CAAAgB,GAAA,IAAA2B,KAAA,WAAA3C,GAAA;AAAA,SAAA4C,eAAAG,GAAA,QAAA/B,GAAA,GAAAgC,YAAA,CAAAD,GAAA,2BAAA/B,GAAA,gBAAAA,GAAA,GAAAiC,MAAA,CAAAjC,GAAA;AAAA,SAAAgC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAjC,IAAA,CAAA+B,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAOrE,SAASS,aAAaA,CAACC,KAAY,EAAE;EAAA,IAAAC,aAAA,EAAAC,cAAA,EAAAC,YAAA;EACnC,MAAMC,YAAY,GAAG,IAAAC,uBAAc,EAAC,CAAC,CAACC,IAAI;EAC1C,MAAM;IAAEC,MAAM,EAAEC;EAAc,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAC3D,MAAMH,MAAM,IAAAN,aAAA,GAAGD,KAAK,CAACO,MAAM,cAAAN,aAAA,cAAAA,aAAA,GAAIO,aAAa;EAC5C,MAAMG,OAAO,IAAAT,cAAA,GAAGF,KAAK,CAACW,OAAO,cAAAT,cAAA,cAAAA,cAAA,GAAI,MAAM;EAEvC,MAAMU,OAAO,GAAG,IAAAC,kBAAW,EACxB9B,KAAa,IAAK;IACjB,IAAI,CAACA,KAAK,EAAE;MACV,OAAOY,SAAS;IAClB;IAEA,MAAMmB,IAAI,GAAG,IAAIR,IAAI,CAACvB,KAAK,CAAC;IAC5B,MAAMgC,OAAO,GAAG;MACdC,GAAG,EAAE,SAAS;MACdC,KAAK,EAAEN,OAAO;MACdO,IAAI,EAAE;IACR,CAAU;IAEV,MAAMC,aAAa,GACjB,OAAOC,IAAI,KAAK,WAAW,GACvB,IAAIA,IAAI,CAACC,cAAc,CAACd,MAAM,EAAEQ,OAAO,CAAC,CAACO,MAAM,CAACR,IAAI,CAAC,GACrDA,IAAI,CAACS,cAAc,CAAChB,MAAM,EAAEQ,OAAO,CAAC;IAE1C,OAAOI,aAAa;EACtB,CAAC,EACD,CAACZ,MAAM,EAAEI,OAAO,CAClB,CAAC;EAED,MAAMa,WAAkB,GAAAnD,aAAA,CAAAA,aAAA,KACnB2B,KAAK;IACRyB,KAAK,GAAAtB,YAAA,GAAEH,KAAK,CAACyB,KAAK,cAAAtB,YAAA,cAAAA,YAAA,GAAIC,YAAY,CAACqB,KAAK;IACxCb;EAAO,EACR;EACD,OAAO/E,MAAA,CAAAS,OAAA,CAAAoF,aAAA,CAAC1F,OAAA,CAAAM,OAAW,EAAKkF,WAAc,CAAC;AACzC;AAEAzB,aAAa,CAAC4B,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GAC3B7B,aAAa;AAAA8B,OAAA,CAAAvF,OAAA,GAAAsF,QAAA"}
@@ -0,0 +1,2 @@
1
+ import { PropertiesTableProps } from '../../../../shared/types';
2
+ export declare const DateProperties: PropertiesTableProps;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DateProperties = void 0;
7
+ const DateProperties = {
8
+ variant: {
9
+ doc: 'Defines the variant of the date. Can be `long` or `short`. Defaults to `long`.',
10
+ type: 'string',
11
+ status: 'optional'
12
+ },
13
+ locale: {
14
+ doc: 'Defines the locale of the date. Defaults to `nb-NO`.',
15
+ type: 'string',
16
+ status: 'optional'
17
+ }
18
+ };
19
+ exports.DateProperties = DateProperties;
20
+ //# sourceMappingURL=DateDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateDocs.js","names":["DateProperties","variant","doc","type","status","locale","exports"],"sources":["../../../../../../src/extensions/forms/Value/Date/DateDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const DateProperties: PropertiesTableProps = {\n variant: {\n doc: 'Defines the variant of the date. Can be `long` or `short`. Defaults to `long`.',\n type: 'string',\n status: 'optional',\n },\n locale: {\n doc: 'Defines the locale of the date. Defaults to `nb-NO`.',\n type: 'string',\n status: 'optional',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,cAAoC,GAAG;EAClDC,OAAO,EAAE;IACPC,GAAG,EAAE,gFAAgF;IACrFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,MAAM,EAAE;IACNH,GAAG,EAAE,sDAAsD;IAC3DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV;AACF,CAAC;AAAAE,OAAA,CAAAN,cAAA,GAAAA,cAAA"}
@@ -18,6 +18,7 @@ var _Context = _interopRequireWildcard(require("../../DataContext/Context"));
18
18
  var _Handler = _interopRequireDefault(require("../../Form/Handler/Handler"));
19
19
  var _useSharedState = require("../../../../shared/helpers/useSharedState");
20
20
  var _useHandleLayoutEffect = _interopRequireDefault(require("./useHandleLayoutEffect"));
21
+ var _useVisibility = _interopRequireDefault(require("../../Form/Visibility/useVisibility"));
21
22
  const _excluded = ["className", "id", "mode", "initialActiveIndex", "omitScrollManagement", "omitFocusManagement", "onStepChange", "children", "noAnimation", "prerenderFieldProps", "variant", "sidebarId"];
22
23
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -150,6 +151,9 @@ function WizardContainer(props) {
150
151
  const titlesRef = (0, _react.useRef)({});
151
152
  const updateTitlesRef = (0, _react.useRef)();
152
153
  const prerenderFieldPropsRef = (0, _react.useRef)({});
154
+ const {
155
+ check
156
+ } = (0, _useVisibility.default)();
153
157
  const activeIndex = activeIndexRef.current;
154
158
  const providerValue = (0, _react.useMemo)(() => {
155
159
  return {
@@ -161,12 +165,13 @@ function WizardContainer(props) {
161
165
  activeIndexRef,
162
166
  prerenderFieldProps,
163
167
  prerenderFieldPropsRef,
168
+ check,
164
169
  setActiveIndex,
165
170
  handlePrevious,
166
171
  handleNext,
167
172
  setFormError
168
173
  };
169
- }, [activeIndex, handleNext, handlePrevious, id, prerenderFieldProps, setActiveIndex, setFormError]);
174
+ }, [activeIndex, handleNext, handlePrevious, id, prerenderFieldProps, check, setActiveIndex, setFormError]);
170
175
  useLayoutEffect(() => {
171
176
  if (id && hasContext) {
172
177
  var _sharedStateRef$curre4, _sharedStateRef$curre5;
@@ -237,6 +242,7 @@ function IterateOverSteps(_ref4) {
237
242
  children
238
243
  } = _ref4;
239
244
  const {
245
+ check,
240
246
  titlesRef,
241
247
  activeIndexRef,
242
248
  prerenderFieldProps,
@@ -244,7 +250,6 @@ function IterateOverSteps(_ref4) {
244
250
  } = (0, _react.useContext)(_WizardContext.default);
245
251
  titlesRef.current = {};
246
252
  let incrementIndex = -1;
247
- let decrementIndex = -1;
248
253
  const childrenArray = _react.default.Children.map(children, child => {
249
254
  if (_react.default.isValidElement(child)) {
250
255
  var _child, _child2;
@@ -260,12 +265,13 @@ function IterateOverSteps(_ref4) {
260
265
  if (child.props.active === false) {
261
266
  return null;
262
267
  }
263
- if (child.props.active === false) {
264
- decrementIndex--;
265
- } else {
266
- incrementIndex++;
268
+ if (child.props.activeWhen && !check({
269
+ visibleWhen: child.props.activeWhen
270
+ })) {
271
+ return null;
267
272
  }
268
- const index = child.props.active === false ? decrementIndex : incrementIndex;
273
+ incrementIndex++;
274
+ const index = incrementIndex;
269
275
  titlesRef.current[index] = child.props.title !== undefined ? (0, _componentHelper.convertJsxToString)(child.props.title) : 'Title missing';
270
276
  const key = `${index}-${activeIndexRef.current}`;
271
277
  const clone = props => _react.default.cloneElement(child, props);
@@ -284,9 +290,9 @@ function IterateOverSteps(_ref4) {
284
290
  }
285
291
  return child;
286
292
  });
287
- if (childrenArray.length === 0) {
293
+ if ((childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length) === 0) {
288
294
  activeIndexRef.current = 0;
289
- } else if (childrenArray.length < activeIndexRef.current + 1) {
295
+ } else if ((childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length) < activeIndexRef.current + 1) {
290
296
  activeIndexRef.current = childrenArray.length - 1;
291
297
  }
292
298
  return childrenArray;
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContainer.js","names":["_react","_interopRequireWildcard","require","_reactDom","_interopRequireDefault","_classnames","_components","_componentHelper","_isAsync","_useId","_Step","_WizardContext","_Context","_Handler","_useSharedState","_useHandleLayoutEffect","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","useLayoutEffect","window","React","useEffect","WizardContainer","props","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","variant","sidebarId","rest","hasContext","setFormState","handleSubmitCall","setShowAllErrors","showAllErrors","setSubmitState","useContext","DataContext","useId","forceUpdate","useReducer","activeIndexRef","useRef","errorOnStepRef","stepElementRef","sharedStateRef","current","useSharedState","callOnStepChange","useCallback","index","isAsync","setFocus","scrollToTop","isInteractionRef","useHandleLayoutEffect","handleLayoutEffect","handleStepChange","_ref","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","skipFieldValidation","enableAsyncBehaviour","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","result","Error","setActiveIndex","options","handlePrevious","handleNext","handleChange","_ref2","current_step","setFormError","error","titlesRef","updateTitlesRef","prerenderFieldPropsRef","activeIndex","providerValue","useMemo","_sharedStateRef$curre4","_sharedStateRef$curre5","extend","_updateTitlesRef$curr","warn","createElement","Provider","Space","classnames","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","_ref3","WizardContext","sidebar_id","StepIndicator","Sidebar","bottom","values","no_animation","on_change","_ref4","incrementIndex","decrementIndex","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","Step","_step","active","title","convertJsxToString","clone","cloneElement","document","_ref5","hasRenderedRef","WizardPortal","PrerenderFieldPropsProvider","hidden","Fn","_ref6","ReactDOM","createPortal","body","_ref7","setFieldProps","updateDataValue","defaultContextState","_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 ReactDOM from 'react-dom'\nimport classnames from 'classnames'\nimport { Space, StepIndicator } from '../../../../components'\nimport {\n convertJsxToString,\n warn,\n} from '../../../../shared/component-helper'\nimport { isAsync } from '../../../../shared/helpers/isAsync'\nimport useId from '../../../../shared/helpers/useId'\nimport Step, { Props as StepProps } from '../Step'\nimport WizardContext, {\n OnStepChange,\n SetActiveIndexOptions,\n StepIndex,\n WizardContextState,\n} from '../Context/WizardContext'\nimport DataContext, {\n defaultContextState,\n} from '../../DataContext/Context'\nimport Handler from '../../Form/Handler/Handler'\nimport {\n SharedStateReturn,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport useHandleLayoutEffect from './useHandleLayoutEffect'\nimport { ComponentProps } from '../../types'\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 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 * 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 variant = 'sidebar',\n sidebarId,\n ...rest\n } = props\n\n const {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n showAllErrors,\n setSubmitState,\n } = useContext(DataContext)\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const errorOnStepRef = useRef<Record<StepIndex, boolean>>({})\n const stepElementRef = useRef<HTMLElement>()\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 ? id + '-wizard' : undefined\n )\n\n // Store the current state of showAllErrors\n errorOnStepRef.current[activeIndexRef.current] = showAllErrors\n\n const callOnStepChange = useCallback(\n async (index: StepIndex, mode: 'previous' | 'next') => {\n if (isAsync(onStepChange)) {\n return await onStepChange(index, mode)\n }\n\n return onStepChange?.(index, mode)\n },\n [onStepChange]\n )\n\n const { setFocus, scrollToTop, isInteractionRef } =\n useHandleLayoutEffect({ activeIndexRef, stepElementRef })\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 ({\n index,\n skipErrorCheck,\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n mode,\n }: {\n index: StepIndex\n mode: 'previous' | 'next'\n } & SetActiveIndexOptions) => {\n handleSubmitCall({\n skipErrorCheck,\n skipFieldValidation: skipErrorCheck,\n enableAsyncBehaviour: isAsync(onStepChange),\n onSubmit: async () => {\n if (!skipStepChangeCallFromHook) {\n sharedStateRef.current?.data?.onStepChange?.(index, mode)\n }\n\n const result =\n skipStepChangeCall ||\n (skipStepChangeCallBeforeMounted && !isInteractionRef.current)\n ? undefined\n : await callOnStepChange(index, mode)\n\n // Hide async indicator\n setFormState('abort')\n\n if (!skipErrorCheck) {\n // Set the showAllErrors to the step we got to\n setShowAllErrors(errorOnStepRef.current[index])\n }\n\n if (!(result instanceof Error)) {\n handleLayoutEffect()\n\n activeIndexRef.current = index\n forceUpdate()\n }\n\n return result\n },\n })\n },\n [\n callOnStepChange,\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(current_step, { skipErrorCheck: true })\n },\n [setActiveIndex]\n )\n\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n const titlesRef = useRef({})\n const updateTitlesRef = useRef<() => void>()\n const prerenderFieldPropsRef = useRef<\n Record<string, () => React.ReactElement>\n >({})\n\n const activeIndex = activeIndexRef.current\n const providerValue = useMemo(() => {\n return {\n id,\n activeIndex,\n stepElementRef,\n titlesRef,\n updateTitlesRef,\n activeIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n setActiveIndex,\n handlePrevious,\n handleNext,\n setFormError,\n }\n }, [\n activeIndex,\n handleNext,\n handlePrevious,\n id,\n prerenderFieldProps,\n setActiveIndex,\n setFormError,\n ])\n\n // - Handle shared state\n useLayoutEffect(() => {\n if (id && hasContext) {\n sharedStateRef.current?.extend?.(providerValue)\n }\n }, [id, providerValue]) // eslint-disable-line react-hooks/exhaustive-deps\n\n useLayoutEffect(() => {\n updateTitlesRef.current?.()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [titlesRef.current])\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 {...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 && (\n <PrerenderFieldPropsOfOtherSteps\n prerenderFieldPropsRef={prerenderFieldPropsRef}\n />\n )}\n </WizardContext.Provider>\n )\n}\n\nfunction DisplaySteps({\n mode,\n variant,\n noAnimation,\n handleChange,\n sidebarId,\n}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { id, activeIndexRef, titlesRef, updateTitlesRef } =\n useContext(WizardContext) || {}\n updateTitlesRef.current = () => {\n forceUpdate()\n }\n\n const sidebar_id =\n variant === 'drawer' && !sidebarId ? undefined : sidebarId ?? id\n\n return (\n <aside className=\"dnb-forms-wizard-layout__indicator\">\n <StepIndicator.Sidebar sidebar_id={sidebar_id} />\n <StepIndicator\n bottom\n current_step={activeIndexRef.current}\n data={Object.values(titlesRef.current)}\n mode={mode}\n no_animation={noAnimation}\n on_change={handleChange}\n sidebar_id={sidebar_id}\n />\n </aside>\n )\n}\n\nfunction IterateOverSteps({ children }) {\n const {\n titlesRef,\n activeIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n } = useContext(WizardContext)\n\n titlesRef.current = {}\n let incrementIndex = -1\n let decrementIndex = -1\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 if (child.props.active === false) {\n return null\n }\n\n if (child.props.active === false) {\n decrementIndex--\n } else {\n incrementIndex++\n }\n const index =\n child.props.active === false ? decrementIndex : incrementIndex\n\n titlesRef.current[index] =\n child.props.title !== undefined\n ? convertJsxToString(child.props.title)\n : 'Title missing'\n const key = `${index}-${activeIndexRef.current}`\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 return childrenArray\n}\n\nfunction PrerenderFieldPropsOfOtherSteps({\n prerenderFieldPropsRef,\n}: {\n prerenderFieldPropsRef: WizardContextState['prerenderFieldPropsRef']\n}) {\n const hasRenderedRef = useRef(true)\n if (!hasRenderedRef.current) {\n return null\n }\n hasRenderedRef.current = false\n\n return (\n <WizardPortal>\n <PrerenderFieldPropsProvider>\n <iframe title=\"Wizard Prerender\" hidden>\n {Object.values(prerenderFieldPropsRef.current).map((Fn, i) => (\n <Fn key={i} />\n ))}\n </iframe>\n </PrerenderFieldPropsProvider>\n </WizardPortal>\n )\n}\n\nfunction WizardPortal({ children }) {\n if (typeof document !== 'undefined') {\n return ReactDOM.createPortal(children, document.body)\n }\n}\n\nfunction PrerenderFieldPropsProvider({ children }) {\n const { data, setFieldProps, updateDataValue } = useContext(DataContext)\n\n return (\n <DataContext.Provider\n value={{\n ...defaultContextState,\n\n // Only update the props and the data value\n data,\n setFieldProps,\n updateDataValue,\n prerenderFieldProps: true,\n }}\n >\n <WizardContext.Provider value={{ prerenderFieldProps: true }}>\n {children}\n </WizardContext.Provider>\n </DataContext.Provider>\n )\n}\n\nWizardContainer._supportsSpacingProps = true\n\nexport default WizardContainer\n"],"mappings":"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"}
1
+ {"version":3,"file":"WizardContainer.js","names":["_react","_interopRequireWildcard","require","_reactDom","_interopRequireDefault","_classnames","_components","_componentHelper","_isAsync","_useId","_Step","_WizardContext","_Context","_Handler","_useSharedState","_useHandleLayoutEffect","_useVisibility","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","useLayoutEffect","window","React","useEffect","WizardContainer","props","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","variant","sidebarId","rest","hasContext","setFormState","handleSubmitCall","setShowAllErrors","showAllErrors","setSubmitState","useContext","DataContext","useId","forceUpdate","useReducer","activeIndexRef","useRef","errorOnStepRef","stepElementRef","sharedStateRef","current","useSharedState","callOnStepChange","useCallback","index","isAsync","setFocus","scrollToTop","isInteractionRef","useHandleLayoutEffect","handleLayoutEffect","handleStepChange","_ref","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","skipFieldValidation","enableAsyncBehaviour","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","result","Error","setActiveIndex","options","handlePrevious","handleNext","handleChange","_ref2","current_step","setFormError","error","titlesRef","updateTitlesRef","prerenderFieldPropsRef","check","useVisibility","activeIndex","providerValue","useMemo","_sharedStateRef$curre4","_sharedStateRef$curre5","extend","_updateTitlesRef$curr","warn","createElement","Provider","Space","classnames","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","_ref3","WizardContext","sidebar_id","StepIndicator","Sidebar","bottom","values","no_animation","on_change","_ref4","incrementIndex","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","Step","_step","active","activeWhen","visibleWhen","title","convertJsxToString","clone","cloneElement","document","_ref5","hasRenderedRef","WizardPortal","PrerenderFieldPropsProvider","hidden","Fn","_ref6","ReactDOM","createPortal","body","_ref7","setFieldProps","updateDataValue","defaultContextState","_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 ReactDOM from 'react-dom'\nimport classnames from 'classnames'\nimport { Space, StepIndicator } from '../../../../components'\nimport {\n convertJsxToString,\n warn,\n} from '../../../../shared/component-helper'\nimport { isAsync } from '../../../../shared/helpers/isAsync'\nimport useId from '../../../../shared/helpers/useId'\nimport Step, { Props as StepProps } from '../Step'\nimport WizardContext, {\n OnStepChange,\n SetActiveIndexOptions,\n StepIndex,\n WizardContextState,\n} from '../Context/WizardContext'\nimport DataContext, {\n defaultContextState,\n} from '../../DataContext/Context'\nimport Handler from '../../Form/Handler/Handler'\nimport {\n SharedStateReturn,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport useHandleLayoutEffect from './useHandleLayoutEffect'\nimport { ComponentProps } from '../../types'\nimport useVisibility from '../../Form/Visibility/useVisibility'\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 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 * 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 variant = 'sidebar',\n sidebarId,\n ...rest\n } = props\n\n const {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n showAllErrors,\n setSubmitState,\n } = useContext(DataContext)\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const errorOnStepRef = useRef<Record<StepIndex, boolean>>({})\n const stepElementRef = useRef<HTMLElement>()\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 ? id + '-wizard' : undefined\n )\n\n // Store the current state of showAllErrors\n errorOnStepRef.current[activeIndexRef.current] = showAllErrors\n\n const callOnStepChange = useCallback(\n async (index: StepIndex, mode: 'previous' | 'next') => {\n if (isAsync(onStepChange)) {\n return await onStepChange(index, mode)\n }\n\n return onStepChange?.(index, mode)\n },\n [onStepChange]\n )\n\n const { setFocus, scrollToTop, isInteractionRef } =\n useHandleLayoutEffect({ activeIndexRef, stepElementRef })\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 ({\n index,\n skipErrorCheck,\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n mode,\n }: {\n index: StepIndex\n mode: 'previous' | 'next'\n } & SetActiveIndexOptions) => {\n handleSubmitCall({\n skipErrorCheck,\n skipFieldValidation: skipErrorCheck,\n enableAsyncBehaviour: isAsync(onStepChange),\n onSubmit: async () => {\n if (!skipStepChangeCallFromHook) {\n sharedStateRef.current?.data?.onStepChange?.(index, mode)\n }\n\n const result =\n skipStepChangeCall ||\n (skipStepChangeCallBeforeMounted && !isInteractionRef.current)\n ? undefined\n : await callOnStepChange(index, mode)\n\n // Hide async indicator\n setFormState('abort')\n\n if (!skipErrorCheck) {\n // Set the showAllErrors to the step we got to\n setShowAllErrors(errorOnStepRef.current[index])\n }\n\n if (!(result instanceof Error)) {\n handleLayoutEffect()\n\n activeIndexRef.current = index\n forceUpdate()\n }\n\n return result\n },\n })\n },\n [\n callOnStepChange,\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(current_step, { skipErrorCheck: true })\n },\n [setActiveIndex]\n )\n\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n const titlesRef = useRef({})\n const updateTitlesRef = useRef<() => void>()\n const prerenderFieldPropsRef = useRef<\n Record<string, () => React.ReactElement>\n >({})\n\n const { check } = useVisibility()\n\n const activeIndex = activeIndexRef.current\n const providerValue = useMemo(() => {\n return {\n id,\n activeIndex,\n stepElementRef,\n titlesRef,\n updateTitlesRef,\n activeIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n check,\n setActiveIndex,\n handlePrevious,\n handleNext,\n setFormError,\n }\n }, [\n activeIndex,\n handleNext,\n handlePrevious,\n id,\n prerenderFieldProps,\n check,\n setActiveIndex,\n setFormError,\n ])\n\n // - Handle shared state\n useLayoutEffect(() => {\n if (id && hasContext) {\n sharedStateRef.current?.extend?.(providerValue)\n }\n }, [id, providerValue]) // eslint-disable-line react-hooks/exhaustive-deps\n\n useLayoutEffect(() => {\n updateTitlesRef.current?.()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [titlesRef.current])\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 {...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 && (\n <PrerenderFieldPropsOfOtherSteps\n prerenderFieldPropsRef={prerenderFieldPropsRef}\n />\n )}\n </WizardContext.Provider>\n )\n}\n\nfunction DisplaySteps({\n mode,\n variant,\n noAnimation,\n handleChange,\n sidebarId,\n}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { id, activeIndexRef, titlesRef, updateTitlesRef } =\n useContext(WizardContext) || {}\n updateTitlesRef.current = () => {\n forceUpdate()\n }\n\n const sidebar_id =\n variant === 'drawer' && !sidebarId ? undefined : sidebarId ?? id\n\n return (\n <aside className=\"dnb-forms-wizard-layout__indicator\">\n <StepIndicator.Sidebar sidebar_id={sidebar_id} />\n <StepIndicator\n bottom\n current_step={activeIndexRef.current}\n data={Object.values(titlesRef.current)}\n mode={mode}\n no_animation={noAnimation}\n on_change={handleChange}\n sidebar_id={sidebar_id}\n />\n </aside>\n )\n}\n\nfunction IterateOverSteps({ children }) {\n const {\n check,\n titlesRef,\n activeIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n } = useContext(WizardContext)\n\n titlesRef.current = {}\n let incrementIndex = -1\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 if (child.props.active === false) {\n return null\n }\n\n if (\n child.props.activeWhen &&\n !check({ visibleWhen: child.props.activeWhen })\n ) {\n return null\n }\n\n incrementIndex++\n const index = incrementIndex\n\n titlesRef.current[index] =\n child.props.title !== undefined\n ? convertJsxToString(child.props.title)\n : 'Title missing'\n const key = `${index}-${activeIndexRef.current}`\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 return childrenArray\n}\n\nfunction PrerenderFieldPropsOfOtherSteps({\n prerenderFieldPropsRef,\n}: {\n prerenderFieldPropsRef: WizardContextState['prerenderFieldPropsRef']\n}) {\n const hasRenderedRef = useRef(true)\n if (!hasRenderedRef.current) {\n return null\n }\n hasRenderedRef.current = false\n\n return (\n <WizardPortal>\n <PrerenderFieldPropsProvider>\n <iframe title=\"Wizard Prerender\" hidden>\n {Object.values(prerenderFieldPropsRef.current).map((Fn, i) => (\n <Fn key={i} />\n ))}\n </iframe>\n </PrerenderFieldPropsProvider>\n </WizardPortal>\n )\n}\n\nfunction WizardPortal({ children }) {\n if (typeof document !== 'undefined') {\n return ReactDOM.createPortal(children, document.body)\n }\n}\n\nfunction PrerenderFieldPropsProvider({ children }) {\n const { data, setFieldProps, updateDataValue } = useContext(DataContext)\n\n return (\n <DataContext.Provider\n value={{\n ...defaultContextState,\n\n // Only update the props and the data value\n data,\n setFieldProps,\n updateDataValue,\n prerenderFieldProps: true,\n }}\n >\n <WizardContext.Provider value={{ prerenderFieldProps: true }}>\n {children}\n </WizardContext.Provider>\n </DataContext.Provider>\n )\n}\n\nWizardContainer._supportsSpacingProps = true\n\nexport default WizardContainer\n"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { EventReturnWithStateObject } from '../../types';
3
+ import { VisibleWhen } from '../../Form/Visibility';
3
4
  export type OnStepChange = (index: StepIndex, mode: 'previous' | 'next') => EventReturnWithStateObject | void | Promise<EventReturnWithStateObject | void>;
4
5
  export type StepIndex = number;
5
6
  export type SetActiveIndexOptions = {
@@ -22,6 +23,9 @@ export interface WizardContextState {
22
23
  handleNext?: () => void;
23
24
  setActiveIndex?: (index: StepIndex, { skipStepChangeCall, skipStepChangeCallBeforeMounted, skipStepChangeCallFromHook, }?: SetActiveIndexOptions) => void;
24
25
  setFormError?: (error: Error) => void;
26
+ check?: ({ visibleWhen }: {
27
+ visibleWhen: VisibleWhen;
28
+ }) => boolean;
25
29
  }
26
30
  declare const WizardContext: React.Context<WizardContextState>;
27
31
  export default WizardContext;
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContext.js","names":["_react","_interopRequireDefault","require","obj","__esModule","default","WizardContext","React","createContext","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/Wizard/Context/WizardContext.ts"],"sourcesContent":["import React from 'react'\nimport { EventReturnWithStateObject } from '../../types'\n\nexport type OnStepChange = (\n index: StepIndex,\n mode: 'previous' | 'next'\n) =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n\nexport type StepIndex = number\nexport type SetActiveIndexOptions = {\n skipStepChangeCall?: boolean\n skipStepChangeCallBeforeMounted?: boolean\n skipStepChangeCallFromHook?: boolean\n skipErrorCheck?: boolean\n}\nexport interface WizardContextState {\n id?: string\n totalSteps?: number\n activeIndex?: StepIndex\n stepElementRef?: React.MutableRefObject<HTMLElement>\n titlesRef?: React.MutableRefObject<Record<string, string>>\n updateTitlesRef?: React.MutableRefObject<() => void>\n activeIndexRef?: React.MutableRefObject<StepIndex>\n prerenderFieldPropsRef?: React.MutableRefObject<\n Record<string, () => React.ReactElement>\n >\n prerenderFieldProps?: boolean\n handlePrevious?: () => void\n handleNext?: () => void\n setActiveIndex?: (\n index: StepIndex,\n {\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n }?: SetActiveIndexOptions\n ) => void\n setFormError?: (error: Error) => void\n}\n\nconst WizardContext = React.createContext<WizardContextState | undefined>(\n undefined\n)\n\nexport default WizardContext\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA2CzB,MAAMG,aAAa,GAAGC,cAAK,CAACC,aAAa,CACvCC,SACF,CAAC;AAAA,IAAAC,QAAA,GAEcJ,aAAa;AAAAK,OAAA,CAAAN,OAAA,GAAAK,QAAA"}
1
+ {"version":3,"file":"WizardContext.js","names":["_react","_interopRequireDefault","require","obj","__esModule","default","WizardContext","React","createContext","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/Wizard/Context/WizardContext.ts"],"sourcesContent":["import React from 'react'\nimport { EventReturnWithStateObject } from '../../types'\nimport { VisibleWhen } from '../../Form/Visibility'\n\nexport type OnStepChange = (\n index: StepIndex,\n mode: 'previous' | 'next'\n) =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n\nexport type StepIndex = number\nexport type SetActiveIndexOptions = {\n skipStepChangeCall?: boolean\n skipStepChangeCallBeforeMounted?: boolean\n skipStepChangeCallFromHook?: boolean\n skipErrorCheck?: boolean\n}\nexport interface WizardContextState {\n id?: string\n totalSteps?: number\n activeIndex?: StepIndex\n stepElementRef?: React.MutableRefObject<HTMLElement>\n titlesRef?: React.MutableRefObject<Record<string, string>>\n updateTitlesRef?: React.MutableRefObject<() => void>\n activeIndexRef?: React.MutableRefObject<StepIndex>\n prerenderFieldPropsRef?: React.MutableRefObject<\n Record<string, () => React.ReactElement>\n >\n prerenderFieldProps?: boolean\n handlePrevious?: () => void\n handleNext?: () => void\n setActiveIndex?: (\n index: StepIndex,\n {\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n }?: SetActiveIndexOptions\n ) => void\n setFormError?: (error: Error) => void\n check?: ({ visibleWhen }: { visibleWhen: VisibleWhen }) => boolean\n}\n\nconst WizardContext = React.createContext<WizardContextState | undefined>(\n undefined\n)\n\nexport default WizardContext\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA6CzB,MAAMG,aAAa,GAAGC,cAAK,CAACC,aAAa,CACvCC,SACF,CAAC;AAAA,IAAAC,QAAA,GAEcJ,aAAa;AAAAK,OAAA,CAAAN,OAAA,GAAAK,QAAA"}
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { ComponentProps } from '../../types';
3
3
  import { Props as FlexContainerProps } from '../../../../components/flex/Container';
4
+ import type { VisibleWhen } from '../../Form/Visibility';
4
5
  export type Props = ComponentProps & FlexContainerProps & {
5
6
  /**
6
7
  * A title that will be displayed in the indicator.
@@ -19,6 +20,10 @@ export type Props = ComponentProps & FlexContainerProps & {
19
20
  * If set to `false`, the step will not be rendered.
20
21
  */
21
22
  active?: boolean;
23
+ /**
24
+ * Provide a `path` and a `hasValue` property with the excepted value in order to enable the step. You can alternatively provide a `withValue` function that returns a boolean. The first parameter is the value of the path.
25
+ */
26
+ activeWhen?: VisibleWhen;
22
27
  /**
23
28
  * If set to `true`, the step will always be rendered.
24
29
  * For internal use only.
@@ -11,7 +11,7 @@ var _WizardContext = _interopRequireDefault(require("../Context/WizardContext"))
11
11
  var _Flex = _interopRequireDefault(require("../../../../components/flex/Flex"));
12
12
  var _componentHelper = require("../../../../shared/component-helper");
13
13
  var _FieldProps = _interopRequireDefault(require("../../Form/FieldProps"));
14
- const _excluded = ["className", "title", "index", "active", "required", "prerenderFieldProps", "children"];
14
+ const _excluded = ["className", "title", "index", "active", "activeWhen", "required", "prerenderFieldProps", "children"];
15
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
17
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -25,12 +25,14 @@ function Step(props) {
25
25
  title,
26
26
  index,
27
27
  active = true,
28
+ activeWhen,
28
29
  required,
29
30
  prerenderFieldProps,
30
31
  children
31
32
  } = props,
32
33
  restProps = _objectWithoutProperties(props, _excluded);
33
34
  const {
35
+ check,
34
36
  activeIndex,
35
37
  titlesRef,
36
38
  stepElementRef
@@ -53,7 +55,9 @@ function Step(props) {
53
55
  if (prerenderFieldProps) {
54
56
  return children;
55
57
  }
56
- if (activeIndex !== index || active === false) {
58
+ if (activeIndex !== index || active === false || activeWhen && !check({
59
+ visibleWhen: activeWhen
60
+ })) {
57
61
  return _react.default.createElement(_react.default.Fragment, null);
58
62
  }
59
63
  const fieldProps = typeof required === 'boolean' ? {