@dnb/eufemia 10.13.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 (885) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/cjs/components/accordion/AccordionContent.js +1 -0
  3. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  4. package/cjs/components/anchor/Anchor.js +1 -0
  5. package/cjs/components/anchor/Anchor.js.map +1 -1
  6. package/cjs/components/autocomplete/Autocomplete.js +80 -77
  7. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  8. package/cjs/components/avatar/Avatar.js +1 -0
  9. package/cjs/components/avatar/Avatar.js.map +1 -1
  10. package/cjs/components/avatar/AvatarGroup.js +1 -0
  11. package/cjs/components/avatar/AvatarGroup.js.map +1 -1
  12. package/cjs/components/badge/Badge.js +1 -0
  13. package/cjs/components/badge/Badge.js.map +1 -1
  14. package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -0
  15. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  16. package/cjs/components/button/Button.js +2 -0
  17. package/cjs/components/button/Button.js.map +1 -1
  18. package/cjs/components/checkbox/Checkbox.js +2 -0
  19. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  20. package/cjs/components/date-picker/DatePicker.js +2 -0
  21. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  22. package/cjs/components/date-picker/DatePickerProvider.js +1 -0
  23. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  24. package/cjs/components/dropdown/Dropdown.js +1 -0
  25. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  26. package/cjs/components/flex/Container.js +1 -0
  27. package/cjs/components/flex/Container.js.map +1 -1
  28. package/cjs/components/flex/Flex.d.ts +1 -1
  29. package/cjs/components/flex/Flex.js +1 -1
  30. package/cjs/components/flex/Flex.js.map +1 -1
  31. package/cjs/components/flex/export.d.ts +5 -0
  32. package/cjs/components/flex/export.js +42 -0
  33. package/cjs/components/flex/export.js.map +1 -0
  34. package/cjs/components/flex/index.d.ts +2 -5
  35. package/cjs/components/flex/index.js +5 -36
  36. package/cjs/components/flex/index.js.map +1 -1
  37. package/cjs/components/form-label/FormLabel.d.ts +1 -0
  38. package/cjs/components/form-label/FormLabel.js +2 -0
  39. package/cjs/components/form-label/FormLabel.js.map +1 -1
  40. package/cjs/components/form-row/FormRow.js +1 -0
  41. package/cjs/components/form-row/FormRow.js.map +1 -1
  42. package/cjs/components/form-set/FormSet.js +1 -0
  43. package/cjs/components/form-set/FormSet.js.map +1 -1
  44. package/cjs/components/form-status/FormStatus.js +1 -0
  45. package/cjs/components/form-status/FormStatus.js.map +1 -1
  46. package/cjs/components/global-error/GlobalError.js +1 -0
  47. package/cjs/components/global-error/GlobalError.js.map +1 -1
  48. package/cjs/components/global-status/GlobalStatus.js +1 -0
  49. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  50. package/cjs/components/grid/Grid.d.ts +1 -1
  51. package/cjs/components/grid/Grid.js +1 -1
  52. package/cjs/components/grid/Grid.js.map +1 -1
  53. package/cjs/components/grid/export.d.ts +2 -0
  54. package/cjs/components/grid/export.js +21 -0
  55. package/cjs/components/grid/export.js.map +1 -0
  56. package/cjs/components/grid/index.d.ts +2 -2
  57. package/cjs/components/grid/index.js +5 -15
  58. package/cjs/components/grid/index.js.map +1 -1
  59. package/cjs/components/heading/Heading.js +1 -0
  60. package/cjs/components/heading/Heading.js.map +1 -1
  61. package/cjs/components/help-button/HelpButton.js +1 -0
  62. package/cjs/components/help-button/HelpButton.js.map +1 -1
  63. package/cjs/components/help-button/HelpButtonInstance.js +1 -0
  64. package/cjs/components/help-button/HelpButtonInstance.js.map +1 -1
  65. package/cjs/components/icon/Icon.js +1 -0
  66. package/cjs/components/icon/Icon.js.map +1 -1
  67. package/cjs/components/icon-primary/IconPrimary.js +1 -0
  68. package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
  69. package/cjs/components/info-card/InfoCard.js +1 -0
  70. package/cjs/components/info-card/InfoCard.js.map +1 -1
  71. package/cjs/components/input/Input.d.ts +4 -0
  72. package/cjs/components/input/Input.js +12 -2
  73. package/cjs/components/input/Input.js.map +1 -1
  74. package/cjs/components/input/InputPassword.js +2 -0
  75. package/cjs/components/input/InputPassword.js.map +1 -1
  76. package/cjs/components/input-masked/InputMasked.js +2 -0
  77. package/cjs/components/input-masked/InputMasked.js.map +1 -1
  78. package/cjs/components/input-masked/MultiInputMask.d.ts +9 -1
  79. package/cjs/components/input-masked/MultiInputMask.js +14 -7
  80. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  81. package/cjs/components/input-masked/TextMask.d.ts +1 -1
  82. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
  83. package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  84. package/cjs/components/lib.d.ts +2 -0
  85. package/cjs/components/logo/Logo.js +1 -0
  86. package/cjs/components/logo/Logo.js.map +1 -1
  87. package/cjs/components/modal/Modal.js +1 -0
  88. package/cjs/components/modal/Modal.js.map +1 -1
  89. package/cjs/components/modal/ModalContent.js +1 -0
  90. package/cjs/components/modal/ModalContent.js.map +1 -1
  91. package/cjs/components/modal/parts/CloseButton.js +1 -0
  92. package/cjs/components/modal/parts/CloseButton.js.map +1 -1
  93. package/cjs/components/number-format/NumberFormat.js +1 -0
  94. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  95. package/cjs/components/number-format/NumberUtils.js +1 -0
  96. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  97. package/cjs/components/pagination/PaginationHelpers.js +1 -0
  98. package/cjs/components/pagination/PaginationHelpers.js.map +1 -1
  99. package/cjs/components/pagination/PaginationInfinity.js +1 -0
  100. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  101. package/cjs/components/pagination/PaginationProvider.js +1 -0
  102. package/cjs/components/pagination/PaginationProvider.js.map +1 -1
  103. package/cjs/components/progress-indicator/ProgressIndicator.js +1 -0
  104. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  105. package/cjs/components/radio/Radio.js +4 -2
  106. package/cjs/components/radio/Radio.js.map +1 -1
  107. package/cjs/components/radio/RadioGroup.js +5 -4
  108. package/cjs/components/radio/RadioGroup.js.map +1 -1
  109. package/cjs/components/radio/style/dnb-radio.css +106 -0
  110. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  111. package/cjs/components/radio/style/dnb-radio.scss +202 -0
  112. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
  113. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
  114. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
  115. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
  116. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  117. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
  118. package/cjs/components/section/Section.js +1 -0
  119. package/cjs/components/section/Section.js.map +1 -1
  120. package/cjs/components/skeleton/Skeleton.js +1 -0
  121. package/cjs/components/skeleton/Skeleton.js.map +1 -1
  122. package/cjs/components/skeleton/figures/Article.js +1 -0
  123. package/cjs/components/skeleton/figures/Article.js.map +1 -1
  124. package/cjs/components/skeleton/figures/Circle.js +1 -0
  125. package/cjs/components/skeleton/figures/Circle.js.map +1 -1
  126. package/cjs/components/skeleton/figures/Product.js +1 -0
  127. package/cjs/components/skeleton/figures/Product.js.map +1 -1
  128. package/cjs/components/skeleton/figures/Table.js +1 -0
  129. package/cjs/components/skeleton/figures/Table.js.map +1 -1
  130. package/cjs/components/slider/Slider.d.ts +1 -0
  131. package/cjs/components/slider/Slider.js +1 -0
  132. package/cjs/components/slider/Slider.js.map +1 -1
  133. package/cjs/components/slider/SliderInstance.js +1 -0
  134. package/cjs/components/slider/SliderInstance.js.map +1 -1
  135. package/cjs/components/slider/SliderProvider.js +1 -0
  136. package/cjs/components/slider/SliderProvider.js.map +1 -1
  137. package/cjs/components/space/Space.js +1 -0
  138. package/cjs/components/space/Space.js.map +1 -1
  139. package/cjs/components/switch/Switch.js +2 -0
  140. package/cjs/components/switch/Switch.js.map +1 -1
  141. package/cjs/components/table/Table.js +1 -0
  142. package/cjs/components/table/Table.js.map +1 -1
  143. package/cjs/components/tabs/Tabs.js +1 -0
  144. package/cjs/components/tabs/Tabs.js.map +1 -1
  145. package/cjs/components/tag/Tag.d.ts +1 -0
  146. package/cjs/components/tag/Tag.js +2 -0
  147. package/cjs/components/tag/Tag.js.map +1 -1
  148. package/cjs/components/tag/TagGroup.js +1 -0
  149. package/cjs/components/tag/TagGroup.js.map +1 -1
  150. package/cjs/components/textarea/Textarea.js +2 -0
  151. package/cjs/components/textarea/Textarea.js.map +1 -1
  152. package/cjs/components/timeline/Timeline.js +1 -0
  153. package/cjs/components/timeline/Timeline.js.map +1 -1
  154. package/cjs/components/timeline/TimelineItem.js +1 -0
  155. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  156. package/cjs/components/toggle-button/ToggleButton.js +2 -0
  157. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  158. package/cjs/components/toggle-button/ToggleButtonGroup.js +5 -4
  159. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  160. package/cjs/components/tooltip/Tooltip.js +1 -0
  161. package/cjs/components/tooltip/Tooltip.js.map +1 -1
  162. package/cjs/components/tooltip/TooltipPortal.js +1 -0
  163. package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
  164. package/cjs/components/upload/Upload.d.ts +1 -0
  165. package/cjs/components/upload/Upload.js +2 -0
  166. package/cjs/components/upload/Upload.js.map +1 -1
  167. package/cjs/components/upload/useUpload.js +1 -0
  168. package/cjs/components/upload/useUpload.js.map +1 -1
  169. package/cjs/components/visually-hidden/VisuallyHidden.js +1 -0
  170. package/cjs/components/visually-hidden/VisuallyHidden.js.map +1 -1
  171. package/cjs/elements/Element.js +1 -0
  172. package/cjs/elements/Element.js.map +1 -1
  173. package/cjs/elements/typography/H.js +1 -0
  174. package/cjs/elements/typography/H.js.map +1 -1
  175. package/cjs/extensions/forms/DataContext/Provider/Provider.js +52 -42
  176. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  177. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +8 -5
  178. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  179. package/cjs/extensions/forms/Field/Email/Email.js +6 -4
  180. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  181. package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  182. package/cjs/extensions/forms/Field/Expiry/Expiry.js +99 -0
  183. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  184. package/cjs/extensions/forms/Field/Expiry/index.d.ts +2 -0
  185. package/cjs/extensions/forms/Field/Expiry/index.js +27 -0
  186. package/cjs/extensions/forms/Field/Expiry/index.js.map +1 -0
  187. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
  188. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  189. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  190. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +8 -5
  191. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  192. package/cjs/extensions/forms/Field/Number/Number.js +47 -25
  193. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  194. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +8 -5
  195. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  196. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +46 -33
  197. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  198. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -4
  199. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  200. package/cjs/extensions/forms/Field/String/String.js +30 -20
  201. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  202. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  203. package/cjs/extensions/forms/Field/index.js +7 -0
  204. package/cjs/extensions/forms/Field/index.js.map +1 -1
  205. package/cjs/extensions/forms/Field/style/dnb-forms-field.css +13 -0
  206. package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
  207. package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
  208. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +36 -2
  209. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  210. package/cjs/extensions/forms/Form/Element/Element.js +1 -0
  211. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  212. package/cjs/extensions/forms/Form/Handler/Handler.js +1 -0
  213. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  214. package/cjs/extensions/forms/hooks/index.d.ts +3 -0
  215. package/cjs/extensions/forms/hooks/index.js +21 -0
  216. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  217. package/cjs/extensions/forms/hooks/useDataValue.js +127 -61
  218. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  219. package/cjs/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  220. package/cjs/extensions/forms/hooks/useMountEffect.js +14 -0
  221. package/cjs/extensions/forms/hooks/useMountEffect.js.map +1 -0
  222. package/cjs/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  223. package/cjs/extensions/forms/hooks/useProcessManager.js +21 -0
  224. package/cjs/extensions/forms/hooks/useProcessManager.js.map +1 -0
  225. package/cjs/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  226. package/cjs/extensions/forms/hooks/useUpdateEffect.js +19 -0
  227. package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  228. package/cjs/extensions/forms/style/dnb-forms.css +13 -0
  229. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  230. package/cjs/extensions/forms/types.d.ts +10 -2
  231. package/cjs/extensions/forms/types.js +2 -0
  232. package/cjs/extensions/forms/types.js.map +1 -1
  233. package/cjs/extensions/forms/utils/ajv.js +25 -1
  234. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  235. package/cjs/extensions/forms/utils/errors.d.ts +2 -0
  236. package/cjs/extensions/forms/utils/errors.js +16 -0
  237. package/cjs/extensions/forms/utils/errors.js.map +1 -0
  238. package/cjs/extensions/forms/utils/index.d.ts +1 -0
  239. package/cjs/extensions/forms/utils/index.js +12 -0
  240. package/cjs/extensions/forms/utils/index.js.map +1 -1
  241. package/cjs/extensions/payment-card/PaymentCard.js +1 -0
  242. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  243. package/cjs/fragments/drawer-list/DrawerListProvider.js +1 -0
  244. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  245. package/cjs/fragments/scroll-view/ScrollView.js +1 -0
  246. package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
  247. package/cjs/shared/Eufemia.d.ts +1 -1
  248. package/cjs/shared/Eufemia.js +2 -2
  249. package/cjs/shared/Eufemia.js.map +1 -1
  250. package/cjs/shared/MediaQuery.js +1 -0
  251. package/cjs/shared/MediaQuery.js.map +1 -1
  252. package/cjs/shared/Provider.js +1 -0
  253. package/cjs/shared/Provider.js.map +1 -1
  254. package/cjs/shared/Theme.js +1 -0
  255. package/cjs/shared/Theme.js.map +1 -1
  256. package/cjs/shared/VisibilityByTheme.js +1 -0
  257. package/cjs/shared/VisibilityByTheme.js.map +1 -1
  258. package/cjs/shared/index.js +1 -0
  259. package/cjs/shared/index.js.map +1 -1
  260. package/cjs/shared/locales/en-GB.d.ts +11 -0
  261. package/cjs/shared/locales/en-GB.js +12 -1
  262. package/cjs/shared/locales/en-GB.js.map +1 -1
  263. package/cjs/shared/locales/en-US.d.ts +11 -0
  264. package/cjs/shared/locales/index.d.ts +22 -0
  265. package/cjs/shared/locales/nb-NO.d.ts +11 -0
  266. package/cjs/shared/locales/nb-NO.js +12 -1
  267. package/cjs/shared/locales/nb-NO.js.map +1 -1
  268. package/cjs/shared/useMedia.js +1 -0
  269. package/cjs/shared/useMedia.js.map +1 -1
  270. package/cjs/shared/useMediaQuery.js +1 -0
  271. package/cjs/shared/useMediaQuery.js.map +1 -1
  272. package/cjs/shared/useTheme.js +1 -0
  273. package/cjs/shared/useTheme.js.map +1 -1
  274. package/cjs/shared/useTranslation.js +1 -0
  275. package/cjs/shared/useTranslation.js.map +1 -1
  276. package/cjs/style/dnb-ui-components.css +106 -0
  277. package/cjs/style/dnb-ui-components.min.css +1 -1
  278. package/cjs/style/dnb-ui-extensions.css +13 -0
  279. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  280. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +126 -86
  281. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  282. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
  283. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  284. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +133 -93
  285. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  286. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
  287. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
  288. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  289. package/cjs/style/themes/theme-ui/ui-theme-components.css +126 -86
  290. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  291. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +13 -0
  292. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  293. package/components/accordion/AccordionContent.js +2 -0
  294. package/components/accordion/AccordionContent.js.map +1 -1
  295. package/components/anchor/Anchor.js +2 -0
  296. package/components/anchor/Anchor.js.map +1 -1
  297. package/components/autocomplete/Autocomplete.js +80 -77
  298. package/components/autocomplete/Autocomplete.js.map +1 -1
  299. package/components/avatar/Avatar.js +2 -0
  300. package/components/avatar/Avatar.js.map +1 -1
  301. package/components/avatar/AvatarGroup.js +2 -0
  302. package/components/avatar/AvatarGroup.js.map +1 -1
  303. package/components/badge/Badge.js +2 -0
  304. package/components/badge/Badge.js.map +1 -1
  305. package/components/breadcrumb/BreadcrumbItem.js +2 -0
  306. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  307. package/components/button/Button.js +3 -0
  308. package/components/button/Button.js.map +1 -1
  309. package/components/checkbox/Checkbox.js +3 -0
  310. package/components/checkbox/Checkbox.js.map +1 -1
  311. package/components/date-picker/DatePicker.js +3 -0
  312. package/components/date-picker/DatePicker.js.map +1 -1
  313. package/components/date-picker/DatePickerProvider.js +2 -0
  314. package/components/date-picker/DatePickerProvider.js.map +1 -1
  315. package/components/dropdown/Dropdown.js +1 -0
  316. package/components/dropdown/Dropdown.js.map +1 -1
  317. package/components/flex/Container.js +2 -0
  318. package/components/flex/Container.js.map +1 -1
  319. package/components/flex/Flex.d.ts +1 -1
  320. package/components/flex/Flex.js +1 -1
  321. package/components/flex/Flex.js.map +1 -1
  322. package/components/flex/export.d.ts +5 -0
  323. package/components/flex/export.js +6 -0
  324. package/components/flex/export.js.map +1 -0
  325. package/components/flex/index.d.ts +2 -5
  326. package/components/flex/index.js +2 -5
  327. package/components/flex/index.js.map +1 -1
  328. package/components/form-label/FormLabel.d.ts +1 -0
  329. package/components/form-label/FormLabel.js +3 -0
  330. package/components/form-label/FormLabel.js.map +1 -1
  331. package/components/form-row/FormRow.js +2 -0
  332. package/components/form-row/FormRow.js.map +1 -1
  333. package/components/form-set/FormSet.js +2 -0
  334. package/components/form-set/FormSet.js.map +1 -1
  335. package/components/form-status/FormStatus.js +2 -0
  336. package/components/form-status/FormStatus.js.map +1 -1
  337. package/components/global-error/GlobalError.js +2 -0
  338. package/components/global-error/GlobalError.js.map +1 -1
  339. package/components/global-status/GlobalStatus.js +2 -0
  340. package/components/global-status/GlobalStatus.js.map +1 -1
  341. package/components/grid/Grid.d.ts +1 -1
  342. package/components/grid/Grid.js +1 -1
  343. package/components/grid/Grid.js.map +1 -1
  344. package/components/grid/export.d.ts +2 -0
  345. package/components/grid/export.js +3 -0
  346. package/components/grid/export.js.map +1 -0
  347. package/components/grid/index.d.ts +2 -2
  348. package/components/grid/index.js +2 -2
  349. package/components/grid/index.js.map +1 -1
  350. package/components/heading/Heading.js +2 -0
  351. package/components/heading/Heading.js.map +1 -1
  352. package/components/help-button/HelpButton.js +2 -0
  353. package/components/help-button/HelpButton.js.map +1 -1
  354. package/components/help-button/HelpButtonInstance.js +2 -0
  355. package/components/help-button/HelpButtonInstance.js.map +1 -1
  356. package/components/icon/Icon.js +2 -0
  357. package/components/icon/Icon.js.map +1 -1
  358. package/components/icon-primary/IconPrimary.js +2 -0
  359. package/components/icon-primary/IconPrimary.js.map +1 -1
  360. package/components/info-card/InfoCard.js +2 -0
  361. package/components/info-card/InfoCard.js.map +1 -1
  362. package/components/input/Input.d.ts +4 -0
  363. package/components/input/Input.js +13 -2
  364. package/components/input/Input.js.map +1 -1
  365. package/components/input/InputPassword.js +3 -0
  366. package/components/input/InputPassword.js.map +1 -1
  367. package/components/input-masked/InputMasked.js +3 -0
  368. package/components/input-masked/InputMasked.js.map +1 -1
  369. package/components/input-masked/MultiInputMask.d.ts +9 -1
  370. package/components/input-masked/MultiInputMask.js +14 -7
  371. package/components/input-masked/MultiInputMask.js.map +1 -1
  372. package/components/input-masked/TextMask.d.ts +1 -1
  373. package/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
  374. package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  375. package/components/lib.d.ts +2 -0
  376. package/components/logo/Logo.js +2 -0
  377. package/components/logo/Logo.js.map +1 -1
  378. package/components/modal/Modal.js +2 -0
  379. package/components/modal/Modal.js.map +1 -1
  380. package/components/modal/ModalContent.js +2 -0
  381. package/components/modal/ModalContent.js.map +1 -1
  382. package/components/modal/parts/CloseButton.js +2 -0
  383. package/components/modal/parts/CloseButton.js.map +1 -1
  384. package/components/number-format/NumberFormat.js +2 -0
  385. package/components/number-format/NumberFormat.js.map +1 -1
  386. package/components/number-format/NumberUtils.js +2 -0
  387. package/components/number-format/NumberUtils.js.map +1 -1
  388. package/components/pagination/PaginationHelpers.js +2 -0
  389. package/components/pagination/PaginationHelpers.js.map +1 -1
  390. package/components/pagination/PaginationInfinity.js +2 -0
  391. package/components/pagination/PaginationInfinity.js.map +1 -1
  392. package/components/pagination/PaginationProvider.js +2 -0
  393. package/components/pagination/PaginationProvider.js.map +1 -1
  394. package/components/progress-indicator/ProgressIndicator.js +2 -0
  395. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  396. package/components/radio/Radio.js +5 -2
  397. package/components/radio/Radio.js.map +1 -1
  398. package/components/radio/RadioGroup.js +6 -4
  399. package/components/radio/RadioGroup.js.map +1 -1
  400. package/components/radio/style/dnb-radio.css +106 -0
  401. package/components/radio/style/dnb-radio.min.css +1 -1
  402. package/components/radio/style/dnb-radio.scss +202 -0
  403. package/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
  404. package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
  405. package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
  406. package/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
  407. package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  408. package/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
  409. package/components/section/Section.js +2 -0
  410. package/components/section/Section.js.map +1 -1
  411. package/components/skeleton/Skeleton.js +2 -0
  412. package/components/skeleton/Skeleton.js.map +1 -1
  413. package/components/skeleton/figures/Article.js +2 -0
  414. package/components/skeleton/figures/Article.js.map +1 -1
  415. package/components/skeleton/figures/Circle.js +2 -0
  416. package/components/skeleton/figures/Circle.js.map +1 -1
  417. package/components/skeleton/figures/Product.js +2 -0
  418. package/components/skeleton/figures/Product.js.map +1 -1
  419. package/components/skeleton/figures/Table.js +2 -0
  420. package/components/skeleton/figures/Table.js.map +1 -1
  421. package/components/slider/Slider.d.ts +1 -0
  422. package/components/slider/Slider.js +1 -0
  423. package/components/slider/Slider.js.map +1 -1
  424. package/components/slider/SliderInstance.js +2 -0
  425. package/components/slider/SliderInstance.js.map +1 -1
  426. package/components/slider/SliderProvider.js +2 -0
  427. package/components/slider/SliderProvider.js.map +1 -1
  428. package/components/space/Space.js +2 -0
  429. package/components/space/Space.js.map +1 -1
  430. package/components/switch/Switch.js +3 -0
  431. package/components/switch/Switch.js.map +1 -1
  432. package/components/table/Table.js +2 -0
  433. package/components/table/Table.js.map +1 -1
  434. package/components/tabs/Tabs.js +2 -0
  435. package/components/tabs/Tabs.js.map +1 -1
  436. package/components/tag/Tag.d.ts +1 -0
  437. package/components/tag/Tag.js +3 -0
  438. package/components/tag/Tag.js.map +1 -1
  439. package/components/tag/TagGroup.js +2 -0
  440. package/components/tag/TagGroup.js.map +1 -1
  441. package/components/textarea/Textarea.js +3 -0
  442. package/components/textarea/Textarea.js.map +1 -1
  443. package/components/timeline/Timeline.js +2 -0
  444. package/components/timeline/Timeline.js.map +1 -1
  445. package/components/timeline/TimelineItem.js +2 -0
  446. package/components/timeline/TimelineItem.js.map +1 -1
  447. package/components/toggle-button/ToggleButton.js +3 -0
  448. package/components/toggle-button/ToggleButton.js.map +1 -1
  449. package/components/toggle-button/ToggleButtonGroup.js +6 -4
  450. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  451. package/components/tooltip/Tooltip.js +2 -0
  452. package/components/tooltip/Tooltip.js.map +1 -1
  453. package/components/tooltip/TooltipPortal.js +2 -0
  454. package/components/tooltip/TooltipPortal.js.map +1 -1
  455. package/components/upload/Upload.d.ts +1 -0
  456. package/components/upload/Upload.js +3 -0
  457. package/components/upload/Upload.js.map +1 -1
  458. package/components/upload/useUpload.js +2 -0
  459. package/components/upload/useUpload.js.map +1 -1
  460. package/components/visually-hidden/VisuallyHidden.js +2 -0
  461. package/components/visually-hidden/VisuallyHidden.js.map +1 -1
  462. package/elements/Element.js +2 -0
  463. package/elements/Element.js.map +1 -1
  464. package/elements/typography/H.js +2 -0
  465. package/elements/typography/H.js.map +1 -1
  466. package/es/components/accordion/AccordionContent.js +2 -0
  467. package/es/components/accordion/AccordionContent.js.map +1 -1
  468. package/es/components/anchor/Anchor.js +2 -0
  469. package/es/components/anchor/Anchor.js.map +1 -1
  470. package/es/components/autocomplete/Autocomplete.js +79 -77
  471. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  472. package/es/components/avatar/Avatar.js +2 -0
  473. package/es/components/avatar/Avatar.js.map +1 -1
  474. package/es/components/avatar/AvatarGroup.js +2 -0
  475. package/es/components/avatar/AvatarGroup.js.map +1 -1
  476. package/es/components/badge/Badge.js +2 -0
  477. package/es/components/badge/Badge.js.map +1 -1
  478. package/es/components/breadcrumb/BreadcrumbItem.js +2 -0
  479. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  480. package/es/components/button/Button.js +3 -0
  481. package/es/components/button/Button.js.map +1 -1
  482. package/es/components/checkbox/Checkbox.js +3 -0
  483. package/es/components/checkbox/Checkbox.js.map +1 -1
  484. package/es/components/date-picker/DatePicker.js +3 -0
  485. package/es/components/date-picker/DatePicker.js.map +1 -1
  486. package/es/components/date-picker/DatePickerProvider.js +2 -0
  487. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  488. package/es/components/dropdown/Dropdown.js +1 -0
  489. package/es/components/dropdown/Dropdown.js.map +1 -1
  490. package/es/components/flex/Container.js +2 -0
  491. package/es/components/flex/Container.js.map +1 -1
  492. package/es/components/flex/Flex.d.ts +1 -1
  493. package/es/components/flex/Flex.js +1 -1
  494. package/es/components/flex/Flex.js.map +1 -1
  495. package/es/components/flex/export.d.ts +5 -0
  496. package/es/components/flex/export.js +6 -0
  497. package/es/components/flex/export.js.map +1 -0
  498. package/es/components/flex/index.d.ts +2 -5
  499. package/es/components/flex/index.js +2 -5
  500. package/es/components/flex/index.js.map +1 -1
  501. package/es/components/form-label/FormLabel.d.ts +1 -0
  502. package/es/components/form-label/FormLabel.js +3 -0
  503. package/es/components/form-label/FormLabel.js.map +1 -1
  504. package/es/components/form-row/FormRow.js +2 -0
  505. package/es/components/form-row/FormRow.js.map +1 -1
  506. package/es/components/form-set/FormSet.js +2 -0
  507. package/es/components/form-set/FormSet.js.map +1 -1
  508. package/es/components/form-status/FormStatus.js +2 -0
  509. package/es/components/form-status/FormStatus.js.map +1 -1
  510. package/es/components/global-error/GlobalError.js +2 -0
  511. package/es/components/global-error/GlobalError.js.map +1 -1
  512. package/es/components/global-status/GlobalStatus.js +2 -0
  513. package/es/components/global-status/GlobalStatus.js.map +1 -1
  514. package/es/components/grid/Grid.d.ts +1 -1
  515. package/es/components/grid/Grid.js +1 -1
  516. package/es/components/grid/Grid.js.map +1 -1
  517. package/es/components/grid/export.d.ts +2 -0
  518. package/es/components/grid/export.js +3 -0
  519. package/es/components/grid/export.js.map +1 -0
  520. package/es/components/grid/index.d.ts +2 -2
  521. package/es/components/grid/index.js +2 -2
  522. package/es/components/grid/index.js.map +1 -1
  523. package/es/components/heading/Heading.js +2 -0
  524. package/es/components/heading/Heading.js.map +1 -1
  525. package/es/components/help-button/HelpButton.js +2 -0
  526. package/es/components/help-button/HelpButton.js.map +1 -1
  527. package/es/components/help-button/HelpButtonInstance.js +2 -0
  528. package/es/components/help-button/HelpButtonInstance.js.map +1 -1
  529. package/es/components/icon/Icon.js +2 -0
  530. package/es/components/icon/Icon.js.map +1 -1
  531. package/es/components/icon-primary/IconPrimary.js +2 -0
  532. package/es/components/icon-primary/IconPrimary.js.map +1 -1
  533. package/es/components/info-card/InfoCard.js +2 -0
  534. package/es/components/info-card/InfoCard.js.map +1 -1
  535. package/es/components/input/Input.d.ts +4 -0
  536. package/es/components/input/Input.js +13 -2
  537. package/es/components/input/Input.js.map +1 -1
  538. package/es/components/input/InputPassword.js +3 -0
  539. package/es/components/input/InputPassword.js.map +1 -1
  540. package/es/components/input-masked/InputMasked.js +3 -0
  541. package/es/components/input-masked/InputMasked.js.map +1 -1
  542. package/es/components/input-masked/MultiInputMask.d.ts +9 -1
  543. package/es/components/input-masked/MultiInputMask.js +14 -7
  544. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  545. package/es/components/input-masked/TextMask.d.ts +1 -1
  546. package/es/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
  547. package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
  548. package/es/components/lib.d.ts +2 -0
  549. package/es/components/logo/Logo.js +2 -0
  550. package/es/components/logo/Logo.js.map +1 -1
  551. package/es/components/modal/Modal.js +2 -0
  552. package/es/components/modal/Modal.js.map +1 -1
  553. package/es/components/modal/ModalContent.js +2 -0
  554. package/es/components/modal/ModalContent.js.map +1 -1
  555. package/es/components/modal/parts/CloseButton.js +2 -0
  556. package/es/components/modal/parts/CloseButton.js.map +1 -1
  557. package/es/components/number-format/NumberFormat.js +2 -0
  558. package/es/components/number-format/NumberFormat.js.map +1 -1
  559. package/es/components/number-format/NumberUtils.js +2 -0
  560. package/es/components/number-format/NumberUtils.js.map +1 -1
  561. package/es/components/pagination/PaginationHelpers.js +2 -0
  562. package/es/components/pagination/PaginationHelpers.js.map +1 -1
  563. package/es/components/pagination/PaginationInfinity.js +2 -0
  564. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  565. package/es/components/pagination/PaginationProvider.js +2 -0
  566. package/es/components/pagination/PaginationProvider.js.map +1 -1
  567. package/es/components/progress-indicator/ProgressIndicator.js +2 -0
  568. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  569. package/es/components/radio/Radio.js +5 -2
  570. package/es/components/radio/Radio.js.map +1 -1
  571. package/es/components/radio/RadioGroup.js +6 -4
  572. package/es/components/radio/RadioGroup.js.map +1 -1
  573. package/es/components/radio/style/dnb-radio.css +106 -0
  574. package/es/components/radio/style/dnb-radio.min.css +1 -1
  575. package/es/components/radio/style/dnb-radio.scss +202 -0
  576. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
  577. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
  578. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
  579. package/es/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
  580. package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  581. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
  582. package/es/components/section/Section.js +2 -0
  583. package/es/components/section/Section.js.map +1 -1
  584. package/es/components/skeleton/Skeleton.js +2 -0
  585. package/es/components/skeleton/Skeleton.js.map +1 -1
  586. package/es/components/skeleton/figures/Article.js +2 -0
  587. package/es/components/skeleton/figures/Article.js.map +1 -1
  588. package/es/components/skeleton/figures/Circle.js +2 -0
  589. package/es/components/skeleton/figures/Circle.js.map +1 -1
  590. package/es/components/skeleton/figures/Product.js +2 -0
  591. package/es/components/skeleton/figures/Product.js.map +1 -1
  592. package/es/components/skeleton/figures/Table.js +2 -0
  593. package/es/components/skeleton/figures/Table.js.map +1 -1
  594. package/es/components/slider/Slider.d.ts +1 -0
  595. package/es/components/slider/Slider.js +1 -0
  596. package/es/components/slider/Slider.js.map +1 -1
  597. package/es/components/slider/SliderInstance.js +2 -0
  598. package/es/components/slider/SliderInstance.js.map +1 -1
  599. package/es/components/slider/SliderProvider.js +2 -0
  600. package/es/components/slider/SliderProvider.js.map +1 -1
  601. package/es/components/space/Space.js +2 -0
  602. package/es/components/space/Space.js.map +1 -1
  603. package/es/components/switch/Switch.js +3 -0
  604. package/es/components/switch/Switch.js.map +1 -1
  605. package/es/components/table/Table.js +2 -0
  606. package/es/components/table/Table.js.map +1 -1
  607. package/es/components/tabs/Tabs.js +2 -0
  608. package/es/components/tabs/Tabs.js.map +1 -1
  609. package/es/components/tag/Tag.d.ts +1 -0
  610. package/es/components/tag/Tag.js +3 -0
  611. package/es/components/tag/Tag.js.map +1 -1
  612. package/es/components/tag/TagGroup.js +2 -0
  613. package/es/components/tag/TagGroup.js.map +1 -1
  614. package/es/components/textarea/Textarea.js +3 -0
  615. package/es/components/textarea/Textarea.js.map +1 -1
  616. package/es/components/timeline/Timeline.js +2 -0
  617. package/es/components/timeline/Timeline.js.map +1 -1
  618. package/es/components/timeline/TimelineItem.js +2 -0
  619. package/es/components/timeline/TimelineItem.js.map +1 -1
  620. package/es/components/toggle-button/ToggleButton.js +3 -0
  621. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  622. package/es/components/toggle-button/ToggleButtonGroup.js +6 -4
  623. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  624. package/es/components/tooltip/Tooltip.js +2 -0
  625. package/es/components/tooltip/Tooltip.js.map +1 -1
  626. package/es/components/tooltip/TooltipPortal.js +2 -0
  627. package/es/components/tooltip/TooltipPortal.js.map +1 -1
  628. package/es/components/upload/Upload.d.ts +1 -0
  629. package/es/components/upload/Upload.js +3 -0
  630. package/es/components/upload/Upload.js.map +1 -1
  631. package/es/components/upload/useUpload.js +2 -0
  632. package/es/components/upload/useUpload.js.map +1 -1
  633. package/es/components/visually-hidden/VisuallyHidden.js +2 -0
  634. package/es/components/visually-hidden/VisuallyHidden.js.map +1 -1
  635. package/es/elements/Element.js +2 -0
  636. package/es/elements/Element.js.map +1 -1
  637. package/es/elements/typography/H.js +2 -0
  638. package/es/elements/typography/H.js.map +1 -1
  639. package/es/extensions/forms/DataContext/Provider/Provider.js +53 -43
  640. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  641. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +9 -6
  642. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  643. package/es/extensions/forms/Field/Email/Email.js +7 -5
  644. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  645. package/es/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  646. package/es/extensions/forms/Field/Expiry/Expiry.js +88 -0
  647. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  648. package/es/extensions/forms/Field/Expiry/index.d.ts +2 -0
  649. package/es/extensions/forms/Field/Expiry/index.js +3 -0
  650. package/es/extensions/forms/Field/Expiry/index.js.map +1 -0
  651. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
  652. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  653. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  654. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +9 -6
  655. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  656. package/es/extensions/forms/Field/Number/Number.js +48 -25
  657. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  658. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +9 -6
  659. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  660. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +34 -21
  661. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  662. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -4
  663. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  664. package/es/extensions/forms/Field/String/String.js +30 -20
  665. package/es/extensions/forms/Field/String/String.js.map +1 -1
  666. package/es/extensions/forms/Field/index.d.ts +1 -0
  667. package/es/extensions/forms/Field/index.js +1 -0
  668. package/es/extensions/forms/Field/index.js.map +1 -1
  669. package/es/extensions/forms/Field/style/dnb-forms-field.css +13 -0
  670. package/es/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
  671. package/es/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
  672. package/es/extensions/forms/FieldBlock/FieldBlock.js +36 -3
  673. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  674. package/es/extensions/forms/Form/Element/Element.js +2 -0
  675. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  676. package/es/extensions/forms/Form/Handler/Handler.js +2 -0
  677. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  678. package/es/extensions/forms/hooks/index.d.ts +3 -0
  679. package/es/extensions/forms/hooks/index.js +5 -1
  680. package/es/extensions/forms/hooks/index.js.map +1 -1
  681. package/es/extensions/forms/hooks/useDataValue.js +127 -62
  682. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  683. package/es/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  684. package/es/extensions/forms/hooks/useMountEffect.js +9 -0
  685. package/es/extensions/forms/hooks/useMountEffect.js.map +1 -0
  686. package/es/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  687. package/es/extensions/forms/hooks/useProcessManager.js +16 -0
  688. package/es/extensions/forms/hooks/useProcessManager.js.map +1 -0
  689. package/es/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  690. package/es/extensions/forms/hooks/useUpdateEffect.js +14 -0
  691. package/es/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  692. package/es/extensions/forms/style/dnb-forms.css +13 -0
  693. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  694. package/es/extensions/forms/types.d.ts +10 -2
  695. package/es/extensions/forms/types.js +2 -0
  696. package/es/extensions/forms/types.js.map +1 -1
  697. package/es/extensions/forms/utils/ajv.js +25 -1
  698. package/es/extensions/forms/utils/ajv.js.map +1 -1
  699. package/es/extensions/forms/utils/errors.d.ts +2 -0
  700. package/es/extensions/forms/utils/errors.js +10 -0
  701. package/es/extensions/forms/utils/errors.js.map +1 -0
  702. package/es/extensions/forms/utils/index.d.ts +1 -0
  703. package/es/extensions/forms/utils/index.js +1 -0
  704. package/es/extensions/forms/utils/index.js.map +1 -1
  705. package/es/extensions/payment-card/PaymentCard.js +2 -0
  706. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  707. package/es/fragments/drawer-list/DrawerListProvider.js +2 -0
  708. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  709. package/es/fragments/scroll-view/ScrollView.js +2 -0
  710. package/es/fragments/scroll-view/ScrollView.js.map +1 -1
  711. package/es/shared/Eufemia.d.ts +1 -1
  712. package/es/shared/Eufemia.js +2 -2
  713. package/es/shared/Eufemia.js.map +1 -1
  714. package/es/shared/MediaQuery.js +2 -0
  715. package/es/shared/MediaQuery.js.map +1 -1
  716. package/es/shared/Provider.js +2 -0
  717. package/es/shared/Provider.js.map +1 -1
  718. package/es/shared/Theme.js +2 -0
  719. package/es/shared/Theme.js.map +1 -1
  720. package/es/shared/VisibilityByTheme.js +2 -0
  721. package/es/shared/VisibilityByTheme.js.map +1 -1
  722. package/es/shared/index.js +2 -0
  723. package/es/shared/index.js.map +1 -1
  724. package/es/shared/locales/en-GB.d.ts +11 -0
  725. package/es/shared/locales/en-GB.js +12 -1
  726. package/es/shared/locales/en-GB.js.map +1 -1
  727. package/es/shared/locales/en-US.d.ts +11 -0
  728. package/es/shared/locales/index.d.ts +22 -0
  729. package/es/shared/locales/nb-NO.d.ts +11 -0
  730. package/es/shared/locales/nb-NO.js +12 -1
  731. package/es/shared/locales/nb-NO.js.map +1 -1
  732. package/es/shared/useMedia.js +2 -0
  733. package/es/shared/useMedia.js.map +1 -1
  734. package/es/shared/useMediaQuery.js +2 -0
  735. package/es/shared/useMediaQuery.js.map +1 -1
  736. package/es/shared/useTheme.js +2 -0
  737. package/es/shared/useTheme.js.map +1 -1
  738. package/es/shared/useTranslation.js +2 -0
  739. package/es/shared/useTranslation.js.map +1 -1
  740. package/es/style/dnb-ui-components.css +106 -0
  741. package/es/style/dnb-ui-components.min.css +1 -1
  742. package/es/style/dnb-ui-extensions.css +13 -0
  743. package/es/style/dnb-ui-extensions.min.css +1 -1
  744. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +126 -86
  745. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  746. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
  747. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  748. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +133 -93
  749. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  750. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
  751. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
  752. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  753. package/es/style/themes/theme-ui/ui-theme-components.css +126 -86
  754. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  755. package/es/style/themes/theme-ui/ui-theme-extensions.css +13 -0
  756. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  757. package/esm/dnb-ui-basis.min.mjs +1 -1
  758. package/esm/dnb-ui-components.min.mjs +1 -1
  759. package/esm/dnb-ui-elements.min.mjs +1 -1
  760. package/esm/dnb-ui-extensions.min.mjs +3 -3
  761. package/esm/dnb-ui-lib.min.mjs +1 -1
  762. package/extensions/forms/DataContext/Provider/Provider.js +53 -43
  763. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  764. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +9 -6
  765. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  766. package/extensions/forms/Field/Email/Email.js +7 -5
  767. package/extensions/forms/Field/Email/Email.js.map +1 -1
  768. package/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
  769. package/extensions/forms/Field/Expiry/Expiry.js +88 -0
  770. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
  771. package/extensions/forms/Field/Expiry/index.d.ts +2 -0
  772. package/extensions/forms/Field/Expiry/index.js +3 -0
  773. package/extensions/forms/Field/Expiry/index.js.map +1 -0
  774. package/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
  775. package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
  776. package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
  777. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +9 -6
  778. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  779. package/extensions/forms/Field/Number/Number.js +49 -26
  780. package/extensions/forms/Field/Number/Number.js.map +1 -1
  781. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +9 -6
  782. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  783. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +46 -33
  784. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  785. package/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -4
  786. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  787. package/extensions/forms/Field/String/String.js +31 -21
  788. package/extensions/forms/Field/String/String.js.map +1 -1
  789. package/extensions/forms/Field/index.d.ts +1 -0
  790. package/extensions/forms/Field/index.js +1 -0
  791. package/extensions/forms/Field/index.js.map +1 -1
  792. package/extensions/forms/Field/style/dnb-forms-field.css +13 -0
  793. package/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
  794. package/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
  795. package/extensions/forms/FieldBlock/FieldBlock.js +37 -3
  796. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  797. package/extensions/forms/Form/Element/Element.js +2 -0
  798. package/extensions/forms/Form/Element/Element.js.map +1 -1
  799. package/extensions/forms/Form/Handler/Handler.js +2 -0
  800. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  801. package/extensions/forms/hooks/index.d.ts +3 -0
  802. package/extensions/forms/hooks/index.js +5 -1
  803. package/extensions/forms/hooks/index.js.map +1 -1
  804. package/extensions/forms/hooks/useDataValue.js +128 -62
  805. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  806. package/extensions/forms/hooks/useMountEffect.d.ts +5 -0
  807. package/extensions/forms/hooks/useMountEffect.js +9 -0
  808. package/extensions/forms/hooks/useMountEffect.js.map +1 -0
  809. package/extensions/forms/hooks/useProcessManager.d.ts +6 -0
  810. package/extensions/forms/hooks/useProcessManager.js +16 -0
  811. package/extensions/forms/hooks/useProcessManager.js.map +1 -0
  812. package/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
  813. package/extensions/forms/hooks/useUpdateEffect.js +14 -0
  814. package/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
  815. package/extensions/forms/style/dnb-forms.css +13 -0
  816. package/extensions/forms/style/dnb-forms.min.css +1 -1
  817. package/extensions/forms/types.d.ts +10 -2
  818. package/extensions/forms/types.js +2 -0
  819. package/extensions/forms/types.js.map +1 -1
  820. package/extensions/forms/utils/ajv.js +25 -1
  821. package/extensions/forms/utils/ajv.js.map +1 -1
  822. package/extensions/forms/utils/errors.d.ts +2 -0
  823. package/extensions/forms/utils/errors.js +10 -0
  824. package/extensions/forms/utils/errors.js.map +1 -0
  825. package/extensions/forms/utils/index.d.ts +1 -0
  826. package/extensions/forms/utils/index.js +1 -0
  827. package/extensions/forms/utils/index.js.map +1 -1
  828. package/extensions/payment-card/PaymentCard.js +2 -0
  829. package/extensions/payment-card/PaymentCard.js.map +1 -1
  830. package/fragments/drawer-list/DrawerListProvider.js +2 -0
  831. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  832. package/fragments/scroll-view/ScrollView.js +2 -0
  833. package/fragments/scroll-view/ScrollView.js.map +1 -1
  834. package/package.json +1 -1
  835. package/shared/Eufemia.d.ts +1 -1
  836. package/shared/Eufemia.js +2 -2
  837. package/shared/Eufemia.js.map +1 -1
  838. package/shared/MediaQuery.js +2 -0
  839. package/shared/MediaQuery.js.map +1 -1
  840. package/shared/Provider.js +2 -0
  841. package/shared/Provider.js.map +1 -1
  842. package/shared/Theme.js +2 -0
  843. package/shared/Theme.js.map +1 -1
  844. package/shared/VisibilityByTheme.js +2 -0
  845. package/shared/VisibilityByTheme.js.map +1 -1
  846. package/shared/index.js +2 -0
  847. package/shared/index.js.map +1 -1
  848. package/shared/locales/en-GB.d.ts +11 -0
  849. package/shared/locales/en-GB.js +12 -1
  850. package/shared/locales/en-GB.js.map +1 -1
  851. package/shared/locales/en-US.d.ts +11 -0
  852. package/shared/locales/index.d.ts +22 -0
  853. package/shared/locales/nb-NO.d.ts +11 -0
  854. package/shared/locales/nb-NO.js +12 -1
  855. package/shared/locales/nb-NO.js.map +1 -1
  856. package/shared/useMedia.js +2 -0
  857. package/shared/useMedia.js.map +1 -1
  858. package/shared/useMediaQuery.js +2 -0
  859. package/shared/useMediaQuery.js.map +1 -1
  860. package/shared/useTheme.js +2 -0
  861. package/shared/useTheme.js.map +1 -1
  862. package/shared/useTranslation.js +2 -0
  863. package/shared/useTranslation.js.map +1 -1
  864. package/style/dnb-ui-components.css +106 -0
  865. package/style/dnb-ui-components.min.css +1 -1
  866. package/style/dnb-ui-extensions.css +13 -0
  867. package/style/dnb-ui-extensions.min.css +1 -1
  868. package/style/themes/theme-eiendom/eiendom-theme-components.css +126 -86
  869. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  870. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
  871. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  872. package/style/themes/theme-sbanken/sbanken-theme-components.css +133 -93
  873. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  874. package/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
  875. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
  876. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  877. package/style/themes/theme-ui/ui-theme-components.css +126 -86
  878. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  879. package/style/themes/theme-ui/ui-theme-extensions.css +13 -0
  880. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  881. package/umd/dnb-ui-basis.min.js +1 -1
  882. package/umd/dnb-ui-components.min.js +1 -1
  883. package/umd/dnb-ui-elements.min.js +1 -1
  884. package/umd/dnb-ui-extensions.min.js +2 -2
  885. package/umd/dnb-ui-lib.min.js +1 -1
@@ -19,18 +19,21 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
19
19
  function NationalIdentityNumber(props) {
20
20
  var _props$pattern, _props$label, _props$width;
21
21
  const sharedContext = (0, _react.useContext)(_Context.default);
22
+ const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
22
23
  const {
23
24
  validate = true,
24
25
  omitMask
25
26
  } = props;
27
+ const errorMessages = (0, _react.useMemo)(() => _objectSpread({
28
+ required: tr.nationalIdentityNumberErrorRequired,
29
+ pattern: tr.nationalIdentityNumberErrorPattern
30
+ }, props.errorMessages), [tr, props.errorMessages]);
31
+ const mask = (0, _react.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]);
26
32
  const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
27
33
  pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate ? '^[0-9]{11}$' : undefined,
28
34
  label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.nationalIdentityNumberLabel,
29
- errorMessages: _objectSpread({
30
- required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.nationalIdentityNumberErrorRequired,
31
- pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.nationalIdentityNumberErrorPattern
32
- }, props.errorMessages),
33
- mask: omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/],
35
+ errorMessages,
36
+ mask,
34
37
  width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium'
35
38
  });
36
39
  return _react.default.createElement(_String.default, stringComponentProps);
@@ -1 +1 @@
1
- {"version":3,"file":"NationalIdentityNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NationalIdentityNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","validate","omitMask","stringComponentProps","pattern","label","translation","Forms","nationalIdentityNumberLabel","errorMessages","required","nationalIdentityNumberErrorRequired","nationalIdentityNumberErrorPattern","mask","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.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 omitMask?: boolean\n validate?: boolean\n}\n\nfunction NationalIdentityNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const { validate = true, omitMask } = props\n\n const stringComponentProps: Props = {\n ...props,\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.nationalIdentityNumberLabel,\n errorMessages: {\n required:\n sharedContext?.translation.Forms\n .nationalIdentityNumberErrorRequired,\n pattern:\n sharedContext?.translation.Forms\n .nationalIdentityNumberErrorPattern,\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 /\\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\nNationalIdentityNumber._supportsSpacingProps = true\nexport default NationalIdentityNumber\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAsD,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAK,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAZ,MAAA,CAAAY,IAAA,CAAAF,MAAA,OAAAV,MAAA,CAAAa,qBAAA,QAAAC,OAAA,GAAAd,MAAA,CAAAa,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAhB,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAC,KAAA,CAAAP,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAb,OAAA,CAAAT,MAAA,CAAAyB,MAAA,OAAAC,OAAA,WAAAvB,GAAA,IAAAwB,eAAA,CAAAN,MAAA,EAAAlB,GAAA,EAAAsB,MAAA,CAAAtB,GAAA,SAAAH,MAAA,CAAA4B,yBAAA,GAAA5B,MAAA,CAAA6B,gBAAA,CAAAR,MAAA,EAAArB,MAAA,CAAA4B,yBAAA,CAAAH,MAAA,KAAAhB,OAAA,CAAAT,MAAA,CAAAyB,MAAA,GAAAC,OAAA,WAAAvB,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAoB,MAAA,EAAAlB,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAuB,MAAA,EAAAtB,GAAA,iBAAAkB,MAAA;AAAA,SAAAM,gBAAAxC,GAAA,EAAAgB,GAAA,EAAA2B,KAAA,IAAA3B,GAAA,GAAA4B,cAAA,CAAA5B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA2B,KAAA,EAAAA,KAAA,EAAAb,UAAA,QAAAe,YAAA,QAAAC,QAAA,oBAAA9C,GAAA,CAAAgB,GAAA,IAAA2B,KAAA,WAAA3C,GAAA;AAAA,SAAA4C,eAAAG,GAAA,QAAA/B,GAAA,GAAAgC,YAAA,CAAAD,GAAA,2BAAA/B,GAAA,gBAAAA,GAAA,GAAAiC,MAAA,CAAAjC,GAAA;AAAA,SAAAgC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAjC,IAAA,CAAA+B,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAOtD,SAASS,sBAAsBA,CAACC,KAAY,EAAE;EAAA,IAAAC,cAAA,EAAAC,YAAA,EAAAC,YAAA;EAC5C,MAAMC,aAAa,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAC/C,MAAM;IAAEC,QAAQ,GAAG,IAAI;IAAEC;EAAS,CAAC,GAAGR,KAAK;EAE3C,MAAMS,oBAA2B,GAAApC,aAAA,CAAAA,aAAA,KAC5B2B,KAAK;IACRU,OAAO,GAAAT,cAAA,GAAED,KAAK,CAACU,OAAO,cAAAT,cAAA,cAAAA,cAAA,GAAKM,QAAQ,GAAG,aAAa,GAAGZ,SAAU;IAChEgB,KAAK,GAAAT,YAAA,GACHF,KAAK,CAACW,KAAK,cAAAT,YAAA,cAAAA,YAAA,GACXE,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEQ,WAAW,CAACC,KAAK,CAACC,2BAA2B;IAC9DC,aAAa,EAAA1C,aAAA;MACX2C,QAAQ,EACNZ,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEQ,WAAW,CAACC,KAAK,CAC7BI,mCAAmC;MACxCP,OAAO,EACLN,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEQ,WAAW,CAACC,KAAK,CAC7BK;IAAkC,GACpClB,KAAK,CAACe,aAAa,CACvB;IACDI,IAAI,EAAEX,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,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL;IACLY,KAAK,GAAAjB,YAAA,GAAEH,KAAK,CAACoB,KAAK,cAAAjB,YAAA,cAAAA,YAAA,GAAI;EAAQ,EAC/B;EAED,OAAOrE,MAAA,CAAAQ,OAAA,CAAA+E,aAAA,CAACpF,OAAA,CAAAK,OAAe,EAAKmE,oBAAuB,CAAC;AACtD;AAEAV,sBAAsB,CAACuB,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GACpCxB,sBAAsB;AAAAyB,OAAA,CAAAlF,OAAA,GAAAiF,QAAA"}
1
+ {"version":3,"file":"NationalIdentityNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NationalIdentityNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","tr","translation","Forms","validate","omitMask","errorMessages","useMemo","required","nationalIdentityNumberErrorRequired","pattern","nationalIdentityNumberErrorPattern","mask","stringComponentProps","label","nationalIdentityNumberLabel","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.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 omitMask?: boolean\n validate?: boolean\n}\n\nfunction NationalIdentityNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const { validate = true, omitMask } = props\n\n const errorMessages = useMemo(\n () => ({\n required: tr.nationalIdentityNumberErrorRequired,\n pattern: tr.nationalIdentityNumberErrorPattern,\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 /\\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 pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.nationalIdentityNumberLabel,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nNationalIdentityNumber._supportsSpacingProps = true\nexport default NationalIdentityNumber\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -6,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
6
7
  exports.default = void 0;
7
8
  var _react = _interopRequireWildcard(require("react"));
8
9
  var _components = require("../../../../components");
10
+ var _Context = _interopRequireDefault(require("../../../../shared/Context"));
9
11
  var _classnames = _interopRequireDefault(require("classnames"));
10
12
  var _FieldBlock = _interopRequireDefault(require("../../FieldBlock"));
11
13
  var _hooks = require("../../hooks");
@@ -20,7 +22,9 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
20
22
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
21
23
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
22
24
  function NumberComponent(props) {
23
- var _props$schema, _props$width;
25
+ var _props$width;
26
+ const sharedContext = (0, _react.useContext)(_Context.default);
27
+ const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
24
28
  const {
25
29
  currency,
26
30
  percent,
@@ -32,6 +36,44 @@ function NumberComponent(props) {
32
36
  suffix,
33
37
  rightAligned
34
38
  } = props;
39
+ const errorMessages = (0, _react.useMemo)(() => {
40
+ var _props$minimum, _props$maximum, _props$exclusiveMinim, _props$exclusiveMaxim, _props$multipleOf;
41
+ return _objectSpread({
42
+ required: tr.inputErrorRequired,
43
+ minimum: tr.numberFieldErrorMinimum.replace('{minimum}', (_props$minimum = props.minimum) === null || _props$minimum === void 0 ? void 0 : _props$minimum.toString()),
44
+ maximum: tr.numberFieldErrorMaximum.replace('{maximum}', (_props$maximum = props.maximum) === null || _props$maximum === void 0 ? void 0 : _props$maximum.toString()),
45
+ exclusiveMinimum: tr.numberFieldErrorExclusiveMinimum.replace('{exclusiveMinimum}', (_props$exclusiveMinim = props.exclusiveMinimum) === null || _props$exclusiveMinim === void 0 ? void 0 : _props$exclusiveMinim.toString()),
46
+ exclusiveMaximum: tr.numberFieldErrorExclusiveMaximum.replace('{exclusiveMaximum}', (_props$exclusiveMaxim = props.exclusiveMaximum) === null || _props$exclusiveMaxim === void 0 ? void 0 : _props$exclusiveMaxim.toString()),
47
+ multipleOf: tr.numberFieldErrorMultipleOf.replace('{multipleOf}', (_props$multipleOf = props.multipleOf) === null || _props$multipleOf === void 0 ? void 0 : _props$multipleOf.toString())
48
+ }, props.errorMessages);
49
+ }, [tr, props.errorMessages, props.minimum, props.maximum, props.exclusiveMinimum, props.exclusiveMaximum, props.multipleOf]);
50
+ const schema = (0, _react.useMemo)(() => {
51
+ var _props$schema;
52
+ return (_props$schema = props.schema) !== null && _props$schema !== void 0 ? _props$schema : {
53
+ type: 'number',
54
+ minimum: props.minimum,
55
+ maximum: props.maximum,
56
+ exclusiveMinimum: props.exclusiveMinimum,
57
+ exclusiveMaximum: props.exclusiveMaximum,
58
+ multipleOf: props.multipleOf
59
+ };
60
+ }, [props.schema, props.minimum, props.maximum, props.exclusiveMinimum, props.exclusiveMaximum, props.multipleOf]);
61
+ const toInput = (0, _react.useCallback)(external => {
62
+ if (external === undefined) {
63
+ return '';
64
+ }
65
+ return external;
66
+ }, []);
67
+ const fromInput = (0, _react.useCallback)(_ref => {
68
+ let {
69
+ value,
70
+ numberValue
71
+ } = _ref;
72
+ if (value === '') {
73
+ return emptyValue;
74
+ }
75
+ return numberValue;
76
+ }, []);
35
77
  const maskProps = (0, _react.useMemo)(() => {
36
78
  if (currency) {
37
79
  return {
@@ -57,30 +99,10 @@ function NumberComponent(props) {
57
99
  };
58
100
  }, [currency, percent, mask, decimalLimit, decimalSymbol, thousandSeparator, prefix, suffix]);
59
101
  const preparedProps = _objectSpread(_objectSpread({}, props), {}, {
60
- schema: (_props$schema = props.schema) !== null && _props$schema !== void 0 ? _props$schema : {
61
- type: 'number',
62
- minimum: props.minimum,
63
- maximum: props.maximum,
64
- exclusiveMinimum: props.exclusiveMinimum,
65
- exclusiveMaximum: props.exclusiveMaximum,
66
- multipleOf: props.multipleOf
67
- },
68
- toInput: external => {
69
- if (external === undefined) {
70
- return '';
71
- }
72
- return external;
73
- },
74
- fromInput: _ref => {
75
- let {
76
- value,
77
- numberValue
78
- } = _ref;
79
- if (value === '') {
80
- return emptyValue;
81
- }
82
- return numberValue;
83
- },
102
+ errorMessages,
103
+ schema,
104
+ toInput,
105
+ fromInput,
84
106
  width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium'
85
107
  });
86
108
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"Number.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberComponent","props","_props$schema","_props$width","currency","percent","mask","thousandSeparator","decimalSymbol","decimalLimit","prefix","suffix","rightAligned","maskProps","useMemo","as_currency","as_percent","as_number","number_mask","includeThousandsSeparator","thousandsSeparatorSymbol","preparedProps","schema","type","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","toInput","external","fromInput","_ref","numberValue","emptyValue","width","id","name","className","autoComplete","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","disabled","info","warning","error","help","handleFocus","handleBlur","handleChange","useDataValue","createElement","classnames","forId","contentsWidth","pickSpacingProps","InputMasked","right","on_focus","on_blur","on_change","status","stretch","HelpButton","title","contents","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Number/Number.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { InputMasked, HelpButton } from '../../../../components'\nimport { InputMaskedProps } from '../../../../components/InputMasked'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minimum?: string\n maximum?: string\n exclusiveMinimum?: string\n exclusiveMaximum?: string\n multipleOf?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<number, undefined, ErrorMessages> & {\n inputClassName?: string\n currency?: InputMaskedProps['as_currency']\n percent?: InputMaskedProps['as_percent']\n mask?: InputMaskedProps['mask']\n // Formatting\n thousandSeparator?: string | true\n decimalSymbol?: string\n decimalLimit?: number\n prefix?: string\n suffix?: string\n // Validation\n minimum?: number // aka greater than or equal to\n maximum?: number // aka less than or equal to\n exclusiveMinimum?: number // aka greater than\n exclusiveMaximum?: number // aka less than\n multipleOf?: number\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n rightAligned?: boolean\n }\n\nfunction NumberComponent(props: Props) {\n const {\n currency,\n percent,\n mask,\n thousandSeparator,\n decimalSymbol,\n decimalLimit = 12,\n prefix,\n suffix,\n rightAligned,\n } = props\n\n const maskProps: Partial<InputMaskedProps> = useMemo(() => {\n if (currency) {\n return {\n as_currency: currency,\n }\n }\n if (percent) {\n return {\n as_percent: percent,\n }\n }\n // Custom mask based on props\n return {\n as_number: true,\n mask,\n number_mask: {\n decimalLimit,\n decimalSymbol,\n includeThousandsSeparator: thousandSeparator !== undefined,\n thousandsSeparatorSymbol:\n thousandSeparator === true ? ' ' : thousandSeparator,\n prefix,\n suffix,\n },\n }\n }, [\n currency,\n percent,\n mask,\n decimalLimit,\n decimalSymbol,\n thousandSeparator,\n prefix,\n suffix,\n ])\n\n const preparedProps: Props = {\n ...props,\n schema: props.schema ?? {\n type: 'number',\n minimum: props.minimum,\n maximum: props.maximum,\n exclusiveMinimum: props.exclusiveMinimum,\n exclusiveMaximum: props.exclusiveMaximum,\n multipleOf: props.multipleOf,\n },\n toInput: (external: number | undefined) => {\n if (external === undefined) {\n return ''\n }\n return external\n },\n fromInput: ({\n value,\n numberValue,\n }: {\n value: string\n numberValue: number\n }) => {\n if (value === '') {\n return emptyValue\n }\n return numberValue\n },\n width: props.width ?? 'medium',\n }\n\n const {\n id,\n name,\n className,\n autoComplete,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n disabled,\n info,\n warning,\n error,\n help,\n emptyValue,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary}\n info={info}\n warning={warning}\n error={error}\n contentsWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n <InputMasked\n id={id}\n name={name}\n autoComplete={autoComplete}\n className={classnames(\n 'dnb-forms-field-number__input',\n inputClassName\n )}\n placeholder={placeholder}\n value={value}\n {...maskProps}\n right={rightAligned}\n on_focus={handleFocus}\n on_blur={handleBlur}\n on_change={handleChange}\n disabled={disabled}\n status={error ? 'error' : undefined}\n stretch={width !== undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n}\n\nNumberComponent._supportsSpacingProps = true\nexport default NumberComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Number.js","names":["_react","_interopRequireWildcard","require","_components","_Context","_interopRequireDefault","_classnames","_FieldBlock","_hooks","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberComponent","props","_props$width","sharedContext","useContext","SharedContext","tr","translation","Forms","currency","percent","mask","thousandSeparator","decimalSymbol","decimalLimit","prefix","suffix","rightAligned","errorMessages","useMemo","_props$minimum","_props$maximum","_props$exclusiveMinim","_props$exclusiveMaxim","_props$multipleOf","required","inputErrorRequired","minimum","numberFieldErrorMinimum","replace","toString","maximum","numberFieldErrorMaximum","exclusiveMinimum","numberFieldErrorExclusiveMinimum","exclusiveMaximum","numberFieldErrorExclusiveMaximum","multipleOf","numberFieldErrorMultipleOf","schema","_props$schema","type","toInput","useCallback","external","fromInput","_ref","numberValue","emptyValue","maskProps","as_currency","as_percent","as_number","number_mask","includeThousandsSeparator","thousandsSeparatorSymbol","preparedProps","width","id","name","className","autoComplete","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","disabled","info","warning","error","help","handleFocus","handleBlur","handleChange","useDataValue","createElement","classnames","forId","contentsWidth","pickSpacingProps","InputMasked","right","on_focus","on_blur","on_change","status","stretch","HelpButton","title","contents","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Number/Number.tsx"],"sourcesContent":["import React, { useContext, useMemo, useCallback } from 'react'\nimport { JSONSchema7 } from 'json-schema'\nimport { InputMasked, HelpButton } from '../../../../components'\nimport { InputMaskedProps } from '../../../../components/InputMasked'\nimport SharedContext from '../../../../shared/Context'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minimum?: string\n maximum?: string\n exclusiveMinimum?: string\n exclusiveMaximum?: string\n multipleOf?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<number, undefined, ErrorMessages> & {\n inputClassName?: string\n currency?: InputMaskedProps['as_currency']\n percent?: InputMaskedProps['as_percent']\n mask?: InputMaskedProps['mask']\n // Formatting\n thousandSeparator?: string | true\n decimalSymbol?: string\n decimalLimit?: number\n prefix?: string\n suffix?: string\n // Validation\n minimum?: number // aka greater than or equal to\n maximum?: number // aka less than or equal to\n exclusiveMinimum?: number // aka greater than\n exclusiveMaximum?: number // aka less than\n multipleOf?: number\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n rightAligned?: boolean\n }\n\nfunction NumberComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const {\n currency,\n percent,\n mask,\n thousandSeparator,\n decimalSymbol,\n decimalLimit = 12,\n prefix,\n suffix,\n rightAligned,\n } = props\n\n const errorMessages = useMemo(\n () => ({\n required: tr.inputErrorRequired,\n minimum: tr.numberFieldErrorMinimum.replace(\n '{minimum}',\n props.minimum?.toString()\n ),\n maximum: tr.numberFieldErrorMaximum.replace(\n '{maximum}',\n props.maximum?.toString()\n ),\n exclusiveMinimum: tr.numberFieldErrorExclusiveMinimum.replace(\n '{exclusiveMinimum}',\n props.exclusiveMinimum?.toString()\n ),\n exclusiveMaximum: tr.numberFieldErrorExclusiveMaximum.replace(\n '{exclusiveMaximum}',\n props.exclusiveMaximum?.toString()\n ),\n multipleOf: tr.numberFieldErrorMultipleOf.replace(\n '{multipleOf}',\n props.multipleOf?.toString()\n ),\n ...props.errorMessages,\n }),\n [\n tr,\n props.errorMessages,\n props.minimum,\n props.maximum,\n props.exclusiveMinimum,\n props.exclusiveMaximum,\n props.multipleOf,\n ]\n )\n const schema = useMemo<JSONSchema7>(\n () =>\n props.schema ?? {\n type: 'number',\n minimum: props.minimum,\n maximum: props.maximum,\n exclusiveMinimum: props.exclusiveMinimum,\n exclusiveMaximum: props.exclusiveMaximum,\n multipleOf: props.multipleOf,\n },\n [\n props.schema,\n props.minimum,\n props.maximum,\n props.exclusiveMinimum,\n props.exclusiveMaximum,\n props.multipleOf,\n ]\n )\n\n const toInput = useCallback((external: number | undefined) => {\n if (external === undefined) {\n return ''\n }\n return external\n }, [])\n const fromInput = useCallback(\n ({ value, numberValue }: { value: string; numberValue: number }) => {\n if (value === '') {\n return emptyValue\n }\n return numberValue\n },\n []\n )\n\n const maskProps: Partial<InputMaskedProps> = useMemo(() => {\n if (currency) {\n return {\n as_currency: currency,\n }\n }\n if (percent) {\n return {\n as_percent: percent,\n }\n }\n // Custom mask based on props\n return {\n as_number: true,\n mask,\n number_mask: {\n decimalLimit,\n decimalSymbol,\n includeThousandsSeparator: thousandSeparator !== undefined,\n thousandsSeparatorSymbol:\n thousandSeparator === true ? ' ' : thousandSeparator,\n prefix,\n suffix,\n },\n }\n }, [\n currency,\n percent,\n mask,\n decimalLimit,\n decimalSymbol,\n thousandSeparator,\n prefix,\n suffix,\n ])\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n toInput,\n fromInput,\n width: props.width ?? 'medium',\n }\n\n const {\n id,\n name,\n className,\n autoComplete,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n disabled,\n info,\n warning,\n error,\n help,\n emptyValue,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary}\n info={info}\n warning={warning}\n error={error}\n contentsWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n <InputMasked\n id={id}\n name={name}\n autoComplete={autoComplete}\n className={classnames(\n 'dnb-forms-field-number__input',\n inputClassName\n )}\n placeholder={placeholder}\n value={value}\n {...maskProps}\n right={rightAligned}\n on_focus={handleFocus}\n on_blur={handleBlur}\n on_change={handleChange}\n disabled={disabled}\n status={error ? 'error' : undefined}\n stretch={width !== undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n}\n\nNumberComponent._supportsSpacingProps = true\nexport default NumberComponent\n"],"mappings":"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"}
@@ -19,19 +19,22 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
19
19
  function OrganizationNumber(props) {
20
20
  var _props$pattern, _props$label, _props$width;
21
21
  const sharedContext = (0, _react.useContext)(_Context.default);
22
+ const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
22
23
  const {
23
24
  validate = true,
24
25
  omitMask
25
26
  } = props;
27
+ const errorMessages = (0, _react.useMemo)(() => _objectSpread({
28
+ required: tr.organizationNumberErrorRequired,
29
+ pattern: tr.organizationNumberErrorPattern
30
+ }, props.errorMessages), [tr, props.errorMessages]);
31
+ const mask = (0, _react.useMemo)(() => omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/], [omitMask]);
26
32
  const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
27
33
  className: 'dnb-forms-field-organization-number',
28
34
  pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate ? '^[0-9]{9}$' : undefined,
29
35
  label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.organizationNumberLabel,
30
- errorMessages: _objectSpread({
31
- required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.organizationNumberErrorRequired,
32
- pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.organizationNumberErrorPattern
33
- }, props.errorMessages),
34
- mask: omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/],
36
+ errorMessages,
37
+ mask,
35
38
  width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium'
36
39
  });
37
40
  return _react.default.createElement(_String.default, stringComponentProps);
@@ -1 +1 @@
1
- {"version":3,"file":"OrganizationNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","OrganizationNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","validate","omitMask","stringComponentProps","className","pattern","label","translation","Forms","organizationNumberLabel","errorMessages","required","organizationNumberErrorRequired","organizationNumberErrorPattern","mask","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/OrganizationNumber/OrganizationNumber.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 OrganizationNumber(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-organization-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{9}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.organizationNumberLabel,\n errorMessages: {\n required:\n sharedContext?.translation.Forms.organizationNumberErrorRequired,\n pattern:\n sharedContext?.translation.Forms.organizationNumberErrorPattern,\n ...props.errorMessages,\n },\n mask: omitMask\n ? [/\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/]\n : [/\\d/, /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/],\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nOrganizationNumber._supportsSpacingProps = true\nexport default OrganizationNumber\n"],"mappings":"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"}
1
+ {"version":3,"file":"OrganizationNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","OrganizationNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","tr","translation","Forms","validate","omitMask","errorMessages","useMemo","required","organizationNumberErrorRequired","pattern","organizationNumberErrorPattern","mask","stringComponentProps","className","label","organizationNumberLabel","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/OrganizationNumber/OrganizationNumber.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 OrganizationNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const { validate = true, omitMask } = props\n\n const errorMessages = useMemo(\n () => ({\n required: tr.organizationNumberErrorRequired,\n pattern: tr.organizationNumberErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n const mask = useMemo(\n () =>\n omitMask\n ? [/\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/, /\\d/]\n : [/\\d/, /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/, ' ', /\\d/, /\\d/, /\\d/],\n [omitMask]\n )\n\n const stringComponentProps: Props = {\n ...props,\n className: 'dnb-forms-field-organization-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{9}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.organizationNumberLabel,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nOrganizationNumber._supportsSpacingProps = true\nexport default OrganizationNumber\n"],"mappings":"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"}
@@ -25,18 +25,19 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
25
25
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
26
26
  function PhoneNumber(props) {
27
27
  const sharedContext = (0, _react.useContext)(_Context.default);
28
+ const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
29
+ const errorMessages = (0, _react.useMemo)(() => _objectSpread({
30
+ required: tr.phoneNumberErrorRequired
31
+ }, props === null || props === void 0 ? void 0 : props.errorMessages), [tr, props.errorMessages]);
28
32
  const defaultProps = {
29
33
  value: '+47',
30
- errorMessages: _objectSpread({
31
- required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.phoneNumberErrorRequired
32
- }, props === null || props === void 0 ? void 0 : props.errorMessages)
34
+ errorMessages
33
35
  };
34
36
  const preparedProps = _objectSpread(_objectSpread({}, defaultProps), props);
35
37
  const {
36
38
  className,
37
39
  countryCodeFieldClassName,
38
40
  numberFieldClassName,
39
- layout = 'vertical',
40
41
  countryCodePlaceholder,
41
42
  placeholder,
42
43
  countryCodeLabel,
@@ -50,6 +51,10 @@ function PhoneNumber(props) {
50
51
  disabled,
51
52
  width = 'large',
52
53
  help,
54
+ required,
55
+ validateInitially,
56
+ continuousValidation,
57
+ validateUnchanged,
53
58
  handleFocus,
54
59
  handleBlur,
55
60
  handleChange,
@@ -57,37 +62,18 @@ function PhoneNumber(props) {
57
62
  onNumberChange
58
63
  } = (0, _hooks.useDataValue)(preparedProps);
59
64
  const [, countryCode, phoneNumber] = value !== undefined ? value.match(/^(\+[^ ]+)? ?(.*)$/) : [undefined, '', ''];
60
- const getCountryData = function () {
61
- var _sharedContext$locale;
62
- let {
63
- filter = null
64
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
65
- const lang = (_sharedContext$locale = sharedContext.locale) === null || _sharedContext$locale === void 0 ? void 0 : _sharedContext$locale.split('-')[0];
66
- return _countries.default.filter(_ref => {
67
- let {
68
- cdc
69
- } = _ref;
70
- return !filter || `+${cdc}` === filter;
71
- }).sort((_ref2, _ref3) => {
72
- let {
73
- i18n: a
74
- } = _ref2;
75
- let {
76
- i18n: b
77
- } = _ref3;
78
- return a[lang] > b[lang] ? 1 : -1;
79
- }).map(country => makeObject(country, lang));
80
- };
81
65
  const singleCountryCodeData = (0, _react.useMemo)(() => {
66
+ var _sharedContext$locale;
82
67
  return getCountryData({
68
+ lang: (_sharedContext$locale = sharedContext.locale) === null || _sharedContext$locale === void 0 ? void 0 : _sharedContext$locale.split('-')[0],
83
69
  filter: countryCode
84
70
  });
85
71
  }, []);
86
- const handleCountryCodeChange = (0, _react.useCallback)(_ref4 => {
72
+ const handleCountryCodeChange = (0, _react.useCallback)(_ref => {
87
73
  var _data$selectedKey$tri, _data$selectedKey;
88
74
  let {
89
75
  data
90
- } = _ref4;
76
+ } = _ref;
91
77
  const countryCode = (_data$selectedKey$tri = data === null || data === void 0 ? void 0 : (_data$selectedKey = data.selectedKey) === null || _data$selectedKey === void 0 ? void 0 : _data$selectedKey.trim()) !== null && _data$selectedKey$tri !== void 0 ? _data$selectedKey$tri : emptyValue;
92
78
  if (!countryCode && !phoneNumber) {
93
79
  handleChange === null || handleChange === void 0 ? void 0 : handleChange(emptyValue);
@@ -106,13 +92,16 @@ function PhoneNumber(props) {
106
92
  handleChange === null || handleChange === void 0 ? void 0 : handleChange([countryCode, phoneNumber].filter(Boolean).join(' '));
107
93
  onNumberChange === null || onNumberChange === void 0 ? void 0 : onNumberChange(phoneNumber);
108
94
  }, [countryCode, emptyValue, handleChange, onNumberChange]);
109
- const onFocusHandler = _ref5 => {
95
+ const onFocusHandler = _ref2 => {
110
96
  let {
111
97
  dataList,
112
98
  updateData
113
- } = _ref5;
99
+ } = _ref2;
114
100
  if (dataList.length < 10) {
115
- updateData(getCountryData());
101
+ var _sharedContext$locale2;
102
+ updateData(getCountryData({
103
+ lang: (_sharedContext$locale2 = sharedContext.locale) === null || _sharedContext$locale2 === void 0 ? void 0 : _sharedContext$locale2.split('-')[0]
104
+ }));
116
105
  }
117
106
  handleFocus();
118
107
  };
@@ -125,9 +114,8 @@ function PhoneNumber(props) {
125
114
  }, (0, _utils.pickSpacingProps)(props)), _react.default.createElement(_components.Flex.Horizontal, null, _react.default.createElement(_components.Autocomplete, {
126
115
  className: (0, _classnames.default)('dnb-forms-field-phone-number__country-code', countryCodeFieldClassName),
127
116
  placeholder: countryCodePlaceholder !== null && countryCodePlaceholder !== void 0 ? countryCodePlaceholder : ' ',
128
- label_direction: layout,
117
+ label_direction: "vertical",
129
118
  label: countryCodeLabel !== null && countryCodeLabel !== void 0 ? countryCodeLabel : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.countryCodeLabel,
130
- mode: "async",
131
119
  data: singleCountryCodeData,
132
120
  value: countryCode,
133
121
  disabled: disabled,
@@ -136,6 +124,7 @@ function PhoneNumber(props) {
136
124
  on_change: handleCountryCodeChange,
137
125
  independent_width: true,
138
126
  search_numbers: true,
127
+ keep_value_and_selection: true,
139
128
  no_animation: props.noAnimation,
140
129
  stretch: width === 'stretch'
141
130
  }), _react.default.createElement(_String.default, {
@@ -155,7 +144,11 @@ function PhoneNumber(props) {
155
144
  error: error,
156
145
  disabled: disabled,
157
146
  width: "stretch",
158
- help: help
147
+ help: help,
148
+ required: required,
149
+ validateInitially: validateInitially,
150
+ continuousValidation: continuousValidation,
151
+ validateUnchanged: validateUnchanged
159
152
  })));
160
153
  }
161
154
  function makeObject(country, lang) {
@@ -166,6 +159,26 @@ function makeObject(country, lang) {
166
159
  content: `+${country.cdc} ${(_country$i18n$lang = country.i18n[lang]) !== null && _country$i18n$lang !== void 0 ? _country$i18n$lang : country.i18n.en}`
167
160
  };
168
161
  }
162
+ function getCountryData() {
163
+ let {
164
+ lang = 'en',
165
+ filter = null
166
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
167
+ return _countries.default.filter(_ref3 => {
168
+ let {
169
+ cdc
170
+ } = _ref3;
171
+ return !filter || `+${cdc}` === filter;
172
+ }).sort((_ref4, _ref5) => {
173
+ let {
174
+ i18n: a
175
+ } = _ref4;
176
+ let {
177
+ i18n: b
178
+ } = _ref5;
179
+ return a[lang] > b[lang] ? 1 : -1;
180
+ }).map(country => makeObject(country, lang));
181
+ }
169
182
  PhoneNumber._supportsSpacingProps = true;
170
183
  var _default = PhoneNumber;
171
184
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneNumber.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_countries","_String","_hooks","_FieldBlock","_utils","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","PhoneNumber","props","sharedContext","useContext","SharedContext","defaultProps","errorMessages","required","translation","Forms","phoneNumberErrorRequired","preparedProps","className","countryCodeFieldClassName","numberFieldClassName","layout","countryCodePlaceholder","placeholder","countryCodeLabel","label","phoneNumberLabel","numberMask","emptyValue","info","warning","error","disabled","width","help","handleFocus","handleBlur","handleChange","onCountryCodeChange","onNumberChange","useDataValue","countryCode","phoneNumber","match","getCountryData","_sharedContext$locale","lang","locale","split","countries","_ref","cdc","sort","_ref2","_ref3","i18n","a","b","map","country","makeObject","singleCountryCodeData","useMemo","handleCountryCodeChange","useCallback","_ref4","_data$selectedKey$tri","_data$selectedKey","data","selectedKey","trim","Boolean","join","handleNumberChange","onFocusHandler","_ref5","dataList","updateData","createElement","classnames","pickSpacingProps","Flex","Horizontal","Autocomplete","label_direction","mode","on_focus","on_blur","on_change","independent_width","search_numbers","no_animation","noAnimation","stretch","type","mask","onFocus","onBlur","onChange","_country$i18n$lang","selected_value","iso","content","en","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/PhoneNumber/PhoneNumber.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport { Autocomplete, Flex } from '../../../../components'\nimport { InputMaskedProps } from '../../../../components/InputMasked'\nimport classnames from 'classnames'\nimport countries from '../../constants/countries'\nimport StringComponent from '../String'\nimport { useDataValue } from '../../hooks'\nimport FieldBlock from '../../FieldBlock'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined> & {\n countryCodeFieldClassName?: string\n numberFieldClassName?: string\n countryCodePlaceholder?: string\n countryCodeLabel?: string\n numberMask?: InputMaskedProps['mask']\n width?: 'large' | 'stretch'\n onCountryCodeChange?: (value: string | undefined) => void\n onNumberChange?: (value: string | undefined) => void\n } & {\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n }\n\nfunction PhoneNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const defaultProps: Partial<Props> = {\n // Important for the default value to be defined here, and not after the useDataValue call, to avoid the UI jumping\n // back to +47 once the user empty the field so handleChange send out undefined.\n value: '+47',\n errorMessages: {\n required: sharedContext?.translation.Forms.phoneNumberErrorRequired,\n ...props?.errorMessages,\n },\n }\n const preparedProps: Props = {\n ...defaultProps,\n ...props,\n }\n\n const {\n className,\n countryCodeFieldClassName,\n numberFieldClassName,\n layout = 'vertical',\n countryCodePlaceholder,\n placeholder,\n countryCodeLabel,\n label = sharedContext?.translation.Forms.phoneNumberLabel,\n value,\n numberMask,\n emptyValue,\n info,\n warning,\n error,\n disabled,\n width = 'large',\n help,\n handleFocus,\n handleBlur,\n handleChange,\n onCountryCodeChange,\n onNumberChange,\n } = useDataValue(preparedProps)\n\n const [, countryCode, phoneNumber] =\n value !== undefined\n ? value.match(/^(\\+[^ ]+)? ?(.*)$/)\n : [undefined, '', '']\n\n const getCountryData = ({ filter = null } = {}) => {\n const lang = sharedContext.locale?.split('-')[0]\n return countries\n .filter(({ cdc }) => !filter || `+${cdc}` === filter)\n .sort(({ i18n: a }, { i18n: b }) => (a[lang] > b[lang] ? 1 : -1))\n .map((country) => makeObject(country, lang))\n }\n\n const singleCountryCodeData = useMemo(() => {\n return getCountryData({ filter: countryCode })\n }, [])\n\n const handleCountryCodeChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const countryCode = data?.selectedKey?.trim() ?? emptyValue\n\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onCountryCodeChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onCountryCodeChange?.(countryCode)\n },\n [phoneNumber, emptyValue, handleChange, onCountryCodeChange]\n )\n\n const handleNumberChange = useCallback(\n (phoneNumber: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onNumberChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onNumberChange?.(phoneNumber)\n },\n [countryCode, emptyValue, handleChange, onNumberChange]\n )\n\n const onFocusHandler = ({ dataList, updateData }) => {\n // because there can be more than one country with same cdc\n if (dataList.length < 10) {\n updateData(getCountryData())\n }\n handleFocus()\n }\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-phone-number', className)}\n width={width !== 'stretch' ? width : undefined}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <Flex.Horizontal>\n <Autocomplete\n className={classnames(\n 'dnb-forms-field-phone-number__country-code',\n countryCodeFieldClassName\n )}\n placeholder={countryCodePlaceholder ?? ' '}\n label_direction={layout}\n label={\n countryCodeLabel ??\n sharedContext?.translation.Forms.countryCodeLabel\n }\n mode=\"async\"\n data={singleCountryCodeData}\n value={countryCode}\n disabled={disabled}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryCodeChange}\n independent_width\n search_numbers\n no_animation={props.noAnimation}\n stretch={width === 'stretch'}\n />\n\n <StringComponent\n className={classnames(\n 'dnb-forms-field-phone-number__number',\n numberFieldClassName\n )}\n type=\"tel\"\n emptyValue=\"\"\n layout=\"vertical\"\n label={label ?? ' '}\n placeholder={placeholder ?? '00 00 00 00'}\n mask={\n numberMask ?? [\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ]\n }\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleNumberChange}\n value={phoneNumber}\n info={info}\n warning={warning}\n error={error}\n disabled={disabled}\n width=\"stretch\"\n help={help}\n />\n </Flex.Horizontal>\n </FieldBlock>\n )\n}\n\ntype CountryType = {\n cdc: string\n iso: string\n i18n: {\n en: string\n }\n}\n\nfunction makeObject(country: CountryType, lang: string) {\n return {\n selectedKey: `+${country.cdc}`,\n selected_value: `${country.iso} (+${country.cdc})`,\n content: `+${country.cdc} ${country.i18n[lang] ?? country.i18n.en}`,\n }\n}\n\nPhoneNumber._supportsSpacingProps = true\nexport default PhoneNumber\n"],"mappings":"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"}
1
+ {"version":3,"file":"PhoneNumber.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_countries","_String","_hooks","_FieldBlock","_utils","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","PhoneNumber","props","sharedContext","useContext","SharedContext","tr","translation","Forms","errorMessages","useMemo","required","phoneNumberErrorRequired","defaultProps","preparedProps","className","countryCodeFieldClassName","numberFieldClassName","countryCodePlaceholder","placeholder","countryCodeLabel","label","phoneNumberLabel","numberMask","emptyValue","info","warning","error","disabled","width","help","validateInitially","continuousValidation","validateUnchanged","handleFocus","handleBlur","handleChange","onCountryCodeChange","onNumberChange","useDataValue","countryCode","phoneNumber","match","singleCountryCodeData","_sharedContext$locale","getCountryData","lang","locale","split","handleCountryCodeChange","useCallback","_ref","_data$selectedKey$tri","_data$selectedKey","data","selectedKey","trim","Boolean","join","handleNumberChange","onFocusHandler","_ref2","dataList","updateData","_sharedContext$locale2","createElement","classnames","pickSpacingProps","Flex","Horizontal","Autocomplete","label_direction","on_focus","on_blur","on_change","independent_width","search_numbers","keep_value_and_selection","no_animation","noAnimation","stretch","type","layout","mask","onFocus","onBlur","onChange","makeObject","country","_country$i18n$lang","cdc","selected_value","iso","content","i18n","en","countries","_ref3","sort","_ref4","_ref5","a","b","map","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/PhoneNumber/PhoneNumber.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport { Autocomplete, Flex } from '../../../../components'\nimport { InputMaskedProps } from '../../../../components/InputMasked'\nimport classnames from 'classnames'\nimport countries from '../../constants/countries'\nimport StringComponent from '../String'\nimport { useDataValue } from '../../hooks'\nimport FieldBlock from '../../FieldBlock'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined> & {\n countryCodeFieldClassName?: string\n numberFieldClassName?: string\n countryCodePlaceholder?: string\n countryCodeLabel?: string\n numberMask?: InputMaskedProps['mask']\n width?: 'large' | 'stretch'\n onCountryCodeChange?: (value: string | undefined) => void\n onNumberChange?: (value: string | undefined) => void\n } & {\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n }\n\nfunction PhoneNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.phoneNumberErrorRequired,\n ...props?.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n\n const defaultProps: Partial<Props> = {\n // Important for the default value to be defined here, and not after the useDataValue call, to avoid the UI jumping\n // back to +47 once the user empty the field so handleChange send out undefined.\n value: '+47',\n errorMessages,\n }\n const preparedProps: Props = {\n ...defaultProps,\n ...props,\n }\n\n const {\n className,\n countryCodeFieldClassName,\n numberFieldClassName,\n countryCodePlaceholder,\n placeholder,\n countryCodeLabel,\n label = sharedContext?.translation.Forms.phoneNumberLabel,\n value,\n numberMask,\n emptyValue,\n info,\n warning,\n error,\n disabled,\n width = 'large',\n help,\n required,\n validateInitially,\n continuousValidation,\n validateUnchanged,\n handleFocus,\n handleBlur,\n handleChange,\n onCountryCodeChange,\n onNumberChange,\n } = useDataValue(preparedProps)\n\n const [, countryCode, phoneNumber] =\n value !== undefined\n ? value.match(/^(\\+[^ ]+)? ?(.*)$/)\n : [undefined, '', '']\n\n const singleCountryCodeData = useMemo(() => {\n return getCountryData({\n lang: sharedContext.locale?.split('-')[0],\n filter: countryCode,\n })\n }, [])\n\n const handleCountryCodeChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const countryCode = data?.selectedKey?.trim() ?? emptyValue\n\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onCountryCodeChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onCountryCodeChange?.(countryCode)\n },\n [phoneNumber, emptyValue, handleChange, onCountryCodeChange]\n )\n\n const handleNumberChange = useCallback(\n (phoneNumber: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onNumberChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onNumberChange?.(phoneNumber)\n },\n [countryCode, emptyValue, handleChange, onNumberChange]\n )\n\n const onFocusHandler = ({ dataList, updateData }) => {\n // because there can be more than one country with same cdc\n if (dataList.length < 10) {\n updateData(\n getCountryData({ lang: sharedContext.locale?.split('-')[0] })\n )\n }\n handleFocus()\n }\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-phone-number', className)}\n width={width !== 'stretch' ? width : undefined}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <Flex.Horizontal>\n <Autocomplete\n className={classnames(\n 'dnb-forms-field-phone-number__country-code',\n countryCodeFieldClassName\n )}\n placeholder={countryCodePlaceholder ?? ' '}\n label_direction=\"vertical\"\n label={\n countryCodeLabel ??\n sharedContext?.translation.Forms.countryCodeLabel\n }\n data={singleCountryCodeData}\n value={countryCode}\n disabled={disabled}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryCodeChange}\n independent_width\n search_numbers\n keep_value_and_selection\n no_animation={props.noAnimation}\n stretch={width === 'stretch'}\n />\n\n <StringComponent\n className={classnames(\n 'dnb-forms-field-phone-number__number',\n numberFieldClassName\n )}\n type=\"tel\"\n emptyValue=\"\"\n layout=\"vertical\"\n label={label ?? ' '}\n placeholder={placeholder ?? '00 00 00 00'}\n mask={\n numberMask ?? [\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ]\n }\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleNumberChange}\n value={phoneNumber}\n info={info}\n warning={warning}\n error={error}\n disabled={disabled}\n width=\"stretch\"\n help={help}\n required={required}\n validateInitially={validateInitially}\n continuousValidation={continuousValidation}\n validateUnchanged={validateUnchanged}\n />\n </Flex.Horizontal>\n </FieldBlock>\n )\n}\n\ntype CountryType = {\n cdc: string\n iso: string\n i18n: {\n en: string\n }\n}\n\nfunction makeObject(country: CountryType, lang: string) {\n return {\n selectedKey: `+${country.cdc}`,\n selected_value: `${country.iso} (+${country.cdc})`,\n content: `+${country.cdc} ${country.i18n[lang] ?? country.i18n.en}`,\n }\n}\n\nfunction getCountryData({ lang = 'en', filter = null } = {}) {\n return countries\n .filter(({ cdc }) => !filter || `+${cdc}` === filter)\n .sort(({ i18n: a }, { i18n: b }) => (a[lang] > b[lang] ? 1 : -1))\n .map((country) => makeObject(country, lang))\n}\n\nPhoneNumber._supportsSpacingProps = true\nexport default PhoneNumber\n"],"mappings":"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"}
@@ -21,12 +21,14 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
21
21
  function SelectCountry(props) {
22
22
  var _props$placeholder, _props$label, _sharedContext$locale;
23
23
  const sharedContext = (0, _react.useContext)(_Context.default);
24
+ const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
25
+ const errorMessages = (0, _react.useMemo)(() => _objectSpread({
26
+ required: tr.selectCountryErrorRequired
27
+ }, props.errorMessages), [tr, props.errorMessages]);
24
28
  const selectComponentProps = _objectSpread(_objectSpread({}, props), {}, {
25
29
  placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryPlaceholder,
26
30
  label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryLabel,
27
- errorMessages: _objectSpread({
28
- required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryErrorRequired
29
- }, props.errorMessages)
31
+ errorMessages
30
32
  });
31
33
  const lang = (_sharedContext$locale = sharedContext.locale) === null || _sharedContext$locale === void 0 ? void 0 : _sharedContext$locale.split('-')[0];
32
34
  const countryOptions = (0, _react.useMemo)(() => _countries.default.map(country => {
@@ -36,7 +38,7 @@ function SelectCountry(props) {
36
38
  value: country.iso,
37
39
  title: (_country$i18n$lang = country.i18n[lang]) !== null && _country$i18n$lang !== void 0 ? _country$i18n$lang : country.i18n.en
38
40
  });
39
- }), [sharedContext.locale]);
41
+ }), [lang]);
40
42
  return _react.default.createElement(_Selection.default, selectComponentProps, countryOptions);
41
43
  }
42
44
  SelectCountry._supportsSpacingProps = true;