@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
@@ -1,27 +1,5 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.symbol.js");
4
-
5
- require("core-js/modules/es.symbol.description.js");
6
-
7
- require("core-js/modules/es.object.to-string.js");
8
-
9
- require("core-js/modules/es.symbol.iterator.js");
10
-
11
- require("core-js/modules/es.array.iterator.js");
12
-
13
- require("core-js/modules/es.string.iterator.js");
14
-
15
- require("core-js/modules/web.dom-collections.iterator.js");
16
-
17
- require("core-js/modules/es.array.slice.js");
18
-
19
- require("core-js/modules/es.function.name.js");
20
-
21
- require("core-js/modules/es.array.from.js");
22
-
23
- require("core-js/modules/es.regexp.exec.js");
24
-
25
3
  Object.defineProperty(exports, "__esModule", {
26
4
  value: true
27
5
  });
@@ -37,22 +15,12 @@ var _react = _interopRequireDefault(require("react"));
37
15
 
38
16
  var _componentHelper = require("../../shared/component-helper");
39
17
 
18
+ var _helpers = require("../../shared/helpers");
19
+
40
20
  var _tr;
41
21
 
42
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
43
23
 
44
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
45
-
46
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
47
-
48
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
49
-
50
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
51
-
52
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
53
-
54
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
55
-
56
24
  var useStickyHeader = function useStickyHeader(_ref) {
57
25
  var sticky = _ref.sticky,
58
26
  stickyOffset = _ref.stickyOffset,
@@ -64,70 +32,130 @@ var useStickyHeader = function useStickyHeader(_ref) {
64
32
 
65
33
  var elementRef = _react.default.useRef();
66
34
 
67
- var intersectionObserver = _react.default.useRef(null);
68
-
69
35
  _react.default.useEffect(function () {
70
36
  if (sticky) {
71
- if (typeof IntersectionObserver === 'undefined') {
72
- stickyWarning('IntersectionObserver not supported');
73
- return;
74
- }
75
-
76
- if (!elementRef.current) {
77
- stickyWarning('No ref element given');
78
- }
79
-
80
- var tableElem = elementRef.current;
81
- var thHeight = 80;
37
+ var isSticky = false;
38
+ var thHeight = 0;
82
39
  var offsetTopPx = 0;
40
+ var tableOffset = 0;
41
+ var tableHeight = 0;
42
+ var totalOffset = 0;
43
+ var hasScrollbar = null;
44
+ var scrollViewElem = null;
45
+ var timeout = null;
83
46
 
84
47
  try {
48
+ var tableElem = elementRef.current;
85
49
  var trElem = tableElem.querySelector('thead > tr:first-of-type, thead > .dnb-table__tr:first-of-type');
86
- offsetTopPx = parseFloat(String(stickyOffset || '0'));
50
+ var thElem = getThElement(tableElem);
51
+ var inIframe = window.self !== window.top;
52
+
53
+ var setSizes = function setSizes() {
54
+ offsetTopPx = parseFloat(String(stickyOffset)) || 0;
55
+
56
+ if (offsetTopPx > 0) {
57
+ if (String(stickyOffset).includes('rem')) {
58
+ offsetTopPx = Math.round(offsetTopPx * 16);
59
+ }
60
+ }
61
+
62
+ var modalElem = (0, _componentHelper.getPreviousSibling)('.dnb-modal__content', tableElem);
87
63
 
88
- if (offsetTopPx > 0) {
89
- if (String(stickyOffset).includes('em')) {
90
- offsetTopPx = Math.round(offsetTopPx * 16);
91
- trElem.style.setProperty('--table-top', String(stickyOffset));
64
+ if (modalElem) {
65
+ scrollViewElem = modalElem.querySelector('.dnb-scroll-view');
66
+
67
+ if (offsetTopPx === 0) {
68
+ offsetTopPx = modalElem.querySelector('.dnb-modal__header__bar').offsetHeight || 0;
69
+ }
92
70
  } else {
71
+ var scrollElem = (0, _componentHelper.getPreviousSibling)('.dnb-scroll-view', tableElem);
72
+
73
+ if (scrollElem) {
74
+ hasScrollbar = scrollElem.scrollHeight - 1 > scrollElem.offsetHeight;
75
+
76
+ if (hasScrollbar) {
77
+ scrollViewElem = scrollElem;
78
+ }
79
+ }
80
+ }
81
+
82
+ thHeight = thElem.offsetHeight;
83
+ tableHeight = tableElem.offsetHeight;
84
+ tableOffset = (0, _helpers.getOffsetTop)(tableElem);
85
+ totalOffset = tableOffset - (inIframe ? 0 : offsetTopPx);
86
+
87
+ if (sticky === 'css-position') {
93
88
  trElem.style.setProperty('--table-top', "".concat(offsetTopPx / 16, "rem"));
94
89
  }
95
- }
90
+ };
96
91
 
97
- var thElem = getThElement(tableElem);
98
- thHeight = thElem && parseFloat(window.getComputedStyle(thElem).height) || thHeight;
99
- intersectionObserver.current = new IntersectionObserver(function (entries) {
100
- var _entries = _slicedToArray(entries, 1),
101
- entry = _entries[0];
92
+ var offset = 0;
93
+
94
+ var onScroll = function onScroll() {
95
+ if (scrollViewElem) {
96
+ offset = scrollViewElem.scrollTop;
97
+ } else {
98
+ offset = window.pageYOffset;
99
+ }
100
+
101
+ offset -= hasScrollbar ? offsetTopPx : totalOffset;
102
+
103
+ if (offset > 0 && offset < tableHeight - thHeight) {
104
+ if (sticky !== 'css-position') {
105
+ trElem.style.setProperty('--table-offset', String(offset) + 'px');
106
+ }
102
107
 
108
+ if (!isSticky) {
109
+ isSticky = true;
110
+ trElem.classList.add('is-sticky');
111
+ }
112
+ } else {
113
+ if (isSticky) {
114
+ isSticky = false;
115
+
116
+ if (offset <= 0) {
117
+ if (sticky !== 'css-position') {
118
+ trElem.style.removeProperty('--table-offset');
119
+ }
120
+ }
121
+
122
+ trElem.classList.remove('is-sticky');
123
+ }
124
+ }
125
+ };
126
+
127
+ var onResize = function onResize() {
128
+ setSizes();
129
+ onScroll();
130
+ };
131
+
132
+ var applyObservers = function applyObservers() {
103
133
  try {
104
- if (entry.isIntersecting) {
105
- trElem.classList.remove('show-shadow');
106
- } else {
107
- trElem.classList.add('show-shadow');
134
+ trElem.classList.add('sticky');
135
+
136
+ if (sticky === 'css-position') {
137
+ trElem.classList.add('css-position');
108
138
  }
139
+
140
+ setSizes();
141
+ var scrollElem = scrollViewElem || document;
142
+ scrollElem.addEventListener('scroll', onScroll);
143
+ window.addEventListener('resize', onResize);
109
144
  } catch (e) {
110
145
  stickyWarning(e);
111
146
  }
112
- }, {
113
- rootMargin: "-".concat(thHeight + offsetTopPx, "px 0px 0px 0px")
114
- });
115
- trElem.classList.add('sticky');
116
- var tdElem = tableElem.querySelector('tbody > tr.dnb-table__sticky-helper > td:first-of-type') || getTdElement(tableElem);
117
-
118
- if (tdElem) {
119
- intersectionObserver.current.observe(tdElem);
120
- }
147
+ };
148
+
149
+ timeout = setTimeout(applyObservers, 100);
150
+ return function () {
151
+ clearTimeout(timeout);
152
+ document.removeEventListener('scroll', onScroll);
153
+ window.removeEventListener('resize', onResize);
154
+ };
121
155
  } catch (e) {
122
156
  stickyWarning(e);
123
157
  }
124
158
  }
125
-
126
- return function () {
127
- var _intersectionObserver;
128
-
129
- (_intersectionObserver = intersectionObserver.current) === null || _intersectionObserver === void 0 ? void 0 : _intersectionObserver.disconnect();
130
- };
131
159
  }, [elementRef, sticky, stickyOffset]);
132
160
 
133
161
  return {
@@ -138,9 +166,14 @@ var useStickyHeader = function useStickyHeader(_ref) {
138
166
  exports.useStickyHeader = useStickyHeader;
139
167
 
140
168
  var StickyHelper = function StickyHelper() {
169
+ (0, _componentHelper.warn)('Table.StickyHelper is deprecated!');
141
170
  return _tr || (_tr = _react.default.createElement("tr", {
142
- className: "dnb-table__sticky-helper"
143
- }, _react.default.createElement("td", null)));
171
+ className: "dnb-table__sticky-helper",
172
+ "aria-hidden": true,
173
+ role: "presentation"
174
+ }, _react.default.createElement("td", {
175
+ colSpan: 100
176
+ })));
144
177
  };
145
178
 
146
179
  exports.StickyHelper = StickyHelper;
@@ -150,10 +183,6 @@ var stickyWarning = function stickyWarning() {
150
183
  (0, _componentHelper.warn)('Could not enable Sticky mode in table:', message);
151
184
  };
152
185
 
153
- var getTdElement = function getTdElement(element) {
154
- return element.querySelector('tbody > tr:not(.dnb-table__sticky-helper):first-of-type > td:first-of-type, tbody > .dnb-table__tr:first-of-type > .dnb-table__td:first-of-type');
155
- };
156
-
157
186
  var getThElement = function getThElement(element) {
158
187
  return element.querySelector('thead > tr:first-of-type > th:first-of-type, thead > .dnb-table__tr:first-of-type > .dnb-table__th:first-of-type');
159
188
  };
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import TableAccordionContent from './TableAccordionContent';
2
3
  export declare type TableTdProps = {
3
4
  /**
4
5
  * if set to `true`, no padding will be added
@@ -16,4 +17,8 @@ export declare type TableTdProps = {
16
17
  */
17
18
  children?: React.ReactNode;
18
19
  };
19
- export default function Td(componentProps: TableTdProps & React.TdHTMLAttributes<HTMLTableCellElement>): JSX.Element;
20
+ declare function Td(componentProps: TableTdProps & React.TdHTMLAttributes<HTMLTableCellElement>): JSX.Element;
21
+ declare namespace Td {
22
+ var AccordionContent: typeof TableAccordionContent;
23
+ }
24
+ export default Td;
@@ -17,6 +17,8 @@ var _react = _interopRequireDefault(require("react"));
17
17
 
18
18
  var _classnames = _interopRequireDefault(require("classnames"));
19
19
 
20
+ var _TableAccordionContent = _interopRequireDefault(require("./TableAccordionContent"));
21
+
20
22
  var _excluded = ["className", "children", "noSpacing", "spacing"];
21
23
 
22
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -38,4 +40,6 @@ function Td(componentProps) {
38
40
  role: "cell",
39
41
  className: (0, _classnames.default)('dnb-table__td', className, noSpacing && 'dnb-table__td--no-spacing', spacing && "dnb-table__td--spacing-".concat(spacing))
40
42
  }, props), children);
41
- }
43
+ }
44
+
45
+ Td.AccordionContent = _TableAccordionContent.default;
@@ -4,17 +4,17 @@ import TableHelpButton from './TableHelpButton';
4
4
  export declare type TableThChildren = React.ReactNode | ReturnType<typeof TableSortButton> | ReturnType<typeof TableHelpButton>;
5
5
  export declare type TableThProps = {
6
6
  /**
7
- * Defines the table header as sortable
7
+ * Defines the table header as sortable (ascending)
8
8
  * Default: false
9
9
  */
10
10
  sortable?: boolean;
11
11
  /**
12
- * Defines the sortable column as the current active
12
+ * Defines the sortable column as the current active (ascending)
13
13
  * Default: false
14
14
  */
15
15
  active?: boolean;
16
16
  /**
17
- * Defines the sortable column as in reversed order
17
+ * Defines the sortable column as in reversed order (descending)
18
18
  * Default: false
19
19
  */
20
20
  reversed?: boolean;
@@ -26,7 +26,7 @@ export declare type TableThProps = {
26
26
  /**
27
27
  * The content of the table header given as Tr.
28
28
  */
29
- children: TableThChildren | Array<TableThChildren>;
29
+ children?: TableThChildren | Array<TableThChildren>;
30
30
  };
31
31
  declare function Th(componentProps: TableThProps & React.ThHTMLAttributes<HTMLTableCellElement>): JSX.Element;
32
32
  declare namespace Th {
@@ -41,8 +41,13 @@ function Th(componentProps) {
41
41
  noWrap = componentProps.noWrap,
42
42
  props = _objectWithoutProperties(componentProps, _excluded);
43
43
 
44
+ var role = props.scope === 'row' ? 'rowheader' : 'columnheader';
45
+ var scope = props.scope === 'row' ? 'row' : 'col';
46
+ var ariaSort = sortable ? reversed ? 'descending' : 'ascending' : undefined;
44
47
  return _react.default.createElement("th", _extends({
45
- role: "columnheader",
48
+ role: role,
49
+ scope: scope,
50
+ "aria-sort": ariaSort,
46
51
  className: (0, _classnames.default)('dnb-table__th', className, sortable && 'dnb-table--sortable', active && 'dnb-table--active', reversed && 'dnb-table--reversed', noWrap && 'dnb-table--no-wrap')
47
52
  }, props), children);
48
53
  }
@@ -10,9 +10,36 @@ export declare type TableTrProps = {
10
10
  * Default: false
11
11
  */
12
12
  noWrap?: boolean;
13
+ /**
14
+ * Set true to render the tr initially as expanded
15
+ * Default: false
16
+ */
17
+ expanded?: boolean;
18
+ /**
19
+ * Set true to disable the tr to be accessible as an interactive element
20
+ * Default: false
21
+ */
22
+ disabled?: boolean;
23
+ /**
24
+ * Set to true to skip animation
25
+ * Default: false
26
+ */
27
+ noAnimation?: boolean;
13
28
  /**
14
29
  * The content of the component.
15
30
  */
16
31
  children: React.ReactElement<TableTdProps> | Array<React.ReactElement<TableTdProps>>;
17
32
  };
18
33
  export default function Tr(componentProps: TableTrProps & React.TableHTMLAttributes<HTMLTableRowElement>): JSX.Element;
34
+ /**
35
+ * Handle odd/even on re-render and React.StrictMode
36
+ */
37
+ export declare function useHandleOddEven({ children }: {
38
+ children: any;
39
+ }): {
40
+ trCountRef: React.MutableRefObject<{
41
+ count: number;
42
+ }>;
43
+ rerenderAlias: {};
44
+ setRerenderAlias: React.Dispatch<React.SetStateAction<{}>>;
45
+ };
@@ -8,21 +8,56 @@ require("core-js/modules/es.symbol.js");
8
8
 
9
9
  require("core-js/modules/es.object.assign.js");
10
10
 
11
+ require("core-js/modules/es.symbol.description.js");
12
+
13
+ require("core-js/modules/es.object.to-string.js");
14
+
15
+ require("core-js/modules/es.symbol.iterator.js");
16
+
17
+ require("core-js/modules/es.array.iterator.js");
18
+
19
+ require("core-js/modules/es.string.iterator.js");
20
+
21
+ require("core-js/modules/web.dom-collections.iterator.js");
22
+
23
+ require("core-js/modules/es.array.slice.js");
24
+
25
+ require("core-js/modules/es.function.name.js");
26
+
27
+ require("core-js/modules/es.array.from.js");
28
+
29
+ require("core-js/modules/es.regexp.exec.js");
30
+
11
31
  Object.defineProperty(exports, "__esModule", {
12
32
  value: true
13
33
  });
14
34
  exports.default = Tr;
35
+ exports.useHandleOddEven = useHandleOddEven;
15
36
 
16
37
  var _react = _interopRequireDefault(require("react"));
17
38
 
18
39
  var _classnames = _interopRequireDefault(require("classnames"));
19
40
 
41
+ var _TableAccordion = require("./TableAccordion");
42
+
20
43
  var _TableContext = _interopRequireDefault(require("./TableContext"));
21
44
 
22
- var _excluded = ["variant", "noWrap", "children", "className"];
45
+ var _excluded = ["variant", "noWrap", "expanded", "disabled", "noAnimation", "children", "className"];
23
46
 
24
47
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
48
 
49
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
50
+
51
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
52
+
53
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
54
+
55
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
56
+
57
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
58
+
59
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
60
+
26
61
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
62
 
28
63
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
@@ -32,6 +67,9 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
32
67
  function Tr(componentProps) {
33
68
  var variant = componentProps.variant,
34
69
  noWrap = componentProps.noWrap,
70
+ expanded = componentProps.expanded,
71
+ disabled = componentProps.disabled,
72
+ noAnimation = componentProps.noAnimation,
35
73
  children = componentProps.children,
36
74
  _className = componentProps.className,
37
75
  props = _objectWithoutProperties(componentProps, _excluded);
@@ -42,6 +80,19 @@ function Tr(componentProps) {
42
80
  currentVariant = _useHandleTrVariant.currentVariant;
43
81
 
44
82
  var className = (0, _classnames.default)('dnb-table__tr', _className, currentVariant && "dnb-table__tr--".concat(currentVariant), noWrap && 'dnb-table--no-wrap');
83
+ var accordionTr = (0, _TableAccordion.useTableAccordion)({
84
+ className: className,
85
+ children: children,
86
+ props: props,
87
+ expanded: expanded,
88
+ disabled: disabled,
89
+ noAnimation: noAnimation
90
+ });
91
+
92
+ if (accordionTr) {
93
+ return accordionTr;
94
+ }
95
+
45
96
  return _react.default.createElement("tr", _extends({
46
97
  role: "row",
47
98
  className: className
@@ -67,26 +118,18 @@ function useHandleTrVariant(_ref) {
67
118
  return countRef.count;
68
119
  };
69
120
 
70
- var decrement = function decrement() {
71
- if (typeof countRef === 'undefined') {
72
- return null;
73
- }
74
-
75
- if (!variant || variant === 'even' && countRef.count % 2 === 1 || variant === 'odd' && countRef.count % 2 === 0) {
76
- countRef.count--;
77
- tableContext === null || tableContext === void 0 ? void 0 : tableContext.forceRerender();
121
+ var _React$useState = _react.default.useState(function () {
122
+ if (typeof window === 'undefined') {
123
+ return increment();
78
124
  }
79
- };
80
-
81
- var count = _react.default.useMemo(increment, [tableContext === null || tableContext === void 0 ? void 0 : tableContext.rerenderAlias]);
82
-
83
- _react.default.useEffect(function () {
84
- return decrement;
85
- }, [tableContext === null || tableContext === void 0 ? void 0 : tableContext.trCountRef]);
125
+ }),
126
+ _React$useState2 = _slicedToArray(_React$useState, 2),
127
+ count = _React$useState2[0],
128
+ setCount = _React$useState2[1];
86
129
 
87
130
  _react.default.useEffect(function () {
88
- tableContext === null || tableContext === void 0 ? void 0 : tableContext.forceRerender();
89
- }, [variant]);
131
+ setCount(increment());
132
+ }, [tableContext === null || tableContext === void 0 ? void 0 : tableContext.rerenderAlias]);
90
133
 
91
134
  var currentVariant = variant;
92
135
 
@@ -97,4 +140,38 @@ function useHandleTrVariant(_ref) {
97
140
  return {
98
141
  currentVariant: currentVariant
99
142
  };
143
+ }
144
+
145
+ function useHandleOddEven(_ref2) {
146
+ var children = _ref2.children;
147
+
148
+ var trCountRef = _react.default.useRef({
149
+ count: 0
150
+ });
151
+
152
+ var _React$useState3 = _react.default.useState({}),
153
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
154
+ rerenderAlias = _React$useState4[0],
155
+ setRerenderAlias = _React$useState4[1];
156
+
157
+ var isMounted = _react.default.useRef(false);
158
+
159
+ _react.default.useEffect(function () {
160
+ if (isMounted.current) {
161
+ forceRerender();
162
+ }
163
+
164
+ isMounted.current = true;
165
+ }, [children]);
166
+
167
+ return {
168
+ trCountRef: trCountRef,
169
+ rerenderAlias: rerenderAlias,
170
+ setRerenderAlias: setRerenderAlias
171
+ };
172
+
173
+ function forceRerender() {
174
+ trCountRef.current.count = 0;
175
+ setRerenderAlias({});
176
+ }
100
177
  }