@dnb/eufemia 10.18.0 → 10.20.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 (1199) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/cjs/components/AriaLive.d.ts +12 -0
  3. package/cjs/components/AriaLive.js +24 -0
  4. package/cjs/components/AriaLive.js.map +1 -0
  5. package/cjs/components/accordion/AccordionContent.d.ts +1 -1
  6. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  7. package/cjs/components/accordion/style/dnb-accordion.css +0 -3
  8. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  9. package/cjs/components/accordion/style/dnb-accordion.scss +0 -5
  10. package/cjs/components/aria-live/AriaLive.d.ts +6 -0
  11. package/cjs/components/aria-live/AriaLive.js +23 -0
  12. package/cjs/components/aria-live/AriaLive.js.map +1 -0
  13. package/cjs/components/aria-live/index.d.ts +7 -0
  14. package/cjs/components/aria-live/index.js +24 -0
  15. package/cjs/components/aria-live/index.js.map +1 -0
  16. package/cjs/components/aria-live/types.d.ts +44 -0
  17. package/cjs/components/aria-live/types.js +1 -0
  18. package/cjs/components/aria-live/types.js.map +1 -0
  19. package/cjs/components/aria-live/useAriaLive.d.ts +273 -0
  20. package/cjs/components/aria-live/useAriaLive.js +84 -0
  21. package/cjs/components/aria-live/useAriaLive.js.map +1 -0
  22. package/cjs/components/autocomplete/Autocomplete.d.ts +0 -1
  23. package/cjs/components/autocomplete/Autocomplete.js +24 -46
  24. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  25. package/cjs/components/breadcrumb/Breadcrumb.js +24 -21
  26. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  27. package/cjs/components/breadcrumb/BreadcrumbItem.js +16 -7
  28. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  29. package/cjs/components/breadcrumb/BreadcrumbMultiple.js +1 -1
  30. package/cjs/components/breadcrumb/BreadcrumbMultiple.js.map +1 -1
  31. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +13 -3
  32. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  33. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +15 -3
  34. package/cjs/components/card/Card.d.ts +6 -4
  35. package/cjs/components/card/Card.js +11 -15
  36. package/cjs/components/card/Card.js.map +1 -1
  37. package/cjs/components/card/style/dnb-card.css +29 -0
  38. package/cjs/components/card/style/dnb-card.min.css +1 -1
  39. package/cjs/components/card/style/dnb-card.scss +41 -0
  40. package/cjs/components/card/style/themes/dnb-card-theme-ui.css +1 -19
  41. package/cjs/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  42. package/cjs/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
  43. package/cjs/components/date-picker/DatePicker.d.ts +3 -0
  44. package/cjs/components/date-picker/DatePickerProvider.js +9 -5
  45. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  46. package/cjs/components/flex/Container.d.ts +4 -2
  47. package/cjs/components/flex/Container.js +28 -9
  48. package/cjs/components/flex/Container.js.map +1 -1
  49. package/cjs/components/flex/Item.js +8 -13
  50. package/cjs/components/flex/Item.js.map +1 -1
  51. package/cjs/components/flex/style/dnb-flex.css +6 -3
  52. package/cjs/components/flex/style/dnb-flex.min.css +1 -1
  53. package/cjs/components/flex/style/flex-container.scss +6 -7
  54. package/cjs/components/flex/utils.d.ts +35 -7
  55. package/cjs/components/flex/utils.js +65 -33
  56. package/cjs/components/flex/utils.js.map +1 -1
  57. package/cjs/components/form-status/FormStatus.d.ts +5 -1
  58. package/cjs/components/form-status/FormStatus.js +38 -44
  59. package/cjs/components/form-status/FormStatus.js.map +1 -1
  60. package/cjs/components/form-status/style/dnb-form-status.css +0 -18
  61. package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
  62. package/cjs/components/form-status/style/dnb-form-status.scss +0 -45
  63. package/cjs/components/global-status/GlobalStatus.js +52 -138
  64. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  65. package/cjs/components/global-status/style/dnb-global-status.css +6 -16
  66. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  67. package/cjs/components/global-status/style/dnb-global-status.scss +11 -23
  68. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
  69. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  70. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
  71. package/cjs/components/height-animation/HeightAnimation.d.ts +12 -4
  72. package/cjs/components/height-animation/HeightAnimation.js +31 -14
  73. package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
  74. package/cjs/components/height-animation/HeightAnimationInstance.d.ts +35 -18
  75. package/cjs/components/height-animation/HeightAnimationInstance.js +186 -158
  76. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  77. package/cjs/components/height-animation/style/dnb-height-animation.css +16 -2
  78. package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
  79. package/cjs/components/height-animation/style/dnb-height-animation.scss +18 -2
  80. package/cjs/components/height-animation/useHeightAnimation.d.ts +6 -1
  81. package/cjs/components/height-animation/useHeightAnimation.js +125 -92
  82. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  83. package/cjs/components/index.d.ts +2 -1
  84. package/cjs/components/index.js +7 -0
  85. package/cjs/components/index.js.map +1 -1
  86. package/cjs/components/input/Input.js +0 -3
  87. package/cjs/components/input/Input.js.map +1 -1
  88. package/cjs/components/input-masked/MultiInputMask.d.ts +1 -1
  89. package/cjs/components/input-masked/MultiInputMask.js +52 -41
  90. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  91. package/cjs/components/lib.d.ts +3 -1
  92. package/cjs/components/lib.js +8 -0
  93. package/cjs/components/lib.js.map +1 -1
  94. package/cjs/components/number-format/NumberFormat.d.ts +7 -12
  95. package/cjs/components/number-format/NumberUtils.d.ts +8 -2
  96. package/cjs/components/number-format/useNumberFormat.d.ts +1 -1
  97. package/cjs/components/section/Section.d.ts +6 -3
  98. package/cjs/components/section/Section.js.map +1 -1
  99. package/cjs/components/section/style/dnb-section.css +1 -0
  100. package/cjs/components/section/style/dnb-section.min.css +1 -1
  101. package/cjs/components/section/style/dnb-section.scss +1 -0
  102. package/cjs/components/space/SpacingUtils.js +5 -1
  103. package/cjs/components/space/SpacingUtils.js.map +1 -1
  104. package/cjs/components/step-indicator/StepIndicatorItem.js +3 -21
  105. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  106. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +2 -16
  107. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  108. package/cjs/components/step-indicator/style/dnb-step-indicator.css +0 -5
  109. package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  110. package/cjs/components/step-indicator/style/dnb-step-indicator.scss +0 -7
  111. package/cjs/components/table/TableAccordion.js +1 -1
  112. package/cjs/components/table/TableAccordion.js.map +1 -1
  113. package/cjs/components/table/TableAccordionContent.js +51 -23
  114. package/cjs/components/table/TableAccordionContent.js.map +1 -1
  115. package/cjs/components/table/style/dnb-table.css +6 -3
  116. package/cjs/components/table/style/dnb-table.min.css +1 -1
  117. package/cjs/components/table/style/table-accordion.scss +6 -3
  118. package/cjs/components/tabs/Tabs.js +2 -1
  119. package/cjs/components/tabs/Tabs.js.map +1 -1
  120. package/cjs/components/tabs/TabsContentWrapper.d.ts +1 -0
  121. package/cjs/components/tabs/TabsContentWrapper.js +8 -6
  122. package/cjs/components/tabs/TabsContentWrapper.js.map +1 -1
  123. package/cjs/components/textarea/Textarea.d.ts +5 -0
  124. package/cjs/components/textarea/Textarea.js +16 -3
  125. package/cjs/components/textarea/Textarea.js.map +1 -1
  126. package/cjs/components/textarea/style/dnb-textarea.css +10 -3
  127. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  128. package/cjs/components/textarea/style/dnb-textarea.scss +13 -3
  129. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.css +15 -2
  130. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  131. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.scss +15 -2
  132. package/cjs/components/upload/Upload.js +15 -18
  133. package/cjs/components/upload/Upload.js.map +1 -1
  134. package/cjs/components/upload/UploadFileInput.js +3 -1
  135. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  136. package/cjs/components/upload/UploadFileList.js +1 -1
  137. package/cjs/components/upload/UploadFileList.js.map +1 -1
  138. package/cjs/components/upload/UploadStatus.js +6 -2
  139. package/cjs/components/upload/UploadStatus.js.map +1 -1
  140. package/cjs/components/upload/useUpload.js +5 -6
  141. package/cjs/components/upload/useUpload.js.map +1 -1
  142. package/cjs/elements/lib.d.ts +6 -0
  143. package/cjs/elements/typography/H1.d.ts +1 -0
  144. package/cjs/elements/typography/H1.js +1 -1
  145. package/cjs/elements/typography/H1.js.map +1 -1
  146. package/cjs/elements/typography/H2.d.ts +1 -0
  147. package/cjs/elements/typography/H2.js +1 -1
  148. package/cjs/elements/typography/H2.js.map +1 -1
  149. package/cjs/elements/typography/H3.d.ts +1 -0
  150. package/cjs/elements/typography/H3.js +1 -1
  151. package/cjs/elements/typography/H3.js.map +1 -1
  152. package/cjs/elements/typography/H4.d.ts +1 -0
  153. package/cjs/elements/typography/H4.js +1 -1
  154. package/cjs/elements/typography/H4.js.map +1 -1
  155. package/cjs/elements/typography/H5.d.ts +1 -0
  156. package/cjs/elements/typography/H5.js +1 -1
  157. package/cjs/elements/typography/H5.js.map +1 -1
  158. package/cjs/elements/typography/H6.d.ts +1 -0
  159. package/cjs/elements/typography/H6.js +1 -1
  160. package/cjs/elements/typography/H6.js.map +1 -1
  161. package/cjs/extensions/forms/DataContext/Context.d.ts +18 -5
  162. package/cjs/extensions/forms/DataContext/Context.js +9 -0
  163. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  164. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
  165. package/cjs/extensions/forms/DataContext/Provider/Provider.js +128 -48
  166. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  167. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -1
  168. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  169. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  170. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +5 -4
  171. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  172. package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +2 -2
  173. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  174. package/cjs/extensions/forms/Field/Currency/Currency.d.ts +2 -2
  175. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  176. package/cjs/extensions/forms/Field/Date/Date.js +8 -4
  177. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  178. package/cjs/extensions/forms/Field/Email/Email.d.ts +2 -2
  179. package/cjs/extensions/forms/Field/Email/Email.js +5 -4
  180. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  181. package/cjs/extensions/forms/Field/Expiry/Expiry.js +18 -16
  182. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  183. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  184. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +5 -4
  185. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  186. package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -4
  187. package/cjs/extensions/forms/Field/Number/Number.js +28 -27
  188. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  189. package/cjs/extensions/forms/Field/Number/style/dnb-number.css +0 -6
  190. package/cjs/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  191. package/cjs/extensions/forms/Field/Number/style/dnb-number.scss +0 -1
  192. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.css +4 -0
  193. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.min.css +1 -1
  194. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.scss +7 -0
  195. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.css +4 -0
  196. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.min.css +1 -1
  197. package/cjs/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.scss +9 -0
  198. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +2 -2
  199. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +5 -4
  200. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  201. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
  202. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -7
  203. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  204. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  205. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  206. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
  207. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  208. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
  209. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +9 -5
  210. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  211. package/cjs/extensions/forms/Field/Selection/Selection.js +12 -7
  212. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  213. package/cjs/extensions/forms/Field/String/String.d.ts +4 -2
  214. package/cjs/extensions/forms/Field/String/String.js +17 -9
  215. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  216. package/cjs/extensions/forms/Field/Toggle/Toggle.js +20 -13
  217. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  218. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  219. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +11 -8
  220. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  221. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +22 -5
  222. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  223. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +29 -1
  224. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +4 -0
  225. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +1 -0
  226. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +6 -0
  227. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.css +4 -0
  228. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.min.css +1 -0
  229. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.scss +6 -0
  230. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  231. package/cjs/extensions/forms/Form/Handler/Handler.js +7 -1
  232. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  233. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
  234. package/cjs/extensions/forms/Form/Visibility/Visibility.js +54 -39
  235. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  236. package/cjs/extensions/forms/Form/data-context/getData.d.ts +8 -0
  237. package/cjs/extensions/forms/Form/data-context/getData.js +21 -0
  238. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -0
  239. package/cjs/extensions/forms/Form/data-context/setData.d.ts +2 -0
  240. package/cjs/extensions/forms/Form/data-context/setData.js +12 -0
  241. package/cjs/extensions/forms/Form/data-context/setData.js.map +1 -0
  242. package/cjs/extensions/forms/Form/data-context/useData.d.ts +22 -0
  243. package/cjs/extensions/forms/Form/data-context/useData.js +65 -0
  244. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -0
  245. package/cjs/extensions/forms/Form/data-context/useError.d.ts +5 -0
  246. package/cjs/extensions/forms/Form/data-context/useError.js +18 -0
  247. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -0
  248. package/cjs/extensions/forms/Form/index.d.ts +4 -1
  249. package/cjs/extensions/forms/Form/index.js +22 -1
  250. package/cjs/extensions/forms/Form/index.js.map +1 -1
  251. package/cjs/extensions/forms/Iterate/Array/Array.d.ts +2 -2
  252. package/cjs/extensions/forms/Iterate/Array/Array.js +3 -1
  253. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  254. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
  255. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +30 -21
  256. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  257. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
  258. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  259. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
  260. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  261. package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  262. package/cjs/extensions/forms/Value/Currency/Currency.d.ts +2 -2
  263. package/cjs/extensions/forms/Value/Currency/Currency.js +2 -3
  264. package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
  265. package/cjs/extensions/forms/Value/Date/Date.d.ts +2 -2
  266. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  267. package/cjs/extensions/forms/Value/Email/Email.d.ts +2 -2
  268. package/cjs/extensions/forms/Value/Email/Email.js.map +1 -1
  269. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  270. package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  271. package/cjs/extensions/forms/Value/Number/Number.d.ts +6 -10
  272. package/cjs/extensions/forms/Value/Number/Number.js +25 -27
  273. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  274. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.d.ts +2 -2
  275. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
  276. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  277. package/cjs/extensions/forms/hooks/index.d.ts +1 -0
  278. package/cjs/extensions/forms/hooks/index.js +7 -0
  279. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  280. package/cjs/extensions/forms/hooks/useDataValue.d.ts +10 -1
  281. package/cjs/extensions/forms/hooks/useDataValue.js +87 -28
  282. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  283. package/cjs/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
  284. package/cjs/extensions/forms/hooks/useErrorMessage.js +23 -0
  285. package/cjs/extensions/forms/hooks/useErrorMessage.js.map +1 -0
  286. package/cjs/extensions/forms/index.d.ts +1 -0
  287. package/cjs/extensions/forms/index.js +9 -1
  288. package/cjs/extensions/forms/index.js.map +1 -1
  289. package/cjs/extensions/forms/style/dnb-forms.css +37 -11
  290. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  291. package/cjs/extensions/forms/types.d.ts +26 -9
  292. package/cjs/extensions/forms/types.js.map +1 -1
  293. package/cjs/extensions/forms/utils/ajv.d.ts +47 -6
  294. package/cjs/extensions/forms/utils/ajv.js +29 -13
  295. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  296. package/cjs/extensions/forms/utils/index.d.ts +0 -1
  297. package/cjs/extensions/forms/utils/index.js +0 -12
  298. package/cjs/extensions/forms/utils/index.js.map +1 -1
  299. package/cjs/fragments/TextCounter.d.ts +12 -0
  300. package/cjs/fragments/TextCounter.js +24 -0
  301. package/cjs/fragments/TextCounter.js.map +1 -0
  302. package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -0
  303. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  304. package/cjs/fragments/index.d.ts +2 -1
  305. package/cjs/fragments/index.js +7 -0
  306. package/cjs/fragments/index.js.map +1 -1
  307. package/cjs/fragments/lib.d.ts +3 -1
  308. package/cjs/fragments/lib.js +9 -1
  309. package/cjs/fragments/lib.js.map +1 -1
  310. package/cjs/fragments/text-counter/TextCounter.d.ts +8 -0
  311. package/cjs/fragments/text-counter/TextCounter.js +61 -0
  312. package/cjs/fragments/text-counter/TextCounter.js.map +1 -0
  313. package/cjs/fragments/text-counter/index.d.ts +5 -0
  314. package/cjs/fragments/text-counter/index.js +17 -0
  315. package/cjs/fragments/text-counter/index.js.map +1 -0
  316. package/cjs/fragments/text-counter/style/dnb-text-counter.scss +15 -0
  317. package/cjs/fragments/text-counter/style/index.d.ts +1 -0
  318. package/cjs/fragments/text-counter/style/index.js +4 -0
  319. package/cjs/fragments/text-counter/style/index.js.map +1 -0
  320. package/cjs/fragments/text-counter/style/themes/dnb-text-counter-theme-sbanken.scss +8 -0
  321. package/cjs/fragments/text-counter/style/themes/dnb-text-counter-theme-ui.scss +8 -0
  322. package/cjs/fragments/text-counter/style/themes/ui.d.ts +1 -0
  323. package/cjs/fragments/text-counter/style/themes/ui.js +4 -0
  324. package/cjs/fragments/text-counter/style/themes/ui.js.map +1 -0
  325. package/cjs/fragments/text-counter/style.d.ts +5 -0
  326. package/cjs/fragments/text-counter/style.js +4 -0
  327. package/cjs/fragments/text-counter/style.js.map +1 -0
  328. package/cjs/index.d.ts +2 -1
  329. package/cjs/index.js +7 -0
  330. package/cjs/index.js.map +1 -1
  331. package/cjs/shared/Eufemia.d.ts +1 -1
  332. package/cjs/shared/Eufemia.js +2 -2
  333. package/cjs/shared/Eufemia.js.map +1 -1
  334. package/cjs/shared/component-helper.js +0 -3
  335. package/cjs/shared/component-helper.js.map +1 -1
  336. package/cjs/shared/helpers/useSharedState.d.ts +33 -10
  337. package/cjs/shared/helpers/useSharedState.js +78 -40
  338. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  339. package/cjs/shared/locales/en-GB.d.ts +7 -0
  340. package/cjs/shared/locales/en-GB.js +9 -2
  341. package/cjs/shared/locales/en-GB.js.map +1 -1
  342. package/cjs/shared/locales/en-US.d.ts +7 -0
  343. package/cjs/shared/locales/index.d.ts +14 -0
  344. package/cjs/shared/locales/nb-NO.d.ts +7 -0
  345. package/cjs/shared/locales/nb-NO.js +7 -0
  346. package/cjs/shared/locales/nb-NO.js.map +1 -1
  347. package/cjs/style/core/utilities.scss +1 -1
  348. package/cjs/style/dnb-ui-components.css +134 -67
  349. package/cjs/style/dnb-ui-components.min.css +3 -3
  350. package/cjs/style/dnb-ui-extensions.css +37 -11
  351. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  352. package/cjs/style/dnb-ui-forms.css +37 -11
  353. package/cjs/style/dnb-ui-forms.min.css +1 -1
  354. package/cjs/style/dnb-ui-fragments.css +10 -0
  355. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  356. package/cjs/style/dnb-ui-fragments.scss +1 -0
  357. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +203 -102
  358. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +7 -7
  359. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  360. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +46 -11
  361. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  362. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  363. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +46 -11
  364. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  365. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  366. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +188 -97
  367. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  368. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -0
  369. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +46 -11
  370. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  371. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  372. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +46 -11
  373. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  374. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  375. package/cjs/style/themes/theme-ui/ui-theme-components.css +203 -102
  376. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +7 -7
  377. package/cjs/style/themes/theme-ui/ui-theme-components.scss +1 -0
  378. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +46 -11
  379. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  380. package/cjs/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  381. package/cjs/style/themes/theme-ui/ui-theme-forms.css +46 -11
  382. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  383. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  384. package/components/AriaLive.d.ts +12 -0
  385. package/components/AriaLive.js +4 -0
  386. package/components/AriaLive.js.map +1 -0
  387. package/components/accordion/AccordionContent.d.ts +1 -1
  388. package/components/accordion/AccordionContent.js.map +1 -1
  389. package/components/accordion/style/dnb-accordion.css +0 -3
  390. package/components/accordion/style/dnb-accordion.min.css +1 -1
  391. package/components/accordion/style/dnb-accordion.scss +0 -5
  392. package/components/aria-live/AriaLive.d.ts +6 -0
  393. package/components/aria-live/AriaLive.js +15 -0
  394. package/components/aria-live/AriaLive.js.map +1 -0
  395. package/components/aria-live/index.d.ts +7 -0
  396. package/components/aria-live/index.js +4 -0
  397. package/components/aria-live/index.js.map +1 -0
  398. package/components/aria-live/types.d.ts +44 -0
  399. package/components/aria-live/types.js +1 -0
  400. package/components/aria-live/types.js.map +1 -0
  401. package/components/aria-live/useAriaLive.d.ts +273 -0
  402. package/components/aria-live/useAriaLive.js +75 -0
  403. package/components/aria-live/useAriaLive.js.map +1 -0
  404. package/components/autocomplete/Autocomplete.d.ts +0 -1
  405. package/components/autocomplete/Autocomplete.js +24 -46
  406. package/components/autocomplete/Autocomplete.js.map +1 -1
  407. package/components/breadcrumb/Breadcrumb.js +25 -22
  408. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  409. package/components/breadcrumb/BreadcrumbItem.js +16 -7
  410. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  411. package/components/breadcrumb/BreadcrumbMultiple.js +1 -1
  412. package/components/breadcrumb/BreadcrumbMultiple.js.map +1 -1
  413. package/components/breadcrumb/style/dnb-breadcrumb.css +13 -3
  414. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  415. package/components/breadcrumb/style/dnb-breadcrumb.scss +15 -3
  416. package/components/card/Card.d.ts +6 -4
  417. package/components/card/Card.js +11 -15
  418. package/components/card/Card.js.map +1 -1
  419. package/components/card/style/dnb-card.css +29 -0
  420. package/components/card/style/dnb-card.min.css +1 -1
  421. package/components/card/style/dnb-card.scss +41 -0
  422. package/components/card/style/themes/dnb-card-theme-ui.css +1 -19
  423. package/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  424. package/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
  425. package/components/date-picker/DatePicker.d.ts +3 -0
  426. package/components/date-picker/DatePickerProvider.js +9 -5
  427. package/components/date-picker/DatePickerProvider.js.map +1 -1
  428. package/components/flex/Container.d.ts +4 -2
  429. package/components/flex/Container.js +26 -9
  430. package/components/flex/Container.js.map +1 -1
  431. package/components/flex/Item.js +8 -11
  432. package/components/flex/Item.js.map +1 -1
  433. package/components/flex/style/dnb-flex.css +6 -3
  434. package/components/flex/style/dnb-flex.min.css +1 -1
  435. package/components/flex/style/flex-container.scss +6 -7
  436. package/components/flex/utils.d.ts +35 -7
  437. package/components/flex/utils.js +56 -24
  438. package/components/flex/utils.js.map +1 -1
  439. package/components/form-status/FormStatus.d.ts +5 -1
  440. package/components/form-status/FormStatus.js +38 -44
  441. package/components/form-status/FormStatus.js.map +1 -1
  442. package/components/form-status/style/dnb-form-status.css +0 -18
  443. package/components/form-status/style/dnb-form-status.min.css +1 -1
  444. package/components/form-status/style/dnb-form-status.scss +0 -45
  445. package/components/global-status/GlobalStatus.js +53 -139
  446. package/components/global-status/GlobalStatus.js.map +1 -1
  447. package/components/global-status/style/dnb-global-status.css +6 -16
  448. package/components/global-status/style/dnb-global-status.min.css +1 -1
  449. package/components/global-status/style/dnb-global-status.scss +11 -23
  450. package/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
  451. package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  452. package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
  453. package/components/height-animation/HeightAnimation.d.ts +12 -4
  454. package/components/height-animation/HeightAnimation.js +27 -14
  455. package/components/height-animation/HeightAnimation.js.map +1 -1
  456. package/components/height-animation/HeightAnimationInstance.d.ts +35 -18
  457. package/components/height-animation/HeightAnimationInstance.js +186 -158
  458. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  459. package/components/height-animation/style/dnb-height-animation.css +16 -2
  460. package/components/height-animation/style/dnb-height-animation.min.css +1 -1
  461. package/components/height-animation/style/dnb-height-animation.scss +18 -2
  462. package/components/height-animation/useHeightAnimation.d.ts +6 -1
  463. package/components/height-animation/useHeightAnimation.js +124 -92
  464. package/components/height-animation/useHeightAnimation.js.map +1 -1
  465. package/components/index.d.ts +2 -1
  466. package/components/index.js +2 -1
  467. package/components/index.js.map +1 -1
  468. package/components/input/Input.js +0 -3
  469. package/components/input/Input.js.map +1 -1
  470. package/components/input-masked/MultiInputMask.d.ts +1 -1
  471. package/components/input-masked/MultiInputMask.js +52 -41
  472. package/components/input-masked/MultiInputMask.js.map +1 -1
  473. package/components/lib.d.ts +3 -1
  474. package/components/lib.js +3 -1
  475. package/components/lib.js.map +1 -1
  476. package/components/number-format/NumberFormat.d.ts +7 -12
  477. package/components/number-format/NumberUtils.d.ts +8 -2
  478. package/components/number-format/useNumberFormat.d.ts +1 -1
  479. package/components/section/Section.d.ts +6 -3
  480. package/components/section/Section.js.map +1 -1
  481. package/components/section/style/dnb-section.css +1 -0
  482. package/components/section/style/dnb-section.min.css +1 -1
  483. package/components/section/style/dnb-section.scss +1 -0
  484. package/components/space/SpacingUtils.js +5 -1
  485. package/components/space/SpacingUtils.js.map +1 -1
  486. package/components/step-indicator/StepIndicatorItem.js +4 -22
  487. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  488. package/components/step-indicator/StepIndicatorTriggerButton.js +3 -17
  489. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  490. package/components/step-indicator/style/dnb-step-indicator.css +0 -5
  491. package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  492. package/components/step-indicator/style/dnb-step-indicator.scss +0 -7
  493. package/components/table/TableAccordion.js +1 -1
  494. package/components/table/TableAccordion.js.map +1 -1
  495. package/components/table/TableAccordionContent.js +48 -23
  496. package/components/table/TableAccordionContent.js.map +1 -1
  497. package/components/table/style/dnb-table.css +6 -3
  498. package/components/table/style/dnb-table.min.css +1 -1
  499. package/components/table/style/table-accordion.scss +6 -3
  500. package/components/tabs/Tabs.js +2 -1
  501. package/components/tabs/Tabs.js.map +1 -1
  502. package/components/tabs/TabsContentWrapper.d.ts +1 -0
  503. package/components/tabs/TabsContentWrapper.js +8 -6
  504. package/components/tabs/TabsContentWrapper.js.map +1 -1
  505. package/components/textarea/Textarea.d.ts +5 -0
  506. package/components/textarea/Textarea.js +16 -3
  507. package/components/textarea/Textarea.js.map +1 -1
  508. package/components/textarea/style/dnb-textarea.css +10 -3
  509. package/components/textarea/style/dnb-textarea.min.css +1 -1
  510. package/components/textarea/style/dnb-textarea.scss +13 -3
  511. package/components/textarea/style/themes/dnb-textarea-theme-ui.css +15 -2
  512. package/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  513. package/components/textarea/style/themes/dnb-textarea-theme-ui.scss +15 -2
  514. package/components/upload/Upload.js +13 -18
  515. package/components/upload/Upload.js.map +1 -1
  516. package/components/upload/UploadFileInput.js +3 -1
  517. package/components/upload/UploadFileInput.js.map +1 -1
  518. package/components/upload/UploadFileList.js +1 -1
  519. package/components/upload/UploadFileList.js.map +1 -1
  520. package/components/upload/UploadStatus.js +6 -2
  521. package/components/upload/UploadStatus.js.map +1 -1
  522. package/components/upload/useUpload.js +5 -7
  523. package/components/upload/useUpload.js.map +1 -1
  524. package/elements/lib.d.ts +6 -0
  525. package/elements/typography/H1.d.ts +1 -0
  526. package/elements/typography/H1.js +1 -1
  527. package/elements/typography/H1.js.map +1 -1
  528. package/elements/typography/H2.d.ts +1 -0
  529. package/elements/typography/H2.js +1 -1
  530. package/elements/typography/H2.js.map +1 -1
  531. package/elements/typography/H3.d.ts +1 -0
  532. package/elements/typography/H3.js +1 -1
  533. package/elements/typography/H3.js.map +1 -1
  534. package/elements/typography/H4.d.ts +1 -0
  535. package/elements/typography/H4.js +1 -1
  536. package/elements/typography/H4.js.map +1 -1
  537. package/elements/typography/H5.d.ts +1 -0
  538. package/elements/typography/H5.js +1 -1
  539. package/elements/typography/H5.js.map +1 -1
  540. package/elements/typography/H6.d.ts +1 -0
  541. package/elements/typography/H6.js +1 -1
  542. package/elements/typography/H6.js.map +1 -1
  543. package/es/components/AriaLive.d.ts +12 -0
  544. package/es/components/AriaLive.js +4 -0
  545. package/es/components/AriaLive.js.map +1 -0
  546. package/es/components/accordion/AccordionContent.d.ts +1 -1
  547. package/es/components/accordion/AccordionContent.js.map +1 -1
  548. package/es/components/accordion/style/dnb-accordion.css +0 -3
  549. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  550. package/es/components/accordion/style/dnb-accordion.scss +0 -5
  551. package/es/components/aria-live/AriaLive.d.ts +6 -0
  552. package/es/components/aria-live/AriaLive.js +15 -0
  553. package/es/components/aria-live/AriaLive.js.map +1 -0
  554. package/es/components/aria-live/index.d.ts +7 -0
  555. package/es/components/aria-live/index.js +4 -0
  556. package/es/components/aria-live/index.js.map +1 -0
  557. package/es/components/aria-live/types.d.ts +44 -0
  558. package/es/components/aria-live/types.js +1 -0
  559. package/es/components/aria-live/types.js.map +1 -0
  560. package/es/components/aria-live/useAriaLive.d.ts +273 -0
  561. package/es/components/aria-live/useAriaLive.js +75 -0
  562. package/es/components/aria-live/useAriaLive.js.map +1 -0
  563. package/es/components/autocomplete/Autocomplete.d.ts +0 -1
  564. package/es/components/autocomplete/Autocomplete.js +24 -46
  565. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  566. package/es/components/breadcrumb/Breadcrumb.js +25 -22
  567. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  568. package/es/components/breadcrumb/BreadcrumbItem.js +16 -7
  569. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  570. package/es/components/breadcrumb/BreadcrumbMultiple.js +1 -1
  571. package/es/components/breadcrumb/BreadcrumbMultiple.js.map +1 -1
  572. package/es/components/breadcrumb/style/dnb-breadcrumb.css +13 -3
  573. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  574. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +15 -3
  575. package/es/components/card/Card.d.ts +6 -4
  576. package/es/components/card/Card.js +11 -15
  577. package/es/components/card/Card.js.map +1 -1
  578. package/es/components/card/style/dnb-card.css +29 -0
  579. package/es/components/card/style/dnb-card.min.css +1 -1
  580. package/es/components/card/style/dnb-card.scss +41 -0
  581. package/es/components/card/style/themes/dnb-card-theme-ui.css +1 -19
  582. package/es/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  583. package/es/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
  584. package/es/components/date-picker/DatePicker.d.ts +3 -0
  585. package/es/components/date-picker/DatePickerProvider.js +9 -5
  586. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  587. package/es/components/flex/Container.d.ts +4 -2
  588. package/es/components/flex/Container.js +26 -9
  589. package/es/components/flex/Container.js.map +1 -1
  590. package/es/components/flex/Item.js +8 -11
  591. package/es/components/flex/Item.js.map +1 -1
  592. package/es/components/flex/style/dnb-flex.css +6 -3
  593. package/es/components/flex/style/dnb-flex.min.css +1 -1
  594. package/es/components/flex/style/flex-container.scss +6 -7
  595. package/es/components/flex/utils.d.ts +35 -7
  596. package/es/components/flex/utils.js +55 -24
  597. package/es/components/flex/utils.js.map +1 -1
  598. package/es/components/form-status/FormStatus.d.ts +5 -1
  599. package/es/components/form-status/FormStatus.js +38 -44
  600. package/es/components/form-status/FormStatus.js.map +1 -1
  601. package/es/components/form-status/style/dnb-form-status.css +0 -18
  602. package/es/components/form-status/style/dnb-form-status.min.css +1 -1
  603. package/es/components/form-status/style/dnb-form-status.scss +0 -45
  604. package/es/components/global-status/GlobalStatus.js +51 -133
  605. package/es/components/global-status/GlobalStatus.js.map +1 -1
  606. package/es/components/global-status/style/dnb-global-status.css +6 -16
  607. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  608. package/es/components/global-status/style/dnb-global-status.scss +11 -23
  609. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
  610. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  611. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
  612. package/es/components/height-animation/HeightAnimation.d.ts +12 -4
  613. package/es/components/height-animation/HeightAnimation.js +27 -14
  614. package/es/components/height-animation/HeightAnimation.js.map +1 -1
  615. package/es/components/height-animation/HeightAnimationInstance.d.ts +35 -18
  616. package/es/components/height-animation/HeightAnimationInstance.js +188 -155
  617. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  618. package/es/components/height-animation/style/dnb-height-animation.css +16 -2
  619. package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
  620. package/es/components/height-animation/style/dnb-height-animation.scss +18 -2
  621. package/es/components/height-animation/useHeightAnimation.d.ts +6 -1
  622. package/es/components/height-animation/useHeightAnimation.js +124 -92
  623. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  624. package/es/components/index.d.ts +2 -1
  625. package/es/components/index.js +2 -1
  626. package/es/components/index.js.map +1 -1
  627. package/es/components/input/Input.js +0 -3
  628. package/es/components/input/Input.js.map +1 -1
  629. package/es/components/input-masked/MultiInputMask.d.ts +1 -1
  630. package/es/components/input-masked/MultiInputMask.js +50 -39
  631. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  632. package/es/components/lib.d.ts +3 -1
  633. package/es/components/lib.js +3 -1
  634. package/es/components/lib.js.map +1 -1
  635. package/es/components/number-format/NumberFormat.d.ts +7 -12
  636. package/es/components/number-format/NumberUtils.d.ts +8 -2
  637. package/es/components/number-format/useNumberFormat.d.ts +1 -1
  638. package/es/components/section/Section.d.ts +6 -3
  639. package/es/components/section/Section.js.map +1 -1
  640. package/es/components/section/style/dnb-section.css +1 -0
  641. package/es/components/section/style/dnb-section.min.css +1 -1
  642. package/es/components/section/style/dnb-section.scss +1 -0
  643. package/es/components/space/SpacingUtils.js +5 -1
  644. package/es/components/space/SpacingUtils.js.map +1 -1
  645. package/es/components/step-indicator/StepIndicatorItem.js +4 -22
  646. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  647. package/es/components/step-indicator/StepIndicatorTriggerButton.js +3 -17
  648. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  649. package/es/components/step-indicator/style/dnb-step-indicator.css +0 -5
  650. package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  651. package/es/components/step-indicator/style/dnb-step-indicator.scss +0 -7
  652. package/es/components/table/TableAccordion.js +1 -1
  653. package/es/components/table/TableAccordion.js.map +1 -1
  654. package/es/components/table/TableAccordionContent.js +47 -23
  655. package/es/components/table/TableAccordionContent.js.map +1 -1
  656. package/es/components/table/style/dnb-table.css +6 -3
  657. package/es/components/table/style/dnb-table.min.css +1 -1
  658. package/es/components/table/style/table-accordion.scss +6 -3
  659. package/es/components/tabs/Tabs.js +2 -1
  660. package/es/components/tabs/Tabs.js.map +1 -1
  661. package/es/components/tabs/TabsContentWrapper.d.ts +1 -0
  662. package/es/components/tabs/TabsContentWrapper.js +8 -6
  663. package/es/components/tabs/TabsContentWrapper.js.map +1 -1
  664. package/es/components/textarea/Textarea.d.ts +5 -0
  665. package/es/components/textarea/Textarea.js +16 -3
  666. package/es/components/textarea/Textarea.js.map +1 -1
  667. package/es/components/textarea/style/dnb-textarea.css +10 -3
  668. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  669. package/es/components/textarea/style/dnb-textarea.scss +13 -3
  670. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.css +15 -2
  671. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  672. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.scss +15 -2
  673. package/es/components/upload/Upload.js +13 -18
  674. package/es/components/upload/Upload.js.map +1 -1
  675. package/es/components/upload/UploadFileInput.js +3 -1
  676. package/es/components/upload/UploadFileInput.js.map +1 -1
  677. package/es/components/upload/UploadFileList.js +1 -1
  678. package/es/components/upload/UploadFileList.js.map +1 -1
  679. package/es/components/upload/UploadStatus.js +6 -2
  680. package/es/components/upload/UploadStatus.js.map +1 -1
  681. package/es/components/upload/useUpload.js +5 -7
  682. package/es/components/upload/useUpload.js.map +1 -1
  683. package/es/elements/lib.d.ts +6 -0
  684. package/es/elements/typography/H1.d.ts +1 -0
  685. package/es/elements/typography/H1.js +1 -1
  686. package/es/elements/typography/H1.js.map +1 -1
  687. package/es/elements/typography/H2.d.ts +1 -0
  688. package/es/elements/typography/H2.js +1 -1
  689. package/es/elements/typography/H2.js.map +1 -1
  690. package/es/elements/typography/H3.d.ts +1 -0
  691. package/es/elements/typography/H3.js +1 -1
  692. package/es/elements/typography/H3.js.map +1 -1
  693. package/es/elements/typography/H4.d.ts +1 -0
  694. package/es/elements/typography/H4.js +1 -1
  695. package/es/elements/typography/H4.js.map +1 -1
  696. package/es/elements/typography/H5.d.ts +1 -0
  697. package/es/elements/typography/H5.js +1 -1
  698. package/es/elements/typography/H5.js.map +1 -1
  699. package/es/elements/typography/H6.d.ts +1 -0
  700. package/es/elements/typography/H6.js +1 -1
  701. package/es/elements/typography/H6.js.map +1 -1
  702. package/es/extensions/forms/DataContext/Context.d.ts +18 -5
  703. package/es/extensions/forms/DataContext/Context.js +9 -0
  704. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  705. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
  706. package/es/extensions/forms/DataContext/Provider/Provider.js +127 -49
  707. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  708. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +5 -3
  709. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  710. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  711. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +6 -5
  712. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  713. package/es/extensions/forms/Field/Boolean/Boolean.d.ts +2 -2
  714. package/es/extensions/forms/Field/Boolean/Boolean.js +2 -2
  715. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  716. package/es/extensions/forms/Field/Currency/Currency.d.ts +2 -2
  717. package/es/extensions/forms/Field/Currency/Currency.js +2 -2
  718. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  719. package/es/extensions/forms/Field/Date/Date.js +8 -4
  720. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  721. package/es/extensions/forms/Field/Email/Email.d.ts +2 -2
  722. package/es/extensions/forms/Field/Email/Email.js +7 -6
  723. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  724. package/es/extensions/forms/Field/Expiry/Expiry.js +19 -17
  725. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  726. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  727. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  728. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  729. package/es/extensions/forms/Field/Number/Number.d.ts +2 -4
  730. package/es/extensions/forms/Field/Number/Number.js +28 -27
  731. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  732. package/es/extensions/forms/Field/Number/style/dnb-number.css +0 -6
  733. package/es/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  734. package/es/extensions/forms/Field/Number/style/dnb-number.scss +0 -1
  735. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.css +4 -0
  736. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.min.css +1 -1
  737. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.scss +7 -0
  738. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.css +4 -0
  739. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.min.css +1 -1
  740. package/es/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.scss +9 -0
  741. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +2 -2
  742. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +6 -5
  743. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  744. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
  745. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +17 -9
  746. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  747. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  748. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -3
  749. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  750. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
  751. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  752. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
  753. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +9 -5
  754. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  755. package/es/extensions/forms/Field/Selection/Selection.js +15 -10
  756. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  757. package/es/extensions/forms/Field/String/String.d.ts +4 -2
  758. package/es/extensions/forms/Field/String/String.js +17 -9
  759. package/es/extensions/forms/Field/String/String.js.map +1 -1
  760. package/es/extensions/forms/Field/Toggle/Toggle.js +20 -13
  761. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  762. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  763. package/es/extensions/forms/FieldBlock/FieldBlock.js +11 -8
  764. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  765. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +22 -5
  766. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  767. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +29 -1
  768. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +4 -0
  769. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +1 -0
  770. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +6 -0
  771. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.css +4 -0
  772. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.min.css +1 -0
  773. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.scss +6 -0
  774. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  775. package/es/extensions/forms/Form/Handler/Handler.js +7 -1
  776. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  777. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
  778. package/es/extensions/forms/Form/Visibility/Visibility.js +55 -40
  779. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  780. package/es/extensions/forms/Form/data-context/getData.d.ts +8 -0
  781. package/es/extensions/forms/Form/data-context/getData.js +15 -0
  782. package/es/extensions/forms/Form/data-context/getData.js.map +1 -0
  783. package/es/extensions/forms/Form/data-context/setData.d.ts +2 -0
  784. package/es/extensions/forms/Form/data-context/setData.js +6 -0
  785. package/es/extensions/forms/Form/data-context/setData.js.map +1 -0
  786. package/es/extensions/forms/Form/data-context/useData.d.ts +22 -0
  787. package/es/extensions/forms/Form/data-context/useData.js +58 -0
  788. package/es/extensions/forms/Form/data-context/useData.js.map +1 -0
  789. package/es/extensions/forms/Form/data-context/useError.d.ts +5 -0
  790. package/es/extensions/forms/Form/data-context/useError.js +13 -0
  791. package/es/extensions/forms/Form/data-context/useError.js.map +1 -0
  792. package/es/extensions/forms/Form/index.d.ts +4 -1
  793. package/es/extensions/forms/Form/index.js +4 -1
  794. package/es/extensions/forms/Form/index.js.map +1 -1
  795. package/es/extensions/forms/Iterate/Array/Array.d.ts +2 -2
  796. package/es/extensions/forms/Iterate/Array/Array.js +3 -1
  797. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  798. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
  799. package/es/extensions/forms/StepsLayout/StepsLayout.js +31 -22
  800. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  801. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
  802. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  803. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
  804. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  805. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +2 -2
  806. package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  807. package/es/extensions/forms/Value/Currency/Currency.d.ts +2 -2
  808. package/es/extensions/forms/Value/Currency/Currency.js +4 -5
  809. package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
  810. package/es/extensions/forms/Value/Date/Date.d.ts +2 -2
  811. package/es/extensions/forms/Value/Date/Date.js +2 -2
  812. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  813. package/es/extensions/forms/Value/Email/Email.d.ts +2 -2
  814. package/es/extensions/forms/Value/Email/Email.js +2 -2
  815. package/es/extensions/forms/Value/Email/Email.js.map +1 -1
  816. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  817. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +2 -2
  818. package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  819. package/es/extensions/forms/Value/Number/Number.d.ts +6 -10
  820. package/es/extensions/forms/Value/Number/Number.js +22 -27
  821. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  822. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.d.ts +2 -2
  823. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +8 -6
  824. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  825. package/es/extensions/forms/hooks/index.d.ts +1 -0
  826. package/es/extensions/forms/hooks/index.js +1 -0
  827. package/es/extensions/forms/hooks/index.js.map +1 -1
  828. package/es/extensions/forms/hooks/useDataValue.d.ts +10 -1
  829. package/es/extensions/forms/hooks/useDataValue.js +81 -24
  830. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  831. package/es/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
  832. package/es/extensions/forms/hooks/useErrorMessage.js +15 -0
  833. package/es/extensions/forms/hooks/useErrorMessage.js.map +1 -0
  834. package/es/extensions/forms/index.d.ts +1 -0
  835. package/es/extensions/forms/index.js +1 -0
  836. package/es/extensions/forms/index.js.map +1 -1
  837. package/es/extensions/forms/style/dnb-forms.css +37 -11
  838. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  839. package/es/extensions/forms/types.d.ts +26 -9
  840. package/es/extensions/forms/types.js.map +1 -1
  841. package/es/extensions/forms/utils/ajv.d.ts +47 -6
  842. package/es/extensions/forms/utils/ajv.js +23 -15
  843. package/es/extensions/forms/utils/ajv.js.map +1 -1
  844. package/es/extensions/forms/utils/index.d.ts +0 -1
  845. package/es/extensions/forms/utils/index.js +0 -1
  846. package/es/extensions/forms/utils/index.js.map +1 -1
  847. package/es/fragments/TextCounter.d.ts +12 -0
  848. package/es/fragments/TextCounter.js +4 -0
  849. package/es/fragments/TextCounter.js.map +1 -0
  850. package/es/fragments/drawer-list/DrawerListHelpers.js +1 -0
  851. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  852. package/es/fragments/index.d.ts +2 -1
  853. package/es/fragments/index.js +2 -1
  854. package/es/fragments/index.js.map +1 -1
  855. package/es/fragments/lib.d.ts +3 -1
  856. package/es/fragments/lib.js +4 -2
  857. package/es/fragments/lib.js.map +1 -1
  858. package/es/fragments/text-counter/TextCounter.d.ts +8 -0
  859. package/es/fragments/text-counter/TextCounter.js +52 -0
  860. package/es/fragments/text-counter/TextCounter.js.map +1 -0
  861. package/es/fragments/text-counter/index.d.ts +5 -0
  862. package/es/fragments/text-counter/index.js +1 -0
  863. package/es/fragments/text-counter/index.js.map +1 -0
  864. package/es/fragments/text-counter/style/dnb-text-counter.scss +15 -0
  865. package/es/fragments/text-counter/style/index.d.ts +1 -0
  866. package/es/fragments/text-counter/style/index.js +1 -0
  867. package/es/fragments/text-counter/style/index.js.map +1 -0
  868. package/es/fragments/text-counter/style/themes/dnb-text-counter-theme-sbanken.scss +8 -0
  869. package/es/fragments/text-counter/style/themes/dnb-text-counter-theme-ui.scss +8 -0
  870. package/es/fragments/text-counter/style/themes/ui.d.ts +1 -0
  871. package/es/fragments/text-counter/style/themes/ui.js +1 -0
  872. package/es/fragments/text-counter/style/themes/ui.js.map +1 -0
  873. package/es/fragments/text-counter/style.d.ts +5 -0
  874. package/es/fragments/text-counter/style.js +1 -0
  875. package/es/fragments/text-counter/style.js.map +1 -0
  876. package/es/index.d.ts +2 -1
  877. package/es/index.js +2 -1
  878. package/es/index.js.map +1 -1
  879. package/es/shared/Eufemia.d.ts +1 -1
  880. package/es/shared/Eufemia.js +2 -2
  881. package/es/shared/Eufemia.js.map +1 -1
  882. package/es/shared/component-helper.js +0 -3
  883. package/es/shared/component-helper.js.map +1 -1
  884. package/es/shared/helpers/useSharedState.d.ts +33 -10
  885. package/es/shared/helpers/useSharedState.js +76 -40
  886. package/es/shared/helpers/useSharedState.js.map +1 -1
  887. package/es/shared/locales/en-GB.d.ts +7 -0
  888. package/es/shared/locales/en-GB.js +9 -2
  889. package/es/shared/locales/en-GB.js.map +1 -1
  890. package/es/shared/locales/en-US.d.ts +7 -0
  891. package/es/shared/locales/index.d.ts +14 -0
  892. package/es/shared/locales/nb-NO.d.ts +7 -0
  893. package/es/shared/locales/nb-NO.js +7 -0
  894. package/es/shared/locales/nb-NO.js.map +1 -1
  895. package/es/style/core/utilities.scss +1 -1
  896. package/es/style/dnb-ui-components.css +134 -67
  897. package/es/style/dnb-ui-components.min.css +3 -3
  898. package/es/style/dnb-ui-extensions.css +37 -11
  899. package/es/style/dnb-ui-extensions.min.css +1 -1
  900. package/es/style/dnb-ui-forms.css +37 -11
  901. package/es/style/dnb-ui-forms.min.css +1 -1
  902. package/es/style/dnb-ui-fragments.css +10 -0
  903. package/es/style/dnb-ui-fragments.min.css +1 -1
  904. package/es/style/dnb-ui-fragments.scss +1 -0
  905. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +203 -102
  906. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +7 -7
  907. package/es/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  908. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +46 -11
  909. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  910. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  911. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +46 -11
  912. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  913. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  914. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +188 -97
  915. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  916. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -0
  917. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +46 -11
  918. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  919. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  920. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +46 -11
  921. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  922. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  923. package/es/style/themes/theme-ui/ui-theme-components.css +203 -102
  924. package/es/style/themes/theme-ui/ui-theme-components.min.css +7 -7
  925. package/es/style/themes/theme-ui/ui-theme-components.scss +1 -0
  926. package/es/style/themes/theme-ui/ui-theme-extensions.css +46 -11
  927. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  928. package/es/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  929. package/es/style/themes/theme-ui/ui-theme-forms.css +46 -11
  930. package/es/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  931. package/es/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  932. package/esm/dnb-ui-basis.min.mjs +1 -1
  933. package/esm/dnb-ui-components.min.mjs +1 -1
  934. package/esm/dnb-ui-elements.min.mjs +1 -1
  935. package/esm/dnb-ui-extensions.min.mjs +3 -3
  936. package/esm/dnb-ui-lib.min.mjs +1 -1
  937. package/extensions/forms/DataContext/Context.d.ts +18 -5
  938. package/extensions/forms/DataContext/Context.js +9 -0
  939. package/extensions/forms/DataContext/Context.js.map +1 -1
  940. package/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
  941. package/extensions/forms/DataContext/Provider/Provider.js +129 -49
  942. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  943. package/extensions/forms/Field/ArraySelection/ArraySelection.js +5 -3
  944. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  945. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  946. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +6 -5
  947. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  948. package/extensions/forms/Field/Boolean/Boolean.d.ts +2 -2
  949. package/extensions/forms/Field/Boolean/Boolean.js +2 -2
  950. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  951. package/extensions/forms/Field/Currency/Currency.d.ts +2 -2
  952. package/extensions/forms/Field/Currency/Currency.js +2 -2
  953. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  954. package/extensions/forms/Field/Date/Date.js +8 -4
  955. package/extensions/forms/Field/Date/Date.js.map +1 -1
  956. package/extensions/forms/Field/Email/Email.d.ts +2 -2
  957. package/extensions/forms/Field/Email/Email.js +7 -6
  958. package/extensions/forms/Field/Email/Email.js.map +1 -1
  959. package/extensions/forms/Field/Expiry/Expiry.js +19 -17
  960. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  961. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  962. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  963. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  964. package/extensions/forms/Field/Number/Number.d.ts +2 -4
  965. package/extensions/forms/Field/Number/Number.js +28 -27
  966. package/extensions/forms/Field/Number/Number.js.map +1 -1
  967. package/extensions/forms/Field/Number/style/dnb-number.css +0 -6
  968. package/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  969. package/extensions/forms/Field/Number/style/dnb-number.scss +0 -1
  970. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.css +4 -0
  971. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.min.css +1 -1
  972. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-sbanken.scss +7 -0
  973. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.css +4 -0
  974. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.min.css +1 -1
  975. package/extensions/forms/Field/Number/style/themes/dnb-number-theme-ui.scss +9 -0
  976. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +2 -2
  977. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +6 -5
  978. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  979. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
  980. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +17 -9
  981. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  982. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  983. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -3
  984. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  985. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
  986. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  987. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
  988. package/extensions/forms/Field/SelectCountry/SelectCountry.js +9 -5
  989. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  990. package/extensions/forms/Field/Selection/Selection.js +15 -10
  991. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  992. package/extensions/forms/Field/String/String.d.ts +4 -2
  993. package/extensions/forms/Field/String/String.js +17 -9
  994. package/extensions/forms/Field/String/String.js.map +1 -1
  995. package/extensions/forms/Field/Toggle/Toggle.js +20 -13
  996. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  997. package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  998. package/extensions/forms/FieldBlock/FieldBlock.js +11 -8
  999. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  1000. package/extensions/forms/FieldBlock/style/dnb-field-block.css +22 -5
  1001. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  1002. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +29 -1
  1003. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +4 -0
  1004. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +1 -0
  1005. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +6 -0
  1006. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.css +4 -0
  1007. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.min.css +1 -0
  1008. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-ui.scss +6 -0
  1009. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  1010. package/extensions/forms/Form/Handler/Handler.js +7 -1
  1011. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  1012. package/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
  1013. package/extensions/forms/Form/Visibility/Visibility.js +53 -39
  1014. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  1015. package/extensions/forms/Form/data-context/getData.d.ts +8 -0
  1016. package/extensions/forms/Form/data-context/getData.js +15 -0
  1017. package/extensions/forms/Form/data-context/getData.js.map +1 -0
  1018. package/extensions/forms/Form/data-context/setData.d.ts +2 -0
  1019. package/extensions/forms/Form/data-context/setData.js +6 -0
  1020. package/extensions/forms/Form/data-context/setData.js.map +1 -0
  1021. package/extensions/forms/Form/data-context/useData.d.ts +22 -0
  1022. package/extensions/forms/Form/data-context/useData.js +59 -0
  1023. package/extensions/forms/Form/data-context/useData.js.map +1 -0
  1024. package/extensions/forms/Form/data-context/useError.d.ts +5 -0
  1025. package/extensions/forms/Form/data-context/useError.js +13 -0
  1026. package/extensions/forms/Form/data-context/useError.js.map +1 -0
  1027. package/extensions/forms/Form/index.d.ts +4 -1
  1028. package/extensions/forms/Form/index.js +4 -1
  1029. package/extensions/forms/Form/index.js.map +1 -1
  1030. package/extensions/forms/Iterate/Array/Array.d.ts +2 -2
  1031. package/extensions/forms/Iterate/Array/Array.js +3 -1
  1032. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  1033. package/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
  1034. package/extensions/forms/StepsLayout/StepsLayout.js +31 -22
  1035. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  1036. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
  1037. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  1038. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
  1039. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.d.ts +2 -2
  1040. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +2 -2
  1041. package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
  1042. package/extensions/forms/Value/Currency/Currency.d.ts +2 -2
  1043. package/extensions/forms/Value/Currency/Currency.js +4 -5
  1044. package/extensions/forms/Value/Currency/Currency.js.map +1 -1
  1045. package/extensions/forms/Value/Date/Date.d.ts +2 -2
  1046. package/extensions/forms/Value/Date/Date.js +2 -2
  1047. package/extensions/forms/Value/Date/Date.js.map +1 -1
  1048. package/extensions/forms/Value/Email/Email.d.ts +2 -2
  1049. package/extensions/forms/Value/Email/Email.js +2 -2
  1050. package/extensions/forms/Value/Email/Email.js.map +1 -1
  1051. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.d.ts +2 -2
  1052. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +2 -2
  1053. package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  1054. package/extensions/forms/Value/Number/Number.d.ts +6 -10
  1055. package/extensions/forms/Value/Number/Number.js +22 -27
  1056. package/extensions/forms/Value/Number/Number.js.map +1 -1
  1057. package/extensions/forms/Value/PhoneNumber/PhoneNumber.d.ts +2 -2
  1058. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +8 -6
  1059. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  1060. package/extensions/forms/hooks/index.d.ts +1 -0
  1061. package/extensions/forms/hooks/index.js +1 -0
  1062. package/extensions/forms/hooks/index.js.map +1 -1
  1063. package/extensions/forms/hooks/useDataValue.d.ts +10 -1
  1064. package/extensions/forms/hooks/useDataValue.js +85 -26
  1065. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  1066. package/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
  1067. package/extensions/forms/hooks/useErrorMessage.js +15 -0
  1068. package/extensions/forms/hooks/useErrorMessage.js.map +1 -0
  1069. package/extensions/forms/index.d.ts +1 -0
  1070. package/extensions/forms/index.js +1 -0
  1071. package/extensions/forms/index.js.map +1 -1
  1072. package/extensions/forms/style/dnb-forms.css +37 -11
  1073. package/extensions/forms/style/dnb-forms.min.css +1 -1
  1074. package/extensions/forms/types.d.ts +26 -9
  1075. package/extensions/forms/types.js.map +1 -1
  1076. package/extensions/forms/utils/ajv.d.ts +47 -6
  1077. package/extensions/forms/utils/ajv.js +23 -15
  1078. package/extensions/forms/utils/ajv.js.map +1 -1
  1079. package/extensions/forms/utils/index.d.ts +0 -1
  1080. package/extensions/forms/utils/index.js +0 -1
  1081. package/extensions/forms/utils/index.js.map +1 -1
  1082. package/fragments/TextCounter.d.ts +12 -0
  1083. package/fragments/TextCounter.js +4 -0
  1084. package/fragments/TextCounter.js.map +1 -0
  1085. package/fragments/drawer-list/DrawerListHelpers.js +1 -0
  1086. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  1087. package/fragments/index.d.ts +2 -1
  1088. package/fragments/index.js +2 -1
  1089. package/fragments/index.js.map +1 -1
  1090. package/fragments/lib.d.ts +3 -1
  1091. package/fragments/lib.js +4 -2
  1092. package/fragments/lib.js.map +1 -1
  1093. package/fragments/text-counter/TextCounter.d.ts +8 -0
  1094. package/fragments/text-counter/TextCounter.js +52 -0
  1095. package/fragments/text-counter/TextCounter.js.map +1 -0
  1096. package/fragments/text-counter/index.d.ts +5 -0
  1097. package/fragments/text-counter/index.js +1 -0
  1098. package/fragments/text-counter/index.js.map +1 -0
  1099. package/fragments/text-counter/style/dnb-text-counter.scss +15 -0
  1100. package/fragments/text-counter/style/index.d.ts +1 -0
  1101. package/fragments/text-counter/style/index.js +1 -0
  1102. package/fragments/text-counter/style/index.js.map +1 -0
  1103. package/fragments/text-counter/style/themes/dnb-text-counter-theme-sbanken.scss +8 -0
  1104. package/fragments/text-counter/style/themes/dnb-text-counter-theme-ui.scss +8 -0
  1105. package/fragments/text-counter/style/themes/ui.d.ts +1 -0
  1106. package/fragments/text-counter/style/themes/ui.js +1 -0
  1107. package/fragments/text-counter/style/themes/ui.js.map +1 -0
  1108. package/fragments/text-counter/style.d.ts +5 -0
  1109. package/fragments/text-counter/style.js +1 -0
  1110. package/fragments/text-counter/style.js.map +1 -0
  1111. package/index.d.ts +2 -1
  1112. package/index.js +2 -1
  1113. package/index.js.map +1 -1
  1114. package/package.json +1 -1
  1115. package/shared/Eufemia.d.ts +1 -1
  1116. package/shared/Eufemia.js +2 -2
  1117. package/shared/Eufemia.js.map +1 -1
  1118. package/shared/component-helper.js +0 -3
  1119. package/shared/component-helper.js.map +1 -1
  1120. package/shared/helpers/useSharedState.d.ts +33 -10
  1121. package/shared/helpers/useSharedState.js +78 -40
  1122. package/shared/helpers/useSharedState.js.map +1 -1
  1123. package/shared/locales/en-GB.d.ts +7 -0
  1124. package/shared/locales/en-GB.js +9 -2
  1125. package/shared/locales/en-GB.js.map +1 -1
  1126. package/shared/locales/en-US.d.ts +7 -0
  1127. package/shared/locales/index.d.ts +14 -0
  1128. package/shared/locales/nb-NO.d.ts +7 -0
  1129. package/shared/locales/nb-NO.js +7 -0
  1130. package/shared/locales/nb-NO.js.map +1 -1
  1131. package/style/core/utilities.scss +1 -1
  1132. package/style/dnb-ui-components.css +134 -67
  1133. package/style/dnb-ui-components.min.css +3 -3
  1134. package/style/dnb-ui-extensions.css +37 -11
  1135. package/style/dnb-ui-extensions.min.css +1 -1
  1136. package/style/dnb-ui-forms.css +37 -11
  1137. package/style/dnb-ui-forms.min.css +1 -1
  1138. package/style/dnb-ui-fragments.css +10 -0
  1139. package/style/dnb-ui-fragments.min.css +1 -1
  1140. package/style/dnb-ui-fragments.scss +1 -0
  1141. package/style/themes/theme-eiendom/eiendom-theme-components.css +203 -102
  1142. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +7 -7
  1143. package/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  1144. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +46 -11
  1145. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  1146. package/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  1147. package/style/themes/theme-eiendom/eiendom-theme-forms.css +46 -11
  1148. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  1149. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  1150. package/style/themes/theme-sbanken/sbanken-theme-components.css +188 -97
  1151. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  1152. package/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -0
  1153. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +46 -11
  1154. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  1155. package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  1156. package/style/themes/theme-sbanken/sbanken-theme-forms.css +46 -11
  1157. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  1158. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  1159. package/style/themes/theme-ui/ui-theme-components.css +203 -102
  1160. package/style/themes/theme-ui/ui-theme-components.min.css +7 -7
  1161. package/style/themes/theme-ui/ui-theme-components.scss +1 -0
  1162. package/style/themes/theme-ui/ui-theme-extensions.css +46 -11
  1163. package/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  1164. package/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  1165. package/style/themes/theme-ui/ui-theme-forms.css +46 -11
  1166. package/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  1167. package/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  1168. package/umd/dnb-ui-basis.min.js +1 -1
  1169. package/umd/dnb-ui-components.min.js +1 -1
  1170. package/umd/dnb-ui-elements.min.js +1 -1
  1171. package/umd/dnb-ui-extensions.min.js +3 -3
  1172. package/umd/dnb-ui-lib.min.js +1 -1
  1173. package/cjs/components/global-status/AnimationHelper.d.ts +0 -12
  1174. package/cjs/components/global-status/AnimationHelper.js +0 -109
  1175. package/cjs/components/global-status/AnimationHelper.js.map +0 -1
  1176. package/cjs/extensions/forms/Form/hooks/useData.d.ts +0 -10
  1177. package/cjs/extensions/forms/Form/hooks/useData.js +0 -36
  1178. package/cjs/extensions/forms/Form/hooks/useData.js.map +0 -1
  1179. package/cjs/extensions/forms/utils/numbers.d.ts +0 -17
  1180. package/cjs/extensions/forms/utils/numbers.js +0 -42
  1181. package/cjs/extensions/forms/utils/numbers.js.map +0 -1
  1182. package/components/global-status/AnimationHelper.d.ts +0 -12
  1183. package/components/global-status/AnimationHelper.js +0 -100
  1184. package/components/global-status/AnimationHelper.js.map +0 -1
  1185. package/es/components/global-status/AnimationHelper.d.ts +0 -12
  1186. package/es/components/global-status/AnimationHelper.js +0 -100
  1187. package/es/components/global-status/AnimationHelper.js.map +0 -1
  1188. package/es/extensions/forms/Form/hooks/useData.d.ts +0 -10
  1189. package/es/extensions/forms/Form/hooks/useData.js +0 -29
  1190. package/es/extensions/forms/Form/hooks/useData.js.map +0 -1
  1191. package/es/extensions/forms/utils/numbers.d.ts +0 -17
  1192. package/es/extensions/forms/utils/numbers.js +0 -35
  1193. package/es/extensions/forms/utils/numbers.js.map +0 -1
  1194. package/extensions/forms/Form/hooks/useData.d.ts +0 -10
  1195. package/extensions/forms/Form/hooks/useData.js +0 -30
  1196. package/extensions/forms/Form/hooks/useData.js.map +0 -1
  1197. package/extensions/forms/utils/numbers.d.ts +0 -17
  1198. package/extensions/forms/utils/numbers.js +0 -35
  1199. package/extensions/forms/utils/numbers.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Currency.js","names":["React","classnames","Context","getCurrencySymbol","CURRENCY","NumberComponent","Currency","props","_props$currency","_props$placeholder","context","useContext","preparedProps","_objectSpread","currency","placeholder","locale","createElement","_extends","className","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Currency/Currency.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Context } from '../../../../shared'\nimport { getCurrencySymbol } from '../../../../components/number-format/NumberUtils'\nimport { CURRENCY } from '../../../../shared/defaults'\nimport NumberComponent, { Props as NumberProps } from '../Number'\n\nexport type Props = NumberProps\n\nfunction Currency(props: Props) {\n const context = React.useContext(Context)\n const preparedProps = {\n ...props,\n currency: props.currency ?? CURRENCY,\n placeholder:\n props.placeholder ??\n getCurrencySymbol(context?.locale, props.currency),\n }\n\n return (\n <NumberComponent\n {...preparedProps}\n className={classnames('dnb-forms-field-currency', props.className)}\n />\n )\n}\n\nCurrency._supportsSpacingProps = true\nexport default Currency\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,iBAAiB,QAAQ,kDAAkD;AACpF,SAASC,QAAQ,QAAQ,6BAA6B;AACtD,OAAOC,eAAe,MAAgC,WAAW;AAIjE,SAASC,QAAQA,CAACC,KAAY,EAAE;EAAA,IAAAC,eAAA,EAAAC,kBAAA;EAC9B,MAAMC,OAAO,GAAGV,KAAK,CAACW,UAAU,CAACT,OAAO,CAAC;EACzC,MAAMU,aAAa,GAAAC,aAAA,CAAAA,aAAA,KACdN,KAAK;IACRO,QAAQ,GAAAN,eAAA,GAAED,KAAK,CAACO,QAAQ,cAAAN,eAAA,cAAAA,eAAA,GAAIJ,QAAQ;IACpCW,WAAW,GAAAN,kBAAA,GACTF,KAAK,CAACQ,WAAW,cAAAN,kBAAA,cAAAA,kBAAA,GACjBN,iBAAiB,CAACO,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEM,MAAM,EAAET,KAAK,CAACO,QAAQ;EAAC,EACrD;EAED,OACEd,KAAA,CAAAiB,aAAA,CAACZ,eAAe,EAAAa,QAAA,KACVN,aAAa;IACjBO,SAAS,EAAElB,UAAU,CAAC,0BAA0B,EAAEM,KAAK,CAACY,SAAS;EAAE,EACpE,CAAC;AAEN;AAEAb,QAAQ,CAACc,qBAAqB,GAAG,IAAI;AACrC,eAAed,QAAQ"}
1
+ {"version":3,"file":"Currency.js","names":["React","classnames","Context","getCurrencySymbol","CURRENCY","NumberField","Currency","props","_props$currency","_props$placeholder","context","useContext","preparedProps","_objectSpread","currency","placeholder","locale","createElement","_extends","className","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Currency/Currency.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Context } from '../../../../shared'\nimport { getCurrencySymbol } from '../../../../components/number-format/NumberUtils'\nimport { CURRENCY } from '../../../../shared/defaults'\nimport NumberField, { Props as NumberFieldProps } from '../Number'\n\nexport type Props = NumberFieldProps\n\nfunction Currency(props: Props) {\n const context = React.useContext(Context)\n const preparedProps = {\n ...props,\n currency: props.currency ?? CURRENCY,\n placeholder:\n props.placeholder ??\n getCurrencySymbol(context?.locale, props.currency),\n }\n\n return (\n <NumberField\n {...preparedProps}\n className={classnames('dnb-forms-field-currency', props.className)}\n />\n )\n}\n\nCurrency._supportsSpacingProps = true\nexport default Currency\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,iBAAiB,QAAQ,kDAAkD;AACpF,SAASC,QAAQ,QAAQ,6BAA6B;AACtD,OAAOC,WAAW,MAAqC,WAAW;AAIlE,SAASC,QAAQA,CAACC,KAAY,EAAE;EAAA,IAAAC,eAAA,EAAAC,kBAAA;EAC9B,MAAMC,OAAO,GAAGV,KAAK,CAACW,UAAU,CAACT,OAAO,CAAC;EACzC,MAAMU,aAAa,GAAAC,aAAA,CAAAA,aAAA,KACdN,KAAK;IACRO,QAAQ,GAAAN,eAAA,GAAED,KAAK,CAACO,QAAQ,cAAAN,eAAA,cAAAA,eAAA,GAAIJ,QAAQ;IACpCW,WAAW,GAAAN,kBAAA,GACTF,KAAK,CAACQ,WAAW,cAAAN,kBAAA,cAAAA,kBAAA,GACjBN,iBAAiB,CAACO,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEM,MAAM,EAAET,KAAK,CAACO,QAAQ;EAAC,EACrD;EAED,OACEd,KAAA,CAAAiB,aAAA,CAACZ,WAAW,EAAAa,QAAA,KACNN,aAAa;IACjBO,SAAS,EAAElB,UAAU,CAAC,0BAA0B,EAAEM,KAAK,CAACY,SAAS;EAAE,EACpE,CAAC;AAEN;AAEAb,QAAQ,CAACc,qBAAqB,GAAG,IAAI;AACrC,eAAed,QAAQ"}
@@ -12,13 +12,14 @@ import SharedContext from '../../../../shared/Context';
12
12
  import classnames from 'classnames';
13
13
  import FieldBlock from '../../FieldBlock';
14
14
  import { parseISO, isValid } from 'date-fns';
15
+ import useErrorMessage from '../../hooks/useErrorMessage';
15
16
  function DateComponent(props) {
16
17
  const sharedContext = useContext(SharedContext);
17
18
  const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
18
- const errorMessages = useMemo(() => _objectSpread({
19
+ const errorMessages = useErrorMessage(props.path, props.errorMessages, {
19
20
  required: tr.dateErrorRequired,
20
21
  pattern: tr.inputErrorPattern
21
- }, props.errorMessages), [tr, props.errorMessages]);
22
+ });
22
23
  const schema = useMemo(() => {
23
24
  var _props$schema;
24
25
  return (_props$schema = props.schema) !== null && _props$schema !== void 0 ? _props$schema : {
@@ -49,6 +50,7 @@ function DateComponent(props) {
49
50
  id,
50
51
  className,
51
52
  label,
53
+ labelDescription,
52
54
  value,
53
55
  help,
54
56
  info,
@@ -56,6 +58,7 @@ function DateComponent(props) {
56
58
  error,
57
59
  hasError,
58
60
  disabled,
61
+ ariaAttributes,
59
62
  handleFocus,
60
63
  handleBlur,
61
64
  handleChange
@@ -64,6 +67,7 @@ function DateComponent(props) {
64
67
  className: classnames('dnb-forms-field-string', className),
65
68
  forId: id,
66
69
  label: label !== null && label !== void 0 ? label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.dateLabel,
70
+ labelDescription: labelDescription,
67
71
  info: info,
68
72
  warning: warning,
69
73
  disabled: disabled,
@@ -78,12 +82,12 @@ function DateComponent(props) {
78
82
  status: hasError ? 'error' : undefined,
79
83
  suffix: help ? React.createElement(HelpButton, {
80
84
  title: help.title
81
- }, help.contents) : undefined,
85
+ }, help.content) : undefined,
82
86
  on_change: handleChange,
83
87
  on_reset: handleChange,
84
88
  onFocus: handleFocus,
85
89
  onBlur: handleBlur
86
- }, pickSpacingProps(props))));
90
+ }, ariaAttributes)));
87
91
  }
88
92
  DateComponent._supportsSpacingProps = true;
89
93
  export default DateComponent;
@@ -1 +1 @@
1
- {"version":3,"file":"Date.js","names":["React","useCallback","useContext","useMemo","DatePicker","HelpButton","useDataValue","pickSpacingProps","SharedContext","classnames","FieldBlock","parseISO","isValid","DateComponent","props","sharedContext","tr","translation","Forms","errorMessages","_objectSpread","required","dateErrorRequired","pattern","inputErrorPattern","schema","_props$schema","type","validateRequired","value","error","undefined","preparedProps","fromInput","date","id","className","label","help","info","warning","hasError","disabled","handleFocus","handleBlur","handleChange","createElement","_extends","forId","dateLabel","show_input","show_cancel_button","show_reset_button","status","suffix","title","contents","on_change","on_reset","onFocus","onBlur","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { DatePicker, HelpButton } from '../../../../components'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps, JSONSchema } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport SharedContext from '../../../../shared/Context'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { parseISO, isValid } from 'date-fns'\n\nexport type Props = FieldHelpProps &\n FieldProps<string> & {\n // Validation\n pattern?: string\n }\n\nfunction DateComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.dateErrorRequired,\n pattern: tr.inputErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n\n const schema = useMemo<JSONSchema>(\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: ({ date }: { date: string }) => {\n return date\n },\n validateRequired,\n }\n\n const {\n id,\n className,\n label,\n value,\n help,\n info,\n warning,\n error,\n hasError,\n disabled,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n label={label ?? sharedContext?.translation.Forms.dateLabel}\n info={info}\n warning={warning}\n disabled={disabled}\n error={error}\n {...pickSpacingProps(props)}\n >\n <DatePicker\n id={id}\n date={value}\n disabled={disabled}\n show_input={true}\n show_cancel_button={true}\n show_reset_button={true}\n status={hasError ? 'error' : undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleChange}\n on_reset={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...pickSpacingProps(props)}\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","useCallback","useContext","useMemo","DatePicker","HelpButton","useDataValue","pickSpacingProps","SharedContext","classnames","FieldBlock","parseISO","isValid","useErrorMessage","DateComponent","props","sharedContext","tr","translation","Forms","errorMessages","path","required","dateErrorRequired","pattern","inputErrorPattern","schema","_props$schema","type","validateRequired","value","error","undefined","preparedProps","_objectSpread","fromInput","date","id","className","label","labelDescription","help","info","warning","hasError","disabled","ariaAttributes","handleFocus","handleBlur","handleChange","createElement","_extends","forId","dateLabel","show_input","show_cancel_button","show_reset_button","status","suffix","title","content","on_change","on_reset","onFocus","onBlur","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Date/Date.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport { DatePicker, HelpButton } from '../../../../components'\nimport { useDataValue } from '../../hooks'\nimport {\n FieldProps,\n FieldHelpProps,\n AllJSONSchemaVersions,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport SharedContext from '../../../../shared/Context'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { parseISO, isValid } from 'date-fns'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\nexport type Props = FieldHelpProps &\n FieldProps<string> & {\n // Validation\n pattern?: string\n }\n\nfunction DateComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: tr.dateErrorRequired,\n pattern: tr.inputErrorPattern,\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: ({ date }: { date: string }) => {\n return 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 ariaAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n label={label ?? sharedContext?.translation.Forms.dateLabel}\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={value}\n disabled={disabled}\n show_input={true}\n show_cancel_button={true}\n show_reset_button={true}\n status={hasError ? 'error' : undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n on_change={handleChange}\n on_reset={handleChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...ariaAttributes}\n />\n </FieldBlock>\n )\n}\n\nDateComponent._supportsSpacingProps = true\nexport default DateComponent\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Props as StringComponentProps } from '../String';
2
- export type Props = StringComponentProps;
1
+ import { Props as StringFieldProps } from '../String';
2
+ export type Props = StringFieldProps;
3
3
  declare function Email(props: Props): import("react/jsx-runtime").JSX.Element;
4
4
  declare namespace Email {
5
5
  var _supportsSpacingProps: boolean;
@@ -3,17 +3,18 @@
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
4
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
5
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
- import React, { useContext, useMemo } from 'react';
7
- import StringComponent from '../String';
6
+ import React, { useContext } from 'react';
7
+ import StringField from '../String';
8
8
  import SharedContext from '../../../../shared/Context';
9
+ import useErrorMessage from '../../hooks/useErrorMessage';
9
10
  function Email(props) {
10
11
  const sharedContext = useContext(SharedContext);
11
12
  const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
12
- const errorMessages = useMemo(() => _objectSpread({
13
+ const errorMessages = useErrorMessage(props.path, props.errorMessages, {
13
14
  required: tr.emailErrorRequired,
14
15
  pattern: tr.emailErrorPattern
15
- }, props.errorMessages), [tr, props.errorMessages]);
16
- const stringComponentProps = _objectSpread(_objectSpread({
16
+ });
17
+ const StringFieldProps = _objectSpread(_objectSpread({
17
18
  label: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.emailLabel,
18
19
  autoComplete: 'email',
19
20
  inputMode: 'email',
@@ -22,7 +23,7 @@ function Email(props) {
22
23
  }, props), {}, {
23
24
  errorMessages
24
25
  });
25
- return React.createElement(StringComponent, stringComponentProps);
26
+ return React.createElement(StringField, StringFieldProps);
26
27
  }
27
28
  Email._supportsSpacingProps = true;
28
29
  export default Email;
@@ -1 +1 @@
1
- {"version":3,"file":"Email.js","names":["React","useContext","useMemo","StringComponent","SharedContext","Email","props","sharedContext","tr","translation","Forms","errorMessages","_objectSpread","required","emailErrorRequired","pattern","emailErrorPattern","stringComponentProps","label","emailLabel","autoComplete","inputMode","trim","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Email/Email.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps\n\nfunction Email(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.emailErrorRequired,\n pattern: tr.emailErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n\n const stringComponentProps: Props = {\n label: sharedContext?.translation.Forms.emailLabel,\n autoComplete: 'email',\n inputMode: 'email',\n pattern:\n \"^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$\",\n trim: true,\n ...props,\n errorMessages,\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nEmail._supportsSpacingProps = true\nexport default Email\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,eAAe,MAAyC,WAAW;AAC1E,OAAOC,aAAa,MAAM,4BAA4B;AAItD,SAASC,KAAKA,CAACC,KAAY,EAAE;EAC3B,MAAMC,aAAa,GAAGN,UAAU,CAACG,aAAa,CAAC;EAC/C,MAAMI,EAAE,GAAGD,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK;EAE3C,MAAMC,aAAa,GAAGT,OAAO,CAC3B,MAAAU,aAAA;IACEC,QAAQ,EAAEL,EAAE,CAACM,kBAAkB;IAC/BC,OAAO,EAAEP,EAAE,CAACQ;EAAiB,GAC1BV,KAAK,CAACK,aAAa,CACtB,EACF,CAACH,EAAE,EAAEF,KAAK,CAACK,aAAa,CAC1B,CAAC;EAED,MAAMM,oBAA2B,GAAAL,aAAA,CAAAA,aAAA;IAC/BM,KAAK,EAAEX,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK,CAACS,UAAU;IAClDC,YAAY,EAAE,OAAO;IACrBC,SAAS,EAAE,OAAO;IAClBN,OAAO,EACL,qEAAqE;IACvEO,IAAI,EAAE;EAAI,GACPhB,KAAK;IACRK;EAAa,EACd;EAED,OAAOX,KAAA,CAAAuB,aAAA,CAACpB,eAAe,EAAKc,oBAAuB,CAAC;AACtD;AAEAZ,KAAK,CAACmB,qBAAqB,GAAG,IAAI;AAClC,eAAenB,KAAK"}
1
+ {"version":3,"file":"Email.js","names":["React","useContext","StringField","SharedContext","useErrorMessage","Email","props","sharedContext","tr","translation","Forms","errorMessages","path","required","emailErrorRequired","pattern","emailErrorPattern","StringFieldProps","_objectSpread","label","emailLabel","autoComplete","inputMode","trim","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Email/Email.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport StringField, { Props as StringFieldProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\nexport type Props = StringFieldProps\n\nfunction Email(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: tr.emailErrorRequired,\n pattern: tr.emailErrorPattern,\n })\n\n const StringFieldProps: Props = {\n label: sharedContext?.translation.Forms.emailLabel,\n autoComplete: 'email',\n inputMode: 'email',\n pattern:\n \"^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$\",\n trim: true,\n ...props,\n errorMessages,\n }\n\n return <StringField {...StringFieldProps} />\n}\n\nEmail._supportsSpacingProps = true\nexport default Email\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,WAAW,MAAqC,WAAW;AAClE,OAAOC,aAAa,MAAM,4BAA4B;AACtD,OAAOC,eAAe,MAAM,6BAA6B;AAIzD,SAASC,KAAKA,CAACC,KAAY,EAAE;EAC3B,MAAMC,aAAa,GAAGN,UAAU,CAACE,aAAa,CAAC;EAC/C,MAAMK,EAAE,GAAGD,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK;EAE3C,MAAMC,aAAa,GAAGP,eAAe,CAACE,KAAK,CAACM,IAAI,EAAEN,KAAK,CAACK,aAAa,EAAE;IACrEE,QAAQ,EAAEL,EAAE,CAACM,kBAAkB;IAC/BC,OAAO,EAAEP,EAAE,CAACQ;EACd,CAAC,CAAC;EAEF,MAAMC,gBAAuB,GAAAC,aAAA,CAAAA,aAAA;IAC3BC,KAAK,EAAEZ,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK,CAACU,UAAU;IAClDC,YAAY,EAAE,OAAO;IACrBC,SAAS,EAAE,OAAO;IAClBP,OAAO,EACL,qEAAqE;IACvEQ,IAAI,EAAE;EAAI,GACPjB,KAAK;IACRK;EAAa,EACd;EAED,OAAOX,KAAA,CAAAwB,aAAA,CAACtB,WAAW,EAAKe,gBAAmB,CAAC;AAC9C;AAEAZ,KAAK,CAACoB,qBAAqB,GAAG,IAAI;AAClC,eAAepB,KAAK"}
@@ -4,8 +4,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
  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; }
7
- import React, { useCallback, useContext, useMemo, useRef } from 'react';
8
- import { makeUniqueId } from '../../../../shared/component-helper';
7
+ import React, { useCallback, useContext } from 'react';
9
8
  import SharedContext from '../../../../shared/Context';
10
9
  import { pickSpacingProps } from '../../../../components/flex/utils';
11
10
  import { useDataValue } from '../../hooks';
@@ -13,14 +12,15 @@ import classnames from 'classnames';
13
12
  import FieldBlock from '../../FieldBlock';
14
13
  import { MultiInputMask } from '../../../../components/input-masked';
15
14
  import { HelpButton } from '../../../../components';
15
+ import useErrorMessage from '../../hooks/useErrorMessage';
16
16
  function Expiry(props) {
17
17
  var _value$substring;
18
18
  const sharedContext = useContext(SharedContext);
19
19
  const translations = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
20
20
  const placeholders = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.DatePicker.placeholder_characters;
21
- const errorMessages = useMemo(() => _objectSpread({
21
+ const errorMessages = useErrorMessage(props.path, props.errorMessages, {
22
22
  required: translations.dateErrorRequired
23
- }, props.errorMessages), [translations, props.errorMessages]);
23
+ });
24
24
  const validateRequired = useCallback((value, {
25
25
  required,
26
26
  error
@@ -33,63 +33,65 @@ function Expiry(props) {
33
33
  validateRequired
34
34
  });
35
35
  const {
36
- id: propsId,
36
+ id,
37
37
  className,
38
38
  label = translations.expiryLabel,
39
39
  error,
40
+ hasError,
40
41
  info,
41
42
  warning,
42
43
  help,
43
44
  disabled,
44
45
  value = '',
46
+ labelDescription,
45
47
  layout = 'vertical',
46
- required,
48
+ ariaAttributes,
47
49
  handleFocus,
48
50
  handleBlur,
49
51
  handleChange
50
- } = useDataValue(_objectSpread({}, preparedProps));
52
+ } = useDataValue(preparedProps);
51
53
  const expiry = {
52
54
  month: ensureValidMonth(value === null || value === void 0 ? void 0 : value.substring(0, 2)),
53
55
  year: (_value$substring = value === null || value === void 0 ? void 0 : value.substring(2, 4)) !== null && _value$substring !== void 0 ? _value$substring : ''
54
56
  };
55
- const idRef = useRef(propsId || makeUniqueId()).current;
56
- const status = error ? 'error' : warning ? 'warn' : info ? 'info' : null;
57
+ const status = hasError ? 'error' : warning ? 'warn' : info ? 'info' : null;
57
58
  return React.createElement(FieldBlock, _extends({
58
59
  className: classnames('dnb-forms-field-expiry', className),
60
+ forId: `${id}-input-month`,
61
+ label: label,
62
+ layout: layout,
63
+ labelDescription: labelDescription,
59
64
  info: info,
60
65
  warning: warning,
61
66
  error: error
62
67
  }, pickSpacingProps(props)), React.createElement(MultiInputMask, {
63
68
  stretch: true,
64
- id: `${idRef}__input`,
65
- label: label,
66
- labelDirection: layout,
69
+ id: `${id}-input`,
67
70
  values: expiry,
68
71
  status: status,
69
72
  statusState: disabled ? 'disabled' : undefined,
70
73
  disabled: disabled,
71
- required: required,
72
74
  onChange: handleChange,
73
75
  onBlur: handleBlur,
74
76
  onFocus: handleFocus,
75
77
  delimiter: "/",
76
78
  inputMode: "numeric",
77
- inputs: [{
79
+ inputs: [_objectSpread({
78
80
  id: 'month',
79
81
  label: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.DatePicker['month'],
80
82
  mask: getMonthMask(expiry === null || expiry === void 0 ? void 0 : expiry.month),
81
83
  placeholderCharacter: placeholders['month'],
82
84
  autoComplete: 'cc-exp-month'
83
- }, {
85
+ }, ariaAttributes), _objectSpread({
84
86
  id: 'year',
85
87
  label: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.DatePicker['year'],
86
88
  mask: [/[0-9]/, /[0-9]/],
87
89
  placeholderCharacter: placeholders['year'],
88
90
  autoComplete: 'cc-exp-year'
89
- }],
91
+ }, ariaAttributes)],
90
92
  suffix: help ? React.createElement(HelpButton, {
91
93
  title: help.title
92
- }, help.contents) : undefined
94
+ }, help.content) : undefined
93
95
  }));
94
96
  function toExpiryString(values) {
95
97
  return Object.values(values).join('');
@@ -1 +1 @@
1
- {"version":3,"file":"Expiry.js","names":["React","useCallback","useContext","useMemo","useRef","makeUniqueId","SharedContext","pickSpacingProps","useDataValue","classnames","FieldBlock","MultiInputMask","HelpButton","Expiry","props","_value$substring","sharedContext","translations","translation","Forms","placeholders","DatePicker","placeholder_characters","errorMessages","_objectSpread","required","dateErrorRequired","validateRequired","value","error","undefined","preparedProps","fromInput","toExpiryString","id","propsId","className","label","expiryLabel","info","warning","help","disabled","layout","handleFocus","handleBlur","handleChange","expiry","month","ensureValidMonth","substring","year","idRef","current","status","createElement","_extends","stretch","labelDirection","values","statusState","onChange","onBlur","onFocus","delimiter","inputMode","inputs","mask","getMonthMask","placeholderCharacter","autoComplete","suffix","title","contents","Object","join","firstMask","secondMask","firstDigit","charAt","isFirstDigitValid","test","seconDigit","isSecondDigitValid","_supportsEufemiaSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Expiry/Expiry.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport SharedContext from '../../../../shared/Context'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { useDataValue } from '../../hooks'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { MultiInputMask } from '../../../../components/input-masked'\nimport type { MultiInputMaskValue } from '../../../../components/input-masked'\nimport { HelpButton } from '../../../../components'\n\ntype ExpiryValue = MultiInputMaskValue<'month' | 'year'>\n\nexport type ExpiryProps = FieldHelpProps & FieldProps<string>\n\nfunction Expiry(props: ExpiryProps) {\n const sharedContext = useContext(SharedContext)\n const translations = sharedContext?.translation.Forms\n const placeholders =\n sharedContext?.translation.DatePicker.placeholder_characters\n\n const errorMessages = useMemo(\n () => ({\n required: translations.dateErrorRequired,\n ...props.errorMessages,\n }),\n [translations, props.errorMessages]\n )\n\n const validateRequired = useCallback(\n (value: string, { required, error }) => {\n return required && !value ? error : undefined\n },\n []\n )\n\n const preparedProps: ExpiryProps = {\n ...props,\n errorMessages,\n fromInput: toExpiryString,\n validateRequired,\n }\n\n const {\n id: propsId,\n className,\n label = translations.expiryLabel,\n error,\n info,\n warning,\n help,\n disabled,\n value = '',\n layout = 'vertical',\n required,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue({\n ...preparedProps,\n })\n\n const expiry: ExpiryValue = {\n month: ensureValidMonth(value?.substring(0, 2)),\n year: value?.substring(2, 4) ?? '',\n }\n\n const idRef = useRef(propsId || makeUniqueId()).current\n\n const status = error ? 'error' : warning ? 'warn' : info ? 'info' : null\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-expiry', className)}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <MultiInputMask\n stretch\n id={`${idRef}__input`}\n label={label}\n labelDirection={layout}\n values={expiry}\n status={status}\n statusState={disabled ? 'disabled' : undefined}\n disabled={disabled}\n required={required}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n delimiter=\"/\"\n inputMode=\"numeric\"\n inputs={[\n {\n id: 'month',\n label: sharedContext?.translation.DatePicker['month'],\n mask: getMonthMask(expiry?.month),\n placeholderCharacter: placeholders['month'],\n autoComplete: 'cc-exp-month',\n },\n {\n id: 'year',\n label: sharedContext?.translation.DatePicker['year'],\n mask: [/[0-9]/, /[0-9]/],\n placeholderCharacter: placeholders['year'],\n autoComplete: 'cc-exp-year',\n },\n ]}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n\n function toExpiryString(values: ExpiryValue) {\n return Object.values(values).join('')\n }\n\n function ensureValidMonth(month: string) {\n // Return empty value if no month is given\n if (!month) {\n return ''\n }\n\n const [firstMask, secondMask] = getMonthMask(month)\n\n const firstDigit = month?.charAt(0)\n const isFirstDigitValid = firstMask.test(firstDigit)\n\n if (firstDigit && !isFirstDigitValid) {\n // Return empty value if the first digit is invalid\n return ''\n }\n\n const seconDigit = month?.charAt(1)\n const isSecondDigitValid = secondMask.test(seconDigit)\n\n if (seconDigit && !isSecondDigitValid) {\n // Return empty value if the second digit is invalid\n return ''\n }\n\n // Return given month of month value is valid\n return month\n }\n\n function getMonthMask(month: string) {\n const firstDigit = month?.charAt(0)\n\n return [\n /[0-1]/,\n firstDigit === '0' || firstDigit === '' ? /[1-9]/ : /[0-2]/,\n ]\n }\n}\n\nExpiry._supportsEufemiaSpacingProps = true\nexport default Expiry\n"],"mappings":"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"}
1
+ {"version":3,"file":"Expiry.js","names":["React","useCallback","useContext","SharedContext","pickSpacingProps","useDataValue","classnames","FieldBlock","MultiInputMask","HelpButton","useErrorMessage","Expiry","props","_value$substring","sharedContext","translations","translation","Forms","placeholders","DatePicker","placeholder_characters","errorMessages","path","required","dateErrorRequired","validateRequired","value","error","undefined","preparedProps","_objectSpread","fromInput","toExpiryString","id","className","label","expiryLabel","hasError","info","warning","help","disabled","labelDescription","layout","ariaAttributes","handleFocus","handleBlur","handleChange","expiry","month","ensureValidMonth","substring","year","status","createElement","_extends","forId","stretch","values","statusState","onChange","onBlur","onFocus","delimiter","inputMode","inputs","mask","getMonthMask","placeholderCharacter","autoComplete","suffix","title","content","Object","join","firstMask","secondMask","firstDigit","charAt","isFirstDigitValid","test","seconDigit","isSecondDigitValid","_supportsEufemiaSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/Expiry/Expiry.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport SharedContext from '../../../../shared/Context'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { useDataValue } from '../../hooks'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { MultiInputMask } from '../../../../components/input-masked'\nimport type { MultiInputMaskValue } from '../../../../components/input-masked'\nimport { HelpButton } from '../../../../components'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\ntype ExpiryValue = MultiInputMaskValue<'month' | 'year'>\n\nexport type ExpiryProps = FieldHelpProps & FieldProps<string>\n\nfunction Expiry(props: ExpiryProps) {\n const sharedContext = useContext(SharedContext)\n const translations = sharedContext?.translation.Forms\n const placeholders =\n sharedContext?.translation.DatePicker.placeholder_characters\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: translations.dateErrorRequired,\n })\n\n const validateRequired = useCallback(\n (value: string, { required, error }) => {\n return required && !value ? error : undefined\n },\n []\n )\n\n const preparedProps: ExpiryProps = {\n ...props,\n errorMessages,\n fromInput: toExpiryString,\n validateRequired,\n }\n\n const {\n id,\n className,\n label = translations.expiryLabel,\n error,\n hasError,\n info,\n warning,\n help,\n disabled,\n value = '',\n labelDescription,\n layout = 'vertical',\n ariaAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n const expiry: ExpiryValue = {\n month: ensureValidMonth(value?.substring(0, 2)),\n year: value?.substring(2, 4) ?? '',\n }\n\n const status = hasError\n ? 'error'\n : warning\n ? 'warn'\n : info\n ? 'info'\n : null\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-expiry', className)}\n forId={`${id}-input-month`}\n label={label}\n layout={layout}\n labelDescription={labelDescription}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <MultiInputMask\n stretch\n id={`${id}-input`}\n values={expiry}\n status={status}\n statusState={disabled ? 'disabled' : undefined}\n disabled={disabled}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n delimiter=\"/\"\n inputMode=\"numeric\"\n inputs={[\n {\n id: 'month',\n label: sharedContext?.translation.DatePicker['month'],\n mask: getMonthMask(expiry?.month),\n placeholderCharacter: placeholders['month'],\n autoComplete: 'cc-exp-month',\n ...ariaAttributes,\n },\n {\n id: 'year',\n label: sharedContext?.translation.DatePicker['year'],\n mask: [/[0-9]/, /[0-9]/],\n placeholderCharacter: placeholders['year'],\n autoComplete: 'cc-exp-year',\n ...ariaAttributes,\n },\n ]}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n\n function toExpiryString(values: ExpiryValue) {\n return Object.values(values).join('')\n }\n\n function ensureValidMonth(month: string) {\n // Return empty value if no month is given\n if (!month) {\n return ''\n }\n\n const [firstMask, secondMask] = getMonthMask(month)\n\n const firstDigit = month?.charAt(0)\n const isFirstDigitValid = firstMask.test(firstDigit)\n\n if (firstDigit && !isFirstDigitValid) {\n // Return empty value if the first digit is invalid\n return ''\n }\n\n const seconDigit = month?.charAt(1)\n const isSecondDigitValid = secondMask.test(seconDigit)\n\n if (seconDigit && !isSecondDigitValid) {\n // Return empty value if the second digit is invalid\n return ''\n }\n\n // Return given month of month value is valid\n return month\n }\n\n function getMonthMask(month: string) {\n const firstDigit = month?.charAt(0)\n\n return [\n /[0-1]/,\n firstDigit === '0' || firstDigit === '' ? /[1-9]/ : /[0-2]/,\n ]\n }\n}\n\nExpiry._supportsEufemiaSpacingProps = true\nexport default Expiry\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Props as StringComponentProps } from '../String';
2
- export type Props = StringComponentProps & {
1
+ import { Props as StringFieldProps } from '../String';
2
+ export type Props = StringFieldProps & {
3
3
  omitMask?: boolean;
4
4
  validate?: boolean;
5
5
  };
@@ -4,8 +4,9 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
4
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
5
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
6
  import React, { useContext, useMemo } from 'react';
7
- import StringComponent from '../String';
7
+ import StringField from '../String';
8
8
  import SharedContext from '../../../../shared/Context';
9
+ import useErrorMessage from '../../hooks/useErrorMessage';
9
10
  function NationalIdentityNumber(props) {
10
11
  var _props$pattern, _props$label, _props$width;
11
12
  const sharedContext = useContext(SharedContext);
@@ -15,12 +16,12 @@ function NationalIdentityNumber(props) {
15
16
  validate = true,
16
17
  omitMask
17
18
  } = props;
18
- const errorMessages = useMemo(() => _objectSpread({
19
+ const errorMessages = useErrorMessage(props.path, props.errorMessages, {
19
20
  required: errorMessage,
20
21
  pattern: errorMessage
21
- }, props.errorMessages), [errorMessage, props.errorMessages]);
22
+ });
22
23
  const mask = useMemo(() => omitMask ? Array(11).fill(/\d/) : [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/], [omitMask]);
23
- const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
24
+ const StringFieldProps = _objectSpread(_objectSpread({}, props), {}, {
24
25
  pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate && !props.validator ? '^[0-9]{11}$' : undefined,
25
26
  label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.nationalIdentityNumberLabel,
26
27
  errorMessages,
@@ -28,7 +29,7 @@ function NationalIdentityNumber(props) {
28
29
  width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium',
29
30
  inputMode: 'numeric'
30
31
  });
31
- return React.createElement(StringComponent, stringComponentProps);
32
+ return React.createElement(StringField, StringFieldProps);
32
33
  }
33
34
  NationalIdentityNumber._supportsSpacingProps = true;
34
35
  export default NationalIdentityNumber;
@@ -1 +1 @@
1
- {"version":3,"file":"NationalIdentityNumber.js","names":["React","useContext","useMemo","StringComponent","SharedContext","NationalIdentityNumber","props","_props$pattern","_props$label","_props$width","sharedContext","tr","translation","Forms","errorMessage","nationalIdentityNumberErrorRequired","validate","omitMask","errorMessages","_objectSpread","required","pattern","mask","Array","fill","stringComponentProps","validator","undefined","label","nationalIdentityNumberLabel","width","inputMode","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps & {\n omitMask?: boolean\n validate?: boolean\n}\n\nfunction NationalIdentityNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const errorMessage = tr.nationalIdentityNumberErrorRequired\n\n const { validate = true, omitMask } = props\n\n const errorMessages = useMemo(\n () => ({\n required: errorMessage,\n pattern: errorMessage,\n ...props.errorMessages,\n }),\n [errorMessage, props.errorMessages]\n )\n const mask = useMemo(\n () =>\n omitMask\n ? Array(11).fill(/\\d/)\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n [omitMask]\n )\n\n const stringComponentProps: Props = {\n ...props,\n pattern:\n props.pattern ??\n (validate && !props.validator ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.nationalIdentityNumberLabel,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n inputMode: 'numeric',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nNationalIdentityNumber._supportsSpacingProps = true\nexport default NationalIdentityNumber\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,eAAe,MAAyC,WAAW;AAC1E,OAAOC,aAAa,MAAM,4BAA4B;AAOtD,SAASC,sBAAsBA,CAACC,KAAY,EAAE;EAAA,IAAAC,cAAA,EAAAC,YAAA,EAAAC,YAAA;EAC5C,MAAMC,aAAa,GAAGT,UAAU,CAACG,aAAa,CAAC;EAC/C,MAAMO,EAAE,GAAGD,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK;EAC3C,MAAMC,YAAY,GAAGH,EAAE,CAACI,mCAAmC;EAE3D,MAAM;IAAEC,QAAQ,GAAG,IAAI;IAAEC;EAAS,CAAC,GAAGX,KAAK;EAE3C,MAAMY,aAAa,GAAGhB,OAAO,CAC3B,MAAAiB,aAAA;IACEC,QAAQ,EAAEN,YAAY;IACtBO,OAAO,EAAEP;EAAY,GAClBR,KAAK,CAACY,aAAa,CACtB,EACF,CAACJ,YAAY,EAAER,KAAK,CAACY,aAAa,CACpC,CAAC;EACD,MAAMI,IAAI,GAAGpB,OAAO,CAClB,MACEe,QAAQ,GACJM,KAAK,CAAC,EAAE,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,GACpB,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,EACP,CAACP,QAAQ,CACX,CAAC;EAED,MAAMQ,oBAA2B,GAAAN,aAAA,CAAAA,aAAA,KAC5Bb,KAAK;IACRe,OAAO,GAAAd,cAAA,GACLD,KAAK,CAACe,OAAO,cAAAd,cAAA,cAAAA,cAAA,GACZS,QAAQ,IAAI,CAACV,KAAK,CAACoB,SAAS,GAAG,aAAa,GAAGC,SAAU;IAC5DC,KAAK,GAAApB,YAAA,GACHF,KAAK,CAACsB,KAAK,cAAApB,YAAA,cAAAA,YAAA,GACXE,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK,CAACgB,2BAA2B;IAC9DX,aAAa;IACbI,IAAI;IACJQ,KAAK,GAAArB,YAAA,GAAEH,KAAK,CAACwB,KAAK,cAAArB,YAAA,cAAAA,YAAA,GAAI,QAAQ;IAC9BsB,SAAS,EAAE;EAAS,EACrB;EAED,OAAO/B,KAAA,CAAAgC,aAAA,CAAC7B,eAAe,EAAKsB,oBAAuB,CAAC;AACtD;AAEApB,sBAAsB,CAAC4B,qBAAqB,GAAG,IAAI;AACnD,eAAe5B,sBAAsB"}
1
+ {"version":3,"file":"NationalIdentityNumber.js","names":["React","useContext","useMemo","StringField","SharedContext","useErrorMessage","NationalIdentityNumber","props","_props$pattern","_props$label","_props$width","sharedContext","tr","translation","Forms","errorMessage","nationalIdentityNumberErrorRequired","validate","omitMask","errorMessages","path","required","pattern","mask","Array","fill","StringFieldProps","_objectSpread","validator","undefined","label","nationalIdentityNumberLabel","width","inputMode","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringField, { Props as StringFieldProps } from '../String'\n\nimport SharedContext from '../../../../shared/Context'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\nexport type Props = StringFieldProps & {\n omitMask?: boolean\n validate?: boolean\n}\n\nfunction NationalIdentityNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const errorMessage = tr.nationalIdentityNumberErrorRequired\n\n const { validate = true, omitMask } = props\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: errorMessage,\n pattern: errorMessage,\n })\n\n const mask = useMemo(\n () =>\n omitMask\n ? Array(11).fill(/\\d/)\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n [omitMask]\n )\n\n const StringFieldProps: Props = {\n ...props,\n pattern:\n props.pattern ??\n (validate && !props.validator ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.nationalIdentityNumberLabel,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n inputMode: 'numeric',\n }\n\n return <StringField {...StringFieldProps} />\n}\n\nNationalIdentityNumber._supportsSpacingProps = true\nexport default NationalIdentityNumber\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,WAAW,MAAqC,WAAW;AAElE,OAAOC,aAAa,MAAM,4BAA4B;AACtD,OAAOC,eAAe,MAAM,6BAA6B;AAOzD,SAASC,sBAAsBA,CAACC,KAAY,EAAE;EAAA,IAAAC,cAAA,EAAAC,YAAA,EAAAC,YAAA;EAC5C,MAAMC,aAAa,GAAGV,UAAU,CAACG,aAAa,CAAC;EAC/C,MAAMQ,EAAE,GAAGD,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK;EAC3C,MAAMC,YAAY,GAAGH,EAAE,CAACI,mCAAmC;EAE3D,MAAM;IAAEC,QAAQ,GAAG,IAAI;IAAEC;EAAS,CAAC,GAAGX,KAAK;EAE3C,MAAMY,aAAa,GAAGd,eAAe,CAACE,KAAK,CAACa,IAAI,EAAEb,KAAK,CAACY,aAAa,EAAE;IACrEE,QAAQ,EAAEN,YAAY;IACtBO,OAAO,EAAEP;EACX,CAAC,CAAC;EAEF,MAAMQ,IAAI,GAAGrB,OAAO,CAClB,MACEgB,QAAQ,GACJM,KAAK,CAAC,EAAE,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,GACpB,CACE,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,EACP,CAACP,QAAQ,CACX,CAAC;EAED,MAAMQ,gBAAuB,GAAAC,aAAA,CAAAA,aAAA,KACxBpB,KAAK;IACRe,OAAO,GAAAd,cAAA,GACLD,KAAK,CAACe,OAAO,cAAAd,cAAA,cAAAA,cAAA,GACZS,QAAQ,IAAI,CAACV,KAAK,CAACqB,SAAS,GAAG,aAAa,GAAGC,SAAU;IAC5DC,KAAK,GAAArB,YAAA,GACHF,KAAK,CAACuB,KAAK,cAAArB,YAAA,cAAAA,YAAA,GACXE,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEE,WAAW,CAACC,KAAK,CAACiB,2BAA2B;IAC9DZ,aAAa;IACbI,IAAI;IACJS,KAAK,GAAAtB,YAAA,GAAEH,KAAK,CAACyB,KAAK,cAAAtB,YAAA,cAAAA,YAAA,GAAI,QAAQ;IAC9BuB,SAAS,EAAE;EAAS,EACrB;EAED,OAAOjC,KAAA,CAAAkC,aAAA,CAAC/B,WAAW,EAAKuB,gBAAmB,CAAC;AAC9C;AAEApB,sBAAsB,CAAC6B,qBAAqB,GAAG,IAAI;AACnD,eAAe7B,sBAAsB"}
@@ -1,7 +1,7 @@
1
1
  import { InputMaskedProps } from '../../../../components/InputMasked';
2
2
  import type { InputAlign, InputSize } from '../../../../components/Input';
3
- import { FieldProps, FieldHelpProps } from '../../types';
4
- interface ErrorMessages {
3
+ import { FieldProps, FieldHelpProps, CustomErrorMessages } from '../../types';
4
+ interface ErrorMessages extends CustomErrorMessages {
5
5
  required?: string;
6
6
  schema?: string;
7
7
  minimum?: string;
@@ -16,8 +16,6 @@ export type Props = FieldHelpProps & FieldProps<number, undefined, ErrorMessages
16
16
  percent?: InputMaskedProps['as_percent'];
17
17
  mask?: InputMaskedProps['mask'];
18
18
  step?: number;
19
- thousandSeparator?: string | true;
20
- decimalSymbol?: string;
21
19
  decimalLimit?: number;
22
20
  prefix?: string;
23
21
  suffix?: string;
@@ -12,6 +12,7 @@ import FieldBlock from '../../FieldBlock';
12
12
  import { useDataValue } from '../../hooks';
13
13
  import { pickSpacingProps } from '../../../../components/flex/utils';
14
14
  import { clamp } from '../../../../components/slider/SliderHelpers';
15
+ import useErrorMessage from '../../hooks/useErrorMessage';
15
16
  function NumberComponent(props) {
16
17
  var _props$width, _sharedContext$transl, _sharedContext$transl2;
17
18
  const sharedContext = useContext(SharedContext);
@@ -21,21 +22,19 @@ function NumberComponent(props) {
21
22
  percent,
22
23
  mask,
23
24
  step = 1,
24
- thousandSeparator,
25
- decimalSymbol,
26
25
  decimalLimit = 12,
27
26
  prefix,
28
27
  suffix,
29
28
  showStepControls
30
29
  } = props;
31
- const errorMessages = useMemo(() => _objectSpread({
30
+ const errorMessages = useErrorMessage(props.path, props.errorMessages, {
32
31
  required: tr.inputErrorRequired,
33
32
  minimum: tr.numberFieldErrorMinimum,
34
33
  maximum: tr.numberFieldErrorMaximum,
35
34
  exclusiveMinimum: tr.numberFieldErrorExclusiveMinimum,
36
35
  exclusiveMaximum: tr.numberFieldErrorExclusiveMaximum,
37
36
  multipleOf: tr.numberFieldErrorMultipleOf
38
- }, props.errorMessages), [tr, props.errorMessages]);
37
+ });
39
38
  const schema = useMemo(() => {
40
39
  var _props$schema;
41
40
  return (_props$schema = props.schema) !== null && _props$schema !== void 0 ? _props$schema : {
@@ -69,29 +68,29 @@ function NumberComponent(props) {
69
68
  return value;
70
69
  }, []);
71
70
  const maskProps = useMemo(() => {
71
+ const mask_options = {
72
+ prefix,
73
+ suffix,
74
+ decimalLimit
75
+ };
72
76
  if (currency) {
73
77
  return {
74
- as_currency: currency
78
+ as_currency: currency,
79
+ mask_options
75
80
  };
76
81
  }
77
82
  if (percent) {
78
83
  return {
79
- as_percent: percent
84
+ as_percent: percent,
85
+ mask_options
80
86
  };
81
87
  }
82
88
  return {
83
89
  as_number: true,
84
90
  mask,
85
- number_mask: {
86
- decimalLimit,
87
- decimalSymbol,
88
- includeThousandsSeparator: thousandSeparator !== undefined,
89
- thousandsSeparatorSymbol: thousandSeparator === true ? ' ' : thousandSeparator,
90
- prefix,
91
- suffix
92
- }
91
+ number_mask: _objectSpread({}, mask_options)
93
92
  };
94
- }, [currency, percent, mask, decimalLimit, decimalSymbol, thousandSeparator, prefix, suffix]);
93
+ }, [currency, decimalLimit, mask, percent, prefix, suffix]);
95
94
  const preparedProps = _objectSpread(_objectSpread({}, props), {}, {
96
95
  errorMessages,
97
96
  schema,
@@ -109,13 +108,16 @@ function NumberComponent(props) {
109
108
  layout,
110
109
  placeholder,
111
110
  label,
111
+ labelDescription,
112
112
  value,
113
113
  minimum = Number.MIN_SAFE_INTEGER,
114
114
  maximum = Number.MAX_SAFE_INTEGER,
115
115
  disabled,
116
+ ariaAttributes,
116
117
  info,
117
118
  warning,
118
119
  error,
120
+ hasError,
119
121
  help,
120
122
  size,
121
123
  width,
@@ -150,23 +152,24 @@ function NumberComponent(props) {
150
152
  }, [handleChange, maximum, minimum, showStepControls, step, value]);
151
153
  const fieldBlockProps = _objectSpread({
152
154
  className: classnames('dnb-forms-field-number', className),
153
- contentClassName: classnames('dnb-forms-field-number__contents', showStepControls && 'dnb-forms-field-number__contents--has-controls', disabled && 'dnb-forms-field-number__contents--is-disabled', error && 'dnb-forms-field-number__contents--has-error'),
155
+ contentClassName: classnames('dnb-forms-field-number__contents', showStepControls && 'dnb-forms-field-number__contents--has-controls', disabled && 'dnb-forms-field-number__contents--is-disabled', hasError && 'dnb-forms-field-number__contents--has-error'),
154
156
  forId: id,
155
157
  layout,
156
158
  label,
159
+ labelDescription,
157
160
  info,
158
161
  warning,
159
162
  error,
160
163
  disabled,
161
164
  width: width === 'stretch' ? width : undefined,
162
- contentsWidth: width !== false ? width : undefined
165
+ contentWidth: width !== false ? width : undefined
163
166
  }, pickSpacingProps(props));
164
167
  const increaseProps = showStepControls && {
165
168
  'aria-hidden': true,
166
169
  className: 'dnb-button--control-after',
167
170
  variant: 'secondary',
168
171
  icon: 'add',
169
- size: convertInputSizeToButtonSize(size),
172
+ size: size || 'small',
170
173
  tabIndex: -1,
171
174
  disabled: disabled || value >= maximum,
172
175
  onClick: () => {
@@ -179,6 +182,7 @@ function NumberComponent(props) {
179
182
  const decreaseProps = showStepControls && _objectSpread(_objectSpread({}, increaseProps), {}, {
180
183
  className: 'dnb-button--control-before',
181
184
  icon: 'subtract',
185
+ size: size || 'small',
182
186
  disabled: disabled || value <= minimum,
183
187
  onClick: () => {
184
188
  handleChange({
@@ -194,7 +198,7 @@ function NumberComponent(props) {
194
198
  'aria-valuenow': String(value),
195
199
  'aria-valuetext': String(value)
196
200
  };
197
- const inputProps = _objectSpread(_objectSpread({
201
+ const inputProps = _objectSpread(_objectSpread(_objectSpread({
198
202
  id,
199
203
  name,
200
204
  autoComplete,
@@ -208,23 +212,20 @@ function NumberComponent(props) {
208
212
  onFocus: handleFocus,
209
213
  onBlur: handleBlur,
210
214
  onChange: handleChange,
211
- disabled,
212
- status: error ? 'error' : undefined,
215
+ disabled
216
+ }, ariaAttributes), {}, {
217
+ status: hasError ? 'error' : undefined,
213
218
  stretch: width !== undefined,
214
219
  suffix: help && !showStepControls ? React.createElement(HelpButton, {
215
220
  title: help.title
216
- }, help.contents) : undefined
221
+ }, help.content) : undefined
217
222
  }, ariaParams);
218
223
  return React.createElement(FieldBlock, _extends({}, fieldBlockProps, {
219
224
  asFieldset: false
220
225
  }), showStepControls && React.createElement(Button, decreaseProps), React.createElement(InputMasked, inputProps), showStepControls && React.createElement(Button, increaseProps), help && showStepControls && React.createElement(HelpButton, {
221
226
  title: help.title
222
- }, help.contents));
227
+ }, help.content));
223
228
  }
224
- const convertInputSizeToButtonSize = inputSize => {
225
- const buttonSize = ['small', 'medium', 'large'].indexOf(inputSize) > -1 ? inputSize : 'medium';
226
- return buttonSize;
227
- };
228
229
  NumberComponent._supportsSpacingProps = true;
229
230
  export default NumberComponent;
230
231
  //# sourceMappingURL=Number.js.map