@economic/taco 1.41.0 → 2.0.0-alpha.173

Sign up to get free protection for your applications and to get access to all the features.
Files changed (418) hide show
  1. package/dist/components/Icon/components/HeightTall.d.ts +3 -0
  2. package/dist/components/Icon/components/index.d.ts +1 -1
  3. package/dist/components/Input/Input.d.ts +1 -1
  4. package/dist/components/Menu/Menu.d.ts +2 -0
  5. package/dist/components/Menu/components/Item.d.ts +6 -1
  6. package/dist/components/Menu/components/Link.d.ts +1 -1
  7. package/dist/components/Menu/components/SubMenu.d.ts +8 -0
  8. package/dist/components/Navigation2/components/Link.d.ts +1 -1
  9. package/dist/components/Popover/Popover.d.ts +3 -0
  10. package/dist/components/Provider/Localization.d.ts +55 -20
  11. package/dist/components/SearchInput/SearchInput.d.ts +2 -0
  12. package/dist/components/SearchInput2/SearchInput2.d.ts +23 -0
  13. package/dist/components/Select2/components/Option.d.ts +1 -1
  14. package/dist/components/Select2/components/Search.d.ts +1 -1
  15. package/dist/components/Table3/Table3.d.ts +11 -0
  16. package/dist/components/Table3/components/columns/cell/Cell.d.ts +6 -0
  17. package/dist/components/Table3/components/columns/cell/DisplayCell.d.ts +22 -0
  18. package/dist/components/Table3/components/columns/cell/EditingCell.d.ts +7 -0
  19. package/dist/components/Table3/components/columns/footer/Footer.d.ts +14 -0
  20. package/dist/components/Table3/components/columns/footer/Summary.d.ts +7 -0
  21. package/dist/components/Table3/components/columns/header/Goto.d.ts +6 -0
  22. package/dist/components/Table3/components/columns/header/Header.d.ts +27 -0
  23. package/dist/components/Table3/components/columns/header/Menu.d.ts +16 -0
  24. package/dist/components/Table3/components/columns/header/Resizer.d.ts +7 -0
  25. package/dist/components/Table3/components/columns/header/SortIndicator.d.ts +12 -0
  26. package/dist/components/Table3/components/columns/internal/Actions.d.ts +4 -0
  27. package/dist/components/Table3/components/columns/internal/Drag.d.ts +4 -0
  28. package/dist/components/Table3/components/columns/internal/EditingActions.d.ts +8 -0
  29. package/dist/components/Table3/components/columns/internal/Expansion.d.ts +4 -0
  30. package/dist/components/Table3/components/columns/internal/Selection.d.ts +4 -0
  31. package/dist/components/Table3/components/columns/styles.d.ts +4 -0
  32. package/dist/components/Table3/components/rows/ExpandedRow.d.ts +8 -0
  33. package/dist/components/Table3/components/rows/Row.d.ts +21 -0
  34. package/dist/components/Table3/components/rows/RowContext.d.ts +9 -0
  35. package/dist/components/Table3/components/rows/SkeletonRow.d.ts +10 -0
  36. package/dist/components/Table3/components/rows/styles.d.ts +6 -0
  37. package/dist/components/{Table2/components/ColumnSettingsButton.d.ts → Table3/components/toolbar/ColumnSettings.d.ts} +1 -1
  38. package/dist/components/Table3/components/toolbar/EditButton.d.ts +7 -0
  39. package/dist/components/Table3/components/toolbar/Filter/filters/Filters.d.ts +7 -0
  40. package/dist/components/Table3/components/toolbar/Filter/filters/components/Comparator.d.ts +11 -0
  41. package/dist/components/Table3/components/toolbar/Filter/filters/components/Filter.d.ts +13 -0
  42. package/dist/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.d.ts +8 -0
  43. package/dist/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.d.ts +7 -0
  44. package/dist/components/Table3/components/toolbar/Filter/filters/components/FilterValue.d.ts +10 -0
  45. package/dist/components/Table3/components/toolbar/Filter/filters/components/Placeholder.d.ts +11 -0
  46. package/dist/components/Table3/components/toolbar/FontSize.d.ts +7 -0
  47. package/dist/components/Table3/components/toolbar/PrintButton/PrintButton.d.ts +8 -0
  48. package/dist/components/Table3/components/toolbar/PrintButton/PrintIFrame.d.ts +8 -0
  49. package/dist/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.d.ts +1 -0
  50. package/dist/components/Table3/components/toolbar/RowHeight.d.ts +7 -0
  51. package/dist/components/Table3/components/toolbar/Search.d.ts +8 -0
  52. package/dist/components/Table3/components/toolbar/Toolbar.d.ts +12 -0
  53. package/dist/components/Table3/hooks/features/useColumnFreezing.d.ts +12 -0
  54. package/dist/components/Table3/hooks/features/useColumnOrdering.d.ts +6 -0
  55. package/dist/components/Table3/hooks/features/useCurrentRow.d.ts +9 -0
  56. package/dist/components/Table3/hooks/features/useEditing.d.ts +31 -0
  57. package/dist/components/Table3/hooks/features/useFontSize.d.ts +7 -0
  58. package/dist/components/Table3/hooks/features/usePauseHoverState.d.ts +6 -0
  59. package/dist/components/Table3/hooks/features/usePrinting.d.ts +5 -0
  60. package/dist/components/Table3/hooks/features/useRowClick.d.ts +7 -0
  61. package/dist/components/Table3/hooks/features/useRowDrag.d.ts +6 -0
  62. package/dist/components/Table3/hooks/features/useRowDrop.d.ts +5 -0
  63. package/dist/components/Table3/hooks/features/useRowGoto.d.ts +5 -0
  64. package/dist/components/Table3/hooks/features/useRowHeight.d.ts +7 -0
  65. package/dist/components/Table3/hooks/features/useRowSelection.d.ts +6 -0
  66. package/dist/components/Table3/hooks/features/useSearch.d.ts +16 -0
  67. package/dist/components/Table3/hooks/listeners/useCurrentRowListener.d.ts +2 -0
  68. package/dist/components/Table3/hooks/listeners/useEditingStateListener.d.ts +2 -0
  69. package/dist/components/Table3/hooks/listeners/useFilteringStateListener.d.ts +3 -0
  70. package/dist/components/Table3/hooks/listeners/useRowSelectionListener.d.ts +3 -0
  71. package/dist/components/Table3/hooks/listeners/useSearchStateListener.d.ts +3 -0
  72. package/dist/components/Table3/hooks/listeners/useServerLoadingListener.d.ts +3 -0
  73. package/dist/components/Table3/hooks/listeners/useSettingsStateListener.d.ts +3 -0
  74. package/dist/components/Table3/hooks/listeners/useShortcutsListener.d.ts +3 -0
  75. package/dist/components/Table3/hooks/listeners/useSortingStateListener.d.ts +3 -0
  76. package/dist/components/Table3/hooks/useConvertChildrenToColumns.d.ts +9 -0
  77. package/dist/components/Table3/hooks/useCssGrid.d.ts +5 -0
  78. package/dist/components/Table3/hooks/useCssVars.d.ts +6 -0
  79. package/dist/components/Table3/hooks/useTable.d.ts +63 -0
  80. package/dist/components/Table3/hooks/useTableData.d.ts +23 -0
  81. package/dist/components/Table3/hooks/useTablePreset.d.ts +2 -0
  82. package/dist/components/Table3/hooks/useTableRefInstanceSetup.d.ts +4 -0
  83. package/dist/components/Table3/strategies/index.d.ts +4 -0
  84. package/dist/components/Table3/strategies/virtualised.d.ts +4 -0
  85. package/dist/components/Table3/types.d.ts +311 -0
  86. package/dist/components/Table3/util/columns.d.ts +7 -0
  87. package/dist/components/{Table2/components/column/utils.d.ts → Table3/util/editing.d.ts} +2 -1
  88. package/dist/components/Table3/util/filtering.d.ts +3 -0
  89. package/dist/components/Tag/Tag.d.ts +1 -1
  90. package/dist/esm/index.css +130 -2
  91. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js +2 -2
  92. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
  93. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +2 -1
  94. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  95. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +4 -1
  96. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  97. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +1 -1
  98. package/dist/esm/packages/taco/src/components/Icon/components/FontSize.js +19 -0
  99. package/dist/esm/packages/taco/src/components/Icon/components/FontSize.js.map +1 -0
  100. package/dist/esm/packages/taco/src/components/Icon/components/{DensitySpacious.js → HeightExtraTall.js} +4 -4
  101. package/dist/esm/packages/taco/src/components/Icon/components/{DensitySpacious.js.map → HeightExtraTall.js.map} +1 -1
  102. package/dist/esm/packages/taco/src/components/Icon/components/{DensityNormal.js → HeightMedium.js} +4 -4
  103. package/dist/esm/packages/taco/src/components/Icon/components/HeightMedium.js.map +1 -0
  104. package/dist/esm/packages/taco/src/components/Icon/components/{DensityCompact.js → HeightShort.js} +4 -4
  105. package/dist/esm/packages/taco/src/components/Icon/components/HeightShort.js.map +1 -0
  106. package/dist/esm/packages/taco/src/components/Icon/components/{DensityComfortable.js → HeightTall.js} +4 -4
  107. package/dist/esm/packages/taco/src/components/Icon/components/HeightTall.js.map +1 -0
  108. package/dist/esm/packages/taco/src/components/Icon/components/index.js +10 -8
  109. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  110. package/dist/esm/packages/taco/src/components/Menu/Menu.js +2 -0
  111. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  112. package/dist/esm/packages/taco/src/components/Menu/components/Item.js +20 -2
  113. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  114. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +22 -0
  115. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -0
  116. package/dist/esm/packages/taco/src/components/Popover/Popover.js +11 -3
  117. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  118. package/dist/esm/packages/taco/src/components/Provider/Localization.js +56 -21
  119. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  120. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  121. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +196 -0
  122. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -0
  123. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  124. package/dist/esm/packages/taco/src/components/Switch/Switch.js +3 -1
  125. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  126. package/dist/esm/packages/taco/src/components/Table3/Table3.js +145 -0
  127. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -0
  128. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Cell.js +27 -0
  129. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Cell.js.map +1 -0
  130. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/DisplayCell.js +128 -0
  131. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/DisplayCell.js.map +1 -0
  132. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingCell.js +283 -0
  133. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingCell.js.map +1 -0
  134. package/dist/esm/packages/taco/src/components/{Table2/components/column → Table3/components/columns/cell}/Indicator.js +14 -13
  135. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Indicator.js.map +1 -0
  136. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Footer.js +50 -0
  137. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Footer.js.map +1 -0
  138. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js +30 -0
  139. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js.map +1 -0
  140. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Goto.js +27 -0
  141. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Goto.js.map +1 -0
  142. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js +134 -0
  143. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js.map +1 -0
  144. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Menu.js +156 -0
  145. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Menu.js.map +1 -0
  146. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Resizer.js +42 -0
  147. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Resizer.js.map +1 -0
  148. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/SortIndicator.js +38 -0
  149. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/SortIndicator.js.map +1 -0
  150. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Actions.js +108 -0
  151. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Actions.js.map +1 -0
  152. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Drag.js +86 -0
  153. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Drag.js.map +1 -0
  154. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/EditingActions.js +124 -0
  155. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/EditingActions.js.map +1 -0
  156. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Expansion.js +103 -0
  157. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Expansion.js.map +1 -0
  158. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Selection.js +121 -0
  159. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Selection.js.map +1 -0
  160. package/dist/esm/packages/taco/src/components/Table3/components/columns/styles.js +17 -0
  161. package/dist/esm/packages/taco/src/components/Table3/components/columns/styles.js.map +1 -0
  162. package/dist/esm/packages/taco/src/components/Table3/components/rows/ExpandedRow.js +27 -0
  163. package/dist/esm/packages/taco/src/components/Table3/components/rows/ExpandedRow.js.map +1 -0
  164. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js +255 -0
  165. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js.map +1 -0
  166. package/dist/esm/packages/taco/src/components/Table3/components/rows/RowContext.js +13 -0
  167. package/dist/esm/packages/taco/src/components/Table3/components/rows/RowContext.js.map +1 -0
  168. package/dist/esm/packages/taco/src/components/Table3/components/rows/SkeletonRow.js +43 -0
  169. package/dist/esm/packages/taco/src/components/Table3/components/rows/SkeletonRow.js.map +1 -0
  170. package/dist/esm/packages/taco/src/components/Table3/components/rows/styles.js +9 -0
  171. package/dist/esm/packages/taco/src/components/Table3/components/rows/styles.js.map +1 -0
  172. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/ColumnSettings.js +105 -0
  173. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/ColumnSettings.js.map +1 -0
  174. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js +45 -0
  175. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js.map +1 -0
  176. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js +148 -0
  177. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js.map +1 -0
  178. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Filter.js +107 -0
  179. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Filter.js.map +1 -0
  180. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.js +28 -0
  181. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.js.map +1 -0
  182. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.js +60 -0
  183. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.js.map +1 -0
  184. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterValue.js +89 -0
  185. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterValue.js.map +1 -0
  186. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Placeholder.js +45 -0
  187. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Placeholder.js.map +1 -0
  188. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/FontSize.js +25 -0
  189. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/FontSize.js.map +1 -0
  190. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js +99 -0
  191. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js.map +1 -0
  192. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintIFrame.js +223 -0
  193. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintIFrame.js.map +1 -0
  194. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.js +88 -0
  195. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.js.map +1 -0
  196. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/RowHeight.js +26 -0
  197. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/RowHeight.js.map +1 -0
  198. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Search.js +137 -0
  199. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Search.js.map +1 -0
  200. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Toolbar.js +85 -0
  201. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Toolbar.js.map +1 -0
  202. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnFreezing.js +87 -0
  203. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnFreezing.js.map +1 -0
  204. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnOrdering.js +45 -0
  205. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnOrdering.js.map +1 -0
  206. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useCurrentRow.js +52 -0
  207. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useCurrentRow.js.map +1 -0
  208. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js +197 -0
  209. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js.map +1 -0
  210. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useFontSize.js +13 -0
  211. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useFontSize.js.map +1 -0
  212. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePauseHoverState.js +19 -0
  213. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePauseHoverState.js.map +1 -0
  214. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePrinting.js +9 -0
  215. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePrinting.js.map +1 -0
  216. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowClick.js +25 -0
  217. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowClick.js.map +1 -0
  218. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrag.js +13 -0
  219. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrag.js.map +1 -0
  220. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrop.js +9 -0
  221. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrop.js.map +1 -0
  222. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowGoto.js +9 -0
  223. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowGoto.js.map +1 -0
  224. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowHeight.js +27 -0
  225. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowHeight.js.map +1 -0
  226. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowSelection.js +29 -0
  227. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowSelection.js.map +1 -0
  228. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSearch.js +27 -0
  229. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSearch.js.map +1 -0
  230. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useCurrentRowListener.js +14 -0
  231. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useCurrentRowListener.js.map +1 -0
  232. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useEditingStateListener.js +24 -0
  233. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useEditingStateListener.js.map +1 -0
  234. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useFilteringStateListener.js +19 -0
  235. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useFilteringStateListener.js.map +1 -0
  236. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useRowSelectionListener.js +19 -0
  237. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useRowSelectionListener.js.map +1 -0
  238. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSearchStateListener.js +51 -0
  239. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSearchStateListener.js.map +1 -0
  240. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useServerLoadingListener.js +16 -0
  241. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useServerLoadingListener.js.map +1 -0
  242. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSettingsStateListener.js +26 -0
  243. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSettingsStateListener.js.map +1 -0
  244. package/dist/esm/packages/taco/src/components/{Table2/hooks/useTableShortcuts.js → Table3/hooks/listeners/useShortcutsListener.js} +9 -6
  245. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useShortcutsListener.js.map +1 -0
  246. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSortingStateListener.js +17 -0
  247. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSortingStateListener.js.map +1 -0
  248. package/dist/esm/packages/taco/src/components/Table3/hooks/useConvertChildrenToColumns.js +116 -0
  249. package/dist/esm/packages/taco/src/components/Table3/hooks/useConvertChildrenToColumns.js.map +1 -0
  250. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssGrid.js +56 -0
  251. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssGrid.js.map +1 -0
  252. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssVars.js +61 -0
  253. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssVars.js.map +1 -0
  254. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js +154 -0
  255. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js.map +1 -0
  256. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableData.js +128 -0
  257. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableData.js.map +1 -0
  258. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js +98 -0
  259. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js.map +1 -0
  260. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableRefInstanceSetup.js +19 -0
  261. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableRefInstanceSetup.js.map +1 -0
  262. package/dist/esm/packages/taco/src/components/Table3/strategies/index.js +8 -0
  263. package/dist/esm/packages/taco/src/components/Table3/strategies/index.js.map +1 -0
  264. package/dist/esm/packages/taco/src/components/Table3/strategies/virtualised.js +113 -0
  265. package/dist/esm/packages/taco/src/components/Table3/strategies/virtualised.js.map +1 -0
  266. package/dist/esm/packages/taco/src/components/Table3/types.js +18 -0
  267. package/dist/esm/packages/taco/src/components/Table3/types.js.map +1 -0
  268. package/dist/esm/packages/taco/src/components/Table3/util/columns.js +39 -0
  269. package/dist/esm/packages/taco/src/components/Table3/util/columns.js.map +1 -0
  270. package/dist/esm/packages/taco/src/components/{Table2/components/column/utils.js → Table3/util/editing.js} +7 -5
  271. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -0
  272. package/dist/esm/packages/taco/src/components/{Table2/utilities/filterFn.js → Table3/util/filtering.js} +19 -17
  273. package/dist/esm/packages/taco/src/components/Table3/util/filtering.js.map +1 -0
  274. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +10 -5
  275. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  276. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +16 -0
  277. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -0
  278. package/dist/esm/packages/taco/src/index.js +6 -3
  279. package/dist/esm/packages/taco/src/index.js.map +1 -1
  280. package/dist/esm/packages/taco/src/primitives/Button.js +6 -17
  281. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  282. package/dist/esm/packages/taco/src/utils/dom.js +1 -2
  283. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  284. package/dist/esm/packages/taco/src/utils/input.js +14 -1
  285. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  286. package/dist/hooks/useGlobalKeyDown.d.ts +1 -1
  287. package/dist/hooks/useLazyEffect.d.ts +2 -0
  288. package/dist/index.css +130 -2
  289. package/dist/index.d.ts +3 -1
  290. package/dist/taco.cjs.development.js +4628 -3358
  291. package/dist/taco.cjs.development.js.map +1 -1
  292. package/dist/taco.cjs.production.min.js +1 -1
  293. package/dist/taco.cjs.production.min.js.map +1 -1
  294. package/dist/utils/input.d.ts +1 -0
  295. package/package.json +2 -2
  296. package/types.json +1866 -1412
  297. package/dist/components/Table2/Table2.d.ts +0 -130
  298. package/dist/components/Table2/components/BatchActionsMenu.d.ts +0 -10
  299. package/dist/components/Table2/components/EditModeButton.d.ts +0 -8
  300. package/dist/components/Table2/components/RowDensityButton.d.ts +0 -7
  301. package/dist/components/Table2/components/Search.d.ts +0 -3
  302. package/dist/components/Table2/components/ShortcutsGuideButton.d.ts +0 -7
  303. package/dist/components/Table2/components/column/Base.d.ts +0 -14
  304. package/dist/components/Table2/components/column/Cell.d.ts +0 -15
  305. package/dist/components/Table2/components/column/Footer.d.ts +0 -9
  306. package/dist/components/Table2/components/column/Header.d.ts +0 -11
  307. package/dist/components/Table2/components/column/ValidationError.d.ts +0 -5
  308. package/dist/components/Table2/components/filters/FiltersButton.d.ts +0 -7
  309. package/dist/components/Table2/components/filters/components/Column.d.ts +0 -11
  310. package/dist/components/Table2/components/filters/components/ColumnFilter.d.ts +0 -10
  311. package/dist/components/Table2/components/filters/components/Comparator.d.ts +0 -11
  312. package/dist/components/Table2/components/filters/components/EmptyFilter.d.ts +0 -13
  313. package/dist/components/Table2/components/filters/components/InferredControl.d.ts +0 -10
  314. package/dist/components/Table2/components/row/Context.d.ts +0 -24
  315. package/dist/components/Table2/components/row/ExpandedRow.d.ts +0 -6
  316. package/dist/components/Table2/components/row/Row.d.ts +0 -2
  317. package/dist/components/Table2/hooks/listeners/useActiveCellStateListener.d.ts +0 -3
  318. package/dist/components/Table2/hooks/listeners/useActiveRowStateListener.d.ts +0 -3
  319. package/dist/components/Table2/hooks/listeners/useColumnOffsetStateListener.d.ts +0 -3
  320. package/dist/components/Table2/hooks/listeners/useFilterStateListener.d.ts +0 -3
  321. package/dist/components/Table2/hooks/listeners/useRowSelectionListener.d.ts +0 -3
  322. package/dist/components/Table2/hooks/listeners/useSettingsStateListener.d.ts +0 -3
  323. package/dist/components/Table2/hooks/useActiveCell.d.ts +0 -26
  324. package/dist/components/Table2/hooks/useActiveRow.d.ts +0 -10
  325. package/dist/components/Table2/hooks/useColumnDefinitions.d.ts +0 -37
  326. package/dist/components/Table2/hooks/useEditMode.d.ts +0 -28
  327. package/dist/components/Table2/hooks/useGridTemplate.d.ts +0 -2
  328. package/dist/components/Table2/hooks/useTable.d.ts +0 -46
  329. package/dist/components/Table2/hooks/useTableShortcuts.d.ts +0 -2
  330. package/dist/components/Table2/hooks/useVirtualiser.d.ts +0 -23
  331. package/dist/components/Table2/types.d.ts +0 -148
  332. package/dist/components/Table2/utilities/cell.d.ts +0 -14
  333. package/dist/components/Table2/utilities/columns.d.ts +0 -16
  334. package/dist/components/Table2/utilities/filterFn.d.ts +0 -3
  335. package/dist/esm/packages/taco/src/components/Icon/components/DensityComfortable.js.map +0 -1
  336. package/dist/esm/packages/taco/src/components/Icon/components/DensityCompact.js.map +0 -1
  337. package/dist/esm/packages/taco/src/components/Icon/components/DensityNormal.js.map +0 -1
  338. package/dist/esm/packages/taco/src/components/Table2/Table2.js +0 -422
  339. package/dist/esm/packages/taco/src/components/Table2/Table2.js.map +0 -1
  340. package/dist/esm/packages/taco/src/components/Table2/components/BatchActionsMenu.js +0 -83
  341. package/dist/esm/packages/taco/src/components/Table2/components/BatchActionsMenu.js.map +0 -1
  342. package/dist/esm/packages/taco/src/components/Table2/components/ColumnSettingsButton.js +0 -116
  343. package/dist/esm/packages/taco/src/components/Table2/components/ColumnSettingsButton.js.map +0 -1
  344. package/dist/esm/packages/taco/src/components/Table2/components/EditModeButton.js +0 -81
  345. package/dist/esm/packages/taco/src/components/Table2/components/EditModeButton.js.map +0 -1
  346. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js +0 -35
  347. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js.map +0 -1
  348. package/dist/esm/packages/taco/src/components/Table2/components/Search.js +0 -62
  349. package/dist/esm/packages/taco/src/components/Table2/components/Search.js.map +0 -1
  350. package/dist/esm/packages/taco/src/components/Table2/components/column/Base.js +0 -32
  351. package/dist/esm/packages/taco/src/components/Table2/components/column/Base.js.map +0 -1
  352. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js +0 -600
  353. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js.map +0 -1
  354. package/dist/esm/packages/taco/src/components/Table2/components/column/Footer.js +0 -32
  355. package/dist/esm/packages/taco/src/components/Table2/components/column/Footer.js.map +0 -1
  356. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js +0 -243
  357. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js.map +0 -1
  358. package/dist/esm/packages/taco/src/components/Table2/components/column/Indicator.js.map +0 -1
  359. package/dist/esm/packages/taco/src/components/Table2/components/column/ValidationError.js +0 -30
  360. package/dist/esm/packages/taco/src/components/Table2/components/column/ValidationError.js.map +0 -1
  361. package/dist/esm/packages/taco/src/components/Table2/components/column/utils.js.map +0 -1
  362. package/dist/esm/packages/taco/src/components/Table2/components/filters/FiltersButton.js +0 -155
  363. package/dist/esm/packages/taco/src/components/Table2/components/filters/FiltersButton.js.map +0 -1
  364. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Column.js +0 -31
  365. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Column.js.map +0 -1
  366. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/ColumnFilter.js +0 -129
  367. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/ColumnFilter.js.map +0 -1
  368. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Comparator.js +0 -68
  369. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Comparator.js.map +0 -1
  370. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/EmptyFilter.js +0 -63
  371. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/EmptyFilter.js.map +0 -1
  372. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/InferredControl.js +0 -99
  373. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/InferredControl.js.map +0 -1
  374. package/dist/esm/packages/taco/src/components/Table2/components/row/Context.js +0 -58
  375. package/dist/esm/packages/taco/src/components/Table2/components/row/Context.js.map +0 -1
  376. package/dist/esm/packages/taco/src/components/Table2/components/row/ExpandedRow.js +0 -36
  377. package/dist/esm/packages/taco/src/components/Table2/components/row/ExpandedRow.js.map +0 -1
  378. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js +0 -43
  379. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js.map +0 -1
  380. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useActiveRowStateListener.js +0 -19
  381. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useActiveRowStateListener.js.map +0 -1
  382. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useColumnOffsetStateListener.js +0 -28
  383. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useColumnOffsetStateListener.js.map +0 -1
  384. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useFilterStateListener.js +0 -12
  385. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useFilterStateListener.js.map +0 -1
  386. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useRowSelectionListener.js +0 -18
  387. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useRowSelectionListener.js.map +0 -1
  388. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useSettingsStateListener.js +0 -25
  389. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useSettingsStateListener.js.map +0 -1
  390. package/dist/esm/packages/taco/src/components/Table2/hooks/useActiveRow.js +0 -33
  391. package/dist/esm/packages/taco/src/components/Table2/hooks/useActiveRow.js.map +0 -1
  392. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js +0 -122
  393. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js.map +0 -1
  394. package/dist/esm/packages/taco/src/components/Table2/hooks/useEditMode.js +0 -112
  395. package/dist/esm/packages/taco/src/components/Table2/hooks/useEditMode.js.map +0 -1
  396. package/dist/esm/packages/taco/src/components/Table2/hooks/useGridTemplate.js +0 -34
  397. package/dist/esm/packages/taco/src/components/Table2/hooks/useGridTemplate.js.map +0 -1
  398. package/dist/esm/packages/taco/src/components/Table2/hooks/useTable.js +0 -222
  399. package/dist/esm/packages/taco/src/components/Table2/hooks/useTable.js.map +0 -1
  400. package/dist/esm/packages/taco/src/components/Table2/hooks/useTableShortcuts.js.map +0 -1
  401. package/dist/esm/packages/taco/src/components/Table2/hooks/useVirtualiser.js +0 -48
  402. package/dist/esm/packages/taco/src/components/Table2/hooks/useVirtualiser.js.map +0 -1
  403. package/dist/esm/packages/taco/src/components/Table2/types.js +0 -18
  404. package/dist/esm/packages/taco/src/components/Table2/types.js.map +0 -1
  405. package/dist/esm/packages/taco/src/components/Table2/utilities/cell.js +0 -41
  406. package/dist/esm/packages/taco/src/components/Table2/utilities/cell.js.map +0 -1
  407. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js +0 -387
  408. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js.map +0 -1
  409. package/dist/esm/packages/taco/src/components/Table2/utilities/filterFn.js.map +0 -1
  410. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +0 -32
  411. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +0 -1
  412. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +0 -20
  413. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +0 -1
  414. /package/dist/components/Icon/components/{DensityComfortable.d.ts → FontSize.d.ts} +0 -0
  415. /package/dist/components/Icon/components/{DensityCompact.d.ts → HeightExtraTall.d.ts} +0 -0
  416. /package/dist/components/Icon/components/{DensityNormal.d.ts → HeightMedium.d.ts} +0 -0
  417. /package/dist/components/Icon/components/{DensitySpacious.d.ts → HeightShort.d.ts} +0 -0
  418. /package/dist/components/{Table2/components/column → Table3/components/columns/cell}/Indicator.d.ts +0 -0
@@ -1,112 +0,0 @@
1
- import React__default from 'react';
2
-
3
- var MOVE_DIR;
4
- (function (MOVE_DIR) {
5
- MOVE_DIR[MOVE_DIR["FIRST"] = 0] = "FIRST";
6
- MOVE_DIR[MOVE_DIR["LAST"] = 1] = "LAST";
7
- MOVE_DIR[MOVE_DIR["PREV"] = 2] = "PREV";
8
- MOVE_DIR[MOVE_DIR["NEXT"] = 3] = "NEXT";
9
- })(MOVE_DIR || (MOVE_DIR = {}));
10
- const useEditMode = handleSave => {
11
- const enableEditMode = !!handleSave;
12
- const [editMode, setEditMode] = React__default.useState({
13
- enableEditMode,
14
- isEditing: false,
15
- columnIndex: 0
16
- });
17
- React__default.useEffect(() => {
18
- setEditMode(editMode => ({
19
- ...editMode,
20
- enableEditMode
21
- }));
22
- }, [enableEditMode]);
23
- const _moveActiveColumn = (moveDirection, focussableColumnIndexes, moveRow) => {
24
- var _focussableColumnInde, _focussableColumnInde2;
25
- const firstDataColumnIndex = (_focussableColumnInde = focussableColumnIndexes.at(0)) !== null && _focussableColumnInde !== void 0 ? _focussableColumnInde : 0;
26
- const lastDataColumnIndex = (_focussableColumnInde2 = focussableColumnIndexes.at(-1)) !== null && _focussableColumnInde2 !== void 0 ? _focussableColumnInde2 : 0;
27
- if (!editMode.enableEditMode) {
28
- return;
29
- }
30
- setEditMode(({
31
- columnIndex: currentColumnIndex,
32
- ...currentEditMode
33
- }) => {
34
- let nextCellIndex;
35
- switch (moveDirection) {
36
- case MOVE_DIR.FIRST:
37
- nextCellIndex = firstDataColumnIndex;
38
- break;
39
- case MOVE_DIR.LAST:
40
- nextCellIndex = lastDataColumnIndex;
41
- break;
42
- case MOVE_DIR.PREV:
43
- // moves to the last data column of the previous row, if the current column is the first column
44
- if (currentColumnIndex === firstDataColumnIndex) {
45
- moveRow === null || moveRow === void 0 ? void 0 : moveRow(MOVE_DIR.PREV);
46
- nextCellIndex = lastDataColumnIndex;
47
- } else {
48
- nextCellIndex = focussableColumnIndexes[getNextIndex(-1, currentColumnIndex, focussableColumnIndexes)];
49
- }
50
- break;
51
- case MOVE_DIR.NEXT:
52
- // moves to the first data column of the next row, if the current column is the last column
53
- if (currentColumnIndex === lastDataColumnIndex) {
54
- moveRow === null || moveRow === void 0 ? void 0 : moveRow(MOVE_DIR.NEXT);
55
- nextCellIndex = firstDataColumnIndex;
56
- } else {
57
- nextCellIndex = focussableColumnIndexes[getNextIndex(1, currentColumnIndex, focussableColumnIndexes)];
58
- }
59
- break;
60
- }
61
- return {
62
- ...currentEditMode,
63
- columnIndex: nextCellIndex
64
- };
65
- });
66
- };
67
- // output
68
- const toggleEditing = (isEditing, columnIndex = 0) => {
69
- if (!editMode.enableEditMode) {
70
- return;
71
- }
72
- setEditMode(editMode => ({
73
- ...editMode,
74
- isEditing: isEditing !== null && isEditing !== void 0 ? isEditing : !editMode.isEditing,
75
- columnIndex
76
- }));
77
- };
78
- const moveToPreviousColumn = (focussableColumnIndexes, moveRow) => _moveActiveColumn(MOVE_DIR.PREV, focussableColumnIndexes, moveRow);
79
- const moveToNextColumn = (focussableColumnIndexes, moveRow) => _moveActiveColumn(MOVE_DIR.NEXT, focussableColumnIndexes, moveRow);
80
- const moveToFirstColumn = focussableColumnIndexes => _moveActiveColumn(MOVE_DIR.FIRST, focussableColumnIndexes);
81
- const moveToLastColumn = focussableColumnIndexes => _moveActiveColumn(MOVE_DIR.LAST, focussableColumnIndexes);
82
- const setColumn = columnIndex => {
83
- if (!editMode.enableEditMode) {
84
- return;
85
- }
86
- setEditMode(currentEditMode => ({
87
- ...currentEditMode,
88
- columnIndex
89
- }));
90
- };
91
- return {
92
- ...editMode,
93
- onSave: handleSave,
94
- toggleEditing,
95
- moveToPreviousColumn,
96
- moveToNextColumn,
97
- moveToFirstColumn,
98
- moveToLastColumn,
99
- setColumn
100
- };
101
- };
102
- const getNextIndex = (direction, currentIndex, focussableColumnIndexes) => {
103
- const currentIndexPosition = focussableColumnIndexes.indexOf(currentIndex);
104
- const length = focussableColumnIndexes.length;
105
- if (direction === -1) {
106
- return currentIndexPosition - 1 > 0 ? currentIndexPosition - 1 : 0;
107
- }
108
- return currentIndexPosition + 1 < length ? currentIndexPosition + 1 : currentIndexPosition;
109
- };
110
-
111
- export { MOVE_DIR, useEditMode };
112
- //# sourceMappingURL=useEditMode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useEditMode.js","sources":["../../../../../../../../src/components/Table2/hooks/useEditMode.ts"],"sourcesContent":["import React from 'react';\nimport { SaveHandler } from '../types';\n\nexport type EditModeHandler = (isEditing?: boolean) => void;\nexport type EditModeColumnMoveHandler = (columns: number[], moveRow?: (moveDirection: MOVE_DIR) => void) => void;\nexport type EditModeColumnHandler = (columnIndex: number) => void;\n\nexport type useEditMode = {\n enableEditMode: boolean;\n isEditing: boolean;\n toggleEditing: EditModeHandler;\n onSave?: SaveHandler;\n // columns\n columnIndex: number;\n moveToPreviousColumn: EditModeColumnMoveHandler;\n moveToNextColumn: EditModeColumnMoveHandler;\n moveToFirstColumn: EditModeColumnMoveHandler;\n moveToLastColumn: EditModeColumnMoveHandler;\n setColumn: EditModeColumnHandler;\n};\n\nexport type EditMode = {\n enableEditMode: boolean;\n isEditing: boolean;\n columnIndex: number;\n};\n\nexport enum MOVE_DIR {\n FIRST,\n LAST,\n PREV,\n NEXT,\n}\n\nexport const useEditMode = (handleSave?: SaveHandler): useEditMode => {\n const enableEditMode = !!handleSave;\n const [editMode, setEditMode] = React.useState<EditMode>({\n enableEditMode,\n isEditing: false,\n columnIndex: 0,\n });\n\n React.useEffect(() => {\n setEditMode(editMode => ({ ...editMode, enableEditMode }));\n }, [enableEditMode]);\n\n const _moveActiveColumn = (\n moveDirection: MOVE_DIR,\n focussableColumnIndexes: number[],\n moveRow?: (moveDirection: MOVE_DIR) => void\n ) => {\n const firstDataColumnIndex = focussableColumnIndexes.at(0) ?? 0;\n const lastDataColumnIndex = focussableColumnIndexes.at(-1) ?? 0;\n\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(({ columnIndex: currentColumnIndex, ...currentEditMode }) => {\n let nextCellIndex: number;\n\n switch (moveDirection) {\n case MOVE_DIR.FIRST:\n nextCellIndex = firstDataColumnIndex;\n break;\n case MOVE_DIR.LAST:\n nextCellIndex = lastDataColumnIndex;\n break;\n case MOVE_DIR.PREV:\n // moves to the last data column of the previous row, if the current column is the first column\n if (currentColumnIndex === firstDataColumnIndex) {\n moveRow?.(MOVE_DIR.PREV);\n nextCellIndex = lastDataColumnIndex;\n } else {\n nextCellIndex = focussableColumnIndexes[getNextIndex(-1, currentColumnIndex, focussableColumnIndexes)];\n }\n break;\n case MOVE_DIR.NEXT:\n // moves to the first data column of the next row, if the current column is the last column\n if (currentColumnIndex === lastDataColumnIndex) {\n moveRow?.(MOVE_DIR.NEXT);\n nextCellIndex = firstDataColumnIndex;\n } else {\n nextCellIndex = focussableColumnIndexes[getNextIndex(1, currentColumnIndex, focussableColumnIndexes)];\n }\n break;\n }\n\n return { ...currentEditMode, columnIndex: nextCellIndex };\n });\n };\n\n // output\n const toggleEditing = (isEditing?: boolean, columnIndex = 0) => {\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(editMode => ({ ...editMode, isEditing: isEditing ?? !editMode.isEditing, columnIndex }));\n };\n const moveToPreviousColumn = (focussableColumnIndexes: number[], moveRow?: (moveDirecttion: MOVE_DIR) => void) =>\n _moveActiveColumn(MOVE_DIR.PREV, focussableColumnIndexes, moveRow);\n const moveToNextColumn = (focussableColumnIndexes: number[], moveRow?: (moveDirecttion: MOVE_DIR) => void) =>\n _moveActiveColumn(MOVE_DIR.NEXT, focussableColumnIndexes, moveRow);\n const moveToFirstColumn = (focussableColumnIndexes: number[]) => _moveActiveColumn(MOVE_DIR.FIRST, focussableColumnIndexes);\n const moveToLastColumn = (focussableColumnIndexes: number[]) => _moveActiveColumn(MOVE_DIR.LAST, focussableColumnIndexes);\n const setColumn = (columnIndex: number) => {\n if (!editMode.enableEditMode) {\n return;\n }\n\n setEditMode(currentEditMode => ({ ...currentEditMode, columnIndex }));\n };\n\n return {\n ...editMode,\n onSave: handleSave,\n toggleEditing,\n moveToPreviousColumn,\n moveToNextColumn,\n moveToFirstColumn,\n moveToLastColumn,\n setColumn,\n };\n};\n\nconst getNextIndex = (direction: -1 | 1, currentIndex: number, focussableColumnIndexes: number[]) => {\n const currentIndexPosition = focussableColumnIndexes.indexOf(currentIndex);\n const length = focussableColumnIndexes.length;\n\n if (direction === -1) {\n return currentIndexPosition - 1 > 0 ? currentIndexPosition - 1 : 0;\n }\n\n return currentIndexPosition + 1 < length ? currentIndexPosition + 1 : currentIndexPosition;\n};\n"],"names":["MOVE_DIR","useEditMode","handleSave","enableEditMode","editMode","setEditMode","React","useState","isEditing","columnIndex","useEffect","_moveActiveColumn","moveDirection","focussableColumnIndexes","moveRow","firstDataColumnIndex","at","lastDataColumnIndex","currentColumnIndex","currentEditMode","nextCellIndex","FIRST","LAST","PREV","getNextIndex","NEXT","toggleEditing","moveToPreviousColumn","moveToNextColumn","moveToFirstColumn","moveToLastColumn","setColumn","onSave","direction","currentIndex","currentIndexPosition","indexOf","length"],"mappings":";;IA2BYA;AAAZ,WAAYA,QAAQ;EAChBA,yCAAK;EACLA,uCAAI;EACJA,uCAAI;EACJA,uCAAI;AACR,CAAC,EALWA,QAAQ,KAARA,QAAQ;MAOPC,WAAW,GAAIC,UAAwB;EAChD,MAAMC,cAAc,GAAG,CAAC,CAACD,UAAU;EACnC,MAAM,CAACE,QAAQ,EAAEC,WAAW,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAW;IACrDJ,cAAc;IACdK,SAAS,EAAE,KAAK;IAChBC,WAAW,EAAE;GAChB,CAAC;EAEFH,cAAK,CAACI,SAAS,CAAC;IACZL,WAAW,CAACD,QAAQ,KAAK;MAAE,GAAGA,QAAQ;MAAED;KAAgB,CAAC,CAAC;GAC7D,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,MAAMQ,iBAAiB,GAAG,CACtBC,aAAuB,EACvBC,uBAAiC,EACjCC,OAA2C;;IAE3C,MAAMC,oBAAoB,4BAAGF,uBAAuB,CAACG,EAAE,CAAC,CAAC,CAAC,yEAAI,CAAC;IAC/D,MAAMC,mBAAmB,6BAAGJ,uBAAuB,CAACG,EAAE,CAAC,CAAC,CAAC,CAAC,2EAAI,CAAC;IAE/D,IAAI,CAACZ,QAAQ,CAACD,cAAc,EAAE;MAC1B;;IAGJE,WAAW,CAAC,CAAC;MAAEI,WAAW,EAAES,kBAAkB;MAAE,GAAGC;KAAiB;MAChE,IAAIC,aAAqB;MAEzB,QAAQR,aAAa;QACjB,KAAKZ,QAAQ,CAACqB,KAAK;UACfD,aAAa,GAAGL,oBAAoB;UACpC;QACJ,KAAKf,QAAQ,CAACsB,IAAI;UACdF,aAAa,GAAGH,mBAAmB;UACnC;QACJ,KAAKjB,QAAQ,CAACuB,IAAI;;UAEd,IAAIL,kBAAkB,KAAKH,oBAAoB,EAAE;YAC7CD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAGd,QAAQ,CAACuB,IAAI,CAAC;YACxBH,aAAa,GAAGH,mBAAmB;WACtC,MAAM;YACHG,aAAa,GAAGP,uBAAuB,CAACW,YAAY,CAAC,CAAC,CAAC,EAAEN,kBAAkB,EAAEL,uBAAuB,CAAC,CAAC;;UAE1G;QACJ,KAAKb,QAAQ,CAACyB,IAAI;;UAEd,IAAIP,kBAAkB,KAAKD,mBAAmB,EAAE;YAC5CH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAGd,QAAQ,CAACyB,IAAI,CAAC;YACxBL,aAAa,GAAGL,oBAAoB;WACvC,MAAM;YACHK,aAAa,GAAGP,uBAAuB,CAACW,YAAY,CAAC,CAAC,EAAEN,kBAAkB,EAAEL,uBAAuB,CAAC,CAAC;;UAEzG;;MAGR,OAAO;QAAE,GAAGM,eAAe;QAAEV,WAAW,EAAEW;OAAe;KAC5D,CAAC;GACL;;EAGD,MAAMM,aAAa,GAAG,CAAClB,SAAmB,EAAEC,WAAW,GAAG,CAAC;IACvD,IAAI,CAACL,QAAQ,CAACD,cAAc,EAAE;MAC1B;;IAGJE,WAAW,CAACD,QAAQ,KAAK;MAAE,GAAGA,QAAQ;MAAEI,SAAS,EAAEA,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,CAACJ,QAAQ,CAACI,SAAS;MAAEC;KAAa,CAAC,CAAC;GACvG;EACD,MAAMkB,oBAAoB,GAAG,CAACd,uBAAiC,EAAEC,OAA4C,KACzGH,iBAAiB,CAACX,QAAQ,CAACuB,IAAI,EAAEV,uBAAuB,EAAEC,OAAO,CAAC;EACtE,MAAMc,gBAAgB,GAAG,CAACf,uBAAiC,EAAEC,OAA4C,KACrGH,iBAAiB,CAACX,QAAQ,CAACyB,IAAI,EAAEZ,uBAAuB,EAAEC,OAAO,CAAC;EACtE,MAAMe,iBAAiB,GAAIhB,uBAAiC,IAAKF,iBAAiB,CAACX,QAAQ,CAACqB,KAAK,EAAER,uBAAuB,CAAC;EAC3H,MAAMiB,gBAAgB,GAAIjB,uBAAiC,IAAKF,iBAAiB,CAACX,QAAQ,CAACsB,IAAI,EAAET,uBAAuB,CAAC;EACzH,MAAMkB,SAAS,GAAItB,WAAmB;IAClC,IAAI,CAACL,QAAQ,CAACD,cAAc,EAAE;MAC1B;;IAGJE,WAAW,CAACc,eAAe,KAAK;MAAE,GAAGA,eAAe;MAAEV;KAAa,CAAC,CAAC;GACxE;EAED,OAAO;IACH,GAAGL,QAAQ;IACX4B,MAAM,EAAE9B,UAAU;IAClBwB,aAAa;IACbC,oBAAoB;IACpBC,gBAAgB;IAChBC,iBAAiB;IACjBC,gBAAgB;IAChBC;GACH;AACL;AAEA,MAAMP,YAAY,GAAG,CAACS,SAAiB,EAAEC,YAAoB,EAAErB,uBAAiC;EAC5F,MAAMsB,oBAAoB,GAAGtB,uBAAuB,CAACuB,OAAO,CAACF,YAAY,CAAC;EAC1E,MAAMG,MAAM,GAAGxB,uBAAuB,CAACwB,MAAM;EAE7C,IAAIJ,SAAS,KAAK,CAAC,CAAC,EAAE;IAClB,OAAOE,oBAAoB,GAAG,CAAC,GAAG,CAAC,GAAGA,oBAAoB,GAAG,CAAC,GAAG,CAAC;;EAGtE,OAAOA,oBAAoB,GAAG,CAAC,GAAGE,MAAM,GAAGF,oBAAoB,GAAG,CAAC,GAAGA,oBAAoB;AAC9F,CAAC;;;;"}
@@ -1,34 +0,0 @@
1
- import { COLUMN_ID_FOR_ACTIONS, isInternalColumn } from '../utilities/columns.js';
2
-
3
- const useGridTemplate = table => {
4
- const allVisibleColumns = table.getVisibleLeafColumns();
5
- return allVisibleColumns.reduce((accum, column, index) => {
6
- let size;
7
- const isLastColumn = index === allVisibleColumns.length - 1;
8
- const width = table.getState().columnSizing[column.id];
9
- if (column.id === COLUMN_ID_FOR_ACTIONS) {
10
- size = `minmax(max-content, auto)`;
11
- } else if (isInternalColumn(column.id)) {
12
- size = `${column.getSize()}px`;
13
- } else if (width) {
14
- if (width === '1fr') {
15
- size = 'minmax(max-content, 1fr)';
16
- } else if (isLastColumn) {
17
- size = `minmax(${width}px, auto)`;
18
- } else if (column.columnDef.minSize && width < column.columnDef.minSize) {
19
- // react-table is supposed to handle minSize itself but it is really buggy
20
- size = `${column.columnDef.minSize}px`;
21
- } else {
22
- size = `${width}px`;
23
- }
24
- } else if (column.getCanResize()) {
25
- size = 'minmax(max-content, auto)';
26
- } else {
27
- size = 'max-content';
28
- }
29
- return `${accum} ${size}`;
30
- }, '');
31
- };
32
-
33
- export { useGridTemplate };
34
- //# sourceMappingURL=useGridTemplate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useGridTemplate.js","sources":["../../../../../../../../src/components/Table2/hooks/useGridTemplate.ts"],"sourcesContent":["import { Table } from '@tanstack/react-table';\nimport { COLUMN_ID_FOR_ACTIONS, isInternalColumn } from '../utilities/columns';\n\nexport const useGridTemplate = (table: Table<any>) => {\n const allVisibleColumns = table.getVisibleLeafColumns();\n\n return allVisibleColumns.reduce((accum, column, index) => {\n let size;\n const isLastColumn = index === allVisibleColumns.length - 1;\n const width = table.getState().columnSizing[column.id] as number | '1fr';\n\n if (column.id === COLUMN_ID_FOR_ACTIONS) {\n size = `minmax(max-content, auto)`;\n } else if (isInternalColumn(column.id)) {\n size = `${column.getSize()}px`;\n } else if (width) {\n if (width === '1fr') {\n size = 'minmax(max-content, 1fr)';\n } else if (isLastColumn) {\n size = `minmax(${width}px, auto)`;\n } else if (column.columnDef.minSize && width < column.columnDef.minSize) {\n // react-table is supposed to handle minSize itself but it is really buggy\n size = `${column.columnDef.minSize}px`;\n } else {\n size = `${width}px`;\n }\n } else if (column.getCanResize()) {\n size = 'minmax(max-content, auto)';\n } else {\n size = 'max-content';\n }\n\n return `${accum} ${size}`;\n }, '');\n};\n"],"names":["useGridTemplate","table","allVisibleColumns","getVisibleLeafColumns","reduce","accum","column","index","size","isLastColumn","length","width","getState","columnSizing","id","COLUMN_ID_FOR_ACTIONS","isInternalColumn","getSize","columnDef","minSize","getCanResize"],"mappings":";;MAGaA,eAAe,GAAIC,KAAiB;EAC7C,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,qBAAqB,EAAE;EAEvD,OAAOD,iBAAiB,CAACE,MAAM,CAAC,CAACC,KAAK,EAAEC,MAAM,EAAEC,KAAK;IACjD,IAAIC,IAAI;IACR,MAAMC,YAAY,GAAGF,KAAK,KAAKL,iBAAiB,CAACQ,MAAM,GAAG,CAAC;IAC3D,MAAMC,KAAK,GAAGV,KAAK,CAACW,QAAQ,EAAE,CAACC,YAAY,CAACP,MAAM,CAACQ,EAAE,CAAmB;IAExE,IAAIR,MAAM,CAACQ,EAAE,KAAKC,qBAAqB,EAAE;MACrCP,IAAI,8BAA8B;KACrC,MAAM,IAAIQ,gBAAgB,CAACV,MAAM,CAACQ,EAAE,CAAC,EAAE;MACpCN,IAAI,MAAMF,MAAM,CAACW,OAAO,MAAM;KACjC,MAAM,IAAIN,KAAK,EAAE;MACd,IAAIA,KAAK,KAAK,KAAK,EAAE;QACjBH,IAAI,GAAG,0BAA0B;OACpC,MAAM,IAAIC,YAAY,EAAE;QACrBD,IAAI,aAAaG,gBAAgB;OACpC,MAAM,IAAIL,MAAM,CAACY,SAAS,CAACC,OAAO,IAAIR,KAAK,GAAGL,MAAM,CAACY,SAAS,CAACC,OAAO,EAAE;;QAErEX,IAAI,MAAMF,MAAM,CAACY,SAAS,CAACC,WAAW;OACzC,MAAM;QACHX,IAAI,MAAMG,SAAS;;KAE1B,MAAM,IAAIL,MAAM,CAACc,YAAY,EAAE,EAAE;MAC9BZ,IAAI,GAAG,2BAA2B;KACrC,MAAM;MACHA,IAAI,GAAG,aAAa;;IAGxB,UAAUH,SAASG,MAAM;GAC5B,EAAE,EAAE,CAAC;AACV;;;;"}
@@ -1,222 +0,0 @@
1
- import React__default from 'react';
2
- import { useIsHoverStatePaused } from '../../../hooks/useIsHoverStatePaused.js';
3
- import { getSortedRowModel, getFilteredRowModel, useReactTable, getCoreRowModel } from '@tanstack/react-table';
4
- import { ensureOrdering } from '../utilities/columns.js';
5
- import { columnFilterFn, globalFilterFn } from '../utilities/filterFn.js';
6
- import { useEditMode } from './useEditMode.js';
7
- import { useColumnDefinitions } from './useColumnDefinitions.js';
8
- import { useColumnOffsetStateListener } from './listeners/useColumnOffsetStateListener.js';
9
- import { useRowSelectionListener } from './listeners/useRowSelectionListener.js';
10
- import { useSettingsStateListener } from './listeners/useSettingsStateListener.js';
11
- import { useActiveRow } from './useActiveRow.js';
12
- import { useActiveRowStateListener } from './listeners/useActiveRowStateListener.js';
13
- import { useFilterStateListener } from './listeners/useFilterStateListener.js';
14
- import { useTableShortcuts } from './useTableShortcuts.js';
15
-
16
- const ACTIONS_ON_ROW_LENGTH = 4;
17
- function useTable(children, props, ref) {
18
- var _settings$frozenColum, _settings$columnSizin, _settings$columnVisib, _settings$rowDensity, _tableRows$activeRow$;
19
- const {
20
- actionsForRow = [],
21
- actionsForRowLength = ACTIONS_ON_ROW_LENGTH,
22
- data,
23
- defaultActiveRowIndex,
24
- disableColumnFiltering = false,
25
- disableColumnHiding = false,
26
- disableColumnFreezing = false,
27
- disableColumnReordering = false,
28
- disableColumnResizing = false,
29
- disableRowDensity = false,
30
- disableRowExpansion = false,
31
- disableRowSelection = false,
32
- disableMultipleRowSelection = false,
33
- disableSearch = false,
34
- disableSorting = false,
35
- expandedRowRenderer,
36
- manualColumnFiltering = false,
37
- manualSearch = false,
38
- manualSorting = false,
39
- onChangeSettings,
40
- onRowClick,
41
- onRowDrag,
42
- onRowSelect,
43
- onSave,
44
- settings = {},
45
- shortcuts,
46
- // experimental
47
- _experimentalActionsForTable
48
- } = props;
49
- const enableRowExpansion = !disableRowExpansion && !!expandedRowRenderer;
50
- const enableRowSelection = !disableRowSelection && (!!onRowSelect || !!(_experimentalActionsForTable !== null && _experimentalActionsForTable !== void 0 && _experimentalActionsForTable.length));
51
- const enableMultipleRowSelection = !disableMultipleRowSelection && enableRowSelection;
52
- const {
53
- columns,
54
- internalFrozenColumnCount,
55
- defaultColumnSizing,
56
- defaultSorting,
57
- defaultColumnVisibility,
58
- footers
59
- } = useColumnDefinitions(children, {
60
- actionsForRow,
61
- actionsForRowLength,
62
- enableColumnFiltering: !disableColumnFiltering,
63
- enableColumnHiding: !disableColumnHiding,
64
- enableColumnFreezing: !disableColumnFreezing,
65
- enableRowExpansion,
66
- enableRowSelection,
67
- enableMultipleRowSelection,
68
- expandedRowRenderer,
69
- onRowDrag
70
- }, ref);
71
- const lastSortedOrFilteredRows = React__default.useRef(null);
72
- const totalFrozenColumns = internalFrozenColumnCount + ((_settings$frozenColum = settings === null || settings === void 0 ? void 0 : settings.frozenColumnCount) !== null && _settings$frozenColum !== void 0 ? _settings$frozenColum : 0);
73
- const frozenColumns = columns.slice(0, totalFrozenColumns).map(column => column.id);
74
- // defaults
75
- const initialState = {
76
- columnOrder: ensureOrdering(columns, settings === null || settings === void 0 ? void 0 : settings.columnOrder),
77
- columnPinning: {
78
- left: frozenColumns,
79
- right: []
80
- },
81
- columnSizing: (_settings$columnSizin = settings === null || settings === void 0 ? void 0 : settings.columnSizing) !== null && _settings$columnSizin !== void 0 ? _settings$columnSizin : defaultColumnSizing,
82
- columnVisibility: (_settings$columnVisib = settings === null || settings === void 0 ? void 0 : settings.columnVisibility) !== null && _settings$columnVisib !== void 0 ? _settings$columnVisib : defaultColumnVisibility
83
- };
84
- // Data column index - these are needed to make sure left and right arrow key shortcuts focuses only the data columns
85
- const dataColumnStartOffset = [!!onRowDrag, !!enableRowExpansion, !!enableRowSelection].reduce((t, e) => t + (e ? 1 : 0), 0);
86
- const dataColumnEndOffset = actionsForRow.length ? 1 : 0;
87
- // custom
88
- const activeRow = useActiveRow(defaultActiveRowIndex);
89
- const [shouldPauseHoverState, setShouldPauseHoverState] = useIsHoverStatePaused();
90
- const editMode = useEditMode(onSave);
91
- const [columnOffsets, setColumnOffsets] = React__default.useState({});
92
- const [rowDensity, setRowDensity] = React__default.useState((_settings$rowDensity = settings === null || settings === void 0 ? void 0 : settings.rowDensity) !== null && _settings$rowDensity !== void 0 ? _settings$rowDensity : 'normal');
93
- const [dragging, setDragging] = React__default.useState({});
94
- const [shouldPauseSortingAndFiltering, setShouldPauseSortingAndFiltering] = React__default.useState(false);
95
- const [shouldDisableTableActions, setShouldDisableTableActions] = React__default.useState(false);
96
- // Frozen column count is the count of external columns that are frozen
97
- const [frozenColumnsCount, setFrozenColumnsCount] = React__default.useState(totalFrozenColumns - internalFrozenColumnCount);
98
- // For some reason, using state instead of ref didn't work as expected, that's why ref is used
99
- const focussableColumnIndexes = React__default.useRef([]);
100
- // some options get set even if they are undefined, so we have to do it conditionally
101
- const options = {
102
- enableExpanding: enableRowExpansion,
103
- enableColumnFilters: !disableColumnFiltering,
104
- enableColumnResizing: !disableColumnResizing,
105
- enableGlobalFilter: !disableSearch,
106
- enableHiding: !disableColumnHiding,
107
- enablePinning: !disableColumnFreezing,
108
- enableRowSelection: enableRowSelection,
109
- enableMultiRowSelection: enableMultipleRowSelection,
110
- enableSorting: !disableSorting
111
- };
112
- // resizing
113
- if (options.enableColumnResizing) {
114
- options.columnResizeMode = 'onChange';
115
- }
116
- // sorting
117
- if (options.enableSorting) {
118
- const sanitizeSortedColumns = column => columns.find(definedColumn => definedColumn.id === column.id);
119
- initialState.sorting = settings !== null && settings !== void 0 && settings.sorting ? settings === null || settings === void 0 ? void 0 : settings.sorting.filter(sanitizeSortedColumns) : defaultSorting;
120
- if (manualSorting) {
121
- options.manualSorting = true;
122
- } else {
123
- options.getSortedRowModel = getSortedRowModel();
124
- }
125
- }
126
- // filtering
127
- if (options.enableColumnFilters) {
128
- var _settings$columnFilte;
129
- initialState.columnFilters = (_settings$columnFilte = settings === null || settings === void 0 ? void 0 : settings.columnFilters) !== null && _settings$columnFilte !== void 0 ? _settings$columnFilte : [];
130
- if (manualColumnFiltering) {
131
- options.manualFiltering = true;
132
- } else {
133
- options.filterFns = {
134
- tacoFilter: (row, columnId, filter) => columnFilterFn(row.getValue(columnId), filter)
135
- };
136
- options.getFilteredRowModel = getFilteredRowModel();
137
- }
138
- }
139
- // search
140
- if (options.enableGlobalFilter) {
141
- if (manualSearch) {
142
- options.manualFiltering = true;
143
- } else {
144
- options.globalFilterFn = (row, columnId, query) => globalFilterFn(row.getValue(columnId), query);
145
- options.getFilteredRowModel = getFilteredRowModel();
146
- }
147
- }
148
- const table = useReactTable({
149
- data,
150
- columns: columns,
151
- getCoreRowModel: getCoreRowModel(),
152
- initialState,
153
- ...options,
154
- meta: {
155
- ...activeRow,
156
- editMode,
157
- // offsets
158
- columnOffsets,
159
- // density
160
- enableRowDensity: !disableRowDensity,
161
- rowDensity,
162
- setRowDensity,
163
- // dragging
164
- enableRowDragging: !!onRowDrag,
165
- dragging,
166
- setDragging,
167
- // computed
168
- enableColumnFreezing: !disableColumnFreezing,
169
- enableColumnReordering: !disableColumnReordering,
170
- enableColumnHiding: !disableColumnHiding,
171
- shouldPauseHoverState,
172
- setShouldPauseHoverState,
173
- frozenColumnsCount,
174
- setFrozenColumnsCount,
175
- // resorting
176
- shouldPauseSortingAndFiltering,
177
- setShouldPauseSortingAndFiltering,
178
- // other
179
- onRowClick,
180
- // data column positions
181
- dataColumnStartOffset,
182
- dataColumnEndOffset,
183
- // disable table actions
184
- shouldDisableTableActions,
185
- setShouldDisableTableActions,
186
- // active row column indexes
187
- focussableColumnIndexes: focussableColumnIndexes.current,
188
- addFocussableColumnIndex: index => {
189
- if (!focussableColumnIndexes.current.includes(index)) {
190
- focussableColumnIndexes.current = [...focussableColumnIndexes.current, index].sort((a, b) => a - b);
191
- }
192
- },
193
- resetFocussableColumnIndexes: () => {
194
- focussableColumnIndexes.current = [];
195
- },
196
- // table ref
197
- tableRef: ref,
198
- // last sorted or filtered rows
199
- lastSortedOrFilteredRows
200
- }
201
- });
202
- const tableRows = table.getRowModel().rows;
203
- if (!shouldPauseSortingAndFiltering) {
204
- lastSortedOrFilteredRows.current = tableRows;
205
- }
206
- const rows = shouldPauseSortingAndFiltering ? lastSortedOrFilteredRows.current : tableRows;
207
- // state listeners
208
- useActiveRowStateListener(table, rows, activeRow);
209
- useColumnOffsetStateListener(table, setColumnOffsets);
210
- useFilterStateListener(table, onRowSelect);
211
- useRowSelectionListener(table, onRowSelect);
212
- useSettingsStateListener(table, onChangeSettings);
213
- useTableShortcuts(shortcuts, (_tableRows$activeRow$ = tableRows[activeRow.activeRowIndex]) === null || _tableRows$activeRow$ === void 0 ? void 0 : _tableRows$activeRow$.original);
214
- return {
215
- rows,
216
- table,
217
- footers
218
- };
219
- }
220
-
221
- export { useTable };
222
- //# sourceMappingURL=useTable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTable.js","sources":["../../../../../../../../src/components/Table2/hooks/useTable.ts"],"sourcesContent":["import React from 'react';\nimport {\n useReactTable,\n getCoreRowModel,\n OnChangeFn,\n getSortedRowModel,\n getFilteredRowModel,\n RowData,\n TableState,\n TableOptions,\n} from '@tanstack/react-table';\nimport { RowClickHandler, RowDensity, Table2Children, Table2Props } from '../types';\nimport { useColumnDefinitions } from './useColumnDefinitions';\nimport { useColumnOffsetStateListener } from './listeners/useColumnOffsetStateListener';\nimport { ColumnOffsetState } from '../types';\nimport { useRowSelectionListener } from './listeners/useRowSelectionListener';\nimport { useSettingsStateListener } from './listeners/useSettingsStateListener';\nimport { columnFilterFn, globalFilterFn } from '../utilities/filterFn';\nimport { ActiveRowHandler, ActiveRowMoveHandler, useActiveRow } from './useActiveRow';\nimport { useActiveRowStateListener } from './listeners/useActiveRowStateListener';\nimport { useEditMode } from './useEditMode';\nimport { useIsHoverStatePaused } from '../../../hooks/useIsHoverStatePaused';\nimport { useFilterStateListener } from './listeners/useFilterStateListener';\nimport { ensureOrdering } from '../utilities/columns';\nimport { useTableShortcuts } from './useTableShortcuts';\n\ndeclare module '@tanstack/table-core' {\n interface TableMeta<TData extends RowData> {\n // active row\n activeRowIndex: number;\n setActiveRowIndex: ActiveRowHandler;\n moveToPreviousRow: ActiveRowMoveHandler<TData>;\n moveToNextRow: ActiveRowMoveHandler<TData>;\n // offsets\n columnOffsets: ColumnOffsetState;\n // density\n enableRowDensity: boolean;\n rowDensity: RowDensity;\n setRowDensity: OnChangeFn<RowDensity>;\n // dragging\n enableRowDragging: boolean;\n dragging: Record<string, boolean>;\n setDragging: OnChangeFn<Record<string, boolean>>;\n // computed\n enableColumnFreezing: boolean;\n enableColumnReordering: boolean;\n enableColumnHiding: boolean;\n shouldPauseSortingAndFiltering: boolean;\n setShouldPauseSortingAndFiltering: OnChangeFn<boolean>;\n shouldPauseHoverState: boolean;\n setShouldPauseHoverState: OnChangeFn<boolean>;\n frozenColumnsCount: number;\n setFrozenColumnsCount: OnChangeFn<number>;\n // other\n onRowClick?: RowClickHandler<TData>;\n // editing\n editMode: useEditMode;\n // used to determine first and last data column position\n dataColumnStartOffset: number;\n dataColumnEndOffset: number;\n // disable table actions\n shouldDisableTableActions: boolean;\n setShouldDisableTableActions: OnChangeFn<boolean>;\n // active row column indexes\n focussableColumnIndexes: number[];\n addFocussableColumnIndex: (index: number) => void;\n resetFocussableColumnIndexes: () => void;\n // table ref\n tableRef: React.RefObject<HTMLDivElement>;\n // last sorted or filtered rows\n lastSortedOrFilteredRows: React.MutableRefObject<Array<any>>;\n }\n}\n\nconst ACTIONS_ON_ROW_LENGTH = 4;\n\nexport function useTable<TType = any>(children: Table2Children, props: Table2Props<TType>, ref: React.RefObject<HTMLDivElement>) {\n const {\n actionsForRow = [],\n actionsForRowLength = ACTIONS_ON_ROW_LENGTH,\n data,\n defaultActiveRowIndex,\n disableColumnFiltering = false,\n disableColumnHiding = false,\n disableColumnFreezing = false,\n disableColumnReordering = false,\n disableColumnResizing = false,\n disableRowDensity = false,\n disableRowExpansion = false,\n disableRowSelection = false,\n disableMultipleRowSelection = false,\n disableSearch = false,\n disableSorting = false,\n expandedRowRenderer,\n manualColumnFiltering = false,\n manualSearch = false,\n manualSorting = false,\n onChangeSettings,\n onRowClick,\n onRowDrag,\n onRowSelect,\n onSave,\n settings = {},\n shortcuts,\n // experimental\n _experimentalActionsForTable,\n } = props;\n\n const enableRowExpansion = !disableRowExpansion && !!expandedRowRenderer;\n const enableRowSelection = !disableRowSelection && (!!onRowSelect || !!_experimentalActionsForTable?.length);\n const enableMultipleRowSelection = !disableMultipleRowSelection && enableRowSelection;\n\n const { columns, internalFrozenColumnCount, defaultColumnSizing, defaultSorting, defaultColumnVisibility, footers } =\n useColumnDefinitions<TType>(\n children,\n {\n actionsForRow,\n actionsForRowLength,\n enableColumnFiltering: !disableColumnFiltering,\n enableColumnHiding: !disableColumnHiding,\n enableColumnFreezing: !disableColumnFreezing,\n enableRowExpansion,\n enableRowSelection,\n enableMultipleRowSelection,\n expandedRowRenderer,\n onRowDrag,\n },\n ref\n );\n\n const lastSortedOrFilteredRows = React.useRef<any>(null);\n const totalFrozenColumns = internalFrozenColumnCount + (settings?.frozenColumnCount ?? 0);\n const frozenColumns = columns.slice(0, totalFrozenColumns).map(column => column.id);\n\n // defaults\n const initialState: Partial<TableState> = {\n columnOrder: ensureOrdering<TType>(columns, settings?.columnOrder),\n columnPinning: {\n left: frozenColumns,\n right: [],\n },\n columnSizing: settings?.columnSizing ?? defaultColumnSizing,\n columnVisibility: settings?.columnVisibility ?? defaultColumnVisibility,\n };\n\n // Data column index - these are needed to make sure left and right arrow key shortcuts focuses only the data columns\n const dataColumnStartOffset = [!!onRowDrag, !!enableRowExpansion, !!enableRowSelection].reduce((t, e) => t + (e ? 1 : 0), 0);\n const dataColumnEndOffset = actionsForRow.length ? 1 : 0;\n\n // custom\n const activeRow = useActiveRow<TType>(defaultActiveRowIndex);\n const [shouldPauseHoverState, setShouldPauseHoverState] = useIsHoverStatePaused();\n const editMode = useEditMode(onSave);\n const [columnOffsets, setColumnOffsets] = React.useState({});\n const [rowDensity, setRowDensity] = React.useState<RowDensity>(settings?.rowDensity ?? 'normal');\n const [dragging, setDragging] = React.useState<Record<string, boolean>>({});\n const [shouldPauseSortingAndFiltering, setShouldPauseSortingAndFiltering] = React.useState<boolean>(false);\n const [shouldDisableTableActions, setShouldDisableTableActions] = React.useState<boolean>(false);\n // Frozen column count is the count of external columns that are frozen\n const [frozenColumnsCount, setFrozenColumnsCount] = React.useState(totalFrozenColumns - internalFrozenColumnCount);\n // For some reason, using state instead of ref didn't work as expected, that's why ref is used\n const focussableColumnIndexes = React.useRef<number[]>([]);\n\n // some options get set even if they are undefined, so we have to do it conditionally\n const options: Partial<TableOptions<any>> = {\n enableExpanding: enableRowExpansion,\n enableColumnFilters: !disableColumnFiltering,\n enableColumnResizing: !disableColumnResizing,\n enableGlobalFilter: !disableSearch,\n enableHiding: !disableColumnHiding,\n enablePinning: !disableColumnFreezing,\n enableRowSelection: enableRowSelection,\n enableMultiRowSelection: enableMultipleRowSelection,\n enableSorting: !disableSorting,\n };\n\n // resizing\n if (options.enableColumnResizing) {\n options.columnResizeMode = 'onChange';\n }\n\n // sorting\n if (options.enableSorting) {\n const sanitizeSortedColumns = column => columns.find(definedColumn => definedColumn.id === column.id);\n initialState.sorting = settings?.sorting ? settings?.sorting.filter(sanitizeSortedColumns) : defaultSorting;\n\n if (manualSorting) {\n options.manualSorting = true;\n } else {\n options.getSortedRowModel = getSortedRowModel();\n }\n }\n\n // filtering\n if (options.enableColumnFilters) {\n initialState.columnFilters = settings?.columnFilters ?? [];\n\n if (manualColumnFiltering) {\n options.manualFiltering = true;\n } else {\n options.filterFns = {\n tacoFilter: (row, columnId, filter) => columnFilterFn(row.getValue(columnId), filter),\n };\n options.getFilteredRowModel = getFilteredRowModel();\n }\n }\n\n // search\n if (options.enableGlobalFilter) {\n if (manualSearch) {\n options.manualFiltering = true;\n } else {\n options.globalFilterFn = (row, columnId, query) => globalFilterFn(row.getValue(columnId), query);\n options.getFilteredRowModel = getFilteredRowModel();\n }\n }\n\n const table = useReactTable({\n data,\n columns: columns as any,\n getCoreRowModel: getCoreRowModel(),\n initialState,\n ...options,\n meta: {\n ...activeRow,\n editMode,\n // offsets\n columnOffsets,\n // density\n enableRowDensity: !disableRowDensity,\n rowDensity,\n setRowDensity,\n // dragging\n enableRowDragging: !!onRowDrag,\n dragging,\n setDragging,\n // computed\n enableColumnFreezing: !disableColumnFreezing,\n enableColumnReordering: !disableColumnReordering,\n enableColumnHiding: !disableColumnHiding,\n shouldPauseHoverState,\n setShouldPauseHoverState,\n frozenColumnsCount,\n setFrozenColumnsCount,\n // resorting\n shouldPauseSortingAndFiltering,\n setShouldPauseSortingAndFiltering,\n // other\n onRowClick,\n // data column positions\n dataColumnStartOffset,\n dataColumnEndOffset,\n // disable table actions\n shouldDisableTableActions,\n setShouldDisableTableActions,\n // active row column indexes\n focussableColumnIndexes: focussableColumnIndexes.current,\n addFocussableColumnIndex: (index: number) => {\n if (!focussableColumnIndexes.current.includes(index)) {\n focussableColumnIndexes.current = [...focussableColumnIndexes.current, index].sort((a, b) => a - b);\n }\n },\n resetFocussableColumnIndexes: () => {\n focussableColumnIndexes.current = [];\n },\n // table ref\n tableRef: ref,\n // last sorted or filtered rows\n lastSortedOrFilteredRows,\n },\n });\n\n const tableRows = table.getRowModel().rows;\n\n if (!shouldPauseSortingAndFiltering) {\n lastSortedOrFilteredRows.current = tableRows;\n }\n\n const rows = shouldPauseSortingAndFiltering ? lastSortedOrFilteredRows.current : tableRows;\n\n // state listeners\n useActiveRowStateListener<TType>(table, rows, activeRow);\n useColumnOffsetStateListener(table, setColumnOffsets);\n useFilterStateListener<TType>(table, onRowSelect);\n useRowSelectionListener<TType>(table, onRowSelect);\n useSettingsStateListener(table, onChangeSettings);\n\n useTableShortcuts(shortcuts, tableRows[activeRow.activeRowIndex]?.original);\n\n return { rows, table, footers };\n}\n"],"names":["ACTIONS_ON_ROW_LENGTH","useTable","children","props","ref","actionsForRow","actionsForRowLength","data","defaultActiveRowIndex","disableColumnFiltering","disableColumnHiding","disableColumnFreezing","disableColumnReordering","disableColumnResizing","disableRowDensity","disableRowExpansion","disableRowSelection","disableMultipleRowSelection","disableSearch","disableSorting","expandedRowRenderer","manualColumnFiltering","manualSearch","manualSorting","onChangeSettings","onRowClick","onRowDrag","onRowSelect","onSave","settings","shortcuts","_experimentalActionsForTable","enableRowExpansion","enableRowSelection","length","enableMultipleRowSelection","columns","internalFrozenColumnCount","defaultColumnSizing","defaultSorting","defaultColumnVisibility","footers","useColumnDefinitions","enableColumnFiltering","enableColumnHiding","enableColumnFreezing","lastSortedOrFilteredRows","React","useRef","totalFrozenColumns","frozenColumnCount","frozenColumns","slice","map","column","id","initialState","columnOrder","ensureOrdering","columnPinning","left","right","columnSizing","columnVisibility","dataColumnStartOffset","reduce","t","e","dataColumnEndOffset","activeRow","useActiveRow","shouldPauseHoverState","setShouldPauseHoverState","useIsHoverStatePaused","editMode","useEditMode","columnOffsets","setColumnOffsets","useState","rowDensity","setRowDensity","dragging","setDragging","shouldPauseSortingAndFiltering","setShouldPauseSortingAndFiltering","shouldDisableTableActions","setShouldDisableTableActions","frozenColumnsCount","setFrozenColumnsCount","focussableColumnIndexes","options","enableExpanding","enableColumnFilters","enableColumnResizing","enableGlobalFilter","enableHiding","enablePinning","enableMultiRowSelection","enableSorting","columnResizeMode","sanitizeSortedColumns","find","definedColumn","sorting","filter","getSortedRowModel","columnFilters","manualFiltering","filterFns","tacoFilter","row","columnId","columnFilterFn","getValue","getFilteredRowModel","globalFilterFn","query","table","useReactTable","getCoreRowModel","meta","enableRowDensity","enableRowDragging","enableColumnReordering","current","addFocussableColumnIndex","index","includes","sort","a","b","resetFocussableColumnIndexes","tableRef","tableRows","getRowModel","rows","useActiveRowStateListener","useColumnOffsetStateListener","useFilterStateListener","useRowSelectionListener","useSettingsStateListener","useTableShortcuts","activeRowIndex","original"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTableShortcuts.js","sources":["../../../../../../../../src/components/Table2/hooks/useTableShortcuts.ts"],"sourcesContent":["import React from 'react';\nimport { Table2ShortcutHandlerObject, Table2Shortcuts } from '../types';\nimport { KeyDownHandlerOptions, createShortcutKeyDownHandler } from '../../../utils/keyboard';\n\nexport function useTableShortcuts<TType = any>(shortcuts: Table2Shortcuts<TType> | undefined, activeRow: TType) {\n React.useEffect(() => {\n const shortcutKeys = Object.keys(shortcuts ?? {});\n\n const globalHandlers: Array<(event: KeyboardEvent) => void> = [];\n\n // convert the shortcut into the correct format to register it\n if (shortcuts && shortcutKeys.length) {\n shortcutKeys.forEach(key => {\n const handler = shortcuts[key];\n\n let keyDownHandler;\n let keyDownHandlerOptions: KeyDownHandlerOptions;\n\n if (typeof handler === 'function') {\n keyDownHandler = handler;\n keyDownHandlerOptions = {\n key,\n };\n } else {\n const handlerObject = handler as Table2ShortcutHandlerObject<TType>;\n keyDownHandler = handlerObject.handler;\n keyDownHandlerOptions = {\n key,\n meta: handlerObject.meta,\n shift: handlerObject.shift,\n };\n }\n\n globalHandlers.push(\n createShortcutKeyDownHandler(keyDownHandlerOptions, event => {\n event.preventDefault();\n keyDownHandler(activeRow);\n })\n );\n });\n }\n\n globalHandlers.forEach(handler => {\n document.addEventListener('keydown', handler);\n });\n\n return () => {\n globalHandlers.forEach(handler => {\n document.removeEventListener('keydown', handler);\n });\n };\n }, [shortcuts, activeRow]);\n}\n"],"names":["useTableShortcuts","shortcuts","activeRow","React","useEffect","shortcutKeys","Object","keys","globalHandlers","length","forEach","key","handler","keyDownHandler","keyDownHandlerOptions","handlerObject","meta","shift","push","createShortcutKeyDownHandler","event","preventDefault","document","addEventListener","removeEventListener"],"mappings":";;;SAIgBA,iBAAiB,CAAcC,SAA6C,EAAEC,SAAgB;EAC1GC,cAAK,CAACC,SAAS,CAAC;IACZ,MAAMC,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACN,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,CAAC;IAEjD,MAAMO,cAAc,GAA0C,EAAE;;IAGhE,IAAIP,SAAS,IAAII,YAAY,CAACI,MAAM,EAAE;MAClCJ,YAAY,CAACK,OAAO,CAACC,GAAG;QACpB,MAAMC,OAAO,GAAGX,SAAS,CAACU,GAAG,CAAC;QAE9B,IAAIE,cAAc;QAClB,IAAIC,qBAA4C;QAEhD,IAAI,OAAOF,OAAO,KAAK,UAAU,EAAE;UAC/BC,cAAc,GAAGD,OAAO;UACxBE,qBAAqB,GAAG;YACpBH;WACH;SACJ,MAAM;UACH,MAAMI,aAAa,GAAGH,OAA6C;UACnEC,cAAc,GAAGE,aAAa,CAACH,OAAO;UACtCE,qBAAqB,GAAG;YACpBH,GAAG;YACHK,IAAI,EAAED,aAAa,CAACC,IAAI;YACxBC,KAAK,EAAEF,aAAa,CAACE;WACxB;;QAGLT,cAAc,CAACU,IAAI,CACfC,4BAA4B,CAACL,qBAAqB,EAAEM,KAAK;UACrDA,KAAK,CAACC,cAAc,EAAE;UACtBR,cAAc,CAACX,SAAS,CAAC;SAC5B,CAAC,CACL;OACJ,CAAC;;IAGNM,cAAc,CAACE,OAAO,CAACE,OAAO;MAC1BU,QAAQ,CAACC,gBAAgB,CAAC,SAAS,EAAEX,OAAO,CAAC;KAChD,CAAC;IAEF,OAAO;MACHJ,cAAc,CAACE,OAAO,CAACE,OAAO;QAC1BU,QAAQ,CAACE,mBAAmB,CAAC,SAAS,EAAEZ,OAAO,CAAC;OACnD,CAAC;KACL;GACJ,EAAE,CAACX,SAAS,EAAEC,SAAS,CAAC,CAAC;AAC9B;;;;"}
@@ -1,48 +0,0 @@
1
- import React__default from 'react';
2
- import { useVirtual } from 'react-virtual';
3
-
4
- const densitySizeEstimates = {
5
- compact: 33,
6
- normal: 41,
7
- comfortable: 49,
8
- spacious: 57
9
- };
10
- const useVirtualiser = ({
11
- rows,
12
- table
13
- }, tableRef) => {
14
- var _virtualiser$virtualI, _virtualiser$virtualI2, _virtualiser$virtualI3, _virtualiser$virtualI4;
15
- const [expandedRowSizes, setExpandedRowSizes] = React__default.useState({});
16
- const firstAvailableExpandedRowHeight = React__default.useMemo(() => {
17
- const values = Object.values(expandedRowSizes);
18
- return values.length ? values.reduce((a, b) => a + b, 0) / values.length : 0;
19
- }, [expandedRowSizes]);
20
- const meta = table.options.meta;
21
- const estimateSize = React__default.useCallback(index => {
22
- var _table$getState$expan;
23
- const rowHeight = meta.rowDensity ? densitySizeEstimates[meta.rowDensity] : densitySizeEstimates.normal;
24
- if (table.getState().expanded === true || (_table$getState$expan = table.getState().expanded) !== null && _table$getState$expan !== void 0 && _table$getState$expan[index]) {
25
- var _ref, _expandedRowSizes$ind;
26
- return rowHeight + ((_ref = (_expandedRowSizes$ind = expandedRowSizes[index]) !== null && _expandedRowSizes$ind !== void 0 ? _expandedRowSizes$ind : firstAvailableExpandedRowHeight) !== null && _ref !== void 0 ? _ref : 0);
27
- }
28
- return rowHeight;
29
- }, [meta.rowDensity, expandedRowSizes, table.getState().expanded]);
30
- const virtualiser = useVirtual({
31
- parentRef: tableRef,
32
- size: rows.length,
33
- estimateSize
34
- });
35
- const paddingTop = virtualiser.virtualItems.length > 0 ? ((_virtualiser$virtualI = virtualiser.virtualItems) === null || _virtualiser$virtualI === void 0 ? void 0 : (_virtualiser$virtualI2 = _virtualiser$virtualI[0]) === null || _virtualiser$virtualI2 === void 0 ? void 0 : _virtualiser$virtualI2.start) || 0 : 0;
36
- const paddingBottom = virtualiser.virtualItems.length > 0 ? virtualiser.totalSize - (((_virtualiser$virtualI3 = virtualiser.virtualItems) === null || _virtualiser$virtualI3 === void 0 ? void 0 : (_virtualiser$virtualI4 = _virtualiser$virtualI3[virtualiser.virtualItems.length - 1]) === null || _virtualiser$virtualI4 === void 0 ? void 0 : _virtualiser$virtualI4.end) || 0) : 0;
37
- return {
38
- virtualiser,
39
- virtualiserOffsets: {
40
- top: paddingTop,
41
- bottom: paddingBottom
42
- },
43
- setExpandedRowSizes
44
- };
45
- };
46
-
47
- export { useVirtualiser };
48
- //# sourceMappingURL=useVirtualiser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useVirtualiser.js","sources":["../../../../../../../../src/components/Table2/hooks/useVirtualiser.ts"],"sourcesContent":["import React from 'react';\nimport { OnChangeFn, TableMeta } from '@tanstack/react-table';\nimport { useVirtual, VirtualItem } from 'react-virtual';\n\ntype ExpandedRowSizeState = Record<string, number>;\ntype useVirtualiser = {\n virtualiser: {\n virtualItems: VirtualItem[];\n totalSize: number;\n scrollToOffset: (index: number, options?: any) => void;\n scrollToIndex: (index: number, options?: any) => void;\n measure: () => void;\n };\n virtualiserOffsets: {\n top: number;\n bottom: number;\n };\n setExpandedRowSizes: OnChangeFn<ExpandedRowSizeState>;\n};\n\nconst densitySizeEstimates = {\n compact: 33,\n normal: 41,\n comfortable: 49,\n spacious: 57,\n};\n\nexport const useVirtualiser = ({ rows, table }, tableRef: React.RefObject<HTMLElement>): useVirtualiser => {\n const [expandedRowSizes, setExpandedRowSizes] = React.useState({});\n const firstAvailableExpandedRowHeight = React.useMemo(() => {\n const values: number[] = Object.values(expandedRowSizes);\n return values.length ? values.reduce((a, b) => a + b, 0) / values.length : 0;\n }, [expandedRowSizes]);\n const meta = table.options.meta as TableMeta<any>;\n\n const estimateSize = React.useCallback(\n index => {\n const rowHeight = meta.rowDensity ? densitySizeEstimates[meta.rowDensity] : densitySizeEstimates.normal;\n\n if (table.getState().expanded === true || table.getState().expanded?.[index]) {\n return rowHeight + (expandedRowSizes[index] ?? firstAvailableExpandedRowHeight ?? 0);\n }\n\n return rowHeight;\n },\n\n [meta.rowDensity, expandedRowSizes, table.getState().expanded]\n );\n\n const virtualiser = useVirtual({\n parentRef: tableRef,\n size: rows.length,\n estimateSize,\n });\n\n const paddingTop = virtualiser.virtualItems.length > 0 ? virtualiser.virtualItems?.[0]?.start || 0 : 0;\n const paddingBottom =\n virtualiser.virtualItems.length > 0\n ? virtualiser.totalSize - (virtualiser.virtualItems?.[virtualiser.virtualItems.length - 1]?.end || 0)\n : 0;\n\n return { virtualiser, virtualiserOffsets: { top: paddingTop, bottom: paddingBottom }, setExpandedRowSizes };\n};\n"],"names":["densitySizeEstimates","compact","normal","comfortable","spacious","useVirtualiser","rows","table","tableRef","expandedRowSizes","setExpandedRowSizes","React","useState","firstAvailableExpandedRowHeight","useMemo","values","Object","length","reduce","a","b","meta","options","estimateSize","useCallback","index","rowHeight","rowDensity","getState","expanded","virtualiser","useVirtual","parentRef","size","paddingTop","virtualItems","start","paddingBottom","totalSize","end","virtualiserOffsets","top","bottom"],"mappings":";;;AAoBA,MAAMA,oBAAoB,GAAG;EACzBC,OAAO,EAAE,EAAE;EACXC,MAAM,EAAE,EAAE;EACVC,WAAW,EAAE,EAAE;EACfC,QAAQ,EAAE;CACb;MAEYC,cAAc,GAAG,CAAC;EAAEC,IAAI;EAAEC;CAAO,EAAEC,QAAsC;;EAClF,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAC,EAAE,CAAC;EAClE,MAAMC,+BAA+B,GAAGF,cAAK,CAACG,OAAO,CAAC;IAClD,MAAMC,MAAM,GAAaC,MAAM,CAACD,MAAM,CAACN,gBAAgB,CAAC;IACxD,OAAOM,MAAM,CAACE,MAAM,GAAGF,MAAM,CAACG,MAAM,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,EAAE,CAAC,CAAC,GAAGL,MAAM,CAACE,MAAM,GAAG,CAAC;GAC/E,EAAE,CAACR,gBAAgB,CAAC,CAAC;EACtB,MAAMY,IAAI,GAAGd,KAAK,CAACe,OAAO,CAACD,IAAsB;EAEjD,MAAME,YAAY,GAAGZ,cAAK,CAACa,WAAW,CAClCC,KAAK;;IACD,MAAMC,SAAS,GAAGL,IAAI,CAACM,UAAU,GAAG3B,oBAAoB,CAACqB,IAAI,CAACM,UAAU,CAAC,GAAG3B,oBAAoB,CAACE,MAAM;IAEvG,IAAIK,KAAK,CAACqB,QAAQ,EAAE,CAACC,QAAQ,KAAK,IAAI,6BAAItB,KAAK,CAACqB,QAAQ,EAAE,CAACC,QAAQ,kDAAzB,sBAA4BJ,KAAK,CAAC,EAAE;MAAA;MAC1E,OAAOC,SAAS,qCAAIjB,gBAAgB,CAACgB,KAAK,CAAC,yEAAIZ,+BAA+B,uCAAI,CAAC,CAAC;;IAGxF,OAAOa,SAAS;GACnB,EAED,CAACL,IAAI,CAACM,UAAU,EAAElB,gBAAgB,EAAEF,KAAK,CAACqB,QAAQ,EAAE,CAACC,QAAQ,CAAC,CACjE;EAED,MAAMC,WAAW,GAAGC,UAAU,CAAC;IAC3BC,SAAS,EAAExB,QAAQ;IACnByB,IAAI,EAAE3B,IAAI,CAACW,MAAM;IACjBM;GACH,CAAC;EAEF,MAAMW,UAAU,GAAGJ,WAAW,CAACK,YAAY,CAAClB,MAAM,GAAG,CAAC,GAAG,0BAAAa,WAAW,CAACK,YAAY,oFAAxB,sBAA2B,CAAC,CAAC,2DAA7B,uBAA+BC,KAAK,KAAI,CAAC,GAAG,CAAC;EACtG,MAAMC,aAAa,GACfP,WAAW,CAACK,YAAY,CAAClB,MAAM,GAAG,CAAC,GAC7Ba,WAAW,CAACQ,SAAS,IAAI,2BAAAR,WAAW,CAACK,YAAY,qFAAxB,uBAA2BL,WAAW,CAACK,YAAY,CAAClB,MAAM,GAAG,CAAC,CAAC,2DAA/D,uBAAiEsB,GAAG,KAAI,CAAC,CAAC,GACnG,CAAC;EAEX,OAAO;IAAET,WAAW;IAAEU,kBAAkB,EAAE;MAAEC,GAAG,EAAEP,UAAU;MAAEQ,MAAM,EAAEL;KAAe;IAAE3B;GAAqB;AAC/G;;;;"}
@@ -1,18 +0,0 @@
1
- var Table2FilterComparator;
2
- (function (Table2FilterComparator) {
3
- Table2FilterComparator[Table2FilterComparator["Contains"] = 0] = "Contains";
4
- Table2FilterComparator[Table2FilterComparator["DoesNotContain"] = 1] = "DoesNotContain";
5
- Table2FilterComparator[Table2FilterComparator["IsEqualTo"] = 2] = "IsEqualTo";
6
- Table2FilterComparator[Table2FilterComparator["IsNotEqualTo"] = 3] = "IsNotEqualTo";
7
- Table2FilterComparator[Table2FilterComparator["IsGreaterThan"] = 4] = "IsGreaterThan";
8
- Table2FilterComparator[Table2FilterComparator["IsLessThan"] = 5] = "IsLessThan";
9
- Table2FilterComparator[Table2FilterComparator["IsBetween"] = 6] = "IsBetween";
10
- Table2FilterComparator[Table2FilterComparator["IsOneOf"] = 7] = "IsOneOf";
11
- Table2FilterComparator[Table2FilterComparator["IsNoneOf"] = 8] = "IsNoneOf";
12
- Table2FilterComparator[Table2FilterComparator["IsAllOf"] = 9] = "IsAllOf";
13
- Table2FilterComparator[Table2FilterComparator["IsEmpty"] = 10] = "IsEmpty";
14
- Table2FilterComparator[Table2FilterComparator["IsNotEmpty"] = 11] = "IsNotEmpty";
15
- })(Table2FilterComparator || (Table2FilterComparator = {}));
16
-
17
- export { Table2FilterComparator };
18
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../../../src/components/Table2/types.ts"],"sourcesContent":["import React from 'react';\nimport {\n BuiltInSortingFn,\n ColumnFiltersState,\n ColumnOrderState,\n ColumnSizingState,\n OnChangeFn,\n Row,\n SortingState,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { DialogProps } from '../Dialog/Dialog';\nimport { IconName } from '../Icon/Icon';\nimport { MenuProps } from '../Menu/Menu';\n\nexport enum Table2FilterComparator {\n Contains,\n DoesNotContain,\n IsEqualTo,\n IsNotEqualTo,\n IsGreaterThan,\n IsLessThan,\n IsBetween,\n IsOneOf,\n IsNoneOf,\n IsAllOf,\n IsEmpty,\n IsNotEmpty,\n}\n\nexport type Table2Filter<TType = any> = {\n comparator?: Table2FilterComparator;\n value: TType | TType[];\n};\n\nexport type ColumnOffsetState = Record<string, number | undefined>;\nexport type RowDensity = 'compact' | 'normal' | 'comfortable' | 'spacious';\nexport type CellAlignment = 'left' | 'center' | 'right';\n\nexport type SortDirection = 'asc' | 'desc';\nexport type ColumnDataType = 'auto' | 'alphanumeric' | 'alphanumericCaseSensitive' | 'datetime' | 'boolean';\n\nexport type Table2ColumnHeaderRenderer<TType = any> = (value: any, row: TType) => JSX.Element | string | null;\nexport type Table2ColumnHeaderMenu = (props: Partial<MenuProps>) => JSX.Element;\nexport type Table2ColumnFooterRenderer = (values: any[]) => JSX.Element | string | null;\n\nexport type Table2ColumnControlProps = {\n className?: string;\n disabled?: boolean;\n invalid?: boolean;\n onBlur: (newValue?: any) => Promise<void>;\n onFocus: React.FocusEventHandler;\n readOnly?: boolean;\n ref: React.RefObject<HTMLElement>;\n setValue: (value: any) => void;\n value: any;\n // This is a temporary fix to enable up/down arrow key shortcuts on input in quick mode. For some reason,\n // the preventDefault is true on Taco Input, so the keyboard shortcuts doesn't work. By adding this\n // data attribute we make sure the event is coming from a control component, and then we can make sure\n // keyboard shortcut works as expected.\n 'data-inline-editing-component'?: 'true';\n};\nexport type Table2ColumnControlRenderer<TType = any> =\n | ((props: Table2ColumnControlProps, row?: TType) => JSX.Element)\n | 'datepicker'\n | 'input'\n | 'switch';\n\nexport type SortFn<TType = unknown> = ((rowA: TType, rowB: TType, columnId: string) => -1 | 0 | 1) | BuiltInSortingFn | 'auto';\n\nexport type Table2ColumnProps<TType = any> = {\n accessor: string;\n align?: CellAlignment;\n className?: string | ((row: Row<TType>) => string);\n control?: Table2ColumnControlRenderer<TType>;\n dataType?: ColumnDataType;\n defaultActiveColumnIndex?: number;\n defaultActiveRowIndex?: number;\n defaultHidden?: boolean;\n disableFiltering?: boolean;\n disableHiding?: boolean;\n disableReordering?: boolean;\n disableResizing?: boolean;\n disableSorting?: boolean;\n defaultWidth?: number | 'grow';\n header: string;\n headerClassName?: string;\n footer?: Table2ColumnFooterRenderer;\n renderer?: Table2ColumnHeaderRenderer<TType>;\n menu?: Table2ColumnHeaderMenu;\n minWidth?: number;\n sort?: SortDirection;\n sortFn?: SortFn<TType>;\n tooltip?: string;\n};\n\nexport type Table2ActionProps<TType> = {\n dialog?: (rows: TType[], resetSelectedRows: () => void) => (props: Partial<DialogProps>) => JSX.Element;\n disabled?: boolean | ((rows: TType[]) => boolean);\n icon: IconName | ((rows: TType[]) => IconName);\n onClick?: (rows: TType[], resetSelectedRows: () => void) => void;\n text: string | ((rows: TType[]) => string);\n visible?: boolean | ((rows: TType[]) => boolean);\n};\n\nexport type Table2RowActionRenderer<TType = unknown> = (row: TType) => JSX.Element | null;\n\nexport type Table2Settings = {\n columnFilters?: ColumnFiltersState;\n columnOrder?: ColumnOrderState;\n columnSizing?: ColumnSizingState;\n columnVisibility?: VisibilityState;\n frozenColumnCount?: number;\n globalFilter?: string;\n rowDensity?: RowDensity;\n sorting?: SortingState;\n};\n\nexport type RowClickHandler<TType = any> = (row: TType) => void;\nexport type RowDragHandler<TType = any> = (\n rows: TType[],\n showPlaceholder: (string) => void,\n setDataTransfer: (data: string) => void\n) => void;\nexport type RowDropHandler<TType = any> = (event: React.DragEvent, row: TType) => void;\nexport type RowSelectionHandler<TType = any> = (rows: TType[], allSelected: boolean) => void;\nexport type RowExpansionRenderer<TType = any> = (row: TType) => (() => JSX.Element) | null;\nexport type SortHandler = OnChangeFn<SortingState>;\nexport type SettingsHandler = OnChangeFn<Table2Settings>;\nexport type SaveHandlerErrorResponse = Record<string, string | undefined | null> | null;\nexport type SaveHandler<TType = any> = (row: TType, accessor: string) => Promise<SaveHandlerErrorResponse | void>;\n\nexport type DataColumnIndexes = {\n dataColumnStartOffset: number;\n dataColumnEndOffset: number;\n};\n\nexport type Table2Children<TType = any> = (React.ReactElement<Table2ColumnProps<TType>> | boolean | null | undefined)[];\n\nexport type Table2ShortcutHandlerFn<TType = any> = (row: TType) => void;\nexport type Table2ShortcutHandlerObject<TType = any> = {\n handler: Table2ShortcutHandlerFn<TType>;\n meta?: boolean;\n shift?: boolean;\n};\nexport type Table2Shortcuts<TType = any> = Record<string, Table2ShortcutHandlerFn<TType> | Table2ShortcutHandlerObject<TType>>;\n\nexport type Table2Props<TType = any> = Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> & {\n actionsForRow?: Table2RowActionRenderer<TType>[];\n actionsForRowLength?: number;\n children: Table2Children;\n className?: string;\n data: TType[];\n defaultActiveRowIndex?: number;\n disableColumnFiltering?: boolean;\n disableColumnHiding?: boolean;\n disableColumnFreezing?: boolean;\n disableColumnReordering?: boolean;\n disableColumnResizing?: boolean;\n disableRowDensity?: boolean;\n disableRowExpansion?: boolean;\n disableRowSelection?: boolean;\n disableMultipleRowSelection?: boolean;\n disableSearch?: boolean;\n disableSorting?: boolean;\n emptyState?: () => JSX.Element;\n expandedRowRenderer?: RowExpansionRenderer<TType>;\n length?: number;\n loadMore?: () => Promise<void>;\n manualColumnFiltering?: boolean;\n manualSearch?: boolean;\n manualSorting?: boolean;\n onChangeSettings?: SettingsHandler;\n onRowClick?: RowClickHandler<TType>;\n onRowDrag?: RowDragHandler<TType>;\n onRowDrop?: RowDropHandler<TType>;\n onRowSelect?: RowSelectionHandler<TType>;\n onSave?: SaveHandler<TType>;\n shortcuts?: Table2Shortcuts<TType>;\n toolbarLeft?: JSX.Element;\n toolbarRight?: JSX.Element;\n settings?: Table2Settings;\n _experimentalActionsForTable?: Table2ActionProps<TType>[];\n _experimentalActionsForTableSummary?: (rows: TType[]) => JSX.Element | string;\n};\n"],"names":["Table2FilterComparator"],"mappings":"IAeYA;AAAZ,WAAYA,sBAAsB;EAC9BA,2EAAQ;EACRA,uFAAc;EACdA,6EAAS;EACTA,mFAAY;EACZA,qFAAa;EACbA,+EAAU;EACVA,6EAAS;EACTA,yEAAO;EACPA,2EAAQ;EACRA,yEAAO;EACPA,0EAAO;EACPA,gFAAU;AACd,CAAC,EAbWA,sBAAsB,KAAtBA,sBAAsB;;;;"}
@@ -1,41 +0,0 @@
1
- import cn from 'classnames';
2
- import { COLUMN_ID_FOR_EXPANSION, COLUMN_ID_FOR_SELECTION } from './columns.js';
3
-
4
- const getDensitySizing = (density, editing = false) => {
5
- switch (density) {
6
- case 'compact':
7
- return editing ? 'py-0' : 'py-1.5';
8
- case 'comfortable':
9
- return editing ? 'py-2' : 'py-3.5';
10
- case 'spacious':
11
- return editing ? 'py-3' : 'py-5';
12
- default:
13
- return editing ? 'py-1' : 'py-2.5';
14
- }
15
- };
16
- const getCellSizingClasses = (density = 'normal', editing = false) => {
17
- return cn('min-h-0 flex items-start', getDensitySizing(density, editing), editing ? 'px-[7px]' : 'px-4');
18
- };
19
- const getCellAlignmentClasses = (alignment = 'left') => ({
20
- 'justify-start text-left': alignment === 'left',
21
- 'justify-end text-right': alignment === 'right',
22
- 'justify-center text-center': alignment === 'center'
23
- });
24
- const getFrozenShadowClasses = (column, frozenColumns, isHorizontallyOffset) => {
25
- const frozen = !!column.getIsPinned();
26
- // react-table has column.getPinnedIndex() but it does not exclude hidden columns, so the number is wrong
27
- const frozenColumnIndex = frozenColumns.indexOf(column.id);
28
- const isLastFrozen = frozen && frozenColumnIndex === frozenColumns.length - 1;
29
- const hideFrozenShadow = !isHorizontallyOffset && (column.id === COLUMN_ID_FOR_EXPANSION || column.id === COLUMN_ID_FOR_SELECTION);
30
- return {
31
- 'shadow-[6px_0px_6px_rgb(0_0_0/8%),1px_0px_0px_theme(colors.grey.300)]': isLastFrozen && isHorizontallyOffset,
32
- 'shadow-[1px_0px_0px_theme(colors.grey.300)]': isLastFrozen && !isHorizontallyOffset && !hideFrozenShadow
33
- };
34
- };
35
- const focussableNodeNames = ['A', 'BUTTON', 'INPUT', 'TEXTAREA', 'SELECT', 'DETAILS'];
36
- const isKeyboardFocusableElement = element => {
37
- return focussableNodeNames.includes(element.nodeName) && !element.hasAttribute('disabled') && !element.hasAttribute('readonly') && !element.getAttribute('aria-hidden');
38
- };
39
-
40
- export { focussableNodeNames, getCellAlignmentClasses, getCellSizingClasses, getFrozenShadowClasses, isKeyboardFocusableElement };
41
- //# sourceMappingURL=cell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cell.js","sources":["../../../../../../../../src/components/Table2/utilities/cell.ts"],"sourcesContent":["import cn from 'classnames';\nimport { Column } from '@tanstack/react-table';\nimport { CellAlignment, RowDensity } from '../types';\nimport { COLUMN_ID_FOR_EXPANSION, COLUMN_ID_FOR_SELECTION } from './columns';\n\nconst getDensitySizing = (density: RowDensity, editing = false) => {\n switch (density) {\n case 'compact':\n return editing ? 'py-0' : 'py-1.5';\n case 'comfortable':\n return editing ? 'py-2' : 'py-3.5';\n case 'spacious':\n return editing ? 'py-3' : 'py-5';\n default:\n return editing ? 'py-1' : 'py-2.5';\n }\n};\n\nexport const getCellSizingClasses = (density: RowDensity = 'normal', editing = false) => {\n return cn('min-h-0 flex items-start', getDensitySizing(density, editing), editing ? 'px-[7px]' : 'px-4');\n};\n\nexport const getCellAlignmentClasses = (alignment: CellAlignment = 'left') => ({\n 'justify-start text-left': alignment === 'left',\n 'justify-end text-right': alignment === 'right',\n 'justify-center text-center': alignment === 'center',\n});\n\nexport const getFrozenShadowClasses = (column: Column<any, any>, frozenColumns: string[], isHorizontallyOffset: boolean) => {\n const frozen = !!column.getIsPinned();\n\n // react-table has column.getPinnedIndex() but it does not exclude hidden columns, so the number is wrong\n const frozenColumnIndex = frozenColumns.indexOf(column.id);\n const isLastFrozen = frozen && frozenColumnIndex === frozenColumns.length - 1;\n const hideFrozenShadow =\n !isHorizontallyOffset && (column.id === COLUMN_ID_FOR_EXPANSION || column.id === COLUMN_ID_FOR_SELECTION);\n\n return {\n 'shadow-[6px_0px_6px_rgb(0_0_0/8%),1px_0px_0px_theme(colors.grey.300)]': isLastFrozen && isHorizontallyOffset,\n 'shadow-[1px_0px_0px_theme(colors.grey.300)]': isLastFrozen && !isHorizontallyOffset && !hideFrozenShadow,\n };\n};\n\nexport const focussableNodeNames = ['A', 'BUTTON', 'INPUT', 'TEXTAREA', 'SELECT', 'DETAILS'];\n\nexport const isKeyboardFocusableElement = (element: Element) => {\n return (\n focussableNodeNames.includes(element.nodeName) &&\n !element.hasAttribute('disabled') &&\n !element.hasAttribute('readonly') &&\n !element.getAttribute('aria-hidden')\n );\n};\n"],"names":["getDensitySizing","density","editing","getCellSizingClasses","cn","getCellAlignmentClasses","alignment","getFrozenShadowClasses","column","frozenColumns","isHorizontallyOffset","frozen","getIsPinned","frozenColumnIndex","indexOf","id","isLastFrozen","length","hideFrozenShadow","COLUMN_ID_FOR_EXPANSION","COLUMN_ID_FOR_SELECTION","focussableNodeNames","isKeyboardFocusableElement","element","includes","nodeName","hasAttribute","getAttribute"],"mappings":";;;AAKA,MAAMA,gBAAgB,GAAG,CAACC,OAAmB,EAAEC,OAAO,GAAG,KAAK;EAC1D,QAAQD,OAAO;IACX,KAAK,SAAS;MACV,OAAOC,OAAO,GAAG,MAAM,GAAG,QAAQ;IACtC,KAAK,aAAa;MACd,OAAOA,OAAO,GAAG,MAAM,GAAG,QAAQ;IACtC,KAAK,UAAU;MACX,OAAOA,OAAO,GAAG,MAAM,GAAG,MAAM;IACpC;MACI,OAAOA,OAAO,GAAG,MAAM,GAAG,QAAQ;;AAE9C,CAAC;MAEYC,oBAAoB,GAAG,CAACF,UAAsB,QAAQ,EAAEC,OAAO,GAAG,KAAK;EAChF,OAAOE,EAAE,CAAC,0BAA0B,EAAEJ,gBAAgB,CAACC,OAAO,EAAEC,OAAO,CAAC,EAAEA,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAC5G;MAEaG,uBAAuB,GAAG,CAACC,YAA2B,MAAM,MAAM;EAC3E,yBAAyB,EAAEA,SAAS,KAAK,MAAM;EAC/C,wBAAwB,EAAEA,SAAS,KAAK,OAAO;EAC/C,4BAA4B,EAAEA,SAAS,KAAK;CAC/C;MAEYC,sBAAsB,GAAG,CAACC,MAAwB,EAAEC,aAAuB,EAAEC,oBAA6B;EACnH,MAAMC,MAAM,GAAG,CAAC,CAACH,MAAM,CAACI,WAAW,EAAE;;EAGrC,MAAMC,iBAAiB,GAAGJ,aAAa,CAACK,OAAO,CAACN,MAAM,CAACO,EAAE,CAAC;EAC1D,MAAMC,YAAY,GAAGL,MAAM,IAAIE,iBAAiB,KAAKJ,aAAa,CAACQ,MAAM,GAAG,CAAC;EAC7E,MAAMC,gBAAgB,GAClB,CAACR,oBAAoB,KAAKF,MAAM,CAACO,EAAE,KAAKI,uBAAuB,IAAIX,MAAM,CAACO,EAAE,KAAKK,uBAAuB,CAAC;EAE7G,OAAO;IACH,uEAAuE,EAAEJ,YAAY,IAAIN,oBAAoB;IAC7G,6CAA6C,EAAEM,YAAY,IAAI,CAACN,oBAAoB,IAAI,CAACQ;GAC5F;AACL;MAEaG,mBAAmB,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS;MAE9EC,0BAA0B,GAAIC,OAAgB;EACvD,OACIF,mBAAmB,CAACG,QAAQ,CAACD,OAAO,CAACE,QAAQ,CAAC,IAC9C,CAACF,OAAO,CAACG,YAAY,CAAC,UAAU,CAAC,IACjC,CAACH,OAAO,CAACG,YAAY,CAAC,UAAU,CAAC,IACjC,CAACH,OAAO,CAACI,YAAY,CAAC,aAAa,CAAC;AAE5C;;;;"}