@dnb/eufemia 10.44.0 → 10.45.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 (536) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/cjs/components/checkbox/style/dnb-checkbox.scss +1 -1
  3. package/cjs/components/radio/style/dnb-radio.scss +1 -1
  4. package/cjs/components/table/TableStickyHeader.js.map +1 -1
  5. package/cjs/components/upload/Upload.js +2 -1
  6. package/cjs/components/upload/Upload.js.map +1 -1
  7. package/cjs/components/upload/UploadDocs.d.ts +1 -0
  8. package/cjs/components/upload/UploadDocs.js +17 -4
  9. package/cjs/components/upload/UploadDocs.js.map +1 -1
  10. package/cjs/components/upload/UploadInfo.js +57 -5
  11. package/cjs/components/upload/UploadInfo.js.map +1 -1
  12. package/cjs/components/upload/UploadVerify.d.ts +4 -2
  13. package/cjs/components/upload/UploadVerify.js +32 -5
  14. package/cjs/components/upload/UploadVerify.js.map +1 -1
  15. package/cjs/components/upload/style/dnb-upload.css +15 -0
  16. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  17. package/cjs/components/upload/style/dnb-upload.scss +17 -0
  18. package/cjs/components/upload/types.d.ts +7 -1
  19. package/cjs/components/upload/types.js.map +1 -1
  20. package/cjs/extensions/forms/DataContext/Context.d.ts +8 -3
  21. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  22. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +8 -0
  23. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  24. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +8 -0
  25. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  26. package/cjs/extensions/forms/DataContext/Provider/Provider.js +22 -7
  27. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  28. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +2 -1
  29. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +29 -24
  30. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  31. package/cjs/extensions/forms/Field/Name/Name.js +2 -2
  32. package/cjs/extensions/forms/Field/Name/Name.js.map +1 -1
  33. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +3 -0
  34. package/cjs/extensions/forms/Field/Selection/Selection.js +28 -20
  35. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  36. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +3 -3
  37. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  38. package/cjs/extensions/forms/Form/Element/Element.js +11 -9
  39. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  40. package/cjs/extensions/forms/Form/Isolation/Isolation.js +25 -7
  41. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  42. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +13 -5
  43. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  44. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +10 -13
  45. package/cjs/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -1
  46. package/cjs/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js +3 -3
  47. package/cjs/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js.map +1 -1
  48. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +2 -2
  49. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  50. package/cjs/extensions/forms/Iterate/Array/Array.js +7 -5
  51. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  52. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -3
  53. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +25 -19
  54. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  55. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +10 -0
  56. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  57. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +44 -14
  58. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  59. package/cjs/extensions/forms/Iterate/{IterateElementContext.d.ts → IterateItemContext.d.ts} +3 -3
  60. package/cjs/extensions/forms/Iterate/{IterateElementContext.js → IterateItemContext.js} +3 -3
  61. package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -0
  62. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +3 -3
  63. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  64. package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  65. package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  66. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.d.ts +4 -0
  67. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js +42 -0
  68. package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -0
  69. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +37 -0
  70. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +95 -0
  71. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -0
  72. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +11 -0
  73. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.js +12 -0
  74. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -0
  75. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.d.ts +3 -0
  76. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +42 -0
  77. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -0
  78. package/cjs/extensions/forms/Iterate/PushContainer/index.d.ts +2 -0
  79. package/cjs/extensions/forms/Iterate/PushContainer/index.js +27 -0
  80. package/cjs/extensions/forms/Iterate/PushContainer/index.js.map +1 -0
  81. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -4
  82. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  83. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +4 -0
  84. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +13 -5
  85. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  86. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  87. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  88. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +3 -3
  89. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  90. package/cjs/extensions/forms/Iterate/hooks/useItem.d.ts +1 -0
  91. package/cjs/extensions/forms/Iterate/hooks/useItem.js +15 -0
  92. package/cjs/extensions/forms/Iterate/hooks/useItem.js.map +1 -0
  93. package/cjs/extensions/forms/Iterate/index.d.ts +3 -1
  94. package/cjs/extensions/forms/Iterate/index.js +17 -3
  95. package/cjs/extensions/forms/Iterate/index.js.map +1 -1
  96. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +19 -0
  97. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js +81 -0
  98. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -0
  99. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.d.ts +2 -0
  100. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +15 -0
  101. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -0
  102. package/cjs/extensions/forms/Value/ArraySelection/index.d.ts +2 -0
  103. package/cjs/extensions/forms/Value/ArraySelection/index.js +27 -0
  104. package/cjs/extensions/forms/Value/ArraySelection/index.js.map +1 -0
  105. package/cjs/extensions/forms/Value/Selection/Selection.d.ts +9 -0
  106. package/cjs/extensions/forms/Value/Selection/Selection.js +58 -0
  107. package/cjs/extensions/forms/Value/Selection/Selection.js.map +1 -0
  108. package/cjs/extensions/forms/Value/Selection/SelectionDocs.d.ts +2 -0
  109. package/cjs/extensions/forms/Value/Selection/SelectionDocs.js +15 -0
  110. package/cjs/extensions/forms/Value/Selection/SelectionDocs.js.map +1 -0
  111. package/cjs/extensions/forms/Value/Selection/index.d.ts +2 -0
  112. package/cjs/extensions/forms/Value/Selection/index.js +27 -0
  113. package/cjs/extensions/forms/Value/Selection/index.js.map +1 -0
  114. package/cjs/extensions/forms/Value/ValueDocs.js +6 -1
  115. package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
  116. package/cjs/extensions/forms/Value/index.d.ts +2 -0
  117. package/cjs/extensions/forms/Value/index.js +14 -0
  118. package/cjs/extensions/forms/Value/index.js.map +1 -1
  119. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +3 -3
  120. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  121. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +27 -11
  122. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  123. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  124. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  125. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +3 -0
  126. package/cjs/extensions/forms/constants/locales/en-GB.js +3 -0
  127. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  128. package/cjs/extensions/forms/constants/locales/en-US.d.ts +3 -0
  129. package/cjs/extensions/forms/constants/locales/index.d.ts +6 -0
  130. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +3 -0
  131. package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -0
  132. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  133. package/cjs/extensions/forms/hooks/useDataValue.d.ts +1 -0
  134. package/cjs/extensions/forms/hooks/useDataValue.js +11 -4
  135. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  136. package/cjs/extensions/forms/hooks/useExternalValue.js +4 -4
  137. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  138. package/cjs/extensions/forms/hooks/useFieldProps.js +11 -9
  139. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  140. package/cjs/extensions/forms/hooks/usePath.js +3 -3
  141. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  142. package/cjs/extensions/forms/hooks/useValueProps.js +4 -1
  143. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  144. package/cjs/extensions/forms/types.d.ts +4 -0
  145. package/cjs/extensions/forms/types.js.map +1 -1
  146. package/cjs/shared/Eufemia.d.ts +1 -1
  147. package/cjs/shared/Eufemia.js +2 -2
  148. package/cjs/shared/Eufemia.js.map +1 -1
  149. package/cjs/shared/locales/en-GB.d.ts +1 -0
  150. package/cjs/shared/locales/en-GB.js +1 -0
  151. package/cjs/shared/locales/en-GB.js.map +1 -1
  152. package/cjs/shared/locales/en-US.d.ts +1 -0
  153. package/cjs/shared/locales/index.d.ts +2 -0
  154. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  155. package/cjs/shared/locales/nb-NO.js +2 -1
  156. package/cjs/shared/locales/nb-NO.js.map +1 -1
  157. package/cjs/shared/useTheme.d.ts +4 -10
  158. package/cjs/shared/useTheme.js +7 -5
  159. package/cjs/shared/useTheme.js.map +1 -1
  160. package/cjs/style/core/scopes.scss +1 -1
  161. package/cjs/style/dnb-ui-basis.css +1 -1
  162. package/cjs/style/dnb-ui-basis.min.css +1 -1
  163. package/cjs/style/dnb-ui-body.css +1 -1
  164. package/cjs/style/dnb-ui-body.min.css +1 -1
  165. package/cjs/style/dnb-ui-components.css +15 -0
  166. package/cjs/style/dnb-ui-components.min.css +1 -1
  167. package/cjs/style/dnb-ui-core.css +1 -1
  168. package/cjs/style/dnb-ui-core.min.css +1 -1
  169. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +15 -0
  170. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  171. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +15 -0
  172. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  173. package/cjs/style/themes/theme-ui/ui-theme-components.css +15 -0
  174. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  175. package/components/checkbox/style/dnb-checkbox.scss +1 -1
  176. package/components/radio/style/dnb-radio.scss +1 -1
  177. package/components/table/TableStickyHeader.js.map +1 -1
  178. package/components/upload/Upload.js +2 -1
  179. package/components/upload/Upload.js.map +1 -1
  180. package/components/upload/UploadDocs.d.ts +1 -0
  181. package/components/upload/UploadDocs.js +15 -3
  182. package/components/upload/UploadDocs.js.map +1 -1
  183. package/components/upload/UploadInfo.js +57 -5
  184. package/components/upload/UploadInfo.js.map +1 -1
  185. package/components/upload/UploadVerify.d.ts +4 -2
  186. package/components/upload/UploadVerify.js +30 -5
  187. package/components/upload/UploadVerify.js.map +1 -1
  188. package/components/upload/style/dnb-upload.css +15 -0
  189. package/components/upload/style/dnb-upload.min.css +1 -1
  190. package/components/upload/style/dnb-upload.scss +17 -0
  191. package/components/upload/types.d.ts +7 -1
  192. package/components/upload/types.js.map +1 -1
  193. package/es/components/checkbox/style/dnb-checkbox.scss +1 -1
  194. package/es/components/radio/style/dnb-radio.scss +1 -1
  195. package/es/components/table/TableStickyHeader.js.map +1 -1
  196. package/es/components/upload/Upload.js +2 -1
  197. package/es/components/upload/Upload.js.map +1 -1
  198. package/es/components/upload/UploadDocs.d.ts +1 -0
  199. package/es/components/upload/UploadDocs.js +15 -3
  200. package/es/components/upload/UploadDocs.js.map +1 -1
  201. package/es/components/upload/UploadInfo.js +57 -5
  202. package/es/components/upload/UploadInfo.js.map +1 -1
  203. package/es/components/upload/UploadVerify.d.ts +4 -2
  204. package/es/components/upload/UploadVerify.js +30 -5
  205. package/es/components/upload/UploadVerify.js.map +1 -1
  206. package/es/components/upload/style/dnb-upload.css +15 -0
  207. package/es/components/upload/style/dnb-upload.min.css +1 -1
  208. package/es/components/upload/style/dnb-upload.scss +17 -0
  209. package/es/components/upload/types.d.ts +7 -1
  210. package/es/components/upload/types.js.map +1 -1
  211. package/es/extensions/forms/DataContext/Context.d.ts +8 -3
  212. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  213. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +8 -0
  214. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  215. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +9 -1
  216. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  217. package/es/extensions/forms/DataContext/Provider/Provider.js +22 -7
  218. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  219. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +2 -1
  220. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +28 -24
  221. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  222. package/es/extensions/forms/Field/Name/Name.js +2 -2
  223. package/es/extensions/forms/Field/Name/Name.js.map +1 -1
  224. package/es/extensions/forms/Field/Selection/Selection.d.ts +3 -0
  225. package/es/extensions/forms/Field/Selection/Selection.js +22 -16
  226. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  227. package/es/extensions/forms/FieldBlock/FieldBlock.js +3 -3
  228. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  229. package/es/extensions/forms/Form/Element/Element.js +9 -9
  230. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  231. package/es/extensions/forms/Form/Isolation/Isolation.js +26 -8
  232. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  233. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +13 -5
  234. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  235. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +10 -11
  236. package/es/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -1
  237. package/es/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js +3 -3
  238. package/es/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js.map +1 -1
  239. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +2 -2
  240. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  241. package/es/extensions/forms/Iterate/Array/Array.js +7 -5
  242. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  243. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -3
  244. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +26 -20
  245. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  246. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +10 -0
  247. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  248. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +44 -14
  249. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  250. package/{extensions/forms/Iterate/IterateElementContext.d.ts → es/extensions/forms/Iterate/IterateItemContext.d.ts} +3 -3
  251. package/es/extensions/forms/Iterate/IterateItemContext.js +4 -0
  252. package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -0
  253. package/es/extensions/forms/Iterate/PushButton/PushButton.js +3 -3
  254. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  255. package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  256. package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  257. package/es/extensions/forms/Iterate/PushContainer/OpenButton.d.ts +4 -0
  258. package/es/extensions/forms/Iterate/PushContainer/OpenButton.js +32 -0
  259. package/es/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -0
  260. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +37 -0
  261. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +80 -0
  262. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -0
  263. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +11 -0
  264. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.js +6 -0
  265. package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -0
  266. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.d.ts +3 -0
  267. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +34 -0
  268. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -0
  269. package/es/extensions/forms/Iterate/PushContainer/index.d.ts +2 -0
  270. package/es/extensions/forms/Iterate/PushContainer/index.js +3 -0
  271. package/es/extensions/forms/Iterate/PushContainer/index.js.map +1 -0
  272. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -4
  273. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  274. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +4 -0
  275. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +15 -6
  276. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  277. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  278. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  279. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +3 -3
  280. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  281. package/es/extensions/forms/Iterate/hooks/useItem.d.ts +1 -0
  282. package/es/extensions/forms/Iterate/hooks/useItem.js +9 -0
  283. package/es/extensions/forms/Iterate/hooks/useItem.js.map +1 -0
  284. package/es/extensions/forms/Iterate/index.d.ts +3 -1
  285. package/es/extensions/forms/Iterate/index.js +3 -1
  286. package/es/extensions/forms/Iterate/index.js.map +1 -1
  287. package/es/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +19 -0
  288. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js +66 -0
  289. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -0
  290. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.d.ts +2 -0
  291. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +8 -0
  292. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -0
  293. package/es/extensions/forms/Value/ArraySelection/index.d.ts +2 -0
  294. package/es/extensions/forms/Value/ArraySelection/index.js +3 -0
  295. package/es/extensions/forms/Value/ArraySelection/index.js.map +1 -0
  296. package/es/extensions/forms/Value/Selection/Selection.d.ts +9 -0
  297. package/es/extensions/forms/Value/Selection/Selection.js +48 -0
  298. package/es/extensions/forms/Value/Selection/Selection.js.map +1 -0
  299. package/es/extensions/forms/Value/Selection/SelectionDocs.d.ts +2 -0
  300. package/es/extensions/forms/Value/Selection/SelectionDocs.js +8 -0
  301. package/es/extensions/forms/Value/Selection/SelectionDocs.js.map +1 -0
  302. package/es/extensions/forms/Value/Selection/index.d.ts +2 -0
  303. package/es/extensions/forms/Value/Selection/index.js +3 -0
  304. package/es/extensions/forms/Value/Selection/index.js.map +1 -0
  305. package/es/extensions/forms/Value/ValueDocs.js +6 -1
  306. package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
  307. package/es/extensions/forms/Value/index.d.ts +2 -0
  308. package/es/extensions/forms/Value/index.js +2 -0
  309. package/es/extensions/forms/Value/index.js.map +1 -1
  310. package/es/extensions/forms/ValueBlock/ValueBlock.js +3 -3
  311. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  312. package/es/extensions/forms/Wizard/Container/WizardContainer.js +16 -1
  313. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  314. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  315. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  316. package/es/extensions/forms/constants/locales/en-GB.d.ts +3 -0
  317. package/es/extensions/forms/constants/locales/en-GB.js +3 -0
  318. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  319. package/es/extensions/forms/constants/locales/en-US.d.ts +3 -0
  320. package/es/extensions/forms/constants/locales/index.d.ts +6 -0
  321. package/es/extensions/forms/constants/locales/nb-NO.d.ts +3 -0
  322. package/es/extensions/forms/constants/locales/nb-NO.js +3 -0
  323. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  324. package/es/extensions/forms/hooks/useDataValue.d.ts +1 -0
  325. package/es/extensions/forms/hooks/useDataValue.js +11 -4
  326. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  327. package/es/extensions/forms/hooks/useExternalValue.js +4 -4
  328. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  329. package/es/extensions/forms/hooks/useFieldProps.js +11 -9
  330. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  331. package/es/extensions/forms/hooks/usePath.js +2 -2
  332. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  333. package/es/extensions/forms/hooks/useValueProps.js +4 -1
  334. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  335. package/es/extensions/forms/types.d.ts +4 -0
  336. package/es/extensions/forms/types.js.map +1 -1
  337. package/es/shared/Eufemia.d.ts +1 -1
  338. package/es/shared/Eufemia.js +2 -2
  339. package/es/shared/Eufemia.js.map +1 -1
  340. package/es/shared/locales/en-GB.d.ts +1 -0
  341. package/es/shared/locales/en-GB.js +1 -0
  342. package/es/shared/locales/en-GB.js.map +1 -1
  343. package/es/shared/locales/en-US.d.ts +1 -0
  344. package/es/shared/locales/index.d.ts +2 -0
  345. package/es/shared/locales/nb-NO.d.ts +1 -0
  346. package/es/shared/locales/nb-NO.js +2 -1
  347. package/es/shared/locales/nb-NO.js.map +1 -1
  348. package/es/shared/useTheme.d.ts +4 -10
  349. package/es/shared/useTheme.js +7 -5
  350. package/es/shared/useTheme.js.map +1 -1
  351. package/es/style/core/scopes.scss +1 -1
  352. package/es/style/dnb-ui-basis.css +1 -1
  353. package/es/style/dnb-ui-basis.min.css +1 -1
  354. package/es/style/dnb-ui-body.css +1 -1
  355. package/es/style/dnb-ui-body.min.css +1 -1
  356. package/es/style/dnb-ui-components.css +15 -0
  357. package/es/style/dnb-ui-components.min.css +1 -1
  358. package/es/style/dnb-ui-core.css +1 -1
  359. package/es/style/dnb-ui-core.min.css +1 -1
  360. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +15 -0
  361. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  362. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +15 -0
  363. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  364. package/es/style/themes/theme-ui/ui-theme-components.css +15 -0
  365. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  366. package/esm/dnb-ui-basis.min.mjs +1 -1
  367. package/esm/dnb-ui-components.min.mjs +1 -1
  368. package/esm/dnb-ui-elements.min.mjs +1 -1
  369. package/esm/dnb-ui-extensions.min.mjs +5 -5
  370. package/esm/dnb-ui-lib.min.mjs +1 -1
  371. package/extensions/forms/DataContext/Context.d.ts +8 -3
  372. package/extensions/forms/DataContext/Context.js.map +1 -1
  373. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.d.ts +8 -0
  374. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.js.map +1 -1
  375. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +9 -1
  376. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  377. package/extensions/forms/DataContext/Provider/Provider.js +22 -7
  378. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  379. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +2 -1
  380. package/extensions/forms/Field/ArraySelection/ArraySelection.js +28 -24
  381. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  382. package/extensions/forms/Field/Name/Name.js +2 -2
  383. package/extensions/forms/Field/Name/Name.js.map +1 -1
  384. package/extensions/forms/Field/Selection/Selection.d.ts +3 -0
  385. package/extensions/forms/Field/Selection/Selection.js +27 -20
  386. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  387. package/extensions/forms/FieldBlock/FieldBlock.js +3 -3
  388. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  389. package/extensions/forms/Form/Element/Element.js +9 -9
  390. package/extensions/forms/Form/Element/Element.js.map +1 -1
  391. package/extensions/forms/Form/Isolation/Isolation.js +26 -8
  392. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  393. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +13 -5
  394. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  395. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js +10 -11
  396. package/extensions/forms/Form/Section/EditContainer/useContainerDataStore.js.map +1 -1
  397. package/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js +3 -3
  398. package/extensions/forms/Iterate/AnimatedContainer/AnimatedContainer.js.map +1 -1
  399. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +2 -2
  400. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  401. package/extensions/forms/Iterate/Array/Array.js +7 -5
  402. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  403. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +1 -3
  404. package/extensions/forms/Iterate/EditContainer/EditContainer.js +26 -20
  405. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  406. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +10 -0
  407. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  408. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +44 -14
  409. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  410. package/{es/extensions/forms/Iterate/IterateElementContext.d.ts → extensions/forms/Iterate/IterateItemContext.d.ts} +3 -3
  411. package/extensions/forms/Iterate/IterateItemContext.js +4 -0
  412. package/extensions/forms/Iterate/IterateItemContext.js.map +1 -0
  413. package/extensions/forms/Iterate/PushButton/PushButton.js +3 -3
  414. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  415. package/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
  416. package/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
  417. package/extensions/forms/Iterate/PushContainer/OpenButton.d.ts +4 -0
  418. package/extensions/forms/Iterate/PushContainer/OpenButton.js +32 -0
  419. package/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -0
  420. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +37 -0
  421. package/extensions/forms/Iterate/PushContainer/PushContainer.js +83 -0
  422. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -0
  423. package/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +11 -0
  424. package/extensions/forms/Iterate/PushContainer/PushContainerContext.js +6 -0
  425. package/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -0
  426. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.d.ts +3 -0
  427. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +34 -0
  428. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -0
  429. package/extensions/forms/Iterate/PushContainer/index.d.ts +2 -0
  430. package/extensions/forms/Iterate/PushContainer/index.js +3 -0
  431. package/extensions/forms/Iterate/PushContainer/index.js.map +1 -0
  432. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -4
  433. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  434. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +4 -0
  435. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +15 -6
  436. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  437. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  438. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  439. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +3 -3
  440. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  441. package/extensions/forms/Iterate/hooks/useItem.d.ts +1 -0
  442. package/extensions/forms/Iterate/hooks/useItem.js +9 -0
  443. package/extensions/forms/Iterate/hooks/useItem.js.map +1 -0
  444. package/extensions/forms/Iterate/index.d.ts +3 -1
  445. package/extensions/forms/Iterate/index.js +3 -1
  446. package/extensions/forms/Iterate/index.js.map +1 -1
  447. package/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +19 -0
  448. package/extensions/forms/Value/ArraySelection/ArraySelection.js +70 -0
  449. package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -0
  450. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.d.ts +2 -0
  451. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +8 -0
  452. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -0
  453. package/extensions/forms/Value/ArraySelection/index.d.ts +2 -0
  454. package/extensions/forms/Value/ArraySelection/index.js +3 -0
  455. package/extensions/forms/Value/ArraySelection/index.js.map +1 -0
  456. package/extensions/forms/Value/Selection/Selection.d.ts +9 -0
  457. package/extensions/forms/Value/Selection/Selection.js +48 -0
  458. package/extensions/forms/Value/Selection/Selection.js.map +1 -0
  459. package/extensions/forms/Value/Selection/SelectionDocs.d.ts +2 -0
  460. package/extensions/forms/Value/Selection/SelectionDocs.js +8 -0
  461. package/extensions/forms/Value/Selection/SelectionDocs.js.map +1 -0
  462. package/extensions/forms/Value/Selection/index.d.ts +2 -0
  463. package/extensions/forms/Value/Selection/index.js +3 -0
  464. package/extensions/forms/Value/Selection/index.js.map +1 -0
  465. package/extensions/forms/Value/ValueDocs.js +6 -1
  466. package/extensions/forms/Value/ValueDocs.js.map +1 -1
  467. package/extensions/forms/Value/index.d.ts +2 -0
  468. package/extensions/forms/Value/index.js +2 -0
  469. package/extensions/forms/Value/index.js.map +1 -1
  470. package/extensions/forms/ValueBlock/ValueBlock.js +3 -3
  471. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  472. package/extensions/forms/Wizard/Container/WizardContainer.js +27 -11
  473. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  474. package/extensions/forms/Wizard/Context/WizardContext.d.ts +1 -0
  475. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  476. package/extensions/forms/constants/locales/en-GB.d.ts +3 -0
  477. package/extensions/forms/constants/locales/en-GB.js +3 -0
  478. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  479. package/extensions/forms/constants/locales/en-US.d.ts +3 -0
  480. package/extensions/forms/constants/locales/index.d.ts +6 -0
  481. package/extensions/forms/constants/locales/nb-NO.d.ts +3 -0
  482. package/extensions/forms/constants/locales/nb-NO.js +3 -0
  483. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  484. package/extensions/forms/hooks/useDataValue.d.ts +1 -0
  485. package/extensions/forms/hooks/useDataValue.js +11 -4
  486. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  487. package/extensions/forms/hooks/useExternalValue.js +4 -4
  488. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  489. package/extensions/forms/hooks/useFieldProps.js +11 -9
  490. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  491. package/extensions/forms/hooks/usePath.js +2 -2
  492. package/extensions/forms/hooks/usePath.js.map +1 -1
  493. package/extensions/forms/hooks/useValueProps.js +4 -1
  494. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  495. package/extensions/forms/types.d.ts +4 -0
  496. package/extensions/forms/types.js.map +1 -1
  497. package/package.json +1 -1
  498. package/shared/Eufemia.d.ts +1 -1
  499. package/shared/Eufemia.js +2 -2
  500. package/shared/Eufemia.js.map +1 -1
  501. package/shared/locales/en-GB.d.ts +1 -0
  502. package/shared/locales/en-GB.js +1 -0
  503. package/shared/locales/en-GB.js.map +1 -1
  504. package/shared/locales/en-US.d.ts +1 -0
  505. package/shared/locales/index.d.ts +2 -0
  506. package/shared/locales/nb-NO.d.ts +1 -0
  507. package/shared/locales/nb-NO.js +2 -1
  508. package/shared/locales/nb-NO.js.map +1 -1
  509. package/shared/useTheme.d.ts +4 -10
  510. package/shared/useTheme.js +7 -5
  511. package/shared/useTheme.js.map +1 -1
  512. package/style/core/scopes.scss +1 -1
  513. package/style/dnb-ui-basis.css +1 -1
  514. package/style/dnb-ui-basis.min.css +1 -1
  515. package/style/dnb-ui-body.css +1 -1
  516. package/style/dnb-ui-body.min.css +1 -1
  517. package/style/dnb-ui-components.css +15 -0
  518. package/style/dnb-ui-components.min.css +1 -1
  519. package/style/dnb-ui-core.css +1 -1
  520. package/style/dnb-ui-core.min.css +1 -1
  521. package/style/themes/theme-eiendom/eiendom-theme-components.css +15 -0
  522. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  523. package/style/themes/theme-sbanken/sbanken-theme-components.css +15 -0
  524. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
  525. package/style/themes/theme-ui/ui-theme-components.css +15 -0
  526. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  527. package/umd/dnb-ui-basis.min.js +1 -1
  528. package/umd/dnb-ui-components.min.js +1 -1
  529. package/umd/dnb-ui-elements.min.js +1 -1
  530. package/umd/dnb-ui-extensions.min.js +5 -5
  531. package/umd/dnb-ui-lib.min.js +1 -1
  532. package/cjs/extensions/forms/Iterate/IterateElementContext.js.map +0 -1
  533. package/es/extensions/forms/Iterate/IterateElementContext.js +0 -4
  534. package/es/extensions/forms/Iterate/IterateElementContext.js.map +0 -1
  535. package/extensions/forms/Iterate/IterateElementContext.js +0 -4
  536. package/extensions/forms/Iterate/IterateElementContext.js.map +0 -1
@@ -145,6 +145,23 @@
145
145
  color: var(--upload-text--secondary);
146
146
  }
147
147
 
148
+ &__accepted-file-types-table {
149
+ &.dnb-table {
150
+ width: fit-content;
151
+ & thead th {
152
+ font-weight: var(--font-weight-medium);
153
+ font-size: var(--font-size-basis);
154
+ padding-top: var(--spacing-small);
155
+ &:first-child {
156
+ padding-left: 0;
157
+ }
158
+ }
159
+ & tbody td:first-child {
160
+ padding-left: 0;
161
+ }
162
+ }
163
+ }
164
+
148
165
  &__subtitle.dnb-p {
149
166
  color: var(--upload-text--secondary);
150
167
  }
@@ -2,6 +2,11 @@ import React from 'react';
2
2
  import type { SkeletonShow } from '../skeleton/Skeleton';
3
3
  import type { LocaleProps, SpacingProps } from '../../shared/types';
4
4
  export type UploadAcceptedFileTypes = string[];
5
+ export type UploadAcceptedFileTypesWithFileMaxSize = UploadAcceptedFileTypeObject[];
6
+ export type UploadAcceptedFileTypeObject = {
7
+ fileType: string;
8
+ fileMaxSize?: number | false;
9
+ };
5
10
  export type UploadProps = {
6
11
  /**
7
12
  * unique id used with the useUpload hook to manage the files
@@ -10,7 +15,7 @@ export type UploadProps = {
10
15
  /**
11
16
  * list of accepted file types.
12
17
  */
13
- acceptedFileTypes: UploadAcceptedFileTypes;
18
+ acceptedFileTypes: UploadAcceptedFileTypes | UploadAcceptedFileTypesWithFileMaxSize;
14
19
  /**
15
20
  * Skeleton should be applied when loading content
16
21
  * Default: null
@@ -43,6 +48,7 @@ export type UploadProps = {
43
48
  */
44
49
  title?: React.ReactNode;
45
50
  text?: React.ReactNode;
51
+ fileTypeTableCaption?: React.ReactNode;
46
52
  fileTypeDescription?: React.ReactNode;
47
53
  fileSizeDescription?: React.ReactNode;
48
54
  fileAmountDescription?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/upload/types.ts"],"sourcesContent":["import React from 'react'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport type { LocaleProps, SpacingProps } from '../../shared/types'\n\nexport type UploadAcceptedFileTypes = string[]\n\nexport type UploadProps = {\n /**\n * unique id used with the useUpload hook to manage the files\n */\n id: string\n\n /**\n * list of accepted file types.\n */\n acceptedFileTypes: UploadAcceptedFileTypes\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Defines the amount of files the user can select and upload\n * Default: 100\n */\n filesAmountLimit?: number\n\n /**\n * Defines the max file size of each file in MB. Use either `0` or `false` to disable.\n * Default: 5 MB\n */\n fileMaxSize?: number | false\n\n /**\n * will be called on `files` changes made by the user. Access the files with `{ files }`.\n */\n onChange?: ({ files }: { files: UploadFile[] }) => void\n\n /**\n * will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.\n */\n onFileDelete?: ({ fileItem }: { fileItem: UploadFile }) => void\n\n /**\n * Custom text properties\n */\n title?: React.ReactNode\n text?: React.ReactNode\n fileTypeDescription?: React.ReactNode\n fileSizeDescription?: React.ReactNode\n fileAmountDescription?: React.ReactNode\n fileSizeContent?: React.ReactNode\n buttonText?: React.ReactNode\n errorLargeFile?: React.ReactNode\n errorUnsupportedFile?: React.ReactNode\n errorAmountLimit?: React.ReactNode\n loadingText?: React.ReactNode\n deleteButton?: React.ReactNode\n fileListAriaLabel?: string\n children?: React.ReactNode\n}\n\nexport type UploadAllProps = UploadProps &\n SpacingProps &\n LocaleProps &\n Omit<React.HTMLProps<HTMLElement>, 'onChange' | 'title'>\n\nexport type UploadContextProps = {\n id?: string\n onInputUpload: (files: UploadFile[]) => void\n} & Partial<UploadProps>\n\nexport type UploadFile = {\n file: File\n errorMessage?: React.ReactNode\n isLoading?: boolean\n exists?: boolean\n id?: string\n}\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/upload/types.ts"],"sourcesContent":["import React from 'react'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport type { LocaleProps, SpacingProps } from '../../shared/types'\n\nexport type UploadAcceptedFileTypes = string[]\n\nexport type UploadAcceptedFileTypesWithFileMaxSize =\n UploadAcceptedFileTypeObject[]\n\nexport type UploadAcceptedFileTypeObject = {\n fileType: string\n fileMaxSize?: number | false\n}\n\nexport type UploadProps = {\n /**\n * unique id used with the useUpload hook to manage the files\n */\n id: string\n\n /**\n * list of accepted file types.\n */\n acceptedFileTypes:\n | UploadAcceptedFileTypes\n | UploadAcceptedFileTypesWithFileMaxSize\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Defines the amount of files the user can select and upload\n * Default: 100\n */\n filesAmountLimit?: number\n\n /**\n * Defines the max file size of each file in MB. Use either `0` or `false` to disable.\n * Default: 5 MB\n */\n fileMaxSize?: number | false\n\n /**\n * will be called on `files` changes made by the user. Access the files with `{ files }`.\n */\n onChange?: ({ files }: { files: UploadFile[] }) => void\n\n /**\n * will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.\n */\n onFileDelete?: ({ fileItem }: { fileItem: UploadFile }) => void\n\n /**\n * Custom text properties\n */\n title?: React.ReactNode\n text?: React.ReactNode\n fileTypeTableCaption?: React.ReactNode\n fileTypeDescription?: React.ReactNode\n fileSizeDescription?: React.ReactNode\n fileAmountDescription?: React.ReactNode\n fileSizeContent?: React.ReactNode\n buttonText?: React.ReactNode\n errorLargeFile?: React.ReactNode\n errorUnsupportedFile?: React.ReactNode\n errorAmountLimit?: React.ReactNode\n loadingText?: React.ReactNode\n deleteButton?: React.ReactNode\n fileListAriaLabel?: string\n children?: React.ReactNode\n}\n\nexport type UploadAllProps = UploadProps &\n SpacingProps &\n LocaleProps &\n Omit<React.HTMLProps<HTMLElement>, 'onChange' | 'title'>\n\nexport type UploadContextProps = {\n id?: string\n onInputUpload: (files: UploadFile[]) => void\n} & Partial<UploadProps>\n\nexport type UploadFile = {\n file: File\n errorMessage?: React.ReactNode\n isLoading?: boolean\n exists?: boolean\n id?: string\n}\n"],"mappings":""}
@@ -8,7 +8,7 @@ type HandleSubmitProps = {
8
8
  export type EventListenerCall = {
9
9
  path?: Path;
10
10
  type?: 'onSubmit';
11
- callback: () => any;
11
+ callback: () => void;
12
12
  };
13
13
  export type FilterDataHandler<Data> = (data: Data, filter: FilterData) => Partial<Data>;
14
14
  export type FilterDataHandlerCallback<R> = (parameters: FilterDataHandlerParameters) => R;
@@ -27,6 +27,9 @@ export type FilterDataPathConditionParameters<Data = unknown> = {
27
27
  export type FilterDataPathObject<Data> = Record<Path, FilterDataPathCondition<Data> | boolean | undefined>;
28
28
  export type FilterData<Data = unknown> = FilterDataPathObject<Data> | FilterDataHandlerCallback<boolean | undefined>;
29
29
  export type TransformData = FilterDataHandlerCallback<unknown>;
30
+ export type HandleSubmitCallback = ({ preventSubmit, }: {
31
+ preventSubmit: () => void;
32
+ }) => void;
30
33
  export interface ContextState {
31
34
  id?: Identifier;
32
35
  hasContext: boolean;
@@ -64,10 +67,12 @@ export interface ContextState {
64
67
  }) => void;
65
68
  setFieldEventListener: (path: EventListenerCall['path'], type: EventListenerCall['type'], callback: EventListenerCall['callback']) => void;
66
69
  setHasVisibleError?: (path: Path, hasError: boolean) => void;
67
- setFieldProps?: (path: Path, props: any) => void;
68
- setValueProps?: (path: Path, props: any) => void;
70
+ setFieldProps?: (path: Path, props: unknown) => void;
71
+ setValueProps?: (path: Path, props: unknown) => void;
72
+ setHandleSubmit?: (callback: HandleSubmitCallback) => void;
69
73
  fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>;
70
74
  valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>;
75
+ mountedFieldPathsRef?: React.MutableRefObject<Path[]>;
71
76
  showAllErrors: boolean;
72
77
  hasVisibleError: boolean;
73
78
  formState: SubmitState;
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_ajv","obj","__esModule","default","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","hasVisibleError","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","handleMountField","handleUnMountField","hasErrors","hasFieldState","hasFieldError","setFieldState","setFieldError","ajvInstance","makeAjvInstance","contextErrorMessages","isInsideFormElement","props","exports","Context","React","createContext","_default"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n ValueProps,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path?: Path\n type?: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterDataHandlerCallback<R> = (\n parameters: FilterDataHandlerParameters\n) => R\nexport type FilterDataHandlerParameters =\n FilterDataPathConditionParameters & {\n path: Path\n }\nexport type FilterDataPathCondition<Data = unknown> = (\n parameters: FilterDataPathConditionParameters<Data>\n) => boolean | undefined\nexport type FilterDataPathConditionParameters<Data = unknown> = {\n value: unknown\n props: FieldProps\n data: Data\n internal: {\n error: Error | undefined\n }\n}\nexport type FilterDataPathObject<Data> = Record<\n Path,\n FilterDataPathCondition<Data> | boolean | undefined\n>\nexport type FilterData<Data = unknown> =\n | FilterDataPathObject<Data>\n | FilterDataHandlerCallback<boolean | undefined>\nexport type TransformData = FilterDataHandlerCallback<unknown>\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n hasFieldError: (path: Path) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n addOnChangeHandler?: (callback: (data: unknown) => void) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setHasVisibleError?: (path: Path, hasError: boolean) => void\n setFieldProps?: (path: Path, props: any) => void\n setValueProps?: (path: Path, props: any) => void\n fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>\n valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>\n showAllErrors: boolean\n hasVisibleError: boolean\n formState: SubmitState\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n path?: Path\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n isInsideFormElement?: boolean\n prerenderFieldProps?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n hasVisibleError: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n hasFieldError: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAkI5C,MAAMG,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,eAAe,EAAE,KAAK;EACtBC,SAAS,EAAEZ,SAAS;EACpBa,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,WAAW,EAAE,IAAAC,oBAAe,EAAC,CAAC;EAC9BC,oBAAoB,EAAE3B,SAAS;EAC/B4B,mBAAmB,EAAE,KAAK;EAC1BC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAjC,mBAAA,GAAAA,mBAAA;AAED,MAAMkC,OAAO,GAAGC,cAAK,CAACC,aAAa,CAAepC,mBAAmB,CAAC;AAAA,IAAAqC,QAAA,GAEvDH,OAAO;AAAAD,OAAA,CAAAlC,OAAA,GAAAsC,QAAA"}
1
+ {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_ajv","obj","__esModule","default","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","hasVisibleError","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","handleMountField","handleUnMountField","hasErrors","hasFieldState","hasFieldError","setFieldState","setFieldError","ajvInstance","makeAjvInstance","contextErrorMessages","isInsideFormElement","props","exports","Context","React","createContext","_default"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n ValueProps,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path?: Path\n type?: 'onSubmit'\n callback: () => void\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterDataHandlerCallback<R> = (\n parameters: FilterDataHandlerParameters\n) => R\nexport type FilterDataHandlerParameters =\n FilterDataPathConditionParameters & {\n path: Path\n }\nexport type FilterDataPathCondition<Data = unknown> = (\n parameters: FilterDataPathConditionParameters<Data>\n) => boolean | undefined\nexport type FilterDataPathConditionParameters<Data = unknown> = {\n value: unknown\n props: FieldProps\n data: Data\n internal: {\n error: Error | undefined\n }\n}\nexport type FilterDataPathObject<Data> = Record<\n Path,\n FilterDataPathCondition<Data> | boolean | undefined\n>\nexport type FilterData<Data = unknown> =\n | FilterDataPathObject<Data>\n | FilterDataHandlerCallback<boolean | undefined>\nexport type TransformData = FilterDataHandlerCallback<unknown>\nexport type HandleSubmitCallback = ({\n preventSubmit,\n}: {\n preventSubmit: () => void\n}) => void\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n hasFieldError: (path: Path) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n addOnChangeHandler?: (callback: (data: unknown) => void) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setHasVisibleError?: (path: Path, hasError: boolean) => void\n setFieldProps?: (path: Path, props: unknown) => void\n setValueProps?: (path: Path, props: unknown) => void\n setHandleSubmit?: (callback: HandleSubmitCallback) => void\n fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>\n valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>\n mountedFieldPathsRef?: React.MutableRefObject<Path[]>\n showAllErrors: boolean\n hasVisibleError: boolean\n formState: SubmitState\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n path?: Path\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n isInsideFormElement?: boolean\n prerenderFieldProps?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n hasVisibleError: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n hasFieldError: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAyI5C,MAAMG,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,eAAe,EAAE,KAAK;EACtBC,SAAS,EAAEZ,SAAS;EACpBa,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,WAAW,EAAE,IAAAC,oBAAe,EAAC,CAAC;EAC9BC,oBAAoB,EAAE3B,SAAS;EAC/B4B,mBAAmB,EAAE,KAAK;EAC1BC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAjC,mBAAA,GAAAA,mBAAA;AAED,MAAMkC,OAAO,GAAGC,cAAK,CAACC,aAAa,CAAepC,mBAAmB,CAAC;AAAA,IAAAqC,QAAA,GAEvDH,OAAO;AAAAD,OAAA,CAAAlC,OAAA,GAAAsC,QAAA"}
@@ -17,6 +17,14 @@ export interface FieldBoundaryContextState {
17
17
  * Contains the nested field errors.
18
18
  */
19
19
  errorsRef?: React.RefObject<unknown>;
20
+ /**
21
+ * Will be set to true when the boundary context error state should be shown.
22
+ */
23
+ showBoundaryErrors?: boolean;
24
+ /**
25
+ * To set the boundary context error state.
26
+ */
27
+ setShowBoundaryErrors?: (showBoundaryErrors: boolean) => void;
20
28
  /**
21
29
  * To set the local error state.
22
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FieldBoundaryContext.js","names":["_react","_interopRequireDefault","require","obj","__esModule","default","FieldBoundaryContext","React","createContext","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.ts"],"sourcesContent":["import React from 'react'\nimport { Path } from '../../types'\n\nexport interface FieldBoundaryContextState {\n /**\n * Will be set to true when one or more nested fields are in error state.\n */\n hasError?: boolean\n\n /**\n * Will be set to true when the inherited data context has submit errors and the `hasError` has errors as well.\n */\n hasSubmitError?: boolean\n\n /**\n * Will be set to true when a nested field contains a visible error.\n */\n hasVisibleError?: boolean\n\n /**\n * Contains the nested field errors.\n */\n errorsRef?: React.RefObject<unknown>\n\n /**\n * To set the local error state.\n */\n setFieldError?: (path: Path, error: Error) => void\n}\n\nconst FieldBoundaryContext = React.createContext<\n FieldBoundaryContextState | undefined\n>(undefined)\n\nexport default FieldBoundaryContext\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA8BzB,MAAMG,oBAAoB,GAAGC,cAAK,CAACC,aAAa,CAE9CC,SAAS,CAAC;AAAA,IAAAC,QAAA,GAEGJ,oBAAoB;AAAAK,OAAA,CAAAN,OAAA,GAAAK,QAAA"}
1
+ {"version":3,"file":"FieldBoundaryContext.js","names":["_react","_interopRequireDefault","require","obj","__esModule","default","FieldBoundaryContext","React","createContext","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/DataContext/FieldBoundary/FieldBoundaryContext.ts"],"sourcesContent":["import React from 'react'\nimport { Path } from '../../types'\n\nexport interface FieldBoundaryContextState {\n /**\n * Will be set to true when one or more nested fields are in error state.\n */\n hasError?: boolean\n\n /**\n * Will be set to true when the inherited data context has submit errors and the `hasError` has errors as well.\n */\n hasSubmitError?: boolean\n\n /**\n * Will be set to true when a nested field contains a visible error.\n */\n hasVisibleError?: boolean\n\n /**\n * Contains the nested field errors.\n */\n errorsRef?: React.RefObject<unknown>\n\n /**\n * Will be set to true when the boundary context error state should be shown.\n */\n showBoundaryErrors?: boolean\n\n /**\n * To set the boundary context error state.\n */\n setShowBoundaryErrors?: (showBoundaryErrors: boolean) => void\n\n /**\n * To set the local error state.\n */\n setFieldError?: (path: Path, error: Error) => void\n}\n\nconst FieldBoundaryContext = React.createContext<\n FieldBoundaryContextState | undefined\n>(undefined)\n\nexport default FieldBoundaryContext\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAwCzB,MAAMG,oBAAoB,GAAGC,cAAK,CAACC,aAAa,CAE9CC,SAAS,CAAC;AAAA,IAAAC,QAAA,GAEGJ,oBAAoB;AAAAK,OAAA,CAAAN,OAAA,GAAAK,QAAA"}
@@ -15,11 +15,13 @@ function FieldBoundaryProvider(_ref) {
15
15
  let {
16
16
  children
17
17
  } = _ref;
18
+ const [, forceUpdate] = (0, _react.useReducer)(() => ({}), {});
18
19
  const {
19
20
  showAllErrors,
20
21
  hasVisibleError
21
22
  } = (0, _react.useContext)(_Context.default);
22
23
  const errorsRef = (0, _react.useRef)({});
24
+ const showBoundaryErrorsRef = (0, _react.useRef)(false);
23
25
  const hasError = Object.keys(errorsRef.current || {}).length > 0;
24
26
  const hasSubmitError = showAllErrors && hasError;
25
27
  const setFieldError = (0, _react.useCallback)((path, error) => {
@@ -30,11 +32,17 @@ function FieldBoundaryProvider(_ref) {
30
32
  (_errorsRef$current = errorsRef.current) === null || _errorsRef$current === void 0 ? true : delete _errorsRef$current[path];
31
33
  }
32
34
  }, []);
35
+ const setShowBoundaryErrors = (0, _react.useCallback)(showBoundaryErrors => {
36
+ showBoundaryErrorsRef.current = showBoundaryErrors;
37
+ forceUpdate();
38
+ }, []);
33
39
  const context = {
34
40
  hasError,
35
41
  hasSubmitError,
36
42
  hasVisibleError,
37
43
  errorsRef,
44
+ showBoundaryErrors: showBoundaryErrorsRef.current,
45
+ setShowBoundaryErrors,
38
46
  setFieldError
39
47
  };
40
48
  return _react.default.createElement(_FieldBoundaryContext.default.Provider, {
@@ -1 +1 @@
1
- {"version":3,"file":"FieldBoundaryProvider.js","names":["_react","_interopRequireWildcard","require","_FieldBoundaryContext","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","FieldBoundaryProvider","_ref","children","showAllErrors","hasVisibleError","useContext","DataContext","errorsRef","useRef","hasError","keys","current","length","hasSubmitError","setFieldError","useCallback","path","error","_errorsRef$current","context","createElement","Provider","value"],"sources":["../../../../../../src/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.tsx"],"sourcesContent":["import React, { useCallback, useContext, useRef } from 'react'\nimport FieldBoundaryContext, {\n FieldBoundaryContextState,\n} from './FieldBoundaryContext'\nimport DataContext from '../Context'\nimport { Path } from '../../types'\n\nexport default function FieldBoundaryProvider({ children }) {\n const { showAllErrors, hasVisibleError } = useContext(DataContext)\n\n const errorsRef = useRef<Record<Path, boolean>>({})\n const hasError = Object.keys(errorsRef.current || {}).length > 0\n const hasSubmitError = showAllErrors && hasError\n\n const setFieldError = useCallback((path: Path, error: Error) => {\n if (error) {\n errorsRef.current[path] = !!error\n } else {\n delete errorsRef.current?.[path]\n }\n }, [])\n\n const context: FieldBoundaryContextState = {\n hasError,\n hasSubmitError,\n hasVisibleError,\n errorsRef,\n setFieldError,\n }\n\n return (\n <FieldBoundaryContext.Provider value={context}>\n {children}\n </FieldBoundaryContext.Provider>\n )\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAoC,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAK,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAGrB,SAASW,qBAAqBA,CAAAC,IAAA,EAAe;EAAA,IAAd;IAAEC;EAAS,CAAC,GAAAD,IAAA;EACxD,MAAM;IAAEE,aAAa;IAAEC;EAAgB,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC;EAElE,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAwB,CAAC,CAAC,CAAC;EACnD,MAAMC,QAAQ,GAAGlB,MAAM,CAACmB,IAAI,CAACH,SAAS,CAACI,OAAO,IAAI,CAAC,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC;EAChE,MAAMC,cAAc,GAAGV,aAAa,IAAIM,QAAQ;EAEhD,MAAMK,aAAa,GAAG,IAAAC,kBAAW,EAAC,CAACC,IAAU,EAAEC,KAAY,KAAK;IAC9D,IAAIA,KAAK,EAAE;MACTV,SAAS,CAACI,OAAO,CAACK,IAAI,CAAC,GAAG,CAAC,CAACC,KAAK;IACnC,CAAC,MAAM;MAAA,IAAAC,kBAAA;MACL,CAAAA,kBAAA,GAAOX,SAAS,CAACI,OAAO,cAAAO,kBAAA,qBAAxB,OAAOA,kBAAA,CAAoBF,IAAI,CAAC;IAClC;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,OAAkC,GAAG;IACzCV,QAAQ;IACRI,cAAc;IACdT,eAAe;IACfG,SAAS;IACTO;EACF,CAAC;EAED,OACE1C,MAAA,CAAAQ,OAAA,CAAAwC,aAAA,CAAC7C,qBAAA,CAAAK,OAAoB,CAACyC,QAAQ;IAACC,KAAK,EAAEH;EAAQ,GAC3CjB,QAC4B,CAAC;AAEpC"}
1
+ {"version":3,"file":"FieldBoundaryProvider.js","names":["_react","_interopRequireWildcard","require","_FieldBoundaryContext","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","FieldBoundaryProvider","_ref","children","forceUpdate","useReducer","showAllErrors","hasVisibleError","useContext","DataContext","errorsRef","useRef","showBoundaryErrorsRef","hasError","keys","current","length","hasSubmitError","setFieldError","useCallback","path","error","_errorsRef$current","setShowBoundaryErrors","showBoundaryErrors","context","createElement","Provider","value"],"sources":["../../../../../../src/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.tsx"],"sourcesContent":["import React, { useCallback, useContext, useReducer, useRef } from 'react'\nimport FieldBoundaryContext, {\n FieldBoundaryContextState,\n} from './FieldBoundaryContext'\nimport DataContext from '../Context'\nimport { Path } from '../../types'\n\nexport default function FieldBoundaryProvider({ children }) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { showAllErrors, hasVisibleError } = useContext(DataContext)\n\n const errorsRef = useRef<Record<Path, boolean>>({})\n const showBoundaryErrorsRef = useRef<boolean>(false)\n const hasError = Object.keys(errorsRef.current || {}).length > 0\n const hasSubmitError = showAllErrors && hasError\n\n const setFieldError = useCallback((path: Path, error: Error) => {\n if (error) {\n errorsRef.current[path] = !!error\n } else {\n delete errorsRef.current?.[path]\n }\n }, [])\n\n const setShowBoundaryErrors = useCallback(\n (showBoundaryErrors: boolean) => {\n showBoundaryErrorsRef.current = showBoundaryErrors\n forceUpdate()\n },\n []\n )\n\n const context: FieldBoundaryContextState = {\n hasError,\n hasSubmitError,\n hasVisibleError,\n errorsRef,\n showBoundaryErrors: showBoundaryErrorsRef.current,\n setShowBoundaryErrors,\n setFieldError,\n }\n\n return (\n <FieldBoundaryContext.Provider value={context}>\n {children}\n </FieldBoundaryContext.Provider>\n )\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAoC,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAK,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAGrB,SAASW,qBAAqBA,CAAAC,IAAA,EAAe;EAAA,IAAd;IAAEC;EAAS,CAAC,GAAAD,IAAA;EACxD,MAAM,GAAGE,WAAW,CAAC,GAAG,IAAAC,iBAAU,EAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAClD,MAAM;IAAEC,aAAa;IAAEC;EAAgB,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC;EAElE,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAwB,CAAC,CAAC,CAAC;EACnD,MAAMC,qBAAqB,GAAG,IAAAD,aAAM,EAAU,KAAK,CAAC;EACpD,MAAME,QAAQ,GAAGrB,MAAM,CAACsB,IAAI,CAACJ,SAAS,CAACK,OAAO,IAAI,CAAC,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC;EAChE,MAAMC,cAAc,GAAGX,aAAa,IAAIO,QAAQ;EAEhD,MAAMK,aAAa,GAAG,IAAAC,kBAAW,EAAC,CAACC,IAAU,EAAEC,KAAY,KAAK;IAC9D,IAAIA,KAAK,EAAE;MACTX,SAAS,CAACK,OAAO,CAACK,IAAI,CAAC,GAAG,CAAC,CAACC,KAAK;IACnC,CAAC,MAAM;MAAA,IAAAC,kBAAA;MACL,CAAAA,kBAAA,GAAOZ,SAAS,CAACK,OAAO,cAAAO,kBAAA,qBAAxB,OAAOA,kBAAA,CAAoBF,IAAI,CAAC;IAClC;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,qBAAqB,GAAG,IAAAJ,kBAAW,EACtCK,kBAA2B,IAAK;IAC/BZ,qBAAqB,CAACG,OAAO,GAAGS,kBAAkB;IAClDpB,WAAW,CAAC,CAAC;EACf,CAAC,EACD,EACF,CAAC;EAED,MAAMqB,OAAkC,GAAG;IACzCZ,QAAQ;IACRI,cAAc;IACdV,eAAe;IACfG,SAAS;IACTc,kBAAkB,EAAEZ,qBAAqB,CAACG,OAAO;IACjDQ,qBAAqB;IACrBL;EACF,CAAC;EAED,OACE7C,MAAA,CAAAQ,OAAA,CAAA6C,aAAA,CAAClD,qBAAA,CAAAK,OAAoB,CAAC8C,QAAQ;IAACC,KAAK,EAAEH;EAAQ,GAC3CtB,QAC4B,CAAC;AAEpC"}
@@ -490,13 +490,7 @@ function Provider(props) {
490
490
  let result;
491
491
  try {
492
492
  if (isolate) {
493
- const mounterData = {};
494
- mountedFieldPathsRef.current.forEach(path => {
495
- if (_jsonPointer.default.has(internalDataRef.current, path)) {
496
- _jsonPointer.default.set(mounterData, path, _jsonPointer.default.get(internalDataRef.current, path));
497
- }
498
- });
499
- result = await (onCommit === null || onCommit === void 0 ? void 0 : onCommit(mounterData, {
493
+ result = await (onCommit === null || onCommit === void 0 ? void 0 : onCommit(internalDataRef.current, {
500
494
  clearData
501
495
  }));
502
496
  } else {
@@ -540,6 +534,22 @@ function Provider(props) {
540
534
  }
541
535
  return internalDataRef.current;
542
536
  }, [clearData, hasErrors, hasFieldState, hasFieldWithAsyncValidator, isolate, onCommit, onSubmitRequest, setFormState, setShowAllErrors, setSubmitState]);
537
+ const handleSubmitListenersRef = (0, _react.useRef)([]);
538
+ const setHandleSubmit = (0, _react.useCallback)(callback => {
539
+ if (!handleSubmitListenersRef.current.includes(callback)) {
540
+ handleSubmitListenersRef.current.push(callback);
541
+ }
542
+ }, []);
543
+ const handleSubmitListeners = (0, _react.useCallback)(() => {
544
+ let stop = false;
545
+ const preventSubmit = () => stop = true;
546
+ handleSubmitListenersRef.current.forEach(cb => {
547
+ cb({
548
+ preventSubmit
549
+ });
550
+ });
551
+ return stop;
552
+ }, []);
543
553
  const handleSubmit = (0, _react.useCallback)(async function () {
544
554
  let {
545
555
  formElement = null
@@ -547,6 +557,9 @@ function Provider(props) {
547
557
  handleSubmitCall({
548
558
  enableAsyncBehaviour: (0, _isAsync.isAsync)(onSubmit),
549
559
  onSubmit: async () => {
560
+ if (handleSubmitListeners()) {
561
+ return;
562
+ }
550
563
  const data = internalDataRef.current;
551
564
  const filteredData = filterDataHandler(transformOut ? mutateDataHandler(data, transformOut) : data);
552
565
  const opts = {
@@ -660,6 +673,7 @@ function Provider(props) {
660
673
  setData,
661
674
  filterDataHandler,
662
675
  addOnChangeHandler,
676
+ setHandleSubmit,
663
677
  scrollToTop,
664
678
  schema,
665
679
  disabled,
@@ -673,6 +687,7 @@ function Provider(props) {
673
687
  hasVisibleError: Object.keys(hasVisibleErrorRef.current).length > 0,
674
688
  fieldPropsRef,
675
689
  valuePropsRef,
690
+ mountedFieldPathsRef,
676
691
  ajvInstance: ajvRef.current,
677
692
  id,
678
693
  data: internalDataRef.current,