@dnb/eufemia 10.44.0 → 10.46.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 (830) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/cjs/components/CopyOnClick.d.ts +12 -0
  3. package/cjs/components/CopyOnClick.js +24 -0
  4. package/cjs/components/CopyOnClick.js.map +1 -0
  5. package/cjs/components/checkbox/style/dnb-checkbox.scss +1 -1
  6. package/cjs/components/copy-on-click/CopyOnClick.d.ts +9 -0
  7. package/cjs/components/copy-on-click/CopyOnClick.js +72 -0
  8. package/cjs/components/copy-on-click/CopyOnClick.js.map +1 -0
  9. package/cjs/components/copy-on-click/CopyOnClickDocs.d.ts +2 -0
  10. package/cjs/components/copy-on-click/CopyOnClickDocs.js +25 -0
  11. package/cjs/components/copy-on-click/CopyOnClickDocs.js.map +1 -0
  12. package/cjs/components/copy-on-click/index.d.ts +7 -0
  13. package/cjs/components/copy-on-click/index.js +24 -0
  14. package/cjs/components/copy-on-click/index.js.map +1 -0
  15. package/cjs/components/copy-on-click/style/dnb-copy-on-click.css +7 -0
  16. package/cjs/components/copy-on-click/style/dnb-copy-on-click.min.css +1 -0
  17. package/cjs/components/copy-on-click/style/dnb-copy-on-click.scss +10 -0
  18. package/cjs/components/copy-on-click/style/index.d.ts +5 -0
  19. package/cjs/components/copy-on-click/style/index.js +4 -0
  20. package/cjs/components/copy-on-click/style/index.js.map +1 -0
  21. package/cjs/components/copy-on-click/style.d.ts +5 -0
  22. package/cjs/components/copy-on-click/style.js +4 -0
  23. package/cjs/components/copy-on-click/style.js.map +1 -0
  24. package/cjs/components/copy-on-click/types.d.ts +19 -0
  25. package/cjs/components/copy-on-click/types.js +1 -0
  26. package/cjs/components/copy-on-click/types.js.map +1 -0
  27. package/cjs/components/index.d.ts +2 -1
  28. package/cjs/components/index.js +7 -0
  29. package/cjs/components/index.js.map +1 -1
  30. package/cjs/components/lib.d.ts +6 -1
  31. package/cjs/components/lib.js +8 -0
  32. package/cjs/components/lib.js.map +1 -1
  33. package/cjs/components/pagination/Pagination.d.ts +27 -1
  34. package/cjs/components/pagination/Pagination.js +3 -1
  35. package/cjs/components/pagination/Pagination.js.map +1 -1
  36. package/cjs/components/pagination/PaginationInfinity.js +20 -8
  37. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  38. package/cjs/components/radio/style/dnb-radio.scss +1 -1
  39. package/cjs/components/table/TableStickyHeader.js.map +1 -1
  40. package/cjs/components/upload/Upload.js +2 -1
  41. package/cjs/components/upload/Upload.js.map +1 -1
  42. package/cjs/components/upload/UploadDocs.d.ts +1 -0
  43. package/cjs/components/upload/UploadDocs.js +17 -4
  44. package/cjs/components/upload/UploadDocs.js.map +1 -1
  45. package/cjs/components/upload/UploadInfo.js +57 -5
  46. package/cjs/components/upload/UploadInfo.js.map +1 -1
  47. package/cjs/components/upload/UploadVerify.d.ts +4 -2
  48. package/cjs/components/upload/UploadVerify.js +32 -5
  49. package/cjs/components/upload/UploadVerify.js.map +1 -1
  50. package/cjs/components/upload/style/dnb-upload.css +15 -0
  51. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  52. package/cjs/components/upload/style/dnb-upload.scss +17 -0
  53. package/cjs/components/upload/types.d.ts +7 -1
  54. package/cjs/components/upload/types.js.map +1 -1
  55. package/cjs/extensions/forms/DataContext/Context.d.ts +10 -5
  56. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  57. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +8 -0
  58. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  59. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +8 -0
  60. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  61. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +1 -5
  62. package/cjs/extensions/forms/DataContext/Provider/Provider.js +48 -26
  63. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  64. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +2 -7
  65. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  66. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +16 -3
  67. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +38 -24
  68. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  69. package/cjs/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js +10 -0
  70. package/cjs/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js.map +1 -1
  71. package/cjs/extensions/forms/Field/Email/Email.js +1 -1
  72. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  73. package/cjs/extensions/forms/Field/Name/Name.js +2 -2
  74. package/cjs/extensions/forms/Field/Name/Name.js.map +1 -1
  75. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +22 -3
  76. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  77. package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -2
  78. package/cjs/extensions/forms/Field/Number/Number.js +33 -31
  79. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  80. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.d.ts +3 -1
  81. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +11 -3
  82. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  83. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +4 -1
  84. package/cjs/extensions/forms/Field/Selection/Selection.js +28 -20
  85. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  86. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +6 -1
  87. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  88. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +3 -3
  89. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  90. package/cjs/extensions/forms/Form/Element/Element.js +11 -9
  91. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  92. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  93. package/cjs/extensions/forms/Form/Handler/Handler.js +1 -3
  94. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  95. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +1 -1
  96. package/cjs/extensions/forms/Form/Isolation/Isolation.js +25 -7
  97. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  98. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +0 -1
  99. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  100. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +13 -5
  101. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  102. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +10 -13
  103. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -1
  104. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  105. package/cjs/extensions/forms/Form/data-context/useData.js +9 -7
  106. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  107. package/cjs/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js +3 -3
  108. package/cjs/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js.map +1 -1
  109. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +2 -2
  110. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  111. package/cjs/extensions/forms/Iterate/Array/Array.js +7 -5
  112. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  113. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -3
  114. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +25 -19
  115. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  116. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +10 -0
  117. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  118. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +44 -14
  119. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  120. package/cjs/extensions/forms/Iterate/{IterateElementContext.d.ts → IterateItemContext.d.ts} +3 -3
  121. package/cjs/extensions/forms/Iterate/{IterateElementContext.js → IterateItemContext.js} +3 -3
  122. package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -0
  123. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +3 -3
  124. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  125. package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  126. package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  127. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.d.ts +4 -0
  128. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js +42 -0
  129. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -0
  130. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +37 -0
  131. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +95 -0
  132. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -0
  133. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +11 -0
  134. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.js +12 -0
  135. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -0
  136. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.d.ts +3 -0
  137. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +42 -0
  138. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -0
  139. package/cjs/extensions/forms/Iterate/PushContainer/index.d.ts +2 -0
  140. package/cjs/extensions/forms/Iterate/PushContainer/index.js +27 -0
  141. package/cjs/extensions/forms/Iterate/PushContainer/index.js.map +1 -0
  142. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -4
  143. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  144. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +4 -0
  145. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +13 -5
  146. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  147. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  148. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  149. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +3 -3
  150. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  151. package/cjs/extensions/forms/Iterate/hooks/useItem.d.ts +1 -0
  152. package/cjs/extensions/forms/Iterate/hooks/useItem.js +15 -0
  153. package/cjs/extensions/forms/Iterate/hooks/useItem.js.map +1 -0
  154. package/cjs/extensions/forms/Iterate/index.d.ts +3 -1
  155. package/cjs/extensions/forms/Iterate/index.js +17 -3
  156. package/cjs/extensions/forms/Iterate/index.js.map +1 -1
  157. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +19 -0
  158. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js +81 -0
  159. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -0
  160. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.d.ts +2 -0
  161. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +15 -0
  162. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -0
  163. package/cjs/extensions/forms/Value/ArraySelection/index.d.ts +2 -0
  164. package/cjs/extensions/forms/Value/ArraySelection/index.js +27 -0
  165. package/cjs/extensions/forms/Value/ArraySelection/index.js.map +1 -0
  166. package/cjs/extensions/forms/Value/SelectCountry/SelectCountry.d.ts +7 -0
  167. package/cjs/extensions/forms/Value/SelectCountry/SelectCountry.js +54 -0
  168. package/cjs/extensions/forms/Value/SelectCountry/SelectCountry.js.map +1 -0
  169. package/cjs/extensions/forms/Value/SelectCountry/index.d.ts +2 -0
  170. package/cjs/extensions/forms/Value/SelectCountry/index.js +27 -0
  171. package/cjs/extensions/forms/Value/SelectCountry/index.js.map +1 -0
  172. package/cjs/extensions/forms/Value/Selection/Selection.d.ts +9 -0
  173. package/cjs/extensions/forms/Value/Selection/Selection.js +58 -0
  174. package/cjs/extensions/forms/Value/Selection/Selection.js.map +1 -0
  175. package/cjs/extensions/forms/Value/Selection/SelectionDocs.d.ts +2 -0
  176. package/cjs/extensions/forms/Value/Selection/SelectionDocs.js +15 -0
  177. package/cjs/extensions/forms/Value/Selection/SelectionDocs.js.map +1 -0
  178. package/cjs/extensions/forms/Value/Selection/index.d.ts +2 -0
  179. package/cjs/extensions/forms/Value/Selection/index.js +27 -0
  180. package/cjs/extensions/forms/Value/Selection/index.js.map +1 -0
  181. package/cjs/extensions/forms/Value/ValueDocs.js +6 -1
  182. package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
  183. package/cjs/extensions/forms/Value/index.d.ts +3 -0
  184. package/cjs/extensions/forms/Value/index.js +21 -0
  185. package/cjs/extensions/forms/Value/index.js.map +1 -1
  186. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +7 -6
  187. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  188. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +3 -0
  189. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  190. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +3 -0
  191. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +27 -11
  192. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  193. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  194. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  195. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -4
  196. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  197. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +5 -0
  198. package/cjs/extensions/forms/constants/locales/en-GB.js +6 -1
  199. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  200. package/cjs/extensions/forms/constants/locales/en-US.d.ts +5 -0
  201. package/cjs/extensions/forms/constants/locales/index.d.ts +10 -0
  202. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +5 -0
  203. package/cjs/extensions/forms/constants/locales/nb-NO.js +6 -1
  204. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  205. package/cjs/extensions/forms/hooks/DataValueDocs.js +3 -3
  206. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  207. package/cjs/extensions/forms/hooks/useDataValue.d.ts +1 -0
  208. package/cjs/extensions/forms/hooks/useDataValue.js +11 -4
  209. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  210. package/cjs/extensions/forms/hooks/useExternalValue.js +4 -4
  211. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  212. package/cjs/extensions/forms/hooks/useFieldProps.js +11 -9
  213. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  214. package/cjs/extensions/forms/hooks/usePath.js +3 -3
  215. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  216. package/cjs/extensions/forms/hooks/useValueProps.js +4 -1
  217. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  218. package/cjs/extensions/forms/style/dnb-forms.css +3 -0
  219. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  220. package/cjs/extensions/forms/types.d.ts +9 -2
  221. package/cjs/extensions/forms/types.js.map +1 -1
  222. package/cjs/index.d.ts +2 -1
  223. package/cjs/index.js +7 -0
  224. package/cjs/index.js.map +1 -1
  225. package/cjs/shared/Context.js +4 -6
  226. package/cjs/shared/Context.js.map +1 -1
  227. package/cjs/shared/Eufemia.d.ts +1 -1
  228. package/cjs/shared/Eufemia.js +2 -2
  229. package/cjs/shared/Eufemia.js.map +1 -1
  230. package/cjs/shared/locales/en-GB.d.ts +4 -0
  231. package/cjs/shared/locales/en-GB.js +4 -0
  232. package/cjs/shared/locales/en-GB.js.map +1 -1
  233. package/cjs/shared/locales/en-US.d.ts +4 -0
  234. package/cjs/shared/locales/index.d.ts +8 -0
  235. package/cjs/shared/locales/nb-NO.d.ts +4 -0
  236. package/cjs/shared/locales/nb-NO.js +5 -1
  237. package/cjs/shared/locales/nb-NO.js.map +1 -1
  238. package/cjs/shared/useTheme.d.ts +4 -10
  239. package/cjs/shared/useTheme.js +7 -5
  240. package/cjs/shared/useTheme.js.map +1 -1
  241. package/cjs/style/core/scopes.scss +1 -1
  242. package/cjs/style/dnb-ui-basis.css +1 -1
  243. package/cjs/style/dnb-ui-basis.min.css +1 -1
  244. package/cjs/style/dnb-ui-body.css +1 -1
  245. package/cjs/style/dnb-ui-body.min.css +1 -1
  246. package/cjs/style/dnb-ui-components.css +26 -0
  247. package/cjs/style/dnb-ui-components.min.css +3 -3
  248. package/cjs/style/dnb-ui-components.scss +1 -0
  249. package/cjs/style/dnb-ui-core.css +1 -1
  250. package/cjs/style/dnb-ui-core.min.css +1 -1
  251. package/cjs/style/dnb-ui-extensions.css +3 -0
  252. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  253. package/cjs/style/dnb-ui-forms.css +3 -0
  254. package/cjs/style/dnb-ui-forms.min.css +1 -1
  255. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +29 -0
  256. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  257. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -0
  258. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  259. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +3 -0
  260. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  261. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +29 -0
  262. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  263. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -0
  264. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  265. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +3 -0
  266. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  267. package/cjs/style/themes/theme-ui/ui-theme-components.css +29 -0
  268. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  269. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +3 -0
  270. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  271. package/cjs/style/themes/theme-ui/ui-theme-forms.css +3 -0
  272. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  273. package/components/CopyOnClick.d.ts +12 -0
  274. package/components/CopyOnClick.js +4 -0
  275. package/components/CopyOnClick.js.map +1 -0
  276. package/components/checkbox/style/dnb-checkbox.scss +1 -1
  277. package/components/copy-on-click/CopyOnClick.d.ts +9 -0
  278. package/components/copy-on-click/CopyOnClick.js +62 -0
  279. package/components/copy-on-click/CopyOnClick.js.map +1 -0
  280. package/components/copy-on-click/CopyOnClickDocs.d.ts +2 -0
  281. package/components/copy-on-click/CopyOnClickDocs.js +18 -0
  282. package/components/copy-on-click/CopyOnClickDocs.js.map +1 -0
  283. package/components/copy-on-click/index.d.ts +7 -0
  284. package/components/copy-on-click/index.js +4 -0
  285. package/components/copy-on-click/index.js.map +1 -0
  286. package/components/copy-on-click/style/dnb-copy-on-click.css +7 -0
  287. package/components/copy-on-click/style/dnb-copy-on-click.min.css +1 -0
  288. package/components/copy-on-click/style/dnb-copy-on-click.scss +10 -0
  289. package/components/copy-on-click/style/index.d.ts +5 -0
  290. package/components/copy-on-click/style/index.js +1 -0
  291. package/components/copy-on-click/style/index.js.map +1 -0
  292. package/components/copy-on-click/style.d.ts +5 -0
  293. package/components/copy-on-click/style.js +1 -0
  294. package/components/copy-on-click/style.js.map +1 -0
  295. package/components/copy-on-click/types.d.ts +19 -0
  296. package/components/copy-on-click/types.js +1 -0
  297. package/components/copy-on-click/types.js.map +1 -0
  298. package/components/index.d.ts +2 -1
  299. package/components/index.js +2 -1
  300. package/components/index.js.map +1 -1
  301. package/components/lib.d.ts +6 -1
  302. package/components/lib.js +3 -1
  303. package/components/lib.js.map +1 -1
  304. package/components/pagination/Pagination.d.ts +27 -1
  305. package/components/pagination/Pagination.js +3 -1
  306. package/components/pagination/Pagination.js.map +1 -1
  307. package/components/pagination/PaginationInfinity.js +20 -8
  308. package/components/pagination/PaginationInfinity.js.map +1 -1
  309. package/components/radio/style/dnb-radio.scss +1 -1
  310. package/components/table/TableStickyHeader.js.map +1 -1
  311. package/components/upload/Upload.js +2 -1
  312. package/components/upload/Upload.js.map +1 -1
  313. package/components/upload/UploadDocs.d.ts +1 -0
  314. package/components/upload/UploadDocs.js +15 -3
  315. package/components/upload/UploadDocs.js.map +1 -1
  316. package/components/upload/UploadInfo.js +57 -5
  317. package/components/upload/UploadInfo.js.map +1 -1
  318. package/components/upload/UploadVerify.d.ts +4 -2
  319. package/components/upload/UploadVerify.js +30 -5
  320. package/components/upload/UploadVerify.js.map +1 -1
  321. package/components/upload/style/dnb-upload.css +15 -0
  322. package/components/upload/style/dnb-upload.min.css +1 -1
  323. package/components/upload/style/dnb-upload.scss +17 -0
  324. package/components/upload/types.d.ts +7 -1
  325. package/components/upload/types.js.map +1 -1
  326. package/es/components/CopyOnClick.d.ts +12 -0
  327. package/es/components/CopyOnClick.js +4 -0
  328. package/es/components/CopyOnClick.js.map +1 -0
  329. package/es/components/checkbox/style/dnb-checkbox.scss +1 -1
  330. package/es/components/copy-on-click/CopyOnClick.d.ts +9 -0
  331. package/es/components/copy-on-click/CopyOnClick.js +62 -0
  332. package/es/components/copy-on-click/CopyOnClick.js.map +1 -0
  333. package/es/components/copy-on-click/CopyOnClickDocs.d.ts +2 -0
  334. package/es/components/copy-on-click/CopyOnClickDocs.js +18 -0
  335. package/es/components/copy-on-click/CopyOnClickDocs.js.map +1 -0
  336. package/es/components/copy-on-click/index.d.ts +7 -0
  337. package/es/components/copy-on-click/index.js +4 -0
  338. package/es/components/copy-on-click/index.js.map +1 -0
  339. package/es/components/copy-on-click/style/dnb-copy-on-click.css +7 -0
  340. package/es/components/copy-on-click/style/dnb-copy-on-click.min.css +1 -0
  341. package/es/components/copy-on-click/style/dnb-copy-on-click.scss +10 -0
  342. package/es/components/copy-on-click/style/index.d.ts +5 -0
  343. package/es/components/copy-on-click/style/index.js +1 -0
  344. package/es/components/copy-on-click/style/index.js.map +1 -0
  345. package/es/components/copy-on-click/style.d.ts +5 -0
  346. package/es/components/copy-on-click/style.js +1 -0
  347. package/es/components/copy-on-click/style.js.map +1 -0
  348. package/es/components/copy-on-click/types.d.ts +19 -0
  349. package/es/components/copy-on-click/types.js +1 -0
  350. package/es/components/copy-on-click/types.js.map +1 -0
  351. package/es/components/index.d.ts +2 -1
  352. package/es/components/index.js +2 -1
  353. package/es/components/index.js.map +1 -1
  354. package/es/components/lib.d.ts +6 -1
  355. package/es/components/lib.js +3 -1
  356. package/es/components/lib.js.map +1 -1
  357. package/es/components/pagination/Pagination.d.ts +27 -1
  358. package/es/components/pagination/Pagination.js +3 -1
  359. package/es/components/pagination/Pagination.js.map +1 -1
  360. package/es/components/pagination/PaginationInfinity.js +20 -8
  361. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  362. package/es/components/radio/style/dnb-radio.scss +1 -1
  363. package/es/components/table/TableStickyHeader.js.map +1 -1
  364. package/es/components/upload/Upload.js +2 -1
  365. package/es/components/upload/Upload.js.map +1 -1
  366. package/es/components/upload/UploadDocs.d.ts +1 -0
  367. package/es/components/upload/UploadDocs.js +15 -3
  368. package/es/components/upload/UploadDocs.js.map +1 -1
  369. package/es/components/upload/UploadInfo.js +57 -5
  370. package/es/components/upload/UploadInfo.js.map +1 -1
  371. package/es/components/upload/UploadVerify.d.ts +4 -2
  372. package/es/components/upload/UploadVerify.js +30 -5
  373. package/es/components/upload/UploadVerify.js.map +1 -1
  374. package/es/components/upload/style/dnb-upload.css +15 -0
  375. package/es/components/upload/style/dnb-upload.min.css +1 -1
  376. package/es/components/upload/style/dnb-upload.scss +17 -0
  377. package/es/components/upload/types.d.ts +7 -1
  378. package/es/components/upload/types.js.map +1 -1
  379. package/es/extensions/forms/DataContext/Context.d.ts +10 -5
  380. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  381. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +8 -0
  382. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  383. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +9 -1
  384. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  385. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +1 -5
  386. package/es/extensions/forms/DataContext/Provider/Provider.js +47 -25
  387. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  388. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +2 -7
  389. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  390. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +16 -3
  391. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +37 -24
  392. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  393. package/es/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js +10 -0
  394. package/es/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js.map +1 -1
  395. package/es/extensions/forms/Field/Email/Email.js +1 -1
  396. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  397. package/es/extensions/forms/Field/Name/Name.js +2 -2
  398. package/es/extensions/forms/Field/Name/Name.js.map +1 -1
  399. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +23 -4
  400. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  401. package/es/extensions/forms/Field/Number/Number.d.ts +2 -2
  402. package/es/extensions/forms/Field/Number/Number.js +33 -31
  403. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  404. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.d.ts +3 -1
  405. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +8 -1
  406. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  407. package/es/extensions/forms/Field/Selection/Selection.d.ts +4 -1
  408. package/es/extensions/forms/Field/Selection/Selection.js +22 -16
  409. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  410. package/es/extensions/forms/Field/Selection/SelectionDocs.js +6 -1
  411. package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  412. package/es/extensions/forms/FieldBlock/FieldBlock.js +3 -3
  413. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  414. package/es/extensions/forms/Form/Element/Element.js +9 -9
  415. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  416. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  417. package/es/extensions/forms/Form/Handler/Handler.js +1 -3
  418. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  419. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +1 -1
  420. package/es/extensions/forms/Form/Isolation/Isolation.js +26 -8
  421. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  422. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +0 -1
  423. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  424. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +13 -5
  425. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  426. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +10 -11
  427. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -1
  428. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  429. package/es/extensions/forms/Form/data-context/useData.js +9 -7
  430. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  431. package/es/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js +3 -3
  432. package/es/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js.map +1 -1
  433. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +2 -2
  434. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  435. package/es/extensions/forms/Iterate/Array/Array.js +7 -5
  436. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  437. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -3
  438. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +26 -20
  439. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  440. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +10 -0
  441. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  442. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +44 -14
  443. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  444. package/{extensions/forms/Iterate/IterateElementContext.d.ts → es/extensions/forms/Iterate/IterateItemContext.d.ts} +3 -3
  445. package/es/extensions/forms/Iterate/IterateItemContext.js +4 -0
  446. package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -0
  447. package/es/extensions/forms/Iterate/PushButton/PushButton.js +3 -3
  448. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  449. package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  450. package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  451. package/es/extensions/forms/Iterate/PushContainer/OpenButton.d.ts +4 -0
  452. package/es/extensions/forms/Iterate/PushContainer/OpenButton.js +32 -0
  453. package/es/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -0
  454. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +37 -0
  455. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +80 -0
  456. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -0
  457. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +11 -0
  458. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.js +6 -0
  459. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -0
  460. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.d.ts +3 -0
  461. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +34 -0
  462. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -0
  463. package/es/extensions/forms/Iterate/PushContainer/index.d.ts +2 -0
  464. package/es/extensions/forms/Iterate/PushContainer/index.js +3 -0
  465. package/es/extensions/forms/Iterate/PushContainer/index.js.map +1 -0
  466. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -4
  467. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  468. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +4 -0
  469. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +15 -6
  470. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  471. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  472. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  473. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +3 -3
  474. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  475. package/es/extensions/forms/Iterate/hooks/useItem.d.ts +1 -0
  476. package/es/extensions/forms/Iterate/hooks/useItem.js +9 -0
  477. package/es/extensions/forms/Iterate/hooks/useItem.js.map +1 -0
  478. package/es/extensions/forms/Iterate/index.d.ts +3 -1
  479. package/es/extensions/forms/Iterate/index.js +3 -1
  480. package/es/extensions/forms/Iterate/index.js.map +1 -1
  481. package/es/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +19 -0
  482. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js +66 -0
  483. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -0
  484. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.d.ts +2 -0
  485. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +8 -0
  486. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -0
  487. package/es/extensions/forms/Value/ArraySelection/index.d.ts +2 -0
  488. package/es/extensions/forms/Value/ArraySelection/index.js +3 -0
  489. package/es/extensions/forms/Value/ArraySelection/index.js.map +1 -0
  490. package/es/extensions/forms/Value/SelectCountry/SelectCountry.d.ts +7 -0
  491. package/es/extensions/forms/Value/SelectCountry/SelectCountry.js +44 -0
  492. package/es/extensions/forms/Value/SelectCountry/SelectCountry.js.map +1 -0
  493. package/es/extensions/forms/Value/SelectCountry/index.d.ts +2 -0
  494. package/es/extensions/forms/Value/SelectCountry/index.js +3 -0
  495. package/es/extensions/forms/Value/SelectCountry/index.js.map +1 -0
  496. package/es/extensions/forms/Value/Selection/Selection.d.ts +9 -0
  497. package/es/extensions/forms/Value/Selection/Selection.js +48 -0
  498. package/es/extensions/forms/Value/Selection/Selection.js.map +1 -0
  499. package/es/extensions/forms/Value/Selection/SelectionDocs.d.ts +2 -0
  500. package/es/extensions/forms/Value/Selection/SelectionDocs.js +8 -0
  501. package/es/extensions/forms/Value/Selection/SelectionDocs.js.map +1 -0
  502. package/es/extensions/forms/Value/Selection/index.d.ts +2 -0
  503. package/es/extensions/forms/Value/Selection/index.js +3 -0
  504. package/es/extensions/forms/Value/Selection/index.js.map +1 -0
  505. package/es/extensions/forms/Value/ValueDocs.js +6 -1
  506. package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
  507. package/es/extensions/forms/Value/index.d.ts +3 -0
  508. package/es/extensions/forms/Value/index.js +3 -0
  509. package/es/extensions/forms/Value/index.js.map +1 -1
  510. package/es/extensions/forms/ValueBlock/ValueBlock.js +7 -6
  511. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  512. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +3 -0
  513. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  514. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +3 -0
  515. package/es/extensions/forms/Wizard/Container/WizardContainer.js +16 -1
  516. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  517. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  518. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  519. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -4
  520. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  521. package/es/extensions/forms/constants/locales/en-GB.d.ts +5 -0
  522. package/es/extensions/forms/constants/locales/en-GB.js +6 -1
  523. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  524. package/es/extensions/forms/constants/locales/en-US.d.ts +5 -0
  525. package/es/extensions/forms/constants/locales/index.d.ts +10 -0
  526. package/es/extensions/forms/constants/locales/nb-NO.d.ts +5 -0
  527. package/es/extensions/forms/constants/locales/nb-NO.js +6 -1
  528. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  529. package/es/extensions/forms/hooks/DataValueDocs.js +3 -3
  530. package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  531. package/es/extensions/forms/hooks/useDataValue.d.ts +1 -0
  532. package/es/extensions/forms/hooks/useDataValue.js +11 -4
  533. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  534. package/es/extensions/forms/hooks/useExternalValue.js +4 -4
  535. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  536. package/es/extensions/forms/hooks/useFieldProps.js +11 -9
  537. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  538. package/es/extensions/forms/hooks/usePath.js +2 -2
  539. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  540. package/es/extensions/forms/hooks/useValueProps.js +4 -1
  541. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  542. package/es/extensions/forms/style/dnb-forms.css +3 -0
  543. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  544. package/es/extensions/forms/types.d.ts +9 -2
  545. package/es/extensions/forms/types.js.map +1 -1
  546. package/es/index.d.ts +2 -1
  547. package/es/index.js +2 -1
  548. package/es/index.js.map +1 -1
  549. package/es/shared/Context.js +4 -6
  550. package/es/shared/Context.js.map +1 -1
  551. package/es/shared/Eufemia.d.ts +1 -1
  552. package/es/shared/Eufemia.js +2 -2
  553. package/es/shared/Eufemia.js.map +1 -1
  554. package/es/shared/locales/en-GB.d.ts +4 -0
  555. package/es/shared/locales/en-GB.js +4 -0
  556. package/es/shared/locales/en-GB.js.map +1 -1
  557. package/es/shared/locales/en-US.d.ts +4 -0
  558. package/es/shared/locales/index.d.ts +8 -0
  559. package/es/shared/locales/nb-NO.d.ts +4 -0
  560. package/es/shared/locales/nb-NO.js +5 -1
  561. package/es/shared/locales/nb-NO.js.map +1 -1
  562. package/es/shared/useTheme.d.ts +4 -10
  563. package/es/shared/useTheme.js +7 -5
  564. package/es/shared/useTheme.js.map +1 -1
  565. package/es/style/core/scopes.scss +1 -1
  566. package/es/style/dnb-ui-basis.css +1 -1
  567. package/es/style/dnb-ui-basis.min.css +1 -1
  568. package/es/style/dnb-ui-body.css +1 -1
  569. package/es/style/dnb-ui-body.min.css +1 -1
  570. package/es/style/dnb-ui-components.css +26 -0
  571. package/es/style/dnb-ui-components.min.css +3 -3
  572. package/es/style/dnb-ui-components.scss +1 -0
  573. package/es/style/dnb-ui-core.css +1 -1
  574. package/es/style/dnb-ui-core.min.css +1 -1
  575. package/es/style/dnb-ui-extensions.css +3 -0
  576. package/es/style/dnb-ui-extensions.min.css +1 -1
  577. package/es/style/dnb-ui-forms.css +3 -0
  578. package/es/style/dnb-ui-forms.min.css +1 -1
  579. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +29 -0
  580. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  581. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -0
  582. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  583. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +3 -0
  584. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  585. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +29 -0
  586. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  587. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -0
  588. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  589. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +3 -0
  590. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  591. package/es/style/themes/theme-ui/ui-theme-components.css +29 -0
  592. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  593. package/es/style/themes/theme-ui/ui-theme-extensions.css +3 -0
  594. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  595. package/es/style/themes/theme-ui/ui-theme-forms.css +3 -0
  596. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  597. package/esm/dnb-ui-basis.min.mjs +1 -1
  598. package/esm/dnb-ui-components.min.mjs +1 -1
  599. package/esm/dnb-ui-elements.min.mjs +1 -1
  600. package/esm/dnb-ui-extensions.min.mjs +5 -5
  601. package/esm/dnb-ui-lib.min.mjs +1 -1
  602. package/extensions/forms/DataContext/Context.d.ts +10 -5
  603. package/extensions/forms/DataContext/Context.js.map +1 -1
  604. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +8 -0
  605. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  606. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +9 -1
  607. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  608. package/extensions/forms/DataContext/Provider/Provider.d.ts +1 -5
  609. package/extensions/forms/DataContext/Provider/Provider.js +48 -26
  610. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  611. package/extensions/forms/DataContext/Provider/ProviderDocs.js +2 -7
  612. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  613. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +16 -3
  614. package/extensions/forms/Field/ArraySelection/ArraySelection.js +37 -24
  615. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  616. package/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js +10 -0
  617. package/extensions/forms/Field/ArraySelection/ArraySelectionDocs.js.map +1 -1
  618. package/extensions/forms/Field/Email/Email.js +1 -1
  619. package/extensions/forms/Field/Email/Email.js.map +1 -1
  620. package/extensions/forms/Field/Name/Name.js +2 -2
  621. package/extensions/forms/Field/Name/Name.js.map +1 -1
  622. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +23 -4
  623. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  624. package/extensions/forms/Field/Number/Number.d.ts +2 -2
  625. package/extensions/forms/Field/Number/Number.js +33 -31
  626. package/extensions/forms/Field/Number/Number.js.map +1 -1
  627. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.d.ts +3 -1
  628. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +8 -1
  629. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  630. package/extensions/forms/Field/Selection/Selection.d.ts +4 -1
  631. package/extensions/forms/Field/Selection/Selection.js +27 -20
  632. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  633. package/extensions/forms/Field/Selection/SelectionDocs.js +6 -1
  634. package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  635. package/extensions/forms/FieldBlock/FieldBlock.js +3 -3
  636. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  637. package/extensions/forms/Form/Element/Element.js +9 -9
  638. package/extensions/forms/Form/Element/Element.js.map +1 -1
  639. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  640. package/extensions/forms/Form/Handler/Handler.js +1 -3
  641. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  642. package/extensions/forms/Form/Isolation/Isolation.d.ts +1 -1
  643. package/extensions/forms/Form/Isolation/Isolation.js +26 -8
  644. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  645. package/extensions/forms/Form/Isolation/IsolationDocs.js +0 -1
  646. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  647. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +13 -5
  648. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  649. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +10 -11
  650. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -1
  651. package/extensions/forms/Form/Section/Section.js.map +1 -1
  652. package/extensions/forms/Form/data-context/useData.js +9 -7
  653. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  654. package/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js +3 -3
  655. package/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js.map +1 -1
  656. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +2 -2
  657. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  658. package/extensions/forms/Iterate/Array/Array.js +7 -5
  659. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  660. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -3
  661. package/extensions/forms/Iterate/EditContainer/EditContainer.js +26 -20
  662. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  663. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +10 -0
  664. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  665. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +44 -14
  666. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  667. package/{es/extensions/forms/Iterate/IterateElementContext.d.ts → extensions/forms/Iterate/IterateItemContext.d.ts} +3 -3
  668. package/extensions/forms/Iterate/IterateItemContext.js +4 -0
  669. package/extensions/forms/Iterate/IterateItemContext.js.map +1 -0
  670. package/extensions/forms/Iterate/PushButton/PushButton.js +3 -3
  671. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  672. package/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  673. package/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  674. package/extensions/forms/Iterate/PushContainer/OpenButton.d.ts +4 -0
  675. package/extensions/forms/Iterate/PushContainer/OpenButton.js +32 -0
  676. package/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -0
  677. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +37 -0
  678. package/extensions/forms/Iterate/PushContainer/PushContainer.js +83 -0
  679. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -0
  680. package/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +11 -0
  681. package/extensions/forms/Iterate/PushContainer/PushContainerContext.js +6 -0
  682. package/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -0
  683. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.d.ts +3 -0
  684. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +34 -0
  685. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -0
  686. package/extensions/forms/Iterate/PushContainer/index.d.ts +2 -0
  687. package/extensions/forms/Iterate/PushContainer/index.js +3 -0
  688. package/extensions/forms/Iterate/PushContainer/index.js.map +1 -0
  689. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -4
  690. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  691. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +4 -0
  692. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +15 -6
  693. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  694. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  695. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  696. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +3 -3
  697. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  698. package/extensions/forms/Iterate/hooks/useItem.d.ts +1 -0
  699. package/extensions/forms/Iterate/hooks/useItem.js +9 -0
  700. package/extensions/forms/Iterate/hooks/useItem.js.map +1 -0
  701. package/extensions/forms/Iterate/index.d.ts +3 -1
  702. package/extensions/forms/Iterate/index.js +3 -1
  703. package/extensions/forms/Iterate/index.js.map +1 -1
  704. package/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +19 -0
  705. package/extensions/forms/Value/ArraySelection/ArraySelection.js +70 -0
  706. package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -0
  707. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.d.ts +2 -0
  708. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +8 -0
  709. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -0
  710. package/extensions/forms/Value/ArraySelection/index.d.ts +2 -0
  711. package/extensions/forms/Value/ArraySelection/index.js +3 -0
  712. package/extensions/forms/Value/ArraySelection/index.js.map +1 -0
  713. package/extensions/forms/Value/SelectCountry/SelectCountry.d.ts +7 -0
  714. package/extensions/forms/Value/SelectCountry/SelectCountry.js +44 -0
  715. package/extensions/forms/Value/SelectCountry/SelectCountry.js.map +1 -0
  716. package/extensions/forms/Value/SelectCountry/index.d.ts +2 -0
  717. package/extensions/forms/Value/SelectCountry/index.js +3 -0
  718. package/extensions/forms/Value/SelectCountry/index.js.map +1 -0
  719. package/extensions/forms/Value/Selection/Selection.d.ts +9 -0
  720. package/extensions/forms/Value/Selection/Selection.js +48 -0
  721. package/extensions/forms/Value/Selection/Selection.js.map +1 -0
  722. package/extensions/forms/Value/Selection/SelectionDocs.d.ts +2 -0
  723. package/extensions/forms/Value/Selection/SelectionDocs.js +8 -0
  724. package/extensions/forms/Value/Selection/SelectionDocs.js.map +1 -0
  725. package/extensions/forms/Value/Selection/index.d.ts +2 -0
  726. package/extensions/forms/Value/Selection/index.js +3 -0
  727. package/extensions/forms/Value/Selection/index.js.map +1 -0
  728. package/extensions/forms/Value/ValueDocs.js +6 -1
  729. package/extensions/forms/Value/ValueDocs.js.map +1 -1
  730. package/extensions/forms/Value/index.d.ts +3 -0
  731. package/extensions/forms/Value/index.js +3 -0
  732. package/extensions/forms/Value/index.js.map +1 -1
  733. package/extensions/forms/ValueBlock/ValueBlock.js +7 -6
  734. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  735. package/extensions/forms/ValueBlock/style/dnb-value-block.css +3 -0
  736. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  737. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +3 -0
  738. package/extensions/forms/Wizard/Container/WizardContainer.js +27 -11
  739. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  740. package/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  741. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  742. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -4
  743. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  744. package/extensions/forms/constants/locales/en-GB.d.ts +5 -0
  745. package/extensions/forms/constants/locales/en-GB.js +6 -1
  746. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  747. package/extensions/forms/constants/locales/en-US.d.ts +5 -0
  748. package/extensions/forms/constants/locales/index.d.ts +10 -0
  749. package/extensions/forms/constants/locales/nb-NO.d.ts +5 -0
  750. package/extensions/forms/constants/locales/nb-NO.js +6 -1
  751. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  752. package/extensions/forms/hooks/DataValueDocs.js +3 -3
  753. package/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  754. package/extensions/forms/hooks/useDataValue.d.ts +1 -0
  755. package/extensions/forms/hooks/useDataValue.js +11 -4
  756. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  757. package/extensions/forms/hooks/useExternalValue.js +4 -4
  758. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  759. package/extensions/forms/hooks/useFieldProps.js +11 -9
  760. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  761. package/extensions/forms/hooks/usePath.js +2 -2
  762. package/extensions/forms/hooks/usePath.js.map +1 -1
  763. package/extensions/forms/hooks/useValueProps.js +4 -1
  764. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  765. package/extensions/forms/style/dnb-forms.css +3 -0
  766. package/extensions/forms/style/dnb-forms.min.css +1 -1
  767. package/extensions/forms/types.d.ts +9 -2
  768. package/extensions/forms/types.js.map +1 -1
  769. package/index.d.ts +2 -1
  770. package/index.js +2 -1
  771. package/index.js.map +1 -1
  772. package/package.json +2 -1
  773. package/shared/Context.js +4 -6
  774. package/shared/Context.js.map +1 -1
  775. package/shared/Eufemia.d.ts +1 -1
  776. package/shared/Eufemia.js +2 -2
  777. package/shared/Eufemia.js.map +1 -1
  778. package/shared/locales/en-GB.d.ts +4 -0
  779. package/shared/locales/en-GB.js +4 -0
  780. package/shared/locales/en-GB.js.map +1 -1
  781. package/shared/locales/en-US.d.ts +4 -0
  782. package/shared/locales/index.d.ts +8 -0
  783. package/shared/locales/nb-NO.d.ts +4 -0
  784. package/shared/locales/nb-NO.js +5 -1
  785. package/shared/locales/nb-NO.js.map +1 -1
  786. package/shared/useTheme.d.ts +4 -10
  787. package/shared/useTheme.js +7 -5
  788. package/shared/useTheme.js.map +1 -1
  789. package/style/core/scopes.scss +1 -1
  790. package/style/dnb-ui-basis.css +1 -1
  791. package/style/dnb-ui-basis.min.css +1 -1
  792. package/style/dnb-ui-body.css +1 -1
  793. package/style/dnb-ui-body.min.css +1 -1
  794. package/style/dnb-ui-components.css +26 -0
  795. package/style/dnb-ui-components.min.css +3 -3
  796. package/style/dnb-ui-components.scss +1 -0
  797. package/style/dnb-ui-core.css +1 -1
  798. package/style/dnb-ui-core.min.css +1 -1
  799. package/style/dnb-ui-extensions.css +3 -0
  800. package/style/dnb-ui-extensions.min.css +1 -1
  801. package/style/dnb-ui-forms.css +3 -0
  802. package/style/dnb-ui-forms.min.css +1 -1
  803. package/style/themes/theme-eiendom/eiendom-theme-components.css +29 -0
  804. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  805. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -0
  806. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  807. package/style/themes/theme-eiendom/eiendom-theme-forms.css +3 -0
  808. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  809. package/style/themes/theme-sbanken/sbanken-theme-components.css +29 -0
  810. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  811. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -0
  812. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  813. package/style/themes/theme-sbanken/sbanken-theme-forms.css +3 -0
  814. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  815. package/style/themes/theme-ui/ui-theme-components.css +29 -0
  816. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  817. package/style/themes/theme-ui/ui-theme-extensions.css +3 -0
  818. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  819. package/style/themes/theme-ui/ui-theme-forms.css +3 -0
  820. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  821. package/umd/dnb-ui-basis.min.js +1 -1
  822. package/umd/dnb-ui-components.min.js +1 -1
  823. package/umd/dnb-ui-elements.min.js +1 -1
  824. package/umd/dnb-ui-extensions.min.js +5 -5
  825. package/umd/dnb-ui-lib.min.js +1 -1
  826. package/cjs/extensions/forms/Iterate/IterateElementContext.js.map +0 -1
  827. package/es/extensions/forms/Iterate/IterateElementContext.js +0 -4
  828. package/es/extensions/forms/Iterate/IterateElementContext.js.map +0 -1
  829. package/extensions/forms/Iterate/IterateElementContext.js +0 -4
  830. package/extensions/forms/Iterate/IterateElementContext.js.map +0 -1
@@ -0,0 +1,44 @@
1
+ "use client";
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
+ const _excluded = ["value", "className", "label"];
6
+ import React, { useContext, useMemo } from 'react';
7
+ import classnames from 'classnames';
8
+ import { useTranslation, useValueProps } from '../../hooks';
9
+ import ValueBlock from '../../ValueBlock';
10
+ import SharedContext from '../../../../shared/Context';
11
+ import { getCountryData } from '../../Field/SelectCountry';
12
+ function SelectCountry(props) {
13
+ const {
14
+ locale
15
+ } = useContext(SharedContext);
16
+ const translations = useTranslation().SelectCountry;
17
+ const _useValueProps = useValueProps(props),
18
+ {
19
+ value,
20
+ className,
21
+ label = translations.label
22
+ } = _useValueProps,
23
+ rest = _objectWithoutProperties(_useValueProps, _excluded);
24
+ const countryName = useMemo(() => {
25
+ var _getCountryData$at;
26
+ if (!value) {
27
+ return null;
28
+ }
29
+ const lang = locale === null || locale === void 0 ? void 0 : locale.split('-')[0];
30
+ return (_getCountryData$at = getCountryData({
31
+ lang,
32
+ filter: country => {
33
+ return country.iso === value;
34
+ }
35
+ }).at(0)) === null || _getCountryData$at === void 0 ? void 0 : _getCountryData$at.content;
36
+ }, [locale, value]);
37
+ return React.createElement(ValueBlock, _extends({
38
+ label: label,
39
+ className: classnames('dnb-forms-value-select-country', className)
40
+ }, rest), countryName);
41
+ }
42
+ SelectCountry._supportsSpacingProps = true;
43
+ export default SelectCountry;
44
+ //# sourceMappingURL=SelectCountry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectCountry.js","names":["React","useContext","useMemo","classnames","useTranslation","useValueProps","ValueBlock","SharedContext","getCountryData","SelectCountry","props","locale","translations","_useValueProps","value","className","label","rest","_objectWithoutProperties","_excluded","countryName","_getCountryData$at","lang","split","filter","country","iso","at","content","createElement","_extends","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Value/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { useTranslation, useValueProps } from '../../hooks'\nimport { ValueProps } from '../../types'\nimport ValueBlock from '../../ValueBlock'\nimport SharedContext from '../../../../shared/Context'\nimport { getCountryData } from '../../Field/SelectCountry'\nimport { CountryLang } from '../../constants/countries'\n\nexport type Props = ValueProps<string>\n\nfunction SelectCountry(props: Props) {\n const { locale } = useContext(SharedContext)\n const translations = useTranslation().SelectCountry\n const {\n value,\n className,\n label = translations.label,\n ...rest\n } = useValueProps(props)\n\n const countryName = useMemo(() => {\n if (!value) {\n return null\n }\n\n const lang = locale?.split('-')[0] as CountryLang\n return getCountryData({\n lang,\n filter: (country) => {\n return country.iso === value\n },\n }).at(0)?.content\n }, [locale, value])\n\n return (\n <ValueBlock\n label={label}\n className={classnames('dnb-forms-value-select-country', className)}\n {...rest}\n >\n {countryName}\n </ValueBlock>\n )\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,cAAc,EAAEC,aAAa,QAAQ,aAAa;AAE3D,OAAOC,UAAU,MAAM,kBAAkB;AACzC,OAAOC,aAAa,MAAM,4BAA4B;AACtD,SAASC,cAAc,QAAQ,2BAA2B;AAK1D,SAASC,aAAaA,CAACC,KAAY,EAAE;EACnC,MAAM;IAAEC;EAAO,CAAC,GAAGV,UAAU,CAACM,aAAa,CAAC;EAC5C,MAAMK,YAAY,GAAGR,cAAc,CAAC,CAAC,CAACK,aAAa;EACnD,MAAAI,cAAA,GAKIR,aAAa,CAACK,KAAK,CAAC;IALlB;MACJI,KAAK;MACLC,SAAS;MACTC,KAAK,GAAGJ,YAAY,CAACI;IAEvB,CAAC,GAAAH,cAAA;IADII,IAAI,GAAAC,wBAAA,CAAAL,cAAA,EAAAM,SAAA;EAGT,MAAMC,WAAW,GAAGlB,OAAO,CAAC,MAAM;IAAA,IAAAmB,kBAAA;IAChC,IAAI,CAACP,KAAK,EAAE;MACV,OAAO,IAAI;IACb;IAEA,MAAMQ,IAAI,GAAGX,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEY,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAgB;IACjD,QAAAF,kBAAA,GAAOb,cAAc,CAAC;MACpBc,IAAI;MACJE,MAAM,EAAGC,OAAO,IAAK;QACnB,OAAOA,OAAO,CAACC,GAAG,KAAKZ,KAAK;MAC9B;IACF,CAAC,CAAC,CAACa,EAAE,CAAC,CAAC,CAAC,cAAAN,kBAAA,uBALDA,kBAAA,CAKGO,OAAO;EACnB,CAAC,EAAE,CAACjB,MAAM,EAAEG,KAAK,CAAC,CAAC;EAEnB,OACEd,KAAA,CAAA6B,aAAA,CAACvB,UAAU,EAAAwB,QAAA;IACTd,KAAK,EAAEA,KAAM;IACbD,SAAS,EAAEZ,UAAU,CAAC,gCAAgC,EAAEY,SAAS;EAAE,GAC/DE,IAAI,GAEPG,WACS,CAAC;AAEjB;AAEAX,aAAa,CAACsB,qBAAqB,GAAG,IAAI;AAC1C,eAAetB,aAAa"}
@@ -0,0 +1,2 @@
1
+ export { default } from './SelectCountry';
2
+ export * from './SelectCountry';
@@ -0,0 +1,3 @@
1
+ export { default } from './SelectCountry';
2
+ export * from './SelectCountry';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../../src/extensions/forms/Value/SelectCountry/index.ts"],"sourcesContent":["export { default } from './SelectCountry'\nexport * from './SelectCountry'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,iBAAiB;AACzC,cAAc,iBAAiB"}
@@ -0,0 +1,9 @@
1
+ import { Path, ValueProps } from '../../types';
2
+ export type Props = ValueProps<string> & {
3
+ dataPath?: Path;
4
+ };
5
+ declare function Selection(props: Props): import("react/jsx-runtime").JSX.Element;
6
+ declare namespace Selection {
7
+ var _supportsSpacingProps: boolean;
8
+ }
9
+ export default Selection;
@@ -0,0 +1,48 @@
1
+ "use client";
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
+ const _excluded = ["path", "dataPath", "value"];
6
+ import React, { useContext, useMemo } from 'react';
7
+ import StringValue from '../String';
8
+ import { useValueProps } from '../../hooks';
9
+ import useDataValue from '../../hooks/useDataValue';
10
+ import Context from '../../DataContext/Context';
11
+ import { convertJsxToString } from '../../../../shared/component-helper';
12
+ function Selection(props) {
13
+ const {
14
+ fieldPropsRef
15
+ } = useContext(Context) || {};
16
+ const _useValueProps = useValueProps(props),
17
+ {
18
+ path,
19
+ dataPath,
20
+ value
21
+ } = _useValueProps,
22
+ rest = _objectWithoutProperties(_useValueProps, _excluded);
23
+ const {
24
+ getValueByPath
25
+ } = useDataValue();
26
+ const valueToDisplay = useMemo(() => {
27
+ var _fieldPropsRef$curren;
28
+ const fieldProp = fieldPropsRef === null || fieldPropsRef === void 0 ? void 0 : (_fieldPropsRef$curren = fieldPropsRef.current) === null || _fieldPropsRef$curren === void 0 ? void 0 : _fieldPropsRef$curren[path];
29
+ if (path || dataPath) {
30
+ var _getValueByPath, _getValueByPath$map, _list, _list$find, _list$find$call, _list$find$call$props;
31
+ let list = (_getValueByPath = getValueByPath(dataPath)) === null || _getValueByPath === void 0 ? void 0 : (_getValueByPath$map = _getValueByPath.map) === null || _getValueByPath$map === void 0 ? void 0 : _getValueByPath$map.call(_getValueByPath, props => ({
32
+ props
33
+ }));
34
+ if (!list) {
35
+ list = fieldProp === null || fieldProp === void 0 ? void 0 : fieldProp['children'];
36
+ }
37
+ const title = (_list = list) === null || _list === void 0 ? void 0 : (_list$find = _list.find) === null || _list$find === void 0 ? void 0 : (_list$find$call = _list$find.call(_list, child => child.props.value === value)) === null || _list$find$call === void 0 ? void 0 : (_list$find$call$props = _list$find$call.props) === null || _list$find$call$props === void 0 ? void 0 : _list$find$call$props.title;
38
+ return title ? convertJsxToString(title) : value;
39
+ }
40
+ return value;
41
+ }, [dataPath, fieldPropsRef, getValueByPath, path, value]);
42
+ return React.createElement(StringValue, _extends({
43
+ value: valueToDisplay
44
+ }, rest));
45
+ }
46
+ Selection._supportsSpacingProps = true;
47
+ export default Selection;
48
+ //# sourceMappingURL=Selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Selection.js","names":["React","useContext","useMemo","StringValue","useValueProps","useDataValue","Context","convertJsxToString","Selection","props","fieldPropsRef","_useValueProps","path","dataPath","value","rest","_objectWithoutProperties","_excluded","getValueByPath","valueToDisplay","_fieldPropsRef$curren","fieldProp","current","_getValueByPath","_getValueByPath$map","_list","_list$find","_list$find$call","_list$find$call$props","list","map","call","title","find","child","createElement","_extends","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Value/Selection/Selection.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringValue from '../String'\nimport { Path, ValueProps } from '../../types'\nimport { useValueProps } from '../../hooks'\nimport useDataValue from '../../hooks/useDataValue'\nimport Context from '../../DataContext/Context'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport { Data } from '../../Field/Selection'\n\nexport type Props = ValueProps<string> & {\n dataPath?: Path\n}\n\nfunction Selection(props: Props) {\n const { fieldPropsRef } = useContext(Context) || {}\n const { path, dataPath, value, ...rest } = useValueProps(props)\n const { getValueByPath } = useDataValue()\n\n const valueToDisplay = useMemo<string | undefined>(() => {\n const fieldProp = fieldPropsRef?.current?.[path]\n\n if (path || dataPath) {\n let list = getValueByPath(dataPath)?.map?.((props) => ({ props }))\n\n if (!list) {\n list = fieldProp?.['children'] as Array<\n Omit<JSX.Element, 'props'> & { props: Data[number] }\n >\n }\n\n const title = list?.find?.((child) => child.props.value === value)\n ?.props?.title\n\n return title ? convertJsxToString(title) : value\n }\n\n return value\n }, [dataPath, fieldPropsRef, getValueByPath, path, value])\n\n return <StringValue value={valueToDisplay} {...rest} />\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,WAAW,MAAM,WAAW;AAEnC,SAASC,aAAa,QAAQ,aAAa;AAC3C,OAAOC,YAAY,MAAM,0BAA0B;AACnD,OAAOC,OAAO,MAAM,2BAA2B;AAC/C,SAASC,kBAAkB,QAAQ,qCAAqC;AAOxE,SAASC,SAASA,CAACC,KAAY,EAAE;EAC/B,MAAM;IAAEC;EAAc,CAAC,GAAGT,UAAU,CAACK,OAAO,CAAC,IAAI,CAAC,CAAC;EACnD,MAAAK,cAAA,GAA2CP,aAAa,CAACK,KAAK,CAAC;IAAzD;MAAEG,IAAI;MAAEC,QAAQ;MAAEC;IAAe,CAAC,GAAAH,cAAA;IAANI,IAAI,GAAAC,wBAAA,CAAAL,cAAA,EAAAM,SAAA;EACtC,MAAM;IAAEC;EAAe,CAAC,GAAGb,YAAY,CAAC,CAAC;EAEzC,MAAMc,cAAc,GAAGjB,OAAO,CAAqB,MAAM;IAAA,IAAAkB,qBAAA;IACvD,MAAMC,SAAS,GAAGX,aAAa,aAAbA,aAAa,wBAAAU,qBAAA,GAAbV,aAAa,CAAEY,OAAO,cAAAF,qBAAA,uBAAtBA,qBAAA,CAAyBR,IAAI,CAAC;IAEhD,IAAIA,IAAI,IAAIC,QAAQ,EAAE;MAAA,IAAAU,eAAA,EAAAC,mBAAA,EAAAC,KAAA,EAAAC,UAAA,EAAAC,eAAA,EAAAC,qBAAA;MACpB,IAAIC,IAAI,IAAAN,eAAA,GAAGL,cAAc,CAACL,QAAQ,CAAC,cAAAU,eAAA,wBAAAC,mBAAA,GAAxBD,eAAA,CAA0BO,GAAG,cAAAN,mBAAA,uBAA7BA,mBAAA,CAAAO,IAAA,CAAAR,eAAA,EAAiCd,KAAK,KAAM;QAAEA;MAAM,CAAC,CAAC,CAAC;MAElE,IAAI,CAACoB,IAAI,EAAE;QACTA,IAAI,GAAGR,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,UAAU,CAE5B;MACH;MAEA,MAAMW,KAAK,IAAAP,KAAA,GAAGI,IAAI,cAAAJ,KAAA,wBAAAC,UAAA,GAAJD,KAAA,CAAMQ,IAAI,cAAAP,UAAA,wBAAAC,eAAA,GAAVD,UAAA,CAAAK,IAAA,CAAAN,KAAA,EAAcS,KAAK,IAAKA,KAAK,CAACzB,KAAK,CAACK,KAAK,KAAKA,KAAK,CAAC,cAAAa,eAAA,wBAAAC,qBAAA,GAApDD,eAAA,CACVlB,KAAK,cAAAmB,qBAAA,uBADKA,qBAAA,CACHI,KAAK;MAEhB,OAAOA,KAAK,GAAGzB,kBAAkB,CAACyB,KAAK,CAAC,GAAGlB,KAAK;IAClD;IAEA,OAAOA,KAAK;EACd,CAAC,EAAE,CAACD,QAAQ,EAAEH,aAAa,EAAEQ,cAAc,EAAEN,IAAI,EAAEE,KAAK,CAAC,CAAC;EAE1D,OAAOd,KAAA,CAAAmC,aAAA,CAAChC,WAAW,EAAAiC,QAAA;IAACtB,KAAK,EAAEK;EAAe,GAAKJ,IAAI,CAAG,CAAC;AACzD;AAEAP,SAAS,CAAC6B,qBAAqB,GAAG,IAAI;AACtC,eAAe7B,SAAS"}
@@ -0,0 +1,2 @@
1
+ import { PropertiesTableProps } from '../../../../shared/types';
2
+ export declare const SelectionProperties: PropertiesTableProps;
@@ -0,0 +1,8 @@
1
+ export const SelectionProperties = {
2
+ dataPath: {
3
+ doc: 'The path to the context data (Form.Handler). The context data object needs to have a `value` and a `title` property. The generated options will be placed above given JSX based children.',
4
+ type: 'string',
5
+ status: 'optional'
6
+ }
7
+ };
8
+ //# sourceMappingURL=SelectionDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectionDocs.js","names":["SelectionProperties","dataPath","doc","type","status"],"sources":["../../../../../../src/extensions/forms/Value/Selection/SelectionDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const SelectionProperties: PropertiesTableProps = {\n dataPath: {\n doc: 'The path to the context data (Form.Handler). The context data object needs to have a `value` and a `title` property. The generated options will be placed above given JSX based children.',\n type: 'string',\n status: 'optional',\n },\n}\n"],"mappings":"AAEA,OAAO,MAAMA,mBAAyC,GAAG;EACvDC,QAAQ,EAAE;IACRC,GAAG,EAAE,2LAA2L;IAChMC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { default } from './Selection';
2
+ export * from './Selection';
@@ -0,0 +1,3 @@
1
+ export { default } from './Selection';
2
+ export * from './Selection';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../../src/extensions/forms/Value/Selection/index.ts"],"sourcesContent":["export { default } from './Selection'\nexport * from './Selection'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,aAAa;AACrC,cAAc,aAAa"}
@@ -10,10 +10,15 @@ export const ValueProperties = {
10
10
  status: 'optional'
11
11
  },
12
12
  label: {
13
- doc: 'Field label to show above the data value.',
13
+ doc: 'Field label to show above the displayed value.',
14
14
  type: 'string',
15
15
  status: 'optional'
16
16
  },
17
+ inheritLabel: {
18
+ doc: 'Use `true` to inherit the label from a visible (rendered) field with the same path.',
19
+ type: 'boolean',
20
+ status: 'optional'
21
+ },
17
22
  showEmpty: {
18
23
  doc: 'Shows the value even if it is empty.',
19
24
  type: 'boolean',
@@ -1 +1 @@
1
- {"version":3,"file":"ValueDocs.js","names":["ValueProperties","value","doc","type","status","defaultValue","label","showEmpty","placeholder","path","inline","maxWidth","transformIn"],"sources":["../../../../../src/extensions/forms/Value/ValueDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../shared/types'\n\nexport const ValueProperties: PropertiesTableProps = {\n value: {\n doc: 'Value for the value component. Will take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n defaultValue: {\n doc: 'Default value for the value component. Will not take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n label: {\n doc: 'Field label to show above the data value.',\n type: 'string',\n status: 'optional',\n },\n showEmpty: {\n doc: 'Shows the value even if it is empty.',\n type: 'boolean',\n status: 'optional',\n },\n placeholder: {\n doc: 'Text showing in place of the value if no value is given.',\n type: 'string',\n status: 'optional',\n },\n path: {\n doc: 'JSON Pointer for where the data for this input is located in the source dataset.',\n type: 'string',\n status: 'optional',\n },\n inline: {\n doc: 'For showing the value inline (not as a block element).',\n type: 'boolean',\n status: 'optional',\n },\n maxWidth: {\n doc: 'Use `auto` for no max-width (use browser default), `small`, `medium` or `large` for predefined standard max widths. Defaults to `large`.',\n type: 'string',\n status: 'optional',\n },\n transformIn: {\n doc: 'Transforms the `value` before its displayed in the value component.',\n type: 'function',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n"],"mappings":"AAEA,OAAO,MAAMA,eAAqC,GAAG;EACnDC,KAAK,EAAE;IACLC,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZH,GAAG,EAAE,gHAAgH;IACrHC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDE,KAAK,EAAE;IACLJ,GAAG,EAAE,2CAA2C;IAChDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,SAAS,EAAE;IACTL,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDI,WAAW,EAAE;IACXN,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,IAAI,EAAE;IACJP,GAAG,EAAE,kFAAkF;IACvFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDM,MAAM,EAAE;IACNR,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDO,QAAQ,EAAE;IACRT,GAAG,EAAE,0IAA0I;IAC/IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,WAAW,EAAE;IACXV,GAAG,EAAE,qEAAqE;IAC1EC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC"}
1
+ {"version":3,"file":"ValueDocs.js","names":["ValueProperties","value","doc","type","status","defaultValue","label","inheritLabel","showEmpty","placeholder","path","inline","maxWidth","transformIn"],"sources":["../../../../../src/extensions/forms/Value/ValueDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../shared/types'\n\nexport const ValueProperties: PropertiesTableProps = {\n value: {\n doc: 'Value for the value component. Will take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n defaultValue: {\n doc: 'Default value for the value component. Will not take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n label: {\n doc: 'Field label to show above the displayed value.',\n type: 'string',\n status: 'optional',\n },\n inheritLabel: {\n doc: 'Use `true` to inherit the label from a visible (rendered) field with the same path.',\n type: 'boolean',\n status: 'optional',\n },\n showEmpty: {\n doc: 'Shows the value even if it is empty.',\n type: 'boolean',\n status: 'optional',\n },\n placeholder: {\n doc: 'Text showing in place of the value if no value is given.',\n type: 'string',\n status: 'optional',\n },\n path: {\n doc: 'JSON Pointer for where the data for this input is located in the source dataset.',\n type: 'string',\n status: 'optional',\n },\n inline: {\n doc: 'For showing the value inline (not as a block element).',\n type: 'boolean',\n status: 'optional',\n },\n maxWidth: {\n doc: 'Use `auto` for no max-width (use browser default), `small`, `medium` or `large` for predefined standard max widths. Defaults to `large`.',\n type: 'string',\n status: 'optional',\n },\n transformIn: {\n doc: 'Transforms the `value` before its displayed in the value component.',\n type: 'function',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n"],"mappings":"AAEA,OAAO,MAAMA,eAAqC,GAAG;EACnDC,KAAK,EAAE;IACLC,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZH,GAAG,EAAE,gHAAgH;IACrHC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDE,KAAK,EAAE;IACLJ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,YAAY,EAAE;IACZL,GAAG,EAAE,qFAAqF;IAC1FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDI,SAAS,EAAE;IACTN,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDK,WAAW,EAAE;IACXP,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDM,IAAI,EAAE;IACJR,GAAG,EAAE,kFAAkF;IACvFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,MAAM,EAAE;IACNT,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,QAAQ,EAAE;IACRV,GAAG,EAAE,0IAA0I;IAC/IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDS,WAAW,EAAE;IACXX,GAAG,EAAE,qEAAqE;IAC1EC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC"}
@@ -12,3 +12,6 @@ export { default as BankAccountNumber } from './BankAccountNumber';
12
12
  export { default as OrganizationNumber } from './OrganizationNumber';
13
13
  export { default as SummaryList } from './SummaryList';
14
14
  export { default as Composition } from './Composition';
15
+ export { default as SelectCountry } from './SelectCountry';
16
+ export { default as ArraySelection } from './ArraySelection';
17
+ export { default as Selection } from './Selection';
@@ -12,4 +12,7 @@ export { default as BankAccountNumber } from './BankAccountNumber';
12
12
  export { default as OrganizationNumber } from './OrganizationNumber';
13
13
  export { default as SummaryList } from './SummaryList';
14
14
  export { default as Composition } from './Composition';
15
+ export { default as SelectCountry } from './SelectCountry';
16
+ export { default as ArraySelection } from './ArraySelection';
17
+ export { default as Selection } from './Selection';
15
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","String","Number","Boolean","Currency","Date","Email","Name","NationalIdentityNumber","PostalCodeAndCity","PhoneNumber","BankAccountNumber","OrganizationNumber","SummaryList","Composition"],"sources":["../../../../../src/extensions/forms/Value/index.ts"],"sourcesContent":["export { default as String } from './String'\nexport { default as Number } from './Number'\nexport { default as Boolean } from './Boolean'\nexport { default as Currency } from './Currency'\nexport { default as Date } from './Date'\nexport { default as Email } from './Email'\nexport { default as Name } from './Name'\nexport { default as NationalIdentityNumber } from './NationalIdentityNumber'\nexport { default as PostalCodeAndCity } from './PostalCodeAndCity'\nexport { default as PhoneNumber } from './PhoneNumber'\nexport { default as BankAccountNumber } from './BankAccountNumber'\nexport { default as OrganizationNumber } from './OrganizationNumber'\nexport { default as SummaryList } from './SummaryList'\nexport { default as Composition } from './Composition'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,MAAM,QAAQ,UAAU;AAC5C,SAASD,OAAO,IAAIE,MAAM,QAAQ,UAAU;AAC5C,SAASF,OAAO,IAAIG,OAAO,QAAQ,WAAW;AAC9C,SAASH,OAAO,IAAII,QAAQ,QAAQ,YAAY;AAChD,SAASJ,OAAO,IAAIK,IAAI,QAAQ,QAAQ;AACxC,SAASL,OAAO,IAAIM,KAAK,QAAQ,SAAS;AAC1C,SAASN,OAAO,IAAIO,IAAI,QAAQ,QAAQ;AACxC,SAASP,OAAO,IAAIQ,sBAAsB,QAAQ,0BAA0B;AAC5E,SAASR,OAAO,IAAIS,iBAAiB,QAAQ,qBAAqB;AAClE,SAAST,OAAO,IAAIU,WAAW,QAAQ,eAAe;AACtD,SAASV,OAAO,IAAIW,iBAAiB,QAAQ,qBAAqB;AAClE,SAASX,OAAO,IAAIY,kBAAkB,QAAQ,sBAAsB;AACpE,SAASZ,OAAO,IAAIa,WAAW,QAAQ,eAAe;AACtD,SAASb,OAAO,IAAIc,WAAW,QAAQ,eAAe"}
1
+ {"version":3,"file":"index.js","names":["default","String","Number","Boolean","Currency","Date","Email","Name","NationalIdentityNumber","PostalCodeAndCity","PhoneNumber","BankAccountNumber","OrganizationNumber","SummaryList","Composition","SelectCountry","ArraySelection","Selection"],"sources":["../../../../../src/extensions/forms/Value/index.ts"],"sourcesContent":["export { default as String } from './String'\nexport { default as Number } from './Number'\nexport { default as Boolean } from './Boolean'\nexport { default as Currency } from './Currency'\nexport { default as Date } from './Date'\nexport { default as Email } from './Email'\nexport { default as Name } from './Name'\nexport { default as NationalIdentityNumber } from './NationalIdentityNumber'\nexport { default as PostalCodeAndCity } from './PostalCodeAndCity'\nexport { default as PhoneNumber } from './PhoneNumber'\nexport { default as BankAccountNumber } from './BankAccountNumber'\nexport { default as OrganizationNumber } from './OrganizationNumber'\nexport { default as SummaryList } from './SummaryList'\nexport { default as Composition } from './Composition'\nexport { default as SelectCountry } from './SelectCountry'\nexport { default as ArraySelection } from './ArraySelection'\nexport { default as Selection } from './Selection'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,MAAM,QAAQ,UAAU;AAC5C,SAASD,OAAO,IAAIE,MAAM,QAAQ,UAAU;AAC5C,SAASF,OAAO,IAAIG,OAAO,QAAQ,WAAW;AAC9C,SAASH,OAAO,IAAII,QAAQ,QAAQ,YAAY;AAChD,SAASJ,OAAO,IAAIK,IAAI,QAAQ,QAAQ;AACxC,SAASL,OAAO,IAAIM,KAAK,QAAQ,SAAS;AAC1C,SAASN,OAAO,IAAIO,IAAI,QAAQ,QAAQ;AACxC,SAASP,OAAO,IAAIQ,sBAAsB,QAAQ,0BAA0B;AAC5E,SAASR,OAAO,IAAIS,iBAAiB,QAAQ,qBAAqB;AAClE,SAAST,OAAO,IAAIU,WAAW,QAAQ,eAAe;AACtD,SAASV,OAAO,IAAIW,iBAAiB,QAAQ,qBAAqB;AAClE,SAASX,OAAO,IAAIY,kBAAkB,QAAQ,sBAAsB;AACpE,SAASZ,OAAO,IAAIa,WAAW,QAAQ,eAAe;AACtD,SAASb,OAAO,IAAIc,WAAW,QAAQ,eAAe;AACtD,SAASd,OAAO,IAAIe,aAAa,QAAQ,iBAAiB;AAC1D,SAASf,OAAO,IAAIgB,cAAc,QAAQ,kBAAkB;AAC5D,SAAShB,OAAO,IAAIiB,SAAS,QAAQ,aAAa"}
@@ -13,16 +13,16 @@ import SummaryListContext from '../Value/SummaryList/SummaryListContext';
13
13
  import ValueBlockContext from './ValueBlockContext';
14
14
  import DataContext from '../DataContext/Context';
15
15
  import { pickSpacingProps } from '../../../components/flex/utils';
16
- import IterateElementContext from '../Iterate/IterateElementContext';
16
+ import IterateElementContext from '../Iterate/IterateItemContext';
17
17
  import { convertJsxToString } from '../../../shared/component-helper';
18
18
  function ValueBlock(props) {
19
19
  const summaryListContext = useContext(SummaryListContext);
20
20
  const valueBlockContext = useContext(ValueBlockContext);
21
21
  const dataContext = useContext(DataContext);
22
- const iterateElementContext = useContext(IterateElementContext);
22
+ const iterateItemContext = useContext(IterateElementContext);
23
23
  const {
24
24
  index: iterateIndex
25
- } = iterateElementContext !== null && iterateElementContext !== void 0 ? iterateElementContext : {};
25
+ } = iterateItemContext !== null && iterateItemContext !== void 0 ? iterateItemContext : {};
26
26
  const {
27
27
  className,
28
28
  label: labelProp,
@@ -50,12 +50,13 @@ function ValueBlock(props) {
50
50
  }
51
51
  let content = null;
52
52
  const compositionClass = composition && `dnb-forms-value-block__composition--${composition === true ? 'horizontal' : composition}`;
53
+ const defaultClass = `dnb-forms-value-block__content dnb-forms-value-block__content--gap-${gap === false ? 'none' : gap}`;
53
54
  if (summaryListContext) {
54
55
  const Item = summaryListContext.isNested ? Dl : summaryListContext.layout === 'horizontal' ? Dl.Item : Fragment;
55
56
  if (!label && valueBlockContext !== null && valueBlockContext !== void 0 && valueBlockContext.composition) {
56
57
  var _span;
57
58
  content = (_span = React.createElement("span", {
58
- className: 'dnb-forms-value-block__content' + (gap ? ` dnb-forms-value-block__content--gap-${gap}` : "")
59
+ className: defaultClass
59
60
  }, children)) !== null && _span !== void 0 ? _span : React.createElement("span", {
60
61
  className: "dnb-forms-value-block__placeholder"
61
62
  }, placeholder);
@@ -69,7 +70,7 @@ function ValueBlock(props) {
69
70
  }, label && React.createElement("strong", null, label)), React.createElement(Dd, {
70
71
  className: classnames(compositionClass, summaryListContext.layout !== 'grid' && !summaryListContext.isNested && maxWidth && `dnb-forms-value-block--max-width-${maxWidth}`)
71
72
  }, children ? React.createElement("span", {
72
- className: 'dnb-forms-value-block__content' + (gap ? ` dnb-forms-value-block__content--gap-${gap}` : "")
73
+ className: defaultClass
73
74
  }, children) : React.createElement("span", {
74
75
  className: "dnb-forms-value-block__placeholder"
75
76
  }, placeholder))));
@@ -83,7 +84,7 @@ function ValueBlock(props) {
83
84
  className: "dnb-forms-value-block__label",
84
85
  labelDirection: inline ? 'horizontal' : 'vertical'
85
86
  }, label), children ? React.createElement("span", {
86
- className: 'dnb-forms-value-block__content' + (gap ? ` dnb-forms-value-block__content--gap-${gap}` : "")
87
+ className: defaultClass
87
88
  }, children) : React.createElement("span", {
88
89
  className: "dnb-forms-value-block__placeholder"
89
90
  }, placeholder));
@@ -1 +1 @@
1
- {"version":3,"file":"ValueBlock.js","names":["React","Fragment","useContext","useEffect","useMemo","useRef","classnames","warn","Dd","Dl","Dt","Span","FormLabel","SummaryListContext","ValueBlockContext","DataContext","pickSpacingProps","IterateElementContext","convertJsxToString","ValueBlock","props","summaryListContext","valueBlockContext","dataContext","iterateElementContext","index","iterateIndex","className","label","labelProp","inline","maxWidth","composition","placeholder","showEmpty","children","gap","undefined","replace","String","ref","useNotInSummaryList","prerenderFieldProps","content","compositionClass","Item","isNested","layout","_span","createElement","Provider","value","_objectSpread","_extends","element","labelDirection","current","sibling","previousElementSibling","classList","contains","closest","apply","filter","Boolean","error","_supportsSpacingProps"],"sources":["../../../../../src/extensions/forms/ValueBlock/ValueBlock.tsx"],"sourcesContent":["import React, {\n Fragment,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport { warn } from '../../../shared/helpers'\nimport { Dd, Dl, Dt, Span } from '../../../elements'\nimport { FormLabel } from '../../../components'\nimport SummaryListContext from '../Value/SummaryList/SummaryListContext'\nimport ValueBlockContext from './ValueBlockContext'\nimport DataContext from '../DataContext/Context'\nimport { ValueProps } from '../types'\nimport { pickSpacingProps } from '../../../components/flex/utils'\nimport IterateElementContext from '../Iterate/IterateElementContext'\nimport { convertJsxToString } from '../../../shared/component-helper'\n\n/**\n * Props are documented in ValueDocs.ts\n */\nexport type Props = Omit<ValueProps<unknown>, 'value'> & {\n children?: React.ReactNode\n\n /**\n * Used internally by the Composition component\n */\n composition?: boolean\n\n /**\n * Used internally by the Composition component\n */\n gap?: 'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | false\n}\n\nfunction ValueBlock(props: Props) {\n const summaryListContext = useContext(SummaryListContext)\n const valueBlockContext = useContext(ValueBlockContext)\n const dataContext = useContext(DataContext)\n const iterateElementContext = useContext(IterateElementContext)\n const { index: iterateIndex } = iterateElementContext ?? {}\n\n const {\n className,\n label: labelProp,\n inline,\n maxWidth = props.composition ? props.maxWidth : 'large',\n placeholder,\n showEmpty,\n children,\n composition,\n gap = 'xx-small',\n } = props\n\n const label = useMemo(() => {\n if (inline) {\n return null\n }\n if (iterateIndex !== undefined) {\n return convertJsxToString(labelProp).replace(\n '{itemNr}',\n String(iterateIndex + 1)\n )\n }\n return labelProp\n }, [inline, iterateIndex, labelProp])\n\n const ref = useRef<HTMLElement>(null)\n useNotInSummaryList(valueBlockContext?.composition ? null : ref, label)\n\n if (\n ((children === undefined || children === null || children === false) &&\n !showEmpty &&\n !placeholder) ||\n dataContext?.prerenderFieldProps\n ) {\n return null\n }\n\n let content = null\n\n const compositionClass =\n composition &&\n classnames(\n `dnb-forms-value-block__composition--${\n composition === true ? 'horizontal' : composition\n }`\n )\n\n if (summaryListContext) {\n const Item = summaryListContext.isNested\n ? Dl\n : summaryListContext.layout === 'horizontal'\n ? Dl.Item\n : Fragment\n\n if (!label && valueBlockContext?.composition) {\n content = (\n <span\n className={classnames(\n 'dnb-forms-value-block__content',\n gap && `dnb-forms-value-block__content--gap-${gap}`\n )}\n >\n {children}\n </span>\n ) ?? (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )\n } else {\n content = (\n <SummaryListContext.Provider\n value={{ ...summaryListContext, isNested: true }}\n >\n <Item>\n <Dt className=\"dnb-forms-value-block__label\">\n {label && <strong>{label}</strong>}\n </Dt>\n <Dd\n className={classnames(\n summaryListContext.layout !== 'grid' &&\n !summaryListContext.isNested &&\n maxWidth &&\n `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass\n )}\n >\n {children ? (\n <span\n className={classnames(\n 'dnb-forms-value-block__content',\n gap && `dnb-forms-value-block__content--gap-${gap}`\n )}\n >\n {children}\n </span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </Dd>\n </Item>\n </SummaryListContext.Provider>\n )\n }\n } else {\n content = (\n <Span\n ref={ref}\n className={classnames(\n 'dnb-forms-value-block',\n inline && 'dnb-forms-value-block--inline',\n maxWidth && `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass,\n className\n )}\n {...pickSpacingProps(props)}\n >\n {label && (\n <FormLabel\n element=\"strong\" // enhance a11y: https://www.w3.org/WAI/WCAG21/Techniques/html/H49\n className=\"dnb-forms-value-block__label\"\n labelDirection={inline ? 'horizontal' : 'vertical'}\n >\n {label}\n </FormLabel>\n )}\n {children ? (\n <span\n className={classnames(\n 'dnb-forms-value-block__content',\n gap && `dnb-forms-value-block__content--gap-${gap}`\n )}\n >\n {children}\n </span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </Span>\n )\n }\n\n return (\n <ValueBlockContext.Provider value={props}>\n {content}\n </ValueBlockContext.Provider>\n )\n}\n\nfunction useNotInSummaryList(\n ref: React.RefObject<HTMLElement>,\n label?: React.ReactNode\n) {\n useEffect(() => {\n if (ref?.current) {\n try {\n const sibling = ref.current.previousElementSibling\n\n if (\n sibling?.classList.contains('dnb-forms-value-block') &&\n !ref.current.closest('.dnb-forms-summary-list')\n ) {\n warn.apply(\n warn,\n [\n 'Value components as siblings should be wrapped inside a Value.SummaryList!',\n label,\n ].filter(Boolean)\n )\n }\n } catch (error) {\n //\n }\n }\n }, [label, ref])\n}\n\nValueBlock._supportsSpacingProps = true\nexport default ValueBlock\n"],"mappings":"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"}
1
+ {"version":3,"file":"ValueBlock.js","names":["React","Fragment","useContext","useEffect","useMemo","useRef","classnames","warn","Dd","Dl","Dt","Span","FormLabel","SummaryListContext","ValueBlockContext","DataContext","pickSpacingProps","IterateElementContext","convertJsxToString","ValueBlock","props","summaryListContext","valueBlockContext","dataContext","iterateItemContext","index","iterateIndex","className","label","labelProp","inline","maxWidth","composition","placeholder","showEmpty","children","gap","undefined","replace","String","ref","useNotInSummaryList","prerenderFieldProps","content","compositionClass","defaultClass","Item","isNested","layout","_span","createElement","Provider","value","_objectSpread","_extends","element","labelDirection","current","sibling","previousElementSibling","classList","contains","closest","apply","filter","Boolean","error","_supportsSpacingProps"],"sources":["../../../../../src/extensions/forms/ValueBlock/ValueBlock.tsx"],"sourcesContent":["import React, {\n Fragment,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport { warn } from '../../../shared/helpers'\nimport { Dd, Dl, Dt, Span } from '../../../elements'\nimport { FormLabel } from '../../../components'\nimport SummaryListContext from '../Value/SummaryList/SummaryListContext'\nimport ValueBlockContext from './ValueBlockContext'\nimport DataContext from '../DataContext/Context'\nimport { ValueProps } from '../types'\nimport { pickSpacingProps } from '../../../components/flex/utils'\nimport IterateElementContext from '../Iterate/IterateItemContext'\nimport { convertJsxToString } from '../../../shared/component-helper'\n\n/**\n * Props are documented in ValueDocs.ts\n */\nexport type Props = Omit<ValueProps<unknown>, 'value'> & {\n children?: React.ReactNode\n\n /**\n * Used internally by the Composition component\n */\n composition?: boolean\n\n /**\n * Used internally by the Composition component\n */\n gap?: 'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | false\n}\n\nfunction ValueBlock(props: Props) {\n const summaryListContext = useContext(SummaryListContext)\n const valueBlockContext = useContext(ValueBlockContext)\n const dataContext = useContext(DataContext)\n const iterateItemContext = useContext(IterateElementContext)\n const { index: iterateIndex } = iterateItemContext ?? {}\n\n const {\n className,\n label: labelProp,\n inline,\n maxWidth = props.composition ? props.maxWidth : 'large',\n placeholder,\n showEmpty,\n children,\n composition,\n gap = 'xx-small',\n } = props\n\n const label = useMemo(() => {\n if (inline) {\n return null\n }\n if (iterateIndex !== undefined) {\n return convertJsxToString(labelProp).replace(\n '{itemNr}',\n String(iterateIndex + 1)\n )\n }\n return labelProp\n }, [inline, iterateIndex, labelProp])\n\n const ref = useRef<HTMLElement>(null)\n useNotInSummaryList(valueBlockContext?.composition ? null : ref, label)\n\n if (\n ((children === undefined || children === null || children === false) &&\n !showEmpty &&\n !placeholder) ||\n dataContext?.prerenderFieldProps\n ) {\n return null\n }\n\n let content = null\n\n const compositionClass =\n composition &&\n classnames(\n `dnb-forms-value-block__composition--${\n composition === true ? 'horizontal' : composition\n }`\n )\n const defaultClass = classnames(\n 'dnb-forms-value-block__content',\n `dnb-forms-value-block__content--gap-${gap === false ? 'none' : gap}`\n )\n\n if (summaryListContext) {\n const Item = summaryListContext.isNested\n ? Dl\n : summaryListContext.layout === 'horizontal'\n ? Dl.Item\n : Fragment\n\n if (!label && valueBlockContext?.composition) {\n content = <span className={defaultClass}>{children}</span> ?? (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )\n } else {\n content = (\n <SummaryListContext.Provider\n value={{ ...summaryListContext, isNested: true }}\n >\n <Item>\n <Dt className=\"dnb-forms-value-block__label\">\n {label && <strong>{label}</strong>}\n </Dt>\n <Dd\n className={classnames(\n summaryListContext.layout !== 'grid' &&\n !summaryListContext.isNested &&\n maxWidth &&\n `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass\n )}\n >\n {children ? (\n <span className={defaultClass}>{children}</span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </Dd>\n </Item>\n </SummaryListContext.Provider>\n )\n }\n } else {\n content = (\n <Span\n ref={ref}\n className={classnames(\n 'dnb-forms-value-block',\n inline && 'dnb-forms-value-block--inline',\n maxWidth && `dnb-forms-value-block--max-width-${maxWidth}`,\n compositionClass,\n className\n )}\n {...pickSpacingProps(props)}\n >\n {label && (\n <FormLabel\n element=\"strong\" // enhance a11y: https://www.w3.org/WAI/WCAG21/Techniques/html/H49\n className=\"dnb-forms-value-block__label\"\n labelDirection={inline ? 'horizontal' : 'vertical'}\n >\n {label}\n </FormLabel>\n )}\n {children ? (\n <span className={defaultClass}>{children}</span>\n ) : (\n <span className=\"dnb-forms-value-block__placeholder\">\n {placeholder}\n </span>\n )}\n </Span>\n )\n }\n\n return (\n <ValueBlockContext.Provider value={props}>\n {content}\n </ValueBlockContext.Provider>\n )\n}\n\nfunction useNotInSummaryList(\n ref: React.RefObject<HTMLElement>,\n label?: React.ReactNode\n) {\n useEffect(() => {\n if (ref?.current) {\n try {\n const sibling = ref.current.previousElementSibling\n\n if (\n sibling?.classList.contains('dnb-forms-value-block') &&\n !ref.current.closest('.dnb-forms-summary-list')\n ) {\n warn.apply(\n warn,\n [\n 'Value components as siblings should be wrapped inside a Value.SummaryList!',\n label,\n ].filter(Boolean)\n )\n }\n } catch (error) {\n //\n }\n }\n }, [label, ref])\n}\n\nValueBlock._supportsSpacingProps = true\nexport default ValueBlock\n"],"mappings":"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"}
@@ -55,6 +55,9 @@
55
55
  /* stylelint-disable */
56
56
  /* stylelint-enable */
57
57
  }
58
+ .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-none {
59
+ --column-gap: 0;
60
+ }
58
61
  .dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-xx-small {
59
62
  --column-gap: var(--spacing-xx-small);
60
63
  }
@@ -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-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: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}
@@ -67,6 +67,9 @@
67
67
  row-gap: var(--row-gap, var(--spacing-medium));
68
68
  column-gap: var(--column-gap, 0);
69
69
 
70
+ &--gap-none {
71
+ --column-gap: 0;
72
+ }
70
73
  &--gap-xx-small {
71
74
  --column-gap: var(--spacing-xx-small);
72
75
  }
@@ -22,6 +22,7 @@ import useHandleLayoutEffect from './useHandleLayoutEffect';
22
22
  import useVisibility from '../../Form/Visibility/useVisibility';
23
23
  const useLayoutEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;
24
24
  function WizardContainer(props) {
25
+ var _dataContext$setHandl;
25
26
  const {
26
27
  className,
27
28
  id: idProp,
@@ -37,6 +38,7 @@ function WizardContainer(props) {
37
38
  sidebarId
38
39
  } = props,
39
40
  rest = _objectWithoutProperties(props, _excluded);
41
+ const dataContext = useContext(DataContext);
40
42
  const {
41
43
  hasContext,
42
44
  setFormState,
@@ -44,10 +46,11 @@ function WizardContainer(props) {
44
46
  setShowAllErrors,
45
47
  showAllErrors,
46
48
  setSubmitState
47
- } = useContext(DataContext);
49
+ } = dataContext;
48
50
  const id = useId(idProp);
49
51
  const [, forceUpdate] = useReducer(() => ({}), {});
50
52
  const activeIndexRef = useRef(initialActiveIndex);
53
+ const totalStepsRef = useRef(NaN);
51
54
  const errorOnStepRef = useRef({});
52
55
  const stepElementRef = useRef();
53
56
  const sharedStateRef = useRef();
@@ -135,6 +138,15 @@ function WizardContainer(props) {
135
138
  error
136
139
  });
137
140
  }, [setSubmitState]);
141
+ const handleSubmit = useCallback(({
142
+ preventSubmit
143
+ }) => {
144
+ if (activeIndexRef.current + 1 < totalStepsRef.current) {
145
+ handleNext();
146
+ preventSubmit();
147
+ }
148
+ }, [handleNext]);
149
+ (_dataContext$setHandl = dataContext.setHandleSubmit) === null || _dataContext$setHandl === void 0 ? void 0 : _dataContext$setHandl.call(dataContext, handleSubmit);
138
150
  const titlesRef = useRef({});
139
151
  const updateTitlesRef = useRef();
140
152
  const prerenderFieldPropsRef = useRef({});
@@ -150,6 +162,7 @@ function WizardContainer(props) {
150
162
  titlesRef,
151
163
  updateTitlesRef,
152
164
  activeIndexRef,
165
+ totalStepsRef,
153
166
  prerenderFieldProps,
154
167
  prerenderFieldPropsRef,
155
168
  check,
@@ -230,6 +243,7 @@ function IterateOverSteps({
230
243
  check,
231
244
  titlesRef,
232
245
  activeIndexRef,
246
+ totalStepsRef,
233
247
  prerenderFieldProps,
234
248
  prerenderFieldPropsRef
235
249
  } = useContext(WizardContext);
@@ -280,6 +294,7 @@ function IterateOverSteps({
280
294
  } else if ((childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length) < activeIndexRef.current + 1) {
281
295
  activeIndexRef.current = childrenArray.length - 1;
282
296
  }
297
+ totalStepsRef.current = childrenArray === null || childrenArray === void 0 ? void 0 : childrenArray.length;
283
298
  return childrenArray;
284
299
  }
285
300
  function PrerenderFieldPropsOfOtherSteps({
@@ -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","className","id","idProp","mode","initialActiveIndex","omitScrollManagement","omitFocusManagement","onStepChange","children","noAnimation","prerenderFieldProps","variant","sidebarId","rest","_objectWithoutProperties","_excluded","hasContext","setFormState","handleSubmitCall","setShowAllErrors","showAllErrors","setSubmitState","forceUpdate","activeIndexRef","errorOnStepRef","stepElementRef","sharedStateRef","current","undefined","callOnStepChange","index","setFocus","scrollToTop","isInteractionRef","handleLayoutEffect","handleStepChange","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","skipFieldValidation","enableAsyncBehaviour","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","call","result","Error","setActiveIndex","options","_objectSpread","handlePrevious","handleNext","handleChange","current_step","setFormError","error","titlesRef","updateTitlesRef","prerenderFieldPropsRef","check","activeIndex","providerValue","_sharedStateRef$curre4","_sharedStateRef$curre5","extend","_updateTitlesRef$curr","createElement","_extends","Provider","value","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","sidebar_id","Sidebar","bottom","Object","values","no_animation","on_change","incrementIndex","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","_step","apply","active","activeWhen","visibleWhen","title","key","clone","cloneElement","document","length","hasRenderedRef","WizardPortal","PrerenderFieldPropsProvider","hidden","Fn","i","createPortal","body","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 {\n hasContext,\n setFormState,\n handleSubmitCall,\n setShowAllErrors,\n showAllErrors,\n setSubmitState,\n } = useContext(DataContext)\n\n const id = useId(idProp)\n const [, forceUpdate] = useReducer(() => ({}), {})\n const activeIndexRef = useRef<StepIndex>(initialActiveIndex)\n const errorOnStepRef = useRef<Record<StepIndex, boolean>>({})\n const stepElementRef = useRef<HTMLElement>()\n\n // - Handle shared state\n const sharedStateRef =\n useRef<\n SharedStateReturn<\n WizardContextState & { onStepChange?: OnStepChange }\n >\n >()\n sharedStateRef.current = useSharedState<WizardContextState>(\n hasContext && id ? id + '-wizard' : undefined\n )\n\n // Store the current state of showAllErrors\n errorOnStepRef.current[activeIndexRef.current] = showAllErrors\n\n const callOnStepChange = useCallback(\n async (index: StepIndex, mode: 'previous' | 'next') => {\n if (isAsync(onStepChange)) {\n return await onStepChange(index, mode)\n }\n\n return onStepChange?.(index, mode)\n },\n [onStepChange]\n )\n\n const { setFocus, scrollToTop, isInteractionRef } =\n useHandleLayoutEffect({ activeIndexRef, stepElementRef })\n\n const handleLayoutEffect = useCallback(() => {\n if (!omitFocusManagement) {\n setFocus()\n }\n if (!omitScrollManagement) {\n scrollToTop()\n }\n }, [omitScrollManagement, omitFocusManagement, setFocus, scrollToTop])\n\n const handleStepChange = useCallback(\n ({\n index,\n skipErrorCheck,\n skipStepChangeCall,\n skipStepChangeCallBeforeMounted,\n skipStepChangeCallFromHook,\n mode,\n }: {\n index: StepIndex\n mode: 'previous' | 'next'\n } & SetActiveIndexOptions) => {\n handleSubmitCall({\n skipErrorCheck,\n skipFieldValidation: skipErrorCheck,\n enableAsyncBehaviour: isAsync(onStepChange),\n onSubmit: async () => {\n if (!skipStepChangeCallFromHook) {\n sharedStateRef.current?.data?.onStepChange?.(index, mode)\n }\n\n const result =\n skipStepChangeCall ||\n (skipStepChangeCallBeforeMounted && !isInteractionRef.current)\n ? undefined\n : await callOnStepChange(index, mode)\n\n // Hide async indicator\n setFormState('abort')\n\n if (!skipErrorCheck) {\n // Set the showAllErrors to the step we got to\n setShowAllErrors(errorOnStepRef.current[index])\n }\n\n if (!(result instanceof Error)) {\n handleLayoutEffect()\n\n activeIndexRef.current = index\n forceUpdate()\n }\n\n return result\n },\n })\n },\n [\n callOnStepChange,\n handleLayoutEffect,\n handleSubmitCall,\n isInteractionRef,\n onStepChange,\n setFormState,\n setShowAllErrors,\n ]\n )\n\n const setActiveIndex = useCallback(\n (index: StepIndex, options?: SetActiveIndexOptions) => {\n if (index === activeIndexRef.current) {\n return\n }\n\n const mode = index > activeIndexRef.current ? 'next' : 'previous'\n\n handleStepChange({\n index,\n skipErrorCheck: mode === 'previous',\n mode,\n ...options,\n })\n },\n [handleStepChange]\n )\n\n const handlePrevious = useCallback(() => {\n setActiveIndex(activeIndexRef.current - 1)\n }, [setActiveIndex])\n\n const handleNext = useCallback(() => {\n setActiveIndex(activeIndexRef.current + 1)\n }, [setActiveIndex])\n\n const handleChange = useCallback(\n ({ current_step }) => {\n setActiveIndex(current_step, { skipErrorCheck: true })\n },\n [setActiveIndex]\n )\n\n const setFormError = useCallback(\n (error: Error) => {\n setSubmitState?.({ error })\n },\n [setSubmitState]\n )\n\n const titlesRef = useRef({})\n const updateTitlesRef = useRef<() => void>()\n const prerenderFieldPropsRef = useRef<\n Record<string, () => React.ReactElement>\n >({})\n\n const { check } = useVisibility()\n\n const activeIndex = activeIndexRef.current\n const providerValue = useMemo(() => {\n return {\n id,\n activeIndex,\n stepElementRef,\n titlesRef,\n updateTitlesRef,\n activeIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n check,\n setActiveIndex,\n handlePrevious,\n handleNext,\n setFormError,\n }\n }, [\n activeIndex,\n handleNext,\n handlePrevious,\n id,\n prerenderFieldProps,\n check,\n setActiveIndex,\n setFormError,\n ])\n\n // - Handle shared state\n useLayoutEffect(() => {\n if (id && hasContext) {\n sharedStateRef.current?.extend?.(providerValue)\n }\n }, [id, providerValue]) // eslint-disable-line react-hooks/exhaustive-deps\n\n useLayoutEffect(() => {\n updateTitlesRef.current?.()\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [titlesRef.current])\n\n if (!hasContext) {\n warn('You may wrap Wizard.Container in Form.Handler')\n return (\n <Handler>\n <WizardContainer {...props} id={id} />\n </Handler>\n )\n }\n\n return (\n <WizardContext.Provider value={providerValue}>\n <Space\n className={classnames(\n 'dnb-forms-wizard-layout',\n `dnb-forms-wizard-layout--${variant}`,\n className\n )}\n {...rest}\n >\n <DisplaySteps\n mode={mode}\n variant={variant}\n noAnimation={noAnimation}\n handleChange={handleChange}\n sidebarId={sidebarId}\n />\n\n <div className=\"dnb-forms-wizard-layout__contents\">\n <IterateOverSteps>{children}</IterateOverSteps>\n </div>\n </Space>\n\n {prerenderFieldProps && (\n <PrerenderFieldPropsOfOtherSteps\n prerenderFieldPropsRef={prerenderFieldPropsRef}\n />\n )}\n </WizardContext.Provider>\n )\n}\n\nfunction DisplaySteps({\n mode,\n variant,\n noAnimation,\n handleChange,\n sidebarId,\n}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { id, activeIndexRef, titlesRef, updateTitlesRef } =\n useContext(WizardContext) || {}\n updateTitlesRef.current = () => {\n forceUpdate()\n }\n\n const sidebar_id =\n variant === 'drawer' && !sidebarId ? undefined : sidebarId ?? id\n\n return (\n <aside className=\"dnb-forms-wizard-layout__indicator\">\n <StepIndicator.Sidebar sidebar_id={sidebar_id} />\n <StepIndicator\n bottom\n current_step={activeIndexRef.current}\n data={Object.values(titlesRef.current)}\n mode={mode}\n no_animation={noAnimation}\n on_change={handleChange}\n sidebar_id={sidebar_id}\n />\n </aside>\n )\n}\n\nfunction IterateOverSteps({ children }) {\n const {\n check,\n titlesRef,\n activeIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n } = useContext(WizardContext)\n\n titlesRef.current = {}\n let incrementIndex = -1\n\n const childrenArray = React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n let step = child\n\n if (child?.type !== Step && typeof child.type === 'function') {\n step = child.type.apply(child.type, [\n child.props,\n ]) as React.ReactElement\n\n if (step?.type === Step) {\n child = step\n }\n }\n\n if (child?.type === Step) {\n if (child.props.active === false) {\n return null\n }\n\n if (\n child.props.activeWhen &&\n !check({ visibleWhen: child.props.activeWhen })\n ) {\n return null\n }\n\n incrementIndex++\n const index = incrementIndex\n\n titlesRef.current[index] =\n child.props.title !== undefined\n ? convertJsxToString(child.props.title)\n : 'Title missing'\n const key = `${index}-${activeIndexRef.current}`\n const clone = (props) =>\n React.cloneElement(child as React.ReactElement<StepProps>, props)\n\n if (\n prerenderFieldProps &&\n typeof document !== 'undefined' &&\n index !== activeIndexRef.current &&\n typeof prerenderFieldPropsRef.current['step-' + index] ===\n 'undefined'\n ) {\n prerenderFieldPropsRef.current['step-' + index] = () =>\n clone({\n key,\n index,\n prerenderFieldProps: true,\n })\n }\n\n return clone({\n key,\n index,\n })\n }\n }\n\n return child\n })\n\n // Ensure we never have a higher index than the available children\n // else we get a white screen\n if (childrenArray?.length === 0) {\n activeIndexRef.current = 0\n } else if (childrenArray?.length < activeIndexRef.current + 1) {\n activeIndexRef.current = childrenArray.length - 1\n }\n\n return childrenArray\n}\n\nfunction PrerenderFieldPropsOfOtherSteps({\n prerenderFieldPropsRef,\n}: {\n prerenderFieldPropsRef: WizardContextState['prerenderFieldPropsRef']\n}) {\n const hasRenderedRef = useRef(true)\n if (!hasRenderedRef.current) {\n return null\n }\n hasRenderedRef.current = false\n\n return (\n <WizardPortal>\n <PrerenderFieldPropsProvider>\n <iframe title=\"Wizard Prerender\" hidden>\n {Object.values(prerenderFieldPropsRef.current).map((Fn, i) => (\n <Fn key={i} />\n ))}\n </iframe>\n </PrerenderFieldPropsProvider>\n </WizardPortal>\n )\n}\n\nfunction WizardPortal({ children }) {\n if (typeof document !== 'undefined') {\n return ReactDOM.createPortal(children, document.body)\n }\n}\n\nfunction PrerenderFieldPropsProvider({ children }) {\n const { data, setFieldProps, updateDataValue } = useContext(DataContext)\n\n return (\n <DataContext.Provider\n value={{\n ...defaultContextState,\n\n // Only update the props and the data value\n data,\n setFieldProps,\n updateDataValue,\n prerenderFieldProps: true,\n }}\n >\n <WizardContext.Provider value={{ prerenderFieldProps: true }}>\n {children}\n </WizardContext.Provider>\n </DataContext.Provider>\n )\n}\n\nWizardContainer._supportsSpacingProps = true\n\nexport default WizardContainer\n"],"mappings":"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"}
1
+ {"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","skipErrorCheck","skipStepChangeCall","skipStepChangeCallBeforeMounted","skipStepChangeCallFromHook","skipFieldValidation","enableAsyncBehaviour","onSubmit","_sharedStateRef$curre","_sharedStateRef$curre2","_sharedStateRef$curre3","data","call","result","Error","setActiveIndex","options","_objectSpread","handlePrevious","handleNext","handleChange","current_step","setFormError","error","handleSubmit","preventSubmit","setHandleSubmit","titlesRef","updateTitlesRef","prerenderFieldPropsRef","check","activeIndex","providerValue","_sharedStateRef$curre4","_sharedStateRef$curre5","extend","_updateTitlesRef$curr","createElement","_extends","Provider","value","DisplaySteps","IterateOverSteps","PrerenderFieldPropsOfOtherSteps","sidebar_id","Sidebar","bottom","Object","values","no_animation","on_change","incrementIndex","childrenArray","Children","map","child","isValidElement","_child","_child2","step","type","_step","apply","active","activeWhen","visibleWhen","title","key","clone","cloneElement","document","length","hasRenderedRef","WizardPortal","PrerenderFieldPropsProvider","hidden","Fn","i","createPortal","body","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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"}
@@ -17,6 +17,7 @@ export interface WizardContextState {
17
17
  titlesRef?: React.MutableRefObject<Record<string, string>>;
18
18
  updateTitlesRef?: React.MutableRefObject<() => void>;
19
19
  activeIndexRef?: React.MutableRefObject<StepIndex>;
20
+ totalStepsRef?: React.MutableRefObject<number>;
20
21
  prerenderFieldPropsRef?: React.MutableRefObject<Record<string, () => React.ReactElement>>;
21
22
  prerenderFieldProps?: boolean;
22
23
  handlePrevious?: () => void;