@dnb/eufemia 10.69.1 → 10.70.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 (726) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/cjs/components/aria-live/AriaLiveDocs.d.ts +2 -0
  3. package/cjs/components/aria-live/AriaLiveDocs.js +54 -0
  4. package/cjs/components/aria-live/AriaLiveDocs.js.map +1 -0
  5. package/cjs/components/avatar/Avatar.d.ts +10 -0
  6. package/cjs/components/avatar/Avatar.js +17 -3
  7. package/cjs/components/avatar/Avatar.js.map +1 -1
  8. package/cjs/components/avatar/AvatarDocs.d.ts +3 -0
  9. package/cjs/components/avatar/AvatarDocs.js +101 -0
  10. package/cjs/components/avatar/AvatarDocs.js.map +1 -0
  11. package/cjs/components/avatar/AvatarGroup.d.ts +10 -0
  12. package/cjs/components/avatar/AvatarGroup.js +17 -5
  13. package/cjs/components/avatar/AvatarGroup.js.map +1 -1
  14. package/cjs/components/avatar/style/dnb-avatar.css +8 -0
  15. package/cjs/components/avatar/style/dnb-avatar.min.css +1 -1
  16. package/cjs/components/avatar/style/dnb-avatar.scss +9 -0
  17. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +5 -5
  18. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  19. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +5 -6
  20. package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.css +5 -5
  21. package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
  22. package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.scss +5 -5
  23. package/cjs/components/badge/BadgeDocs.d.ts +2 -0
  24. package/cjs/components/badge/BadgeDocs.js +54 -0
  25. package/cjs/components/badge/BadgeDocs.js.map +1 -0
  26. package/cjs/components/breadcrumb/BreadcrumbDocs.d.ts +5 -0
  27. package/cjs/components/breadcrumb/BreadcrumbDocs.js +125 -0
  28. package/cjs/components/breadcrumb/BreadcrumbDocs.js.map +1 -0
  29. package/cjs/components/button/Button.d.ts +0 -3
  30. package/cjs/components/button/ButtonDocs.d.ts +1 -0
  31. package/cjs/components/button/ButtonDocs.js +8 -1
  32. package/cjs/components/button/ButtonDocs.js.map +1 -1
  33. package/cjs/components/date-picker/DatePickerAddon.js +1 -3
  34. package/cjs/components/date-picker/DatePickerAddon.js.map +1 -1
  35. package/cjs/components/date-picker/DatePickerCalc.d.ts +13 -0
  36. package/cjs/components/date-picker/DatePickerCalc.js +44 -0
  37. package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
  38. package/cjs/components/date-picker/DatePickerCalendar.js +13 -11
  39. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  40. package/cjs/components/date-picker/DatePickerContext.d.ts +1 -1
  41. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  42. package/cjs/components/date-picker/DatePickerProvider.js +2 -2
  43. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  44. package/cjs/components/date-picker/hooks/useViews.d.ts +2 -4
  45. package/cjs/components/date-picker/hooks/useViews.js +37 -23
  46. package/cjs/components/date-picker/hooks/useViews.js.map +1 -1
  47. package/cjs/components/dialog/DialogDocs.d.ts +1 -0
  48. package/cjs/components/dialog/DialogDocs.js +13 -1
  49. package/cjs/components/dialog/DialogDocs.js.map +1 -1
  50. package/cjs/components/drawer/DrawerDocs.d.ts +2 -0
  51. package/cjs/components/drawer/DrawerDocs.js +69 -0
  52. package/cjs/components/drawer/DrawerDocs.js.map +1 -0
  53. package/cjs/components/dropdown/DropdownDocs.d.ts +2 -0
  54. package/cjs/components/dropdown/DropdownDocs.js +29 -0
  55. package/cjs/components/dropdown/DropdownDocs.js.map +1 -0
  56. package/cjs/components/form-label/FormLabelDocs.d.ts +2 -0
  57. package/cjs/components/form-label/FormLabelDocs.js +59 -0
  58. package/cjs/components/form-label/FormLabelDocs.js.map +1 -0
  59. package/cjs/components/form-row/FormRow.d.ts +45 -0
  60. package/cjs/components/form-row/FormRowDocs.d.ts +2 -0
  61. package/cjs/components/form-row/FormRowDocs.js +89 -0
  62. package/cjs/components/form-row/FormRowDocs.js.map +1 -0
  63. package/cjs/components/form-set/FormSet.d.ts +18 -0
  64. package/cjs/components/form-set/FormSetDocs.d.ts +3 -0
  65. package/cjs/components/form-set/FormSetDocs.js +56 -0
  66. package/cjs/components/form-set/FormSetDocs.js.map +1 -0
  67. package/cjs/components/form-status/FormStatus.d.ts +18 -18
  68. package/cjs/components/form-status/FormStatusDocs.d.ts +2 -0
  69. package/cjs/components/form-status/FormStatusDocs.js +89 -0
  70. package/cjs/components/form-status/FormStatusDocs.js.map +1 -0
  71. package/cjs/components/global-error/GlobalError.d.ts +12 -0
  72. package/cjs/components/global-error/GlobalError.js +15 -6
  73. package/cjs/components/global-error/GlobalError.js.map +1 -1
  74. package/cjs/components/global-error/GlobalErrorDocs.js +14 -4
  75. package/cjs/components/global-error/GlobalErrorDocs.js.map +1 -1
  76. package/cjs/components/global-status/GlobalStatus.d.ts +37 -58
  77. package/cjs/components/global-status/GlobalStatusController.d.ts +0 -9
  78. package/cjs/components/global-status/GlobalStatusDocs.d.ts +6 -0
  79. package/cjs/components/global-status/GlobalStatusDocs.js +192 -0
  80. package/cjs/components/global-status/GlobalStatusDocs.js.map +1 -0
  81. package/cjs/components/heading/HeadingDocs.d.ts +2 -0
  82. package/cjs/components/heading/HeadingDocs.js +79 -0
  83. package/cjs/components/heading/HeadingDocs.js.map +1 -0
  84. package/cjs/components/help-button/HelpButtonDocs.d.ts +3 -0
  85. package/cjs/components/help-button/HelpButtonDocs.js +46 -0
  86. package/cjs/components/help-button/HelpButtonDocs.js.map +1 -0
  87. package/cjs/components/icon/IconDocs.d.ts +2 -0
  88. package/cjs/components/icon/IconDocs.js +59 -0
  89. package/cjs/components/icon/IconDocs.js.map +1 -0
  90. package/cjs/components/icon/IconPrimaryDocs.d.ts +2 -0
  91. package/cjs/components/icon/IconPrimaryDocs.js +24 -0
  92. package/cjs/components/icon/IconPrimaryDocs.js.map +1 -0
  93. package/cjs/components/info-card/InfoCard.d.ts +6 -1
  94. package/cjs/components/info-card/InfoCard.js +4 -3
  95. package/cjs/components/info-card/InfoCard.js.map +1 -1
  96. package/cjs/components/info-card/InfoCardDocs.js +8 -3
  97. package/cjs/components/info-card/InfoCardDocs.js.map +1 -1
  98. package/cjs/components/input/Input.d.ts +0 -21
  99. package/cjs/components/input/InputDocs.d.ts +1 -0
  100. package/cjs/components/input/InputDocs.js +33 -1
  101. package/cjs/components/input/InputDocs.js.map +1 -1
  102. package/cjs/components/input-masked/InputMasked.d.ts +0 -12
  103. package/cjs/components/input-masked/InputMaskedDocs.d.ts +1 -0
  104. package/cjs/components/input-masked/InputMaskedDocs.js +13 -1
  105. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  106. package/cjs/components/input-masked/MultiInputMaskedDocs.d.ts +2 -0
  107. package/cjs/components/input-masked/MultiInputMaskedDocs.js +24 -0
  108. package/cjs/components/input-masked/MultiInputMaskedDocs.js.map +1 -0
  109. package/cjs/components/pagination/Pagination.d.ts +35 -33
  110. package/cjs/components/pagination/Pagination.js +2 -0
  111. package/cjs/components/pagination/Pagination.js.map +1 -1
  112. package/cjs/components/pagination/PaginationDocs.d.ts +3 -0
  113. package/cjs/components/pagination/PaginationDocs.js +191 -0
  114. package/cjs/components/pagination/PaginationDocs.js.map +1 -0
  115. package/cjs/components/pagination/PaginationHelpers.d.ts +0 -3
  116. package/cjs/components/pagination/PaginationInfinity.d.ts +0 -3
  117. package/cjs/components/pagination/PaginationProvider.js +1 -1
  118. package/cjs/components/pagination/PaginationProvider.js.map +1 -1
  119. package/cjs/components/radio/Radio.d.ts +12 -15
  120. package/cjs/components/radio/RadioDocs.d.ts +5 -0
  121. package/cjs/components/radio/RadioDocs.js +145 -0
  122. package/cjs/components/radio/RadioDocs.js.map +1 -0
  123. package/cjs/components/radio/RadioGroup.d.ts +0 -30
  124. package/cjs/components/skeleton/SkeletonDocs.d.ts +2 -0
  125. package/cjs/components/skeleton/SkeletonDocs.js +44 -0
  126. package/cjs/components/skeleton/SkeletonDocs.js.map +1 -0
  127. package/cjs/components/skeleton/SkeletonHelper.d.ts +0 -6
  128. package/cjs/components/skip-content/SkipContentDocs.d.ts +2 -0
  129. package/cjs/components/skip-content/SkipContentDocs.js +29 -0
  130. package/cjs/components/skip-content/SkipContentDocs.js.map +1 -0
  131. package/cjs/components/tag/TagDocs.d.ts +4 -0
  132. package/cjs/components/tag/TagDocs.js +93 -0
  133. package/cjs/components/tag/TagDocs.js.map +1 -0
  134. package/cjs/components/textarea/Textarea.d.ts +0 -12
  135. package/cjs/components/textarea/TextareaDocs.d.ts +1 -0
  136. package/cjs/components/textarea/TextareaDocs.js +23 -1
  137. package/cjs/components/textarea/TextareaDocs.js.map +1 -1
  138. package/cjs/components/timeline/TimelineDocs.d.ts +3 -0
  139. package/cjs/components/timeline/TimelineDocs.js +66 -0
  140. package/cjs/components/timeline/TimelineDocs.js.map +1 -0
  141. package/cjs/components/toggle-button/ToggleButton.d.ts +0 -3
  142. package/cjs/components/toggle-button/ToggleButtonDocs.d.ts +1 -0
  143. package/cjs/components/toggle-button/ToggleButtonDocs.js +8 -1
  144. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  145. package/cjs/components/toggle-button/ToggleButtonGroup.d.ts +0 -3
  146. package/cjs/components/toggle-button/ToggleButtonGroupDocs.d.ts +1 -0
  147. package/cjs/components/toggle-button/ToggleButtonGroupDocs.js +8 -1
  148. package/cjs/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -1
  149. package/cjs/components/tooltip/TooltipDocs.d.ts +2 -0
  150. package/cjs/components/tooltip/TooltipDocs.js +79 -0
  151. package/cjs/components/tooltip/TooltipDocs.js.map +1 -0
  152. package/cjs/components/upload/Upload.js +6 -4
  153. package/cjs/components/upload/Upload.js.map +1 -1
  154. package/cjs/components/upload/UploadDocs.js +5 -0
  155. package/cjs/components/upload/UploadDocs.js.map +1 -1
  156. package/cjs/components/upload/UploadFileList.js +3 -1
  157. package/cjs/components/upload/UploadFileList.js.map +1 -1
  158. package/cjs/components/upload/UploadFileListCell.d.ts +6 -1
  159. package/cjs/components/upload/UploadFileListCell.js +8 -5
  160. package/cjs/components/upload/UploadFileListCell.js.map +1 -1
  161. package/cjs/components/upload/types.d.ts +5 -0
  162. package/cjs/components/upload/types.js.map +1 -1
  163. package/cjs/components/upload/useUpload.d.ts +1 -0
  164. package/cjs/components/upload/useUpload.js +9 -2
  165. package/cjs/components/upload/useUpload.js.map +1 -1
  166. package/cjs/components/visually-hidden/VisuallyHiddenDocs.d.ts +2 -0
  167. package/cjs/components/visually-hidden/VisuallyHiddenDocs.js +19 -0
  168. package/cjs/components/visually-hidden/VisuallyHiddenDocs.js.map +1 -0
  169. package/cjs/extensions/forms/DataContext/Context.d.ts +6 -5
  170. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  171. package/cjs/extensions/forms/DataContext/Provider/Provider.js +29 -35
  172. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  173. package/cjs/extensions/forms/Field/Date/Date.d.ts +1 -0
  174. package/cjs/extensions/forms/Field/Date/Date.js +8 -8
  175. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  176. package/cjs/extensions/forms/Field/Password/Password.js +2 -1
  177. package/cjs/extensions/forms/Field/Password/Password.js.map +1 -1
  178. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +9 -3
  179. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  180. package/cjs/extensions/forms/Field/Upload/Upload.js +10 -2
  181. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  182. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +4 -4
  183. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  184. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  185. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  186. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +10 -14
  187. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  188. package/cjs/extensions/forms/Value/Date/Date.d.ts +0 -6
  189. package/cjs/extensions/forms/Value/Date/Date.js +14 -38
  190. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  191. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  192. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  193. package/cjs/extensions/forms/hooks/useFieldProps.js +3 -4
  194. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  195. package/cjs/extensions/payment-card/PaymentCard.d.ts +7 -7
  196. package/cjs/extensions/payment-card/PaymentCardDocs.d.ts +5 -0
  197. package/cjs/extensions/payment-card/PaymentCardDocs.js +205 -0
  198. package/cjs/extensions/payment-card/PaymentCardDocs.js.map +1 -0
  199. package/cjs/fragments/scroll-view/ScrollViewDocs.d.ts +2 -0
  200. package/cjs/fragments/scroll-view/ScrollViewDocs.js +19 -0
  201. package/cjs/fragments/scroll-view/ScrollViewDocs.js.map +1 -0
  202. package/cjs/fragments/text-counter/TextCounterDocs.d.ts +2 -0
  203. package/cjs/fragments/text-counter/TextCounterDocs.js +29 -0
  204. package/cjs/fragments/text-counter/TextCounterDocs.js.map +1 -0
  205. package/cjs/shared/Eufemia.d.ts +1 -1
  206. package/cjs/shared/Eufemia.js +2 -2
  207. package/cjs/shared/Eufemia.js.map +1 -1
  208. package/cjs/shared/MediaQueryDocs.d.ts +2 -0
  209. package/cjs/shared/MediaQueryDocs.js +34 -0
  210. package/cjs/shared/MediaQueryDocs.js.map +1 -0
  211. package/cjs/shared/ThemeDocs.d.ts +2 -0
  212. package/cjs/shared/ThemeDocs.js +39 -0
  213. package/cjs/shared/ThemeDocs.js.map +1 -0
  214. package/cjs/shared/locales/en-GB.d.ts +1 -0
  215. package/cjs/shared/locales/en-GB.js +1 -0
  216. package/cjs/shared/locales/en-GB.js.map +1 -1
  217. package/cjs/shared/locales/en-US.d.ts +1 -0
  218. package/cjs/shared/locales/index.d.ts +2 -0
  219. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  220. package/cjs/shared/locales/nb-NO.js +1 -0
  221. package/cjs/shared/locales/nb-NO.js.map +1 -1
  222. package/cjs/shared/locales/sv-SE.d.ts +1 -0
  223. package/cjs/shared/locales/sv-SE.js +1 -0
  224. package/cjs/shared/locales/sv-SE.js.map +1 -1
  225. package/cjs/style/core/scopes.scss +1 -1
  226. package/cjs/style/dnb-ui-basis.css +1 -1
  227. package/cjs/style/dnb-ui-basis.min.css +1 -1
  228. package/cjs/style/dnb-ui-body.css +1 -1
  229. package/cjs/style/dnb-ui-body.min.css +1 -1
  230. package/cjs/style/dnb-ui-components.css +8 -0
  231. package/cjs/style/dnb-ui-components.min.css +1 -1
  232. package/cjs/style/dnb-ui-core.css +1 -1
  233. package/cjs/style/dnb-ui-core.min.css +1 -1
  234. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +13 -5
  235. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  236. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +13 -5
  237. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  238. package/cjs/style/themes/theme-ui/ui-theme-components.css +13 -5
  239. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  240. package/components/aria-live/AriaLiveDocs.d.ts +2 -0
  241. package/components/aria-live/AriaLiveDocs.js +48 -0
  242. package/components/aria-live/AriaLiveDocs.js.map +1 -0
  243. package/components/avatar/Avatar.d.ts +10 -0
  244. package/components/avatar/Avatar.js +17 -3
  245. package/components/avatar/Avatar.js.map +1 -1
  246. package/components/avatar/AvatarDocs.d.ts +3 -0
  247. package/components/avatar/AvatarDocs.js +95 -0
  248. package/components/avatar/AvatarDocs.js.map +1 -0
  249. package/components/avatar/AvatarGroup.d.ts +10 -0
  250. package/components/avatar/AvatarGroup.js +17 -5
  251. package/components/avatar/AvatarGroup.js.map +1 -1
  252. package/components/avatar/style/dnb-avatar.css +8 -0
  253. package/components/avatar/style/dnb-avatar.min.css +1 -1
  254. package/components/avatar/style/dnb-avatar.scss +9 -0
  255. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +5 -5
  256. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  257. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +5 -6
  258. package/components/avatar/style/themes/dnb-avatar-theme-ui.css +5 -5
  259. package/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
  260. package/components/avatar/style/themes/dnb-avatar-theme-ui.scss +5 -5
  261. package/components/badge/BadgeDocs.d.ts +2 -0
  262. package/components/badge/BadgeDocs.js +48 -0
  263. package/components/badge/BadgeDocs.js.map +1 -0
  264. package/components/breadcrumb/BreadcrumbDocs.d.ts +5 -0
  265. package/components/breadcrumb/BreadcrumbDocs.js +119 -0
  266. package/components/breadcrumb/BreadcrumbDocs.js.map +1 -0
  267. package/components/button/Button.d.ts +0 -3
  268. package/components/button/ButtonDocs.d.ts +1 -0
  269. package/components/button/ButtonDocs.js +7 -0
  270. package/components/button/ButtonDocs.js.map +1 -1
  271. package/components/date-picker/DatePickerAddon.js +1 -3
  272. package/components/date-picker/DatePickerAddon.js.map +1 -1
  273. package/components/date-picker/DatePickerCalc.d.ts +13 -0
  274. package/components/date-picker/DatePickerCalc.js +41 -0
  275. package/components/date-picker/DatePickerCalc.js.map +1 -1
  276. package/components/date-picker/DatePickerCalendar.js +13 -11
  277. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  278. package/components/date-picker/DatePickerContext.d.ts +1 -1
  279. package/components/date-picker/DatePickerContext.js.map +1 -1
  280. package/components/date-picker/DatePickerProvider.js +2 -2
  281. package/components/date-picker/DatePickerProvider.js.map +1 -1
  282. package/components/date-picker/hooks/useViews.d.ts +2 -4
  283. package/components/date-picker/hooks/useViews.js +38 -24
  284. package/components/date-picker/hooks/useViews.js.map +1 -1
  285. package/components/dialog/DialogDocs.d.ts +1 -0
  286. package/components/dialog/DialogDocs.js +12 -0
  287. package/components/dialog/DialogDocs.js.map +1 -1
  288. package/components/drawer/DrawerDocs.d.ts +2 -0
  289. package/components/drawer/DrawerDocs.js +63 -0
  290. package/components/drawer/DrawerDocs.js.map +1 -0
  291. package/components/dropdown/DropdownDocs.d.ts +2 -0
  292. package/components/dropdown/DropdownDocs.js +23 -0
  293. package/components/dropdown/DropdownDocs.js.map +1 -0
  294. package/components/form-label/FormLabelDocs.d.ts +2 -0
  295. package/components/form-label/FormLabelDocs.js +53 -0
  296. package/components/form-label/FormLabelDocs.js.map +1 -0
  297. package/components/form-row/FormRow.d.ts +45 -0
  298. package/components/form-row/FormRowDocs.d.ts +2 -0
  299. package/components/form-row/FormRowDocs.js +83 -0
  300. package/components/form-row/FormRowDocs.js.map +1 -0
  301. package/components/form-set/FormSet.d.ts +18 -0
  302. package/components/form-set/FormSetDocs.d.ts +3 -0
  303. package/components/form-set/FormSetDocs.js +50 -0
  304. package/components/form-set/FormSetDocs.js.map +1 -0
  305. package/components/form-status/FormStatus.d.ts +18 -18
  306. package/components/form-status/FormStatusDocs.d.ts +2 -0
  307. package/components/form-status/FormStatusDocs.js +83 -0
  308. package/components/form-status/FormStatusDocs.js.map +1 -0
  309. package/components/global-error/GlobalError.d.ts +12 -0
  310. package/components/global-error/GlobalError.js +15 -6
  311. package/components/global-error/GlobalError.js.map +1 -1
  312. package/components/global-error/GlobalErrorDocs.js +14 -4
  313. package/components/global-error/GlobalErrorDocs.js.map +1 -1
  314. package/components/global-status/GlobalStatus.d.ts +37 -58
  315. package/components/global-status/GlobalStatusController.d.ts +0 -9
  316. package/components/global-status/GlobalStatusDocs.d.ts +6 -0
  317. package/components/global-status/GlobalStatusDocs.js +186 -0
  318. package/components/global-status/GlobalStatusDocs.js.map +1 -0
  319. package/components/heading/HeadingDocs.d.ts +2 -0
  320. package/components/heading/HeadingDocs.js +73 -0
  321. package/components/heading/HeadingDocs.js.map +1 -0
  322. package/components/help-button/HelpButtonDocs.d.ts +3 -0
  323. package/components/help-button/HelpButtonDocs.js +40 -0
  324. package/components/help-button/HelpButtonDocs.js.map +1 -0
  325. package/components/icon/IconDocs.d.ts +2 -0
  326. package/components/icon/IconDocs.js +53 -0
  327. package/components/icon/IconDocs.js.map +1 -0
  328. package/components/icon/IconPrimaryDocs.d.ts +2 -0
  329. package/components/icon/IconPrimaryDocs.js +18 -0
  330. package/components/icon/IconPrimaryDocs.js.map +1 -0
  331. package/components/info-card/InfoCard.d.ts +6 -1
  332. package/components/info-card/InfoCard.js +4 -3
  333. package/components/info-card/InfoCard.js.map +1 -1
  334. package/components/info-card/InfoCardDocs.js +8 -3
  335. package/components/info-card/InfoCardDocs.js.map +1 -1
  336. package/components/input/Input.d.ts +0 -21
  337. package/components/input/InputDocs.d.ts +1 -0
  338. package/components/input/InputDocs.js +32 -0
  339. package/components/input/InputDocs.js.map +1 -1
  340. package/components/input-masked/InputMasked.d.ts +0 -12
  341. package/components/input-masked/InputMaskedDocs.d.ts +1 -0
  342. package/components/input-masked/InputMaskedDocs.js +12 -0
  343. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  344. package/components/input-masked/MultiInputMaskedDocs.d.ts +2 -0
  345. package/components/input-masked/MultiInputMaskedDocs.js +18 -0
  346. package/components/input-masked/MultiInputMaskedDocs.js.map +1 -0
  347. package/components/pagination/Pagination.d.ts +35 -33
  348. package/components/pagination/Pagination.js +2 -0
  349. package/components/pagination/Pagination.js.map +1 -1
  350. package/components/pagination/PaginationDocs.d.ts +3 -0
  351. package/components/pagination/PaginationDocs.js +185 -0
  352. package/components/pagination/PaginationDocs.js.map +1 -0
  353. package/components/pagination/PaginationHelpers.d.ts +0 -3
  354. package/components/pagination/PaginationInfinity.d.ts +0 -3
  355. package/components/pagination/PaginationProvider.js +1 -1
  356. package/components/pagination/PaginationProvider.js.map +1 -1
  357. package/components/radio/Radio.d.ts +12 -15
  358. package/components/radio/RadioDocs.d.ts +5 -0
  359. package/components/radio/RadioDocs.js +139 -0
  360. package/components/radio/RadioDocs.js.map +1 -0
  361. package/components/radio/RadioGroup.d.ts +0 -30
  362. package/components/skeleton/SkeletonDocs.d.ts +2 -0
  363. package/components/skeleton/SkeletonDocs.js +38 -0
  364. package/components/skeleton/SkeletonDocs.js.map +1 -0
  365. package/components/skeleton/SkeletonHelper.d.ts +0 -6
  366. package/components/skip-content/SkipContentDocs.d.ts +2 -0
  367. package/components/skip-content/SkipContentDocs.js +23 -0
  368. package/components/skip-content/SkipContentDocs.js.map +1 -0
  369. package/components/tag/TagDocs.d.ts +4 -0
  370. package/components/tag/TagDocs.js +87 -0
  371. package/components/tag/TagDocs.js.map +1 -0
  372. package/components/textarea/Textarea.d.ts +0 -12
  373. package/components/textarea/TextareaDocs.d.ts +1 -0
  374. package/components/textarea/TextareaDocs.js +22 -0
  375. package/components/textarea/TextareaDocs.js.map +1 -1
  376. package/components/timeline/TimelineDocs.d.ts +3 -0
  377. package/components/timeline/TimelineDocs.js +60 -0
  378. package/components/timeline/TimelineDocs.js.map +1 -0
  379. package/components/toggle-button/ToggleButton.d.ts +0 -3
  380. package/components/toggle-button/ToggleButtonDocs.d.ts +1 -0
  381. package/components/toggle-button/ToggleButtonDocs.js +7 -0
  382. package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  383. package/components/toggle-button/ToggleButtonGroup.d.ts +0 -3
  384. package/components/toggle-button/ToggleButtonGroupDocs.d.ts +1 -0
  385. package/components/toggle-button/ToggleButtonGroupDocs.js +7 -0
  386. package/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -1
  387. package/components/tooltip/TooltipDocs.d.ts +2 -0
  388. package/components/tooltip/TooltipDocs.js +73 -0
  389. package/components/tooltip/TooltipDocs.js.map +1 -0
  390. package/components/upload/Upload.js +6 -4
  391. package/components/upload/Upload.js.map +1 -1
  392. package/components/upload/UploadDocs.js +5 -0
  393. package/components/upload/UploadDocs.js.map +1 -1
  394. package/components/upload/UploadFileList.js +3 -1
  395. package/components/upload/UploadFileList.js.map +1 -1
  396. package/components/upload/UploadFileListCell.d.ts +6 -1
  397. package/components/upload/UploadFileListCell.js +8 -5
  398. package/components/upload/UploadFileListCell.js.map +1 -1
  399. package/components/upload/types.d.ts +5 -0
  400. package/components/upload/types.js.map +1 -1
  401. package/components/upload/useUpload.d.ts +1 -0
  402. package/components/upload/useUpload.js +7 -1
  403. package/components/upload/useUpload.js.map +1 -1
  404. package/components/visually-hidden/VisuallyHiddenDocs.d.ts +2 -0
  405. package/components/visually-hidden/VisuallyHiddenDocs.js +13 -0
  406. package/components/visually-hidden/VisuallyHiddenDocs.js.map +1 -0
  407. package/es/components/aria-live/AriaLiveDocs.d.ts +2 -0
  408. package/es/components/aria-live/AriaLiveDocs.js +48 -0
  409. package/es/components/aria-live/AriaLiveDocs.js.map +1 -0
  410. package/es/components/avatar/Avatar.d.ts +10 -0
  411. package/es/components/avatar/Avatar.js +17 -3
  412. package/es/components/avatar/Avatar.js.map +1 -1
  413. package/es/components/avatar/AvatarDocs.d.ts +3 -0
  414. package/es/components/avatar/AvatarDocs.js +95 -0
  415. package/es/components/avatar/AvatarDocs.js.map +1 -0
  416. package/es/components/avatar/AvatarGroup.d.ts +10 -0
  417. package/es/components/avatar/AvatarGroup.js +17 -5
  418. package/es/components/avatar/AvatarGroup.js.map +1 -1
  419. package/es/components/avatar/style/dnb-avatar.css +8 -0
  420. package/es/components/avatar/style/dnb-avatar.min.css +1 -1
  421. package/es/components/avatar/style/dnb-avatar.scss +9 -0
  422. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +5 -5
  423. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
  424. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +5 -6
  425. package/es/components/avatar/style/themes/dnb-avatar-theme-ui.css +5 -5
  426. package/es/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
  427. package/es/components/avatar/style/themes/dnb-avatar-theme-ui.scss +5 -5
  428. package/es/components/badge/BadgeDocs.d.ts +2 -0
  429. package/es/components/badge/BadgeDocs.js +48 -0
  430. package/es/components/badge/BadgeDocs.js.map +1 -0
  431. package/es/components/breadcrumb/BreadcrumbDocs.d.ts +5 -0
  432. package/es/components/breadcrumb/BreadcrumbDocs.js +119 -0
  433. package/es/components/breadcrumb/BreadcrumbDocs.js.map +1 -0
  434. package/es/components/button/Button.d.ts +0 -3
  435. package/es/components/button/ButtonDocs.d.ts +1 -0
  436. package/es/components/button/ButtonDocs.js +7 -0
  437. package/es/components/button/ButtonDocs.js.map +1 -1
  438. package/es/components/date-picker/DatePickerAddon.js +1 -3
  439. package/es/components/date-picker/DatePickerAddon.js.map +1 -1
  440. package/es/components/date-picker/DatePickerCalc.d.ts +13 -0
  441. package/es/components/date-picker/DatePickerCalc.js +39 -0
  442. package/es/components/date-picker/DatePickerCalc.js.map +1 -1
  443. package/es/components/date-picker/DatePickerCalendar.js +13 -11
  444. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  445. package/es/components/date-picker/DatePickerContext.d.ts +1 -1
  446. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  447. package/es/components/date-picker/DatePickerProvider.js +2 -2
  448. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  449. package/es/components/date-picker/hooks/useViews.d.ts +2 -4
  450. package/es/components/date-picker/hooks/useViews.js +39 -25
  451. package/es/components/date-picker/hooks/useViews.js.map +1 -1
  452. package/es/components/dialog/DialogDocs.d.ts +1 -0
  453. package/es/components/dialog/DialogDocs.js +12 -0
  454. package/es/components/dialog/DialogDocs.js.map +1 -1
  455. package/es/components/drawer/DrawerDocs.d.ts +2 -0
  456. package/es/components/drawer/DrawerDocs.js +63 -0
  457. package/es/components/drawer/DrawerDocs.js.map +1 -0
  458. package/es/components/dropdown/DropdownDocs.d.ts +2 -0
  459. package/es/components/dropdown/DropdownDocs.js +23 -0
  460. package/es/components/dropdown/DropdownDocs.js.map +1 -0
  461. package/es/components/form-label/FormLabelDocs.d.ts +2 -0
  462. package/es/components/form-label/FormLabelDocs.js +53 -0
  463. package/es/components/form-label/FormLabelDocs.js.map +1 -0
  464. package/es/components/form-row/FormRow.d.ts +45 -0
  465. package/es/components/form-row/FormRowDocs.d.ts +2 -0
  466. package/es/components/form-row/FormRowDocs.js +83 -0
  467. package/es/components/form-row/FormRowDocs.js.map +1 -0
  468. package/es/components/form-set/FormSet.d.ts +18 -0
  469. package/es/components/form-set/FormSetDocs.d.ts +3 -0
  470. package/es/components/form-set/FormSetDocs.js +50 -0
  471. package/es/components/form-set/FormSetDocs.js.map +1 -0
  472. package/es/components/form-status/FormStatus.d.ts +18 -18
  473. package/es/components/form-status/FormStatusDocs.d.ts +2 -0
  474. package/es/components/form-status/FormStatusDocs.js +83 -0
  475. package/es/components/form-status/FormStatusDocs.js.map +1 -0
  476. package/es/components/global-error/GlobalError.d.ts +12 -0
  477. package/es/components/global-error/GlobalError.js +14 -6
  478. package/es/components/global-error/GlobalError.js.map +1 -1
  479. package/es/components/global-error/GlobalErrorDocs.js +14 -4
  480. package/es/components/global-error/GlobalErrorDocs.js.map +1 -1
  481. package/es/components/global-status/GlobalStatus.d.ts +37 -58
  482. package/es/components/global-status/GlobalStatusController.d.ts +0 -9
  483. package/es/components/global-status/GlobalStatusDocs.d.ts +6 -0
  484. package/es/components/global-status/GlobalStatusDocs.js +186 -0
  485. package/es/components/global-status/GlobalStatusDocs.js.map +1 -0
  486. package/es/components/heading/HeadingDocs.d.ts +2 -0
  487. package/es/components/heading/HeadingDocs.js +73 -0
  488. package/es/components/heading/HeadingDocs.js.map +1 -0
  489. package/es/components/help-button/HelpButtonDocs.d.ts +3 -0
  490. package/es/components/help-button/HelpButtonDocs.js +40 -0
  491. package/es/components/help-button/HelpButtonDocs.js.map +1 -0
  492. package/es/components/icon/IconDocs.d.ts +2 -0
  493. package/es/components/icon/IconDocs.js +53 -0
  494. package/es/components/icon/IconDocs.js.map +1 -0
  495. package/es/components/icon/IconPrimaryDocs.d.ts +2 -0
  496. package/es/components/icon/IconPrimaryDocs.js +18 -0
  497. package/es/components/icon/IconPrimaryDocs.js.map +1 -0
  498. package/es/components/info-card/InfoCard.d.ts +6 -1
  499. package/es/components/info-card/InfoCard.js +4 -3
  500. package/es/components/info-card/InfoCard.js.map +1 -1
  501. package/es/components/info-card/InfoCardDocs.js +8 -3
  502. package/es/components/info-card/InfoCardDocs.js.map +1 -1
  503. package/es/components/input/Input.d.ts +0 -21
  504. package/es/components/input/InputDocs.d.ts +1 -0
  505. package/es/components/input/InputDocs.js +32 -0
  506. package/es/components/input/InputDocs.js.map +1 -1
  507. package/es/components/input-masked/InputMasked.d.ts +0 -12
  508. package/es/components/input-masked/InputMaskedDocs.d.ts +1 -0
  509. package/es/components/input-masked/InputMaskedDocs.js +12 -0
  510. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  511. package/es/components/input-masked/MultiInputMaskedDocs.d.ts +2 -0
  512. package/es/components/input-masked/MultiInputMaskedDocs.js +18 -0
  513. package/es/components/input-masked/MultiInputMaskedDocs.js.map +1 -0
  514. package/es/components/pagination/Pagination.d.ts +35 -33
  515. package/es/components/pagination/Pagination.js +2 -0
  516. package/es/components/pagination/Pagination.js.map +1 -1
  517. package/es/components/pagination/PaginationDocs.d.ts +3 -0
  518. package/es/components/pagination/PaginationDocs.js +185 -0
  519. package/es/components/pagination/PaginationDocs.js.map +1 -0
  520. package/es/components/pagination/PaginationHelpers.d.ts +0 -3
  521. package/es/components/pagination/PaginationInfinity.d.ts +0 -3
  522. package/es/components/pagination/PaginationProvider.js +1 -1
  523. package/es/components/pagination/PaginationProvider.js.map +1 -1
  524. package/es/components/radio/Radio.d.ts +12 -15
  525. package/es/components/radio/RadioDocs.d.ts +5 -0
  526. package/es/components/radio/RadioDocs.js +139 -0
  527. package/es/components/radio/RadioDocs.js.map +1 -0
  528. package/es/components/radio/RadioGroup.d.ts +0 -30
  529. package/es/components/skeleton/SkeletonDocs.d.ts +2 -0
  530. package/es/components/skeleton/SkeletonDocs.js +38 -0
  531. package/es/components/skeleton/SkeletonDocs.js.map +1 -0
  532. package/es/components/skeleton/SkeletonHelper.d.ts +0 -6
  533. package/es/components/skip-content/SkipContentDocs.d.ts +2 -0
  534. package/es/components/skip-content/SkipContentDocs.js +23 -0
  535. package/es/components/skip-content/SkipContentDocs.js.map +1 -0
  536. package/es/components/tag/TagDocs.d.ts +4 -0
  537. package/es/components/tag/TagDocs.js +87 -0
  538. package/es/components/tag/TagDocs.js.map +1 -0
  539. package/es/components/textarea/Textarea.d.ts +0 -12
  540. package/es/components/textarea/TextareaDocs.d.ts +1 -0
  541. package/es/components/textarea/TextareaDocs.js +22 -0
  542. package/es/components/textarea/TextareaDocs.js.map +1 -1
  543. package/es/components/timeline/TimelineDocs.d.ts +3 -0
  544. package/es/components/timeline/TimelineDocs.js +60 -0
  545. package/es/components/timeline/TimelineDocs.js.map +1 -0
  546. package/es/components/toggle-button/ToggleButton.d.ts +0 -3
  547. package/es/components/toggle-button/ToggleButtonDocs.d.ts +1 -0
  548. package/es/components/toggle-button/ToggleButtonDocs.js +7 -0
  549. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  550. package/es/components/toggle-button/ToggleButtonGroup.d.ts +0 -3
  551. package/es/components/toggle-button/ToggleButtonGroupDocs.d.ts +1 -0
  552. package/es/components/toggle-button/ToggleButtonGroupDocs.js +7 -0
  553. package/es/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -1
  554. package/es/components/tooltip/TooltipDocs.d.ts +2 -0
  555. package/es/components/tooltip/TooltipDocs.js +73 -0
  556. package/es/components/tooltip/TooltipDocs.js.map +1 -0
  557. package/es/components/upload/Upload.js +6 -4
  558. package/es/components/upload/Upload.js.map +1 -1
  559. package/es/components/upload/UploadDocs.js +5 -0
  560. package/es/components/upload/UploadDocs.js.map +1 -1
  561. package/es/components/upload/UploadFileList.js +3 -1
  562. package/es/components/upload/UploadFileList.js.map +1 -1
  563. package/es/components/upload/UploadFileListCell.d.ts +6 -1
  564. package/es/components/upload/UploadFileListCell.js +8 -5
  565. package/es/components/upload/UploadFileListCell.js.map +1 -1
  566. package/es/components/upload/types.d.ts +5 -0
  567. package/es/components/upload/types.js.map +1 -1
  568. package/es/components/upload/useUpload.d.ts +1 -0
  569. package/es/components/upload/useUpload.js +7 -1
  570. package/es/components/upload/useUpload.js.map +1 -1
  571. package/es/components/visually-hidden/VisuallyHiddenDocs.d.ts +2 -0
  572. package/es/components/visually-hidden/VisuallyHiddenDocs.js +13 -0
  573. package/es/components/visually-hidden/VisuallyHiddenDocs.js.map +1 -0
  574. package/es/extensions/forms/DataContext/Context.d.ts +6 -5
  575. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  576. package/es/extensions/forms/DataContext/Provider/Provider.js +28 -34
  577. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  578. package/es/extensions/forms/Field/Date/Date.d.ts +1 -0
  579. package/es/extensions/forms/Field/Date/Date.js +2 -3
  580. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  581. package/es/extensions/forms/Field/Password/Password.js +2 -1
  582. package/es/extensions/forms/Field/Password/Password.js.map +1 -1
  583. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +9 -3
  584. package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  585. package/es/extensions/forms/Field/Upload/Upload.js +10 -2
  586. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  587. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +4 -4
  588. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  589. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  590. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  591. package/es/extensions/forms/Form/Visibility/useVisibility.js +10 -14
  592. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  593. package/es/extensions/forms/Value/Date/Date.d.ts +0 -6
  594. package/es/extensions/forms/Value/Date/Date.js +13 -34
  595. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  596. package/es/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  597. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  598. package/es/extensions/forms/hooks/useFieldProps.js +3 -4
  599. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  600. package/es/extensions/payment-card/PaymentCard.d.ts +7 -7
  601. package/es/extensions/payment-card/PaymentCardDocs.d.ts +5 -0
  602. package/es/extensions/payment-card/PaymentCardDocs.js +199 -0
  603. package/es/extensions/payment-card/PaymentCardDocs.js.map +1 -0
  604. package/es/fragments/scroll-view/ScrollViewDocs.d.ts +2 -0
  605. package/es/fragments/scroll-view/ScrollViewDocs.js +13 -0
  606. package/es/fragments/scroll-view/ScrollViewDocs.js.map +1 -0
  607. package/es/fragments/text-counter/TextCounterDocs.d.ts +2 -0
  608. package/es/fragments/text-counter/TextCounterDocs.js +23 -0
  609. package/es/fragments/text-counter/TextCounterDocs.js.map +1 -0
  610. package/es/shared/Eufemia.d.ts +1 -1
  611. package/es/shared/Eufemia.js +2 -2
  612. package/es/shared/Eufemia.js.map +1 -1
  613. package/es/shared/MediaQueryDocs.d.ts +2 -0
  614. package/es/shared/MediaQueryDocs.js +28 -0
  615. package/es/shared/MediaQueryDocs.js.map +1 -0
  616. package/es/shared/ThemeDocs.d.ts +2 -0
  617. package/es/shared/ThemeDocs.js +33 -0
  618. package/es/shared/ThemeDocs.js.map +1 -0
  619. package/es/shared/locales/en-GB.d.ts +1 -0
  620. package/es/shared/locales/en-GB.js +1 -0
  621. package/es/shared/locales/en-GB.js.map +1 -1
  622. package/es/shared/locales/en-US.d.ts +1 -0
  623. package/es/shared/locales/index.d.ts +2 -0
  624. package/es/shared/locales/nb-NO.d.ts +1 -0
  625. package/es/shared/locales/nb-NO.js +1 -0
  626. package/es/shared/locales/nb-NO.js.map +1 -1
  627. package/es/shared/locales/sv-SE.d.ts +1 -0
  628. package/es/shared/locales/sv-SE.js +1 -0
  629. package/es/shared/locales/sv-SE.js.map +1 -1
  630. package/es/style/core/scopes.scss +1 -1
  631. package/es/style/dnb-ui-basis.css +1 -1
  632. package/es/style/dnb-ui-basis.min.css +1 -1
  633. package/es/style/dnb-ui-body.css +1 -1
  634. package/es/style/dnb-ui-body.min.css +1 -1
  635. package/es/style/dnb-ui-components.css +8 -0
  636. package/es/style/dnb-ui-components.min.css +1 -1
  637. package/es/style/dnb-ui-core.css +1 -1
  638. package/es/style/dnb-ui-core.min.css +1 -1
  639. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +13 -5
  640. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  641. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +13 -5
  642. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  643. package/es/style/themes/theme-ui/ui-theme-components.css +13 -5
  644. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  645. package/esm/dnb-ui-basis.min.mjs +1 -1
  646. package/esm/dnb-ui-components.min.mjs +1 -1
  647. package/esm/dnb-ui-elements.min.mjs +1 -1
  648. package/esm/dnb-ui-extensions.min.mjs +1 -1
  649. package/esm/dnb-ui-lib.min.mjs +1 -1
  650. package/extensions/forms/DataContext/Context.d.ts +6 -5
  651. package/extensions/forms/DataContext/Context.js.map +1 -1
  652. package/extensions/forms/DataContext/Provider/Provider.js +29 -35
  653. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  654. package/extensions/forms/Field/Date/Date.d.ts +1 -0
  655. package/extensions/forms/Field/Date/Date.js +2 -3
  656. package/extensions/forms/Field/Date/Date.js.map +1 -1
  657. package/extensions/forms/Field/Password/Password.js +2 -1
  658. package/extensions/forms/Field/Password/Password.js.map +1 -1
  659. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +9 -3
  660. package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  661. package/extensions/forms/Field/Upload/Upload.js +10 -2
  662. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  663. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +4 -4
  664. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  665. package/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
  666. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  667. package/extensions/forms/Form/Visibility/useVisibility.js +10 -14
  668. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  669. package/extensions/forms/Value/Date/Date.d.ts +0 -6
  670. package/extensions/forms/Value/Date/Date.js +14 -36
  671. package/extensions/forms/Value/Date/Date.js.map +1 -1
  672. package/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  673. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  674. package/extensions/forms/hooks/useFieldProps.js +3 -4
  675. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  676. package/extensions/payment-card/PaymentCard.d.ts +7 -7
  677. package/extensions/payment-card/PaymentCardDocs.d.ts +5 -0
  678. package/extensions/payment-card/PaymentCardDocs.js +199 -0
  679. package/extensions/payment-card/PaymentCardDocs.js.map +1 -0
  680. package/fragments/scroll-view/ScrollViewDocs.d.ts +2 -0
  681. package/fragments/scroll-view/ScrollViewDocs.js +13 -0
  682. package/fragments/scroll-view/ScrollViewDocs.js.map +1 -0
  683. package/fragments/text-counter/TextCounterDocs.d.ts +2 -0
  684. package/fragments/text-counter/TextCounterDocs.js +23 -0
  685. package/fragments/text-counter/TextCounterDocs.js.map +1 -0
  686. package/package.json +1 -1
  687. package/shared/Eufemia.d.ts +1 -1
  688. package/shared/Eufemia.js +2 -2
  689. package/shared/Eufemia.js.map +1 -1
  690. package/shared/MediaQueryDocs.d.ts +2 -0
  691. package/shared/MediaQueryDocs.js +28 -0
  692. package/shared/MediaQueryDocs.js.map +1 -0
  693. package/shared/ThemeDocs.d.ts +2 -0
  694. package/shared/ThemeDocs.js +33 -0
  695. package/shared/ThemeDocs.js.map +1 -0
  696. package/shared/locales/en-GB.d.ts +1 -0
  697. package/shared/locales/en-GB.js +1 -0
  698. package/shared/locales/en-GB.js.map +1 -1
  699. package/shared/locales/en-US.d.ts +1 -0
  700. package/shared/locales/index.d.ts +2 -0
  701. package/shared/locales/nb-NO.d.ts +1 -0
  702. package/shared/locales/nb-NO.js +1 -0
  703. package/shared/locales/nb-NO.js.map +1 -1
  704. package/shared/locales/sv-SE.d.ts +1 -0
  705. package/shared/locales/sv-SE.js +1 -0
  706. package/shared/locales/sv-SE.js.map +1 -1
  707. package/style/core/scopes.scss +1 -1
  708. package/style/dnb-ui-basis.css +1 -1
  709. package/style/dnb-ui-basis.min.css +1 -1
  710. package/style/dnb-ui-body.css +1 -1
  711. package/style/dnb-ui-body.min.css +1 -1
  712. package/style/dnb-ui-components.css +8 -0
  713. package/style/dnb-ui-components.min.css +1 -1
  714. package/style/dnb-ui-core.css +1 -1
  715. package/style/dnb-ui-core.min.css +1 -1
  716. package/style/themes/theme-eiendom/eiendom-theme-components.css +13 -5
  717. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  718. package/style/themes/theme-sbanken/sbanken-theme-components.css +13 -5
  719. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  720. package/style/themes/theme-ui/ui-theme-components.css +13 -5
  721. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  722. package/umd/dnb-ui-basis.min.js +1 -1
  723. package/umd/dnb-ui-components.min.js +1 -1
  724. package/umd/dnb-ui-elements.min.js +1 -1
  725. package/umd/dnb-ui-extensions.min.js +1 -1
  726. package/umd/dnb-ui-lib.min.js +1 -1
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
+ exports.parseRangeValue = parseRangeValue;
8
9
  require("core-js/modules/web.dom-collections.iterator.js");
9
10
  var _react = _interopRequireWildcard(require("react"));
10
11
  var _components = require("../../../../components");
@@ -15,7 +16,6 @@ var _FieldBlock = _interopRequireDefault(require("../../FieldBlock"));
15
16
  var _Context = _interopRequireDefault(require("../../../../shared/Context"));
16
17
  var _dateFns = require("date-fns");
17
18
  var _useTranslation = _interopRequireDefault(require("../../hooks/useTranslation"));
18
- var _Date = require("../../Value/Date");
19
19
  var _DatePickerCalc = require("../../../../components/date-picker/DatePickerCalc");
20
20
  var _utils2 = require("../../utils");
21
21
  var _startOfDay = _interopRequireDefault(require("date-fns/startOfDay"));
@@ -164,7 +164,7 @@ function DateComponent(props) {
164
164
  }, [range, valueProp]);
165
165
  (0, _react.useMemo)(() => {
166
166
  if ((path || itemPath) && valueProp) {
167
- setDisplayValue((0, _Date.formatDate)(valueProp, {
167
+ setDisplayValue((0, _DatePickerCalc.formatDate)(valueProp, {
168
168
  locale
169
169
  }), undefined);
170
170
  }
@@ -227,14 +227,14 @@ function validateDateLimit(_ref3) {
227
227
  if ((0, _dateFns.isBefore)(startDate, minDate)) {
228
228
  messages.push(new _utils2.FormError('Date.errorMinDate', {
229
229
  messageValues: {
230
- date: (0, _Date.formatDate)(isoDates.minDate, options)
230
+ date: (0, _DatePickerCalc.formatDate)(isoDates.minDate, options)
231
231
  }
232
232
  }));
233
233
  }
234
234
  if ((0, _dateFns.isAfter)(startDate, maxDate)) {
235
235
  messages.push(new _utils2.FormError('Date.errorMaxDate', {
236
236
  messageValues: {
237
- date: (0, _Date.formatDate)(isoDates.maxDate, options)
237
+ date: (0, _DatePickerCalc.formatDate)(isoDates.maxDate, options)
238
238
  }
239
239
  }));
240
240
  }
@@ -243,28 +243,28 @@ function validateDateLimit(_ref3) {
243
243
  if ((0, _dateFns.isBefore)(startDate, minDate)) {
244
244
  messages.push(new _utils2.FormError('Date.errorStartDateMinDate', {
245
245
  messageValues: {
246
- date: (0, _Date.formatDate)(isoDates.minDate, options)
246
+ date: (0, _DatePickerCalc.formatDate)(isoDates.minDate, options)
247
247
  }
248
248
  }));
249
249
  }
250
250
  if ((0, _dateFns.isAfter)(startDate, maxDate)) {
251
251
  messages.push(new _utils2.FormError('Date.errorStartDateMaxDate', {
252
252
  messageValues: {
253
- date: (0, _Date.formatDate)(isoDates.maxDate, options)
253
+ date: (0, _DatePickerCalc.formatDate)(isoDates.maxDate, options)
254
254
  }
255
255
  }));
256
256
  }
257
257
  if ((0, _dateFns.isBefore)(endDate, minDate)) {
258
258
  messages.push(new _utils2.FormError('Date.errorEndDateMinDate', {
259
259
  messageValues: {
260
- date: (0, _Date.formatDate)(isoDates.minDate, options)
260
+ date: (0, _DatePickerCalc.formatDate)(isoDates.minDate, options)
261
261
  }
262
262
  }));
263
263
  }
264
264
  if ((0, _dateFns.isAfter)(endDate, maxDate)) {
265
265
  messages.push(new _utils2.FormError('Date.errorEndDateMaxDate', {
266
266
  messageValues: {
267
- date: (0, _Date.formatDate)(isoDates.maxDate, options)
267
+ date: (0, _DatePickerCalc.formatDate)(isoDates.maxDate, options)
268
268
  }
269
269
  }));
270
270
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Date.js","names":["_react","_interopRequireWildcard","require","_components","_hooks","_utils","_classnames","_interopRequireDefault","_FieldBlock","_Context","_dateFns","_useTranslation","_Date","_DatePickerCalc","_utils2","_startOfDay","_useInvalidDates","_excluded","_excluded2","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","DateComponent","props","errorRequired","label","defaultLabel","useTranslation","Date","locale","useContext","SharedContext","invalidDatesRef","setInvalidDates","useInvalidDates","errorMessages","useMemo","schema","_props$schema","type","pattern","validateRequired","useCallback","_ref","required","error","isValid","parseISO","undefined","dateValidator","invalidDateErrors","validateDate","current","minDate","maxDate","dateLimitErrors","validateDateLimit","isRange","range","onBlurValidator","fromInput","_ref2","date","start_date","end_date","invalidDate","invalidStartDate","invalidEndDate","preparedProps","exportValidators","_useFieldProps","useFieldProps","id","path","itemPath","className","valueProp","hasError","disabled","htmlAttributes","handleFocus","handleBlur","handleChange","setDisplayValue","showCancelButton","showResetButton","showInput","onReset","rest","datePickerProps","pickDatePickerProps","startDate","endDate","parseRangeValue","formatDate","fieldBlockProps","forId","classnames","pickSpacingProps","createElement","DatePicker","status","onChange","event","onFocus","onBlur","split","map","test","_ref3","dates","startDateParsed","endDateParsed","startOfDay","convertStringToDate","isoDates","toISOString","options","variant","messages","isBefore","FormError","messageValues","isAfter","_ref4","errors","datePickerPropKeys","reduce","key","includes","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { DatePicker } from '../../../../components'\nimport { useFieldProps } from '../../hooks'\nimport type {\n FieldProps,\n AllJSONSchemaVersions,\n ValidatorDisableable,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport classnames from 'classnames'\nimport FieldBlock, { Props as FieldBlockProps } from '../../FieldBlock'\nimport SharedContext from '../../../../shared/Context'\nimport { parseISO, isValid, isBefore, isAfter } from 'date-fns'\nimport useTranslation from '../../hooks/useTranslation'\nimport { FormatDateOptions, formatDate } from '../../Value/Date'\nimport {\n DatePickerEvent,\n DatePickerProps,\n} from '../../../../components/DatePicker'\nimport { convertStringToDate } from '../../../../components/date-picker/DatePickerCalc'\nimport { ProviderProps } from '../../../../shared/Provider'\nimport { FormError } from '../../utils'\nimport startOfDay from 'date-fns/startOfDay'\nimport { InvalidDates } from '../../../../components/date-picker/DatePickerInput'\nimport useInvalidDates from './hooks/useInvalidDates'\n\n// `range`, `showInput`, `showCancelButton` and `showResetButton` are not picked from the `DatePickerProps`\n// Since they require `Field.Date` specific comments, due to them having different default values\nexport type DateProps = Omit<\n FieldProps<string, undefined | string>,\n 'onBlurValidator'\n> & {\n // Validation\n pattern?: string\n /**\n * Defines if the Date field should support a value of two dates (starting and ending date).\n * The value needs to be a string containing two dates, separated by a pipe character (`|`) i.e. (`01-09-2024|30-09-2024`) when this is set to `true`.\n * Defaults to `false`.\n */\n range?: DatePickerProps['range']\n /**\n * If the input fields with the mask should be visible. Defaults to `true`.\n */\n showInput?: DatePickerProps['showInput']\n\n /**\n * If set to `true`, a cancel button will be shown. You can change the default text by using `cancel_button_text=\"Avbryt\"` Defaults to `true`. If the `range` prop is `true`, then the cancel button is shown.\n */\n showCancelButton?: DatePickerProps['showCancelButton']\n /**\n * If set to `true`, a reset button will be shown. You can change the default text by using `reset_button_text=\"Tilbakestill\"` Defaults to `true`.\n */\n showResetButton?: DatePickerProps['showResetButton']\n onBlurValidator?: ValidatorDisableable<string>\n} & Pick<\n DatePickerProps,\n | 'month'\n | 'startMonth'\n | 'endMonth'\n | 'minDate'\n | 'maxDate'\n | 'correctInvalidDate'\n | 'maskOrder'\n | 'maskPlaceholder'\n | 'dateFormat'\n | 'returnFormat'\n | 'hideNavigation'\n | 'hideDays'\n | 'onlyMonth'\n | 'hideLastWeek'\n | 'disableAutofocus'\n | 'showSubmitButton'\n | 'submitButtonText'\n | 'cancelButtonText'\n | 'resetButtonText'\n | 'firstDay'\n | 'link'\n | 'size'\n | 'sync'\n | 'addonElement'\n | 'shortcuts'\n | 'opened'\n | 'direction'\n | 'alignPicker'\n | 'onDaysRender'\n | 'onType'\n | 'onShow'\n | 'onHide'\n | 'onSubmit'\n | 'onCancel'\n | 'onReset'\n | 'skipPortal'\n >\n\nfunction DateComponent(props: DateProps) {\n const { errorRequired, label: defaultLabel } = useTranslation().Date\n const { locale } = useContext(SharedContext)\n\n const { invalidDatesRef, setInvalidDates } = useInvalidDates()\n\n const errorMessages = useMemo(() => {\n return {\n 'Field.errorRequired': errorRequired,\n 'Field.errorPattern': errorRequired,\n ...props.errorMessages,\n }\n }, [props.errorMessages, errorRequired])\n\n const schema = useMemo<AllJSONSchemaVersions>(\n () =>\n props.schema ?? {\n type: 'string',\n pattern: props.pattern,\n },\n [props.schema, props.pattern]\n )\n\n const validateRequired = useCallback(\n (value: string, { required, error }) => {\n if (required && (!value || !isValid(parseISO(value)))) {\n return error\n }\n\n return undefined\n },\n []\n )\n\n const dateValidator = useCallback(\n (value: string) => {\n const invalidDateErrors = validateDate(invalidDatesRef.current)\n\n // No need to validate min/max date if they are not provided\n if (!props.minDate && !props.maxDate) {\n return invalidDateErrors\n }\n\n const dateLimitErrors = validateDateLimit({\n value,\n locale,\n minDate: props.minDate,\n maxDate: props.maxDate,\n isRange: props.range,\n })\n\n return [...invalidDateErrors, ...dateLimitErrors]\n },\n [props.maxDate, props.minDate, props.range, invalidDatesRef, locale]\n )\n\n const onBlurValidator = useMemo(() => {\n if (props.onBlurValidator === false) {\n return undefined\n }\n\n if (props.onBlurValidator) {\n return props.onBlurValidator\n }\n\n return dateValidator\n }, [props.onBlurValidator, dateValidator])\n\n const fromInput = useCallback(\n ({\n date,\n start_date,\n end_date,\n invalidDate,\n invalidStartDate,\n invalidEndDate,\n }: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>) => {\n // Add to ref, for use in onBlurValidator, would be better if there was a way to add this to additional args\n setInvalidDates({\n invalidDate,\n invalidStartDate,\n invalidEndDate,\n })\n\n return props.range ? `${start_date}|${end_date}` : date\n },\n [props.range, setInvalidDates]\n )\n\n const preparedProps = {\n ...props,\n errorMessages,\n schema,\n fromInput,\n validateRequired,\n onBlurValidator,\n exportValidators: { dateValidator },\n invalidDatesRef,\n }\n\n const {\n id,\n path,\n itemPath,\n className,\n label,\n value: valueProp,\n hasError,\n disabled,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n setDisplayValue,\n range,\n showCancelButton = true,\n showResetButton = true,\n showInput = true,\n onReset,\n minDate,\n maxDate,\n ...rest\n } = useFieldProps(preparedProps)\n\n const datePickerProps = pickDatePickerProps(rest)\n\n const { value, startDate, endDate } = useMemo(() => {\n if (!range || !valueProp) {\n return {\n // Assign to null if falsy value, to properly clear input values\n value: valueProp ?? null,\n startDate: undefined,\n endDate: undefined,\n }\n }\n\n const [startDate, endDate] = parseRangeValue(valueProp)\n\n return {\n value: undefined,\n startDate,\n endDate,\n }\n }, [range, valueProp])\n\n useMemo(() => {\n if ((path || itemPath) && valueProp) {\n setDisplayValue(formatDate(valueProp, { locale }), undefined)\n }\n }, [itemPath, locale, path, setDisplayValue, valueProp])\n\n const fieldBlockProps: FieldBlockProps = {\n forId: id,\n label: label ?? defaultLabel,\n className: classnames('dnb-forms-field-string', className),\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <DatePicker\n id={id}\n date={value}\n disabled={disabled}\n showInput={showInput}\n showCancelButton={showCancelButton}\n showResetButton={showResetButton}\n startDate={startDate}\n endDate={endDate}\n minDate={minDate}\n maxDate={maxDate}\n status={hasError ? 'error' : undefined}\n range={range}\n onChange={handleChange}\n onReset={(event) => {\n handleChange(event)\n onReset?.(event)\n }}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...datePickerProps}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\nfunction parseRangeValue(value: DateProps['value']) {\n return (\n value\n .split('|')\n // Assign to null if falsy value, to properly clear input values\n .map((value) => (/(undefined|null)/.test(value) ? null : value))\n )\n}\n\n// Validators\nfunction validateDateLimit({\n value,\n isRange,\n locale,\n ...dates\n}: {\n value: DateProps['value']\n minDate: DateProps['minDate']\n maxDate: DateProps['maxDate']\n isRange: DateProps['range']\n locale: ProviderProps['locale']\n}) {\n if ((!dates.minDate && !dates.maxDate) || !value) {\n return []\n }\n\n const [startDateParsed, endDateParsed] = parseRangeValue(value)\n\n // Set dates to the start of the day to compare the actual days, and not day and time\n const minDate = startOfDay(convertStringToDate(dates.minDate))\n const maxDate = startOfDay(convertStringToDate(dates.maxDate))\n\n const startDate = startOfDay(convertStringToDate(startDateParsed))\n const endDate = startOfDay(convertStringToDate(endDateParsed))\n\n const isoDates = {\n minDate:\n dates.minDate instanceof Date\n ? dates.minDate.toISOString()\n : dates.minDate,\n maxDate:\n dates.maxDate instanceof Date\n ? dates.maxDate.toISOString()\n : dates.maxDate,\n }\n\n const options: FormatDateOptions = {\n locale,\n variant: 'long',\n }\n\n const messages: Array<FormError> = []\n\n // Handle non range validation\n if (!isRange) {\n if (isBefore(startDate, minDate)) {\n messages.push(\n new FormError('Date.errorMinDate', {\n messageValues: { date: formatDate(isoDates.minDate, options) },\n })\n )\n }\n\n if (isAfter(startDate, maxDate)) {\n messages.push(\n new FormError('Date.errorMaxDate', {\n messageValues: { date: formatDate(isoDates.maxDate, options) },\n })\n )\n }\n\n return messages\n }\n\n // Start date validation\n if (isBefore(startDate, minDate)) {\n messages.push(\n new FormError('Date.errorStartDateMinDate', {\n messageValues: { date: formatDate(isoDates.minDate, options) },\n })\n )\n }\n\n if (isAfter(startDate, maxDate)) {\n messages.push(\n new FormError('Date.errorStartDateMaxDate', {\n messageValues: { date: formatDate(isoDates.maxDate, options) },\n })\n )\n }\n\n // End date validation\n if (isBefore(endDate, minDate)) {\n messages.push(\n new FormError('Date.errorEndDateMinDate', {\n messageValues: { date: formatDate(isoDates.minDate, options) },\n })\n )\n }\n\n if (isAfter(endDate, maxDate)) {\n messages.push(\n new FormError('Date.errorEndDateMaxDate', {\n messageValues: { date: formatDate(isoDates.maxDate, options) },\n })\n )\n }\n\n return messages\n}\n\nfunction validateDate({\n invalidDate,\n invalidStartDate,\n invalidEndDate,\n}: InvalidDates) {\n if (invalidDate) {\n return [\n new FormError('Date.errorInvalidDate', {\n messageValues: { date: invalidDate },\n }),\n ]\n }\n\n const errors: Array<FormError> = []\n\n if (invalidStartDate) {\n errors.push(\n new FormError('Date.errorInvalidStartDate', {\n messageValues: { date: invalidStartDate },\n })\n )\n }\n\n if (invalidEndDate) {\n errors.push(\n new FormError('Date.errorInvalidEndDate', {\n messageValues: { date: invalidEndDate },\n })\n )\n }\n\n return errors\n}\n\n// Used to filter out DatePickerProps from the FieldProps.\n// Includes DatePickerProps that are not destructured in useFieldProps\nconst datePickerPropKeys = [\n 'month',\n 'startMonth',\n 'endMonth',\n 'minDate',\n 'maxDate',\n 'correctInvalidDate',\n 'maskOrder',\n 'maskPlaceholder',\n 'dateFormat',\n 'returnFormat',\n 'hideNavigation',\n 'hideDays',\n 'onlyMonth',\n 'hideLastWeek',\n 'disableAutofocus',\n 'showSubmitButton',\n 'submitButtonText',\n 'cancelButtonText',\n 'resetButtonText',\n 'firstDay',\n 'link',\n 'size',\n 'sync',\n 'addonElement',\n 'shortcuts',\n 'opened',\n 'direction',\n 'alignPicker',\n 'onDaysRender',\n 'showInput',\n 'onDaysRender',\n 'onType',\n 'onShow',\n 'onHide',\n 'onSubmit',\n 'onCancel',\n 'onReset',\n 'skipPortal',\n]\n\nfunction pickDatePickerProps(props: DateProps) {\n const datePickerProps = Object.keys(props).reduce(\n (datePickerProps, key) => {\n if (datePickerPropKeys.includes(key)) {\n datePickerProps[key] = props[key]\n }\n\n return datePickerProps\n },\n {}\n )\n\n return datePickerProps\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Date.js","names":["_react","_interopRequireWildcard","require","_components","_hooks","_utils","_classnames","_interopRequireDefault","_FieldBlock","_Context","_dateFns","_useTranslation","_DatePickerCalc","_utils2","_startOfDay","_useInvalidDates","_excluded","_excluded2","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","DateComponent","props","errorRequired","label","defaultLabel","useTranslation","Date","locale","useContext","SharedContext","invalidDatesRef","setInvalidDates","useInvalidDates","errorMessages","useMemo","schema","_props$schema","type","pattern","validateRequired","useCallback","_ref","required","error","isValid","parseISO","undefined","dateValidator","invalidDateErrors","validateDate","current","minDate","maxDate","dateLimitErrors","validateDateLimit","isRange","range","onBlurValidator","fromInput","_ref2","date","start_date","end_date","invalidDate","invalidStartDate","invalidEndDate","preparedProps","exportValidators","_useFieldProps","useFieldProps","id","path","itemPath","className","valueProp","hasError","disabled","htmlAttributes","handleFocus","handleBlur","handleChange","setDisplayValue","showCancelButton","showResetButton","showInput","onReset","rest","datePickerProps","pickDatePickerProps","startDate","endDate","parseRangeValue","formatDate","fieldBlockProps","forId","classnames","pickSpacingProps","createElement","DatePicker","status","onChange","event","onFocus","onBlur","split","map","test","_ref3","dates","startDateParsed","endDateParsed","startOfDay","convertStringToDate","isoDates","toISOString","options","variant","messages","isBefore","FormError","messageValues","isAfter","_ref4","errors","datePickerPropKeys","reduce","key","includes","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { DatePicker } from '../../../../components'\nimport { useFieldProps } from '../../hooks'\nimport type {\n FieldProps,\n AllJSONSchemaVersions,\n ValidatorDisableable,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport classnames from 'classnames'\nimport FieldBlock, { Props as FieldBlockProps } from '../../FieldBlock'\nimport SharedContext from '../../../../shared/Context'\nimport { parseISO, isValid, isBefore, isAfter } from 'date-fns'\nimport useTranslation from '../../hooks/useTranslation'\nimport {\n DatePickerEvent,\n DatePickerProps,\n} from '../../../../components/DatePicker'\nimport {\n FormatDateOptions,\n convertStringToDate,\n formatDate,\n} from '../../../../components/date-picker/DatePickerCalc'\nimport { ProviderProps } from '../../../../shared/Provider'\nimport { FormError } from '../../utils'\nimport startOfDay from 'date-fns/startOfDay'\nimport { InvalidDates } from '../../../../components/date-picker/DatePickerInput'\nimport useInvalidDates from './hooks/useInvalidDates'\n\n// `range`, `showInput`, `showCancelButton` and `showResetButton` are not picked from the `DatePickerProps`\n// Since they require `Field.Date` specific comments, due to them having different default values\nexport type DateProps = Omit<\n FieldProps<string, undefined | string>,\n 'onBlurValidator'\n> & {\n // Validation\n pattern?: string\n /**\n * Defines if the Date field should support a value of two dates (starting and ending date).\n * The value needs to be a string containing two dates, separated by a pipe character (`|`) i.e. (`01-09-2024|30-09-2024`) when this is set to `true`.\n * Defaults to `false`.\n */\n range?: DatePickerProps['range']\n /**\n * If the input fields with the mask should be visible. Defaults to `true`.\n */\n showInput?: DatePickerProps['showInput']\n\n /**\n * If set to `true`, a cancel button will be shown. You can change the default text by using `cancel_button_text=\"Avbryt\"` Defaults to `true`. If the `range` prop is `true`, then the cancel button is shown.\n */\n showCancelButton?: DatePickerProps['showCancelButton']\n /**\n * If set to `true`, a reset button will be shown. You can change the default text by using `reset_button_text=\"Tilbakestill\"` Defaults to `true`.\n */\n showResetButton?: DatePickerProps['showResetButton']\n onBlurValidator?: ValidatorDisableable<string>\n} & Pick<\n DatePickerProps,\n | 'month'\n | 'startMonth'\n | 'endMonth'\n | 'minDate'\n | 'maxDate'\n | 'correctInvalidDate'\n | 'maskOrder'\n | 'maskPlaceholder'\n | 'dateFormat'\n | 'returnFormat'\n | 'hideNavigation'\n | 'hideDays'\n | 'onlyMonth'\n | 'hideLastWeek'\n | 'disableAutofocus'\n | 'showSubmitButton'\n | 'submitButtonText'\n | 'cancelButtonText'\n | 'resetButtonText'\n | 'firstDay'\n | 'link'\n | 'size'\n | 'sync'\n | 'addonElement'\n | 'shortcuts'\n | 'opened'\n | 'direction'\n | 'alignPicker'\n | 'onDaysRender'\n | 'onType'\n | 'onShow'\n | 'onHide'\n | 'onSubmit'\n | 'onCancel'\n | 'onReset'\n | 'skipPortal'\n >\n\nfunction DateComponent(props: DateProps) {\n const { errorRequired, label: defaultLabel } = useTranslation().Date\n const { locale } = useContext(SharedContext)\n\n const { invalidDatesRef, setInvalidDates } = useInvalidDates()\n\n const errorMessages = useMemo(() => {\n return {\n 'Field.errorRequired': errorRequired,\n 'Field.errorPattern': errorRequired,\n ...props.errorMessages,\n }\n }, [props.errorMessages, errorRequired])\n\n const schema = useMemo<AllJSONSchemaVersions>(\n () =>\n props.schema ?? {\n type: 'string',\n pattern: props.pattern,\n },\n [props.schema, props.pattern]\n )\n\n const validateRequired = useCallback(\n (value: string, { required, error }) => {\n if (required && (!value || !isValid(parseISO(value)))) {\n return error\n }\n\n return undefined\n },\n []\n )\n\n const dateValidator = useCallback(\n (value: string) => {\n const invalidDateErrors = validateDate(invalidDatesRef.current)\n\n // No need to validate min/max date if they are not provided\n if (!props.minDate && !props.maxDate) {\n return invalidDateErrors\n }\n\n const dateLimitErrors = validateDateLimit({\n value,\n locale,\n minDate: props.minDate,\n maxDate: props.maxDate,\n isRange: props.range,\n })\n\n return [...invalidDateErrors, ...dateLimitErrors]\n },\n [props.maxDate, props.minDate, props.range, invalidDatesRef, locale]\n )\n\n const onBlurValidator = useMemo(() => {\n if (props.onBlurValidator === false) {\n return undefined\n }\n\n if (props.onBlurValidator) {\n return props.onBlurValidator\n }\n\n return dateValidator\n }, [props.onBlurValidator, dateValidator])\n\n const fromInput = useCallback(\n ({\n date,\n start_date,\n end_date,\n invalidDate,\n invalidStartDate,\n invalidEndDate,\n }: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>) => {\n // Add to ref, for use in onBlurValidator, would be better if there was a way to add this to additional args\n setInvalidDates({\n invalidDate,\n invalidStartDate,\n invalidEndDate,\n })\n\n return props.range ? `${start_date}|${end_date}` : date\n },\n [props.range, setInvalidDates]\n )\n\n const preparedProps = {\n ...props,\n errorMessages,\n schema,\n fromInput,\n validateRequired,\n onBlurValidator,\n exportValidators: { dateValidator },\n invalidDatesRef,\n }\n\n const {\n id,\n path,\n itemPath,\n className,\n label,\n value: valueProp,\n hasError,\n disabled,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n setDisplayValue,\n range,\n showCancelButton = true,\n showResetButton = true,\n showInput = true,\n onReset,\n minDate,\n maxDate,\n ...rest\n } = useFieldProps(preparedProps)\n\n const datePickerProps = pickDatePickerProps(rest)\n\n const { value, startDate, endDate } = useMemo(() => {\n if (!range || !valueProp) {\n return {\n // Assign to null if falsy value, to properly clear input values\n value: valueProp ?? null,\n startDate: undefined,\n endDate: undefined,\n }\n }\n\n const [startDate, endDate] = parseRangeValue(valueProp)\n\n return {\n value: undefined,\n startDate,\n endDate,\n }\n }, [range, valueProp])\n\n useMemo(() => {\n if ((path || itemPath) && valueProp) {\n setDisplayValue(formatDate(valueProp, { locale }), undefined)\n }\n }, [itemPath, locale, path, setDisplayValue, valueProp])\n\n const fieldBlockProps: FieldBlockProps = {\n forId: id,\n label: label ?? defaultLabel,\n className: classnames('dnb-forms-field-string', className),\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <DatePicker\n id={id}\n date={value}\n disabled={disabled}\n showInput={showInput}\n showCancelButton={showCancelButton}\n showResetButton={showResetButton}\n startDate={startDate}\n endDate={endDate}\n minDate={minDate}\n maxDate={maxDate}\n status={hasError ? 'error' : undefined}\n range={range}\n onChange={handleChange}\n onReset={(event) => {\n handleChange(event)\n onReset?.(event)\n }}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...datePickerProps}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\nexport function parseRangeValue(value: DateProps['value']) {\n return (\n value\n .split('|')\n // Assign to null if falsy value, to properly clear input values\n .map((value) => (/(undefined|null)/.test(value) ? null : value))\n )\n}\n\n// Validators\nfunction validateDateLimit({\n value,\n isRange,\n locale,\n ...dates\n}: {\n value: DateProps['value']\n minDate: DateProps['minDate']\n maxDate: DateProps['maxDate']\n isRange: DateProps['range']\n locale: ProviderProps['locale']\n}) {\n if ((!dates.minDate && !dates.maxDate) || !value) {\n return []\n }\n\n const [startDateParsed, endDateParsed] = parseRangeValue(value)\n\n // Set dates to the start of the day to compare the actual days, and not day and time\n const minDate = startOfDay(convertStringToDate(dates.minDate))\n const maxDate = startOfDay(convertStringToDate(dates.maxDate))\n\n const startDate = startOfDay(convertStringToDate(startDateParsed))\n const endDate = startOfDay(convertStringToDate(endDateParsed))\n\n const isoDates = {\n minDate:\n dates.minDate instanceof Date\n ? dates.minDate.toISOString()\n : dates.minDate,\n maxDate:\n dates.maxDate instanceof Date\n ? dates.maxDate.toISOString()\n : dates.maxDate,\n }\n\n const options: FormatDateOptions = {\n locale,\n variant: 'long',\n }\n\n const messages: Array<FormError> = []\n\n // Handle non range validation\n if (!isRange) {\n if (isBefore(startDate, minDate)) {\n messages.push(\n new FormError('Date.errorMinDate', {\n messageValues: { date: formatDate(isoDates.minDate, options) },\n })\n )\n }\n\n if (isAfter(startDate, maxDate)) {\n messages.push(\n new FormError('Date.errorMaxDate', {\n messageValues: { date: formatDate(isoDates.maxDate, options) },\n })\n )\n }\n\n return messages\n }\n\n // Start date validation\n if (isBefore(startDate, minDate)) {\n messages.push(\n new FormError('Date.errorStartDateMinDate', {\n messageValues: { date: formatDate(isoDates.minDate, options) },\n })\n )\n }\n\n if (isAfter(startDate, maxDate)) {\n messages.push(\n new FormError('Date.errorStartDateMaxDate', {\n messageValues: { date: formatDate(isoDates.maxDate, options) },\n })\n )\n }\n\n // End date validation\n if (isBefore(endDate, minDate)) {\n messages.push(\n new FormError('Date.errorEndDateMinDate', {\n messageValues: { date: formatDate(isoDates.minDate, options) },\n })\n )\n }\n\n if (isAfter(endDate, maxDate)) {\n messages.push(\n new FormError('Date.errorEndDateMaxDate', {\n messageValues: { date: formatDate(isoDates.maxDate, options) },\n })\n )\n }\n\n return messages\n}\n\nfunction validateDate({\n invalidDate,\n invalidStartDate,\n invalidEndDate,\n}: InvalidDates) {\n if (invalidDate) {\n return [\n new FormError('Date.errorInvalidDate', {\n messageValues: { date: invalidDate },\n }),\n ]\n }\n\n const errors: Array<FormError> = []\n\n if (invalidStartDate) {\n errors.push(\n new FormError('Date.errorInvalidStartDate', {\n messageValues: { date: invalidStartDate },\n })\n )\n }\n\n if (invalidEndDate) {\n errors.push(\n new FormError('Date.errorInvalidEndDate', {\n messageValues: { date: invalidEndDate },\n })\n )\n }\n\n return errors\n}\n\n// Used to filter out DatePickerProps from the FieldProps.\n// Includes DatePickerProps that are not destructured in useFieldProps\nconst datePickerPropKeys = [\n 'month',\n 'startMonth',\n 'endMonth',\n 'minDate',\n 'maxDate',\n 'correctInvalidDate',\n 'maskOrder',\n 'maskPlaceholder',\n 'dateFormat',\n 'returnFormat',\n 'hideNavigation',\n 'hideDays',\n 'onlyMonth',\n 'hideLastWeek',\n 'disableAutofocus',\n 'showSubmitButton',\n 'submitButtonText',\n 'cancelButtonText',\n 'resetButtonText',\n 'firstDay',\n 'link',\n 'size',\n 'sync',\n 'addonElement',\n 'shortcuts',\n 'opened',\n 'direction',\n 'alignPicker',\n 'onDaysRender',\n 'showInput',\n 'onDaysRender',\n 'onType',\n 'onShow',\n 'onHide',\n 'onSubmit',\n 'onCancel',\n 'onReset',\n 'skipPortal',\n]\n\nfunction pickDatePickerProps(props: DateProps) {\n const datePickerProps = Object.keys(props).reduce(\n (datePickerProps, key) => {\n if (datePickerPropKeys.includes(key)) {\n datePickerProps[key] = props[key]\n }\n\n return datePickerProps\n },\n {}\n )\n\n return datePickerProps\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":"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","ignoreList":[]}
@@ -101,7 +101,8 @@ function Password(_ref) {
101
101
  "aria-describedby": id + '-submit-button',
102
102
  submitElement: _react.default.createElement(ToggleVisibilityButton, null),
103
103
  disabled: disabled,
104
- size: size
104
+ size: size,
105
+ autoComplete: "current-password"
105
106
  }, props));
106
107
  }
107
108
  var _default = exports.default = Password;
@@ -1 +1 @@
1
- {"version":3,"file":"Password.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_String","_Input","_view","_hide","_view_medium","_hide_medium","_withSnakeCaseProps","_useTranslation","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","Password","_ref","_innerRef$current","id","className","innerRef","label","disabled","size","externalProps","props","convertSnakeCaseProps","freeze","hidden","setHidden","useState","sharedContext","useContext","SharedContext","translations","useTranslation","ref","useRef","current","toggleVisibility","useCallback","event","onShowPassword","onHidePassword","focus","getAriaLabel","ariaLabels","showPassword","ariaLabelShow","hidePassword","ariaLabelHide","show_password","hide_password","ToggleVisibilityButton","createElement","SubmitButton","type","variant","icon","IconViewMedium","IconViewOffMedium","IconView","IconViewOff","skeleton","onClick","classnames","submitElement","_default","exports","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Password/Password.tsx"],"sourcesContent":["import React, {\n useContext,\n useRef,\n useState,\n ElementRef,\n MutableRefObject,\n useCallback,\n} from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport StringField, { Props as StringFieldProps } from '../String'\n\nimport { InputProps, SubmitButton } from '../../../../components/Input'\nimport IconView from '../../../../icons/view'\nimport IconViewOff from '../../../../icons/hide'\nimport IconViewMedium from '../../../../icons/view_medium'\nimport IconViewOffMedium from '../../../../icons/hide_medium'\nimport { convertSnakeCaseProps } from '../../../../shared/helpers/withSnakeCaseProps'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type PasswordVisibilityEvent =\n React.MouseEvent<HTMLButtonElement> & {\n value: string\n }\n\nexport type PasswordProps = Omit<StringFieldProps, 'innerRef'> & {\n /**\n * Fires when the input toggles to show the password.\n */\n onShowPassword?: (event: PasswordVisibilityEvent) => void\n /**\n * Fires when the input toggles to hide the password.\n */\n onHidePassword?: (event: PasswordVisibilityEvent) => void\n /**\n * The sizes you can choose is small (1.5rem), default (2rem), medium (2.5rem) and large (3rem) are supported component sizes. Defaults to default / null. Also, if you define a number like size=\"2\" then it will be forwarded as the input element attribute.\n */\n size?: InputProps['size']\n /**\n * ElementRef passed on to the password input element.\n */\n innerRef?: MutableRefObject<HTMLInputElement>\n /**\n * @deprecated in v11, use use `locales`prop on `Provider` and override `passwordShowLabel` instead.\n */\n show_password?: string\n /**\n * @deprecated in v11, use use `locales`prop on `Provider` and override `passwordHideLabel` instead.\n */\n hide_password?: string\n /**\n * @deprecated in v11, use `onShowPassword` instead.\n */\n on_show_password?: (event: PasswordVisibilityEvent) => void\n /**\n * @deprecated in v11, use `onHidePassword` instead.\n */\n on_hide_password?: (event: PasswordVisibilityEvent) => void\n}\n\nfunction Password({\n id,\n className,\n innerRef,\n value,\n label,\n disabled,\n size,\n ...externalProps\n}: PasswordProps) {\n // Object freeze used to prevent mutation of show_password and hide_password props. Freeze and convertToSnakeCase can be removed in v11.\n const props = convertSnakeCaseProps(Object.freeze(externalProps))\n\n const [hidden, setHidden] = useState<boolean>(true)\n\n const sharedContext = useContext(SharedContext)\n const translations = useTranslation().Password\n\n const ref = useRef<ElementRef<'input'>>(innerRef?.current ?? null)\n\n const toggleVisibility = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n const { onShowPassword, onHidePassword } =\n convertSnakeCaseProps(props)\n\n const value = ref.current.value\n\n setHidden((hidden) => {\n hidden\n ? onShowPassword?.({ ...event, value })\n : onHidePassword?.({ ...event, value })\n\n return !hidden\n })\n\n if (ref.current) {\n ref.current.focus()\n }\n },\n [props]\n )\n\n // Can be removed with v11, just used to make sure that the old show_password and hide_password are still backward compatible.\n const getAriaLabel = useCallback(() => {\n const ariaLabels = {\n showPassword: translations.ariaLabelShow,\n hidePassword: translations.ariaLabelHide,\n }\n\n if (externalProps.show_password) {\n ariaLabels['showPassword'] = externalProps.show_password\n }\n\n if (externalProps.hide_password) {\n ariaLabels['hidePassword'] = externalProps.hide_password\n }\n\n return ariaLabels\n }, [\n externalProps.show_password,\n externalProps.hide_password,\n translations,\n ])\n\n const ariaLabels = getAriaLabel()\n\n const ToggleVisibilityButton = useCallback(() => {\n return (\n <SubmitButton\n id={id + '-submit-button'}\n type=\"button\"\n variant=\"secondary\"\n aria-controls={id}\n aria-label={\n hidden ? ariaLabels.showPassword : ariaLabels.hidePassword\n }\n icon={\n size === 'large'\n ? hidden\n ? IconViewMedium\n : IconViewOffMedium\n : hidden\n ? IconView\n : IconViewOff\n }\n disabled={disabled}\n skeleton={sharedContext.skeleton}\n onClick={toggleVisibility}\n />\n )\n }, [\n id,\n hidden,\n sharedContext.skeleton,\n disabled,\n size,\n toggleVisibility,\n ariaLabels,\n ])\n\n return (\n <StringField\n id={id}\n className={classnames('dnb-forms-field-password', className)}\n label={label ?? translations.label}\n type={hidden ? 'password' : 'text'}\n value={value}\n innerRef={ref}\n aria-describedby={id + '-submit-button'}\n submitElement={<ToggleVisibilityButton />}\n disabled={disabled}\n size={size}\n {...props}\n />\n )\n}\n\nexport default Password\n\nPassword._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Password.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_String","_Input","_view","_hide","_view_medium","_hide_medium","_withSnakeCaseProps","_useTranslation","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","Password","_ref","_innerRef$current","id","className","innerRef","label","disabled","size","externalProps","props","convertSnakeCaseProps","freeze","hidden","setHidden","useState","sharedContext","useContext","SharedContext","translations","useTranslation","ref","useRef","current","toggleVisibility","useCallback","event","onShowPassword","onHidePassword","focus","getAriaLabel","ariaLabels","showPassword","ariaLabelShow","hidePassword","ariaLabelHide","show_password","hide_password","ToggleVisibilityButton","createElement","SubmitButton","type","variant","icon","IconViewMedium","IconViewOffMedium","IconView","IconViewOff","skeleton","onClick","classnames","submitElement","autoComplete","_default","exports","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Password/Password.tsx"],"sourcesContent":["import React, {\n useContext,\n useRef,\n useState,\n ElementRef,\n MutableRefObject,\n useCallback,\n} from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport StringField, { Props as StringFieldProps } from '../String'\n\nimport { InputProps, SubmitButton } from '../../../../components/Input'\nimport IconView from '../../../../icons/view'\nimport IconViewOff from '../../../../icons/hide'\nimport IconViewMedium from '../../../../icons/view_medium'\nimport IconViewOffMedium from '../../../../icons/hide_medium'\nimport { convertSnakeCaseProps } from '../../../../shared/helpers/withSnakeCaseProps'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type PasswordVisibilityEvent =\n React.MouseEvent<HTMLButtonElement> & {\n value: string\n }\n\nexport type PasswordProps = Omit<StringFieldProps, 'innerRef'> & {\n /**\n * Fires when the input toggles to show the password.\n */\n onShowPassword?: (event: PasswordVisibilityEvent) => void\n /**\n * Fires when the input toggles to hide the password.\n */\n onHidePassword?: (event: PasswordVisibilityEvent) => void\n /**\n * The sizes you can choose is small (1.5rem), default (2rem), medium (2.5rem) and large (3rem) are supported component sizes. Defaults to default / null. Also, if you define a number like size=\"2\" then it will be forwarded as the input element attribute.\n */\n size?: InputProps['size']\n /**\n * ElementRef passed on to the password input element.\n */\n innerRef?: MutableRefObject<HTMLInputElement>\n /**\n * @deprecated in v11, use use `locales`prop on `Provider` and override `passwordShowLabel` instead.\n */\n show_password?: string\n /**\n * @deprecated in v11, use use `locales`prop on `Provider` and override `passwordHideLabel` instead.\n */\n hide_password?: string\n /**\n * @deprecated in v11, use `onShowPassword` instead.\n */\n on_show_password?: (event: PasswordVisibilityEvent) => void\n /**\n * @deprecated in v11, use `onHidePassword` instead.\n */\n on_hide_password?: (event: PasswordVisibilityEvent) => void\n}\n\nfunction Password({\n id,\n className,\n innerRef,\n value,\n label,\n disabled,\n size,\n ...externalProps\n}: PasswordProps) {\n // Object freeze used to prevent mutation of show_password and hide_password props. Freeze and convertToSnakeCase can be removed in v11.\n const props = convertSnakeCaseProps(Object.freeze(externalProps))\n\n const [hidden, setHidden] = useState<boolean>(true)\n\n const sharedContext = useContext(SharedContext)\n const translations = useTranslation().Password\n\n const ref = useRef<ElementRef<'input'>>(innerRef?.current ?? null)\n\n const toggleVisibility = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n const { onShowPassword, onHidePassword } =\n convertSnakeCaseProps(props)\n\n const value = ref.current.value\n\n setHidden((hidden) => {\n hidden\n ? onShowPassword?.({ ...event, value })\n : onHidePassword?.({ ...event, value })\n\n return !hidden\n })\n\n if (ref.current) {\n ref.current.focus()\n }\n },\n [props]\n )\n\n // Can be removed with v11, just used to make sure that the old show_password and hide_password are still backward compatible.\n const getAriaLabel = useCallback(() => {\n const ariaLabels = {\n showPassword: translations.ariaLabelShow,\n hidePassword: translations.ariaLabelHide,\n }\n\n if (externalProps.show_password) {\n ariaLabels['showPassword'] = externalProps.show_password\n }\n\n if (externalProps.hide_password) {\n ariaLabels['hidePassword'] = externalProps.hide_password\n }\n\n return ariaLabels\n }, [\n externalProps.show_password,\n externalProps.hide_password,\n translations,\n ])\n\n const ariaLabels = getAriaLabel()\n\n const ToggleVisibilityButton = useCallback(() => {\n return (\n <SubmitButton\n id={id + '-submit-button'}\n type=\"button\"\n variant=\"secondary\"\n aria-controls={id}\n aria-label={\n hidden ? ariaLabels.showPassword : ariaLabels.hidePassword\n }\n icon={\n size === 'large'\n ? hidden\n ? IconViewMedium\n : IconViewOffMedium\n : hidden\n ? IconView\n : IconViewOff\n }\n disabled={disabled}\n skeleton={sharedContext.skeleton}\n onClick={toggleVisibility}\n />\n )\n }, [\n id,\n hidden,\n sharedContext.skeleton,\n disabled,\n size,\n toggleVisibility,\n ariaLabels,\n ])\n\n return (\n <StringField\n id={id}\n className={classnames('dnb-forms-field-password', className)}\n label={label ?? translations.label}\n type={hidden ? 'password' : 'text'}\n value={value}\n innerRef={ref}\n aria-describedby={id + '-submit-button'}\n submitElement={<ToggleVisibilityButton />}\n disabled={disabled}\n size={size}\n autoComplete=\"current-password\"\n {...props}\n />\n )\n}\n\nexport default Password\n\nPassword._supportsSpacingProps = true\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,KAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,YAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,YAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,mBAAA,GAAAV,OAAA;AACA,IAAAW,eAAA,GAAAT,sBAAA,CAAAF,OAAA;AAAuD,MAAAY,SAAA;AAAA,SAAAV,uBAAAW,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAd,wBAAAc,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAT,CAAA,MAAAA,CAAA,GAAAuB,SAAA,CAAAC,MAAA,EAAAxB,CAAA,UAAAM,CAAA,GAAAiB,SAAA,CAAAvB,CAAA,YAAAK,CAAA,IAAAC,CAAA,OAAAU,cAAA,CAAAC,IAAA,CAAAX,CAAA,EAAAD,CAAA,MAAAI,CAAA,CAAAJ,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAI,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAAA,SAAAG,QAAA1B,CAAA,EAAAK,CAAA,QAAAC,CAAA,GAAAM,MAAA,CAAAe,IAAA,CAAA3B,CAAA,OAAAY,MAAA,CAAAgB,qBAAA,QAAAC,CAAA,GAAAjB,MAAA,CAAAgB,qBAAA,CAAA5B,CAAA,GAAAK,CAAA,KAAAwB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAzB,CAAA,WAAAO,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAK,CAAA,EAAA0B,UAAA,OAAAzB,CAAA,CAAA0B,IAAA,CAAAP,KAAA,CAAAnB,CAAA,EAAAuB,CAAA,YAAAvB,CAAA;AAAA,SAAA2B,cAAAjC,CAAA,aAAAK,CAAA,MAAAA,CAAA,GAAAkB,SAAA,CAAAC,MAAA,EAAAnB,CAAA,UAAAC,CAAA,WAAAiB,SAAA,CAAAlB,CAAA,IAAAkB,SAAA,CAAAlB,CAAA,QAAAA,CAAA,OAAAqB,OAAA,CAAAd,MAAA,CAAAN,CAAA,OAAA4B,OAAA,WAAA7B,CAAA,IAAA8B,eAAA,CAAAnC,CAAA,EAAAK,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAO,MAAA,CAAAwB,yBAAA,GAAAxB,MAAA,CAAAyB,gBAAA,CAAArC,CAAA,EAAAY,MAAA,CAAAwB,yBAAA,CAAA9B,CAAA,KAAAoB,OAAA,CAAAd,MAAA,CAAAN,CAAA,GAAA4B,OAAA,WAAA7B,CAAA,IAAAO,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAK,CAAA,EAAAO,MAAA,CAAAE,wBAAA,CAAAR,CAAA,EAAAD,CAAA,iBAAAL,CAAA;AAAA,SAAAmC,gBAAAnC,CAAA,EAAAK,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAiC,cAAA,CAAAjC,CAAA,MAAAL,CAAA,GAAAY,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAK,CAAA,IAAAkC,KAAA,EAAAjC,CAAA,EAAAyB,UAAA,MAAAS,YAAA,MAAAC,QAAA,UAAAzC,CAAA,CAAAK,CAAA,IAAAC,CAAA,EAAAN,CAAA;AAAA,SAAAsC,eAAAhC,CAAA,QAAAY,CAAA,GAAAwB,YAAA,CAAApC,CAAA,uCAAAY,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAwB,aAAApC,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAN,CAAA,GAAAM,CAAA,CAAAqC,MAAA,CAAAC,WAAA,kBAAA5C,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAiB,IAAA,CAAAX,CAAA,EAAAD,CAAA,uCAAAa,CAAA,SAAAA,CAAA,YAAA2B,SAAA,yEAAAxC,CAAA,GAAAyC,MAAA,GAAAC,MAAA,EAAAzC,CAAA;AAAA,SAAA0C,yBAAAhD,CAAA,EAAAM,CAAA,gBAAAN,CAAA,iBAAA6B,CAAA,EAAAxB,CAAA,EAAAa,CAAA,GAAA+B,6BAAA,CAAAjD,CAAA,EAAAM,CAAA,OAAAM,MAAA,CAAAgB,qBAAA,QAAAnB,CAAA,GAAAG,MAAA,CAAAgB,qBAAA,CAAA5B,CAAA,QAAAK,CAAA,MAAAA,CAAA,GAAAI,CAAA,CAAAe,MAAA,EAAAnB,CAAA,IAAAwB,CAAA,GAAApB,CAAA,CAAAJ,CAAA,UAAAC,CAAA,CAAA4C,OAAA,CAAArB,CAAA,QAAAsB,oBAAA,CAAAlC,IAAA,CAAAjB,CAAA,EAAA6B,CAAA,MAAAX,CAAA,CAAAW,CAAA,IAAA7B,CAAA,CAAA6B,CAAA,aAAAX,CAAA;AAAA,SAAA+B,8BAAA5C,CAAA,EAAAL,CAAA,gBAAAK,CAAA,iBAAAC,CAAA,gBAAAG,CAAA,IAAAJ,CAAA,SAAAW,cAAA,CAAAC,IAAA,CAAAZ,CAAA,EAAAI,CAAA,gBAAAT,CAAA,CAAAkD,OAAA,CAAAzC,CAAA,aAAAH,CAAA,CAAAG,CAAA,IAAAJ,CAAA,CAAAI,CAAA,YAAAH,CAAA;AA0CvD,SAAS8C,QAAQA,CAAAC,IAAA,EASC;EAAA,IAAAC,iBAAA;EAAA,IATA;MAChBC,EAAE;MACFC,SAAS;MACTC,QAAQ;MACRlB,KAAK;MACLmB,KAAK;MACLC,QAAQ;MACRC;IAEa,CAAC,GAAAP,IAAA;IADXQ,aAAa,GAAAb,wBAAA,CAAAK,IAAA,EAAAtD,SAAA;EAGhB,MAAM+D,KAAK,GAAG,IAAAC,yCAAqB,EAACnD,MAAM,CAACoD,MAAM,CAACH,aAAa,CAAC,CAAC;EAEjE,MAAM,CAACI,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAC,eAAQ,EAAU,IAAI,CAAC;EAEnD,MAAMC,aAAa,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAC/C,MAAMC,YAAY,GAAG,IAAAC,uBAAc,EAAC,CAAC,CAACpB,QAAQ;EAE9C,MAAMqB,GAAG,GAAG,IAAAC,aAAM,GAAApB,iBAAA,GAAsBG,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEkB,OAAO,cAAArB,iBAAA,cAAAA,iBAAA,GAAI,IAAI,CAAC;EAElE,MAAMsB,gBAAgB,GAAG,IAAAC,kBAAW,EACjCC,KAA0C,IAAK;IAC9C,MAAM;MAAEC,cAAc;MAAEC;IAAe,CAAC,GACtC,IAAAjB,yCAAqB,EAACD,KAAK,CAAC;IAE9B,MAAMvB,KAAK,GAAGkC,GAAG,CAACE,OAAO,CAACpC,KAAK;IAE/B2B,SAAS,CAAED,MAAM,IAAK;MACpBA,MAAM,GACFc,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAA9C,aAAA,CAAAA,aAAA,KAAQ6C,KAAK;QAAEvC;MAAK,EAAE,CAAC,GACrCyC,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAA/C,aAAA,CAAAA,aAAA,KAAQ6C,KAAK;QAAEvC;MAAK,EAAE,CAAC;MAEzC,OAAO,CAAC0B,MAAM;IAChB,CAAC,CAAC;IAEF,IAAIQ,GAAG,CAACE,OAAO,EAAE;MACfF,GAAG,CAACE,OAAO,CAACM,KAAK,CAAC,CAAC;IACrB;EACF,CAAC,EACD,CAACnB,KAAK,CACR,CAAC;EAGD,MAAMoB,YAAY,GAAG,IAAAL,kBAAW,EAAC,MAAM;IACrC,MAAMM,UAAU,GAAG;MACjBC,YAAY,EAAEb,YAAY,CAACc,aAAa;MACxCC,YAAY,EAAEf,YAAY,CAACgB;IAC7B,CAAC;IAED,IAAI1B,aAAa,CAAC2B,aAAa,EAAE;MAC/BL,UAAU,CAAC,cAAc,CAAC,GAAGtB,aAAa,CAAC2B,aAAa;IAC1D;IAEA,IAAI3B,aAAa,CAAC4B,aAAa,EAAE;MAC/BN,UAAU,CAAC,cAAc,CAAC,GAAGtB,aAAa,CAAC4B,aAAa;IAC1D;IAEA,OAAON,UAAU;EACnB,CAAC,EAAE,CACDtB,aAAa,CAAC2B,aAAa,EAC3B3B,aAAa,CAAC4B,aAAa,EAC3BlB,YAAY,CACb,CAAC;EAEF,MAAMY,UAAU,GAAGD,YAAY,CAAC,CAAC;EAEjC,MAAMQ,sBAAsB,GAAG,IAAAb,kBAAW,EAAC,MAAM;IAC/C,OACE5F,MAAA,CAAAiB,OAAA,CAAAyF,aAAA,CAACnG,MAAA,CAAAoG,YAAY;MACXrC,EAAE,EAAEA,EAAE,GAAG,gBAAiB;MAC1BsC,IAAI,EAAC,QAAQ;MACbC,OAAO,EAAC,WAAW;MACnB,iBAAevC,EAAG;MAClB,cACEU,MAAM,GAAGkB,UAAU,CAACC,YAAY,GAAGD,UAAU,CAACG,YAC/C;MACDS,IAAI,EACFnC,IAAI,KAAK,OAAO,GACZK,MAAM,GACJ+B,oBAAc,GACdC,oBAAiB,GACnBhC,MAAM,GACNiC,aAAQ,GACRC,aACL;MACDxC,QAAQ,EAAEA,QAAS;MACnByC,QAAQ,EAAEhC,aAAa,CAACgC,QAAS;MACjCC,OAAO,EAAEzB;IAAiB,CAC3B,CAAC;EAEN,CAAC,EAAE,CACDrB,EAAE,EACFU,MAAM,EACNG,aAAa,CAACgC,QAAQ,EACtBzC,QAAQ,EACRC,IAAI,EACJgB,gBAAgB,EAChBO,UAAU,CACX,CAAC;EAEF,OACElG,MAAA,CAAAiB,OAAA,CAAAyF,aAAA,CAACpG,OAAA,CAAAW,OAAW,EAAAkB,QAAA;IACVmC,EAAE,EAAEA,EAAG;IACPC,SAAS,EAAE,IAAA8C,mBAAU,EAAC,0BAA0B,EAAE9C,SAAS,CAAE;IAC7DE,KAAK,EAAEA,KAAK,aAALA,KAAK,cAALA,KAAK,GAAIa,YAAY,CAACb,KAAM;IACnCmC,IAAI,EAAE5B,MAAM,GAAG,UAAU,GAAG,MAAO;IACnC1B,KAAK,EAAEA,KAAM;IACbkB,QAAQ,EAAEgB,GAAI;IACd,oBAAkBlB,EAAE,GAAG,gBAAiB;IACxCgD,aAAa,EAAEtH,MAAA,CAAAiB,OAAA,CAAAyF,aAAA,CAACD,sBAAsB,MAAE,CAAE;IAC1C/B,QAAQ,EAAEA,QAAS;IACnBC,IAAI,EAAEA,IAAK;IACX4C,YAAY,EAAC;EAAkB,GAC3B1C,KAAK,CACV,CAAC;AAEN;AAAC,IAAA2C,QAAA,GAAAC,OAAA,CAAAxG,OAAA,GAEckD,QAAQ;AAEvBA,QAAQ,CAACuD,qBAAqB,GAAG,IAAI","ignoreList":[]}
@@ -85,8 +85,10 @@ declare function useFieldProvider(props?: Omit<FieldProviderProps, 'children'>):
85
85
  };
86
86
  getValueByPath: import("../../hooks/useDataValue").GetValueByPath<unknown>;
87
87
  getSourceValue: import("../../hooks/useDataValue").GetValueByPath<unknown>;
88
- setFieldEventListener: (path: string, type: "onSubmit" | "onSubmitRequest" | "onPathChange" | "onMount", callback: (params?: {
88
+ setFieldEventListener: (path: string, type: "onSubmit" | "onSubmitCall" | "onSubmitRequest" | "onPathChange" | "onMount", callback: (params?: {
89
89
  value: unknown;
90
+ } | {
91
+ preventSubmit: () => void;
90
92
  }) => void | Promise<void | Error>) => void;
91
93
  validators: Record<string, import("../../types").Validator<unknown, import("../../types").DefaultErrorMessages>>;
92
94
  props: import("../../types").UseFieldProps<unknown, unknown, import("../../types").DefaultErrorMessages>;
@@ -105,8 +107,10 @@ declare function useFieldProvider(props?: Omit<FieldProviderProps, 'children'>):
105
107
  };
106
108
  getValueByPath: import("../../hooks/useDataValue").GetValueByPath<unknown>;
107
109
  getSourceValue: import("../../hooks/useDataValue").GetValueByPath<unknown>;
108
- setFieldEventListener: (path: string, type: "onSubmit" | "onSubmitRequest" | "onPathChange" | "onMount", callback: (params?: {
110
+ setFieldEventListener: (path: string, type: "onSubmit" | "onSubmitCall" | "onSubmitRequest" | "onPathChange" | "onMount", callback: (params?: {
109
111
  value: unknown;
112
+ } | {
113
+ preventSubmit: () => void;
110
114
  }) => void | Promise<void | Error>) => void;
111
115
  validators: Record<string, import("../../types").Validator<unknown, import("../../types").DefaultErrorMessages>>;
112
116
  props: import("../../types").UseFieldProps<unknown, unknown, import("../../types").DefaultErrorMessages>;
@@ -125,8 +129,10 @@ declare function useFieldProvider(props?: Omit<FieldProviderProps, 'children'>):
125
129
  };
126
130
  getValueByPath: import("../../hooks/useDataValue").GetValueByPath<unknown>;
127
131
  getSourceValue: import("../../hooks/useDataValue").GetValueByPath<unknown>;
128
- setFieldEventListener: (path: string, type: "onSubmit" | "onSubmitRequest" | "onPathChange" | "onMount", callback: (params?: {
132
+ setFieldEventListener: (path: string, type: "onSubmit" | "onSubmitCall" | "onSubmitRequest" | "onPathChange" | "onMount", callback: (params?: {
129
133
  value: unknown;
134
+ } | {
135
+ preventSubmit: () => void;
130
136
  }) => void | Promise<void | Error>) => void;
131
137
  validators: Record<string, import("../../types").Validator<unknown, import("../../types").DefaultErrorMessages>>;
132
138
  props: import("../../types").UseFieldProps<unknown, unknown, import("../../types").DefaultErrorMessages>;
@@ -6,7 +6,7 @@ export type { UploadFile, UploadFileNative };
6
6
  export type UploadValue = Array<UploadFile | UploadFileNative>;
7
7
  export type Props = Omit<FieldProps<UploadValue, UploadValue | undefined>, 'name'> & SpacingProps & {
8
8
  width?: Omit<FieldBlockWidth, 'medium' | 'small'>;
9
- } & Pick<Partial<UploadProps>, 'title' | 'text' | 'acceptedFileTypes' | 'filesAmountLimit' | 'fileMaxSize' | 'onFileDelete' | 'onFileClick' | 'skeleton' | 'download'> & {
9
+ } & Pick<Partial<UploadProps>, 'title' | 'text' | 'acceptedFileTypes' | 'filesAmountLimit' | 'fileMaxSize' | 'onFileDelete' | 'onFileClick' | 'skeleton' | 'download' | 'allowDuplicates'> & {
10
10
  fileHandler?: (newFiles: UploadValue) => UploadValue | Promise<UploadValue>;
11
11
  };
12
12
  declare function UploadComponent(props: Props): import("react/jsx-runtime").JSX.Element;
@@ -91,7 +91,9 @@ function UploadComponent(props) {
91
91
  fileMaxSize = 5,
92
92
  skeleton,
93
93
  onFileDelete,
94
- onFileClick
94
+ onFileClick,
95
+ download,
96
+ allowDuplicates
95
97
  } = rest;
96
98
  const {
97
99
  files,
@@ -163,6 +165,8 @@ function UploadComponent(props) {
163
165
  id: id,
164
166
  acceptedFileTypes: acceptedFileTypes,
165
167
  filesAmountLimit: filesAmountLimit,
168
+ download: download,
169
+ allowDuplicates: allowDuplicates,
166
170
  fileMaxSize: fileMaxSize,
167
171
  skeleton: skeleton,
168
172
  onChange: changeHandler,
@@ -189,7 +193,11 @@ function transformFiles(value) {
189
193
  }
190
194
  value.map(item => {
191
195
  if (item !== null && item !== void 0 && item.file && !(item.file instanceof File)) {
192
- item['file'] = new File([], item['name']);
196
+ var _lastModified, _item$file2, _type, _item$file3;
197
+ item['file'] = new File([], item['name'] || (item === null || item === void 0 ? void 0 : item.file['name']), {
198
+ lastModified: (_lastModified = (_item$file2 = item.file) === null || _item$file2 === void 0 ? void 0 : _item$file2.lastModified) !== null && _lastModified !== void 0 ? _lastModified : 0,
199
+ type: (_type = (_item$file3 = item.file) === null || _item$file3 === void 0 ? void 0 : _item$file3.type) !== null && _type !== void 0 ? _type : ''
200
+ });
193
201
  }
194
202
  return item;
195
203
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Upload.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_Upload","_useUpload","_utils","_HelpButtonInline","_shared","_utils2","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","validateRequired","_ref","required","isChanged","error","hasError","some","file","errorMessage","FormError","hasFiles","undefined","UploadComponent","props","sharedTr","useSharedTranslation","Upload","formsTr","useFormsTranslation","errorMessages","useMemo","errorRequired","fromInput","useCallback","item","index","_item$file","name","preparedProps","toInput","transformFiles","_useFieldProps","useFieldProps","executeOnChangeRegardlessOfError","id","className","width","widthProp","label","labelDescription","help","htmlAttributes","handleChange","handleFocus","handleBlur","fileHandler","rest","title","text","acceptedFileTypes","filesAmountLimit","fileMaxSize","skeleton","onFileDelete","onFileClick","files","setFiles","useUpload","filesRef","useRef","useEffect","current","handleChangeAsync","_filesRef$current","existingFileIds","map","newFiles","includes","newValidFiles","newFilesLoading","isLoading","incomingFiles","incomingFileObj","foundIndex","findIndex","newFile","indexOfFirstNewFile","_ref2","updatedFiles","slice","changeHandler","_ref3","fieldBlockProps","forId","labelSrOnly","classnames","pickSpacingProps","createElement","onChange","Fragment","contentId","left","HelpButtonInlineContent","roundedCorner","_default","exports","_supportsSpacingProps","Array","isArray","File"],"sources":["../../../../../../src/extensions/forms/Field/Upload/Upload.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from 'react'\nimport classnames from 'classnames'\nimport FieldBlock, {\n Props as FieldBlockProps,\n FieldBlockWidth,\n} from '../../FieldBlock'\nimport {\n useFieldProps,\n useTranslation as useFormsTranslation,\n} from '../../hooks'\nimport { FieldProps } from '../../types'\nimport Upload, {\n UploadFile,\n UploadFileNative,\n UploadProps,\n} from '../../../../components/Upload'\nimport useUpload from '../../../../components/upload/useUpload'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport HelpButtonInline, {\n HelpButtonInlineContent,\n} from '../../../../components/help-button/HelpButtonInline'\nimport { useTranslation as useSharedTranslation } from '../../../../shared'\nimport { SpacingProps } from '../../../../shared/types'\nimport { FormError } from '../../utils'\n\nexport type { UploadFile, UploadFileNative }\nexport type UploadValue = Array<UploadFile | UploadFileNative>\nexport type Props = Omit<\n FieldProps<UploadValue, UploadValue | undefined>,\n 'name'\n> &\n SpacingProps & {\n width?: Omit<FieldBlockWidth, 'medium' | 'small'>\n } & Pick<\n Partial<UploadProps>,\n | 'title'\n | 'text'\n | 'acceptedFileTypes'\n | 'filesAmountLimit'\n | 'fileMaxSize'\n | 'onFileDelete'\n | 'onFileClick'\n | 'skeleton'\n | 'download'\n > & {\n fileHandler?: (\n newFiles: UploadValue\n ) => UploadValue | Promise<UploadValue>\n }\n\nconst validateRequired = (\n value: UploadValue,\n { required, isChanged, error }\n) => {\n const hasError = value?.some((file) => file.errorMessage)\n if (hasError) {\n return new FormError('Upload.errorInvalidFiles')\n }\n\n const hasFiles = value?.length > 0\n if (required && ((!isChanged && !hasFiles) || !hasFiles)) {\n return error\n }\n\n return undefined\n}\n\nfunction UploadComponent(props: Props) {\n const sharedTr = useSharedTranslation().Upload\n const formsTr = useFormsTranslation().Upload\n\n const errorMessages = useMemo(\n () => ({\n 'Field.errorRequired': formsTr.errorRequired,\n }),\n [formsTr.errorRequired]\n )\n\n const fromInput = useCallback((value: UploadValue) => {\n value.forEach((item, index) => {\n value[index] = item\n\n // Store the name in the value, to support session storage (serialization)\n value[index]['name'] = item['name'] || item.file?.name\n })\n\n return value\n }, [])\n\n const preparedProps = {\n errorMessages,\n validateRequired,\n fromInput,\n toInput: transformFiles,\n ...props,\n }\n\n const {\n id,\n className,\n width: widthProp = 'stretch',\n value,\n label,\n labelDescription,\n help,\n htmlAttributes,\n handleChange,\n handleFocus,\n handleBlur,\n fileHandler,\n ...rest\n } = useFieldProps(preparedProps, {\n executeOnChangeRegardlessOfError: true,\n })\n\n // Upload props\n const {\n title = sharedTr.title,\n text = sharedTr.text,\n acceptedFileTypes = ['pdf', 'png', 'jpg', 'jpeg'],\n filesAmountLimit = 100,\n fileMaxSize = 5,\n skeleton,\n onFileDelete,\n onFileClick,\n } = rest\n\n const { files, setFiles } = useUpload(id)\n\n const filesRef = useRef<Array<UploadFile>>()\n\n useEffect(() => {\n filesRef.current = files\n }, [files])\n\n useEffect(() => {\n setFiles(value)\n }, [setFiles, value])\n\n const handleChangeAsync = useCallback(\n async (files: UploadValue) => {\n // Filter out existing files\n const existingFileIds =\n filesRef.current?.map((file) => file.id) || []\n const newFiles = files.filter(\n (file) => !existingFileIds.includes(file.id)\n )\n const newValidFiles = newFiles.filter((file) => !file.errorMessage)\n\n if (newValidFiles.length > 0) {\n // Set loading\n const newFilesLoading = newFiles.map((file) => ({\n ...file,\n isLoading: !file.errorMessage,\n }))\n setFiles([...filesRef.current, ...newFilesLoading])\n\n const incomingFiles = await fileHandler(newValidFiles)\n // merge incoming files into existing order of newFiles.\n incomingFiles.forEach((file) => {\n const incomingFileObj = {\n ...file,\n isLoading: false,\n }\n const foundIndex = newFilesLoading.findIndex(\n (newFile) => newFile.isLoading\n )\n if (foundIndex >= 0) {\n newFilesLoading[foundIndex] = incomingFileObj\n } else {\n // if there's more files incoming than there's files loading (edge case), add them to end of array.\n newFilesLoading.push(incomingFileObj)\n }\n })\n\n const indexOfFirstNewFile = filesRef.current.findIndex(\n ({ id }) => id === newFiles[0].id\n )\n\n const updatedFiles = [\n ...filesRef.current.slice(0, indexOfFirstNewFile),\n ...newFilesLoading,\n ...filesRef.current.slice(\n indexOfFirstNewFile + newFilesLoading.length\n ),\n ]\n\n // Set error, if any\n handleChange(updatedFiles)\n } else {\n handleChange(files)\n }\n },\n [setFiles, fileHandler, handleChange]\n )\n\n const changeHandler = useCallback(\n ({ files }: { files: UploadValue }) => {\n // Prevents the form-status from showing up\n handleBlur()\n handleFocus()\n\n if (fileHandler) {\n handleChangeAsync(files)\n } else {\n handleChange(files)\n }\n },\n [handleBlur, handleFocus, fileHandler, handleChangeAsync, handleChange]\n )\n\n const width = widthProp as FieldBlockWidth\n const fieldBlockProps: FieldBlockProps = {\n id,\n forId: `${id}-input`,\n labelSrOnly: true,\n className: classnames('dnb-forms-field-upload', className),\n width,\n help: undefined,\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <Upload\n id={id}\n acceptedFileTypes={acceptedFileTypes}\n filesAmountLimit={filesAmountLimit}\n fileMaxSize={fileMaxSize}\n skeleton={skeleton}\n onChange={changeHandler}\n onFileDelete={onFileDelete}\n onFileClick={onFileClick}\n title={label ?? title}\n text={\n help ? (\n <>\n {labelDescription ?? text}\n <HelpButtonInline\n contentId={`${id}-help`}\n left={text ? 'x-small' : false}\n help={help}\n />\n </>\n ) : (\n labelDescription ?? text\n )\n }\n {...htmlAttributes}\n >\n {help && (\n <HelpButtonInlineContent\n contentId={`${id}-help`}\n help={help}\n roundedCorner={false}\n />\n )}\n </Upload>\n </FieldBlock>\n )\n}\n\nexport default UploadComponent\n\nUploadComponent._supportsSpacingProps = true\n\nexport function transformFiles(value: UploadValue) {\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return undefined\n }\n\n value.map((item) => {\n if (item?.file && !(item.file instanceof File)) {\n // To support session storage, we recreated the file blob.\n item['file'] = new File([], item['name'])\n }\n return item\n })\n }\n\n return value\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Upload.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_Upload","_useUpload","_utils","_HelpButtonInline","_shared","_utils2","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","validateRequired","_ref","required","isChanged","error","hasError","some","file","errorMessage","FormError","hasFiles","undefined","UploadComponent","props","sharedTr","useSharedTranslation","Upload","formsTr","useFormsTranslation","errorMessages","useMemo","errorRequired","fromInput","useCallback","item","index","_item$file","name","preparedProps","toInput","transformFiles","_useFieldProps","useFieldProps","executeOnChangeRegardlessOfError","id","className","width","widthProp","label","labelDescription","help","htmlAttributes","handleChange","handleFocus","handleBlur","fileHandler","rest","title","text","acceptedFileTypes","filesAmountLimit","fileMaxSize","skeleton","onFileDelete","onFileClick","download","allowDuplicates","files","setFiles","useUpload","filesRef","useRef","useEffect","current","handleChangeAsync","_filesRef$current","existingFileIds","map","newFiles","includes","newValidFiles","newFilesLoading","isLoading","incomingFiles","incomingFileObj","foundIndex","findIndex","newFile","indexOfFirstNewFile","_ref2","updatedFiles","slice","changeHandler","_ref3","fieldBlockProps","forId","labelSrOnly","classnames","pickSpacingProps","createElement","onChange","Fragment","contentId","left","HelpButtonInlineContent","roundedCorner","_default","exports","_supportsSpacingProps","Array","isArray","File","_lastModified","_item$file2","_type","_item$file3","lastModified","type"],"sources":["../../../../../../src/extensions/forms/Field/Upload/Upload.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from 'react'\nimport classnames from 'classnames'\nimport FieldBlock, {\n Props as FieldBlockProps,\n FieldBlockWidth,\n} from '../../FieldBlock'\nimport {\n useFieldProps,\n useTranslation as useFormsTranslation,\n} from '../../hooks'\nimport { FieldProps } from '../../types'\nimport Upload, {\n UploadFile,\n UploadFileNative,\n UploadProps,\n} from '../../../../components/Upload'\nimport useUpload from '../../../../components/upload/useUpload'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport HelpButtonInline, {\n HelpButtonInlineContent,\n} from '../../../../components/help-button/HelpButtonInline'\nimport { useTranslation as useSharedTranslation } from '../../../../shared'\nimport { SpacingProps } from '../../../../shared/types'\nimport { FormError } from '../../utils'\n\nexport type { UploadFile, UploadFileNative }\nexport type UploadValue = Array<UploadFile | UploadFileNative>\nexport type Props = Omit<\n FieldProps<UploadValue, UploadValue | undefined>,\n 'name'\n> &\n SpacingProps & {\n width?: Omit<FieldBlockWidth, 'medium' | 'small'>\n } & Pick<\n Partial<UploadProps>,\n | 'title'\n | 'text'\n | 'acceptedFileTypes'\n | 'filesAmountLimit'\n | 'fileMaxSize'\n | 'onFileDelete'\n | 'onFileClick'\n | 'skeleton'\n | 'download'\n | 'allowDuplicates'\n > & {\n fileHandler?: (\n newFiles: UploadValue\n ) => UploadValue | Promise<UploadValue>\n }\n\nconst validateRequired = (\n value: UploadValue,\n { required, isChanged, error }\n) => {\n const hasError = value?.some((file) => file.errorMessage)\n if (hasError) {\n return new FormError('Upload.errorInvalidFiles')\n }\n\n const hasFiles = value?.length > 0\n if (required && ((!isChanged && !hasFiles) || !hasFiles)) {\n return error\n }\n\n return undefined\n}\n\nfunction UploadComponent(props: Props) {\n const sharedTr = useSharedTranslation().Upload\n const formsTr = useFormsTranslation().Upload\n\n const errorMessages = useMemo(\n () => ({\n 'Field.errorRequired': formsTr.errorRequired,\n }),\n [formsTr.errorRequired]\n )\n\n const fromInput = useCallback((value: UploadValue) => {\n value.forEach((item, index) => {\n value[index] = item\n\n // Store the name in the value, to support session storage (serialization)\n value[index]['name'] = item['name'] || item.file?.name\n })\n\n return value\n }, [])\n\n const preparedProps = {\n errorMessages,\n validateRequired,\n fromInput,\n toInput: transformFiles,\n ...props,\n }\n\n const {\n id,\n className,\n width: widthProp = 'stretch',\n value,\n label,\n labelDescription,\n help,\n htmlAttributes,\n handleChange,\n handleFocus,\n handleBlur,\n fileHandler,\n ...rest\n } = useFieldProps(preparedProps, {\n executeOnChangeRegardlessOfError: true,\n })\n\n // Upload props\n const {\n title = sharedTr.title,\n text = sharedTr.text,\n acceptedFileTypes = ['pdf', 'png', 'jpg', 'jpeg'],\n filesAmountLimit = 100,\n fileMaxSize = 5,\n skeleton,\n onFileDelete,\n onFileClick,\n download,\n allowDuplicates,\n } = rest\n\n const { files, setFiles } = useUpload(id)\n\n const filesRef = useRef<Array<UploadFile>>()\n\n useEffect(() => {\n filesRef.current = files\n }, [files])\n\n useEffect(() => {\n setFiles(value)\n }, [setFiles, value])\n\n const handleChangeAsync = useCallback(\n async (files: UploadValue) => {\n // Filter out existing files\n const existingFileIds =\n filesRef.current?.map((file) => file.id) || []\n const newFiles = files.filter(\n (file) => !existingFileIds.includes(file.id)\n )\n const newValidFiles = newFiles.filter((file) => !file.errorMessage)\n\n if (newValidFiles.length > 0) {\n // Set loading\n const newFilesLoading = newFiles.map((file) => ({\n ...file,\n isLoading: !file.errorMessage,\n }))\n setFiles([...filesRef.current, ...newFilesLoading])\n\n const incomingFiles = await fileHandler(newValidFiles)\n // merge incoming files into existing order of newFiles.\n incomingFiles.forEach((file) => {\n const incomingFileObj = {\n ...file,\n isLoading: false,\n }\n const foundIndex = newFilesLoading.findIndex(\n (newFile) => newFile.isLoading\n )\n if (foundIndex >= 0) {\n newFilesLoading[foundIndex] = incomingFileObj\n } else {\n // if there's more files incoming than there's files loading (edge case), add them to end of array.\n newFilesLoading.push(incomingFileObj)\n }\n })\n\n const indexOfFirstNewFile = filesRef.current.findIndex(\n ({ id }) => id === newFiles[0].id\n )\n\n const updatedFiles = [\n ...filesRef.current.slice(0, indexOfFirstNewFile),\n ...newFilesLoading,\n ...filesRef.current.slice(\n indexOfFirstNewFile + newFilesLoading.length\n ),\n ]\n\n // Set error, if any\n handleChange(updatedFiles)\n } else {\n handleChange(files)\n }\n },\n [setFiles, fileHandler, handleChange]\n )\n\n const changeHandler = useCallback(\n ({ files }: { files: UploadValue }) => {\n // Prevents the form-status from showing up\n handleBlur()\n handleFocus()\n\n if (fileHandler) {\n handleChangeAsync(files)\n } else {\n handleChange(files)\n }\n },\n [handleBlur, handleFocus, fileHandler, handleChangeAsync, handleChange]\n )\n\n const width = widthProp as FieldBlockWidth\n const fieldBlockProps: FieldBlockProps = {\n id,\n forId: `${id}-input`,\n labelSrOnly: true,\n className: classnames('dnb-forms-field-upload', className),\n width,\n help: undefined,\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <Upload\n id={id}\n acceptedFileTypes={acceptedFileTypes}\n filesAmountLimit={filesAmountLimit}\n download={download}\n allowDuplicates={allowDuplicates}\n fileMaxSize={fileMaxSize}\n skeleton={skeleton}\n onChange={changeHandler}\n onFileDelete={onFileDelete}\n onFileClick={onFileClick}\n title={label ?? title}\n text={\n help ? (\n <>\n {labelDescription ?? text}\n <HelpButtonInline\n contentId={`${id}-help`}\n left={text ? 'x-small' : false}\n help={help}\n />\n </>\n ) : (\n labelDescription ?? text\n )\n }\n {...htmlAttributes}\n >\n {help && (\n <HelpButtonInlineContent\n contentId={`${id}-help`}\n help={help}\n roundedCorner={false}\n />\n )}\n </Upload>\n </FieldBlock>\n )\n}\n\nexport default UploadComponent\n\nUploadComponent._supportsSpacingProps = true\n\nexport function transformFiles(value: UploadValue) {\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return undefined\n }\n\n value.map((item) => {\n if (item?.file && !(item.file instanceof File)) {\n // To support session storage, we recreated the file blob.\n item['file'] = new File([], item['name'] || item?.file['name'], {\n lastModified: (item.file as File)?.lastModified ?? 0,\n type: (item.file as File)?.type ?? '',\n })\n }\n return item\n })\n }\n\n return value\n}\n"],"mappings":"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","ignoreList":[]}
@@ -30,7 +30,7 @@ function SubmitConfirmation(props) {
30
30
  } = props;
31
31
  const {
32
32
  setFormState,
33
- setHandleSubmit,
33
+ setFieldEventListener,
34
34
  handleSubmit: handleFinalSubmit,
35
35
  submitState,
36
36
  formElementRef,
@@ -131,16 +131,16 @@ function SubmitConfirmation(props) {
131
131
  preventSubmit();
132
132
  await setConfirmationState('readyToBeSubmitted');
133
133
  }, [setConfirmationState, validatePreventSubmit]);
134
- setHandleSubmit === null || setHandleSubmit === void 0 ? void 0 : setHandleSubmit(handleSubmit);
134
+ setFieldEventListener === null || setFieldEventListener === void 0 ? void 0 : setFieldEventListener(undefined, 'onSubmit', handleSubmit);
135
135
  const submitHandler = (0, _react.useCallback)(async () => {
136
- setHandleSubmit === null || setHandleSubmit === void 0 ? void 0 : setHandleSubmit(handleSubmit, {
136
+ setFieldEventListener === null || setFieldEventListener === void 0 ? void 0 : setFieldEventListener(undefined, 'onSubmit', handleSubmit, {
137
137
  remove: true
138
138
  });
139
139
  await setConfirmationState('submitInProgress');
140
140
  await handleFinalSubmit();
141
141
  await setConfirmationState('submissionComplete');
142
142
  setFocusOnButton();
143
- }, [handleFinalSubmit, handleSubmit, setFocusOnButton, setHandleSubmit, setConfirmationState]);
143
+ }, [handleFinalSubmit, handleSubmit, setFocusOnButton, setFieldEventListener, setConfirmationState]);
144
144
  const sharedProviderParams = {
145
145
  formElement: {
146
146
  disabled: false
@@ -1 +1 @@
1
- {"version":3,"file":"SubmitConfirmation.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Provider","_components","_componentHelper","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","SubmitConfirmation","props","forceUpdate","useReducer","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","setHandleSubmit","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","useContext","DataContext","confirmationStateRef","useRef","submitStateRef","preventSubmitRef","undefined","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","_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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","ignoreList":[]}
1
+ {"version":3,"file":"SubmitConfirmation.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Provider","_components","_componentHelper","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","SubmitConfirmation","props","forceUpdate","useReducer","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","setFieldEventListener","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","useContext","DataContext","confirmationStateRef","useRef","submitStateRef","preventSubmitRef","undefined","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","_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 setFieldEventListener,\n handleSubmit: handleFinalSubmit,\n submitState,\n formElementRef,\n internalDataRef,\n } = useContext(DataContext)\n\n const confirmationStateRef = useRef<ConfirmationState>('idle')\n const submitStateRef = useRef<EventStateObject>()\n const preventSubmitRef = useRef<boolean>(undefined)\n\n const validatePreventSubmit = useCallback(() => {\n return (preventSubmitRef.current = preventSubmitWhen?.(\n getParamsRef.current()\n ))\n }, [preventSubmitWhen])\n\n const setConfirmationState = useCallback(\n async (state: ConfirmationState) => {\n confirmationStateRef.current = state\n await onStateChange?.(getParamsRef.current())\n if (typeof window !== 'undefined') {\n window.requestAnimationFrame(() => {\n switch (state) {\n case 'idle':\n setFormState('complete', { keepPending: false })\n break\n case 'readyToBeSubmitted':\n setFormState('pending', { keepPending: true })\n break\n case 'submitInProgress':\n setFormState('pending', { keepPending: true })\n break\n case 'submissionComplete':\n setFormState('complete', { keepPending: false })\n break\n default:\n forceUpdate()\n }\n })\n }\n },\n [onStateChange, setFormState]\n )\n\n const getParamsRef = useRef(() => {\n const confirmationState = confirmationStateRef.current\n\n const connectWithDialog = {\n openState: confirmationState === 'readyToBeSubmitted',\n onConfirm: submitHandler,\n onDecline: cancelHandler,\n onClose: ({ triggeredBy }) => {\n if (triggeredBy === 'keyboard') {\n cancelHandler()\n }\n },\n }\n\n return {\n data: internalDataRef?.current,\n confirmationState,\n setConfirmationState,\n submitHandler,\n cancelHandler,\n connectWithDialog,\n submitState: submitStateRef.current,\n } satisfies ConfirmParams\n })\n\n useMemo(() => {\n if (Object.keys(removeUndefinedProps(submitState) || {}).length > 0) {\n submitStateRef.current = {\n ...submitState,\n } as EventStateObject\n onSubmitResult?.(getParamsRef.current())\n }\n }, [submitState, onSubmitResult])\n\n const setFocusOnButton = useCallback(() => {\n try {\n const form = formElementRef.current\n const element = (form.querySelector('.dnb-forms-submit-button') ||\n form) as HTMLElement\n element.focus()\n } catch (e) {\n //\n }\n }, [formElementRef])\n\n const cancelHandler = useCallback(async () => {\n await setConfirmationState('idle')\n setFocusOnButton()\n }, [setFocusOnButton, setConfirmationState])\n\n const handleSubmit = useCallback(\n async ({ preventSubmit }) => {\n if (confirmationStateRef.current === 'submitInProgress') {\n return // stop here\n }\n\n if (validatePreventSubmit() !== true) {\n await setConfirmationState('submitInProgress')\n return // stop here\n }\n\n submitStateRef.current = undefined\n\n // Prevent the form form from being submitted\n preventSubmit()\n\n await setConfirmationState('readyToBeSubmitted')\n },\n [setConfirmationState, validatePreventSubmit]\n )\n setFieldEventListener?.(undefined, 'onSubmit', handleSubmit)\n\n const submitHandler = useCallback(async () => {\n setFieldEventListener?.(undefined, 'onSubmit', handleSubmit, {\n remove: true,\n })\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n handleFinalSubmit,\n handleSubmit,\n setFocusOnButton,\n setFieldEventListener,\n setConfirmationState,\n ])\n\n const sharedProviderParams: ContextProps = {\n formElement: {\n disabled: false,\n },\n }\n\n return (\n <>\n {children}\n\n <SharedProvider {...sharedProviderParams}>\n <HeightAnimation>\n {renderWithState?.(getParamsRef.current())}\n </HeightAnimation>\n </SharedProvider>\n </>\n )\n}\n\nSubmitConfirmation._supportsSpacingProps = 'children'\nexport default SubmitConfirmation\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAOA,IAAAC,QAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,WAAA,GAAAJ,OAAA;AAMA,IAAAK,gBAAA,GAAAL,OAAA;AAA0E,SAAAE,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAW,QAAApB,CAAA,EAAAK,CAAA,QAAAC,CAAA,GAAAM,MAAA,CAAAS,IAAA,CAAArB,CAAA,OAAAY,MAAA,CAAAU,qBAAA,QAAAC,CAAA,GAAAX,MAAA,CAAAU,qBAAA,CAAAtB,CAAA,GAAAK,CAAA,KAAAkB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAnB,CAAA,WAAAO,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAK,CAAA,EAAAoB,UAAA,OAAAnB,CAAA,CAAAoB,IAAA,CAAAC,KAAA,CAAArB,CAAA,EAAAiB,CAAA,YAAAjB,CAAA;AAAA,SAAAsB,cAAA5B,CAAA,aAAAK,CAAA,MAAAA,CAAA,GAAAwB,SAAA,CAAAC,MAAA,EAAAzB,CAAA,UAAAC,CAAA,WAAAuB,SAAA,CAAAxB,CAAA,IAAAwB,SAAA,CAAAxB,CAAA,QAAAA,CAAA,OAAAe,OAAA,CAAAR,MAAA,CAAAN,CAAA,OAAAyB,OAAA,WAAA1B,CAAA,IAAA2B,eAAA,CAAAhC,CAAA,EAAAK,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAO,MAAA,CAAAqB,yBAAA,GAAArB,MAAA,CAAAsB,gBAAA,CAAAlC,CAAA,EAAAY,MAAA,CAAAqB,yBAAA,CAAA3B,CAAA,KAAAc,OAAA,CAAAR,MAAA,CAAAN,CAAA,GAAAyB,OAAA,WAAA1B,CAAA,IAAAO,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAK,CAAA,EAAAO,MAAA,CAAAE,wBAAA,CAAAR,CAAA,EAAAD,CAAA,iBAAAL,CAAA;AAAA,SAAAgC,gBAAAhC,CAAA,EAAAK,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAA8B,cAAA,CAAA9B,CAAA,MAAAL,CAAA,GAAAY,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAK,CAAA,IAAA+B,KAAA,EAAA9B,CAAA,EAAAmB,UAAA,MAAAY,YAAA,MAAAC,QAAA,UAAAtC,CAAA,CAAAK,CAAA,IAAAC,CAAA,EAAAN,CAAA;AAAA,SAAAmC,eAAA7B,CAAA,QAAAY,CAAA,GAAAqB,YAAA,CAAAjC,CAAA,uCAAAY,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAqB,aAAAjC,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAN,CAAA,GAAAM,CAAA,CAAAkC,MAAA,CAAAC,WAAA,kBAAAzC,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAiB,IAAA,CAAAX,CAAA,EAAAD,CAAA,uCAAAa,CAAA,SAAAA,CAAA,YAAAwB,SAAA,yEAAArC,CAAA,GAAAsC,MAAA,GAAAC,MAAA,EAAAtC,CAAA;AA6B1E,SAASuC,kBAAkBA,CAACC,KAAmB,EAAE;EAC/C,MAAM,GAAGC,WAAW,CAAC,GAAG,IAAAC,iBAAU,EAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAElD,MAAM;IACJC,iBAAiB;IACjBC,aAAa;IACbC,cAAc;IACdC,eAAe;IACfC;EACF,CAAC,GAAGP,KAAK;EAET,MAAM;IACJQ,YAAY;IACZC,qBAAqB;IACrBC,YAAY,EAAEC,iBAAiB;IAC/BC,WAAW;IACXC,cAAc;IACdC;EACF,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC;EAE3B,MAAMC,oBAAoB,GAAG,IAAAC,aAAM,EAAoB,MAAM,CAAC;EAC9D,MAAMC,cAAc,GAAG,IAAAD,aAAM,EAAmB,CAAC;EACjD,MAAME,gBAAgB,GAAG,IAAAF,aAAM,EAAUG,SAAS,CAAC;EAEnD,MAAMC,qBAAqB,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAC9C,OAAQH,gBAAgB,CAACI,OAAO,GAAGrB,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAClDsB,YAAY,CAACD,OAAO,CAAC,CACvB,CAAC;EACH,CAAC,EAAE,CAACrB,iBAAiB,CAAC,CAAC;EAEvB,MAAMuB,oBAAoB,GAAG,IAAAH,kBAAW,EACtC,MAAOI,KAAwB,IAAK;IAClCV,oBAAoB,CAACO,OAAO,GAAGG,KAAK;IACpC,OAAMvB,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAGqB,YAAY,CAACD,OAAO,CAAC,CAAC,CAAC;IAC7C,IAAI,OAAOI,MAAM,KAAK,WAAW,EAAE;MACjCA,MAAM,CAACC,qBAAqB,CAAC,MAAM;QACjC,QAAQF,KAAK;UACX,KAAK,MAAM;YACTnB,YAAY,CAAC,UAAU,EAAE;cAAEsB,WAAW,EAAE;YAAM,CAAC,CAAC;YAChD;UACF,KAAK,oBAAoB;YACvBtB,YAAY,CAAC,SAAS,EAAE;cAAEsB,WAAW,EAAE;YAAK,CAAC,CAAC;YAC9C;UACF,KAAK,kBAAkB;YACrBtB,YAAY,CAAC,SAAS,EAAE;cAAEsB,WAAW,EAAE;YAAK,CAAC,CAAC;YAC9C;UACF,KAAK,oBAAoB;YACvBtB,YAAY,CAAC,UAAU,EAAE;cAAEsB,WAAW,EAAE;YAAM,CAAC,CAAC;YAChD;UACF;YACE7B,WAAW,CAAC,CAAC;QACjB;MACF,CAAC,CAAC;IACJ;EACF,CAAC,EACD,CAACG,aAAa,EAAEI,YAAY,CAC9B,CAAC;EAED,MAAMiB,YAAY,GAAG,IAAAP,aAAM,EAAC,MAAM;IAChC,MAAMa,iBAAiB,GAAGd,oBAAoB,CAACO,OAAO;IAEtD,MAAMQ,iBAAiB,GAAG;MACxBC,SAAS,EAAEF,iBAAiB,KAAK,oBAAoB;MACrDG,SAAS,EAAEC,aAAa;MACxBC,SAAS,EAAEC,aAAa;MACxBC,OAAO,EAAEC,IAAA,IAAqB;QAAA,IAApB;UAAEC;QAAY,CAAC,GAAAD,IAAA;QACvB,IAAIC,WAAW,KAAK,UAAU,EAAE;UAC9BH,aAAa,CAAC,CAAC;QACjB;MACF;IACF,CAAC;IAED,OAAO;MACLI,IAAI,EAAE3B,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEU,OAAO;MAC9BO,iBAAiB;MACjBL,oBAAoB;MACpBS,aAAa;MACbE,aAAa;MACbL,iBAAiB;MACjBpB,WAAW,EAAEO,cAAc,CAACK;IAC9B,CAAC;EACH,CAAC,CAAC;EAEF,IAAAkB,cAAO,EAAC,MAAM;IACZ,IAAI5E,MAAM,CAACS,IAAI,CAAC,IAAAoE,qCAAoB,EAAC/B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC5B,MAAM,GAAG,CAAC,EAAE;MACnEmC,cAAc,CAACK,OAAO,GAAA1C,aAAA,KACjB8B,WAAW,CACK;MACrBP,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAGoB,YAAY,CAACD,OAAO,CAAC,CAAC,CAAC;IAC1C;EACF,CAAC,EAAE,CAACZ,WAAW,EAAEP,cAAc,CAAC,CAAC;EAEjC,MAAMuC,gBAAgB,GAAG,IAAArB,kBAAW,EAAC,MAAM;IACzC,IAAI;MACF,MAAMsB,IAAI,GAAGhC,cAAc,CAACW,OAAO;MACnC,MAAMsB,OAAO,GAAID,IAAI,CAACE,aAAa,CAAC,0BAA0B,CAAC,IAC7DF,IAAoB;MACtBC,OAAO,CAACE,KAAK,CAAC,CAAC;IACjB,CAAC,CAAC,OAAO9F,CAAC,EAAE,CAEZ;EACF,CAAC,EAAE,CAAC2D,cAAc,CAAC,CAAC;EAEpB,MAAMwB,aAAa,GAAG,IAAAd,kBAAW,EAAC,YAAY;IAC5C,MAAMG,oBAAoB,CAAC,MAAM,CAAC;IAClCkB,gBAAgB,CAAC,CAAC;EACpB,CAAC,EAAE,CAACA,gBAAgB,EAAElB,oBAAoB,CAAC,CAAC;EAE5C,MAAMhB,YAAY,GAAG,IAAAa,kBAAW,EAC9B,MAAA0B,KAAA,IAA6B;IAAA,IAAtB;MAAEC;IAAc,CAAC,GAAAD,KAAA;IACtB,IAAIhC,oBAAoB,CAACO,OAAO,KAAK,kBAAkB,EAAE;MACvD;IACF;IAEA,IAAIF,qBAAqB,CAAC,CAAC,KAAK,IAAI,EAAE;MACpC,MAAMI,oBAAoB,CAAC,kBAAkB,CAAC;MAC9C;IACF;IAEAP,cAAc,CAACK,OAAO,GAAGH,SAAS;IAGlC6B,aAAa,CAAC,CAAC;IAEf,MAAMxB,oBAAoB,CAAC,oBAAoB,CAAC;EAClD,CAAC,EACD,CAACA,oBAAoB,EAAEJ,qBAAqB,CAC9C,CAAC;EACDb,qBAAqB,aAArBA,qBAAqB,uBAArBA,qBAAqB,CAAGY,SAAS,EAAE,UAAU,EAAEX,YAAY,CAAC;EAE5D,MAAMyB,aAAa,GAAG,IAAAZ,kBAAW,EAAC,YAAY;IAC5Cd,qBAAqB,aAArBA,qBAAqB,uBAArBA,qBAAqB,CAAGY,SAAS,EAAE,UAAU,EAAEX,YAAY,EAAE;MAC3DyC,MAAM,EAAE;IACV,CAAC,CAAC;IAEF,MAAMzB,oBAAoB,CAAC,kBAAkB,CAAC;IAC9C,MAAMf,iBAAiB,CAAC,CAAC;IACzB,MAAMe,oBAAoB,CAAC,oBAAoB,CAAC;IAEhDkB,gBAAgB,CAAC,CAAC;EACpB,CAAC,EAAE,CACDjC,iBAAiB,EACjBD,YAAY,EACZkC,gBAAgB,EAChBnC,qBAAqB,EACrBiB,oBAAoB,CACrB,CAAC;EAEF,MAAM0B,oBAAkC,GAAG;IACzCC,WAAW,EAAE;MACXC,QAAQ,EAAE;IACZ;EACF,CAAC;EAED,OACE5G,MAAA,CAAAU,OAAA,CAAAmG,aAAA,CAAA7G,MAAA,CAAAU,OAAA,CAAAoG,QAAA,QACGjD,QAAQ,EAET7D,MAAA,CAAAU,OAAA,CAAAmG,aAAA,CAACxG,SAAA,CAAAK,OAAc,EAAKgG,oBAAoB,EACtC1G,MAAA,CAAAU,OAAA,CAAAmG,aAAA,CAACvG,WAAA,CAAAyG,eAAe,QACbnD,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAGmB,YAAY,CAACD,OAAO,CAAC,CAAC,CAC1B,CACH,CAChB,CAAC;AAEP;AAEAzB,kBAAkB,CAAC2D,qBAAqB,GAAG,UAAU;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAxG,OAAA,GACtC2C,kBAAkB","ignoreList":[]}