@dnb/eufemia 10.50.0 → 10.51.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 (901) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/cjs/components/accordion/style/dnb-accordion.css +3 -3
  3. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  4. package/cjs/components/autocomplete/style/dnb-autocomplete.css +1 -1
  5. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  6. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  7. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  8. package/cjs/components/button/Button.d.ts +2 -2
  9. package/cjs/components/card/style/dnb-card.css +1 -1
  10. package/cjs/components/card/style/dnb-card.min.css +1 -1
  11. package/cjs/components/date-picker/DatePicker.d.ts +13 -4
  12. package/cjs/components/drawer/style/dnb-drawer.css +3 -3
  13. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  14. package/cjs/components/dropdown/style/dnb-dropdown.css +1 -1
  15. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  16. package/cjs/components/form-row/style/dnb-form-row.css +1 -1
  17. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  18. package/cjs/components/form-status/FormStatus.d.ts +1 -1
  19. package/cjs/components/grid/style/dnb-grid.css +6 -6
  20. package/cjs/components/grid/style/dnb-grid.min.css +1 -1
  21. package/cjs/components/input-masked/InputMasked.d.ts +1 -1
  22. package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
  23. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  24. package/cjs/components/number-format/NumberFormat.d.ts +14 -28
  25. package/cjs/components/number-format/NumberFormat.js +6 -2
  26. package/cjs/components/number-format/NumberFormat.js.map +1 -1
  27. package/cjs/components/number-format/NumberFormatDocs.d.ts +3 -0
  28. package/cjs/components/number-format/NumberFormatDocs.js +161 -0
  29. package/cjs/components/number-format/NumberFormatDocs.js.map +1 -0
  30. package/cjs/components/number-format/NumberUtils.d.ts +21 -1
  31. package/cjs/components/number-format/NumberUtils.js +33 -8
  32. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  33. package/cjs/components/pagination/Pagination.d.ts +1 -1
  34. package/cjs/components/section/style/dnb-section.css +2 -2
  35. package/cjs/components/section/style/dnb-section.min.css +2 -2
  36. package/cjs/components/space/style/dnb-space.css +2 -2
  37. package/cjs/components/space/style/dnb-space.min.css +1 -1
  38. package/cjs/components/switch/Switch.d.ts +100 -91
  39. package/cjs/components/switch/Switch.js +167 -239
  40. package/cjs/components/switch/Switch.js.map +1 -1
  41. package/cjs/components/switch/SwitchDocs.d.ts +3 -0
  42. package/cjs/components/switch/SwitchDocs.js +93 -0
  43. package/cjs/components/switch/SwitchDocs.js.map +1 -0
  44. package/cjs/components/tabs/style/dnb-tabs.css +1 -0
  45. package/cjs/components/tabs/style/dnb-tabs.min.css +1 -1
  46. package/cjs/components/tabs/style/dnb-tabs.scss +1 -0
  47. package/cjs/components/toggle-button/style/dnb-toggle-button.css +1 -1
  48. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  49. package/cjs/extensions/forms/DataContext/At/At.js +1 -1
  50. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  51. package/cjs/extensions/forms/DataContext/Context.d.ts +20 -9
  52. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  53. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  54. package/cjs/extensions/forms/DataContext/Provider/Provider.js +105 -60
  55. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  56. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  57. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  58. package/cjs/extensions/forms/Field/Date/Date.d.ts +6 -0
  59. package/cjs/extensions/forms/Field/Date/Date.js +20 -4
  60. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  61. package/{extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts → cjs/extensions/forms/Field/Date/DateDocs.d.ts} +1 -1
  62. package/cjs/extensions/forms/Field/Date/DateDocs.js +20 -0
  63. package/cjs/extensions/forms/Field/Date/DateDocs.js.map +1 -0
  64. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +1 -1
  65. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  66. package/{es/extensions/forms/Form/FieldProps/FieldProps.d.ts → cjs/extensions/forms/Field/Provider/FieldProvider.d.ts} +5 -7
  67. package/cjs/extensions/forms/Field/Provider/FieldProvider.js +33 -0
  68. package/cjs/extensions/forms/Field/Provider/FieldProvider.js.map +1 -0
  69. package/cjs/extensions/forms/{Form/FieldProps/FieldPropsContext.d.ts → Field/Provider/FieldProviderContext.d.ts} +3 -3
  70. package/cjs/extensions/forms/{Form/FieldProps/FieldPropsContext.js → Field/Provider/FieldProviderContext.js} +3 -3
  71. package/cjs/extensions/forms/Field/Provider/FieldProviderContext.js.map +1 -0
  72. package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.d.ts +2 -0
  73. package/cjs/extensions/forms/{Form/FieldProps/FieldPropsDocs.js → Field/Provider/FieldProviderDocs.js} +4 -4
  74. package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -0
  75. package/cjs/extensions/forms/Field/Provider/index.d.ts +2 -0
  76. package/cjs/extensions/forms/{Form/FieldProps → Field/Provider}/index.js +5 -5
  77. package/cjs/extensions/forms/Field/Provider/index.js.map +1 -0
  78. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +121 -0
  79. package/cjs/extensions/forms/{Form/FieldProps/FieldProps.js → Field/Provider/useFieldProvider.js} +34 -34
  80. package/cjs/extensions/forms/Field/Provider/useFieldProvider.js.map +1 -0
  81. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  82. package/cjs/extensions/forms/Field/index.js +7 -0
  83. package/cjs/extensions/forms/Field/index.js.map +1 -1
  84. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +12 -1
  85. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  86. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  87. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  88. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  89. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  90. package/cjs/extensions/forms/Form/Element/Element.js +4 -4
  91. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  92. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  93. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  94. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +2 -2
  95. package/cjs/extensions/forms/Form/Isolation/Isolation.js +1 -1
  96. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  97. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  98. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  99. package/cjs/extensions/forms/Form/Section/Section.d.ts +2 -1
  100. package/cjs/extensions/forms/Form/Section/Section.js +2 -2
  101. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  102. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.d.ts +25 -0
  103. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +153 -0
  104. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -0
  105. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.d.ts +2 -0
  106. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js +30 -0
  107. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js.map +1 -0
  108. package/cjs/extensions/forms/Form/SubmitConfirmation/index.d.ts +2 -0
  109. package/cjs/extensions/forms/Form/SubmitConfirmation/index.js +27 -0
  110. package/cjs/extensions/forms/Form/SubmitConfirmation/index.js.map +1 -0
  111. package/cjs/extensions/forms/Form/Visibility/Visibility.js +3 -3
  112. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  113. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.d.ts +1 -0
  114. package/cjs/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  115. package/cjs/extensions/forms/Form/Visibility/useVisibility.js +1 -1
  116. package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  117. package/cjs/extensions/forms/Form/data-context/getData.js +1 -1
  118. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
  119. package/cjs/extensions/forms/Form/data-context/useData.d.ts +3 -2
  120. package/cjs/extensions/forms/Form/data-context/useData.js +13 -15
  121. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  122. package/{es/extensions/forms/Form/data-context/useError.d.ts → cjs/extensions/forms/Form/data-context/useValidation.d.ts} +3 -1
  123. package/cjs/extensions/forms/Form/data-context/useValidation.js +60 -0
  124. package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -0
  125. package/cjs/extensions/forms/Form/index.d.ts +13 -2
  126. package/cjs/extensions/forms/Form/index.js +19 -9
  127. package/cjs/extensions/forms/Form/index.js.map +1 -1
  128. package/cjs/extensions/forms/Iterate/Array/Array.js +4 -12
  129. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  130. package/cjs/extensions/forms/Iterate/Count/Count.js +1 -1
  131. package/cjs/extensions/forms/Iterate/Count/Count.js.map +1 -1
  132. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -2
  133. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  134. package/cjs/extensions/forms/Tools/GenerateSchema.d.ts +1 -1
  135. package/cjs/extensions/forms/Tools/GenerateSchema.js +1 -1
  136. package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  137. package/cjs/extensions/forms/Tools/ListAllProps.d.ts +1 -1
  138. package/cjs/extensions/forms/Tools/ListAllProps.js +1 -1
  139. package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -1
  140. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +3 -3
  141. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  142. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +2 -2
  143. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  144. package/cjs/extensions/forms/Value/Currency/CurrencyDocs.d.ts +2 -0
  145. package/cjs/extensions/forms/Value/Currency/CurrencyDocs.js +28 -0
  146. package/cjs/extensions/forms/Value/Currency/CurrencyDocs.js.map +1 -0
  147. package/cjs/extensions/forms/Value/Date/Date.js +25 -16
  148. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  149. package/cjs/extensions/forms/Value/Number/NumberDocs.js +9 -2
  150. package/cjs/extensions/forms/Value/Number/NumberDocs.js.map +1 -1
  151. package/cjs/extensions/forms/Value/Provider/ValueProvider.d.ts +13 -0
  152. package/cjs/extensions/forms/Value/Provider/ValueProvider.js +27 -0
  153. package/cjs/extensions/forms/Value/Provider/ValueProvider.js.map +1 -0
  154. package/cjs/extensions/forms/Value/Provider/ValueProviderContext.d.ts +9 -0
  155. package/cjs/extensions/forms/Value/Provider/ValueProviderContext.js +15 -0
  156. package/cjs/extensions/forms/Value/Provider/ValueProviderContext.js.map +1 -0
  157. package/cjs/extensions/forms/Value/Provider/ValueProviderDocs.d.ts +3 -0
  158. package/cjs/extensions/forms/Value/Provider/ValueProviderDocs.js +23 -0
  159. package/cjs/extensions/forms/Value/Provider/ValueProviderDocs.js.map +1 -0
  160. package/cjs/extensions/forms/Value/Provider/index.d.ts +2 -0
  161. package/cjs/extensions/forms/Value/Provider/index.js +27 -0
  162. package/cjs/extensions/forms/Value/Provider/index.js.map +1 -0
  163. package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +31 -0
  164. package/cjs/extensions/forms/Value/Provider/useValueProvider.js +50 -0
  165. package/cjs/extensions/forms/Value/Provider/useValueProvider.js.map +1 -0
  166. package/cjs/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -1
  167. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +11 -3
  168. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  169. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.d.ts +3 -0
  170. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js +37 -0
  171. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -0
  172. package/cjs/extensions/forms/Value/index.d.ts +3 -2
  173. package/cjs/extensions/forms/Value/index.js +9 -2
  174. package/cjs/extensions/forms/Value/index.js.map +1 -1
  175. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  176. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  177. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +2 -1
  178. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  179. package/cjs/extensions/forms/Wizard/Step/Step.js +2 -2
  180. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  181. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -5
  182. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  183. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -4
  184. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.d.ts +1 -2
  185. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +13 -15
  186. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  187. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js +0 -5
  188. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js.map +1 -1
  189. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +0 -2
  190. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +0 -2
  191. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  192. package/cjs/extensions/forms/hooks/useDataValue.d.ts +1 -1
  193. package/cjs/extensions/forms/hooks/useDataValue.js +1 -1
  194. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  195. package/cjs/extensions/forms/hooks/useExternalValue.js +1 -1
  196. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
  197. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  198. package/cjs/extensions/forms/hooks/useFieldProps.js +111 -56
  199. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  200. package/cjs/extensions/forms/hooks/usePath.js +7 -4
  201. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  202. package/cjs/extensions/forms/hooks/useValueProps.d.ts +1 -1
  203. package/cjs/extensions/forms/hooks/useValueProps.js +7 -2
  204. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  205. package/cjs/extensions/forms/style/dnb-forms.css +10 -21
  206. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  207. package/cjs/extensions/forms/types.d.ts +7 -3
  208. package/cjs/extensions/forms/types.js.map +1 -1
  209. package/cjs/extensions/forms/utils/ajv.d.ts +2 -1
  210. package/cjs/extensions/forms/utils/ajv.js +1 -1
  211. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  212. package/cjs/extensions/forms/utils/index.d.ts +1 -0
  213. package/cjs/extensions/forms/utils/index.js +12 -0
  214. package/cjs/extensions/forms/utils/index.js.map +1 -1
  215. package/cjs/extensions/forms/utils/json-pointer/export.d.ts +1 -0
  216. package/cjs/extensions/forms/utils/json-pointer/export.js +17 -0
  217. package/cjs/extensions/forms/utils/json-pointer/export.js.map +1 -0
  218. package/cjs/extensions/forms/utils/json-pointer/json-pointer.d.ts +43 -0
  219. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js +139 -0
  220. package/cjs/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -0
  221. package/cjs/extensions/forms/utils/json-pointer.d.ts +3 -0
  222. package/cjs/extensions/forms/utils/json-pointer.js +24 -0
  223. package/cjs/extensions/forms/utils/json-pointer.js.map +1 -0
  224. package/cjs/shared/Context.d.ts +2 -0
  225. package/cjs/shared/Context.js +1 -1
  226. package/cjs/shared/Context.js.map +1 -1
  227. package/cjs/shared/Eufemia.d.ts +1 -1
  228. package/cjs/shared/Eufemia.js +2 -2
  229. package/cjs/shared/Eufemia.js.map +1 -1
  230. package/cjs/shared/MediaQueryUtils.d.ts +0 -1
  231. package/cjs/shared/MediaQueryUtils.js +17 -14
  232. package/cjs/shared/MediaQueryUtils.js.map +1 -1
  233. package/cjs/shared/helpers/extendPropsWithContext.js +3 -3
  234. package/cjs/shared/helpers/extendPropsWithContext.js.map +1 -1
  235. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  236. package/cjs/style/core/scopes.scss +1 -1
  237. package/cjs/style/core/utilities.scss +10 -5
  238. package/cjs/style/dnb-ui-basis.css +1 -1
  239. package/cjs/style/dnb-ui-basis.min.css +1 -1
  240. package/cjs/style/dnb-ui-body.css +1 -1
  241. package/cjs/style/dnb-ui-body.min.css +1 -1
  242. package/cjs/style/dnb-ui-components.css +35 -45
  243. package/cjs/style/dnb-ui-components.min.css +5 -5
  244. package/cjs/style/dnb-ui-core.css +1 -1
  245. package/cjs/style/dnb-ui-core.min.css +1 -1
  246. package/cjs/style/dnb-ui-elements.css +1 -1
  247. package/cjs/style/dnb-ui-elements.min.css +1 -1
  248. package/cjs/style/dnb-ui-extensions.css +10 -21
  249. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  250. package/cjs/style/dnb-ui-forms.css +10 -21
  251. package/cjs/style/dnb-ui-forms.min.css +1 -1
  252. package/cjs/style/dnb-ui-forms.scss +0 -1
  253. package/cjs/style/dnb-ui-fragments.css +2 -2
  254. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  255. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  256. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  257. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +46 -67
  258. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  259. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  260. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  261. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +10 -21
  262. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  263. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +10 -21
  264. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  265. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  266. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  267. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +46 -67
  268. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  269. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  270. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  271. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +10 -21
  272. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  273. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +10 -21
  274. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  275. package/cjs/style/themes/theme-ui/ui-theme-basis.css +1 -1
  276. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  277. package/cjs/style/themes/theme-ui/ui-theme-components.css +46 -67
  278. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  279. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
  280. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  281. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +10 -21
  282. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  283. package/cjs/style/themes/theme-ui/ui-theme-forms.css +10 -21
  284. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  285. package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -1
  286. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  287. package/components/accordion/style/dnb-accordion.css +3 -3
  288. package/components/accordion/style/dnb-accordion.min.css +1 -1
  289. package/components/autocomplete/style/dnb-autocomplete.css +1 -1
  290. package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  291. package/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  292. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  293. package/components/button/Button.d.ts +2 -2
  294. package/components/card/style/dnb-card.css +1 -1
  295. package/components/card/style/dnb-card.min.css +1 -1
  296. package/components/date-picker/DatePicker.d.ts +13 -4
  297. package/components/drawer/style/dnb-drawer.css +3 -3
  298. package/components/drawer/style/dnb-drawer.min.css +1 -1
  299. package/components/dropdown/style/dnb-dropdown.css +1 -1
  300. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  301. package/components/form-row/style/dnb-form-row.css +1 -1
  302. package/components/form-row/style/dnb-form-row.min.css +1 -1
  303. package/components/form-status/FormStatus.d.ts +1 -1
  304. package/components/grid/style/dnb-grid.css +6 -6
  305. package/components/grid/style/dnb-grid.min.css +1 -1
  306. package/components/input-masked/InputMasked.d.ts +1 -1
  307. package/components/input-masked/InputMaskedDocs.js +1 -1
  308. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  309. package/components/number-format/NumberFormat.d.ts +14 -28
  310. package/components/number-format/NumberFormat.js +6 -2
  311. package/components/number-format/NumberFormat.js.map +1 -1
  312. package/components/number-format/NumberFormatDocs.d.ts +3 -0
  313. package/components/number-format/NumberFormatDocs.js +153 -0
  314. package/components/number-format/NumberFormatDocs.js.map +1 -0
  315. package/components/number-format/NumberUtils.d.ts +21 -1
  316. package/components/number-format/NumberUtils.js +32 -8
  317. package/components/number-format/NumberUtils.js.map +1 -1
  318. package/components/pagination/Pagination.d.ts +1 -1
  319. package/components/section/style/dnb-section.css +2 -2
  320. package/components/section/style/dnb-section.min.css +2 -2
  321. package/components/space/style/dnb-space.css +2 -2
  322. package/components/space/style/dnb-space.min.css +1 -1
  323. package/components/switch/Switch.d.ts +100 -91
  324. package/components/switch/Switch.js +165 -238
  325. package/components/switch/Switch.js.map +1 -1
  326. package/components/switch/SwitchDocs.d.ts +3 -0
  327. package/components/switch/SwitchDocs.js +85 -0
  328. package/components/switch/SwitchDocs.js.map +1 -0
  329. package/components/tabs/style/dnb-tabs.css +1 -0
  330. package/components/tabs/style/dnb-tabs.min.css +1 -1
  331. package/components/tabs/style/dnb-tabs.scss +1 -0
  332. package/components/toggle-button/style/dnb-toggle-button.css +1 -1
  333. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  334. package/es/components/accordion/style/dnb-accordion.css +3 -3
  335. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  336. package/es/components/autocomplete/style/dnb-autocomplete.css +1 -1
  337. package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  338. package/es/components/breadcrumb/style/dnb-breadcrumb.css +1 -1
  339. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  340. package/es/components/button/Button.d.ts +2 -2
  341. package/es/components/card/style/dnb-card.css +1 -1
  342. package/es/components/card/style/dnb-card.min.css +1 -1
  343. package/es/components/date-picker/DatePicker.d.ts +13 -4
  344. package/es/components/drawer/style/dnb-drawer.css +3 -3
  345. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  346. package/es/components/dropdown/style/dnb-dropdown.css +1 -1
  347. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  348. package/es/components/form-row/style/dnb-form-row.css +1 -1
  349. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  350. package/es/components/form-status/FormStatus.d.ts +1 -1
  351. package/es/components/grid/style/dnb-grid.css +6 -6
  352. package/es/components/grid/style/dnb-grid.min.css +1 -1
  353. package/es/components/input-masked/InputMasked.d.ts +1 -1
  354. package/es/components/input-masked/InputMaskedDocs.js +1 -1
  355. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  356. package/es/components/number-format/NumberFormat.d.ts +14 -28
  357. package/es/components/number-format/NumberFormat.js +6 -2
  358. package/es/components/number-format/NumberFormat.js.map +1 -1
  359. package/es/components/number-format/NumberFormatDocs.d.ts +3 -0
  360. package/es/components/number-format/NumberFormatDocs.js +150 -0
  361. package/es/components/number-format/NumberFormatDocs.js.map +1 -0
  362. package/es/components/number-format/NumberUtils.d.ts +21 -1
  363. package/es/components/number-format/NumberUtils.js +31 -7
  364. package/es/components/number-format/NumberUtils.js.map +1 -1
  365. package/es/components/pagination/Pagination.d.ts +1 -1
  366. package/es/components/section/style/dnb-section.css +2 -2
  367. package/es/components/section/style/dnb-section.min.css +2 -2
  368. package/es/components/space/style/dnb-space.css +2 -2
  369. package/es/components/space/style/dnb-space.min.css +1 -1
  370. package/es/components/switch/Switch.d.ts +100 -91
  371. package/es/components/switch/Switch.js +164 -238
  372. package/es/components/switch/Switch.js.map +1 -1
  373. package/es/components/switch/SwitchDocs.d.ts +3 -0
  374. package/es/components/switch/SwitchDocs.js +85 -0
  375. package/es/components/switch/SwitchDocs.js.map +1 -0
  376. package/es/components/tabs/style/dnb-tabs.css +1 -0
  377. package/es/components/tabs/style/dnb-tabs.min.css +1 -1
  378. package/es/components/tabs/style/dnb-tabs.scss +1 -0
  379. package/es/components/toggle-button/style/dnb-toggle-button.css +1 -1
  380. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  381. package/es/extensions/forms/DataContext/At/At.js +1 -1
  382. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  383. package/es/extensions/forms/DataContext/Context.d.ts +20 -9
  384. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  385. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  386. package/es/extensions/forms/DataContext/Provider/Provider.js +100 -58
  387. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  388. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  389. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  390. package/es/extensions/forms/Field/Date/Date.d.ts +6 -0
  391. package/es/extensions/forms/Field/Date/Date.js +20 -4
  392. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  393. package/{cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts → es/extensions/forms/Field/Date/DateDocs.d.ts} +1 -1
  394. package/es/extensions/forms/Field/Date/DateDocs.js +13 -0
  395. package/es/extensions/forms/Field/Date/DateDocs.js.map +1 -0
  396. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +1 -1
  397. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  398. package/{extensions/forms/Form/FieldProps/FieldProps.d.ts → es/extensions/forms/Field/Provider/FieldProvider.d.ts} +5 -7
  399. package/es/extensions/forms/Field/Provider/FieldProvider.js +24 -0
  400. package/es/extensions/forms/Field/Provider/FieldProvider.js.map +1 -0
  401. package/{extensions/forms/Form/FieldProps/FieldPropsContext.d.ts → es/extensions/forms/Field/Provider/FieldProviderContext.d.ts} +3 -3
  402. package/es/extensions/forms/Field/Provider/FieldProviderContext.js +7 -0
  403. package/es/extensions/forms/Field/Provider/FieldProviderContext.js.map +1 -0
  404. package/es/extensions/forms/Field/Provider/FieldProviderDocs.d.ts +2 -0
  405. package/{extensions/forms/Form/FieldProps/FieldPropsDocs.js → es/extensions/forms/Field/Provider/FieldProviderDocs.js} +2 -2
  406. package/es/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -0
  407. package/es/extensions/forms/Field/Provider/index.d.ts +2 -0
  408. package/es/extensions/forms/Field/Provider/index.js +3 -0
  409. package/es/extensions/forms/Field/Provider/index.js.map +1 -0
  410. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +121 -0
  411. package/es/extensions/forms/{Form/FieldProps/FieldProps.js → Field/Provider/useFieldProvider.js} +34 -32
  412. package/es/extensions/forms/Field/Provider/useFieldProvider.js.map +1 -0
  413. package/es/extensions/forms/Field/index.d.ts +1 -0
  414. package/es/extensions/forms/Field/index.js +1 -0
  415. package/es/extensions/forms/Field/index.js.map +1 -1
  416. package/es/extensions/forms/FieldBlock/FieldBlock.js +12 -1
  417. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  418. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  419. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  420. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  421. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  422. package/es/extensions/forms/Form/Element/Element.js +4 -4
  423. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  424. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  425. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  426. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +2 -2
  427. package/es/extensions/forms/Form/Isolation/Isolation.js +1 -1
  428. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  429. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  430. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  431. package/es/extensions/forms/Form/Section/Section.d.ts +2 -1
  432. package/es/extensions/forms/Form/Section/Section.js +1 -1
  433. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  434. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.d.ts +25 -0
  435. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +140 -0
  436. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -0
  437. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.d.ts +2 -0
  438. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js +23 -0
  439. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js.map +1 -0
  440. package/es/extensions/forms/Form/SubmitConfirmation/index.d.ts +2 -0
  441. package/es/extensions/forms/Form/SubmitConfirmation/index.js +3 -0
  442. package/es/extensions/forms/Form/SubmitConfirmation/index.js.map +1 -0
  443. package/es/extensions/forms/Form/Visibility/Visibility.js +3 -3
  444. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  445. package/es/extensions/forms/Form/Visibility/VisibilityContext.d.ts +1 -0
  446. package/es/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  447. package/es/extensions/forms/Form/Visibility/useVisibility.js +1 -1
  448. package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  449. package/es/extensions/forms/Form/data-context/getData.js +1 -1
  450. package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
  451. package/es/extensions/forms/Form/data-context/useData.d.ts +3 -2
  452. package/es/extensions/forms/Form/data-context/useData.js +13 -15
  453. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  454. package/{extensions/forms/Form/data-context/useError.d.ts → es/extensions/forms/Form/data-context/useValidation.d.ts} +3 -1
  455. package/es/extensions/forms/Form/data-context/useValidation.js +52 -0
  456. package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -0
  457. package/es/extensions/forms/Form/index.d.ts +13 -2
  458. package/es/extensions/forms/Form/index.js +5 -2
  459. package/es/extensions/forms/Form/index.js.map +1 -1
  460. package/es/extensions/forms/Iterate/Array/Array.js +4 -12
  461. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  462. package/es/extensions/forms/Iterate/Count/Count.js +1 -1
  463. package/es/extensions/forms/Iterate/Count/Count.js.map +1 -1
  464. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -2
  465. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  466. package/es/extensions/forms/Tools/GenerateSchema.d.ts +1 -1
  467. package/es/extensions/forms/Tools/GenerateSchema.js +1 -1
  468. package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  469. package/es/extensions/forms/Tools/ListAllProps.d.ts +1 -1
  470. package/es/extensions/forms/Tools/ListAllProps.js +1 -1
  471. package/es/extensions/forms/Tools/ListAllProps.js.map +1 -1
  472. package/es/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +3 -3
  473. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  474. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +2 -2
  475. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  476. package/es/extensions/forms/Value/Currency/CurrencyDocs.d.ts +2 -0
  477. package/es/extensions/forms/Value/Currency/CurrencyDocs.js +19 -0
  478. package/es/extensions/forms/Value/Currency/CurrencyDocs.js.map +1 -0
  479. package/es/extensions/forms/Value/Date/Date.js +25 -16
  480. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  481. package/es/extensions/forms/Value/Number/NumberDocs.js +7 -2
  482. package/es/extensions/forms/Value/Number/NumberDocs.js.map +1 -1
  483. package/es/extensions/forms/Value/Provider/ValueProvider.d.ts +13 -0
  484. package/es/extensions/forms/Value/Provider/ValueProvider.js +18 -0
  485. package/es/extensions/forms/Value/Provider/ValueProvider.js.map +1 -0
  486. package/es/extensions/forms/Value/Provider/ValueProviderContext.d.ts +9 -0
  487. package/es/extensions/forms/Value/Provider/ValueProviderContext.js +7 -0
  488. package/es/extensions/forms/Value/Provider/ValueProviderContext.js.map +1 -0
  489. package/es/extensions/forms/Value/Provider/ValueProviderDocs.d.ts +3 -0
  490. package/es/extensions/forms/Value/Provider/ValueProviderDocs.js +13 -0
  491. package/es/extensions/forms/Value/Provider/ValueProviderDocs.js.map +1 -0
  492. package/es/extensions/forms/Value/Provider/index.d.ts +2 -0
  493. package/es/extensions/forms/Value/Provider/index.js +3 -0
  494. package/es/extensions/forms/Value/Provider/index.js.map +1 -0
  495. package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +31 -0
  496. package/es/extensions/forms/Value/Provider/useValueProvider.js +40 -0
  497. package/es/extensions/forms/Value/Provider/useValueProvider.js.map +1 -0
  498. package/es/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -1
  499. package/es/extensions/forms/Value/SummaryList/SummaryList.js +11 -3
  500. package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  501. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.d.ts +3 -0
  502. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js +29 -0
  503. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -0
  504. package/es/extensions/forms/Value/index.d.ts +3 -2
  505. package/es/extensions/forms/Value/index.js +3 -2
  506. package/es/extensions/forms/Value/index.js.map +1 -1
  507. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  508. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  509. package/es/extensions/forms/Wizard/Container/WizardContainer.js +2 -1
  510. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  511. package/es/extensions/forms/Wizard/Step/Step.js +2 -2
  512. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  513. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -5
  514. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  515. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -4
  516. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.d.ts +1 -2
  517. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +13 -15
  518. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  519. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js +0 -5
  520. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js.map +1 -1
  521. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +0 -2
  522. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +0 -2
  523. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  524. package/es/extensions/forms/hooks/useDataValue.d.ts +1 -1
  525. package/es/extensions/forms/hooks/useDataValue.js +1 -1
  526. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  527. package/es/extensions/forms/hooks/useExternalValue.js +1 -1
  528. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
  529. package/es/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  530. package/es/extensions/forms/hooks/useFieldProps.js +111 -56
  531. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  532. package/es/extensions/forms/hooks/usePath.js +7 -4
  533. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  534. package/es/extensions/forms/hooks/useValueProps.d.ts +1 -1
  535. package/es/extensions/forms/hooks/useValueProps.js +7 -2
  536. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  537. package/es/extensions/forms/style/dnb-forms.css +10 -21
  538. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  539. package/es/extensions/forms/types.d.ts +7 -3
  540. package/es/extensions/forms/types.js.map +1 -1
  541. package/es/extensions/forms/utils/ajv.d.ts +2 -1
  542. package/es/extensions/forms/utils/ajv.js +1 -1
  543. package/es/extensions/forms/utils/ajv.js.map +1 -1
  544. package/es/extensions/forms/utils/index.d.ts +1 -0
  545. package/es/extensions/forms/utils/index.js +1 -0
  546. package/es/extensions/forms/utils/index.js.map +1 -1
  547. package/es/extensions/forms/utils/json-pointer/export.d.ts +1 -0
  548. package/es/extensions/forms/utils/json-pointer/export.js +1 -0
  549. package/es/extensions/forms/utils/json-pointer/export.js.map +1 -0
  550. package/es/extensions/forms/utils/json-pointer/json-pointer.d.ts +43 -0
  551. package/es/extensions/forms/utils/json-pointer/json-pointer.js +122 -0
  552. package/es/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -0
  553. package/es/extensions/forms/utils/json-pointer.d.ts +3 -0
  554. package/es/extensions/forms/utils/json-pointer.js +4 -0
  555. package/es/extensions/forms/utils/json-pointer.js.map +1 -0
  556. package/es/shared/Context.d.ts +2 -0
  557. package/es/shared/Context.js +1 -1
  558. package/es/shared/Context.js.map +1 -1
  559. package/es/shared/Eufemia.d.ts +1 -1
  560. package/es/shared/Eufemia.js +2 -2
  561. package/es/shared/Eufemia.js.map +1 -1
  562. package/es/shared/MediaQueryUtils.d.ts +0 -1
  563. package/es/shared/MediaQueryUtils.js +17 -14
  564. package/es/shared/MediaQueryUtils.js.map +1 -1
  565. package/es/shared/helpers/extendPropsWithContext.js +3 -3
  566. package/es/shared/helpers/extendPropsWithContext.js.map +1 -1
  567. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  568. package/es/style/core/scopes.scss +1 -1
  569. package/es/style/core/utilities.scss +10 -5
  570. package/es/style/dnb-ui-basis.css +1 -1
  571. package/es/style/dnb-ui-basis.min.css +1 -1
  572. package/es/style/dnb-ui-body.css +1 -1
  573. package/es/style/dnb-ui-body.min.css +1 -1
  574. package/es/style/dnb-ui-components.css +35 -45
  575. package/es/style/dnb-ui-components.min.css +5 -5
  576. package/es/style/dnb-ui-core.css +1 -1
  577. package/es/style/dnb-ui-core.min.css +1 -1
  578. package/es/style/dnb-ui-elements.css +1 -1
  579. package/es/style/dnb-ui-elements.min.css +1 -1
  580. package/es/style/dnb-ui-extensions.css +10 -21
  581. package/es/style/dnb-ui-extensions.min.css +1 -1
  582. package/es/style/dnb-ui-forms.css +10 -21
  583. package/es/style/dnb-ui-forms.min.css +1 -1
  584. package/es/style/dnb-ui-forms.scss +0 -1
  585. package/es/style/dnb-ui-fragments.css +2 -2
  586. package/es/style/dnb-ui-fragments.min.css +1 -1
  587. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  588. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  589. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +46 -67
  590. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  591. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  592. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  593. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +10 -21
  594. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  595. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +10 -21
  596. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  597. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  598. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  599. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +46 -67
  600. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  601. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  602. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  603. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +10 -21
  604. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  605. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +10 -21
  606. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  607. package/es/style/themes/theme-ui/ui-theme-basis.css +1 -1
  608. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  609. package/es/style/themes/theme-ui/ui-theme-components.css +46 -67
  610. package/es/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  611. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
  612. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  613. package/es/style/themes/theme-ui/ui-theme-extensions.css +10 -21
  614. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  615. package/es/style/themes/theme-ui/ui-theme-forms.css +10 -21
  616. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  617. package/es/style/themes/theme-ui/ui-theme-tags.css +1 -1
  618. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  619. package/esm/dnb-ui-basis.min.mjs +1 -1
  620. package/esm/dnb-ui-components.min.mjs +1 -1
  621. package/esm/dnb-ui-elements.min.mjs +1 -1
  622. package/esm/dnb-ui-extensions.min.mjs +5 -5
  623. package/esm/dnb-ui-lib.min.mjs +1 -1
  624. package/extensions/forms/DataContext/At/At.js +1 -1
  625. package/extensions/forms/DataContext/At/At.js.map +1 -1
  626. package/extensions/forms/DataContext/Context.d.ts +20 -9
  627. package/extensions/forms/DataContext/Context.js.map +1 -1
  628. package/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  629. package/extensions/forms/DataContext/Provider/Provider.js +104 -59
  630. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  631. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +1 -1
  632. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  633. package/extensions/forms/Field/Date/Date.d.ts +6 -0
  634. package/extensions/forms/Field/Date/Date.js +20 -4
  635. package/extensions/forms/Field/Date/Date.js.map +1 -1
  636. package/{es/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts → extensions/forms/Field/Date/DateDocs.d.ts} +1 -1
  637. package/extensions/forms/Field/Date/DateDocs.js +13 -0
  638. package/extensions/forms/Field/Date/DateDocs.js.map +1 -0
  639. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +1 -1
  640. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  641. package/{cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts → extensions/forms/Field/Provider/FieldProvider.d.ts} +5 -7
  642. package/extensions/forms/Field/Provider/FieldProvider.js +24 -0
  643. package/extensions/forms/Field/Provider/FieldProvider.js.map +1 -0
  644. package/{es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts → extensions/forms/Field/Provider/FieldProviderContext.d.ts} +3 -3
  645. package/extensions/forms/Field/Provider/FieldProviderContext.js +7 -0
  646. package/extensions/forms/Field/Provider/FieldProviderContext.js.map +1 -0
  647. package/extensions/forms/Field/Provider/FieldProviderDocs.d.ts +2 -0
  648. package/{es/extensions/forms/Form/FieldProps/FieldPropsDocs.js → extensions/forms/Field/Provider/FieldProviderDocs.js} +2 -2
  649. package/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -0
  650. package/extensions/forms/Field/Provider/index.d.ts +2 -0
  651. package/extensions/forms/Field/Provider/index.js +3 -0
  652. package/extensions/forms/Field/Provider/index.js.map +1 -0
  653. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +121 -0
  654. package/extensions/forms/{Form/FieldProps/FieldProps.js → Field/Provider/useFieldProvider.js} +34 -32
  655. package/extensions/forms/Field/Provider/useFieldProvider.js.map +1 -0
  656. package/extensions/forms/Field/index.d.ts +1 -0
  657. package/extensions/forms/Field/index.js +1 -0
  658. package/extensions/forms/Field/index.js.map +1 -1
  659. package/extensions/forms/FieldBlock/FieldBlock.js +12 -1
  660. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  661. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
  662. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  663. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +1 -1
  664. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  665. package/extensions/forms/Form/Element/Element.js +4 -4
  666. package/extensions/forms/Form/Element/Element.js.map +1 -1
  667. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  668. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  669. package/extensions/forms/Form/Isolation/Isolation.d.ts +2 -2
  670. package/extensions/forms/Form/Isolation/Isolation.js +1 -1
  671. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  672. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +1 -1
  673. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  674. package/extensions/forms/Form/Section/Section.d.ts +2 -1
  675. package/extensions/forms/Form/Section/Section.js +1 -1
  676. package/extensions/forms/Form/Section/Section.js.map +1 -1
  677. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.d.ts +25 -0
  678. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +142 -0
  679. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -0
  680. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.d.ts +2 -0
  681. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js +23 -0
  682. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmationDocs.js.map +1 -0
  683. package/extensions/forms/Form/SubmitConfirmation/index.d.ts +2 -0
  684. package/extensions/forms/Form/SubmitConfirmation/index.js +3 -0
  685. package/extensions/forms/Form/SubmitConfirmation/index.js.map +1 -0
  686. package/extensions/forms/Form/Visibility/Visibility.js +3 -3
  687. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  688. package/extensions/forms/Form/Visibility/VisibilityContext.d.ts +1 -0
  689. package/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
  690. package/extensions/forms/Form/Visibility/useVisibility.js +1 -1
  691. package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
  692. package/extensions/forms/Form/data-context/getData.js +1 -1
  693. package/extensions/forms/Form/data-context/getData.js.map +1 -1
  694. package/extensions/forms/Form/data-context/useData.d.ts +3 -2
  695. package/extensions/forms/Form/data-context/useData.js +13 -15
  696. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  697. package/{cjs/extensions/forms/Form/data-context/useError.d.ts → extensions/forms/Form/data-context/useValidation.d.ts} +3 -1
  698. package/extensions/forms/Form/data-context/useValidation.js +54 -0
  699. package/extensions/forms/Form/data-context/useValidation.js.map +1 -0
  700. package/extensions/forms/Form/index.d.ts +13 -2
  701. package/extensions/forms/Form/index.js +5 -2
  702. package/extensions/forms/Form/index.js.map +1 -1
  703. package/extensions/forms/Iterate/Array/Array.js +4 -12
  704. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  705. package/extensions/forms/Iterate/Count/Count.js +1 -1
  706. package/extensions/forms/Iterate/Count/Count.js.map +1 -1
  707. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +2 -2
  708. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  709. package/extensions/forms/Tools/GenerateSchema.d.ts +1 -1
  710. package/extensions/forms/Tools/GenerateSchema.js +1 -1
  711. package/extensions/forms/Tools/GenerateSchema.js.map +1 -1
  712. package/extensions/forms/Tools/ListAllProps.d.ts +1 -1
  713. package/extensions/forms/Tools/ListAllProps.js +1 -1
  714. package/extensions/forms/Tools/ListAllProps.js.map +1 -1
  715. package/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +3 -3
  716. package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  717. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +2 -2
  718. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  719. package/extensions/forms/Value/Currency/CurrencyDocs.d.ts +2 -0
  720. package/extensions/forms/Value/Currency/CurrencyDocs.js +19 -0
  721. package/extensions/forms/Value/Currency/CurrencyDocs.js.map +1 -0
  722. package/extensions/forms/Value/Date/Date.js +25 -16
  723. package/extensions/forms/Value/Date/Date.js.map +1 -1
  724. package/extensions/forms/Value/Number/NumberDocs.js +7 -2
  725. package/extensions/forms/Value/Number/NumberDocs.js.map +1 -1
  726. package/extensions/forms/Value/Provider/ValueProvider.d.ts +13 -0
  727. package/extensions/forms/Value/Provider/ValueProvider.js +18 -0
  728. package/extensions/forms/Value/Provider/ValueProvider.js.map +1 -0
  729. package/extensions/forms/Value/Provider/ValueProviderContext.d.ts +9 -0
  730. package/extensions/forms/Value/Provider/ValueProviderContext.js +7 -0
  731. package/extensions/forms/Value/Provider/ValueProviderContext.js.map +1 -0
  732. package/extensions/forms/Value/Provider/ValueProviderDocs.d.ts +3 -0
  733. package/extensions/forms/Value/Provider/ValueProviderDocs.js +13 -0
  734. package/extensions/forms/Value/Provider/ValueProviderDocs.js.map +1 -0
  735. package/extensions/forms/Value/Provider/index.d.ts +2 -0
  736. package/extensions/forms/Value/Provider/index.js +3 -0
  737. package/extensions/forms/Value/Provider/index.js.map +1 -0
  738. package/extensions/forms/Value/Provider/useValueProvider.d.ts +31 -0
  739. package/extensions/forms/Value/Provider/useValueProvider.js +40 -0
  740. package/extensions/forms/Value/Provider/useValueProvider.js.map +1 -0
  741. package/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -1
  742. package/extensions/forms/Value/SummaryList/SummaryList.js +11 -3
  743. package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
  744. package/extensions/forms/Value/SummaryList/SummaryListDocs.d.ts +3 -0
  745. package/extensions/forms/Value/SummaryList/SummaryListDocs.js +29 -0
  746. package/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -0
  747. package/extensions/forms/Value/index.d.ts +3 -2
  748. package/extensions/forms/Value/index.js +3 -2
  749. package/extensions/forms/Value/index.js.map +1 -1
  750. package/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  751. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  752. package/extensions/forms/Wizard/Container/WizardContainer.js +2 -1
  753. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  754. package/extensions/forms/Wizard/Step/Step.js +2 -2
  755. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  756. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +2 -5
  757. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  758. package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -4
  759. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.d.ts +1 -2
  760. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +13 -15
  761. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  762. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js +0 -5
  763. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeDocs.js.map +1 -1
  764. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +0 -2
  765. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +0 -2
  766. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
  767. package/extensions/forms/hooks/useDataValue.d.ts +1 -1
  768. package/extensions/forms/hooks/useDataValue.js +1 -1
  769. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  770. package/extensions/forms/hooks/useExternalValue.js +1 -1
  771. package/extensions/forms/hooks/useExternalValue.js.map +1 -1
  772. package/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  773. package/extensions/forms/hooks/useFieldProps.js +111 -56
  774. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  775. package/extensions/forms/hooks/usePath.js +7 -4
  776. package/extensions/forms/hooks/usePath.js.map +1 -1
  777. package/extensions/forms/hooks/useValueProps.d.ts +1 -1
  778. package/extensions/forms/hooks/useValueProps.js +7 -2
  779. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  780. package/extensions/forms/style/dnb-forms.css +10 -21
  781. package/extensions/forms/style/dnb-forms.min.css +1 -1
  782. package/extensions/forms/types.d.ts +7 -3
  783. package/extensions/forms/types.js.map +1 -1
  784. package/extensions/forms/utils/ajv.d.ts +2 -1
  785. package/extensions/forms/utils/ajv.js +1 -1
  786. package/extensions/forms/utils/ajv.js.map +1 -1
  787. package/extensions/forms/utils/index.d.ts +1 -0
  788. package/extensions/forms/utils/index.js +1 -0
  789. package/extensions/forms/utils/index.js.map +1 -1
  790. package/extensions/forms/utils/json-pointer/export.d.ts +1 -0
  791. package/extensions/forms/utils/json-pointer/export.js +1 -0
  792. package/extensions/forms/utils/json-pointer/export.js.map +1 -0
  793. package/extensions/forms/utils/json-pointer/json-pointer.d.ts +43 -0
  794. package/extensions/forms/utils/json-pointer/json-pointer.js +124 -0
  795. package/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -0
  796. package/extensions/forms/utils/json-pointer.d.ts +3 -0
  797. package/extensions/forms/utils/json-pointer.js +4 -0
  798. package/extensions/forms/utils/json-pointer.js.map +1 -0
  799. package/package.json +1 -2
  800. package/shared/Context.d.ts +2 -0
  801. package/shared/Context.js +1 -1
  802. package/shared/Context.js.map +1 -1
  803. package/shared/Eufemia.d.ts +1 -1
  804. package/shared/Eufemia.js +2 -2
  805. package/shared/Eufemia.js.map +1 -1
  806. package/shared/MediaQueryUtils.d.ts +0 -1
  807. package/shared/MediaQueryUtils.js +17 -14
  808. package/shared/MediaQueryUtils.js.map +1 -1
  809. package/shared/helpers/extendPropsWithContext.js +3 -3
  810. package/shared/helpers/extendPropsWithContext.js.map +1 -1
  811. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  812. package/style/core/scopes.scss +1 -1
  813. package/style/core/utilities.scss +10 -5
  814. package/style/dnb-ui-basis.css +1 -1
  815. package/style/dnb-ui-basis.min.css +1 -1
  816. package/style/dnb-ui-body.css +1 -1
  817. package/style/dnb-ui-body.min.css +1 -1
  818. package/style/dnb-ui-components.css +35 -45
  819. package/style/dnb-ui-components.min.css +5 -5
  820. package/style/dnb-ui-core.css +1 -1
  821. package/style/dnb-ui-core.min.css +1 -1
  822. package/style/dnb-ui-elements.css +1 -1
  823. package/style/dnb-ui-elements.min.css +1 -1
  824. package/style/dnb-ui-extensions.css +10 -21
  825. package/style/dnb-ui-extensions.min.css +1 -1
  826. package/style/dnb-ui-forms.css +10 -21
  827. package/style/dnb-ui-forms.min.css +1 -1
  828. package/style/dnb-ui-forms.scss +0 -1
  829. package/style/dnb-ui-fragments.css +2 -2
  830. package/style/dnb-ui-fragments.min.css +1 -1
  831. package/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -1
  832. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  833. package/style/themes/theme-eiendom/eiendom-theme-components.css +46 -67
  834. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +6 -6
  835. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  836. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  837. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +10 -21
  838. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  839. package/style/themes/theme-eiendom/eiendom-theme-forms.css +10 -21
  840. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  841. package/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -1
  842. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  843. package/style/themes/theme-sbanken/sbanken-theme-components.css +46 -67
  844. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +7 -7
  845. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  846. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  847. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +10 -21
  848. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  849. package/style/themes/theme-sbanken/sbanken-theme-forms.css +10 -21
  850. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  851. package/style/themes/theme-ui/ui-theme-basis.css +1 -1
  852. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  853. package/style/themes/theme-ui/ui-theme-components.css +46 -67
  854. package/style/themes/theme-ui/ui-theme-components.min.css +6 -6
  855. package/style/themes/theme-ui/ui-theme-elements.css +1 -1
  856. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  857. package/style/themes/theme-ui/ui-theme-extensions.css +10 -21
  858. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  859. package/style/themes/theme-ui/ui-theme-forms.css +10 -21
  860. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  861. package/style/themes/theme-ui/ui-theme-tags.css +1 -1
  862. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  863. package/umd/dnb-ui-basis.min.js +1 -1
  864. package/umd/dnb-ui-components.min.js +1 -1
  865. package/umd/dnb-ui-elements.min.js +1 -1
  866. package/umd/dnb-ui-extensions.min.js +5 -5
  867. package/umd/dnb-ui-lib.min.js +1 -1
  868. package/cjs/extensions/forms/Form/Element/style/dnb-form-element.css +0 -7
  869. package/cjs/extensions/forms/Form/Element/style/dnb-form-element.min.css +0 -1
  870. package/cjs/extensions/forms/Form/Element/style/dnb-form-element.scss +0 -9
  871. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +0 -1
  872. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +0 -1
  873. package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +0 -1
  874. package/cjs/extensions/forms/Form/FieldProps/index.d.ts +0 -2
  875. package/cjs/extensions/forms/Form/FieldProps/index.js.map +0 -1
  876. package/cjs/extensions/forms/Form/data-context/useError.js +0 -33
  877. package/cjs/extensions/forms/Form/data-context/useError.js.map +0 -1
  878. package/es/extensions/forms/Form/Element/style/dnb-form-element.css +0 -7
  879. package/es/extensions/forms/Form/Element/style/dnb-form-element.min.css +0 -1
  880. package/es/extensions/forms/Form/Element/style/dnb-form-element.scss +0 -9
  881. package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +0 -1
  882. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js +0 -7
  883. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +0 -1
  884. package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +0 -1
  885. package/es/extensions/forms/Form/FieldProps/index.d.ts +0 -2
  886. package/es/extensions/forms/Form/FieldProps/index.js +0 -3
  887. package/es/extensions/forms/Form/FieldProps/index.js.map +0 -1
  888. package/es/extensions/forms/Form/data-context/useError.js +0 -26
  889. package/es/extensions/forms/Form/data-context/useError.js.map +0 -1
  890. package/extensions/forms/Form/Element/style/dnb-form-element.css +0 -7
  891. package/extensions/forms/Form/Element/style/dnb-form-element.min.css +0 -1
  892. package/extensions/forms/Form/Element/style/dnb-form-element.scss +0 -9
  893. package/extensions/forms/Form/FieldProps/FieldProps.js.map +0 -1
  894. package/extensions/forms/Form/FieldProps/FieldPropsContext.js +0 -7
  895. package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +0 -1
  896. package/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +0 -1
  897. package/extensions/forms/Form/FieldProps/index.d.ts +0 -2
  898. package/extensions/forms/Form/FieldProps/index.js +0 -3
  899. package/extensions/forms/Form/FieldProps/index.js.map +0 -1
  900. package/extensions/forms/Form/data-context/useError.js +0 -27
  901. package/extensions/forms/Form/data-context/useError.js.map +0 -1
@@ -34,12 +34,12 @@
34
34
  .dnb-grid-container--column-gap-large {
35
35
  --column-gap: var(--spacing-large);
36
36
  }
37
- @media screen and (min-width: 40.0625em) {
37
+ @media screen and (min-width: 40.00625em) {
38
38
  .dnb-grid-container {
39
39
  --grid-columns: var(--medium-columns, 6);
40
40
  }
41
41
  }
42
- @media screen and (min-width: 60.0625em) {
42
+ @media screen and (min-width: 60.00625em) {
43
43
  .dnb-grid-container {
44
44
  --grid-columns: var(--large-columns, 12);
45
45
  }
@@ -49,12 +49,12 @@
49
49
  display: unset;
50
50
  }
51
51
  }
52
- @media screen and (min-width: 40.0625em) and (max-width: 60em) {
52
+ @media screen and (min-width: 40.00625em) and (max-width: 60em) {
53
53
  .dnb-grid-container__disabled--medium {
54
54
  display: unset;
55
55
  }
56
56
  }
57
- @media screen and (min-width: 72.0625em) {
57
+ @media screen and (min-width: 72.00625em) {
58
58
  .dnb-grid-container {
59
59
  --grid-columns: var(--large-columns, 12);
60
60
  }
@@ -68,13 +68,13 @@
68
68
  --start-c: var(--small-c-s, 1);
69
69
  --end-c: var(--small-c-e, calc(var(--grid-columns) + 1));
70
70
  }
71
- @media screen and (min-width: 40.0625em) {
71
+ @media screen and (min-width: 40.00625em) {
72
72
  .dnb-grid-item {
73
73
  --start-c: var(--medium-c-s, 1);
74
74
  --end-c: var(--medium-c-e, calc(var(--grid-columns) + 1));
75
75
  }
76
76
  }
77
- @media screen and (min-width: 60.0625em) {
77
+ @media screen and (min-width: 60.00625em) {
78
78
  .dnb-grid-item {
79
79
  --start-c: var(--large-c-s, 1);
80
80
  --end-c: var(--large-c-e, calc(var(--grid-columns) + 1));
@@ -1 +1 @@
1
- .dnb-grid-container{--grid-columns:var(--small-columns,4);-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:grid;grid-auto-flow:dense;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));row-gap:var(--row-gap,0)}.dnb-grid-container--row-gap-x-small{--row-gap:var(--spacing-x-small)}.dnb-grid-container--row-gap-small{--row-gap:var(--spacing-small)}.dnb-grid-container--row-gap-medium{--row-gap:var(--spacing-medium)}.dnb-grid-container--row-gap-large{--row-gap:var(--spacing-large)}.dnb-grid-container--column-gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-grid-container--column-gap-small{--column-gap:var(--spacing-small)}.dnb-grid-container--column-gap-medium{--column-gap:var(--spacing-medium)}.dnb-grid-container--column-gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:40.0625em){.dnb-grid-container{--grid-columns:var(--medium-columns,6)}}@media screen and (min-width:60.0625em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}}@media screen and (max-width:60em){.dnb-grid-container__disabled--small{display:unset}}@media screen and (min-width:40.0625em) and (max-width:60em){.dnb-grid-container__disabled--medium{display:unset}}@media screen and (min-width:72.0625em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}.dnb-grid-container__disabled--large{display:unset}}.dnb-grid-item{--start-c:var(--small-c-s,1);--end-c:var(--small-c-e,calc(var(--grid-columns) + 1));grid-column:var(--start-c)/var(--end-c)}@media screen and (min-width:40.0625em){.dnb-grid-item{--start-c:var(--medium-c-s,1);--end-c:var(--medium-c-e,calc(var(--grid-columns) + 1))}}@media screen and (min-width:60.0625em){.dnb-grid-item{--start-c:var(--large-c-s,1);--end-c:var(--large-c-e,calc(var(--grid-columns) + 1))}}.dnb-grid-item--full-width{--start-c:0;--end-c:var(--grid-columns)}
1
+ .dnb-grid-container{--grid-columns:var(--small-columns,4);-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:grid;grid-auto-flow:dense;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));row-gap:var(--row-gap,0)}.dnb-grid-container--row-gap-x-small{--row-gap:var(--spacing-x-small)}.dnb-grid-container--row-gap-small{--row-gap:var(--spacing-small)}.dnb-grid-container--row-gap-medium{--row-gap:var(--spacing-medium)}.dnb-grid-container--row-gap-large{--row-gap:var(--spacing-large)}.dnb-grid-container--column-gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-grid-container--column-gap-small{--column-gap:var(--spacing-small)}.dnb-grid-container--column-gap-medium{--column-gap:var(--spacing-medium)}.dnb-grid-container--column-gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:40.00625em){.dnb-grid-container{--grid-columns:var(--medium-columns,6)}}@media screen and (min-width:60.00625em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}}@media screen and (max-width:60em){.dnb-grid-container__disabled--small{display:unset}}@media screen and (min-width:40.00625em) and (max-width:60em){.dnb-grid-container__disabled--medium{display:unset}}@media screen and (min-width:72.00625em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}.dnb-grid-container__disabled--large{display:unset}}.dnb-grid-item{--start-c:var(--small-c-s,1);--end-c:var(--small-c-e,calc(var(--grid-columns) + 1));grid-column:var(--start-c)/var(--end-c)}@media screen and (min-width:40.00625em){.dnb-grid-item{--start-c:var(--medium-c-s,1);--end-c:var(--medium-c-e,calc(var(--grid-columns) + 1))}}@media screen and (min-width:60.00625em){.dnb-grid-item{--start-c:var(--large-c-s,1);--end-c:var(--large-c-e,calc(var(--grid-columns) + 1))}}.dnb-grid-item--full-width{--start-c:0;--end-c:var(--grid-columns)}
@@ -67,7 +67,7 @@ export interface InputMaskedProps
67
67
  */
68
68
  mask_options?: InputMaskedMaskOptions;
69
69
  /**
70
- * Use an object with [NumberFormat](/uilib/components/number-format/properties) e.g. `{ omit_rounding: false }`.
70
+ * Use an object with [NumberFormat](/uilib/components/number-format/properties).
71
71
  */
72
72
  number_format?: NumberFormatProps;
73
73
  /**
@@ -30,7 +30,7 @@ export const inputMaskedProperties = {
30
30
  status: 'optional'
31
31
  },
32
32
  number_format: {
33
- doc: 'Use an object with [NumberFormat](/uilib/components/number-format/properties) e.g. `{ omit_rounding: false }`.',
33
+ doc: 'Use an object with [NumberFormat](/uilib/components/number-format/properties).',
34
34
  type: 'object',
35
35
  status: 'optional'
36
36
  },
@@ -1 +1 @@
1
- {"version":3,"file":"InputMaskedDocs.js","names":["inputMaskedProperties","as_number","doc","type","status","as_percent","as_currency","mask_options","number_mask","currency_mask","number_format","locale","mask","show_mask","show_guide","placeholder_char","keep_char_positions"],"sources":["../../../../src/components/input-masked/InputMaskedDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const inputMaskedProperties: PropertiesTableProps = {\n as_number: {\n doc: 'Set to `true` to automatically set a number mask based on the given or inherited locale.',\n type: 'boolean',\n status: 'optional',\n },\n as_percent: {\n doc: 'Set to `true` to automatically set a number mask with a percentage sign based on the given or inherited locale.',\n type: 'boolean',\n status: 'optional',\n },\n as_currency: {\n doc: 'Set to `true` to use `NOK` or give it a currency code e.g. `USD` to automatically set a currency mask based on the given or inherited locale.',\n type: 'boolean',\n status: 'optional',\n },\n mask_options: {\n doc: 'Use it to manipulate internal masks. You can use it instead of e.g. `number_mask` or `currency_mask`. All options are listed below.',\n type: 'object',\n status: 'optional',\n },\n number_mask: {\n doc: 'Set to `true` to enable the default numbers formatting – or give an `object` containing the number mask properties. More details below. Can be a JSON string as well, containing the number mask properties. Is disabled by default.',\n type: ['boolean', 'object'],\n status: 'optional',\n },\n currency_mask: {\n doc: 'Set to `true` or set the _valuta_ (currency_mask=\"kr\") to enable a custom currency mask – or give an `object` containing the number mask properties. More details below. Can be a JSON string as well, containing the number mask properties. Is disabled by default. Defaults to `kr`.',\n type: ['boolean', 'object'],\n status: 'optional',\n },\n number_format: {\n doc: 'Use an object with [NumberFormat](/uilib/components/number-format/properties) e.g. `{ omit_rounding: false }`.',\n type: 'object',\n status: 'optional',\n },\n locale: {\n doc: 'Define the locale to be used in the `as_number` or `as_currency` masked. It will be inherited from the [Eufemia Provider](/uilib/usage/customisation/provider) if not given. Defaults to `nb-NO`.',\n type: 'string',\n status: 'optional',\n },\n mask: {\n doc: 'A mask can be defined both as a [RegExp style of characters](https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#readme) or a callback function. Example below.',\n type: ['RegExp', 'function'],\n status: 'optional',\n },\n show_mask: {\n doc: 'Show mask when input is empty and has no focus. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n show_guide: {\n doc: \"When `false` is given, it doesn't print out placeholder characters and only adds mask characters when the user reaches them as they're typing. Defaults to `true`.\",\n type: 'boolean',\n status: 'optional',\n },\n placeholder_char: {\n doc: 'The placeholder character represents the fillable spot in the mask (e.g. `_`). Defaults to invisible space.',\n type: 'string',\n status: 'optional',\n },\n keep_char_positions: {\n doc: 'When `true`, adding or deleting characters will not affect the positions of existing characters. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n '[Input](/uilib/components/input/properties)': {\n doc: 'All `Input` properties are supported.',\n type: 'Various',\n status: 'optional',\n },\n}\n"],"mappings":"AAEA,OAAO,MAAMA,qBAA2C,GAAG;EACzDC,SAAS,EAAE;IACTC,GAAG,EAAE,0FAA0F;IAC/FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVH,GAAG,EAAE,iHAAiH;IACtHC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDE,WAAW,EAAE;IACXJ,GAAG,EAAE,+IAA+I;IACpJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDG,YAAY,EAAE;IACZL,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,WAAW,EAAE;IACXN,GAAG,EAAE,sOAAsO;IAC3OC,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC3BC,MAAM,EAAE;EACV,CAAC;EACDK,aAAa,EAAE;IACbP,GAAG,EAAE,yRAAyR;IAC9RC,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC3BC,MAAM,EAAE;EACV,CAAC;EACDM,aAAa,EAAE;IACbR,GAAG,EAAE,gHAAgH;IACrHC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,MAAM,EAAE;IACNT,GAAG,EAAE,mMAAmM;IACxMC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,IAAI,EAAE;IACJV,GAAG,EAAE,0LAA0L;IAC/LC,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC5BC,MAAM,EAAE;EACV,CAAC;EACDS,SAAS,EAAE;IACTX,GAAG,EAAE,sEAAsE;IAC3EC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,UAAU,EAAE;IACVZ,GAAG,EAAE,oKAAoK;IACzKC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,gBAAgB,EAAE;IAChBb,GAAG,EAAE,6GAA6G;IAClHC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDY,mBAAmB,EAAE;IACnBd,GAAG,EAAE,uHAAuH;IAC5HC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV,CAAC;EACD,6CAA6C,EAAE;IAC7CF,GAAG,EAAE,uCAAuC;IAC5CC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV;AACF,CAAC"}
1
+ {"version":3,"file":"InputMaskedDocs.js","names":["inputMaskedProperties","as_number","doc","type","status","as_percent","as_currency","mask_options","number_mask","currency_mask","number_format","locale","mask","show_mask","show_guide","placeholder_char","keep_char_positions"],"sources":["../../../../src/components/input-masked/InputMaskedDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const inputMaskedProperties: PropertiesTableProps = {\n as_number: {\n doc: 'Set to `true` to automatically set a number mask based on the given or inherited locale.',\n type: 'boolean',\n status: 'optional',\n },\n as_percent: {\n doc: 'Set to `true` to automatically set a number mask with a percentage sign based on the given or inherited locale.',\n type: 'boolean',\n status: 'optional',\n },\n as_currency: {\n doc: 'Set to `true` to use `NOK` or give it a currency code e.g. `USD` to automatically set a currency mask based on the given or inherited locale.',\n type: 'boolean',\n status: 'optional',\n },\n mask_options: {\n doc: 'Use it to manipulate internal masks. You can use it instead of e.g. `number_mask` or `currency_mask`. All options are listed below.',\n type: 'object',\n status: 'optional',\n },\n number_mask: {\n doc: 'Set to `true` to enable the default numbers formatting – or give an `object` containing the number mask properties. More details below. Can be a JSON string as well, containing the number mask properties. Is disabled by default.',\n type: ['boolean', 'object'],\n status: 'optional',\n },\n currency_mask: {\n doc: 'Set to `true` or set the _valuta_ (currency_mask=\"kr\") to enable a custom currency mask – or give an `object` containing the number mask properties. More details below. Can be a JSON string as well, containing the number mask properties. Is disabled by default. Defaults to `kr`.',\n type: ['boolean', 'object'],\n status: 'optional',\n },\n number_format: {\n doc: 'Use an object with [NumberFormat](/uilib/components/number-format/properties).',\n type: 'object',\n status: 'optional',\n },\n locale: {\n doc: 'Define the locale to be used in the `as_number` or `as_currency` masked. It will be inherited from the [Eufemia Provider](/uilib/usage/customisation/provider) if not given. Defaults to `nb-NO`.',\n type: 'string',\n status: 'optional',\n },\n mask: {\n doc: 'A mask can be defined both as a [RegExp style of characters](https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#readme) or a callback function. Example below.',\n type: ['RegExp', 'function'],\n status: 'optional',\n },\n show_mask: {\n doc: 'Show mask when input is empty and has no focus. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n show_guide: {\n doc: \"When `false` is given, it doesn't print out placeholder characters and only adds mask characters when the user reaches them as they're typing. Defaults to `true`.\",\n type: 'boolean',\n status: 'optional',\n },\n placeholder_char: {\n doc: 'The placeholder character represents the fillable spot in the mask (e.g. `_`). Defaults to invisible space.',\n type: 'string',\n status: 'optional',\n },\n keep_char_positions: {\n doc: 'When `true`, adding or deleting characters will not affect the positions of existing characters. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n '[Input](/uilib/components/input/properties)': {\n doc: 'All `Input` properties are supported.',\n type: 'Various',\n status: 'optional',\n },\n}\n"],"mappings":"AAEA,OAAO,MAAMA,qBAA2C,GAAG;EACzDC,SAAS,EAAE;IACTC,GAAG,EAAE,0FAA0F;IAC/FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDC,UAAU,EAAE;IACVH,GAAG,EAAE,iHAAiH;IACtHC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDE,WAAW,EAAE;IACXJ,GAAG,EAAE,+IAA+I;IACpJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDG,YAAY,EAAE;IACZL,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,WAAW,EAAE;IACXN,GAAG,EAAE,sOAAsO;IAC3OC,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC3BC,MAAM,EAAE;EACV,CAAC;EACDK,aAAa,EAAE;IACbP,GAAG,EAAE,yRAAyR;IAC9RC,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC3BC,MAAM,EAAE;EACV,CAAC;EACDM,aAAa,EAAE;IACbR,GAAG,EAAE,gFAAgF;IACrFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,MAAM,EAAE;IACNT,GAAG,EAAE,mMAAmM;IACxMC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,IAAI,EAAE;IACJV,GAAG,EAAE,0LAA0L;IAC/LC,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC5BC,MAAM,EAAE;EACV,CAAC;EACDS,SAAS,EAAE;IACTX,GAAG,EAAE,sEAAsE;IAC3EC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,UAAU,EAAE;IACVZ,GAAG,EAAE,oKAAoK;IACzKC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,gBAAgB,EAAE;IAChBb,GAAG,EAAE,6GAA6G;IAClHC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDY,mBAAmB,EAAE;IACnBd,GAAG,EAAE,uHAAuH;IAC5HC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV,CAAC;EACD,6CAA6C,EAAE;IAC7CF,GAAG,EAAE,uCAAuC;IAC5CC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV;AACF,CAAC"}
@@ -26,11 +26,11 @@ export type NumberFormatChildren =
26
26
  export type NumberFormatProps = {
27
27
  id?: string;
28
28
  /**
29
- * <em>(required)</em> a number.
29
+ * A number.
30
30
  */
31
31
  value?: NumberFormatValue;
32
32
  /**
33
- * Use a <a href="https://www.sitepoint.com/iso-2-letter-language-codes/">2 Letter Language Codes</a> or an extended code such as `nb-NO`. Use `auto` to detect the locale from the browser (`navigator.language`). Defaults to the Norwegian locale: `nb-NO`.
33
+ * Use a [2 Letter Language Code](https://www.sitepoint.com/iso-2-letter-language-codes/) or an extended code such as `nb-NO`. Use `auto` to detect the locale from the browser (`navigator.language`). Defaults to the Norwegian locale: `nb-NO`.
34
34
  */
35
35
  locale?: InternalLocale;
36
36
  /**
@@ -45,9 +45,6 @@ export type NumberFormatProps = {
45
45
  * Currency code (ISO 4217) or `true` to use the default `NOK`. Uses two decimals by default.
46
46
  */
47
47
  currency?: NumberFormatCurrency;
48
- /**
49
- * Use either empty/false to hide the sign/name or use `code` (NOK), `name` (kroner) , `symbol` (kr) or `narrowSymbol` (for a shorter symbol variant). Defaults to `narrowSymbol` when the locale is `no` else we default to `code`.
50
- */
51
48
  currency_display?:
52
49
  | 'code'
53
50
  | 'name'
@@ -55,32 +52,29 @@ export type NumberFormatProps = {
55
52
  | 'narrowSymbol'
56
53
  | ''
57
54
  | false;
58
- /**
59
- * Use either `before` or `after` to change/define the position of the currency. Defaults to `auto` (Browser API defaults, but with an exception, if the locale is `nb-NO` or `no`, use after as the default position).
60
- */
61
55
  currency_position?: NumberFormatCurrencyPosition;
62
56
  /**
63
57
  * Shortens any number or currency including an abbreviation. You can combine `compact` with `currency`. It gives you zero decimal by default `decimals={0}`. Use either `short` or `long`. Defaults to `short` if `true` is given.
64
58
  */
65
59
  compact?: NumberFormatCompact;
66
60
  /**
67
- * "Bank Account Number": use `true` to use the default Norwegian style (2000 12 34567) formatting.
61
+ * **Bank Account Number**: use `true` to use the default Norwegian style (2000 12 34567) formatting.
68
62
  */
69
63
  ban?: boolean;
70
64
  /**
71
- * "National Identification Number": use `true` to use the default Norwegian style (180892 12345) formatting.
65
+ * **National Identification Number**: use `true` to use the default Norwegian style (180892 12345) formatting.
72
66
  */
73
67
  nin?: boolean;
74
68
  /**
75
- * Use `true` to use the default Norwegian style (22 22 22 22) of phone number formatting, regulated by the <a href="https://lovdata.no/forskrift/2004-02-16-426/§16">Norwegian authority</a>. More info by <a href="https://www.sprakradet.no/sprakhjelp/Skriveregler/Dato/#tlf">Sprakradet</a> as well.
69
+ * Use `true` to use the default Norwegian style (22 22 22 22) of phone number formatting, regulated by the [Norwegian authority](https://lovdata.no/forskrift/2004-02-16-426/§16). More info by [Sprakradet](https://www.sprakradet.no/sprakhjelp/Skriveregler/Dato/#tlf) as well.
76
70
  */
77
71
  phone?: boolean;
78
72
  /**
79
- * "Organization Number": use `true` to use the default Norwegian style (123 456 789) formatting. Screen readers get digit by digit.
73
+ * **Organization Number**: use `true` to use the default Norwegian style (123 456 789) formatting. Screen readers get digit by digit.
80
74
  */
81
75
  org?: boolean;
82
76
  /**
83
- * "Percentage": use `true` to enable percent formatting.
77
+ * **Percentage**: use `true` to enable percent formatting.
84
78
  */
85
79
  percent?: boolean;
86
80
  /**
@@ -88,11 +82,11 @@ export type NumberFormatProps = {
88
82
  */
89
83
  link?: NumberFormatLink;
90
84
  /**
91
- * Sets the font to <a href="/quickguide-designer/fonts/#dnbmono-regular">DNB Mono Regular</a>.
85
+ * Sets the font to [DNB Mono Regular](/quickguide-designer/fonts/#dnbmono-regular).
92
86
  */
93
87
  monospace?: boolean;
94
88
  /**
95
- * Accepts all <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString">number.toLocaleString</a> or <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat">Intl.NumberFormat</a> options as an object - can also be a JSON given as the parameter e.g. `options={{ &#39;minimumFractionDigits&#39;: 2 }}`.
89
+ * Accepts all [number.toLocaleString](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString) or [Intl.NumberFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat) options as an object - can also be a JSON given as the parameter e.g. `options={{ 'minimumFractionDigits': 2 }}`.
96
90
  */
97
91
  options?: NumberFormatOptions;
98
92
  /**
@@ -103,28 +97,20 @@ export type NumberFormatProps = {
103
97
  * Use `false` to disable the auto select all on the first click. Defaults to `true`.
104
98
  */
105
99
  selectall?: boolean;
106
- /**
107
- * Use `true` to always auto select all on the first click. Defaults to `false`.
108
- */
109
100
  always_selectall?: boolean;
110
- /**
111
- * Use `false` to disable the auto copy feature. Defaults to `true`.
112
- */
113
101
  copy_selection?: boolean;
114
- /**
115
- * If set to `true` the copy&paste value will be provided without e.g. a currency sign or a percent sign. Defaults to `false`.
116
- */
117
102
  clean_copy_value?: boolean;
103
+ omit_rounding?: boolean;
118
104
  /**
119
- * If set to `true`, the decimal will NOT be rounded. Normally, by using `toFixed` or by using `maximumFractionDigits`, decimals get rounded.
105
+ * If `omit` is given, the decimal will NOT be rounded. If set to `half-even`, the value will be rounded to the nearest even number. If set to `half-up`, the fractional part is 0.5 or greater, the number is rounded up. If the fractional part is less than 0.5, the number is rounded down. Defaults to `half-up`.
120
106
  */
121
- omit_rounding?: boolean;
107
+ rounding?: 'omit' | 'half-even' | 'half-up';
122
108
  /**
123
- * If set to `true` a dirty string will be parsed to to extract the number (`prefix -123.45 suffix` would result in e.g. `kr -123,45`).
109
+ * If set to `true` a dirty string will be parsed to extract the number (`prefix -123.45 suffix` would result in e.g. `kr -123,45`).
124
110
  */
125
111
  clean?: boolean;
126
112
  /**
127
- * Will add a visually hidden label to give screen reader users the missing context to understand easier what the number represents.
113
+ * Will add a visually hidden label, to give screen reader users the missing context to easier understand what the number represents.
128
114
  */
129
115
  srLabel?: React.ReactNode;
130
116
  /**
@@ -3,7 +3,7 @@
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
5
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
6
- const _excluded = ["id", "value", "prefix", "suffix", "children", "currency", "currency_display", "currency_position", "compact", "ban", "nin", "phone", "org", "percent", "link", "monospace", "tooltip", "skeleton", "options", "locale", "decimals", "omit_rounding", "clean", "selectall", "copy_selection", "clean_copy_value", "srLabel", "element", "className"];
6
+ const _excluded = ["id", "value", "prefix", "suffix", "children", "currency", "currency_display", "currency_position", "compact", "ban", "nin", "phone", "org", "percent", "link", "monospace", "tooltip", "skeleton", "options", "locale", "decimals", "omit_rounding", "rounding", "clean", "selectall", "copy_selection", "clean_copy_value", "srLabel", "element", "className"];
7
7
  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; }
8
8
  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; }
9
9
  import React from 'react';
@@ -138,6 +138,7 @@ export default class NumberFormat extends React.PureComponent {
138
138
  locale,
139
139
  decimals,
140
140
  omit_rounding,
141
+ rounding,
141
142
  clean,
142
143
  selectall,
143
144
  copy_selection,
@@ -167,6 +168,7 @@ export default class NumberFormat extends React.PureComponent {
167
168
  percent,
168
169
  decimals,
169
170
  omit_rounding: isTrue(omit_rounding),
171
+ rounding,
170
172
  options,
171
173
  clean: isTrue(clean),
172
174
  clean_copy_value: isTrue(clean_copy_value),
@@ -272,6 +274,7 @@ _defineProperty(NumberFormat, "defaultProps", {
272
274
  copy_selection: true,
273
275
  clean_copy_value: false,
274
276
  omit_rounding: null,
277
+ rounding: null,
275
278
  clean: null,
276
279
  srLabel: null,
277
280
  element: 'span',
@@ -303,7 +306,8 @@ process.env.NODE_ENV !== "production" ? NumberFormat.propTypes = _objectSpread(_
303
306
  always_selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
304
307
  copy_selection: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
305
308
  clean_copy_value: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
306
- omit_rounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
309
+ omit_rounding: PropTypes.bool,
310
+ rounding: PropTypes.oneOf(['omit', 'half-even', 'half-up']),
307
311
  clean: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
308
312
  srLabel: PropTypes.node,
309
313
  element: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
@@ -1 +1 @@
1
- {"version":3,"file":"NumberFormat.js","names":["React","PropTypes","classnames","Context","warn","isTrue","makeUniqueId","validateDOMAttributes","convertJsxToString","extendPropsWithContextInClassComponent","extendDeep","detectOutsideClick","hasSelectedText","IS_IOS","spacingPropTypes","createSpacingClasses","skeletonDOMAttributes","createSkeletonClass","Tooltip","injectTooltipSemantic","format","showSelectionNotice","runIOSSelectionFix","NumberFormat","PureComponent","constructor","props","_defineProperty","_this$context$getTran","_this$context$getTran2","value","cleanedValue","label","context","getTranslation","clipboard_copy","run","_ref","current","setState","selected","clearTimeout","_selectAllTimeout","setTimeout","setFocus","selectall","always_selectall","hover","createRef","_selectionRef","_id","tooltip","id","undefined","state","omitCurrencySign","componentDidMount","hasiOSFix","componentWillUnmount","_this$outsideClick","outsideClick","remove","_this$_selectionRef$c","focus","selectAll","copy_selection","onBlurHandler","elem","selection","window","getSelection","range","document","createRange","selectNodeContents","removeAllRanges","addRange","e","runFix","comp","className","isValidElement","cloneElement","createElement","render","defaultProps","_value","prefix","suffix","children","currency","currency_display","currency_position","compact","ban","nin","phone","org","percent","link","_link","monospace","skeleton","options","locale","decimals","omit_rounding","clean","clean_copy_value","srLabel","element","_rest","_objectWithoutProperties","_excluded","rest","formatOptions","omit_currency_sign","returnAria","useContext","_objectSpread","number","display","aria","lang","Fragment","String","attributes","ref","onMouseEnter","onMouseLeave","displayParams","onClick","onClickHandler","onContextMenu","onContextMenuHandler","_extends","href","Element","tabIndex","onBlur","onCopy","shortcutHandler","targetElement","process","env","NODE_ENV","propTypes","string","oneOfType","node","func","bool","oneOf","object","_supportsSpacingProps"],"sources":["../../../../src/components/number-format/NumberFormat.js"],"sourcesContent":["/**\n * Web NumberFormat Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n convertJsxToString,\n extendPropsWithContextInClassComponent,\n extendDeep,\n detectOutsideClick,\n} from '../../shared/component-helper'\nimport { hasSelectedText, IS_IOS } from '../../shared/helpers'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport Tooltip, { injectTooltipSemantic } from '../tooltip/Tooltip'\nimport {\n format,\n showSelectionNotice,\n runIOSSelectionFix,\n} from './NumberUtils'\n\nexport default class NumberFormat extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n locale: PropTypes.string,\n prefix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n suffix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n // currency\n currency: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n currency_display: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.oneOf(['code', 'name', 'symbol', 'narrowSymbol', '']),\n ]),\n currency_position: PropTypes.oneOf(['auto', 'before', 'after']),\n\n // shortens any number or currency including an abbreviation\n compact: PropTypes.oneOfType([\n PropTypes.oneOf(['short', 'long']),\n PropTypes.bool,\n ]),\n\n // bank account number\n ban: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // national identification number\n nin: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // phone number\n phone: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // organization number\n org: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // percentage\n percent: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // can be tel or sms\n link: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n monospace: PropTypes.bool,\n options: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n decimals: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n always_selectall: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n copy_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n clean_copy_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n omit_rounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n clean: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n srLabel: PropTypes.node,\n element: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n tooltip: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n }\n static defaultProps = {\n id: null,\n value: null,\n locale: null,\n prefix: null,\n suffix: null,\n currency: null,\n currency_display: null, // code, name, symbol\n currency_position: null, // null, before, after\n compact: null,\n ban: null,\n nin: null,\n phone: null,\n org: null,\n percent: null,\n link: null,\n monospace: false,\n options: null,\n decimals: null,\n selectall: true,\n always_selectall: false,\n copy_selection: true,\n clean_copy_value: false,\n omit_rounding: null,\n clean: null,\n srLabel: null,\n element: 'span', // span or abbr\n tooltip: null,\n skeleton: null,\n\n className: null,\n children: null,\n }\n\n constructor(props) {\n super(props)\n this._ref = React.createRef()\n this._selectionRef = React.createRef()\n\n this._id = props.tooltip ? props.id || makeUniqueId() : undefined\n this.state = { selected: false, omitCurrencySign: false, hover: false }\n }\n\n componentDidMount() {\n clearTimeout(this._selectAllTimeout)\n\n // NB: This hack may be removed in future iOS versions\n // in order that iOS v13 can select something on the first try, we run this add range trick\n if (IS_IOS && !hasiOSFix) {\n hasiOSFix = true\n runIOSSelectionFix()\n }\n }\n\n shortcutHandler = () => {\n showSelectionNotice({\n value: this.cleanedValue,\n label: this.context.getTranslation(this.props)?.NumberFormat\n ?.clipboard_copy,\n }).run(this._ref.current)\n }\n\n onBlurHandler = () => {\n this.setState({ selected: false })\n }\n\n onContextMenuHandler = () => {\n if (!hasSelectedText()) {\n clearTimeout(this._selectAllTimeout)\n this._selectAllTimeout = setTimeout(() => {\n this.setFocus()\n }, 1)\n }\n }\n\n onClickHandler = () => {\n if (\n (isTrue(this.props.selectall) ||\n isTrue(this.props.always_selectall)) &&\n !hasSelectedText()\n ) {\n this.setFocus()\n }\n }\n\n componentWillUnmount() {\n this.outsideClick?.remove()\n }\n\n setFocus() {\n this.setState({ selected: true }, () => {\n this._selectionRef.current?.focus()\n this.selectAll()\n\n if (!isTrue(this.props.copy_selection)) {\n this.outsideClick = detectOutsideClick(\n this._ref.current,\n this.onBlurHandler\n )\n }\n })\n }\n\n selectAll() {\n try {\n const elem = this._selectionRef.current || this._ref.current\n if (elem) {\n const selection = window.getSelection()\n const range = document.createRange()\n range.selectNodeContents(elem)\n selection.removeAllRanges()\n selection.addRange(range)\n }\n } catch (e) {\n warn(e)\n }\n }\n\n runFix(comp, className) {\n if (typeof comp === 'function') {\n comp = comp()\n }\n if (React.isValidElement(comp)) {\n return React.cloneElement(comp, {\n className: classnames(comp.props.className, className),\n })\n }\n return <span className={className}>{comp}</span>\n }\n\n onMouseEnter = () => {\n this.setState({ hover: true })\n }\n\n onMouseLeave = () => {\n this.setState({ hover: false })\n }\n\n render() {\n // consume the global context\n const props = extendPropsWithContextInClassComponent(\n this.props,\n NumberFormat.defaultProps,\n this.context.getTranslation(this.props).NumberFormat,\n this.context.NumberFormat\n )\n\n const {\n id, // eslint-disable-line\n value: _value,\n prefix,\n suffix,\n children,\n currency,\n currency_display,\n currency_position,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n link: _link,\n monospace,\n tooltip,\n skeleton,\n options,\n locale,\n decimals,\n omit_rounding,\n clean,\n selectall,\n copy_selection,\n clean_copy_value,\n srLabel,\n element,\n className,\n ..._rest\n } = props\n let rest = _rest\n\n let link = _link\n let value = _value\n\n if (value === null && children !== null) {\n value = children\n }\n\n const formatOptions = {\n locale,\n currency,\n currency_display,\n currency_position,\n omit_currency_sign: this.state.omitCurrencySign,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n decimals,\n omit_rounding: isTrue(omit_rounding),\n options,\n clean: isTrue(clean),\n clean_copy_value: isTrue(clean_copy_value),\n returnAria: true,\n }\n\n // use only the props from context, who are available here anyway\n const useContext = extendDeep(\n { locale: null, currency: null },\n this.context\n )\n\n if (useContext) {\n if (useContext.locale && !locale) {\n formatOptions.locale = useContext.locale\n }\n\n // only replace if the prop is \"true\" and not actually a currency\n if (useContext.currency && isTrue(currency)) {\n formatOptions.options = formatOptions.options\n ? { ...formatOptions.options }\n : {}\n formatOptions.options.currency = useContext.currency\n }\n }\n\n let {\n cleanedValue,\n number: display,\n aria,\n locale: lang,\n } = format(value, formatOptions)\n this.cleanedValue = cleanedValue\n\n if (prefix) {\n display = (\n <>\n {this.runFix(prefix, 'dnb-number-format__prefix')} {display}\n </>\n )\n aria = String(\n `${convertJsxToString(\n this.runFix(prefix, 'dnb-number-format__prefix')\n )} ${aria}`\n )\n }\n if (suffix) {\n display = (\n <>\n {display} {this.runFix(suffix, 'dnb-number-format__suffix')}\n </>\n )\n aria = `${aria} ${convertJsxToString(\n this.runFix(suffix, 'dnb-number-format__suffix')\n )}`\n }\n\n if (tooltip) {\n rest = injectTooltipSemantic(rest)\n }\n\n const attributes = {\n lang,\n ref: this._ref,\n className: classnames(\n 'dnb-number-format',\n className,\n (isTrue(currency) || typeof currency === 'string') &&\n 'dnb-number-format--currency',\n isTrue(selectall) && 'dnb-number-format--selectall',\n this.state.selected && 'dnb-number-format--selected',\n link && 'dnb-anchor',\n monospace && 'dnb-number-format--monospace',\n createSpacingClasses(this.props)\n ),\n\n // Makes it possible for NVDA to read on mouse over\n onMouseEnter: this.onMouseEnter,\n onMouseLeave: this.onMouseLeave,\n\n ...rest,\n }\n\n /**\n * Works in VoiceOver and NVDA\n * Makes the span with it's roles etc. appear as text.\n * Special useful if a number is in side e.g. a paragraph alongside with numbers\n */\n attributes['role'] = 'text' // role=\"text\"\n\n const displayParams = {}\n if (isTrue(selectall) || isTrue(copy_selection)) {\n displayParams.onClick = this.onClickHandler\n displayParams.onContextMenu = this.onContextMenuHandler\n }\n\n validateDOMAttributes(this.props, attributes)\n skeletonDOMAttributes(attributes, skeleton, this.context)\n\n if (link) {\n if (isTrue(link)) {\n link = 'tel'\n }\n return (\n <a href={`${link}:${display}`} {...attributes}>\n {display}\n </a>\n )\n }\n\n const Element = element\n\n return (\n <Element {...attributes}>\n <span\n className={classnames(\n 'dnb-number-format__visible',\n createSkeletonClass('font', skeleton, this.context)\n )}\n // Makes it possible for NVDA to read on mouse over\n aria-hidden={!this.state.hover}\n {...displayParams}\n >\n {display}\n </span>\n\n {/* Used for VoiceOver and NVDA when navigating with arrow keys */}\n <span\n className=\"dnb-sr-only\"\n // Use \"data-text\" so Chrome does not copy the HTML as content, when pasting it in Outlook etc.\n data-text={\n srLabel ? `${convertJsxToString(srLabel)}${' '}${aria}` : aria\n }\n />\n\n {isTrue(copy_selection) && (\n <span\n className=\"dnb-number-format__selection dnb-no-focus\"\n ref={this._selectionRef}\n tabIndex={-1}\n onBlur={this.onBlurHandler}\n onCopy={this.shortcutHandler}\n aria-hidden\n >\n {this.state.selected && cleanedValue}\n </span>\n )}\n\n {tooltip && (\n <Tooltip\n id={this._id + '-tooltip'}\n targetElement={this._ref}\n tooltip={tooltip}\n />\n )}\n </Element>\n )\n }\n}\n\nlet hasiOSFix = false\n\nNumberFormat._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"NumberFormat.js","names":["React","PropTypes","classnames","Context","warn","isTrue","makeUniqueId","validateDOMAttributes","convertJsxToString","extendPropsWithContextInClassComponent","extendDeep","detectOutsideClick","hasSelectedText","IS_IOS","spacingPropTypes","createSpacingClasses","skeletonDOMAttributes","createSkeletonClass","Tooltip","injectTooltipSemantic","format","showSelectionNotice","runIOSSelectionFix","NumberFormat","PureComponent","constructor","props","_defineProperty","_this$context$getTran","_this$context$getTran2","value","cleanedValue","label","context","getTranslation","clipboard_copy","run","_ref","current","setState","selected","clearTimeout","_selectAllTimeout","setTimeout","setFocus","selectall","always_selectall","hover","createRef","_selectionRef","_id","tooltip","id","undefined","state","omitCurrencySign","componentDidMount","hasiOSFix","componentWillUnmount","_this$outsideClick","outsideClick","remove","_this$_selectionRef$c","focus","selectAll","copy_selection","onBlurHandler","elem","selection","window","getSelection","range","document","createRange","selectNodeContents","removeAllRanges","addRange","e","runFix","comp","className","isValidElement","cloneElement","createElement","render","defaultProps","_value","prefix","suffix","children","currency","currency_display","currency_position","compact","ban","nin","phone","org","percent","link","_link","monospace","skeleton","options","locale","decimals","omit_rounding","rounding","clean","clean_copy_value","srLabel","element","_rest","_objectWithoutProperties","_excluded","rest","formatOptions","omit_currency_sign","returnAria","useContext","_objectSpread","number","display","aria","lang","Fragment","String","attributes","ref","onMouseEnter","onMouseLeave","displayParams","onClick","onClickHandler","onContextMenu","onContextMenuHandler","_extends","href","Element","tabIndex","onBlur","onCopy","shortcutHandler","targetElement","process","env","NODE_ENV","propTypes","string","oneOfType","node","func","bool","oneOf","object","_supportsSpacingProps"],"sources":["../../../../src/components/number-format/NumberFormat.js"],"sourcesContent":["/**\n * Web NumberFormat Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n convertJsxToString,\n extendPropsWithContextInClassComponent,\n extendDeep,\n detectOutsideClick,\n} from '../../shared/component-helper'\nimport { hasSelectedText, IS_IOS } from '../../shared/helpers'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport Tooltip, { injectTooltipSemantic } from '../tooltip/Tooltip'\nimport {\n format,\n showSelectionNotice,\n runIOSSelectionFix,\n} from './NumberUtils'\n\nexport default class NumberFormat extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n locale: PropTypes.string,\n prefix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n suffix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n // currency\n currency: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n currency_display: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.oneOf(['code', 'name', 'symbol', 'narrowSymbol', '']),\n ]),\n currency_position: PropTypes.oneOf(['auto', 'before', 'after']),\n\n // shortens any number or currency including an abbreviation\n compact: PropTypes.oneOfType([\n PropTypes.oneOf(['short', 'long']),\n PropTypes.bool,\n ]),\n\n // bank account number\n ban: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // national identification number\n nin: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // phone number\n phone: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // organization number\n org: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // percentage\n percent: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // can be tel or sms\n link: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n monospace: PropTypes.bool,\n options: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n decimals: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n always_selectall: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n copy_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n clean_copy_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n omit_rounding: PropTypes.bool,\n rounding: PropTypes.oneOf(['omit', 'half-even', 'half-up']),\n clean: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n srLabel: PropTypes.node,\n element: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n tooltip: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n }\n static defaultProps = {\n id: null,\n value: null,\n locale: null,\n prefix: null,\n suffix: null,\n currency: null,\n currency_display: null, // code, name, symbol\n currency_position: null, // null, before, after\n compact: null,\n ban: null,\n nin: null,\n phone: null,\n org: null,\n percent: null,\n link: null,\n monospace: false,\n options: null,\n decimals: null,\n selectall: true,\n always_selectall: false,\n copy_selection: true,\n clean_copy_value: false,\n omit_rounding: null,\n rounding: null,\n clean: null,\n srLabel: null,\n element: 'span', // span or abbr\n tooltip: null,\n skeleton: null,\n\n className: null,\n children: null,\n }\n\n constructor(props) {\n super(props)\n this._ref = React.createRef()\n this._selectionRef = React.createRef()\n\n this._id = props.tooltip ? props.id || makeUniqueId() : undefined\n this.state = { selected: false, omitCurrencySign: false, hover: false }\n }\n\n componentDidMount() {\n clearTimeout(this._selectAllTimeout)\n\n // NB: This hack may be removed in future iOS versions\n // in order that iOS v13 can select something on the first try, we run this add range trick\n if (IS_IOS && !hasiOSFix) {\n hasiOSFix = true\n runIOSSelectionFix()\n }\n }\n\n shortcutHandler = () => {\n showSelectionNotice({\n value: this.cleanedValue,\n label: this.context.getTranslation(this.props)?.NumberFormat\n ?.clipboard_copy,\n }).run(this._ref.current)\n }\n\n onBlurHandler = () => {\n this.setState({ selected: false })\n }\n\n onContextMenuHandler = () => {\n if (!hasSelectedText()) {\n clearTimeout(this._selectAllTimeout)\n this._selectAllTimeout = setTimeout(() => {\n this.setFocus()\n }, 1)\n }\n }\n\n onClickHandler = () => {\n if (\n (isTrue(this.props.selectall) ||\n isTrue(this.props.always_selectall)) &&\n !hasSelectedText()\n ) {\n this.setFocus()\n }\n }\n\n componentWillUnmount() {\n this.outsideClick?.remove()\n }\n\n setFocus() {\n this.setState({ selected: true }, () => {\n this._selectionRef.current?.focus()\n this.selectAll()\n\n if (!isTrue(this.props.copy_selection)) {\n this.outsideClick = detectOutsideClick(\n this._ref.current,\n this.onBlurHandler\n )\n }\n })\n }\n\n selectAll() {\n try {\n const elem = this._selectionRef.current || this._ref.current\n if (elem) {\n const selection = window.getSelection()\n const range = document.createRange()\n range.selectNodeContents(elem)\n selection.removeAllRanges()\n selection.addRange(range)\n }\n } catch (e) {\n warn(e)\n }\n }\n\n runFix(comp, className) {\n if (typeof comp === 'function') {\n comp = comp()\n }\n if (React.isValidElement(comp)) {\n return React.cloneElement(comp, {\n className: classnames(comp.props.className, className),\n })\n }\n return <span className={className}>{comp}</span>\n }\n\n onMouseEnter = () => {\n this.setState({ hover: true })\n }\n\n onMouseLeave = () => {\n this.setState({ hover: false })\n }\n\n render() {\n // consume the global context\n const props = extendPropsWithContextInClassComponent(\n this.props,\n NumberFormat.defaultProps,\n this.context.getTranslation(this.props).NumberFormat,\n this.context.NumberFormat\n )\n\n const {\n id, // eslint-disable-line\n value: _value,\n prefix,\n suffix,\n children,\n currency,\n currency_display,\n currency_position,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n link: _link,\n monospace,\n tooltip,\n skeleton,\n options,\n locale,\n decimals,\n omit_rounding,\n rounding,\n clean,\n selectall,\n copy_selection,\n clean_copy_value,\n srLabel,\n element,\n className,\n ..._rest\n } = props\n let rest = _rest\n\n let link = _link\n let value = _value\n\n if (value === null && children !== null) {\n value = children\n }\n\n const formatOptions = {\n locale,\n currency,\n currency_display,\n currency_position,\n omit_currency_sign: this.state.omitCurrencySign,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n decimals,\n omit_rounding: isTrue(omit_rounding),\n rounding,\n options,\n clean: isTrue(clean),\n clean_copy_value: isTrue(clean_copy_value),\n returnAria: true,\n }\n\n // use only the props from context, who are available here anyway\n const useContext = extendDeep(\n { locale: null, currency: null },\n this.context\n )\n\n if (useContext) {\n if (useContext.locale && !locale) {\n formatOptions.locale = useContext.locale\n }\n\n // only replace if the prop is \"true\" and not actually a currency\n if (useContext.currency && isTrue(currency)) {\n formatOptions.options = formatOptions.options\n ? { ...formatOptions.options }\n : {}\n formatOptions.options.currency = useContext.currency\n }\n }\n\n let {\n cleanedValue,\n number: display,\n aria,\n locale: lang,\n } = format(value, formatOptions)\n this.cleanedValue = cleanedValue\n\n if (prefix) {\n display = (\n <>\n {this.runFix(prefix, 'dnb-number-format__prefix')} {display}\n </>\n )\n aria = String(\n `${convertJsxToString(\n this.runFix(prefix, 'dnb-number-format__prefix')\n )} ${aria}`\n )\n }\n if (suffix) {\n display = (\n <>\n {display} {this.runFix(suffix, 'dnb-number-format__suffix')}\n </>\n )\n aria = `${aria} ${convertJsxToString(\n this.runFix(suffix, 'dnb-number-format__suffix')\n )}`\n }\n\n if (tooltip) {\n rest = injectTooltipSemantic(rest)\n }\n\n const attributes = {\n lang,\n ref: this._ref,\n className: classnames(\n 'dnb-number-format',\n className,\n (isTrue(currency) || typeof currency === 'string') &&\n 'dnb-number-format--currency',\n isTrue(selectall) && 'dnb-number-format--selectall',\n this.state.selected && 'dnb-number-format--selected',\n link && 'dnb-anchor',\n monospace && 'dnb-number-format--monospace',\n createSpacingClasses(this.props)\n ),\n\n // Makes it possible for NVDA to read on mouse over\n onMouseEnter: this.onMouseEnter,\n onMouseLeave: this.onMouseLeave,\n\n ...rest,\n }\n\n /**\n * Works in VoiceOver and NVDA\n * Makes the span with it's roles etc. appear as text.\n * Special useful if a number is in side e.g. a paragraph alongside with numbers\n */\n attributes['role'] = 'text' // role=\"text\"\n\n const displayParams = {}\n if (isTrue(selectall) || isTrue(copy_selection)) {\n displayParams.onClick = this.onClickHandler\n displayParams.onContextMenu = this.onContextMenuHandler\n }\n\n validateDOMAttributes(this.props, attributes)\n skeletonDOMAttributes(attributes, skeleton, this.context)\n\n if (link) {\n if (isTrue(link)) {\n link = 'tel'\n }\n return (\n <a href={`${link}:${display}`} {...attributes}>\n {display}\n </a>\n )\n }\n\n const Element = element\n\n return (\n <Element {...attributes}>\n <span\n className={classnames(\n 'dnb-number-format__visible',\n createSkeletonClass('font', skeleton, this.context)\n )}\n // Makes it possible for NVDA to read on mouse over\n aria-hidden={!this.state.hover}\n {...displayParams}\n >\n {display}\n </span>\n\n {/* Used for VoiceOver and NVDA when navigating with arrow keys */}\n <span\n className=\"dnb-sr-only\"\n // Use \"data-text\" so Chrome does not copy the HTML as content, when pasting it in Outlook etc.\n data-text={\n srLabel ? `${convertJsxToString(srLabel)}${' '}${aria}` : aria\n }\n />\n\n {isTrue(copy_selection) && (\n <span\n className=\"dnb-number-format__selection dnb-no-focus\"\n ref={this._selectionRef}\n tabIndex={-1}\n onBlur={this.onBlurHandler}\n onCopy={this.shortcutHandler}\n aria-hidden\n >\n {this.state.selected && cleanedValue}\n </span>\n )}\n\n {tooltip && (\n <Tooltip\n id={this._id + '-tooltip'}\n targetElement={this._ref}\n tooltip={tooltip}\n />\n )}\n </Element>\n )\n }\n}\n\nlet hasiOSFix = false\n\nNumberFormat._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { PropertiesTableProps } from '../../shared/types';
2
+ export declare const NumberFormatProperties: PropertiesTableProps;
3
+ export declare const NumberFormatPropertiesCamelCase: PropertiesTableProps;
@@ -0,0 +1,153 @@
1
+ import { toCamelCase } from '../../shared/component-helper';
2
+ export const NumberFormatProperties = {
3
+ value: {
4
+ doc: 'A number.',
5
+ type: 'number',
6
+ status: 'required'
7
+ },
8
+ locale: {
9
+ doc: 'Use a [2 Letter Language Code](https://www.sitepoint.com/iso-2-letter-language-codes/) or an extended code such as `nb-NO`. Use `auto` to detect the locale from the browser (`navigator.language`). Defaults to the Norwegian locale: `nb-NO`.',
10
+ type: 'string',
11
+ status: 'optional'
12
+ },
13
+ compact: {
14
+ doc: 'Shortens any number or currency including an abbreviation. You can combine `compact` with `currency`. It gives you zero decimal by default `decimals={0}`. Use either `short` or `long`. Defaults to `short` if `true` is given.',
15
+ type: ['boolean', 'string'],
16
+ status: 'optional'
17
+ },
18
+ currency: {
19
+ doc: 'Currency code (ISO 4217) or `true` to use the default `NOK`. Uses two decimals by default.',
20
+ type: ['string', 'boolean'],
21
+ status: 'optional'
22
+ },
23
+ currency_display: {
24
+ doc: 'Use either empty/false to hide the sign/name or use `code` (NOK), `name` (kroner), `symbol` (kr) or `narrowSymbol` (for a shorter symbol variant). Defaults to `narrowSymbol` when the locale is `no` else we default to `code`.',
25
+ type: 'string',
26
+ status: 'optional'
27
+ },
28
+ currency_position: {
29
+ doc: 'Use either `before` or `after` to change/define the position of the currency. Defaults to `auto` (Browser API defaults, but with an exception, if the locale is `nb-NO` or `no`, use after as the default position).',
30
+ type: 'string',
31
+ status: 'optional'
32
+ },
33
+ ban: {
34
+ doc: '**Bank Account Number**: use `true` to use the default Norwegian style (2000 12 34567) formatting.',
35
+ type: 'boolean',
36
+ status: 'optional'
37
+ },
38
+ nin: {
39
+ doc: '**National Identification Number**: use `true` to use the default Norwegian style (180892 12345) formatting.',
40
+ type: 'boolean',
41
+ status: 'optional'
42
+ },
43
+ org: {
44
+ doc: '**Organization Number**: use `true` to use the default Norwegian style (123 456 789) formatting. Screen readers get digit by digit.',
45
+ type: 'boolean',
46
+ status: 'optional'
47
+ },
48
+ percent: {
49
+ doc: '**Percentage**: use `true` to enable percent formatting.',
50
+ type: 'boolean',
51
+ status: 'optional'
52
+ },
53
+ phone: {
54
+ doc: 'Use `true` to use the default Norwegian style (22 22 22 22) of phone number formatting, regulated by the [Norwegian authority](https://lovdata.no/forskrift/2004-02-16-426/§16). More info by [Sprakradet](https://www.sprakradet.no/sprakhjelp/Skriveregler/Dato/#tlf) as well.',
55
+ type: 'boolean',
56
+ status: 'optional'
57
+ },
58
+ decimals: {
59
+ doc: 'Set a number to define the number of decimals. Like `decimals="0"` will ensure that decimals are simply not shown. The default decimals for currency usage are `2` (Browser API default).',
60
+ type: 'number',
61
+ status: 'optional'
62
+ },
63
+ rounding: {
64
+ doc: 'If `omit` is given, the decimal will NOT be rounded. If set to `half-even`, the value will be rounded to the nearest even number. If set to `half-up`, the fractional part is 0.5 or greater, the number is rounded up. If the fractional part is less than 0.5, the number is rounded down. Defaults to `half-up`.',
65
+ type: ['omit', 'half-even', 'half-up'],
66
+ status: 'optional'
67
+ },
68
+ omit_rounding: {
69
+ doc: 'Use `rounding="omit"` instead.',
70
+ type: 'boolean',
71
+ status: 'deprecated'
72
+ },
73
+ prefix: {
74
+ doc: 'Add a string or React component before the number, including white space.',
75
+ type: 'React.Node',
76
+ status: 'optional'
77
+ },
78
+ suffix: {
79
+ doc: 'Appends a string or React component after the number, including white space.',
80
+ type: 'React.Node',
81
+ status: 'optional'
82
+ },
83
+ srLabel: {
84
+ doc: 'Will add a visually hidden label, to give screen reader users the missing context to easier understand what the number represents.',
85
+ type: 'string',
86
+ status: 'optional'
87
+ },
88
+ selectall: {
89
+ doc: 'Use `false` to disable the auto select all on the first click. Defaults to `true`.',
90
+ type: 'boolean',
91
+ status: 'optional'
92
+ },
93
+ always_selectall: {
94
+ doc: 'Use `true` to always auto select all on the first click. Defaults to `false`.',
95
+ type: 'boolean',
96
+ status: 'optional'
97
+ },
98
+ copy_selection: {
99
+ doc: 'Use `false` to disable the auto copy feature. Defaults to `true`.',
100
+ type: 'boolean',
101
+ status: 'optional'
102
+ },
103
+ clean_copy_value: {
104
+ doc: 'If set to `true` the copy&paste value will be provided without e.g. a currency sign or a percent sign. Defaults to `false`.',
105
+ type: 'boolean',
106
+ status: 'optional'
107
+ },
108
+ clean: {
109
+ doc: 'If set to `true` a dirty string will be parsed to extract the number (`prefix -123.45 suffix` would result in e.g. `kr -123,45`).',
110
+ type: 'boolean',
111
+ status: 'optional'
112
+ },
113
+ link: {
114
+ doc: 'Use `tel` or `sms` to enable a clickable / touchable anchor link.',
115
+ type: 'string',
116
+ status: 'optional'
117
+ },
118
+ monospace: {
119
+ doc: 'Sets the font to [DNB Mono Regular](/quickguide-designer/fonts/#dnbmono-regular).',
120
+ type: 'boolean',
121
+ status: 'optional'
122
+ },
123
+ element: {
124
+ doc: 'Define what HTML element should be used. Defaults to `<span>`.',
125
+ type: 'string',
126
+ status: 'optional'
127
+ },
128
+ options: {
129
+ doc: "Accepts all [number.toLocaleString](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString) or [Intl.NumberFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat) options as an object - can also be a JSON given as the parameter e.g. `options={{ 'minimumFractionDigits': 2 }}`.",
130
+ type: 'object',
131
+ status: 'optional'
132
+ },
133
+ skeleton: {
134
+ doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',
135
+ type: 'boolean',
136
+ status: 'optional'
137
+ },
138
+ tooltip: {
139
+ doc: 'Provide a string or a React Element to be shown as the tooltip content.',
140
+ type: 'React.Node',
141
+ status: 'optional'
142
+ },
143
+ '[Space](/uilib/layout/space/properties)': {
144
+ doc: 'Spacing properties like `top` or `bottom` are supported.',
145
+ type: ['string', 'object'],
146
+ status: 'optional'
147
+ }
148
+ };
149
+ export const NumberFormatPropertiesCamelCase = Object.fromEntries(Object.entries(NumberFormatProperties).map(_ref => {
150
+ let [k, v] = _ref;
151
+ return [toCamelCase(k), v];
152
+ }));
153
+ //# sourceMappingURL=NumberFormatDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberFormatDocs.js","names":["toCamelCase","NumberFormatProperties","value","doc","type","status","locale","compact","currency","currency_display","currency_position","ban","nin","org","percent","phone","decimals","rounding","omit_rounding","prefix","suffix","srLabel","selectall","always_selectall","copy_selection","clean_copy_value","clean","link","monospace","element","options","skeleton","tooltip","NumberFormatPropertiesCamelCase","Object","fromEntries","entries","map","_ref","k","v"],"sources":["../../../../src/components/number-format/NumberFormatDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\nimport { toCamelCase } from '../../shared/component-helper'\n\nexport const NumberFormatProperties: PropertiesTableProps = {\n value: {\n doc: 'A number.',\n type: 'number',\n status: 'required',\n },\n locale: {\n doc: 'Use a [2 Letter Language Code](https://www.sitepoint.com/iso-2-letter-language-codes/) or an extended code such as `nb-NO`. Use `auto` to detect the locale from the browser (`navigator.language`). Defaults to the Norwegian locale: `nb-NO`.',\n type: 'string',\n status: 'optional',\n },\n compact: {\n doc: 'Shortens any number or currency including an abbreviation. You can combine `compact` with `currency`. It gives you zero decimal by default `decimals={0}`. Use either `short` or `long`. Defaults to `short` if `true` is given.',\n type: ['boolean', 'string'],\n status: 'optional',\n },\n currency: {\n doc: 'Currency code (ISO 4217) or `true` to use the default `NOK`. Uses two decimals by default.',\n type: ['string', 'boolean'],\n status: 'optional',\n },\n currency_display: {\n doc: 'Use either empty/false to hide the sign/name or use `code` (NOK), `name` (kroner), `symbol` (kr) or `narrowSymbol` (for a shorter symbol variant). Defaults to `narrowSymbol` when the locale is `no` else we default to `code`.',\n type: 'string',\n status: 'optional',\n },\n currency_position: {\n doc: 'Use either `before` or `after` to change/define the position of the currency. Defaults to `auto` (Browser API defaults, but with an exception, if the locale is `nb-NO` or `no`, use after as the default position).',\n type: 'string',\n status: 'optional',\n },\n ban: {\n doc: '**Bank Account Number**: use `true` to use the default Norwegian style (2000 12 34567) formatting.',\n type: 'boolean',\n status: 'optional',\n },\n nin: {\n doc: '**National Identification Number**: use `true` to use the default Norwegian style (180892 12345) formatting.',\n type: 'boolean',\n status: 'optional',\n },\n org: {\n doc: '**Organization Number**: use `true` to use the default Norwegian style (123 456 789) formatting. Screen readers get digit by digit.',\n type: 'boolean',\n status: 'optional',\n },\n percent: {\n doc: '**Percentage**: use `true` to enable percent formatting.',\n type: 'boolean',\n status: 'optional',\n },\n phone: {\n doc: 'Use `true` to use the default Norwegian style (22 22 22 22) of phone number formatting, regulated by the [Norwegian authority](https://lovdata.no/forskrift/2004-02-16-426/§16). More info by [Sprakradet](https://www.sprakradet.no/sprakhjelp/Skriveregler/Dato/#tlf) as well.',\n type: 'boolean',\n status: 'optional',\n },\n decimals: {\n doc: 'Set a number to define the number of decimals. Like `decimals=\"0\"` will ensure that decimals are simply not shown. The default decimals for currency usage are `2` (Browser API default).',\n type: 'number',\n status: 'optional',\n },\n rounding: {\n doc: 'If `omit` is given, the decimal will NOT be rounded. If set to `half-even`, the value will be rounded to the nearest even number. If set to `half-up`, the fractional part is 0.5 or greater, the number is rounded up. If the fractional part is less than 0.5, the number is rounded down. Defaults to `half-up`.',\n type: ['omit', 'half-even', 'half-up'],\n status: 'optional',\n },\n omit_rounding: {\n doc: 'Use `rounding=\"omit\"` instead.',\n type: 'boolean',\n status: 'deprecated',\n },\n prefix: {\n doc: 'Add a string or React component before the number, including white space.',\n type: 'React.Node',\n status: 'optional',\n },\n suffix: {\n doc: 'Appends a string or React component after the number, including white space.',\n type: 'React.Node',\n status: 'optional',\n },\n srLabel: {\n doc: 'Will add a visually hidden label, to give screen reader users the missing context to easier understand what the number represents.',\n type: 'string',\n status: 'optional',\n },\n selectall: {\n doc: 'Use `false` to disable the auto select all on the first click. Defaults to `true`.',\n type: 'boolean',\n status: 'optional',\n },\n always_selectall: {\n doc: 'Use `true` to always auto select all on the first click. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n copy_selection: {\n doc: 'Use `false` to disable the auto copy feature. Defaults to `true`.',\n type: 'boolean',\n status: 'optional',\n },\n clean_copy_value: {\n doc: 'If set to `true` the copy&paste value will be provided without e.g. a currency sign or a percent sign. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n clean: {\n doc: 'If set to `true` a dirty string will be parsed to extract the number (`prefix -123.45 suffix` would result in e.g. `kr -123,45`).',\n type: 'boolean',\n status: 'optional',\n },\n link: {\n doc: 'Use `tel` or `sms` to enable a clickable / touchable anchor link.',\n type: 'string',\n status: 'optional',\n },\n monospace: {\n doc: 'Sets the font to [DNB Mono Regular](/quickguide-designer/fonts/#dnbmono-regular).',\n type: 'boolean',\n status: 'optional',\n },\n element: {\n doc: 'Define what HTML element should be used. Defaults to `<span>`.',\n type: 'string',\n status: 'optional',\n },\n options: {\n doc: \"Accepts all [number.toLocaleString](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString) or [Intl.NumberFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat) options as an object - can also be a JSON given as the parameter e.g. `options={{ 'minimumFractionDigits': 2 }}`.\",\n type: 'object',\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n tooltip: {\n doc: 'Provide a string or a React Element to be shown as the tooltip content.',\n type: 'React.Node',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const NumberFormatPropertiesCamelCase: PropertiesTableProps =\n Object.fromEntries(\n Object.entries(NumberFormatProperties).map(([k, v]) => [\n toCamelCase(k),\n v,\n ])\n )\n"],"mappings":"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"}
@@ -44,9 +44,17 @@ export interface formatOptionParams {
44
44
  /** How many decimals */
45
45
  decimals?: number;
46
46
 
47
- /** Do not round the returned number */
47
+ /** @deprecated Use `rounding: "omit"` instead. */
48
48
  omit_rounding?: boolean;
49
49
 
50
+ /**
51
+ * Rounding method
52
+ * - If set to `omit`, the decimal will NOT be rounded.
53
+ * - If set to `half-even`, the decimal will be rounded to the nearest even number.
54
+ * - If set to `half-up`, the fractional part is 0.5 or greater, the number is rounded up. If the fractional part is less than 0.5, the number is rounded down. Defaults to `half-up`.
55
+ */
56
+ rounding?: 'omit' | 'half-even' | 'half-up';
57
+
50
58
  /** phone type */
51
59
  phone?: boolean;
52
60
  /** org type */
@@ -143,3 +151,15 @@ export const useCopyWithNotice: () => { copy: copy };
143
151
  * NB: This hack may be removed in future iOS versions.
144
152
  */
145
153
  export const runIOSSelectionFix = () => null;
154
+
155
+ /**
156
+ * Rounds the number to the nearest even number
157
+ *
158
+ * @param {number} num the number to round
159
+ * @param {number} decimalPlaces the number of decimal places to round to
160
+ * @returns {number} the rounded number
161
+ */
162
+ export const roundHalfEven: (
163
+ num: number,
164
+ decimalPlaces?: number
165
+ ) => number;