@dnb/eufemia 10.51.2 → 10.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (588) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/cjs/components/autocomplete/Autocomplete.js +4 -0
  3. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +2 -2
  5. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  6. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -2
  7. package/cjs/components/dialog/style/themes/dnb-dialog-theme-sbanken.css +6 -0
  8. package/cjs/components/dialog/style/themes/dnb-dialog-theme-sbanken.min.css +1 -1
  9. package/cjs/components/dialog/style/themes/dnb-dialog-theme-sbanken.scss +7 -0
  10. package/cjs/components/form-status/FormStatus.d.ts +5 -0
  11. package/cjs/components/icon/Icon.d.ts +2 -1
  12. package/cjs/components/icon/Icon.js.map +1 -1
  13. package/cjs/components/logo/Logo.js.map +1 -1
  14. package/cjs/components/number-format/NumberUtils.d.ts +14 -0
  15. package/cjs/components/number-format/NumberUtils.js +7 -8
  16. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  17. package/cjs/components/skeleton/style/dnb-skeleton.css +3 -1
  18. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  19. package/cjs/components/skeleton/style/dnb-skeleton.scss +4 -2
  20. package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +21 -2
  21. package/cjs/extensions/forms/DataContext/Context.d.ts +5 -0
  22. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  23. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +12 -1
  24. package/cjs/extensions/forms/DataContext/Provider/Provider.js +86 -77
  25. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  26. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +6 -1
  27. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +112 -23
  28. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  29. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +5 -0
  30. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  31. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +3 -1
  32. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +28 -16
  33. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  34. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.d.ts +2 -0
  35. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +25 -0
  36. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -0
  37. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -3
  38. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  39. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +4 -0
  40. package/cjs/extensions/forms/Form/Isolation/Isolation.js +26 -0
  41. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  42. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +5 -0
  43. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  44. package/cjs/extensions/forms/Form/Snapshot/Snapshot.d.ts +12 -0
  45. package/cjs/extensions/forms/Form/Snapshot/Snapshot.js +45 -0
  46. package/cjs/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -0
  47. package/cjs/extensions/forms/Form/Snapshot/SnapshotContext.d.ts +12 -0
  48. package/cjs/extensions/forms/Form/Snapshot/SnapshotContext.js +12 -0
  49. package/cjs/extensions/forms/Form/Snapshot/SnapshotContext.js.map +1 -0
  50. package/cjs/extensions/forms/Form/Snapshot/SnapshotDocs.d.ts +3 -0
  51. package/cjs/extensions/forms/Form/Snapshot/SnapshotDocs.js +17 -0
  52. package/cjs/extensions/forms/Form/Snapshot/SnapshotDocs.js.map +1 -0
  53. package/cjs/extensions/forms/Form/Snapshot/index.d.ts +2 -0
  54. package/cjs/extensions/forms/Form/Snapshot/index.js +27 -0
  55. package/cjs/extensions/forms/Form/Snapshot/index.js.map +1 -0
  56. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +1 -1
  57. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  58. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +10 -2
  59. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  60. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +10 -10
  61. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  62. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +26 -14
  63. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  64. package/cjs/extensions/forms/Form/data-context/clearData.js +2 -5
  65. package/cjs/extensions/forms/Form/data-context/clearData.js.map +1 -1
  66. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
  67. package/cjs/extensions/forms/Form/data-context/useData.js +3 -2
  68. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  69. package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  70. package/cjs/extensions/forms/Form/index.d.ts +2 -0
  71. package/cjs/extensions/forms/Form/index.js +14 -0
  72. package/cjs/extensions/forms/Form/index.js.map +1 -1
  73. package/cjs/extensions/forms/Iterate/Array/Array.js +3 -1
  74. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  75. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +30 -17
  76. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  77. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +5 -6
  78. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  79. package/cjs/extensions/forms/Iterate/ItemNo/ItemNo.d.ts +9 -0
  80. package/cjs/extensions/forms/Iterate/ItemNo/ItemNo.js +33 -0
  81. package/cjs/extensions/forms/Iterate/ItemNo/ItemNo.js.map +1 -0
  82. package/cjs/extensions/forms/Iterate/ItemNo/index.d.ts +2 -0
  83. package/cjs/extensions/forms/Iterate/ItemNo/index.js +27 -0
  84. package/cjs/extensions/forms/Iterate/ItemNo/index.js.map +1 -0
  85. package/cjs/extensions/forms/Iterate/IterateItemContext.d.ts +1 -0
  86. package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  87. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +18 -2
  88. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +44 -18
  89. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  90. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +24 -1
  91. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  92. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +5 -6
  93. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  94. package/cjs/extensions/forms/Iterate/index.d.ts +1 -0
  95. package/cjs/extensions/forms/Iterate/index.js +7 -0
  96. package/cjs/extensions/forms/Iterate/index.js.map +1 -1
  97. package/cjs/extensions/forms/Tools/Log.d.ts +7 -2
  98. package/cjs/extensions/forms/Tools/Log.js +36 -4
  99. package/cjs/extensions/forms/Tools/Log.js.map +1 -1
  100. package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
  101. package/cjs/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -2
  102. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +3 -1
  103. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  104. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -0
  105. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
  106. package/cjs/extensions/forms/Value/ValueDocs.js +5 -0
  107. package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
  108. package/cjs/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
  109. package/cjs/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
  110. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +78 -31
  111. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  112. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  113. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  114. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +1 -2
  115. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +0 -7
  116. package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
  117. package/cjs/extensions/forms/Wizard/Container/useStepAnimation.d.ts +2 -1
  118. package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js +11 -6
  119. package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -1
  120. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +14 -3
  121. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  122. package/cjs/extensions/forms/Wizard/Step/Step.js +4 -4
  123. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  124. package/cjs/extensions/forms/Wizard/hooks/useStep.js +4 -4
  125. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  126. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +6 -1
  127. package/cjs/extensions/forms/constants/locales/en-GB.js +9 -4
  128. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  129. package/cjs/extensions/forms/constants/locales/en-US.d.ts +6 -1
  130. package/cjs/extensions/forms/constants/locales/en-US.js +2 -1
  131. package/cjs/extensions/forms/constants/locales/en-US.js.map +1 -1
  132. package/cjs/extensions/forms/constants/locales/index.d.ts +12 -2
  133. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +6 -1
  134. package/cjs/extensions/forms/constants/locales/nb-NO.js +9 -4
  135. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  136. package/cjs/extensions/forms/hooks/useDataContext.d.ts +6 -0
  137. package/cjs/extensions/forms/hooks/useDataContext.js +31 -0
  138. package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -0
  139. package/cjs/extensions/forms/hooks/useExternalValue.js +12 -6
  140. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  141. package/cjs/extensions/forms/hooks/useFieldProps.js +82 -43
  142. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  143. package/cjs/extensions/forms/hooks/useSnapshot.d.ts +9 -0
  144. package/cjs/extensions/forms/hooks/useSnapshot.js +87 -0
  145. package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -0
  146. package/cjs/extensions/forms/hooks/useValueProps.js +6 -1
  147. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  148. package/cjs/extensions/forms/types.d.ts +4 -0
  149. package/cjs/extensions/forms/types.js.map +1 -1
  150. package/cjs/extensions/payment-card/style/dnb-payment-card.css +3 -2
  151. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  152. package/cjs/shared/Eufemia.d.ts +1 -1
  153. package/cjs/shared/Eufemia.js +2 -2
  154. package/cjs/shared/Eufemia.js.map +1 -1
  155. package/cjs/shared/component-helper.js +1 -1
  156. package/cjs/shared/component-helper.js.map +1 -1
  157. package/cjs/style/core/scopes.scss +1 -1
  158. package/cjs/style/dnb-ui-basis.css +1 -1
  159. package/cjs/style/dnb-ui-basis.min.css +1 -1
  160. package/cjs/style/dnb-ui-body.css +1 -1
  161. package/cjs/style/dnb-ui-body.min.css +1 -1
  162. package/cjs/style/dnb-ui-components.css +3 -1
  163. package/cjs/style/dnb-ui-components.min.css +1 -1
  164. package/cjs/style/dnb-ui-core.css +1 -1
  165. package/cjs/style/dnb-ui-core.min.css +1 -1
  166. package/cjs/style/dnb-ui-extensions.css +3 -2
  167. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  168. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +3 -1
  169. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  170. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -2
  171. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  172. package/cjs/style/themes/theme-eiendom/properties.d.ts +1 -0
  173. package/cjs/style/themes/theme-eiendom/properties.js +3 -2
  174. package/cjs/style/themes/theme-eiendom/properties.js.map +1 -1
  175. package/cjs/style/themes/theme-sbanken/properties.d.ts +1 -0
  176. package/cjs/style/themes/theme-sbanken/properties.js +3 -2
  177. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  178. package/cjs/style/themes/theme-sbanken/properties.scss +9 -8
  179. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +20 -4
  180. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +3 -1
  181. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +11 -3
  182. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  183. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -2
  184. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +3 -1
  185. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -2
  186. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  187. package/cjs/style/themes/theme-ui/properties.d.ts +1 -0
  188. package/cjs/style/themes/theme-ui/properties.js +3 -2
  189. package/cjs/style/themes/theme-ui/properties.js.map +1 -1
  190. package/cjs/style/themes/theme-ui/ui-theme-components.css +3 -1
  191. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  192. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +3 -2
  193. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  194. package/components/autocomplete/Autocomplete.js +4 -0
  195. package/components/autocomplete/Autocomplete.js.map +1 -1
  196. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +2 -2
  197. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  198. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -2
  199. package/components/dialog/style/themes/dnb-dialog-theme-sbanken.css +6 -0
  200. package/components/dialog/style/themes/dnb-dialog-theme-sbanken.min.css +1 -1
  201. package/components/dialog/style/themes/dnb-dialog-theme-sbanken.scss +7 -0
  202. package/components/form-status/FormStatus.d.ts +5 -0
  203. package/components/icon/Icon.d.ts +2 -1
  204. package/components/icon/Icon.js.map +1 -1
  205. package/components/logo/Logo.js.map +1 -1
  206. package/components/number-format/NumberUtils.d.ts +14 -0
  207. package/components/number-format/NumberUtils.js +7 -8
  208. package/components/number-format/NumberUtils.js.map +1 -1
  209. package/components/skeleton/style/dnb-skeleton.css +3 -1
  210. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  211. package/components/skeleton/style/dnb-skeleton.scss +4 -2
  212. package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +21 -2
  213. package/es/components/autocomplete/Autocomplete.js +4 -0
  214. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  215. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +2 -2
  216. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  217. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -2
  218. package/es/components/dialog/style/themes/dnb-dialog-theme-sbanken.css +6 -0
  219. package/es/components/dialog/style/themes/dnb-dialog-theme-sbanken.min.css +1 -1
  220. package/es/components/dialog/style/themes/dnb-dialog-theme-sbanken.scss +7 -0
  221. package/es/components/form-status/FormStatus.d.ts +5 -0
  222. package/es/components/icon/Icon.d.ts +2 -1
  223. package/es/components/icon/Icon.js.map +1 -1
  224. package/es/components/logo/Logo.js.map +1 -1
  225. package/es/components/number-format/NumberUtils.d.ts +14 -0
  226. package/es/components/number-format/NumberUtils.js +7 -8
  227. package/es/components/number-format/NumberUtils.js.map +1 -1
  228. package/es/components/skeleton/style/dnb-skeleton.css +3 -1
  229. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  230. package/es/components/skeleton/style/dnb-skeleton.scss +4 -2
  231. package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +21 -2
  232. package/es/extensions/forms/DataContext/Context.d.ts +5 -0
  233. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  234. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +12 -1
  235. package/es/extensions/forms/DataContext/Provider/Provider.js +84 -75
  236. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  237. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +6 -1
  238. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +109 -23
  239. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  240. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +5 -0
  241. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  242. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +3 -1
  243. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +28 -16
  244. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  245. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.d.ts +2 -0
  246. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +18 -0
  247. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -0
  248. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -3
  249. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  250. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +4 -0
  251. package/es/extensions/forms/Form/Isolation/Isolation.js +28 -3
  252. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  253. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +5 -0
  254. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  255. package/es/extensions/forms/Form/Snapshot/Snapshot.d.ts +12 -0
  256. package/es/extensions/forms/Form/Snapshot/Snapshot.js +36 -0
  257. package/es/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -0
  258. package/es/extensions/forms/Form/Snapshot/SnapshotContext.d.ts +12 -0
  259. package/es/extensions/forms/Form/Snapshot/SnapshotContext.js +6 -0
  260. package/es/extensions/forms/Form/Snapshot/SnapshotContext.js.map +1 -0
  261. package/es/extensions/forms/Form/Snapshot/SnapshotDocs.d.ts +3 -0
  262. package/es/extensions/forms/Form/Snapshot/SnapshotDocs.js +9 -0
  263. package/es/extensions/forms/Form/Snapshot/SnapshotDocs.js.map +1 -0
  264. package/es/extensions/forms/Form/Snapshot/index.d.ts +2 -0
  265. package/es/extensions/forms/Form/Snapshot/index.js +3 -0
  266. package/es/extensions/forms/Form/Snapshot/index.js.map +1 -0
  267. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +1 -1
  268. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  269. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +10 -2
  270. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  271. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +10 -10
  272. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  273. package/es/extensions/forms/Form/Visibility/useVisibility.js +26 -14
  274. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  275. package/es/extensions/forms/Form/data-context/clearData.js +2 -5
  276. package/es/extensions/forms/Form/data-context/clearData.js.map +1 -1
  277. package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
  278. package/es/extensions/forms/Form/data-context/useData.js +1 -0
  279. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  280. package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  281. package/es/extensions/forms/Form/index.d.ts +2 -0
  282. package/es/extensions/forms/Form/index.js +2 -0
  283. package/es/extensions/forms/Form/index.js.map +1 -1
  284. package/es/extensions/forms/Iterate/Array/Array.js +3 -1
  285. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  286. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +31 -18
  287. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  288. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +5 -6
  289. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  290. package/es/extensions/forms/Iterate/ItemNo/ItemNo.d.ts +9 -0
  291. package/es/extensions/forms/Iterate/ItemNo/ItemNo.js +22 -0
  292. package/es/extensions/forms/Iterate/ItemNo/ItemNo.js.map +1 -0
  293. package/es/extensions/forms/Iterate/ItemNo/index.d.ts +2 -0
  294. package/es/extensions/forms/Iterate/ItemNo/index.js +3 -0
  295. package/es/extensions/forms/Iterate/ItemNo/index.js.map +1 -0
  296. package/es/extensions/forms/Iterate/IterateItemContext.d.ts +1 -0
  297. package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  298. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +18 -2
  299. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +43 -16
  300. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  301. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +24 -1
  302. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  303. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +5 -6
  304. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  305. package/es/extensions/forms/Iterate/index.d.ts +1 -0
  306. package/es/extensions/forms/Iterate/index.js +1 -0
  307. package/es/extensions/forms/Iterate/index.js.map +1 -1
  308. package/es/extensions/forms/Tools/Log.d.ts +7 -2
  309. package/es/extensions/forms/Tools/Log.js +26 -3
  310. package/es/extensions/forms/Tools/Log.js.map +1 -1
  311. package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
  312. package/es/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -2
  313. package/es/extensions/forms/Value/SummaryList/SummaryList.js +3 -1
  314. package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  315. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -0
  316. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
  317. package/es/extensions/forms/Value/ValueDocs.js +5 -0
  318. package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
  319. package/es/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
  320. package/es/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
  321. package/es/extensions/forms/Wizard/Container/WizardContainer.js +67 -23
  322. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  323. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  324. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  325. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +1 -2
  326. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +0 -6
  327. package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
  328. package/es/extensions/forms/Wizard/Container/useStepAnimation.d.ts +2 -1
  329. package/es/extensions/forms/Wizard/Container/useStepAnimation.js +12 -7
  330. package/es/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -1
  331. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +14 -3
  332. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  333. package/es/extensions/forms/Wizard/Step/Step.js +4 -4
  334. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  335. package/es/extensions/forms/Wizard/hooks/useStep.js +4 -4
  336. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  337. package/es/extensions/forms/constants/locales/en-GB.d.ts +6 -1
  338. package/es/extensions/forms/constants/locales/en-GB.js +9 -4
  339. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  340. package/es/extensions/forms/constants/locales/en-US.d.ts +6 -1
  341. package/es/extensions/forms/constants/locales/en-US.js +2 -1
  342. package/es/extensions/forms/constants/locales/en-US.js.map +1 -1
  343. package/es/extensions/forms/constants/locales/index.d.ts +12 -2
  344. package/es/extensions/forms/constants/locales/nb-NO.d.ts +6 -1
  345. package/es/extensions/forms/constants/locales/nb-NO.js +9 -4
  346. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  347. package/es/extensions/forms/hooks/useDataContext.d.ts +6 -0
  348. package/es/extensions/forms/hooks/useDataContext.js +24 -0
  349. package/es/extensions/forms/hooks/useDataContext.js.map +1 -0
  350. package/es/extensions/forms/hooks/useExternalValue.js +12 -6
  351. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  352. package/es/extensions/forms/hooks/useFieldProps.js +83 -44
  353. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  354. package/es/extensions/forms/hooks/useSnapshot.d.ts +9 -0
  355. package/es/extensions/forms/hooks/useSnapshot.js +73 -0
  356. package/es/extensions/forms/hooks/useSnapshot.js.map +1 -0
  357. package/es/extensions/forms/hooks/useValueProps.js +6 -1
  358. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  359. package/es/extensions/forms/types.d.ts +4 -0
  360. package/es/extensions/forms/types.js.map +1 -1
  361. package/es/extensions/payment-card/style/dnb-payment-card.css +3 -2
  362. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  363. package/es/shared/Eufemia.d.ts +1 -1
  364. package/es/shared/Eufemia.js +2 -2
  365. package/es/shared/Eufemia.js.map +1 -1
  366. package/es/shared/component-helper.js +1 -1
  367. package/es/shared/component-helper.js.map +1 -1
  368. package/es/style/core/scopes.scss +1 -1
  369. package/es/style/dnb-ui-basis.css +1 -1
  370. package/es/style/dnb-ui-basis.min.css +1 -1
  371. package/es/style/dnb-ui-body.css +1 -1
  372. package/es/style/dnb-ui-body.min.css +1 -1
  373. package/es/style/dnb-ui-components.css +3 -1
  374. package/es/style/dnb-ui-components.min.css +1 -1
  375. package/es/style/dnb-ui-core.css +1 -1
  376. package/es/style/dnb-ui-core.min.css +1 -1
  377. package/es/style/dnb-ui-extensions.css +3 -2
  378. package/es/style/dnb-ui-extensions.min.css +1 -1
  379. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +3 -1
  380. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  381. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -2
  382. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  383. package/es/style/themes/theme-eiendom/properties.d.ts +1 -0
  384. package/es/style/themes/theme-eiendom/properties.js +3 -2
  385. package/es/style/themes/theme-eiendom/properties.js.map +1 -1
  386. package/es/style/themes/theme-sbanken/properties.d.ts +1 -0
  387. package/es/style/themes/theme-sbanken/properties.js +3 -2
  388. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  389. package/es/style/themes/theme-sbanken/properties.scss +9 -8
  390. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +20 -4
  391. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +3 -1
  392. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +11 -3
  393. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  394. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -2
  395. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +3 -1
  396. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -2
  397. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  398. package/es/style/themes/theme-ui/properties.d.ts +1 -0
  399. package/es/style/themes/theme-ui/properties.js +3 -2
  400. package/es/style/themes/theme-ui/properties.js.map +1 -1
  401. package/es/style/themes/theme-ui/ui-theme-components.css +3 -1
  402. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  403. package/es/style/themes/theme-ui/ui-theme-extensions.css +3 -2
  404. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  405. package/esm/dnb-ui-basis.min.mjs +1 -1
  406. package/esm/dnb-ui-components.min.mjs +1 -1
  407. package/esm/dnb-ui-elements.min.mjs +1 -1
  408. package/esm/dnb-ui-extensions.min.mjs +2 -2
  409. package/esm/dnb-ui-lib.min.mjs +1 -1
  410. package/extensions/forms/DataContext/Context.d.ts +5 -0
  411. package/extensions/forms/DataContext/Context.js.map +1 -1
  412. package/extensions/forms/DataContext/Provider/Provider.d.ts +12 -1
  413. package/extensions/forms/DataContext/Provider/Provider.js +86 -77
  414. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  415. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +6 -1
  416. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +109 -23
  417. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  418. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +5 -0
  419. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  420. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +3 -1
  421. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +28 -16
  422. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  423. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.d.ts +2 -0
  424. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +18 -0
  425. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -0
  426. package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -3
  427. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  428. package/extensions/forms/Form/Isolation/Isolation.d.ts +4 -0
  429. package/extensions/forms/Form/Isolation/Isolation.js +29 -3
  430. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  431. package/extensions/forms/Form/Isolation/IsolationDocs.js +5 -0
  432. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  433. package/extensions/forms/Form/Snapshot/Snapshot.d.ts +12 -0
  434. package/extensions/forms/Form/Snapshot/Snapshot.js +36 -0
  435. package/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -0
  436. package/extensions/forms/Form/Snapshot/SnapshotContext.d.ts +12 -0
  437. package/extensions/forms/Form/Snapshot/SnapshotContext.js +6 -0
  438. package/extensions/forms/Form/Snapshot/SnapshotContext.js.map +1 -0
  439. package/extensions/forms/Form/Snapshot/SnapshotDocs.d.ts +3 -0
  440. package/extensions/forms/Form/Snapshot/SnapshotDocs.js +9 -0
  441. package/extensions/forms/Form/Snapshot/SnapshotDocs.js.map +1 -0
  442. package/extensions/forms/Form/Snapshot/index.d.ts +2 -0
  443. package/extensions/forms/Form/Snapshot/index.js +3 -0
  444. package/extensions/forms/Form/Snapshot/index.js.map +1 -0
  445. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +1 -1
  446. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  447. package/extensions/forms/Form/Visibility/Visibility.d.ts +10 -2
  448. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  449. package/extensions/forms/Form/Visibility/VisibilityDocs.js +10 -10
  450. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  451. package/extensions/forms/Form/Visibility/useVisibility.js +26 -14
  452. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  453. package/extensions/forms/Form/data-context/clearData.js +2 -5
  454. package/extensions/forms/Form/data-context/clearData.js.map +1 -1
  455. package/extensions/forms/Form/data-context/getData.js.map +1 -1
  456. package/extensions/forms/Form/data-context/useData.js +1 -0
  457. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  458. package/extensions/forms/Form/data-context/useValidation.js.map +1 -1
  459. package/extensions/forms/Form/index.d.ts +2 -0
  460. package/extensions/forms/Form/index.js +2 -0
  461. package/extensions/forms/Form/index.js.map +1 -1
  462. package/extensions/forms/Iterate/Array/Array.js +3 -1
  463. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  464. package/extensions/forms/Iterate/Array/ArrayItemArea.js +31 -18
  465. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  466. package/extensions/forms/Iterate/EditContainer/EditContainer.js +5 -6
  467. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  468. package/extensions/forms/Iterate/ItemNo/ItemNo.d.ts +9 -0
  469. package/extensions/forms/Iterate/ItemNo/ItemNo.js +23 -0
  470. package/extensions/forms/Iterate/ItemNo/ItemNo.js.map +1 -0
  471. package/extensions/forms/Iterate/ItemNo/index.d.ts +2 -0
  472. package/extensions/forms/Iterate/ItemNo/index.js +3 -0
  473. package/extensions/forms/Iterate/ItemNo/index.js.map +1 -0
  474. package/extensions/forms/Iterate/IterateItemContext.d.ts +1 -0
  475. package/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
  476. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +18 -2
  477. package/extensions/forms/Iterate/PushContainer/PushContainer.js +44 -18
  478. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  479. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +24 -1
  480. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  481. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +5 -6
  482. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  483. package/extensions/forms/Iterate/index.d.ts +1 -0
  484. package/extensions/forms/Iterate/index.js +1 -0
  485. package/extensions/forms/Iterate/index.js.map +1 -1
  486. package/extensions/forms/Tools/Log.d.ts +7 -2
  487. package/extensions/forms/Tools/Log.js +30 -3
  488. package/extensions/forms/Tools/Log.js.map +1 -1
  489. package/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
  490. package/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -2
  491. package/extensions/forms/Value/SummaryList/SummaryList.js +3 -1
  492. package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  493. package/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -0
  494. package/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
  495. package/extensions/forms/Value/ValueDocs.js +5 -0
  496. package/extensions/forms/Value/ValueDocs.js.map +1 -1
  497. package/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
  498. package/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
  499. package/extensions/forms/Wizard/Container/WizardContainer.js +78 -31
  500. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  501. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  502. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  503. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +1 -2
  504. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +0 -6
  505. package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
  506. package/extensions/forms/Wizard/Container/useStepAnimation.d.ts +2 -1
  507. package/extensions/forms/Wizard/Container/useStepAnimation.js +12 -7
  508. package/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -1
  509. package/extensions/forms/Wizard/Context/WizardContext.d.ts +14 -3
  510. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  511. package/extensions/forms/Wizard/Step/Step.js +4 -4
  512. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  513. package/extensions/forms/Wizard/hooks/useStep.js +4 -4
  514. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  515. package/extensions/forms/constants/locales/en-GB.d.ts +6 -1
  516. package/extensions/forms/constants/locales/en-GB.js +9 -4
  517. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  518. package/extensions/forms/constants/locales/en-US.d.ts +6 -1
  519. package/extensions/forms/constants/locales/en-US.js +2 -1
  520. package/extensions/forms/constants/locales/en-US.js.map +1 -1
  521. package/extensions/forms/constants/locales/index.d.ts +12 -2
  522. package/extensions/forms/constants/locales/nb-NO.d.ts +6 -1
  523. package/extensions/forms/constants/locales/nb-NO.js +9 -4
  524. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  525. package/extensions/forms/hooks/useDataContext.d.ts +6 -0
  526. package/extensions/forms/hooks/useDataContext.js +25 -0
  527. package/extensions/forms/hooks/useDataContext.js.map +1 -0
  528. package/extensions/forms/hooks/useExternalValue.js +12 -6
  529. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  530. package/extensions/forms/hooks/useFieldProps.js +83 -44
  531. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  532. package/extensions/forms/hooks/useSnapshot.d.ts +9 -0
  533. package/extensions/forms/hooks/useSnapshot.js +81 -0
  534. package/extensions/forms/hooks/useSnapshot.js.map +1 -0
  535. package/extensions/forms/hooks/useValueProps.js +6 -1
  536. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  537. package/extensions/forms/types.d.ts +4 -0
  538. package/extensions/forms/types.js.map +1 -1
  539. package/extensions/payment-card/style/dnb-payment-card.css +3 -2
  540. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  541. package/package.json +1 -1
  542. package/shared/Eufemia.d.ts +1 -1
  543. package/shared/Eufemia.js +2 -2
  544. package/shared/Eufemia.js.map +1 -1
  545. package/shared/component-helper.js +1 -1
  546. package/shared/component-helper.js.map +1 -1
  547. package/style/core/scopes.scss +1 -1
  548. package/style/dnb-ui-basis.css +1 -1
  549. package/style/dnb-ui-basis.min.css +1 -1
  550. package/style/dnb-ui-body.css +1 -1
  551. package/style/dnb-ui-body.min.css +1 -1
  552. package/style/dnb-ui-components.css +3 -1
  553. package/style/dnb-ui-components.min.css +1 -1
  554. package/style/dnb-ui-core.css +1 -1
  555. package/style/dnb-ui-core.min.css +1 -1
  556. package/style/dnb-ui-extensions.css +3 -2
  557. package/style/dnb-ui-extensions.min.css +1 -1
  558. package/style/themes/theme-eiendom/eiendom-theme-components.css +3 -1
  559. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  560. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -2
  561. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  562. package/style/themes/theme-eiendom/properties.d.ts +1 -0
  563. package/style/themes/theme-eiendom/properties.js +3 -2
  564. package/style/themes/theme-eiendom/properties.js.map +1 -1
  565. package/style/themes/theme-sbanken/properties.d.ts +1 -0
  566. package/style/themes/theme-sbanken/properties.js +3 -2
  567. package/style/themes/theme-sbanken/properties.js.map +1 -1
  568. package/style/themes/theme-sbanken/properties.scss +9 -8
  569. package/style/themes/theme-sbanken/sbanken-theme-basis.css +20 -4
  570. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +3 -1
  571. package/style/themes/theme-sbanken/sbanken-theme-components.css +11 -3
  572. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  573. package/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -2
  574. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +3 -1
  575. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -2
  576. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  577. package/style/themes/theme-ui/properties.d.ts +1 -0
  578. package/style/themes/theme-ui/properties.js +3 -2
  579. package/style/themes/theme-ui/properties.js.map +1 -1
  580. package/style/themes/theme-ui/ui-theme-components.css +3 -1
  581. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  582. package/style/themes/theme-ui/ui-theme-extensions.css +3 -2
  583. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  584. package/umd/dnb-ui-basis.min.js +1 -1
  585. package/umd/dnb-ui-components.min.js +1 -1
  586. package/umd/dnb-ui-elements.min.js +1 -1
  587. package/umd/dnb-ui-extensions.min.js +2 -2
  588. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"IsolationDocs.js","names":["_ProviderDocs","require","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","IsolationProperties","path","doc","type","status","transformOnCommit","commitHandleRef","ProviderProperties","minimumAsyncBehaviorTime","asyncSubmitTimeout","scrollTopOnSubmit","sessionStorageId","globalStatusId","exports","IsolationEvents","onCommit","ProviderEvents","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.Ref',\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":"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"}
1
+ {"version":3,"file":"IsolationDocs.js","names":["_ProviderDocs","require","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","IsolationProperties","path","doc","type","status","transformOnCommit","commitHandleRef","bubbleValidation","ProviderProperties","minimumAsyncBehaviorTime","asyncSubmitTimeout","scrollTopOnSubmit","sessionStorageId","globalStatusId","exports","IsolationEvents","onCommit","ProviderEvents","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.Ref',\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 ...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":"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"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export type SnapshotId = string | number;
3
+ export type SnapshotName = string;
4
+ export type SnapshotProps = {
5
+ name: SnapshotName;
6
+ children: React.ReactNode;
7
+ };
8
+ declare function SnapshotProvider(props: SnapshotProps): import("react/jsx-runtime").JSX.Element;
9
+ declare namespace SnapshotProvider {
10
+ var _supportsSpacingProps: any;
11
+ }
12
+ export default SnapshotProvider;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _SnapshotContext = _interopRequireDefault(require("./SnapshotContext"));
10
+ var _Context = _interopRequireDefault(require("../../DataContext/Context"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ function SnapshotProvider(props) {
15
+ const {
16
+ name,
17
+ children
18
+ } = props;
19
+ const {
20
+ snapshotsRef
21
+ } = (0, _react.useContext)(_Context.default) || {};
22
+ const mountedFieldsRef = (0, _react.useRef)();
23
+ if (!mountedFieldsRef.current) {
24
+ mountedFieldsRef.current = new Map();
25
+ }
26
+ const setMountedField = (0, _react.useCallback)((path, state) => {
27
+ mountedFieldsRef.current.set(path, state);
28
+ }, []);
29
+ (0, _react.useEffect)(() => {
30
+ if (snapshotsRef) {
31
+ snapshotsRef.current.set(name, mountedFieldsRef.current);
32
+ }
33
+ }, [snapshotsRef, name]);
34
+ const contextValue = {
35
+ name,
36
+ setMountedField
37
+ };
38
+ return _react.default.createElement(_SnapshotContext.default.Provider, {
39
+ value: contextValue
40
+ }, children);
41
+ }
42
+ SnapshotProvider._supportsSpacingProps = undefined;
43
+ var _default = SnapshotProvider;
44
+ exports.default = _default;
45
+ //# sourceMappingURL=Snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Snapshot.js","names":["_react","_interopRequireWildcard","require","_SnapshotContext","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SnapshotProvider","props","name","children","snapshotsRef","useContext","DataContext","mountedFieldsRef","useRef","current","Map","setMountedField","useCallback","path","state","useEffect","contextValue","createElement","Provider","value","_supportsSpacingProps","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/Snapshot.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react'\nimport SnapshotContext, {\n SnapshotContextState,\n SnapshotMap,\n} from './SnapshotContext'\nimport DataContext from '../../DataContext/Context'\n\nexport type SnapshotId = string | number\nexport type SnapshotName = string\n\nexport type SnapshotProps = {\n name: SnapshotName\n children: React.ReactNode\n}\n\nfunction SnapshotProvider(props: SnapshotProps) {\n const { name, children } = props\n\n const { snapshotsRef } = useContext(DataContext) || {}\n const mountedFieldsRef: SnapshotMap = useRef()\n if (!mountedFieldsRef.current) {\n mountedFieldsRef.current = new Map()\n }\n\n const setMountedField: SnapshotContextState['setMountedField'] =\n useCallback((path, state) => {\n mountedFieldsRef.current.set(path, state)\n }, [])\n\n useEffect(() => {\n if (snapshotsRef) {\n snapshotsRef.current.set(name, mountedFieldsRef.current)\n }\n }, [snapshotsRef, name])\n\n const contextValue = { name, setMountedField }\n\n return (\n <SnapshotContext.Provider value={contextValue}>\n {children}\n </SnapshotContext.Provider>\n )\n}\n\nSnapshotProvider._supportsSpacingProps = undefined\n\nexport default SnapshotProvider\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAIA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAmD,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAK,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAUnD,SAASW,gBAAgBA,CAACC,KAAoB,EAAE;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGF,KAAK;EAEhC,MAAM;IAAEG;EAAa,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC,IAAI,CAAC,CAAC;EACtD,MAAMC,gBAA6B,GAAG,IAAAC,aAAM,EAAC,CAAC;EAC9C,IAAI,CAACD,gBAAgB,CAACE,OAAO,EAAE;IAC7BF,gBAAgB,CAACE,OAAO,GAAG,IAAIC,GAAG,CAAC,CAAC;EACtC;EAEA,MAAMC,eAAwD,GAC5D,IAAAC,kBAAW,EAAC,CAACC,IAAI,EAAEC,KAAK,KAAK;IAC3BP,gBAAgB,CAACE,OAAO,CAACV,GAAG,CAACc,IAAI,EAAEC,KAAK,CAAC;EAC3C,CAAC,EAAE,EAAE,CAAC;EAER,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIX,YAAY,EAAE;MAChBA,YAAY,CAACK,OAAO,CAACV,GAAG,CAACG,IAAI,EAAEK,gBAAgB,CAACE,OAAO,CAAC;IAC1D;EACF,CAAC,EAAE,CAACL,YAAY,EAAEF,IAAI,CAAC,CAAC;EAExB,MAAMc,YAAY,GAAG;IAAEd,IAAI;IAAES;EAAgB,CAAC;EAE9C,OACEvC,MAAA,CAAAQ,OAAA,CAAAqC,aAAA,CAAC1C,gBAAA,CAAAK,OAAe,CAACsC,QAAQ;IAACC,KAAK,EAAEH;EAAa,GAC3Cb,QACuB,CAAC;AAE/B;AAEAH,gBAAgB,CAACoB,qBAAqB,GAAGC,SAAS;AAAA,IAAAC,QAAA,GAEnCtB,gBAAgB;AAAAuB,OAAA,CAAA3C,OAAA,GAAA0C,QAAA"}
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { Path } from '../../types';
3
+ import { SnapshotName } from './Snapshot';
4
+ export type SnapshotMap = React.MutableRefObject<Map<Path, unknown>>;
5
+ export type SnapshotContextState = {
6
+ name: SnapshotName;
7
+ setMountedField: (path: Path, { isMounted }: {
8
+ isMounted: boolean;
9
+ }) => void;
10
+ };
11
+ declare const SnapshotContext: import("react").Context<SnapshotContextState>;
12
+ export default SnapshotContext;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = require("react");
9
+ const SnapshotContext = (0, _react.createContext)(null);
10
+ var _default = SnapshotContext;
11
+ exports.default = _default;
12
+ //# sourceMappingURL=SnapshotContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SnapshotContext.js","names":["_react","require","SnapshotContext","createContext","_default","exports","default"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/SnapshotContext.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { Path } from '../../types'\nimport { SnapshotName } from './Snapshot'\n\nexport type SnapshotMap = React.MutableRefObject<Map<Path, unknown>>\n\nexport type SnapshotContextState = {\n name: SnapshotName\n setMountedField: (\n path: Path,\n { isMounted }: { isMounted: boolean }\n ) => void\n}\n\nconst SnapshotContext = createContext<SnapshotContextState>(null)\n\nexport default SnapshotContext\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAcA,MAAMC,eAAe,GAAG,IAAAC,oBAAa,EAAuB,IAAI,CAAC;AAAA,IAAAC,QAAA,GAElDF,eAAe;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -0,0 +1,3 @@
1
+ import { PropertiesTableProps } from '../../../../shared/types';
2
+ export declare const SnapshotProperties: PropertiesTableProps;
3
+ export declare const SnapshotEvents: PropertiesTableProps;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SnapshotProperties = exports.SnapshotEvents = void 0;
7
+ const SnapshotProperties = {
8
+ name: {
9
+ doc: 'A unique name for the sliced snapshot area.',
10
+ type: 'string',
11
+ status: 'optional'
12
+ }
13
+ };
14
+ exports.SnapshotProperties = SnapshotProperties;
15
+ const SnapshotEvents = {};
16
+ exports.SnapshotEvents = SnapshotEvents;
17
+ //# sourceMappingURL=SnapshotDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SnapshotDocs.js","names":["SnapshotProperties","name","doc","type","status","exports","SnapshotEvents"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/SnapshotDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const SnapshotProperties: PropertiesTableProps = {\n name: {\n doc: 'A unique name for the sliced snapshot area.',\n type: 'string',\n status: 'optional',\n },\n}\n\nexport const SnapshotEvents: PropertiesTableProps = {}\n"],"mappings":";;;;;;AAEO,MAAMA,kBAAwC,GAAG;EACtDC,IAAI,EAAE;IACJC,GAAG,EAAE,6CAA6C;IAClDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV;AACF,CAAC;AAAAC,OAAA,CAAAL,kBAAA,GAAAA,kBAAA;AAEM,MAAMM,cAAoC,GAAG,CAAC,CAAC;AAAAD,OAAA,CAAAC,cAAA,GAAAA,cAAA"}
@@ -0,0 +1,2 @@
1
+ export { default } from './Snapshot';
2
+ export * from './Snapshot';
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {};
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _Snapshot.default;
11
+ }
12
+ });
13
+ var _Snapshot = _interopRequireWildcard(require("./Snapshot"));
14
+ Object.keys(_Snapshot).forEach(function (key) {
15
+ if (key === "default" || key === "__esModule") return;
16
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
17
+ if (key in exports && exports[key] === _Snapshot[key]) return;
18
+ Object.defineProperty(exports, key, {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _Snapshot[key];
22
+ }
23
+ });
24
+ });
25
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_Snapshot","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/index.ts"],"sourcesContent":["export { default } from './Snapshot'\nexport * from './Snapshot'\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,uBAAA,CAAAC,OAAA;AACAC,MAAA,CAAAC,IAAA,CAAAJ,SAAA,EAAAK,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAN,SAAA,CAAAM,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAd,SAAA,CAAAM,GAAA;IAAA;EAAA;AAAA;AAA0B,SAAAS,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAf,wBAAAmB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAT,GAAA,CAAAM,GAAA,SAAAK,MAAA,WAAAC,qBAAA,GAAAvB,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAAwB,wBAAA,WAAArB,GAAA,IAAAc,GAAA,QAAAd,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAW,GAAA,EAAAd,GAAA,SAAAsB,IAAA,GAAAF,qBAAA,GAAAvB,MAAA,CAAAwB,wBAAA,CAAAP,GAAA,EAAAd,GAAA,cAAAsB,IAAA,KAAAA,IAAA,CAAAd,GAAA,IAAAc,IAAA,CAAAC,GAAA,KAAA1B,MAAA,CAAAS,cAAA,CAAAa,MAAA,EAAAnB,GAAA,EAAAsB,IAAA,YAAAH,MAAA,CAAAnB,GAAA,IAAAc,GAAA,CAAAd,GAAA,SAAAmB,MAAA,CAAAH,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAM,GAAA,CAAAT,GAAA,EAAAK,MAAA,YAAAA,MAAA"}
@@ -99,7 +99,7 @@ function SubmitConfirmation(props) {
99
99
  };
100
100
  });
101
101
  (0, _react.useMemo)(() => {
102
- if (Object.keys((0, _componentHelper.removeUndefinedProps)(submitState)).length > 0) {
102
+ if (Object.keys((0, _componentHelper.removeUndefinedProps)(submitState) || {}).length > 0) {
103
103
  submitStateRef.current = _objectSpread({}, submitState);
104
104
  onSubmitResult === null || onSubmitResult === void 0 ? void 0 : onSubmitResult(getParamsRef.current());
105
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SubmitConfirmation.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Provider","_components","_componentHelper","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SubmitConfirmation","props","forceUpdate","useReducer","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","setHandleSubmit","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","useContext","DataContext","confirmationStateRef","useRef","submitStateRef","preventSubmitRef","validatePreventSubmit","useCallback","current","getParamsRef","setConfirmationState","state","window","requestAnimationFrame","keepPending","confirmationState","connectWithDialog","openState","onConfirm","submitHandler","onDecline","cancelHandler","onClose","_ref","triggeredBy","data","useMemo","removeUndefinedProps","setFocusOnButton","form","element","querySelector","focus","e","_ref2","preventSubmit","remove","sharedProviderParams","formElement","disabled","createElement","Fragment","HeightAnimation","_supportsSpacingProps","_default","exports"],"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 setHandleSubmit,\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 setHandleSubmit?.(handleSubmit)\n\n const submitHandler = useCallback(async () => {\n setHandleSubmit?.(handleSubmit, { remove: true })\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n handleFinalSubmit,\n handleSubmit,\n setFocusOnButton,\n setHandleSubmit,\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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"}
1
+ {"version":3,"file":"SubmitConfirmation.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Provider","_components","_componentHelper","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SubmitConfirmation","props","forceUpdate","useReducer","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","setHandleSubmit","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","useContext","DataContext","confirmationStateRef","useRef","submitStateRef","preventSubmitRef","validatePreventSubmit","useCallback","current","getParamsRef","setConfirmationState","state","window","requestAnimationFrame","keepPending","confirmationState","connectWithDialog","openState","onConfirm","submitHandler","onDecline","cancelHandler","onClose","_ref","triggeredBy","data","useMemo","removeUndefinedProps","setFocusOnButton","form","element","querySelector","focus","e","_ref2","preventSubmit","remove","sharedProviderParams","formElement","disabled","createElement","Fragment","HeightAnimation","_supportsSpacingProps","_default","exports"],"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 setHandleSubmit,\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 setHandleSubmit?.(handleSubmit)\n\n const submitHandler = useCallback(async () => {\n setHandleSubmit?.(handleSubmit, { remove: true })\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n handleFinalSubmit,\n handleSubmit,\n setFocusOnButton,\n setHandleSubmit,\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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"}
@@ -5,10 +5,18 @@ import type { DataAttributes } from '../../hooks/useFieldProps';
5
5
  import { FilterData } from '../../DataContext';
6
6
  export type VisibleWhen = {
7
7
  path: Path;
8
- hasValue: unknown;
8
+ hasValue: unknown | ((value: unknown) => boolean);
9
9
  } | {
10
10
  itemPath: Path;
11
- hasValue: unknown;
11
+ hasValue: unknown | ((value: unknown) => boolean);
12
+ } | {
13
+ path: Path;
14
+ isValid: boolean;
15
+ continuousValidation?: boolean;
16
+ } | {
17
+ itemPath: Path;
18
+ isValid: boolean;
19
+ continuousValidation?: boolean;
12
20
  }
13
21
  /**
14
22
  * @deprecated Will be removed in v11!
@@ -1 +1 @@
1
- {"version":3,"file":"Visibility.js","names":["_react","_interopRequireDefault","require","_helpers","_useMountEffect","_HeightAnimation","_Provider","_useVisibility","_VisibilityContext","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Visibility","_ref","visible","pathDefined","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","pathValue","whenValue","visibleWhen","visibleWhenNot","inferData","filterData","animate","keepInDOM","compensateForGap","fieldPropsWhenHidden","children","rest","useMountEffect","warn","check","useVisibility","open","content","createElement","Provider","value","isVisible","props","Boolean","className","hidden","Fragment","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/Visibility.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react'\n\nimport { warn } from '../../../../shared/helpers'\nimport useMountEffect from '../../../../shared/helpers/useMountEffect'\nimport HeightAnimation, {\n HeightAnimationProps,\n} from '../../../../components/HeightAnimation'\nimport FieldProvider from '../../Field/Provider'\nimport useVisibility from './useVisibility'\n\nimport type { Path, UseFieldProps } from '../../types'\nimport type { DataAttributes } from '../../hooks/useFieldProps'\nimport { FilterData } from '../../DataContext'\nimport VisibilityContext from './VisibilityContext'\n\nexport type VisibleWhen =\n | {\n path: Path\n hasValue: unknown\n }\n | {\n itemPath: Path\n hasValue: unknown\n }\n /**\n * @deprecated Will be removed in v11!\n */\n | {\n path: Path\n /** @deprecated Use `hasValue` instead */\n withValue: (value: unknown) => boolean\n }\n /**\n * @deprecated Will be removed in v11!\n */\n | {\n itemPath: Path\n /** @deprecated Use `hasValue` instead */\n withValue: (value: unknown) => boolean\n }\n\nexport type Props = {\n visible?: boolean\n /** Given data context path must be defined to show children */\n pathDefined?: Path\n /** Given data context path must be undefined to show children */\n pathUndefined?: Path\n /** Given data context path must be truthy to show children */\n pathTruthy?: Path\n /** Given data context path must be falsy to show children */\n pathFalsy?: Path\n /** Given data context path must be true to show children */\n pathTrue?: Path\n /** Given data context path must be false to show children */\n pathFalse?: Path\n /** Provide a `path` or `itemPath` and a `hasValue` method that returns a boolean or the excepted value in order to show children. The first parameter is the value of the path. */\n visibleWhen?: VisibleWhen\n /** Same as `visibleWhen`, but with inverted logic. */\n visibleWhenNot?: VisibleWhen\n /** Infer visibility calling given derivative function with the whole data set. Should return true/false for visibility. */\n inferData?: (data: unknown) => boolean\n /** Filter data based on provided criteria. The first parameter is the path, the second is the value, and the third is the props, and the fourth is the internal. Return false to filter out the data. */\n filterData?: FilterData\n /** Animate the visibility change */\n animate?: boolean\n /** Keep the content in the DOM, even if it's not visible */\n keepInDOM?: boolean\n /** To compensate for CSS gap between the rows, so animation does not jump during the animation. Provide a CSS unit or `auto`. Defaults to `null`. */\n compensateForGap?: HeightAnimationProps['compensateForGap']\n /** When visibility is hidden, and `keepInDOM` is true, pass these props to the children */\n fieldPropsWhenHidden?: UseFieldProps & DataAttributes & AriaAttributes\n element?: HeightAnimationProps['element']\n children: React.ReactNode\n\n /** @deprecated Use `visibleWhen` instead */\n pathValue?: string\n /** @deprecated Use `visibleWhen` instead */\n whenValue?: unknown\n}\n\nfunction Visibility({\n visible,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n visibleWhen,\n visibleWhenNot,\n inferData,\n filterData,\n animate,\n keepInDOM,\n compensateForGap,\n fieldPropsWhenHidden,\n children,\n ...rest\n}: Props) {\n useMountEffect(() => {\n if (fieldPropsWhenHidden && !keepInDOM) {\n warn('Using \"fieldPropsWhenHidden\" requires \"keepInDOM\" to be true.')\n }\n })\n\n const { check } = useVisibility({\n visible,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n visibleWhen,\n visibleWhenNot,\n inferData,\n filterData,\n })\n const open = check()\n const content = (\n <VisibilityContext.Provider\n value={{\n isVisible: open,\n }}\n >\n {children}\n </VisibilityContext.Provider>\n )\n\n if (animate) {\n const props = !open ? fieldPropsWhenHidden : null\n\n return (\n <HeightAnimation\n open={open}\n keepInDOM={Boolean(keepInDOM)}\n className=\"dnb-forms-visibility\"\n compensateForGap={compensateForGap}\n {...rest}\n >\n <FieldProvider {...props}>{content}</FieldProvider>\n </HeightAnimation>\n )\n }\n\n if (keepInDOM) {\n const props = !open ? fieldPropsWhenHidden : null\n return (\n <span className=\"dnb-forms-visibility\" hidden={!open}>\n <FieldProvider {...props}>{content}</FieldProvider>\n </span>\n )\n }\n\n return <>{open ? content : null}</>\n}\n\nVisibility._supportsSpacingProps = 'children'\nexport default Visibility\n"],"mappings":"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"}
1
+ {"version":3,"file":"Visibility.js","names":["_react","_interopRequireDefault","require","_helpers","_useMountEffect","_HeightAnimation","_Provider","_useVisibility","_VisibilityContext","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Visibility","_ref","visible","pathDefined","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","pathValue","whenValue","visibleWhen","visibleWhenNot","inferData","filterData","animate","keepInDOM","compensateForGap","fieldPropsWhenHidden","children","rest","useMountEffect","warn","check","useVisibility","open","content","createElement","Provider","value","isVisible","props","Boolean","className","hidden","Fragment","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/Visibility.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react'\n\nimport { warn } from '../../../../shared/helpers'\nimport useMountEffect from '../../../../shared/helpers/useMountEffect'\nimport HeightAnimation, {\n HeightAnimationProps,\n} from '../../../../components/HeightAnimation'\nimport FieldProvider from '../../Field/Provider'\nimport useVisibility from './useVisibility'\n\nimport type { Path, UseFieldProps } from '../../types'\nimport type { DataAttributes } from '../../hooks/useFieldProps'\nimport { FilterData } from '../../DataContext'\nimport VisibilityContext from './VisibilityContext'\n\nexport type VisibleWhen =\n | {\n path: Path\n hasValue: unknown | ((value: unknown) => boolean)\n }\n | {\n itemPath: Path\n hasValue: unknown | ((value: unknown) => boolean)\n }\n | {\n path: Path\n isValid: boolean\n continuousValidation?: boolean\n }\n | {\n itemPath: Path\n isValid: boolean\n continuousValidation?: boolean\n }\n\n /**\n * @deprecated Will be removed in v11!\n */\n | {\n path: Path\n /** @deprecated Use `hasValue` instead */\n withValue: (value: unknown) => boolean\n }\n /**\n * @deprecated Will be removed in v11!\n */\n | {\n itemPath: Path\n /** @deprecated Use `hasValue` instead */\n withValue: (value: unknown) => boolean\n }\n\nexport type Props = {\n visible?: boolean\n /** Given data context path must be defined to show children */\n pathDefined?: Path\n /** Given data context path must be undefined to show children */\n pathUndefined?: Path\n /** Given data context path must be truthy to show children */\n pathTruthy?: Path\n /** Given data context path must be falsy to show children */\n pathFalsy?: Path\n /** Given data context path must be true to show children */\n pathTrue?: Path\n /** Given data context path must be false to show children */\n pathFalse?: Path\n /** Provide a `path` or `itemPath` and a `hasValue` method that returns a boolean or the excepted value in order to show children. The first parameter is the value of the path. */\n visibleWhen?: VisibleWhen\n /** Same as `visibleWhen`, but with inverted logic. */\n visibleWhenNot?: VisibleWhen\n /** Infer visibility calling given derivative function with the whole data set. Should return true/false for visibility. */\n inferData?: (data: unknown) => boolean\n /** Filter data based on provided criteria. The first parameter is the path, the second is the value, and the third is the props, and the fourth is the internal. Return false to filter out the data. */\n filterData?: FilterData\n /** Animate the visibility change */\n animate?: boolean\n /** Keep the content in the DOM, even if it's not visible */\n keepInDOM?: boolean\n /** To compensate for CSS gap between the rows, so animation does not jump during the animation. Provide a CSS unit or `auto`. Defaults to `null`. */\n compensateForGap?: HeightAnimationProps['compensateForGap']\n /** When visibility is hidden, and `keepInDOM` is true, pass these props to the children */\n fieldPropsWhenHidden?: UseFieldProps & DataAttributes & AriaAttributes\n element?: HeightAnimationProps['element']\n children: React.ReactNode\n\n /** @deprecated Use `visibleWhen` instead */\n pathValue?: string\n /** @deprecated Use `visibleWhen` instead */\n whenValue?: unknown\n}\n\nfunction Visibility({\n visible,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n visibleWhen,\n visibleWhenNot,\n inferData,\n filterData,\n animate,\n keepInDOM,\n compensateForGap,\n fieldPropsWhenHidden,\n children,\n ...rest\n}: Props) {\n useMountEffect(() => {\n if (fieldPropsWhenHidden && !keepInDOM) {\n warn('Using \"fieldPropsWhenHidden\" requires \"keepInDOM\" to be true.')\n }\n })\n\n const { check } = useVisibility({\n visible,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n visibleWhen,\n visibleWhenNot,\n inferData,\n filterData,\n })\n const open = check()\n const content = (\n <VisibilityContext.Provider\n value={{\n isVisible: open,\n }}\n >\n {children}\n </VisibilityContext.Provider>\n )\n\n if (animate) {\n const props = !open ? fieldPropsWhenHidden : null\n\n return (\n <HeightAnimation\n open={open}\n keepInDOM={Boolean(keepInDOM)}\n className=\"dnb-forms-visibility\"\n compensateForGap={compensateForGap}\n {...rest}\n >\n <FieldProvider {...props}>{content}</FieldProvider>\n </HeightAnimation>\n )\n }\n\n if (keepInDOM) {\n const props = !open ? fieldPropsWhenHidden : null\n return (\n <span className=\"dnb-forms-visibility\" hidden={!open}>\n <FieldProvider {...props}>{content}</FieldProvider>\n </span>\n )\n }\n\n return <>{open ? content : null}</>\n}\n\nVisibility._supportsSpacingProps = 'children'\nexport default Visibility\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,gBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAGA,IAAAI,SAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,cAAA,GAAAN,sBAAA,CAAAC,OAAA;AAKA,IAAAM,kBAAA,GAAAP,sBAAA,CAAAC,OAAA;AAAmD,MAAAO,SAAA;AAAA,SAAAR,uBAAAS,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAAA,SAAAQ,yBAAAN,MAAA,EAAAO,QAAA,QAAAP,MAAA,yBAAAJ,MAAA,GAAAY,6BAAA,CAAAR,MAAA,EAAAO,QAAA,OAAAN,GAAA,EAAAJ,CAAA,MAAAJ,MAAA,CAAAgB,qBAAA,QAAAC,gBAAA,GAAAjB,MAAA,CAAAgB,qBAAA,CAAAT,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAa,gBAAA,CAAAX,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAS,gBAAA,CAAAb,CAAA,OAAAU,QAAA,CAAAI,OAAA,CAAAV,GAAA,uBAAAR,MAAA,CAAAS,SAAA,CAAAU,oBAAA,CAAAR,IAAA,CAAAJ,MAAA,EAAAC,GAAA,aAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAL,MAAA;AAAA,SAAAY,8BAAAR,MAAA,EAAAO,QAAA,QAAAP,MAAA,yBAAAJ,MAAA,WAAAiB,UAAA,GAAApB,MAAA,CAAAqB,IAAA,CAAAd,MAAA,OAAAC,GAAA,EAAAJ,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAgB,UAAA,CAAAd,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAY,UAAA,CAAAhB,CAAA,OAAAU,QAAA,CAAAI,OAAA,CAAAV,GAAA,kBAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAL,MAAA;AA8EnD,SAASmB,UAAUA,CAAAC,IAAA,EAoBT;EAAA,IApBU;MAClBC,OAAO;MACPC,WAAW;MACXC,aAAa;MACbC,UAAU;MACVC,SAAS;MACTC,QAAQ;MACRC,SAAS;MACTC,SAAS;MACTC,SAAS;MACTC,WAAW;MACXC,cAAc;MACdC,SAAS;MACTC,UAAU;MACVC,OAAO;MACPC,SAAS;MACTC,gBAAgB;MAChBC,oBAAoB;MACpBC;IAEK,CAAC,GAAAlB,IAAA;IADHmB,IAAI,GAAA7B,wBAAA,CAAAU,IAAA,EAAA5B,SAAA;EAEP,IAAAgD,uBAAc,EAAC,MAAM;IACnB,IAAIH,oBAAoB,IAAI,CAACF,SAAS,EAAE;MACtC,IAAAM,aAAI,EAAC,+DAA+D,CAAC;IACvE;EACF,CAAC,CAAC;EAEF,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,sBAAa,EAAC;IAC9BtB,OAAO;IACPC,WAAW;IACXC,aAAa;IACbC,UAAU;IACVC,SAAS;IACTC,QAAQ;IACRC,SAAS;IACTC,SAAS;IACTC,SAAS;IACTC,WAAW;IACXC,cAAc;IACdC,SAAS;IACTC;EACF,CAAC,CAAC;EACF,MAAMW,IAAI,GAAGF,KAAK,CAAC,CAAC;EACpB,MAAMG,OAAO,GACX9D,MAAA,CAAAY,OAAA,CAAAmD,aAAA,CAACvD,kBAAA,CAAAI,OAAiB,CAACoD,QAAQ;IACzBC,KAAK,EAAE;MACLC,SAAS,EAAEL;IACb;EAAE,GAEDN,QACyB,CAC7B;EAED,IAAIJ,OAAO,EAAE;IACX,MAAMgB,KAAK,GAAG,CAACN,IAAI,GAAGP,oBAAoB,GAAG,IAAI;IAEjD,OACEtD,MAAA,CAAAY,OAAA,CAAAmD,aAAA,CAAC1D,gBAAA,CAAAO,OAAe,EAAAC,QAAA;MACdgD,IAAI,EAAEA,IAAK;MACXT,SAAS,EAAEgB,OAAO,CAAChB,SAAS,CAAE;MAC9BiB,SAAS,EAAC,sBAAsB;MAChChB,gBAAgB,EAAEA;IAAiB,GAC/BG,IAAI,GAERxD,MAAA,CAAAY,OAAA,CAAAmD,aAAA,CAACzD,SAAA,CAAAM,OAAa,EAAKuD,KAAK,EAAGL,OAAuB,CACnC,CAAC;EAEtB;EAEA,IAAIV,SAAS,EAAE;IACb,MAAMe,KAAK,GAAG,CAACN,IAAI,GAAGP,oBAAoB,GAAG,IAAI;IACjD,OACEtD,MAAA,CAAAY,OAAA,CAAAmD,aAAA;MAAMM,SAAS,EAAC,sBAAsB;MAACC,MAAM,EAAE,CAACT;IAAK,GACnD7D,MAAA,CAAAY,OAAA,CAAAmD,aAAA,CAACzD,SAAA,CAAAM,OAAa,EAAKuD,KAAK,EAAGL,OAAuB,CAC9C,CAAC;EAEX;EAEA,OAAO9D,MAAA,CAAAY,OAAA,CAAAmD,aAAA,CAAA/D,MAAA,CAAAY,OAAA,CAAA2D,QAAA,QAAGV,IAAI,GAAGC,OAAO,GAAG,IAAO,CAAC;AACrC;AAEA1B,UAAU,CAACoC,qBAAqB,GAAG,UAAU;AAAA,IAAAC,QAAA,GAC9BrC,UAAU;AAAAsC,OAAA,CAAA9D,OAAA,GAAA6D,QAAA"}
@@ -5,6 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.VisibilityProperties = void 0;
7
7
  const VisibilityProperties = {
8
+ visibleWhen: {
9
+ doc: 'Provide a `path` or `itemPath` and a `hasValue` method that returns a boolean or the excepted value in order to show children. The first parameter is the value of the path. You can also use `isValid` instead of `hasValue` to only show the children when the field has no errors and has lost focus (blurred). You can change that behavior by using the `continuousValidation` property.',
10
+ type: 'object',
11
+ status: 'optional'
12
+ },
13
+ visibleWhenNot: {
14
+ doc: 'Same as `visibleWhen`, but with inverted logic.',
15
+ type: 'object',
16
+ status: 'optional'
17
+ },
8
18
  pathDefined: {
9
19
  doc: 'Given data context path must be defined to show children.',
10
20
  type: 'string',
@@ -35,16 +45,6 @@ const VisibilityProperties = {
35
45
  type: 'string',
36
46
  status: 'optional'
37
47
  },
38
- visibleWhen: {
39
- doc: 'Provide a `path` or `itemPath` and a `hasValue` method that returns a boolean or the excepted value in order to show children. The first parameter is the value of the path.',
40
- type: 'object',
41
- status: 'optional'
42
- },
43
- visibleWhenNot: {
44
- doc: 'Same as `visibleWhen`, but with inverted logic.',
45
- type: 'object',
46
- status: 'optional'
47
- },
48
48
  inferData: {
49
49
  doc: 'Will be called to decide by external logic, and show/hide contents based on the return value.',
50
50
  type: 'function',
@@ -1 +1 @@
1
- {"version":3,"file":"VisibilityDocs.js","names":["VisibilityProperties","pathDefined","doc","type","status","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","visibleWhen","visibleWhenNot","inferData","visible","animate","keepInDOM","compensateForGap","filterData","fieldPropsWhenHidden","element","children","exports"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/VisibilityDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const VisibilityProperties: PropertiesTableProps = {\n pathDefined: {\n doc: 'Given data context path must be defined to show children.',\n type: 'string',\n status: 'optional',\n },\n pathUndefined: {\n doc: 'Given data context path must be undefined to show children.',\n type: 'string',\n status: 'optional',\n },\n pathTruthy: {\n doc: 'Given data context path must be truthy to show children.',\n type: 'string',\n status: 'optional',\n },\n pathFalsy: {\n doc: 'Given data context path must be falsy to show children.',\n type: 'string',\n status: 'optional',\n },\n pathTrue: {\n doc: 'Given data context path must be true to show children.',\n type: 'string',\n status: 'optional',\n },\n pathFalse: {\n doc: 'Given data context path must be false to show children.',\n type: 'string',\n status: 'optional',\n },\n visibleWhen: {\n doc: 'Provide a `path` or `itemPath` and a `hasValue` method that returns a boolean or the excepted value in order to show children. The first parameter is the value of the path.',\n type: 'object',\n status: 'optional',\n },\n visibleWhenNot: {\n doc: 'Same as `visibleWhen`, but with inverted logic.',\n type: 'object',\n status: 'optional',\n },\n inferData: {\n doc: 'Will be called to decide by external logic, and show/hide contents based on the return value.',\n type: 'function',\n status: 'optional',\n },\n visible: {\n doc: 'Control visibility directly using the `visible` prop. When used alongside other conditions, the `visible` prop takes precedence.',\n type: 'boolean',\n status: 'optional',\n },\n animate: {\n doc: 'Define if the content should animate during show/hide.',\n type: 'boolean',\n status: 'optional',\n },\n keepInDOM: {\n doc: \"Keep the content in the DOM, even if it's not visible. Can be used to let fields run validation.\",\n type: 'boolean',\n status: 'optional',\n },\n compensateForGap: {\n doc: 'To compensate for CSS gap between the rows, so animation does not jump during the animation. Provide a CSS unit or `auto`. Defaults to `null`.',\n type: 'string',\n status: 'optional',\n },\n filterData: {\n doc: 'Filter data based on provided criteria. More info about `filterData` can be found in the [Getting Started](/uilib/extensions/forms/getting-started/#filter-data) documentation.',\n type: ['object', 'function'],\n status: 'optional',\n },\n fieldPropsWhenHidden: {\n doc: 'When visibility is hidden, and `keepInDOM` is true, pass these props to the children.',\n type: 'various',\n status: 'optional',\n },\n element: {\n doc: 'Define the type of element. Defaults to `div`. Only for when `animate` is true.',\n type: 'string or React.Element',\n status: 'optional',\n },\n children: {\n doc: 'Contents.',\n type: 'React.Node',\n status: 'required',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,oBAA0C,GAAG;EACxDC,WAAW,EAAE;IACXC,GAAG,EAAE,2DAA2D;IAChEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,aAAa,EAAE;IACbH,GAAG,EAAE,6DAA6D;IAClEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,UAAU,EAAE;IACVJ,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,SAAS,EAAE;IACTL,GAAG,EAAE,yDAAyD;IAC9DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,QAAQ,EAAE;IACRN,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,SAAS,EAAE;IACTP,GAAG,EAAE,yDAAyD;IAC9DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDM,WAAW,EAAE;IACXR,GAAG,EAAE,8KAA8K;IACnLC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,cAAc,EAAE;IACdT,GAAG,EAAE,iDAAiD;IACtDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,SAAS,EAAE;IACTV,GAAG,EAAE,+FAA+F;IACpGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDS,OAAO,EAAE;IACPX,GAAG,EAAE,kIAAkI;IACvIC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,OAAO,EAAE;IACPZ,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,SAAS,EAAE;IACTb,GAAG,EAAE,kGAAkG;IACvGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDY,gBAAgB,EAAE;IAChBd,GAAG,EAAE,gJAAgJ;IACrJC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDa,UAAU,EAAE;IACVf,GAAG,EAAE,iLAAiL;IACtLC,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC5BC,MAAM,EAAE;EACV,CAAC;EACDc,oBAAoB,EAAE;IACpBhB,GAAG,EAAE,uFAAuF;IAC5FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDe,OAAO,EAAE;IACPjB,GAAG,EAAE,iFAAiF;IACtFC,IAAI,EAAE,yBAAyB;IAC/BC,MAAM,EAAE;EACV,CAAC;EACDgB,QAAQ,EAAE;IACRlB,GAAG,EAAE,WAAW;IAChBC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV;AACF,CAAC;AAAAiB,OAAA,CAAArB,oBAAA,GAAAA,oBAAA"}
1
+ {"version":3,"file":"VisibilityDocs.js","names":["VisibilityProperties","visibleWhen","doc","type","status","visibleWhenNot","pathDefined","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","inferData","visible","animate","keepInDOM","compensateForGap","filterData","fieldPropsWhenHidden","element","children","exports"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/VisibilityDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const VisibilityProperties: PropertiesTableProps = {\n visibleWhen: {\n doc: 'Provide a `path` or `itemPath` and a `hasValue` method that returns a boolean or the excepted value in order to show children. The first parameter is the value of the path. You can also use `isValid` instead of `hasValue` to only show the children when the field has no errors and has lost focus (blurred). You can change that behavior by using the `continuousValidation` property.',\n type: 'object',\n status: 'optional',\n },\n visibleWhenNot: {\n doc: 'Same as `visibleWhen`, but with inverted logic.',\n type: 'object',\n status: 'optional',\n },\n pathDefined: {\n doc: 'Given data context path must be defined to show children.',\n type: 'string',\n status: 'optional',\n },\n pathUndefined: {\n doc: 'Given data context path must be undefined to show children.',\n type: 'string',\n status: 'optional',\n },\n pathTruthy: {\n doc: 'Given data context path must be truthy to show children.',\n type: 'string',\n status: 'optional',\n },\n pathFalsy: {\n doc: 'Given data context path must be falsy to show children.',\n type: 'string',\n status: 'optional',\n },\n pathTrue: {\n doc: 'Given data context path must be true to show children.',\n type: 'string',\n status: 'optional',\n },\n pathFalse: {\n doc: 'Given data context path must be false to show children.',\n type: 'string',\n status: 'optional',\n },\n inferData: {\n doc: 'Will be called to decide by external logic, and show/hide contents based on the return value.',\n type: 'function',\n status: 'optional',\n },\n visible: {\n doc: 'Control visibility directly using the `visible` prop. When used alongside other conditions, the `visible` prop takes precedence.',\n type: 'boolean',\n status: 'optional',\n },\n animate: {\n doc: 'Define if the content should animate during show/hide.',\n type: 'boolean',\n status: 'optional',\n },\n keepInDOM: {\n doc: \"Keep the content in the DOM, even if it's not visible. Can be used to let fields run validation.\",\n type: 'boolean',\n status: 'optional',\n },\n compensateForGap: {\n doc: 'To compensate for CSS gap between the rows, so animation does not jump during the animation. Provide a CSS unit or `auto`. Defaults to `null`.',\n type: 'string',\n status: 'optional',\n },\n filterData: {\n doc: 'Filter data based on provided criteria. More info about `filterData` can be found in the [Getting Started](/uilib/extensions/forms/getting-started/#filter-data) documentation.',\n type: ['object', 'function'],\n status: 'optional',\n },\n fieldPropsWhenHidden: {\n doc: 'When visibility is hidden, and `keepInDOM` is true, pass these props to the children.',\n type: 'various',\n status: 'optional',\n },\n element: {\n doc: 'Define the type of element. Defaults to `div`. Only for when `animate` is true.',\n type: 'string or React.Element',\n status: 'optional',\n },\n children: {\n doc: 'Contents.',\n type: 'React.Node',\n status: 'required',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,oBAA0C,GAAG;EACxDC,WAAW,EAAE;IACXC,GAAG,EAAE,+XAA+X;IACpYC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,cAAc,EAAE;IACdH,GAAG,EAAE,iDAAiD;IACtDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,WAAW,EAAE;IACXJ,GAAG,EAAE,2DAA2D;IAChEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,aAAa,EAAE;IACbL,GAAG,EAAE,6DAA6D;IAClEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,UAAU,EAAE;IACVN,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,SAAS,EAAE;IACTP,GAAG,EAAE,yDAAyD;IAC9DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDM,QAAQ,EAAE;IACRR,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,SAAS,EAAE;IACTT,GAAG,EAAE,yDAAyD;IAC9DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,SAAS,EAAE;IACTV,GAAG,EAAE,+FAA+F;IACpGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDS,OAAO,EAAE;IACPX,GAAG,EAAE,kIAAkI;IACvIC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,OAAO,EAAE;IACPZ,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,SAAS,EAAE;IACTb,GAAG,EAAE,kGAAkG;IACvGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDY,gBAAgB,EAAE;IAChBd,GAAG,EAAE,gJAAgJ;IACrJC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDa,UAAU,EAAE;IACVf,GAAG,EAAE,iLAAiL;IACtLC,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC5BC,MAAM,EAAE;EACV,CAAC;EACDc,oBAAoB,EAAE;IACpBhB,GAAG,EAAE,uFAAuF;IAC5FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDe,OAAO,EAAE;IACPjB,GAAG,EAAE,iFAAiF;IACtFC,IAAI,EAAE,yBAAyB;IAC/BC,MAAM,EAAE;EACV,CAAC;EACDgB,QAAQ,EAAE;IACRlB,GAAG,EAAE,WAAW;IAChBC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV;AACF,CAAC;AAAAiB,OAAA,CAAArB,oBAAA,GAAAA,oBAAA"}
@@ -12,7 +12,9 @@ var _usePath = _interopRequireDefault(require("../../hooks/usePath"));
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
  function useVisibility(props) {
14
14
  const {
15
+ hasFieldError,
15
16
  filterDataHandler,
17
+ mountedFieldsRef,
16
18
  data: originalData
17
19
  } = (0, _react.useContext)(_Context.default);
18
20
  const {
@@ -46,24 +48,34 @@ function useVisibility(props) {
46
48
  visibleWhen = visibleWhenNot;
47
49
  }
48
50
  const path = 'itemPath' in visibleWhen ? makeIteratePath(visibleWhen.itemPath) : makePath(visibleWhen.path);
49
- const hasPath = _jsonPointer.default.has(data, path);
50
- if (hasPath) {
51
- var _visibleWhen, _visibleWhen$hasValue, _visibleWhen2, _visibleWhen3;
52
- const value = _jsonPointer.default.get(data, path);
53
- if ((_visibleWhen = visibleWhen) !== null && _visibleWhen !== void 0 && _visibleWhen['withValue']) {
54
- console.warn('VisibleWhen: "withValue" is deprecated, use "hasValue" instead');
51
+ if ('isValid' in visibleWhen) {
52
+ const item = mountedFieldsRef.current[path];
53
+ if (!item || item.isMounted !== true) {
54
+ return visibleWhenNot ? true : false;
55
55
  }
56
- const hasValue = (_visibleWhen$hasValue = (_visibleWhen2 = visibleWhen) === null || _visibleWhen2 === void 0 ? void 0 : _visibleWhen2['hasValue']) !== null && _visibleWhen$hasValue !== void 0 ? _visibleWhen$hasValue : (_visibleWhen3 = visibleWhen) === null || _visibleWhen3 === void 0 ? void 0 : _visibleWhen3['withValue'];
57
- const result = typeof hasValue === 'function' ? hasValue(value) === false : hasValue !== value;
58
- if (visibleWhenNot) {
59
- if (!result) {
56
+ const result = (visibleWhen.continuousValidation ? true : item.isFocused !== true) && hasFieldError(path) === false;
57
+ return visibleWhenNot ? !result : result;
58
+ }
59
+ if ('hasValue' in visibleWhen || 'withValue' in visibleWhen) {
60
+ const hasPath = _jsonPointer.default.has(data, path);
61
+ if (hasPath) {
62
+ var _visibleWhen, _visibleWhen$hasValue, _visibleWhen2, _visibleWhen3;
63
+ const value = _jsonPointer.default.get(data, path);
64
+ if ((_visibleWhen = visibleWhen) !== null && _visibleWhen !== void 0 && _visibleWhen['withValue']) {
65
+ console.warn('VisibleWhen: "withValue" is deprecated, use "hasValue" instead');
66
+ }
67
+ const hasValue = (_visibleWhen$hasValue = (_visibleWhen2 = visibleWhen) === null || _visibleWhen2 === void 0 ? void 0 : _visibleWhen2['hasValue']) !== null && _visibleWhen$hasValue !== void 0 ? _visibleWhen$hasValue : (_visibleWhen3 = visibleWhen) === null || _visibleWhen3 === void 0 ? void 0 : _visibleWhen3['withValue'];
68
+ const result = typeof hasValue === 'function' ? hasValue(value) === false : hasValue !== value;
69
+ if (visibleWhenNot) {
70
+ if (!result) {
71
+ return false;
72
+ }
73
+ } else if (result) {
60
74
  return false;
61
75
  }
62
- } else if (result) {
76
+ } else {
63
77
  return false;
64
78
  }
65
- } else {
66
- return false;
67
79
  }
68
80
  }
69
81
  if (pathDefined && !_jsonPointer.default.has(data, makePath(pathDefined))) {
@@ -96,7 +108,7 @@ function useVisibility(props) {
96
108
  return false;
97
109
  }
98
110
  return true;
99
- }, [filterDataHandler, originalData, makePath, makeIteratePath]);
111
+ }, [filterDataHandler, originalData, makePath, makeIteratePath, mountedFieldsRef, hasFieldError]);
100
112
  return {
101
113
  check
102
114
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useVisibility.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_Context","_usePath","obj","__esModule","default","useVisibility","props","filterDataHandler","data","originalData","useContext","DataContext","makePath","makeIteratePath","usePath","propsRef","useRef","current","check","useCallback","visible","visibleWhen","visibleWhenNot","pathDefined","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","pathValue","whenValue","inferData","filterData","arguments","length","undefined","path","itemPath","hasPath","pointer","has","_visibleWhen","_visibleWhen$hasValue","_visibleWhen2","_visibleWhen3","value","get","console","warn","hasValue","result","getValue","Boolean"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/useVisibility.tsx"],"sourcesContent":["import { useCallback, useContext, useRef } from 'react'\nimport pointer from '../../utils/json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport usePath from '../../hooks/usePath'\nimport { Path } from '../../types'\nimport { Props } from './Visibility'\n\nexport type { Props }\n\nexport default function useVisibility(props?: Partial<Props>) {\n const { filterDataHandler, data: originalData } = useContext(DataContext)\n\n const { makePath, makeIteratePath } = usePath()\n\n // Forward props to the \"check\" method with ref to avoid infinite loop\n const propsRef = useRef(props)\n propsRef.current = props\n\n const check = useCallback(\n (\n {\n visible,\n visibleWhen,\n visibleWhenNot,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n inferData,\n filterData,\n }: Partial<Props> = propsRef.current\n ) => {\n if (typeof visible === 'boolean') {\n return visible\n }\n\n const data =\n (filterData && filterDataHandler?.(originalData, filterData)) ||\n originalData\n\n if (visibleWhen || visibleWhenNot) {\n if (visibleWhenNot) {\n visibleWhen = visibleWhenNot\n }\n\n const path =\n 'itemPath' in visibleWhen\n ? makeIteratePath(visibleWhen.itemPath)\n : makePath(visibleWhen.path)\n const hasPath = pointer.has(data, path)\n\n if (hasPath) {\n const value = pointer.get(data, path)\n\n if (visibleWhen?.['withValue']) {\n console.warn(\n 'VisibleWhen: \"withValue\" is deprecated, use \"hasValue\" instead'\n )\n }\n\n const hasValue =\n visibleWhen?.['hasValue'] ?? visibleWhen?.['withValue']\n const result =\n typeof hasValue === 'function'\n ? hasValue(value) === false\n : hasValue !== value\n\n if (visibleWhenNot) {\n if (!result) {\n return false\n }\n } else if (result) {\n return false\n }\n } else {\n return false\n }\n }\n\n if (pathDefined && !pointer.has(data, makePath(pathDefined))) {\n return false\n }\n if (pathUndefined && pointer.has(data, makePath(pathUndefined))) {\n return false\n }\n\n const getValue = (path: Path) => {\n if (pointer.has(data, path)) {\n return pointer.get(data, path)\n }\n }\n\n if (pathTrue && getValue(makePath(pathTrue)) !== true) {\n return false\n }\n if (pathFalse && getValue(makePath(pathFalse)) !== false) {\n return false\n }\n if (\n pathTruthy &&\n Boolean(getValue(makePath(pathTruthy))) === false\n ) {\n return false\n }\n if (pathFalsy && Boolean(getValue(makePath(pathFalsy))) === true) {\n return false\n }\n if (inferData && !inferData(data)) {\n return false\n }\n\n // Deprecated can be removed in v11\n if (pathValue && getValue(makePath(pathValue)) !== whenValue) {\n return false\n }\n\n return true\n },\n [filterDataHandler, originalData, makePath, makeIteratePath]\n )\n\n return { check }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useVisibility.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_Context","_usePath","obj","__esModule","default","useVisibility","props","hasFieldError","filterDataHandler","mountedFieldsRef","data","originalData","useContext","DataContext","makePath","makeIteratePath","usePath","propsRef","useRef","current","check","useCallback","visible","visibleWhen","visibleWhenNot","pathDefined","pathUndefined","pathTruthy","pathFalsy","pathTrue","pathFalse","pathValue","whenValue","inferData","filterData","arguments","length","undefined","path","itemPath","item","isMounted","result","continuousValidation","isFocused","hasPath","pointer","has","_visibleWhen","_visibleWhen$hasValue","_visibleWhen2","_visibleWhen3","value","get","console","warn","hasValue","getValue","Boolean"],"sources":["../../../../../../src/extensions/forms/Form/Visibility/useVisibility.tsx"],"sourcesContent":["import { useCallback, useContext, useRef } from 'react'\nimport pointer from '../../utils/json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport usePath from '../../hooks/usePath'\nimport { Path } from '../../types'\nimport { Props } from './Visibility'\n\nexport type { Props }\n\nexport default function useVisibility(props?: Partial<Props>) {\n const {\n hasFieldError,\n filterDataHandler,\n mountedFieldsRef,\n data: originalData,\n } = useContext(DataContext)\n\n const { makePath, makeIteratePath } = usePath()\n\n // Forward props to the \"check\" method with ref to avoid infinite loop\n const propsRef = useRef(props)\n propsRef.current = props\n\n const check = useCallback(\n (\n {\n visible,\n visibleWhen,\n visibleWhenNot,\n pathDefined,\n pathUndefined,\n pathTruthy,\n pathFalsy,\n pathTrue,\n pathFalse,\n pathValue,\n whenValue,\n inferData,\n filterData,\n }: Partial<Props> = propsRef.current\n ) => {\n if (typeof visible === 'boolean') {\n return visible\n }\n\n const data =\n (filterData && filterDataHandler?.(originalData, filterData)) ||\n originalData\n\n if (visibleWhen || visibleWhenNot) {\n if (visibleWhenNot) {\n visibleWhen = visibleWhenNot\n }\n\n const path =\n 'itemPath' in visibleWhen\n ? makeIteratePath(visibleWhen.itemPath)\n : makePath(visibleWhen.path)\n\n if ('isValid' in visibleWhen) {\n const item = mountedFieldsRef.current[path]\n if (!item || item.isMounted !== true) {\n return visibleWhenNot ? true : false\n }\n const result =\n (visibleWhen.continuousValidation\n ? true\n : item.isFocused !== true) && hasFieldError(path) === false\n return visibleWhenNot ? !result : result\n }\n\n if ('hasValue' in visibleWhen || 'withValue' in visibleWhen) {\n const hasPath = pointer.has(data, path)\n\n if (hasPath) {\n const value = pointer.get(data, path)\n\n if (visibleWhen?.['withValue']) {\n console.warn(\n 'VisibleWhen: \"withValue\" is deprecated, use \"hasValue\" instead'\n )\n }\n\n const hasValue =\n visibleWhen?.['hasValue'] ?? visibleWhen?.['withValue']\n const result =\n typeof hasValue === 'function'\n ? hasValue(value) === false\n : hasValue !== value\n\n if (visibleWhenNot) {\n if (!result) {\n return false\n }\n } else if (result) {\n return false\n }\n } else {\n return false\n }\n }\n }\n\n if (pathDefined && !pointer.has(data, makePath(pathDefined))) {\n return false\n }\n if (pathUndefined && pointer.has(data, makePath(pathUndefined))) {\n return false\n }\n\n const getValue = (path: Path) => {\n if (pointer.has(data, path)) {\n return pointer.get(data, path)\n }\n }\n\n if (pathTrue && getValue(makePath(pathTrue)) !== true) {\n return false\n }\n if (pathFalse && getValue(makePath(pathFalse)) !== false) {\n return false\n }\n if (\n pathTruthy &&\n Boolean(getValue(makePath(pathTruthy))) === false\n ) {\n return false\n }\n if (pathFalsy && Boolean(getValue(makePath(pathFalsy))) === true) {\n return false\n }\n if (inferData && !inferData(data)) {\n return false\n }\n\n // Deprecated can be removed in v11\n if (pathValue && getValue(makePath(pathValue)) !== whenValue) {\n return false\n }\n\n return true\n },\n [\n filterDataHandler,\n originalData,\n makePath,\n makeIteratePath,\n mountedFieldsRef,\n hasFieldError,\n ]\n )\n\n return { check }\n}\n"],"mappings":"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"}
@@ -6,11 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = clearData;
7
7
  var _useSharedState = require("../../../../shared/helpers/useSharedState");
8
8
  function clearData(id) {
9
+ var _sharedAttachments$da, _sharedAttachments$da2;
9
10
  const sharedAttachments = (0, _useSharedState.createSharedState)(id + '-attachments');
10
- sharedAttachments.set({});
11
- const sharedData = (0, _useSharedState.createSharedState)(id);
12
- sharedData.update({
13
- clearForm: true
14
- });
11
+ (_sharedAttachments$da = (_sharedAttachments$da2 = sharedAttachments.data).clearData) === null || _sharedAttachments$da === void 0 ? void 0 : _sharedAttachments$da.call(_sharedAttachments$da2);
15
12
  }
16
13
  //# sourceMappingURL=clearData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clearData.js","names":["_useSharedState","require","clearData","id","sharedAttachments","createSharedState","set","sharedData","update","clearForm"],"sources":["../../../../../../src/extensions/forms/Form/data-context/clearData.ts"],"sourcesContent":["import { createSharedState } from '../../../../shared/helpers/useSharedState'\n\nexport default function clearData(id: string) {\n const sharedAttachments = createSharedState(id + '-attachments')\n sharedAttachments.set({})\n\n const sharedData = createSharedState(id)\n sharedData.update({ clearForm: true })\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEe,SAASC,SAASA,CAACC,EAAU,EAAE;EAC5C,MAAMC,iBAAiB,GAAG,IAAAC,iCAAiB,EAACF,EAAE,GAAG,cAAc,CAAC;EAChEC,iBAAiB,CAACE,GAAG,CAAC,CAAC,CAAC,CAAC;EAEzB,MAAMC,UAAU,GAAG,IAAAF,iCAAiB,EAACF,EAAE,CAAC;EACxCI,UAAU,CAACC,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAK,CAAC,CAAC;AACxC"}
1
+ {"version":3,"file":"clearData.js","names":["_useSharedState","require","clearData","id","_sharedAttachments$da","_sharedAttachments$da2","sharedAttachments","createSharedState","data","call"],"sources":["../../../../../../src/extensions/forms/Form/data-context/clearData.ts"],"sourcesContent":["import { createSharedState } from '../../../../shared/helpers/useSharedState'\nimport { SharedAttachments } from '../../DataContext/Provider'\n\nexport default function clearData(id: string) {\n const sharedAttachments = createSharedState<SharedAttachments<unknown>>(\n id + '-attachments'\n )\n sharedAttachments.data.clearData?.()\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAGe,SAASC,SAASA,CAACC,EAAU,EAAE;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EAC5C,MAAMC,iBAAiB,GAAG,IAAAC,iCAAiB,EACzCJ,EAAE,GAAG,cACP,CAAC;EACD,CAAAC,qBAAA,IAAAC,sBAAA,GAAAC,iBAAiB,CAACE,IAAI,EAACN,SAAS,cAAAE,qBAAA,uBAAhCA,qBAAA,CAAAK,IAAA,CAAAJ,sBAAmC,CAAC;AACtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getData.js","names":["_jsonPointer","_interopRequireDefault","require","_useSharedState","obj","__esModule","default","getData","id","sharedState","createSharedState","sharedAttachments","data","get","filterData","filter","_sharedAttachments$da","_sharedAttachments$da2","filterDataHandler","call","reduceToVisibleFields","options","_sharedAttachments$da3","_sharedAttachments$da4","visibleDataHandler","getValue","path","pointer","has","undefined"],"sources":["../../../../../../src/extensions/forms/Form/data-context/getData.tsx"],"sourcesContent":["import pointer from '../../utils/json-pointer'\nimport {\n SharedStateId,\n createSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport type {\n FilterDataHandler,\n VisibleDataHandler,\n} from '../../DataContext/Context'\nimport type { Path } from '../../types'\nimport type {\n UseDataReturnGetValue,\n UseDataReturnFilterData,\n UseDataReturnVisibleData,\n} from './useData'\n\ntype SharedAttachment<Data> = {\n filterDataHandler: FilterDataHandler<Data>\n visibleDataHandler?: VisibleDataHandler<Data>\n}\n\ntype SetDataReturn<Data> = {\n data: Data\n getValue: UseDataReturnGetValue<Data>\n filterData: UseDataReturnFilterData<Data>\n reduceToVisibleFields: UseDataReturnVisibleData<Data>\n}\n\nexport default function getData<Data>(\n id: SharedStateId\n): SetDataReturn<Data> {\n const sharedState = createSharedState(id)\n const sharedAttachments = createSharedState<SharedAttachment<Data>>(\n id + '-attachments'\n )\n\n const data = sharedState.get() as Data\n\n const filterData: SetDataReturn<Data>['filterData'] = (filter) =>\n sharedAttachments.data?.filterDataHandler?.(data, filter)\n\n const reduceToVisibleFields: SetDataReturn<Data>['reduceToVisibleFields'] =\n (data, options) =>\n sharedAttachments.data?.visibleDataHandler?.(data, options)\n\n const getValue = (path: Path) => {\n if (pointer.has(data, path)) {\n return pointer.get(data, path)\n }\n\n return undefined\n }\n\n return {\n data,\n getValue,\n filterData,\n reduceToVisibleFields,\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAGkD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAwBnC,SAASG,OAAOA,CAC7BC,EAAiB,EACI;EACrB,MAAMC,WAAW,GAAG,IAAAC,iCAAiB,EAACF,EAAE,CAAC;EACzC,MAAMG,iBAAiB,GAAG,IAAAD,iCAAiB,EACzCF,EAAE,GAAG,cACP,CAAC;EAED,MAAMI,IAAI,GAAGH,WAAW,CAACI,GAAG,CAAC,CAAS;EAEtC,MAAMC,UAA6C,GAAIC,MAAM;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IAAA,QAAAD,qBAAA,GAC3DL,iBAAiB,CAACC,IAAI,cAAAI,qBAAA,wBAAAC,sBAAA,GAAtBD,qBAAA,CAAwBE,iBAAiB,cAAAD,sBAAA,uBAAzCA,sBAAA,CAAAE,IAAA,CAAAH,qBAAA,EAA4CJ,IAAI,EAAEG,MAAM,CAAC;EAAA;EAE3D,MAAMK,qBAAmE,GACvEA,CAACR,IAAI,EAAES,OAAO;IAAA,IAAAC,sBAAA,EAAAC,sBAAA;IAAA,QAAAD,sBAAA,GACZX,iBAAiB,CAACC,IAAI,cAAAU,sBAAA,wBAAAC,sBAAA,GAAtBD,sBAAA,CAAwBE,kBAAkB,cAAAD,sBAAA,uBAA1CA,sBAAA,CAAAJ,IAAA,CAAAG,sBAAA,EAA6CV,IAAI,EAAES,OAAO,CAAC;EAAA;EAE/D,MAAMI,QAAQ,GAAIC,IAAU,IAAK;IAC/B,IAAIC,oBAAO,CAACC,GAAG,CAAChB,IAAI,EAAEc,IAAI,CAAC,EAAE;MAC3B,OAAOC,oBAAO,CAACd,GAAG,CAACD,IAAI,EAAEc,IAAI,CAAC;IAChC;IAEA,OAAOG,SAAS;EAClB,CAAC;EAED,OAAO;IACLjB,IAAI;IACJa,QAAQ;IACRX,UAAU;IACVM;EACF,CAAC;AACH"}
1
+ {"version":3,"file":"getData.js","names":["_jsonPointer","_interopRequireDefault","require","_useSharedState","obj","__esModule","default","getData","id","sharedState","createSharedState","sharedAttachments","data","get","filterData","filter","_sharedAttachments$da","_sharedAttachments$da2","filterDataHandler","call","reduceToVisibleFields","options","_sharedAttachments$da3","_sharedAttachments$da4","visibleDataHandler","getValue","path","pointer","has","undefined"],"sources":["../../../../../../src/extensions/forms/Form/data-context/getData.tsx"],"sourcesContent":["import pointer from '../../utils/json-pointer'\nimport {\n SharedStateId,\n createSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport { SharedAttachments } from '../../DataContext/Provider'\nimport type { Path } from '../../types'\nimport type {\n UseDataReturnGetValue,\n UseDataReturnFilterData,\n UseDataReturnVisibleData,\n} from './useData'\n\ntype SetDataReturn<Data> = {\n data: Data\n getValue: UseDataReturnGetValue<Data>\n filterData: UseDataReturnFilterData<Data>\n reduceToVisibleFields: UseDataReturnVisibleData<Data>\n}\n\nexport default function getData<Data>(\n id: SharedStateId\n): SetDataReturn<Data> {\n const sharedState = createSharedState(id)\n const sharedAttachments = createSharedState<SharedAttachments<Data>>(\n id + '-attachments'\n )\n\n const data = sharedState.get() as Data\n\n const filterData: SetDataReturn<Data>['filterData'] = (filter) =>\n sharedAttachments.data?.filterDataHandler?.(data, filter)\n\n const reduceToVisibleFields: SetDataReturn<Data>['reduceToVisibleFields'] =\n (data, options) =>\n sharedAttachments.data?.visibleDataHandler?.(data, options)\n\n const getValue = (path: Path) => {\n if (pointer.has(data, path)) {\n return pointer.get(data, path)\n }\n\n return undefined\n }\n\n return {\n data,\n getValue,\n filterData,\n reduceToVisibleFields,\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAGkD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAgBnC,SAASG,OAAOA,CAC7BC,EAAiB,EACI;EACrB,MAAMC,WAAW,GAAG,IAAAC,iCAAiB,EAACF,EAAE,CAAC;EACzC,MAAMG,iBAAiB,GAAG,IAAAD,iCAAiB,EACzCF,EAAE,GAAG,cACP,CAAC;EAED,MAAMI,IAAI,GAAGH,WAAW,CAACI,GAAG,CAAC,CAAS;EAEtC,MAAMC,UAA6C,GAAIC,MAAM;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IAAA,QAAAD,qBAAA,GAC3DL,iBAAiB,CAACC,IAAI,cAAAI,qBAAA,wBAAAC,sBAAA,GAAtBD,qBAAA,CAAwBE,iBAAiB,cAAAD,sBAAA,uBAAzCA,sBAAA,CAAAE,IAAA,CAAAH,qBAAA,EAA4CJ,IAAI,EAAEG,MAAM,CAAC;EAAA;EAE3D,MAAMK,qBAAmE,GACvEA,CAACR,IAAI,EAAES,OAAO;IAAA,IAAAC,sBAAA,EAAAC,sBAAA;IAAA,QAAAD,sBAAA,GACZX,iBAAiB,CAACC,IAAI,cAAAU,sBAAA,wBAAAC,sBAAA,GAAtBD,sBAAA,CAAwBE,kBAAkB,cAAAD,sBAAA,uBAA1CA,sBAAA,CAAAJ,IAAA,CAAAG,sBAAA,EAA6CV,IAAI,EAAES,OAAO,CAAC;EAAA;EAE/D,MAAMI,QAAQ,GAAIC,IAAU,IAAK;IAC/B,IAAIC,oBAAO,CAACC,GAAG,CAAChB,IAAI,EAAEc,IAAI,CAAC,EAAE;MAC3B,OAAOC,oBAAO,CAACd,GAAG,CAACD,IAAI,EAAEc,IAAI,CAAC;IAChC;IAEA,OAAOG,SAAS;EAClB,CAAC;EAED,OAAO;IACLjB,IAAI;IACJa,QAAQ;IACRX,UAAU;IACVM;EACF,CAAC;AACH"}