@dnb/eufemia 10.12.0 → 10.14.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 (1308) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/cjs/components/accordion/Accordion.js +1 -0
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionContent.js +1 -0
  5. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  6. package/cjs/components/accordion/AccordionGroup.js +1 -0
  7. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  8. package/cjs/components/accordion/AccordionHeader.js +5 -15
  9. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  10. package/cjs/components/accordion/style/dnb-accordion.css +2 -2
  11. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  12. package/cjs/components/accordion/style/dnb-accordion.scss +3 -8
  13. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
  14. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  15. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
  16. package/cjs/components/anchor/Anchor.js +1 -0
  17. package/cjs/components/anchor/Anchor.js.map +1 -1
  18. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
  19. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  20. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
  21. package/cjs/components/autocomplete/Autocomplete.d.ts +2 -2
  22. package/cjs/components/autocomplete/Autocomplete.js +118 -90
  23. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  24. package/cjs/components/avatar/Avatar.js +1 -0
  25. package/cjs/components/avatar/Avatar.js.map +1 -1
  26. package/cjs/components/avatar/AvatarGroup.js +1 -0
  27. package/cjs/components/avatar/AvatarGroup.js.map +1 -1
  28. package/cjs/components/badge/Badge.js +1 -0
  29. package/cjs/components/badge/Badge.js.map +1 -1
  30. package/cjs/components/breadcrumb/Breadcrumb.js +1 -0
  31. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  32. package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -0
  33. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  34. package/cjs/components/button/Button.js +2 -0
  35. package/cjs/components/button/Button.js.map +1 -1
  36. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  37. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
  38. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
  39. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
  40. package/cjs/components/card/Card.js +2 -2
  41. package/cjs/components/card/Card.js.map +1 -1
  42. package/cjs/components/checkbox/Checkbox.js +2 -0
  43. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  44. package/cjs/components/date-picker/DatePicker.js +2 -0
  45. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  46. package/cjs/components/date-picker/DatePickerProvider.js +1 -0
  47. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  48. package/cjs/components/dialog/Dialog.js +1 -0
  49. package/cjs/components/dialog/Dialog.js.map +1 -1
  50. package/cjs/components/dialog/DialogContent.js +1 -0
  51. package/cjs/components/dialog/DialogContent.js.map +1 -1
  52. package/cjs/components/dialog/parts/DialogAction.js +1 -0
  53. package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
  54. package/cjs/components/drawer/Drawer.js +1 -0
  55. package/cjs/components/drawer/Drawer.js.map +1 -1
  56. package/cjs/components/drawer/DrawerContent.js +1 -0
  57. package/cjs/components/drawer/DrawerContent.js.map +1 -1
  58. package/cjs/components/drawer/parts/DrawerContentContext.js +1 -0
  59. package/cjs/components/drawer/parts/DrawerContentContext.js.map +1 -1
  60. package/cjs/components/dropdown/Dropdown.js +1 -0
  61. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  62. package/cjs/components/flex/Container.js +7 -4
  63. package/cjs/components/flex/Container.js.map +1 -1
  64. package/cjs/components/flex/Flex.d.ts +1 -1
  65. package/cjs/components/flex/Flex.js +1 -1
  66. package/cjs/components/flex/Flex.js.map +1 -1
  67. package/cjs/components/flex/export.d.ts +5 -0
  68. package/cjs/components/flex/export.js +42 -0
  69. package/cjs/components/flex/export.js.map +1 -0
  70. package/cjs/components/flex/index.d.ts +2 -5
  71. package/cjs/components/flex/index.js +5 -36
  72. package/cjs/components/flex/index.js.map +1 -1
  73. package/cjs/components/flex/utils.js +2 -2
  74. package/cjs/components/flex/utils.js.map +1 -1
  75. package/cjs/components/form-label/FormLabel.d.ts +1 -0
  76. package/cjs/components/form-label/FormLabel.js +2 -0
  77. package/cjs/components/form-label/FormLabel.js.map +1 -1
  78. package/cjs/components/form-row/FormRow.js +1 -0
  79. package/cjs/components/form-row/FormRow.js.map +1 -1
  80. package/cjs/components/form-row/style/dnb-form-row.scss +1 -1
  81. package/cjs/components/form-set/FormSet.js +1 -0
  82. package/cjs/components/form-set/FormSet.js.map +1 -1
  83. package/cjs/components/form-status/FormStatus.js +1 -0
  84. package/cjs/components/form-status/FormStatus.js.map +1 -1
  85. package/cjs/components/global-error/GlobalError.js +1 -0
  86. package/cjs/components/global-error/GlobalError.js.map +1 -1
  87. package/cjs/components/global-status/GlobalStatus.js +1 -0
  88. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  89. package/cjs/components/grid/Grid.d.ts +1 -1
  90. package/cjs/components/grid/Grid.js +1 -1
  91. package/cjs/components/grid/Grid.js.map +1 -1
  92. package/cjs/components/grid/export.d.ts +2 -0
  93. package/cjs/components/grid/export.js +21 -0
  94. package/cjs/components/grid/export.js.map +1 -0
  95. package/cjs/components/grid/index.d.ts +2 -2
  96. package/cjs/components/grid/index.js +5 -15
  97. package/cjs/components/grid/index.js.map +1 -1
  98. package/cjs/components/heading/Heading.js +1 -0
  99. package/cjs/components/heading/Heading.js.map +1 -1
  100. package/cjs/components/help-button/HelpButton.js +1 -0
  101. package/cjs/components/help-button/HelpButton.js.map +1 -1
  102. package/cjs/components/help-button/HelpButtonInstance.js +1 -0
  103. package/cjs/components/help-button/HelpButtonInstance.js.map +1 -1
  104. package/cjs/components/icon/Icon.js +1 -0
  105. package/cjs/components/icon/Icon.js.map +1 -1
  106. package/cjs/components/icon/style/dnb-icon.scss +1 -1
  107. package/cjs/components/icon-primary/IconPrimary.js +1 -0
  108. package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
  109. package/cjs/components/info-card/InfoCard.js +1 -0
  110. package/cjs/components/info-card/InfoCard.js.map +1 -1
  111. package/cjs/components/input/Input.d.ts +4 -0
  112. package/cjs/components/input/Input.js +12 -2
  113. package/cjs/components/input/Input.js.map +1 -1
  114. package/cjs/components/input/InputPassword.js +2 -0
  115. package/cjs/components/input/InputPassword.js.map +1 -1
  116. package/cjs/components/input-masked/InputMasked.d.ts +1 -1
  117. package/cjs/components/input-masked/InputMasked.js +2 -0
  118. package/cjs/components/input-masked/InputMasked.js.map +1 -1
  119. package/cjs/components/input-masked/MultiInputMask.d.ts +12 -4
  120. package/cjs/components/input-masked/MultiInputMask.js +16 -8
  121. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  122. package/cjs/components/input-masked/TextMask.d.ts +1 -1
  123. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +2 -1
  124. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  125. package/cjs/components/input-masked/hooks/useMultiInputValues.js +1 -0
  126. package/cjs/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  127. package/cjs/components/lib.d.ts +2 -0
  128. package/cjs/components/logo/Logo.js +1 -0
  129. package/cjs/components/logo/Logo.js.map +1 -1
  130. package/cjs/components/modal/Modal.js +1 -0
  131. package/cjs/components/modal/Modal.js.map +1 -1
  132. package/cjs/components/modal/ModalContent.js +1 -0
  133. package/cjs/components/modal/ModalContent.js.map +1 -1
  134. package/cjs/components/modal/parts/CloseButton.js +1 -0
  135. package/cjs/components/modal/parts/CloseButton.js.map +1 -1
  136. package/cjs/components/number-format/NumberFormat.js +1 -0
  137. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  138. package/cjs/components/number-format/NumberUtils.js +1 -0
  139. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  140. package/cjs/components/number-format/useNumberFormat.js +1 -0
  141. package/cjs/components/number-format/useNumberFormat.js.map +1 -1
  142. package/cjs/components/pagination/PaginationBar.js +1 -0
  143. package/cjs/components/pagination/PaginationBar.js.map +1 -1
  144. package/cjs/components/pagination/PaginationHelpers.js +1 -0
  145. package/cjs/components/pagination/PaginationHelpers.js.map +1 -1
  146. package/cjs/components/pagination/PaginationInfinity.js +1 -0
  147. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  148. package/cjs/components/pagination/PaginationProvider.js +1 -0
  149. package/cjs/components/pagination/PaginationProvider.js.map +1 -1
  150. package/cjs/components/progress-indicator/ProgressIndicator.js +1 -0
  151. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  152. package/cjs/components/radio/Radio.js +4 -2
  153. package/cjs/components/radio/Radio.js.map +1 -1
  154. package/cjs/components/radio/RadioGroup.js +5 -4
  155. package/cjs/components/radio/RadioGroup.js.map +1 -1
  156. package/cjs/components/radio/style/dnb-radio.css +106 -0
  157. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  158. package/cjs/components/radio/style/dnb-radio.scss +202 -0
  159. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
  160. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
  161. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
  162. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
  163. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  164. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
  165. package/cjs/components/section/Section.js +1 -0
  166. package/cjs/components/section/Section.js.map +1 -1
  167. package/cjs/components/skeleton/Skeleton.js +1 -0
  168. package/cjs/components/skeleton/Skeleton.js.map +1 -1
  169. package/cjs/components/skeleton/figures/Article.js +1 -0
  170. package/cjs/components/skeleton/figures/Article.js.map +1 -1
  171. package/cjs/components/skeleton/figures/Circle.js +1 -0
  172. package/cjs/components/skeleton/figures/Circle.js.map +1 -1
  173. package/cjs/components/skeleton/figures/Product.js +1 -0
  174. package/cjs/components/skeleton/figures/Product.js.map +1 -1
  175. package/cjs/components/skeleton/figures/Table.js +1 -0
  176. package/cjs/components/skeleton/figures/Table.js.map +1 -1
  177. package/cjs/components/slider/Slider.d.ts +1 -0
  178. package/cjs/components/slider/Slider.js +1 -0
  179. package/cjs/components/slider/Slider.js.map +1 -1
  180. package/cjs/components/slider/SliderInstance.js +1 -0
  181. package/cjs/components/slider/SliderInstance.js.map +1 -1
  182. package/cjs/components/slider/SliderProvider.js +1 -0
  183. package/cjs/components/slider/SliderProvider.js.map +1 -1
  184. package/cjs/components/space/Space.js +1 -0
  185. package/cjs/components/space/Space.js.map +1 -1
  186. package/cjs/components/step-indicator/StepIndicatorContext.js +1 -0
  187. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  188. package/cjs/components/step-indicator/StepIndicatorItem.js +3 -2
  189. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  190. package/cjs/components/step-indicator/StepIndicatorList.js +1 -0
  191. package/cjs/components/step-indicator/StepIndicatorList.js.map +1 -1
  192. package/cjs/components/step-indicator/StepIndicatorModal.js +1 -0
  193. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  194. package/cjs/components/step-indicator/StepIndicatorSidebar.js +1 -0
  195. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  196. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +1 -0
  197. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  198. package/cjs/components/switch/Switch.js +2 -0
  199. package/cjs/components/switch/Switch.js.map +1 -1
  200. package/cjs/components/table/Table.js +1 -0
  201. package/cjs/components/table/Table.js.map +1 -1
  202. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
  203. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  204. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
  205. package/cjs/components/tabs/Tabs.js +1 -0
  206. package/cjs/components/tabs/Tabs.js.map +1 -1
  207. package/cjs/components/tag/Tag.d.ts +1 -0
  208. package/cjs/components/tag/Tag.js +2 -0
  209. package/cjs/components/tag/Tag.js.map +1 -1
  210. package/cjs/components/tag/TagGroup.js +1 -0
  211. package/cjs/components/tag/TagGroup.js.map +1 -1
  212. package/cjs/components/textarea/Textarea.js +2 -0
  213. package/cjs/components/textarea/Textarea.js.map +1 -1
  214. package/cjs/components/timeline/Timeline.js +1 -0
  215. package/cjs/components/timeline/Timeline.js.map +1 -1
  216. package/cjs/components/timeline/TimelineItem.js +1 -0
  217. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  218. package/cjs/components/toggle-button/ToggleButton.js +2 -0
  219. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  220. package/cjs/components/toggle-button/ToggleButtonGroup.js +5 -4
  221. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  222. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
  223. package/cjs/components/tooltip/Tooltip.js +1 -0
  224. package/cjs/components/tooltip/Tooltip.js.map +1 -1
  225. package/cjs/components/tooltip/TooltipPortal.js +1 -0
  226. package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
  227. package/cjs/components/tooltip/TooltipWithEvents.js.map +1 -1
  228. package/cjs/components/upload/Upload.d.ts +1 -0
  229. package/cjs/components/upload/Upload.js +2 -0
  230. package/cjs/components/upload/Upload.js.map +1 -1
  231. package/cjs/components/upload/UploadContext.js +1 -0
  232. package/cjs/components/upload/UploadContext.js.map +1 -1
  233. package/cjs/components/upload/UploadFileInput.js +1 -0
  234. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  235. package/cjs/components/upload/UploadFileListCell.js +1 -0
  236. package/cjs/components/upload/UploadFileListCell.js.map +1 -1
  237. package/cjs/components/upload/useUpload.js +1 -0
  238. package/cjs/components/upload/useUpload.js.map +1 -1
  239. package/cjs/components/visually-hidden/VisuallyHidden.js +1 -0
  240. package/cjs/components/visually-hidden/VisuallyHidden.js.map +1 -1
  241. package/cjs/elements/Element.js +1 -0
  242. package/cjs/elements/Element.js.map +1 -1
  243. package/cjs/elements/lists/Dl.d.ts +1 -1
  244. package/cjs/elements/lists/Dl.js.map +1 -1
  245. package/cjs/elements/typography/H.js +1 -0
  246. package/cjs/elements/typography/H.js.map +1 -1
  247. package/cjs/elements/typography/style/dnb-typography.scss +1 -1
  248. package/cjs/elements/typography/style/typography-mixins.scss +2 -2
  249. package/cjs/extensions/forms/DataContext/At/At.js +1 -0
  250. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  251. package/cjs/extensions/forms/DataContext/Provider/Provider.js +54 -42
  252. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  253. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
  254. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  255. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +13 -8
  256. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  257. package/cjs/extensions/forms/Field/Boolean/Boolean.js +3 -2
  258. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  259. package/cjs/extensions/forms/Field/Currency/Currency.js +3 -2
  260. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  261. package/cjs/extensions/forms/Field/Date/Date.js +2 -1
  262. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  263. package/cjs/extensions/forms/Field/Email/Email.js +11 -7
  264. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  265. package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  266. package/cjs/extensions/forms/Field/Expiry/Expiry.js +99 -0
  267. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  268. package/cjs/extensions/forms/Field/Expiry/index.d.ts +2 -0
  269. package/cjs/extensions/forms/Field/Expiry/index.js +27 -0
  270. package/cjs/extensions/forms/Field/Expiry/index.js.map +1 -0
  271. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
  272. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  273. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  274. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +13 -8
  275. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  276. package/cjs/extensions/forms/Field/Number/Number.js +48 -25
  277. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  278. package/cjs/extensions/forms/Field/Option/Option.js +1 -1
  279. package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
  280. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +13 -8
  281. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  282. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
  283. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +75 -22
  284. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  285. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +6 -4
  286. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  287. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +17 -11
  288. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  289. package/cjs/extensions/forms/Field/Selection/Selection.js +29 -20
  290. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  291. package/cjs/extensions/forms/Field/String/String.js +37 -26
  292. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  293. package/cjs/extensions/forms/Field/Toggle/Toggle.js +5 -4
  294. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  295. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  296. package/cjs/extensions/forms/Field/index.js +7 -0
  297. package/cjs/extensions/forms/Field/index.js.map +1 -1
  298. package/cjs/extensions/forms/Field/style/dnb-forms-field.css +13 -0
  299. package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
  300. package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
  301. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +37 -2
  302. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  303. package/cjs/extensions/forms/Form/Element/Element.js +1 -0
  304. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  305. package/cjs/extensions/forms/Form/Handler/Handler.js +1 -0
  306. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  307. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +1 -0
  308. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  309. package/cjs/extensions/forms/Iterate/Array/Array.js +2 -2
  310. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  311. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +3 -2
  312. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  313. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -1
  314. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  315. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js +1 -0
  316. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  317. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +1 -0
  318. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  319. package/cjs/extensions/forms/StepsLayout/Step/Step.js +1 -0
  320. package/cjs/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
  321. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +3 -1
  322. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  323. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +3 -1
  324. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  325. package/cjs/extensions/forms/Value/Boolean/Boolean.js +1 -0
  326. package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  327. package/cjs/extensions/forms/Value/Currency/Currency.js +3 -2
  328. package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
  329. package/cjs/extensions/forms/Value/Date/Date.js +3 -1
  330. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  331. package/cjs/extensions/forms/Value/Email/Email.js +3 -1
  332. package/cjs/extensions/forms/Value/Email/Email.js.map +1 -1
  333. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +3 -1
  334. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  335. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +3 -1
  336. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  337. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +1 -1
  338. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  339. package/cjs/extensions/forms/Visibility/Visibility.js +1 -0
  340. package/cjs/extensions/forms/Visibility/Visibility.js.map +1 -1
  341. package/cjs/extensions/forms/hooks/index.d.ts +3 -0
  342. package/cjs/extensions/forms/hooks/index.js +21 -0
  343. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  344. package/cjs/extensions/forms/hooks/useDataValue.js +138 -68
  345. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  346. package/cjs/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  347. package/cjs/extensions/forms/hooks/useMountEffect.js +14 -0
  348. package/cjs/extensions/forms/hooks/useMountEffect.js.map +1 -0
  349. package/cjs/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  350. package/cjs/extensions/forms/hooks/useProcessManager.js +21 -0
  351. package/cjs/extensions/forms/hooks/useProcessManager.js.map +1 -0
  352. package/cjs/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  353. package/cjs/extensions/forms/hooks/useUpdateEffect.js +19 -0
  354. package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  355. package/cjs/extensions/forms/style/dnb-forms.css +13 -0
  356. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  357. package/cjs/extensions/forms/types.d.ts +10 -2
  358. package/cjs/extensions/forms/types.js +8 -6
  359. package/cjs/extensions/forms/types.js.map +1 -1
  360. package/cjs/extensions/forms/utils/ajv.js +28 -3
  361. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  362. package/cjs/extensions/forms/utils/errors.d.ts +2 -0
  363. package/cjs/extensions/forms/utils/errors.js +16 -0
  364. package/cjs/extensions/forms/utils/errors.js.map +1 -0
  365. package/cjs/extensions/forms/utils/index.d.ts +1 -0
  366. package/cjs/extensions/forms/utils/index.js +12 -0
  367. package/cjs/extensions/forms/utils/index.js.map +1 -1
  368. package/cjs/extensions/forms/utils/numbers.js +2 -2
  369. package/cjs/extensions/forms/utils/numbers.js.map +1 -1
  370. package/cjs/extensions/forms/utils/useWasChanged.js +8 -6
  371. package/cjs/extensions/forms/utils/useWasChanged.js.map +1 -1
  372. package/cjs/extensions/payment-card/PaymentCard.js +1 -0
  373. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  374. package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -1
  375. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  376. package/cjs/fragments/drawer-list/DrawerListProvider.js +1 -0
  377. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  378. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
  379. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
  380. package/cjs/fragments/scroll-view/ScrollView.js +1 -0
  381. package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
  382. package/cjs/shared/Eufemia.d.ts +1 -1
  383. package/cjs/shared/Eufemia.js +2 -2
  384. package/cjs/shared/Eufemia.js.map +1 -1
  385. package/cjs/shared/MediaQuery.js +1 -0
  386. package/cjs/shared/MediaQuery.js.map +1 -1
  387. package/cjs/shared/Provider.js +1 -0
  388. package/cjs/shared/Provider.js.map +1 -1
  389. package/cjs/shared/Theme.js +1 -0
  390. package/cjs/shared/Theme.js.map +1 -1
  391. package/cjs/shared/VisibilityByTheme.js +1 -0
  392. package/cjs/shared/VisibilityByTheme.js.map +1 -1
  393. package/cjs/shared/index.js +1 -0
  394. package/cjs/shared/index.js.map +1 -1
  395. package/cjs/shared/locales/en-GB.d.ts +11 -0
  396. package/cjs/shared/locales/en-GB.js +12 -1
  397. package/cjs/shared/locales/en-GB.js.map +1 -1
  398. package/cjs/shared/locales/en-US.d.ts +11 -0
  399. package/cjs/shared/locales/index.d.ts +22 -0
  400. package/cjs/shared/locales/nb-NO.d.ts +11 -0
  401. package/cjs/shared/locales/nb-NO.js +12 -1
  402. package/cjs/shared/locales/nb-NO.js.map +1 -1
  403. package/cjs/shared/useMedia.js +1 -0
  404. package/cjs/shared/useMedia.js.map +1 -1
  405. package/cjs/shared/useMediaQuery.js +1 -0
  406. package/cjs/shared/useMediaQuery.js.map +1 -1
  407. package/cjs/shared/useTheme.js +1 -0
  408. package/cjs/shared/useTheme.js.map +1 -1
  409. package/cjs/shared/useTranslation.js +1 -0
  410. package/cjs/shared/useTranslation.js.map +1 -1
  411. package/cjs/style/dnb-ui-components.css +108 -2
  412. package/cjs/style/dnb-ui-components.min.css +1 -1
  413. package/cjs/style/dnb-ui-extensions.css +13 -0
  414. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  415. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +128 -88
  416. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  417. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
  418. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  419. package/cjs/style/themes/theme-sbanken/fonts.scss +5 -4
  420. package/cjs/style/themes/theme-sbanken/properties.js +2 -2
  421. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  422. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
  423. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  424. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +141 -100
  425. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
  426. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
  427. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
  428. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  429. package/cjs/style/themes/theme-sbanken/theme-mapping.scss +2 -1
  430. package/cjs/style/themes/theme-ui/ui-theme-components.css +128 -88
  431. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  432. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +13 -0
  433. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  434. package/components/accordion/Accordion.js +2 -0
  435. package/components/accordion/Accordion.js.map +1 -1
  436. package/components/accordion/AccordionContent.js +2 -0
  437. package/components/accordion/AccordionContent.js.map +1 -1
  438. package/components/accordion/AccordionGroup.js +2 -0
  439. package/components/accordion/AccordionGroup.js.map +1 -1
  440. package/components/accordion/AccordionHeader.js +6 -15
  441. package/components/accordion/AccordionHeader.js.map +1 -1
  442. package/components/accordion/style/dnb-accordion.css +2 -2
  443. package/components/accordion/style/dnb-accordion.min.css +1 -1
  444. package/components/accordion/style/dnb-accordion.scss +3 -8
  445. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
  446. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  447. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
  448. package/components/anchor/Anchor.js +2 -0
  449. package/components/anchor/Anchor.js.map +1 -1
  450. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
  451. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  452. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
  453. package/components/autocomplete/Autocomplete.d.ts +2 -2
  454. package/components/autocomplete/Autocomplete.js +119 -91
  455. package/components/autocomplete/Autocomplete.js.map +1 -1
  456. package/components/avatar/Avatar.js +2 -0
  457. package/components/avatar/Avatar.js.map +1 -1
  458. package/components/avatar/AvatarGroup.js +2 -0
  459. package/components/avatar/AvatarGroup.js.map +1 -1
  460. package/components/badge/Badge.js +2 -0
  461. package/components/badge/Badge.js.map +1 -1
  462. package/components/breadcrumb/Breadcrumb.js +2 -0
  463. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  464. package/components/breadcrumb/BreadcrumbItem.js +2 -0
  465. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  466. package/components/button/Button.js +3 -0
  467. package/components/button/Button.js.map +1 -1
  468. package/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  469. package/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
  470. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
  471. package/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
  472. package/components/card/Card.js +2 -2
  473. package/components/card/Card.js.map +1 -1
  474. package/components/checkbox/Checkbox.js +3 -0
  475. package/components/checkbox/Checkbox.js.map +1 -1
  476. package/components/date-picker/DatePicker.js +3 -0
  477. package/components/date-picker/DatePicker.js.map +1 -1
  478. package/components/date-picker/DatePickerProvider.js +2 -0
  479. package/components/date-picker/DatePickerProvider.js.map +1 -1
  480. package/components/dialog/Dialog.js +2 -0
  481. package/components/dialog/Dialog.js.map +1 -1
  482. package/components/dialog/DialogContent.js +2 -0
  483. package/components/dialog/DialogContent.js.map +1 -1
  484. package/components/dialog/parts/DialogAction.js +2 -0
  485. package/components/dialog/parts/DialogAction.js.map +1 -1
  486. package/components/drawer/Drawer.js +2 -0
  487. package/components/drawer/Drawer.js.map +1 -1
  488. package/components/drawer/DrawerContent.js +2 -0
  489. package/components/drawer/DrawerContent.js.map +1 -1
  490. package/components/drawer/parts/DrawerContentContext.js +2 -0
  491. package/components/drawer/parts/DrawerContentContext.js.map +1 -1
  492. package/components/dropdown/Dropdown.js +1 -0
  493. package/components/dropdown/Dropdown.js.map +1 -1
  494. package/components/flex/Container.js +8 -4
  495. package/components/flex/Container.js.map +1 -1
  496. package/components/flex/Flex.d.ts +1 -1
  497. package/components/flex/Flex.js +1 -1
  498. package/components/flex/Flex.js.map +1 -1
  499. package/components/flex/export.d.ts +5 -0
  500. package/components/flex/export.js +6 -0
  501. package/components/flex/export.js.map +1 -0
  502. package/components/flex/index.d.ts +2 -5
  503. package/components/flex/index.js +2 -5
  504. package/components/flex/index.js.map +1 -1
  505. package/components/flex/utils.js +2 -2
  506. package/components/flex/utils.js.map +1 -1
  507. package/components/form-label/FormLabel.d.ts +1 -0
  508. package/components/form-label/FormLabel.js +3 -0
  509. package/components/form-label/FormLabel.js.map +1 -1
  510. package/components/form-row/FormRow.js +2 -0
  511. package/components/form-row/FormRow.js.map +1 -1
  512. package/components/form-row/style/dnb-form-row.scss +1 -1
  513. package/components/form-set/FormSet.js +2 -0
  514. package/components/form-set/FormSet.js.map +1 -1
  515. package/components/form-status/FormStatus.js +2 -0
  516. package/components/form-status/FormStatus.js.map +1 -1
  517. package/components/global-error/GlobalError.js +2 -0
  518. package/components/global-error/GlobalError.js.map +1 -1
  519. package/components/global-status/GlobalStatus.js +2 -0
  520. package/components/global-status/GlobalStatus.js.map +1 -1
  521. package/components/grid/Grid.d.ts +1 -1
  522. package/components/grid/Grid.js +1 -1
  523. package/components/grid/Grid.js.map +1 -1
  524. package/components/grid/export.d.ts +2 -0
  525. package/components/grid/export.js +3 -0
  526. package/components/grid/export.js.map +1 -0
  527. package/components/grid/index.d.ts +2 -2
  528. package/components/grid/index.js +2 -2
  529. package/components/grid/index.js.map +1 -1
  530. package/components/heading/Heading.js +2 -0
  531. package/components/heading/Heading.js.map +1 -1
  532. package/components/help-button/HelpButton.js +2 -0
  533. package/components/help-button/HelpButton.js.map +1 -1
  534. package/components/help-button/HelpButtonInstance.js +2 -0
  535. package/components/help-button/HelpButtonInstance.js.map +1 -1
  536. package/components/icon/Icon.js +2 -0
  537. package/components/icon/Icon.js.map +1 -1
  538. package/components/icon/style/dnb-icon.scss +1 -1
  539. package/components/icon-primary/IconPrimary.js +2 -0
  540. package/components/icon-primary/IconPrimary.js.map +1 -1
  541. package/components/info-card/InfoCard.js +2 -0
  542. package/components/info-card/InfoCard.js.map +1 -1
  543. package/components/input/Input.d.ts +4 -0
  544. package/components/input/Input.js +13 -2
  545. package/components/input/Input.js.map +1 -1
  546. package/components/input/InputPassword.js +3 -0
  547. package/components/input/InputPassword.js.map +1 -1
  548. package/components/input-masked/InputMasked.d.ts +1 -1
  549. package/components/input-masked/InputMasked.js +3 -0
  550. package/components/input-masked/InputMasked.js.map +1 -1
  551. package/components/input-masked/MultiInputMask.d.ts +12 -4
  552. package/components/input-masked/MultiInputMask.js +17 -8
  553. package/components/input-masked/MultiInputMask.js.map +1 -1
  554. package/components/input-masked/TextMask.d.ts +1 -1
  555. package/components/input-masked/hooks/useHandleCursorPosition.js +3 -1
  556. package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  557. package/components/input-masked/hooks/useMultiInputValues.js +2 -0
  558. package/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  559. package/components/lib.d.ts +2 -0
  560. package/components/logo/Logo.js +2 -0
  561. package/components/logo/Logo.js.map +1 -1
  562. package/components/modal/Modal.js +2 -0
  563. package/components/modal/Modal.js.map +1 -1
  564. package/components/modal/ModalContent.js +2 -0
  565. package/components/modal/ModalContent.js.map +1 -1
  566. package/components/modal/parts/CloseButton.js +2 -0
  567. package/components/modal/parts/CloseButton.js.map +1 -1
  568. package/components/number-format/NumberFormat.js +2 -0
  569. package/components/number-format/NumberFormat.js.map +1 -1
  570. package/components/number-format/NumberUtils.js +2 -0
  571. package/components/number-format/NumberUtils.js.map +1 -1
  572. package/components/number-format/useNumberFormat.js +2 -0
  573. package/components/number-format/useNumberFormat.js.map +1 -1
  574. package/components/pagination/PaginationBar.js +2 -0
  575. package/components/pagination/PaginationBar.js.map +1 -1
  576. package/components/pagination/PaginationHelpers.js +2 -0
  577. package/components/pagination/PaginationHelpers.js.map +1 -1
  578. package/components/pagination/PaginationInfinity.js +2 -0
  579. package/components/pagination/PaginationInfinity.js.map +1 -1
  580. package/components/pagination/PaginationProvider.js +2 -0
  581. package/components/pagination/PaginationProvider.js.map +1 -1
  582. package/components/progress-indicator/ProgressIndicator.js +2 -0
  583. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  584. package/components/radio/Radio.js +5 -2
  585. package/components/radio/Radio.js.map +1 -1
  586. package/components/radio/RadioGroup.js +6 -4
  587. package/components/radio/RadioGroup.js.map +1 -1
  588. package/components/radio/style/dnb-radio.css +106 -0
  589. package/components/radio/style/dnb-radio.min.css +1 -1
  590. package/components/radio/style/dnb-radio.scss +202 -0
  591. package/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
  592. package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
  593. package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
  594. package/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
  595. package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  596. package/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
  597. package/components/section/Section.js +2 -0
  598. package/components/section/Section.js.map +1 -1
  599. package/components/skeleton/Skeleton.js +2 -0
  600. package/components/skeleton/Skeleton.js.map +1 -1
  601. package/components/skeleton/figures/Article.js +2 -0
  602. package/components/skeleton/figures/Article.js.map +1 -1
  603. package/components/skeleton/figures/Circle.js +2 -0
  604. package/components/skeleton/figures/Circle.js.map +1 -1
  605. package/components/skeleton/figures/Product.js +2 -0
  606. package/components/skeleton/figures/Product.js.map +1 -1
  607. package/components/skeleton/figures/Table.js +2 -0
  608. package/components/skeleton/figures/Table.js.map +1 -1
  609. package/components/slider/Slider.d.ts +1 -0
  610. package/components/slider/Slider.js +1 -0
  611. package/components/slider/Slider.js.map +1 -1
  612. package/components/slider/SliderInstance.js +2 -0
  613. package/components/slider/SliderInstance.js.map +1 -1
  614. package/components/slider/SliderProvider.js +2 -0
  615. package/components/slider/SliderProvider.js.map +1 -1
  616. package/components/space/Space.js +2 -0
  617. package/components/space/Space.js.map +1 -1
  618. package/components/step-indicator/StepIndicatorContext.js +2 -0
  619. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  620. package/components/step-indicator/StepIndicatorItem.js +4 -2
  621. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  622. package/components/step-indicator/StepIndicatorList.js +2 -0
  623. package/components/step-indicator/StepIndicatorList.js.map +1 -1
  624. package/components/step-indicator/StepIndicatorModal.js +2 -0
  625. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  626. package/components/step-indicator/StepIndicatorSidebar.js +2 -0
  627. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  628. package/components/step-indicator/StepIndicatorTriggerButton.js +2 -0
  629. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  630. package/components/switch/Switch.js +3 -0
  631. package/components/switch/Switch.js.map +1 -1
  632. package/components/table/Table.js +2 -0
  633. package/components/table/Table.js.map +1 -1
  634. package/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
  635. package/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  636. package/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
  637. package/components/tabs/Tabs.js +2 -0
  638. package/components/tabs/Tabs.js.map +1 -1
  639. package/components/tag/Tag.d.ts +1 -0
  640. package/components/tag/Tag.js +3 -0
  641. package/components/tag/Tag.js.map +1 -1
  642. package/components/tag/TagGroup.js +2 -0
  643. package/components/tag/TagGroup.js.map +1 -1
  644. package/components/textarea/Textarea.js +3 -0
  645. package/components/textarea/Textarea.js.map +1 -1
  646. package/components/timeline/Timeline.js +2 -0
  647. package/components/timeline/Timeline.js.map +1 -1
  648. package/components/timeline/TimelineItem.js +2 -0
  649. package/components/timeline/TimelineItem.js.map +1 -1
  650. package/components/toggle-button/ToggleButton.js +3 -0
  651. package/components/toggle-button/ToggleButton.js.map +1 -1
  652. package/components/toggle-button/ToggleButtonGroup.js +6 -4
  653. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  654. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
  655. package/components/tooltip/Tooltip.js +2 -0
  656. package/components/tooltip/Tooltip.js.map +1 -1
  657. package/components/tooltip/TooltipPortal.js +2 -0
  658. package/components/tooltip/TooltipPortal.js.map +1 -1
  659. package/components/tooltip/TooltipWithEvents.js.map +1 -1
  660. package/components/upload/Upload.d.ts +1 -0
  661. package/components/upload/Upload.js +3 -0
  662. package/components/upload/Upload.js.map +1 -1
  663. package/components/upload/UploadContext.js +2 -0
  664. package/components/upload/UploadContext.js.map +1 -1
  665. package/components/upload/UploadFileInput.js +2 -0
  666. package/components/upload/UploadFileInput.js.map +1 -1
  667. package/components/upload/UploadFileListCell.js +2 -0
  668. package/components/upload/UploadFileListCell.js.map +1 -1
  669. package/components/upload/useUpload.js +2 -0
  670. package/components/upload/useUpload.js.map +1 -1
  671. package/components/visually-hidden/VisuallyHidden.js +2 -0
  672. package/components/visually-hidden/VisuallyHidden.js.map +1 -1
  673. package/elements/Element.js +2 -0
  674. package/elements/Element.js.map +1 -1
  675. package/elements/lists/Dl.d.ts +1 -1
  676. package/elements/lists/Dl.js.map +1 -1
  677. package/elements/typography/H.js +2 -0
  678. package/elements/typography/H.js.map +1 -1
  679. package/elements/typography/style/dnb-typography.scss +1 -1
  680. package/elements/typography/style/typography-mixins.scss +2 -2
  681. package/es/components/accordion/Accordion.js +2 -0
  682. package/es/components/accordion/Accordion.js.map +1 -1
  683. package/es/components/accordion/AccordionContent.js +2 -0
  684. package/es/components/accordion/AccordionContent.js.map +1 -1
  685. package/es/components/accordion/AccordionGroup.js +2 -0
  686. package/es/components/accordion/AccordionGroup.js.map +1 -1
  687. package/es/components/accordion/AccordionHeader.js +6 -15
  688. package/es/components/accordion/AccordionHeader.js.map +1 -1
  689. package/es/components/accordion/style/dnb-accordion.css +2 -2
  690. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  691. package/es/components/accordion/style/dnb-accordion.scss +3 -8
  692. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
  693. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  694. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
  695. package/es/components/anchor/Anchor.js +2 -0
  696. package/es/components/anchor/Anchor.js.map +1 -1
  697. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
  698. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  699. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
  700. package/es/components/autocomplete/Autocomplete.d.ts +2 -2
  701. package/es/components/autocomplete/Autocomplete.js +118 -91
  702. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  703. package/es/components/avatar/Avatar.js +2 -0
  704. package/es/components/avatar/Avatar.js.map +1 -1
  705. package/es/components/avatar/AvatarGroup.js +2 -0
  706. package/es/components/avatar/AvatarGroup.js.map +1 -1
  707. package/es/components/badge/Badge.js +2 -0
  708. package/es/components/badge/Badge.js.map +1 -1
  709. package/es/components/breadcrumb/Breadcrumb.js +2 -0
  710. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  711. package/es/components/breadcrumb/BreadcrumbItem.js +2 -0
  712. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  713. package/es/components/button/Button.js +3 -0
  714. package/es/components/button/Button.js.map +1 -1
  715. package/es/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  716. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
  717. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
  718. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
  719. package/es/components/card/Card.js +2 -2
  720. package/es/components/card/Card.js.map +1 -1
  721. package/es/components/checkbox/Checkbox.js +3 -0
  722. package/es/components/checkbox/Checkbox.js.map +1 -1
  723. package/es/components/date-picker/DatePicker.js +3 -0
  724. package/es/components/date-picker/DatePicker.js.map +1 -1
  725. package/es/components/date-picker/DatePickerProvider.js +2 -0
  726. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  727. package/es/components/dialog/Dialog.js +2 -0
  728. package/es/components/dialog/Dialog.js.map +1 -1
  729. package/es/components/dialog/DialogContent.js +2 -0
  730. package/es/components/dialog/DialogContent.js.map +1 -1
  731. package/es/components/dialog/parts/DialogAction.js +2 -0
  732. package/es/components/dialog/parts/DialogAction.js.map +1 -1
  733. package/es/components/drawer/Drawer.js +2 -0
  734. package/es/components/drawer/Drawer.js.map +1 -1
  735. package/es/components/drawer/DrawerContent.js +2 -0
  736. package/es/components/drawer/DrawerContent.js.map +1 -1
  737. package/es/components/drawer/parts/DrawerContentContext.js +2 -0
  738. package/es/components/drawer/parts/DrawerContentContext.js.map +1 -1
  739. package/es/components/dropdown/Dropdown.js +1 -0
  740. package/es/components/dropdown/Dropdown.js.map +1 -1
  741. package/es/components/flex/Container.js +8 -4
  742. package/es/components/flex/Container.js.map +1 -1
  743. package/es/components/flex/Flex.d.ts +1 -1
  744. package/es/components/flex/Flex.js +1 -1
  745. package/es/components/flex/Flex.js.map +1 -1
  746. package/es/components/flex/export.d.ts +5 -0
  747. package/es/components/flex/export.js +6 -0
  748. package/es/components/flex/export.js.map +1 -0
  749. package/es/components/flex/index.d.ts +2 -5
  750. package/es/components/flex/index.js +2 -5
  751. package/es/components/flex/index.js.map +1 -1
  752. package/es/components/flex/utils.js +2 -2
  753. package/es/components/flex/utils.js.map +1 -1
  754. package/es/components/form-label/FormLabel.d.ts +1 -0
  755. package/es/components/form-label/FormLabel.js +3 -0
  756. package/es/components/form-label/FormLabel.js.map +1 -1
  757. package/es/components/form-row/FormRow.js +2 -0
  758. package/es/components/form-row/FormRow.js.map +1 -1
  759. package/es/components/form-row/style/dnb-form-row.scss +1 -1
  760. package/es/components/form-set/FormSet.js +2 -0
  761. package/es/components/form-set/FormSet.js.map +1 -1
  762. package/es/components/form-status/FormStatus.js +2 -0
  763. package/es/components/form-status/FormStatus.js.map +1 -1
  764. package/es/components/global-error/GlobalError.js +2 -0
  765. package/es/components/global-error/GlobalError.js.map +1 -1
  766. package/es/components/global-status/GlobalStatus.js +2 -0
  767. package/es/components/global-status/GlobalStatus.js.map +1 -1
  768. package/es/components/grid/Grid.d.ts +1 -1
  769. package/es/components/grid/Grid.js +1 -1
  770. package/es/components/grid/Grid.js.map +1 -1
  771. package/es/components/grid/export.d.ts +2 -0
  772. package/es/components/grid/export.js +3 -0
  773. package/es/components/grid/export.js.map +1 -0
  774. package/es/components/grid/index.d.ts +2 -2
  775. package/es/components/grid/index.js +2 -2
  776. package/es/components/grid/index.js.map +1 -1
  777. package/es/components/heading/Heading.js +2 -0
  778. package/es/components/heading/Heading.js.map +1 -1
  779. package/es/components/help-button/HelpButton.js +2 -0
  780. package/es/components/help-button/HelpButton.js.map +1 -1
  781. package/es/components/help-button/HelpButtonInstance.js +2 -0
  782. package/es/components/help-button/HelpButtonInstance.js.map +1 -1
  783. package/es/components/icon/Icon.js +2 -0
  784. package/es/components/icon/Icon.js.map +1 -1
  785. package/es/components/icon/style/dnb-icon.scss +1 -1
  786. package/es/components/icon-primary/IconPrimary.js +2 -0
  787. package/es/components/icon-primary/IconPrimary.js.map +1 -1
  788. package/es/components/info-card/InfoCard.js +2 -0
  789. package/es/components/info-card/InfoCard.js.map +1 -1
  790. package/es/components/input/Input.d.ts +4 -0
  791. package/es/components/input/Input.js +13 -2
  792. package/es/components/input/Input.js.map +1 -1
  793. package/es/components/input/InputPassword.js +3 -0
  794. package/es/components/input/InputPassword.js.map +1 -1
  795. package/es/components/input-masked/InputMasked.d.ts +1 -1
  796. package/es/components/input-masked/InputMasked.js +3 -0
  797. package/es/components/input-masked/InputMasked.js.map +1 -1
  798. package/es/components/input-masked/MultiInputMask.d.ts +12 -4
  799. package/es/components/input-masked/MultiInputMask.js +17 -8
  800. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  801. package/es/components/input-masked/TextMask.d.ts +1 -1
  802. package/es/components/input-masked/hooks/useHandleCursorPosition.js +3 -1
  803. package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  804. package/es/components/input-masked/hooks/useMultiInputValues.js +2 -0
  805. package/es/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
  806. package/es/components/lib.d.ts +2 -0
  807. package/es/components/logo/Logo.js +2 -0
  808. package/es/components/logo/Logo.js.map +1 -1
  809. package/es/components/modal/Modal.js +2 -0
  810. package/es/components/modal/Modal.js.map +1 -1
  811. package/es/components/modal/ModalContent.js +2 -0
  812. package/es/components/modal/ModalContent.js.map +1 -1
  813. package/es/components/modal/parts/CloseButton.js +2 -0
  814. package/es/components/modal/parts/CloseButton.js.map +1 -1
  815. package/es/components/number-format/NumberFormat.js +2 -0
  816. package/es/components/number-format/NumberFormat.js.map +1 -1
  817. package/es/components/number-format/NumberUtils.js +2 -0
  818. package/es/components/number-format/NumberUtils.js.map +1 -1
  819. package/es/components/number-format/useNumberFormat.js +2 -0
  820. package/es/components/number-format/useNumberFormat.js.map +1 -1
  821. package/es/components/pagination/PaginationBar.js +2 -0
  822. package/es/components/pagination/PaginationBar.js.map +1 -1
  823. package/es/components/pagination/PaginationHelpers.js +2 -0
  824. package/es/components/pagination/PaginationHelpers.js.map +1 -1
  825. package/es/components/pagination/PaginationInfinity.js +2 -0
  826. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  827. package/es/components/pagination/PaginationProvider.js +2 -0
  828. package/es/components/pagination/PaginationProvider.js.map +1 -1
  829. package/es/components/progress-indicator/ProgressIndicator.js +2 -0
  830. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  831. package/es/components/radio/Radio.js +5 -2
  832. package/es/components/radio/Radio.js.map +1 -1
  833. package/es/components/radio/RadioGroup.js +6 -4
  834. package/es/components/radio/RadioGroup.js.map +1 -1
  835. package/es/components/radio/style/dnb-radio.css +106 -0
  836. package/es/components/radio/style/dnb-radio.min.css +1 -1
  837. package/es/components/radio/style/dnb-radio.scss +202 -0
  838. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
  839. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
  840. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
  841. package/es/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
  842. package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  843. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
  844. package/es/components/section/Section.js +2 -0
  845. package/es/components/section/Section.js.map +1 -1
  846. package/es/components/skeleton/Skeleton.js +2 -0
  847. package/es/components/skeleton/Skeleton.js.map +1 -1
  848. package/es/components/skeleton/figures/Article.js +2 -0
  849. package/es/components/skeleton/figures/Article.js.map +1 -1
  850. package/es/components/skeleton/figures/Circle.js +2 -0
  851. package/es/components/skeleton/figures/Circle.js.map +1 -1
  852. package/es/components/skeleton/figures/Product.js +2 -0
  853. package/es/components/skeleton/figures/Product.js.map +1 -1
  854. package/es/components/skeleton/figures/Table.js +2 -0
  855. package/es/components/skeleton/figures/Table.js.map +1 -1
  856. package/es/components/slider/Slider.d.ts +1 -0
  857. package/es/components/slider/Slider.js +1 -0
  858. package/es/components/slider/Slider.js.map +1 -1
  859. package/es/components/slider/SliderInstance.js +2 -0
  860. package/es/components/slider/SliderInstance.js.map +1 -1
  861. package/es/components/slider/SliderProvider.js +2 -0
  862. package/es/components/slider/SliderProvider.js.map +1 -1
  863. package/es/components/space/Space.js +2 -0
  864. package/es/components/space/Space.js.map +1 -1
  865. package/es/components/step-indicator/StepIndicatorContext.js +2 -0
  866. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  867. package/es/components/step-indicator/StepIndicatorItem.js +4 -2
  868. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  869. package/es/components/step-indicator/StepIndicatorList.js +2 -0
  870. package/es/components/step-indicator/StepIndicatorList.js.map +1 -1
  871. package/es/components/step-indicator/StepIndicatorModal.js +2 -0
  872. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  873. package/es/components/step-indicator/StepIndicatorSidebar.js +2 -0
  874. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  875. package/es/components/step-indicator/StepIndicatorTriggerButton.js +2 -0
  876. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  877. package/es/components/switch/Switch.js +3 -0
  878. package/es/components/switch/Switch.js.map +1 -1
  879. package/es/components/table/Table.js +2 -0
  880. package/es/components/table/Table.js.map +1 -1
  881. package/es/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
  882. package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  883. package/es/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
  884. package/es/components/tabs/Tabs.js +2 -0
  885. package/es/components/tabs/Tabs.js.map +1 -1
  886. package/es/components/tag/Tag.d.ts +1 -0
  887. package/es/components/tag/Tag.js +3 -0
  888. package/es/components/tag/Tag.js.map +1 -1
  889. package/es/components/tag/TagGroup.js +2 -0
  890. package/es/components/tag/TagGroup.js.map +1 -1
  891. package/es/components/textarea/Textarea.js +3 -0
  892. package/es/components/textarea/Textarea.js.map +1 -1
  893. package/es/components/timeline/Timeline.js +2 -0
  894. package/es/components/timeline/Timeline.js.map +1 -1
  895. package/es/components/timeline/TimelineItem.js +2 -0
  896. package/es/components/timeline/TimelineItem.js.map +1 -1
  897. package/es/components/toggle-button/ToggleButton.js +3 -0
  898. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  899. package/es/components/toggle-button/ToggleButtonGroup.js +6 -4
  900. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  901. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
  902. package/es/components/tooltip/Tooltip.js +2 -0
  903. package/es/components/tooltip/Tooltip.js.map +1 -1
  904. package/es/components/tooltip/TooltipPortal.js +2 -0
  905. package/es/components/tooltip/TooltipPortal.js.map +1 -1
  906. package/es/components/tooltip/TooltipWithEvents.js.map +1 -1
  907. package/es/components/upload/Upload.d.ts +1 -0
  908. package/es/components/upload/Upload.js +3 -0
  909. package/es/components/upload/Upload.js.map +1 -1
  910. package/es/components/upload/UploadContext.js +2 -0
  911. package/es/components/upload/UploadContext.js.map +1 -1
  912. package/es/components/upload/UploadFileInput.js +2 -0
  913. package/es/components/upload/UploadFileInput.js.map +1 -1
  914. package/es/components/upload/UploadFileListCell.js +2 -0
  915. package/es/components/upload/UploadFileListCell.js.map +1 -1
  916. package/es/components/upload/useUpload.js +2 -0
  917. package/es/components/upload/useUpload.js.map +1 -1
  918. package/es/components/visually-hidden/VisuallyHidden.js +2 -0
  919. package/es/components/visually-hidden/VisuallyHidden.js.map +1 -1
  920. package/es/elements/Element.js +2 -0
  921. package/es/elements/Element.js.map +1 -1
  922. package/es/elements/lists/Dl.d.ts +1 -1
  923. package/es/elements/lists/Dl.js.map +1 -1
  924. package/es/elements/typography/H.js +2 -0
  925. package/es/elements/typography/H.js.map +1 -1
  926. package/es/elements/typography/style/dnb-typography.scss +1 -1
  927. package/es/elements/typography/style/typography-mixins.scss +2 -2
  928. package/es/extensions/forms/DataContext/At/At.js +2 -0
  929. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  930. package/es/extensions/forms/DataContext/Provider/Provider.js +56 -43
  931. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  932. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
  933. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  934. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +15 -9
  935. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  936. package/es/extensions/forms/Field/Boolean/Boolean.js +4 -2
  937. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  938. package/es/extensions/forms/Field/Currency/Currency.js +3 -2
  939. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  940. package/es/extensions/forms/Field/Date/Date.js +3 -1
  941. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  942. package/es/extensions/forms/Field/Email/Email.js +13 -8
  943. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  944. package/es/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  945. package/es/extensions/forms/Field/Expiry/Expiry.js +88 -0
  946. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  947. package/es/extensions/forms/Field/Expiry/index.d.ts +2 -0
  948. package/es/extensions/forms/Field/Expiry/index.js +3 -0
  949. package/es/extensions/forms/Field/Expiry/index.js.map +1 -0
  950. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
  951. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  952. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  953. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +15 -9
  954. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  955. package/es/extensions/forms/Field/Number/Number.js +49 -25
  956. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  957. package/es/extensions/forms/Field/Option/Option.js +1 -1
  958. package/es/extensions/forms/Field/Option/Option.js.map +1 -1
  959. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +15 -9
  960. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  961. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
  962. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +67 -22
  963. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  964. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -4
  965. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  966. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
  967. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  968. package/es/extensions/forms/Field/Selection/Selection.js +30 -20
  969. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  970. package/es/extensions/forms/Field/String/String.js +38 -26
  971. package/es/extensions/forms/Field/String/String.js.map +1 -1
  972. package/es/extensions/forms/Field/Toggle/Toggle.js +6 -4
  973. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  974. package/es/extensions/forms/Field/index.d.ts +1 -0
  975. package/es/extensions/forms/Field/index.js +1 -0
  976. package/es/extensions/forms/Field/index.js.map +1 -1
  977. package/es/extensions/forms/Field/style/dnb-forms-field.css +13 -0
  978. package/es/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
  979. package/es/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
  980. package/es/extensions/forms/FieldBlock/FieldBlock.js +38 -3
  981. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  982. package/es/extensions/forms/Form/Element/Element.js +2 -0
  983. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  984. package/es/extensions/forms/Form/Handler/Handler.js +2 -0
  985. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  986. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +2 -0
  987. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  988. package/es/extensions/forms/Iterate/Array/Array.js +2 -2
  989. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  990. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +4 -2
  991. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  992. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +3 -1
  993. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  994. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js +2 -0
  995. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  996. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +2 -0
  997. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  998. package/es/extensions/forms/StepsLayout/Step/Step.js +2 -0
  999. package/es/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
  1000. package/es/extensions/forms/StepsLayout/StepsLayout.js +4 -1
  1001. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  1002. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -1
  1003. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  1004. package/es/extensions/forms/Value/Boolean/Boolean.js +2 -0
  1005. package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  1006. package/es/extensions/forms/Value/Currency/Currency.js +3 -2
  1007. package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
  1008. package/es/extensions/forms/Value/Date/Date.js +4 -1
  1009. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  1010. package/es/extensions/forms/Value/Email/Email.js +4 -1
  1011. package/es/extensions/forms/Value/Email/Email.js.map +1 -1
  1012. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -1
  1013. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  1014. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -1
  1015. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  1016. package/es/extensions/forms/ValueBlock/ValueBlock.js +1 -1
  1017. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  1018. package/es/extensions/forms/Visibility/Visibility.js +2 -0
  1019. package/es/extensions/forms/Visibility/Visibility.js.map +1 -1
  1020. package/es/extensions/forms/hooks/index.d.ts +3 -0
  1021. package/es/extensions/forms/hooks/index.js +5 -1
  1022. package/es/extensions/forms/hooks/index.js.map +1 -1
  1023. package/es/extensions/forms/hooks/useDataValue.js +139 -69
  1024. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  1025. package/es/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  1026. package/es/extensions/forms/hooks/useMountEffect.js +9 -0
  1027. package/es/extensions/forms/hooks/useMountEffect.js.map +1 -0
  1028. package/es/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  1029. package/es/extensions/forms/hooks/useProcessManager.js +16 -0
  1030. package/es/extensions/forms/hooks/useProcessManager.js.map +1 -0
  1031. package/es/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  1032. package/es/extensions/forms/hooks/useUpdateEffect.js +14 -0
  1033. package/es/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  1034. package/es/extensions/forms/style/dnb-forms.css +13 -0
  1035. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  1036. package/es/extensions/forms/types.d.ts +10 -2
  1037. package/es/extensions/forms/types.js +8 -6
  1038. package/es/extensions/forms/types.js.map +1 -1
  1039. package/es/extensions/forms/utils/ajv.js +28 -3
  1040. package/es/extensions/forms/utils/ajv.js.map +1 -1
  1041. package/es/extensions/forms/utils/errors.d.ts +2 -0
  1042. package/es/extensions/forms/utils/errors.js +10 -0
  1043. package/es/extensions/forms/utils/errors.js.map +1 -0
  1044. package/es/extensions/forms/utils/index.d.ts +1 -0
  1045. package/es/extensions/forms/utils/index.js +1 -0
  1046. package/es/extensions/forms/utils/index.js.map +1 -1
  1047. package/es/extensions/forms/utils/numbers.js +2 -2
  1048. package/es/extensions/forms/utils/numbers.js.map +1 -1
  1049. package/es/extensions/forms/utils/useWasChanged.js +9 -6
  1050. package/es/extensions/forms/utils/useWasChanged.js.map +1 -1
  1051. package/es/extensions/payment-card/PaymentCard.js +2 -0
  1052. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  1053. package/es/fragments/drawer-list/DrawerListHelpers.js +1 -1
  1054. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  1055. package/es/fragments/drawer-list/DrawerListProvider.js +2 -0
  1056. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1057. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
  1058. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
  1059. package/es/fragments/scroll-view/ScrollView.js +2 -0
  1060. package/es/fragments/scroll-view/ScrollView.js.map +1 -1
  1061. package/es/shared/Eufemia.d.ts +1 -1
  1062. package/es/shared/Eufemia.js +2 -2
  1063. package/es/shared/Eufemia.js.map +1 -1
  1064. package/es/shared/MediaQuery.js +2 -0
  1065. package/es/shared/MediaQuery.js.map +1 -1
  1066. package/es/shared/Provider.js +2 -0
  1067. package/es/shared/Provider.js.map +1 -1
  1068. package/es/shared/Theme.js +2 -0
  1069. package/es/shared/Theme.js.map +1 -1
  1070. package/es/shared/VisibilityByTheme.js +2 -0
  1071. package/es/shared/VisibilityByTheme.js.map +1 -1
  1072. package/es/shared/index.js +2 -0
  1073. package/es/shared/index.js.map +1 -1
  1074. package/es/shared/locales/en-GB.d.ts +11 -0
  1075. package/es/shared/locales/en-GB.js +12 -1
  1076. package/es/shared/locales/en-GB.js.map +1 -1
  1077. package/es/shared/locales/en-US.d.ts +11 -0
  1078. package/es/shared/locales/index.d.ts +22 -0
  1079. package/es/shared/locales/nb-NO.d.ts +11 -0
  1080. package/es/shared/locales/nb-NO.js +12 -1
  1081. package/es/shared/locales/nb-NO.js.map +1 -1
  1082. package/es/shared/useMedia.js +2 -0
  1083. package/es/shared/useMedia.js.map +1 -1
  1084. package/es/shared/useMediaQuery.js +2 -0
  1085. package/es/shared/useMediaQuery.js.map +1 -1
  1086. package/es/shared/useTheme.js +2 -0
  1087. package/es/shared/useTheme.js.map +1 -1
  1088. package/es/shared/useTranslation.js +2 -0
  1089. package/es/shared/useTranslation.js.map +1 -1
  1090. package/es/style/dnb-ui-components.css +108 -2
  1091. package/es/style/dnb-ui-components.min.css +1 -1
  1092. package/es/style/dnb-ui-extensions.css +13 -0
  1093. package/es/style/dnb-ui-extensions.min.css +1 -1
  1094. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +128 -88
  1095. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  1096. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
  1097. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1098. package/es/style/themes/theme-sbanken/fonts.scss +5 -4
  1099. package/es/style/themes/theme-sbanken/properties.js +2 -2
  1100. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  1101. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
  1102. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1103. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +141 -100
  1104. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
  1105. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
  1106. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
  1107. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1108. package/es/style/themes/theme-sbanken/theme-mapping.scss +2 -1
  1109. package/es/style/themes/theme-ui/ui-theme-components.css +128 -88
  1110. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  1111. package/es/style/themes/theme-ui/ui-theme-extensions.css +13 -0
  1112. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1113. package/esm/dnb-ui-basis.min.mjs +1 -1
  1114. package/esm/dnb-ui-components.min.mjs +1 -1
  1115. package/esm/dnb-ui-elements.min.mjs +1 -1
  1116. package/esm/dnb-ui-extensions.min.mjs +3 -3
  1117. package/esm/dnb-ui-lib.min.mjs +1 -1
  1118. package/extensions/forms/DataContext/At/At.js +2 -0
  1119. package/extensions/forms/DataContext/At/At.js.map +1 -1
  1120. package/extensions/forms/DataContext/Provider/Provider.js +56 -43
  1121. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  1122. package/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
  1123. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  1124. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +15 -9
  1125. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  1126. package/extensions/forms/Field/Boolean/Boolean.js +4 -2
  1127. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  1128. package/extensions/forms/Field/Currency/Currency.js +3 -2
  1129. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  1130. package/extensions/forms/Field/Date/Date.js +3 -1
  1131. package/extensions/forms/Field/Date/Date.js.map +1 -1
  1132. package/extensions/forms/Field/Email/Email.js +13 -8
  1133. package/extensions/forms/Field/Email/Email.js.map +1 -1
  1134. package/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  1135. package/extensions/forms/Field/Expiry/Expiry.js +88 -0
  1136. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  1137. package/extensions/forms/Field/Expiry/index.d.ts +2 -0
  1138. package/extensions/forms/Field/Expiry/index.js +3 -0
  1139. package/extensions/forms/Field/Expiry/index.js.map +1 -0
  1140. package/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
  1141. package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  1142. package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  1143. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +15 -9
  1144. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  1145. package/extensions/forms/Field/Number/Number.js +50 -26
  1146. package/extensions/forms/Field/Number/Number.js.map +1 -1
  1147. package/extensions/forms/Field/Option/Option.js +1 -1
  1148. package/extensions/forms/Field/Option/Option.js.map +1 -1
  1149. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +15 -9
  1150. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  1151. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
  1152. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +76 -22
  1153. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  1154. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -4
  1155. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  1156. package/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
  1157. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  1158. package/extensions/forms/Field/Selection/Selection.js +30 -20
  1159. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  1160. package/extensions/forms/Field/String/String.js +39 -27
  1161. package/extensions/forms/Field/String/String.js.map +1 -1
  1162. package/extensions/forms/Field/Toggle/Toggle.js +6 -4
  1163. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  1164. package/extensions/forms/Field/index.d.ts +1 -0
  1165. package/extensions/forms/Field/index.js +1 -0
  1166. package/extensions/forms/Field/index.js.map +1 -1
  1167. package/extensions/forms/Field/style/dnb-forms-field.css +13 -0
  1168. package/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
  1169. package/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
  1170. package/extensions/forms/FieldBlock/FieldBlock.js +39 -3
  1171. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  1172. package/extensions/forms/Form/Element/Element.js +2 -0
  1173. package/extensions/forms/Form/Element/Element.js.map +1 -1
  1174. package/extensions/forms/Form/Handler/Handler.js +2 -0
  1175. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  1176. package/extensions/forms/Form/SubmitButton/SubmitButton.js +2 -0
  1177. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  1178. package/extensions/forms/Iterate/Array/Array.js +2 -2
  1179. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  1180. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +4 -2
  1181. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  1182. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +3 -1
  1183. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  1184. package/extensions/forms/StepsLayout/NextButton/NextButton.js +2 -0
  1185. package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  1186. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +2 -0
  1187. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  1188. package/extensions/forms/StepsLayout/Step/Step.js +2 -0
  1189. package/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
  1190. package/extensions/forms/StepsLayout/StepsLayout.js +4 -1
  1191. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  1192. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -1
  1193. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  1194. package/extensions/forms/Value/Boolean/Boolean.js +2 -0
  1195. package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  1196. package/extensions/forms/Value/Currency/Currency.js +3 -2
  1197. package/extensions/forms/Value/Currency/Currency.js.map +1 -1
  1198. package/extensions/forms/Value/Date/Date.js +4 -1
  1199. package/extensions/forms/Value/Date/Date.js.map +1 -1
  1200. package/extensions/forms/Value/Email/Email.js +4 -1
  1201. package/extensions/forms/Value/Email/Email.js.map +1 -1
  1202. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -1
  1203. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  1204. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -1
  1205. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  1206. package/extensions/forms/ValueBlock/ValueBlock.js +1 -1
  1207. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  1208. package/extensions/forms/Visibility/Visibility.js +2 -0
  1209. package/extensions/forms/Visibility/Visibility.js.map +1 -1
  1210. package/extensions/forms/hooks/index.d.ts +3 -0
  1211. package/extensions/forms/hooks/index.js +5 -1
  1212. package/extensions/forms/hooks/index.js.map +1 -1
  1213. package/extensions/forms/hooks/useDataValue.js +140 -69
  1214. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  1215. package/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  1216. package/extensions/forms/hooks/useMountEffect.js +9 -0
  1217. package/extensions/forms/hooks/useMountEffect.js.map +1 -0
  1218. package/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  1219. package/extensions/forms/hooks/useProcessManager.js +16 -0
  1220. package/extensions/forms/hooks/useProcessManager.js.map +1 -0
  1221. package/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  1222. package/extensions/forms/hooks/useUpdateEffect.js +14 -0
  1223. package/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  1224. package/extensions/forms/style/dnb-forms.css +13 -0
  1225. package/extensions/forms/style/dnb-forms.min.css +1 -1
  1226. package/extensions/forms/types.d.ts +10 -2
  1227. package/extensions/forms/types.js +8 -6
  1228. package/extensions/forms/types.js.map +1 -1
  1229. package/extensions/forms/utils/ajv.js +28 -3
  1230. package/extensions/forms/utils/ajv.js.map +1 -1
  1231. package/extensions/forms/utils/errors.d.ts +2 -0
  1232. package/extensions/forms/utils/errors.js +10 -0
  1233. package/extensions/forms/utils/errors.js.map +1 -0
  1234. package/extensions/forms/utils/index.d.ts +1 -0
  1235. package/extensions/forms/utils/index.js +1 -0
  1236. package/extensions/forms/utils/index.js.map +1 -1
  1237. package/extensions/forms/utils/numbers.js +2 -2
  1238. package/extensions/forms/utils/numbers.js.map +1 -1
  1239. package/extensions/forms/utils/useWasChanged.js +9 -6
  1240. package/extensions/forms/utils/useWasChanged.js.map +1 -1
  1241. package/extensions/payment-card/PaymentCard.js +2 -0
  1242. package/extensions/payment-card/PaymentCard.js.map +1 -1
  1243. package/fragments/drawer-list/DrawerListHelpers.js +1 -1
  1244. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  1245. package/fragments/drawer-list/DrawerListProvider.js +2 -0
  1246. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1247. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
  1248. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
  1249. package/fragments/scroll-view/ScrollView.js +2 -0
  1250. package/fragments/scroll-view/ScrollView.js.map +1 -1
  1251. package/package.json +11 -1
  1252. package/shared/Eufemia.d.ts +1 -1
  1253. package/shared/Eufemia.js +2 -2
  1254. package/shared/Eufemia.js.map +1 -1
  1255. package/shared/MediaQuery.js +2 -0
  1256. package/shared/MediaQuery.js.map +1 -1
  1257. package/shared/Provider.js +2 -0
  1258. package/shared/Provider.js.map +1 -1
  1259. package/shared/Theme.js +2 -0
  1260. package/shared/Theme.js.map +1 -1
  1261. package/shared/VisibilityByTheme.js +2 -0
  1262. package/shared/VisibilityByTheme.js.map +1 -1
  1263. package/shared/index.js +2 -0
  1264. package/shared/index.js.map +1 -1
  1265. package/shared/locales/en-GB.d.ts +11 -0
  1266. package/shared/locales/en-GB.js +12 -1
  1267. package/shared/locales/en-GB.js.map +1 -1
  1268. package/shared/locales/en-US.d.ts +11 -0
  1269. package/shared/locales/index.d.ts +22 -0
  1270. package/shared/locales/nb-NO.d.ts +11 -0
  1271. package/shared/locales/nb-NO.js +12 -1
  1272. package/shared/locales/nb-NO.js.map +1 -1
  1273. package/shared/useMedia.js +2 -0
  1274. package/shared/useMedia.js.map +1 -1
  1275. package/shared/useMediaQuery.js +2 -0
  1276. package/shared/useMediaQuery.js.map +1 -1
  1277. package/shared/useTheme.js +2 -0
  1278. package/shared/useTheme.js.map +1 -1
  1279. package/shared/useTranslation.js +2 -0
  1280. package/shared/useTranslation.js.map +1 -1
  1281. package/style/dnb-ui-components.css +108 -2
  1282. package/style/dnb-ui-components.min.css +1 -1
  1283. package/style/dnb-ui-extensions.css +13 -0
  1284. package/style/dnb-ui-extensions.min.css +1 -1
  1285. package/style/themes/theme-eiendom/eiendom-theme-components.css +128 -88
  1286. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  1287. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
  1288. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1289. package/style/themes/theme-sbanken/fonts.scss +5 -4
  1290. package/style/themes/theme-sbanken/properties.js +2 -2
  1291. package/style/themes/theme-sbanken/properties.js.map +1 -1
  1292. package/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
  1293. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1294. package/style/themes/theme-sbanken/sbanken-theme-components.css +141 -100
  1295. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
  1296. package/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
  1297. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
  1298. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1299. package/style/themes/theme-sbanken/theme-mapping.scss +2 -1
  1300. package/style/themes/theme-ui/ui-theme-components.css +128 -88
  1301. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  1302. package/style/themes/theme-ui/ui-theme-extensions.css +13 -0
  1303. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1304. package/umd/dnb-ui-basis.min.js +1 -1
  1305. package/umd/dnb-ui-components.min.js +1 -1
  1306. package/umd/dnb-ui-elements.min.js +1 -1
  1307. package/umd/dnb-ui-extensions.min.js +2 -2
  1308. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"H.js","names":["React","classnames","E","setNextLevel","getHeadingSize","useTheme","H","_ref","as","is","level","size","className","props","_objectWithoutProperties","_excluded","numSiz","parseFloat","String","substring","theme","targetSize","name","createElement","_extends","internalClass","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport { SpacingProps } from '../../components/space/types'\nimport E, { ElementProps } from '../Element'\nimport { HeadingSize } from '../../components/heading/Heading'\nimport {\n setNextLevel,\n getHeadingSize,\n} from '../../components/heading/HeadingHelpers'\nimport { useTheme } from '../../shared'\n\nexport type HSize = HeadingSize\n\ntype HProps = SpacingProps &\n React.HTMLAttributes<HTMLHeadingElement> & {\n /**\n * Defines the Element Type, like \"h1\"\n * Default: h1\n */\n as?: string\n /**\n * Makes the component use the elements heading level. e.g. h3 will make the component use level 3\n */\n level?: 'use'\n /**\n * Sets the font size based on headingSize_#{HEADING_SIZE} mixins found in typography-mixins.scss. For more detailed information go here: https://eufemia.dnb.no/uilib/typography/font-size/.\n * Use value 'auto' to base size on heading level\n * Default: xx-large\n */\n size?: HSize | 'auto'\n } & ElementProps\n\nexport type SharedHProps = Omit<HProps, 'as'>\n\nconst H = ({\n as = 'h1',\n is,\n level,\n size,\n className,\n ...props\n}: HProps) => {\n const numSiz = parseFloat(String(as || is).substring(1))\n\n if (level === 'use') {\n setNextLevel(numSiz)\n }\n\n const theme = useTheme()\n const targetSize =\n (size === 'auto' && getHeadingSize(theme?.name)[numSiz]) ||\n size ||\n 'xx-large'\n\n return (\n <E\n as={as || is}\n internalClass={classnames(\n targetSize && `dnb-h--${targetSize}`,\n className\n )}\n {...props}\n />\n )\n}\n\nH._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H\n"],"mappings":";;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,CAAC,MAAwB,YAAY;AAE5C,SACEC,YAAY,EACZC,cAAc,QACT,yCAAyC;AAChD,SAASC,QAAQ,QAAQ,cAAc;AAyBvC,MAAMC,CAAC,GAAGC,IAAA,IAOI;EAAA,IAPH;MACTC,EAAE,GAAG,IAAI;MACTC,EAAE;MACFC,KAAK;MACLC,IAAI;MACJC;IAEM,CAAC,GAAAL,IAAA;IADJM,KAAK,GAAAC,wBAAA,CAAAP,IAAA,EAAAQ,SAAA;EAER,MAAMC,MAAM,GAAGC,UAAU,CAACC,MAAM,CAACV,EAAE,IAAIC,EAAE,CAAC,CAACU,SAAS,CAAC,CAAC,CAAC,CAAC;EAExD,IAAIT,KAAK,KAAK,KAAK,EAAE;IACnBP,YAAY,CAACa,MAAM,CAAC;EACtB;EAEA,MAAMI,KAAK,GAAGf,QAAQ,CAAC,CAAC;EACxB,MAAMgB,UAAU,GACbV,IAAI,KAAK,MAAM,IAAIP,cAAc,CAACgB,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,IAAI,CAAC,CAACN,MAAM,CAAC,IACvDL,IAAI,IACJ,UAAU;EAEZ,OACEX,KAAA,CAAAuB,aAAA,CAACrB,CAAC,EAAAsB,QAAA;IACAhB,EAAE,EAAEA,EAAE,IAAIC,EAAG;IACbgB,aAAa,EAAExB,UAAU,CAEvBW,SAAS,EADTS,UAAU,IAAK,UAASA,UAAW,EAErC;EAAE,GACER,KAAK,CACV,CAAC;AAEN,CAAC;AAEDP,CAAC,CAACoB,iBAAiB,GAAG,IAAI;AAC1BpB,CAAC,CAACqB,qBAAqB,GAAG,IAAI;AAE9B,eAAerB,CAAC"}
1
+ {"version":3,"file":"H.js","names":["React","classnames","E","setNextLevel","getHeadingSize","useTheme","H","_ref","as","is","level","size","className","props","_objectWithoutProperties","_excluded","numSiz","parseFloat","String","substring","theme","targetSize","name","createElement","_extends","internalClass","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport { SpacingProps } from '../../components/space/types'\nimport E, { ElementProps } from '../Element'\nimport { HeadingSize } from '../../components/heading/Heading'\nimport {\n setNextLevel,\n getHeadingSize,\n} from '../../components/heading/HeadingHelpers'\nimport { useTheme } from '../../shared'\n\nexport type HSize = HeadingSize\n\ntype HProps = SpacingProps &\n React.HTMLAttributes<HTMLHeadingElement> & {\n /**\n * Defines the Element Type, like \"h1\"\n * Default: h1\n */\n as?: string\n /**\n * Makes the component use the elements heading level. e.g. h3 will make the component use level 3\n */\n level?: 'use'\n /**\n * Sets the font size based on headingSize_#{HEADING_SIZE} mixins found in typography-mixins.scss. For more detailed information go here: https://eufemia.dnb.no/uilib/typography/font-size/.\n * Use value 'auto' to base size on heading level\n * Default: xx-large\n */\n size?: HSize | 'auto'\n } & ElementProps\n\nexport type SharedHProps = Omit<HProps, 'as'>\n\nconst H = ({\n as = 'h1',\n is,\n level,\n size,\n className,\n ...props\n}: HProps) => {\n const numSiz = parseFloat(String(as || is).substring(1))\n\n if (level === 'use') {\n setNextLevel(numSiz)\n }\n\n const theme = useTheme()\n const targetSize =\n (size === 'auto' && getHeadingSize(theme?.name)[numSiz]) ||\n size ||\n 'xx-large'\n\n return (\n <E\n as={as || is}\n internalClass={classnames(\n targetSize && `dnb-h--${targetSize}`,\n className\n )}\n {...props}\n />\n )\n}\n\nH._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H\n"],"mappings":";;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,CAAC,MAAwB,YAAY;AAE5C,SACEC,YAAY,EACZC,cAAc,QACT,yCAAyC;AAChD,SAASC,QAAQ,QAAQ,cAAc;AAyBvC,MAAMC,CAAC,GAAGC,IAAA,IAOI;EAAA,IAPH;MACTC,EAAE,GAAG,IAAI;MACTC,EAAE;MACFC,KAAK;MACLC,IAAI;MACJC;IAEM,CAAC,GAAAL,IAAA;IADJM,KAAK,GAAAC,wBAAA,CAAAP,IAAA,EAAAQ,SAAA;EAER,MAAMC,MAAM,GAAGC,UAAU,CAACC,MAAM,CAACV,EAAE,IAAIC,EAAE,CAAC,CAACU,SAAS,CAAC,CAAC,CAAC,CAAC;EAExD,IAAIT,KAAK,KAAK,KAAK,EAAE;IACnBP,YAAY,CAACa,MAAM,CAAC;EACtB;EAEA,MAAMI,KAAK,GAAGf,QAAQ,CAAC,CAAC;EACxB,MAAMgB,UAAU,GACbV,IAAI,KAAK,MAAM,IAAIP,cAAc,CAACgB,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,IAAI,CAAC,CAACN,MAAM,CAAC,IACvDL,IAAI,IACJ,UAAU;EAEZ,OACEX,KAAA,CAAAuB,aAAA,CAACrB,CAAC,EAAAsB,QAAA;IACAhB,EAAE,EAAEA,EAAE,IAAIC,EAAG;IACbgB,aAAa,EAAExB,UAAU,CAEvBW,SAAS,EADTS,UAAU,IAAK,UAASA,UAAW,EAErC;EAAE,GACER,KAAK,CACV,CAAC;AAEN,CAAC;AAEDP,CAAC,CAACoB,iBAAiB,GAAG,IAAI;AAC1BpB,CAAC,CAACqB,qBAAqB,GAAG,IAAI;AAE9B,eAAerB,CAAC"}
@@ -122,7 +122,7 @@ sub {
122
122
  @include headingSize_medium();
123
123
  }
124
124
 
125
- // The rest of the Headings are nod defned by the Eufemia Typography
125
+ // The rest of the Headings are not defined by the Eufemia Typography
126
126
  .dnb-h--basis {
127
127
  @include headingSize_basis();
128
128
  }
@@ -9,7 +9,7 @@
9
9
  // prettier-ignore
10
10
  $selectors: #{$selectors}, &;
11
11
  @at-root {
12
- @include otherSelectos() {
12
+ @include otherSelectors() {
13
13
  // prettier-ignore
14
14
  $selectors: #{$selectors}, &;
15
15
 
@@ -56,7 +56,7 @@
56
56
  }
57
57
  }
58
58
 
59
- @mixin otherSelectos() {
59
+ @mixin otherSelectors() {
60
60
  p,
61
61
  b,
62
62
  small,
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
4
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
5
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -1 +1 @@
1
- {"version":3,"file":"At.js","names":["React","useContext","useMemo","pointer","Context","At","props","path","iterate","children","dataContext","data","contextData","handlePathChange","contextHandlePathChange","has","get","undefined","changePath","value","Array","isArray","createElement","Fragment","map","element","i","Provider","key","_objectSpread","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/DataContext/At/At.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport pointer from 'json-pointer'\nimport type { ComponentProps } from '../../types'\nimport Context from '../Context'\n\nexport type Props = ComponentProps & {\n /** JSON Pointer for where in the source dataset to point at in sub components */\n path?: string\n iterate?: boolean\n children?: React.ReactNode\n}\n\nfunction At(props: Props) {\n const { path = '/', iterate, children } = props\n const dataContext = useContext(Context)\n const { data: contextData, handlePathChange: contextHandlePathChange } =\n dataContext\n\n const data =\n contextData && pointer.has(contextData, path)\n ? pointer.get(contextData, path)\n : undefined\n\n const handlePathChange = useMemo(\n () =>\n contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}${changePath}`, value)\n }\n : undefined,\n [contextHandlePathChange, path]\n )\n\n if (iterate) {\n if (!Array.isArray(data)) {\n return null\n }\n return (\n <>\n {data.map((element, i) => {\n const handlePathChange = contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}/${i}${changePath}`, value)\n }\n : undefined\n\n return (\n <Context.Provider\n key={`element${i}`}\n value={{\n ...dataContext,\n data: element,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n })}\n </>\n )\n }\n\n return (\n <Context.Provider\n value={{\n ...dataContext,\n data,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nAt._supportsSpacingProps = true\nexport default At\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,OAAO,MAAM,cAAc;AAElC,OAAOC,OAAO,MAAM,YAAY;AAShC,SAASC,EAAEA,CAACC,KAAY,EAAE;EACxB,MAAM;IAAEC,IAAI,GAAG,GAAG;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGH,KAAK;EAC/C,MAAMI,WAAW,GAAGT,UAAU,CAACG,OAAO,CAAC;EACvC,MAAM;IAAEO,IAAI,EAAEC,WAAW;IAAEC,gBAAgB,EAAEC;EAAwB,CAAC,GACpEJ,WAAW;EAEb,MAAMC,IAAI,GACRC,WAAW,IAAIT,OAAO,CAACY,GAAG,CAACH,WAAW,EAAEL,IAAI,CAAC,GACzCJ,OAAO,CAACa,GAAG,CAACJ,WAAW,EAAEL,IAAI,CAAC,GAC9BU,SAAS;EAEf,MAAMJ,gBAAgB,GAAGX,OAAO,CAC9B,MACEY,uBAAuB,GACnB,CAACI,UAAU,EAAEC,KAAK,KAAK;IACrBL,uBAAuB,CAAE,GAAEP,IAAK,GAAEW,UAAW,EAAC,EAAEC,KAAK,CAAC;EACxD,CAAC,GACDF,SAAS,EACf,CAACH,uBAAuB,EAAEP,IAAI,CAChC,CAAC;EAED,IAAIC,OAAO,EAAE;IACX,IAAI,CAACY,KAAK,CAACC,OAAO,CAACV,IAAI,CAAC,EAAE;MACxB,OAAO,IAAI;IACb;IACA,OACEX,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,QACGZ,IAAI,CAACa,GAAG,CAAC,CAACC,OAAO,EAAEC,CAAC,KAAK;MACxB,MAAMb,gBAAgB,GAAGC,uBAAuB,GAC5C,CAACI,UAAU,EAAEC,KAAK,KAAK;QACrBL,uBAAuB,CAAE,GAAEP,IAAK,IAAGmB,CAAE,GAAER,UAAW,EAAC,EAAEC,KAAK,CAAC;MAC7D,CAAC,GACDF,SAAS;MAEb,OACEjB,KAAA,CAAAsB,aAAA,CAAClB,OAAO,CAACuB,QAAQ;QACfC,GAAG,EAAG,UAASF,CAAE,EAAE;QACnBP,KAAK,EAAAU,aAAA,CAAAA,aAAA,KACAnB,WAAW;UACdC,IAAI,EAAEc,OAAO;UACbZ;QAAgB;MAChB,GAEDJ,QACe,CAAC;IAEvB,CAAC,CACD,CAAC;EAEP;EAEA,OACET,KAAA,CAAAsB,aAAA,CAAClB,OAAO,CAACuB,QAAQ;IACfR,KAAK,EAAAU,aAAA,CAAAA,aAAA,KACAnB,WAAW;MACdC,IAAI;MACJE;IAAgB;EAChB,GAEDJ,QACe,CAAC;AAEvB;AAEAJ,EAAE,CAACyB,qBAAqB,GAAG,IAAI;AAC/B,eAAezB,EAAE"}
1
+ {"version":3,"file":"At.js","names":["React","useContext","useMemo","pointer","Context","At","props","path","iterate","children","dataContext","data","contextData","handlePathChange","contextHandlePathChange","has","get","undefined","changePath","value","Array","isArray","createElement","Fragment","map","element","i","Provider","key","_objectSpread","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/DataContext/At/At.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport pointer from 'json-pointer'\nimport type { ComponentProps } from '../../types'\nimport Context from '../Context'\n\nexport type Props = ComponentProps & {\n /** JSON Pointer for where in the source dataset to point at in sub components */\n path?: string\n iterate?: boolean\n children?: React.ReactNode\n}\n\nfunction At(props: Props) {\n const { path = '/', iterate, children } = props\n const dataContext = useContext(Context)\n const { data: contextData, handlePathChange: contextHandlePathChange } =\n dataContext\n\n const data =\n contextData && pointer.has(contextData, path)\n ? pointer.get(contextData, path)\n : undefined\n\n const handlePathChange = useMemo(\n () =>\n contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}${changePath}`, value)\n }\n : undefined,\n [contextHandlePathChange, path]\n )\n\n if (iterate) {\n if (!Array.isArray(data)) {\n return null\n }\n return (\n <>\n {data.map((element, i) => {\n const handlePathChange = contextHandlePathChange\n ? (changePath, value) => {\n contextHandlePathChange(`${path}/${i}${changePath}`, value)\n }\n : undefined\n\n return (\n <Context.Provider\n key={`element${i}`}\n value={{\n ...dataContext,\n data: element,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n })}\n </>\n )\n }\n\n return (\n <Context.Provider\n value={{\n ...dataContext,\n data,\n handlePathChange,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nAt._supportsSpacingProps = true\nexport default At\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,OAAO,MAAM,cAAc;AAElC,OAAOC,OAAO,MAAM,YAAY;AAShC,SAASC,EAAEA,CAACC,KAAY,EAAE;EACxB,MAAM;IAAEC,IAAI,GAAG,GAAG;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGH,KAAK;EAC/C,MAAMI,WAAW,GAAGT,UAAU,CAACG,OAAO,CAAC;EACvC,MAAM;IAAEO,IAAI,EAAEC,WAAW;IAAEC,gBAAgB,EAAEC;EAAwB,CAAC,GACpEJ,WAAW;EAEb,MAAMC,IAAI,GACRC,WAAW,IAAIT,OAAO,CAACY,GAAG,CAACH,WAAW,EAAEL,IAAI,CAAC,GACzCJ,OAAO,CAACa,GAAG,CAACJ,WAAW,EAAEL,IAAI,CAAC,GAC9BU,SAAS;EAEf,MAAMJ,gBAAgB,GAAGX,OAAO,CAC9B,MACEY,uBAAuB,GACnB,CAACI,UAAU,EAAEC,KAAK,KAAK;IACrBL,uBAAuB,CAAE,GAAEP,IAAK,GAAEW,UAAW,EAAC,EAAEC,KAAK,CAAC;EACxD,CAAC,GACDF,SAAS,EACf,CAACH,uBAAuB,EAAEP,IAAI,CAChC,CAAC;EAED,IAAIC,OAAO,EAAE;IACX,IAAI,CAACY,KAAK,CAACC,OAAO,CAACV,IAAI,CAAC,EAAE;MACxB,OAAO,IAAI;IACb;IACA,OACEX,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,QACGZ,IAAI,CAACa,GAAG,CAAC,CAACC,OAAO,EAAEC,CAAC,KAAK;MACxB,MAAMb,gBAAgB,GAAGC,uBAAuB,GAC5C,CAACI,UAAU,EAAEC,KAAK,KAAK;QACrBL,uBAAuB,CAAE,GAAEP,IAAK,IAAGmB,CAAE,GAAER,UAAW,EAAC,EAAEC,KAAK,CAAC;MAC7D,CAAC,GACDF,SAAS;MAEb,OACEjB,KAAA,CAAAsB,aAAA,CAAClB,OAAO,CAACuB,QAAQ;QACfC,GAAG,EAAG,UAASF,CAAE,EAAE;QACnBP,KAAK,EAAAU,aAAA,CAAAA,aAAA,KACAnB,WAAW;UACdC,IAAI,EAAEc,OAAO;UACbZ;QAAgB;MAChB,GAEDJ,QACe,CAAC;IAEvB,CAAC,CACD,CAAC;EAEP;EAEA,OACET,KAAA,CAAAsB,aAAA,CAAClB,OAAO,CAACuB,QAAQ;IACfR,KAAK,EAAAU,aAAA,CAAAA,aAAA,KACAnB,WAAW;MACdC,IAAI;MACJE;IAAgB;EAChB,GAEDJ,QACe,CAAC;AAEvB;AAEAJ,EAAE,CAACyB,qBAAqB,GAAG,IAAI;AAC/B,eAAezB,EAAE"}
@@ -1,11 +1,15 @@
1
+ "use client";
2
+
1
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
5
  const _excluded = ["defaultData", "data", "schema", "onChange", "onPathChange", "onSubmit", "onSubmitRequest", "scrollTopOnSubmit", "sessionStorageId", "children"];
4
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
7
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
- import React, { useEffect, useRef, useMemo, useCallback, useState } from 'react';
8
+ import React, { useEffect, useRef, useMemo, useCallback, useReducer } from 'react';
7
9
  import pointer from 'json-pointer';
8
10
  import ajv, { ajvErrorsToFormErrors } from '../../utils/ajv';
11
+ import useMountEffect from '../../hooks/useMountEffect';
12
+ import useUpdateEffect from '../../hooks/useUpdateEffect';
9
13
  import Context from '../Context';
10
14
  import structuredClone from '@ungap/structured-clone';
11
15
  function addListPath(paths, path) {
@@ -29,10 +33,17 @@ export default function Provider(_ref) {
29
33
  children
30
34
  } = _ref,
31
35
  rest = _objectWithoutProperties(_ref, _excluded);
36
+ const [, forceUpdate] = useReducer(() => ({}), {});
32
37
  if (data !== undefined && sessionStorageId !== undefined) {
33
38
  console.error('Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.');
34
39
  }
35
- const wasMounted = useRef(false);
40
+ const mountedFieldPathsRef = useRef([]);
41
+ const errorsRef = useRef();
42
+ const showAllErrorsRef = useRef(false);
43
+ const setShowAllErrors = useCallback(showAllErrors => {
44
+ showAllErrorsRef.current = showAllErrors;
45
+ }, []);
46
+ const pathsWithErrorRef = useRef([]);
36
47
  const initialData = useMemo(() => {
37
48
  if (sessionStorageId && typeof window !== 'undefined') {
38
49
  var _window$sessionStorag;
@@ -41,45 +52,43 @@ export default function Provider(_ref) {
41
52
  return JSON.parse(sessionDataJSON);
42
53
  }
43
54
  }
44
- return data ?? defaultData;
45
- }, [data, defaultData, sessionStorageId]);
46
- const ajvSchemaValidator = useMemo(() => schema ? ajv.compile(schema) : undefined, [schema]);
47
- const [internalData, setInternalData] = useState(initialData);
48
- const mountedFieldPathsRef = useRef([]);
49
- const errorsRef = useRef({});
50
- const [showAllErrors, setShowAllErrors] = useState(false);
51
- const pathsWithErrorRef = useRef([]);
52
- const hasErrors = useCallback(() => Boolean(mountedFieldPathsRef.current.find(mountedFieldPath => errorsRef.current[mountedFieldPath] !== undefined || pathsWithErrorRef.current.includes(mountedFieldPath))), []);
53
- useEffect(() => {
54
- if (!wasMounted.current) {
55
- wasMounted.current = true;
56
- return;
57
- }
58
- setInternalData(data);
59
- }, [data]);
60
- const validateBySchema = useCallback(data => {
61
- if (!ajvSchemaValidator) {
55
+ return data !== null && data !== void 0 ? data : defaultData;
56
+ }, []);
57
+ const internalDataRef = useRef(initialData);
58
+ const ajvSchemaValidatorRef = useRef();
59
+ const validateData = useCallback(() => {
60
+ if (!ajvSchemaValidatorRef.current) {
62
61
  return;
63
62
  }
64
- if (!ajvSchemaValidator(data)) {
65
- const errors = ajvErrorsToFormErrors(ajvSchemaValidator.errors);
66
- return errors;
63
+ if (!ajvSchemaValidatorRef.current(internalDataRef.current)) {
64
+ const errors = ajvErrorsToFormErrors(ajvSchemaValidatorRef.current.errors);
65
+ errorsRef.current = errors;
67
66
  } else {
67
+ errorsRef.current = undefined;
68
+ }
69
+ forceUpdate();
70
+ }, []);
71
+ useEffect(() => {
72
+ if (!schema) {
68
73
  return;
69
74
  }
70
- }, [ajvSchemaValidator]);
71
- const validateBySchemaAndUpdateState = useCallback(data => {
72
- errorsRef.current = validateBySchema(data) ?? {};
73
- }, [validateBySchema]);
75
+ ajvSchemaValidatorRef.current = ajv.compile(schema);
76
+ validateData();
77
+ }, [schema, validateData]);
78
+ const hasErrors = useCallback(() => Boolean(mountedFieldPathsRef.current.find(mountedFieldPath => {
79
+ var _errorsRef$current;
80
+ return ((_errorsRef$current = errorsRef.current) === null || _errorsRef$current === void 0 ? void 0 : _errorsRef$current[mountedFieldPath]) !== undefined || pathsWithErrorRef.current.includes(mountedFieldPath);
81
+ })), []);
74
82
  const setPathWithError = useCallback((path, hasError) => {
75
83
  pathsWithErrorRef.current = hasError ? addListPath(pathsWithErrorRef.current, path) : removeListPath(pathsWithErrorRef.current, path);
76
84
  }, []);
77
85
  const handlePathChange = useCallback((path, value) => {
86
+ var _internalDataRef$curr;
78
87
  if (!path) {
79
88
  return;
80
89
  }
81
90
  onPathChange === null || onPathChange === void 0 ? void 0 : onPathChange(path, value);
82
- const newData = structuredClone(path === '/' ? value : internalData ?? (path.match(isArrayJsonPointer) ? [] : {}));
91
+ const newData = structuredClone(path === '/' ? value : (_internalDataRef$curr = internalDataRef.current) !== null && _internalDataRef$curr !== void 0 ? _internalDataRef$curr : path.match(isArrayJsonPointer) ? [] : {});
83
92
  if (path !== '/') {
84
93
  pointer.set(newData, path, value);
85
94
  }
@@ -88,10 +97,11 @@ export default function Provider(_ref) {
88
97
  var _window$sessionStorag2;
89
98
  (_window$sessionStorag2 = window.sessionStorage) === null || _window$sessionStorag2 === void 0 ? void 0 : _window$sessionStorag2.setItem(sessionStorageId, JSON.stringify(newData));
90
99
  }
91
- validateBySchemaAndUpdateState(newData);
92
- setInternalData(newData);
93
- setShowAllErrors(false);
94
- }, [internalData, onChange, onPathChange, validateBySchemaAndUpdateState]);
100
+ internalDataRef.current = newData;
101
+ validateData();
102
+ showAllErrorsRef.current = false;
103
+ forceUpdate();
104
+ }, [onChange, onPathChange, validateData, sessionStorageId]);
95
105
  const handleMountField = useCallback(path => {
96
106
  mountedFieldPathsRef.current = addListPath(mountedFieldPathsRef.current, path);
97
107
  }, []);
@@ -103,7 +113,7 @@ export default function Provider(_ref) {
103
113
  } = {}) => {
104
114
  if (!hasErrors()) {
105
115
  var _formElement$reset;
106
- onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(internalData);
116
+ onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(internalDataRef.current);
107
117
  formElement === null || formElement === void 0 ? void 0 : (_formElement$reset = formElement.reset) === null || _formElement$reset === void 0 ? void 0 : _formElement$reset.call(formElement);
108
118
  if (typeof window !== 'undefined') {
109
119
  if (sessionStorageId) {
@@ -118,24 +128,27 @@ export default function Provider(_ref) {
118
128
  }
119
129
  }
120
130
  } else {
121
- setShowAllErrors(true);
131
+ showAllErrorsRef.current = true;
122
132
  onSubmitRequest === null || onSubmitRequest === void 0 ? void 0 : onSubmitRequest();
123
133
  }
124
- return internalData;
125
- }, [internalData, scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest]);
126
- useEffect(() => {
127
- if (initialData) {
128
- validateBySchemaAndUpdateState(initialData);
129
- }
130
- }, []);
134
+ return internalDataRef.current;
135
+ }, [scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest, sessionStorageId]);
136
+ useMountEffect(() => {
137
+ validateData();
138
+ });
139
+ useUpdateEffect(() => {
140
+ internalDataRef.current = data;
141
+ validateData();
142
+ forceUpdate();
143
+ }, [data, validateData, forceUpdate]);
131
144
  return React.createElement(Context.Provider, {
132
145
  value: _objectSpread(_objectSpread({
133
- data: internalData
146
+ data: internalDataRef.current
134
147
  }, rest), {}, {
135
148
  handlePathChange,
136
149
  handleSubmit,
137
150
  errors: errorsRef.current,
138
- showAllErrors,
151
+ showAllErrors: showAllErrorsRef.current,
139
152
  setShowAllErrors,
140
153
  mountedFieldPaths: mountedFieldPathsRef.current,
141
154
  handleMountField,
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.js","names":["React","useEffect","useRef","useMemo","useCallback","useState","pointer","ajv","ajvErrorsToFormErrors","Context","structuredClone","addListPath","paths","path","includes","concat","removeListPath","filter","thisPath","isArrayJsonPointer","Provider","_ref","defaultData","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","sessionStorageId","children","rest","_objectWithoutProperties","_excluded","undefined","console","error","wasMounted","initialData","window","_window$sessionStorag","sessionDataJSON","sessionStorage","getItem","JSON","parse","ajvSchemaValidator","compile","internalData","setInternalData","mountedFieldPathsRef","errorsRef","showAllErrors","setShowAllErrors","pathsWithErrorRef","hasErrors","Boolean","current","find","mountedFieldPath","validateBySchema","errors","validateBySchemaAndUpdateState","setPathWithError","hasError","handlePathChange","value","newData","match","set","_window$sessionStorag2","setItem","stringify","handleMountField","handleUnMountField","handleSubmit","formElement","_formElement$reset","reset","call","removeItem","_window","scrollTo","top","behavior","createElement","_objectSpread","mountedFieldPaths"],"sources":["../../../../../../src/extensions/forms/DataContext/Provider/Provider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useMemo,\n useCallback,\n useState,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { JSONSchema7 } from 'json-schema'\nimport ajv, { ajvErrorsToFormErrors } from '../../utils/ajv'\nimport { FormError } from '../../types'\nimport Context, { ContextState } from '../Context'\n\n/**\n * Deprecated, as it is supported my all mihor browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport interface Props<Data extends JsonObject> {\n /** Default source data, only used if no other source is available, and not leading to updates if changed after mount */\n defaultData?: Partial<Data>\n /** Dynamic source data used as both initial data, and updates internal data if changed after mount */\n data?: Partial<Data>\n /** JSON Schema for validating the data, like during input or after attempting submit */\n schema?: JSONSchema7\n /** Change handler for the whole data set */\n onChange?: (data: Data) => void\n /** Change handler for each value */\n onPathChange?: (path: string, value: any) => void\n /** Submit called, data was valid (if validation available) */\n onSubmit?: (data: Data) => void\n /** Submit was requested, but data was invalid */\n onSubmitRequest?: () => void\n scrollTopOnSubmit?: boolean\n /** Key for caching the data in session storage */\n sessionStorageId?: string\n children: React.ReactNode\n}\n\ntype PathList = string[]\n\nfunction addListPath(paths: PathList, path: string): PathList {\n return paths.includes(path) ? paths : paths.concat(path)\n}\n\nfunction removeListPath(paths: PathList, path: string): PathList {\n return paths.filter((thisPath) => thisPath !== path)\n}\n\nconst isArrayJsonPointer = /^\\/\\d+(\\/|$)/\n\nexport default function Provider<Data extends JsonObject>({\n defaultData,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n sessionStorageId,\n children,\n ...rest\n}: Props<Data>) {\n // Prop error handling\n if (data !== undefined && sessionStorageId !== undefined) {\n console.error(\n 'Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.'\n )\n }\n\n // State\n const wasMounted = useRef(false)\n const initialData = useMemo(() => {\n if (sessionStorageId && typeof window !== 'undefined') {\n const sessionDataJSON =\n window.sessionStorage?.getItem(sessionStorageId)\n if (sessionDataJSON) {\n return JSON.parse(sessionDataJSON)\n }\n }\n return data ?? defaultData\n }, [data, defaultData, sessionStorageId])\n const ajvSchemaValidator = useMemo(\n () => (schema ? ajv.compile(schema) : undefined),\n [schema]\n )\n const [internalData, setInternalData] =\n useState<Partial<Data>>(initialData)\n const mountedFieldPathsRef = useRef<string[]>([])\n\n // Errors from provider validation (the whole data set)\n const errorsRef = useRef<Record<string, FormError>>({})\n const [showAllErrors, setShowAllErrors] = useState<boolean>(false)\n // Errors reported by fields, based on their direct validation rules\n const pathsWithErrorRef = useRef<string[]>([])\n\n const hasErrors = useCallback(\n () =>\n Boolean(\n mountedFieldPathsRef.current.find(\n (mountedFieldPath) =>\n errorsRef.current[mountedFieldPath] !== undefined ||\n pathsWithErrorRef.current.includes(mountedFieldPath)\n )\n ),\n []\n )\n\n useEffect(() => {\n if (!wasMounted.current) {\n wasMounted.current = true\n return\n }\n // When receivint the initial data, or receiving updated data by props, update the internal data (controlled state)\n setInternalData(data)\n }, [data])\n\n const validateBySchema = useCallback(\n (data: Partial<Data>): Record<string, Error> | undefined => {\n if (!ajvSchemaValidator) {\n // No schema-based validator. Assume data is valid.\n return\n }\n\n if (!ajvSchemaValidator(data)) {\n // Errors found\n const errors = ajvErrorsToFormErrors(ajvSchemaValidator.errors)\n return errors\n } else {\n return\n }\n },\n [ajvSchemaValidator]\n )\n\n const validateBySchemaAndUpdateState = useCallback(\n (data: Partial<Data>) => {\n errorsRef.current = validateBySchema(data) ?? {}\n },\n [validateBySchema]\n )\n\n const setPathWithError = useCallback(\n (path: string, hasError: boolean) => {\n pathsWithErrorRef.current = hasError\n ? addListPath(pathsWithErrorRef.current, path)\n : removeListPath(pathsWithErrorRef.current, path)\n },\n []\n )\n\n const handlePathChange = useCallback(\n (path, value) => {\n if (!path) {\n return\n }\n onPathChange?.(path, value)\n\n // Update the data even if it contains errors. Submit/SubmitRequest will be called accordingly\n const newData = structuredClone(\n path === '/'\n ? // When setting the root of the data, the whole data set should be the new value\n value\n : // For sub paths, use the the existing data set (or empty array/object), but modify it below (since pointer.set is not immutable)\n internalData ?? (path.match(isArrayJsonPointer) ? [] : {})\n )\n if (path !== '/') {\n pointer.set(newData as Data, path, value)\n }\n\n onChange?.(newData as Data)\n\n if (sessionStorageId && typeof window !== 'undefined') {\n window.sessionStorage?.setItem(\n sessionStorageId,\n JSON.stringify(newData)\n )\n }\n\n validateBySchemaAndUpdateState(newData)\n\n setInternalData(newData)\n\n setShowAllErrors(false)\n },\n [internalData, onChange, onPathChange, validateBySchemaAndUpdateState]\n )\n\n // Mounted fields\n const handleMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = addListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n const handleUnMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = removeListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n /**\n * Request to submit the whole form\n */\n const handleSubmit = useCallback<ContextState['handleSubmit']>(\n ({ formElement = null } = {}) => {\n if (!hasErrors()) {\n onSubmit?.(internalData as Data)\n\n formElement?.reset?.()\n\n if (typeof window !== 'undefined') {\n if (sessionStorageId) {\n window.sessionStorage.removeItem(sessionStorageId)\n }\n\n if (scrollTopOnSubmit) {\n window?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n } else {\n setShowAllErrors(true)\n onSubmitRequest?.()\n }\n return internalData\n },\n [internalData, scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest]\n )\n\n useEffect(() => {\n // Mount procedure\n if (initialData) {\n // Validate the initial data to know if the user can submit, and to show errors if inputs are requested to with props\n validateBySchemaAndUpdateState(initialData)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- Only run for mount and unmount\n }, [])\n\n return (\n <Context.Provider\n value={{\n data: internalData,\n ...rest,\n handlePathChange,\n handleSubmit,\n errors: errorsRef.current,\n showAllErrors,\n setShowAllErrors,\n mountedFieldPaths: mountedFieldPathsRef.current,\n handleMountField,\n handleUnMountField,\n hasErrors,\n setPathWithError,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Provider.js","names":["React","useEffect","useRef","useMemo","useCallback","useReducer","pointer","ajv","ajvErrorsToFormErrors","useMountEffect","useUpdateEffect","Context","structuredClone","addListPath","paths","path","includes","concat","removeListPath","filter","thisPath","isArrayJsonPointer","Provider","_ref","defaultData","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","sessionStorageId","children","rest","_objectWithoutProperties","_excluded","forceUpdate","undefined","console","error","mountedFieldPathsRef","errorsRef","showAllErrorsRef","setShowAllErrors","showAllErrors","current","pathsWithErrorRef","initialData","window","_window$sessionStorag","sessionDataJSON","sessionStorage","getItem","JSON","parse","internalDataRef","ajvSchemaValidatorRef","validateData","errors","compile","hasErrors","Boolean","find","mountedFieldPath","_errorsRef$current","setPathWithError","hasError","handlePathChange","value","_internalDataRef$curr","newData","match","set","_window$sessionStorag2","setItem","stringify","handleMountField","handleUnMountField","handleSubmit","formElement","_formElement$reset","reset","call","removeItem","_window","scrollTo","top","behavior","createElement","_objectSpread","mountedFieldPaths"],"sources":["../../../../../../src/extensions/forms/DataContext/Provider/Provider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useMemo,\n useCallback,\n useReducer,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { JSONSchema7 } from 'json-schema'\nimport { ValidateFunction } from 'ajv'\nimport ajv, { ajvErrorsToFormErrors } from '../../utils/ajv'\nimport { FormError } from '../../types'\nimport useMountEffect from '../../hooks/useMountEffect'\nimport useUpdateEffect from '../../hooks/useUpdateEffect'\nimport Context, { ContextState } from '../Context'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport interface Props<Data extends JsonObject> {\n /** Default source data, only used if no other source is available, and not leading to updates if changed after mount */\n defaultData?: Partial<Data>\n /** Dynamic source data used as both initial data, and updates internal data if changed after mount */\n data?: Partial<Data>\n /** JSON Schema for validating the data, like during input or after attempting submit */\n schema?: JSONSchema7\n /** Change handler for the whole data set */\n onChange?: (data: Data) => void\n /** Change handler for each value */\n onPathChange?: (path: string, value: any) => void\n /** Submit called, data was valid (if validation available) */\n onSubmit?: (data: Data) => void\n /** Submit was requested, but data was invalid */\n onSubmitRequest?: () => void\n scrollTopOnSubmit?: boolean\n /** Key for caching the data in session storage */\n sessionStorageId?: string\n children: React.ReactNode\n}\n\ntype PathList = string[]\n\nfunction addListPath(paths: PathList, path: string): PathList {\n return paths.includes(path) ? paths : paths.concat(path)\n}\n\nfunction removeListPath(paths: PathList, path: string): PathList {\n return paths.filter((thisPath) => thisPath !== path)\n}\n\nconst isArrayJsonPointer = /^\\/\\d+(\\/|$)/\n\nexport default function Provider<Data extends JsonObject>({\n defaultData,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n sessionStorageId,\n children,\n ...rest\n}: Props<Data>) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n // Prop error handling\n if (data !== undefined && sessionStorageId !== undefined) {\n console.error(\n 'Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.'\n )\n }\n\n // State\n const mountedFieldPathsRef = useRef<string[]>([])\n // - Errors from provider validation (the whole data set)\n const errorsRef = useRef<Record<string, FormError> | undefined>()\n const showAllErrorsRef = useRef<boolean>(false)\n const setShowAllErrors = useCallback((showAllErrors: boolean) => {\n showAllErrorsRef.current = showAllErrors\n }, [])\n // - Errors reported by fields, based on their direct validation rules\n const pathsWithErrorRef = useRef<string[]>([])\n // - Data\n const initialData = useMemo(() => {\n if (sessionStorageId && typeof window !== 'undefined') {\n const sessionDataJSON =\n window.sessionStorage?.getItem(sessionStorageId)\n if (sessionDataJSON) {\n return JSON.parse(sessionDataJSON)\n }\n }\n return data ?? defaultData\n // eslint-disable-next-line react-hooks/exhaustive-deps -- Avoid triggering code that should only run initially\n }, [])\n const internalDataRef = useRef<Partial<Data>>(initialData)\n // - Validator\n const ajvSchemaValidatorRef = useRef<ValidateFunction>()\n\n const validateData = useCallback(() => {\n if (!ajvSchemaValidatorRef.current) {\n // No schema-based validator. Assume data is valid.\n return\n }\n\n if (!ajvSchemaValidatorRef.current(internalDataRef.current)) {\n // Errors found\n const errors = ajvErrorsToFormErrors(\n ajvSchemaValidatorRef.current.errors\n )\n errorsRef.current = errors\n } else {\n errorsRef.current = undefined\n }\n forceUpdate()\n }, [])\n\n useEffect(() => {\n if (!schema) {\n return\n }\n ajvSchemaValidatorRef.current = ajv.compile(schema)\n validateData()\n }, [schema, validateData])\n\n // Error handling\n const hasErrors = useCallback(\n () =>\n Boolean(\n mountedFieldPathsRef.current.find(\n (mountedFieldPath) =>\n errorsRef.current?.[mountedFieldPath] !== undefined ||\n pathsWithErrorRef.current.includes(mountedFieldPath)\n )\n ),\n []\n )\n\n const setPathWithError = useCallback(\n (path: string, hasError: boolean) => {\n pathsWithErrorRef.current = hasError\n ? addListPath(pathsWithErrorRef.current, path)\n : removeListPath(pathsWithErrorRef.current, path)\n },\n []\n )\n\n const handlePathChange = useCallback(\n (path, value) => {\n if (!path) {\n return\n }\n onPathChange?.(path, value)\n\n // Update the data even if it contains errors. Submit/SubmitRequest will be called accordingly\n const newData = structuredClone(\n path === '/'\n ? // When setting the root of the data, the whole data set should be the new value\n value\n : // For sub paths, use the the existing data set (or empty array/object), but modify it below (since pointer.set is not immutable)\n internalDataRef.current ??\n (path.match(isArrayJsonPointer) ? [] : {})\n )\n if (path !== '/') {\n pointer.set(newData as Data, path, value)\n }\n\n onChange?.(newData as Data)\n\n if (sessionStorageId && typeof window !== 'undefined') {\n window.sessionStorage?.setItem(\n sessionStorageId,\n JSON.stringify(newData)\n )\n }\n\n internalDataRef.current = newData\n\n validateData()\n showAllErrorsRef.current = false\n forceUpdate()\n },\n [onChange, onPathChange, validateData, sessionStorageId]\n )\n\n // Mounted fields\n const handleMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = addListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n const handleUnMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = removeListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n /**\n * Request to submit the whole form\n */\n const handleSubmit = useCallback<ContextState['handleSubmit']>(\n ({ formElement = null } = {}) => {\n if (!hasErrors()) {\n onSubmit?.(internalDataRef.current as Data)\n\n formElement?.reset?.()\n\n if (typeof window !== 'undefined') {\n if (sessionStorageId) {\n window.sessionStorage.removeItem(sessionStorageId)\n }\n\n if (scrollTopOnSubmit) {\n window?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n } else {\n showAllErrorsRef.current = true\n onSubmitRequest?.()\n }\n return internalDataRef.current\n },\n [\n scrollTopOnSubmit,\n hasErrors,\n onSubmit,\n onSubmitRequest,\n sessionStorageId,\n ]\n )\n\n useMountEffect(() => {\n // Validate the initial data\n validateData()\n })\n\n useUpdateEffect(() => {\n // Update and validate changes to the external data set\n internalDataRef.current = data\n validateData()\n forceUpdate()\n }, [data, validateData, forceUpdate])\n\n return (\n <Context.Provider\n value={{\n data: internalDataRef.current,\n ...rest,\n handlePathChange,\n handleSubmit,\n errors: errorsRef.current,\n showAllErrors: showAllErrorsRef.current,\n setShowAllErrors,\n mountedFieldPaths: mountedFieldPathsRef.current,\n handleMountField,\n handleUnMountField,\n hasErrors,\n setPathWithError,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"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"}
@@ -40,15 +40,18 @@ function ArraySelection(props) {
40
40
  labelDescription,
41
41
  labelSecondary
42
42
  }, pickSpacingProps(props));
43
- const options = useMemo(() => React.Children.toArray(children).filter(child => React.isValidElement(child) && child.type === Option).map(option => ({
44
- title: option.props.title ?? option.props.children,
45
- value: option.props.value,
46
- handleSelect: () => {
47
- const selected = option.props.value;
48
- const newValue = value !== null && value !== void 0 && value.includes(selected) ? value.filter(value => value !== selected) : [...(value ?? []), selected];
49
- handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValue.length === 0 ? emptyValue : newValue);
50
- }
51
- })), [children, value, emptyValue, handleChange]);
43
+ const options = useMemo(() => React.Children.toArray(children).filter(child => React.isValidElement(child) && child.type === Option).map(option => {
44
+ var _option$props$title;
45
+ return {
46
+ title: (_option$props$title = option.props.title) !== null && _option$props$title !== void 0 ? _option$props$title : option.props.children,
47
+ value: option.props.value,
48
+ handleSelect: () => {
49
+ const selected = option.props.value;
50
+ const newValue = value !== null && value !== void 0 && value.includes(selected) ? value.filter(value => value !== selected) : [...(value !== null && value !== void 0 ? value : []), selected];
51
+ handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValue.length === 0 ? emptyValue : newValue);
52
+ }
53
+ };
54
+ }), [children, value, emptyValue, handleChange]);
52
55
  switch (variant) {
53
56
  case 'button':
54
57
  return React.createElement(FieldBlock, fieldBlockProps, React.createElement(ButtonRow, null, options.map((option, i) => React.createElement(Button, {
@@ -1 +1 @@
1
- {"version":3,"file":"ArraySelection.js","names":["React","useMemo","Checkbox","Button","ButtonRow","classnames","Option","FieldBlock","useDataValue","pickSpacingProps","ArraySelection","props","id","className","variant","layout","optionsLayout","label","labelDescription","labelSecondary","value","error","info","warning","disabled","emptyValue","handleChange","children","fieldBlockProps","_objectSpread","forId","contentClassName","options","Children","toArray","filter","child","isValidElement","type","map","option","title","handleSelect","selected","newValue","includes","length","createElement","i","key","text","on_click","undefined","status","checked","on_change","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/ArraySelection/ArraySelection.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { Checkbox, Button } from '../../../../components'\nimport ButtonRow from '../../Form/ButtonRow'\nimport classnames from 'classnames'\nimport Option from '../Option'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface IOption {\n title: string\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldProps<Array<string | number>> & {\n children?: React.ReactNode\n variant?: 'checkbox' | 'button'\n optionsLayout?: 'horizontal' | 'vertical'\n}\n\nfunction ArraySelection(props: Props) {\n const {\n id,\n className,\n variant = 'checkbox',\n layout = 'vertical',\n optionsLayout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n value,\n error,\n info,\n warning,\n disabled,\n emptyValue,\n handleChange,\n children,\n } = useDataValue(props)\n\n const fieldBlockProps = {\n forId: id,\n className: classnames(\n 'dnb-forms-field-array-selection',\n `dnb-forms-field-array-selection--options-layout-${optionsLayout}`,\n className\n ),\n contentClassName: 'dnb-forms-field-array-selection__options',\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n ...pickSpacingProps(props),\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n const newValue = value?.includes(selected)\n ? value.filter((value) => value !== selected)\n : [...(value ?? []), selected]\n\n handleChange?.(newValue.length === 0 ? emptyValue : newValue)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={\n value?.includes(option.value) ? undefined : 'secondary'\n }\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'checkbox':\n return (\n <FieldBlock {...fieldBlockProps}>\n {options.map((option, i) => (\n <Checkbox\n key={`option-${i}-${option.value}`}\n className=\"dnb-forms-field-array-selection__checkbox\"\n label={option.title}\n checked={value?.includes(option.value)}\n disabled={disabled}\n on_change={option.handleSelect}\n />\n ))}\n </FieldBlock>\n )\n }\n}\n\nArraySelection._supportsSpacingProps = true\nexport default ArraySelection\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,QAAQ,EAAEC,MAAM,QAAQ,wBAAwB;AACzD,OAAOC,SAAS,MAAM,sBAAsB;AAC5C,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,MAAM,MAAM,WAAW;AAC9B,OAAOC,UAAU,MAAM,kBAAkB;AACzC,SAASC,YAAY,QAAQ,aAAa;AAE1C,SAASC,gBAAgB,QAAQ,mCAAmC;AAcpE,SAASC,cAAcA,CAACC,KAAY,EAAE;EACpC,MAAM;IACJC,EAAE;IACFC,SAAS;IACTC,OAAO,GAAG,UAAU;IACpBC,MAAM,GAAG,UAAU;IACnBC,aAAa,GAAG,UAAU;IAC1BC,KAAK;IACLC,gBAAgB;IAChBC,cAAc;IACdC,KAAK;IACLC,KAAK;IACLC,IAAI;IACJC,OAAO;IACPC,QAAQ;IACRC,UAAU;IACVC,YAAY;IACZC;EACF,CAAC,GAAGnB,YAAY,CAACG,KAAK,CAAC;EAEvB,MAAMiB,eAAe,GAAAC,aAAA;IACnBC,KAAK,EAAElB,EAAE;IACTC,SAAS,EAAER,UAAU,oFAEgCW,aAAc,IACjEH,SACF,CAAC;IACDkB,gBAAgB,EAAE,0CAA0C;IAC5DT,IAAI;IACJC,OAAO;IACPF,KAAK;IACLN,MAAM;IACNE,KAAK;IACLC,gBAAgB;IAChBC;EAAc,GACXV,gBAAgB,CAACE,KAAK,CAAC,CAC3B;EAED,MAAMqB,OAAkB,GAAG/B,OAAO,CAChC,MACED,KAAK,CAACiC,QAAQ,CAACC,OAAO,CAACP,QAAQ,CAAC,CAC7BQ,MAAM,CACJC,KAAK,IAAKpC,KAAK,CAACqC,cAAc,CAACD,KAAK,CAAC,IAAIA,KAAK,CAACE,IAAI,KAAKhC,MAC3D,CAAC,CACAiC,GAAG,CAAEC,MAA0B,KAAM;IACpCC,KAAK,EAAED,MAAM,CAAC7B,KAAK,CAAC8B,KAAK,IAAID,MAAM,CAAC7B,KAAK,CAACgB,QAAQ;IAClDP,KAAK,EAAEoB,MAAM,CAAC7B,KAAK,CAACS,KAAK;IACzBsB,YAAY,EAAEA,CAAA,KAAM;MAClB,MAAMC,QAAQ,GAAGH,MAAM,CAAC7B,KAAK,CAACS,KAAK;MAEnC,MAAMwB,QAAQ,GAAGxB,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEyB,QAAQ,CAACF,QAAQ,CAAC,GACtCvB,KAAK,CAACe,MAAM,CAAEf,KAAK,IAAKA,KAAK,KAAKuB,QAAQ,CAAC,GAC3C,CAAC,IAAIvB,KAAK,IAAI,EAAE,CAAC,EAAEuB,QAAQ,CAAC;MAEhCjB,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAGkB,QAAQ,CAACE,MAAM,KAAK,CAAC,GAAGrB,UAAU,GAAGmB,QAAQ,CAAC;IAC/D;EACF,CAAC,CAAC,CAAC,EACP,CAACjB,QAAQ,EAAEP,KAAK,EAAEK,UAAU,EAAEC,YAAY,CAC5C,CAAC;EAED,QAAQZ,OAAO;IACb,KAAK,QAAQ;MACX,OACEd,KAAA,CAAA+C,aAAA,CAACxC,UAAU,EAAKqB,eAAe,EAC7B5B,KAAA,CAAA+C,aAAA,CAAC3C,SAAS,QACP4B,OAAO,CAACO,GAAG,CAAC,CAACC,MAAM,EAAEQ,CAAC,KACrBhD,KAAA,CAAA+C,aAAA,CAAC5C,MAAM;QACL8C,GAAG,EAAG,UAASD,CAAE,IAAGR,MAAM,CAACpB,KAAM,EAAE;QACnCR,EAAE,EAAEA,EAAG;QACPsC,IAAI,EAAEV,MAAM,CAACC,KAAM;QACnBU,QAAQ,EAAEX,MAAM,CAACE,YAAa;QAC9B5B,OAAO,EACLM,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEyB,QAAQ,CAACL,MAAM,CAACpB,KAAK,CAAC,GAAGgC,SAAS,GAAG,WAC7C;QACDC,MAAM,EAAEhC,KAAK,GAAG,OAAO,GAAG+B,SAAU;QACpC5B,QAAQ,EAAEA;MAAS,CACpB,CACF,CACQ,CACD,CAAC;IAEjB,KAAK,UAAU;MACb,OACExB,KAAA,CAAA+C,aAAA,CAACxC,UAAU,EAAKqB,eAAe,EAC5BI,OAAO,CAACO,GAAG,CAAC,CAACC,MAAM,EAAEQ,CAAC,KACrBhD,KAAA,CAAA+C,aAAA,CAAC7C,QAAQ;QACP+C,GAAG,EAAG,UAASD,CAAE,IAAGR,MAAM,CAACpB,KAAM,EAAE;QACnCP,SAAS,EAAC,2CAA2C;QACrDI,KAAK,EAAEuB,MAAM,CAACC,KAAM;QACpBa,OAAO,EAAElC,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEyB,QAAQ,CAACL,MAAM,CAACpB,KAAK,CAAE;QACvCI,QAAQ,EAAEA,QAAS;QACnB+B,SAAS,EAAEf,MAAM,CAACE;MAAa,CAChC,CACF,CACS,CAAC;EAEnB;AACF;AAEAhC,cAAc,CAAC8C,qBAAqB,GAAG,IAAI;AAC3C,eAAe9C,cAAc"}
1
+ {"version":3,"file":"ArraySelection.js","names":["React","useMemo","Checkbox","Button","ButtonRow","classnames","Option","FieldBlock","useDataValue","pickSpacingProps","ArraySelection","props","id","className","variant","layout","optionsLayout","label","labelDescription","labelSecondary","value","error","info","warning","disabled","emptyValue","handleChange","children","fieldBlockProps","_objectSpread","forId","contentClassName","options","Children","toArray","filter","child","isValidElement","type","map","option","_option$props$title","title","handleSelect","selected","newValue","includes","length","createElement","i","key","text","on_click","undefined","status","checked","on_change","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/ArraySelection/ArraySelection.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { Checkbox, Button } from '../../../../components'\nimport ButtonRow from '../../Form/ButtonRow'\nimport classnames from 'classnames'\nimport Option from '../Option'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface IOption {\n title: string\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldProps<Array<string | number>> & {\n children?: React.ReactNode\n variant?: 'checkbox' | 'button'\n optionsLayout?: 'horizontal' | 'vertical'\n}\n\nfunction ArraySelection(props: Props) {\n const {\n id,\n className,\n variant = 'checkbox',\n layout = 'vertical',\n optionsLayout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n value,\n error,\n info,\n warning,\n disabled,\n emptyValue,\n handleChange,\n children,\n } = useDataValue(props)\n\n const fieldBlockProps = {\n forId: id,\n className: classnames(\n 'dnb-forms-field-array-selection',\n `dnb-forms-field-array-selection--options-layout-${optionsLayout}`,\n className\n ),\n contentClassName: 'dnb-forms-field-array-selection__options',\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n ...pickSpacingProps(props),\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n const newValue = value?.includes(selected)\n ? value.filter((value) => value !== selected)\n : [...(value ?? []), selected]\n\n handleChange?.(newValue.length === 0 ? emptyValue : newValue)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={\n value?.includes(option.value) ? undefined : 'secondary'\n }\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'checkbox':\n return (\n <FieldBlock {...fieldBlockProps}>\n {options.map((option, i) => (\n <Checkbox\n key={`option-${i}-${option.value}`}\n className=\"dnb-forms-field-array-selection__checkbox\"\n label={option.title}\n checked={value?.includes(option.value)}\n disabled={disabled}\n on_change={option.handleSelect}\n />\n ))}\n </FieldBlock>\n )\n }\n}\n\nArraySelection._supportsSpacingProps = true\nexport default ArraySelection\n"],"mappings":"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"}
@@ -1,25 +1,31 @@
1
+ "use client";
2
+
1
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
4
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
5
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
- import React, { useContext } from 'react';
6
+ import React, { useContext, useMemo } from 'react';
5
7
  import StringComponent from '../String';
6
8
  import SharedContext from '../../../../shared/Context';
7
9
  function BankAccountNumber(props) {
10
+ var _props$pattern, _props$label, _props$width;
8
11
  const sharedContext = useContext(SharedContext);
12
+ const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
9
13
  const {
10
14
  validate = true,
11
15
  omitMask
12
16
  } = props;
17
+ const errorMessages = useMemo(() => _objectSpread({
18
+ required: tr.bankAccountNumberErrorRequired,
19
+ pattern: tr.bankAccountNumberErrorPattern
20
+ }, props.errorMessages), [tr, props.errorMessages]);
21
+ const mask = useMemo(() => omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/], [omitMask]);
13
22
  const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
14
23
  className: 'dnb-forms-field-bank-account-number',
15
- pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),
16
- label: props.label ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberLabel),
17
- errorMessages: _objectSpread({
18
- required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberErrorRequired,
19
- pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberErrorPattern
20
- }, props.errorMessages),
21
- mask: omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/],
22
- width: props.width ?? 'medium'
24
+ pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate ? '^[0-9]{11}$' : undefined,
25
+ label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberLabel,
26
+ errorMessages,
27
+ mask,
28
+ width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium'
23
29
  });
24
30
  return React.createElement(StringComponent, stringComponentProps);
25
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BankAccountNumber.js","names":["React","useContext","StringComponent","SharedContext","BankAccountNumber","props","sharedContext","validate","omitMask","stringComponentProps","_objectSpread","className","pattern","undefined","label","translation","Forms","bankAccountNumberLabel","errorMessages","required","bankAccountNumberErrorRequired","bankAccountNumberErrorPattern","mask","width","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps & {\n validate?: boolean\n omitMask?: boolean\n}\n\nfunction BankAccountNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { validate = true, omitMask } = props\n\n const stringComponentProps: Props = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.bankAccountNumberLabel,\n errorMessages: {\n required:\n sharedContext?.translation.Forms.bankAccountNumberErrorRequired,\n pattern:\n sharedContext?.translation.Forms.bankAccountNumberErrorPattern,\n ...props.errorMessages,\n },\n mask: omitMask\n ? [/\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,eAAe,MAAyC,WAAW;AAC1E,OAAOC,aAAa,MAAM,4BAA4B;AAOtD,SAASC,iBAAiBA,CAACC,KAAY,EAAE;EACvC,MAAMC,aAAa,GAAGL,UAAU,CAACE,aAAa,CAAC;EAC/C,MAAM;IAAEI,QAAQ,GAAG,IAAI;IAAEC;EAAS,CAAC,GAAGH,KAAK;EAE3C,MAAMI,oBAA2B,GAAAC,aAAA,CAAAA,aAAA,KAC5BL,KAAK;IACRM,SAAS,EAAE,qCAAqC;IAChDC,OAAO,EAAEP,KAAK,CAACO,OAAO,KAAKL,QAAQ,GAAG,aAAa,GAAGM,SAAS,CAAC;IAChEC,KAAK,EACHT,KAAK,CAACS,KAAK,KACXR,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAES,WAAW,CAACC,KAAK,CAACC,sBAAsB;IACzDC,aAAa,EAAAR,aAAA;MACXS,QAAQ,EACNb,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAES,WAAW,CAACC,KAAK,CAACI,8BAA8B;MACjER,OAAO,EACLN,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAES,WAAW,CAACC,KAAK,CAACK;IAA6B,GAC7DhB,KAAK,CAACa,aAAa,CACvB;IACDI,IAAI,EAAEd,QAAQ,GACV,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAClE,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL;IACLe,KAAK,EAAElB,KAAK,CAACkB,KAAK,IAAI;EAAQ,EAC/B;EAED,OAAOvB,KAAA,CAAAwB,aAAA,CAACtB,eAAe,EAAKO,oBAAuB,CAAC;AACtD;AAEAL,iBAAiB,CAACqB,qBAAqB,GAAG,IAAI;AAC9C,eAAerB,iBAAiB"}
1
+ {"version":3,"file":"BankAccountNumber.js","names":["React","useContext","useMemo","StringComponent","SharedContext","BankAccountNumber","props","_props$pattern","_props$label","_props$width","sharedContext","tr","translation","Forms","validate","omitMask","errorMessages","_objectSpread","required","bankAccountNumberErrorRequired","pattern","bankAccountNumberErrorPattern","mask","stringComponentProps","className","undefined","label","bankAccountNumberLabel","width","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps & {\n validate?: boolean\n omitMask?: boolean\n}\n\nfunction BankAccountNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const { validate = true, omitMask } = props\n\n const errorMessages = useMemo(\n () => ({\n required: tr.bankAccountNumberErrorRequired,\n pattern: tr.bankAccountNumberErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n const mask = useMemo(\n () =>\n omitMask\n ? [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n [omitMask]\n )\n\n const stringComponentProps: Props = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.bankAccountNumberLabel,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,eAAe,MAAyC,WAAW;AAC1E,OAAOC,aAAa,MAAM,4BAA4B;AAOtD,SAASC,iBAAiBA,CAACC,KAAY,EAAE;EAAA,IAAAC,cAAA,EAAAC,YAAA,EAAAC,YAAA;EACvC,MAAMC,aAAa,GAAGT,UAAU,CAACG,aAAa,CAAC;EAC/C,MAAMO,EAAE,GAAGD,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK;EAC3C,MAAM;IAAEC,QAAQ,GAAG,IAAI;IAAEC;EAAS,CAAC,GAAGT,KAAK;EAE3C,MAAMU,aAAa,GAAGd,OAAO,CAC3B,MAAAe,aAAA;IACEC,QAAQ,EAAEP,EAAE,CAACQ,8BAA8B;IAC3CC,OAAO,EAAET,EAAE,CAACU;EAA6B,GACtCf,KAAK,CAACU,aAAa,CACtB,EACF,CAACL,EAAE,EAAEL,KAAK,CAACU,aAAa,CAC1B,CAAC;EACD,MAAMM,IAAI,GAAGpB,OAAO,CAClB,MACEa,QAAQ,GACJ,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,GACD,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,EACP,CAACA,QAAQ,CACX,CAAC;EAED,MAAMQ,oBAA2B,GAAAN,aAAA,CAAAA,aAAA,KAC5BX,KAAK;IACRkB,SAAS,EAAE,qCAAqC;IAChDJ,OAAO,GAAAb,cAAA,GAAED,KAAK,CAACc,OAAO,cAAAb,cAAA,cAAAA,cAAA,GAAKO,QAAQ,GAAG,aAAa,GAAGW,SAAU;IAChEC,KAAK,GAAAlB,YAAA,GACHF,KAAK,CAACoB,KAAK,cAAAlB,YAAA,cAAAA,YAAA,GACXE,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK,CAACc,sBAAsB;IACzDX,aAAa;IACbM,IAAI;IACJM,KAAK,GAAAnB,YAAA,GAAEH,KAAK,CAACsB,KAAK,cAAAnB,YAAA,cAAAA,YAAA,GAAI;EAAQ,EAC/B;EAED,OAAOT,KAAA,CAAA6B,aAAA,CAAC1B,eAAe,EAAKoB,oBAAuB,CAAC;AACtD;AAEAlB,iBAAiB,CAACyB,qBAAqB,GAAG,IAAI;AAC9C,eAAezB,iBAAiB"}
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
2
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
5
  const _excluded = ["trueText", "falseText"];
@@ -14,8 +16,8 @@ function BooleanComponent(props) {
14
16
  return React.createElement(Toggle, _extends({}, restProps, {
15
17
  valueOn: true,
16
18
  valueOff: false,
17
- textOn: trueText ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes),
18
- textOff: falseText ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo)
19
+ textOn: trueText !== null && trueText !== void 0 ? trueText : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes,
20
+ textOff: falseText !== null && falseText !== void 0 ? falseText : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo
19
21
  }));
20
22
  }
21
23
  BooleanComponent._supportsSpacingProps = true;
@@ -1 +1 @@
1
- {"version":3,"file":"Boolean.js","names":["React","useContext","Toggle","SharedContext","BooleanComponent","props","sharedContext","trueText","falseText","restProps","_objectWithoutProperties","_excluded","createElement","_extends","valueOn","valueOff","textOn","translation","Forms","booleanYes","textOff","booleanNo","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Boolean/Boolean.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport Toggle, { Props as ToggleProps } from '../Toggle'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = Omit<\n ToggleProps,\n 'valueOn' | 'valueOff' | 'textOn' | 'textOff'\n> & {\n trueText?: string\n falseText?: string\n}\n\nfunction BooleanComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { trueText, falseText, ...restProps } = props\n return (\n <Toggle\n {...restProps}\n valueOn={true}\n valueOff={false}\n textOn={trueText ?? sharedContext?.translation.Forms.booleanYes}\n textOff={falseText ?? sharedContext?.translation.Forms.booleanNo}\n />\n )\n}\n\nBooleanComponent._supportsSpacingProps = true\nexport default BooleanComponent\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,MAAM,MAAgC,WAAW;AACxD,OAAOC,aAAa,MAAM,4BAA4B;AAUtD,SAASC,gBAAgBA,CAACC,KAAY,EAAE;EACtC,MAAMC,aAAa,GAAGL,UAAU,CAACE,aAAa,CAAC;EAC/C,MAAM;MAAEI,QAAQ;MAAEC;IAAwB,CAAC,GAAGH,KAAK;IAAnBI,SAAS,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA;EACnD,OACEX,KAAA,CAAAY,aAAA,CAACV,MAAM,EAAAW,QAAA,KACDJ,SAAS;IACbK,OAAO,EAAE,IAAK;IACdC,QAAQ,EAAE,KAAM;IAChBC,MAAM,EAAET,QAAQ,KAAID,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEW,WAAW,CAACC,KAAK,CAACC,UAAU,CAAC;IAChEC,OAAO,EAAEZ,SAAS,KAAIF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEW,WAAW,CAACC,KAAK,CAACG,SAAS;EAAC,EAClE,CAAC;AAEN;AAEAjB,gBAAgB,CAACkB,qBAAqB,GAAG,IAAI;AAC7C,eAAelB,gBAAgB"}
1
+ {"version":3,"file":"Boolean.js","names":["React","useContext","Toggle","SharedContext","BooleanComponent","props","sharedContext","trueText","falseText","restProps","_objectWithoutProperties","_excluded","createElement","_extends","valueOn","valueOff","textOn","translation","Forms","booleanYes","textOff","booleanNo","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Boolean/Boolean.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport Toggle, { Props as ToggleProps } from '../Toggle'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = Omit<\n ToggleProps,\n 'valueOn' | 'valueOff' | 'textOn' | 'textOff'\n> & {\n trueText?: string\n falseText?: string\n}\n\nfunction BooleanComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { trueText, falseText, ...restProps } = props\n return (\n <Toggle\n {...restProps}\n valueOn={true}\n valueOff={false}\n textOn={trueText ?? sharedContext?.translation.Forms.booleanYes}\n textOff={falseText ?? sharedContext?.translation.Forms.booleanNo}\n />\n )\n}\n\nBooleanComponent._supportsSpacingProps = true\nexport default BooleanComponent\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,MAAM,MAAgC,WAAW;AACxD,OAAOC,aAAa,MAAM,4BAA4B;AAUtD,SAASC,gBAAgBA,CAACC,KAAY,EAAE;EACtC,MAAMC,aAAa,GAAGL,UAAU,CAACE,aAAa,CAAC;EAC/C,MAAM;MAAEI,QAAQ;MAAEC;IAAwB,CAAC,GAAGH,KAAK;IAAnBI,SAAS,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA;EACnD,OACEX,KAAA,CAAAY,aAAA,CAACV,MAAM,EAAAW,QAAA,KACDJ,SAAS;IACbK,OAAO,EAAE,IAAK;IACdC,QAAQ,EAAE,KAAM;IAChBC,MAAM,EAAET,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAID,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEW,WAAW,CAACC,KAAK,CAACC,UAAW;IAChEC,OAAO,EAAEZ,SAAS,aAATA,SAAS,cAATA,SAAS,GAAIF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEW,WAAW,CAACC,KAAK,CAACG;EAAU,EAClE,CAAC;AAEN;AAEAjB,gBAAgB,CAACkB,qBAAqB,GAAG,IAAI;AAC7C,eAAelB,gBAAgB"}
@@ -6,9 +6,10 @@ import React from 'react';
6
6
  import classnames from 'classnames';
7
7
  import NumberComponent from '../Number';
8
8
  function Currency(props) {
9
+ var _props$currency, _props$placeholder;
9
10
  const preparedProps = _objectSpread(_objectSpread({}, props), {}, {
10
- currency: props.currency ?? 'NOK',
11
- placeholder: props.placeholder ?? 'kr'
11
+ currency: (_props$currency = props.currency) !== null && _props$currency !== void 0 ? _props$currency : 'NOK',
12
+ placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : 'kr'
12
13
  });
13
14
  return React.createElement(NumberComponent, _extends({}, preparedProps, {
14
15
  className: classnames('dnb-forms-field-currency', props.className)
@@ -1 +1 @@
1
- {"version":3,"file":"Currency.js","names":["React","classnames","NumberComponent","Currency","props","preparedProps","_objectSpread","currency","placeholder","createElement","_extends","className","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Currency/Currency.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport NumberComponent from '../Number'\nimport type { FieldProps, FieldHelpProps } from '../../types'\n\nexport type Props = FieldHelpProps &\n FieldProps<number, undefined> & {\n currency?: string\n }\n\nfunction Currency(props: Props) {\n const preparedProps = {\n ...props,\n currency: props.currency ?? 'NOK',\n placeholder: props.placeholder ?? 'kr',\n }\n\n return (\n <NumberComponent\n {...preparedProps}\n className={classnames('dnb-forms-field-currency', props.className)}\n />\n )\n}\n\nCurrency._supportsSpacingProps = true\nexport default Currency\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,eAAe,MAAM,WAAW;AAQvC,SAASC,QAAQA,CAACC,KAAY,EAAE;EAC9B,MAAMC,aAAa,GAAAC,aAAA,CAAAA,aAAA,KACdF,KAAK;IACRG,QAAQ,EAAEH,KAAK,CAACG,QAAQ,IAAI,KAAK;IACjCC,WAAW,EAAEJ,KAAK,CAACI,WAAW,IAAI;EAAI,EACvC;EAED,OACER,KAAA,CAAAS,aAAA,CAACP,eAAe,EAAAQ,QAAA,KACVL,aAAa;IACjBM,SAAS,EAAEV,UAAU,CAAC,0BAA0B,EAAEG,KAAK,CAACO,SAAS;EAAE,EACpE,CAAC;AAEN;AAEAR,QAAQ,CAACS,qBAAqB,GAAG,IAAI;AACrC,eAAeT,QAAQ"}
1
+ {"version":3,"file":"Currency.js","names":["React","classnames","NumberComponent","Currency","props","_props$currency","_props$placeholder","preparedProps","_objectSpread","currency","placeholder","createElement","_extends","className","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Currency/Currency.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport NumberComponent from '../Number'\nimport type { FieldProps, FieldHelpProps } from '../../types'\n\nexport type Props = FieldHelpProps &\n FieldProps<number, undefined> & {\n currency?: string\n }\n\nfunction Currency(props: Props) {\n const preparedProps = {\n ...props,\n currency: props.currency ?? 'NOK',\n placeholder: props.placeholder ?? 'kr',\n }\n\n return (\n <NumberComponent\n {...preparedProps}\n className={classnames('dnb-forms-field-currency', props.className)}\n />\n )\n}\n\nCurrency._supportsSpacingProps = true\nexport default Currency\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,eAAe,MAAM,WAAW;AAQvC,SAASC,QAAQA,CAACC,KAAY,EAAE;EAAA,IAAAC,eAAA,EAAAC,kBAAA;EAC9B,MAAMC,aAAa,GAAAC,aAAA,CAAAA,aAAA,KACdJ,KAAK;IACRK,QAAQ,GAAAJ,eAAA,GAAED,KAAK,CAACK,QAAQ,cAAAJ,eAAA,cAAAA,eAAA,GAAI,KAAK;IACjCK,WAAW,GAAAJ,kBAAA,GAAEF,KAAK,CAACM,WAAW,cAAAJ,kBAAA,cAAAA,kBAAA,GAAI;EAAI,EACvC;EAED,OACEN,KAAA,CAAAW,aAAA,CAACT,eAAe,EAAAU,QAAA,KACVL,aAAa;IACjBM,SAAS,EAAEZ,UAAU,CAAC,0BAA0B,EAAEG,KAAK,CAACS,SAAS;EAAE,EACpE,CAAC;AAEN;AAEAV,QAAQ,CAACW,qBAAqB,GAAG,IAAI;AACrC,eAAeX,QAAQ"}
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
2
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
@@ -29,7 +31,7 @@ function DateComponent(props) {
29
31
  } = useDataValue(preparedProps);
30
32
  return React.createElement(DatePicker, _extends({
31
33
  className: className,
32
- label: label ?? (sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.dateLabel),
34
+ label: label !== null && label !== void 0 ? label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.dateLabel,
33
35
  label_direction: "vertical",
34
36
  date: value,
35
37
  status: error === null || error === void 0 ? void 0 : error.message,
@@ -1 +1 @@
1
- {"version":3,"file":"Date.js","names":["React","useContext","DatePicker","HelpButton","useDataValue","pickSpacingProps","SharedContext","DateComponent","props","sharedContext","preparedProps","_objectSpread","fromInput","date","className","label","value","help","error","disabled","handleFocus","handleBlur","handleChange","createElement","_extends","translation","Forms","dateLabel","label_direction","status","message","show_input","show_cancel_button","show_reset_button","suffix","title","contents","undefined","on_change","on_show","on_hide","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { DatePicker, HelpButton } from '../../../../components'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = FieldHelpProps & FieldProps<string>\n\nfunction DateComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const preparedProps: Props = {\n ...props,\n fromInput: ({ date }: { date: string }) => {\n return date\n },\n }\n\n const {\n className,\n label,\n value,\n help,\n error,\n disabled,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <DatePicker\n className={className}\n label={label ?? sharedContext?.translation.Forms.dateLabel}\n label_direction=\"vertical\"\n date={value}\n status={error?.message}\n disabled={disabled}\n show_input={true}\n show_cancel_button={true}\n show_reset_button={true}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleChange}\n on_show={handleFocus}\n on_hide={handleBlur}\n {...pickSpacingProps(props)}\n />\n )\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,UAAU,EAAEC,UAAU,QAAQ,wBAAwB;AAC/D,SAASC,YAAY,QAAQ,aAAa;AAE1C,SAASC,gBAAgB,QAAQ,mCAAmC;AACpE,OAAOC,aAAa,MAAM,4BAA4B;AAItD,SAASC,aAAaA,CAACC,KAAY,EAAE;EACnC,MAAMC,aAAa,GAAGR,UAAU,CAACK,aAAa,CAAC;EAC/C,MAAMI,aAAoB,GAAAC,aAAA,CAAAA,aAAA,KACrBH,KAAK;IACRI,SAAS,EAAEA,CAAC;MAAEC;IAAuB,CAAC,KAAK;MACzC,OAAOA,IAAI;IACb;EAAC,EACF;EAED,MAAM;IACJC,SAAS;IACTC,KAAK;IACLC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,QAAQ;IACRC,WAAW;IACXC,UAAU;IACVC;EACF,CAAC,GAAGlB,YAAY,CAACM,aAAa,CAAC;EAE/B,OACEV,KAAA,CAAAuB,aAAA,CAACrB,UAAU,EAAAsB,QAAA;IACTV,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAK,KAAIN,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEgB,WAAW,CAACC,KAAK,CAACC,SAAS,CAAC;IAC3DC,eAAe,EAAC,UAAU;IAC1Bf,IAAI,EAAEG,KAAM;IACZa,MAAM,EAAEX,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEY,OAAQ;IACvBX,QAAQ,EAAEA,QAAS;IACnBY,UAAU,EAAE,IAAK;IACjBC,kBAAkB,EAAE,IAAK;IACzBC,iBAAiB,EAAE,IAAK;IACxBC,MAAM,EACJjB,IAAI,GACFjB,KAAA,CAAAuB,aAAA,CAACpB,UAAU;MAACgC,KAAK,EAAElB,IAAI,CAACkB;IAAM,GAAElB,IAAI,CAACmB,QAAqB,CAAC,GACzDC,SACL;IACDC,SAAS,EAAEhB,YAAa;IACxBiB,OAAO,EAAEnB,WAAY;IACrBoB,OAAO,EAAEnB;EAAW,GAChBhB,gBAAgB,CAACG,KAAK,CAAC,CAC5B,CAAC;AAEN;AAEAD,aAAa,CAACkC,qBAAqB,GAAG,IAAI;AAC1C,eAAelC,aAAa"}
1
+ {"version":3,"file":"Date.js","names":["React","useContext","DatePicker","HelpButton","useDataValue","pickSpacingProps","SharedContext","DateComponent","props","sharedContext","preparedProps","_objectSpread","fromInput","date","className","label","value","help","error","disabled","handleFocus","handleBlur","handleChange","createElement","_extends","translation","Forms","dateLabel","label_direction","status","message","show_input","show_cancel_button","show_reset_button","suffix","title","contents","undefined","on_change","on_show","on_hide","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { DatePicker, HelpButton } from '../../../../components'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = FieldHelpProps & FieldProps<string>\n\nfunction DateComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const preparedProps: Props = {\n ...props,\n fromInput: ({ date }: { date: string }) => {\n return date\n },\n }\n\n const {\n className,\n label,\n value,\n help,\n error,\n disabled,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <DatePicker\n className={className}\n label={label ?? sharedContext?.translation.Forms.dateLabel}\n label_direction=\"vertical\"\n date={value}\n status={error?.message}\n disabled={disabled}\n show_input={true}\n show_cancel_button={true}\n show_reset_button={true}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleChange}\n on_show={handleFocus}\n on_hide={handleBlur}\n {...pickSpacingProps(props)}\n />\n )\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,UAAU,EAAEC,UAAU,QAAQ,wBAAwB;AAC/D,SAASC,YAAY,QAAQ,aAAa;AAE1C,SAASC,gBAAgB,QAAQ,mCAAmC;AACpE,OAAOC,aAAa,MAAM,4BAA4B;AAItD,SAASC,aAAaA,CAACC,KAAY,EAAE;EACnC,MAAMC,aAAa,GAAGR,UAAU,CAACK,aAAa,CAAC;EAC/C,MAAMI,aAAoB,GAAAC,aAAA,CAAAA,aAAA,KACrBH,KAAK;IACRI,SAAS,EAAEA,CAAC;MAAEC;IAAuB,CAAC,KAAK;MACzC,OAAOA,IAAI;IACb;EAAC,EACF;EAED,MAAM;IACJC,SAAS;IACTC,KAAK;IACLC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,QAAQ;IACRC,WAAW;IACXC,UAAU;IACVC;EACF,CAAC,GAAGlB,YAAY,CAACM,aAAa,CAAC;EAE/B,OACEV,KAAA,CAAAuB,aAAA,CAACrB,UAAU,EAAAsB,QAAA;IACTV,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAK,aAALA,KAAK,cAALA,KAAK,GAAIN,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEgB,WAAW,CAACC,KAAK,CAACC,SAAU;IAC3DC,eAAe,EAAC,UAAU;IAC1Bf,IAAI,EAAEG,KAAM;IACZa,MAAM,EAAEX,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEY,OAAQ;IACvBX,QAAQ,EAAEA,QAAS;IACnBY,UAAU,EAAE,IAAK;IACjBC,kBAAkB,EAAE,IAAK;IACzBC,iBAAiB,EAAE,IAAK;IACxBC,MAAM,EACJjB,IAAI,GACFjB,KAAA,CAAAuB,aAAA,CAACpB,UAAU;MAACgC,KAAK,EAAElB,IAAI,CAACkB;IAAM,GAAElB,IAAI,CAACmB,QAAqB,CAAC,GACzDC,SACL;IACDC,SAAS,EAAEhB,YAAa;IACxBiB,OAAO,EAAEnB,WAAY;IACrBoB,OAAO,EAAEnB;EAAW,GAChBhB,gBAAgB,CAACG,KAAK,CAAC,CAC5B,CAAC;AAEN;AAEAD,aAAa,CAACkC,qBAAqB,GAAG,IAAI;AAC1C,eAAelC,aAAa"}