@dnb/eufemia 10.75.1 → 10.75.3

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 (689) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/cjs/components/accordion/Accordion.js +2 -3
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionContext.d.ts +0 -4
  5. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  6. package/cjs/components/accordion/AccordionGroup.js +1 -3
  7. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  8. package/cjs/components/accordion/AccordionProviderContext.d.ts +0 -4
  9. package/cjs/components/accordion/AccordionProviderContext.js +3 -1
  10. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  11. package/cjs/components/accordion/AccordionStore.js +1 -2
  12. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  13. package/cjs/components/accordion/style/dnb-accordion.css +0 -6
  14. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  15. package/cjs/components/accordion/style/dnb-accordion.scss +0 -5
  16. package/cjs/components/autocomplete/Autocomplete.d.ts +1 -1
  17. package/cjs/components/autocomplete/Autocomplete.js +2 -2
  18. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  19. package/cjs/components/autocomplete/AutocompleteDocs.js +1 -1
  20. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
  21. package/cjs/components/button/Button.js +8 -7
  22. package/cjs/components/button/Button.js.map +1 -1
  23. package/cjs/components/date-picker/DatePickerDocs.js +3 -3
  24. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  25. package/cjs/components/date-picker/DatePickerInput.js +2 -2
  26. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  27. package/cjs/components/date-picker/style/dnb-date-picker.css +0 -1
  28. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  29. package/cjs/components/dialog/style/dnb-dialog.css +0 -4
  30. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  31. package/cjs/components/dialog/style/dnb-dialog.scss +0 -5
  32. package/cjs/components/drawer/DrawerDocs.js +2 -2
  33. package/cjs/components/drawer/DrawerDocs.js.map +1 -1
  34. package/cjs/components/drawer/style/dnb-drawer.css +0 -4
  35. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  36. package/cjs/components/drawer/style/dnb-drawer.scss +0 -5
  37. package/cjs/components/dropdown/Dropdown.js +1 -1
  38. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  39. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  40. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  41. package/cjs/components/form-row/FormRow.d.ts +1 -1
  42. package/cjs/components/form-row/FormRowDocs.js +1 -1
  43. package/cjs/components/form-row/FormRowDocs.js.map +1 -1
  44. package/cjs/components/input-masked/style/dnb-input-masked.css +0 -1
  45. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  46. package/cjs/components/list-format/ListFormatDocs.js +2 -2
  47. package/cjs/components/list-format/ListFormatDocs.js.map +1 -1
  48. package/cjs/components/modal/style/dnb-modal.css +0 -4
  49. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  50. package/cjs/components/modal/style/dnb-modal.scss +0 -5
  51. package/cjs/components/pagination/PaginationDocs.js +2 -2
  52. package/cjs/components/pagination/PaginationDocs.js.map +1 -1
  53. package/cjs/components/slider/SliderDocs.js +1 -1
  54. package/cjs/components/slider/SliderDocs.js.map +1 -1
  55. package/cjs/components/step-indicator/StepIndicatorDocs.js +4 -4
  56. package/cjs/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  57. package/cjs/components/timeline/TimelineItem.js +5 -5
  58. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  59. package/cjs/components/toggle-button/ToggleButton.d.ts +1 -1
  60. package/cjs/components/toggle-button/ToggleButtonDocs.js +2 -2
  61. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  62. package/cjs/components/upload/Upload.js +5 -2
  63. package/cjs/components/upload/Upload.js.map +1 -1
  64. package/cjs/components/upload/UploadFileInput.d.ts +2 -1
  65. package/cjs/components/upload/UploadFileInput.js +7 -4
  66. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  67. package/cjs/components/upload/style/dnb-upload.css +0 -1
  68. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  69. package/cjs/core/jest/jestSetupScreenshots.css +6 -0
  70. package/cjs/extensions/forms/DataContext/Context.d.ts +5 -2
  71. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  72. package/cjs/extensions/forms/DataContext/Provider/Provider.js +22 -4
  73. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  74. package/cjs/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
  75. package/cjs/extensions/forms/DataContext/Provider/useEventListener.js +29 -0
  76. package/cjs/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
  77. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +8 -2
  78. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
  79. package/cjs/extensions/forms/Field/Date/Date.js +10 -4
  80. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  81. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  82. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  83. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  84. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  85. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  86. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +8 -2
  87. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  88. package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
  89. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  90. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +8 -2
  91. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
  92. package/cjs/extensions/forms/Field/Password/PasswordDocs.js +8 -2
  93. package/cjs/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  94. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  95. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  96. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +9 -0
  97. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  98. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  99. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  100. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  101. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
  102. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  103. package/cjs/extensions/forms/Field/String/StringDocs.js +7 -7
  104. package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
  105. package/cjs/extensions/forms/Field/Toggle/Toggle.js +2 -2
  106. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  107. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  108. package/cjs/extensions/forms/Field/Upload/Upload.js +3 -1
  109. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  110. package/cjs/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
  111. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -2
  112. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  113. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  114. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  115. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
  116. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
  117. package/cjs/extensions/forms/Form/Isolation/Isolation.js +2 -3
  118. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  119. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
  120. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +20 -4
  121. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
  122. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  123. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  124. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
  125. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
  126. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +15 -8
  127. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
  128. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
  129. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
  130. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
  131. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
  132. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -1
  133. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
  134. package/cjs/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
  135. package/cjs/extensions/forms/Form/Isolation/useReportError.js +22 -7
  136. package/cjs/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
  137. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
  138. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  139. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
  140. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  141. package/cjs/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
  142. package/cjs/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
  143. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
  144. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
  145. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  146. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +6 -1
  147. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  148. package/cjs/extensions/forms/Tools/Errors.d.ts +5 -0
  149. package/cjs/extensions/forms/Tools/Errors.js +46 -0
  150. package/cjs/extensions/forms/Tools/Errors.js.map +1 -0
  151. package/cjs/extensions/forms/Tools/index.d.ts +1 -0
  152. package/cjs/extensions/forms/Tools/index.js +7 -0
  153. package/cjs/extensions/forms/Tools/index.js.map +1 -1
  154. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
  155. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
  156. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
  157. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  158. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  159. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  160. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
  161. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  162. package/cjs/extensions/forms/Wizard/Step/Step.js +1 -1
  163. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  164. package/cjs/extensions/forms/Wizard/hooks/useStep.js +13 -5
  165. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  166. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
  167. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  168. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  169. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  170. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  171. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  172. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  173. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  174. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  175. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  176. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  177. package/cjs/extensions/forms/constants/locales/sv-SE.js +2 -1
  178. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  179. package/cjs/extensions/forms/hooks/useFieldProps.js +6 -6
  180. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  181. package/cjs/extensions/payment-card/PaymentCard.js +8 -1
  182. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  183. package/cjs/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
  184. package/cjs/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
  185. package/cjs/extensions/payment-card/icons/providers/BankAxept.js +2 -2
  186. package/cjs/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
  187. package/cjs/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
  188. package/cjs/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
  189. package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
  190. package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
  191. package/cjs/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
  192. package/cjs/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
  193. package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
  194. package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
  195. package/cjs/fragments/drawer-list/DrawerListHelpers.js +2 -1
  196. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  197. package/cjs/shared/AlignmentHelper.d.ts +14 -8
  198. package/cjs/shared/AlignmentHelper.js +4 -8
  199. package/cjs/shared/AlignmentHelper.js.map +1 -1
  200. package/cjs/shared/BuildInfo.d.cts +2 -0
  201. package/cjs/shared/BuildInfo.js +5 -0
  202. package/cjs/shared/BuildInfo.js.map +1 -0
  203. package/cjs/shared/Eufemia.d.ts +14 -1
  204. package/cjs/shared/Eufemia.js +31 -3
  205. package/cjs/shared/Eufemia.js.map +1 -1
  206. package/cjs/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  207. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  208. package/cjs/shared/useMedia.js +66 -55
  209. package/cjs/shared/useMedia.js.map +1 -1
  210. package/cjs/style/core/helper-classes/helper-classes.scss +3 -0
  211. package/cjs/style/core/scopes.scss +1 -1
  212. package/cjs/style/core/utilities.scss +3 -1
  213. package/cjs/style/dnb-ui-basis.css +13 -2
  214. package/cjs/style/dnb-ui-basis.min.css +1 -1
  215. package/cjs/style/dnb-ui-body.css +1 -2
  216. package/cjs/style/dnb-ui-body.min.css +1 -1
  217. package/cjs/style/dnb-ui-components.css +0 -22
  218. package/cjs/style/dnb-ui-components.min.css +3 -3
  219. package/cjs/style/dnb-ui-core.css +13 -3
  220. package/cjs/style/dnb-ui-core.min.css +1 -1
  221. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  222. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  223. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  224. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  225. package/cjs/style/themes/theme-ui/ui-theme-components.css +0 -22
  226. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  227. package/components/accordion/Accordion.js +2 -3
  228. package/components/accordion/Accordion.js.map +1 -1
  229. package/components/accordion/AccordionContext.d.ts +0 -4
  230. package/components/accordion/AccordionContext.js.map +1 -1
  231. package/components/accordion/AccordionGroup.js +1 -3
  232. package/components/accordion/AccordionGroup.js.map +1 -1
  233. package/components/accordion/AccordionProviderContext.d.ts +0 -4
  234. package/components/accordion/AccordionProviderContext.js +3 -1
  235. package/components/accordion/AccordionProviderContext.js.map +1 -1
  236. package/components/accordion/AccordionStore.js +1 -2
  237. package/components/accordion/AccordionStore.js.map +1 -1
  238. package/components/accordion/style/dnb-accordion.css +0 -6
  239. package/components/accordion/style/dnb-accordion.min.css +1 -1
  240. package/components/accordion/style/dnb-accordion.scss +0 -5
  241. package/components/autocomplete/Autocomplete.d.ts +1 -1
  242. package/components/autocomplete/Autocomplete.js +2 -2
  243. package/components/autocomplete/Autocomplete.js.map +1 -1
  244. package/components/autocomplete/AutocompleteDocs.js +1 -1
  245. package/components/autocomplete/AutocompleteDocs.js.map +1 -1
  246. package/components/button/Button.js +8 -7
  247. package/components/button/Button.js.map +1 -1
  248. package/components/date-picker/DatePickerDocs.js +3 -3
  249. package/components/date-picker/DatePickerDocs.js.map +1 -1
  250. package/components/date-picker/DatePickerInput.js +2 -2
  251. package/components/date-picker/DatePickerInput.js.map +1 -1
  252. package/components/date-picker/style/dnb-date-picker.css +0 -1
  253. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  254. package/components/dialog/style/dnb-dialog.css +0 -4
  255. package/components/dialog/style/dnb-dialog.min.css +1 -1
  256. package/components/dialog/style/dnb-dialog.scss +0 -5
  257. package/components/drawer/DrawerDocs.js +2 -2
  258. package/components/drawer/DrawerDocs.js.map +1 -1
  259. package/components/drawer/style/dnb-drawer.css +0 -4
  260. package/components/drawer/style/dnb-drawer.min.css +1 -1
  261. package/components/drawer/style/dnb-drawer.scss +0 -5
  262. package/components/dropdown/Dropdown.js +2 -2
  263. package/components/dropdown/Dropdown.js.map +1 -1
  264. package/components/form-label/style/dnb-form-label.css +0 -1
  265. package/components/form-label/style/dnb-form-label.min.css +1 -1
  266. package/components/form-row/FormRow.d.ts +1 -1
  267. package/components/form-row/FormRowDocs.js +1 -1
  268. package/components/form-row/FormRowDocs.js.map +1 -1
  269. package/components/input-masked/style/dnb-input-masked.css +0 -1
  270. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  271. package/components/list-format/ListFormatDocs.js +2 -2
  272. package/components/list-format/ListFormatDocs.js.map +1 -1
  273. package/components/modal/style/dnb-modal.css +0 -4
  274. package/components/modal/style/dnb-modal.min.css +1 -1
  275. package/components/modal/style/dnb-modal.scss +0 -5
  276. package/components/pagination/PaginationDocs.js +2 -2
  277. package/components/pagination/PaginationDocs.js.map +1 -1
  278. package/components/slider/SliderDocs.js +1 -1
  279. package/components/slider/SliderDocs.js.map +1 -1
  280. package/components/step-indicator/StepIndicatorDocs.js +4 -4
  281. package/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  282. package/components/timeline/TimelineItem.js +5 -5
  283. package/components/timeline/TimelineItem.js.map +1 -1
  284. package/components/toggle-button/ToggleButton.d.ts +1 -1
  285. package/components/toggle-button/ToggleButtonDocs.js +2 -2
  286. package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  287. package/components/upload/Upload.js +5 -2
  288. package/components/upload/Upload.js.map +1 -1
  289. package/components/upload/UploadFileInput.d.ts +2 -1
  290. package/components/upload/UploadFileInput.js +7 -4
  291. package/components/upload/UploadFileInput.js.map +1 -1
  292. package/components/upload/style/dnb-upload.css +0 -1
  293. package/components/upload/style/dnb-upload.min.css +1 -1
  294. package/core/jest/jestSetupScreenshots.css +6 -0
  295. package/es/components/accordion/Accordion.js +2 -3
  296. package/es/components/accordion/Accordion.js.map +1 -1
  297. package/es/components/accordion/AccordionContext.d.ts +0 -4
  298. package/es/components/accordion/AccordionContext.js.map +1 -1
  299. package/es/components/accordion/AccordionGroup.js +1 -3
  300. package/es/components/accordion/AccordionGroup.js.map +1 -1
  301. package/es/components/accordion/AccordionProviderContext.d.ts +0 -4
  302. package/es/components/accordion/AccordionProviderContext.js +3 -1
  303. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  304. package/es/components/accordion/AccordionStore.js +1 -2
  305. package/es/components/accordion/AccordionStore.js.map +1 -1
  306. package/es/components/accordion/style/dnb-accordion.css +0 -6
  307. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  308. package/es/components/accordion/style/dnb-accordion.scss +0 -5
  309. package/es/components/autocomplete/Autocomplete.d.ts +1 -1
  310. package/es/components/autocomplete/Autocomplete.js +2 -2
  311. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  312. package/es/components/autocomplete/AutocompleteDocs.js +1 -1
  313. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
  314. package/es/components/button/Button.js +8 -7
  315. package/es/components/button/Button.js.map +1 -1
  316. package/es/components/date-picker/DatePickerDocs.js +3 -3
  317. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  318. package/es/components/date-picker/DatePickerInput.js +2 -2
  319. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  320. package/es/components/date-picker/style/dnb-date-picker.css +0 -1
  321. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  322. package/es/components/dialog/style/dnb-dialog.css +0 -4
  323. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  324. package/es/components/dialog/style/dnb-dialog.scss +0 -5
  325. package/es/components/drawer/DrawerDocs.js +2 -2
  326. package/es/components/drawer/DrawerDocs.js.map +1 -1
  327. package/es/components/drawer/style/dnb-drawer.css +0 -4
  328. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  329. package/es/components/drawer/style/dnb-drawer.scss +0 -5
  330. package/es/components/dropdown/Dropdown.js +2 -2
  331. package/es/components/dropdown/Dropdown.js.map +1 -1
  332. package/es/components/form-label/style/dnb-form-label.css +0 -1
  333. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  334. package/es/components/form-row/FormRow.d.ts +1 -1
  335. package/es/components/form-row/FormRowDocs.js +1 -1
  336. package/es/components/form-row/FormRowDocs.js.map +1 -1
  337. package/es/components/input-masked/style/dnb-input-masked.css +0 -1
  338. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  339. package/es/components/list-format/ListFormatDocs.js +2 -2
  340. package/es/components/list-format/ListFormatDocs.js.map +1 -1
  341. package/es/components/modal/style/dnb-modal.css +0 -4
  342. package/es/components/modal/style/dnb-modal.min.css +1 -1
  343. package/es/components/modal/style/dnb-modal.scss +0 -5
  344. package/es/components/pagination/PaginationDocs.js +2 -2
  345. package/es/components/pagination/PaginationDocs.js.map +1 -1
  346. package/es/components/slider/SliderDocs.js +1 -1
  347. package/es/components/slider/SliderDocs.js.map +1 -1
  348. package/es/components/step-indicator/StepIndicatorDocs.js +4 -4
  349. package/es/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  350. package/es/components/timeline/TimelineItem.js +5 -5
  351. package/es/components/timeline/TimelineItem.js.map +1 -1
  352. package/es/components/toggle-button/ToggleButton.d.ts +1 -1
  353. package/es/components/toggle-button/ToggleButtonDocs.js +2 -2
  354. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  355. package/es/components/upload/Upload.js +5 -2
  356. package/es/components/upload/Upload.js.map +1 -1
  357. package/es/components/upload/UploadFileInput.d.ts +2 -1
  358. package/es/components/upload/UploadFileInput.js +7 -4
  359. package/es/components/upload/UploadFileInput.js.map +1 -1
  360. package/es/components/upload/style/dnb-upload.css +0 -1
  361. package/es/components/upload/style/dnb-upload.min.css +1 -1
  362. package/es/core/jest/jestSetupScreenshots.css +6 -0
  363. package/es/extensions/forms/DataContext/Context.d.ts +5 -2
  364. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  365. package/es/extensions/forms/DataContext/Provider/Provider.js +22 -4
  366. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  367. package/es/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
  368. package/es/extensions/forms/DataContext/Provider/useEventListener.js +22 -0
  369. package/es/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
  370. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +6 -2
  371. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
  372. package/es/extensions/forms/Field/Date/Date.js +10 -4
  373. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  374. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  375. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  376. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  377. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  378. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  379. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +6 -2
  380. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  381. package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
  382. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  383. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +6 -2
  384. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
  385. package/es/extensions/forms/Field/Password/PasswordDocs.js +6 -2
  386. package/es/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  387. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  388. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  389. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +7 -0
  390. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  391. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  392. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  393. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  394. package/es/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
  395. package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  396. package/es/extensions/forms/Field/String/StringDocs.js +7 -7
  397. package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
  398. package/es/extensions/forms/Field/Toggle/Toggle.js +1 -1
  399. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  400. package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  401. package/es/extensions/forms/Field/Upload/Upload.js +3 -1
  402. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  403. package/es/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
  404. package/es/extensions/forms/FieldBlock/FieldBlock.js +1 -1
  405. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  406. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  407. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  408. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
  409. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
  410. package/es/extensions/forms/Form/Isolation/Isolation.js +2 -3
  411. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  412. package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
  413. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +18 -4
  414. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
  415. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  416. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  417. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
  418. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
  419. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +14 -8
  420. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
  421. package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
  422. package/es/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
  423. package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
  424. package/es/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
  425. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -2
  426. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
  427. package/es/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
  428. package/es/extensions/forms/Form/Isolation/useReportError.js +22 -7
  429. package/es/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
  430. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
  431. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  432. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
  433. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  434. package/es/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
  435. package/es/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
  436. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
  437. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
  438. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  439. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +6 -1
  440. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  441. package/es/extensions/forms/Tools/Errors.d.ts +5 -0
  442. package/es/extensions/forms/Tools/Errors.js +37 -0
  443. package/es/extensions/forms/Tools/Errors.js.map +1 -0
  444. package/es/extensions/forms/Tools/index.d.ts +1 -0
  445. package/es/extensions/forms/Tools/index.js +1 -0
  446. package/es/extensions/forms/Tools/index.js.map +1 -1
  447. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
  448. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
  449. package/es/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
  450. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  451. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  452. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  453. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
  454. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  455. package/es/extensions/forms/Wizard/Step/Step.js +1 -1
  456. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  457. package/es/extensions/forms/Wizard/hooks/useStep.js +13 -5
  458. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  459. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
  460. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  461. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  462. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  463. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  464. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  465. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  466. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  467. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  468. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  469. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  470. package/es/extensions/forms/constants/locales/sv-SE.js +2 -1
  471. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  472. package/es/extensions/forms/hooks/useFieldProps.js +8 -8
  473. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  474. package/es/extensions/payment-card/PaymentCard.js +1 -0
  475. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  476. package/es/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
  477. package/es/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
  478. package/es/extensions/payment-card/icons/providers/BankAxept.js +2 -2
  479. package/es/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
  480. package/es/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
  481. package/es/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
  482. package/es/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
  483. package/es/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
  484. package/es/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
  485. package/es/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
  486. package/es/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
  487. package/es/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
  488. package/es/fragments/drawer-list/DrawerListHelpers.js +2 -1
  489. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  490. package/es/shared/AlignmentHelper.d.ts +14 -8
  491. package/es/shared/AlignmentHelper.js +4 -8
  492. package/es/shared/AlignmentHelper.js.map +1 -1
  493. package/es/shared/BuildInfo.cjs +6 -0
  494. package/es/shared/BuildInfo.d.cts +2 -0
  495. package/es/shared/Eufemia.d.ts +14 -1
  496. package/es/shared/Eufemia.js +27 -2
  497. package/es/shared/Eufemia.js.map +1 -1
  498. package/es/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  499. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  500. package/es/shared/useMedia.js +66 -55
  501. package/es/shared/useMedia.js.map +1 -1
  502. package/es/style/core/helper-classes/helper-classes.scss +3 -0
  503. package/es/style/core/scopes.scss +1 -1
  504. package/es/style/core/utilities.scss +3 -1
  505. package/es/style/dnb-ui-basis.css +13 -2
  506. package/es/style/dnb-ui-basis.min.css +1 -1
  507. package/es/style/dnb-ui-body.css +1 -2
  508. package/es/style/dnb-ui-body.min.css +1 -1
  509. package/es/style/dnb-ui-components.css +0 -22
  510. package/es/style/dnb-ui-components.min.css +3 -3
  511. package/es/style/dnb-ui-core.css +13 -3
  512. package/es/style/dnb-ui-core.min.css +1 -1
  513. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  514. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  515. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  516. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  517. package/es/style/themes/theme-ui/ui-theme-components.css +0 -22
  518. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  519. package/esm/dnb-ui-components.min.mjs +1 -1
  520. package/esm/dnb-ui-elements.min.mjs +1 -1
  521. package/esm/dnb-ui-extensions.min.mjs +3 -3
  522. package/esm/dnb-ui-lib.min.mjs +1 -1
  523. package/extensions/forms/DataContext/Context.d.ts +5 -2
  524. package/extensions/forms/DataContext/Context.js.map +1 -1
  525. package/extensions/forms/DataContext/Provider/Provider.js +22 -4
  526. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  527. package/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
  528. package/extensions/forms/DataContext/Provider/useEventListener.js +23 -0
  529. package/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
  530. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +6 -2
  531. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
  532. package/extensions/forms/Field/Date/Date.js +10 -4
  533. package/extensions/forms/Field/Date/Date.js.map +1 -1
  534. package/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  535. package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  536. package/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  537. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  538. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  539. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +6 -2
  540. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  541. package/extensions/forms/Field/Number/NumberDocs.js +1 -1
  542. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  543. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +6 -2
  544. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
  545. package/extensions/forms/Field/Password/PasswordDocs.js +6 -2
  546. package/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  547. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  548. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  549. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +7 -0
  550. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  551. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  552. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  553. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  554. package/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
  555. package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  556. package/extensions/forms/Field/String/StringDocs.js +7 -7
  557. package/extensions/forms/Field/String/StringDocs.js.map +1 -1
  558. package/extensions/forms/Field/Toggle/Toggle.js +1 -1
  559. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  560. package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  561. package/extensions/forms/Field/Upload/Upload.js +3 -1
  562. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  563. package/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
  564. package/extensions/forms/FieldBlock/FieldBlock.js +1 -1
  565. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  566. package/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  567. package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  568. package/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
  569. package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
  570. package/extensions/forms/Form/Isolation/Isolation.js +2 -3
  571. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  572. package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
  573. package/extensions/forms/Form/Isolation/IsolationDataReference.js +20 -4
  574. package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
  575. package/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  576. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  577. package/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
  578. package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
  579. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +15 -8
  580. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
  581. package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
  582. package/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
  583. package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
  584. package/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
  585. package/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -1
  586. package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
  587. package/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
  588. package/extensions/forms/Form/Isolation/useReportError.js +22 -7
  589. package/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
  590. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
  591. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  592. package/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
  593. package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  594. package/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
  595. package/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
  596. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
  597. package/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
  598. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  599. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +6 -1
  600. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  601. package/extensions/forms/Tools/Errors.d.ts +5 -0
  602. package/extensions/forms/Tools/Errors.js +38 -0
  603. package/extensions/forms/Tools/Errors.js.map +1 -0
  604. package/extensions/forms/Tools/index.d.ts +1 -0
  605. package/extensions/forms/Tools/index.js +1 -0
  606. package/extensions/forms/Tools/index.js.map +1 -1
  607. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
  608. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
  609. package/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
  610. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  611. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  612. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  613. package/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
  614. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  615. package/extensions/forms/Wizard/Step/Step.js +1 -1
  616. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  617. package/extensions/forms/Wizard/hooks/useStep.js +13 -5
  618. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  619. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
  620. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  621. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  622. package/extensions/forms/constants/locales/en-GB.js +2 -1
  623. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  624. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  625. package/extensions/forms/constants/locales/index.d.ts +2 -0
  626. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  627. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  628. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  629. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  630. package/extensions/forms/constants/locales/sv-SE.js +2 -1
  631. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  632. package/extensions/forms/hooks/useFieldProps.js +8 -8
  633. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  634. package/extensions/payment-card/PaymentCard.js +1 -0
  635. package/extensions/payment-card/PaymentCard.js.map +1 -1
  636. package/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
  637. package/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
  638. package/extensions/payment-card/icons/providers/BankAxept.js +2 -2
  639. package/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
  640. package/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
  641. package/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
  642. package/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
  643. package/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
  644. package/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
  645. package/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
  646. package/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
  647. package/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
  648. package/fragments/drawer-list/DrawerListHelpers.js +2 -1
  649. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  650. package/package.json +1 -1
  651. package/shared/AlignmentHelper.d.ts +14 -8
  652. package/shared/AlignmentHelper.js +4 -8
  653. package/shared/AlignmentHelper.js.map +1 -1
  654. package/shared/BuildInfo.cjs +6 -0
  655. package/shared/BuildInfo.d.cts +2 -0
  656. package/shared/Eufemia.d.ts +14 -1
  657. package/shared/Eufemia.js +27 -2
  658. package/shared/Eufemia.js.map +1 -1
  659. package/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  660. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  661. package/shared/useMedia.js +67 -56
  662. package/shared/useMedia.js.map +1 -1
  663. package/style/core/helper-classes/helper-classes.scss +3 -0
  664. package/style/core/scopes.scss +1 -1
  665. package/style/core/utilities.scss +3 -1
  666. package/style/dnb-ui-basis.css +13 -2
  667. package/style/dnb-ui-basis.min.css +1 -1
  668. package/style/dnb-ui-body.css +1 -2
  669. package/style/dnb-ui-body.min.css +1 -1
  670. package/style/dnb-ui-components.css +0 -22
  671. package/style/dnb-ui-components.min.css +3 -3
  672. package/style/dnb-ui-core.css +13 -3
  673. package/style/dnb-ui-core.min.css +1 -1
  674. package/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  675. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  676. package/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  677. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  678. package/style/themes/theme-ui/ui-theme-components.css +0 -22
  679. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  680. package/umd/dnb-ui-components.min.js +1 -1
  681. package/umd/dnb-ui-elements.min.js +1 -1
  682. package/umd/dnb-ui-extensions.min.js +1 -1
  683. package/umd/dnb-ui-lib.min.js +1 -1
  684. package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
  685. package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
  686. package/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
  687. /package/cjs/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
  688. /package/es/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
  689. /package/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"IsolationDataReference.js","names":["createDataReference","snapshotRef","current","undefined","eventsRef","refresh","forEach","fn","update","data","cleanup"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/IsolationDataReference.ts"],"sourcesContent":["import React from 'react'\n\nexport type IsolationDataReference = {\n refresh: () => void\n update: (data: unknown) => void\n cleanup: () => void\n snapshotRef: React.MutableRefObject<unknown>\n eventsRef: React.MutableRefObject<Array<() => void>>\n}\n\nexport function createDataReference(): IsolationDataReference {\n const snapshotRef = { current: undefined }\n const eventsRef = { current: [] }\n\n const refresh: IsolationDataReference['refresh'] = () => {\n eventsRef.current.forEach((fn) => fn())\n }\n\n const update: IsolationDataReference['update'] = (data) => {\n snapshotRef.current = data\n }\n\n const cleanup: IsolationDataReference['cleanup'] = () => {\n eventsRef.current = []\n }\n\n return {\n refresh,\n update,\n cleanup,\n snapshotRef,\n eventsRef,\n }\n}\n"],"mappings":"AAUA,OAAO,SAASA,mBAAmBA,CAAA,EAA2B;EAC5D,MAAMC,WAAW,GAAG;IAAEC,OAAO,EAAEC;EAAU,CAAC;EAC1C,MAAMC,SAAS,GAAG;IAAEF,OAAO,EAAE;EAAG,CAAC;EAEjC,MAAMG,OAA0C,GAAGA,CAAA,KAAM;IACvDD,SAAS,CAACF,OAAO,CAACI,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;EACzC,CAAC;EAED,MAAMC,MAAwC,GAAIC,IAAI,IAAK;IACzDR,WAAW,CAACC,OAAO,GAAGO,IAAI;EAC5B,CAAC;EAED,MAAMC,OAA0C,GAAGA,CAAA,KAAM;IACvDN,SAAS,CAACF,OAAO,GAAG,EAAE;EACxB,CAAC;EAED,OAAO;IACLG,OAAO;IACPG,MAAM;IACNE,OAAO;IACPT,WAAW;IACXG;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"file":"IsolationDataReference.js","names":["createDataReference","snapshotRef","current","undefined","eventsRef","refresh","deferred","arguments","length","update","forEach","fn","window","requestAnimationFrame","data","cleanup","index","indexOf","splice"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/IsolationDataReference.ts"],"sourcesContent":["import React from 'react'\n\nexport type IsolationDataReference = {\n refresh: (options?: { deferred?: boolean }) => void\n update: (data: unknown) => void\n cleanup: (fn?: () => void) => void\n snapshotRef: React.MutableRefObject<unknown>\n eventsRef: React.MutableRefObject<Array<() => void>>\n}\n\nexport function createDataReference(): IsolationDataReference {\n const snapshotRef = { current: undefined }\n const eventsRef = { current: [] }\n\n const refresh: IsolationDataReference['refresh'] = ({\n deferred = false,\n } = {}) => {\n const update = () => eventsRef.current.forEach((fn) => fn())\n if (deferred && typeof window !== 'undefined') {\n requestAnimationFrame(update)\n } else {\n update()\n }\n }\n\n const update: IsolationDataReference['update'] = (data) => {\n snapshotRef.current = data\n }\n\n const cleanup: IsolationDataReference['cleanup'] = (fn = null) => {\n if (fn) {\n const index = eventsRef.current.indexOf(fn)\n if (index !== -1) {\n eventsRef.current.splice(index, 1)\n }\n } else {\n eventsRef.current = []\n }\n }\n\n return {\n refresh,\n update,\n cleanup,\n snapshotRef,\n eventsRef,\n }\n}\n"],"mappings":"AAUA,OAAO,SAASA,mBAAmBA,CAAA,EAA2B;EAC5D,MAAMC,WAAW,GAAG;IAAEC,OAAO,EAAEC;EAAU,CAAC;EAC1C,MAAMC,SAAS,GAAG;IAAEF,OAAO,EAAE;EAAG,CAAC;EAEjC,MAAMG,OAA0C,GAAG,SAAAA,CAAA,EAExC;IAAA,IAFyC;MAClDC,QAAQ,GAAG;IACb,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAJ,SAAA,GAAAI,SAAA,MAAG,CAAC,CAAC;IACJ,MAAME,MAAM,GAAGA,CAAA,KAAML,SAAS,CAACF,OAAO,CAACQ,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;IAC5D,IAAIL,QAAQ,IAAI,OAAOM,MAAM,KAAK,WAAW,EAAE;MAC7CC,qBAAqB,CAACJ,MAAM,CAAC;IAC/B,CAAC,MAAM;MACLA,MAAM,CAAC,CAAC;IACV;EACF,CAAC;EAED,MAAMA,MAAwC,GAAIK,IAAI,IAAK;IACzDb,WAAW,CAACC,OAAO,GAAGY,IAAI;EAC5B,CAAC;EAED,MAAMC,OAA0C,GAAG,SAAAA,CAAA,EAAe;IAAA,IAAdJ,EAAE,GAAAJ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAJ,SAAA,GAAAI,SAAA,MAAG,IAAI;IAC3D,IAAII,EAAE,EAAE;MACN,MAAMK,KAAK,GAAGZ,SAAS,CAACF,OAAO,CAACe,OAAO,CAACN,EAAE,CAAC;MAC3C,IAAIK,KAAK,KAAK,CAAC,CAAC,EAAE;QAChBZ,SAAS,CAACF,OAAO,CAACgB,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;MACpC;IACF,CAAC,MAAM;MACLZ,SAAS,CAACF,OAAO,GAAG,EAAE;IACxB;EACF,CAAC;EAED,OAAO;IACLG,OAAO;IACPI,MAAM;IACNM,OAAO;IACPd,WAAW;IACXG;EACF,CAAC;AACH","ignoreList":[]}
@@ -34,7 +34,7 @@ export const IsolationProperties = _objectSpread(_objectSpread({
34
34
  status: 'optional'
35
35
  },
36
36
  dataReference: {
37
- doc: 'Provide a reference by using `Form.Isolation.createDataReference.`',
37
+ doc: 'Provide a reference by using `Form.Isolation.createDataReference`.',
38
38
  type: 'IsolationDataReference',
39
39
  status: 'optional'
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IsolationDocs.js","names":["ProviderEvents","ProviderProperties","IsolationProperties","_objectSpread","path","doc","type","status","transformOnCommit","commitHandleRef","bubbleValidation","preventUncommittedChanges","resetDataAfterCommit","dataReference","minimumAsyncBehaviorTime","undefined","asyncSubmitTimeout","scrollTopOnSubmit","sessionStorageId","globalStatusId","IsolationEvents","onCommit","onSubmit","onSubmitRequest","onSubmitComplete"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/IsolationDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport {\n ProviderEvents,\n ProviderProperties,\n} from '../../DataContext/Provider/ProviderDocs'\n\nexport const IsolationProperties: PropertiesTableProps = {\n path: {\n doc: 'JSON Pointer to define the object key for all the generated nested field data.',\n type: 'string',\n status: 'optional',\n },\n transformOnCommit: {\n doc: 'Transform the data before it gets committed to the form. The first parameter is the isolated data object. The second parameter is the outer context data object (Form.Handler).',\n type: 'function',\n status: 'optional',\n },\n commitHandleRef: {\n doc: 'Provide a ref to a function that can be called from any location to commit the data to the form.',\n type: 'React.RefObject',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the Form.Isolation.',\n type: 'boolean',\n status: 'optional',\n },\n preventUncommittedChanges: {\n doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',\n type: 'boolean',\n status: 'optional',\n },\n resetDataAfterCommit: {\n doc: 'If set to `true`, the Form.Isolation will reset its data context after committing the data to the outer context.',\n type: 'boolean',\n status: 'optional',\n },\n dataReference: {\n doc: 'Provide a reference by using `Form.Isolation.createDataReference.`',\n type: 'IsolationDataReference',\n status: 'optional',\n },\n ...ProviderProperties,\n minimumAsyncBehaviorTime: undefined,\n asyncSubmitTimeout: undefined,\n scrollTopOnSubmit: undefined,\n sessionStorageId: undefined,\n globalStatusId: undefined,\n}\n\nexport const IsolationEvents: PropertiesTableProps = {\n onCommit: {\n doc: 'Will be called on a nested form context commit – if validation has passed. The first parameter is the committed data object. The second parameter is an object containing a method to clear the internal data `{ clearData }`.',\n type: 'function',\n status: 'optional',\n },\n ...ProviderEvents,\n onSubmit: undefined,\n onSubmitRequest: undefined,\n onSubmitComplete: undefined,\n}\n"],"mappings":";;;AACA,SACEA,cAAc,EACdC,kBAAkB,QACb,yCAAyC;AAEhD,OAAO,MAAMC,mBAAyC,GAAAC,aAAA,CAAAA,aAAA;EACpDC,IAAI,EAAE;IACJC,GAAG,EAAE,gFAAgF;IACrFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,iBAAiB,EAAE;IACjBH,GAAG,EAAE,iLAAiL;IACtLC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDE,eAAe,EAAE;IACfJ,GAAG,EAAE,kGAAkG;IACvGC,IAAI,EAAE,iBAAiB;IACvBC,MAAM,EAAE;EACV,CAAC;EACDG,gBAAgB,EAAE;IAChBL,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDI,yBAAyB,EAAE;IACzBN,GAAG,EAAE,oJAAoJ;IACzJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDK,oBAAoB,EAAE;IACpBP,GAAG,EAAE,kHAAkH;IACvHC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDM,aAAa,EAAE;IACbR,GAAG,EAAE,oEAAoE;IACzEC,IAAI,EAAE,wBAAwB;IAC9BC,MAAM,EAAE;EACV;AAAC,GACEN,kBAAkB;EACrBa,wBAAwB,EAAEC,SAAS;EACnCC,kBAAkB,EAAED,SAAS;EAC7BE,iBAAiB,EAAEF,SAAS;EAC5BG,gBAAgB,EAAEH,SAAS;EAC3BI,cAAc,EAAEJ;AAAS,EAC1B;AAED,OAAO,MAAMK,eAAqC,GAAAjB,aAAA,CAAAA,aAAA;EAChDkB,QAAQ,EAAE;IACRhB,GAAG,EAAE,gOAAgO;IACrOC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AAAC,GACEP,cAAc;EACjBsB,QAAQ,EAAEP,SAAS;EACnBQ,eAAe,EAAER,SAAS;EAC1BS,gBAAgB,EAAET;AAAS,EAC5B","ignoreList":[]}
1
+ {"version":3,"file":"IsolationDocs.js","names":["ProviderEvents","ProviderProperties","IsolationProperties","_objectSpread","path","doc","type","status","transformOnCommit","commitHandleRef","bubbleValidation","preventUncommittedChanges","resetDataAfterCommit","dataReference","minimumAsyncBehaviorTime","undefined","asyncSubmitTimeout","scrollTopOnSubmit","sessionStorageId","globalStatusId","IsolationEvents","onCommit","onSubmit","onSubmitRequest","onSubmitComplete"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/IsolationDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport {\n ProviderEvents,\n ProviderProperties,\n} from '../../DataContext/Provider/ProviderDocs'\n\nexport const IsolationProperties: PropertiesTableProps = {\n path: {\n doc: 'JSON Pointer to define the object key for all the generated nested field data.',\n type: 'string',\n status: 'optional',\n },\n transformOnCommit: {\n doc: 'Transform the data before it gets committed to the form. The first parameter is the isolated data object. The second parameter is the outer context data object (Form.Handler).',\n type: 'function',\n status: 'optional',\n },\n commitHandleRef: {\n doc: 'Provide a ref to a function that can be called from any location to commit the data to the form.',\n type: 'React.RefObject',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the Form.Isolation.',\n type: 'boolean',\n status: 'optional',\n },\n preventUncommittedChanges: {\n doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',\n type: 'boolean',\n status: 'optional',\n },\n resetDataAfterCommit: {\n doc: 'If set to `true`, the Form.Isolation will reset its data context after committing the data to the outer context.',\n type: 'boolean',\n status: 'optional',\n },\n dataReference: {\n doc: 'Provide a reference by using `Form.Isolation.createDataReference`.',\n type: 'IsolationDataReference',\n status: 'optional',\n },\n ...ProviderProperties,\n minimumAsyncBehaviorTime: undefined,\n asyncSubmitTimeout: undefined,\n scrollTopOnSubmit: undefined,\n sessionStorageId: undefined,\n globalStatusId: undefined,\n}\n\nexport const IsolationEvents: PropertiesTableProps = {\n onCommit: {\n doc: 'Will be called on a nested form context commit – if validation has passed. The first parameter is the committed data object. The second parameter is an object containing a method to clear the internal data `{ clearData }`.',\n type: 'function',\n status: 'optional',\n },\n ...ProviderEvents,\n onSubmit: undefined,\n onSubmitRequest: undefined,\n onSubmitComplete: undefined,\n}\n"],"mappings":";;;AACA,SACEA,cAAc,EACdC,kBAAkB,QACb,yCAAyC;AAEhD,OAAO,MAAMC,mBAAyC,GAAAC,aAAA,CAAAA,aAAA;EACpDC,IAAI,EAAE;IACJC,GAAG,EAAE,gFAAgF;IACrFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,iBAAiB,EAAE;IACjBH,GAAG,EAAE,iLAAiL;IACtLC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDE,eAAe,EAAE;IACfJ,GAAG,EAAE,kGAAkG;IACvGC,IAAI,EAAE,iBAAiB;IACvBC,MAAM,EAAE;EACV,CAAC;EACDG,gBAAgB,EAAE;IAChBL,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDI,yBAAyB,EAAE;IACzBN,GAAG,EAAE,oJAAoJ;IACzJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDK,oBAAoB,EAAE;IACpBP,GAAG,EAAE,kHAAkH;IACvHC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDM,aAAa,EAAE;IACbR,GAAG,EAAE,oEAAoE;IACzEC,IAAI,EAAE,wBAAwB;IAC9BC,MAAM,EAAE;EACV;AAAC,GACEN,kBAAkB;EACrBa,wBAAwB,EAAEC,SAAS;EACnCC,kBAAkB,EAAED,SAAS;EAC7BE,iBAAiB,EAAEF,SAAS;EAC5BG,gBAAgB,EAAEH,SAAS;EAC3BI,cAAc,EAAEJ;AAAS,EAC1B;AAED,OAAO,MAAMK,eAAqC,GAAAjB,aAAA,CAAAA,aAAA;EAChDkB,QAAQ,EAAE;IACRhB,GAAG,EAAE,gOAAgO;IACrOC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AAAC,GACEP,cAAc;EACjBsB,QAAQ,EAAEP,SAAS;EACnBQ,eAAe,EAAER,SAAS;EAC1BS,gBAAgB,EAAET;AAAS,EAC5B","ignoreList":[]}
@@ -49,7 +49,8 @@ export default function IsolationResetButton(props) {
49
49
  } = useHandleStatus({
50
50
  outerContext,
51
51
  preventUncommittedChanges,
52
- error: isolationError
52
+ error: isolationError,
53
+ name: 'isolation-reset-button'
53
54
  });
54
55
  const buttonProps = omitDataValueReadWriteProps(restProps);
55
56
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"IsolationResetButton.js","names":["React","useCallback","useContext","classnames","Button","Dialog","useTranslation","FieldBoundaryContext","reset","useHasContentChanged","omitDataValueReadWriteProps","useDataContextSnapshot","useHandleStatus","isolationError","IsolationContext","IsolationResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","showWhen","restProps","_objectWithoutProperties","_excluded","outerContext","preventUncommittedChanges","setShowBoundaryErrors","handleReset","enabled","hasContentChanged","showStatus","showCommitStatus","error","buttonProps","resetButton","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","useRef","handleClick","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","_objectSpread","variant","icon","icon_position","disabled","createElement","tabIndex","ref","Boolean","title","onConfirm","_extends","on_click"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/IsolationResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from './useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\nimport useDataContextSnapshot from './useDataContextSnapshot'\nimport useHandleStatus from './useHandleStatus'\nimport { isolationError } from './IsolatedContainer'\nimport IsolationContext from './IsolationContext'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n showWhen?: 'uncommittedChangeDetected'\n}\n\nexport default function IsolationResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n showWhen,\n ...restProps\n } = props\n\n const { outerContext, preventUncommittedChanges } =\n useContext(IsolationContext)\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n\n const { handleReset } = useDataContextSnapshot({ enabled: true })\n const { hasContentChanged } = useHasContentChanged()\n const { showStatus: showCommitStatus } = useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error: isolationError,\n })\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n handleReset()\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, handleReset, setShowBoundaryErrors]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-isolate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span\n tabIndex={-1}\n ref={buttonWrapperRef}\n className=\"dnb-no-focus\"\n hidden={\n !(showWhen === 'uncommittedChangeDetected'\n ? Boolean(showCommitStatus)\n : true)\n }\n >\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"IsolationResetButton.js","names":["React","useCallback","useContext","classnames","Button","Dialog","useTranslation","FieldBoundaryContext","reset","useHasContentChanged","omitDataValueReadWriteProps","useDataContextSnapshot","useHandleStatus","isolationError","IsolationContext","IsolationResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","showWhen","restProps","_objectWithoutProperties","_excluded","outerContext","preventUncommittedChanges","setShowBoundaryErrors","handleReset","enabled","hasContentChanged","showStatus","showCommitStatus","error","name","buttonProps","resetButton","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","useRef","handleClick","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","_objectSpread","variant","icon","icon_position","disabled","createElement","tabIndex","ref","Boolean","title","onConfirm","_extends","on_click"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/IsolationResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from './useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\nimport useDataContextSnapshot from './useDataContextSnapshot'\nimport useHandleStatus from './useHandleStatus'\nimport { isolationError } from './IsolatedContainer'\nimport IsolationContext from './IsolationContext'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n showWhen?: 'uncommittedChangeDetected'\n}\n\nexport default function IsolationResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n showWhen,\n ...restProps\n } = props\n\n const { outerContext, preventUncommittedChanges } =\n useContext(IsolationContext)\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n\n const { handleReset } = useDataContextSnapshot({ enabled: true })\n const { hasContentChanged } = useHasContentChanged()\n const { showStatus: showCommitStatus } = useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error: isolationError,\n name: 'isolation-reset-button',\n })\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n handleReset()\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, handleReset, setShowBoundaryErrors]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-isolate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span\n tabIndex={-1}\n ref={buttonWrapperRef}\n className=\"dnb-no-focus\"\n hidden={\n !(showWhen === 'uncommittedChangeDetected'\n ? Boolean(showCommitStatus)\n : true)\n }\n >\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import "core-js/modules/web.dom-collections.iterator.js";
4
4
  import { useCallback, useContext, useEffect, useReducer, useState } from 'react';
5
5
  import DataContext from '../../DataContext/Context';
6
+ import WizardContext from '../../Wizard/Context';
6
7
  import IsolationContext from './IsolationContext';
7
8
  import { createDataReference } from './IsolationDataReference';
8
9
  import structuredClone from '@ungap/structured-clone';
@@ -16,6 +17,7 @@ export default function useDataContextSnapshot() {
16
17
  setData
17
18
  } = useContext(DataContext);
18
19
  const isolationContext = useContext(IsolationContext);
20
+ const hasWizard = Boolean(useContext(WizardContext));
19
21
  const [dataReferenceFallback] = useState(() => {
20
22
  if (enabled && !(isolationContext !== null && isolationContext !== void 0 && isolationContext.dataReference)) {
21
23
  return createDataReference();
@@ -32,25 +34,30 @@ export default function useDataContextSnapshot() {
32
34
  refresh,
33
35
  cleanup
34
36
  } = dataReference || {};
37
+ const updateHandler = useCallback(function () {
38
+ let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
39
+ update(data || structuredClone(internalDataRef === null || internalDataRef === void 0 ? void 0 : internalDataRef.current));
40
+ forceUpdate();
41
+ }, [internalDataRef, update]);
35
42
  useEffect(() => {
36
43
  if (enabled && eventsRef) {
37
- eventsRef.current.push(() => {
38
- update(structuredClone(internalDataRef === null || internalDataRef === void 0 ? void 0 : internalDataRef.current));
39
- forceUpdate();
44
+ eventsRef.current.push(updateHandler);
45
+ refresh({
46
+ deferred: hasWizard
40
47
  });
41
- refresh();
42
48
  }
43
- return () => cleanup === null || cleanup === void 0 ? void 0 : cleanup();
44
- }, [cleanup, enabled, eventsRef, internalDataRef, refresh, update]);
49
+ return () => cleanup === null || cleanup === void 0 ? void 0 : cleanup(updateHandler);
50
+ }, [cleanup, enabled, eventsRef, hasWizard, refresh, updateHandler]);
45
51
  const handleReset = useCallback(() => {
46
52
  window.requestAnimationFrame(() => {
47
53
  if (snapshotRef) {
48
54
  const data = structuredClone(snapshotRef.current);
49
- setData(data);
50
55
  setIsolatedData(data);
56
+ setData(data);
57
+ updateHandler(data);
51
58
  }
52
59
  });
53
- }, [setData, setIsolatedData, snapshotRef]);
60
+ }, [setData, setIsolatedData, snapshotRef, updateHandler]);
54
61
  return {
55
62
  handleReset,
56
63
  snapshotRef
@@ -1 +1 @@
1
- {"version":3,"file":"useDataContextSnapshot.js","names":["useCallback","useContext","useEffect","useReducer","useState","DataContext","IsolationContext","createDataReference","structuredClone","useDataContextSnapshot","enabled","arguments","length","undefined","forceUpdate","internalDataRef","setData","isolationContext","dataReferenceFallback","dataReference","setIsolatedData","snapshotRef","eventsRef","update","refresh","cleanup","current","push","handleReset","window","requestAnimationFrame","data"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useDataContextSnapshot.ts"],"sourcesContent":["import {\n useCallback,\n useContext,\n useEffect,\n useReducer,\n useState,\n} from 'react'\nimport DataContext from '../../DataContext/Context'\nimport IsolationContext from './IsolationContext'\nimport { createDataReference } from './IsolationDataReference'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport default function useDataContextSnapshot({\n enabled,\n}: {\n enabled?: boolean\n} = {}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { internalDataRef, setData } = useContext(DataContext)\n const isolationContext = useContext(IsolationContext)\n const [dataReferenceFallback] = useState(() => {\n if (enabled && !isolationContext?.dataReference) {\n return createDataReference()\n }\n })\n const { dataReference = dataReferenceFallback, setIsolatedData } =\n isolationContext || {}\n const { snapshotRef, eventsRef, update, refresh, cleanup } =\n dataReference || {}\n\n useEffect(() => {\n if (enabled && eventsRef) {\n eventsRef.current.push(() => {\n update(structuredClone(internalDataRef?.current))\n forceUpdate()\n })\n refresh()\n }\n\n return () => cleanup?.()\n }, [cleanup, enabled, eventsRef, internalDataRef, refresh, update])\n\n const handleReset = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (snapshotRef) {\n const data = structuredClone(snapshotRef.current)\n setData(data)\n setIsolatedData(data)\n }\n }) // To actually reset the data without influence the data we are about to push, we need to wait for the next frame\n }, [setData, setIsolatedData, snapshotRef])\n\n return { handleReset, snapshotRef }\n}\n"],"mappings":";;;AAAA,SACEA,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,UAAU,EACVC,QAAQ,QACH,OAAO;AACd,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,mBAAmB,QAAQ,0BAA0B;AAM9D,OAAOC,eAAe,MAAM,yBAAyB;AAErD,eAAe,SAASC,sBAAsBA,CAAA,EAItC;EAAA,IAJuC;IAC7CC;EAGF,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,MAAM,GAAGG,WAAW,CAAC,GAAGX,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAClD,MAAM;IAAEY,eAAe;IAAEC;EAAQ,CAAC,GAAGf,UAAU,CAACI,WAAW,CAAC;EAC5D,MAAMY,gBAAgB,GAAGhB,UAAU,CAACK,gBAAgB,CAAC;EACrD,MAAM,CAACY,qBAAqB,CAAC,GAAGd,QAAQ,CAAC,MAAM;IAC7C,IAAIM,OAAO,IAAI,EAACO,gBAAgB,aAAhBA,gBAAgB,eAAhBA,gBAAgB,CAAEE,aAAa,GAAE;MAC/C,OAAOZ,mBAAmB,CAAC,CAAC;IAC9B;EACF,CAAC,CAAC;EACF,MAAM;IAAEY,aAAa,GAAGD,qBAAqB;IAAEE;EAAgB,CAAC,GAC9DH,gBAAgB,IAAI,CAAC,CAAC;EACxB,MAAM;IAAEI,WAAW;IAAEC,SAAS;IAAEC,MAAM;IAAEC,OAAO;IAAEC;EAAQ,CAAC,GACxDN,aAAa,IAAI,CAAC,CAAC;EAErBjB,SAAS,CAAC,MAAM;IACd,IAAIQ,OAAO,IAAIY,SAAS,EAAE;MACxBA,SAAS,CAACI,OAAO,CAACC,IAAI,CAAC,MAAM;QAC3BJ,MAAM,CAACf,eAAe,CAACO,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEW,OAAO,CAAC,CAAC;QACjDZ,WAAW,CAAC,CAAC;MACf,CAAC,CAAC;MACFU,OAAO,CAAC,CAAC;IACX;IAEA,OAAO,MAAMC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAG,CAAC;EAC1B,CAAC,EAAE,CAACA,OAAO,EAAEf,OAAO,EAAEY,SAAS,EAAEP,eAAe,EAAES,OAAO,EAAED,MAAM,CAAC,CAAC;EAEnE,MAAMK,WAAW,GAAG5B,WAAW,CAAC,MAAM;IACpC6B,MAAM,CAACC,qBAAqB,CAAC,MAAM;MACjC,IAAIT,WAAW,EAAE;QACf,MAAMU,IAAI,GAAGvB,eAAe,CAACa,WAAW,CAACK,OAAO,CAAC;QACjDV,OAAO,CAACe,IAAI,CAAC;QACbX,eAAe,CAACW,IAAI,CAAC;MACvB;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,CAACf,OAAO,EAAEI,eAAe,EAAEC,WAAW,CAAC,CAAC;EAE3C,OAAO;IAAEO,WAAW;IAAEP;EAAY,CAAC;AACrC","ignoreList":[]}
1
+ {"version":3,"file":"useDataContextSnapshot.js","names":["useCallback","useContext","useEffect","useReducer","useState","DataContext","WizardContext","IsolationContext","createDataReference","structuredClone","useDataContextSnapshot","enabled","arguments","length","undefined","forceUpdate","internalDataRef","setData","isolationContext","hasWizard","Boolean","dataReferenceFallback","dataReference","setIsolatedData","snapshotRef","eventsRef","update","refresh","cleanup","updateHandler","data","current","push","deferred","handleReset","window","requestAnimationFrame"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useDataContextSnapshot.ts"],"sourcesContent":["import {\n useCallback,\n useContext,\n useEffect,\n useReducer,\n useState,\n} from 'react'\nimport DataContext from '../../DataContext/Context'\nimport WizardContext from '../../Wizard/Context'\nimport IsolationContext from './IsolationContext'\nimport { createDataReference } from './IsolationDataReference'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport default function useDataContextSnapshot({\n enabled,\n}: {\n enabled?: boolean\n} = {}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { internalDataRef, setData } = useContext(DataContext)\n const isolationContext = useContext(IsolationContext)\n const hasWizard = Boolean(useContext(WizardContext))\n const [dataReferenceFallback] = useState(() => {\n if (enabled && !isolationContext?.dataReference) {\n return createDataReference()\n }\n })\n const { dataReference = dataReferenceFallback, setIsolatedData } =\n isolationContext || {}\n const { snapshotRef, eventsRef, update, refresh, cleanup } =\n dataReference || {}\n\n const updateHandler = useCallback(\n (data = null) => {\n update(data || structuredClone(internalDataRef?.current))\n forceUpdate() // Ensure the hasContentChanged hook gets updated\n },\n [internalDataRef, update]\n )\n\n useEffect(() => {\n if (enabled && eventsRef) {\n eventsRef.current.push(updateHandler)\n\n // Also run refresh again and wait for the Wizard to finish prerendering,\n // in case there are fields in steps beyond the current one.\n refresh({ deferred: hasWizard })\n }\n\n return () => cleanup?.(updateHandler)\n }, [cleanup, enabled, eventsRef, hasWizard, refresh, updateHandler])\n\n const handleReset = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (snapshotRef) {\n const data = structuredClone(snapshotRef.current)\n setIsolatedData(data)\n setData(data)\n updateHandler(data)\n }\n }) // To actually reset the data without influence the data we are about to push, we need to wait for the next frame\n }, [setData, setIsolatedData, snapshotRef, updateHandler])\n\n return { handleReset, snapshotRef }\n}\n"],"mappings":";;;AAAA,SACEA,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,UAAU,EACVC,QAAQ,QACH,OAAO;AACd,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,aAAa,MAAM,sBAAsB;AAChD,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,mBAAmB,QAAQ,0BAA0B;AAM9D,OAAOC,eAAe,MAAM,yBAAyB;AAErD,eAAe,SAASC,sBAAsBA,CAAA,EAItC;EAAA,IAJuC;IAC7CC;EAGF,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,MAAM,GAAGG,WAAW,CAAC,GAAGZ,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAClD,MAAM;IAAEa,eAAe;IAAEC;EAAQ,CAAC,GAAGhB,UAAU,CAACI,WAAW,CAAC;EAC5D,MAAMa,gBAAgB,GAAGjB,UAAU,CAACM,gBAAgB,CAAC;EACrD,MAAMY,SAAS,GAAGC,OAAO,CAACnB,UAAU,CAACK,aAAa,CAAC,CAAC;EACpD,MAAM,CAACe,qBAAqB,CAAC,GAAGjB,QAAQ,CAAC,MAAM;IAC7C,IAAIO,OAAO,IAAI,EAACO,gBAAgB,aAAhBA,gBAAgB,eAAhBA,gBAAgB,CAAEI,aAAa,GAAE;MAC/C,OAAOd,mBAAmB,CAAC,CAAC;IAC9B;EACF,CAAC,CAAC;EACF,MAAM;IAAEc,aAAa,GAAGD,qBAAqB;IAAEE;EAAgB,CAAC,GAC9DL,gBAAgB,IAAI,CAAC,CAAC;EACxB,MAAM;IAAEM,WAAW;IAAEC,SAAS;IAAEC,MAAM;IAAEC,OAAO;IAAEC;EAAQ,CAAC,GACxDN,aAAa,IAAI,CAAC,CAAC;EAErB,MAAMO,aAAa,GAAG7B,WAAW,CAC/B,YAAiB;IAAA,IAAhB8B,IAAI,GAAAlB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;IACVc,MAAM,CAACI,IAAI,IAAIrB,eAAe,CAACO,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEe,OAAO,CAAC,CAAC;IACzDhB,WAAW,CAAC,CAAC;EACf,CAAC,EACD,CAACC,eAAe,EAAEU,MAAM,CAC1B,CAAC;EAEDxB,SAAS,CAAC,MAAM;IACd,IAAIS,OAAO,IAAIc,SAAS,EAAE;MACxBA,SAAS,CAACM,OAAO,CAACC,IAAI,CAACH,aAAa,CAAC;MAIrCF,OAAO,CAAC;QAAEM,QAAQ,EAAEd;MAAU,CAAC,CAAC;IAClC;IAEA,OAAO,MAAMS,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAGC,aAAa,CAAC;EACvC,CAAC,EAAE,CAACD,OAAO,EAAEjB,OAAO,EAAEc,SAAS,EAAEN,SAAS,EAAEQ,OAAO,EAAEE,aAAa,CAAC,CAAC;EAEpE,MAAMK,WAAW,GAAGlC,WAAW,CAAC,MAAM;IACpCmC,MAAM,CAACC,qBAAqB,CAAC,MAAM;MACjC,IAAIZ,WAAW,EAAE;QACf,MAAMM,IAAI,GAAGrB,eAAe,CAACe,WAAW,CAACO,OAAO,CAAC;QACjDR,eAAe,CAACO,IAAI,CAAC;QACrBb,OAAO,CAACa,IAAI,CAAC;QACbD,aAAa,CAACC,IAAI,CAAC;MACrB;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,CAACb,OAAO,EAAEM,eAAe,EAAEC,WAAW,EAAEK,aAAa,CAAC,CAAC;EAE1D,OAAO;IAAEK,WAAW;IAAEV;EAAY,CAAC;AACrC","ignoreList":[]}
@@ -1,8 +1,9 @@
1
1
  import { ContextState } from '../../DataContext';
2
- export default function useHandleStatus({ outerContext, preventUncommittedChanges, error, }: {
2
+ export default function useHandleStatus({ outerContext, preventUncommittedChanges, error, name, }: {
3
3
  outerContext: ContextState;
4
4
  preventUncommittedChanges: boolean;
5
5
  error: Error;
6
+ name?: string;
6
7
  }): {
7
8
  hasContentChanged: boolean;
8
9
  showStatus: any;
@@ -8,12 +8,19 @@ export default function useHandleStatus(_ref) {
8
8
  let {
9
9
  outerContext,
10
10
  preventUncommittedChanges,
11
- error
11
+ error,
12
+ name
12
13
  } = _ref;
13
14
  const {
14
15
  hasContentChanged
15
- } = useHasContentChanged();
16
- useReportError(preventUncommittedChanges && hasContentChanged ? error : undefined, outerContext);
16
+ } = useHasContentChanged({
17
+ enabled: preventUncommittedChanges
18
+ });
19
+ let errorToReport = undefined;
20
+ if (preventUncommittedChanges && hasContentChanged) {
21
+ errorToReport = error;
22
+ }
23
+ useReportError(errorToReport, outerContext, name);
17
24
  const showStatus = useShowStatus({
18
25
  outerContext,
19
26
  hasContentChanged,
@@ -1 +1 @@
1
- {"version":3,"file":"useHandleStatus.js","names":["useEffect","useRef","useState","useHasContentChanged","useReportError","useHandleStatus","_ref","outerContext","preventUncommittedChanges","error","hasContentChanged","undefined","showStatus","useShowStatus","_ref2","showAllErrors","setShowStatus","showRef","current"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useHandleStatus.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { ContextState } from '../../DataContext'\nimport useHasContentChanged from './useHasContentChanged'\nimport useReportError from './useReportError'\n\nexport default function useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error,\n}: {\n outerContext: ContextState\n preventUncommittedChanges: boolean\n error: Error\n}) {\n const { hasContentChanged } = useHasContentChanged()\n\n useReportError(\n preventUncommittedChanges && hasContentChanged ? error : undefined,\n outerContext\n )\n\n const showStatus = useShowStatus({\n outerContext,\n hasContentChanged,\n preventUncommittedChanges,\n })\n\n return { hasContentChanged, showStatus }\n}\n\n// This hook/state is used to not show the status right away, after the user has cleared the PushContainer data.\nfunction useShowStatus({\n outerContext,\n hasContentChanged,\n preventUncommittedChanges,\n}) {\n const showAllErrors = outerContext?.showAllErrors\n const [showStatus, setShowStatus] = useState(showAllErrors)\n const showRef = useRef(showAllErrors)\n\n useEffect(() => {\n if (!preventUncommittedChanges) {\n return // stop here\n }\n\n if (!hasContentChanged) {\n setShowStatus(false)\n } else {\n if (showRef.current !== showAllErrors) {\n setShowStatus(showAllErrors)\n }\n }\n showRef.current = showAllErrors\n }, [hasContentChanged, preventUncommittedChanges, showAllErrors])\n\n return showStatus\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAEnD,OAAOC,oBAAoB,MAAM,wBAAwB;AACzD,OAAOC,cAAc,MAAM,kBAAkB;AAE7C,eAAe,SAASC,eAAeA,CAAAC,IAAA,EAQpC;EAAA,IARqC;IACtCC,YAAY;IACZC,yBAAyB;IACzBC;EAKF,CAAC,GAAAH,IAAA;EACC,MAAM;IAAEI;EAAkB,CAAC,GAAGP,oBAAoB,CAAC,CAAC;EAEpDC,cAAc,CACZI,yBAAyB,IAAIE,iBAAiB,GAAGD,KAAK,GAAGE,SAAS,EAClEJ,YACF,CAAC;EAED,MAAMK,UAAU,GAAGC,aAAa,CAAC;IAC/BN,YAAY;IACZG,iBAAiB;IACjBF;EACF,CAAC,CAAC;EAEF,OAAO;IAAEE,iBAAiB;IAAEE;EAAW,CAAC;AAC1C;AAGA,SAASC,aAAaA,CAAAC,KAAA,EAInB;EAAA,IAJoB;IACrBP,YAAY;IACZG,iBAAiB;IACjBF;EACF,CAAC,GAAAM,KAAA;EACC,MAAMC,aAAa,GAAGR,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEQ,aAAa;EACjD,MAAM,CAACH,UAAU,EAAEI,aAAa,CAAC,GAAGd,QAAQ,CAACa,aAAa,CAAC;EAC3D,MAAME,OAAO,GAAGhB,MAAM,CAACc,aAAa,CAAC;EAErCf,SAAS,CAAC,MAAM;IACd,IAAI,CAACQ,yBAAyB,EAAE;MAC9B;IACF;IAEA,IAAI,CAACE,iBAAiB,EAAE;MACtBM,aAAa,CAAC,KAAK,CAAC;IACtB,CAAC,MAAM;MACL,IAAIC,OAAO,CAACC,OAAO,KAAKH,aAAa,EAAE;QACrCC,aAAa,CAACD,aAAa,CAAC;MAC9B;IACF;IACAE,OAAO,CAACC,OAAO,GAAGH,aAAa;EACjC,CAAC,EAAE,CAACL,iBAAiB,EAAEF,yBAAyB,EAAEO,aAAa,CAAC,CAAC;EAEjE,OAAOH,UAAU;AACnB","ignoreList":[]}
1
+ {"version":3,"file":"useHandleStatus.js","names":["useEffect","useRef","useState","useHasContentChanged","useReportError","useHandleStatus","_ref","outerContext","preventUncommittedChanges","error","name","hasContentChanged","enabled","errorToReport","undefined","showStatus","useShowStatus","_ref2","showAllErrors","setShowStatus","showRef","current"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useHandleStatus.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport { ContextState } from '../../DataContext'\nimport useHasContentChanged from './useHasContentChanged'\nimport useReportError from './useReportError'\n\nexport default function useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error,\n name,\n}: {\n outerContext: ContextState\n preventUncommittedChanges: boolean\n error: Error\n name?: string\n}) {\n const { hasContentChanged } = useHasContentChanged({\n enabled: preventUncommittedChanges,\n })\n\n let errorToReport = undefined\n if (preventUncommittedChanges && hasContentChanged) {\n errorToReport = error\n }\n useReportError(errorToReport, outerContext, name)\n\n const showStatus = useShowStatus({\n outerContext,\n hasContentChanged,\n preventUncommittedChanges,\n })\n\n return { hasContentChanged, showStatus }\n}\n\n// This hook/state is used to not show the status right away, after the user has cleared the PushContainer data.\nfunction useShowStatus({\n outerContext,\n hasContentChanged,\n preventUncommittedChanges,\n}) {\n const showAllErrors = outerContext?.showAllErrors\n const [showStatus, setShowStatus] = useState(showAllErrors)\n const showRef = useRef(showAllErrors)\n\n useEffect(() => {\n if (!preventUncommittedChanges) {\n return // stop here\n }\n\n if (!hasContentChanged) {\n setShowStatus(false)\n } else {\n if (showRef.current !== showAllErrors) {\n setShowStatus(showAllErrors)\n }\n }\n showRef.current = showAllErrors\n }, [hasContentChanged, preventUncommittedChanges, showAllErrors])\n\n return showStatus\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAEnD,OAAOC,oBAAoB,MAAM,wBAAwB;AACzD,OAAOC,cAAc,MAAM,kBAAkB;AAE7C,eAAe,SAASC,eAAeA,CAAAC,IAAA,EAUpC;EAAA,IAVqC;IACtCC,YAAY;IACZC,yBAAyB;IACzBC,KAAK;IACLC;EAMF,CAAC,GAAAJ,IAAA;EACC,MAAM;IAAEK;EAAkB,CAAC,GAAGR,oBAAoB,CAAC;IACjDS,OAAO,EAAEJ;EACX,CAAC,CAAC;EAEF,IAAIK,aAAa,GAAGC,SAAS;EAC7B,IAAIN,yBAAyB,IAAIG,iBAAiB,EAAE;IAClDE,aAAa,GAAGJ,KAAK;EACvB;EACAL,cAAc,CAACS,aAAa,EAAEN,YAAY,EAAEG,IAAI,CAAC;EAEjD,MAAMK,UAAU,GAAGC,aAAa,CAAC;IAC/BT,YAAY;IACZI,iBAAiB;IACjBH;EACF,CAAC,CAAC;EAEF,OAAO;IAAEG,iBAAiB;IAAEI;EAAW,CAAC;AAC1C;AAGA,SAASC,aAAaA,CAAAC,KAAA,EAInB;EAAA,IAJoB;IACrBV,YAAY;IACZI,iBAAiB;IACjBH;EACF,CAAC,GAAAS,KAAA;EACC,MAAMC,aAAa,GAAGX,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEW,aAAa;EACjD,MAAM,CAACH,UAAU,EAAEI,aAAa,CAAC,GAAGjB,QAAQ,CAACgB,aAAa,CAAC;EAC3D,MAAME,OAAO,GAAGnB,MAAM,CAACiB,aAAa,CAAC;EAErClB,SAAS,CAAC,MAAM;IACd,IAAI,CAACQ,yBAAyB,EAAE;MAC9B;IACF;IAEA,IAAI,CAACG,iBAAiB,EAAE;MACtBQ,aAAa,CAAC,KAAK,CAAC;IACtB,CAAC,MAAM;MACL,IAAIC,OAAO,CAACC,OAAO,KAAKH,aAAa,EAAE;QACrCC,aAAa,CAACD,aAAa,CAAC;MAC9B;IACF;IACAE,OAAO,CAACC,OAAO,GAAGH,aAAa;EACjC,CAAC,EAAE,CAACP,iBAAiB,EAAEH,yBAAyB,EAAEU,aAAa,CAAC,CAAC;EAEjE,OAAOH,UAAU;AACnB","ignoreList":[]}
@@ -1,3 +1,5 @@
1
- export default function useHasContentChanged(): {
1
+ export default function useHasContentChanged({ enabled, }?: {
2
+ enabled?: boolean;
3
+ }): {
2
4
  hasContentChanged: boolean;
3
5
  };
@@ -5,13 +5,16 @@ import pointer from '../../utils/json-pointer';
5
5
  import DataContext from '../../DataContext/Context';
6
6
  import useDataContextSnapshot from './useDataContextSnapshot';
7
7
  export default function useHasContentChanged() {
8
+ let {
9
+ enabled = false
10
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8
11
  const {
9
12
  internalDataRef
10
13
  } = useContext(DataContext);
11
14
  const {
12
15
  snapshotRef
13
16
  } = useDataContextSnapshot({
14
- enabled: true
17
+ enabled
15
18
  });
16
19
  const data = internalDataRef === null || internalDataRef === void 0 ? void 0 : internalDataRef.current;
17
20
  const snapshot = snapshotRef === null || snapshotRef === void 0 ? void 0 : snapshotRef.current;
@@ -1 +1 @@
1
- {"version":3,"file":"useHasContentChanged.js","names":["useContext","useMemo","pointer","DataContext","useDataContextSnapshot","useHasContentChanged","internalDataRef","snapshotRef","enabled","data","current","snapshot","hasContentChanged","undefined","hasChanged","walk","value","path","exists","has","get"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useHasContentChanged.ts"],"sourcesContent":["import { useContext, useMemo } from 'react'\nimport pointer from '../../utils/json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport useDataContextSnapshot from './useDataContextSnapshot'\n\nexport default function useHasContentChanged() {\n const { internalDataRef } = useContext(DataContext)\n const { snapshotRef } = useDataContextSnapshot({ enabled: true })\n\n const data = internalDataRef?.current\n const snapshot = snapshotRef?.current // To support a custom data reference, we need to have a snapshot in the hook deps.\n const hasContentChanged = useMemo(() => {\n if (!data || !snapshot) {\n return undefined\n }\n\n let hasChanged = false\n\n pointer.walk(data, (value, path) => {\n const exists = pointer.has(snapshot, path)\n if (!exists || (exists && pointer.get(snapshot, path) !== value)) {\n hasChanged = true\n return false\n }\n })\n\n return hasChanged\n }, [data, snapshot])\n\n return { hasContentChanged }\n}\n"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC3C,OAAOC,OAAO,MAAM,0BAA0B;AAC9C,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,sBAAsB,MAAM,0BAA0B;AAE7D,eAAe,SAASC,oBAAoBA,CAAA,EAAG;EAC7C,MAAM;IAAEC;EAAgB,CAAC,GAAGN,UAAU,CAACG,WAAW,CAAC;EACnD,MAAM;IAAEI;EAAY,CAAC,GAAGH,sBAAsB,CAAC;IAAEI,OAAO,EAAE;EAAK,CAAC,CAAC;EAEjE,MAAMC,IAAI,GAAGH,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEI,OAAO;EACrC,MAAMC,QAAQ,GAAGJ,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEG,OAAO;EACrC,MAAME,iBAAiB,GAAGX,OAAO,CAAC,MAAM;IACtC,IAAI,CAACQ,IAAI,IAAI,CAACE,QAAQ,EAAE;MACtB,OAAOE,SAAS;IAClB;IAEA,IAAIC,UAAU,GAAG,KAAK;IAEtBZ,OAAO,CAACa,IAAI,CAACN,IAAI,EAAE,CAACO,KAAK,EAAEC,IAAI,KAAK;MAClC,MAAMC,MAAM,GAAGhB,OAAO,CAACiB,GAAG,CAACR,QAAQ,EAAEM,IAAI,CAAC;MAC1C,IAAI,CAACC,MAAM,IAAKA,MAAM,IAAIhB,OAAO,CAACkB,GAAG,CAACT,QAAQ,EAAEM,IAAI,CAAC,KAAKD,KAAM,EAAE;QAChEF,UAAU,GAAG,IAAI;QACjB,OAAO,KAAK;MACd;IACF,CAAC,CAAC;IAEF,OAAOA,UAAU;EACnB,CAAC,EAAE,CAACL,IAAI,EAAEE,QAAQ,CAAC,CAAC;EAEpB,OAAO;IAAEC;EAAkB,CAAC;AAC9B","ignoreList":[]}
1
+ {"version":3,"file":"useHasContentChanged.js","names":["useContext","useMemo","pointer","DataContext","useDataContextSnapshot","useHasContentChanged","enabled","arguments","length","undefined","internalDataRef","snapshotRef","data","current","snapshot","hasContentChanged","hasChanged","walk","value","path","exists","has","get"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useHasContentChanged.ts"],"sourcesContent":["import { useContext, useMemo } from 'react'\nimport pointer from '../../utils/json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport useDataContextSnapshot from './useDataContextSnapshot'\n\nexport default function useHasContentChanged({\n enabled = false,\n}: {\n enabled?: boolean\n} = {}) {\n const { internalDataRef } = useContext(DataContext)\n const { snapshotRef } = useDataContextSnapshot({ enabled })\n\n const data = internalDataRef?.current\n const snapshot = snapshotRef?.current // To support a custom data reference, we need to have a snapshot in the hook deps.\n\n const hasContentChanged = useMemo(() => {\n if (!data || !snapshot) {\n return undefined\n }\n\n let hasChanged = false\n\n pointer.walk(data, (value, path) => {\n const exists = pointer.has(snapshot, path)\n if (!exists || (exists && pointer.get(snapshot, path) !== value)) {\n hasChanged = true\n return false\n }\n })\n\n return hasChanged\n }, [data, snapshot])\n\n return { hasContentChanged }\n}\n"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC3C,OAAOC,OAAO,MAAM,0BAA0B;AAC9C,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,sBAAsB,MAAM,0BAA0B;AAE7D,eAAe,SAASC,oBAAoBA,CAAA,EAIpC;EAAA,IAJqC;IAC3CC,OAAO,GAAG;EAGZ,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,MAAM;IAAEG;EAAgB,CAAC,GAAGV,UAAU,CAACG,WAAW,CAAC;EACnD,MAAM;IAAEQ;EAAY,CAAC,GAAGP,sBAAsB,CAAC;IAAEE;EAAQ,CAAC,CAAC;EAE3D,MAAMM,IAAI,GAAGF,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEG,OAAO;EACrC,MAAMC,QAAQ,GAAGH,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEE,OAAO;EAErC,MAAME,iBAAiB,GAAGd,OAAO,CAAC,MAAM;IACtC,IAAI,CAACW,IAAI,IAAI,CAACE,QAAQ,EAAE;MACtB,OAAOL,SAAS;IAClB;IAEA,IAAIO,UAAU,GAAG,KAAK;IAEtBd,OAAO,CAACe,IAAI,CAACL,IAAI,EAAE,CAACM,KAAK,EAAEC,IAAI,KAAK;MAClC,MAAMC,MAAM,GAAGlB,OAAO,CAACmB,GAAG,CAACP,QAAQ,EAAEK,IAAI,CAAC;MAC1C,IAAI,CAACC,MAAM,IAAKA,MAAM,IAAIlB,OAAO,CAACoB,GAAG,CAACR,QAAQ,EAAEK,IAAI,CAAC,KAAKD,KAAM,EAAE;QAChEF,UAAU,GAAG,IAAI;QACjB,OAAO,KAAK;MACd;IACF,CAAC,CAAC;IAEF,OAAOA,UAAU;EACnB,CAAC,EAAE,CAACJ,IAAI,EAAEE,QAAQ,CAAC,CAAC;EAEpB,OAAO;IAAEC;EAAkB,CAAC;AAC9B","ignoreList":[]}
@@ -1,2 +1,2 @@
1
1
  import { ContextState } from '../../DataContext';
2
- export default function useReportError(error: Error, customDataContext?: ContextState): void;
2
+ export default function useReportError(error: Error, customDataContext?: ContextState, name?: string): void;
@@ -5,13 +5,20 @@ import useId from '../../../../shared/helpers/useId';
5
5
  import DataContext from '../../DataContext/Context';
6
6
  import WizardStepContext from '../../Wizard/Step/StepContext';
7
7
  import WizardContext from '../../Wizard/Context';
8
- export default function useReportError(error, customDataContext) {
8
+ import VisibilityContext from '../Visibility/VisibilityContext';
9
+ import { usePath } from '../../hooks';
10
+ export default function useReportError(error, customDataContext, name) {
11
+ const {
12
+ joinPath
13
+ } = usePath();
9
14
  const dataContext = useContext(DataContext);
10
15
  const wizardContext = useContext(WizardContext);
11
16
  const wizardStepContext = useContext(WizardStepContext);
17
+ const visibilityContext = useContext(VisibilityContext);
12
18
  const {
13
19
  setFieldError: setFieldErrorDataContext,
14
- setMountedFieldState
20
+ setMountedFieldState,
21
+ prerenderFieldProps
15
22
  } = customDataContext || dataContext;
16
23
  const {
17
24
  setFieldError: setFieldErrorWizard
@@ -19,16 +26,24 @@ export default function useReportError(error, customDataContext) {
19
26
  const {
20
27
  index: wizardIndex
21
28
  } = wizardStepContext || {};
29
+ const {
30
+ isVisible
31
+ } = visibilityContext || {};
32
+ const handleFieldAsVisible = isVisible;
22
33
  const id = useId();
23
34
  useEffect(() => {
24
- const path = `/${id}`;
25
- if (error) {
35
+ if (prerenderFieldProps) {
36
+ return;
37
+ }
38
+ const path = joinPath(['internal', name, id]);
39
+ const currentError = handleFieldAsVisible !== false ? error : undefined;
40
+ if (currentError) {
26
41
  setMountedFieldState === null || setMountedFieldState === void 0 ? void 0 : setMountedFieldState(path, {
27
42
  isMounted: true
28
43
  });
29
44
  }
30
- setFieldErrorWizard === null || setFieldErrorWizard === void 0 ? void 0 : setFieldErrorWizard(wizardIndex, path, error ? true : undefined);
31
- setFieldErrorDataContext === null || setFieldErrorDataContext === void 0 ? void 0 : setFieldErrorDataContext(path, error);
45
+ setFieldErrorWizard === null || setFieldErrorWizard === void 0 ? void 0 : setFieldErrorWizard(wizardIndex, path, currentError ? true : undefined);
46
+ setFieldErrorDataContext === null || setFieldErrorDataContext === void 0 ? void 0 : setFieldErrorDataContext(path, currentError);
32
47
  return () => {
33
48
  setMountedFieldState === null || setMountedFieldState === void 0 ? void 0 : setMountedFieldState(path, {
34
49
  isMounted: false
@@ -36,6 +51,6 @@ export default function useReportError(error, customDataContext) {
36
51
  setFieldErrorWizard === null || setFieldErrorWizard === void 0 ? void 0 : setFieldErrorWizard(wizardIndex, path, undefined);
37
52
  setFieldErrorDataContext === null || setFieldErrorDataContext === void 0 ? void 0 : setFieldErrorDataContext(path, undefined);
38
53
  };
39
- }, [error, id, setFieldErrorDataContext, setFieldErrorWizard, setMountedFieldState, wizardIndex]);
54
+ }, [error, handleFieldAsVisible, id, joinPath, name, prerenderFieldProps, setFieldErrorDataContext, setFieldErrorWizard, setMountedFieldState, wizardIndex]);
40
55
  }
41
56
  //# sourceMappingURL=useReportError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useReportError.js","names":["useContext","useEffect","useId","DataContext","WizardStepContext","WizardContext","useReportError","error","customDataContext","dataContext","wizardContext","wizardStepContext","setFieldError","setFieldErrorDataContext","setMountedFieldState","setFieldErrorWizard","index","wizardIndex","id","path","isMounted","undefined"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useReportError.ts"],"sourcesContent":["import { useContext, useEffect } from 'react'\nimport useId from '../../../../shared/helpers/useId'\nimport { ContextState } from '../../DataContext'\nimport DataContext from '../../DataContext/Context'\nimport WizardStepContext from '../../Wizard/Step/StepContext'\nimport WizardContext from '../../Wizard/Context'\n\nexport default function useReportError(\n error: Error,\n customDataContext?: ContextState\n) {\n const dataContext = useContext(DataContext)\n const wizardContext = useContext(WizardContext)\n const wizardStepContext = useContext(WizardStepContext)\n\n const { setFieldError: setFieldErrorDataContext, setMountedFieldState } =\n customDataContext || dataContext\n const { setFieldError: setFieldErrorWizard } = wizardContext || {}\n const { index: wizardIndex } = wizardStepContext || {}\n\n const id = useId()\n useEffect(() => {\n const path = `/${id}`\n\n if (error) {\n setMountedFieldState?.(path, {\n isMounted: true,\n })\n }\n\n setFieldErrorWizard?.(wizardIndex, path, error ? true : undefined)\n setFieldErrorDataContext?.(path, error)\n\n // Unmount procedure\n return () => {\n setMountedFieldState?.(path, {\n isMounted: false,\n })\n\n setFieldErrorWizard?.(wizardIndex, path, undefined)\n setFieldErrorDataContext?.(path, undefined)\n }\n }, [\n error,\n id,\n setFieldErrorDataContext,\n setFieldErrorWizard,\n setMountedFieldState,\n wizardIndex,\n ])\n}\n"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,SAAS,QAAQ,OAAO;AAC7C,OAAOC,KAAK,MAAM,kCAAkC;AAEpD,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,iBAAiB,MAAM,+BAA+B;AAC7D,OAAOC,aAAa,MAAM,sBAAsB;AAEhD,eAAe,SAASC,cAAcA,CACpCC,KAAY,EACZC,iBAAgC,EAChC;EACA,MAAMC,WAAW,GAAGT,UAAU,CAACG,WAAW,CAAC;EAC3C,MAAMO,aAAa,GAAGV,UAAU,CAACK,aAAa,CAAC;EAC/C,MAAMM,iBAAiB,GAAGX,UAAU,CAACI,iBAAiB,CAAC;EAEvD,MAAM;IAAEQ,aAAa,EAAEC,wBAAwB;IAAEC;EAAqB,CAAC,GACrEN,iBAAiB,IAAIC,WAAW;EAClC,MAAM;IAAEG,aAAa,EAAEG;EAAoB,CAAC,GAAGL,aAAa,IAAI,CAAC,CAAC;EAClE,MAAM;IAAEM,KAAK,EAAEC;EAAY,CAAC,GAAGN,iBAAiB,IAAI,CAAC,CAAC;EAEtD,MAAMO,EAAE,GAAGhB,KAAK,CAAC,CAAC;EAClBD,SAAS,CAAC,MAAM;IACd,MAAMkB,IAAI,GAAG,IAAID,EAAE,EAAE;IAErB,IAAIX,KAAK,EAAE;MACTO,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAGK,IAAI,EAAE;QAC3BC,SAAS,EAAE;MACb,CAAC,CAAC;IACJ;IAEAL,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CAAGE,WAAW,EAAEE,IAAI,EAAEZ,KAAK,GAAG,IAAI,GAAGc,SAAS,CAAC;IAClER,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGM,IAAI,EAAEZ,KAAK,CAAC;IAGvC,OAAO,MAAM;MACXO,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAGK,IAAI,EAAE;QAC3BC,SAAS,EAAE;MACb,CAAC,CAAC;MAEFL,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CAAGE,WAAW,EAAEE,IAAI,EAAEE,SAAS,CAAC;MACnDR,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGM,IAAI,EAAEE,SAAS,CAAC;IAC7C,CAAC;EACH,CAAC,EAAE,CACDd,KAAK,EACLW,EAAE,EACFL,wBAAwB,EACxBE,mBAAmB,EACnBD,oBAAoB,EACpBG,WAAW,CACZ,CAAC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"useReportError.js","names":["useContext","useEffect","useId","DataContext","WizardStepContext","WizardContext","VisibilityContext","usePath","useReportError","error","customDataContext","name","joinPath","dataContext","wizardContext","wizardStepContext","visibilityContext","setFieldError","setFieldErrorDataContext","setMountedFieldState","prerenderFieldProps","setFieldErrorWizard","index","wizardIndex","isVisible","handleFieldAsVisible","id","path","currentError","undefined","isMounted"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useReportError.ts"],"sourcesContent":["import { useContext, useEffect } from 'react'\nimport useId from '../../../../shared/helpers/useId'\nimport { ContextState } from '../../DataContext'\nimport DataContext from '../../DataContext/Context'\nimport WizardStepContext from '../../Wizard/Step/StepContext'\nimport WizardContext from '../../Wizard/Context'\nimport VisibilityContext from '../Visibility/VisibilityContext'\nimport { usePath } from '../../hooks'\n\nexport default function useReportError(\n error: Error,\n customDataContext?: ContextState,\n name?: string\n) {\n const { joinPath } = usePath()\n const dataContext = useContext(DataContext)\n const wizardContext = useContext(WizardContext)\n const wizardStepContext = useContext(WizardStepContext)\n const visibilityContext = useContext(VisibilityContext)\n\n const {\n setFieldError: setFieldErrorDataContext,\n setMountedFieldState,\n prerenderFieldProps,\n } = customDataContext || dataContext\n const { setFieldError: setFieldErrorWizard } = wizardContext || {}\n const { index: wizardIndex } = wizardStepContext || {}\n const { isVisible } = visibilityContext || {}\n const handleFieldAsVisible = isVisible\n\n const id = useId()\n useEffect(() => {\n if (prerenderFieldProps) {\n return // stop here\n }\n\n const path = joinPath(['internal', name, id])\n const currentError = handleFieldAsVisible !== false ? error : undefined\n\n if (currentError) {\n setMountedFieldState?.(path, {\n isMounted: true,\n })\n }\n\n setFieldErrorWizard?.(\n wizardIndex,\n path,\n currentError ? true : undefined\n )\n\n setFieldErrorDataContext?.(path, currentError)\n\n // Unmount procedure\n return () => {\n setMountedFieldState?.(path, {\n isMounted: false,\n })\n\n setFieldErrorWizard?.(wizardIndex, path, undefined)\n setFieldErrorDataContext?.(path, undefined)\n }\n }, [\n error,\n handleFieldAsVisible,\n id,\n joinPath,\n name,\n prerenderFieldProps,\n setFieldErrorDataContext,\n setFieldErrorWizard,\n setMountedFieldState,\n wizardIndex,\n ])\n}\n"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,SAAS,QAAQ,OAAO;AAC7C,OAAOC,KAAK,MAAM,kCAAkC;AAEpD,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,iBAAiB,MAAM,+BAA+B;AAC7D,OAAOC,aAAa,MAAM,sBAAsB;AAChD,OAAOC,iBAAiB,MAAM,iCAAiC;AAC/D,SAASC,OAAO,QAAQ,aAAa;AAErC,eAAe,SAASC,cAAcA,CACpCC,KAAY,EACZC,iBAAgC,EAChCC,IAAa,EACb;EACA,MAAM;IAAEC;EAAS,CAAC,GAAGL,OAAO,CAAC,CAAC;EAC9B,MAAMM,WAAW,GAAGb,UAAU,CAACG,WAAW,CAAC;EAC3C,MAAMW,aAAa,GAAGd,UAAU,CAACK,aAAa,CAAC;EAC/C,MAAMU,iBAAiB,GAAGf,UAAU,CAACI,iBAAiB,CAAC;EACvD,MAAMY,iBAAiB,GAAGhB,UAAU,CAACM,iBAAiB,CAAC;EAEvD,MAAM;IACJW,aAAa,EAAEC,wBAAwB;IACvCC,oBAAoB;IACpBC;EACF,CAAC,GAAGV,iBAAiB,IAAIG,WAAW;EACpC,MAAM;IAAEI,aAAa,EAAEI;EAAoB,CAAC,GAAGP,aAAa,IAAI,CAAC,CAAC;EAClE,MAAM;IAAEQ,KAAK,EAAEC;EAAY,CAAC,GAAGR,iBAAiB,IAAI,CAAC,CAAC;EACtD,MAAM;IAAES;EAAU,CAAC,GAAGR,iBAAiB,IAAI,CAAC,CAAC;EAC7C,MAAMS,oBAAoB,GAAGD,SAAS;EAEtC,MAAME,EAAE,GAAGxB,KAAK,CAAC,CAAC;EAClBD,SAAS,CAAC,MAAM;IACd,IAAImB,mBAAmB,EAAE;MACvB;IACF;IAEA,MAAMO,IAAI,GAAGf,QAAQ,CAAC,CAAC,UAAU,EAAED,IAAI,EAAEe,EAAE,CAAC,CAAC;IAC7C,MAAME,YAAY,GAAGH,oBAAoB,KAAK,KAAK,GAAGhB,KAAK,GAAGoB,SAAS;IAEvE,IAAID,YAAY,EAAE;MAChBT,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAGQ,IAAI,EAAE;QAC3BG,SAAS,EAAE;MACb,CAAC,CAAC;IACJ;IAEAT,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CACjBE,WAAW,EACXI,IAAI,EACJC,YAAY,GAAG,IAAI,GAAGC,SACxB,CAAC;IAEDX,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGS,IAAI,EAAEC,YAAY,CAAC;IAG9C,OAAO,MAAM;MACXT,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAGQ,IAAI,EAAE;QAC3BG,SAAS,EAAE;MACb,CAAC,CAAC;MAEFT,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CAAGE,WAAW,EAAEI,IAAI,EAAEE,SAAS,CAAC;MACnDX,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGS,IAAI,EAAEE,SAAS,CAAC;IAC7C,CAAC;EACH,CAAC,EAAE,CACDpB,KAAK,EACLgB,oBAAoB,EACpBC,EAAE,EACFd,QAAQ,EACRD,IAAI,EACJS,mBAAmB,EACnBF,wBAAwB,EACxBG,mBAAmB,EACnBF,oBAAoB,EACpBI,WAAW,CACZ,CAAC;AACJ","ignoreList":[]}
@@ -6,6 +6,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
6
6
  import "core-js/modules/web.dom-collections.iterator.js";
7
7
  import React, { useCallback, useContext, useMemo, useReducer, useRef } from 'react';
8
8
  import DataContext from '../../DataContext/Context';
9
+ import useEventListener from '../../DataContext/Provider/useEventListener';
9
10
  import SharedProvider from '../../../../shared/Provider';
10
11
  import { HeightAnimation } from '../../../../components';
11
12
  import { removeUndefinedProps } from '../../../../shared/component-helper';
@@ -20,7 +21,6 @@ function SubmitConfirmation(props) {
20
21
  } = props;
21
22
  const {
22
23
  setFormState,
23
- setFieldEventListener,
24
24
  handleSubmit: handleFinalSubmit,
25
25
  submitState,
26
26
  formElementRef,
@@ -121,16 +121,16 @@ function SubmitConfirmation(props) {
121
121
  preventSubmit();
122
122
  await setConfirmationState('readyToBeSubmitted');
123
123
  }, [setConfirmationState, validatePreventSubmit]);
124
- setFieldEventListener === null || setFieldEventListener === void 0 ? void 0 : setFieldEventListener(undefined, 'onSubmit', handleSubmit);
124
+ const {
125
+ removeEvent
126
+ } = useEventListener('onSubmit', handleSubmit);
125
127
  const submitHandler = useCallback(async () => {
126
- setFieldEventListener === null || setFieldEventListener === void 0 ? void 0 : setFieldEventListener(undefined, 'onSubmit', handleSubmit, {
127
- remove: true
128
- });
128
+ removeEvent();
129
129
  await setConfirmationState('submitInProgress');
130
130
  await handleFinalSubmit();
131
131
  await setConfirmationState('submissionComplete');
132
132
  setFocusOnButton();
133
- }, [handleFinalSubmit, handleSubmit, setFocusOnButton, setFieldEventListener, setConfirmationState]);
133
+ }, [removeEvent, setConfirmationState, handleFinalSubmit, setFocusOnButton]);
134
134
  const sharedProviderParams = {
135
135
  formElement: {
136
136
  disabled: false
@@ -1 +1 @@
1
- {"version":3,"file":"SubmitConfirmation.js","names":["React","useCallback","useContext","useMemo","useReducer","useRef","DataContext","SharedProvider","HeightAnimation","removeUndefinedProps","SubmitConfirmation","props","forceUpdate","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","setFieldEventListener","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","confirmationStateRef","submitStateRef","preventSubmitRef","undefined","validatePreventSubmit","current","getParamsRef","setConfirmationState","state","window","requestAnimationFrame","keepPending","confirmationState","connectWithDialog","openState","onConfirm","submitHandler","onDecline","cancelHandler","onClose","_ref","triggeredBy","data","Object","keys","length","_objectSpread","setFocusOnButton","form","element","querySelector","focus","e","_ref2","preventSubmit","remove","sharedProviderParams","formElement","disabled","createElement","Fragment","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport DataContext from '../../DataContext/Context'\nimport SharedProvider from '../../../../shared/Provider'\nimport { ContextProps } from '../../../../shared/Context'\nimport { HeightAnimation } from '../../../../components'\nimport {\n DialogContentProps,\n DialogProps,\n} from '../../../../components/dialog/types'\nimport { EventStateObject } from '../../types'\nimport { removeUndefinedProps } from '../../../../shared/component-helper'\n\nexport type ConfirmationState =\n | 'idle'\n | 'readyToBeSubmitted'\n | 'submitInProgress'\n | 'submissionComplete'\n\nexport type ConfirmParams = {\n data: unknown\n confirmationState: ConfirmationState\n submitState: EventStateObject | undefined\n connectWithDialog: Pick<\n DialogProps & DialogContentProps,\n 'openState' | 'onConfirm' | 'onDecline' | 'onClose'\n >\n setConfirmationState: (state: ConfirmationState) => void\n submitHandler: () => void | Promise<void>\n cancelHandler: () => void | Promise<void>\n}\n\nexport type ConfirmProps = {\n preventSubmitWhen?: (params: ConfirmParams) => boolean\n onStateChange?: (params: ConfirmParams) => void | Promise<void>\n onSubmitResult?: (params: ConfirmParams) => void\n renderWithState?: (params: ConfirmParams) => React.ReactNode\n children?: React.ReactNode\n}\n\nfunction SubmitConfirmation(props: ConfirmProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n const {\n preventSubmitWhen,\n onStateChange,\n onSubmitResult,\n renderWithState,\n children,\n } = props\n\n const {\n setFormState,\n setFieldEventListener,\n handleSubmit: handleFinalSubmit,\n submitState,\n formElementRef,\n internalDataRef,\n } = useContext(DataContext)\n\n const confirmationStateRef = useRef<ConfirmationState>('idle')\n const submitStateRef = useRef<EventStateObject>()\n const preventSubmitRef = useRef<boolean>(undefined)\n\n const validatePreventSubmit = useCallback(() => {\n return (preventSubmitRef.current = preventSubmitWhen?.(\n getParamsRef.current()\n ))\n }, [preventSubmitWhen])\n\n const setConfirmationState = useCallback(\n async (state: ConfirmationState) => {\n confirmationStateRef.current = state\n await onStateChange?.(getParamsRef.current())\n if (typeof window !== 'undefined') {\n window.requestAnimationFrame(() => {\n switch (state) {\n case 'idle':\n setFormState('complete', { keepPending: false })\n break\n case 'readyToBeSubmitted':\n setFormState('pending', { keepPending: true })\n break\n case 'submitInProgress':\n setFormState('pending', { keepPending: true })\n break\n case 'submissionComplete':\n setFormState('complete', { keepPending: false })\n break\n default:\n forceUpdate()\n }\n })\n }\n },\n [onStateChange, setFormState]\n )\n\n const getParamsRef = useRef(() => {\n const confirmationState = confirmationStateRef.current\n\n const connectWithDialog = {\n openState: confirmationState === 'readyToBeSubmitted',\n onConfirm: submitHandler,\n onDecline: cancelHandler,\n onClose: ({ triggeredBy }) => {\n if (triggeredBy === 'keyboard') {\n cancelHandler()\n }\n },\n }\n\n return {\n data: internalDataRef?.current,\n confirmationState,\n setConfirmationState,\n submitHandler,\n cancelHandler,\n connectWithDialog,\n submitState: submitStateRef.current,\n } satisfies ConfirmParams\n })\n\n useMemo(() => {\n if (Object.keys(removeUndefinedProps(submitState) || {}).length > 0) {\n submitStateRef.current = {\n ...submitState,\n } as EventStateObject\n onSubmitResult?.(getParamsRef.current())\n }\n }, [submitState, onSubmitResult])\n\n const setFocusOnButton = useCallback(() => {\n try {\n const form = formElementRef.current\n const element = (form.querySelector('.dnb-forms-submit-button') ||\n form) as HTMLElement\n element.focus()\n } catch (e) {\n //\n }\n }, [formElementRef])\n\n const cancelHandler = useCallback(async () => {\n await setConfirmationState('idle')\n setFocusOnButton()\n }, [setFocusOnButton, setConfirmationState])\n\n const handleSubmit = useCallback(\n async ({ preventSubmit }) => {\n if (confirmationStateRef.current === 'submitInProgress') {\n return // stop here\n }\n\n if (validatePreventSubmit() !== true) {\n await setConfirmationState('submitInProgress')\n return // stop here\n }\n\n submitStateRef.current = undefined\n\n // Prevent the form form from being submitted\n preventSubmit()\n\n await setConfirmationState('readyToBeSubmitted')\n },\n [setConfirmationState, validatePreventSubmit]\n )\n setFieldEventListener?.(undefined, 'onSubmit', handleSubmit)\n\n const submitHandler = useCallback(async () => {\n setFieldEventListener?.(undefined, 'onSubmit', handleSubmit, {\n remove: true,\n })\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n handleFinalSubmit,\n handleSubmit,\n setFocusOnButton,\n setFieldEventListener,\n setConfirmationState,\n ])\n\n const sharedProviderParams: ContextProps = {\n formElement: {\n disabled: false,\n },\n }\n\n return (\n <>\n {children}\n\n <SharedProvider {...sharedProviderParams}>\n <HeightAnimation>\n {renderWithState?.(getParamsRef.current())}\n </HeightAnimation>\n </SharedProvider>\n </>\n )\n}\n\nSubmitConfirmation._supportsSpacingProps = 'children'\nexport default SubmitConfirmation\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SubmitConfirmation.js","names":["React","useCallback","useContext","useMemo","useReducer","useRef","DataContext","useEventListener","SharedProvider","HeightAnimation","removeUndefinedProps","SubmitConfirmation","props","forceUpdate","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","confirmationStateRef","submitStateRef","preventSubmitRef","undefined","validatePreventSubmit","current","getParamsRef","setConfirmationState","state","window","requestAnimationFrame","keepPending","confirmationState","connectWithDialog","openState","onConfirm","submitHandler","onDecline","cancelHandler","onClose","_ref","triggeredBy","data","Object","keys","length","_objectSpread","setFocusOnButton","form","element","querySelector","focus","e","_ref2","preventSubmit","removeEvent","sharedProviderParams","formElement","disabled","createElement","Fragment","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport DataContext from '../../DataContext/Context'\nimport useEventListener from '../../DataContext/Provider/useEventListener'\nimport SharedProvider from '../../../../shared/Provider'\nimport { ContextProps } from '../../../../shared/Context'\nimport { HeightAnimation } from '../../../../components'\nimport {\n DialogContentProps,\n DialogProps,\n} from '../../../../components/dialog/types'\nimport { EventStateObject } from '../../types'\nimport { removeUndefinedProps } from '../../../../shared/component-helper'\n\nexport type ConfirmationState =\n | 'idle'\n | 'readyToBeSubmitted'\n | 'submitInProgress'\n | 'submissionComplete'\n\nexport type ConfirmParams = {\n data: unknown\n confirmationState: ConfirmationState\n submitState: EventStateObject | undefined\n connectWithDialog: Pick<\n DialogProps & DialogContentProps,\n 'openState' | 'onConfirm' | 'onDecline' | 'onClose'\n >\n setConfirmationState: (state: ConfirmationState) => void\n submitHandler: () => void | Promise<void>\n cancelHandler: () => void | Promise<void>\n}\n\nexport type ConfirmProps = {\n preventSubmitWhen?: (params: ConfirmParams) => boolean\n onStateChange?: (params: ConfirmParams) => void | Promise<void>\n onSubmitResult?: (params: ConfirmParams) => void\n renderWithState?: (params: ConfirmParams) => React.ReactNode\n children?: React.ReactNode\n}\n\nfunction SubmitConfirmation(props: ConfirmProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n const {\n preventSubmitWhen,\n onStateChange,\n onSubmitResult,\n renderWithState,\n children,\n } = props\n\n const {\n setFormState,\n handleSubmit: handleFinalSubmit,\n submitState,\n formElementRef,\n internalDataRef,\n } = useContext(DataContext)\n\n const confirmationStateRef = useRef<ConfirmationState>('idle')\n const submitStateRef = useRef<EventStateObject>()\n const preventSubmitRef = useRef<boolean>(undefined)\n\n const validatePreventSubmit = useCallback(() => {\n return (preventSubmitRef.current = preventSubmitWhen?.(\n getParamsRef.current()\n ))\n }, [preventSubmitWhen])\n\n const setConfirmationState = useCallback(\n async (state: ConfirmationState) => {\n confirmationStateRef.current = state\n await onStateChange?.(getParamsRef.current())\n if (typeof window !== 'undefined') {\n window.requestAnimationFrame(() => {\n switch (state) {\n case 'idle':\n setFormState('complete', { keepPending: false })\n break\n case 'readyToBeSubmitted':\n setFormState('pending', { keepPending: true })\n break\n case 'submitInProgress':\n setFormState('pending', { keepPending: true })\n break\n case 'submissionComplete':\n setFormState('complete', { keepPending: false })\n break\n default:\n forceUpdate()\n }\n })\n }\n },\n [onStateChange, setFormState]\n )\n\n const getParamsRef = useRef(() => {\n const confirmationState = confirmationStateRef.current\n\n const connectWithDialog = {\n openState: confirmationState === 'readyToBeSubmitted',\n onConfirm: submitHandler,\n onDecline: cancelHandler,\n onClose: ({ triggeredBy }) => {\n if (triggeredBy === 'keyboard') {\n cancelHandler()\n }\n },\n }\n\n return {\n data: internalDataRef?.current,\n confirmationState,\n setConfirmationState,\n submitHandler,\n cancelHandler,\n connectWithDialog,\n submitState: submitStateRef.current,\n } satisfies ConfirmParams\n })\n\n useMemo(() => {\n if (Object.keys(removeUndefinedProps(submitState) || {}).length > 0) {\n submitStateRef.current = {\n ...submitState,\n } as EventStateObject\n onSubmitResult?.(getParamsRef.current())\n }\n }, [submitState, onSubmitResult])\n\n const setFocusOnButton = useCallback(() => {\n try {\n const form = formElementRef.current\n const element = (form.querySelector('.dnb-forms-submit-button') ||\n form) as HTMLElement\n element.focus()\n } catch (e) {\n //\n }\n }, [formElementRef])\n\n const cancelHandler = useCallback(async () => {\n await setConfirmationState('idle')\n setFocusOnButton()\n }, [setFocusOnButton, setConfirmationState])\n\n const handleSubmit = useCallback(\n async ({ preventSubmit }) => {\n if (confirmationStateRef.current === 'submitInProgress') {\n return // stop here\n }\n\n if (validatePreventSubmit() !== true) {\n await setConfirmationState('submitInProgress')\n return // stop here\n }\n\n submitStateRef.current = undefined\n\n // Prevent the form form from being submitted\n preventSubmit()\n\n await setConfirmationState('readyToBeSubmitted')\n },\n [setConfirmationState, validatePreventSubmit]\n )\n const { removeEvent } = useEventListener('onSubmit', handleSubmit)\n\n const submitHandler = useCallback(async () => {\n removeEvent()\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n removeEvent,\n setConfirmationState,\n handleFinalSubmit,\n setFocusOnButton,\n ])\n\n const sharedProviderParams: ContextProps = {\n formElement: {\n disabled: false,\n },\n }\n\n return (\n <>\n {children}\n\n <SharedProvider {...sharedProviderParams}>\n <HeightAnimation>\n {renderWithState?.(getParamsRef.current())}\n </HeightAnimation>\n </SharedProvider>\n </>\n )\n}\n\nSubmitConfirmation._supportsSpacingProps = 'children'\nexport default SubmitConfirmation\n"],"mappings":"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","ignoreList":[]}
@@ -37,7 +37,9 @@ export default function ResetButton(props) {
37
37
  } = useContext(ToolbarContext) || {};
38
38
  const {
39
39
  hasContentChanged
40
- } = useHasContentChanged();
40
+ } = useHasContentChanged({
41
+ enabled: true
42
+ });
41
43
  const buttonProps = omitDataValueReadWriteProps(restProps);
42
44
  const {
43
45
  resetButton
@@ -1 +1 @@
1
- {"version":3,"file":"ResetButton.js","names":["React","useCallback","useContext","classnames","Button","Dialog","useTranslation","IterateItemContext","ToolbarContext","FieldBoundaryContext","reset","useHasContentChanged","omitDataValueReadWriteProps","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","_objectWithoutProperties","_excluded","restoreOriginalValue","setShowBoundaryErrors","setShowError","hasContentChanged","buttonProps","resetButton","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","useRef","handleClick","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","_objectSpread","variant","icon","icon_position","disabled","createElement","tabIndex","ref","title","onConfirm","_extends","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from '../../Form/Isolation/useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged()\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":";;;;;;;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,EAAEC,MAAM,QAAQ,wBAAwB;AACvD,OAAOC,cAAc,MAAM,4BAA4B;AACvD,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,cAAc,MAAM,2BAA2B;AACtD,OAAOC,oBAAoB,MAAM,sDAAsD;AACvF,SAASC,KAAK,QAAQ,mBAAmB;AAEzC,OAAOC,oBAAoB,MAAM,2CAA2C;AAC5E,SAASC,2BAA2B,QAAQ,aAAa;AAMzD,eAAe,SAASC,WAAWA,CAACC,KAAY,EAAE;EAChD,MAAM;MACJC,IAAI;MACJC,QAAQ;MACRC,OAAO;MACPC,SAAS;MACTC,MAAM;MACNC,iBAAiB,GAAG;IAEtB,CAAC,GAAGN,KAAK;IADJO,SAAS,GAAAC,wBAAA,CACVR,KAAK,EAAAS,SAAA;EACT,MAAM;IAAEC;EAAqB,CAAC,GAAGtB,UAAU,CAACK,kBAAkB,CAAC,IAAI,CAAC,CAAC;EACrE,MAAM;IAAEkB;EAAsB,CAAC,GAAGvB,UAAU,CAACO,oBAAoB,CAAC,IAAI,CAAC,CAAC;EACxE,MAAM;IAAEiB;EAAa,CAAC,GAAGxB,UAAU,CAACM,cAAc,CAAC,IAAI,CAAC,CAAC;EACzD,MAAM;IAAEmB;EAAkB,CAAC,GAAGhB,oBAAoB,CAAC,CAAC;EAEpD,MAAMiB,WAAW,GAAGhB,2BAA2B,CAACS,SAAS,CAAC;EAC1D,MAAM;IAAEQ;EAAY,CAAC,GAAGvB,cAAc,CAAC,CAAC,CAACwB,oBAAoB;EAC7D,MAAM;IAAEC;EAAiB,CAAC,GAAGzB,cAAc,CAAC,CAAC,CAACwB,oBAAoB;EAClE,MAAME,WAAW,GAAGjB,IAAI,IAAIC,QAAQ,IAAIa,WAAW;EAEnD,MAAMI,gBAAgB,GAAGjC,KAAK,CAACkC,MAAM,CAAoB,IAAI,CAAC;EAC9D,MAAMC,WAAW,GAAGlC,WAAW,CAC7BmC,IAAA,IAAsB;IAAA,IAAAC,qBAAA;IAAA,IAArB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAH,IAAA;IACfE,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAG,CAAC;IACTrB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAGsB,KAAK,CAAC;IAChBf,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAG,CAAC;IACxBE,YAAY,CAAC,KAAK,CAAC;IACnBD,qBAAqB,aAArBA,qBAAqB,uBAArBA,qBAAqB,CAAG,KAAK,CAAC;IAC9B,CAAAY,qBAAA,GAAAJ,gBAAgB,CAACO,OAAO,cAAAH,qBAAA,uBAAxBA,qBAAA,CAA0BI,KAAK,CAAC,CAAC;EACnC,CAAC,EACD,CAACxB,OAAO,EAAEO,oBAAoB,EAAEC,qBAAqB,EAAEC,YAAY,CACrE,CAAC;EAED,IAAIP,MAAM,EAAE;IACV,OAAO,IAAI;EACb;EAEA,MAAMuB,iBAA8B,GAAAC,aAAA;IAClCzB,SAAS,EAAEf,UAAU,CAAC,iCAAiC,EAAEe,SAAS,CAAC;IACnEH,IAAI,EAAEiB,WAAW;IACjBY,OAAO,EAAEZ,WAAW,GAAG,UAAU,GAAG,WAAW;IAC/Ca,IAAI,EAAEnC,KAAK;IACXoC,aAAa,EAAE,MAAM;IACrBC,QAAQ,EACN,OAAOpB,iBAAiB,KAAK,SAAS,GAAG,CAACA,iBAAiB,GAAG;EAAK,GAClEC,WAAW,CACf;EAED,OACE5B,KAAA,CAAAgD,aAAA;IAAMC,QAAQ,EAAE,CAAC,CAAE;IAACC,GAAG,EAAEjB,gBAAiB;IAACf,SAAS,EAAC;EAAc,GAChEE,iBAAiB,GAChBpB,KAAA,CAAAgD,aAAA,CAAC3C,MAAM;IACLuC,OAAO,EAAC,cAAc;IACtBO,KAAK,EAAEpB,gBAAiB;IACxBW,iBAAiB,EAAEA,iBAAkB;IACrCU,SAAS,EAAEjB;EAAY,CACxB,CAAC,GAEFnC,KAAA,CAAAgD,aAAA,CAAC5C,MAAM,EAAAiD,QAAA,KACDX,iBAAiB;IACrBY,QAAQ,EAAEnB;EAAY,GAClBP,WAAW,GAEdC,WACK,CAEN,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"file":"ResetButton.js","names":["React","useCallback","useContext","classnames","Button","Dialog","useTranslation","IterateItemContext","ToolbarContext","FieldBoundaryContext","reset","useHasContentChanged","omitDataValueReadWriteProps","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","_objectWithoutProperties","_excluded","restoreOriginalValue","setShowBoundaryErrors","setShowError","hasContentChanged","enabled","buttonProps","resetButton","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","useRef","handleClick","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","_objectSpread","variant","icon","icon_position","disabled","createElement","tabIndex","ref","title","onConfirm","_extends","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from '../../Form/Isolation/useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged({ enabled: true })\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ export function useIterateItemNo(_ref) {
16
16
  optionalLabelSuffix
17
17
  } = useTranslation().Field;
18
18
  const labelSuffixText = useMemo(() => {
19
- if (required === false || typeof labelSuffix !== 'undefined') {
19
+ if (typeof labelSuffix !== 'boolean' && (required === false || typeof labelSuffix !== 'undefined')) {
20
20
  return labelSuffix !== null && labelSuffix !== void 0 ? labelSuffix : optionalLabelSuffix;
21
21
  }
22
22
  return '';
@@ -40,4 +40,4 @@ export function useIterateItemNo(_ref) {
40
40
  return content;
41
41
  }, [iterateIndex, labelProp, labelSuffixText, optionalLabelSuffix]);
42
42
  }
43
- //# sourceMappingURL=useIItemNo.js.map
43
+ //# sourceMappingURL=useIterateItemNo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIterateItemNo.js","names":["React","useMemo","useItem","useTranslation","convertJsxToString","useIterateItemNo","_ref","label","labelProp","labelSuffix","required","index","iterateIndex","optionalLabelSuffix","Field","labelSuffixText","content","undefined","replace","String","includes","isValidElement","createElement","Fragment"],"sources":["../../../../../../src/extensions/forms/Iterate/ItemNo/useIterateItemNo.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { useItem } from '../hooks'\nimport { useTranslation } from '../../hooks'\nimport { convertJsxToString } from '../../../../shared/component-helper'\n\nexport function useIterateItemNo({\n label: labelProp,\n labelSuffix,\n required,\n}) {\n const { index: iterateIndex } = useItem() || {}\n\n const { optionalLabelSuffix } = useTranslation().Field\n const labelSuffixText = useMemo(() => {\n if (\n typeof labelSuffix !== 'boolean' &&\n (required === false || typeof labelSuffix !== 'undefined')\n ) {\n return labelSuffix ?? optionalLabelSuffix\n }\n return ''\n }, [required, labelSuffix, optionalLabelSuffix])\n\n return useMemo(() => {\n let content = labelProp\n\n if (iterateIndex !== undefined) {\n content = convertJsxToString(labelProp).replace(\n '{itemNo}',\n String(iterateIndex + 1)\n )\n }\n\n if (labelSuffixText) {\n if (convertJsxToString(content).includes(optionalLabelSuffix)) {\n return content\n }\n\n if (typeof content === 'string') {\n return content + ' ' + labelSuffixText\n }\n\n if (React.isValidElement(content)) {\n return (\n <>\n {content}\n {' '}\n {labelSuffixText}\n </>\n )\n }\n }\n\n return content\n }, [iterateIndex, labelProp, labelSuffixText, optionalLabelSuffix])\n}\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,OAAO,QAAQ,UAAU;AAClC,SAASC,cAAc,QAAQ,aAAa;AAC5C,SAASC,kBAAkB,QAAQ,qCAAqC;AAExE,OAAO,SAASC,gBAAgBA,CAAAC,IAAA,EAI7B;EAAA,IAJ8B;IAC/BC,KAAK,EAAEC,SAAS;IAChBC,WAAW;IACXC;EACF,CAAC,GAAAJ,IAAA;EACC,MAAM;IAAEK,KAAK,EAAEC;EAAa,CAAC,GAAGV,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;EAE/C,MAAM;IAAEW;EAAoB,CAAC,GAAGV,cAAc,CAAC,CAAC,CAACW,KAAK;EACtD,MAAMC,eAAe,GAAGd,OAAO,CAAC,MAAM;IACpC,IACE,OAAOQ,WAAW,KAAK,SAAS,KAC/BC,QAAQ,KAAK,KAAK,IAAI,OAAOD,WAAW,KAAK,WAAW,CAAC,EAC1D;MACA,OAAOA,WAAW,aAAXA,WAAW,cAAXA,WAAW,GAAII,mBAAmB;IAC3C;IACA,OAAO,EAAE;EACX,CAAC,EAAE,CAACH,QAAQ,EAAED,WAAW,EAAEI,mBAAmB,CAAC,CAAC;EAEhD,OAAOZ,OAAO,CAAC,MAAM;IACnB,IAAIe,OAAO,GAAGR,SAAS;IAEvB,IAAII,YAAY,KAAKK,SAAS,EAAE;MAC9BD,OAAO,GAAGZ,kBAAkB,CAACI,SAAS,CAAC,CAACU,OAAO,CAC7C,UAAU,EACVC,MAAM,CAACP,YAAY,GAAG,CAAC,CACzB,CAAC;IACH;IAEA,IAAIG,eAAe,EAAE;MACnB,IAAIX,kBAAkB,CAACY,OAAO,CAAC,CAACI,QAAQ,CAACP,mBAAmB,CAAC,EAAE;QAC7D,OAAOG,OAAO;MAChB;MAEA,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAOA,OAAO,GAAG,GAAG,GAAGD,eAAe;MACxC;MAEA,IAAIf,KAAK,CAACqB,cAAc,CAACL,OAAO,CAAC,EAAE;QACjC,OACEhB,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,QACGP,OAAO,EACP,GAAG,EACHD,eACD,CAAC;MAEP;IACF;IAEA,OAAOC,OAAO;EAChB,CAAC,EAAE,CAACJ,YAAY,EAAEJ,SAAS,EAAEO,eAAe,EAAEF,mBAAmB,CAAC,CAAC;AACrE","ignoreList":[]}
@@ -1,7 +1,9 @@
1
1
  import React from 'react';
2
+ import { IsolationProps } from '../../Form/Isolation';
2
3
  import { AllProps as EditContainerProps } from '../EditContainer';
3
4
  import { OnCommit, Path } from '../../types';
4
5
  import { SpacingProps } from '../../../../shared/types';
6
+ import { JsonObject } from '../../utils';
5
7
  type OnlyPathRequired = {
6
8
  /**
7
9
  * The path to the array to add the new item to.
@@ -83,7 +85,7 @@ export type Props = (OnlyPathRequired | OnlyItemPathRequired) & {
83
85
  * The container contents.
84
86
  */
85
87
  children: React.ReactNode;
86
- };
88
+ } & Pick<IsolationProps<JsonObject>, 'dataReference'>;
87
89
  export type AllProps = Props & SpacingProps & Omit<EditContainerProps, 'data'>;
88
90
  declare function PushContainer(props: AllProps): import("react/jsx-runtime").JSX.Element;
89
91
  declare namespace PushContainer {