@dnb/eufemia 10.46.0 → 10.48.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 (894) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/cjs/components/accordion/Accordion.d.ts +17 -1
  3. package/cjs/components/accordion/Accordion.js +4 -2
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/accordion/AccordionContext.d.ts +4 -0
  6. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  7. package/cjs/components/accordion/AccordionDocs.js +6 -1
  8. package/cjs/components/accordion/AccordionDocs.js.map +1 -1
  9. package/cjs/components/accordion/AccordionGroup.js +5 -3
  10. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  11. package/cjs/components/accordion/AccordionProviderContext.d.ts +4 -0
  12. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  13. package/cjs/components/accordion/AccordionStore.js +2 -1
  14. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  15. package/cjs/components/accordion/style/dnb-accordion.css +3 -3
  16. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  17. package/cjs/components/autocomplete/style/dnb-autocomplete.css +1 -1
  18. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  19. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  20. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  21. package/cjs/components/button/Button.d.ts +1 -1
  22. package/cjs/components/button/Button.js +5 -2
  23. package/cjs/components/button/Button.js.map +1 -1
  24. package/cjs/components/card/style/dnb-card.css +1 -1
  25. package/cjs/components/card/style/dnb-card.min.css +1 -1
  26. package/cjs/components/copy-on-click/CopyOnClick.d.ts +1 -1
  27. package/cjs/components/copy-on-click/CopyOnClick.js +5 -4
  28. package/cjs/components/copy-on-click/CopyOnClick.js.map +1 -1
  29. package/cjs/components/copy-on-click/CopyOnClickDocs.js +5 -0
  30. package/cjs/components/copy-on-click/CopyOnClickDocs.js.map +1 -1
  31. package/cjs/components/copy-on-click/types.d.ts +5 -0
  32. package/cjs/components/copy-on-click/types.js.map +1 -1
  33. package/cjs/components/drawer/style/dnb-drawer.css +3 -3
  34. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  35. package/cjs/components/dropdown/style/dnb-dropdown.css +1 -1
  36. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  37. package/cjs/components/flex/Container.js +9 -1
  38. package/cjs/components/flex/Container.js.map +1 -1
  39. package/cjs/components/flex/utils.d.ts +1 -1
  40. package/cjs/components/flex/utils.js +1 -1
  41. package/cjs/components/flex/utils.js.map +1 -1
  42. package/cjs/components/form-row/style/dnb-form-row.css +1 -1
  43. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  44. package/cjs/components/grid/style/dnb-grid.css +6 -6
  45. package/cjs/components/grid/style/dnb-grid.min.css +1 -1
  46. package/cjs/components/lib.d.ts +1 -1
  47. package/cjs/components/progress-indicator/ProgressIndicator.js +2 -2
  48. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  49. package/cjs/components/section/style/dnb-section.css +2 -2
  50. package/cjs/components/section/style/dnb-section.min.css +2 -2
  51. package/cjs/components/space/style/dnb-space.css +2 -2
  52. package/cjs/components/space/style/dnb-space.min.css +1 -1
  53. package/cjs/components/tabs/Tabs.js +2 -2
  54. package/cjs/components/tabs/Tabs.js.map +1 -1
  55. package/cjs/components/tag/Tag.js +2 -2
  56. package/cjs/components/tag/Tag.js.map +1 -1
  57. package/cjs/components/toggle-button/style/dnb-toggle-button.css +1 -1
  58. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  59. package/cjs/extensions/forms/DataContext/Context.d.ts +9 -5
  60. package/cjs/extensions/forms/DataContext/Context.js +0 -1
  61. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  62. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +3 -2
  63. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  64. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.d.ts +8 -3
  65. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +12 -5
  66. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  67. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +6 -2
  68. package/cjs/extensions/forms/DataContext/Provider/Provider.js +36 -16
  69. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  70. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  71. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  72. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +21 -12
  73. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  74. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.d.ts +2 -0
  75. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +20 -0
  76. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -0
  77. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +1 -1
  78. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  79. package/cjs/extensions/forms/Field/Slider/Slider.js +7 -7
  80. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
  81. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -2
  82. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +35 -11
  83. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  84. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  85. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  86. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  87. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  88. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  89. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  90. package/cjs/extensions/forms/Form/Isolation/Isolation.js +2 -3
  91. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  92. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  93. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  94. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js +20 -1
  95. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  96. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +17 -11
  97. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  98. package/cjs/extensions/forms/Form/Section/Section.d.ts +7 -2
  99. package/cjs/extensions/forms/Form/Section/Section.js +3 -1
  100. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  101. package/cjs/extensions/forms/Form/Section/SectionDocs.js +6 -1
  102. package/cjs/extensions/forms/Form/Section/SectionDocs.js.map +1 -1
  103. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.d.ts +3 -1
  104. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js +22 -20
  105. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  106. package/cjs/extensions/forms/Form/Section/containers/SectionContainerContext.d.ts +2 -0
  107. package/cjs/extensions/forms/Form/Section/containers/SectionContainerContext.js.map +1 -1
  108. package/cjs/extensions/forms/Form/Section/containers/SectionContainerProvider.d.ts +1 -0
  109. package/cjs/extensions/forms/Form/Section/containers/SectionContainerProvider.js +4 -1
  110. package/cjs/extensions/forms/Form/Section/containers/SectionContainerProvider.js.map +1 -1
  111. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +3 -0
  112. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  113. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.scss +4 -0
  114. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +9 -5
  115. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
  116. package/cjs/extensions/forms/Iterate/Array/Array.js +71 -28
  117. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  118. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js +9 -0
  119. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  120. package/cjs/extensions/forms/Iterate/{AnimatedContainer/ElementBlock.d.ts → Array/ArrayItemArea.d.ts} +6 -6
  121. package/cjs/extensions/forms/Iterate/{AnimatedContainer/ElementBlock.js → Array/ArrayItemArea.js} +66 -49
  122. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -0
  123. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +6 -0
  124. package/cjs/extensions/forms/Iterate/{AnimatedContainer/ElementBlockContext.js → Array/ArrayItemAreaContext.js} +3 -3
  125. package/cjs/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -0
  126. package/cjs/extensions/forms/Iterate/Array/types.d.ts +7 -5
  127. package/cjs/extensions/forms/Iterate/Array/types.js.map +1 -1
  128. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +9 -0
  129. package/cjs/extensions/forms/Iterate/EditContainer/{EditToolbarTools.js → CancelButton.js} +30 -56
  130. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -0
  131. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.d.ts +4 -0
  132. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js +75 -0
  133. package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -0
  134. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +8 -2
  135. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +33 -12
  136. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  137. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  138. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  139. package/cjs/extensions/forms/Iterate/EditContainer/index.d.ts +2 -0
  140. package/cjs/extensions/forms/Iterate/EditContainer/index.js +19 -1
  141. package/cjs/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  142. package/cjs/extensions/forms/Iterate/IterateItemContext.d.ts +7 -1
  143. package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  144. package/cjs/extensions/forms/Iterate/PushButton/PushButton.d.ts +7 -2
  145. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +23 -12
  146. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  147. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +5 -1
  148. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +78 -24
  149. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  150. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +5 -0
  151. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  152. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +9 -9
  153. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  154. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.d.ts +10 -2
  155. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +52 -6
  156. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  157. package/cjs/extensions/forms/Iterate/Toolbar/ToolbarContext.d.ts +6 -0
  158. package/cjs/extensions/forms/Iterate/Toolbar/ToolbarContext.js +12 -0
  159. package/cjs/extensions/forms/Iterate/Toolbar/ToolbarContext.js.map +1 -0
  160. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -0
  161. package/cjs/extensions/forms/Iterate/ViewContainer/{ViewToolbarTools.js → EditButton.js} +8 -11
  162. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -0
  163. package/cjs/extensions/forms/Iterate/ViewContainer/RemoveButton.d.ts +1 -0
  164. package/cjs/extensions/forms/Iterate/ViewContainer/RemoveButton.js +19 -0
  165. package/cjs/extensions/forms/Iterate/ViewContainer/RemoveButton.js.map +1 -0
  166. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +8 -2
  167. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +25 -10
  168. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  169. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  170. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  171. package/cjs/extensions/forms/Iterate/ViewContainer/index.d.ts +2 -0
  172. package/cjs/extensions/forms/Iterate/ViewContainer/index.js +19 -1
  173. package/cjs/extensions/forms/Iterate/ViewContainer/index.js.map +1 -1
  174. package/cjs/extensions/forms/Iterate/hooks/index.d.ts +2 -0
  175. package/cjs/extensions/forms/Iterate/hooks/index.js +21 -0
  176. package/cjs/extensions/forms/Iterate/hooks/index.js.map +1 -0
  177. package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +17 -0
  178. package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +93 -0
  179. package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -0
  180. package/cjs/extensions/forms/Tools/Log.d.ts +6 -0
  181. package/cjs/extensions/forms/Tools/Log.js +29 -0
  182. package/cjs/extensions/forms/Tools/Log.js.map +1 -0
  183. package/cjs/extensions/forms/Tools/index.d.ts +1 -0
  184. package/cjs/extensions/forms/Tools/index.js +7 -0
  185. package/cjs/extensions/forms/Tools/index.js.map +1 -1
  186. package/cjs/extensions/forms/Value/Date/Date.d.ts +1 -1
  187. package/cjs/extensions/forms/Value/Date/Date.js +15 -5
  188. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  189. package/cjs/extensions/forms/Value/Date/DateDocs.js +1 -1
  190. package/cjs/extensions/forms/Value/Date/DateDocs.js.map +1 -1
  191. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  192. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  193. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +19 -7
  194. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  195. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  196. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  197. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +3 -1
  198. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  199. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -2
  200. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  201. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +0 -2
  202. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  203. package/cjs/extensions/forms/constants/countries.d.ts +5 -2
  204. package/cjs/extensions/forms/constants/countries.js +81 -25
  205. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  206. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  207. package/cjs/extensions/forms/constants/locales/en-GB.js +3 -2
  208. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  209. package/cjs/extensions/forms/constants/locales/en-US.d.ts +2 -1
  210. package/cjs/extensions/forms/constants/locales/index.d.ts +4 -2
  211. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  212. package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -2
  213. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  214. package/cjs/extensions/forms/hooks/DataValueDocs.js +10 -5
  215. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  216. package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -1
  217. package/cjs/extensions/forms/hooks/useDataValue.js +7 -7
  218. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  219. package/cjs/extensions/forms/hooks/useExternalValue.js +8 -6
  220. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  221. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  222. package/cjs/extensions/forms/hooks/useFieldProps.js +317 -121
  223. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  224. package/cjs/extensions/forms/hooks/usePath.d.ts +1 -0
  225. package/cjs/extensions/forms/hooks/usePath.js +5 -1
  226. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  227. package/cjs/extensions/forms/style/dnb-forms.css +13 -10
  228. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  229. package/cjs/extensions/forms/types.d.ts +32 -2
  230. package/cjs/extensions/forms/types.js.map +1 -1
  231. package/cjs/shared/Eufemia.d.ts +1 -1
  232. package/cjs/shared/Eufemia.js +2 -2
  233. package/cjs/shared/Eufemia.js.map +1 -1
  234. package/cjs/style/core/scopes.scss +1 -1
  235. package/cjs/style/core/utilities.scss +3 -6
  236. package/cjs/style/dnb-ui-basis.css +1 -1
  237. package/cjs/style/dnb-ui-basis.min.css +1 -1
  238. package/cjs/style/dnb-ui-body.css +1 -1
  239. package/cjs/style/dnb-ui-body.min.css +1 -1
  240. package/cjs/style/dnb-ui-components.css +37 -34
  241. package/cjs/style/dnb-ui-components.min.css +5 -5
  242. package/cjs/style/dnb-ui-core.css +1 -1
  243. package/cjs/style/dnb-ui-core.min.css +1 -1
  244. package/cjs/style/dnb-ui-elements.css +1 -1
  245. package/cjs/style/dnb-ui-elements.min.css +1 -1
  246. package/cjs/style/dnb-ui-extensions.css +13 -10
  247. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  248. package/cjs/style/dnb-ui-forms.css +13 -10
  249. package/cjs/style/dnb-ui-forms.min.css +1 -1
  250. package/cjs/style/dnb-ui-fragments.css +2 -2
  251. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  252. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  253. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  254. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +51 -45
  255. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  256. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  257. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  258. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -10
  259. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  260. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +13 -10
  261. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  262. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  263. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  264. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +51 -45
  265. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  266. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  267. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  268. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -10
  269. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  270. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +13 -10
  271. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  272. package/cjs/style/themes/theme-ui/ui-theme-basis.css +1 -1
  273. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  274. package/cjs/style/themes/theme-ui/ui-theme-components.css +51 -45
  275. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  276. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
  277. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  278. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +13 -10
  279. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  280. package/cjs/style/themes/theme-ui/ui-theme-forms.css +13 -10
  281. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  282. package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -1
  283. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  284. package/components/accordion/Accordion.d.ts +17 -1
  285. package/components/accordion/Accordion.js +4 -2
  286. package/components/accordion/Accordion.js.map +1 -1
  287. package/components/accordion/AccordionContext.d.ts +4 -0
  288. package/components/accordion/AccordionContext.js.map +1 -1
  289. package/components/accordion/AccordionDocs.js +6 -1
  290. package/components/accordion/AccordionDocs.js.map +1 -1
  291. package/components/accordion/AccordionGroup.js +5 -3
  292. package/components/accordion/AccordionGroup.js.map +1 -1
  293. package/components/accordion/AccordionProviderContext.d.ts +4 -0
  294. package/components/accordion/AccordionProviderContext.js.map +1 -1
  295. package/components/accordion/AccordionStore.js +2 -1
  296. package/components/accordion/AccordionStore.js.map +1 -1
  297. package/components/accordion/style/dnb-accordion.css +3 -3
  298. package/components/accordion/style/dnb-accordion.min.css +1 -1
  299. package/components/autocomplete/style/dnb-autocomplete.css +1 -1
  300. package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  301. package/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  302. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  303. package/components/button/Button.d.ts +1 -1
  304. package/components/button/Button.js +5 -2
  305. package/components/button/Button.js.map +1 -1
  306. package/components/card/style/dnb-card.css +1 -1
  307. package/components/card/style/dnb-card.min.css +1 -1
  308. package/components/copy-on-click/CopyOnClick.d.ts +1 -1
  309. package/components/copy-on-click/CopyOnClick.js +5 -4
  310. package/components/copy-on-click/CopyOnClick.js.map +1 -1
  311. package/components/copy-on-click/CopyOnClickDocs.js +5 -0
  312. package/components/copy-on-click/CopyOnClickDocs.js.map +1 -1
  313. package/components/copy-on-click/types.d.ts +5 -0
  314. package/components/copy-on-click/types.js.map +1 -1
  315. package/components/drawer/style/dnb-drawer.css +3 -3
  316. package/components/drawer/style/dnb-drawer.min.css +1 -1
  317. package/components/dropdown/style/dnb-dropdown.css +1 -1
  318. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  319. package/components/flex/Container.js +10 -2
  320. package/components/flex/Container.js.map +1 -1
  321. package/components/flex/utils.d.ts +1 -1
  322. package/components/flex/utils.js +1 -1
  323. package/components/flex/utils.js.map +1 -1
  324. package/components/form-row/style/dnb-form-row.css +1 -1
  325. package/components/form-row/style/dnb-form-row.min.css +1 -1
  326. package/components/grid/style/dnb-grid.css +6 -6
  327. package/components/grid/style/dnb-grid.min.css +1 -1
  328. package/components/lib.d.ts +1 -1
  329. package/components/progress-indicator/ProgressIndicator.js +2 -2
  330. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  331. package/components/section/style/dnb-section.css +2 -2
  332. package/components/section/style/dnb-section.min.css +2 -2
  333. package/components/space/style/dnb-space.css +2 -2
  334. package/components/space/style/dnb-space.min.css +1 -1
  335. package/components/tabs/Tabs.js +2 -2
  336. package/components/tabs/Tabs.js.map +1 -1
  337. package/components/tag/Tag.js +2 -2
  338. package/components/tag/Tag.js.map +1 -1
  339. package/components/toggle-button/style/dnb-toggle-button.css +1 -1
  340. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  341. package/es/components/accordion/Accordion.d.ts +17 -1
  342. package/es/components/accordion/Accordion.js +4 -2
  343. package/es/components/accordion/Accordion.js.map +1 -1
  344. package/es/components/accordion/AccordionContext.d.ts +4 -0
  345. package/es/components/accordion/AccordionContext.js.map +1 -1
  346. package/es/components/accordion/AccordionDocs.js +6 -1
  347. package/es/components/accordion/AccordionDocs.js.map +1 -1
  348. package/es/components/accordion/AccordionGroup.js +5 -3
  349. package/es/components/accordion/AccordionGroup.js.map +1 -1
  350. package/es/components/accordion/AccordionProviderContext.d.ts +4 -0
  351. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  352. package/es/components/accordion/AccordionStore.js +2 -1
  353. package/es/components/accordion/AccordionStore.js.map +1 -1
  354. package/es/components/accordion/style/dnb-accordion.css +3 -3
  355. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  356. package/es/components/autocomplete/style/dnb-autocomplete.css +1 -1
  357. package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  358. package/es/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  359. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  360. package/es/components/button/Button.d.ts +1 -1
  361. package/es/components/button/Button.js +5 -2
  362. package/es/components/button/Button.js.map +1 -1
  363. package/es/components/card/style/dnb-card.css +1 -1
  364. package/es/components/card/style/dnb-card.min.css +1 -1
  365. package/es/components/copy-on-click/CopyOnClick.d.ts +1 -1
  366. package/es/components/copy-on-click/CopyOnClick.js +5 -4
  367. package/es/components/copy-on-click/CopyOnClick.js.map +1 -1
  368. package/es/components/copy-on-click/CopyOnClickDocs.js +5 -0
  369. package/es/components/copy-on-click/CopyOnClickDocs.js.map +1 -1
  370. package/es/components/copy-on-click/types.d.ts +5 -0
  371. package/es/components/copy-on-click/types.js.map +1 -1
  372. package/es/components/drawer/style/dnb-drawer.css +3 -3
  373. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  374. package/es/components/dropdown/style/dnb-dropdown.css +1 -1
  375. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  376. package/es/components/flex/Container.js +10 -2
  377. package/es/components/flex/Container.js.map +1 -1
  378. package/es/components/flex/utils.d.ts +1 -1
  379. package/es/components/flex/utils.js +1 -1
  380. package/es/components/flex/utils.js.map +1 -1
  381. package/es/components/form-row/style/dnb-form-row.css +1 -1
  382. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  383. package/es/components/grid/style/dnb-grid.css +6 -6
  384. package/es/components/grid/style/dnb-grid.min.css +1 -1
  385. package/es/components/lib.d.ts +1 -1
  386. package/es/components/progress-indicator/ProgressIndicator.js +2 -2
  387. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  388. package/es/components/section/style/dnb-section.css +2 -2
  389. package/es/components/section/style/dnb-section.min.css +2 -2
  390. package/es/components/space/style/dnb-space.css +2 -2
  391. package/es/components/space/style/dnb-space.min.css +1 -1
  392. package/es/components/tabs/Tabs.js +2 -2
  393. package/es/components/tabs/Tabs.js.map +1 -1
  394. package/es/components/tag/Tag.js +2 -2
  395. package/es/components/tag/Tag.js.map +1 -1
  396. package/es/components/toggle-button/style/dnb-toggle-button.css +1 -1
  397. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  398. package/es/extensions/forms/DataContext/Context.d.ts +9 -5
  399. package/es/extensions/forms/DataContext/Context.js +0 -1
  400. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  401. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +3 -2
  402. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  403. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.d.ts +8 -3
  404. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +13 -5
  405. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  406. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +6 -2
  407. package/es/extensions/forms/DataContext/Provider/Provider.js +36 -16
  408. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  409. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  410. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  411. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +21 -12
  412. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  413. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.d.ts +2 -0
  414. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +13 -0
  415. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -0
  416. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +1 -1
  417. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  418. package/es/extensions/forms/Field/Slider/Slider.js +7 -7
  419. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
  420. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -2
  421. package/es/extensions/forms/FieldBlock/FieldBlock.js +33 -11
  422. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  423. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  424. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  425. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  426. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  427. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  428. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  429. package/es/extensions/forms/Form/Isolation/Isolation.js +2 -3
  430. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  431. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  432. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  433. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js +22 -2
  434. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  435. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +17 -11
  436. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  437. package/es/extensions/forms/Form/Section/Section.d.ts +7 -2
  438. package/es/extensions/forms/Form/Section/Section.js +3 -1
  439. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  440. package/es/extensions/forms/Form/Section/SectionDocs.js +6 -1
  441. package/es/extensions/forms/Form/Section/SectionDocs.js.map +1 -1
  442. package/es/extensions/forms/Form/Section/containers/SectionContainer.d.ts +3 -1
  443. package/es/extensions/forms/Form/Section/containers/SectionContainer.js +22 -20
  444. package/es/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  445. package/es/extensions/forms/Form/Section/containers/SectionContainerContext.d.ts +2 -0
  446. package/es/extensions/forms/Form/Section/containers/SectionContainerContext.js.map +1 -1
  447. package/es/extensions/forms/Form/Section/containers/SectionContainerProvider.d.ts +1 -0
  448. package/es/extensions/forms/Form/Section/containers/SectionContainerProvider.js +4 -1
  449. package/es/extensions/forms/Form/Section/containers/SectionContainerProvider.js.map +1 -1
  450. package/es/extensions/forms/Form/Section/style/dnb-form-section.css +3 -0
  451. package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  452. package/es/extensions/forms/Form/Section/style/dnb-form-section.scss +4 -0
  453. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +9 -5
  454. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
  455. package/es/extensions/forms/Iterate/Array/Array.js +71 -29
  456. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  457. package/es/extensions/forms/Iterate/Array/ArrayDocs.js +9 -0
  458. package/es/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  459. package/es/extensions/forms/Iterate/{AnimatedContainer/ElementBlock.d.ts → Array/ArrayItemArea.d.ts} +6 -6
  460. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +137 -0
  461. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -0
  462. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +6 -0
  463. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.js +6 -0
  464. package/es/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -0
  465. package/es/extensions/forms/Iterate/Array/types.d.ts +7 -5
  466. package/es/extensions/forms/Iterate/Array/types.js.map +1 -1
  467. package/es/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +9 -0
  468. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +87 -0
  469. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -0
  470. package/es/extensions/forms/Iterate/EditContainer/DoneButton.d.ts +4 -0
  471. package/es/extensions/forms/Iterate/EditContainer/DoneButton.js +67 -0
  472. package/es/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -0
  473. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +8 -2
  474. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +32 -11
  475. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  476. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  477. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  478. package/es/extensions/forms/Iterate/EditContainer/index.d.ts +2 -0
  479. package/es/extensions/forms/Iterate/EditContainer/index.js +2 -0
  480. package/es/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  481. package/es/extensions/forms/Iterate/IterateItemContext.d.ts +7 -1
  482. package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  483. package/es/extensions/forms/Iterate/PushButton/PushButton.d.ts +7 -2
  484. package/es/extensions/forms/Iterate/PushButton/PushButton.js +23 -12
  485. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  486. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +5 -1
  487. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +78 -23
  488. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  489. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +5 -0
  490. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  491. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +9 -9
  492. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  493. package/es/extensions/forms/Iterate/Toolbar/Toolbar.d.ts +10 -2
  494. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +51 -7
  495. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  496. package/es/extensions/forms/Iterate/Toolbar/ToolbarContext.d.ts +6 -0
  497. package/es/extensions/forms/Iterate/Toolbar/ToolbarContext.js +4 -0
  498. package/es/extensions/forms/Iterate/Toolbar/ToolbarContext.js.map +1 -0
  499. package/es/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -0
  500. package/{extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js → es/extensions/forms/Iterate/ViewContainer/EditButton.js} +8 -11
  501. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -0
  502. package/es/extensions/forms/Iterate/ViewContainer/RemoveButton.d.ts +1 -0
  503. package/es/extensions/forms/Iterate/ViewContainer/RemoveButton.js +12 -0
  504. package/es/extensions/forms/Iterate/ViewContainer/RemoveButton.js.map +1 -0
  505. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +8 -2
  506. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +24 -9
  507. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  508. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  509. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  510. package/es/extensions/forms/Iterate/ViewContainer/index.d.ts +2 -0
  511. package/es/extensions/forms/Iterate/ViewContainer/index.js +2 -0
  512. package/es/extensions/forms/Iterate/ViewContainer/index.js.map +1 -1
  513. package/es/extensions/forms/Iterate/hooks/index.d.ts +2 -0
  514. package/es/extensions/forms/Iterate/hooks/index.js +3 -0
  515. package/es/extensions/forms/Iterate/hooks/index.js.map +1 -0
  516. package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +17 -0
  517. package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +85 -0
  518. package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -0
  519. package/es/extensions/forms/Tools/Log.d.ts +6 -0
  520. package/es/extensions/forms/Tools/Log.js +22 -0
  521. package/es/extensions/forms/Tools/Log.js.map +1 -0
  522. package/es/extensions/forms/Tools/index.d.ts +1 -0
  523. package/es/extensions/forms/Tools/index.js +1 -0
  524. package/es/extensions/forms/Tools/index.js.map +1 -1
  525. package/es/extensions/forms/Value/Date/Date.d.ts +1 -1
  526. package/es/extensions/forms/Value/Date/Date.js +15 -5
  527. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  528. package/es/extensions/forms/Value/Date/DateDocs.js +1 -1
  529. package/es/extensions/forms/Value/Date/DateDocs.js.map +1 -1
  530. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  531. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  532. package/es/extensions/forms/Wizard/Container/WizardContainer.js +18 -7
  533. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  534. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  535. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  536. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +3 -1
  537. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  538. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -2
  539. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  540. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +0 -2
  541. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  542. package/es/extensions/forms/constants/countries.d.ts +5 -2
  543. package/es/extensions/forms/constants/countries.js +81 -25
  544. package/es/extensions/forms/constants/countries.js.map +1 -1
  545. package/es/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  546. package/es/extensions/forms/constants/locales/en-GB.js +3 -2
  547. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  548. package/es/extensions/forms/constants/locales/en-US.d.ts +2 -1
  549. package/es/extensions/forms/constants/locales/index.d.ts +4 -2
  550. package/es/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  551. package/es/extensions/forms/constants/locales/nb-NO.js +3 -2
  552. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  553. package/es/extensions/forms/hooks/DataValueDocs.js +10 -5
  554. package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  555. package/es/extensions/forms/hooks/useDataValue.d.ts +2 -1
  556. package/es/extensions/forms/hooks/useDataValue.js +7 -7
  557. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  558. package/es/extensions/forms/hooks/useExternalValue.js +8 -6
  559. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  560. package/es/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  561. package/es/extensions/forms/hooks/useFieldProps.js +309 -119
  562. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  563. package/es/extensions/forms/hooks/usePath.d.ts +1 -0
  564. package/es/extensions/forms/hooks/usePath.js +5 -1
  565. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  566. package/es/extensions/forms/style/dnb-forms.css +13 -10
  567. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  568. package/es/extensions/forms/types.d.ts +32 -2
  569. package/es/extensions/forms/types.js.map +1 -1
  570. package/es/shared/Eufemia.d.ts +1 -1
  571. package/es/shared/Eufemia.js +2 -2
  572. package/es/shared/Eufemia.js.map +1 -1
  573. package/es/style/core/scopes.scss +1 -1
  574. package/es/style/core/utilities.scss +3 -6
  575. package/es/style/dnb-ui-basis.css +1 -1
  576. package/es/style/dnb-ui-basis.min.css +1 -1
  577. package/es/style/dnb-ui-body.css +1 -1
  578. package/es/style/dnb-ui-body.min.css +1 -1
  579. package/es/style/dnb-ui-components.css +37 -34
  580. package/es/style/dnb-ui-components.min.css +5 -5
  581. package/es/style/dnb-ui-core.css +1 -1
  582. package/es/style/dnb-ui-core.min.css +1 -1
  583. package/es/style/dnb-ui-elements.css +1 -1
  584. package/es/style/dnb-ui-elements.min.css +1 -1
  585. package/es/style/dnb-ui-extensions.css +13 -10
  586. package/es/style/dnb-ui-extensions.min.css +1 -1
  587. package/es/style/dnb-ui-forms.css +13 -10
  588. package/es/style/dnb-ui-forms.min.css +1 -1
  589. package/es/style/dnb-ui-fragments.css +2 -2
  590. package/es/style/dnb-ui-fragments.min.css +1 -1
  591. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  592. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  593. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +51 -45
  594. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  595. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  596. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  597. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -10
  598. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  599. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +13 -10
  600. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  601. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  602. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  603. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +51 -45
  604. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  605. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  606. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  607. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -10
  608. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  609. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +13 -10
  610. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  611. package/es/style/themes/theme-ui/ui-theme-basis.css +1 -1
  612. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  613. package/es/style/themes/theme-ui/ui-theme-components.css +51 -45
  614. package/es/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  615. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
  616. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  617. package/es/style/themes/theme-ui/ui-theme-extensions.css +13 -10
  618. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  619. package/es/style/themes/theme-ui/ui-theme-forms.css +13 -10
  620. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  621. package/es/style/themes/theme-ui/ui-theme-tags.css +1 -1
  622. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  623. package/esm/dnb-ui-basis.min.mjs +1 -1
  624. package/esm/dnb-ui-components.min.mjs +1 -1
  625. package/esm/dnb-ui-elements.min.mjs +1 -1
  626. package/esm/dnb-ui-extensions.min.mjs +5 -5
  627. package/esm/dnb-ui-lib.min.mjs +1 -1
  628. package/extensions/forms/DataContext/Context.d.ts +9 -5
  629. package/extensions/forms/DataContext/Context.js +0 -1
  630. package/extensions/forms/DataContext/Context.js.map +1 -1
  631. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +3 -2
  632. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  633. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.d.ts +8 -3
  634. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +12 -5
  635. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  636. package/extensions/forms/DataContext/Provider/Provider.d.ts +6 -2
  637. package/extensions/forms/DataContext/Provider/Provider.js +36 -16
  638. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  639. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  640. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  641. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +21 -12
  642. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  643. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.d.ts +2 -0
  644. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +13 -0
  645. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -0
  646. package/extensions/forms/Field/SelectCountry/SelectCountry.js +1 -1
  647. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  648. package/extensions/forms/Field/Slider/Slider.js +7 -7
  649. package/extensions/forms/Field/Slider/Slider.js.map +1 -1
  650. package/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -2
  651. package/extensions/forms/FieldBlock/FieldBlock.js +33 -11
  652. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  653. package/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  654. package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  655. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  656. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  657. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  658. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  659. package/extensions/forms/Form/Isolation/Isolation.js +2 -3
  660. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  661. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  662. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  663. package/extensions/forms/Form/Section/EditContainer/EditContainer.js +22 -2
  664. package/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  665. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +17 -11
  666. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  667. package/extensions/forms/Form/Section/Section.d.ts +7 -2
  668. package/extensions/forms/Form/Section/Section.js +3 -1
  669. package/extensions/forms/Form/Section/Section.js.map +1 -1
  670. package/extensions/forms/Form/Section/SectionDocs.js +6 -1
  671. package/extensions/forms/Form/Section/SectionDocs.js.map +1 -1
  672. package/extensions/forms/Form/Section/containers/SectionContainer.d.ts +3 -1
  673. package/extensions/forms/Form/Section/containers/SectionContainer.js +22 -20
  674. package/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  675. package/extensions/forms/Form/Section/containers/SectionContainerContext.d.ts +2 -0
  676. package/extensions/forms/Form/Section/containers/SectionContainerContext.js.map +1 -1
  677. package/extensions/forms/Form/Section/containers/SectionContainerProvider.d.ts +1 -0
  678. package/extensions/forms/Form/Section/containers/SectionContainerProvider.js +4 -1
  679. package/extensions/forms/Form/Section/containers/SectionContainerProvider.js.map +1 -1
  680. package/extensions/forms/Form/Section/style/dnb-form-section.css +3 -0
  681. package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  682. package/extensions/forms/Form/Section/style/dnb-form-section.scss +4 -0
  683. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +9 -5
  684. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
  685. package/extensions/forms/Iterate/Array/Array.js +72 -29
  686. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  687. package/extensions/forms/Iterate/Array/ArrayDocs.js +9 -0
  688. package/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  689. package/extensions/forms/Iterate/{AnimatedContainer/ElementBlock.d.ts → Array/ArrayItemArea.d.ts} +6 -6
  690. package/extensions/forms/Iterate/Array/ArrayItemArea.js +137 -0
  691. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -0
  692. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.d.ts +6 -0
  693. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.js +6 -0
  694. package/extensions/forms/Iterate/Array/ArrayItemAreaContext.js.map +1 -0
  695. package/extensions/forms/Iterate/Array/types.d.ts +7 -5
  696. package/extensions/forms/Iterate/Array/types.js.map +1 -1
  697. package/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +9 -0
  698. package/extensions/forms/Iterate/EditContainer/CancelButton.js +88 -0
  699. package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -0
  700. package/extensions/forms/Iterate/EditContainer/DoneButton.d.ts +4 -0
  701. package/extensions/forms/Iterate/EditContainer/DoneButton.js +67 -0
  702. package/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -0
  703. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +8 -2
  704. package/extensions/forms/Iterate/EditContainer/EditContainer.js +32 -11
  705. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  706. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  707. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  708. package/extensions/forms/Iterate/EditContainer/index.d.ts +2 -0
  709. package/extensions/forms/Iterate/EditContainer/index.js +2 -0
  710. package/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  711. package/extensions/forms/Iterate/IterateItemContext.d.ts +7 -1
  712. package/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  713. package/extensions/forms/Iterate/PushButton/PushButton.d.ts +7 -2
  714. package/extensions/forms/Iterate/PushButton/PushButton.js +23 -12
  715. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  716. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +5 -1
  717. package/extensions/forms/Iterate/PushContainer/PushContainer.js +80 -26
  718. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  719. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +5 -0
  720. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  721. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +9 -9
  722. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  723. package/extensions/forms/Iterate/Toolbar/Toolbar.d.ts +10 -2
  724. package/extensions/forms/Iterate/Toolbar/Toolbar.js +52 -7
  725. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  726. package/extensions/forms/Iterate/Toolbar/ToolbarContext.d.ts +6 -0
  727. package/extensions/forms/Iterate/Toolbar/ToolbarContext.js +4 -0
  728. package/extensions/forms/Iterate/Toolbar/ToolbarContext.js.map +1 -0
  729. package/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -0
  730. package/{es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js → extensions/forms/Iterate/ViewContainer/EditButton.js} +8 -11
  731. package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -0
  732. package/extensions/forms/Iterate/ViewContainer/RemoveButton.d.ts +1 -0
  733. package/extensions/forms/Iterate/ViewContainer/RemoveButton.js +12 -0
  734. package/extensions/forms/Iterate/ViewContainer/RemoveButton.js.map +1 -0
  735. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +8 -2
  736. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +24 -9
  737. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  738. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  739. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  740. package/extensions/forms/Iterate/ViewContainer/index.d.ts +2 -0
  741. package/extensions/forms/Iterate/ViewContainer/index.js +2 -0
  742. package/extensions/forms/Iterate/ViewContainer/index.js.map +1 -1
  743. package/extensions/forms/Iterate/hooks/index.d.ts +2 -0
  744. package/extensions/forms/Iterate/hooks/index.js +3 -0
  745. package/extensions/forms/Iterate/hooks/index.js.map +1 -0
  746. package/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +17 -0
  747. package/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +87 -0
  748. package/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -0
  749. package/extensions/forms/Tools/Log.d.ts +6 -0
  750. package/extensions/forms/Tools/Log.js +22 -0
  751. package/extensions/forms/Tools/Log.js.map +1 -0
  752. package/extensions/forms/Tools/index.d.ts +1 -0
  753. package/extensions/forms/Tools/index.js +1 -0
  754. package/extensions/forms/Tools/index.js.map +1 -1
  755. package/extensions/forms/Value/Date/Date.d.ts +1 -1
  756. package/extensions/forms/Value/Date/Date.js +15 -5
  757. package/extensions/forms/Value/Date/Date.js.map +1 -1
  758. package/extensions/forms/Value/Date/DateDocs.js +1 -1
  759. package/extensions/forms/Value/Date/DateDocs.js.map +1 -1
  760. package/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  761. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  762. package/extensions/forms/Wizard/Container/WizardContainer.js +19 -7
  763. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  764. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  765. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  766. package/extensions/forms/Wizard/Context/WizardContext.d.ts +3 -1
  767. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  768. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -2
  769. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  770. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +0 -2
  771. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  772. package/extensions/forms/constants/countries.d.ts +5 -2
  773. package/extensions/forms/constants/countries.js +81 -25
  774. package/extensions/forms/constants/countries.js.map +1 -1
  775. package/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  776. package/extensions/forms/constants/locales/en-GB.js +3 -2
  777. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  778. package/extensions/forms/constants/locales/en-US.d.ts +2 -1
  779. package/extensions/forms/constants/locales/index.d.ts +4 -2
  780. package/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  781. package/extensions/forms/constants/locales/nb-NO.js +3 -2
  782. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  783. package/extensions/forms/hooks/DataValueDocs.js +10 -5
  784. package/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  785. package/extensions/forms/hooks/useDataValue.d.ts +2 -1
  786. package/extensions/forms/hooks/useDataValue.js +7 -7
  787. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  788. package/extensions/forms/hooks/useExternalValue.js +8 -6
  789. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  790. package/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  791. package/extensions/forms/hooks/useFieldProps.js +318 -122
  792. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  793. package/extensions/forms/hooks/usePath.d.ts +1 -0
  794. package/extensions/forms/hooks/usePath.js +5 -1
  795. package/extensions/forms/hooks/usePath.js.map +1 -1
  796. package/extensions/forms/style/dnb-forms.css +13 -10
  797. package/extensions/forms/style/dnb-forms.min.css +1 -1
  798. package/extensions/forms/types.d.ts +32 -2
  799. package/extensions/forms/types.js.map +1 -1
  800. package/package.json +1 -1
  801. package/shared/Eufemia.d.ts +1 -1
  802. package/shared/Eufemia.js +2 -2
  803. package/shared/Eufemia.js.map +1 -1
  804. package/style/core/scopes.scss +1 -1
  805. package/style/core/utilities.scss +3 -6
  806. package/style/dnb-ui-basis.css +1 -1
  807. package/style/dnb-ui-basis.min.css +1 -1
  808. package/style/dnb-ui-body.css +1 -1
  809. package/style/dnb-ui-body.min.css +1 -1
  810. package/style/dnb-ui-components.css +37 -34
  811. package/style/dnb-ui-components.min.css +5 -5
  812. package/style/dnb-ui-core.css +1 -1
  813. package/style/dnb-ui-core.min.css +1 -1
  814. package/style/dnb-ui-elements.css +1 -1
  815. package/style/dnb-ui-elements.min.css +1 -1
  816. package/style/dnb-ui-extensions.css +13 -10
  817. package/style/dnb-ui-extensions.min.css +1 -1
  818. package/style/dnb-ui-forms.css +13 -10
  819. package/style/dnb-ui-forms.min.css +1 -1
  820. package/style/dnb-ui-fragments.css +2 -2
  821. package/style/dnb-ui-fragments.min.css +1 -1
  822. package/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  823. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  824. package/style/themes/theme-eiendom/eiendom-theme-components.css +51 -45
  825. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  826. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  827. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  828. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -10
  829. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  830. package/style/themes/theme-eiendom/eiendom-theme-forms.css +13 -10
  831. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  832. package/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  833. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  834. package/style/themes/theme-sbanken/sbanken-theme-components.css +51 -45
  835. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  836. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  837. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  838. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -10
  839. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  840. package/style/themes/theme-sbanken/sbanken-theme-forms.css +13 -10
  841. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  842. package/style/themes/theme-ui/ui-theme-basis.css +1 -1
  843. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  844. package/style/themes/theme-ui/ui-theme-components.css +51 -45
  845. package/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  846. package/style/themes/theme-ui/ui-theme-elements.css +1 -1
  847. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  848. package/style/themes/theme-ui/ui-theme-extensions.css +13 -10
  849. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  850. package/style/themes/theme-ui/ui-theme-forms.css +13 -10
  851. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  852. package/style/themes/theme-ui/ui-theme-tags.css +1 -1
  853. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  854. package/umd/dnb-ui-basis.min.js +1 -1
  855. package/umd/dnb-ui-components.min.js +1 -1
  856. package/umd/dnb-ui-elements.min.js +1 -1
  857. package/umd/dnb-ui-extensions.min.js +5 -5
  858. package/umd/dnb-ui-lib.min.js +1 -1
  859. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +0 -1
  860. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.d.ts +0 -6
  861. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.js.map +0 -1
  862. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.d.ts +0 -6
  863. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +0 -1
  864. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.d.ts +0 -1
  865. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +0 -1
  866. package/cjs/shared/helpers/useUnmountEffect.d.ts +0 -4
  867. package/cjs/shared/helpers/useUnmountEffect.js +0 -14
  868. package/cjs/shared/helpers/useUnmountEffect.js.map +0 -1
  869. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +0 -120
  870. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +0 -1
  871. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.d.ts +0 -6
  872. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.js +0 -6
  873. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.js.map +0 -1
  874. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.d.ts +0 -6
  875. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +0 -113
  876. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +0 -1
  877. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.d.ts +0 -1
  878. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +0 -1
  879. package/es/shared/helpers/useUnmountEffect.d.ts +0 -4
  880. package/es/shared/helpers/useUnmountEffect.js +0 -9
  881. package/es/shared/helpers/useUnmountEffect.js.map +0 -1
  882. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +0 -120
  883. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +0 -1
  884. package/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.d.ts +0 -6
  885. package/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.js +0 -6
  886. package/extensions/forms/Iterate/AnimatedContainer/ElementBlockContext.js.map +0 -1
  887. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.d.ts +0 -6
  888. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +0 -114
  889. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +0 -1
  890. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.d.ts +0 -1
  891. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +0 -1
  892. package/shared/helpers/useUnmountEffect.d.ts +0 -4
  893. package/shared/helpers/useUnmountEffect.js +0 -9
  894. package/shared/helpers/useUnmountEffect.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ViewContainer.js","names":["React","useContext","useMemo","classnames","convertJsxToString","Flex","Lead","ElementBlock","IterateItemContext","Toolbar","ViewToolbarTools","ViewContainer","props","_ref","children","className","title","toolbar","restProps","_objectWithoutProperties","_excluded","iterateItemContext","itemTitle","ariaLabel","includes","replace","index","createElement","_extends","mode","Stack","size","_Toolbar","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainer.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport { Flex } from '../../../../components'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { Lead } from '../../../../elements'\nimport ElementBlock, {\n ElementSectionProps,\n} from '../AnimatedContainer/ElementBlock'\nimport IterateItemContext from '../IterateItemContext'\nimport Toolbar from '../Toolbar'\nimport ViewToolbarTools from './ViewToolbarTools'\n\nexport type Props = {\n /**\n * The title of the ViewContainer.\n */\n title?: React.ReactNode\n /**\n * An alternative toolbar to be shown in the ViewContainer.\n */\n toolbar?: React.ReactNode\n}\n\nexport type AllProps = Props & FlexContainerProps & ElementSectionProps\n\nfunction ViewContainer(props: AllProps) {\n const { children, className, title, toolbar, ...restProps } = props || {}\n const iterateItemContext = useContext(IterateItemContext)\n\n let itemTitle = title\n let ariaLabel = useMemo(() => convertJsxToString(itemTitle), [itemTitle])\n if (ariaLabel.includes('{itemNr}')) {\n itemTitle = ariaLabel = ariaLabel.replace(\n '{itemNr}',\n iterateItemContext.index + 1\n )\n }\n\n return (\n <ElementBlock\n mode=\"view\"\n ariaLabel={ariaLabel}\n className={classnames('dnb-forms-section-view-block', className)}\n {...restProps}\n >\n <Flex.Stack>\n {itemTitle && <Lead size=\"basis\">{itemTitle}</Lead>}\n {children}\n {toolbar ?? (\n <Toolbar>\n <ViewToolbarTools />\n </Toolbar>\n )}\n </Flex.Stack>\n </ElementBlock>\n )\n}\n\nViewContainer._supportsSpacingProps = true\nexport default ViewContainer\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,kBAAkB,QAAQ,qCAAqC;AACxE,SAASC,IAAI,QAAQ,wBAAwB;AAE7C,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,OAAOC,YAAY,MAEZ,mCAAmC;AAC1C,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,OAAO,MAAM,YAAY;AAChC,OAAOC,gBAAgB,MAAM,oBAAoB;AAejD,SAASC,aAAaA,CAACC,KAAe,EAAE;EACtC,MAAAC,IAAA,GAA8DD,KAAK,IAAI,CAAC,CAAC;IAAnE;MAAEE,QAAQ;MAAEC,SAAS;MAAEC,KAAK;MAAEC;IAAsB,CAAC,GAAAJ,IAAA;IAAXK,SAAS,GAAAC,wBAAA,CAAAN,IAAA,EAAAO,SAAA;EACzD,MAAMC,kBAAkB,GAAGpB,UAAU,CAACO,kBAAkB,CAAC;EAEzD,IAAIc,SAAS,GAAGN,KAAK;EACrB,IAAIO,SAAS,GAAGrB,OAAO,CAAC,MAAME,kBAAkB,CAACkB,SAAS,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EACzE,IAAIC,SAAS,CAACC,QAAQ,CAAC,UAAU,CAAC,EAAE;IAClCF,SAAS,GAAGC,SAAS,GAAGA,SAAS,CAACE,OAAO,CACvC,UAAU,EACVJ,kBAAkB,CAACK,KAAK,GAAG,CAC7B,CAAC;EACH;EAEA,OACE1B,KAAA,CAAA2B,aAAA,CAACpB,YAAY,EAAAqB,QAAA;IACXC,IAAI,EAAC,MAAM;IACXN,SAAS,EAAEA,SAAU;IACrBR,SAAS,EAAEZ,UAAU,CAAC,8BAA8B,EAAEY,SAAS;EAAE,GAC7DG,SAAS,GAEblB,KAAA,CAAA2B,aAAA,CAACtB,IAAI,CAACyB,KAAK,QACRR,SAAS,IAAItB,KAAA,CAAA2B,aAAA,CAACrB,IAAI;IAACyB,IAAI,EAAC;EAAO,GAAET,SAAgB,CAAC,EAClDR,QAAQ,EACRG,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAAe,QAAA,KAAAA,QAAA,GACNhC,KAAA,CAAA2B,aAAA,CAAClB,OAAO,QACNT,KAAA,CAAA2B,aAAA,CAACjB,gBAAgB,MAAE,CACZ,CAAC,CAEF,CACA,CAAC;AAEnB;AAEAC,aAAa,CAACsB,qBAAqB,GAAG,IAAI;AAC1C,eAAetB,aAAa"}
1
+ {"version":3,"file":"ViewContainer.js","names":["React","useContext","useMemo","classnames","convertJsxToString","Flex","Lead","ArrayItemArea","IterateItemContext","Toolbar","EditButton","RemoveButton","ViewContainer","props","_toolbarElement","_ref","children","className","title","toolbar","toolbarVariant","restProps","_objectWithoutProperties","_excluded","index","arrayValue","itemTitle","ariaLabel","includes","replace","toolbarElement","length","_Toolbar","createElement","hasToolbar","Children","toArray","some","child","_extends","mode","Stack","size","_Toolbar2","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainer.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport { Flex } from '../../../../components'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { Lead } from '../../../../elements'\nimport ArrayItemArea, { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport IterateItemContext from '../IterateItemContext'\nimport Toolbar from '../Toolbar'\nimport EditButton from './EditButton'\nimport RemoveButton from './RemoveButton'\n\nexport type Props = {\n /**\n * The title of the ViewContainer.\n */\n title?: React.ReactNode\n /**\n * An alternative toolbar to be shown in the ViewContainer.\n */\n toolbar?: React.ReactNode\n /**\n * The variant of the toolbar.\n */\n toolbarVariant?: 'minimumOneItem'\n}\n\nexport type AllProps = Props & FlexContainerProps & ArrayItemAreaProps\n\nfunction ViewContainer(props: AllProps) {\n const {\n children,\n className,\n title,\n toolbar,\n toolbarVariant,\n ...restProps\n } = props || {}\n const { index, arrayValue } = useContext(IterateItemContext)\n\n let itemTitle = title\n let ariaLabel = useMemo(() => convertJsxToString(itemTitle), [itemTitle])\n if (ariaLabel.includes('{itemNr}')) {\n itemTitle = ariaLabel = ariaLabel.replace('{itemNr}', index + 1)\n }\n\n let toolbarElement = toolbar\n if (toolbarVariant === 'minimumOneItem' && arrayValue.length <= 1) {\n toolbarElement = (\n <Toolbar>\n <EditButton />\n </Toolbar>\n )\n }\n\n const hasToolbar =\n !toolbarElement &&\n React.Children.toArray(children).some((child) => {\n return child?.['type'] === Toolbar\n })\n\n return (\n <ArrayItemArea\n mode=\"view\"\n ariaLabel={ariaLabel}\n className={classnames('dnb-forms-section-view-block', className)}\n {...restProps}\n >\n <Flex.Stack>\n {itemTitle && <Lead size=\"basis\">{itemTitle}</Lead>}\n {children}\n {hasToolbar\n ? null\n : toolbarElement ?? (\n <Toolbar>\n <EditButton />\n <RemoveButton />\n </Toolbar>\n )}\n </Flex.Stack>\n </ArrayItemArea>\n )\n}\n\nViewContainer.EditButton = EditButton\nViewContainer.RemoveButton = RemoveButton\n\nViewContainer._supportsSpacingProps = true\nexport default ViewContainer\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,kBAAkB,QAAQ,qCAAqC;AACxE,SAASC,IAAI,QAAQ,wBAAwB;AAE7C,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,OAAOC,aAAa,MAA8B,wBAAwB;AAC1E,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,OAAO,MAAM,YAAY;AAChC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,YAAY,MAAM,gBAAgB;AAmBzC,SAASC,aAAaA,CAACC,KAAe,EAAE;EAAA,IAAAC,eAAA;EACtC,MAAAC,IAAA,GAOIF,KAAK,IAAI,CAAC,CAAC;IAPT;MACJG,QAAQ;MACRC,SAAS;MACTC,KAAK;MACLC,OAAO;MACPC;IAEF,CAAC,GAAAL,IAAA;IADIM,SAAS,GAAAC,wBAAA,CAAAP,IAAA,EAAAQ,SAAA;EAEd,MAAM;IAAEC,KAAK;IAAEC;EAAW,CAAC,GAAGxB,UAAU,CAACO,kBAAkB,CAAC;EAE5D,IAAIkB,SAAS,GAAGR,KAAK;EACrB,IAAIS,SAAS,GAAGzB,OAAO,CAAC,MAAME,kBAAkB,CAACsB,SAAS,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EACzE,IAAIC,SAAS,CAACC,QAAQ,CAAC,UAAU,CAAC,EAAE;IAClCF,SAAS,GAAGC,SAAS,GAAGA,SAAS,CAACE,OAAO,CAAC,UAAU,EAAEL,KAAK,GAAG,CAAC,CAAC;EAClE;EAEA,IAAIM,cAAc,GAAGX,OAAO;EAC5B,IAAIC,cAAc,KAAK,gBAAgB,IAAIK,UAAU,CAACM,MAAM,IAAI,CAAC,EAAE;IACjED,cAAc,GAAAE,QAAA,KAAAA,QAAA,GACZhC,KAAA,CAAAiC,aAAA,CAACxB,OAAO,QACNT,KAAA,CAAAiC,aAAA,CAACvB,UAAU,MAAE,CACN,CAAC,CACX;EACH;EAEA,MAAMwB,UAAU,GACd,CAACJ,cAAc,IACf9B,KAAK,CAACmC,QAAQ,CAACC,OAAO,CAACpB,QAAQ,CAAC,CAACqB,IAAI,CAAEC,KAAK,IAAK;IAC/C,OAAO,CAAAA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAG,MAAM,CAAC,MAAK7B,OAAO;EACpC,CAAC,CAAC;EAEJ,OACET,KAAA,CAAAiC,aAAA,CAAC1B,aAAa,EAAAgC,QAAA;IACZC,IAAI,EAAC,MAAM;IACXb,SAAS,EAAEA,SAAU;IACrBV,SAAS,EAAEd,UAAU,CAAC,8BAA8B,EAAEc,SAAS;EAAE,GAC7DI,SAAS,GAEbrB,KAAA,CAAAiC,aAAA,CAAC5B,IAAI,CAACoC,KAAK,QACRf,SAAS,IAAI1B,KAAA,CAAAiC,aAAA,CAAC3B,IAAI;IAACoC,IAAI,EAAC;EAAO,GAAEhB,SAAgB,CAAC,EAClDV,QAAQ,EACRkB,UAAU,GACP,IAAI,IAAApB,eAAA,GACJgB,cAAc,cAAAhB,eAAA,cAAAA,eAAA,GAAA6B,SAAA,KAAAA,SAAA,GACZ3C,KAAA,CAAAiC,aAAA,CAACxB,OAAO,QACNT,KAAA,CAAAiC,aAAA,CAACvB,UAAU,MAAE,CAAC,EACdV,KAAA,CAAAiC,aAAA,CAACtB,YAAY,MAAE,CACR,CAAC,CAEN,CACC,CAAC;AAEpB;AAEAC,aAAa,CAACF,UAAU,GAAGA,UAAU;AACrCE,aAAa,CAACD,YAAY,GAAGA,YAAY;AAEzCC,aAAa,CAACgC,qBAAqB,GAAG,IAAI;AAC1C,eAAehC,aAAa"}
@@ -14,6 +14,11 @@ export const ViewContainerProperties = {
14
14
  type: 'React.Node',
15
15
  status: 'optional'
16
16
  },
17
+ toolbarVariant: {
18
+ doc: 'Use variants to render the toolbar differently. Currently there is only the `minimumOneItem` variant. See the info section for more info.',
19
+ type: 'string',
20
+ status: 'optional'
21
+ },
17
22
  '[FlexVertical](/uilib/layout/flex/container/)': {
18
23
  doc: 'All Flex.Vertical properties.',
19
24
  type: 'Various',
@@ -1 +1 @@
1
- {"version":3,"file":"ViewContainerDocs.js","names":["ViewContainerProperties","title","doc","type","status","variant","toolbar","ViewContainerEvents"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const ViewContainerProperties: PropertiesTableProps = {\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'An alternative toolbar to be shown in the container.',\n type: 'React.Node',\n status: 'optional',\n },\n '[FlexVertical](/uilib/layout/flex/container/)': {\n doc: 'All Flex.Vertical properties.',\n type: 'Various',\n status: 'optional',\n },\n}\n\nexport const ViewContainerEvents: PropertiesTableProps = {}\n"],"mappings":"AAEA,OAAO,MAAMA,uBAA6C,GAAG;EAC3DC,KAAK,EAAE;IACLC,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDC,OAAO,EAAE;IACPH,GAAG,EAAE,2FAA2F;IAChGC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,OAAO,EAAE;IACPJ,GAAG,EAAE,sDAAsD;IAC3DC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACD,+CAA+C,EAAE;IAC/CF,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMG,mBAAyC,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"ViewContainerDocs.js","names":["ViewContainerProperties","title","doc","type","status","variant","toolbar","toolbarVariant","ViewContainerEvents"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const ViewContainerProperties: PropertiesTableProps = {\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'An alternative toolbar to be shown in the container.',\n type: 'React.Node',\n status: 'optional',\n },\n toolbarVariant: {\n doc: 'Use variants to render the toolbar differently. Currently there is only the `minimumOneItem` variant. See the info section for more info.',\n type: 'string',\n status: 'optional',\n },\n '[FlexVertical](/uilib/layout/flex/container/)': {\n doc: 'All Flex.Vertical properties.',\n type: 'Various',\n status: 'optional',\n },\n}\n\nexport const ViewContainerEvents: PropertiesTableProps = {}\n"],"mappings":"AAEA,OAAO,MAAMA,uBAA6C,GAAG;EAC3DC,KAAK,EAAE;IACLC,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDC,OAAO,EAAE;IACPH,GAAG,EAAE,2FAA2F;IAChGC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,OAAO,EAAE;IACPJ,GAAG,EAAE,sDAAsD;IAC3DC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDG,cAAc,EAAE;IACdL,GAAG,EAAE,2IAA2I;IAChJC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACD,+CAA+C,EAAE;IAC/CF,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMI,mBAAyC,GAAG,CAAC,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export { default } from './ViewContainer';
2
2
  export * from './ViewContainer';
3
+ export { default as EditButton } from './EditButton';
4
+ export { default as RemoveButton } from './RemoveButton';
@@ -1,3 +1,5 @@
1
1
  export { default } from './ViewContainer';
2
2
  export * from './ViewContainer';
3
+ export { default as EditButton } from './EditButton';
4
+ export { default as RemoveButton } from './RemoveButton';
3
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/index.ts"],"sourcesContent":["export { default } from './ViewContainer'\nexport * from './ViewContainer'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,iBAAiB;AACzC,cAAc,iBAAiB"}
1
+ {"version":3,"file":"index.js","names":["default","EditButton","RemoveButton"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/index.ts"],"sourcesContent":["export { default } from './ViewContainer'\nexport * from './ViewContainer'\nexport { default as EditButton } from './EditButton'\nexport { default as RemoveButton } from './RemoveButton'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,iBAAiB;AACzC,cAAc,iBAAiB;AAC/B,SAASA,OAAO,IAAIC,UAAU,QAAQ,cAAc;AACpD,SAASD,OAAO,IAAIE,YAAY,QAAQ,gBAAgB"}
@@ -0,0 +1,2 @@
1
+ export { default as useItem } from './useItem';
2
+ export { default as useSwitchContainerMode } from './useSwitchContainerMode';
@@ -0,0 +1,3 @@
1
+ export { default as useItem } from './useItem';
2
+ export { default as useSwitchContainerMode } from './useSwitchContainerMode';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default","useItem","useSwitchContainerMode"],"sources":["../../../../../../src/extensions/forms/Iterate/hooks/index.ts"],"sourcesContent":["export { default as useItem } from './useItem'\nexport { default as useSwitchContainerMode } from './useSwitchContainerMode'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,OAAO,QAAQ,WAAW;AAC9C,SAASD,OAAO,IAAIE,sBAAsB,QAAQ,0BAA0B"}
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ import { ContainerMode } from '../Array';
3
+ import { Path } from '../../types';
4
+ /**
5
+ * This is a helper for the Iterate component.
6
+ * It is used to switch the container mode of the items inside the Iterate component.
7
+ * You can use the hook outside of the Iterate component, and it will communicate with the items inside the Iterate component.
8
+ * Therefore, it is imported and used in both e.g. the EditContainer and e.g. the PushButton.
9
+ */
10
+ export default function useSwitchContainerMode({ path, }?: {
11
+ path?: Path;
12
+ }): {
13
+ getNextContainerMode: () => ContainerMode | undefined;
14
+ nextContainerModeRef: import("react").MutableRefObject<undefined>;
15
+ setNextContainerMode: (mode: ContainerMode) => void;
16
+ setLastItemContainerMode: (mode: ContainerMode) => void;
17
+ };
@@ -0,0 +1,87 @@
1
+ "use client";
2
+
3
+ import { useCallback, useContext, useEffect, useRef } from 'react';
4
+ import FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext';
5
+ import IterateItemContext from '../IterateItemContext';
6
+ const globalContainerModeRef = {
7
+ current: undefined
8
+ };
9
+ const globalCache = {};
10
+ export default function useSwitchContainerMode() {
11
+ let {
12
+ path
13
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
14
+ const nextContainerModeRef = useRef();
15
+ const {
16
+ hasError
17
+ } = useContext(FieldBoundaryContext) || {};
18
+ const iterateItemContext = useContext(IterateItemContext);
19
+ const id = iterateItemContext === null || iterateItemContext === void 0 ? void 0 : iterateItemContext.id;
20
+ const hash = (path || '') + 'useSwitchContainerMode';
21
+ useEffect(() => {
22
+ nextContainerModeRef.current = globalContainerModeRef.current;
23
+ requestAnimationFrame(() => {
24
+ if (nextContainerModeRef.current) {
25
+ globalContainerModeRef.current = undefined;
26
+ }
27
+ });
28
+ });
29
+ useEffect(() => {
30
+ if (hash && iterateItemContext) {
31
+ globalCache[hash] = globalCache[hash] || {};
32
+ const {
33
+ index,
34
+ arrayValue,
35
+ switchContainerMode
36
+ } = iterateItemContext;
37
+ globalCache[hash][id] = {
38
+ index,
39
+ hasError,
40
+ count: arrayValue === null || arrayValue === void 0 ? void 0 : arrayValue.length,
41
+ switchContainerMode
42
+ };
43
+ }
44
+ return () => {
45
+ if (id) {
46
+ globalCache[hash][id] = undefined;
47
+ }
48
+ };
49
+ }, [hasError, hash, id, iterateItemContext]);
50
+ const setNextContainerMode = useCallback(mode => {
51
+ globalContainerModeRef.current = mode;
52
+ }, []);
53
+ const setContainerMode = useCallback(fn => {
54
+ const data = globalCache[hash];
55
+ for (const id in data) {
56
+ const item = data[id];
57
+ const mode = item && (fn === null || fn === void 0 ? void 0 : fn(item));
58
+ if (mode) {
59
+ item.switchContainerMode(mode, {
60
+ omitFocusManagement: true
61
+ });
62
+ }
63
+ }
64
+ }, [hash]);
65
+ const setLastItemContainerMode = useCallback(mode => {
66
+ setContainerMode(_ref => {
67
+ let {
68
+ hasError,
69
+ index,
70
+ count
71
+ } = _ref;
72
+ if (!hasError && index === count - 2) {
73
+ return mode;
74
+ }
75
+ });
76
+ }, [setContainerMode]);
77
+ const getNextContainerMode = useCallback(() => {
78
+ return nextContainerModeRef.current;
79
+ }, []);
80
+ return {
81
+ getNextContainerMode,
82
+ nextContainerModeRef,
83
+ setNextContainerMode,
84
+ setLastItemContainerMode
85
+ };
86
+ }
87
+ //# sourceMappingURL=useSwitchContainerMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSwitchContainerMode.js","names":["useCallback","useContext","useEffect","useRef","FieldBoundaryContext","IterateItemContext","globalContainerModeRef","current","undefined","globalCache","useSwitchContainerMode","path","arguments","length","nextContainerModeRef","hasError","iterateItemContext","id","hash","requestAnimationFrame","index","arrayValue","switchContainerMode","count","setNextContainerMode","mode","setContainerMode","fn","data","item","omitFocusManagement","setLastItemContainerMode","_ref","getNextContainerMode"],"sources":["../../../../../../src/extensions/forms/Iterate/hooks/useSwitchContainerMode.ts"],"sourcesContent":["import { useCallback, useContext, useEffect, useRef } from 'react'\nimport { ContainerMode } from '../Array'\nimport FieldBoundaryContext, {\n FieldBoundaryContextState,\n} from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport IterateItemContext, {\n IterateItemContextState,\n} from '../IterateItemContext'\nimport { Path } from '../../types'\n\ntype GlobalCacheHash = string\ntype GlobalCacheId = string\ntype GlobalCache = {\n index: IterateItemContextState['index']\n hasError: FieldBoundaryContextState['hasError']\n count: number\n switchContainerMode: IterateItemContextState['switchContainerMode']\n}\ntype GlobalCacheItem = {\n [string: GlobalCacheHash]: GlobalCache\n}\n\nconst globalContainerModeRef = { current: undefined }\nconst globalCache: Record<\n GlobalCacheHash,\n Record<GlobalCacheId, GlobalCache>\n> = {}\n\n/**\n * This is a helper for the Iterate component.\n * It is used to switch the container mode of the items inside the Iterate component.\n * You can use the hook outside of the Iterate component, and it will communicate with the items inside the Iterate component.\n * Therefore, it is imported and used in both e.g. the EditContainer and e.g. the PushButton.\n */\nexport default function useSwitchContainerMode({\n path,\n}: { path?: Path } = {}) {\n const nextContainerModeRef = useRef()\n const { hasError } = useContext(FieldBoundaryContext) || {}\n const iterateItemContext = useContext(IterateItemContext)\n\n const id = iterateItemContext?.id\n const hash = (path || '') + 'useSwitchContainerMode'\n\n useEffect(() => {\n nextContainerModeRef.current = globalContainerModeRef.current\n requestAnimationFrame(() => {\n if (nextContainerModeRef.current) {\n globalContainerModeRef.current = undefined\n }\n })\n })\n\n useEffect(() => {\n if (hash && iterateItemContext) {\n globalCache[hash] = globalCache[hash] || ({} as GlobalCacheItem)\n const { index, arrayValue, switchContainerMode } = iterateItemContext\n globalCache[hash][id] = {\n index,\n hasError,\n count: arrayValue?.length,\n switchContainerMode,\n }\n }\n\n return () => {\n if (id) {\n globalCache[hash][id] = undefined\n }\n }\n }, [hasError, hash, id, iterateItemContext])\n\n const setNextContainerMode = useCallback((mode: ContainerMode) => {\n globalContainerModeRef.current = mode\n }, [])\n\n const setContainerMode = useCallback(\n (fn: ({ hasError, index, count }) => ContainerMode) => {\n const data = globalCache[hash]\n for (const id in data) {\n const item = data[id]\n const mode = item && fn?.(item)\n if (mode) {\n item.switchContainerMode(mode, { omitFocusManagement: true })\n }\n }\n },\n [hash]\n )\n\n const setLastItemContainerMode = useCallback(\n (mode: ContainerMode) => {\n setContainerMode(({ hasError, index, count }) => {\n if (!hasError && index === count - 2) {\n return mode\n }\n })\n },\n [setContainerMode]\n )\n\n const getNextContainerMode = useCallback(():\n | ContainerMode\n | undefined => {\n return nextContainerModeRef.current\n }, [])\n\n return {\n getNextContainerMode,\n nextContainerModeRef,\n setNextContainerMode,\n setLastItemContainerMode,\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { SectionProps } from '../../../components/Section';
2
+ declare function Log(props: SectionProps): import("react/jsx-runtime").JSX.Element;
3
+ declare namespace Log {
4
+ var _supportsSpacingProps: boolean;
5
+ }
6
+ export default Log;
@@ -0,0 +1,22 @@
1
+ "use client";
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import { useContext } from 'react';
5
+ import DataContext from '../DataContext/Context';
6
+ import Section from '../../../components/Section';
7
+ function Log(props) {
8
+ const {
9
+ data
10
+ } = useContext(DataContext);
11
+ return React.createElement(Section, _extends({
12
+ element: "output",
13
+ backgroundColor: "sand-yellow",
14
+ style: {
15
+ maxWidth: '80vw'
16
+ },
17
+ innerSpace: true
18
+ }, props), React.createElement("pre", null, JSON.stringify(data), ' '));
19
+ }
20
+ Log._supportsSpacingProps = true;
21
+ export default Log;
22
+ //# sourceMappingURL=Log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Log.js","names":["useContext","DataContext","Section","Log","props","data","React","createElement","_extends","element","backgroundColor","style","maxWidth","innerSpace","JSON","stringify","_supportsSpacingProps"],"sources":["../../../../../src/extensions/forms/Tools/Log.tsx"],"sourcesContent":["import { useContext } from 'react'\nimport DataContext from '../DataContext/Context'\nimport Section, { SectionProps } from '../../../components/Section'\n\nfunction Log(props: SectionProps) {\n const { data } = useContext(DataContext)\n\n return (\n <Section\n element=\"output\"\n backgroundColor=\"sand-yellow\"\n style={{ maxWidth: '80vw' }}\n innerSpace\n {...props}\n >\n <pre>\n {JSON.stringify(data)}\n {' ' /* Ensure one line of spacing */}\n </pre>\n </Section>\n )\n}\n\nLog._supportsSpacingProps = true\nexport default Log\n"],"mappings":";;;AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,OAAOC,WAAW,MAAM,wBAAwB;AAChD,OAAOC,OAAO,MAAwB,6BAA6B;AAEnE,SAASC,GAAGA,CAACC,KAAmB,EAAE;EAChC,MAAM;IAAEC;EAAK,CAAC,GAAGL,UAAU,CAACC,WAAW,CAAC;EAExC,OACEK,KAAA,CAAAC,aAAA,CAACL,OAAO,EAAAM,QAAA;IACNC,OAAO,EAAC,QAAQ;IAChBC,eAAe,EAAC,aAAa;IAC7BC,KAAK,EAAE;MAAEC,QAAQ,EAAE;IAAO,CAAE;IAC5BC,UAAU;EAAA,GACNT,KAAK,GAETE,KAAA,CAAAC,aAAA,cACGO,IAAI,CAACC,SAAS,CAACV,IAAI,CAAC,EACpB,GACE,CACE,CAAC;AAEd;AAEAF,GAAG,CAACa,qBAAqB,GAAG,IAAI;AAChC,eAAeb,GAAG"}
@@ -1,2 +1,3 @@
1
1
  export { default as GenerateSchema } from './GenerateSchema';
2
2
  export { default as ListAllProps } from './ListAllProps';
3
+ export { default as Log } from './Log';
@@ -1,3 +1,4 @@
1
1
  export { default as GenerateSchema } from './GenerateSchema';
2
2
  export { default as ListAllProps } from './ListAllProps';
3
+ export { default as Log } from './Log';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","GenerateSchema","ListAllProps"],"sources":["../../../../../src/extensions/forms/Tools/index.ts"],"sourcesContent":["export { default as GenerateSchema } from './GenerateSchema'\nexport { default as ListAllProps } from './ListAllProps'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,cAAc,QAAQ,kBAAkB;AAC5D,SAASD,OAAO,IAAIE,YAAY,QAAQ,gBAAgB"}
1
+ {"version":3,"file":"index.js","names":["default","GenerateSchema","ListAllProps","Log"],"sources":["../../../../../src/extensions/forms/Tools/index.ts"],"sourcesContent":["export { default as GenerateSchema } from './GenerateSchema'\nexport { default as ListAllProps } from './ListAllProps'\nexport { default as Log } from './Log'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,cAAc,QAAQ,kBAAkB;AAC5D,SAASD,OAAO,IAAIE,YAAY,QAAQ,gBAAgB;AACxD,SAASF,OAAO,IAAIG,GAAG,QAAQ,OAAO"}
@@ -1,7 +1,7 @@
1
1
  import { Props as StringValueProps } from '../String';
2
2
  import { AnyLocale } from '../../../../shared/Context';
3
3
  export type Props = StringValueProps & {
4
- variant?: 'long' | 'short';
4
+ variant?: 'long' | 'short' | 'numeric';
5
5
  locale?: AnyLocale;
6
6
  };
7
7
  declare function DateComponent(props: Props): import("react/jsx-runtime").JSX.Element;
@@ -19,12 +19,22 @@ function DateComponent(props) {
19
19
  if (!value) {
20
20
  return undefined;
21
21
  }
22
- const date = new Date(value);
23
- const options = {
24
- day: 'numeric',
25
- month: variant,
26
- year: 'numeric'
22
+ const getOptions = variant => {
23
+ if (variant === 'numeric') {
24
+ return {
25
+ day: '2-digit',
26
+ month: '2-digit',
27
+ year: 'numeric'
28
+ };
29
+ }
30
+ return {
31
+ day: 'numeric',
32
+ month: variant,
33
+ year: 'numeric'
34
+ };
27
35
  };
36
+ const date = new Date(value);
37
+ const options = getOptions(variant);
28
38
  const formattedDate = typeof Intl !== 'undefined' ? new Intl.DateTimeFormat(locale, options).format(date) : date.toLocaleString(locale, options);
29
39
  return formattedDate;
30
40
  }, [locale, variant]);
@@ -1 +1 @@
1
- {"version":3,"file":"Date.js","names":["React","useCallback","useContext","StringValue","useTranslation","SharedContext","DateComponent","props","_props$locale","_props$variant","_props$label","translations","Date","locale","contextLocale","variant","toInput","value","undefined","date","options","day","month","year","formattedDate","Intl","DateTimeFormat","format","toLocaleString","stringProps","_objectSpread","label","createElement","_supportsSpacingProps"],"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,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,WAAW,MAAqC,WAAW;AAClE,OAAOC,cAAc,MAAM,4BAA4B;AACvD,OAAOC,aAAa,MAAqB,4BAA4B;AAOrE,SAASC,aAAaA,CAACC,KAAY,EAAE;EAAA,IAAAC,aAAA,EAAAC,cAAA,EAAAC,YAAA;EACnC,MAAMC,YAAY,GAAGP,cAAc,CAAC,CAAC,CAACQ,IAAI;EAC1C,MAAM;IAAEC,MAAM,EAAEC;EAAc,CAAC,GAAGZ,UAAU,CAACG,aAAa,CAAC;EAC3D,MAAMQ,MAAM,IAAAL,aAAA,GAAGD,KAAK,CAACM,MAAM,cAAAL,aAAA,cAAAA,aAAA,GAAIM,aAAa;EAC5C,MAAMC,OAAO,IAAAN,cAAA,GAAGF,KAAK,CAACQ,OAAO,cAAAN,cAAA,cAAAA,cAAA,GAAI,MAAM;EAEvC,MAAMO,OAAO,GAAGf,WAAW,CACxBgB,KAAa,IAAK;IACjB,IAAI,CAACA,KAAK,EAAE;MACV,OAAOC,SAAS;IAClB;IAEA,MAAMC,IAAI,GAAG,IAAIP,IAAI,CAACK,KAAK,CAAC;IAC5B,MAAMG,OAAO,GAAG;MACdC,GAAG,EAAE,SAAS;MACdC,KAAK,EAAEP,OAAO;MACdQ,IAAI,EAAE;IACR,CAAU;IAEV,MAAMC,aAAa,GACjB,OAAOC,IAAI,KAAK,WAAW,GACvB,IAAIA,IAAI,CAACC,cAAc,CAACb,MAAM,EAAEO,OAAO,CAAC,CAACO,MAAM,CAACR,IAAI,CAAC,GACrDA,IAAI,CAACS,cAAc,CAACf,MAAM,EAAEO,OAAO,CAAC;IAE1C,OAAOI,aAAa;EACtB,CAAC,EACD,CAACX,MAAM,EAAEE,OAAO,CAClB,CAAC;EAED,MAAMc,WAAkB,GAAAC,aAAA,CAAAA,aAAA,KACnBvB,KAAK;IACRwB,KAAK,GAAArB,YAAA,GAAEH,KAAK,CAACwB,KAAK,cAAArB,YAAA,cAAAA,YAAA,GAAIC,YAAY,CAACoB,KAAK;IACxCf;EAAO,EACR;EACD,OAAOhB,KAAA,CAAAgC,aAAA,CAAC7B,WAAW,EAAK0B,WAAc,CAAC;AACzC;AAEAvB,aAAa,CAAC2B,qBAAqB,GAAG,IAAI;AAC1C,eAAe3B,aAAa"}
1
+ {"version":3,"file":"Date.js","names":["React","useCallback","useContext","StringValue","useTranslation","SharedContext","DateComponent","props","_props$locale","_props$variant","_props$label","translations","Date","locale","contextLocale","variant","toInput","value","undefined","getOptions","day","month","year","date","options","formattedDate","Intl","DateTimeFormat","format","toLocaleString","stringProps","_objectSpread","label","createElement","_supportsSpacingProps"],"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' | 'numeric'\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 getOptions = (variant) => {\n if (variant === 'numeric') {\n return {\n day: '2-digit',\n month: '2-digit',\n year: 'numeric',\n } as const\n }\n return {\n day: 'numeric',\n month: variant,\n year: 'numeric',\n } as const\n }\n\n const date = new Date(value)\n const options = getOptions(variant)\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,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,WAAW,MAAqC,WAAW;AAClE,OAAOC,cAAc,MAAM,4BAA4B;AACvD,OAAOC,aAAa,MAAqB,4BAA4B;AAOrE,SAASC,aAAaA,CAACC,KAAY,EAAE;EAAA,IAAAC,aAAA,EAAAC,cAAA,EAAAC,YAAA;EACnC,MAAMC,YAAY,GAAGP,cAAc,CAAC,CAAC,CAACQ,IAAI;EAC1C,MAAM;IAAEC,MAAM,EAAEC;EAAc,CAAC,GAAGZ,UAAU,CAACG,aAAa,CAAC;EAC3D,MAAMQ,MAAM,IAAAL,aAAA,GAAGD,KAAK,CAACM,MAAM,cAAAL,aAAA,cAAAA,aAAA,GAAIM,aAAa;EAC5C,MAAMC,OAAO,IAAAN,cAAA,GAAGF,KAAK,CAACQ,OAAO,cAAAN,cAAA,cAAAA,cAAA,GAAI,MAAM;EAEvC,MAAMO,OAAO,GAAGf,WAAW,CACxBgB,KAAa,IAAK;IACjB,IAAI,CAACA,KAAK,EAAE;MACV,OAAOC,SAAS;IAClB;IAEA,MAAMC,UAAU,GAAIJ,OAAO,IAAK;MAC9B,IAAIA,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO;UACLK,GAAG,EAAE,SAAS;UACdC,KAAK,EAAE,SAAS;UAChBC,IAAI,EAAE;QACR,CAAC;MACH;MACA,OAAO;QACLF,GAAG,EAAE,SAAS;QACdC,KAAK,EAAEN,OAAO;QACdO,IAAI,EAAE;MACR,CAAC;IACH,CAAC;IAED,MAAMC,IAAI,GAAG,IAAIX,IAAI,CAACK,KAAK,CAAC;IAC5B,MAAMO,OAAO,GAAGL,UAAU,CAACJ,OAAO,CAAC;IAEnC,MAAMU,aAAa,GACjB,OAAOC,IAAI,KAAK,WAAW,GACvB,IAAIA,IAAI,CAACC,cAAc,CAACd,MAAM,EAAEW,OAAO,CAAC,CAACI,MAAM,CAACL,IAAI,CAAC,GACrDA,IAAI,CAACM,cAAc,CAAChB,MAAM,EAAEW,OAAO,CAAC;IAE1C,OAAOC,aAAa;EACtB,CAAC,EACD,CAACZ,MAAM,EAAEE,OAAO,CAClB,CAAC;EAED,MAAMe,WAAkB,GAAAC,aAAA,CAAAA,aAAA,KACnBxB,KAAK;IACRyB,KAAK,GAAAtB,YAAA,GAAEH,KAAK,CAACyB,KAAK,cAAAtB,YAAA,cAAAA,YAAA,GAAIC,YAAY,CAACqB,KAAK;IACxChB;EAAO,EACR;EACD,OAAOhB,KAAA,CAAAiC,aAAA,CAAC9B,WAAW,EAAK2B,WAAc,CAAC;AACzC;AAEAxB,aAAa,CAAC4B,qBAAqB,GAAG,IAAI;AAC1C,eAAe5B,aAAa"}
@@ -1,6 +1,6 @@
1
1
  export const DateProperties = {
2
2
  variant: {
3
- doc: 'Defines the variant of the date. Can be `long` or `short`. Defaults to `long`.',
3
+ doc: 'Defines the variant of the date. Can be `long`, `short` or `numeric`. Defaults to `long`.',
4
4
  type: 'string',
5
5
  status: 'optional'
6
6
  },
@@ -1 +1 @@
1
- {"version":3,"file":"DateDocs.js","names":["DateProperties","variant","doc","type","status","locale"],"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":"AAEA,OAAO,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"}
1
+ {"version":3,"file":"DateDocs.js","names":["DateProperties","variant","doc","type","status","locale"],"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`, `short` or `numeric`. 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":"AAEA,OAAO,MAAMA,cAAoC,GAAG;EAClDC,OAAO,EAAE;IACPC,GAAG,EAAE,2FAA2F;IAChGC,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"}
@@ -35,7 +35,7 @@
35
35
  .dnb-forms-value-block--max-width-stretch {
36
36
  width: 100%;
37
37
  }
38
- @media screen and (min-width: 25em) {
38
+ @media screen and (min-width: 25.0625em) {
39
39
  .dnb-forms-value-block--max-width-small {
40
40
  max-width: var(--forms-field-width--small);
41
41
  }
@@ -73,7 +73,7 @@
73
73
  .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-large {
74
74
  --column-gap: var(--spacing-large);
75
75
  }
76
- @media screen and (min-width: 25em) {
76
+ @media screen and (min-width: 25.0625em) {
77
77
  .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content {
78
78
  align-items: flex-start;
79
79
  }
@@ -1 +1 @@
1
- @charset "UTF-8";.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):not(.dnb-dl__layout--grid)>.dnb-dd{margin-bottom:var(--spacing-medium)}.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--inline:not([class*=__composition]):after,.dnb-forms-value-block--inline:not([class*=__composition]):before{content:" "}.dnb-forms-value-block+.dnb-forms-value-block--inline:not([class*=__composition]):before{content:none}.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:25em){.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:25em){.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
+ @charset "UTF-8";.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):not(.dnb-dl__layout--grid)>.dnb-dd{margin-bottom:var(--spacing-medium)}.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--inline:not([class*=__composition]):after,.dnb-forms-value-block--inline:not([class*=__composition]):before{content:" "}.dnb-forms-value-block+.dnb-forms-value-block--inline:not([class*=__composition]):before{content:none}.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.0625em){.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.0625em){.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}
@@ -53,15 +53,24 @@ function WizardContainer(props) {
53
53
  const totalStepsRef = useRef(NaN);
54
54
  const errorOnStepRef = useRef({});
55
55
  const stepElementRef = useRef();
56
+ const preventNextStepRef = useRef(false);
56
57
  const sharedStateRef = useRef();
57
58
  sharedStateRef.current = useSharedState(hasContext && id ? id + '-wizard' : undefined);
58
59
  errorOnStepRef.current[activeIndexRef.current] = showAllErrors;
60
+ const preventNavigation = useCallback(function () {
61
+ let shouldPrevent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
62
+ preventNextStepRef.current = shouldPrevent;
63
+ }, []);
59
64
  const callOnStepChange = useCallback(async (index, mode) => {
60
65
  if (isAsync(onStepChange)) {
61
- return await onStepChange(index, mode);
66
+ return await onStepChange(index, mode, {
67
+ preventNavigation
68
+ });
62
69
  }
63
- return onStepChange === null || onStepChange === void 0 ? void 0 : onStepChange(index, mode);
64
- }, [onStepChange]);
70
+ return onStepChange === null || onStepChange === void 0 ? void 0 : onStepChange(index, mode, {
71
+ preventNavigation
72
+ });
73
+ }, [onStepChange, preventNavigation]);
65
74
  const {
66
75
  setFocus,
67
76
  scrollToTop,
@@ -90,26 +99,29 @@ function WizardContainer(props) {
90
99
  handleSubmitCall({
91
100
  skipErrorCheck,
92
101
  skipFieldValidation: skipErrorCheck,
93
- enableAsyncBehaviour: isAsync(onStepChange),
102
+ enableAsyncBehavior: isAsync(onStepChange),
94
103
  onSubmit: async () => {
95
104
  if (!skipStepChangeCallFromHook) {
96
105
  var _sharedStateRef$curre, _sharedStateRef$curre2, _sharedStateRef$curre3;
97
- (_sharedStateRef$curre = sharedStateRef.current) === null || _sharedStateRef$curre === void 0 ? void 0 : (_sharedStateRef$curre2 = _sharedStateRef$curre.data) === null || _sharedStateRef$curre2 === void 0 ? void 0 : (_sharedStateRef$curre3 = _sharedStateRef$curre2.onStepChange) === null || _sharedStateRef$curre3 === void 0 ? void 0 : _sharedStateRef$curre3.call(_sharedStateRef$curre2, index, mode);
106
+ (_sharedStateRef$curre = sharedStateRef.current) === null || _sharedStateRef$curre === void 0 ? void 0 : (_sharedStateRef$curre2 = _sharedStateRef$curre.data) === null || _sharedStateRef$curre2 === void 0 ? void 0 : (_sharedStateRef$curre3 = _sharedStateRef$curre2.onStepChange) === null || _sharedStateRef$curre3 === void 0 ? void 0 : _sharedStateRef$curre3.call(_sharedStateRef$curre2, index, mode, {
107
+ preventNavigation
108
+ });
98
109
  }
99
110
  const result = skipStepChangeCall || skipStepChangeCallBeforeMounted && !isInteractionRef.current ? undefined : await callOnStepChange(index, mode);
100
111
  setFormState('abort');
101
112
  if (!skipErrorCheck) {
102
113
  setShowAllErrors(errorOnStepRef.current[index]);
103
114
  }
104
- if (!(result instanceof Error)) {
115
+ if (!preventNextStepRef.current && !(result instanceof Error)) {
105
116
  handleLayoutEffect();
106
117
  activeIndexRef.current = index;
107
118
  forceUpdate();
108
119
  }
120
+ preventNextStepRef.current = false;
109
121
  return result;
110
122
  }
111
123
  });
112
- }, [callOnStepChange, handleLayoutEffect, handleSubmitCall, isInteractionRef, onStepChange, setFormState, setShowAllErrors]);
124
+ }, [callOnStepChange, handleLayoutEffect, handleSubmitCall, isInteractionRef, onStepChange, preventNavigation, setFormState, setShowAllErrors]);
113
125
  const setActiveIndex = useCallback((index, options) => {
114
126
  if (index === activeIndexRef.current) {
115
127
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContainer.js","names":["React","useContext","useCallback","useRef","useReducer","useMemo","ReactDOM","classnames","Space","StepIndicator","convertJsxToString","warn","isAsync","useId","Step","WizardContext","DataContext","defaultContextState","Handler","useSharedState","useHandleLayoutEffect","useVisibility","useLayoutEffect","window","useEffect","WizardContainer","props","_dataContext$setHandl","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","variant","sidebarId","rest","_objectWithoutProperties","_excluded","dataContext","hasContext","setFormState","handleSubmitCall","setShowAllErrors","showAllErrors","setSubmitState","forceUpdate","activeIndexRef","totalStepsRef","NaN","errorOnStepRef","stepElementRef","sharedStateRef","current","undefined","callOnStepChange","index","setFocus","scrollToTop","isInteractionRef","handleLayoutEffect","handleStepChange","_ref","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","skipFieldValidation","enableAsyncBehaviour","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","call","result","Error","setActiveIndex","options","_objectSpread","handlePrevious","handleNext","handleChange","_ref2","current_step","setFormError","error","handleSubmit","_ref3","preventSubmit","setHandleSubmit","titlesRef","updateTitlesRef","prerenderFieldPropsRef","check","activeIndex","providerValue","_sharedStateRef$curre4","_sharedStateRef$curre5","extend","_updateTitlesRef$curr","createElement","_extends","Provider","value","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","_ref4","sidebar_id","Sidebar","bottom","Object","values","no_animation","on_change","_ref5","incrementIndex","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","_step","apply","active","activeWhen","visibleWhen","title","key","clone","cloneElement","document","length","_ref6","hasRenderedRef","WizardPortal","PrerenderFieldPropsProvider","hidden","Fn","i","_ref7","createPortal","body","_ref8","setFieldProps","updateDataValue","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/WizardContainer.tsx"],"sourcesContent":["import React, {\n useContext,\n useCallback,\n useRef,\n useReducer,\n useMemo,\n} from 'react'\nimport 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 dataContext = useContext(DataContext)\n const {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n showAllErrors,\n setSubmitState,\n } = dataContext\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const totalStepsRef = useRef<number>(NaN)\n const 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 handleSubmit = useCallback(\n ({ preventSubmit }) => {\n if (activeIndexRef.current + 1 < totalStepsRef.current) {\n handleNext()\n preventSubmit()\n }\n },\n [handleNext]\n )\n dataContext.setHandleSubmit?.(handleSubmit)\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<WizardContextState>(() => {\n return {\n id,\n activeIndex,\n stepElementRef,\n titlesRef,\n updateTitlesRef,\n activeIndexRef,\n totalStepsRef,\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 totalStepsRef,\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 totalStepsRef.current = childrenArray?.length\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","useContext","useCallback","useRef","useReducer","useMemo","ReactDOM","classnames","Space","StepIndicator","convertJsxToString","warn","isAsync","useId","Step","WizardContext","DataContext","defaultContextState","Handler","useSharedState","useHandleLayoutEffect","useVisibility","useLayoutEffect","window","useEffect","WizardContainer","props","_dataContext$setHandl","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","variant","sidebarId","rest","_objectWithoutProperties","_excluded","dataContext","hasContext","setFormState","handleSubmitCall","setShowAllErrors","showAllErrors","setSubmitState","forceUpdate","activeIndexRef","totalStepsRef","NaN","errorOnStepRef","stepElementRef","preventNextStepRef","sharedStateRef","current","undefined","preventNavigation","shouldPrevent","arguments","length","callOnStepChange","index","setFocus","scrollToTop","isInteractionRef","handleLayoutEffect","handleStepChange","_ref","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","skipFieldValidation","enableAsyncBehavior","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","call","result","Error","setActiveIndex","options","_objectSpread","handlePrevious","handleNext","handleChange","_ref2","current_step","setFormError","error","handleSubmit","_ref3","preventSubmit","setHandleSubmit","titlesRef","updateTitlesRef","prerenderFieldPropsRef","check","activeIndex","providerValue","_sharedStateRef$curre4","_sharedStateRef$curre5","extend","_updateTitlesRef$curr","createElement","_extends","Provider","value","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","_ref4","sidebar_id","Sidebar","bottom","Object","values","no_animation","on_change","_ref5","incrementIndex","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","_step","apply","active","activeWhen","visibleWhen","title","key","clone","cloneElement","document","_ref6","hasRenderedRef","WizardPortal","PrerenderFieldPropsProvider","hidden","Fn","i","_ref7","createPortal","body","_ref8","setFieldProps","updateDataValue","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/WizardContainer.tsx"],"sourcesContent":["import React, {\n useContext,\n useCallback,\n useRef,\n useReducer,\n useMemo,\n} from 'react'\nimport 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 dataContext = useContext(DataContext)\n const {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n showAllErrors,\n setSubmitState,\n } = dataContext\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const totalStepsRef = useRef<number>(NaN)\n const errorOnStepRef = useRef<Record<StepIndex, boolean>>({})\n const stepElementRef = useRef<HTMLElement>()\n const preventNextStepRef = useRef(false)\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 preventNavigation = useCallback((shouldPrevent = true) => {\n preventNextStepRef.current = shouldPrevent\n }, [])\n\n const callOnStepChange = useCallback(\n async (index: StepIndex, mode: 'previous' | 'next') => {\n if (isAsync(onStepChange)) {\n return await onStepChange(index, mode, { preventNavigation })\n }\n\n return onStepChange?.(index, mode, { preventNavigation })\n },\n [onStepChange, preventNavigation]\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 enableAsyncBehavior: isAsync(onStepChange),\n onSubmit: async () => {\n if (!skipStepChangeCallFromHook) {\n sharedStateRef.current?.data?.onStepChange?.(index, mode, {\n preventNavigation,\n })\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 (!preventNextStepRef.current && !(result instanceof Error)) {\n handleLayoutEffect()\n\n activeIndexRef.current = index\n forceUpdate()\n }\n\n preventNextStepRef.current = false\n\n return result\n },\n })\n },\n [\n callOnStepChange,\n handleLayoutEffect,\n handleSubmitCall,\n isInteractionRef,\n onStepChange,\n preventNavigation,\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 handleSubmit = useCallback(\n ({ preventSubmit }) => {\n if (activeIndexRef.current + 1 < totalStepsRef.current) {\n handleNext()\n preventSubmit()\n }\n },\n [handleNext]\n )\n dataContext.setHandleSubmit?.(handleSubmit)\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<WizardContextState>(() => {\n return {\n id,\n activeIndex,\n stepElementRef,\n titlesRef,\n updateTitlesRef,\n activeIndexRef,\n totalStepsRef,\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 totalStepsRef,\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 totalStepsRef.current = childrenArray?.length\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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"}
@@ -47,7 +47,7 @@ export const WizardContainerProperties = {
47
47
  };
48
48
  export const WizardContainerEvents = {
49
49
  onStepChange: {
50
- doc: 'Will be called when the user navigate to a different step, with step `index` as the first argument and `previous` or `next` (string) as the second argument. When an async function is provided, it will show an indicator on the submit button during the form submission. All form elements will be disabled during the submit. The indicator will be shown for minimum 1 second. Related Form.Handler props: `minimumAsyncBehaviorTime` and `asyncSubmitTimeout`.',
50
+ doc: 'Will be called when the user navigate to a different step, with step `index` as the first argument and `previous` or `next` (string) as the second argument, and an options object containing `preventNavigation` function as the third parameter. When an async function is provided, it will show an indicator on the submit button during the form submission. All form elements will be disabled during the submit. The indicator will be shown for minimum 1 second. Related Form.Handler props: `minimumAsyncBehaviorTime` and `asyncSubmitTimeout`.',
51
51
  type: 'function',
52
52
  status: 'optional'
53
53
  }