@dnb/eufemia 9.39.1 → 9.41.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 (356) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/cjs/components/accordion/style/_accordion.scss +2 -2
  3. package/cjs/components/accordion/style/dnb-accordion.css +3 -3
  4. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  5. package/cjs/components/autocomplete/style/dnb-autocomplete.css +3 -14
  6. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
  7. package/cjs/components/checkbox/style/dnb-checkbox.css +0 -7
  8. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  9. package/cjs/components/date-picker/style/dnb-date-picker.css +3 -35
  10. package/cjs/components/date-picker/style/dnb-date-picker.min.css +2 -2
  11. package/cjs/components/dialog/Dialog.d.ts +1 -1
  12. package/cjs/components/dialog/parts/DialogAction.d.ts +5 -4
  13. package/cjs/components/dialog/parts/DialogAction.js +23 -4
  14. package/cjs/components/dialog/style/_dialog.scss +7 -30
  15. package/cjs/components/dialog/style/dnb-dialog.css +21 -44
  16. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  17. package/cjs/components/dialog/style/themes/dnb-dialog-theme-ui.css +20 -0
  18. package/cjs/components/dialog/style/themes/dnb-dialog-theme-ui.min.css +1 -1
  19. package/cjs/components/dialog/style/themes/dnb-dialog-theme-ui.scss +29 -0
  20. package/cjs/components/drawer/style/_drawer.scss +1 -0
  21. package/cjs/components/drawer/style/dnb-drawer.css +12 -22
  22. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  23. package/cjs/components/drawer/types.d.ts +5 -5
  24. package/cjs/components/dropdown/style/dnb-dropdown.css +0 -7
  25. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  26. package/cjs/components/form-label/FormLabel.js +1 -1
  27. package/cjs/components/form-label/style/_form-label.scss +0 -13
  28. package/cjs/components/form-label/style/dnb-form-label.css +0 -7
  29. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  30. package/cjs/components/form-row/style/dnb-form-row.css +0 -7
  31. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  32. package/cjs/components/input/style/_input.scss +4 -0
  33. package/cjs/components/input/style/dnb-input.css +3 -7
  34. package/cjs/components/input/style/dnb-input.min.css +1 -1
  35. package/cjs/components/input-masked/style/dnb-input-masked.css +3 -7
  36. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  37. package/cjs/components/lib.d.ts +1 -1
  38. package/cjs/components/modal/Modal.d.ts +2 -2
  39. package/cjs/components/modal/style/dnb-modal.css +11 -22
  40. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  41. package/cjs/components/number-format/NumberFormat.js +1 -1
  42. package/cjs/components/number-format/NumberUtils.d.ts +3 -0
  43. package/cjs/components/radio/style/dnb-radio.css +0 -7
  44. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  45. package/cjs/components/slider/style/dnb-slider.css +0 -7
  46. package/cjs/components/slider/style/dnb-slider.min.css +1 -1
  47. package/cjs/components/switch/style/dnb-switch.css +0 -7
  48. package/cjs/components/switch/style/dnb-switch.min.css +1 -1
  49. package/cjs/components/table/Table.d.ts +2 -0
  50. package/cjs/components/table/Table.js +14 -50
  51. package/cjs/components/table/TableAccordion.d.ts +10 -0
  52. package/cjs/components/table/TableAccordion.js +265 -0
  53. package/cjs/components/table/TableAccordionContent.d.ts +18 -0
  54. package/cjs/components/table/TableAccordionContent.js +126 -0
  55. package/cjs/components/table/TableContainer.js +3 -2
  56. package/cjs/components/table/TableScrollView.js +2 -1
  57. package/cjs/components/table/TableStickyHeader.d.ts +4 -1
  58. package/cjs/components/table/TableStickyHeader.js +112 -83
  59. package/cjs/components/table/TableTd.d.ts +6 -1
  60. package/cjs/components/table/TableTd.js +5 -1
  61. package/cjs/components/table/TableTh.d.ts +4 -4
  62. package/cjs/components/table/TableTh.js +6 -1
  63. package/cjs/components/table/TableTr.d.ts +27 -0
  64. package/cjs/components/table/TableTr.js +95 -18
  65. package/cjs/components/table/style/_table-accordion.scss +280 -0
  66. package/cjs/components/table/style/_table-cell.scss +4 -4
  67. package/cjs/components/table/style/_table-container.scss +7 -17
  68. package/cjs/components/table/style/_table-deprecated.scss +74 -0
  69. package/cjs/components/table/style/_table-header-buttons.scss +2 -1
  70. package/cjs/components/table/style/_table-sticky.scss +24 -23
  71. package/cjs/components/table/style/_table-td.scss +46 -38
  72. package/cjs/components/table/style/_table-th.scss +44 -0
  73. package/cjs/components/table/style/_table-tr.scss +8 -2
  74. package/cjs/components/table/style/_table.scss +21 -77
  75. package/cjs/components/table/style/dnb-table.css +538 -271
  76. package/cjs/components/table/style/dnb-table.min.css +11 -2
  77. package/cjs/components/table/style/themes/dnb-table-theme-ui.css +82 -63
  78. package/cjs/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
  79. package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +49 -16
  80. package/cjs/components/textarea/style/dnb-textarea.css +0 -7
  81. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  82. package/cjs/components/toggle-button/style/dnb-toggle-button.css +0 -21
  83. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  84. package/cjs/components/visually-hidden/VisuallyHidden.d.ts +2 -11
  85. package/cjs/components/visually-hidden/VisuallyHidden.js +2 -5
  86. package/cjs/components/visually-hidden/style/_visually-hidden.scss +0 -8
  87. package/cjs/components/visually-hidden/style/dnb-visually-hidden.css +10 -42
  88. package/cjs/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  89. package/cjs/elements/Element.d.ts +1 -1
  90. package/cjs/fragments/lib.d.ts +4 -7
  91. package/cjs/fragments/scroll-view/ScrollView.d.ts +12 -11
  92. package/cjs/fragments/scroll-view/ScrollView.js +8 -5
  93. package/cjs/fragments/scroll-view/style/_scroll-view.scss +8 -0
  94. package/cjs/shared/Eufemia.js +1 -1
  95. package/cjs/shared/helpers.js +7 -1
  96. package/cjs/shared/locales/en-GB.d.ts +4 -0
  97. package/cjs/shared/locales/en-GB.js +4 -0
  98. package/cjs/shared/locales/en-US.d.ts +4 -0
  99. package/cjs/shared/locales/index.d.ts +8 -0
  100. package/cjs/shared/locales/nb-NO.d.ts +4 -0
  101. package/cjs/shared/locales/nb-NO.js +4 -0
  102. package/cjs/style/core/helper-classes/helper-classes.scss +3 -0
  103. package/cjs/style/core/utilities.scss +15 -16
  104. package/cjs/style/dnb-ui-basis.css +20 -13
  105. package/cjs/style/dnb-ui-basis.min.css +1 -1
  106. package/cjs/style/dnb-ui-components.css +599 -365
  107. package/cjs/style/dnb-ui-components.min.css +13 -4
  108. package/cjs/style/dnb-ui-core.css +20 -13
  109. package/cjs/style/dnb-ui-core.min.css +1 -1
  110. package/cjs/style/dnb-ui-fragments.css +14 -0
  111. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  112. package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +102 -63
  113. package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
  114. package/cjs/style/themes/theme-ui/dnb-theme-ui.css +102 -63
  115. package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
  116. package/components/accordion/style/_accordion.scss +2 -2
  117. package/components/accordion/style/dnb-accordion.css +3 -3
  118. package/components/accordion/style/dnb-accordion.min.css +1 -1
  119. package/components/autocomplete/style/dnb-autocomplete.css +3 -14
  120. package/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
  121. package/components/checkbox/style/dnb-checkbox.css +0 -7
  122. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  123. package/components/date-picker/style/dnb-date-picker.css +3 -35
  124. package/components/date-picker/style/dnb-date-picker.min.css +2 -2
  125. package/components/dialog/Dialog.d.ts +1 -1
  126. package/components/dialog/parts/DialogAction.d.ts +5 -4
  127. package/components/dialog/parts/DialogAction.js +19 -11
  128. package/components/dialog/style/_dialog.scss +7 -30
  129. package/components/dialog/style/dnb-dialog.css +21 -44
  130. package/components/dialog/style/dnb-dialog.min.css +1 -1
  131. package/components/dialog/style/themes/dnb-dialog-theme-ui.css +20 -0
  132. package/components/dialog/style/themes/dnb-dialog-theme-ui.min.css +1 -1
  133. package/components/dialog/style/themes/dnb-dialog-theme-ui.scss +29 -0
  134. package/components/drawer/style/_drawer.scss +1 -0
  135. package/components/drawer/style/dnb-drawer.css +12 -22
  136. package/components/drawer/style/dnb-drawer.min.css +1 -1
  137. package/components/drawer/types.d.ts +5 -5
  138. package/components/dropdown/style/dnb-dropdown.css +0 -7
  139. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  140. package/components/form-label/FormLabel.js +1 -1
  141. package/components/form-label/style/_form-label.scss +0 -13
  142. package/components/form-label/style/dnb-form-label.css +0 -7
  143. package/components/form-label/style/dnb-form-label.min.css +1 -1
  144. package/components/form-row/style/dnb-form-row.css +0 -7
  145. package/components/form-row/style/dnb-form-row.min.css +1 -1
  146. package/components/input/style/_input.scss +4 -0
  147. package/components/input/style/dnb-input.css +3 -7
  148. package/components/input/style/dnb-input.min.css +1 -1
  149. package/components/input-masked/style/dnb-input-masked.css +3 -7
  150. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  151. package/components/lib.d.ts +1 -1
  152. package/components/modal/Modal.d.ts +2 -2
  153. package/components/modal/style/dnb-modal.css +11 -22
  154. package/components/modal/style/dnb-modal.min.css +1 -1
  155. package/components/number-format/NumberFormat.js +1 -1
  156. package/components/number-format/NumberUtils.d.ts +3 -0
  157. package/components/radio/style/dnb-radio.css +0 -7
  158. package/components/radio/style/dnb-radio.min.css +1 -1
  159. package/components/slider/style/dnb-slider.css +0 -7
  160. package/components/slider/style/dnb-slider.min.css +1 -1
  161. package/components/switch/style/dnb-switch.css +0 -7
  162. package/components/switch/style/dnb-switch.min.css +1 -1
  163. package/components/table/Table.d.ts +2 -0
  164. package/components/table/Table.js +12 -20
  165. package/components/table/TableAccordion.d.ts +10 -0
  166. package/components/table/TableAccordion.js +192 -0
  167. package/components/table/TableAccordionContent.d.ts +18 -0
  168. package/components/table/TableAccordionContent.js +63 -0
  169. package/components/table/TableContainer.js +2 -1
  170. package/components/table/TableScrollView.js +2 -1
  171. package/components/table/TableStickyHeader.d.ts +4 -1
  172. package/components/table/TableStickyHeader.js +112 -51
  173. package/components/table/TableTd.d.ts +6 -1
  174. package/components/table/TableTd.js +3 -1
  175. package/components/table/TableTh.d.ts +4 -4
  176. package/components/table/TableTh.js +6 -1
  177. package/components/table/TableTr.d.ts +27 -0
  178. package/components/table/TableTr.js +59 -16
  179. package/components/table/style/_table-accordion.scss +280 -0
  180. package/components/table/style/_table-cell.scss +4 -4
  181. package/components/table/style/_table-container.scss +7 -17
  182. package/components/table/style/_table-deprecated.scss +74 -0
  183. package/components/table/style/_table-header-buttons.scss +2 -1
  184. package/components/table/style/_table-sticky.scss +24 -23
  185. package/components/table/style/_table-td.scss +46 -38
  186. package/components/table/style/_table-th.scss +44 -0
  187. package/components/table/style/_table-tr.scss +8 -2
  188. package/components/table/style/_table.scss +21 -77
  189. package/components/table/style/dnb-table.css +538 -271
  190. package/components/table/style/dnb-table.min.css +11 -2
  191. package/components/table/style/themes/dnb-table-theme-ui.css +82 -63
  192. package/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
  193. package/components/table/style/themes/dnb-table-theme-ui.scss +49 -16
  194. package/components/textarea/style/dnb-textarea.css +0 -7
  195. package/components/textarea/style/dnb-textarea.min.css +1 -1
  196. package/components/toggle-button/style/dnb-toggle-button.css +0 -21
  197. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  198. package/components/visually-hidden/VisuallyHidden.d.ts +2 -11
  199. package/components/visually-hidden/VisuallyHidden.js +2 -5
  200. package/components/visually-hidden/style/_visually-hidden.scss +0 -8
  201. package/components/visually-hidden/style/dnb-visually-hidden.css +10 -42
  202. package/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  203. package/elements/Element.d.ts +1 -1
  204. package/es/components/accordion/style/_accordion.scss +2 -2
  205. package/es/components/accordion/style/dnb-accordion.css +3 -3
  206. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  207. package/es/components/autocomplete/style/dnb-autocomplete.css +3 -14
  208. package/es/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
  209. package/es/components/checkbox/style/dnb-checkbox.css +0 -7
  210. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  211. package/es/components/date-picker/style/dnb-date-picker.css +3 -35
  212. package/es/components/date-picker/style/dnb-date-picker.min.css +2 -2
  213. package/es/components/dialog/Dialog.d.ts +1 -1
  214. package/es/components/dialog/parts/DialogAction.d.ts +5 -4
  215. package/es/components/dialog/parts/DialogAction.js +21 -11
  216. package/es/components/dialog/style/_dialog.scss +7 -30
  217. package/es/components/dialog/style/dnb-dialog.css +21 -44
  218. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  219. package/es/components/dialog/style/themes/dnb-dialog-theme-ui.css +20 -0
  220. package/es/components/dialog/style/themes/dnb-dialog-theme-ui.min.css +1 -1
  221. package/es/components/dialog/style/themes/dnb-dialog-theme-ui.scss +29 -0
  222. package/es/components/drawer/style/_drawer.scss +1 -0
  223. package/es/components/drawer/style/dnb-drawer.css +12 -22
  224. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  225. package/es/components/drawer/types.d.ts +5 -5
  226. package/es/components/dropdown/style/dnb-dropdown.css +0 -7
  227. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  228. package/es/components/form-label/FormLabel.js +1 -1
  229. package/es/components/form-label/style/_form-label.scss +0 -13
  230. package/es/components/form-label/style/dnb-form-label.css +0 -7
  231. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  232. package/es/components/form-row/style/dnb-form-row.css +0 -7
  233. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  234. package/es/components/input/style/_input.scss +4 -0
  235. package/es/components/input/style/dnb-input.css +3 -7
  236. package/es/components/input/style/dnb-input.min.css +1 -1
  237. package/es/components/input-masked/style/dnb-input-masked.css +3 -7
  238. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  239. package/es/components/lib.d.ts +1 -1
  240. package/es/components/modal/Modal.d.ts +2 -2
  241. package/es/components/modal/style/dnb-modal.css +11 -22
  242. package/es/components/modal/style/dnb-modal.min.css +1 -1
  243. package/es/components/number-format/NumberFormat.js +1 -1
  244. package/es/components/number-format/NumberUtils.d.ts +3 -0
  245. package/es/components/radio/style/dnb-radio.css +0 -7
  246. package/es/components/radio/style/dnb-radio.min.css +1 -1
  247. package/es/components/slider/style/dnb-slider.css +0 -7
  248. package/es/components/slider/style/dnb-slider.min.css +1 -1
  249. package/es/components/switch/style/dnb-switch.css +0 -7
  250. package/es/components/switch/style/dnb-switch.min.css +1 -1
  251. package/es/components/table/Table.d.ts +2 -0
  252. package/es/components/table/Table.js +13 -14
  253. package/es/components/table/TableAccordion.d.ts +10 -0
  254. package/es/components/table/TableAccordion.js +175 -0
  255. package/es/components/table/TableAccordionContent.d.ts +18 -0
  256. package/es/components/table/TableAccordionContent.js +54 -0
  257. package/es/components/table/TableContainer.js +2 -1
  258. package/es/components/table/TableScrollView.js +2 -1
  259. package/es/components/table/TableStickyHeader.d.ts +4 -1
  260. package/es/components/table/TableStickyHeader.js +112 -48
  261. package/es/components/table/TableTd.d.ts +6 -1
  262. package/es/components/table/TableTd.js +3 -1
  263. package/es/components/table/TableTh.d.ts +4 -4
  264. package/es/components/table/TableTh.js +6 -1
  265. package/es/components/table/TableTr.d.ts +27 -0
  266. package/es/components/table/TableTr.js +51 -15
  267. package/es/components/table/style/_table-accordion.scss +280 -0
  268. package/es/components/table/style/_table-cell.scss +4 -4
  269. package/es/components/table/style/_table-container.scss +7 -17
  270. package/es/components/table/style/_table-deprecated.scss +74 -0
  271. package/es/components/table/style/_table-header-buttons.scss +2 -1
  272. package/es/components/table/style/_table-sticky.scss +24 -23
  273. package/es/components/table/style/_table-td.scss +46 -38
  274. package/es/components/table/style/_table-th.scss +44 -0
  275. package/es/components/table/style/_table-tr.scss +8 -2
  276. package/es/components/table/style/_table.scss +21 -77
  277. package/es/components/table/style/dnb-table.css +538 -271
  278. package/es/components/table/style/dnb-table.min.css +11 -2
  279. package/es/components/table/style/themes/dnb-table-theme-ui.css +82 -63
  280. package/es/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
  281. package/es/components/table/style/themes/dnb-table-theme-ui.scss +49 -16
  282. package/es/components/textarea/style/dnb-textarea.css +0 -7
  283. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  284. package/es/components/toggle-button/style/dnb-toggle-button.css +0 -21
  285. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  286. package/es/components/visually-hidden/VisuallyHidden.d.ts +2 -11
  287. package/es/components/visually-hidden/VisuallyHidden.js +2 -5
  288. package/es/components/visually-hidden/style/_visually-hidden.scss +0 -8
  289. package/es/components/visually-hidden/style/dnb-visually-hidden.css +10 -42
  290. package/es/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  291. package/es/elements/Element.d.ts +1 -1
  292. package/es/fragments/lib.d.ts +4 -7
  293. package/es/fragments/scroll-view/ScrollView.d.ts +12 -11
  294. package/es/fragments/scroll-view/ScrollView.js +7 -3
  295. package/es/fragments/scroll-view/style/_scroll-view.scss +8 -0
  296. package/es/shared/Eufemia.js +1 -1
  297. package/es/shared/helpers.js +7 -1
  298. package/es/shared/locales/en-GB.d.ts +4 -0
  299. package/es/shared/locales/en-GB.js +4 -0
  300. package/es/shared/locales/en-US.d.ts +4 -0
  301. package/es/shared/locales/index.d.ts +8 -0
  302. package/es/shared/locales/nb-NO.d.ts +4 -0
  303. package/es/shared/locales/nb-NO.js +4 -0
  304. package/es/style/core/helper-classes/helper-classes.scss +3 -0
  305. package/es/style/core/utilities.scss +15 -16
  306. package/es/style/dnb-ui-basis.css +20 -13
  307. package/es/style/dnb-ui-basis.min.css +1 -1
  308. package/es/style/dnb-ui-components.css +599 -365
  309. package/es/style/dnb-ui-components.min.css +13 -4
  310. package/es/style/dnb-ui-core.css +20 -13
  311. package/es/style/dnb-ui-core.min.css +1 -1
  312. package/es/style/dnb-ui-fragments.css +14 -0
  313. package/es/style/dnb-ui-fragments.min.css +1 -1
  314. package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +102 -63
  315. package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
  316. package/es/style/themes/theme-ui/dnb-theme-ui.css +102 -63
  317. package/es/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
  318. package/esm/dnb-ui-basis.min.mjs +2 -2
  319. package/esm/dnb-ui-components.min.mjs +4 -4
  320. package/esm/dnb-ui-elements.min.mjs +4 -4
  321. package/esm/dnb-ui-extensions.min.mjs +4 -4
  322. package/esm/dnb-ui-lib.min.mjs +4 -4
  323. package/esm/dnb-ui-web-components.min.mjs +4 -4
  324. package/fragments/lib.d.ts +4 -7
  325. package/fragments/scroll-view/ScrollView.d.ts +12 -11
  326. package/fragments/scroll-view/ScrollView.js +8 -4
  327. package/fragments/scroll-view/style/_scroll-view.scss +8 -0
  328. package/package.json +2 -2
  329. package/shared/Eufemia.js +1 -1
  330. package/shared/helpers.js +7 -1
  331. package/shared/locales/en-GB.d.ts +4 -0
  332. package/shared/locales/en-GB.js +4 -0
  333. package/shared/locales/en-US.d.ts +4 -0
  334. package/shared/locales/index.d.ts +8 -0
  335. package/shared/locales/nb-NO.d.ts +4 -0
  336. package/shared/locales/nb-NO.js +4 -0
  337. package/style/core/helper-classes/helper-classes.scss +3 -0
  338. package/style/core/utilities.scss +15 -16
  339. package/style/dnb-ui-basis.css +20 -13
  340. package/style/dnb-ui-basis.min.css +1 -1
  341. package/style/dnb-ui-components.css +599 -365
  342. package/style/dnb-ui-components.min.css +13 -4
  343. package/style/dnb-ui-core.css +20 -13
  344. package/style/dnb-ui-core.min.css +1 -1
  345. package/style/dnb-ui-fragments.css +14 -0
  346. package/style/dnb-ui-fragments.min.css +1 -1
  347. package/style/themes/theme-eiendom/dnb-theme-eiendom.css +102 -63
  348. package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
  349. package/style/themes/theme-ui/dnb-theme-ui.css +102 -63
  350. package/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
  351. package/umd/dnb-ui-basis.min.js +3 -3
  352. package/umd/dnb-ui-components.min.js +5 -5
  353. package/umd/dnb-ui-elements.min.js +4 -4
  354. package/umd/dnb-ui-extensions.min.js +5 -5
  355. package/umd/dnb-ui-lib.min.js +5 -5
  356. package/umd/dnb-ui-web-components.min.js +5 -5
@@ -0,0 +1,280 @@
1
+ /*
2
+ * Table component
3
+ *
4
+ */
5
+
6
+ @mixin tableAccordionActiveColor {
7
+ .dnb-table__td__accordion-icon .dnb-icon {
8
+ color: var(--color-emerald-green);
9
+ }
10
+ }
11
+ @mixin tableAccordionDisabledColor {
12
+ .dnb-table__td__accordion-icon .dnb-icon {
13
+ color: var(--color-sea-green-30);
14
+ }
15
+ }
16
+
17
+ .dnb-table {
18
+ --accordion-background: var(--color-white);
19
+ --accordion-border-width: 0.0625rem;
20
+ --accordion-border: var(--accordion-border-width) solid
21
+ var(--color-black-20);
22
+
23
+ &__th#{&}__th__accordion-icon {
24
+ padding: 0;
25
+
26
+ // In case the table-layout is fixed
27
+ div {
28
+ width: 3.5rem;
29
+
30
+ .dnb-table__size--medium & {
31
+ width: 3rem;
32
+ }
33
+ .dnb-table__size--small & {
34
+ width: 2.5rem;
35
+ }
36
+
37
+ text-indent: -300vw;
38
+ }
39
+ }
40
+
41
+ &__td#{&}__td__accordion-icon {
42
+ padding: 0;
43
+ user-select: none; // prevent selection on double-click
44
+ }
45
+
46
+ &__tr--has-accordion-content &__toggle-button {
47
+ display: flex; // to ensure we inherit the correct size from its content
48
+ justify-content: center;
49
+
50
+ .dnb-icon {
51
+ color: var(--color-sea-green);
52
+ transition: transform 500ms var(--accordion-easing);
53
+ }
54
+ }
55
+ &__tr--has-accordion-content#{&}__tr--no-animation
56
+ &__toggle-button
57
+ .dnb-icon,
58
+ html[data-visual-test]
59
+ &__tr--has-accordion-content
60
+ &__toggle-button
61
+ .dnb-icon {
62
+ transition: none !important;
63
+ }
64
+
65
+ &__tr--has-accordion-content,
66
+ &__tr__accordion_content {
67
+ position: relative;
68
+ z-index: 2;
69
+ }
70
+ &__tr--has-accordion-content:hover,
71
+ &__tr--has-accordion-content:active,
72
+ &__tr--has-accordion-content:focus,
73
+ &__tr--has-accordion-content#{&}__tr--expanded,
74
+ &__tr__accordion_content {
75
+ // ensure borders are visible in certain states
76
+ z-index: 3;
77
+ }
78
+
79
+ &__tr--has-accordion-content#{&}__tr--expanded
80
+ &__toggle-button
81
+ .dnb-icon {
82
+ transform: rotate(180deg);
83
+ }
84
+
85
+ &__tr--has-accordion-content#{&}__tr--expanded {
86
+ .dnb-table--border & td::after {
87
+ border-bottom: none;
88
+ }
89
+ .dnb-table--border & td:not(:first-of-type)::after {
90
+ border-left: none;
91
+ }
92
+ }
93
+
94
+ &__tr--has-accordion-content#{&}__tr:not(&__tr--disabled) {
95
+ outline: none;
96
+
97
+ td::before {
98
+ content: '';
99
+ position: absolute;
100
+ z-index: 3; // ensure we are over the "tableBorder"
101
+
102
+ // A negative number will force the table to overflow and a scrollbar will show up
103
+ inset: 0;
104
+
105
+ pointer-events: none;
106
+
107
+ // Here we use border to support Safari v16 on macOS
108
+ // but also to only have a border on specific sides
109
+ border: $focusRingWidth solid transparent;
110
+ }
111
+ td:not(:first-of-type)::before {
112
+ border-left: none;
113
+ }
114
+ td:not(:last-of-type)::before {
115
+ border-right: none;
116
+ }
117
+
118
+ @include hover() {
119
+ td::before {
120
+ border-color: var(--color-emerald-green);
121
+ }
122
+
123
+ @include tableAccordionActiveColor();
124
+ }
125
+ }
126
+
127
+ &__tr--has-accordion-content#{&}__tr--expanded:not(&__tr--disabled):hover
128
+ &__td {
129
+ background-color: var(--color-white);
130
+ }
131
+
132
+ &__tr--has-accordion-content#{&}__tr:not(&__tr--disabled):not(:active):not(:hover):focus {
133
+ td::before {
134
+ @include whatInput(keyboard) {
135
+ top: 0;
136
+ bottom: 0;
137
+ border-color: var(--color-emerald-green);
138
+ }
139
+ }
140
+ td:first-of-type::before {
141
+ left: 0;
142
+ }
143
+ td:last-of-type::before {
144
+ right: 0;
145
+ }
146
+ }
147
+
148
+ &__tr--has-accordion-content#{&}__tr:not(&__tr--disabled):active {
149
+ html:not([data-whatintent='touch']) &:hover td::before,
150
+ td::before {
151
+ border-color: var(--color-emerald-green);
152
+ border-width: 0.0625rem; // TODO: we should have something like activeRingWidth
153
+ }
154
+ }
155
+
156
+ &__tr--has-accordion-content#{&}__tr:not(&__tr--disabled):active &__td {
157
+ background-color: var(--color-pistachio);
158
+
159
+ @include tableAccordionActiveColor();
160
+ }
161
+
162
+ &__tr--has-accordion-content#{&}__tr--expanded:not(&__tr--disabled)#{&}__tr--hover:not(:active):hover
163
+ &__td {
164
+ background-color: var(--accordion-background);
165
+
166
+ &::before {
167
+ border: none;
168
+ border-top: var(--accordion-border);
169
+ }
170
+ }
171
+
172
+ &__tr--has-accordion-content#{&}__tr#{&}__tr--expanded:not(&__tr--disabled):not(:active):not(:hover) {
173
+ @include whatInputNot('keyboard') {
174
+ background-color: var(--accordion-background);
175
+
176
+ td::before {
177
+ border: none;
178
+ border-top: var(--accordion-border);
179
+ }
180
+ }
181
+ }
182
+
183
+ &__tr--has-accordion-content#{&}__tr--disabled {
184
+ @include tableAccordionDisabledColor();
185
+ }
186
+
187
+ &__tr__accordion_content {
188
+ @include IS_SAFARI_DESKTOP {
189
+ &[hidden] {
190
+ /**
191
+ * By reverting the display from "none" to "block",
192
+ * we trick VoiceOver to not make this row as the end of the table. We still need "hidden" to get the correct number of rows (childCount).
193
+ */
194
+ display: block;
195
+ }
196
+ }
197
+
198
+ td::before {
199
+ content: '';
200
+ position: absolute;
201
+ top: auto;
202
+ left: 0;
203
+ right: 0;
204
+ bottom: calc(var(--accordion-border-width) * -1);
205
+
206
+ pointer-events: none;
207
+
208
+ border-bottom: var(--accordion-border);
209
+ }
210
+
211
+ // because, when table has --outline
212
+ .dnb-table--outline &:last-of-type td::before {
213
+ border-bottom: none;
214
+ }
215
+
216
+ // because, when table has --border
217
+ .dnb-table--border & td::after {
218
+ border-top: none;
219
+ }
220
+
221
+ &__inner {
222
+ overflow: hidden;
223
+ will-change: height;
224
+ transition: height 400ms var(--accordion-easing);
225
+
226
+ &__spacing {
227
+ padding: 1rem;
228
+
229
+ transform: translateY(-10px);
230
+ transition: transform 500ms var(--accordion-easing);
231
+ }
232
+
233
+ position: relative;
234
+ }
235
+ &--parallax &__inner {
236
+ &__spacing {
237
+ transform: translateY(0);
238
+ }
239
+ }
240
+
241
+ > td,
242
+ > td.dnb-table__td {
243
+ padding: 0;
244
+
245
+ .dnb-dl,
246
+ .dnb-dl dt {
247
+ margin: 0;
248
+ }
249
+ }
250
+
251
+ &--expanded > td,
252
+ &--expanded > td.dnb-table__td {
253
+ background-color: var(--color-white);
254
+ }
255
+ }
256
+
257
+ &__tr__accordion_content#{&}__tr &__td {
258
+ background-color: var(--accordion-background);
259
+
260
+ /**
261
+ * Safari on iOS and macOS has problems on animating when vertical-align is baseline.
262
+ * What happens is that the td is not 0, even the content inside is 0. With vertical top, we omit that.
263
+ * But we do not need baseline in this tr > td, so we reset it.
264
+ */
265
+ vertical-align: top;
266
+ }
267
+
268
+ &__tr--has-accordion-content:not(&__tr--disabled) {
269
+ cursor: pointer;
270
+ }
271
+ // prevent selection while animating – useful when user double-clicks
272
+ // TODO: Our SASS version doe sot support :has – so we may use this in future
273
+ // &__tr--has-accordion-content:has(& + &__tr__accordion_content--animating) {
274
+ // user-select: none;
275
+ // }
276
+
277
+ &__td-wrapper {
278
+ display: flex;
279
+ }
280
+ }
@@ -4,10 +4,10 @@
4
4
  */
5
5
 
6
6
  .dnb-table {
7
- & > tr > th,
8
- & > tr > td,
9
- & > thead > tr > th,
10
- & > tbody > tr > td,
7
+ & > tr > th, /* should be deprecated */
8
+ & > tr > td, /* should be deprecated */
9
+ & > thead > tr > th, /* should be deprecated */
10
+ & > tbody > tr > td, /* should be deprecated */
11
11
  &__th,
12
12
  &__td {
13
13
  position: relative;
@@ -3,28 +3,13 @@
3
3
  *
4
4
  */
5
5
 
6
- @mixin tableBorder {
7
- content: '';
8
- position: absolute;
9
- top: 0;
10
- left: 0;
11
- right: 0;
12
- bottom: 0;
13
- z-index: 1;
14
-
15
- pointer-events: none;
16
- }
17
-
18
6
  .dnb-table__container {
19
7
  position: relative;
20
8
 
21
- --border: 0.0625rem solid var(--color-black-8);
22
- background-color: var(--color-white);
23
-
24
9
  &::after {
25
10
  @include tableBorder();
26
-
27
- border: var(--border);
11
+ z-index: 3; // over sticky-header
12
+ border: var(--outline);
28
13
  }
29
14
 
30
15
  &,
@@ -58,4 +43,9 @@
58
43
  &__foot {
59
44
  padding: 0.5rem 1rem 2rem;
60
45
  }
46
+
47
+ // When placed inside a Modal/Drawer, let the parent scroll-bar do its job.
48
+ .dnb-modal__content & .dnb-table__scroll-view {
49
+ overflow: visible;
50
+ }
61
51
  }
@@ -0,0 +1,74 @@
1
+ /*
2
+ * Table deprecated parts
3
+ *
4
+ */
5
+
6
+ .dnb-table {
7
+ /* stylelint-disable */
8
+
9
+ // deprecated – can be removed in v10
10
+ &,
11
+ &--left {
12
+ text-align: left;
13
+ }
14
+ &--right {
15
+ text-align: right;
16
+ }
17
+ &--center {
18
+ text-align: center;
19
+ }
20
+
21
+ // deprecated – can be removed in v10
22
+ &--small,
23
+ &--small > tr > th,
24
+ &--small > tr > td,
25
+ &--small > thead > tr > th,
26
+ &--small > tbody > tr > td {
27
+ font-size: var(--font-size-small);
28
+ }
29
+
30
+ // deprecated – can be removed in v10
31
+ & > tr#{&}--small > th,
32
+ & > tr#{&}--small > td,
33
+ & > thead > tr#{&}--small > th,
34
+ & > tbody > tr#{&}--small > td {
35
+ font-size: var(--font-size-small);
36
+ }
37
+
38
+ // deprecated – can be removed in v10
39
+ & > tr > th#{&}--small,
40
+ & > tr > td#{&}--small,
41
+ & > thead > tr > th#{&}--small,
42
+ & > tbody > tr > td#{&}--small,
43
+ &__th#{&}--small,
44
+ &__td#{&}--small {
45
+ font-size: var(--font-size-small);
46
+ }
47
+
48
+ // deprecated – can be removed in v10
49
+ &--x-small,
50
+ &--x-small > tr > th,
51
+ &--x-small > tr > td,
52
+ &--x-small > thead > tr > th,
53
+ &--x-small > tbody > tr > td {
54
+ font-size: var(--font-size-x-small);
55
+ }
56
+
57
+ // deprecated – can be removed in v10
58
+ & > tr#{&}--x-small > th,
59
+ & > tr#{&}--x-small > td,
60
+ & > thead > tr#{&}--x-small > th,
61
+ & > tbody > tr#{&}--x-small > td {
62
+ font-size: var(--font-size-x-small);
63
+ }
64
+
65
+ // deprecated – can be removed in v10
66
+ & > tr > th#{&}--x-small,
67
+ & > tr > td#{&}--x-small,
68
+ & > thead > tr > th#{&}--x-small,
69
+ & > tbody > tr > td#{&}--x-small,
70
+ &__th#{&}--x-small,
71
+ &__td#{&}--x-small {
72
+ font-size: var(--font-size-x-small);
73
+ }
74
+ }
@@ -33,7 +33,7 @@
33
33
  // reset anchor
34
34
  box-shadow: none;
35
35
 
36
- line-height: var(--line-height-basis);
36
+ line-height: inherit;
37
37
 
38
38
  margin: 0;
39
39
  padding: 0;
@@ -47,6 +47,7 @@
47
47
  .dnb-button__text {
48
48
  margin: 0;
49
49
  font-size: inherit;
50
+ line-height: inherit;
50
51
 
51
52
  // underline
52
53
  &::after {
@@ -4,6 +4,7 @@
4
4
  */
5
5
 
6
6
  .dnb-table {
7
+ // Deprecated in v10
7
8
  &__sticky-helper > td {
8
9
  display: block;
9
10
  overflow: hidden;
@@ -11,32 +12,32 @@
11
12
  height: 0;
12
13
  }
13
14
 
14
- tr.sticky th {
15
+ // Target th because of Safari transparent issue
16
+ tr.sticky:not(.css-position) th {
17
+ position: relative;
18
+ z-index: 3; // over borders and TDs
19
+
20
+ will-change: transform;
21
+ transform: translate3d(0, var(--table-offset, 0), 0);
22
+ }
23
+
24
+ tr.sticky.css-position {
15
25
  position: sticky;
26
+ z-index: 3; // over borders and TDs
16
27
  top: var(--table-top, 0); // is set by "stickyOffset" prop
17
- z-index: 2;
18
-
19
- &::before {
20
- content: '';
21
- position: absolute;
22
- opacity: 0;
23
- left: 0;
24
- right: 0;
25
- bottom: 0;
26
- height: 6px;
28
+ }
27
29
 
28
- // The @mixin defaultDropShadow() does not work in this case
29
- // because we need only a bottom shadow (with clip-path)
30
- box-shadow: var(--shadow-default-x) -2px 12px 8px var(--shadow-default-color);
31
- clip-path: inset(6px 0 -48px 0);
30
+ tr.sticky.is-sticky th::before {
31
+ content: '';
32
+ position: absolute;
33
+ left: 0;
34
+ right: 0;
35
+ bottom: 0;
36
+ height: 6px;
32
37
 
33
- transition: opacity 300ms ease-out;
34
- [data-visual-test-wrapper] & {
35
- transition: none;
36
- }
37
- }
38
- }
39
- tr.sticky.show-shadow th::before {
40
- opacity: 1;
38
+ // The @mixin defaultDropShadow() does not work in this case
39
+ // because we need only a bottom shadow (with clip-path)
40
+ box-shadow: var(--shadow-default-x) -2px 12px 8px var(--shadow-default-color);
41
+ clip-path: inset(6px 0 -48px 0);
41
42
  }
42
43
  }
@@ -5,24 +5,9 @@
5
5
 
6
6
  @import './_table-header-buttons.scss';
7
7
 
8
- @mixin tableBorder {
9
- content: '';
10
- position: absolute;
11
- top: 0;
12
- left: 0;
13
- right: 0;
14
- bottom: 0;
15
- z-index: -1;
16
-
17
- pointer-events: none;
18
- }
19
-
20
8
  .dnb-table {
21
9
  // table border
22
- --border: 0.0625rem solid var(--color-black-8);
23
10
  &--border tbody &__td {
24
- z-index: 2; // ensure border is behind content
25
-
26
11
  &::after {
27
12
  @include tableBorder();
28
13
 
@@ -40,26 +25,7 @@
40
25
  }
41
26
 
42
27
  // table outline
43
- --outline: 0.0625rem solid var(--color-black-8);
44
- &--outline thead &__th {
45
- z-index: 2; // ensure border is behind content
46
-
47
- &::after {
48
- @include tableBorder();
49
-
50
- border-top: var(--outline);
51
- }
52
-
53
- &:first-of-type::after {
54
- border-left: var(--outline);
55
- }
56
- &:last-of-type::after {
57
- border-right: var(--outline);
58
- }
59
- }
60
28
  &--outline tbody &__td {
61
- z-index: 2; // ensure border is behind content
62
-
63
29
  &:first-of-type::after,
64
30
  &:last-of-type::after {
65
31
  @include tableBorder();
@@ -71,10 +37,16 @@
71
37
  &:last-of-type::after {
72
38
  border-right: var(--outline);
73
39
  }
40
+
41
+ /* stylelint-disable */
42
+ &,
43
+ &::before,
44
+ &::after {
45
+ transition: border-radius 400ms var(--easing-default);
46
+ }
47
+ /* stylelint-enable */
74
48
  }
75
49
  &--outline tbody &__tr:last-of-type &__td {
76
- z-index: 2; // ensure border is behind content
77
-
78
50
  &::after {
79
51
  @include tableBorder();
80
52
 
@@ -93,18 +65,54 @@
93
65
  border-radius: 0 0.5rem 0 0;
94
66
  }
95
67
  }
96
- &--outline tbody &__tr:last-of-type &__td:first-of-type {
68
+ &--outline tbody &__tr:last-of-type &__td:first-of-type,
69
+ &--outline
70
+ tbody
71
+ &__tr#{&}__tr--has-accordion-content:not(#{&}__tr--expanded):nth-last-child(2)
72
+ &__td:first-of-type {
97
73
  &,
74
+ &::before,
98
75
  &::after {
99
76
  border-radius: 0 0 0 0.5rem;
100
77
  }
101
78
  }
102
- &--outline tbody &__tr:last-of-type &__td:last-of-type {
79
+ &--outline tbody &__tr:last-of-type &__td:last-of-type,
80
+ &--outline
81
+ tbody
82
+ &__tr#{&}__tr--has-accordion-content:not(#{&}__tr--expanded):nth-last-child(2)
83
+ &__td:last-of-type {
103
84
  &,
85
+ &::before,
104
86
  &::after {
105
87
  border-radius: 0 0 0.5rem 0;
106
88
  }
107
89
  }
90
+ &--outline tbody &__tr#{&}__tr__accordion_content:last-of-type &__td {
91
+ &,
92
+ &::before,
93
+ &::after {
94
+ border-radius: 0 0 0.5rem 0.5rem;
95
+ }
96
+ }
97
+
98
+ // reset parts if a "th" is used before td (row header)
99
+ &--outline tbody &__tr &__th ~ &__td:first-of-type {
100
+ &:first-of-type::after {
101
+ border-left: none;
102
+ }
103
+ }
104
+ &--border tbody &__tr &__th ~ &__td:first-of-type {
105
+ &:first-of-type::after {
106
+ border-left: var(--border);
107
+ }
108
+ }
109
+ &--outline tbody &__tr:last-of-type &__th ~ &__td:first-of-type {
110
+ &,
111
+ &::before,
112
+ &::after {
113
+ border-radius: 0 0 0 0;
114
+ }
115
+ }
108
116
 
109
117
  // spacing
110
118
  &__td--no-spacing,
@@ -10,4 +10,48 @@
10
10
  display: flex;
11
11
  align-items: flex-end; // bottom align help-button or other additional elements
12
12
  }
13
+
14
+ // table border
15
+ &--outline thead &__th {
16
+ &::after {
17
+ @include tableBorder();
18
+
19
+ border-top: var(--outline);
20
+ }
21
+
22
+ &:first-of-type::after {
23
+ border-left: var(--outline);
24
+ }
25
+ &:last-of-type::after {
26
+ border-right: var(--outline);
27
+ }
28
+ }
29
+ &--outline thead &__th:first-of-type {
30
+ &,
31
+ &::after {
32
+ border-radius: 0.5rem 0 0 0;
33
+ }
34
+ }
35
+ &--outline thead &__th:last-of-type {
36
+ &,
37
+ &::after {
38
+ border-radius: 0 0.5rem 0 0;
39
+ }
40
+ }
41
+ &--outline tbody &__th:first-of-type::after {
42
+ @include tableBorder();
43
+
44
+ border-left: var(--outline);
45
+ }
46
+ &--outline tbody &__tr:last-of-type &__th {
47
+ &::after {
48
+ @include tableBorder();
49
+
50
+ border-bottom: var(--outline);
51
+ }
52
+
53
+ &:first-of-type::after {
54
+ border-radius: 0 0 0 0.5rem;
55
+ }
56
+ }
13
57
  }
@@ -20,11 +20,17 @@
20
20
  background-color: var(--color-white);
21
21
  }
22
22
 
23
- &--outline thead &__tr:first-of-type {
23
+ &--outline thead &__tr:first-of-type,
24
+ &--outline
25
+ tbody
26
+ &__tr#{&}__tr--has-accordion-content:not(#{&}__tr--expanded):nth-last-child(2) {
24
27
  // use clip-path, because border-radius does not clip on tr's
25
28
  clip-path: inset(0 round 0.5rem 0.5rem 0 0);
26
29
  }
27
- &--outline tbody &__tr:last-of-type {
30
+ &--outline tbody &__tr:last-of-type,
31
+ &--outline
32
+ tbody
33
+ &__tr#{&}__tr--has-accordion-content:not(#{&}__tr--expanded):nth-last-child(2) {
28
34
  // use clip-path, because border-radius does not clip on tr's
29
35
  clip-path: inset(0 round 0 0 0.5rem 0.5rem);
30
36
  }