@vuu-ui/vuu-table 2.1.18 → 2.1.19-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/package.json +13 -16
  2. package/src/CellFocusState.mjs +25 -0
  3. package/src/Row.mjs +83 -0
  4. package/src/Table.css.js +441 -0
  5. package/src/Table.mjs +297 -0
  6. package/src/VirtualColSpan.mjs +12 -0
  7. package/src/applyHighlighting.mjs +28 -0
  8. package/src/bulk-edit/BulkEditPanel.css.js +27 -0
  9. package/src/bulk-edit/BulkEditPanel.mjs +77 -0
  10. package/src/bulk-edit/ColumnCascadingUpdateEditor.css.js +86 -0
  11. package/src/bulk-edit/ColumnCascadingUpdateEditor.mjs +59 -0
  12. package/src/bulk-edit/InsertNewRowEditor.css.js +86 -0
  13. package/src/bulk-edit/InsertNewRowEditor.mjs +59 -0
  14. package/src/bulk-edit/useBulkEditPanel.mjs +61 -0
  15. package/src/bulk-edit/useColumnCascadingEditor.mjs +124 -0
  16. package/src/cell-block/CellBlock.css.js +95 -0
  17. package/src/cell-block/CellBlock.mjs +32 -0
  18. package/src/cell-block/cellblock-utils.mjs +114 -0
  19. package/src/cell-block/useCellBlockSelection.mjs +245 -0
  20. package/src/cell-renderers/checkbox-cell/CheckboxCell.css.js +16 -0
  21. package/src/cell-renderers/checkbox-cell/CheckboxCell.mjs +56 -0
  22. package/src/cell-renderers/checkbox-cell/index.mjs +1 -0
  23. package/src/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.css.js +19 -0
  24. package/src/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.mjs +34 -0
  25. package/src/cell-renderers/checkbox-row-selector/index.mjs +1 -0
  26. package/src/cell-renderers/index.mjs +4 -0
  27. package/src/cell-renderers/input-cell/InputCell.css.js +81 -0
  28. package/src/cell-renderers/input-cell/InputCell.mjs +73 -0
  29. package/src/cell-renderers/input-cell/index.mjs +1 -0
  30. package/src/cell-renderers/input-cell/useInputCell.mjs +199 -0
  31. package/src/cell-renderers/toggle-cell/ToggleCell.css.js +31 -0
  32. package/src/cell-renderers/toggle-cell/ToggleCell.mjs +47 -0
  33. package/src/cell-renderers/toggle-cell/index.mjs +1 -0
  34. package/src/column-header-pill/ColumnHeaderPill.css.js +34 -0
  35. package/src/column-header-pill/ColumnHeaderPill.mjs +39 -0
  36. package/src/column-header-pill/GroupColumnPill.css.js +10 -0
  37. package/src/column-header-pill/GroupColumnPill.mjs +33 -0
  38. package/src/column-header-pill/SortIndicator.css.js +15 -0
  39. package/src/column-header-pill/SortIndicator.mjs +29 -0
  40. package/src/column-header-pill/index.mjs +3 -0
  41. package/src/column-resizing/ColumnResizer.css.js +32 -0
  42. package/src/column-resizing/ColumnResizer.mjs +69 -0
  43. package/src/column-resizing/index.mjs +2 -0
  44. package/src/column-resizing/useTableColumnResize.mjs +57 -0
  45. package/src/data-row/DataRow.mjs +298 -0
  46. package/src/header-cell/GroupHeaderCell.css.js +91 -0
  47. package/src/header-cell/GroupHeaderCell.mjs +98 -0
  48. package/src/header-cell/HeaderCell.css.js +182 -0
  49. package/src/header-cell/HeaderCell.mjs +126 -0
  50. package/src/header-cell/index.mjs +2 -0
  51. package/src/index.mjs +20 -0
  52. package/src/pagination/PaginationControl.css.js +18 -0
  53. package/src/pagination/PaginationControl.mjs +34 -0
  54. package/src/pagination/index.mjs +1 -0
  55. package/src/pagination/usePagination.mjs +29 -0
  56. package/src/table-cell/TableCell.css.js +67 -0
  57. package/src/table-cell/TableCell.mjs +54 -0
  58. package/src/table-cell/TableGroupCell.css.js +91 -0
  59. package/src/table-cell/TableGroupCell.mjs +61 -0
  60. package/src/table-cell/index.mjs +2 -0
  61. package/src/table-config/useTableConfig.mjs +49 -0
  62. package/src/table-config.mjs +38 -0
  63. package/src/table-data-source/DataRowMovingWindow.mjs +66 -0
  64. package/src/table-data-source/useDataSource.mjs +177 -0
  65. package/src/table-dom-utils.mjs +162 -0
  66. package/src/table-header/HeaderProvider.mjs +14 -0
  67. package/src/table-header/TableHeader.mjs +182 -0
  68. package/src/table-header/index.mjs +2 -0
  69. package/src/table-header/useTableHeader.mjs +69 -0
  70. package/src/useCell.mjs +22 -0
  71. package/src/useCellEditing.mjs +58 -0
  72. package/src/useCellFocus.mjs +112 -0
  73. package/src/useControlledTableNavigation.mjs +34 -0
  74. package/src/useEditableCell.mjs +18 -0
  75. package/src/useInitialValue.mjs +6 -0
  76. package/src/useKeyboardNavigation.mjs +275 -0
  77. package/src/useMeasuredHeight.mjs +44 -0
  78. package/src/useResizeObserver.mjs +118 -0
  79. package/src/useRowClassNameGenerators.mjs +21 -0
  80. package/src/useSelection.mjs +101 -0
  81. package/src/useTable.mjs +588 -0
  82. package/src/useTableContextMenu.mjs +54 -0
  83. package/src/useTableModel.mjs +344 -0
  84. package/src/useTableScroll.mjs +382 -0
  85. package/src/useTableViewport.mjs +120 -0
  86. package/types/VirtualColSpan.d.ts +2 -2
  87. package/types/cell-renderers/toggle-cell/ToggleCell.d.ts +1 -1
  88. package/types/useTable.d.ts +3 -3
  89. package/cjs/CellFocusState.js +0 -45
  90. package/cjs/CellFocusState.js.map +0 -1
  91. package/cjs/Row.js +0 -116
  92. package/cjs/Row.js.map +0 -1
  93. package/cjs/Table.css.js +0 -6
  94. package/cjs/Table.css.js.map +0 -1
  95. package/cjs/Table.js +0 -455
  96. package/cjs/Table.js.map +0 -1
  97. package/cjs/VirtualColSpan.js +0 -19
  98. package/cjs/VirtualColSpan.js.map +0 -1
  99. package/cjs/applyHighlighting.js +0 -33
  100. package/cjs/applyHighlighting.js.map +0 -1
  101. package/cjs/bulk-edit/BulkEditPanel.css.js +0 -6
  102. package/cjs/bulk-edit/BulkEditPanel.css.js.map +0 -1
  103. package/cjs/bulk-edit/BulkEditPanel.js +0 -107
  104. package/cjs/bulk-edit/BulkEditPanel.js.map +0 -1
  105. package/cjs/bulk-edit/ColumnCascadingUpdateEditor.css.js +0 -6
  106. package/cjs/bulk-edit/ColumnCascadingUpdateEditor.css.js.map +0 -1
  107. package/cjs/bulk-edit/ColumnCascadingUpdateEditor.js +0 -80
  108. package/cjs/bulk-edit/ColumnCascadingUpdateEditor.js.map +0 -1
  109. package/cjs/bulk-edit/InsertNewRowEditor.css.js +0 -6
  110. package/cjs/bulk-edit/InsertNewRowEditor.css.js.map +0 -1
  111. package/cjs/bulk-edit/InsertNewRowEditor.js +0 -80
  112. package/cjs/bulk-edit/InsertNewRowEditor.js.map +0 -1
  113. package/cjs/bulk-edit/useBulkEditPanel.js +0 -70
  114. package/cjs/bulk-edit/useBulkEditPanel.js.map +0 -1
  115. package/cjs/bulk-edit/useColumnCascadingEditor.js +0 -143
  116. package/cjs/bulk-edit/useColumnCascadingEditor.js.map +0 -1
  117. package/cjs/cell-block/CellBlock.css.js +0 -6
  118. package/cjs/cell-block/CellBlock.css.js.map +0 -1
  119. package/cjs/cell-block/CellBlock.js +0 -45
  120. package/cjs/cell-block/CellBlock.js.map +0 -1
  121. package/cjs/cell-block/cellblock-utils.js +0 -125
  122. package/cjs/cell-block/cellblock-utils.js.map +0 -1
  123. package/cjs/cell-block/useCellBlockSelection.js +0 -257
  124. package/cjs/cell-block/useCellBlockSelection.js.map +0 -1
  125. package/cjs/cell-renderers/checkbox-cell/CheckboxCell.css.js +0 -6
  126. package/cjs/cell-renderers/checkbox-cell/CheckboxCell.css.js.map +0 -1
  127. package/cjs/cell-renderers/checkbox-cell/CheckboxCell.js +0 -67
  128. package/cjs/cell-renderers/checkbox-cell/CheckboxCell.js.map +0 -1
  129. package/cjs/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.css.js +0 -6
  130. package/cjs/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.css.js.map +0 -1
  131. package/cjs/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.js +0 -51
  132. package/cjs/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.js.map +0 -1
  133. package/cjs/cell-renderers/input-cell/InputCell.css.js +0 -6
  134. package/cjs/cell-renderers/input-cell/InputCell.css.js.map +0 -1
  135. package/cjs/cell-renderers/input-cell/InputCell.js +0 -63
  136. package/cjs/cell-renderers/input-cell/InputCell.js.map +0 -1
  137. package/cjs/cell-renderers/input-cell/useInputCell.js +0 -211
  138. package/cjs/cell-renderers/input-cell/useInputCell.js.map +0 -1
  139. package/cjs/cell-renderers/toggle-cell/ToggleCell.css.js +0 -6
  140. package/cjs/cell-renderers/toggle-cell/ToggleCell.css.js.map +0 -1
  141. package/cjs/cell-renderers/toggle-cell/ToggleCell.js +0 -66
  142. package/cjs/cell-renderers/toggle-cell/ToggleCell.js.map +0 -1
  143. package/cjs/column-header-pill/ColumnHeaderPill.css.js +0 -6
  144. package/cjs/column-header-pill/ColumnHeaderPill.css.js.map +0 -1
  145. package/cjs/column-header-pill/ColumnHeaderPill.js +0 -53
  146. package/cjs/column-header-pill/ColumnHeaderPill.js.map +0 -1
  147. package/cjs/column-header-pill/GroupColumnPill.css.js +0 -6
  148. package/cjs/column-header-pill/GroupColumnPill.css.js.map +0 -1
  149. package/cjs/column-header-pill/GroupColumnPill.js +0 -29
  150. package/cjs/column-header-pill/GroupColumnPill.js.map +0 -1
  151. package/cjs/column-header-pill/SortIndicator.css.js +0 -6
  152. package/cjs/column-header-pill/SortIndicator.css.js.map +0 -1
  153. package/cjs/column-header-pill/SortIndicator.js +0 -27
  154. package/cjs/column-header-pill/SortIndicator.js.map +0 -1
  155. package/cjs/column-resizing/ColumnResizer.css.js +0 -6
  156. package/cjs/column-resizing/ColumnResizer.css.js.map +0 -1
  157. package/cjs/column-resizing/ColumnResizer.js +0 -82
  158. package/cjs/column-resizing/ColumnResizer.js.map +0 -1
  159. package/cjs/column-resizing/useTableColumnResize.js +0 -55
  160. package/cjs/column-resizing/useTableColumnResize.js.map +0 -1
  161. package/cjs/data-row/DataRow.js +0 -262
  162. package/cjs/data-row/DataRow.js.map +0 -1
  163. package/cjs/header-cell/GroupHeaderCell.css.js +0 -6
  164. package/cjs/header-cell/GroupHeaderCell.css.js.map +0 -1
  165. package/cjs/header-cell/GroupHeaderCell.js +0 -127
  166. package/cjs/header-cell/GroupHeaderCell.js.map +0 -1
  167. package/cjs/header-cell/HeaderCell.css.js +0 -6
  168. package/cjs/header-cell/HeaderCell.css.js.map +0 -1
  169. package/cjs/header-cell/HeaderCell.js +0 -139
  170. package/cjs/header-cell/HeaderCell.js.map +0 -1
  171. package/cjs/index.js +0 -64
  172. package/cjs/index.js.map +0 -1
  173. package/cjs/pagination/PaginationControl.css.js +0 -6
  174. package/cjs/pagination/PaginationControl.css.js.map +0 -1
  175. package/cjs/pagination/PaginationControl.js +0 -38
  176. package/cjs/pagination/PaginationControl.js.map +0 -1
  177. package/cjs/pagination/usePagination.js +0 -36
  178. package/cjs/pagination/usePagination.js.map +0 -1
  179. package/cjs/table-cell/TableCell.css.js +0 -6
  180. package/cjs/table-cell/TableCell.css.js.map +0 -1
  181. package/cjs/table-cell/TableCell.js +0 -75
  182. package/cjs/table-cell/TableCell.js.map +0 -1
  183. package/cjs/table-cell/TableGroupCell.css.js +0 -6
  184. package/cjs/table-cell/TableGroupCell.css.js.map +0 -1
  185. package/cjs/table-cell/TableGroupCell.js +0 -65
  186. package/cjs/table-cell/TableGroupCell.js.map +0 -1
  187. package/cjs/table-config/useTableConfig.js +0 -67
  188. package/cjs/table-config/useTableConfig.js.map +0 -1
  189. package/cjs/table-config.js +0 -35
  190. package/cjs/table-config.js.map +0 -1
  191. package/cjs/table-data-source/DataRowMovingWindow.js +0 -99
  192. package/cjs/table-data-source/DataRowMovingWindow.js.map +0 -1
  193. package/cjs/table-data-source/useDataSource.js +0 -236
  194. package/cjs/table-data-source/useDataSource.js.map +0 -1
  195. package/cjs/table-dom-utils.js +0 -206
  196. package/cjs/table-dom-utils.js.map +0 -1
  197. package/cjs/table-header/HeaderProvider.js +0 -18
  198. package/cjs/table-header/HeaderProvider.js.map +0 -1
  199. package/cjs/table-header/TableHeader.js +0 -180
  200. package/cjs/table-header/TableHeader.js.map +0 -1
  201. package/cjs/table-header/useTableHeader.js +0 -87
  202. package/cjs/table-header/useTableHeader.js.map +0 -1
  203. package/cjs/useCell.js +0 -26
  204. package/cjs/useCell.js.map +0 -1
  205. package/cjs/useCellEditing.js +0 -77
  206. package/cjs/useCellEditing.js.map +0 -1
  207. package/cjs/useCellFocus.js +0 -119
  208. package/cjs/useCellFocus.js.map +0 -1
  209. package/cjs/useControlledTableNavigation.js +0 -46
  210. package/cjs/useControlledTableNavigation.js.map +0 -1
  211. package/cjs/useEditableCell.js +0 -27
  212. package/cjs/useEditableCell.js.map +0 -1
  213. package/cjs/useKeyboardNavigation.js +0 -323
  214. package/cjs/useKeyboardNavigation.js.map +0 -1
  215. package/cjs/useMeasuredHeight.js +0 -51
  216. package/cjs/useMeasuredHeight.js.map +0 -1
  217. package/cjs/useRowClassNameGenerators.js +0 -34
  218. package/cjs/useRowClassNameGenerators.js.map +0 -1
  219. package/cjs/useSelection.js +0 -130
  220. package/cjs/useSelection.js.map +0 -1
  221. package/cjs/useTable.js +0 -742
  222. package/cjs/useTable.js.map +0 -1
  223. package/cjs/useTableContextMenu.js +0 -76
  224. package/cjs/useTableContextMenu.js.map +0 -1
  225. package/cjs/useTableModel.js +0 -421
  226. package/cjs/useTableModel.js.map +0 -1
  227. package/cjs/useTableScroll.js +0 -464
  228. package/cjs/useTableScroll.js.map +0 -1
  229. package/cjs/useTableViewport.js +0 -137
  230. package/cjs/useTableViewport.js.map +0 -1
  231. package/esm/CellFocusState.js +0 -43
  232. package/esm/CellFocusState.js.map +0 -1
  233. package/esm/Row.js +0 -114
  234. package/esm/Row.js.map +0 -1
  235. package/esm/Table.css.js +0 -4
  236. package/esm/Table.css.js.map +0 -1
  237. package/esm/Table.js +0 -453
  238. package/esm/Table.js.map +0 -1
  239. package/esm/VirtualColSpan.js +0 -17
  240. package/esm/VirtualColSpan.js.map +0 -1
  241. package/esm/applyHighlighting.js +0 -31
  242. package/esm/applyHighlighting.js.map +0 -1
  243. package/esm/bulk-edit/BulkEditPanel.css.js +0 -4
  244. package/esm/bulk-edit/BulkEditPanel.css.js.map +0 -1
  245. package/esm/bulk-edit/BulkEditPanel.js +0 -105
  246. package/esm/bulk-edit/BulkEditPanel.js.map +0 -1
  247. package/esm/bulk-edit/ColumnCascadingUpdateEditor.css.js +0 -4
  248. package/esm/bulk-edit/ColumnCascadingUpdateEditor.css.js.map +0 -1
  249. package/esm/bulk-edit/ColumnCascadingUpdateEditor.js +0 -78
  250. package/esm/bulk-edit/ColumnCascadingUpdateEditor.js.map +0 -1
  251. package/esm/bulk-edit/InsertNewRowEditor.css.js +0 -4
  252. package/esm/bulk-edit/InsertNewRowEditor.css.js.map +0 -1
  253. package/esm/bulk-edit/InsertNewRowEditor.js +0 -78
  254. package/esm/bulk-edit/InsertNewRowEditor.js.map +0 -1
  255. package/esm/bulk-edit/useBulkEditPanel.js +0 -68
  256. package/esm/bulk-edit/useBulkEditPanel.js.map +0 -1
  257. package/esm/bulk-edit/useColumnCascadingEditor.js +0 -141
  258. package/esm/bulk-edit/useColumnCascadingEditor.js.map +0 -1
  259. package/esm/cell-block/CellBlock.css.js +0 -4
  260. package/esm/cell-block/CellBlock.css.js.map +0 -1
  261. package/esm/cell-block/CellBlock.js +0 -43
  262. package/esm/cell-block/CellBlock.js.map +0 -1
  263. package/esm/cell-block/cellblock-utils.js +0 -116
  264. package/esm/cell-block/cellblock-utils.js.map +0 -1
  265. package/esm/cell-block/useCellBlockSelection.js +0 -255
  266. package/esm/cell-block/useCellBlockSelection.js.map +0 -1
  267. package/esm/cell-renderers/checkbox-cell/CheckboxCell.css.js +0 -4
  268. package/esm/cell-renderers/checkbox-cell/CheckboxCell.css.js.map +0 -1
  269. package/esm/cell-renderers/checkbox-cell/CheckboxCell.js +0 -65
  270. package/esm/cell-renderers/checkbox-cell/CheckboxCell.js.map +0 -1
  271. package/esm/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.css.js +0 -4
  272. package/esm/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.css.js.map +0 -1
  273. package/esm/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.js +0 -49
  274. package/esm/cell-renderers/checkbox-row-selector/CheckboxRowSelectorCell.js.map +0 -1
  275. package/esm/cell-renderers/input-cell/InputCell.css.js +0 -4
  276. package/esm/cell-renderers/input-cell/InputCell.css.js.map +0 -1
  277. package/esm/cell-renderers/input-cell/InputCell.js +0 -61
  278. package/esm/cell-renderers/input-cell/InputCell.js.map +0 -1
  279. package/esm/cell-renderers/input-cell/useInputCell.js +0 -209
  280. package/esm/cell-renderers/input-cell/useInputCell.js.map +0 -1
  281. package/esm/cell-renderers/toggle-cell/ToggleCell.css.js +0 -4
  282. package/esm/cell-renderers/toggle-cell/ToggleCell.css.js.map +0 -1
  283. package/esm/cell-renderers/toggle-cell/ToggleCell.js +0 -64
  284. package/esm/cell-renderers/toggle-cell/ToggleCell.js.map +0 -1
  285. package/esm/column-header-pill/ColumnHeaderPill.css.js +0 -4
  286. package/esm/column-header-pill/ColumnHeaderPill.css.js.map +0 -1
  287. package/esm/column-header-pill/ColumnHeaderPill.js +0 -51
  288. package/esm/column-header-pill/ColumnHeaderPill.js.map +0 -1
  289. package/esm/column-header-pill/GroupColumnPill.css.js +0 -4
  290. package/esm/column-header-pill/GroupColumnPill.css.js.map +0 -1
  291. package/esm/column-header-pill/GroupColumnPill.js +0 -27
  292. package/esm/column-header-pill/GroupColumnPill.js.map +0 -1
  293. package/esm/column-header-pill/SortIndicator.css.js +0 -4
  294. package/esm/column-header-pill/SortIndicator.css.js.map +0 -1
  295. package/esm/column-header-pill/SortIndicator.js +0 -25
  296. package/esm/column-header-pill/SortIndicator.js.map +0 -1
  297. package/esm/column-resizing/ColumnResizer.css.js +0 -4
  298. package/esm/column-resizing/ColumnResizer.css.js.map +0 -1
  299. package/esm/column-resizing/ColumnResizer.js +0 -80
  300. package/esm/column-resizing/ColumnResizer.js.map +0 -1
  301. package/esm/column-resizing/useTableColumnResize.js +0 -53
  302. package/esm/column-resizing/useTableColumnResize.js.map +0 -1
  303. package/esm/data-row/DataRow.js +0 -260
  304. package/esm/data-row/DataRow.js.map +0 -1
  305. package/esm/header-cell/GroupHeaderCell.css.js +0 -4
  306. package/esm/header-cell/GroupHeaderCell.css.js.map +0 -1
  307. package/esm/header-cell/GroupHeaderCell.js +0 -125
  308. package/esm/header-cell/GroupHeaderCell.js.map +0 -1
  309. package/esm/header-cell/HeaderCell.css.js +0 -4
  310. package/esm/header-cell/HeaderCell.css.js.map +0 -1
  311. package/esm/header-cell/HeaderCell.js +0 -137
  312. package/esm/header-cell/HeaderCell.js.map +0 -1
  313. package/esm/index.js +0 -27
  314. package/esm/index.js.map +0 -1
  315. package/esm/pagination/PaginationControl.css.js +0 -4
  316. package/esm/pagination/PaginationControl.css.js.map +0 -1
  317. package/esm/pagination/PaginationControl.js +0 -36
  318. package/esm/pagination/PaginationControl.js.map +0 -1
  319. package/esm/pagination/usePagination.js +0 -34
  320. package/esm/pagination/usePagination.js.map +0 -1
  321. package/esm/table-cell/TableCell.css.js +0 -4
  322. package/esm/table-cell/TableCell.css.js.map +0 -1
  323. package/esm/table-cell/TableCell.js +0 -73
  324. package/esm/table-cell/TableCell.js.map +0 -1
  325. package/esm/table-cell/TableGroupCell.css.js +0 -4
  326. package/esm/table-cell/TableGroupCell.css.js.map +0 -1
  327. package/esm/table-cell/TableGroupCell.js +0 -63
  328. package/esm/table-cell/TableGroupCell.js.map +0 -1
  329. package/esm/table-config/useTableConfig.js +0 -65
  330. package/esm/table-config/useTableConfig.js.map +0 -1
  331. package/esm/table-config.js +0 -33
  332. package/esm/table-config.js.map +0 -1
  333. package/esm/table-data-source/DataRowMovingWindow.js +0 -97
  334. package/esm/table-data-source/DataRowMovingWindow.js.map +0 -1
  335. package/esm/table-data-source/useDataSource.js +0 -234
  336. package/esm/table-data-source/useDataSource.js.map +0 -1
  337. package/esm/table-dom-utils.js +0 -188
  338. package/esm/table-dom-utils.js.map +0 -1
  339. package/esm/table-header/HeaderProvider.js +0 -15
  340. package/esm/table-header/HeaderProvider.js.map +0 -1
  341. package/esm/table-header/TableHeader.js +0 -178
  342. package/esm/table-header/TableHeader.js.map +0 -1
  343. package/esm/table-header/useTableHeader.js +0 -85
  344. package/esm/table-header/useTableHeader.js.map +0 -1
  345. package/esm/useCell.js +0 -24
  346. package/esm/useCell.js.map +0 -1
  347. package/esm/useCellEditing.js +0 -75
  348. package/esm/useCellEditing.js.map +0 -1
  349. package/esm/useCellFocus.js +0 -117
  350. package/esm/useCellFocus.js.map +0 -1
  351. package/esm/useControlledTableNavigation.js +0 -43
  352. package/esm/useControlledTableNavigation.js.map +0 -1
  353. package/esm/useEditableCell.js +0 -25
  354. package/esm/useEditableCell.js.map +0 -1
  355. package/esm/useKeyboardNavigation.js +0 -319
  356. package/esm/useKeyboardNavigation.js.map +0 -1
  357. package/esm/useMeasuredHeight.js +0 -49
  358. package/esm/useMeasuredHeight.js.map +0 -1
  359. package/esm/useRowClassNameGenerators.js +0 -32
  360. package/esm/useRowClassNameGenerators.js.map +0 -1
  361. package/esm/useSelection.js +0 -128
  362. package/esm/useSelection.js.map +0 -1
  363. package/esm/useTable.js +0 -740
  364. package/esm/useTable.js.map +0 -1
  365. package/esm/useTableContextMenu.js +0 -73
  366. package/esm/useTableContextMenu.js.map +0 -1
  367. package/esm/useTableModel.js +0 -419
  368. package/esm/useTableModel.js.map +0 -1
  369. package/esm/useTableScroll.js +0 -461
  370. package/esm/useTableScroll.js.map +0 -1
  371. package/esm/useTableViewport.js +0 -135
  372. package/esm/useTableViewport.js.map +0 -1
@@ -0,0 +1,298 @@
1
+ import { getCalculatedColumnDetails, getServerDataType, isCalculatedColumn, isVuuColumnDataType } from "@vuu-ui/vuu-utils";
2
+ const dataRowSymbol = Symbol("DataRow");
3
+ const dataRowIntrinsicAttributes = {
4
+ childCount: true,
5
+ depth: true,
6
+ index: true,
7
+ isExpanded: true,
8
+ isSelected: true,
9
+ isLeaf: true,
10
+ key: true,
11
+ renderIndex: true
12
+ };
13
+ const dataRowOperations = {
14
+ hasColumn: true
15
+ };
16
+ const isDataRowIntrinsicAttribute = (attrName)=>true === dataRowIntrinsicAttributes[attrName];
17
+ const isDataRowOperation = (attrName)=>true === dataRowOperations[attrName];
18
+ const stringNumericTypes = {
19
+ long: true,
20
+ scaleddecimal2: true,
21
+ scaleddecimal4: true,
22
+ scaleddecimal6: true,
23
+ scaleddecimal8: true
24
+ };
25
+ const isStringNumericType = (type)=>true === stringNumericTypes[type];
26
+ const MAX_DECIMALS = "0000000";
27
+ const TRAILING_ZEROES = /0+$/;
28
+ const stripTrailingZeroes = (value)=>value.endsWith("0") ? value.replace(TRAILING_ZEROES, "") : value;
29
+ const injectDecimalPoint = (value, decimal)=>{
30
+ if ("0" === value || "-0" === value || "" === value) return value;
31
+ if ("-" === value[0]) {
32
+ const digits = value.slice(1);
33
+ if (digits.length < decimal) return `-0.${(MAX_DECIMALS + digits).slice(-decimal)}`;
34
+ if (digits.length === decimal) return `-0.${stripTrailingZeroes(digits)}`;
35
+ return `-${digits.slice(0, -decimal)}.${digits.slice(-decimal)}`;
36
+ }
37
+ if (value.length < decimal) {
38
+ const decimals = (MAX_DECIMALS + value).slice(-decimal);
39
+ return `0.${stripTrailingZeroes(decimals)}`;
40
+ }
41
+ {
42
+ if (value.length === decimal) return `0.${stripTrailingZeroes(value)}`;
43
+ const decimals = value.slice(-decimal);
44
+ return `${value.slice(0, -decimal)}.${stripTrailingZeroes(decimals)}`;
45
+ }
46
+ };
47
+ const formatStringNumeric = (value, type)=>{
48
+ switch(type){
49
+ case "long":
50
+ return value;
51
+ case "scaleddecimal2":
52
+ return injectDecimalPoint(value, 2);
53
+ case "scaleddecimal4":
54
+ return injectDecimalPoint(value, 4);
55
+ case "scaleddecimal6":
56
+ return injectDecimalPoint(value, 6);
57
+ case "scaleddecimal8":
58
+ return injectDecimalPoint(value, 8);
59
+ }
60
+ };
61
+ function DataRowImpl(data, columnMap) {
62
+ const target = {};
63
+ const getPropertyNames = ()=>Object.keys(columnMap);
64
+ const jsonSerializer = ()=>Object.entries(columnMap).reduce((json, [name, mapEntry])=>{
65
+ if (mapEntry) json[name] = data[mapEntry.index];
66
+ return json;
67
+ }, {});
68
+ const DataRowOperations = {
69
+ hasColumn: (name)=>void 0 !== columnMap[name]
70
+ };
71
+ return new Proxy(target, {
72
+ get (_obj, prop) {
73
+ if ("symbol" == typeof prop) {
74
+ if (prop === dataRowSymbol) return true;
75
+ return;
76
+ }
77
+ if ("toJSON" === prop) return jsonSerializer;
78
+ if ("toString" === prop) return "DataRow";
79
+ if ("$$typeof" === prop) return;
80
+ if (isDataRowOperation(prop)) return DataRowOperations[prop];
81
+ else if ("getPropertyNames" === prop) return getPropertyNames;
82
+ const columnMapEntry = columnMap[prop];
83
+ if (void 0 === columnMapEntry) {
84
+ if ("" !== prop) console.warn(`[DataRow:Proxy] unknown column ${prop}`);
85
+ return;
86
+ }
87
+ if (isDataRowIntrinsicAttribute(prop)) return data[columnMapEntry.index];
88
+ if (isStringNumericType(columnMapEntry.type)) return formatStringNumeric(data[columnMapEntry.index], columnMapEntry.type);
89
+ return data[columnMapEntry.index];
90
+ },
91
+ set () {
92
+ throw new TypeError("DataRow is readonly");
93
+ }
94
+ });
95
+ }
96
+ const ColumnMapIntrinsicColumns = {
97
+ index: {
98
+ index: 0,
99
+ type: "int"
100
+ },
101
+ renderIndex: {
102
+ index: 1,
103
+ type: "int"
104
+ },
105
+ isLeaf: {
106
+ index: 2,
107
+ type: "boolean"
108
+ },
109
+ isExpanded: {
110
+ index: 3,
111
+ type: "boolean"
112
+ },
113
+ depth: {
114
+ index: 4,
115
+ type: "int"
116
+ },
117
+ childCount: {
118
+ index: 5,
119
+ type: "int"
120
+ },
121
+ key: {
122
+ index: 6,
123
+ type: "string"
124
+ },
125
+ isSelected: {
126
+ index: 7,
127
+ type: "boolean"
128
+ }
129
+ };
130
+ function createColumnMap(columns, schemaColumns) {
131
+ const columnMap = {
132
+ ...ColumnMapIntrinsicColumns
133
+ };
134
+ columns.forEach((name, i, cols)=>{
135
+ const schemaColumn = schemaColumns.find((col)=>col.name === name);
136
+ if (schemaColumn) {
137
+ const serverDataType = getServerDataType(schemaColumn, true);
138
+ columnMap[name] = {
139
+ index: i + 10,
140
+ type: serverDataType
141
+ };
142
+ } else if (isCalculatedColumn(name)) {
143
+ const { serverDataType } = getCalculatedColumnDetails(name);
144
+ if (isVuuColumnDataType(serverDataType)) columnMap[name] = {
145
+ index: i + 10,
146
+ type: serverDataType
147
+ };
148
+ else throw Error(`[DataRow] calculated column with invalid serverDataType ${name}`);
149
+ } else if ("vuuMsg" === name && i === cols.length - 1) columnMap[name] = {
150
+ index: i + 10,
151
+ type: "string"
152
+ };
153
+ else throw Error(`[DataRow] dataRowFactory column not in schema ${name}`);
154
+ });
155
+ if (void 0 === columnMap.vuuMsg) return {
156
+ ...columnMap,
157
+ vuuMsg: {
158
+ index: columns.length + 10,
159
+ type: "string"
160
+ }
161
+ };
162
+ return columnMap;
163
+ }
164
+ const dataRowFactory = (columns, schemaColumns)=>{
165
+ let columnMap = createColumnMap(columns, schemaColumns);
166
+ const setColumns = (columns)=>{
167
+ columnMap = createColumnMap(columns, schemaColumns);
168
+ };
169
+ const DataRow = function(data) {
170
+ return DataRowImpl(data, columnMap);
171
+ };
172
+ return [
173
+ DataRow,
174
+ setColumns
175
+ ];
176
+ };
177
+ if ("production" !== process.env.NODE_ENV) window.devtoolsFormatters = [
178
+ {
179
+ header: function(obj) {
180
+ if (obj[dataRowSymbol]) return [
181
+ "div",
182
+ {
183
+ style: "display: flex; gap: 4px; justify-content: space-between"
184
+ },
185
+ [
186
+ "span",
187
+ {},
188
+ "Vuu DataRow"
189
+ ],
190
+ [
191
+ "span",
192
+ {
193
+ style: "font-weight: bold;"
194
+ },
195
+ `[${obj.index}]`
196
+ ],
197
+ [
198
+ "span",
199
+ {
200
+ style: "font-weight: bold; color: blue;"
201
+ },
202
+ `#${obj.key}`
203
+ ]
204
+ ];
205
+ return null;
206
+ },
207
+ hasBody: function() {
208
+ return true;
209
+ },
210
+ body: function(obj) {
211
+ return [
212
+ "div",
213
+ {},
214
+ [
215
+ "div",
216
+ {
217
+ style: "display: flex; gap: 4px;"
218
+ },
219
+ [
220
+ "span",
221
+ {},
222
+ "index"
223
+ ],
224
+ [
225
+ "span",
226
+ {},
227
+ obj.index
228
+ ]
229
+ ],
230
+ [
231
+ "div",
232
+ {
233
+ style: "display: flex; gap: 4px;"
234
+ },
235
+ [
236
+ "span",
237
+ {},
238
+ "key"
239
+ ],
240
+ [
241
+ "span",
242
+ {},
243
+ obj.key
244
+ ]
245
+ ],
246
+ [
247
+ "div",
248
+ {
249
+ style: "display: flex; gap: 4px;"
250
+ },
251
+ [
252
+ "span",
253
+ {},
254
+ "renderIndex"
255
+ ],
256
+ [
257
+ "span",
258
+ {},
259
+ obj.renderIndex
260
+ ]
261
+ ],
262
+ [
263
+ "div",
264
+ {
265
+ style: "display: flex; gap: 4px;"
266
+ },
267
+ [
268
+ "span",
269
+ {},
270
+ "isSelected"
271
+ ],
272
+ [
273
+ "span",
274
+ {},
275
+ obj.isSelected
276
+ ]
277
+ ],
278
+ ...obj.getPropertyNames().map((name)=>[
279
+ "div",
280
+ {
281
+ style: "display: flex; gap: 4px;"
282
+ },
283
+ [
284
+ "span",
285
+ {},
286
+ name
287
+ ],
288
+ [
289
+ "span",
290
+ {},
291
+ obj[name]
292
+ ]
293
+ ])
294
+ ];
295
+ }
296
+ }
297
+ ];
298
+ export { dataRowFactory };
@@ -0,0 +1,91 @@
1
+ const css = `
2
+ .vuu-theme {
3
+ --svg-spinner: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><path fill=\"rgb%2838, 112, 169%29\" d=\"M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50\"><animateTransform attributeName=\"transform\" attributeType=\"XML\" type=\"rotate\" dur=\"1s\" from=\"0 50 50\" to=\"360 50 50\" repeatCount=\"indefinite\" /></path></svg>");
4
+ }
5
+
6
+ .vuuTableGroupHeaderCell {
7
+ --vuuColumnHeaderPill-margin: 0;
8
+ --cell-align: "flex-start";
9
+ text-align: left;
10
+ cursor: default;
11
+ --vuuColumnHeaderPill-flex: 0 0 24px;
12
+ background-color: var(--vuuTableHeaderCell-background, var(--table-background));
13
+ border-bottom: none;
14
+ border-right-color: var(--cell-borderColor);
15
+ box-sizing: border-box;
16
+ vertical-align: top;
17
+ border-right-style: solid;
18
+ border-right-width: 1px;
19
+ align-items: center;
20
+ gap: 4px;
21
+ height: 100%;
22
+ padding: 0 12px 0 4px;
23
+ display: inline-flex;
24
+ position: relative;
25
+
26
+ &.vuuPinLeft, &.vuuPinRight {
27
+ background-color: var(--vuuTableHeaderCell-background, var(--table-background));
28
+ }
29
+ }
30
+
31
+ .vuuTableGroupHeaderCell-inner {
32
+ align-items: center;
33
+ gap: 4px;
34
+ height: 100%;
35
+ padding-left: 1px;
36
+ display: flex;
37
+ }
38
+
39
+ .vuuTableGroupHeaderCell-col {
40
+ background-color: inherit;
41
+ height: calc(var(--vuuTableHeaderHeight) - 2px);
42
+ flex: 0 auto;
43
+ justify-content: space-between;
44
+ align-items: center;
45
+ padding-right: 8px;
46
+ display: inline-flex;
47
+ position: relative;
48
+ }
49
+
50
+ .vuuTableGroupHeaderCell-label {
51
+ flex: none;
52
+ align-items: center;
53
+ display: flex;
54
+ }
55
+
56
+ .vuuTableGroupHeaderCell-close {
57
+ --vuu-icon-height: 18px;
58
+ --vuu-icon-width: 18px;
59
+ cursor: pointer;
60
+ left: 3px;
61
+ }
62
+
63
+ .vuuTableGroupHeaderCell-resizing {
64
+ --columnResizer-color: var(--salt-color-blue-500);
65
+ --columnResizer-height: var(--table-height);
66
+ --columnResizer-width: 2px;
67
+ }
68
+
69
+ .vuuTableGroupHeaderCell-pending {
70
+ --pending-content: "";
71
+ }
72
+
73
+ .vuuTableGroupHeaderCell-col:has( + .vuuColumnResizer):after {
74
+ content: var(--pending-content);
75
+ background-image: var(--svg-spinner);
76
+ background-repeat: no-repeat;
77
+ background-size: cover;
78
+ width: 24px;
79
+ height: 24px;
80
+ }
81
+
82
+ .vuuTableGroupHeaderCell:focus {
83
+ outline: var(--vuuTableCell-outline, solid var(--salt-focused-outlineColor) 2px);
84
+ outline-offset: -2px;
85
+ box-shadow: inset 0 0 0 var(--cell-outline-width) white;
86
+ border-bottom: none;
87
+ }
88
+
89
+
90
+ `;
91
+ export default css;
@@ -0,0 +1,98 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { createElement, useCallback, useRef, useState } from "react";
3
+ import { OverflowContainer } from "@vuu-ui/vuu-ui-controls";
4
+ import { useLayoutEffectSkipFirst } from "@vuu-ui/vuu-utils";
5
+ import { useComponentCssInjection } from "@salt-ds/styles";
6
+ import { useWindow } from "@salt-ds/window";
7
+ import clsx from "clsx";
8
+ import { ColumnHeaderPill, GroupColumnPill } from "../column-header-pill/index.mjs";
9
+ import { ColumnResizer, useTableColumnResize } from "../column-resizing/index.mjs";
10
+ import { useCell } from "../useCell.mjs";
11
+ import GroupHeaderCell from "./GroupHeaderCell.css";
12
+ const classBase = "vuuTableGroupHeaderCell";
13
+ const switchIfChanged = (columns, newColumns)=>{
14
+ if (columns === newColumns) return columns;
15
+ return newColumns;
16
+ };
17
+ const GroupHeaderCell_GroupHeaderCell = ({ column: groupColumn, className: classNameProp, onMoveColumn, onRemoveColumn, onResize, ...htmlAttributes })=>{
18
+ const targetWindow = useWindow();
19
+ useComponentCssInjection({
20
+ testId: "vuu-group-header-cell",
21
+ css: GroupHeaderCell,
22
+ window: targetWindow
23
+ });
24
+ const rootRef = useRef(null);
25
+ const { isResizing, ...resizeProps } = useTableColumnResize({
26
+ column: groupColumn,
27
+ onResize,
28
+ rootRef
29
+ });
30
+ const [columns, setColumns] = useState(groupColumn.columns);
31
+ const { className, style } = useCell(groupColumn, classBase, true);
32
+ const columnPillProps = columns.length > 1 ? {
33
+ removable: true,
34
+ onRemove: onRemoveColumn
35
+ } : void 0;
36
+ const handleMoveItem = useCallback((fromIndex, toIndex)=>{
37
+ setColumns((cols)=>{
38
+ const newCols = cols.slice();
39
+ const [tab] = newCols.splice(fromIndex, 1);
40
+ if (-1 === toIndex) {
41
+ const result = newCols.concat(tab);
42
+ requestAnimationFrame(()=>onMoveColumn?.(result));
43
+ return result;
44
+ }
45
+ newCols.splice(toIndex, 0, tab);
46
+ requestAnimationFrame(()=>onMoveColumn?.(newCols));
47
+ return newCols;
48
+ });
49
+ }, [
50
+ onMoveColumn
51
+ ]);
52
+ useLayoutEffectSkipFirst(()=>{
53
+ setColumns((cols)=>switchIfChanged(cols, groupColumn.columns));
54
+ }, [
55
+ groupColumn.columns
56
+ ]);
57
+ const handleClick = useCallback(()=>{
58
+ console.log("click");
59
+ }, []);
60
+ const handleKeyDown = useCallback(()=>{
61
+ console.log("keydown");
62
+ }, []);
63
+ return /*#__PURE__*/ jsxs("div", {
64
+ ...htmlAttributes,
65
+ "aria-colindex": groupColumn.ariaColIndex,
66
+ className: clsx(className, classNameProp, {
67
+ [`${classBase}-pending`]: false === groupColumn.groupConfirmed
68
+ }),
69
+ ref: rootRef,
70
+ role: "columnheader",
71
+ style: style,
72
+ children: [
73
+ /*#__PURE__*/ jsx(OverflowContainer, {
74
+ allowDragDrop: true,
75
+ className: `${classBase}-inner`,
76
+ onMoveItem: handleMoveItem,
77
+ overflowPosition: "start",
78
+ children: columns.map((column)=>/*#__PURE__*/ createElement(GroupColumnPill, {
79
+ ...columnPillProps,
80
+ column: column,
81
+ key: column.name,
82
+ onClick: handleClick,
83
+ onKeyDown: handleKeyDown
84
+ }))
85
+ }),
86
+ /*#__PURE__*/ jsx(ColumnHeaderPill, {
87
+ className: `${classBase}-removeAll`,
88
+ column: groupColumn,
89
+ removable: true,
90
+ onRemove: onRemoveColumn
91
+ }),
92
+ false !== groupColumn.resizeable ? /*#__PURE__*/ jsx(ColumnResizer, {
93
+ ...resizeProps
94
+ }) : null
95
+ ]
96
+ });
97
+ };
98
+ export { GroupHeaderCell_GroupHeaderCell as GroupHeaderCell };
@@ -0,0 +1,182 @@
1
+ const css = `
2
+ .vuuTableHeaderCell {
3
+ --selected-column-borderColor: var(--vuuTable-column-selected-borderColor, var(--salt-selectable-borderColor-selected));
4
+ --cell-align: "flex-start";
5
+ --vuuColumnHeaderPill-margin: 0;
6
+ --vuuColumnHeaderPill-flex: 0 0 24px;
7
+ background-color: var(--vuuTableHeaderCell-background, var(--table-background));
8
+ border-bottom: none;
9
+ border-right-color: var(--cell-borderColor);
10
+ box-sizing: border-box;
11
+ cursor: default;
12
+ vertical-align: top;
13
+ border-right-style: solid;
14
+ border-right-width: 1px;
15
+ align-items: center;
16
+ gap: 2px;
17
+ height: 100%;
18
+ padding: 0 4px 0 8px;
19
+ display: inline-flex;
20
+ position: relative;
21
+
22
+ &.vuuPinLeft, &.vuuPinRight {
23
+ background-color: var(--vuuTableHeaderCell-background, var(--table-background));
24
+ }
25
+ }
26
+
27
+ .vuuTableHeaderCell.vuuDragging, .vuuTableHeaderCell:focus {
28
+ outline: var(--vuuTableCell-outline, solid var(--salt-focused-outlineColor) 2px);
29
+ outline-offset: -3px;
30
+ }
31
+
32
+ .vuuTableHeaderCell.vuuDragging {
33
+ height: var(--vuu-table-col-header-row-height);
34
+ }
35
+
36
+ .vuuTableHeaderCell-right {
37
+ --columnResizer-left: 0;
38
+ --vuuTable-columnMenu-margin: 0;
39
+ --column-menu-left: 2px;
40
+ justify-content: flex-end;
41
+ padding: 0 3px 0 12px;
42
+ }
43
+
44
+ .vuuTableHeaderCell-noMenu {
45
+ padding-left: var(--salt-spacing-300);
46
+ }
47
+
48
+ .vuuTableHeaderCell-label {
49
+ line-height: calc(var(--vuu-table-cell-header-height) - 1px);
50
+ text-overflow: ellipsis;
51
+ white-space: nowrap;
52
+ flex: auto;
53
+ overflow: hidden;
54
+ }
55
+
56
+ .vuuTableHeaderCell-right .vuuTableHeaderCell-label {
57
+ text-align: right;
58
+ }
59
+
60
+ .vuuTableHeaderCell-resizing {
61
+ --columnResizeThumb-color: var(--vuu-color-purple-10);
62
+ --columnResizer-color: var(--vuu-color-purple-10);
63
+ --columnResizer-height: var(--table-height);
64
+ }
65
+
66
+ .vuuTableHeaderCell.vuuPinLeft {
67
+ padding-left: 2px;
68
+ }
69
+
70
+ .vuuTableHeaderCell.vuuPinLeft.vuuEndPin .vuuColumnResizer:before {
71
+ --height: calc(var(--table-height) - var(--horizontal-scrollbar-height));
72
+ --inset-r: calc(var(--pin-width) - 2px);
73
+ --inset-b: calc(var(--height) - 2px);
74
+ --clip-path: polygon(0% 0%,
75
+ 0% 120%,
76
+ 2px 120%,
77
+ 2px 2px,
78
+ var(--inset-r) 2px,
79
+ var(--inset-r) var(--inset-b),
80
+ 2px var(--inset-b),
81
+ 2px 120%,
82
+ 120% 120%,
83
+ 120% 0%);
84
+ border-color: var(--vuuTablePinnedColumn-borderColor, var(--salt-container-primary-borderColor));
85
+ clip-path: var(--clip-path);
86
+ content: "";
87
+ width: var(--pin-width);
88
+ height: var(--height);
89
+ z-index: -5;
90
+ background-color: #0000;
91
+ border-style: solid;
92
+ border-width: 1px;
93
+ border-radius: 4px;
94
+ position: absolute;
95
+ top: 0;
96
+ bottom: 0;
97
+ right: 3px;
98
+ box-shadow: 2px 1px 4px #0000001a;
99
+ }
100
+
101
+ .vuuTableHeaderCell.vuuPinRight.vuuEndPin .vuuColumnResizer:before {
102
+ --height: calc(var(--table-height) - var(--horizontal-scrollbar-height));
103
+ --inset-r: calc(var(--pin-width) - 2px);
104
+ --inset-b: calc(var(--height) - 2px);
105
+ --clip-path: polygon(-20% 0%,
106
+ -20% 120%,
107
+ 2px 120%,
108
+ 2px 2px,
109
+ var(--inset-r) 2px,
110
+ var(--inset-r) var(--inset-b),
111
+ 2px var(--inset-b),
112
+ 2px 120%,
113
+ 120% 120%,
114
+ 120% 0%);
115
+ clip-path: var(--clip-path);
116
+ content: "";
117
+ width: var(--pin-width);
118
+ height: var(--height);
119
+ z-index: -5;
120
+ background-color: #0000;
121
+ border: 1px solid #a9aaad;
122
+ border-radius: 4px;
123
+ position: absolute;
124
+ top: 0;
125
+ bottom: 0;
126
+ right: 0;
127
+ box-shadow: -2px 1px 4px #0000001a;
128
+ }
129
+
130
+ .vuuTableHeaderCell.vuuDraggable-dragAway {
131
+ display: none;
132
+ }
133
+
134
+ .vuuTable-headingCell {
135
+ background: var(--dataTable-background);
136
+ border-color: var(--salt-separable-tertiary-borderColor);
137
+ color: var(--salt-content-secondary-foreground);
138
+ height: var(--vuu-table-col-heading-height);
139
+ border-style: solid solid solid none;
140
+ border-width: 1px;
141
+ display: inline-block;
142
+ padding: 0 !important;
143
+ }
144
+
145
+ .vuuTableHeaderCell:has(.saltCheckbox) {
146
+ padding-left: 6px;
147
+ }
148
+
149
+ .vuuTableHeaderCell.error {
150
+ --selected-column-borderColor: var(--salt-status-error-borderColor);
151
+ }
152
+
153
+ .vuuTableHeaderCell.info {
154
+ --selected-column-borderColor: var(--salt-status-info-borderColor);
155
+ }
156
+
157
+ .vuuTableHeaderCell.success {
158
+ --selected-column-borderColor: var(--salt-status-success-borderColor);
159
+ }
160
+
161
+ .vuuTableHeaderCell.warning {
162
+ --selected-column-borderColor: var(--salt-status-warning-borderColor);
163
+ }
164
+
165
+ .vuuTableHeaderCell-selected:after {
166
+ border: solid 1px var(--selected-column-borderColor);
167
+ clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 0, 0 0, 2px 2px, calc(100% - 2px) 2px, calc(100% - 2px) calc(100% - 2px), 2px calc(100% - 2px), 2px 2px);
168
+ box-sizing: border-box;
169
+ content: "";
170
+ pointer-events: none;
171
+ height: calc(var(--table-height) - var(--horizontal-scrollbar-height) - 2px);
172
+ background-color: #0000;
173
+ border-radius: 6px;
174
+ width: calc(100% - 2px);
175
+ position: absolute;
176
+ top: 1px;
177
+ right: 1px;
178
+ }
179
+
180
+
181
+ `;
182
+ export default css;