@dnb/eufemia 9.26.1 → 9.29.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 (831) hide show
  1. package/CHANGELOG.md +88 -0
  2. package/assets/icons/bookmark.svg +1 -0
  3. package/assets/icons/bookmark_medium.svg +1 -0
  4. package/assets/icons/calendar_cancel.svg +1 -0
  5. package/assets/icons/calendar_cancel_medium.svg +1 -0
  6. package/assets/icons/eufemia-icons-pdf-categorized.tgz +0 -0
  7. package/assets/icons/eufemia-icons-pdf.tgz +0 -0
  8. package/assets/icons/exclamation.svg +1 -1
  9. package/assets/icons/exclamation_circled.svg +1 -1
  10. package/assets/icons/exclamation_medium.svg +1 -1
  11. package/assets/icons/reply.svg +1 -1
  12. package/assets/icons/reply_medium.svg +1 -1
  13. package/assets/icons/stopwatch.svg +1 -1
  14. package/cjs/components/Badge.d.ts +3 -0
  15. package/cjs/components/{slider/web-component.js → Badge.js} +6 -9
  16. package/cjs/components/Style.d.ts +1 -0
  17. package/cjs/components/Style.js +52 -0
  18. package/cjs/components/Table.d.ts +3 -0
  19. package/cjs/components/Table.js +52 -0
  20. package/cjs/components/accordion/AccordionContent.js +1 -1
  21. package/cjs/components/autocomplete/Autocomplete.d.ts +9 -0
  22. package/cjs/components/autocomplete/Autocomplete.js +62 -24
  23. package/cjs/components/autocomplete/style/_autocomplete.scss +73 -6
  24. package/cjs/components/autocomplete/style/dnb-autocomplete.css +79 -14
  25. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
  26. package/cjs/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.css +7 -0
  27. package/cjs/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.min.css +1 -1
  28. package/cjs/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.scss +8 -0
  29. package/cjs/components/avatar/Avatar.js +14 -12
  30. package/cjs/components/avatar/style/_avatar.scss +1 -0
  31. package/cjs/components/avatar/style/dnb-avatar.css +1 -0
  32. package/cjs/components/avatar/style/dnb-avatar.min.css +1 -1
  33. package/cjs/components/badge/Badge.d.ts +58 -0
  34. package/cjs/components/badge/Badge.js +124 -0
  35. package/cjs/components/badge/index.d.ts +8 -0
  36. package/cjs/components/badge/index.js +52 -0
  37. package/cjs/components/badge/style/_badge.scss +74 -0
  38. package/cjs/components/badge/style/dnb-badge.css +151 -0
  39. package/cjs/components/badge/style/dnb-badge.min.css +1 -0
  40. package/cjs/components/badge/style/dnb-badge.scss +12 -0
  41. package/cjs/components/badge/style/index.d.ts +6 -0
  42. package/cjs/components/badge/style/index.js +3 -0
  43. package/cjs/components/badge/style/themes/dnb-badge-theme-ui.css +21 -0
  44. package/cjs/components/badge/style/themes/dnb-badge-theme-ui.min.css +1 -0
  45. package/cjs/components/badge/style/themes/dnb-badge-theme-ui.scss +17 -0
  46. package/cjs/components/badge/style/themes/ui.d.ts +1 -0
  47. package/cjs/components/badge/style/themes/ui.js +3 -0
  48. package/cjs/components/badge/style.d.ts +1 -0
  49. package/cjs/components/badge/style.js +3 -0
  50. package/cjs/components/breadcrumb/Breadcrumb.js +20 -18
  51. package/cjs/components/button/Button.d.ts +5 -3
  52. package/cjs/components/date-picker/DatePicker.d.ts +6 -0
  53. package/cjs/components/date-picker/DatePicker.js +9 -4
  54. package/cjs/components/date-picker/DatePickerFooter.js +3 -3
  55. package/cjs/components/date-picker/DatePickerInput.d.ts +6 -0
  56. package/cjs/components/date-picker/DatePickerInput.js +37 -23
  57. package/cjs/components/date-picker/style/_date-picker.scss +40 -0
  58. package/cjs/components/date-picker/style/dnb-date-picker.css +52 -8
  59. package/cjs/components/date-picker/style/dnb-date-picker.min.css +2 -2
  60. package/cjs/components/dialog/Dialog.js +7 -3
  61. package/cjs/components/dialog/DialogContent.js +6 -3
  62. package/cjs/components/dialog/style/_dialog.scss +24 -35
  63. package/cjs/components/dialog/style/dnb-dialog.css +69 -99
  64. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  65. package/cjs/components/dialog/style/themes/dnb-dialog-theme-ui.css +0 -2
  66. package/cjs/components/dialog/style/themes/dnb-dialog-theme-ui.min.css +1 -1
  67. package/cjs/components/dialog/style/themes/dnb-dialog-theme-ui.scss +0 -7
  68. package/cjs/components/dialog/types.d.ts +9 -2
  69. package/cjs/components/drawer/DrawerContent.js +7 -1
  70. package/cjs/components/drawer/style/_drawer.scss +6 -13
  71. package/cjs/components/drawer/style/dnb-drawer.css +54 -71
  72. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  73. package/cjs/components/drawer/style/themes/dnb-drawer-theme-ui.css +0 -2
  74. package/cjs/components/drawer/style/themes/dnb-drawer-theme-ui.min.css +1 -1
  75. package/cjs/components/drawer/style/themes/dnb-drawer-theme-ui.scss +0 -7
  76. package/cjs/components/dropdown/Dropdown.d.ts +25 -0
  77. package/cjs/components/dropdown/Dropdown.js +1 -1
  78. package/cjs/components/form-row/FormRow.js +11 -20
  79. package/cjs/components/form-row/FormRowHelpers.d.ts +7 -0
  80. package/cjs/components/form-row/FormRowHelpers.js +32 -0
  81. package/cjs/components/icon/Icon.js +5 -9
  82. package/cjs/components/icon/IconHelpers.d.ts +1 -0
  83. package/cjs/components/icon/IconHelpers.js +16 -0
  84. package/cjs/components/index.d.ts +3 -1
  85. package/cjs/components/index.js +16 -0
  86. package/cjs/components/input/Input.d.ts +6 -1
  87. package/cjs/components/input/Input.js +12 -2
  88. package/cjs/components/input/style/_input.scss +11 -9
  89. package/cjs/components/input/style/dnb-input.css +7 -8
  90. package/cjs/components/input/style/dnb-input.min.css +1 -1
  91. package/cjs/components/input-masked/InputMasked.d.ts +6 -1
  92. package/cjs/components/input-masked/InputMaskedUtils.js +11 -4
  93. package/cjs/components/input-masked/addons/createNumberMask.d.ts +1 -2
  94. package/cjs/components/input-masked/addons/createNumberMask.js +1 -14
  95. package/cjs/components/input-masked/style/dnb-input-masked.css +7 -8
  96. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  97. package/cjs/components/lib.d.ts +8 -1
  98. package/cjs/components/lib.js +18 -0
  99. package/cjs/components/modal/Modal.d.ts +1 -22
  100. package/cjs/components/modal/Modal.js +4 -1
  101. package/cjs/components/modal/ModalContent.d.ts +7 -2
  102. package/cjs/components/modal/ModalContent.js +111 -72
  103. package/cjs/components/modal/ModalContext.d.ts +1 -0
  104. package/cjs/components/modal/ModalContext.js +1 -0
  105. package/cjs/components/modal/parts/CloseButton.d.ts +3 -24
  106. package/cjs/components/modal/parts/ModalHeader.d.ts +1 -0
  107. package/cjs/components/modal/parts/ModalHeaderBar.d.ts +3 -2
  108. package/cjs/components/modal/parts/ModalInner.d.ts +1 -0
  109. package/cjs/components/modal/style/_modal-mixins.scss +1 -0
  110. package/cjs/components/modal/style/_modal.scss +0 -4
  111. package/cjs/components/modal/style/dnb-modal.css +42 -59
  112. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  113. package/cjs/components/modal/style/themes/dnb-modal-theme-ui.css +6 -2
  114. package/cjs/components/modal/style/themes/dnb-modal-theme-ui.min.css +1 -1
  115. package/cjs/components/modal/style/themes/dnb-modal-theme-ui.scss +6 -5
  116. package/cjs/components/modal/types.d.ts +16 -38
  117. package/cjs/components/number-format/NumberFormat.d.ts +5 -0
  118. package/cjs/components/number-format/NumberFormat.js +7 -2
  119. package/cjs/components/pagination/PaginationBar.d.ts +7 -6
  120. package/cjs/components/radio/Radio.js +5 -2
  121. package/cjs/components/skeleton/SkeletonHelper.d.ts +5 -4
  122. package/cjs/components/slider/Slider.d.ts +8 -229
  123. package/cjs/components/slider/Slider.js +8 -806
  124. package/cjs/components/slider/SliderHelpers.d.ts +23 -0
  125. package/cjs/components/slider/SliderHelpers.js +239 -0
  126. package/cjs/components/slider/SliderInstance.d.ts +6 -0
  127. package/cjs/components/slider/SliderInstance.js +190 -0
  128. package/cjs/components/slider/SliderProvider.d.ts +4 -0
  129. package/cjs/components/slider/SliderProvider.js +264 -0
  130. package/cjs/components/slider/SliderThumb.d.ts +2 -0
  131. package/cjs/components/slider/SliderThumb.js +137 -0
  132. package/cjs/components/slider/SliderTrack.d.ts +6 -0
  133. package/cjs/components/slider/SliderTrack.js +131 -0
  134. package/cjs/components/slider/hooks/useSliderEvents.d.ts +11 -0
  135. package/cjs/components/slider/hooks/useSliderEvents.js +146 -0
  136. package/cjs/components/slider/hooks/useSliderProps.d.ts +1 -0
  137. package/cjs/components/slider/hooks/useSliderProps.js +16 -0
  138. package/cjs/components/slider/style/_slider.scss +19 -48
  139. package/cjs/components/slider/style/dnb-slider.css +30 -60
  140. package/cjs/components/slider/style/dnb-slider.min.css +1 -1
  141. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.css +0 -16
  142. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  143. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.scss +0 -17
  144. package/cjs/components/slider/types.d.ts +75 -0
  145. package/cjs/components/slider/types.js +1 -0
  146. package/cjs/components/table/Table.d.ts +40 -0
  147. package/cjs/components/table/Table.js +91 -0
  148. package/cjs/components/table/TableStickyHeader.d.ts +21 -0
  149. package/cjs/components/table/TableStickyHeader.js +159 -0
  150. package/cjs/components/table/TableTd.d.ts +15 -0
  151. package/cjs/components/table/TableTd.js +42 -0
  152. package/cjs/components/table/TableTh.d.ts +14 -0
  153. package/cjs/components/table/TableTh.js +42 -0
  154. package/cjs/components/table/TableTr.d.ts +15 -0
  155. package/cjs/components/table/TableTr.js +41 -0
  156. package/cjs/components/table/index.d.ts +3 -0
  157. package/cjs/components/table/index.js +52 -0
  158. package/cjs/components/table/style/_table.scss +147 -0
  159. package/cjs/components/table/style/dnb-table.css +181 -0
  160. package/cjs/components/table/style/dnb-table.min.css +1 -0
  161. package/cjs/components/table/style/dnb-table.scss +12 -0
  162. package/cjs/components/table/style/index.d.ts +6 -0
  163. package/cjs/components/table/style/index.js +3 -0
  164. package/cjs/components/table/style/themes/dnb-table-theme-ui.css +444 -0
  165. package/cjs/components/table/style/themes/dnb-table-theme-ui.min.css +2 -0
  166. package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +97 -0
  167. package/cjs/components/table/style/themes/table-basis.scss +161 -0
  168. package/cjs/components/table/style/themes/ui.d.ts +1 -0
  169. package/cjs/components/table/style/themes/ui.js +3 -0
  170. package/cjs/components/table/style.d.ts +1 -0
  171. package/cjs/components/table/style.js +3 -0
  172. package/cjs/components/tag/Tag.js +16 -13
  173. package/cjs/components/timeline/Timeline.js +11 -7
  174. package/cjs/components/timeline/TimelineItem.d.ts +12 -4
  175. package/cjs/components/timeline/TimelineItem.js +62 -25
  176. package/cjs/components/timeline/style/_timeline.scss +2 -2
  177. package/cjs/components/timeline/style/dnb-timeline.css +6 -6
  178. package/cjs/components/timeline/style/dnb-timeline.min.css +1 -1
  179. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.css +4 -4
  180. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +1 -1
  181. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.scss +4 -4
  182. package/cjs/elements/Anchor.d.ts +44 -105
  183. package/cjs/elements/Anchor.js +48 -138
  184. package/cjs/elements/Element.d.ts +23 -40
  185. package/cjs/elements/Element.js +48 -122
  186. package/cjs/elements/Link.d.ts +18 -1
  187. package/cjs/elements/Table.d.ts +3 -35
  188. package/cjs/elements/Table.js +25 -270
  189. package/cjs/elements/Td.d.ts +2 -28
  190. package/cjs/elements/Td.js +32 -40
  191. package/cjs/elements/Th.d.ts +2 -28
  192. package/cjs/elements/Th.js +32 -40
  193. package/cjs/elements/Tr.d.ts +2 -28
  194. package/cjs/elements/Tr.js +32 -40
  195. package/cjs/elements/lib.d.ts +40 -8
  196. package/cjs/elements/lib.js +0 -9
  197. package/cjs/fragments/drawer-list/DrawerList.d.ts +13 -0
  198. package/cjs/fragments/drawer-list/DrawerList.js +25 -10
  199. package/cjs/fragments/drawer-list/DrawerListHelpers.d.ts +20 -0
  200. package/cjs/fragments/drawer-list/DrawerListHelpers.js +18 -1
  201. package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +6 -9
  202. package/cjs/fragments/drawer-list/DrawerListProvider.js +28 -42
  203. package/cjs/fragments/drawer-list/style/_drawer-list.scss +40 -5
  204. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +58 -38
  205. package/cjs/icons/bookmark.d.ts +2 -0
  206. package/cjs/icons/bookmark.js +36 -0
  207. package/cjs/icons/bookmark_medium.d.ts +2 -0
  208. package/cjs/icons/bookmark_medium.js +36 -0
  209. package/cjs/icons/calendar_cancel.d.ts +2 -0
  210. package/cjs/icons/calendar_cancel.js +32 -0
  211. package/cjs/icons/calendar_cancel_medium.d.ts +2 -0
  212. package/cjs/icons/calendar_cancel_medium.js +32 -0
  213. package/cjs/icons/exclamation.js +5 -2
  214. package/cjs/icons/exclamation_circled.js +1 -1
  215. package/cjs/icons/exclamation_medium.js +5 -2
  216. package/cjs/icons/icons-meta.json +232 -198
  217. package/cjs/icons/icons-pdf.lock +6294 -0
  218. package/cjs/icons/icons-svg.lock +6294 -1
  219. package/cjs/icons/index.d.ts +5 -1
  220. package/cjs/icons/index.js +32 -0
  221. package/cjs/icons/reply.js +2 -1
  222. package/cjs/icons/reply_medium.js +2 -1
  223. package/cjs/icons/secondary_icons.d.ts +3 -1
  224. package/cjs/icons/secondary_icons.js +16 -0
  225. package/cjs/icons/secondary_icons_medium.d.ts +3 -1
  226. package/cjs/icons/secondary_icons_medium.js +16 -0
  227. package/cjs/icons/stopwatch.js +1 -1
  228. package/cjs/index.d.ts +31 -30
  229. package/cjs/index.js +66 -58
  230. package/cjs/shared/AlignmentHelper.js +4 -2
  231. package/cjs/shared/AnimateHeight.d.ts +1 -0
  232. package/cjs/shared/AnimateHeight.js +18 -2
  233. package/cjs/shared/Context.d.ts +98 -44
  234. package/cjs/shared/Context.js +3 -16
  235. package/cjs/shared/Eufemia.js +1 -1
  236. package/cjs/shared/MediaQuery.d.ts +18 -37
  237. package/cjs/shared/MediaQuery.js +3 -19
  238. package/cjs/shared/MediaQueryUtils.d.ts +61 -23
  239. package/cjs/shared/MediaQueryUtils.js +2 -2
  240. package/cjs/shared/Provider.d.ts +36 -12
  241. package/cjs/shared/Provider.js +6 -15
  242. package/cjs/shared/component-helper.d.ts +1 -1
  243. package/cjs/shared/component-helper.js +5 -5
  244. package/cjs/shared/helpers/Suffix.d.ts +6 -4
  245. package/cjs/shared/helpers/Suffix.js +5 -2
  246. package/cjs/shared/helpers/filterValidProps.d.ts +11 -0
  247. package/cjs/shared/helpers/filterValidProps.js +19 -0
  248. package/cjs/shared/helpers/withCamelCaseProps.d.ts +1 -1
  249. package/cjs/shared/helpers/withCamelCaseProps.js +3 -0
  250. package/cjs/shared/helpers/withSnakeCaseProps.d.ts +40 -0
  251. package/cjs/shared/helpers/withSnakeCaseProps.js +168 -0
  252. package/cjs/shared/interfaces.d.ts +13 -0
  253. package/cjs/shared/locales/en-GB.d.ts +4 -3
  254. package/cjs/shared/locales/en-GB.js +4 -3
  255. package/cjs/shared/locales/en-US.d.ts +4 -3
  256. package/cjs/shared/locales/index.d.ts +8 -6
  257. package/cjs/shared/locales/nb-NO.d.ts +4 -3
  258. package/cjs/shared/locales/nb-NO.js +4 -3
  259. package/cjs/shared/useMediaQuery.d.ts +3 -1
  260. package/cjs/shared/useTranslation.d.ts +1 -22
  261. package/cjs/style/dnb-ui-components.css +434 -154
  262. package/cjs/style/dnb-ui-components.min.css +5 -5
  263. package/cjs/style/dnb-ui-components.scss +2 -0
  264. package/cjs/style/dnb-ui-elements.css +45 -562
  265. package/cjs/style/dnb-ui-elements.min.css +1 -2
  266. package/cjs/style/dnb-ui-fragments.css +37 -15
  267. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  268. package/cjs/style/dnb-ui-tags.css +64 -1105
  269. package/cjs/style/dnb-ui-tags.min.css +1 -3
  270. package/cjs/style/elements/_anchor-mixins.scss +6 -3
  271. package/cjs/style/elements/table.scss +1 -389
  272. package/cjs/style/elements/ui-tags.scss +2 -2
  273. package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +608 -649
  274. package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +10 -8
  275. package/cjs/style/themes/theme-ui/dnb-theme-ui.css +612 -653
  276. package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +10 -8
  277. package/cjs/style/themes/theme-ui/dnb-theme-ui.scss +2 -0
  278. package/components/Badge.d.ts +3 -0
  279. package/components/Badge.js +3 -0
  280. package/components/Style.d.ts +1 -0
  281. package/components/Style.js +3 -0
  282. package/components/Table.d.ts +3 -0
  283. package/components/Table.js +3 -0
  284. package/components/accordion/AccordionContent.js +1 -1
  285. package/components/autocomplete/Autocomplete.d.ts +9 -0
  286. package/components/autocomplete/Autocomplete.js +63 -25
  287. package/components/autocomplete/style/_autocomplete.scss +73 -6
  288. package/components/autocomplete/style/dnb-autocomplete.css +79 -14
  289. package/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
  290. package/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.css +7 -0
  291. package/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.min.css +1 -1
  292. package/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.scss +8 -0
  293. package/components/avatar/Avatar.js +15 -14
  294. package/components/avatar/style/_avatar.scss +1 -0
  295. package/components/avatar/style/dnb-avatar.css +1 -0
  296. package/components/avatar/style/dnb-avatar.min.css +1 -1
  297. package/components/badge/Badge.d.ts +58 -0
  298. package/components/badge/Badge.js +92 -0
  299. package/components/badge/index.d.ts +8 -0
  300. package/components/badge/index.js +3 -0
  301. package/components/badge/style/_badge.scss +74 -0
  302. package/components/badge/style/dnb-badge.css +151 -0
  303. package/components/badge/style/dnb-badge.min.css +1 -0
  304. package/components/badge/style/dnb-badge.scss +12 -0
  305. package/components/badge/style/index.d.ts +6 -0
  306. package/components/badge/style/index.js +1 -0
  307. package/components/badge/style/themes/dnb-badge-theme-ui.css +21 -0
  308. package/components/badge/style/themes/dnb-badge-theme-ui.min.css +1 -0
  309. package/components/badge/style/themes/dnb-badge-theme-ui.scss +17 -0
  310. package/components/badge/style/themes/ui.d.ts +1 -0
  311. package/components/badge/style/themes/ui.js +1 -0
  312. package/components/badge/style.d.ts +1 -0
  313. package/components/badge/style.js +1 -0
  314. package/components/breadcrumb/Breadcrumb.js +21 -20
  315. package/components/button/Button.d.ts +5 -3
  316. package/components/date-picker/DatePicker.d.ts +6 -0
  317. package/components/date-picker/DatePicker.js +9 -4
  318. package/components/date-picker/DatePickerFooter.js +3 -3
  319. package/components/date-picker/DatePickerInput.d.ts +6 -0
  320. package/components/date-picker/DatePickerInput.js +37 -23
  321. package/components/date-picker/style/_date-picker.scss +40 -0
  322. package/components/date-picker/style/dnb-date-picker.css +52 -8
  323. package/components/date-picker/style/dnb-date-picker.min.css +2 -2
  324. package/components/dialog/Dialog.js +7 -3
  325. package/components/dialog/DialogContent.js +7 -4
  326. package/components/dialog/style/_dialog.scss +24 -35
  327. package/components/dialog/style/dnb-dialog.css +69 -99
  328. package/components/dialog/style/dnb-dialog.min.css +1 -1
  329. package/components/dialog/style/themes/dnb-dialog-theme-ui.css +0 -2
  330. package/components/dialog/style/themes/dnb-dialog-theme-ui.min.css +1 -1
  331. package/components/dialog/style/themes/dnb-dialog-theme-ui.scss +0 -7
  332. package/components/dialog/types.d.ts +9 -2
  333. package/components/drawer/DrawerContent.js +4 -1
  334. package/components/drawer/style/_drawer.scss +6 -13
  335. package/components/drawer/style/dnb-drawer.css +54 -71
  336. package/components/drawer/style/dnb-drawer.min.css +1 -1
  337. package/components/drawer/style/themes/dnb-drawer-theme-ui.css +0 -2
  338. package/components/drawer/style/themes/dnb-drawer-theme-ui.min.css +1 -1
  339. package/components/drawer/style/themes/dnb-drawer-theme-ui.scss +0 -7
  340. package/components/dropdown/Dropdown.d.ts +25 -0
  341. package/components/dropdown/Dropdown.js +2 -2
  342. package/components/form-row/FormRow.js +9 -15
  343. package/components/form-row/FormRowHelpers.d.ts +7 -0
  344. package/components/form-row/FormRowHelpers.js +18 -0
  345. package/components/icon/Icon.js +1 -3
  346. package/components/icon/IconHelpers.d.ts +1 -0
  347. package/components/icon/IconHelpers.js +5 -0
  348. package/components/index.d.ts +3 -1
  349. package/components/index.js +3 -1
  350. package/components/input/Input.d.ts +6 -1
  351. package/components/input/Input.js +12 -2
  352. package/components/input/style/_input.scss +11 -9
  353. package/components/input/style/dnb-input.css +7 -8
  354. package/components/input/style/dnb-input.min.css +1 -1
  355. package/components/input-masked/InputMasked.d.ts +6 -1
  356. package/components/input-masked/InputMaskedUtils.js +11 -4
  357. package/components/input-masked/addons/createNumberMask.d.ts +1 -2
  358. package/components/input-masked/addons/createNumberMask.js +1 -12
  359. package/components/input-masked/style/dnb-input-masked.css +7 -8
  360. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  361. package/components/lib.d.ts +8 -1
  362. package/components/lib.js +5 -1
  363. package/components/modal/Modal.d.ts +1 -22
  364. package/components/modal/Modal.js +4 -1
  365. package/components/modal/ModalContent.d.ts +7 -2
  366. package/components/modal/ModalContent.js +81 -62
  367. package/components/modal/ModalContext.d.ts +1 -0
  368. package/components/modal/ModalContext.js +1 -0
  369. package/components/modal/parts/CloseButton.d.ts +3 -24
  370. package/components/modal/parts/ModalHeader.d.ts +1 -0
  371. package/components/modal/parts/ModalHeaderBar.d.ts +3 -2
  372. package/components/modal/parts/ModalInner.d.ts +1 -0
  373. package/components/modal/style/_modal-mixins.scss +1 -0
  374. package/components/modal/style/_modal.scss +0 -4
  375. package/components/modal/style/dnb-modal.css +42 -59
  376. package/components/modal/style/dnb-modal.min.css +1 -1
  377. package/components/modal/style/themes/dnb-modal-theme-ui.css +6 -2
  378. package/components/modal/style/themes/dnb-modal-theme-ui.min.css +1 -1
  379. package/components/modal/style/themes/dnb-modal-theme-ui.scss +6 -5
  380. package/components/modal/types.d.ts +16 -38
  381. package/components/number-format/NumberFormat.d.ts +5 -0
  382. package/components/number-format/NumberFormat.js +7 -2
  383. package/components/pagination/PaginationBar.d.ts +7 -6
  384. package/components/radio/Radio.js +5 -2
  385. package/components/skeleton/SkeletonHelper.d.ts +5 -4
  386. package/components/slider/Slider.d.ts +8 -229
  387. package/components/slider/Slider.js +7 -748
  388. package/components/slider/SliderHelpers.d.ts +23 -0
  389. package/components/slider/SliderHelpers.js +152 -0
  390. package/components/slider/SliderInstance.d.ts +6 -0
  391. package/components/slider/SliderInstance.js +162 -0
  392. package/components/slider/SliderProvider.d.ts +4 -0
  393. package/components/slider/SliderProvider.js +199 -0
  394. package/components/slider/SliderThumb.d.ts +2 -0
  395. package/components/slider/SliderThumb.js +109 -0
  396. package/components/slider/SliderTrack.d.ts +6 -0
  397. package/components/slider/SliderTrack.js +104 -0
  398. package/components/slider/hooks/useSliderEvents.d.ts +11 -0
  399. package/components/slider/hooks/useSliderEvents.js +132 -0
  400. package/components/slider/hooks/useSliderProps.d.ts +1 -0
  401. package/components/slider/hooks/useSliderProps.js +5 -0
  402. package/components/slider/style/_slider.scss +19 -48
  403. package/components/slider/style/dnb-slider.css +30 -60
  404. package/components/slider/style/dnb-slider.min.css +1 -1
  405. package/components/slider/style/themes/dnb-slider-theme-ui.css +0 -16
  406. package/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  407. package/components/slider/style/themes/dnb-slider-theme-ui.scss +0 -17
  408. package/components/slider/types.d.ts +75 -0
  409. package/components/slider/types.js +1 -0
  410. package/components/table/Table.d.ts +40 -0
  411. package/components/table/Table.js +51 -0
  412. package/components/table/TableStickyHeader.d.ts +21 -0
  413. package/components/table/TableStickyHeader.js +105 -0
  414. package/components/table/TableTd.d.ts +15 -0
  415. package/components/table/TableTd.js +18 -0
  416. package/components/table/TableTh.d.ts +14 -0
  417. package/components/table/TableTh.js +18 -0
  418. package/components/table/TableTr.d.ts +15 -0
  419. package/components/table/TableTr.js +17 -0
  420. package/components/table/index.d.ts +3 -0
  421. package/components/table/index.js +3 -0
  422. package/components/table/style/_table.scss +147 -0
  423. package/components/table/style/dnb-table.css +181 -0
  424. package/components/table/style/dnb-table.min.css +1 -0
  425. package/components/table/style/dnb-table.scss +12 -0
  426. package/components/table/style/index.d.ts +6 -0
  427. package/components/table/style/index.js +1 -0
  428. package/components/table/style/themes/dnb-table-theme-ui.css +444 -0
  429. package/components/table/style/themes/dnb-table-theme-ui.min.css +2 -0
  430. package/components/table/style/themes/dnb-table-theme-ui.scss +97 -0
  431. package/components/table/style/themes/table-basis.scss +161 -0
  432. package/components/table/style/themes/ui.d.ts +1 -0
  433. package/components/table/style/themes/ui.js +1 -0
  434. package/components/table/style.d.ts +1 -0
  435. package/components/table/style.js +1 -0
  436. package/components/tag/Tag.js +14 -13
  437. package/components/timeline/Timeline.js +10 -8
  438. package/components/timeline/TimelineItem.d.ts +12 -4
  439. package/components/timeline/TimelineItem.js +61 -25
  440. package/components/timeline/style/_timeline.scss +2 -2
  441. package/components/timeline/style/dnb-timeline.css +6 -6
  442. package/components/timeline/style/dnb-timeline.min.css +1 -1
  443. package/components/timeline/style/themes/dnb-timeline-theme-ui.css +4 -4
  444. package/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +1 -1
  445. package/components/timeline/style/themes/dnb-timeline-theme-ui.scss +4 -4
  446. package/elements/Anchor.d.ts +44 -105
  447. package/elements/Anchor.js +51 -113
  448. package/elements/Element.d.ts +23 -40
  449. package/elements/Element.js +44 -92
  450. package/elements/Link.d.ts +18 -1
  451. package/elements/Table.d.ts +3 -35
  452. package/elements/Table.js +3 -218
  453. package/elements/Td.d.ts +2 -28
  454. package/elements/Td.js +2 -36
  455. package/elements/Th.d.ts +2 -28
  456. package/elements/Th.js +2 -36
  457. package/elements/Tr.d.ts +2 -28
  458. package/elements/Tr.js +2 -36
  459. package/elements/lib.d.ts +40 -8
  460. package/elements/lib.js +1 -3
  461. package/es/components/Badge.d.ts +3 -0
  462. package/es/components/Badge.js +3 -0
  463. package/es/components/Style.d.ts +1 -0
  464. package/es/components/Style.js +3 -0
  465. package/es/components/Table.d.ts +3 -0
  466. package/es/components/Table.js +3 -0
  467. package/es/components/accordion/AccordionContent.js +1 -1
  468. package/es/components/autocomplete/Autocomplete.d.ts +9 -0
  469. package/es/components/autocomplete/Autocomplete.js +56 -20
  470. package/es/components/autocomplete/style/_autocomplete.scss +73 -6
  471. package/es/components/autocomplete/style/dnb-autocomplete.css +79 -14
  472. package/es/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
  473. package/es/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.css +7 -0
  474. package/es/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.min.css +1 -1
  475. package/es/components/autocomplete/style/themes/dnb-autocomplete-theme-ui.scss +8 -0
  476. package/es/components/avatar/Avatar.js +8 -7
  477. package/es/components/avatar/style/_avatar.scss +1 -0
  478. package/es/components/avatar/style/dnb-avatar.css +1 -0
  479. package/es/components/avatar/style/dnb-avatar.min.css +1 -1
  480. package/es/components/badge/Badge.d.ts +58 -0
  481. package/es/components/badge/Badge.js +88 -0
  482. package/es/components/badge/index.d.ts +8 -0
  483. package/es/components/badge/index.js +3 -0
  484. package/es/components/badge/style/_badge.scss +74 -0
  485. package/es/components/badge/style/dnb-badge.css +151 -0
  486. package/es/components/badge/style/dnb-badge.min.css +1 -0
  487. package/es/components/badge/style/dnb-badge.scss +12 -0
  488. package/es/components/badge/style/index.d.ts +6 -0
  489. package/es/components/badge/style/index.js +1 -0
  490. package/es/components/badge/style/themes/dnb-badge-theme-ui.css +21 -0
  491. package/es/components/badge/style/themes/dnb-badge-theme-ui.min.css +1 -0
  492. package/es/components/badge/style/themes/dnb-badge-theme-ui.scss +17 -0
  493. package/es/components/badge/style/themes/ui.d.ts +1 -0
  494. package/es/components/badge/style/themes/ui.js +1 -0
  495. package/es/components/badge/style.d.ts +1 -0
  496. package/es/components/badge/style.js +1 -0
  497. package/es/components/breadcrumb/Breadcrumb.js +8 -7
  498. package/es/components/button/Button.d.ts +5 -3
  499. package/es/components/date-picker/DatePicker.d.ts +6 -0
  500. package/es/components/date-picker/DatePicker.js +9 -4
  501. package/es/components/date-picker/DatePickerFooter.js +3 -3
  502. package/es/components/date-picker/DatePickerInput.d.ts +6 -0
  503. package/es/components/date-picker/DatePickerInput.js +43 -32
  504. package/es/components/date-picker/style/_date-picker.scss +40 -0
  505. package/es/components/date-picker/style/dnb-date-picker.css +52 -8
  506. package/es/components/date-picker/style/dnb-date-picker.min.css +2 -2
  507. package/es/components/dialog/Dialog.js +7 -3
  508. package/es/components/dialog/DialogContent.js +7 -4
  509. package/es/components/dialog/style/_dialog.scss +24 -35
  510. package/es/components/dialog/style/dnb-dialog.css +69 -99
  511. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  512. package/es/components/dialog/style/themes/dnb-dialog-theme-ui.css +0 -2
  513. package/es/components/dialog/style/themes/dnb-dialog-theme-ui.min.css +1 -1
  514. package/es/components/dialog/style/themes/dnb-dialog-theme-ui.scss +0 -7
  515. package/es/components/dialog/types.d.ts +9 -2
  516. package/es/components/drawer/DrawerContent.js +4 -1
  517. package/es/components/drawer/style/_drawer.scss +6 -13
  518. package/es/components/drawer/style/dnb-drawer.css +54 -71
  519. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  520. package/es/components/drawer/style/themes/dnb-drawer-theme-ui.css +0 -2
  521. package/es/components/drawer/style/themes/dnb-drawer-theme-ui.min.css +1 -1
  522. package/es/components/drawer/style/themes/dnb-drawer-theme-ui.scss +0 -7
  523. package/es/components/dropdown/Dropdown.d.ts +25 -0
  524. package/es/components/dropdown/Dropdown.js +2 -2
  525. package/es/components/form-row/FormRow.js +13 -18
  526. package/es/components/form-row/FormRowHelpers.d.ts +7 -0
  527. package/es/components/form-row/FormRowHelpers.js +18 -0
  528. package/es/components/icon/Icon.js +2 -2
  529. package/es/components/icon/IconHelpers.d.ts +1 -0
  530. package/es/components/icon/IconHelpers.js +1 -0
  531. package/es/components/index.d.ts +3 -1
  532. package/es/components/index.js +3 -1
  533. package/es/components/input/Input.d.ts +6 -1
  534. package/es/components/input/Input.js +11 -2
  535. package/es/components/input/style/_input.scss +11 -9
  536. package/es/components/input/style/dnb-input.css +7 -8
  537. package/es/components/input/style/dnb-input.min.css +1 -1
  538. package/es/components/input-masked/InputMasked.d.ts +6 -1
  539. package/es/components/input-masked/InputMaskedUtils.js +11 -4
  540. package/es/components/input-masked/addons/createNumberMask.d.ts +1 -2
  541. package/es/components/input-masked/addons/createNumberMask.js +1 -9
  542. package/es/components/input-masked/style/dnb-input-masked.css +7 -8
  543. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  544. package/es/components/lib.d.ts +8 -1
  545. package/es/components/lib.js +5 -1
  546. package/es/components/modal/Modal.d.ts +1 -22
  547. package/es/components/modal/Modal.js +3 -1
  548. package/es/components/modal/ModalContent.d.ts +7 -2
  549. package/es/components/modal/ModalContent.js +27 -9
  550. package/es/components/modal/ModalContext.d.ts +1 -0
  551. package/es/components/modal/ModalContext.js +1 -0
  552. package/es/components/modal/parts/CloseButton.d.ts +3 -24
  553. package/es/components/modal/parts/ModalHeader.d.ts +1 -0
  554. package/es/components/modal/parts/ModalHeaderBar.d.ts +3 -2
  555. package/es/components/modal/parts/ModalInner.d.ts +1 -0
  556. package/es/components/modal/style/_modal-mixins.scss +1 -0
  557. package/es/components/modal/style/_modal.scss +0 -4
  558. package/es/components/modal/style/dnb-modal.css +42 -59
  559. package/es/components/modal/style/dnb-modal.min.css +1 -1
  560. package/es/components/modal/style/themes/dnb-modal-theme-ui.css +6 -2
  561. package/es/components/modal/style/themes/dnb-modal-theme-ui.min.css +1 -1
  562. package/es/components/modal/style/themes/dnb-modal-theme-ui.scss +6 -5
  563. package/es/components/modal/types.d.ts +16 -38
  564. package/es/components/number-format/NumberFormat.d.ts +5 -0
  565. package/es/components/number-format/NumberFormat.js +7 -2
  566. package/es/components/pagination/PaginationBar.d.ts +7 -6
  567. package/es/components/radio/Radio.js +5 -2
  568. package/es/components/skeleton/SkeletonHelper.d.ts +5 -4
  569. package/es/components/slider/Slider.d.ts +8 -229
  570. package/es/components/slider/Slider.js +6 -688
  571. package/es/components/slider/SliderHelpers.d.ts +23 -0
  572. package/es/components/slider/SliderHelpers.js +124 -0
  573. package/es/components/slider/SliderInstance.d.ts +6 -0
  574. package/es/components/slider/SliderInstance.js +167 -0
  575. package/es/components/slider/SliderProvider.d.ts +4 -0
  576. package/es/components/slider/SliderProvider.js +178 -0
  577. package/es/components/slider/SliderThumb.d.ts +2 -0
  578. package/es/components/slider/SliderThumb.js +100 -0
  579. package/es/components/slider/SliderTrack.d.ts +6 -0
  580. package/es/components/slider/SliderTrack.js +99 -0
  581. package/es/components/slider/hooks/useSliderEvents.d.ts +11 -0
  582. package/es/components/slider/hooks/useSliderEvents.js +129 -0
  583. package/es/components/slider/hooks/useSliderProps.d.ts +1 -0
  584. package/es/components/slider/hooks/useSliderProps.js +5 -0
  585. package/es/components/slider/style/_slider.scss +19 -48
  586. package/es/components/slider/style/dnb-slider.css +30 -60
  587. package/es/components/slider/style/dnb-slider.min.css +1 -1
  588. package/es/components/slider/style/themes/dnb-slider-theme-ui.css +0 -16
  589. package/es/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  590. package/es/components/slider/style/themes/dnb-slider-theme-ui.scss +0 -17
  591. package/es/components/slider/types.d.ts +75 -0
  592. package/es/components/slider/types.js +1 -0
  593. package/es/components/table/Table.d.ts +40 -0
  594. package/es/components/table/Table.js +51 -0
  595. package/es/components/table/TableStickyHeader.d.ts +21 -0
  596. package/es/components/table/TableStickyHeader.js +98 -0
  597. package/es/components/table/TableTd.d.ts +15 -0
  598. package/es/components/table/TableTd.js +20 -0
  599. package/es/components/table/TableTh.d.ts +14 -0
  600. package/es/components/table/TableTh.js +20 -0
  601. package/es/components/table/TableTr.d.ts +15 -0
  602. package/es/components/table/TableTr.js +19 -0
  603. package/es/components/table/index.d.ts +3 -0
  604. package/es/components/table/index.js +3 -0
  605. package/es/components/table/style/_table.scss +147 -0
  606. package/es/components/table/style/dnb-table.css +181 -0
  607. package/es/components/table/style/dnb-table.min.css +1 -0
  608. package/es/components/table/style/dnb-table.scss +12 -0
  609. package/es/components/table/style/index.d.ts +6 -0
  610. package/es/components/table/style/index.js +1 -0
  611. package/es/components/table/style/themes/dnb-table-theme-ui.css +444 -0
  612. package/es/components/table/style/themes/dnb-table-theme-ui.min.css +2 -0
  613. package/es/components/table/style/themes/dnb-table-theme-ui.scss +97 -0
  614. package/es/components/table/style/themes/table-basis.scss +161 -0
  615. package/es/components/table/style/themes/ui.d.ts +1 -0
  616. package/es/components/table/style/themes/ui.js +1 -0
  617. package/es/components/table/style.d.ts +1 -0
  618. package/es/components/table/style.js +1 -0
  619. package/es/components/tag/Tag.js +8 -7
  620. package/es/components/timeline/Timeline.js +8 -6
  621. package/es/components/timeline/TimelineItem.d.ts +12 -4
  622. package/es/components/timeline/TimelineItem.js +54 -22
  623. package/es/components/timeline/style/_timeline.scss +2 -2
  624. package/es/components/timeline/style/dnb-timeline.css +6 -6
  625. package/es/components/timeline/style/dnb-timeline.min.css +1 -1
  626. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.css +4 -4
  627. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +1 -1
  628. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.scss +4 -4
  629. package/es/elements/Anchor.d.ts +44 -105
  630. package/es/elements/Anchor.js +49 -80
  631. package/es/elements/Element.d.ts +23 -40
  632. package/es/elements/Element.js +44 -61
  633. package/es/elements/Link.d.ts +18 -1
  634. package/es/elements/Table.d.ts +3 -35
  635. package/es/elements/Table.js +3 -170
  636. package/es/elements/Td.d.ts +2 -28
  637. package/es/elements/Td.js +2 -26
  638. package/es/elements/Th.d.ts +2 -28
  639. package/es/elements/Th.js +2 -26
  640. package/es/elements/Tr.d.ts +2 -28
  641. package/es/elements/Tr.js +2 -26
  642. package/es/elements/lib.d.ts +40 -8
  643. package/es/elements/lib.js +1 -3
  644. package/es/fragments/drawer-list/DrawerList.d.ts +13 -0
  645. package/es/fragments/drawer-list/DrawerList.js +25 -13
  646. package/es/fragments/drawer-list/DrawerListHelpers.d.ts +20 -0
  647. package/es/fragments/drawer-list/DrawerListHelpers.js +15 -0
  648. package/es/fragments/drawer-list/DrawerListProvider.d.ts +6 -9
  649. package/es/fragments/drawer-list/DrawerListProvider.js +31 -44
  650. package/es/fragments/drawer-list/style/_drawer-list.scss +40 -5
  651. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +58 -38
  652. package/es/icons/bookmark.d.ts +2 -0
  653. package/es/icons/bookmark.js +22 -0
  654. package/es/icons/bookmark_medium.d.ts +2 -0
  655. package/es/icons/bookmark_medium.js +22 -0
  656. package/es/icons/calendar_cancel.d.ts +2 -0
  657. package/es/icons/calendar_cancel.js +18 -0
  658. package/es/icons/calendar_cancel_medium.d.ts +2 -0
  659. package/es/icons/calendar_cancel_medium.js +18 -0
  660. package/es/icons/exclamation.js +5 -2
  661. package/es/icons/exclamation_circled.js +1 -1
  662. package/es/icons/exclamation_medium.js +5 -2
  663. package/es/icons/icons-meta.json +232 -198
  664. package/es/icons/icons-pdf.lock +6294 -0
  665. package/es/icons/icons-svg.lock +6294 -1
  666. package/es/icons/index.d.ts +5 -1
  667. package/es/icons/index.js +5 -1
  668. package/es/icons/reply.js +2 -1
  669. package/es/icons/reply_medium.js +2 -1
  670. package/es/icons/secondary_icons.d.ts +3 -1
  671. package/es/icons/secondary_icons.js +3 -1
  672. package/es/icons/secondary_icons_medium.d.ts +3 -1
  673. package/es/icons/secondary_icons_medium.js +3 -1
  674. package/es/icons/stopwatch.js +1 -1
  675. package/es/index.d.ts +31 -30
  676. package/es/index.js +31 -30
  677. package/es/shared/AlignmentHelper.js +2 -2
  678. package/es/shared/AnimateHeight.d.ts +1 -0
  679. package/es/shared/AnimateHeight.js +18 -2
  680. package/es/shared/Context.d.ts +98 -44
  681. package/es/shared/Context.js +4 -17
  682. package/es/shared/Eufemia.js +1 -1
  683. package/es/shared/MediaQuery.d.ts +18 -37
  684. package/es/shared/MediaQuery.js +3 -18
  685. package/es/shared/MediaQueryUtils.d.ts +61 -23
  686. package/es/shared/MediaQueryUtils.js +2 -2
  687. package/es/shared/Provider.d.ts +36 -12
  688. package/es/shared/Provider.js +6 -14
  689. package/es/shared/component-helper.d.ts +1 -1
  690. package/es/shared/component-helper.js +5 -5
  691. package/es/shared/helpers/Suffix.d.ts +6 -4
  692. package/es/shared/helpers/Suffix.js +5 -3
  693. package/es/shared/helpers/filterValidProps.d.ts +11 -0
  694. package/es/shared/helpers/filterValidProps.js +14 -0
  695. package/es/shared/helpers/withCamelCaseProps.d.ts +1 -1
  696. package/es/shared/helpers/withCamelCaseProps.js +2 -0
  697. package/es/shared/helpers/withSnakeCaseProps.d.ts +40 -0
  698. package/es/shared/helpers/withSnakeCaseProps.js +72 -0
  699. package/es/shared/interfaces.d.ts +13 -0
  700. package/es/shared/locales/en-GB.d.ts +4 -3
  701. package/es/shared/locales/en-GB.js +4 -3
  702. package/es/shared/locales/en-US.d.ts +4 -3
  703. package/es/shared/locales/index.d.ts +8 -6
  704. package/es/shared/locales/nb-NO.d.ts +4 -3
  705. package/es/shared/locales/nb-NO.js +4 -3
  706. package/es/shared/useMediaQuery.d.ts +3 -1
  707. package/es/shared/useTranslation.d.ts +1 -22
  708. package/es/style/dnb-ui-components.css +434 -154
  709. package/es/style/dnb-ui-components.min.css +5 -5
  710. package/es/style/dnb-ui-components.scss +2 -0
  711. package/es/style/dnb-ui-elements.css +45 -562
  712. package/es/style/dnb-ui-elements.min.css +1 -2
  713. package/es/style/dnb-ui-fragments.css +37 -15
  714. package/es/style/dnb-ui-fragments.min.css +1 -1
  715. package/es/style/dnb-ui-tags.css +64 -1105
  716. package/es/style/dnb-ui-tags.min.css +1 -3
  717. package/es/style/elements/_anchor-mixins.scss +6 -3
  718. package/es/style/elements/table.scss +1 -389
  719. package/es/style/elements/ui-tags.scss +2 -2
  720. package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +608 -649
  721. package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +10 -8
  722. package/es/style/themes/theme-ui/dnb-theme-ui.css +612 -653
  723. package/es/style/themes/theme-ui/dnb-theme-ui.min.css +10 -8
  724. package/es/style/themes/theme-ui/dnb-theme-ui.scss +2 -0
  725. package/esm/dnb-ui-basis.min.mjs +1 -1
  726. package/esm/dnb-ui-components.min.mjs +3 -3
  727. package/esm/dnb-ui-elements.min.mjs +9 -10
  728. package/esm/dnb-ui-extensions.min.mjs +4 -4
  729. package/esm/dnb-ui-icons.min.mjs +1 -1
  730. package/esm/dnb-ui-lib.min.mjs +4 -4
  731. package/esm/dnb-ui-web-components.min.mjs +4 -4
  732. package/fragments/drawer-list/DrawerList.d.ts +13 -0
  733. package/fragments/drawer-list/DrawerList.js +24 -12
  734. package/fragments/drawer-list/DrawerListHelpers.d.ts +20 -0
  735. package/fragments/drawer-list/DrawerListHelpers.js +15 -0
  736. package/fragments/drawer-list/DrawerListProvider.d.ts +6 -9
  737. package/fragments/drawer-list/DrawerListProvider.js +29 -43
  738. package/fragments/drawer-list/style/_drawer-list.scss +40 -5
  739. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +58 -38
  740. package/icons/bookmark.d.ts +2 -0
  741. package/icons/bookmark.js +24 -0
  742. package/icons/bookmark_medium.d.ts +2 -0
  743. package/icons/bookmark_medium.js +24 -0
  744. package/icons/calendar_cancel.d.ts +2 -0
  745. package/icons/calendar_cancel.js +20 -0
  746. package/icons/calendar_cancel_medium.d.ts +2 -0
  747. package/icons/calendar_cancel_medium.js +20 -0
  748. package/icons/exclamation.js +5 -2
  749. package/icons/exclamation_circled.js +1 -1
  750. package/icons/exclamation_medium.js +5 -2
  751. package/icons/icons-meta.json +232 -198
  752. package/icons/icons-pdf.lock +6294 -0
  753. package/icons/icons-svg.lock +6294 -1
  754. package/icons/index.d.ts +5 -1
  755. package/icons/index.js +5 -1
  756. package/icons/reply.js +2 -1
  757. package/icons/reply_medium.js +2 -1
  758. package/icons/secondary_icons.d.ts +3 -1
  759. package/icons/secondary_icons.js +3 -1
  760. package/icons/secondary_icons_medium.d.ts +3 -1
  761. package/icons/secondary_icons_medium.js +3 -1
  762. package/icons/stopwatch.js +1 -1
  763. package/index.d.ts +31 -30
  764. package/index.js +31 -30
  765. package/package.json +1 -1
  766. package/shared/AlignmentHelper.js +4 -2
  767. package/shared/AnimateHeight.d.ts +1 -0
  768. package/shared/AnimateHeight.js +18 -2
  769. package/shared/Context.d.ts +98 -44
  770. package/shared/Context.js +3 -16
  771. package/shared/Eufemia.js +1 -1
  772. package/shared/MediaQuery.d.ts +18 -37
  773. package/shared/MediaQuery.js +3 -17
  774. package/shared/MediaQueryUtils.d.ts +61 -23
  775. package/shared/MediaQueryUtils.js +2 -2
  776. package/shared/Provider.d.ts +36 -12
  777. package/shared/Provider.js +5 -12
  778. package/shared/component-helper.d.ts +1 -1
  779. package/shared/component-helper.js +5 -5
  780. package/shared/helpers/Suffix.d.ts +6 -4
  781. package/shared/helpers/Suffix.js +4 -2
  782. package/shared/helpers/filterValidProps.d.ts +11 -0
  783. package/shared/helpers/filterValidProps.js +14 -0
  784. package/shared/helpers/withCamelCaseProps.d.ts +1 -1
  785. package/shared/helpers/withCamelCaseProps.js +3 -0
  786. package/shared/helpers/withSnakeCaseProps.d.ts +40 -0
  787. package/shared/helpers/withSnakeCaseProps.js +115 -0
  788. package/shared/interfaces.d.ts +13 -0
  789. package/shared/locales/en-GB.d.ts +4 -3
  790. package/shared/locales/en-GB.js +4 -3
  791. package/shared/locales/en-US.d.ts +4 -3
  792. package/shared/locales/index.d.ts +8 -6
  793. package/shared/locales/nb-NO.d.ts +4 -3
  794. package/shared/locales/nb-NO.js +4 -3
  795. package/shared/useMediaQuery.d.ts +3 -1
  796. package/shared/useTranslation.d.ts +1 -22
  797. package/style/dnb-ui-components.css +434 -154
  798. package/style/dnb-ui-components.min.css +5 -5
  799. package/style/dnb-ui-components.scss +2 -0
  800. package/style/dnb-ui-elements.css +45 -562
  801. package/style/dnb-ui-elements.min.css +1 -2
  802. package/style/dnb-ui-fragments.css +37 -15
  803. package/style/dnb-ui-fragments.min.css +1 -1
  804. package/style/dnb-ui-tags.css +64 -1105
  805. package/style/dnb-ui-tags.min.css +1 -3
  806. package/style/elements/_anchor-mixins.scss +6 -3
  807. package/style/elements/table.scss +1 -389
  808. package/style/elements/ui-tags.scss +2 -2
  809. package/style/themes/theme-eiendom/dnb-theme-eiendom.css +608 -649
  810. package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +10 -8
  811. package/style/themes/theme-ui/dnb-theme-ui.css +612 -653
  812. package/style/themes/theme-ui/dnb-theme-ui.min.css +10 -8
  813. package/style/themes/theme-ui/dnb-theme-ui.scss +2 -0
  814. package/umd/dnb-ui-basis.min.js +1 -1
  815. package/umd/dnb-ui-components.min.js +5 -5
  816. package/umd/dnb-ui-elements.min.js +20 -21
  817. package/umd/dnb-ui-extensions.min.js +5 -5
  818. package/umd/dnb-ui-icons.min.js +1 -1
  819. package/umd/dnb-ui-lib.min.js +4 -4
  820. package/umd/dnb-ui-web-components.min.js +3 -3
  821. package/cjs/components/slider/web-component.d.ts +0 -3
  822. package/cjs/style/themes/theme-ui/prism/dnb-prism-styles.d.ts +0 -6
  823. package/cjs/style/themes/theme-ui/prism/dnb-prism-styles.js +0 -9
  824. package/components/slider/web-component.d.ts +0 -3
  825. package/components/slider/web-component.js +0 -5
  826. package/es/components/slider/web-component.d.ts +0 -3
  827. package/es/components/slider/web-component.js +0 -5
  828. package/es/style/themes/theme-ui/prism/dnb-prism-styles.d.ts +0 -6
  829. package/es/style/themes/theme-ui/prism/dnb-prism-styles.js +0 -93
  830. package/style/themes/theme-ui/prism/dnb-prism-styles.d.ts +0 -6
  831. package/style/themes/theme-ui/prism/dnb-prism-styles.js +0 -2
@@ -0,0 +1,151 @@
1
+ /*
2
+ * DNB Badge
3
+ *
4
+ */
5
+ /**
6
+ * This file is only used to make components independent
7
+ * so that they can get imported individually, without the core styles
8
+ *
9
+ */
10
+ /*
11
+ * Utilities
12
+ */
13
+ /*
14
+ * Scopes
15
+ *
16
+ */
17
+ /*
18
+ * Document Reset
19
+ *
20
+ */
21
+ .dnb-badge {
22
+ font-family: 'DNB', sans-serif;
23
+ font-family: var(--font-family-default);
24
+ font-weight: normal;
25
+ font-weight: var(--font-weight-basis);
26
+ font-size: 1rem;
27
+ font-size: var(--font-size-small);
28
+ font-style: normal;
29
+ line-height: 1.5rem;
30
+ line-height: var(--line-height-basis);
31
+ color: #333;
32
+ color: var(--color-black-80, #333);
33
+ -moz-osx-font-smoothing: grayscale;
34
+ -webkit-font-smoothing: antialiased;
35
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
36
+ /**
37
+ * Ensure consistency and use the same as HTML reset -> html {...}
38
+ * between base and code package
39
+ */
40
+ -moz-tab-size: 4;
41
+ -o-tab-size: 4;
42
+ tab-size: 4;
43
+ -ms-text-size-adjust: 100%;
44
+ -webkit-text-size-adjust: 100%;
45
+ word-break: break-word;
46
+ /**
47
+ * 1. Remove repeating backgrounds in all browsers (opinionated).
48
+ * 2. Add border box sizing in all browsers (opinionated).
49
+ */
50
+ /**
51
+ * 1. Add text decoration inheritance in all browsers (opinionated).
52
+ * 2. Add vertical alignment inheritance in all browsers (opinionated).
53
+ */
54
+ margin: 0;
55
+ padding: 0; }
56
+ .dnb-badge *,
57
+ .dnb-badge ::before,
58
+ .dnb-badge ::after {
59
+ background-repeat: no-repeat;
60
+ /* 1 */
61
+ -webkit-box-sizing: border-box;
62
+ box-sizing: border-box;
63
+ /* 2 */ }
64
+ .dnb-badge ::before,
65
+ .dnb-badge ::after {
66
+ text-decoration: inherit;
67
+ /* 1 */
68
+ vertical-align: inherit;
69
+ /* 2 */ }
70
+
71
+ /*
72
+ * Badge component
73
+ *
74
+ */
75
+ :root {
76
+ --badge-font-size: var(--font-size-x-small);
77
+ --badge-width: 1.5rem;
78
+ --badge-height: 1.5rem;
79
+ --badge-border-radius-information: calc(var(--badge-height)/4);
80
+ --badge-border-radius-information: calc(var(--badge-height) / 4);
81
+ --badge-border-radius-notification: calc(var(--badge-height)/2);
82
+ --badge-border-radius-notification: calc(var(--badge-height) / 2);
83
+ --badge-line-height: var(--line-height-x-small); }
84
+
85
+ .dnb-badge {
86
+ display: -webkit-inline-box;
87
+ display: -ms-inline-flexbox;
88
+ display: inline-flex;
89
+ font-weight: 500;
90
+ font-weight: var(--font-weight-medium);
91
+ -webkit-box-orient: horizontal;
92
+ -webkit-box-direction: normal;
93
+ -ms-flex-direction: row;
94
+ flex-direction: row;
95
+ white-space: nowrap;
96
+ -ms-flex-wrap: wrap;
97
+ flex-wrap: wrap;
98
+ -webkit-box-pack: center;
99
+ -ms-flex-pack: center;
100
+ justify-content: center;
101
+ -ms-flex-line-pack: center;
102
+ align-content: center;
103
+ -webkit-box-align: center;
104
+ -ms-flex-align: center;
105
+ align-items: center;
106
+ width: 1.5rem;
107
+ width: var(--badge-width);
108
+ height: 1.5rem;
109
+ height: var(--badge-height);
110
+ font-size: 0.875rem;
111
+ font-size: var(--badge-font-size); }
112
+ .dnb-badge,
113
+ .dnb-core-style .dnb-badge {
114
+ line-height: 1.125rem;
115
+ line-height: var(--badge-line-height); }
116
+ .dnb-badge__root {
117
+ position: relative;
118
+ display: -webkit-inline-box;
119
+ display: -ms-inline-flexbox;
120
+ display: inline-flex;
121
+ vertical-align: middle;
122
+ -ms-flex-negative: 0;
123
+ flex-shrink: 0; }
124
+ .dnb-badge__root .dnb-badge {
125
+ display: -webkit-box;
126
+ display: -ms-flexbox;
127
+ display: flex;
128
+ overflow: hidden;
129
+ position: absolute;
130
+ z-index: 2; }
131
+ .dnb-badge--variant-notification {
132
+ border-radius: 0.75rem;
133
+ border-radius: calc(1.5rem / 2);
134
+ border-radius: var(--badge-border-radius-notification); }
135
+ .dnb-badge--variant-information {
136
+ border-radius: 0.375rem;
137
+ border-radius: calc(1.5rem / 4);
138
+ border-radius: var(--badge-border-radius-information);
139
+ min-width: 1.5rem;
140
+ min-width: var(--badge-width);
141
+ width: auto;
142
+ padding: 0 0.25rem;
143
+ padding: 0 var(--spacing-xx-small); }
144
+ .dnb-badge--horizontal-left {
145
+ left: 0; }
146
+ .dnb-badge--horizontal-right {
147
+ right: 0; }
148
+ .dnb-badge--vertical-bottom {
149
+ bottom: 0; }
150
+ .dnb-badge--vertical-top {
151
+ top: 0; }
@@ -0,0 +1 @@
1
+ .dnb-badge{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-badge *,.dnb-badge :after,.dnb-badge :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-badge :after,.dnb-badge :before{text-decoration:inherit;vertical-align:inherit}:root{--badge-font-size:var(--font-size-x-small);--badge-width:1.5rem;--badge-height:1.5rem;--badge-border-radius-information:calc(var(--badge-height)/4);--badge-border-radius-notification:calc(var(--badge-height)/2);--badge-line-height:var(--line-height-x-small)}.dnb-badge{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;-ms-flex-line-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-content:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;font-size:.875rem;font-size:var(--badge-font-size);font-weight:500;font-weight:var(--font-weight-medium);height:1.5rem;height:var(--badge-height);justify-content:center;white-space:nowrap;width:1.5rem;width:var(--badge-width)}.dnb-badge,.dnb-core-style .dnb-badge{line-height:1.125rem;line-height:var(--badge-line-height)}.dnb-badge__root{-ms-flex-negative:0;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;flex-shrink:0;position:relative;vertical-align:middle}.dnb-badge__root .dnb-badge{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;position:absolute;z-index:2}.dnb-badge--variant-notification{border-radius:.75rem;border-radius:var(--badge-border-radius-notification)}.dnb-badge--variant-information{border-radius:.375rem;border-radius:var(--badge-border-radius-information);min-width:1.5rem;min-width:var(--badge-width);padding:0 .25rem;padding:0 var(--spacing-xx-small);width:auto}.dnb-badge--horizontal-left{left:0}.dnb-badge--horizontal-right{right:0}.dnb-badge--vertical-bottom{bottom:0}.dnb-badge--vertical-top{top:0}
@@ -0,0 +1,12 @@
1
+ /*
2
+ * DNB Badge
3
+ *
4
+ */
5
+
6
+ @import '../../../style/components/imports.scss';
7
+
8
+ .dnb-badge {
9
+ @include componentReset();
10
+ }
11
+
12
+ @import './_badge.scss';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Web Style Import
3
+ *
4
+ */
5
+
6
+ import './dnb-badge.scss';
@@ -0,0 +1 @@
1
+ import "./dnb-badge.min.css";
@@ -0,0 +1,21 @@
1
+ /*
2
+ * Badge theme
3
+ *
4
+ */
5
+ /**
6
+ * This file is only used to make themes independent
7
+ * so that they can get imported individually, without the core styles
8
+ *
9
+ */
10
+ /*
11
+ * Utilities
12
+ */
13
+ .dnb-badge {
14
+ color: #fff;
15
+ color: var(--color-white); }
16
+ .dnb-badge--variant-information {
17
+ background-color: #14555a;
18
+ background-color: var(--color-emerald-green); }
19
+ .dnb-badge--variant-notification {
20
+ background-color: #dc2a2a;
21
+ background-color: var(--color-fire-red); }
@@ -0,0 +1 @@
1
+ .dnb-badge{color:#fff;color:var(--color-white)}.dnb-badge--variant-information{background-color:#14555a;background-color:var(--color-emerald-green)}.dnb-badge--variant-notification{background-color:#dc2a2a;background-color:var(--color-fire-red)}
@@ -0,0 +1,17 @@
1
+ /*
2
+ * Badge theme
3
+ *
4
+ */
5
+
6
+ @import '../../../../style/themes/imports.scss';
7
+
8
+ .dnb-badge {
9
+ color: var(--color-white);
10
+
11
+ &--variant-information {
12
+ background-color: var(--color-emerald-green);
13
+ }
14
+ &--variant-notification {
15
+ background-color: var(--color-fire-red);
16
+ }
17
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ import "./dnb-badge-theme-ui.min.css";
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ import "./style/dnb-badge.min.css";
@@ -11,7 +11,7 @@ import { useMediaQuery } from '../../shared';
11
11
  import Context from '../../shared/Context';
12
12
  import { usePropsWithContext } from '../../shared/hooks';
13
13
  import BreadcrumbItem from './BreadcrumbItem';
14
- import { convertJsxToString } from '../../shared/component-helper';
14
+ import { convertJsxToString, validateDOMAttributes } from '../../shared/component-helper';
15
15
  export const defaultProps = {
16
16
  skeleton: false,
17
17
  navText: 'Back',
@@ -28,11 +28,11 @@ const Breadcrumb = localProps => {
28
28
  var _context$translation;
29
29
 
30
30
  const context = React.useContext(Context);
31
-
32
- const _usePropsWithContext = usePropsWithContext(localProps, defaultProps, context === null || context === void 0 ? void 0 : (_context$translation = context.translation) === null || _context$translation === void 0 ? void 0 : _context$translation.Breadcrumb, context === null || context === void 0 ? void 0 : context.Breadcrumb, {
31
+ const allProps = usePropsWithContext(localProps, defaultProps, context === null || context === void 0 ? void 0 : (_context$translation = context.translation) === null || _context$translation === void 0 ? void 0 : _context$translation.Breadcrumb, context === null || context === void 0 ? void 0 : context.Breadcrumb, {
33
32
  skeleton: context === null || context === void 0 ? void 0 : context.skeleton
34
- }),
35
- {
33
+ });
34
+
35
+ const {
36
36
  className,
37
37
  skeleton,
38
38
  children: childrenItems,
@@ -48,8 +48,8 @@ const Breadcrumb = localProps => {
48
48
  spacing,
49
49
  data,
50
50
  href
51
- } = _usePropsWithContext,
52
- props = _objectWithoutProperties(_usePropsWithContext, _excluded);
51
+ } = allProps,
52
+ props = _objectWithoutProperties(allProps, _excluded);
53
53
 
54
54
  const skeletonClasses = createSkeletonClass('font', skeleton, context);
55
55
  const spacingClasses = createSpacingClasses(props);
@@ -81,6 +81,7 @@ const Breadcrumb = localProps => {
81
81
  variant: i == 0 && 'home' || i == data.length - 1 && 'current' || null
82
82
  }, breadcrumbItem))), childrenItems);
83
83
 
84
+ validateDOMAttributes(allProps, props);
84
85
  return React.createElement("nav", _extends({
85
86
  "aria-label": convertJsxToString(navText),
86
87
  className: classnames('dnb-breadcrumb', skeletonClasses, spacingClasses, className, spacing && 'dnb-breadcrumb--spacing'),
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { SkeletonShow } from '../skeleton/Skeleton';
3
3
  import { IconPrimaryIcon } from '../icon-primary/IconPrimary';
4
+ import { DataAttributeTypes } from '../../shared/interfaces';
4
5
  export type ButtonText = string | React.ReactNode;
5
6
  export type ButtonVariant =
6
7
  | 'primary'
@@ -72,9 +73,10 @@ export type ButtonOnClick = string | ((...args: any[]) => any);
72
73
 
73
74
  export interface ButtonProps
74
75
  extends Omit<
75
- React.HTMLProps<HTMLElement>,
76
- 'disabled' | 'size' | 'title' | 'wrap'
77
- > {
76
+ React.HTMLProps<HTMLElement>,
77
+ 'disabled' | 'size' | 'title' | 'wrap'
78
+ >,
79
+ Partial<DataAttributeTypes> {
78
80
  /**
79
81
  * The content of the button can be a string or a React Element.
80
82
  */
@@ -38,6 +38,7 @@ export type DatePickerShortcuts = any[] | ((...args: any[]) => any);
38
38
  export type DatePickerDisabled = string | boolean;
39
39
  export type DatePickerStretch = string | boolean;
40
40
  export type DatePickerSkeleton = string | boolean;
41
+ export type DatePickerSize = 'default' | 'small' | 'medium' | 'large';
41
42
  export type DatePickerStatus =
42
43
  | string
43
44
  | boolean
@@ -268,6 +269,11 @@ export interface DatePickerProps extends React.HTMLProps<HTMLElement> {
268
269
  */
269
270
  skeleton?: DatePickerSkeleton;
270
271
 
272
+ /**
273
+ * The sizes you can choose is `small` (1.5rem), `default` (2rem), `medium` (2.5rem) and `large` (3rem) are supported component sizes. Defaults to `default` / `null`.
274
+ */
275
+ size?: DatePickerSize;
276
+
271
277
  /**
272
278
  * Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.
273
279
  */
@@ -5,7 +5,7 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
5
  var _AlignmentHelper;
6
6
 
7
7
  const _excluded = ["hidePicker"],
8
- _excluded2 = ["label", "title", "label_direction", "label_sr_only", "only_month", "hide_last_week", "disable_autofocus", "enable_keyboard_nav", "hide_navigation_buttons", "show_input", "range", "first_day", "reset_date", "locale", "link", "sync", "input_element", "addon_element", "shortcuts", "disabled", "stretch", "skeleton", "status", "status_state", "status_props", "status_no_animation", "global_status_id", "suffix", "mask_order", "mask_placeholder", "align_picker", "reset_button_text", "hide_navigation", "return_format", "date_format", "hide_days", "month", "date", "start_date", "end_date", "min_date", "max_date", "correct_invalid_date", "opened", "direction", "id", "className", "class", "show_submit_button", "show_cancel_button", "show_reset_button"];
8
+ _excluded2 = ["label", "title", "label_direction", "label_sr_only", "only_month", "hide_last_week", "disable_autofocus", "enable_keyboard_nav", "hide_navigation_buttons", "show_input", "range", "first_day", "reset_date", "locale", "link", "sync", "input_element", "addon_element", "shortcuts", "disabled", "stretch", "skeleton", "size", "status", "status_state", "status_props", "status_no_animation", "global_status_id", "suffix", "mask_order", "mask_placeholder", "align_picker", "reset_button_text", "hide_navigation", "return_format", "date_format", "hide_days", "month", "date", "start_date", "end_date", "min_date", "max_date", "correct_invalid_date", "opened", "direction", "id", "className", "class", "show_submit_button", "show_cancel_button", "show_reset_button"];
9
9
 
10
10
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
11
11
 
@@ -43,6 +43,7 @@ export default class DatePicker extends React.PureComponent {
43
43
  show_input,
44
44
  align_picker
45
45
  } = this.props;
46
+ const triangleWidth = 16;
46
47
 
47
48
  if (isTrue(show_input) && this._triangleRef.current && this._innerRef.current) {
48
49
  try {
@@ -51,10 +52,10 @@ export default class DatePicker extends React.PureComponent {
51
52
  const buttonWidth = this._innerRef.current.querySelector('.dnb-input__submit-button__button').getBoundingClientRect().width;
52
53
 
53
54
  if (align_picker === 'right') {
54
- const distance = buttonWidth / 2 - 8;
55
+ const distance = buttonWidth / 2 - triangleWidth / 2;
55
56
  this._triangleRef.current.style.marginRight = `${distance / 16}rem`;
56
57
  } else {
57
- const distance = shellWidth - buttonWidth / 2 - 8;
58
+ const distance = shellWidth - buttonWidth / 2 - triangleWidth / 2;
58
59
  this._triangleRef.current.style.marginLeft = `${distance / 16}rem`;
59
60
  }
60
61
  } catch (e) {
@@ -243,6 +244,7 @@ export default class DatePicker extends React.PureComponent {
243
244
  disabled,
244
245
  stretch,
245
246
  skeleton,
247
+ size,
246
248
  status,
247
249
  status_state,
248
250
  status_props,
@@ -304,7 +306,7 @@ export default class DatePicker extends React.PureComponent {
304
306
  };
305
307
  const selectedDateTitle = this.formatSelectedDateTitle();
306
308
  const mainParams = {
307
- className: classnames("dnb-date-picker dnb-form-component", (isTrue(range) || isTrue(show_submit_button) || isTrue(show_cancel_button) || isTrue(show_reset_button)) && 'dnb-date-picker--show-footer', createSpacingClasses(props), _className, className, status && `dnb-date-picker__status--${status_state}`, label_direction && `dnb-date-picker--${label_direction}`, opened && 'dnb-date-picker--opened', hidden && 'dnb-date-picker--hidden', showInput && 'dnb-date-picker--show-input', align_picker && `dnb-date-picker--${align_picker}`, isTrue(stretch) && `dnb-date-picker--stretch`)
309
+ className: classnames("dnb-date-picker dnb-form-component", (isTrue(range) || isTrue(show_submit_button) || isTrue(show_cancel_button) || isTrue(show_reset_button)) && 'dnb-date-picker--show-footer', createSpacingClasses(props), _className, className, status && `dnb-date-picker__status--${status_state}`, label_direction && `dnb-date-picker--${label_direction}`, opened && 'dnb-date-picker--opened', hidden && 'dnb-date-picker--hidden', showInput && 'dnb-date-picker--show-input', align_picker && `dnb-date-picker--${align_picker}`, isTrue(stretch) && `dnb-date-picker--stretch`, size && `dnb-date-picker--${size}`)
308
310
  };
309
311
 
310
312
  if (locale !== null && locale !== void 0 && locale.code) {
@@ -362,6 +364,7 @@ export default class DatePicker extends React.PureComponent {
362
364
  input_element: input_element,
363
365
  opened: opened,
364
366
  hidden: hidden,
367
+ size: size,
365
368
  status: status ? 'error' : null,
366
369
  status_state: status_state,
367
370
  locale: locale
@@ -462,6 +465,7 @@ _defineProperty(DatePicker, "defaultProps", {
462
465
  disabled: null,
463
466
  stretch: null,
464
467
  skeleton: null,
468
+ size: null,
465
469
  status: null,
466
470
  status_state: 'error',
467
471
  status_props: null,
@@ -534,6 +538,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = _objectSpread(_ob
534
538
  disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
535
539
  stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
536
540
  skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
541
+ size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),
537
542
  status: PropTypes.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.func, PropTypes.node]),
538
543
  status_state: PropTypes.string,
539
544
  status_props: PropTypes.object,
@@ -97,21 +97,21 @@ export default class DatePickerFooter extends React.PureComponent {
97
97
  }, (isRange || isTrue(show_submit_button)) && React.createElement(Button, {
98
98
  text: submit_button_text,
99
99
  onClick: this.onSubmitHandler,
100
- "data-visual-test": "submit"
100
+ "data-testid": "submit"
101
101
  }) || _span || (_span = React.createElement("span", null)), React.createElement("span", null, isTrue(show_reset_button) && React.createElement(Button, {
102
102
  text: resetButtonText || reset_button_text_translation,
103
103
  icon: "reset",
104
104
  icon_position: "left",
105
105
  variant: "tertiary",
106
106
  onClick: this.onResetHandler,
107
- "data-visual-test": "reset"
107
+ "data-testid": "reset"
108
108
  }) || _span2 || (_span2 = React.createElement("span", null)), (isRange || isTrue(show_cancel_button)) && React.createElement(Button, {
109
109
  text: cancel_button_text,
110
110
  icon: "close",
111
111
  icon_position: "left",
112
112
  variant: "tertiary",
113
113
  onClick: this.onCancelHandler,
114
- "data-visual-test": "cancel"
114
+ "data-testid": "cancel"
115
115
  }) || _span3 || (_span3 = React.createElement("span", null))));
116
116
  }
117
117
 
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ export type DatePickerInputSize = 'default' | 'small' | 'medium' | 'large';
2
3
  export type DatePickerInputStatus =
3
4
  | string
4
5
  | boolean
@@ -23,6 +24,11 @@ export interface DatePickerInputProps
23
24
  submitAttributes?: Object;
24
25
  isRange?: boolean;
25
26
 
27
+ /**
28
+ * The sizes you can choose is `small` (1.5rem), `default` (2rem), `medium` (2.5rem) and `large` (3rem) are supported component sizes. Defaults to `default` / `null`.
29
+ */
30
+ size?: DatePickerInputSize;
31
+
26
32
  /**
27
33
  * Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.
28
34
  */
@@ -1,7 +1,7 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- const _excluded = ["id", "title", "submitAttributes", "isRange", "maskOrder", "maskPlaceholder", "separatorRexExp", "onChange", "onFocus", "onSubmit", "selectedDateTitle", "showInput", "input_element", "locale", "disabled", "skeleton", "opened", "status", "status_state", "status_props"];
4
+ const _excluded = ["id", "title", "submitAttributes", "isRange", "maskOrder", "maskPlaceholder", "separatorRexExp", "onChange", "onFocus", "onSubmit", "selectedDateTitle", "showInput", "input_element", "locale", "disabled", "skeleton", "opened", "size", "status", "status_state", "status_props"];
5
5
 
6
6
  var _span;
7
7
 
@@ -178,40 +178,44 @@ export default class DatePickerInput extends React.PureComponent {
178
178
  target,
179
179
  event
180
180
  }) => {
181
- const isDate = target.getAttribute('class').match(/__input--([day|month|year]+)($|\s)/)[1];
182
- const isInRange = target.getAttribute('id').match(/[0-9]-([start|end]+)-/)[1];
183
- let date = isInRange === 'start' ? this.context.startDate : this.context.endDate;
181
+ try {
182
+ const isDate = target.getAttribute('class').match(/__input--([day|month|year]+)($|\s)/)[1];
183
+ const isInRange = target.getAttribute('id').match(/-([start|end]+)-/)[1];
184
+ let date = isInRange === 'start' ? this.context.startDate : this.context.endDate;
184
185
 
185
- if (!date) {
186
- return;
187
- }
186
+ if (!date) {
187
+ return;
188
+ }
188
189
 
189
- const count = keyCode === 'up' ? 1 : -1;
190
+ const count = keyCode === 'up' ? 1 : -1;
190
191
 
191
- if (keyCode === 'up' || keyCode === 'down') {
192
- switch (isDate) {
193
- case 'day':
194
- date = addDays(date, count);
195
- break;
192
+ if (keyCode === 'up' || keyCode === 'down') {
193
+ switch (isDate) {
194
+ case 'day':
195
+ date = addDays(date, count);
196
+ break;
196
197
 
197
- case 'month':
198
- date = addMonths(date, count);
199
- break;
198
+ case 'month':
199
+ date = addMonths(date, count);
200
+ break;
200
201
 
201
- case 'year':
202
- date = addYears(date, count);
203
- break;
202
+ case 'year':
203
+ date = addYears(date, count);
204
+ break;
205
+ }
204
206
  }
205
- }
206
207
 
207
- this.callOnChange({
208
- [isInRange === 'start' ? 'startDate' : 'endDate']: date,
209
- event
210
- });
211
- await wait(1);
212
- const endPos = target.value.length;
213
- target.focus();
214
- target.setSelectionRange(0, endPos);
208
+ this.callOnChange({
209
+ [isInRange === 'start' ? 'startDate' : 'endDate']: date,
210
+ event
211
+ });
212
+ await wait(1);
213
+ const endPos = target.value.length;
214
+ target.focus();
215
+ target.setSelectionRange(0, endPos);
216
+ } catch (e) {
217
+ warn(e);
218
+ }
215
219
  });
216
220
 
217
221
  _defineProperty(this, "onFocusHandler", event => {
@@ -422,7 +426,8 @@ export default class DatePickerInput extends React.PureComponent {
422
426
  const {
423
427
  input_element,
424
428
  separatorRexExp,
425
- isRange
429
+ isRange,
430
+ size
426
431
  } = this.props;
427
432
  const {
428
433
  day,
@@ -447,6 +452,7 @@ export default class DatePickerInput extends React.PureComponent {
447
452
  }
448
453
 
449
454
  const DateField = input_element && React.isValidElement(input_element) ? input_element : InputElement;
455
+ const inputSizeClassName = size && `dnb-date-picker__input--${size}`;
450
456
 
451
457
  switch (state) {
452
458
  case 'd':
@@ -456,7 +462,7 @@ export default class DatePickerInput extends React.PureComponent {
456
462
  }, React.createElement(DateField, _extends({}, params, {
457
463
  id: `${this.props.id}-${mode}-day`,
458
464
  key: 'di' + i,
459
- className: classnames("dnb-date-picker__input dnb-date-picker__input--day", params.className),
465
+ className: classnames("dnb-date-picker__input dnb-date-picker__input--day", params.className, inputSizeClassName),
460
466
  size: "2",
461
467
  mask: [/[0-3]/, /[0-9]/],
462
468
  inputRef: this[`_${mode}DayRef`],
@@ -476,7 +482,7 @@ export default class DatePickerInput extends React.PureComponent {
476
482
  }, React.createElement(DateField, _extends({}, params, {
477
483
  id: `${this.props.id}-${mode}-month`,
478
484
  key: 'mi' + i,
479
- className: classnames("dnb-date-picker__input dnb-date-picker__input--month", params.className),
485
+ className: classnames("dnb-date-picker__input dnb-date-picker__input--month", params.className, inputSizeClassName),
480
486
  size: "2",
481
487
  mask: [/[0-1]/, /[0-9]/],
482
488
  inputRef: this[`_${mode}MonthRef`],
@@ -496,7 +502,7 @@ export default class DatePickerInput extends React.PureComponent {
496
502
  }, React.createElement(DateField, _extends({}, params, {
497
503
  id: `${this.props.id}-${mode}-year`,
498
504
  key: 'yi' + i,
499
- className: classnames("dnb-date-picker__input dnb-date-picker__input--year", params.className),
505
+ className: classnames("dnb-date-picker__input dnb-date-picker__input--year", params.className, inputSizeClassName),
500
506
  size: "4",
501
507
  mask: [/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/],
502
508
  inputRef: this[`_${mode}YearRef`],
@@ -549,6 +555,7 @@ export default class DatePickerInput extends React.PureComponent {
549
555
  disabled,
550
556
  skeleton,
551
557
  opened,
558
+ size,
552
559
  status,
553
560
  status_state,
554
561
  status_props
@@ -578,6 +585,7 @@ export default class DatePickerInput extends React.PureComponent {
578
585
  input_element: input_element && typeof input_element !== 'string' ? typeof input_element === 'function' ? input_element(this.props) : input_element : this.renderInputElement,
579
586
  disabled: disabled || skeleton,
580
587
  skeleton: skeleton,
588
+ size: size,
581
589
  status: !opened ? status : null,
582
590
  status_state: status_state
583
591
  }, status_props, {
@@ -588,6 +596,7 @@ export default class DatePickerInput extends React.PureComponent {
588
596
  className: classnames(showInput && 'dnb-button--input-button', opened && 'dnb-button--active'),
589
597
  "aria-label": this.formatDate(),
590
598
  title: title,
599
+ size: size,
591
600
  status: status,
592
601
  status_state: status_state,
593
602
  type: "button",
@@ -613,6 +622,7 @@ _defineProperty(DatePickerInput, "defaultProps", {
613
622
  separatorRexExp: /[-/ ]/g,
614
623
  submitAttributes: null,
615
624
  isRange: null,
625
+ size: null,
616
626
  status: null,
617
627
  status_state: 'error',
618
628
  status_props: null,
@@ -636,6 +646,7 @@ process.env.NODE_ENV !== "production" ? DatePickerInput.propTypes = {
636
646
  separatorRexExp: PropTypes.instanceOf(RegExp),
637
647
  submitAttributes: PropTypes.object,
638
648
  isRange: PropTypes.bool,
649
+ size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),
639
650
  status: PropTypes.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.func, PropTypes.node]),
640
651
  status_state: PropTypes.string,
641
652
  status_props: PropTypes.object,