@dnb/eufemia 10.52.1 → 10.54.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 (921) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/cjs/components/CountryFlag.d.ts +12 -0
  3. package/cjs/components/CountryFlag.js +24 -0
  4. package/cjs/components/CountryFlag.js.map +1 -0
  5. package/cjs/components/autocomplete/Autocomplete.js +2 -3
  6. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  7. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  8. package/cjs/components/checkbox/Checkbox.js +1 -2
  9. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  10. package/cjs/components/country-flag/CountryFlag.d.ts +11 -0
  11. package/cjs/components/country-flag/CountryFlag.js +48 -0
  12. package/cjs/components/country-flag/CountryFlag.js.map +1 -0
  13. package/cjs/components/country-flag/CountryFlagDocs.d.ts +2 -0
  14. package/cjs/components/country-flag/CountryFlagDocs.js +25 -0
  15. package/cjs/components/country-flag/CountryFlagDocs.js.map +1 -0
  16. package/cjs/components/country-flag/index.d.ts +7 -0
  17. package/cjs/components/country-flag/index.js +24 -0
  18. package/cjs/components/country-flag/index.js.map +1 -0
  19. package/cjs/components/country-flag/style/dnb-country-flag-icons.css +1087 -0
  20. package/cjs/components/country-flag/style/dnb-country-flag-icons.min.css +1 -0
  21. package/cjs/components/country-flag/style/dnb-country-flag-icons.scss +1088 -0
  22. package/cjs/components/country-flag/style/dnb-country-flag.css +42 -0
  23. package/cjs/components/country-flag/style/dnb-country-flag.min.css +1 -0
  24. package/cjs/components/country-flag/style/dnb-country-flag.scss +53 -0
  25. package/cjs/components/country-flag/style/index.d.ts +5 -0
  26. package/cjs/components/country-flag/style/index.js +4 -0
  27. package/cjs/components/country-flag/style/index.js.map +1 -0
  28. package/cjs/components/country-flag/style.d.ts +5 -0
  29. package/cjs/components/country-flag/style.js +4 -0
  30. package/cjs/components/country-flag/style.js.map +1 -0
  31. package/cjs/components/date-picker/DatePickerCalendar.js +1 -1
  32. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  33. package/cjs/components/date-picker/DatePickerInput.js +1 -2
  34. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  35. package/cjs/components/dialog/Dialog.js +3 -1
  36. package/cjs/components/dialog/Dialog.js.map +1 -1
  37. package/cjs/components/dialog/DialogDocs.d.ts +2 -0
  38. package/cjs/components/dialog/DialogDocs.js +120 -0
  39. package/cjs/components/dialog/DialogDocs.js.map +1 -0
  40. package/cjs/components/dropdown/Dropdown.js +1 -2
  41. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  42. package/cjs/components/global-status/GlobalStatus.js +2 -3
  43. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  44. package/cjs/components/index.d.ts +2 -1
  45. package/cjs/components/index.js +7 -0
  46. package/cjs/components/index.js.map +1 -1
  47. package/cjs/components/input-masked/InputMaskedHooks.js +1 -2
  48. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  49. package/cjs/components/input-masked/InputMaskedUtils.js +9 -5
  50. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  51. package/cjs/components/lib.d.ts +10 -1
  52. package/cjs/components/lib.js +8 -0
  53. package/cjs/components/lib.js.map +1 -1
  54. package/cjs/components/modal/Modal.d.ts +1 -0
  55. package/cjs/components/modal/Modal.js +4 -1
  56. package/cjs/components/modal/Modal.js.map +1 -1
  57. package/cjs/components/modal/ModalContent.js +4 -4
  58. package/cjs/components/modal/ModalContent.js.map +1 -1
  59. package/cjs/components/modal/style/dnb-modal.css +4 -0
  60. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  61. package/cjs/components/modal/style/dnb-modal.scss +5 -0
  62. package/cjs/components/modal/types.d.ts +4 -0
  63. package/cjs/components/modal/types.js.map +1 -1
  64. package/cjs/components/number-format/NumberUtils.d.ts +2 -2
  65. package/cjs/components/number-format/NumberUtils.js +1 -1
  66. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  67. package/cjs/components/pagination/Pagination.d.ts +3 -3
  68. package/cjs/components/pagination/PaginationBar.d.ts +1 -1
  69. package/cjs/components/pagination/PaginationBar.js.map +1 -1
  70. package/cjs/components/progress-indicator/ProgressIndicator.js +2 -2
  71. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  72. package/cjs/components/radio/Radio.js +1 -2
  73. package/cjs/components/radio/Radio.js.map +1 -1
  74. package/cjs/components/table/TableClickableHead.js +1 -1
  75. package/cjs/components/table/TableClickableHead.js.map +1 -1
  76. package/cjs/components/table/style/dnb-table.css +0 -9
  77. package/cjs/components/table/style/dnb-table.min.css +1 -1
  78. package/cjs/components/table/style/dnb-table.scss +3 -1
  79. package/cjs/components/table/style/table-accordion.scss +0 -10
  80. package/cjs/components/table/style/table-container.scss +3 -2
  81. package/cjs/components/table/style/table-td.scss +2 -1
  82. package/cjs/components/tabs/Tabs.js +2 -3
  83. package/cjs/components/tabs/Tabs.js.map +1 -1
  84. package/cjs/components/toggle-button/ToggleButton.js +2 -3
  85. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  86. package/cjs/components/upload/UploadDocs.js +2 -2
  87. package/cjs/components/upload/UploadDocs.js.map +1 -1
  88. package/cjs/components/upload/UploadFileListCell.js +2 -8
  89. package/cjs/components/upload/UploadFileListCell.js.map +1 -1
  90. package/cjs/components/upload/UploadInfo.js +3 -3
  91. package/cjs/components/upload/UploadInfo.js.map +1 -1
  92. package/cjs/components/upload/UploadVerify.js +2 -2
  93. package/cjs/components/upload/UploadVerify.js.map +1 -1
  94. package/cjs/extensions/forms/DataContext/Context.d.ts +13 -9
  95. package/cjs/extensions/forms/DataContext/Context.js +2 -4
  96. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  97. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  98. package/cjs/extensions/forms/DataContext/Provider/Provider.js +37 -24
  99. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  100. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  101. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  102. package/cjs/extensions/forms/DataContext/index.d.ts +3 -0
  103. package/cjs/extensions/forms/DataContext/index.js +5 -0
  104. package/cjs/extensions/forms/DataContext/index.js.map +1 -1
  105. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +11 -3
  106. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +30 -11
  107. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  108. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +3 -1
  109. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +51 -12
  110. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  111. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.d.ts +2 -0
  112. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +25 -0
  113. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -0
  114. package/cjs/extensions/forms/Field/Date/Date.js +21 -5
  115. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  116. package/cjs/extensions/forms/Field/Email/Email.js +13 -8
  117. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  118. package/cjs/extensions/forms/Field/Expiry/Expiry.js +42 -34
  119. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  120. package/cjs/extensions/forms/Field/Name/Name.js +20 -13
  121. package/cjs/extensions/forms/Field/Name/Name.js.map +1 -1
  122. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -1
  123. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +8 -17
  124. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  125. package/cjs/extensions/forms/Field/Number/Number.d.ts +4 -11
  126. package/cjs/extensions/forms/Field/Number/Number.js +14 -16
  127. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  128. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +4 -7
  129. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  130. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -0
  131. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +43 -30
  132. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  133. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +10 -2
  134. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +65 -21
  135. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  136. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +5 -0
  137. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  138. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +6 -6
  139. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
  140. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  141. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -1
  142. package/cjs/extensions/forms/Field/Selection/Selection.js +39 -18
  143. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  144. package/cjs/extensions/forms/Field/Slider/Slider.js +37 -13
  145. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
  146. package/cjs/extensions/forms/Field/String/String.d.ts +2 -9
  147. package/cjs/extensions/forms/Field/String/String.js +9 -12
  148. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  149. package/cjs/extensions/forms/Field/Toggle/Toggle.js +8 -1
  150. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  151. package/cjs/extensions/forms/Field/Upload/Upload.js +6 -8
  152. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  153. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  154. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +37 -14
  155. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  156. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
  157. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  158. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +2 -2
  159. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  160. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +6 -0
  161. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  162. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +6 -0
  163. package/cjs/extensions/forms/Form/Handler/Handler.js +1 -2
  164. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  165. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  166. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
  167. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js +9 -5
  168. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  169. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +12 -1
  170. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  171. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +5 -1
  172. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +9 -3
  173. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  174. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
  175. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +7 -5
  176. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
  177. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +7 -1
  178. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  179. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +4 -1
  180. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js +6 -2
  181. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +1 -1
  182. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  183. package/cjs/extensions/forms/Iterate/Array/Array.js +53 -29
  184. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  185. package/cjs/extensions/forms/Tools/Log.js +2 -2
  186. package/cjs/extensions/forms/Tools/Log.js.map +1 -1
  187. package/cjs/extensions/forms/Value/Date/Date.d.ts +5 -0
  188. package/cjs/extensions/forms/Value/Date/Date.js +27 -13
  189. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  190. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +4 -12
  191. package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  192. package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +3 -3
  193. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +1 -6
  194. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  195. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +1 -11
  196. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +37 -40
  197. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  198. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +2 -2
  199. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  200. package/cjs/extensions/forms/constants/countries.js +20 -20
  201. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  202. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  203. package/cjs/extensions/forms/constants/locales/en-GB.js +3 -2
  204. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  205. package/cjs/extensions/forms/constants/locales/en-US.d.ts +2 -1
  206. package/cjs/extensions/forms/constants/locales/index.d.ts +4 -2
  207. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  208. package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -2
  209. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  210. package/cjs/extensions/forms/hooks/index.d.ts +2 -1
  211. package/cjs/extensions/forms/hooks/index.js +1 -1
  212. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  213. package/cjs/extensions/forms/hooks/useErrorMessage.d.ts +3 -10
  214. package/cjs/extensions/forms/hooks/useErrorMessage.js.map +1 -1
  215. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +8 -5
  216. package/cjs/extensions/forms/hooks/useFieldProps.js +176 -79
  217. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  218. package/cjs/extensions/forms/hooks/usePath.d.ts +3 -0
  219. package/cjs/extensions/forms/hooks/usePath.js +2 -1
  220. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  221. package/cjs/extensions/forms/hooks/useProcessManager.js +1 -1
  222. package/cjs/extensions/forms/hooks/useProcessManager.js.map +1 -1
  223. package/cjs/extensions/forms/hooks/useTranslation.d.ts +4 -1
  224. package/cjs/extensions/forms/hooks/useTranslation.js +6 -3
  225. package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
  226. package/cjs/extensions/forms/hooks/useValueProps.d.ts +1 -1
  227. package/cjs/extensions/forms/hooks/useValueProps.js +2 -2
  228. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  229. package/cjs/extensions/forms/style/dnb-forms.css +7 -6
  230. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  231. package/cjs/extensions/forms/types.d.ts +61 -37
  232. package/cjs/extensions/forms/types.js +0 -17
  233. package/cjs/extensions/forms/types.js.map +1 -1
  234. package/cjs/extensions/forms/utils/FormError.d.ts +45 -0
  235. package/cjs/extensions/forms/utils/FormError.js +25 -0
  236. package/cjs/extensions/forms/utils/FormError.js.map +1 -0
  237. package/cjs/extensions/forms/utils/ajv.d.ts +17 -1
  238. package/cjs/extensions/forms/utils/ajv.js +82 -7
  239. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  240. package/cjs/extensions/forms/utils/errors.d.ts +1 -1
  241. package/cjs/extensions/forms/utils/errors.js.map +1 -1
  242. package/cjs/extensions/forms/utils/index.d.ts +2 -0
  243. package/cjs/extensions/forms/utils/index.js +24 -0
  244. package/cjs/extensions/forms/utils/index.js.map +1 -1
  245. package/cjs/fragments/drawer-list/DrawerList.js +1 -2
  246. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  247. package/cjs/fragments/drawer-list/DrawerListProvider.js +2 -3
  248. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  249. package/cjs/index.d.ts +2 -1
  250. package/cjs/index.js +7 -0
  251. package/cjs/index.js.map +1 -1
  252. package/cjs/shared/Context.d.ts +4 -4
  253. package/cjs/shared/Context.js.map +1 -1
  254. package/cjs/shared/Eufemia.d.ts +1 -1
  255. package/cjs/shared/Eufemia.js +2 -2
  256. package/cjs/shared/Eufemia.js.map +1 -1
  257. package/cjs/shared/component-helper.d.ts +2 -1
  258. package/cjs/shared/component-helper.js +9 -2
  259. package/cjs/shared/component-helper.js.map +1 -1
  260. package/cjs/shared/defaults.d.ts +1 -0
  261. package/cjs/shared/defaults.js +3 -1
  262. package/cjs/shared/defaults.js.map +1 -1
  263. package/cjs/shared/keycode.d.ts +75 -0
  264. package/cjs/shared/keycode.js +138 -0
  265. package/cjs/shared/keycode.js.map +1 -0
  266. package/cjs/shared/libs/Shortcuts.js +1 -3
  267. package/cjs/shared/libs/Shortcuts.js.map +1 -1
  268. package/cjs/shared/locales/nb-NO.js +2 -2
  269. package/cjs/shared/locales/nb-NO.js.map +1 -1
  270. package/cjs/shared/useTranslation.d.ts +11 -4
  271. package/cjs/shared/useTranslation.js +68 -22
  272. package/cjs/shared/useTranslation.js.map +1 -1
  273. package/cjs/style/core/scopes.scss +1 -1
  274. package/cjs/style/dnb-ui-basis.css +1 -1
  275. package/cjs/style/dnb-ui-basis.min.css +1 -1
  276. package/cjs/style/dnb-ui-body.css +1 -1
  277. package/cjs/style/dnb-ui-body.min.css +1 -1
  278. package/cjs/style/dnb-ui-components.css +1313 -186
  279. package/cjs/style/dnb-ui-components.min.css +3 -3
  280. package/cjs/style/dnb-ui-components.scss +2 -0
  281. package/cjs/style/dnb-ui-core.css +1 -1
  282. package/cjs/style/dnb-ui-core.min.css +1 -1
  283. package/cjs/style/dnb-ui-extensions.css +7 -6
  284. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  285. package/cjs/style/dnb-ui-forms.css +7 -6
  286. package/cjs/style/dnb-ui-forms.min.css +1 -1
  287. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +1308 -180
  288. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  289. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -6
  290. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  291. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +7 -6
  292. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  293. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +1308 -180
  294. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  295. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -6
  296. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  297. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +7 -6
  298. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  299. package/cjs/style/themes/theme-ui/ui-theme-components.css +1308 -180
  300. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  301. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +7 -6
  302. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  303. package/cjs/style/themes/theme-ui/ui-theme-forms.css +7 -6
  304. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  305. package/components/CountryFlag.d.ts +12 -0
  306. package/components/CountryFlag.js +4 -0
  307. package/components/CountryFlag.js.map +1 -0
  308. package/components/autocomplete/Autocomplete.js +1 -2
  309. package/components/autocomplete/Autocomplete.js.map +1 -1
  310. package/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  311. package/components/checkbox/Checkbox.js +1 -2
  312. package/components/checkbox/Checkbox.js.map +1 -1
  313. package/components/country-flag/CountryFlag.d.ts +11 -0
  314. package/components/country-flag/CountryFlag.js +38 -0
  315. package/components/country-flag/CountryFlag.js.map +1 -0
  316. package/components/country-flag/CountryFlagDocs.d.ts +2 -0
  317. package/components/country-flag/CountryFlagDocs.js +18 -0
  318. package/components/country-flag/CountryFlagDocs.js.map +1 -0
  319. package/components/country-flag/index.d.ts +7 -0
  320. package/components/country-flag/index.js +4 -0
  321. package/components/country-flag/index.js.map +1 -0
  322. package/components/country-flag/style/dnb-country-flag-icons.css +1087 -0
  323. package/components/country-flag/style/dnb-country-flag-icons.min.css +1 -0
  324. package/components/country-flag/style/dnb-country-flag-icons.scss +1088 -0
  325. package/components/country-flag/style/dnb-country-flag.css +42 -0
  326. package/components/country-flag/style/dnb-country-flag.min.css +1 -0
  327. package/components/country-flag/style/dnb-country-flag.scss +53 -0
  328. package/components/country-flag/style/index.d.ts +5 -0
  329. package/components/country-flag/style/index.js +1 -0
  330. package/components/country-flag/style/index.js.map +1 -0
  331. package/components/country-flag/style.d.ts +5 -0
  332. package/components/country-flag/style.js +1 -0
  333. package/components/country-flag/style.js.map +1 -0
  334. package/components/date-picker/DatePickerCalendar.js +1 -1
  335. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  336. package/components/date-picker/DatePickerInput.js +1 -2
  337. package/components/date-picker/DatePickerInput.js.map +1 -1
  338. package/components/dialog/Dialog.js +3 -1
  339. package/components/dialog/Dialog.js.map +1 -1
  340. package/components/dialog/DialogDocs.d.ts +2 -0
  341. package/components/dialog/DialogDocs.js +113 -0
  342. package/components/dialog/DialogDocs.js.map +1 -0
  343. package/components/dropdown/Dropdown.js +1 -2
  344. package/components/dropdown/Dropdown.js.map +1 -1
  345. package/components/global-status/GlobalStatus.js +1 -2
  346. package/components/global-status/GlobalStatus.js.map +1 -1
  347. package/components/index.d.ts +2 -1
  348. package/components/index.js +2 -1
  349. package/components/index.js.map +1 -1
  350. package/components/input-masked/InputMaskedHooks.js +1 -2
  351. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  352. package/components/input-masked/InputMaskedUtils.js +9 -5
  353. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  354. package/components/lib.d.ts +10 -1
  355. package/components/lib.js +3 -1
  356. package/components/lib.js.map +1 -1
  357. package/components/modal/Modal.d.ts +1 -0
  358. package/components/modal/Modal.js +4 -1
  359. package/components/modal/Modal.js.map +1 -1
  360. package/components/modal/ModalContent.js +4 -4
  361. package/components/modal/ModalContent.js.map +1 -1
  362. package/components/modal/style/dnb-modal.css +4 -0
  363. package/components/modal/style/dnb-modal.min.css +1 -1
  364. package/components/modal/style/dnb-modal.scss +5 -0
  365. package/components/modal/types.d.ts +4 -0
  366. package/components/modal/types.js.map +1 -1
  367. package/components/number-format/NumberUtils.d.ts +2 -2
  368. package/components/number-format/NumberUtils.js +1 -1
  369. package/components/number-format/NumberUtils.js.map +1 -1
  370. package/components/pagination/Pagination.d.ts +3 -3
  371. package/components/pagination/PaginationBar.d.ts +1 -1
  372. package/components/pagination/PaginationBar.js.map +1 -1
  373. package/components/progress-indicator/ProgressIndicator.js +2 -2
  374. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  375. package/components/radio/Radio.js +1 -2
  376. package/components/radio/Radio.js.map +1 -1
  377. package/components/table/TableClickableHead.js +1 -1
  378. package/components/table/TableClickableHead.js.map +1 -1
  379. package/components/table/style/dnb-table.css +0 -9
  380. package/components/table/style/dnb-table.min.css +1 -1
  381. package/components/table/style/dnb-table.scss +3 -1
  382. package/components/table/style/table-accordion.scss +0 -10
  383. package/components/table/style/table-container.scss +3 -2
  384. package/components/table/style/table-td.scss +2 -1
  385. package/components/tabs/Tabs.js +1 -2
  386. package/components/tabs/Tabs.js.map +1 -1
  387. package/components/toggle-button/ToggleButton.js +1 -2
  388. package/components/toggle-button/ToggleButton.js.map +1 -1
  389. package/components/upload/UploadDocs.js +2 -2
  390. package/components/upload/UploadDocs.js.map +1 -1
  391. package/components/upload/UploadFileListCell.js +2 -8
  392. package/components/upload/UploadFileListCell.js.map +1 -1
  393. package/components/upload/UploadInfo.js +3 -3
  394. package/components/upload/UploadInfo.js.map +1 -1
  395. package/components/upload/UploadVerify.js +2 -2
  396. package/components/upload/UploadVerify.js.map +1 -1
  397. package/es/components/CountryFlag.d.ts +12 -0
  398. package/es/components/CountryFlag.js +4 -0
  399. package/es/components/CountryFlag.js.map +1 -0
  400. package/es/components/autocomplete/Autocomplete.js +1 -2
  401. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  402. package/es/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
  403. package/es/components/checkbox/Checkbox.js +1 -2
  404. package/es/components/checkbox/Checkbox.js.map +1 -1
  405. package/es/components/country-flag/CountryFlag.d.ts +11 -0
  406. package/es/components/country-flag/CountryFlag.js +38 -0
  407. package/es/components/country-flag/CountryFlag.js.map +1 -0
  408. package/es/components/country-flag/CountryFlagDocs.d.ts +2 -0
  409. package/es/components/country-flag/CountryFlagDocs.js +18 -0
  410. package/es/components/country-flag/CountryFlagDocs.js.map +1 -0
  411. package/es/components/country-flag/index.d.ts +7 -0
  412. package/es/components/country-flag/index.js +4 -0
  413. package/es/components/country-flag/index.js.map +1 -0
  414. package/es/components/country-flag/style/dnb-country-flag-icons.css +1087 -0
  415. package/es/components/country-flag/style/dnb-country-flag-icons.min.css +1 -0
  416. package/es/components/country-flag/style/dnb-country-flag-icons.scss +1088 -0
  417. package/es/components/country-flag/style/dnb-country-flag.css +42 -0
  418. package/es/components/country-flag/style/dnb-country-flag.min.css +1 -0
  419. package/es/components/country-flag/style/dnb-country-flag.scss +53 -0
  420. package/es/components/country-flag/style/index.d.ts +5 -0
  421. package/es/components/country-flag/style/index.js +1 -0
  422. package/es/components/country-flag/style/index.js.map +1 -0
  423. package/es/components/country-flag/style.d.ts +5 -0
  424. package/es/components/country-flag/style.js +1 -0
  425. package/es/components/country-flag/style.js.map +1 -0
  426. package/es/components/date-picker/DatePickerCalendar.js +1 -1
  427. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  428. package/es/components/date-picker/DatePickerInput.js +1 -2
  429. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  430. package/es/components/dialog/Dialog.js +3 -1
  431. package/es/components/dialog/Dialog.js.map +1 -1
  432. package/es/components/dialog/DialogDocs.d.ts +2 -0
  433. package/es/components/dialog/DialogDocs.js +113 -0
  434. package/es/components/dialog/DialogDocs.js.map +1 -0
  435. package/es/components/dropdown/Dropdown.js +1 -2
  436. package/es/components/dropdown/Dropdown.js.map +1 -1
  437. package/es/components/global-status/GlobalStatus.js +1 -2
  438. package/es/components/global-status/GlobalStatus.js.map +1 -1
  439. package/es/components/index.d.ts +2 -1
  440. package/es/components/index.js +2 -1
  441. package/es/components/index.js.map +1 -1
  442. package/es/components/input-masked/InputMaskedHooks.js +1 -2
  443. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  444. package/es/components/input-masked/InputMaskedUtils.js +9 -5
  445. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  446. package/es/components/lib.d.ts +10 -1
  447. package/es/components/lib.js +3 -1
  448. package/es/components/lib.js.map +1 -1
  449. package/es/components/modal/Modal.d.ts +1 -0
  450. package/es/components/modal/Modal.js +4 -1
  451. package/es/components/modal/Modal.js.map +1 -1
  452. package/es/components/modal/ModalContent.js +4 -4
  453. package/es/components/modal/ModalContent.js.map +1 -1
  454. package/es/components/modal/style/dnb-modal.css +4 -0
  455. package/es/components/modal/style/dnb-modal.min.css +1 -1
  456. package/es/components/modal/style/dnb-modal.scss +5 -0
  457. package/es/components/modal/types.d.ts +4 -0
  458. package/es/components/modal/types.js.map +1 -1
  459. package/es/components/number-format/NumberUtils.d.ts +2 -2
  460. package/es/components/number-format/NumberUtils.js +1 -1
  461. package/es/components/number-format/NumberUtils.js.map +1 -1
  462. package/es/components/pagination/Pagination.d.ts +3 -3
  463. package/es/components/pagination/PaginationBar.d.ts +1 -1
  464. package/es/components/pagination/PaginationBar.js.map +1 -1
  465. package/es/components/progress-indicator/ProgressIndicator.js +2 -2
  466. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  467. package/es/components/radio/Radio.js +1 -2
  468. package/es/components/radio/Radio.js.map +1 -1
  469. package/es/components/table/TableClickableHead.js +1 -1
  470. package/es/components/table/TableClickableHead.js.map +1 -1
  471. package/es/components/table/style/dnb-table.css +0 -9
  472. package/es/components/table/style/dnb-table.min.css +1 -1
  473. package/es/components/table/style/dnb-table.scss +3 -1
  474. package/es/components/table/style/table-accordion.scss +0 -10
  475. package/es/components/table/style/table-container.scss +3 -2
  476. package/es/components/table/style/table-td.scss +2 -1
  477. package/es/components/tabs/Tabs.js +1 -2
  478. package/es/components/tabs/Tabs.js.map +1 -1
  479. package/es/components/toggle-button/ToggleButton.js +1 -2
  480. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  481. package/es/components/upload/UploadDocs.js +2 -2
  482. package/es/components/upload/UploadDocs.js.map +1 -1
  483. package/es/components/upload/UploadFileListCell.js +2 -8
  484. package/es/components/upload/UploadFileListCell.js.map +1 -1
  485. package/es/components/upload/UploadInfo.js +3 -3
  486. package/es/components/upload/UploadInfo.js.map +1 -1
  487. package/es/components/upload/UploadVerify.js +2 -2
  488. package/es/components/upload/UploadVerify.js.map +1 -1
  489. package/es/extensions/forms/DataContext/Context.d.ts +13 -9
  490. package/es/extensions/forms/DataContext/Context.js +1 -3
  491. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  492. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  493. package/es/extensions/forms/DataContext/Provider/Provider.js +35 -22
  494. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  495. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  496. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  497. package/es/extensions/forms/DataContext/index.d.ts +3 -0
  498. package/es/extensions/forms/DataContext/index.js +5 -0
  499. package/es/extensions/forms/DataContext/index.js.map +1 -1
  500. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +11 -3
  501. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +24 -9
  502. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  503. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +3 -1
  504. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +52 -13
  505. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  506. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.d.ts +2 -0
  507. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +18 -0
  508. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -0
  509. package/es/extensions/forms/Field/Date/Date.js +23 -6
  510. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  511. package/es/extensions/forms/Field/Email/Email.js +11 -8
  512. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  513. package/es/extensions/forms/Field/Expiry/Expiry.js +42 -34
  514. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  515. package/es/extensions/forms/Field/Name/Name.js +18 -13
  516. package/es/extensions/forms/Field/Name/Name.js.map +1 -1
  517. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -1
  518. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -15
  519. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  520. package/es/extensions/forms/Field/Number/Number.d.ts +4 -11
  521. package/es/extensions/forms/Field/Number/Number.js +15 -17
  522. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  523. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +4 -7
  524. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  525. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -0
  526. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +44 -31
  527. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  528. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +10 -2
  529. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +63 -21
  530. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  531. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +5 -0
  532. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  533. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +6 -6
  534. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
  535. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  536. package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -1
  537. package/es/extensions/forms/Field/Selection/Selection.js +37 -15
  538. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  539. package/es/extensions/forms/Field/Slider/Slider.js +38 -14
  540. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
  541. package/es/extensions/forms/Field/String/String.d.ts +2 -9
  542. package/es/extensions/forms/Field/String/String.js +10 -13
  543. package/es/extensions/forms/Field/String/String.js.map +1 -1
  544. package/es/extensions/forms/Field/Toggle/Toggle.js +9 -2
  545. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  546. package/es/extensions/forms/Field/Upload/Upload.js +7 -9
  547. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  548. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  549. package/es/extensions/forms/FieldBlock/FieldBlock.js +36 -13
  550. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  551. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
  552. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  553. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +2 -2
  554. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  555. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +6 -0
  556. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  557. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +6 -0
  558. package/es/extensions/forms/Form/Handler/Handler.js +1 -2
  559. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  560. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  561. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
  562. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js +8 -4
  563. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  564. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +12 -1
  565. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  566. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +5 -1
  567. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +9 -3
  568. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  569. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
  570. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +6 -4
  571. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
  572. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +7 -1
  573. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  574. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +4 -1
  575. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js +6 -2
  576. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +1 -1
  577. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  578. package/es/extensions/forms/Iterate/Array/Array.js +55 -31
  579. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  580. package/es/extensions/forms/Tools/Log.js +2 -2
  581. package/es/extensions/forms/Tools/Log.js.map +1 -1
  582. package/es/extensions/forms/Value/Date/Date.d.ts +5 -0
  583. package/es/extensions/forms/Value/Date/Date.js +25 -14
  584. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  585. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +4 -12
  586. package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  587. package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +3 -3
  588. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +1 -6
  589. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  590. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +1 -11
  591. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +37 -37
  592. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  593. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +2 -2
  594. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  595. package/es/extensions/forms/constants/countries.js +20 -20
  596. package/es/extensions/forms/constants/countries.js.map +1 -1
  597. package/es/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  598. package/es/extensions/forms/constants/locales/en-GB.js +3 -2
  599. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  600. package/es/extensions/forms/constants/locales/en-US.d.ts +2 -1
  601. package/es/extensions/forms/constants/locales/index.d.ts +4 -2
  602. package/es/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  603. package/es/extensions/forms/constants/locales/nb-NO.js +3 -2
  604. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  605. package/es/extensions/forms/hooks/index.d.ts +2 -1
  606. package/es/extensions/forms/hooks/index.js +1 -1
  607. package/es/extensions/forms/hooks/index.js.map +1 -1
  608. package/es/extensions/forms/hooks/useErrorMessage.d.ts +3 -10
  609. package/es/extensions/forms/hooks/useErrorMessage.js.map +1 -1
  610. package/es/extensions/forms/hooks/useFieldProps.d.ts +8 -5
  611. package/es/extensions/forms/hooks/useFieldProps.js +174 -78
  612. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  613. package/es/extensions/forms/hooks/usePath.d.ts +3 -0
  614. package/es/extensions/forms/hooks/usePath.js +2 -1
  615. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  616. package/es/extensions/forms/hooks/useProcessManager.js +1 -1
  617. package/es/extensions/forms/hooks/useProcessManager.js.map +1 -1
  618. package/es/extensions/forms/hooks/useTranslation.d.ts +4 -1
  619. package/es/extensions/forms/hooks/useTranslation.js +7 -4
  620. package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
  621. package/es/extensions/forms/hooks/useValueProps.d.ts +1 -1
  622. package/es/extensions/forms/hooks/useValueProps.js +2 -2
  623. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  624. package/es/extensions/forms/style/dnb-forms.css +7 -6
  625. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  626. package/es/extensions/forms/types.d.ts +61 -37
  627. package/es/extensions/forms/types.js +0 -13
  628. package/es/extensions/forms/types.js.map +1 -1
  629. package/es/extensions/forms/utils/FormError.d.ts +45 -0
  630. package/es/extensions/forms/utils/FormError.js +16 -0
  631. package/es/extensions/forms/utils/FormError.js.map +1 -0
  632. package/es/extensions/forms/utils/ajv.d.ts +17 -1
  633. package/es/extensions/forms/utils/ajv.js +72 -7
  634. package/es/extensions/forms/utils/ajv.js.map +1 -1
  635. package/es/extensions/forms/utils/errors.d.ts +1 -1
  636. package/es/extensions/forms/utils/errors.js.map +1 -1
  637. package/es/extensions/forms/utils/index.d.ts +2 -0
  638. package/es/extensions/forms/utils/index.js +2 -0
  639. package/es/extensions/forms/utils/index.js.map +1 -1
  640. package/es/fragments/drawer-list/DrawerList.js +1 -2
  641. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  642. package/es/fragments/drawer-list/DrawerListProvider.js +1 -2
  643. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  644. package/es/index.d.ts +2 -1
  645. package/es/index.js +2 -1
  646. package/es/index.js.map +1 -1
  647. package/es/shared/Context.d.ts +4 -4
  648. package/es/shared/Context.js.map +1 -1
  649. package/es/shared/Eufemia.d.ts +1 -1
  650. package/es/shared/Eufemia.js +2 -2
  651. package/es/shared/Eufemia.js.map +1 -1
  652. package/es/shared/component-helper.d.ts +2 -1
  653. package/es/shared/component-helper.js +2 -2
  654. package/es/shared/component-helper.js.map +1 -1
  655. package/es/shared/defaults.d.ts +1 -0
  656. package/es/shared/defaults.js +1 -0
  657. package/es/shared/defaults.js.map +1 -1
  658. package/es/shared/keycode.d.ts +75 -0
  659. package/es/shared/keycode.js +127 -0
  660. package/es/shared/keycode.js.map +1 -0
  661. package/es/shared/libs/Shortcuts.js +1 -2
  662. package/es/shared/libs/Shortcuts.js.map +1 -1
  663. package/es/shared/locales/nb-NO.js +2 -2
  664. package/es/shared/locales/nb-NO.js.map +1 -1
  665. package/es/shared/useTranslation.d.ts +11 -4
  666. package/es/shared/useTranslation.js +64 -22
  667. package/es/shared/useTranslation.js.map +1 -1
  668. package/es/style/core/scopes.scss +1 -1
  669. package/es/style/dnb-ui-basis.css +1 -1
  670. package/es/style/dnb-ui-basis.min.css +1 -1
  671. package/es/style/dnb-ui-body.css +1 -1
  672. package/es/style/dnb-ui-body.min.css +1 -1
  673. package/es/style/dnb-ui-components.css +1313 -186
  674. package/es/style/dnb-ui-components.min.css +3 -3
  675. package/es/style/dnb-ui-components.scss +2 -0
  676. package/es/style/dnb-ui-core.css +1 -1
  677. package/es/style/dnb-ui-core.min.css +1 -1
  678. package/es/style/dnb-ui-extensions.css +7 -6
  679. package/es/style/dnb-ui-extensions.min.css +1 -1
  680. package/es/style/dnb-ui-forms.css +7 -6
  681. package/es/style/dnb-ui-forms.min.css +1 -1
  682. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +1308 -180
  683. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  684. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -6
  685. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  686. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +7 -6
  687. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  688. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +1308 -180
  689. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  690. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -6
  691. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  692. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +7 -6
  693. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  694. package/es/style/themes/theme-ui/ui-theme-components.css +1308 -180
  695. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  696. package/es/style/themes/theme-ui/ui-theme-extensions.css +7 -6
  697. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  698. package/es/style/themes/theme-ui/ui-theme-forms.css +7 -6
  699. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  700. package/esm/dnb-ui-basis.min.mjs +1 -1
  701. package/esm/dnb-ui-components.min.mjs +1 -1
  702. package/esm/dnb-ui-elements.min.mjs +1 -1
  703. package/esm/dnb-ui-extensions.min.mjs +5 -5
  704. package/esm/dnb-ui-lib.min.mjs +1 -1
  705. package/extensions/forms/DataContext/Context.d.ts +13 -9
  706. package/extensions/forms/DataContext/Context.js +1 -3
  707. package/extensions/forms/DataContext/Context.js.map +1 -1
  708. package/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  709. package/extensions/forms/DataContext/Provider/Provider.js +35 -22
  710. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  711. package/extensions/forms/DataContext/Provider/ProviderDocs.js +1 -1
  712. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  713. package/extensions/forms/DataContext/index.d.ts +3 -0
  714. package/extensions/forms/DataContext/index.js +5 -0
  715. package/extensions/forms/DataContext/index.js.map +1 -1
  716. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +11 -3
  717. package/extensions/forms/Field/ArraySelection/ArraySelection.js +30 -11
  718. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  719. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +3 -1
  720. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +52 -13
  721. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  722. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.d.ts +2 -0
  723. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +18 -0
  724. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -0
  725. package/extensions/forms/Field/Date/Date.js +23 -6
  726. package/extensions/forms/Field/Date/Date.js.map +1 -1
  727. package/extensions/forms/Field/Email/Email.js +11 -8
  728. package/extensions/forms/Field/Email/Email.js.map +1 -1
  729. package/extensions/forms/Field/Expiry/Expiry.js +42 -34
  730. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  731. package/extensions/forms/Field/Name/Name.js +18 -13
  732. package/extensions/forms/Field/Name/Name.js.map +1 -1
  733. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -1
  734. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -15
  735. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  736. package/extensions/forms/Field/Number/Number.d.ts +4 -11
  737. package/extensions/forms/Field/Number/Number.js +15 -17
  738. package/extensions/forms/Field/Number/Number.js.map +1 -1
  739. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +4 -7
  740. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  741. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -0
  742. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +44 -31
  743. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  744. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +10 -2
  745. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +63 -21
  746. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  747. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +5 -0
  748. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  749. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +6 -6
  750. package/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
  751. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  752. package/extensions/forms/Field/Selection/Selection.d.ts +2 -1
  753. package/extensions/forms/Field/Selection/Selection.js +38 -17
  754. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  755. package/extensions/forms/Field/Slider/Slider.js +38 -14
  756. package/extensions/forms/Field/Slider/Slider.js.map +1 -1
  757. package/extensions/forms/Field/String/String.d.ts +2 -9
  758. package/extensions/forms/Field/String/String.js +10 -13
  759. package/extensions/forms/Field/String/String.js.map +1 -1
  760. package/extensions/forms/Field/Toggle/Toggle.js +9 -2
  761. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  762. package/extensions/forms/Field/Upload/Upload.js +7 -9
  763. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  764. package/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  765. package/extensions/forms/FieldBlock/FieldBlock.js +36 -13
  766. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  767. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
  768. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  769. package/extensions/forms/FieldBlock/FieldBlockDocs.js +2 -2
  770. package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  771. package/extensions/forms/FieldBlock/style/dnb-field-block.css +6 -0
  772. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  773. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +6 -0
  774. package/extensions/forms/Form/Handler/Handler.js +1 -2
  775. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  776. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  777. package/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
  778. package/extensions/forms/Form/Section/EditContainer/EditContainer.js +8 -4
  779. package/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  780. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +12 -1
  781. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  782. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +5 -1
  783. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +9 -3
  784. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +1 -1
  785. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
  786. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +6 -4
  787. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
  788. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +7 -1
  789. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  790. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +4 -1
  791. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js +6 -2
  792. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +1 -1
  793. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  794. package/extensions/forms/Iterate/Array/Array.js +55 -31
  795. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  796. package/extensions/forms/Tools/Log.js +2 -2
  797. package/extensions/forms/Tools/Log.js.map +1 -1
  798. package/extensions/forms/Value/Date/Date.d.ts +5 -0
  799. package/extensions/forms/Value/Date/Date.js +26 -14
  800. package/extensions/forms/Value/Date/Date.js.map +1 -1
  801. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +4 -12
  802. package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  803. package/extensions/forms/Value/Provider/useValueProvider.d.ts +3 -3
  804. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +1 -6
  805. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  806. package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +1 -11
  807. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +37 -40
  808. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  809. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +2 -2
  810. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  811. package/extensions/forms/constants/countries.js +20 -20
  812. package/extensions/forms/constants/countries.js.map +1 -1
  813. package/extensions/forms/constants/locales/en-GB.d.ts +2 -1
  814. package/extensions/forms/constants/locales/en-GB.js +3 -2
  815. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  816. package/extensions/forms/constants/locales/en-US.d.ts +2 -1
  817. package/extensions/forms/constants/locales/index.d.ts +4 -2
  818. package/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
  819. package/extensions/forms/constants/locales/nb-NO.js +3 -2
  820. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  821. package/extensions/forms/hooks/index.d.ts +2 -1
  822. package/extensions/forms/hooks/index.js +1 -1
  823. package/extensions/forms/hooks/index.js.map +1 -1
  824. package/extensions/forms/hooks/useErrorMessage.d.ts +3 -10
  825. package/extensions/forms/hooks/useErrorMessage.js.map +1 -1
  826. package/extensions/forms/hooks/useFieldProps.d.ts +8 -5
  827. package/extensions/forms/hooks/useFieldProps.js +177 -80
  828. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  829. package/extensions/forms/hooks/usePath.d.ts +3 -0
  830. package/extensions/forms/hooks/usePath.js +2 -1
  831. package/extensions/forms/hooks/usePath.js.map +1 -1
  832. package/extensions/forms/hooks/useProcessManager.js +1 -1
  833. package/extensions/forms/hooks/useProcessManager.js.map +1 -1
  834. package/extensions/forms/hooks/useTranslation.d.ts +4 -1
  835. package/extensions/forms/hooks/useTranslation.js +7 -4
  836. package/extensions/forms/hooks/useTranslation.js.map +1 -1
  837. package/extensions/forms/hooks/useValueProps.d.ts +1 -1
  838. package/extensions/forms/hooks/useValueProps.js +2 -2
  839. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  840. package/extensions/forms/style/dnb-forms.css +7 -6
  841. package/extensions/forms/style/dnb-forms.min.css +1 -1
  842. package/extensions/forms/types.d.ts +61 -37
  843. package/extensions/forms/types.js +0 -13
  844. package/extensions/forms/types.js.map +1 -1
  845. package/extensions/forms/utils/FormError.d.ts +45 -0
  846. package/extensions/forms/utils/FormError.js +16 -0
  847. package/extensions/forms/utils/FormError.js.map +1 -0
  848. package/extensions/forms/utils/ajv.d.ts +17 -1
  849. package/extensions/forms/utils/ajv.js +77 -7
  850. package/extensions/forms/utils/ajv.js.map +1 -1
  851. package/extensions/forms/utils/errors.d.ts +1 -1
  852. package/extensions/forms/utils/errors.js.map +1 -1
  853. package/extensions/forms/utils/index.d.ts +2 -0
  854. package/extensions/forms/utils/index.js +2 -0
  855. package/extensions/forms/utils/index.js.map +1 -1
  856. package/fragments/drawer-list/DrawerList.js +1 -2
  857. package/fragments/drawer-list/DrawerList.js.map +1 -1
  858. package/fragments/drawer-list/DrawerListProvider.js +1 -2
  859. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  860. package/index.d.ts +2 -1
  861. package/index.js +2 -1
  862. package/index.js.map +1 -1
  863. package/package.json +2 -2
  864. package/shared/Context.d.ts +4 -4
  865. package/shared/Context.js.map +1 -1
  866. package/shared/Eufemia.d.ts +1 -1
  867. package/shared/Eufemia.js +2 -2
  868. package/shared/Eufemia.js.map +1 -1
  869. package/shared/component-helper.d.ts +2 -1
  870. package/shared/component-helper.js +2 -2
  871. package/shared/component-helper.js.map +1 -1
  872. package/shared/defaults.d.ts +1 -0
  873. package/shared/defaults.js +1 -0
  874. package/shared/defaults.js.map +1 -1
  875. package/shared/keycode.d.ts +75 -0
  876. package/shared/keycode.js +127 -0
  877. package/shared/keycode.js.map +1 -0
  878. package/shared/libs/Shortcuts.js +1 -2
  879. package/shared/libs/Shortcuts.js.map +1 -1
  880. package/shared/locales/nb-NO.js +2 -2
  881. package/shared/locales/nb-NO.js.map +1 -1
  882. package/shared/useTranslation.d.ts +11 -4
  883. package/shared/useTranslation.js +64 -22
  884. package/shared/useTranslation.js.map +1 -1
  885. package/style/core/scopes.scss +1 -1
  886. package/style/dnb-ui-basis.css +1 -1
  887. package/style/dnb-ui-basis.min.css +1 -1
  888. package/style/dnb-ui-body.css +1 -1
  889. package/style/dnb-ui-body.min.css +1 -1
  890. package/style/dnb-ui-components.css +1313 -186
  891. package/style/dnb-ui-components.min.css +3 -3
  892. package/style/dnb-ui-components.scss +2 -0
  893. package/style/dnb-ui-core.css +1 -1
  894. package/style/dnb-ui-core.min.css +1 -1
  895. package/style/dnb-ui-extensions.css +7 -6
  896. package/style/dnb-ui-extensions.min.css +1 -1
  897. package/style/dnb-ui-forms.css +7 -6
  898. package/style/dnb-ui-forms.min.css +1 -1
  899. package/style/themes/theme-eiendom/eiendom-theme-components.css +1308 -180
  900. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  901. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -6
  902. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  903. package/style/themes/theme-eiendom/eiendom-theme-forms.css +7 -6
  904. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  905. package/style/themes/theme-sbanken/sbanken-theme-components.css +1308 -180
  906. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  907. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -6
  908. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  909. package/style/themes/theme-sbanken/sbanken-theme-forms.css +7 -6
  910. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  911. package/style/themes/theme-ui/ui-theme-components.css +1308 -180
  912. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  913. package/style/themes/theme-ui/ui-theme-extensions.css +7 -6
  914. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  915. package/style/themes/theme-ui/ui-theme-forms.css +7 -6
  916. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  917. package/umd/dnb-ui-basis.min.js +1 -1
  918. package/umd/dnb-ui-components.min.js +1 -1
  919. package/umd/dnb-ui-elements.min.js +1 -1
  920. package/umd/dnb-ui-extensions.min.js +5 -5
  921. package/umd/dnb-ui-lib.min.js +1 -1
@@ -50,6 +50,7 @@ function ArraySelection(props) {
50
50
  emptyValue,
51
51
  htmlAttributes,
52
52
  handleChange,
53
+ setDisplayValue,
53
54
  children
54
55
  } = (0, _hooks.useFieldProps)(props);
55
56
  const {
@@ -84,8 +85,14 @@ function ArraySelection(props) {
84
85
  children,
85
86
  value,
86
87
  disabled,
88
+ hasError,
87
89
  handleChange,
88
- hasError
90
+ handleActiveData: _ref => {
91
+ let {
92
+ labels
93
+ } = _ref;
94
+ setDisplayValue(path, labels);
95
+ }
89
96
  });
90
97
  switch (variant) {
91
98
  case 'checkbox':
@@ -100,7 +107,7 @@ function ArraySelection(props) {
100
107
  }, options));
101
108
  }
102
109
  }
103
- function useCheckboxOrToggleOptions(_ref) {
110
+ function useCheckboxOrToggleOptions(_ref2) {
104
111
  let {
105
112
  id,
106
113
  path,
@@ -114,16 +121,17 @@ function useCheckboxOrToggleOptions(_ref) {
114
121
  value,
115
122
  disabled,
116
123
  hasError,
117
- handleChange
118
- } = _ref;
124
+ handleChange,
125
+ handleActiveData
126
+ } = _ref2;
119
127
  const {
120
128
  setFieldProps
121
129
  } = (0, _react.useContext)(_Context.default);
122
130
  const optionsCount = (0, _react.useMemo)(() => _react.default.Children.count(children) + ((dataList === null || dataList === void 0 ? void 0 : dataList.length) || 0), [dataList, children]);
123
- const collectedData = [];
131
+ const activeData = [];
124
132
  const createOption = (0, _react.useCallback)((props, i) => {
125
133
  const {
126
- value: selected,
134
+ value: active,
127
135
  error,
128
136
  title,
129
137
  help,
@@ -131,8 +139,8 @@ function useCheckboxOrToggleOptions(_ref) {
131
139
  children
132
140
  } = props,
133
141
  rest = _objectWithoutProperties(props, _excluded);
134
- if (value !== null && value !== void 0 && value.includes(selected)) {
135
- collectedData.push(props);
142
+ if (value !== null && value !== void 0 && value.includes(active)) {
143
+ activeData.push(props);
136
144
  }
137
145
  const label = title !== null && title !== void 0 ? title : children;
138
146
  const status = (0, _Selection.getStatus)(error, info, warning);
@@ -141,7 +149,7 @@ function useCheckboxOrToggleOptions(_ref) {
141
149
  title: help.title
142
150
  }, help.content) : undefined;
143
151
  const handleSelect = () => {
144
- const newValue = value !== null && value !== void 0 && value.includes(selected) ? value.filter(value => value !== selected) : [...(value !== null && value !== void 0 ? value : []), selected];
152
+ const newValue = value !== null && value !== void 0 && value.includes(active) ? value.filter(value => value !== active) : [...(value !== null && value !== void 0 ? value : []), active];
145
153
  handleChange === null || handleChange === void 0 ? void 0 : handleChange(newValue.length === 0 ? emptyValue : newValue);
146
154
  };
147
155
  const Component = variant === 'checkbox' ? _components.Checkbox : _components.ToggleButton;
@@ -153,7 +161,7 @@ function useCheckboxOrToggleOptions(_ref) {
153
161
  text: variant !== 'checkbox' ? label : undefined,
154
162
  value: value,
155
163
  disabled: disabled,
156
- checked: value === null || value === void 0 ? void 0 : value.includes(selected),
164
+ checked: value === null || value === void 0 ? void 0 : value.includes(active),
157
165
  status: (hasError || status) && 'error',
158
166
  suffix: suffix,
159
167
  on_change: handleSelect
@@ -162,8 +170,19 @@ function useCheckboxOrToggleOptions(_ref) {
162
170
  const result = [...(dataList || []).map((props, i) => createOption(props, i)), ...((0, _Selection.mapOptions)(children, {
163
171
  createOption
164
172
  }) || []).filter(Boolean)];
173
+ if (handleActiveData) {
174
+ handleActiveData({
175
+ labels: activeData.map(_ref3 => {
176
+ let {
177
+ title,
178
+ children
179
+ } = _ref3;
180
+ return title !== null && title !== void 0 ? title : children;
181
+ })
182
+ });
183
+ }
165
184
  if (path) {
166
- setFieldProps === null || setFieldProps === void 0 ? void 0 : setFieldProps(path + '/arraySelectionData', collectedData);
185
+ setFieldProps === null || setFieldProps === void 0 ? void 0 : setFieldProps(path + '/arraySelectionData', activeData);
167
186
  }
168
187
  return result;
169
188
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ArraySelection.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_utils","_Selection","_ToggleButtonGroupContext","_Context","_useDataValue","_excluded","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","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","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","ArraySelection","props","id","path","dataPath","data","className","variant","layout","optionsLayout","label","labelDescription","error","hasError","help","info","warning","disabled","emptyValue","htmlAttributes","handleChange","children","useFieldProps","getValueByPath","useDataValue","dataList","fieldBlockProps","forId","classnames","contentClassName","createElement","Fragment","HelpButton","size","left","title","content","pickSpacingProps","options","useCheckboxOrToggleOptions","Provider","status","_ref","setFieldProps","useContext","DataContext","optionsCount","useMemo","React","Children","count","collectedData","createOption","useCallback","selected","rest","includes","getStatus","suffix","handleSelect","newValue","Component","Checkbox","ToggleButton","text","checked","on_change","result","map","mapOptions","Boolean","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/ArraySelection/ArraySelection.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { Checkbox, HelpButton, ToggleButton } from '../../../../components'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { useFieldProps } from '../../hooks'\nimport { ReturnAdditional } from '../../hooks/useFieldProps'\nimport { FieldHelpProps, FieldProps, FormError, Path } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { getStatus, mapOptions, Data } from '../Selection'\nimport { HelpButtonProps } from '../../../../components/HelpButton'\nimport ToggleButtonGroupContext from '../../../../components/toggle-button/ToggleButtonGroupContext'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\n\ntype OptionProps = React.ComponentProps<\n React.FC<{\n value: number | string\n error: Error | FormError | undefined\n title: React.ReactNode\n help: HelpButtonProps\n className: string\n children: React.ReactNode\n handleSelect: () => void\n }>\n>\n\nexport type Props = FieldHelpProps &\n FieldProps<Array<string | number> | undefined> & {\n children?: React.ReactNode\n variant?: 'checkbox' | 'button' | 'checkbox-button'\n optionsLayout?: 'horizontal' | 'vertical'\n /**\n * The path to the context data (Form.Handler).\n * The context data object needs to have a `value` and a `title` property.\n */\n dataPath?: Path\n\n /**\n * Data to be used for the component. The object needs to have a `value` and a `title` property.\n * The generated options will be placed above given JSX based children.\n */\n data?: Data\n }\n\nfunction ArraySelection(props: Props) {\n const {\n id,\n path,\n dataPath,\n data,\n className,\n variant = 'checkbox',\n layout = 'vertical',\n optionsLayout = 'vertical',\n label,\n labelDescription,\n value,\n error,\n hasError,\n help,\n info,\n warning,\n disabled,\n emptyValue,\n htmlAttributes,\n handleChange,\n children,\n } = useFieldProps(props)\n\n const { getValueByPath } = useDataValue()\n const dataList = dataPath ? getValueByPath(dataPath) : data\n\n const fieldBlockProps = {\n forId: id,\n className: classnames(\n 'dnb-forms-field-array-selection',\n `dnb-forms-field-array-selection--variant-${\n variant === 'checkbox' ? 'checkbox' : 'button'\n }`,\n `dnb-forms-field-array-selection--layout-${layout}`,\n `dnb-forms-field-array-selection--options-layout-${optionsLayout}`,\n className\n ),\n contentClassName: 'dnb-forms-field-array-selection__options',\n help,\n info,\n warning,\n error,\n layout,\n label,\n labelDescription: (\n <>\n {labelDescription}\n {help ? (\n <HelpButton\n size=\"small\"\n left={labelDescription ? 'x-small' : false}\n title={help.title}\n >\n {help.content}\n </HelpButton>\n ) : undefined}\n </>\n ),\n ...pickSpacingProps(props),\n }\n\n const options = useCheckboxOrToggleOptions({\n id,\n path,\n variant,\n info,\n warning,\n emptyValue,\n htmlAttributes,\n dataList,\n children,\n value,\n disabled,\n handleChange,\n hasError,\n })\n\n switch (variant) {\n case 'checkbox':\n return <FieldBlock {...fieldBlockProps}>{options}</FieldBlock>\n default:\n return (\n <FieldBlock {...fieldBlockProps}>\n <ToggleButtonGroupContext.Provider\n value={{\n status: hasError ? 'error' : undefined,\n disabled,\n variant:\n variant === 'checkbox-button' ? 'checkbox' : 'default',\n }}\n >\n {options}\n </ToggleButtonGroupContext.Provider>\n </FieldBlock>\n )\n }\n}\n\nexport function useCheckboxOrToggleOptions({\n id,\n path,\n variant = 'checkbox',\n info,\n warning,\n emptyValue,\n htmlAttributes,\n dataList,\n children,\n value,\n disabled,\n hasError,\n handleChange,\n}: {\n id: Props['id']\n path?: Props['path']\n variant?: Props['variant']\n info?: Props['info']\n warning?: Props['warning']\n emptyValue?: Props['emptyValue']\n htmlAttributes?: Props['htmlAttributes']\n dataList?: Props['data']\n children?: Props['children']\n value?: Props['value']\n disabled?: Props['disabled']\n hasError?: ReturnAdditional<Props['value']>['hasError']\n handleChange?: ReturnAdditional<Props['value']>['handleChange']\n}) {\n const { setFieldProps } = useContext(DataContext)\n const optionsCount = useMemo(\n () => React.Children.count(children) + (dataList?.length || 0),\n [dataList, children]\n )\n const collectedData = []\n\n const createOption = useCallback(\n (props: OptionProps, i: number) => {\n const {\n value: selected,\n error,\n title,\n help,\n className,\n children,\n ...rest\n } = props\n\n if (value?.includes(selected)) {\n collectedData.push(props)\n }\n\n const label = title ?? children\n const status = getStatus(error, info, warning)\n const suffix = help ? (\n <HelpButton size=\"small\" title={help.title}>\n {help.content}\n </HelpButton>\n ) : undefined\n const handleSelect = () => {\n const newValue = value?.includes(selected)\n ? value.filter((value) => value !== selected)\n : [...(value ?? []), selected]\n\n handleChange?.(\n newValue.length === 0 ? (emptyValue as typeof value) : newValue\n )\n }\n\n const Component = (\n variant === 'checkbox' ? Checkbox : ToggleButton\n ) as typeof Checkbox & typeof ToggleButton\n\n return (\n <Component\n id={optionsCount === 1 ? id : undefined}\n key={`option-${i}-${value}`}\n className={classnames(\n `dnb-forms-field-array-selection__${\n variant === 'checkbox' ? 'checkbox' : 'button'\n }`,\n className\n )}\n label={variant === 'checkbox' ? label : undefined}\n text={variant !== 'checkbox' ? label : undefined}\n value={value}\n disabled={disabled}\n checked={value?.includes(selected)}\n status={(hasError || status) && 'error'}\n suffix={suffix}\n on_change={handleSelect}\n {...htmlAttributes}\n {...rest}\n />\n )\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n disabled,\n emptyValue,\n handleChange,\n hasError,\n htmlAttributes,\n id,\n info,\n optionsCount,\n value,\n variant,\n warning,\n ]\n )\n\n const result = [\n ...(dataList || []).map((props, i) =>\n createOption(props as OptionProps, i)\n ),\n ...(mapOptions(children, { createOption }) || []).filter(Boolean),\n ]\n\n if (path) {\n setFieldProps?.(path + '/arraySelectionData', collectedData)\n }\n\n return result\n}\n\nArraySelection._supportsSpacingProps = true\nexport default ArraySelection\n"],"mappings":"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"}
1
+ {"version":3,"file":"ArraySelection.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_utils","_Selection","_ToggleButtonGroupContext","_Context","_useDataValue","_excluded","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","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","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","ArraySelection","props","id","path","dataPath","data","className","variant","layout","optionsLayout","label","labelDescription","error","hasError","help","info","warning","disabled","emptyValue","htmlAttributes","handleChange","setDisplayValue","children","useFieldProps","getValueByPath","useDataValue","dataList","fieldBlockProps","forId","classnames","contentClassName","createElement","Fragment","HelpButton","size","left","title","content","pickSpacingProps","options","useCheckboxOrToggleOptions","handleActiveData","_ref","labels","Provider","status","_ref2","setFieldProps","useContext","DataContext","optionsCount","useMemo","React","Children","count","activeData","createOption","useCallback","active","rest","includes","getStatus","suffix","handleSelect","newValue","Component","Checkbox","ToggleButton","text","checked","on_change","result","map","mapOptions","Boolean","_ref3","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/ArraySelection/ArraySelection.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { Checkbox, HelpButton, ToggleButton } from '../../../../components'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { useFieldProps } from '../../hooks'\nimport { ReturnAdditional } from '../../hooks/useFieldProps'\nimport {\n DefaultErrorMessages,\n FieldHelpProps,\n FieldProps,\n Path,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { getStatus, mapOptions, Data } from '../Selection'\nimport { HelpButtonProps } from '../../../../components/HelpButton'\nimport ToggleButtonGroupContext from '../../../../components/toggle-button/ToggleButtonGroupContext'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\nimport { FormError } from '../../utils'\n\ntype OptionProps = React.ComponentProps<\n React.FC<{\n value: number | string\n error: Error | FormError | undefined\n title: React.ReactNode\n help: HelpButtonProps\n className: string\n children: React.ReactNode\n handleSelect: () => void\n }>\n>\n\ntype OptionValue = string | number\n\nexport type Props = FieldHelpProps &\n FieldProps<Array<OptionValue> | undefined> & {\n children?: React.ReactNode\n variant?: 'checkbox' | 'button' | 'checkbox-button'\n optionsLayout?: 'horizontal' | 'vertical'\n /**\n * The path to the context data (Form.Handler).\n * The context data object needs to have a `value` and a `title` property.\n */\n dataPath?: Path\n\n /**\n * Data to be used for the component. The object needs to have a `value` and a `title` property.\n * The generated options will be placed above given JSX based children.\n */\n data?: Data\n\n errorMessages?: DefaultErrorMessages & {\n minItems?: string\n maxItems?: string\n }\n }\n\nfunction ArraySelection(props: Props) {\n const {\n id,\n path,\n dataPath,\n data,\n className,\n variant = 'checkbox',\n layout = 'vertical',\n optionsLayout = 'vertical',\n label,\n labelDescription,\n value,\n error,\n hasError,\n help,\n info,\n warning,\n disabled,\n emptyValue,\n htmlAttributes,\n handleChange,\n setDisplayValue,\n children,\n } = useFieldProps(props)\n\n const { getValueByPath } = useDataValue()\n const dataList = dataPath ? getValueByPath(dataPath) : data\n\n const fieldBlockProps = {\n forId: id,\n className: classnames(\n 'dnb-forms-field-array-selection',\n `dnb-forms-field-array-selection--variant-${\n variant === 'checkbox' ? 'checkbox' : 'button'\n }`,\n `dnb-forms-field-array-selection--layout-${layout}`,\n `dnb-forms-field-array-selection--options-layout-${optionsLayout}`,\n className\n ),\n contentClassName: 'dnb-forms-field-array-selection__options',\n help,\n info,\n warning,\n error,\n layout,\n label,\n labelDescription: (\n <>\n {labelDescription}\n {help ? (\n <HelpButton\n size=\"small\"\n left={labelDescription ? 'x-small' : false}\n title={help.title}\n >\n {help.content}\n </HelpButton>\n ) : undefined}\n </>\n ),\n ...pickSpacingProps(props),\n }\n\n const options = useCheckboxOrToggleOptions({\n id,\n path,\n variant,\n info,\n warning,\n emptyValue,\n htmlAttributes,\n dataList,\n children,\n value,\n disabled,\n hasError,\n handleChange,\n handleActiveData: ({ labels }) => {\n setDisplayValue(path, labels)\n },\n })\n\n switch (variant) {\n case 'checkbox':\n return <FieldBlock {...fieldBlockProps}>{options}</FieldBlock>\n default:\n return (\n <FieldBlock {...fieldBlockProps}>\n <ToggleButtonGroupContext.Provider\n value={{\n status: hasError ? 'error' : undefined,\n disabled,\n variant:\n variant === 'checkbox-button' ? 'checkbox' : 'default',\n }}\n >\n {options}\n </ToggleButtonGroupContext.Provider>\n </FieldBlock>\n )\n }\n}\n\nexport function useCheckboxOrToggleOptions({\n id,\n path,\n variant = 'checkbox',\n info,\n warning,\n emptyValue,\n htmlAttributes,\n dataList,\n children,\n value,\n disabled,\n hasError,\n handleChange,\n handleActiveData,\n}: {\n id: Props['id']\n path?: Props['path']\n variant?: Props['variant']\n info?: Props['info']\n warning?: Props['warning']\n emptyValue?: Props['emptyValue']\n htmlAttributes?: Props['htmlAttributes']\n dataList?: Props['data']\n children?: Props['children']\n value?: Props['value']\n disabled?: Props['disabled']\n hasError?: ReturnAdditional<Props['value']>['hasError']\n handleChange?: ReturnAdditional<Props['value']>['handleChange']\n handleActiveData?: (item: { labels: Array<Props['children']> }) => void\n}) {\n const { setFieldProps } = useContext(DataContext)\n const optionsCount = useMemo(\n () => React.Children.count(children) + (dataList?.length || 0),\n [dataList, children]\n )\n const activeData = []\n\n const createOption = useCallback(\n (props: OptionProps, i: number) => {\n const {\n value: active,\n error,\n title,\n help,\n className,\n children,\n ...rest\n } = props\n\n if (value?.includes(active)) {\n activeData.push(props)\n }\n\n const label = title ?? children\n const status = getStatus(error, info, warning)\n const suffix = help ? (\n <HelpButton size=\"small\" title={help.title}>\n {help.content}\n </HelpButton>\n ) : undefined\n\n const handleSelect = () => {\n const newValue = value?.includes(active)\n ? value.filter((value) => value !== active)\n : [...(value ?? []), active]\n\n handleChange?.(\n newValue.length === 0 ? (emptyValue as typeof value) : newValue\n )\n }\n\n const Component = (\n variant === 'checkbox' ? Checkbox : ToggleButton\n ) as typeof Checkbox & typeof ToggleButton\n\n return (\n <Component\n id={optionsCount === 1 ? id : undefined}\n key={`option-${i}-${value}`}\n className={classnames(\n `dnb-forms-field-array-selection__${\n variant === 'checkbox' ? 'checkbox' : 'button'\n }`,\n className\n )}\n label={variant === 'checkbox' ? label : undefined}\n text={variant !== 'checkbox' ? label : undefined}\n value={value}\n disabled={disabled}\n checked={value?.includes(active)}\n status={(hasError || status) && 'error'}\n suffix={suffix}\n on_change={handleSelect}\n {...htmlAttributes}\n {...rest}\n />\n )\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n disabled,\n emptyValue,\n handleChange,\n hasError,\n htmlAttributes,\n id,\n info,\n optionsCount,\n value,\n variant,\n warning,\n ]\n )\n\n const result = [\n ...(dataList || []).map((props, i) =>\n createOption(props as OptionProps, i)\n ),\n ...(mapOptions(children, { createOption }) || []).filter(Boolean),\n ]\n\n if (handleActiveData) {\n handleActiveData({\n labels: activeData.map(({ title, children }) => title ?? children),\n })\n }\n\n if (path) {\n setFieldProps?.(path + '/arraySelectionData', activeData)\n }\n\n return result\n}\n\nArraySelection._supportsSpacingProps = true\nexport default ArraySelection\n"],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import { Props as StringFieldProps } from '../String';
2
- export type Props = StringFieldProps & {
2
+ import { Validator } from '../../types';
3
+ export type Props = Omit<StringFieldProps, 'onBlurValidator'> & {
3
4
  validate?: boolean;
4
5
  omitMask?: boolean;
6
+ onBlurValidator?: Validator<string> | false;
5
7
  };
6
8
  declare function BankAccountNumber(props: Props): import("react/jsx-runtime").JSX.Element;
7
9
  declare namespace BankAccountNumber {
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _String = _interopRequireDefault(require("../String"));
9
- var _useErrorMessage = _interopRequireDefault(require("../../hooks/useErrorMessage"));
10
9
  var _useTranslation = _interopRequireDefault(require("../../hooks/useTranslation"));
11
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -17,28 +16,68 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
17
16
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
18
17
  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); }
19
18
  function BankAccountNumber(props) {
20
- var _props$pattern, _props$label, _props$width;
21
- const translations = (0, _useTranslation.default)().BankAccountNumber;
19
+ const {
20
+ errorBankAccountNumber,
21
+ errorBankAccountNumberLength,
22
+ errorRequired,
23
+ label
24
+ } = (0, _useTranslation.default)().BankAccountNumber;
25
+ const errorMessages = (0, _react.useMemo)(() => {
26
+ return _objectSpread({
27
+ 'Field.errorRequired': errorRequired,
28
+ 'Field.errorPattern': errorBankAccountNumber
29
+ }, props.errorMessages);
30
+ }, [errorBankAccountNumber, errorRequired, props.errorMessages]);
31
+ const bankAccountNumberValidator = (0, _react.useCallback)(value => {
32
+ if (value !== undefined) {
33
+ const bankAccountNoIs11Digits = (value === null || value === void 0 ? void 0 : value.length) === 11;
34
+ if (!bankAccountNoIs11Digits) {
35
+ return Error(errorBankAccountNumberLength);
36
+ }
37
+ if (bankAccountNoIs11Digits && !isValidAccountNumber(value)) {
38
+ return Error(errorBankAccountNumber);
39
+ }
40
+ }
41
+ }, [errorBankAccountNumber, errorBankAccountNumberLength]);
22
42
  const {
23
43
  validate = true,
24
- omitMask
44
+ omitMask,
45
+ validator,
46
+ onBlurValidator = bankAccountNumberValidator,
47
+ label: labelProp,
48
+ width
25
49
  } = props;
26
- const errorMessages = (0, _useErrorMessage.default)(props.path, props.errorMessages, {
27
- required: translations.errorRequired,
28
- pattern: translations.errorPattern
29
- });
30
50
  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]);
51
+ const onBlurValidatorToUse = onBlurValidator === false ? undefined : onBlurValidator;
31
52
  const StringFieldProps = _objectSpread(_objectSpread({}, props), {}, {
32
53
  className: 'dnb-forms-field-bank-account-number',
33
- pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate ? '^[0-9]{11}$' : undefined,
34
- label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : translations.label,
54
+ label: labelProp !== null && labelProp !== void 0 ? labelProp : label,
35
55
  errorMessages,
36
56
  mask,
37
- width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium',
38
- inputMode: 'numeric'
57
+ width: width !== null && width !== void 0 ? width : 'medium',
58
+ inputMode: 'numeric',
59
+ validator: validate ? validator : undefined,
60
+ onBlurValidator: validate ? onBlurValidatorToUse : undefined,
61
+ exportValidators: {
62
+ bankAccountNumberValidator
63
+ }
39
64
  });
40
65
  return _react.default.createElement(_String.default, StringFieldProps);
41
66
  }
67
+ function isValidAccountNumber(digits) {
68
+ let checkDigit = 2;
69
+ let sum = 0;
70
+ for (let i = digits.length - 2; i >= 0; --i) {
71
+ sum += parseInt(digits.charAt(i)) * checkDigit;
72
+ checkDigit += 1;
73
+ if (checkDigit > 7) {
74
+ checkDigit = 2;
75
+ }
76
+ }
77
+ const result = 11 - sum % 11;
78
+ const finalCheckDigit = result === 11 ? 0 : result;
79
+ return parseInt(digits.charAt(digits.length - 1), 10) === finalCheckDigit;
80
+ }
42
81
  BankAccountNumber._supportsSpacingProps = true;
43
82
  var _default = BankAccountNumber;
44
83
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"BankAccountNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_useErrorMessage","_useTranslation","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","BankAccountNumber","props","_props$pattern","_props$label","_props$width","translations","useTranslation","validate","omitMask","errorMessages","useErrorMessage","path","required","errorRequired","pattern","errorPattern","mask","useMemo","StringFieldProps","className","label","width","inputMode","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport StringField, { Props as StringFieldProps } from '../String'\n\nimport useErrorMessage from '../../hooks/useErrorMessage'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type Props = StringFieldProps & {\n validate?: boolean\n omitMask?: boolean\n}\n\nfunction BankAccountNumber(props: Props) {\n const translations = useTranslation().BankAccountNumber\n const { validate = true, omitMask } = props\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: translations.errorRequired,\n pattern: translations.errorPattern,\n })\n const mask = useMemo(\n () =>\n omitMask\n ? [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n [omitMask]\n )\n\n const StringFieldProps: Props = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label: props.label ?? translations.label,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n inputMode: 'numeric',\n }\n\n return <StringField {...StringFieldProps} />\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":"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"}
1
+ {"version":3,"file":"BankAccountNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_useTranslation","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","BankAccountNumber","props","errorBankAccountNumber","errorBankAccountNumberLength","errorRequired","label","useTranslation","errorMessages","useMemo","bankAccountNumberValidator","useCallback","bankAccountNoIs11Digits","Error","isValidAccountNumber","validate","omitMask","validator","onBlurValidator","labelProp","width","mask","onBlurValidatorToUse","StringFieldProps","className","inputMode","exportValidators","createElement","digits","checkDigit","sum","parseInt","charAt","result","finalCheckDigit","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react'\nimport StringField, { Props as StringFieldProps } from '../String'\n\nimport useTranslation from '../../hooks/useTranslation'\nimport { Validator } from '../../types'\n\nexport type Props = Omit<StringFieldProps, 'onBlurValidator'> & {\n validate?: boolean\n omitMask?: boolean\n onBlurValidator?: Validator<string> | false\n}\n\nfunction BankAccountNumber(props: Props) {\n const {\n errorBankAccountNumber,\n errorBankAccountNumberLength,\n errorRequired,\n label,\n } = useTranslation().BankAccountNumber\n\n const errorMessages = useMemo(() => {\n return {\n 'Field.errorRequired': errorRequired,\n 'Field.errorPattern': errorBankAccountNumber,\n ...props.errorMessages,\n }\n }, [errorBankAccountNumber, errorRequired, props.errorMessages])\n\n const bankAccountNumberValidator = useCallback(\n (value: string) => {\n if (value !== undefined) {\n const bankAccountNoIs11Digits = value?.length === 11\n\n if (!bankAccountNoIs11Digits) {\n return Error(errorBankAccountNumberLength)\n }\n\n if (bankAccountNoIs11Digits && !isValidAccountNumber(value)) {\n return Error(errorBankAccountNumber)\n }\n }\n },\n [errorBankAccountNumber, errorBankAccountNumberLength]\n )\n\n const {\n validate = true,\n omitMask,\n validator,\n onBlurValidator = bankAccountNumberValidator,\n label: labelProp,\n width,\n } = props\n\n const mask = useMemo(\n () =>\n omitMask\n ? [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n [omitMask]\n )\n\n const onBlurValidatorToUse =\n onBlurValidator === false ? undefined : onBlurValidator\n\n const StringFieldProps: StringFieldProps = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n label: labelProp ?? label,\n errorMessages,\n mask,\n width: width ?? 'medium',\n inputMode: 'numeric',\n validator: validate ? validator : undefined,\n onBlurValidator: validate ? onBlurValidatorToUse : undefined,\n exportValidators: { bankAccountNumberValidator },\n }\n\n return <StringField {...StringFieldProps} />\n}\n\nfunction isValidAccountNumber(digits: string) {\n let checkDigit = 2\n let sum = 0\n\n for (let i = digits.length - 2; i >= 0; --i) {\n sum += parseInt(digits.charAt(i)) * checkDigit\n\n checkDigit += 1\n\n if (checkDigit > 7) {\n checkDigit = 2\n }\n }\n\n const result = 11 - (sum % 11)\n const finalCheckDigit = result === 11 ? 0 : result\n\n return parseInt(digits.charAt(digits.length - 1), 10) === finalCheckDigit\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,eAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAuD,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;AASvD,SAASS,iBAAiBA,CAACC,KAAY,EAAE;EACvC,MAAM;IACJC,sBAAsB;IACtBC,4BAA4B;IAC5BC,aAAa;IACbC;EACF,CAAC,GAAG,IAAAC,uBAAc,EAAC,CAAC,CAACN,iBAAiB;EAEtC,MAAMO,aAAa,GAAG,IAAAC,cAAO,EAAC,MAAM;IAClC,OAAAlC,aAAA;MACE,qBAAqB,EAAE8B,aAAa;MACpC,oBAAoB,EAAEF;IAAsB,GACzCD,KAAK,CAACM,aAAa;EAE1B,CAAC,EAAE,CAACL,sBAAsB,EAAEE,aAAa,EAAEH,KAAK,CAACM,aAAa,CAAC,CAAC;EAEhE,MAAME,0BAA0B,GAAG,IAAAC,kBAAW,EAC3C1B,KAAa,IAAK;IACjB,IAAIA,KAAK,KAAKY,SAAS,EAAE;MACvB,MAAMe,uBAAuB,GAAG,CAAA3B,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEN,MAAM,MAAK,EAAE;MAEpD,IAAI,CAACiC,uBAAuB,EAAE;QAC5B,OAAOC,KAAK,CAACT,4BAA4B,CAAC;MAC5C;MAEA,IAAIQ,uBAAuB,IAAI,CAACE,oBAAoB,CAAC7B,KAAK,CAAC,EAAE;QAC3D,OAAO4B,KAAK,CAACV,sBAAsB,CAAC;MACtC;IACF;EACF,CAAC,EACD,CAACA,sBAAsB,EAAEC,4BAA4B,CACvD,CAAC;EAED,MAAM;IACJW,QAAQ,GAAG,IAAI;IACfC,QAAQ;IACRC,SAAS;IACTC,eAAe,GAAGR,0BAA0B;IAC5CJ,KAAK,EAAEa,SAAS;IAChBC;EACF,CAAC,GAAGlB,KAAK;EAET,MAAMmB,IAAI,GAAG,IAAAZ,cAAO,EAClB,MACEO,QAAQ,GACJ,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,GACD,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,EACP,CAACA,QAAQ,CACX,CAAC;EAED,MAAMM,oBAAoB,GACxBJ,eAAe,KAAK,KAAK,GAAGrB,SAAS,GAAGqB,eAAe;EAEzD,MAAMK,gBAAkC,GAAAhD,aAAA,CAAAA,aAAA,KACnC2B,KAAK;IACRsB,SAAS,EAAE,qCAAqC;IAChDlB,KAAK,EAAEa,SAAS,aAATA,SAAS,cAATA,SAAS,GAAIb,KAAK;IACzBE,aAAa;IACba,IAAI;IACJD,KAAK,EAAEA,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,QAAQ;IACxBK,SAAS,EAAE,SAAS;IACpBR,SAAS,EAAEF,QAAQ,GAAGE,SAAS,GAAGpB,SAAS;IAC3CqB,eAAe,EAAEH,QAAQ,GAAGO,oBAAoB,GAAGzB,SAAS;IAC5D6B,gBAAgB,EAAE;MAAEhB;IAA2B;EAAC,EACjD;EAED,OAAO1E,MAAA,CAAAQ,OAAA,CAAAmF,aAAA,CAACxF,OAAA,CAAAK,OAAW,EAAK+E,gBAAmB,CAAC;AAC9C;AAEA,SAAST,oBAAoBA,CAACc,MAAc,EAAE;EAC5C,IAAIC,UAAU,GAAG,CAAC;EAClB,IAAIC,GAAG,GAAG,CAAC;EAEX,KAAK,IAAIrD,CAAC,GAAGmD,MAAM,CAACjD,MAAM,GAAG,CAAC,EAAEF,CAAC,IAAI,CAAC,EAAE,EAAEA,CAAC,EAAE;IAC3CqD,GAAG,IAAIC,QAAQ,CAACH,MAAM,CAACI,MAAM,CAACvD,CAAC,CAAC,CAAC,GAAGoD,UAAU;IAE9CA,UAAU,IAAI,CAAC;IAEf,IAAIA,UAAU,GAAG,CAAC,EAAE;MAClBA,UAAU,GAAG,CAAC;IAChB;EACF;EAEA,MAAMI,MAAM,GAAG,EAAE,GAAIH,GAAG,GAAG,EAAG;EAC9B,MAAMI,eAAe,GAAGD,MAAM,KAAK,EAAE,GAAG,CAAC,GAAGA,MAAM;EAElD,OAAOF,QAAQ,CAACH,MAAM,CAACI,MAAM,CAACJ,MAAM,CAACjD,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,KAAKuD,eAAe;AAC3E;AAEAjC,iBAAiB,CAACkC,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GAC/BnC,iBAAiB;AAAAoC,OAAA,CAAA7F,OAAA,GAAA4F,QAAA"}
@@ -0,0 +1,2 @@
1
+ import { PropertiesTableProps } from '../../../../shared/types';
2
+ export declare const BankAccountNumberProperties: PropertiesTableProps;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BankAccountNumberProperties = void 0;
7
+ const BankAccountNumberProperties = {
8
+ validate: {
9
+ doc: 'Using this prop you can disable the default validation.',
10
+ type: 'boolean',
11
+ status: 'optional'
12
+ },
13
+ help: {
14
+ doc: 'Provide a help button. Object consisting of `title` and `content`.',
15
+ type: 'object',
16
+ status: 'optional'
17
+ },
18
+ onBlurValidator: {
19
+ doc: 'Custom validator function that is triggered when the user leaves a field (e.g., blurring a text input or closing a dropdown). The function can be either asynchronous or synchronous. The first parameter is the value, and the second parameter returns an object containing { errorMessages, connectWithPath, validators }. Defaults to bank account number validation, using `bankAccountNumberValidator`. Can be disabled using `false`.',
20
+ type: 'function',
21
+ status: 'optional'
22
+ }
23
+ };
24
+ exports.BankAccountNumberProperties = BankAccountNumberProperties;
25
+ //# sourceMappingURL=BankAccountNumberDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BankAccountNumberDocs.js","names":["BankAccountNumberProperties","validate","doc","type","status","help","onBlurValidator","exports"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.tsx"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const BankAccountNumberProperties: PropertiesTableProps = {\n validate: {\n doc: 'Using this prop you can disable the default validation.',\n type: 'boolean',\n status: 'optional',\n },\n help: {\n doc: 'Provide a help button. Object consisting of `title` and `content`.',\n type: 'object',\n status: 'optional',\n },\n onBlurValidator: {\n doc: 'Custom validator function that is triggered when the user leaves a field (e.g., blurring a text input or closing a dropdown). The function can be either asynchronous or synchronous. The first parameter is the value, and the second parameter returns an object containing { errorMessages, connectWithPath, validators }. Defaults to bank account number validation, using `bankAccountNumberValidator`. Can be disabled using `false`.',\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,2BAAiD,GAAG;EAC/DC,QAAQ,EAAE;IACRC,GAAG,EAAE,yDAAyD;IAC9DC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDC,IAAI,EAAE;IACJH,GAAG,EAAE,oEAAoE;IACzEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,eAAe,EAAE;IACfJ,GAAG,EAAE,8aAA8a;IACnbC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC;AAAAG,OAAA,CAAAP,2BAAA,GAAAA,2BAAA"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
@@ -10,9 +11,10 @@ var _hooks = require("../../hooks");
10
11
  var _utils = require("../../../../components/flex/utils");
11
12
  var _classnames = _interopRequireDefault(require("classnames"));
12
13
  var _FieldBlock = _interopRequireDefault(require("../../FieldBlock"));
14
+ var _Context = _interopRequireDefault(require("../../../../shared/Context"));
13
15
  var _dateFns = require("date-fns");
14
- var _useErrorMessage = _interopRequireDefault(require("../../hooks/useErrorMessage"));
15
16
  var _useTranslation = _interopRequireDefault(require("../../hooks/useTranslation"));
17
+ var _Date = require("../../Value/Date");
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -24,10 +26,15 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
24
26
  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); }
25
27
  function DateComponent(props) {
26
28
  const translations = (0, _useTranslation.default)();
27
- const errorMessages = (0, _useErrorMessage.default)(props.path, props.errorMessages, {
28
- required: translations.Date.errorRequired,
29
- pattern: translations.Field.errorRequired
30
- });
29
+ const {
30
+ locale
31
+ } = (0, _react.useContext)(_Context.default);
32
+ const errorMessages = (0, _react.useMemo)(() => {
33
+ return _objectSpread({
34
+ 'Field.errorRequired': translations.Date.errorRequired,
35
+ 'Field.errorPattern': translations.Date.errorRequired
36
+ }, props.errorMessages);
37
+ }, [props.errorMessages, translations.Date.errorRequired]);
31
38
  const schema = (0, _react.useMemo)(() => {
32
39
  var _props$schema;
33
40
  return (_props$schema = props.schema) !== null && _props$schema !== void 0 ? _props$schema : {
@@ -60,6 +67,7 @@ function DateComponent(props) {
60
67
  });
61
68
  const {
62
69
  id,
70
+ path,
63
71
  className,
64
72
  label,
65
73
  labelDescription,
@@ -74,6 +82,7 @@ function DateComponent(props) {
74
82
  handleFocus,
75
83
  handleBlur,
76
84
  handleChange,
85
+ setDisplayValue,
77
86
  range
78
87
  } = (0, _hooks.useFieldProps)(preparedProps);
79
88
  const rangeValue = (0, _react.useMemo)(() => {
@@ -86,6 +95,13 @@ function DateComponent(props) {
86
95
  endDate
87
96
  };
88
97
  }, [range, value]);
98
+ (0, _react.useMemo)(() => {
99
+ if (path && value) {
100
+ setDisplayValue(path, (0, _Date.formatDate)(value, {
101
+ locale
102
+ }));
103
+ }
104
+ }, [locale, path, setDisplayValue, value]);
89
105
  return _react.default.createElement(_FieldBlock.default, _extends({
90
106
  className: (0, _classnames.default)('dnb-forms-field-string', className),
91
107
  forId: id,
@@ -1 +1 @@
1
- {"version":3,"file":"Date.js","names":["_react","_interopRequireWildcard","require","_components","_hooks","_utils","_classnames","_interopRequireDefault","_FieldBlock","_dateFns","_useErrorMessage","_useTranslation","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","DateComponent","props","translations","useTranslation","errorMessages","useErrorMessage","path","required","Date","errorRequired","pattern","Field","schema","useMemo","_props$schema","type","validateRequired","useCallback","_ref","error","isValid","parseISO","preparedProps","fromInput","_ref2","date","start_date","end_date","range","id","className","label","labelDescription","help","info","warning","hasError","disabled","htmlAttributes","handleFocus","handleBlur","handleChange","useFieldProps","rangeValue","startDate","endDate","split","createElement","classnames","forId","pickSpacingProps","DatePicker","show_input","show_cancel_button","show_reset_button","status","suffix","HelpButton","title","content","on_change","on_reset","onFocus","onBlur","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react'\nimport { DatePicker, HelpButton } from '../../../../components'\nimport { useFieldProps } from '../../hooks'\nimport {\n FieldProps,\n FieldHelpProps,\n AllJSONSchemaVersions,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { parseISO, isValid } from 'date-fns'\nimport useErrorMessage from '../../hooks/useErrorMessage'\nimport useTranslation from '../../hooks/useTranslation'\nimport { DatePickerEvent } from '../../../../components/DatePicker'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string> & {\n // Validation\n pattern?: string\n /**\n * Defines if the Date field should support a value of two dates (starting and ending date).\n * The value needs to be a string containing two dates, separated by a pipe character (`|`) i.e. (`01-09-2024|30-09-2024`) when this is set to `true`.\n * Defaults to `false`.\n */\n range?: boolean\n }\n\nfunction DateComponent(props: Props) {\n const translations = useTranslation()\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: translations.Date.errorRequired,\n pattern: translations.Field.errorRequired,\n })\n\n const schema = useMemo<AllJSONSchemaVersions>(\n () =>\n props.schema ?? {\n type: 'string',\n pattern: props.pattern,\n },\n [props.schema, props.pattern]\n )\n\n const validateRequired = useCallback(\n (value: string, { required, error }) => {\n if (required && (!value || !isValid(parseISO(value)))) {\n return error\n }\n\n return undefined\n },\n []\n )\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n fromInput: ({\n date,\n start_date,\n end_date,\n }: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>) => {\n return range ? `${start_date}|${end_date}` : date\n },\n validateRequired,\n }\n\n const {\n id,\n className,\n label,\n labelDescription,\n value,\n help,\n info,\n warning,\n error,\n hasError,\n disabled,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n range,\n } = useFieldProps(preparedProps)\n\n const rangeValue = useMemo(() => {\n if (!range) {\n return\n }\n\n const [startDate, endDate] = value.split('|')\n\n return { startDate, endDate }\n }, [range, value])\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n label={label ?? translations.Date.label}\n labelDescription={labelDescription}\n info={info}\n warning={warning}\n disabled={disabled}\n error={error}\n {...pickSpacingProps(props)}\n >\n <DatePicker\n id={id}\n date={!range ? value : undefined}\n disabled={disabled}\n show_input={true}\n show_cancel_button={true}\n show_reset_button={true}\n start_date={range ? rangeValue.startDate : undefined}\n end_date={range ? rangeValue.endDate : undefined}\n status={hasError ? 'error' : undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n range={range}\n on_change={handleChange}\n on_reset={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Date.js","names":["_react","_interopRequireWildcard","require","_components","_hooks","_utils","_classnames","_interopRequireDefault","_FieldBlock","_Context","_dateFns","_useTranslation","_Date","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","DateComponent","props","translations","useTranslation","locale","useContext","SharedContext","errorMessages","useMemo","Date","errorRequired","schema","_props$schema","type","pattern","validateRequired","useCallback","_ref","required","error","isValid","parseISO","preparedProps","fromInput","_ref2","date","start_date","end_date","range","id","path","className","label","labelDescription","help","info","warning","hasError","disabled","htmlAttributes","handleFocus","handleBlur","handleChange","setDisplayValue","useFieldProps","rangeValue","startDate","endDate","split","formatDate","createElement","classnames","forId","pickSpacingProps","DatePicker","show_input","show_cancel_button","show_reset_button","status","suffix","HelpButton","title","content","on_change","on_reset","onFocus","onBlur","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { DatePicker, HelpButton } from '../../../../components'\nimport { useFieldProps } from '../../hooks'\nimport {\n FieldProps,\n FieldHelpProps,\n AllJSONSchemaVersions,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport SharedContext from '../../../../shared/Context'\nimport { parseISO, isValid } from 'date-fns'\nimport useTranslation from '../../hooks/useTranslation'\nimport { DatePickerEvent } from '../../../../components/DatePicker'\nimport { formatDate } from '../../Value/Date'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string> & {\n // Validation\n pattern?: string\n /**\n * Defines if the Date field should support a value of two dates (starting and ending date).\n * The value needs to be a string containing two dates, separated by a pipe character (`|`) i.e. (`01-09-2024|30-09-2024`) when this is set to `true`.\n * Defaults to `false`.\n */\n range?: boolean\n }\n\nfunction DateComponent(props: Props) {\n const translations = useTranslation()\n const { locale } = useContext(SharedContext)\n\n const errorMessages = useMemo(() => {\n return {\n 'Field.errorRequired': translations.Date.errorRequired,\n 'Field.errorPattern': translations.Date.errorRequired,\n ...props.errorMessages,\n }\n }, [props.errorMessages, translations.Date.errorRequired])\n\n const schema = useMemo<AllJSONSchemaVersions>(\n () =>\n props.schema ?? {\n type: 'string',\n pattern: props.pattern,\n },\n [props.schema, props.pattern]\n )\n\n const validateRequired = useCallback(\n (value: string, { required, error }) => {\n if (required && (!value || !isValid(parseISO(value)))) {\n return error\n }\n\n return undefined\n },\n []\n )\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n fromInput: ({\n date,\n start_date,\n end_date,\n }: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>) => {\n return range ? `${start_date}|${end_date}` : date\n },\n validateRequired,\n }\n\n const {\n id,\n path,\n className,\n label,\n labelDescription,\n value,\n help,\n info,\n warning,\n error,\n hasError,\n disabled,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n setDisplayValue,\n range,\n } = useFieldProps(preparedProps)\n\n const rangeValue = useMemo(() => {\n if (!range) {\n return\n }\n\n const [startDate, endDate] = value.split('|')\n\n return { startDate, endDate }\n }, [range, value])\n\n useMemo(() => {\n if (path && value) {\n setDisplayValue(path, formatDate(value, { locale }))\n }\n }, [locale, path, setDisplayValue, value])\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n label={label ?? translations.Date.label}\n labelDescription={labelDescription}\n info={info}\n warning={warning}\n disabled={disabled}\n error={error}\n {...pickSpacingProps(props)}\n >\n <DatePicker\n id={id}\n date={!range ? value : undefined}\n disabled={disabled}\n show_input={true}\n show_cancel_button={true}\n show_reset_button={true}\n start_date={range ? rangeValue.startDate : undefined}\n end_date={range ? rangeValue.endDate : undefined}\n status={hasError ? 'error' : undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n range={range}\n on_change={handleChange}\n on_reset={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":"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"}
@@ -4,24 +4,29 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _String = _interopRequireDefault(require("../String"));
9
- var _useErrorMessage = _interopRequireDefault(require("../../hooks/useErrorMessage"));
10
9
  var _useTranslation = _interopRequireDefault(require("../../hooks/useTranslation"));
11
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
13
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
14
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
14
15
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
16
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
16
17
  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); }
17
18
  function Email(props) {
18
- const translations = (0, _useTranslation.default)().Email;
19
- const errorMessages = (0, _useErrorMessage.default)(props.path, props.errorMessages, {
20
- required: translations.errorRequired,
21
- pattern: translations.errorPattern
22
- });
19
+ const {
20
+ label,
21
+ errorRequired,
22
+ errorPattern
23
+ } = (0, _useTranslation.default)().Email;
24
+ const errorMessages = (0, _react.useMemo)(() => _objectSpread({
25
+ 'Field.errorRequired': errorRequired,
26
+ 'Field.errorPattern': errorPattern
27
+ }, props.errorMessages), [errorPattern, errorRequired, props.errorMessages]);
23
28
  const StringFieldProps = _objectSpread(_objectSpread({
24
- label: translations.label,
29
+ label,
25
30
  autoComplete: 'email',
26
31
  inputMode: 'email',
27
32
  pattern: `^(?!.*\\.\\.)(?!.*--)(?!.*\\.-)(?!.*-\\.)` + `[a-zA-Z0-9]+([._%+-]?[a-zA-Z0-9]+)*@` + `(?:` + `([a-zA-Z0-9]+([.-]?[a-zA-Z0-9]+)*\\.[a-zA-Z]{2,})` + `|` + `\\[(?:` + `(?:\\d{1,3}\\.){3}\\d{1,3}` + `|` + `IPv6:[0-9a-fA-F:]+` + `)\\]` + `)$`,
@@ -1 +1 @@
1
- {"version":3,"file":"Email.js","names":["_react","_interopRequireDefault","require","_String","_useErrorMessage","_useTranslation","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","Email","props","translations","useTranslation","errorMessages","useErrorMessage","path","required","errorRequired","pattern","errorPattern","StringFieldProps","label","autoComplete","inputMode","trim","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Email/Email.tsx"],"sourcesContent":["import React from 'react'\nimport StringField, { Props as StringFieldProps } from '../String'\nimport useErrorMessage from '../../hooks/useErrorMessage'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type Props = StringFieldProps\n\nfunction Email(props: Props) {\n const translations = useTranslation().Email\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: translations.errorRequired,\n pattern: translations.errorPattern,\n })\n\n const StringFieldProps: Props = {\n label: translations.label,\n autoComplete: 'email',\n inputMode: 'email',\n pattern:\n `^(?!.*\\\\.\\\\.)(?!.*--)(?!.*\\\\.-)(?!.*-\\\\.)` + // No consecutive dots, hyphens, or dot-hyphen sequences\n `[a-zA-Z0-9]+([._%+-]?[a-zA-Z0-9]+)*@` + // Local part: letters, numbers, dots, etc.\n `(?:` +\n `([a-zA-Z0-9]+([.-]?[a-zA-Z0-9]+)*\\\\.[a-zA-Z]{2,})` + // Domain part: standard domain names\n `|` +\n `\\\\[(?:` +\n `(?:\\\\d{1,3}\\\\.){3}\\\\d{1,3}` + // Allow IPv4 address (no validation)\n `|` +\n `IPv6:[0-9a-fA-F:]+` + // Allow IPv6 address (no validation)\n `)\\\\]` +\n `)$`,\n trim: true,\n ...props,\n errorMessages,\n }\n\n return <StringField {...StringFieldProps} />\n}\n\nEmail._supportsSpacingProps = true\nexport default Email\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,gBAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,eAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAuD,SAAAD,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,IAAAC,eAAA,CAAAP,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAkB,yBAAA,GAAAlB,MAAA,CAAAmB,gBAAA,CAAAT,MAAA,EAAAV,MAAA,CAAAkB,yBAAA,CAAAJ,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAoB,cAAA,CAAAV,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AAAA,SAAAO,gBAAAxB,GAAA,EAAAuB,GAAA,EAAAK,KAAA,IAAAL,GAAA,GAAAM,cAAA,CAAAN,GAAA,OAAAA,GAAA,IAAAvB,GAAA,IAAAO,MAAA,CAAAoB,cAAA,CAAA3B,GAAA,EAAAuB,GAAA,IAAAK,KAAA,EAAAA,KAAA,EAAAf,UAAA,QAAAiB,YAAA,QAAAC,QAAA,oBAAA/B,GAAA,CAAAuB,GAAA,IAAAK,KAAA,WAAA5B,GAAA;AAAA,SAAA6B,eAAAG,GAAA,QAAAT,GAAA,GAAAU,YAAA,CAAAD,GAAA,2BAAAT,GAAA,gBAAAA,GAAA,GAAAW,MAAA,CAAAX,GAAA;AAAA,SAAAU,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,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAIvD,SAASU,KAAKA,CAACC,KAAY,EAAE;EAC3B,MAAMC,YAAY,GAAG,IAAAC,uBAAc,EAAC,CAAC,CAACH,KAAK;EAE3C,MAAMI,aAAa,GAAG,IAAAC,wBAAe,EAACJ,KAAK,CAACK,IAAI,EAAEL,KAAK,CAACG,aAAa,EAAE;IACrEG,QAAQ,EAAEL,YAAY,CAACM,aAAa;IACpCC,OAAO,EAAEP,YAAY,CAACQ;EACxB,CAAC,CAAC;EAEF,MAAMC,gBAAuB,GAAAxC,aAAA,CAAAA,aAAA;IAC3ByC,KAAK,EAAEV,YAAY,CAACU,KAAK;IACzBC,YAAY,EAAE,OAAO;IACrBC,SAAS,EAAE,OAAO;IAClBL,OAAO,EACJ,2CAA0C,GAC1C,sCAAqC,GACrC,KAAI,GACJ,mDAAkD,GAClD,GAAE,GACF,QAAO,GACP,4BAA2B,GAC3B,GAAE,GACF,oBAAmB,GACnB,MAAK,GACL,IAAG;IACNM,IAAI,EAAE;EAAI,GACPd,KAAK;IACRG;EAAa,EACd;EAED,OAAOvD,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAAChE,OAAA,CAAAK,OAAW,EAAKsD,gBAAmB,CAAC;AAC9C;AAEAX,KAAK,CAACiB,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GACnBlB,KAAK;AAAAmB,OAAA,CAAA9D,OAAA,GAAA6D,QAAA"}
1
+ {"version":3,"file":"Email.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_useTranslation","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","Email","props","label","errorRequired","errorPattern","useTranslation","errorMessages","useMemo","StringFieldProps","autoComplete","inputMode","pattern","trim","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Email/Email.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport StringField, { Props as StringFieldProps } from '../String'\nimport useTranslation from '../../hooks/useTranslation'\n\nexport type Props = StringFieldProps\n\nfunction Email(props: Props) {\n const { label, errorRequired, errorPattern } = useTranslation().Email\n\n const errorMessages = useMemo(\n () => ({\n 'Field.errorRequired': errorRequired,\n 'Field.errorPattern': errorPattern,\n ...props.errorMessages,\n }),\n [errorPattern, errorRequired, props.errorMessages]\n )\n\n const StringFieldProps: Props = {\n label,\n autoComplete: 'email',\n inputMode: 'email',\n pattern:\n `^(?!.*\\\\.\\\\.)(?!.*--)(?!.*\\\\.-)(?!.*-\\\\.)` + // No consecutive dots, hyphens, or dot-hyphen sequences\n `[a-zA-Z0-9]+([._%+-]?[a-zA-Z0-9]+)*@` + // Local part: letters, numbers, dots, etc.\n `(?:` +\n `([a-zA-Z0-9]+([.-]?[a-zA-Z0-9]+)*\\\\.[a-zA-Z]{2,})` + // Domain part: standard domain names\n `|` +\n `\\\\[(?:` +\n `(?:\\\\d{1,3}\\\\.){3}\\\\d{1,3}` + // Allow IPv4 address (no validation)\n `|` +\n `IPv6:[0-9a-fA-F:]+` + // Allow IPv6 address (no validation)\n `)\\\\]` +\n `)$`,\n trim: true,\n ...props,\n errorMessages,\n }\n\n return <StringField {...StringFieldProps} />\n}\n\nEmail._supportsSpacingProps = true\nexport default Email\n"],"mappings":"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"}