@dnb/eufemia 10.65.0 → 10.66.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 (465) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/cjs/components/card/Card.js +1 -1
  3. package/cjs/components/card/Card.js.map +1 -1
  4. package/cjs/components/date-picker/DatePicker.d.ts +3 -1
  5. package/cjs/components/date-picker/DatePicker.js +3 -1
  6. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  7. package/cjs/components/date-picker/DatePickerAddon.js +8 -1
  8. package/cjs/components/date-picker/DatePickerAddon.js.map +1 -1
  9. package/cjs/components/date-picker/DatePickerInput.d.ts +5 -0
  10. package/cjs/components/date-picker/DatePickerInput.js +54 -36
  11. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  12. package/cjs/components/date-picker/DatePickerProvider.d.ts +4 -3
  13. package/cjs/components/date-picker/DatePickerProvider.js +7 -2
  14. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  15. package/cjs/components/date-picker/hooks/useDates.js.map +1 -1
  16. package/cjs/components/flex/Container.d.ts +2 -1
  17. package/cjs/components/flex/Container.js +31 -24
  18. package/cjs/components/flex/Container.js.map +1 -1
  19. package/cjs/components/flex/ContainerDocs.d.ts +2 -0
  20. package/cjs/components/flex/ContainerDocs.js +81 -0
  21. package/cjs/components/flex/ContainerDocs.js.map +1 -0
  22. package/cjs/components/flex/style/dnb-flex.css +36 -4
  23. package/cjs/components/flex/style/dnb-flex.min.css +1 -1
  24. package/cjs/components/flex/style/flex-container.scss +39 -4
  25. package/cjs/components/help-button/HelpButtonInline.d.ts +6 -0
  26. package/cjs/components/help-button/HelpButtonInline.js +51 -19
  27. package/cjs/components/help-button/HelpButtonInline.js.map +1 -1
  28. package/cjs/components/help-button/HelpButtonInstance.js +1 -1
  29. package/cjs/components/help-button/HelpButtonInstance.js.map +1 -1
  30. package/cjs/components/slider/SliderDocs.js +2 -2
  31. package/cjs/components/slider/SliderDocs.js.map +1 -1
  32. package/cjs/components/slider/SliderProvider.js +0 -2
  33. package/cjs/components/slider/SliderProvider.js.map +1 -1
  34. package/cjs/components/slider/types.d.ts +2 -2
  35. package/cjs/components/slider/types.js.map +1 -1
  36. package/cjs/components/step-indicator/StepIndicator.d.ts +6 -0
  37. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  38. package/cjs/components/step-indicator/StepIndicatorContext.d.ts +2 -0
  39. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  40. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +4 -3
  41. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  42. package/cjs/components/toggle-button/ToggleButton.d.ts +9 -1
  43. package/cjs/components/toggle-button/ToggleButtonDocs.js +1 -0
  44. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  45. package/cjs/extensions/forms/DataContext/Context.d.ts +11 -5
  46. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  47. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +1 -1
  48. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  49. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +2 -2
  50. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  51. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +2 -2
  52. package/cjs/extensions/forms/DataContext/Provider/Provider.js +46 -42
  53. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  54. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  55. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  56. package/cjs/extensions/forms/Field/Slider/Slider.js +13 -4
  57. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
  58. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +17 -13
  59. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  60. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -2
  61. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  62. package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
  63. package/cjs/extensions/forms/Value/ValueDocs.js +5 -0
  64. package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
  65. package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +14 -1
  66. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +40 -10
  67. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  68. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +17 -0
  69. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  70. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +24 -0
  71. package/cjs/extensions/forms/Wizard/Container/DisplaySteps.d.ts +7 -0
  72. package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js +78 -0
  73. package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -0
  74. package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +3 -0
  75. package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.js +94 -0
  76. package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -0
  77. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.d.ts +4 -0
  78. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +67 -0
  79. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -0
  80. package/cjs/extensions/forms/Wizard/Container/WizardContainer.d.ts +9 -1
  81. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +102 -206
  82. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  83. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +10 -0
  84. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  85. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +7 -23
  86. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  87. package/cjs/extensions/forms/Wizard/Context/types.d.ts +35 -0
  88. package/cjs/extensions/forms/Wizard/Context/types.js +1 -0
  89. package/cjs/extensions/forms/Wizard/Context/types.js.map +1 -0
  90. package/cjs/extensions/forms/Wizard/EditButton/EditButton.d.ts +1 -1
  91. package/cjs/extensions/forms/Wizard/EditButton/EditButton.js.map +1 -1
  92. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +4 -0
  93. package/cjs/extensions/forms/Wizard/Step/Step.js +28 -9
  94. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  95. package/cjs/extensions/forms/Wizard/Step/StepContext.d.ts +7 -0
  96. package/cjs/extensions/forms/Wizard/Step/StepContext.js +12 -0
  97. package/cjs/extensions/forms/Wizard/Step/StepContext.js.map +1 -0
  98. package/cjs/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  99. package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  100. package/cjs/extensions/forms/Wizard/hooks/useStep.d.ts +2 -1
  101. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  102. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  103. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  104. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  105. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  106. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  107. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  108. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  109. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  110. package/cjs/extensions/forms/hooks/useFieldProps.js +41 -23
  111. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  112. package/cjs/extensions/forms/style/dnb-forms.css +17 -0
  113. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  114. package/cjs/extensions/forms/types.d.ts +9 -1
  115. package/cjs/extensions/forms/types.js.map +1 -1
  116. package/cjs/fragments/drawer-list/DrawerList.d.ts +6 -1
  117. package/cjs/fragments/drawer-list/DrawerList.js +1 -0
  118. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  119. package/cjs/shared/Eufemia.d.ts +1 -1
  120. package/cjs/shared/Eufemia.js +2 -2
  121. package/cjs/shared/Eufemia.js.map +1 -1
  122. package/cjs/style/core/scopes.scss +1 -1
  123. package/cjs/style/dnb-ui-basis.css +1 -1
  124. package/cjs/style/dnb-ui-basis.min.css +1 -1
  125. package/cjs/style/dnb-ui-body.css +1 -1
  126. package/cjs/style/dnb-ui-body.min.css +1 -1
  127. package/cjs/style/dnb-ui-components.css +53 -4
  128. package/cjs/style/dnb-ui-components.min.css +2 -2
  129. package/cjs/style/dnb-ui-core.css +1 -1
  130. package/cjs/style/dnb-ui-core.min.css +1 -1
  131. package/cjs/style/dnb-ui-extensions.css +17 -0
  132. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  133. package/cjs/style/dnb-ui-forms.css +17 -0
  134. package/cjs/style/dnb-ui-forms.min.css +1 -1
  135. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +70 -4
  136. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  137. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +17 -0
  138. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  139. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +17 -0
  140. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  141. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +70 -4
  142. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  143. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +17 -0
  144. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  145. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +17 -0
  146. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  147. package/cjs/style/themes/theme-ui/ui-theme-components.css +70 -4
  148. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  149. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +17 -0
  150. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  151. package/cjs/style/themes/theme-ui/ui-theme-forms.css +17 -0
  152. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  153. package/components/card/Card.js +1 -1
  154. package/components/card/Card.js.map +1 -1
  155. package/components/date-picker/DatePicker.d.ts +3 -1
  156. package/components/date-picker/DatePicker.js +3 -1
  157. package/components/date-picker/DatePicker.js.map +1 -1
  158. package/components/date-picker/DatePickerAddon.js +6 -1
  159. package/components/date-picker/DatePickerAddon.js.map +1 -1
  160. package/components/date-picker/DatePickerInput.d.ts +5 -0
  161. package/components/date-picker/DatePickerInput.js +54 -36
  162. package/components/date-picker/DatePickerInput.js.map +1 -1
  163. package/components/date-picker/DatePickerProvider.d.ts +4 -3
  164. package/components/date-picker/DatePickerProvider.js +7 -2
  165. package/components/date-picker/DatePickerProvider.js.map +1 -1
  166. package/components/date-picker/hooks/useDates.js.map +1 -1
  167. package/components/flex/Container.d.ts +2 -1
  168. package/components/flex/Container.js +32 -25
  169. package/components/flex/Container.js.map +1 -1
  170. package/components/flex/ContainerDocs.d.ts +2 -0
  171. package/components/flex/ContainerDocs.js +74 -0
  172. package/components/flex/ContainerDocs.js.map +1 -0
  173. package/components/flex/style/dnb-flex.css +36 -4
  174. package/components/flex/style/dnb-flex.min.css +1 -1
  175. package/components/flex/style/flex-container.scss +39 -4
  176. package/components/help-button/HelpButtonInline.d.ts +6 -0
  177. package/components/help-button/HelpButtonInline.js +51 -19
  178. package/components/help-button/HelpButtonInline.js.map +1 -1
  179. package/components/help-button/HelpButtonInstance.js +1 -1
  180. package/components/help-button/HelpButtonInstance.js.map +1 -1
  181. package/components/slider/SliderDocs.js +2 -2
  182. package/components/slider/SliderDocs.js.map +1 -1
  183. package/components/slider/SliderProvider.js +0 -2
  184. package/components/slider/SliderProvider.js.map +1 -1
  185. package/components/slider/types.d.ts +2 -2
  186. package/components/slider/types.js.map +1 -1
  187. package/components/step-indicator/StepIndicator.d.ts +6 -0
  188. package/components/step-indicator/StepIndicator.js.map +1 -1
  189. package/components/step-indicator/StepIndicatorContext.d.ts +2 -0
  190. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  191. package/components/step-indicator/StepIndicatorTriggerButton.js +4 -3
  192. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  193. package/components/toggle-button/ToggleButton.d.ts +9 -1
  194. package/components/toggle-button/ToggleButtonDocs.js +1 -0
  195. package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  196. package/es/components/card/Card.js +1 -1
  197. package/es/components/card/Card.js.map +1 -1
  198. package/es/components/date-picker/DatePicker.d.ts +3 -1
  199. package/es/components/date-picker/DatePicker.js +3 -1
  200. package/es/components/date-picker/DatePicker.js.map +1 -1
  201. package/es/components/date-picker/DatePickerAddon.js +6 -1
  202. package/es/components/date-picker/DatePickerAddon.js.map +1 -1
  203. package/es/components/date-picker/DatePickerInput.d.ts +5 -0
  204. package/es/components/date-picker/DatePickerInput.js +54 -36
  205. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  206. package/es/components/date-picker/DatePickerProvider.d.ts +4 -3
  207. package/es/components/date-picker/DatePickerProvider.js +7 -2
  208. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  209. package/es/components/date-picker/hooks/useDates.js.map +1 -1
  210. package/es/components/flex/Container.d.ts +2 -1
  211. package/es/components/flex/Container.js +32 -25
  212. package/es/components/flex/Container.js.map +1 -1
  213. package/es/components/flex/ContainerDocs.d.ts +2 -0
  214. package/es/components/flex/ContainerDocs.js +74 -0
  215. package/es/components/flex/ContainerDocs.js.map +1 -0
  216. package/es/components/flex/style/dnb-flex.css +36 -4
  217. package/es/components/flex/style/dnb-flex.min.css +1 -1
  218. package/es/components/flex/style/flex-container.scss +39 -4
  219. package/es/components/help-button/HelpButtonInline.d.ts +6 -0
  220. package/es/components/help-button/HelpButtonInline.js +50 -18
  221. package/es/components/help-button/HelpButtonInline.js.map +1 -1
  222. package/es/components/help-button/HelpButtonInstance.js +1 -1
  223. package/es/components/help-button/HelpButtonInstance.js.map +1 -1
  224. package/es/components/slider/SliderDocs.js +2 -2
  225. package/es/components/slider/SliderDocs.js.map +1 -1
  226. package/es/components/slider/SliderProvider.js +0 -2
  227. package/es/components/slider/SliderProvider.js.map +1 -1
  228. package/es/components/slider/types.d.ts +2 -2
  229. package/es/components/slider/types.js.map +1 -1
  230. package/es/components/step-indicator/StepIndicator.d.ts +6 -0
  231. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  232. package/es/components/step-indicator/StepIndicatorContext.d.ts +2 -0
  233. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  234. package/es/components/step-indicator/StepIndicatorTriggerButton.js +4 -3
  235. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  236. package/es/components/toggle-button/ToggleButton.d.ts +9 -1
  237. package/es/components/toggle-button/ToggleButtonDocs.js +1 -0
  238. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  239. package/es/extensions/forms/DataContext/Context.d.ts +11 -5
  240. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  241. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +1 -1
  242. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  243. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +2 -2
  244. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  245. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +2 -2
  246. package/es/extensions/forms/DataContext/Provider/Provider.js +36 -35
  247. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  248. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  249. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  250. package/es/extensions/forms/Field/Slider/Slider.js +13 -4
  251. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
  252. package/es/extensions/forms/FieldBlock/FieldBlock.js +17 -13
  253. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  254. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -2
  255. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  256. package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
  257. package/es/extensions/forms/Value/ValueDocs.js +5 -0
  258. package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
  259. package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +14 -1
  260. package/es/extensions/forms/ValueBlock/ValueBlock.js +40 -10
  261. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  262. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +17 -0
  263. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  264. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +24 -0
  265. package/es/extensions/forms/Wizard/Container/DisplaySteps.d.ts +7 -0
  266. package/es/extensions/forms/Wizard/Container/DisplaySteps.js +66 -0
  267. package/es/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -0
  268. package/es/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +3 -0
  269. package/es/extensions/forms/Wizard/Container/IterateOverSteps.js +85 -0
  270. package/es/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -0
  271. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.d.ts +4 -0
  272. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +54 -0
  273. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -0
  274. package/es/extensions/forms/Wizard/Container/WizardContainer.d.ts +9 -1
  275. package/es/extensions/forms/Wizard/Container/WizardContainer.js +97 -194
  276. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  277. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +10 -0
  278. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  279. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +7 -23
  280. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  281. package/es/extensions/forms/Wizard/Context/types.d.ts +35 -0
  282. package/es/extensions/forms/Wizard/Context/types.js +1 -0
  283. package/es/extensions/forms/Wizard/Context/types.js.map +1 -0
  284. package/es/extensions/forms/Wizard/EditButton/EditButton.d.ts +1 -1
  285. package/es/extensions/forms/Wizard/EditButton/EditButton.js.map +1 -1
  286. package/es/extensions/forms/Wizard/Step/Step.d.ts +4 -0
  287. package/es/extensions/forms/Wizard/Step/Step.js +29 -10
  288. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  289. package/es/extensions/forms/Wizard/Step/StepContext.d.ts +7 -0
  290. package/es/extensions/forms/Wizard/Step/StepContext.js +4 -0
  291. package/es/extensions/forms/Wizard/Step/StepContext.js.map +1 -0
  292. package/es/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  293. package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  294. package/es/extensions/forms/Wizard/hooks/useStep.d.ts +2 -1
  295. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  296. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  297. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  298. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  299. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  300. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  301. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  302. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  303. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  304. package/es/extensions/forms/hooks/useFieldProps.js +42 -22
  305. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  306. package/es/extensions/forms/style/dnb-forms.css +17 -0
  307. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  308. package/es/extensions/forms/types.d.ts +9 -1
  309. package/es/extensions/forms/types.js.map +1 -1
  310. package/es/fragments/drawer-list/DrawerList.d.ts +6 -1
  311. package/es/fragments/drawer-list/DrawerList.js +1 -0
  312. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  313. package/es/shared/Eufemia.d.ts +1 -1
  314. package/es/shared/Eufemia.js +2 -2
  315. package/es/shared/Eufemia.js.map +1 -1
  316. package/es/style/core/scopes.scss +1 -1
  317. package/es/style/dnb-ui-basis.css +1 -1
  318. package/es/style/dnb-ui-basis.min.css +1 -1
  319. package/es/style/dnb-ui-body.css +1 -1
  320. package/es/style/dnb-ui-body.min.css +1 -1
  321. package/es/style/dnb-ui-components.css +53 -4
  322. package/es/style/dnb-ui-components.min.css +2 -2
  323. package/es/style/dnb-ui-core.css +1 -1
  324. package/es/style/dnb-ui-core.min.css +1 -1
  325. package/es/style/dnb-ui-extensions.css +17 -0
  326. package/es/style/dnb-ui-extensions.min.css +1 -1
  327. package/es/style/dnb-ui-forms.css +17 -0
  328. package/es/style/dnb-ui-forms.min.css +1 -1
  329. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +70 -4
  330. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  331. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +17 -0
  332. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  333. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +17 -0
  334. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  335. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +70 -4
  336. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  337. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +17 -0
  338. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  339. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +17 -0
  340. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  341. package/es/style/themes/theme-ui/ui-theme-components.css +70 -4
  342. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  343. package/es/style/themes/theme-ui/ui-theme-extensions.css +17 -0
  344. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  345. package/es/style/themes/theme-ui/ui-theme-forms.css +17 -0
  346. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  347. package/esm/dnb-ui-basis.min.mjs +1 -1
  348. package/esm/dnb-ui-components.min.mjs +1 -1
  349. package/esm/dnb-ui-elements.min.mjs +1 -1
  350. package/esm/dnb-ui-extensions.min.mjs +3 -3
  351. package/esm/dnb-ui-lib.min.mjs +1 -1
  352. package/extensions/forms/DataContext/Context.d.ts +11 -5
  353. package/extensions/forms/DataContext/Context.js.map +1 -1
  354. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +1 -1
  355. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  356. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +2 -2
  357. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  358. package/extensions/forms/DataContext/Provider/Provider.d.ts +2 -2
  359. package/extensions/forms/DataContext/Provider/Provider.js +46 -42
  360. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  361. package/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  362. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  363. package/extensions/forms/Field/Slider/Slider.js +13 -4
  364. package/extensions/forms/Field/Slider/Slider.js.map +1 -1
  365. package/extensions/forms/FieldBlock/FieldBlock.js +17 -13
  366. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  367. package/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -2
  368. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  369. package/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
  370. package/extensions/forms/Value/ValueDocs.js +5 -0
  371. package/extensions/forms/Value/ValueDocs.js.map +1 -1
  372. package/extensions/forms/ValueBlock/ValueBlock.d.ts +14 -1
  373. package/extensions/forms/ValueBlock/ValueBlock.js +40 -10
  374. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  375. package/extensions/forms/ValueBlock/style/dnb-value-block.css +17 -0
  376. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  377. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +24 -0
  378. package/extensions/forms/Wizard/Container/DisplaySteps.d.ts +7 -0
  379. package/extensions/forms/Wizard/Container/DisplaySteps.js +70 -0
  380. package/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -0
  381. package/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +3 -0
  382. package/extensions/forms/Wizard/Container/IterateOverSteps.js +86 -0
  383. package/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -0
  384. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.d.ts +4 -0
  385. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +57 -0
  386. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -0
  387. package/extensions/forms/Wizard/Container/WizardContainer.d.ts +9 -1
  388. package/extensions/forms/Wizard/Container/WizardContainer.js +103 -207
  389. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  390. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +10 -0
  391. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  392. package/extensions/forms/Wizard/Context/WizardContext.d.ts +7 -23
  393. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  394. package/extensions/forms/Wizard/Context/types.d.ts +35 -0
  395. package/extensions/forms/Wizard/Context/types.js +1 -0
  396. package/extensions/forms/Wizard/Context/types.js.map +1 -0
  397. package/extensions/forms/Wizard/EditButton/EditButton.d.ts +1 -1
  398. package/extensions/forms/Wizard/EditButton/EditButton.js.map +1 -1
  399. package/extensions/forms/Wizard/Step/Step.d.ts +4 -0
  400. package/extensions/forms/Wizard/Step/Step.js +29 -10
  401. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  402. package/extensions/forms/Wizard/Step/StepContext.d.ts +7 -0
  403. package/extensions/forms/Wizard/Step/StepContext.js +4 -0
  404. package/extensions/forms/Wizard/Step/StepContext.js.map +1 -0
  405. package/extensions/forms/Wizard/Step/StepDocs.js +5 -0
  406. package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  407. package/extensions/forms/Wizard/hooks/useStep.d.ts +2 -1
  408. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  409. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  410. package/extensions/forms/constants/locales/en-GB.js +2 -1
  411. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  412. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  413. package/extensions/forms/constants/locales/index.d.ts +2 -0
  414. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  415. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  416. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  417. package/extensions/forms/hooks/useFieldProps.js +41 -23
  418. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  419. package/extensions/forms/style/dnb-forms.css +17 -0
  420. package/extensions/forms/style/dnb-forms.min.css +1 -1
  421. package/extensions/forms/types.d.ts +9 -1
  422. package/extensions/forms/types.js.map +1 -1
  423. package/fragments/drawer-list/DrawerList.d.ts +6 -1
  424. package/fragments/drawer-list/DrawerList.js +1 -0
  425. package/fragments/drawer-list/DrawerList.js.map +1 -1
  426. package/package.json +1 -1
  427. package/shared/Eufemia.d.ts +1 -1
  428. package/shared/Eufemia.js +2 -2
  429. package/shared/Eufemia.js.map +1 -1
  430. package/style/core/scopes.scss +1 -1
  431. package/style/dnb-ui-basis.css +1 -1
  432. package/style/dnb-ui-basis.min.css +1 -1
  433. package/style/dnb-ui-body.css +1 -1
  434. package/style/dnb-ui-body.min.css +1 -1
  435. package/style/dnb-ui-components.css +53 -4
  436. package/style/dnb-ui-components.min.css +2 -2
  437. package/style/dnb-ui-core.css +1 -1
  438. package/style/dnb-ui-core.min.css +1 -1
  439. package/style/dnb-ui-extensions.css +17 -0
  440. package/style/dnb-ui-extensions.min.css +1 -1
  441. package/style/dnb-ui-forms.css +17 -0
  442. package/style/dnb-ui-forms.min.css +1 -1
  443. package/style/themes/theme-eiendom/eiendom-theme-components.css +70 -4
  444. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  445. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +17 -0
  446. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  447. package/style/themes/theme-eiendom/eiendom-theme-forms.css +17 -0
  448. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  449. package/style/themes/theme-sbanken/sbanken-theme-components.css +70 -4
  450. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  451. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +17 -0
  452. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  453. package/style/themes/theme-sbanken/sbanken-theme-forms.css +17 -0
  454. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  455. package/style/themes/theme-ui/ui-theme-components.css +70 -4
  456. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  457. package/style/themes/theme-ui/ui-theme-extensions.css +17 -0
  458. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  459. package/style/themes/theme-ui/ui-theme-forms.css +17 -0
  460. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  461. package/umd/dnb-ui-basis.min.js +1 -1
  462. package/umd/dnb-ui-components.min.js +1 -1
  463. package/umd/dnb-ui-elements.min.js +1 -1
  464. package/umd/dnb-ui-extensions.min.js +1 -1
  465. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ValueBlock.js","names":["React","Fragment","useContext","useEffect","useMemo","useRef","classnames","warn","Dd","Dl","Dt","Span","FormLabel","SummaryListContext","ValueBlockContext","DataContext","pickSpacingProps","IterateItemContext","convertJsxToString","VisibilityContext","Visibility","ValueBlock","props","summaryListContext","valueBlockContext","prerenderFieldProps","index","iterateIndex","className","label","labelProp","path","itemPath","labelSrOnly","transformLabel","inline","maxWidth","composition","placeholder","showEmpty","children","gap","undefined","replace","String","transformLabelParameters","ref","useNotInSummaryList","hide","createElement","content","compositionClass","defaultClass","Item","isNested","layout","_span","Provider","value","_objectSpread","VisibilityWrapper","_extends","element","labelDirection","srOnly","current","sibling","previousElementSibling","classList","contains","closest","apply","filter","Boolean","error","_supportsSpacingProps","visibilityContext"],"sources":["../../../../../src/extensions/forms/ValueBlock/ValueBlock.tsx"],"sourcesContent":["import React, {\n Fragment,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport { warn } from '../../../shared/helpers'\nimport { Dd, Dl, Dt, Span } from '../../../elements'\nimport { FormLabel } from '../../../components'\nimport SummaryListContext from '../Value/SummaryList/SummaryListContext'\nimport ValueBlockContext from './ValueBlockContext'\nimport DataContext from '../DataContext/Context'\nimport { Path, ValueProps } from '../types'\nimport { pickSpacingProps } from '../../../components/flex/utils'\nimport IterateItemContext from '../Iterate/IterateItemContext'\nimport { convertJsxToString } from '../../../shared/component-helper'\nimport VisibilityContext from '../Form/Visibility/VisibilityContext'\nimport Visibility from '../Form/Visibility/Visibility'\n\n/**\n * Props are documented in ValueDocs.ts\n */\nexport type Props = Omit<ValueProps<unknown>, 'value'> & {\n children?: React.ReactNode\n\n /**\n * Used internally by the Composition component\n */\n composition?: boolean\n\n /**\n * Used internally by the Composition component\n */\n gap?: 'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | false\n}\n\nfunction ValueBlock(props: Props) {\n const summaryListContext = useContext(SummaryListContext)\n const valueBlockContext = useContext(ValueBlockContext)\n const { prerenderFieldProps } = useContext(DataContext) || {}\n const { index: iterateIndex } = useContext(IterateItemContext) || {}\n\n const {\n className,\n label: labelProp,\n path,\n itemPath,\n labelSrOnly,\n transformLabel = (label: Props['label']) => label,\n inline,\n maxWidth = props.composition ? props.maxWidth : 'large',\n placeholder,\n showEmpty,\n children,\n composition,\n gap = 'xx-small',\n } = props\n\n const label = useMemo(() => {\n if (inline) {\n return null\n }\n\n let label = labelProp\n\n if (iterateIndex !== undefined) {\n label = convertJsxToString(labelProp).replace(\n '{itemNo}',\n String(iterateIndex + 1)\n )\n }\n\n return transformLabel(label, transformLabelParameters)\n }, [inline, iterateIndex, labelProp, transformLabel])\n\n const ref = useRef<HTMLElement>(null)\n useNotInSummaryList(\n valueBlockContext?.composition ? null : ref,\n label,\n path,\n itemPath\n )\n\n const hide =\n prerenderFieldProps ||\n ((children === undefined || children === null || children === false) &&\n !showEmpty &&\n !placeholder)\n\n if (hide) {\n return <></>\n }\n\n let content = null\n\n const compositionClass =\n composition &&\n classnames(\n `dnb-forms-value-block__composition--${\n composition === true ? 'horizontal' : composition\n }`\n )\n const defaultClass = classnames(\n 'dnb-forms-value-block__content',\n `dnb-forms-value-block__content--gap-${gap === false ? 'none' : gap}`\n )\n\n if (summaryListContext) {\n const Item = summaryListContext.isNested\n ? Dl\n : summaryListContext.layout === 'horizontal'\n ? Dl.Item\n : Fragment\n\n if (!label && valueBlockContext?.composition) {\n content = <span className={defaultClass}>{children}</span> ?? (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )\n } else {\n content = (\n <SummaryListContext.Provider\n value={{ ...summaryListContext, isNested: true }}\n >\n <Item>\n <Dt\n className={classnames(\n 'dnb-forms-value-block__label',\n (!label || labelSrOnly) && 'dnb-sr-only'\n )}\n >\n <VisibilityWrapper>\n {label && <strong>{label}</strong>}\n </VisibilityWrapper>\n </Dt>\n <Dd\n className={classnames(\n summaryListContext.layout !== 'grid' &&\n !summaryListContext.isNested &&\n maxWidth &&\n `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass\n )}\n >\n <VisibilityWrapper>\n {children ? (\n <span className={defaultClass}>{children}</span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </VisibilityWrapper>\n </Dd>\n </Item>\n </SummaryListContext.Provider>\n )\n }\n } else {\n content = (\n <Span\n ref={ref}\n className={classnames(\n 'dnb-forms-value-block',\n inline && 'dnb-forms-value-block--inline',\n maxWidth && `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass,\n className\n )}\n {...pickSpacingProps(props)}\n >\n {label && (\n <FormLabel\n element=\"strong\" // enhance a11y: https://www.w3.org/WAI/WCAG21/Techniques/html/H49\n className=\"dnb-forms-value-block__label\"\n labelDirection={inline ? 'horizontal' : 'vertical'}\n srOnly={labelSrOnly}\n >\n {label}\n </FormLabel>\n )}\n {children ? (\n <span className={defaultClass}>{children}</span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </Span>\n )\n }\n\n return (\n <ValueBlockContext.Provider value={props}>\n {content}\n </ValueBlockContext.Provider>\n )\n}\n\nfunction useNotInSummaryList(\n ref: React.RefObject<HTMLElement>,\n label?: React.ReactNode,\n path?: Path,\n itemPath?: Path\n) {\n useEffect(() => {\n if (ref?.current) {\n try {\n const sibling = ref.current.previousElementSibling\n\n if (\n sibling?.classList.contains('dnb-forms-value-block') &&\n !ref.current.closest('.dnb-forms-summary-list')\n ) {\n warn.apply(\n warn,\n [\n 'Value components as siblings should be wrapped inside a Value.SummaryList:',\n { label, path, itemPath },\n ].filter(Boolean)\n )\n }\n } catch (error) {\n //\n }\n }\n }, [itemPath, label, path, ref])\n}\n\nValueBlock._supportsSpacingProps = true\nexport default ValueBlock\n\nconst transformLabelParameters = {\n convertJsxToString,\n} as unknown as Parameters<Props['transformLabel']>[1]\n\nfunction VisibilityWrapper({ children }) {\n const visibilityContext = useContext(VisibilityContext)\n\n if (visibilityContext) {\n return <Visibility {...visibilityContext.props}>{children}</Visibility>\n }\n\n return children\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ValueBlock.js","names":["React","Fragment","useContext","useEffect","useMemo","useRef","classnames","warn","Dd","Dl","Dt","Span","FormLabel","SummaryListContext","ValueBlockContext","DataContext","pickSpacingProps","IterateItemContext","convertJsxToString","VisibilityContext","Visibility","HelpButtonInline","HelpButtonInlineContent","useId","ValueBlock","props","_props$id","summaryListContext","valueBlockContext","prerenderFieldProps","index","iterateIndex","id","forId","className","label","labelProp","path","itemPath","labelSrOnly","transformLabel","inline","maxWidth","composition","placeholder","showEmpty","children","help","layout","gap","undefined","replace","String","transformLabelParameters","ref","useNotInSummaryList","hide","createElement","content","compositionClass","defaultClass","hasHelp","title","Item","isNested","_span","Provider","value","_objectSpread","VisibilityWrapper","contentId","breakout","outset","_extends","element","labelDirection","srOnly","current","sibling","previousElementSibling","classList","contains","closest","apply","filter","Boolean","error","_supportsSpacingProps","visibilityContext"],"sources":["../../../../../src/extensions/forms/ValueBlock/ValueBlock.tsx"],"sourcesContent":["import React, {\n Fragment,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport { warn } from '../../../shared/helpers'\nimport { Dd, Dl, Dt, Span } from '../../../elements'\nimport { FormLabel } from '../../../components'\nimport SummaryListContext from '../Value/SummaryList/SummaryListContext'\nimport ValueBlockContext from './ValueBlockContext'\nimport DataContext from '../DataContext/Context'\nimport { Path, ValueProps } from '../types'\nimport { pickSpacingProps } from '../../../components/flex/utils'\nimport IterateItemContext from '../Iterate/IterateItemContext'\nimport { convertJsxToString } from '../../../shared/component-helper'\nimport VisibilityContext from '../Form/Visibility/VisibilityContext'\nimport Visibility from '../Form/Visibility/Visibility'\nimport HelpButtonInline, {\n HelpButtonInlineContent,\n HelpProps,\n} from '../../../components/help-button/HelpButtonInline'\nimport useId from '../../../shared/helpers/useId'\n\n/**\n * Props are documented in ValueDocs.ts\n */\nexport type Props = Omit<ValueProps<unknown>, 'value'> & {\n id?: string\n\n /** The id to link a element with */\n forId?: string\n\n /**\n * Provide help content for the value.\n */\n help?: HelpProps\n\n /**\n * The layout of the value block.\n * (Undocumented for now, as there is only one layout option, vertical.)\n */\n layout?: 'vertical'\n\n /**\n * Used internally by the Composition component\n */\n composition?: boolean\n\n /**\n * Used internally by the Composition component\n */\n gap?: 'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | false\n\n children?: React.ReactNode\n}\n\nfunction ValueBlock(props: Props) {\n const summaryListContext = useContext(SummaryListContext)\n const valueBlockContext = useContext(ValueBlockContext)\n const { prerenderFieldProps } = useContext(DataContext) || {}\n const { index: iterateIndex } = useContext(IterateItemContext) || {}\n\n const id = useId(props.id ?? props.forId)\n\n const {\n className,\n label: labelProp,\n path,\n itemPath,\n labelSrOnly,\n transformLabel = (label: Props['label']) => label,\n inline,\n maxWidth = props.composition ? props.maxWidth : 'large',\n placeholder,\n showEmpty,\n children,\n composition,\n help,\n layout = 'vertical',\n gap = 'xx-small',\n } = props\n\n const label = useMemo(() => {\n if (inline) {\n return null\n }\n\n let label = labelProp\n\n if (iterateIndex !== undefined) {\n label = convertJsxToString(labelProp).replace(\n '{itemNo}',\n String(iterateIndex + 1)\n )\n }\n\n return transformLabel(label, transformLabelParameters)\n }, [inline, iterateIndex, labelProp, transformLabel])\n\n const ref = useRef<HTMLElement>(null)\n useNotInSummaryList(\n valueBlockContext?.composition ? null : ref,\n label,\n path,\n itemPath\n )\n\n const hide =\n prerenderFieldProps ||\n ((children === undefined || children === null || children === false) &&\n !showEmpty &&\n !placeholder)\n\n if (hide) {\n return <></>\n }\n\n let content = null\n\n const compositionClass =\n composition &&\n classnames(\n `dnb-forms-value-block__composition--${\n composition === true ? 'horizontal' : composition\n }`\n )\n const defaultClass = classnames(\n 'dnb-forms-value-block__content',\n `dnb-forms-value-block__content--gap-${gap === false ? 'none' : gap}`,\n maxWidth && `dnb-forms-value-block--max-width-${maxWidth}`\n )\n\n const hasHelp = help?.title || help?.content\n\n if (summaryListContext) {\n const Item = summaryListContext.isNested\n ? Dl\n : summaryListContext.layout === 'horizontal'\n ? Dl.Item\n : Fragment\n\n if (!label && !hasHelp && valueBlockContext?.composition) {\n content = <span className={defaultClass}>{children}</span> ?? (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )\n } else {\n const { layout } = summaryListContext\n content = (\n <SummaryListContext.Provider\n value={{ ...summaryListContext, isNested: true }}\n >\n <Item>\n <Dt\n className={classnames(\n 'dnb-forms-value-block__label',\n ((!label && !hasHelp) || labelSrOnly) && 'dnb-sr-only'\n )}\n >\n <VisibilityWrapper>\n {label && <strong>{label}</strong>}\n {hasHelp && (\n <HelpButtonInline contentId={`${id}-help`} help={help} />\n )}\n </VisibilityWrapper>\n </Dt>\n <Dd\n className={classnames(\n layout !== 'grid' &&\n !summaryListContext.isNested &&\n maxWidth &&\n `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass\n )}\n >\n <VisibilityWrapper>\n {hasHelp && (\n <HelpButtonInlineContent\n contentId={`${id}-help`}\n className=\"dnb-forms-value-block__help\"\n help={help}\n breakout={layout === 'vertical'}\n outset={layout === 'vertical'}\n />\n )}\n {children ? (\n <span className={defaultClass}>{children}</span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </VisibilityWrapper>\n </Dd>\n </Item>\n </SummaryListContext.Provider>\n )\n }\n } else {\n content = (\n <Span\n ref={ref}\n className={classnames(\n 'dnb-forms-value-block',\n inline && 'dnb-forms-value-block--inline',\n compositionClass,\n className\n )}\n {...pickSpacingProps(props)}\n >\n {(label || hasHelp) && (\n <FormLabel\n element=\"strong\" // enhance a11y: https://www.w3.org/WAI/WCAG21/Techniques/html/H49\n className={classnames(\n 'dnb-forms-value-block__label',\n maxWidth && `dnb-forms-value-block--max-width-${maxWidth}`\n )}\n labelDirection={inline ? 'horizontal' : 'vertical'}\n srOnly={labelSrOnly}\n >\n <span>\n {label && (\n <span className=\"dnb-forms-value-block__label__content\">\n {label}\n </span>\n )}\n {hasHelp && (\n <HelpButtonInline contentId={`${id}-help`} help={help} />\n )}\n </span>\n </FormLabel>\n )}\n {hasHelp && (\n <HelpButtonInlineContent\n contentId={`${id}-help`}\n className=\"dnb-forms-value-block__help\"\n help={help}\n breakout={layout === 'vertical'}\n outset={layout === 'vertical'}\n />\n )}\n {children ? (\n <span className={defaultClass}>{children}</span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </Span>\n )\n }\n\n return (\n <ValueBlockContext.Provider value={props}>\n {content}\n </ValueBlockContext.Provider>\n )\n}\n\nfunction useNotInSummaryList(\n ref: React.RefObject<HTMLElement>,\n label?: React.ReactNode,\n path?: Path,\n itemPath?: Path\n) {\n useEffect(() => {\n if (ref?.current) {\n try {\n const sibling = ref.current.previousElementSibling\n\n if (\n sibling?.classList.contains('dnb-forms-value-block') &&\n !ref.current.closest('.dnb-forms-summary-list')\n ) {\n warn.apply(\n warn,\n [\n 'Value components as siblings should be wrapped inside a Value.SummaryList:',\n { label, path, itemPath },\n ].filter(Boolean)\n )\n }\n } catch (error) {\n //\n }\n }\n }, [itemPath, label, path, ref])\n}\n\nValueBlock._supportsSpacingProps = true\nexport default ValueBlock\n\nconst transformLabelParameters = {\n convertJsxToString,\n} as unknown as Parameters<Props['transformLabel']>[1]\n\nfunction VisibilityWrapper({ children }) {\n const visibilityContext = useContext(VisibilityContext)\n\n if (visibilityContext) {\n return <Visibility {...visibilityContext.props}>{children}</Visibility>\n }\n\n return children\n}\n"],"mappings":"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"}
@@ -20,6 +20,9 @@
20
20
  display: block;
21
21
  font-size: var(--font-size-basis);
22
22
  }
23
+ .dnb-forms-value-block:not(.dnb-forms-value-block__composition--horizontal) .dnb-forms-value-block__content {
24
+ display: block;
25
+ }
23
26
  .dnb-forms-value-block--inline:not([class*=__composition]) {
24
27
  display: inline-block;
25
28
  font-size: inherit;
@@ -27,6 +30,19 @@
27
30
  .dnb-forms-value-block__label, .dnb-forms-value-block__label strong {
28
31
  font-weight: var(--font-weight-medium);
29
32
  }
33
+ .dnb-forms-value-block__label > strong:has(+ .dnb-help-button), .dnb-forms-value-block__label__content:has(+ .dnb-help-button) {
34
+ margin-right: 0.5rem;
35
+ }
36
+ .dnb-forms-value-block__help {
37
+ display: flex;
38
+ flex-flow: column;
39
+ }
40
+ .dnb-forms-value-block__help .dnb-section {
41
+ margin-bottom: 0.5rem;
42
+ }
43
+ .dnb-forms-value-block__help .dnb-section > .dnb-p--lead {
44
+ margin-bottom: 0.5rem;
45
+ }
30
46
  .dnb-forms-value-block__placeholder {
31
47
  color: var(--color-black-80);
32
48
  }
@@ -82,6 +98,7 @@
82
98
  }
83
99
  .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not(:has(.dnb-forms-value-block__label)) {
84
100
  --row-gap: var(--spacing-x-small);
101
+ flex-flow: row wrap;
85
102
  }
86
103
  }
87
104
  .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content > .dnb-dd, .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content > .dnb-dt, .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content > .dnb-dl, .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not([class*=dnb-space]) > .dnb-dl {
@@ -1 +1 @@
1
- .dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal) .dnb-dt,.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not([class*=dnb-space])>.dnb-dd>.dnb-dl,.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal)>.dnb-dd>.dnb-dl{margin:0}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal) .dnb-dd:empty,.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal) .dnb-dt:empty{display:none}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not(.dnb-dl__layout--grid)>.dnb-dd{margin-bottom:var(--spacing-medium);transition:margin-bottom .3s var(--easing-default)}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not(.dnb-dl__layout--grid)>.dnb-dd:has(~.dnb-dt:empty~.dnb-dd:empty),.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not(.dnb-dl__layout--grid)>.dnb-dd:last-of-type{margin-bottom:0}.dnb-forms-value-block{display:block;font-size:var(--font-size-basis)}.dnb-forms-value-block--inline:not([class*=__composition]){display:inline-block;font-size:inherit}.dnb-forms-value-block__label,.dnb-forms-value-block__label strong{font-weight:var(--font-weight-medium)}.dnb-forms-value-block__placeholder{color:var(--color-black-80)}.dnb-forms-value-block--max-width-stretch{width:100%}@media screen and (min-width:25.00625em){.dnb-forms-value-block--max-width-small{max-width:var(--forms-field-width--small)}.dnb-forms-value-block--max-width-medium{max-width:var(--forms-field-width--medium)}.dnb-forms-value-block--max-width-large{max-width:var(--forms-field-width--large)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:flex;flex-flow:row;row-gap:var(--row-gap,var(--spacing-medium))}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-none{--column-gap:0}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-xx-small{--column-gap:var(--spacing-xx-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-small{--column-gap:var(--spacing-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-medium{--column-gap:var(--spacing-medium)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:25.00625em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{align-items:flex-start}}@media screen and (max-width:25em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{flex-flow:column}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not(:has(.dnb-forms-value-block__label)){--row-gap:var(--spacing-x-small)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not([class*=dnb-space])>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dd,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dt{margin:0}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl>.dnb-dd{margin-bottom:0}
1
+ .dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal) .dnb-dt,.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not([class*=dnb-space])>.dnb-dd>.dnb-dl,.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal)>.dnb-dd>.dnb-dl{margin:0}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal) .dnb-dd:empty,.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal) .dnb-dt:empty{display:none}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not(.dnb-dl__layout--grid)>.dnb-dd{margin-bottom:var(--spacing-medium);transition:margin-bottom .3s var(--easing-default)}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not(.dnb-dl__layout--grid)>.dnb-dd:has(~.dnb-dt:empty~.dnb-dd:empty),.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--horizontal):not(.dnb-dl__layout--grid)>.dnb-dd:last-of-type{margin-bottom:0}.dnb-forms-value-block{display:block;font-size:var(--font-size-basis)}.dnb-forms-value-block:not(.dnb-forms-value-block__composition--horizontal) .dnb-forms-value-block__content{display:block}.dnb-forms-value-block--inline:not([class*=__composition]){display:inline-block;font-size:inherit}.dnb-forms-value-block__label,.dnb-forms-value-block__label strong{font-weight:var(--font-weight-medium)}.dnb-forms-value-block__label>strong:has(+.dnb-help-button),.dnb-forms-value-block__label__content:has(+.dnb-help-button){margin-right:.5rem}.dnb-forms-value-block__help{display:flex;flex-flow:column}.dnb-forms-value-block__help .dnb-section,.dnb-forms-value-block__help .dnb-section>.dnb-p--lead{margin-bottom:.5rem}.dnb-forms-value-block__placeholder{color:var(--color-black-80)}.dnb-forms-value-block--max-width-stretch{width:100%}@media screen and (min-width:25.00625em){.dnb-forms-value-block--max-width-small{max-width:var(--forms-field-width--small)}.dnb-forms-value-block--max-width-medium{max-width:var(--forms-field-width--medium)}.dnb-forms-value-block--max-width-large{max-width:var(--forms-field-width--large)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:flex;flex-flow:row;row-gap:var(--row-gap,var(--spacing-medium))}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-none{--column-gap:0}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-xx-small{--column-gap:var(--spacing-xx-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-small{--column-gap:var(--spacing-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-medium{--column-gap:var(--spacing-medium)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:25.00625em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{align-items:flex-start}}@media screen and (max-width:25em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{flex-flow:column}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not(:has(.dnb-forms-value-block__label)){--row-gap:var(--spacing-x-small);flex-flow:row wrap}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not([class*=dnb-space])>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dd,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dt{margin:0}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl>.dnb-dd{margin-bottom:0}
@@ -31,6 +31,10 @@
31
31
  display: block;
32
32
  font-size: var(--font-size-basis);
33
33
 
34
+ &:not(#{&}__composition--horizontal) &__content {
35
+ display: block;
36
+ }
37
+
34
38
  &--inline:not([class*='__composition']) {
35
39
  display: inline-block;
36
40
  font-size: inherit;
@@ -40,6 +44,25 @@
40
44
  &__label strong {
41
45
  font-weight: var(--font-weight-medium);
42
46
  }
47
+ &__label {
48
+ & > strong:has(+ .dnb-help-button),// To support dt > strong
49
+ &__content:has(+ .dnb-help-button) {
50
+ margin-right: 0.5rem;
51
+ }
52
+ }
53
+
54
+ &__help {
55
+ display: flex;
56
+ flex-flow: column;
57
+
58
+ .dnb-section {
59
+ margin-bottom: 0.5rem;
60
+
61
+ & > .dnb-p--lead {
62
+ margin-bottom: 0.5rem;
63
+ }
64
+ }
65
+ }
43
66
 
44
67
  &__placeholder {
45
68
  color: var(--color-black-80);
@@ -94,6 +117,7 @@
94
117
  @include allBelow(x-small) {
95
118
  &:not(:has(.dnb-forms-value-block__label)) {
96
119
  --row-gap: var(--spacing-x-small);
120
+ flex-flow: row wrap;
97
121
  }
98
122
  flex-flow: column;
99
123
  }
@@ -0,0 +1,7 @@
1
+ export declare function DisplaySteps({ mode, variant, noAnimation, handleChange, sidebarId, }: {
2
+ mode: any;
3
+ variant: any;
4
+ noAnimation: any;
5
+ handleChange: any;
6
+ sidebarId: any;
7
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,66 @@
1
+ "use client";
2
+
3
+ import React, { useCallback, useContext, useReducer } from 'react';
4
+ import WizardContext from '../Context';
5
+ import StepIndicator from '../../../../components/StepIndicator';
6
+ import { useTranslation } from '../../hooks';
7
+ export function DisplaySteps({
8
+ mode,
9
+ variant,
10
+ noAnimation,
11
+ handleChange,
12
+ sidebarId
13
+ }) {
14
+ const [, forceUpdate] = useReducer(() => ({}), {});
15
+ const {
16
+ id,
17
+ activeIndexRef,
18
+ stepsRef,
19
+ updateTitlesRef,
20
+ hasInvalidStepsState
21
+ } = useContext(WizardContext) || {};
22
+ updateTitlesRef.current = () => {
23
+ forceUpdate();
24
+ };
25
+ const translations = useTranslation();
26
+ const sidebar_id = variant === 'drawer' && !sidebarId ? undefined : sidebarId !== null && sidebarId !== void 0 ? sidebarId : id;
27
+ const getTriggerStatus = useCallback(() => {
28
+ if (hasInvalidStepsState(['error'])) {
29
+ return {
30
+ status: translations.Step.stepHasError,
31
+ status_state: 'error'
32
+ };
33
+ }
34
+ if (hasInvalidStepsState(['unknown'])) {
35
+ return {
36
+ status: 'Unknown state',
37
+ status_state: 'warn'
38
+ };
39
+ }
40
+ }, [hasInvalidStepsState, translations.Step.stepHasError]);
41
+ return React.createElement("aside", {
42
+ className: "dnb-forms-wizard-layout__indicator"
43
+ }, React.createElement(StepIndicator.Sidebar, {
44
+ sidebar_id: sidebar_id
45
+ }), React.createElement(StepIndicator, {
46
+ bottom: true,
47
+ current_step: activeIndexRef.current,
48
+ data: Object.values(stepsRef.current).map(({
49
+ title,
50
+ inactive,
51
+ status,
52
+ statusState
53
+ }) => ({
54
+ title,
55
+ inactive,
56
+ status,
57
+ status_state: statusState
58
+ })),
59
+ mode: mode,
60
+ no_animation: noAnimation,
61
+ on_change: handleChange,
62
+ sidebar_id: sidebar_id,
63
+ triggerButtonProps: getTriggerStatus()
64
+ }));
65
+ }
66
+ //# sourceMappingURL=DisplaySteps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisplaySteps.js","names":["React","useCallback","useContext","useReducer","WizardContext","StepIndicator","useTranslation","DisplaySteps","mode","variant","noAnimation","handleChange","sidebarId","forceUpdate","id","activeIndexRef","stepsRef","updateTitlesRef","hasInvalidStepsState","current","translations","sidebar_id","undefined","getTriggerStatus","status","Step","stepHasError","status_state","createElement","className","Sidebar","bottom","current_step","data","Object","values","map","title","inactive","statusState","no_animation","on_change","triggerButtonProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/DisplaySteps.tsx"],"sourcesContent":["import React, { useCallback, useContext, useReducer } from 'react'\nimport WizardContext from '../Context'\nimport StepIndicator from '../../../../components/StepIndicator'\nimport { StepIndicatorItemProps } from '../../../../components/step-indicator/StepIndicatorItem'\nimport { useTranslation } from '../../hooks'\n\nexport function DisplaySteps({\n mode,\n variant,\n noAnimation,\n handleChange,\n sidebarId,\n}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const {\n id,\n activeIndexRef,\n stepsRef,\n updateTitlesRef,\n hasInvalidStepsState,\n } = useContext(WizardContext) || {}\n updateTitlesRef.current = () => {\n forceUpdate()\n }\n const translations = useTranslation()\n\n const sidebar_id =\n variant === 'drawer' && !sidebarId ? undefined : sidebarId ?? id\n\n const getTriggerStatus = useCallback(() => {\n if (hasInvalidStepsState(['error'])) {\n return {\n status: translations.Step.stepHasError,\n status_state: 'error',\n } satisfies Omit<StepIndicatorItemProps, 'title' | 'currentItemNum'>\n }\n if (hasInvalidStepsState(['unknown'])) {\n return {\n status: 'Unknown state',\n status_state: 'warn',\n } satisfies Omit<StepIndicatorItemProps, 'title' | 'currentItemNum'>\n }\n }, [hasInvalidStepsState, translations.Step.stepHasError])\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(stepsRef.current).map(\n ({ title, inactive, status, statusState }) =>\n ({\n title,\n inactive,\n status,\n status_state: statusState,\n }) satisfies Omit<StepIndicatorItemProps, 'currentItemNum'>\n )}\n mode={mode}\n no_animation={noAnimation}\n on_change={handleChange}\n sidebar_id={sidebar_id}\n triggerButtonProps={getTriggerStatus()}\n />\n </aside>\n )\n}\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,EAAEC,UAAU,QAAQ,OAAO;AAClE,OAAOC,aAAa,MAAM,YAAY;AACtC,OAAOC,aAAa,MAAM,sCAAsC;AAEhE,SAASC,cAAc,QAAQ,aAAa;AAE5C,OAAO,SAASC,YAAYA,CAAC;EAC3BC,IAAI;EACJC,OAAO;EACPC,WAAW;EACXC,YAAY;EACZC;AACF,CAAC,EAAE;EACD,MAAM,GAAGC,WAAW,CAAC,GAAGV,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAClD,MAAM;IACJW,EAAE;IACFC,cAAc;IACdC,QAAQ;IACRC,eAAe;IACfC;EACF,CAAC,GAAGhB,UAAU,CAACE,aAAa,CAAC,IAAI,CAAC,CAAC;EACnCa,eAAe,CAACE,OAAO,GAAG,MAAM;IAC9BN,WAAW,CAAC,CAAC;EACf,CAAC;EACD,MAAMO,YAAY,GAAGd,cAAc,CAAC,CAAC;EAErC,MAAMe,UAAU,GACdZ,OAAO,KAAK,QAAQ,IAAI,CAACG,SAAS,GAAGU,SAAS,GAAGV,SAAS,aAATA,SAAS,cAATA,SAAS,GAAIE,EAAE;EAElE,MAAMS,gBAAgB,GAAGtB,WAAW,CAAC,MAAM;IACzC,IAAIiB,oBAAoB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE;MACnC,OAAO;QACLM,MAAM,EAAEJ,YAAY,CAACK,IAAI,CAACC,YAAY;QACtCC,YAAY,EAAE;MAChB,CAAC;IACH;IACA,IAAIT,oBAAoB,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE;MACrC,OAAO;QACLM,MAAM,EAAE,eAAe;QACvBG,YAAY,EAAE;MAChB,CAAC;IACH;EACF,CAAC,EAAE,CAACT,oBAAoB,EAAEE,YAAY,CAACK,IAAI,CAACC,YAAY,CAAC,CAAC;EAE1D,OACE1B,KAAA,CAAA4B,aAAA;IAAOC,SAAS,EAAC;EAAoC,GACnD7B,KAAA,CAAA4B,aAAA,CAACvB,aAAa,CAACyB,OAAO;IAACT,UAAU,EAAEA;EAAW,CAAE,CAAC,EACjDrB,KAAA,CAAA4B,aAAA,CAACvB,aAAa;IACZ0B,MAAM;IACNC,YAAY,EAAEjB,cAAc,CAACI,OAAQ;IACrCc,IAAI,EAAEC,MAAM,CAACC,MAAM,CAACnB,QAAQ,CAACG,OAAO,CAAC,CAACiB,GAAG,CACvC,CAAC;MAAEC,KAAK;MAAEC,QAAQ;MAAEd,MAAM;MAAEe;IAAY,CAAC,MACtC;MACCF,KAAK;MACLC,QAAQ;MACRd,MAAM;MACNG,YAAY,EAAEY;IAChB,CAAC,CACL,CAAE;IACF/B,IAAI,EAAEA,IAAK;IACXgC,YAAY,EAAE9B,WAAY;IAC1B+B,SAAS,EAAE9B,YAAa;IACxBU,UAAU,EAAEA,UAAW;IACvBqB,kBAAkB,EAAEnB,gBAAgB,CAAC;EAAE,CACxC,CACI,CAAC;AAEZ"}
@@ -0,0 +1,3 @@
1
+ export declare function IterateOverSteps({ children }: {
2
+ children: any;
3
+ }): any;
@@ -0,0 +1,85 @@
1
+ "use client";
2
+
3
+ import React, { useContext } from 'react';
4
+ import { useTranslation } from '../../hooks';
5
+ import { convertJsxToString } from '../../../../shared/component-helper';
6
+ import WizardContext from '../Context/WizardContext';
7
+ import Step, { handleDeprecatedProps as handleDeprecatedStepProps } from '../Step/Step';
8
+ export function IterateOverSteps({
9
+ children
10
+ }) {
11
+ const {
12
+ check,
13
+ stepsRef,
14
+ activeIndexRef,
15
+ totalStepsRef,
16
+ stepStatusRef,
17
+ prerenderFieldProps,
18
+ prerenderFieldPropsRef
19
+ } = useContext(WizardContext);
20
+ stepsRef.current = {};
21
+ let incrementIndex = -1;
22
+ const translations = useTranslation();
23
+ const childrenArray = React.Children.map(children, child => {
24
+ if (React.isValidElement(child)) {
25
+ var _child, _child2;
26
+ let step = child;
27
+ if (((_child = child) === null || _child === void 0 ? void 0 : _child.type) !== Step && typeof child.type === 'function') {
28
+ var _step;
29
+ step = child.type.apply(child.type, [child.props]);
30
+ if (((_step = step) === null || _step === void 0 ? void 0 : _step.type) === Step) {
31
+ child = step;
32
+ }
33
+ }
34
+ if (((_child2 = child) === null || _child2 === void 0 ? void 0 : _child2.type) === Step) {
35
+ const {
36
+ title,
37
+ inactive,
38
+ include,
39
+ includeWhen,
40
+ id
41
+ } = handleDeprecatedStepProps(child.props);
42
+ if (include === false) {
43
+ return null;
44
+ }
45
+ if (includeWhen && !check({
46
+ visibleWhen: includeWhen
47
+ })) {
48
+ return null;
49
+ }
50
+ incrementIndex++;
51
+ const index = incrementIndex;
52
+ const state = stepStatusRef.current[index];
53
+ stepsRef.current[index] = {
54
+ id,
55
+ title: title !== undefined ? convertJsxToString(title) : 'Title missing',
56
+ inactive,
57
+ status: state === 'error' ? translations.Step.stepHasError : state === 'unknown' ? 'Unknown state' : undefined,
58
+ statusState: state === 'error' ? 'error' : undefined
59
+ };
60
+ const key = `${index}-${activeIndexRef.current}`;
61
+ const clone = props => React.cloneElement(child, props);
62
+ if (prerenderFieldProps && typeof document !== 'undefined' && index !== activeIndexRef.current && typeof prerenderFieldPropsRef.current['step-' + index] === 'undefined') {
63
+ prerenderFieldPropsRef.current['step-' + index] = () => clone({
64
+ key,
65
+ index,
66
+ prerenderFieldProps: true
67
+ });
68
+ }
69
+ return clone({
70
+ key,
71
+ index
72
+ });
73
+ }
74
+ }
75
+ return child;
76
+ });
77
+ if ((childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length) === 0) {
78
+ activeIndexRef.current = 0;
79
+ } else if ((childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length) < activeIndexRef.current + 1) {
80
+ activeIndexRef.current = childrenArray.length - 1;
81
+ }
82
+ totalStepsRef.current = childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length;
83
+ return childrenArray;
84
+ }
85
+ //# sourceMappingURL=IterateOverSteps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IterateOverSteps.js","names":["React","useContext","useTranslation","convertJsxToString","WizardContext","Step","handleDeprecatedProps","handleDeprecatedStepProps","IterateOverSteps","children","check","stepsRef","activeIndexRef","totalStepsRef","stepStatusRef","prerenderFieldProps","prerenderFieldPropsRef","current","incrementIndex","translations","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","_step","apply","props","title","inactive","include","includeWhen","id","visibleWhen","index","state","undefined","status","stepHasError","statusState","key","clone","cloneElement","document","length"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/IterateOverSteps.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { useTranslation } from '../../hooks'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport WizardContext from '../Context/WizardContext'\nimport Step, {\n Props as StepProps,\n handleDeprecatedProps as handleDeprecatedStepProps,\n} from '../Step/Step'\n\nexport function IterateOverSteps({ children }) {\n const {\n check,\n stepsRef,\n activeIndexRef,\n totalStepsRef,\n stepStatusRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n } = useContext(WizardContext)\n\n stepsRef.current = {}\n let incrementIndex = -1\n\n const translations = useTranslation()\n\n const childrenArray = React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n let step = child\n\n if (child?.type !== Step && typeof child.type === 'function') {\n step = child.type.apply(child.type, [\n child.props,\n ]) as React.ReactElement\n\n if (step?.type === Step) {\n child = step\n }\n }\n\n if (child?.type === Step) {\n const { title, inactive, include, includeWhen, id } =\n handleDeprecatedStepProps(child.props)\n\n if (include === false) {\n return null\n }\n\n if (\n includeWhen &&\n !check({\n visibleWhen: includeWhen,\n })\n ) {\n return null\n }\n\n incrementIndex++\n const index = incrementIndex\n const state = stepStatusRef.current[index]\n\n stepsRef.current[index] = {\n id,\n title:\n title !== undefined\n ? convertJsxToString(title)\n : 'Title missing',\n inactive,\n status:\n state === 'error'\n ? translations.Step.stepHasError\n : state === 'unknown'\n ? 'Unknown state'\n : undefined,\n statusState: state === 'error' ? 'error' : undefined, // undefined shows 'warn' by default\n }\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 totalStepsRef.current = childrenArray?.length\n\n return childrenArray\n}\n"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { WizardContextState } from '../Context/WizardContext';
2
+ export declare function PrerenderFieldPropsOfOtherSteps({ prerenderFieldPropsRef, }: {
3
+ prerenderFieldPropsRef: WizardContextState['prerenderFieldPropsRef'];
4
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,54 @@
1
+ "use client";
2
+
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
+ 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; }
5
+ 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; }
6
+ import React, { useContext, useRef } from 'react';
7
+ import ReactDOM from 'react-dom';
8
+ import DataContext, { defaultContextState } from '../../DataContext/Context';
9
+ import WizardContext from '../Context/WizardContext';
10
+ export function PrerenderFieldPropsOfOtherSteps({
11
+ prerenderFieldPropsRef
12
+ }) {
13
+ const hasRenderedRef = useRef(true);
14
+ if (!hasRenderedRef.current) {
15
+ return null;
16
+ }
17
+ hasRenderedRef.current = false;
18
+ return React.createElement(PrerenderPortal, null, React.createElement(PrerenderFieldPropsProvider, null, React.createElement("iframe", {
19
+ title: "Wizard Prerender",
20
+ hidden: true
21
+ }, Object.values(prerenderFieldPropsRef.current).map((Fn, i) => React.createElement(Fn, {
22
+ key: i
23
+ })))));
24
+ }
25
+ function PrerenderPortal({
26
+ children
27
+ }) {
28
+ if (typeof document !== 'undefined') {
29
+ return ReactDOM.createPortal(children, document.body);
30
+ }
31
+ }
32
+ function PrerenderFieldPropsProvider({
33
+ children
34
+ }) {
35
+ const {
36
+ data,
37
+ setFieldInternals,
38
+ updateDataValue
39
+ } = useContext(DataContext);
40
+ return React.createElement(DataContext.Provider, {
41
+ value: _objectSpread(_objectSpread({}, defaultContextState), {}, {
42
+ hasContext: true,
43
+ prerenderFieldProps: true,
44
+ data,
45
+ setFieldInternals,
46
+ updateDataValue
47
+ })
48
+ }, React.createElement(WizardContext.Provider, {
49
+ value: {
50
+ prerenderFieldProps: true
51
+ }
52
+ }, children));
53
+ }
54
+ //# sourceMappingURL=PrerenderFieldPropsOfOtherSteps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrerenderFieldPropsOfOtherSteps.js","names":["React","useContext","useRef","ReactDOM","DataContext","defaultContextState","WizardContext","PrerenderFieldPropsOfOtherSteps","prerenderFieldPropsRef","hasRenderedRef","current","createElement","PrerenderPortal","PrerenderFieldPropsProvider","title","hidden","Object","values","map","Fn","i","key","children","document","createPortal","body","data","setFieldInternals","updateDataValue","Provider","value","_objectSpread","hasContext","prerenderFieldProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.tsx"],"sourcesContent":["import React, { useContext, useRef } from 'react'\nimport ReactDOM from 'react-dom'\nimport DataContext, {\n defaultContextState,\n} from '../../DataContext/Context'\nimport WizardContext, {\n WizardContextState,\n} from '../Context/WizardContext'\n\nexport function 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 <PrerenderPortal>\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 </PrerenderPortal>\n )\n}\n\nfunction PrerenderPortal({ children }) {\n if (typeof document !== 'undefined') {\n return ReactDOM.createPortal(children, document.body)\n }\n}\n\nfunction PrerenderFieldPropsProvider({ children }) {\n const { data, setFieldInternals, updateDataValue } =\n useContext(DataContext)\n\n return (\n <DataContext.Provider\n value={{\n ...defaultContextState,\n hasContext: true,\n prerenderFieldProps: true,\n\n // Only enable data and these methods\n data,\n setFieldInternals,\n updateDataValue,\n }}\n >\n <WizardContext.Provider value={{ prerenderFieldProps: true }}>\n {children}\n </WizardContext.Provider>\n </DataContext.Provider>\n )\n}\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACjD,OAAOC,QAAQ,MAAM,WAAW;AAChC,OAAOC,WAAW,IAChBC,mBAAmB,QACd,2BAA2B;AAClC,OAAOC,aAAa,MAEb,0BAA0B;AAEjC,OAAO,SAASC,+BAA+BA,CAAC;EAC9CC;AAGF,CAAC,EAAE;EACD,MAAMC,cAAc,GAAGP,MAAM,CAAC,IAAI,CAAC;EACnC,IAAI,CAACO,cAAc,CAACC,OAAO,EAAE;IAC3B,OAAO,IAAI;EACb;EACAD,cAAc,CAACC,OAAO,GAAG,KAAK;EAE9B,OACEV,KAAA,CAAAW,aAAA,CAACC,eAAe,QACdZ,KAAA,CAAAW,aAAA,CAACE,2BAA2B,QAC1Bb,KAAA,CAAAW,aAAA;IAAQG,KAAK,EAAC,kBAAkB;IAACC,MAAM;EAAA,GACpCC,MAAM,CAACC,MAAM,CAACT,sBAAsB,CAACE,OAAO,CAAC,CAACQ,GAAG,CAAC,CAACC,EAAE,EAAEC,CAAC,KACvDpB,KAAA,CAAAW,aAAA,CAACQ,EAAE;IAACE,GAAG,EAAED;EAAE,CAAE,CACd,CACK,CACmB,CACd,CAAC;AAEtB;AAEA,SAASR,eAAeA,CAAC;EAAEU;AAAS,CAAC,EAAE;EACrC,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;IACnC,OAAOpB,QAAQ,CAACqB,YAAY,CAACF,QAAQ,EAAEC,QAAQ,CAACE,IAAI,CAAC;EACvD;AACF;AAEA,SAASZ,2BAA2BA,CAAC;EAAES;AAAS,CAAC,EAAE;EACjD,MAAM;IAAEI,IAAI;IAAEC,iBAAiB;IAAEC;EAAgB,CAAC,GAChD3B,UAAU,CAACG,WAAW,CAAC;EAEzB,OACEJ,KAAA,CAAAW,aAAA,CAACP,WAAW,CAACyB,QAAQ;IACnBC,KAAK,EAAAC,aAAA,CAAAA,aAAA,KACA1B,mBAAmB;MACtB2B,UAAU,EAAE,IAAI;MAChBC,mBAAmB,EAAE,IAAI;MAGzBP,IAAI;MACJC,iBAAiB;MACjBC;IAAe;EACf,GAEF5B,KAAA,CAAAW,aAAA,CAACL,aAAa,CAACuB,QAAQ;IAACC,KAAK,EAAE;MAAEG,mBAAmB,EAAE;IAAK;EAAE,GAC1DX,QACqB,CACJ,CAAC;AAE3B"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { OnStepChange, StepIndex } from '../Context/WizardContext';
2
+ import type { OnStepChange, StepIndex } from '../Context/types';
3
3
  import { ComponentProps } from '../../types';
4
4
  export type Props = ComponentProps & {
5
5
  id?: string;
@@ -32,11 +32,19 @@ export type Props = ComponentProps & {
32
32
  * If set to `true`, the wizard will not animate the steps.
33
33
  */
34
34
  noAnimation?: boolean;
35
+ /**
36
+ * If set to `true`, the wizard will not unmount the steps when navigating back and forth.
37
+ */
38
+ keepInDOM?: boolean;
35
39
  /**
36
40
  * If set to `true`, the wizard pre-render all steps so the props of each field is available in the data context.
37
41
  * Defaults to `true`.
38
42
  */
39
43
  prerenderFieldProps?: boolean;
44
+ /**
45
+ * Determines if and how the validation will be bypassed.
46
+ */
47
+ validationMode?: 'bypassOnNavigation';
40
48
  /**
41
49
  * The children of the wizard container.
42
50
  */