@galaxy-io/dls 1.2.6 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/README.md +2 -0
  2. package/dist/avatar/Avatar.d.ts +2 -1
  3. package/dist/avatar/Avatar.js +103 -14
  4. package/dist/buttons/Button.d.ts +6 -1
  5. package/dist/buttons/Button.js +8 -4
  6. package/dist/charts/BarChart.d.ts +30 -20
  7. package/dist/charts/BarChart.js +216 -250
  8. package/dist/charts/ChartAxis.d.ts +47 -22
  9. package/dist/charts/ChartAxis.js +81 -60
  10. package/dist/charts/ChartEmptyState.d.ts +17 -0
  11. package/dist/charts/ChartEmptyState.js +29 -0
  12. package/dist/charts/ChartFrame.d.ts +82 -0
  13. package/dist/charts/ChartFrame.js +86 -0
  14. package/dist/charts/ChartLegend.d.ts +27 -4
  15. package/dist/charts/ChartLegend.js +46 -23
  16. package/dist/charts/ChartPrimitives.d.ts +195 -0
  17. package/dist/charts/ChartPrimitives.js +268 -0
  18. package/dist/charts/ChartTooltip.d.ts +27 -6
  19. package/dist/charts/ChartTooltip.js +56 -50
  20. package/dist/charts/LineChart.d.ts +42 -20
  21. package/dist/charts/LineChart.js +186 -237
  22. package/dist/charts/PieChart.d.ts +48 -32
  23. package/dist/charts/PieChart.js +159 -171
  24. package/dist/charts/barChartGeometry.d.ts +87 -0
  25. package/dist/charts/barChartGeometry.js +218 -0
  26. package/dist/charts/chartFormat.d.ts +19 -0
  27. package/dist/charts/chartFormat.js +59 -0
  28. package/dist/charts/chartScales.d.ts +84 -0
  29. package/dist/charts/chartScales.js +111 -0
  30. package/dist/charts/chartTheme.d.ts +18 -0
  31. package/dist/charts/chartTheme.js +26 -0
  32. package/dist/charts/constants.d.ts +225 -18
  33. package/dist/charts/constants.js +240 -32
  34. package/dist/charts/lineChartGeometry.d.ts +54 -0
  35. package/dist/charts/lineChartGeometry.js +143 -0
  36. package/dist/charts/pieChartGeometry.d.ts +48 -0
  37. package/dist/charts/pieChartGeometry.js +89 -0
  38. package/dist/charts/types.d.ts +522 -54
  39. package/dist/charts/types.js +136 -0
  40. package/dist/charts/useChartDimensions.d.ts +40 -0
  41. package/dist/charts/useChartDimensions.js +53 -0
  42. package/dist/charts/useChartFormatters.d.ts +19 -0
  43. package/dist/charts/useChartFormatters.js +20 -0
  44. package/dist/charts/useChartInteraction.d.ts +71 -0
  45. package/dist/charts/useChartInteraction.js +130 -0
  46. package/dist/charts/useChartTooltipPosition.d.ts +53 -0
  47. package/dist/charts/useChartTooltipPosition.js +39 -0
  48. package/dist/hooks/useElementClientSize.d.ts +20 -0
  49. package/dist/hooks/useElementClientSize.js +43 -0
  50. package/dist/inputs/CheckboxInput.d.ts +7 -2
  51. package/dist/inputs/CheckboxInput.js +30 -14
  52. package/dist/inputs/Input.d.ts +5 -2
  53. package/dist/inputs/Input.js +20 -17
  54. package/dist/inputs/MultiSelectInput.js +1 -1
  55. package/dist/inputs/RadioInput.js +7 -2
  56. package/dist/styles.css +68 -75
  57. package/dist/table/InfiniteSpreadsheet.d.ts +6 -0
  58. package/dist/table/InfiniteSpreadsheet.js +235 -0
  59. package/dist/table/InfiniteTable.d.ts +7 -88
  60. package/dist/table/InfiniteTable.js +366 -577
  61. package/dist/{spreadsheet → table}/SpreadsheetCell.d.ts +6 -4
  62. package/dist/table/SpreadsheetCell.js +71 -0
  63. package/dist/{spreadsheet → table}/SpreadsheetCellEditor.js +27 -21
  64. package/dist/table/SpreadsheetHeaderCell.d.ts +23 -0
  65. package/dist/table/SpreadsheetHeaderCell.js +91 -0
  66. package/dist/table/SpreadsheetMenuItem.d.ts +14 -0
  67. package/dist/table/SpreadsheetMenuItem.js +33 -0
  68. package/dist/table/SpreadsheetPrimitives.d.ts +172 -0
  69. package/dist/table/SpreadsheetPrimitives.js +105 -0
  70. package/dist/table/SpreadsheetRow.d.ts +33 -0
  71. package/dist/table/SpreadsheetRow.js +73 -0
  72. package/dist/{spreadsheet → table}/SpreadsheetRowActionCell.d.ts +5 -7
  73. package/dist/table/SpreadsheetRowActionCell.js +51 -0
  74. package/dist/table/TableExpandCell.d.ts +11 -0
  75. package/dist/table/TableExpandCell.js +24 -0
  76. package/dist/table/TableExpandedRow.d.ts +16 -0
  77. package/dist/table/TableExpandedRow.js +77 -0
  78. package/dist/table/TableHeaderCellContent.d.ts +30 -0
  79. package/dist/table/TableHeaderCellContent.js +48 -0
  80. package/dist/table/TablePrimitives.d.ts +307 -0
  81. package/dist/table/TablePrimitives.js +298 -0
  82. package/dist/table/TableSelectCell.d.ts +18 -0
  83. package/dist/table/TableSelectCell.js +26 -0
  84. package/dist/table/TableStatusRow.d.ts +18 -0
  85. package/dist/table/TableStatusRow.js +50 -0
  86. package/dist/table/VirtualizedInfiniteTable.d.ts +11 -27
  87. package/dist/table/VirtualizedInfiniteTable.js +182 -317
  88. package/dist/table/types.d.ts +249 -0
  89. package/dist/table/types.js +51 -0
  90. package/dist/table/useInfiniteScrollSentinel.d.ts +24 -0
  91. package/dist/table/useInfiniteScrollSentinel.js +53 -0
  92. package/dist/{spreadsheet/hooks → table}/useSpreadsheetEditing.d.ts +1 -1
  93. package/dist/{spreadsheet/hooks → table}/useSpreadsheetEditing.js +1 -1
  94. package/dist/table/useTableColumnLayout.d.ts +28 -0
  95. package/dist/table/useTableColumnLayout.js +63 -0
  96. package/dist/table/useTableColumnResize.d.ts +38 -0
  97. package/dist/table/useTableColumnResize.js +155 -0
  98. package/dist/table/useTableKeyboardNavigation.d.ts +25 -0
  99. package/dist/table/useTableKeyboardNavigation.js +83 -0
  100. package/dist/table/useTableRowExpansion.d.ts +24 -0
  101. package/dist/table/useTableRowExpansion.js +62 -0
  102. package/dist/table/useTableRowSelection.d.ts +27 -0
  103. package/dist/table/useTableRowSelection.js +94 -0
  104. package/dist/table/utils.d.ts +50 -0
  105. package/dist/table/utils.js +78 -0
  106. package/dist/text/MarkdownText.js +45 -27
  107. package/dist/theme/variants/dark.js +1 -1
  108. package/dist/widget/Widget.d.ts +2 -0
  109. package/dist/widget/Widget.js +14 -7
  110. package/package.json +1 -5
  111. package/dist/assets/components/enrichment/PerplexityIcon.d.ts +0 -3
  112. package/dist/assets/components/enrichment/PerplexityIcon.js +0 -35
  113. package/dist/assets/components/enrichment/TavilyIcon.d.ts +0 -3
  114. package/dist/assets/components/enrichment/TavilyIcon.js +0 -15
  115. package/dist/assets/components/onboarding/TenantSetupDark.d.ts +0 -3
  116. package/dist/assets/components/onboarding/TenantSetupDark.js +0 -498
  117. package/dist/assets/components/onboarding/TenantSetupLight.d.ts +0 -3
  118. package/dist/assets/components/onboarding/TenantSetupLight.js +0 -482
  119. package/dist/assets/components/onboarding/UserSetupDark.d.ts +0 -3
  120. package/dist/assets/components/onboarding/UserSetupDark.js +0 -1086
  121. package/dist/assets/components/onboarding/UserSetupLight.d.ts +0 -3
  122. package/dist/assets/components/onboarding/UserSetupLight.js +0 -1024
  123. package/dist/assets/components/onboarding/WorkspaceSetupBuildDark.d.ts +0 -3
  124. package/dist/assets/components/onboarding/WorkspaceSetupBuildDark.js +0 -466
  125. package/dist/assets/components/onboarding/WorkspaceSetupBuildLight.d.ts +0 -3
  126. package/dist/assets/components/onboarding/WorkspaceSetupBuildLight.js +0 -460
  127. package/dist/assets/components/onboarding/WorkspaceSetupConnectDark.d.ts +0 -3
  128. package/dist/assets/components/onboarding/WorkspaceSetupConnectDark.js +0 -336
  129. package/dist/assets/components/onboarding/WorkspaceSetupConnectLight.d.ts +0 -3
  130. package/dist/assets/components/onboarding/WorkspaceSetupConnectLight.js +0 -336
  131. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateDark.d.ts +0 -3
  132. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateDark.js +0 -153
  133. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateLight.d.ts +0 -3
  134. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateLight.js +0 -153
  135. package/dist/assets/components/projects/MappingMethodAutoIntrospectDark.d.ts +0 -3
  136. package/dist/assets/components/projects/MappingMethodAutoIntrospectDark.js +0 -117
  137. package/dist/assets/components/projects/MappingMethodAutoIntrospectLight.d.ts +0 -3
  138. package/dist/assets/components/projects/MappingMethodAutoIntrospectLight.js +0 -117
  139. package/dist/assets/components/projects/MappingMethodBlankDark.d.ts +0 -3
  140. package/dist/assets/components/projects/MappingMethodBlankDark.js +0 -150
  141. package/dist/assets/components/projects/MappingMethodBlankDarkHovered.d.ts +0 -3
  142. package/dist/assets/components/projects/MappingMethodBlankDarkHovered.js +0 -150
  143. package/dist/assets/components/projects/MappingMethodBlankLight.d.ts +0 -3
  144. package/dist/assets/components/projects/MappingMethodBlankLight.js +0 -150
  145. package/dist/assets/components/projects/MappingMethodBlankLightHovered.d.ts +0 -3
  146. package/dist/assets/components/projects/MappingMethodBlankLightHovered.js +0 -150
  147. package/dist/assets/components/projects/MappingMethodJsonDark.d.ts +0 -3
  148. package/dist/assets/components/projects/MappingMethodJsonDark.js +0 -90
  149. package/dist/assets/components/projects/MappingMethodJsonDarkHovered.d.ts +0 -3
  150. package/dist/assets/components/projects/MappingMethodJsonDarkHovered.js +0 -90
  151. package/dist/assets/components/projects/MappingMethodJsonLight.d.ts +0 -3
  152. package/dist/assets/components/projects/MappingMethodJsonLight.js +0 -90
  153. package/dist/assets/components/projects/MappingMethodJsonLightHovered.d.ts +0 -3
  154. package/dist/assets/components/projects/MappingMethodJsonLightHovered.js +0 -90
  155. package/dist/assets/components/projects/ProjectsEmptyStateDark.d.ts +0 -3
  156. package/dist/assets/components/projects/ProjectsEmptyStateDark.js +0 -454
  157. package/dist/assets/components/projects/ProjectsEmptyStateLight.d.ts +0 -3
  158. package/dist/assets/components/projects/ProjectsEmptyStateLight.js +0 -456
  159. package/dist/assets/components/root/CreateProjectActionCardDark.d.ts +0 -3
  160. package/dist/assets/components/root/CreateProjectActionCardDark.js +0 -1796
  161. package/dist/assets/components/root/CreateProjectActionCardDarkHovered.d.ts +0 -3
  162. package/dist/assets/components/root/CreateProjectActionCardDarkHovered.js +0 -1796
  163. package/dist/assets/components/root/CreateProjectActionCardLight.d.ts +0 -3
  164. package/dist/assets/components/root/CreateProjectActionCardLight.js +0 -1786
  165. package/dist/assets/components/root/CreateProjectActionCardLightHovered.d.ts +0 -3
  166. package/dist/assets/components/root/CreateProjectActionCardLightHovered.js +0 -1786
  167. package/dist/assets/components/root/CreateSourceActionCardDark.d.ts +0 -3
  168. package/dist/assets/components/root/CreateSourceActionCardDark.js +0 -879
  169. package/dist/assets/components/root/CreateSourceActionCardDarkHovered.d.ts +0 -3
  170. package/dist/assets/components/root/CreateSourceActionCardDarkHovered.js +0 -879
  171. package/dist/assets/components/root/CreateSourceActionCardLight.d.ts +0 -3
  172. package/dist/assets/components/root/CreateSourceActionCardLight.js +0 -889
  173. package/dist/assets/components/root/CreateSourceActionCardLightHovered.d.ts +0 -3
  174. package/dist/assets/components/root/CreateSourceActionCardLightHovered.js +0 -889
  175. package/dist/assets/components/sources/AttioIcon.d.ts +0 -3
  176. package/dist/assets/components/sources/AttioIcon.js +0 -11
  177. package/dist/assets/components/sources/BigquerySourceIcon.d.ts +0 -3
  178. package/dist/assets/components/sources/BigquerySourceIcon.js +0 -39
  179. package/dist/assets/components/sources/BrowserbaseSourceIcon.d.ts +0 -3
  180. package/dist/assets/components/sources/BrowserbaseSourceIcon.js +0 -35
  181. package/dist/assets/components/sources/ClickhouseLogoSourceIconDark.d.ts +0 -3
  182. package/dist/assets/components/sources/ClickhouseLogoSourceIconDark.js +0 -13
  183. package/dist/assets/components/sources/ClickhouseLogoSourceIconLight.d.ts +0 -3
  184. package/dist/assets/components/sources/ClickhouseLogoSourceIconLight.js +0 -13
  185. package/dist/assets/components/sources/ConfluenceSourceIcon.d.ts +0 -3
  186. package/dist/assets/components/sources/ConfluenceSourceIcon.js +0 -30
  187. package/dist/assets/components/sources/GithubSourceIcon.d.ts +0 -3
  188. package/dist/assets/components/sources/GithubSourceIcon.js +0 -27
  189. package/dist/assets/components/sources/GoogleDriveIcon.d.ts +0 -3
  190. package/dist/assets/components/sources/GoogleDriveIcon.js +0 -45
  191. package/dist/assets/components/sources/HubspotSourceIcon.d.ts +0 -3
  192. package/dist/assets/components/sources/HubspotSourceIcon.js +0 -14
  193. package/dist/assets/components/sources/JiraSourceIcon.d.ts +0 -3
  194. package/dist/assets/components/sources/JiraSourceIcon.js +0 -54
  195. package/dist/assets/components/sources/LinearSourceIcon.d.ts +0 -3
  196. package/dist/assets/components/sources/LinearSourceIcon.js +0 -14
  197. package/dist/assets/components/sources/MysqlLogoSourceIconDark.d.ts +0 -3
  198. package/dist/assets/components/sources/MysqlLogoSourceIconDark.js +0 -17
  199. package/dist/assets/components/sources/NetsuiteSourceIcon.d.ts +0 -3
  200. package/dist/assets/components/sources/NetsuiteSourceIcon.js +0 -32
  201. package/dist/assets/components/sources/NotionIcon.d.ts +0 -3
  202. package/dist/assets/components/sources/NotionIcon.js +0 -20
  203. package/dist/assets/components/sources/PostgresqlIcon.d.ts +0 -3
  204. package/dist/assets/components/sources/PostgresqlIcon.js +0 -61
  205. package/dist/assets/components/sources/S3Icon.d.ts +0 -3
  206. package/dist/assets/components/sources/S3Icon.js +0 -76
  207. package/dist/assets/components/sources/SalesforceSourceIcon.d.ts +0 -3
  208. package/dist/assets/components/sources/SalesforceSourceIcon.js +0 -23
  209. package/dist/assets/components/sources/SlackIcon.d.ts +0 -3
  210. package/dist/assets/components/sources/SlackIcon.js +0 -32
  211. package/dist/assets/components/sources/SnowflakeLogoSourceIconDark.d.ts +0 -3
  212. package/dist/assets/components/sources/SnowflakeLogoSourceIconDark.js +0 -14
  213. package/dist/assets/components/sources/SnowflakeLogoSourceIconLight.d.ts +0 -3
  214. package/dist/assets/components/sources/SnowflakeLogoSourceIconLight.js +0 -14
  215. package/dist/assets/components/sources/WikipediaSourceIcon.d.ts +0 -3
  216. package/dist/assets/components/sources/WikipediaSourceIcon.js +0 -1490
  217. package/dist/avatar/AvatarEmpty.d.ts +0 -7
  218. package/dist/avatar/AvatarEmpty.js +0 -99
  219. package/dist/avatar/types.d.ts +0 -5
  220. package/dist/avatar/types.js +0 -9
  221. package/dist/charts/utils.d.ts +0 -29
  222. package/dist/charts/utils.js +0 -62
  223. package/dist/icons/BackIcon.d.ts +0 -3
  224. package/dist/icons/BackIcon.js +0 -13
  225. package/dist/icons/CloseIcon.d.ts +0 -3
  226. package/dist/icons/CloseIcon.js +0 -13
  227. package/dist/icons/CreateIcon.d.ts +0 -3
  228. package/dist/icons/CreateIcon.js +0 -13
  229. package/dist/icons/ForwardIcon.d.ts +0 -3
  230. package/dist/icons/ForwardIcon.js +0 -13
  231. package/dist/icons/HelpIcon.d.ts +0 -3
  232. package/dist/icons/HelpIcon.js +0 -14
  233. package/dist/icons/ProjectsIcon.d.ts +0 -3
  234. package/dist/icons/ProjectsIcon.js +0 -12
  235. package/dist/icons/SearchIcon.d.ts +0 -3
  236. package/dist/icons/SearchIcon.js +0 -12
  237. package/dist/icons/SourcesIcon.d.ts +0 -3
  238. package/dist/icons/SourcesIcon.js +0 -12
  239. package/dist/icons/TextIcon.d.ts +0 -4
  240. package/dist/icons/TextIcon.js +0 -22
  241. package/dist/icons/WebScrapeIcon.d.ts +0 -4
  242. package/dist/icons/WebScrapeIcon.js +0 -22
  243. package/dist/icons/WebhookIcon.d.ts +0 -4
  244. package/dist/icons/WebhookIcon.js +0 -22
  245. package/dist/icons/sources/AttioLogomark.d.ts +0 -4
  246. package/dist/icons/sources/AttioLogomark.js +0 -8
  247. package/dist/icons/sources/BrowserbaseLogomark.d.ts +0 -4
  248. package/dist/icons/sources/BrowserbaseLogomark.js +0 -8
  249. package/dist/icons/sources/ClickhouseLogomark.d.ts +0 -4
  250. package/dist/icons/sources/ClickhouseLogomark.js +0 -16
  251. package/dist/icons/sources/ConfluenceLogomark.d.ts +0 -4
  252. package/dist/icons/sources/ConfluenceLogomark.js +0 -8
  253. package/dist/icons/sources/GithubLogomark.d.ts +0 -4
  254. package/dist/icons/sources/GithubLogomark.js +0 -8
  255. package/dist/icons/sources/GoogleBigqueryLogomark.d.ts +0 -4
  256. package/dist/icons/sources/GoogleBigqueryLogomark.js +0 -8
  257. package/dist/icons/sources/GoogleDriveLogomark.d.ts +0 -4
  258. package/dist/icons/sources/GoogleDriveLogomark.js +0 -8
  259. package/dist/icons/sources/HubspotLogomark.d.ts +0 -4
  260. package/dist/icons/sources/HubspotLogomark.js +0 -8
  261. package/dist/icons/sources/JiraLogomark.d.ts +0 -4
  262. package/dist/icons/sources/JiraLogomark.js +0 -8
  263. package/dist/icons/sources/LinearLogomark.d.ts +0 -4
  264. package/dist/icons/sources/LinearLogomark.js +0 -8
  265. package/dist/icons/sources/MySQLLogomark.d.ts +0 -4
  266. package/dist/icons/sources/MySQLLogomark.js +0 -8
  267. package/dist/icons/sources/NetsuiteLogomark.d.ts +0 -4
  268. package/dist/icons/sources/NetsuiteLogomark.js +0 -8
  269. package/dist/icons/sources/NotionLogomark.d.ts +0 -4
  270. package/dist/icons/sources/NotionLogomark.js +0 -8
  271. package/dist/icons/sources/PostgresLogomark.d.ts +0 -4
  272. package/dist/icons/sources/PostgresLogomark.js +0 -8
  273. package/dist/icons/sources/S3Logomark.d.ts +0 -4
  274. package/dist/icons/sources/S3Logomark.js +0 -8
  275. package/dist/icons/sources/SalesforceLogomark.d.ts +0 -4
  276. package/dist/icons/sources/SalesforceLogomark.js +0 -8
  277. package/dist/icons/sources/SlackLogoIconmark.d.ts +0 -4
  278. package/dist/icons/sources/SlackLogoIconmark.js +0 -8
  279. package/dist/icons/sources/SnowflakeLogomark.d.ts +0 -4
  280. package/dist/icons/sources/SnowflakeLogomark.js +0 -16
  281. package/dist/icons/sources/WikipediaLogomark.d.ts +0 -4
  282. package/dist/icons/sources/WikipediaLogomark.js +0 -8
  283. package/dist/spreadsheet/InfiniteSpreadsheet.d.ts +0 -3
  284. package/dist/spreadsheet/InfiniteSpreadsheet.js +0 -265
  285. package/dist/spreadsheet/SpreadsheetAddColumnButton.d.ts +0 -6
  286. package/dist/spreadsheet/SpreadsheetAddColumnButton.js +0 -32
  287. package/dist/spreadsheet/SpreadsheetCell.js +0 -115
  288. package/dist/spreadsheet/SpreadsheetHeaderCell.d.ts +0 -18
  289. package/dist/spreadsheet/SpreadsheetHeaderCell.js +0 -141
  290. package/dist/spreadsheet/SpreadsheetRow.d.ts +0 -21
  291. package/dist/spreadsheet/SpreadsheetRow.js +0 -68
  292. package/dist/spreadsheet/SpreadsheetRowActionCell.js +0 -78
  293. package/dist/spreadsheet/hooks/useColumnResize.d.ts +0 -6
  294. package/dist/spreadsheet/hooks/useColumnResize.js +0 -46
  295. package/dist/spreadsheet/types.d.ts +0 -92
  296. package/dist/spreadsheet/types.js +0 -21
  297. /package/dist/{spreadsheet → table}/SpreadsheetCellEditor.d.ts +0 -0
@@ -0,0 +1,73 @@
1
+ import { ROW_INDEX_ATTRIBUTE } from "./useTableKeyboardNavigation.js";
2
+ import { TableDataCell, TableRow } from "./TablePrimitives.js";
3
+ import { ActionColumnSpacerCell } from "./SpreadsheetPrimitives.js";
4
+ import SpreadsheetRowActionCell from "./SpreadsheetRowActionCell.js";
5
+ import SpreadsheetCell from "./SpreadsheetCell.js";
6
+ import React from "react";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
+ //#region src/table/SpreadsheetRow.tsx
9
+ function SpreadsheetRowInner({ rowData, rowIndex, translateY, rowHeight, isLastRow, density, variant, columns, pinnedOffsets, getColumnWidth, editingCell, onStartEditing, onCommitEditing, onCancelEditing, rowActions, rowActionsAriaLabel, showActionColumn, tabIndex, onFocus, onKeyDown }) {
10
+ return /* @__PURE__ */ jsxs(TableRow, {
11
+ $density: density,
12
+ $variant: variant,
13
+ $isLastRow: isLastRow,
14
+ $translateY: translateY,
15
+ $rowHeight: rowHeight,
16
+ role: "row",
17
+ "aria-rowindex": rowIndex + 2,
18
+ tabIndex,
19
+ onFocus,
20
+ onKeyDown,
21
+ [ROW_INDEX_ATTRIBUTE]: rowIndex,
22
+ children: [columns.map((col, columnIndex) => rowData ? /* @__PURE__ */ jsx(SpreadsheetCell, {
23
+ column: col,
24
+ row: rowData,
25
+ rowIndex,
26
+ columnIndex,
27
+ isEditing: editingCell?.rowIndex === rowIndex && editingCell?.columnId === col.id,
28
+ onStartEditing: () => onStartEditing(rowIndex, col.id),
29
+ onCommit: (value) => {
30
+ col.onCellChange?.(rowIndex, rowData, value);
31
+ onCommitEditing();
32
+ },
33
+ onCancel: onCancelEditing,
34
+ width: getColumnWidth(col),
35
+ pin: col.pin,
36
+ pinnedOffset: pinnedOffsets.get(col.id),
37
+ align: col.align,
38
+ density,
39
+ variant
40
+ }, col.id) : /* @__PURE__ */ jsx(TableDataCell, {
41
+ $width: getColumnWidth(col),
42
+ $minWidth: col.minSize,
43
+ $maxWidth: col.maxSize,
44
+ $pin: col.pin,
45
+ $pinnedOffset: pinnedOffsets.get(col.id),
46
+ $align: col.align,
47
+ $density: density,
48
+ $variant: variant,
49
+ role: "gridcell",
50
+ "aria-colindex": columnIndex + 1,
51
+ children: col.cellLoading ? col.cellLoading() : null
52
+ }, col.id)), showActionColumn && (rowData && rowActions && rowActions.length > 0 ? /* @__PURE__ */ jsx(SpreadsheetRowActionCell, {
53
+ row: rowData,
54
+ rowIndex,
55
+ columnIndex: columns.length,
56
+ actions: rowActions,
57
+ variant,
58
+ ariaLabel: rowActionsAriaLabel
59
+ }) : /* @__PURE__ */ jsx(ActionColumnSpacerCell, {
60
+ $variant: variant,
61
+ role: "gridcell"
62
+ }))]
63
+ });
64
+ }
65
+ /**
66
+ * Default shallow comparison: `columns`, `getColumnWidth` and `pinnedOffsets`
67
+ * are all memoized upstream, so every prop that affects the output takes part.
68
+ * A hand-written comparator here previously dropped `rowHeight`, which left
69
+ * mounted rows at a stale height whenever density changed.
70
+ */
71
+ var SpreadsheetRow = React.memo(SpreadsheetRowInner);
72
+ //#endregion
73
+ export { SpreadsheetRow as default };
@@ -1,16 +1,14 @@
1
1
  import React from "react";
2
- import type { SpreadsheetRowAction } from "./types";
2
+ import { TableVariant, type SpreadsheetRowAction } from "./types";
3
3
  export interface SpreadsheetRowActionCellProps<TData> {
4
4
  row: TData;
5
5
  rowIndex: number;
6
+ columnIndex: number;
6
7
  actions: SpreadsheetRowAction<TData>[];
8
+ variant: TableVariant;
7
9
  pinnedOffset?: number;
10
+ ariaLabel?: string;
8
11
  }
9
- export interface ActionCellDropdownItemProps {
10
- icon?: React.ReactNode;
11
- label: string;
12
- onClick: () => void;
13
- }
14
- declare function SpreadsheetRowActionCellInner<TData>({ row, rowIndex, actions, pinnedOffset, }: SpreadsheetRowActionCellProps<TData>): React.JSX.Element;
12
+ declare function SpreadsheetRowActionCellInner<TData>({ row, rowIndex, columnIndex, actions, variant, pinnedOffset, ariaLabel, }: SpreadsheetRowActionCellProps<TData>): React.JSX.Element;
15
13
  declare const SpreadsheetRowActionCell: typeof SpreadsheetRowActionCellInner;
16
14
  export default SpreadsheetRowActionCell;
@@ -0,0 +1,51 @@
1
+ import Button, { ButtonSize, ButtonVariant } from "../buttons/Button.js";
2
+ import FlexWrapper, { FlexDirection } from "../containers/FlexWrapper.js";
3
+ import Dropdown, { DropdownPosition } from "../dropdown/Dropdown.js";
4
+ import SpreadsheetMenuItem from "./SpreadsheetMenuItem.js";
5
+ import { ActionColumnCell } from "./SpreadsheetPrimitives.js";
6
+ import React, { useState } from "react";
7
+ import { jsx } from "react/jsx-runtime";
8
+ import { DotsThreeVerticalIcon } from "@phosphor-icons/react";
9
+ //#region src/table/SpreadsheetRowActionCell.tsx
10
+ function SpreadsheetRowActionCellInner({ row, rowIndex, columnIndex, actions, variant, pinnedOffset, ariaLabel }) {
11
+ const [isOpen, setIsOpen] = useState(false);
12
+ return /* @__PURE__ */ jsx(ActionColumnCell, {
13
+ $variant: variant,
14
+ $pinnedOffset: pinnedOffset,
15
+ role: "gridcell",
16
+ "aria-colindex": columnIndex + 1,
17
+ children: /* @__PURE__ */ jsx(Dropdown, {
18
+ body: /* @__PURE__ */ jsx(FlexWrapper, {
19
+ direction: FlexDirection.COLUMN,
20
+ gap: 2,
21
+ children: actions.map((action) => /* @__PURE__ */ jsx(SpreadsheetMenuItem, {
22
+ icon: action.icon,
23
+ label: action.label,
24
+ onClick: () => {
25
+ action.onAction(rowIndex, row);
26
+ setIsOpen(false);
27
+ }
28
+ }, action.id))
29
+ }),
30
+ position: DropdownPosition.BOTTOM_END,
31
+ isOpen,
32
+ onClose: () => setIsOpen(false),
33
+ minWidth: 140,
34
+ children: /* @__PURE__ */ jsx(Button, {
35
+ icon: DotsThreeVerticalIcon,
36
+ variant: ButtonVariant.TERTIARY,
37
+ size: ButtonSize.SMALL,
38
+ ariaLabel: ariaLabel ?? `Actions for row ${rowIndex + 1}`,
39
+ ariaExpanded: isOpen,
40
+ ariaHasPopup: true,
41
+ onClick: (event) => {
42
+ event.stopPropagation();
43
+ setIsOpen(!isOpen);
44
+ }
45
+ })
46
+ })
47
+ });
48
+ }
49
+ var SpreadsheetRowActionCell = React.memo(SpreadsheetRowActionCellInner);
50
+ //#endregion
51
+ export { SpreadsheetRowActionCell as default };
@@ -0,0 +1,11 @@
1
+ import { TableDensity } from "./types";
2
+ interface TableExpandCellProps {
3
+ isExpanded: boolean;
4
+ density: TableDensity;
5
+ /** Id of the panel this toggle controls, for `aria-controls`. */
6
+ expandedPanelId: string;
7
+ ariaLabel?: string;
8
+ onToggle: () => void;
9
+ }
10
+ declare const TableExpandCell: ({ isExpanded, density, expandedPanelId, ariaLabel, onToggle, }: TableExpandCellProps) => import("react").JSX.Element;
11
+ export default TableExpandCell;
@@ -0,0 +1,24 @@
1
+ import Button, { ButtonSize, ButtonVariant } from "../buttons/Button.js";
2
+ import { TableDensity } from "./types.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { CaretDownIcon, CaretRightIcon } from "@phosphor-icons/react";
5
+ //#region src/table/TableExpandCell.tsx
6
+ var DENSITY_TO_BUTTON_SIZE_MAP = {
7
+ [TableDensity.SMALL]: ButtonSize.SMALL,
8
+ [TableDensity.MEDIUM]: ButtonSize.SMALL,
9
+ [TableDensity.LARGE]: ButtonSize.MEDIUM
10
+ };
11
+ var TableExpandCell = ({ isExpanded, density, expandedPanelId, ariaLabel, onToggle }) => /* @__PURE__ */ jsx(Button, {
12
+ ariaExpanded: isExpanded,
13
+ ariaControls: isExpanded ? expandedPanelId : void 0,
14
+ ariaLabel: ariaLabel ?? (isExpanded ? "Collapse row" : "Expand row"),
15
+ icon: isExpanded ? CaretDownIcon : CaretRightIcon,
16
+ onClick: (event) => {
17
+ event.stopPropagation();
18
+ onToggle();
19
+ },
20
+ variant: ButtonVariant.TERTIARY,
21
+ size: DENSITY_TO_BUTTON_SIZE_MAP[density]
22
+ });
23
+ //#endregion
24
+ export { TableExpandCell as default };
@@ -0,0 +1,16 @@
1
+ import type { ReactNode } from "react";
2
+ import { TableVariant } from "./types";
3
+ interface TableExpandedRowProps {
4
+ /** Id referenced by the toggle's `aria-controls`. */
5
+ panelId: string;
6
+ variant: TableVariant;
7
+ colSpan: number;
8
+ rowMinWidth: number;
9
+ /** Scroll container's client width, so the panel matches the visible area. */
10
+ viewportWidth?: number;
11
+ gutterWidth: number;
12
+ isLastRow: boolean;
13
+ children: ReactNode;
14
+ }
15
+ declare const TableExpandedRow: ({ panelId, variant, colSpan, rowMinWidth, viewportWidth, gutterWidth, isLastRow, children, }: TableExpandedRowProps) => import("react").JSX.Element;
16
+ export default TableExpandedRow;
@@ -0,0 +1,77 @@
1
+ import { withTheme } from "../theme/GalaxyTheme.js";
2
+ import { getVariantBackgroundColor } from "./utils.js";
3
+ /* empty css */
4
+ import { styled } from "@linaria/react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ //#region src/table/TableExpandedRow.tsx
7
+ var _exp = () => ({ $rowMinWidth }) => `${$rowMinWidth}px`;
8
+ var ExpandedRow = /*#__PURE__*/ styled("tr")({
9
+ name: "ExpandedRow",
10
+ class: "emhaytw",
11
+ propsAsIs: false,
12
+ vars: { "emhaytw-0": [_exp()] }
13
+ });
14
+ var _exp2 = () => ({ $variant, theme }) => getVariantBackgroundColor(theme, $variant);
15
+ var _exp3 = () => ({ $isLastRow, theme }) => $isLastRow ? "none" : `0.5px solid ${theme.color.border.primary}`;
16
+ var ExpandedRowCell = withTheme(/*#__PURE__*/ styled("td")({
17
+ name: "ExpandedRowCell",
18
+ class: "e11cd6rt",
19
+ propsAsIs: false,
20
+ vars: {
21
+ "e11cd6rt-0": [_exp2()],
22
+ "e11cd6rt-1": [_exp3()]
23
+ }
24
+ }));
25
+ /**
26
+ * Sticky-left so the panel stays pinned to the visible width while the table
27
+ * scrolls horizontally; vertical scrolling is native table flow.
28
+ */
29
+ var _exp4 = () => ({ $width }) => $width !== void 0 ? `${$width}px` : "100%";
30
+ var _exp5 = () => ({ $gutterWidth }) => `${$gutterWidth}px minmax(0, 1fr)`;
31
+ var ExpandedViewport = /*#__PURE__*/ styled("div")({
32
+ name: "ExpandedViewport",
33
+ class: "eg2e964",
34
+ propsAsIs: false,
35
+ vars: {
36
+ "eg2e964-0": [_exp4()],
37
+ "eg2e964-1": [_exp5()]
38
+ }
39
+ });
40
+ var _exp6 = () => ({ $variant, theme }) => getVariantBackgroundColor(theme, $variant);
41
+ var _exp7 = () => ({ theme }) => theme.color.border.primary;
42
+ var ExpandedGutter = withTheme(/*#__PURE__*/ styled("div")({
43
+ name: "ExpandedGutter",
44
+ class: "e1s9jmet",
45
+ propsAsIs: false,
46
+ vars: {
47
+ "e1s9jmet-0": [_exp6()],
48
+ "e1s9jmet-1": [_exp7()]
49
+ }
50
+ }));
51
+ var _exp8 = () => ({ theme }) => theme.color.border.primary;
52
+ var ExpandedBody = withTheme(/*#__PURE__*/ styled("div")({
53
+ name: "ExpandedBody",
54
+ class: "e1yjhd51",
55
+ propsAsIs: false,
56
+ vars: { "e1yjhd51-0": [_exp8()] }
57
+ }));
58
+ var TableExpandedRow = ({ panelId, variant, colSpan, rowMinWidth, viewportWidth, gutterWidth, isLastRow, children }) => /* @__PURE__ */ jsx(ExpandedRow, {
59
+ $rowMinWidth: rowMinWidth,
60
+ role: "row",
61
+ children: /* @__PURE__ */ jsx(ExpandedRowCell, {
62
+ colSpan,
63
+ $variant: variant,
64
+ $isLastRow: isLastRow,
65
+ role: "cell",
66
+ children: /* @__PURE__ */ jsxs(ExpandedViewport, {
67
+ $width: viewportWidth,
68
+ $gutterWidth: gutterWidth,
69
+ children: [/* @__PURE__ */ jsx(ExpandedGutter, { $variant: variant }), /* @__PURE__ */ jsx(ExpandedBody, {
70
+ id: panelId,
71
+ children
72
+ })]
73
+ })
74
+ })
75
+ });
76
+ //#endregion
77
+ export { TableExpandedRow as default };
@@ -0,0 +1,30 @@
1
+ export type SortDirection = "asc" | "desc" | false;
2
+ export declare const TableHeaderLabel: ({ children }: {
3
+ children: React.ReactNode;
4
+ }) => import("react").JSX.Element;
5
+ interface ColumnResizeControls {
6
+ columnId: string;
7
+ columnLabel: string;
8
+ isResizing: boolean;
9
+ bounds: {
10
+ min: number;
11
+ max: number;
12
+ current: number | undefined;
13
+ };
14
+ onResizeStart: (columnId: string, clientX: number, measuredWidth?: number) => void;
15
+ onResizeKeyDown: (columnId: string, event: React.KeyboardEvent) => void;
16
+ }
17
+ interface TableHeaderCellContentProps {
18
+ /** Custom header node, or a plain string that gets the default treatment. */
19
+ content: React.ReactNode;
20
+ isSortable: boolean;
21
+ sortDirection: SortDirection;
22
+ /**
23
+ * Affordance pinned to the cell's trailing edge, ahead of the resize handle —
24
+ * a menu trigger, for instance. Passing it makes the label take the slack.
25
+ */
26
+ trailing?: React.ReactNode;
27
+ resize?: ColumnResizeControls;
28
+ }
29
+ declare const TableHeaderCellContent: ({ content, isSortable, sortDirection, trailing, resize, }: TableHeaderCellContentProps) => import("react").JSX.Element;
30
+ export default TableHeaderCellContent;
@@ -0,0 +1,48 @@
1
+ import Text, { TextSize, TextVariant, TextWeight } from "../text/Text.js";
2
+ import Icon, { IconVariant } from "../icons/Icon.js";
3
+ import { ColumnResizeHandle, HeaderContentWrapper, HeaderTrailingWrapper, SortIconWrapper } from "./TablePrimitives.js";
4
+ import { match } from "ts-pattern";
5
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
+ import { CaretUpDownIcon, SortAscendingIcon, SortDescendingIcon } from "@phosphor-icons/react";
7
+ //#region src/table/TableHeaderCellContent.tsx
8
+ var TableHeaderLabel = ({ children }) => /* @__PURE__ */ jsx(Text, {
9
+ variant: TextVariant.TERTIARY,
10
+ weight: TextWeight.MEDIUM,
11
+ size: TextSize.BODY_SM,
12
+ children
13
+ });
14
+ var renderSortIcon = (sortDirection) => match(sortDirection).with("asc", () => SortAscendingIcon).with("desc", () => SortDescendingIcon).with(false, () => CaretUpDownIcon).exhaustive();
15
+ var TableHeaderCellContent = ({ content, isSortable, sortDirection, trailing, resize }) => /* @__PURE__ */ jsxs(Fragment, { children: [
16
+ /* @__PURE__ */ jsxs(HeaderContentWrapper, {
17
+ $grow: Boolean(trailing),
18
+ children: [typeof content === "string" ? /* @__PURE__ */ jsx(TableHeaderLabel, { children: content }) : content, isSortable && /* @__PURE__ */ jsx(SortIconWrapper, { children: /* @__PURE__ */ jsx(Icon, {
19
+ component: renderSortIcon(sortDirection),
20
+ size: 12,
21
+ variant: IconVariant.TERTIARY
22
+ }) })]
23
+ }),
24
+ trailing && /* @__PURE__ */ jsx(HeaderTrailingWrapper, { children: trailing }),
25
+ resize && /* @__PURE__ */ jsx(ColumnResizeHandle, {
26
+ $isResizing: resize.isResizing,
27
+ role: "separator",
28
+ "aria-orientation": "vertical",
29
+ "aria-label": `Resize ${resize.columnLabel}`,
30
+ "aria-valuenow": resize.bounds.current,
31
+ "aria-valuemin": resize.bounds.min,
32
+ "aria-valuemax": resize.bounds.max,
33
+ tabIndex: 0,
34
+ onPointerDown: (event) => {
35
+ event.stopPropagation();
36
+ event.preventDefault();
37
+ const headerCell = event.currentTarget.closest("th");
38
+ resize.onResizeStart(resize.columnId, event.clientX, headerCell?.getBoundingClientRect().width);
39
+ },
40
+ onClick: (event) => event.stopPropagation(),
41
+ onKeyDown: (event) => {
42
+ event.stopPropagation();
43
+ resize.onResizeKeyDown(resize.columnId, event);
44
+ }
45
+ })
46
+ ] });
47
+ //#endregion
48
+ export { TableHeaderLabel, TableHeaderCellContent as default };
@@ -0,0 +1,307 @@
1
+ import { ColumnAlign, ColumnPin, TableDensity, TableVariant } from "./types";
2
+ /**
3
+ * Shared styled leaves for InfiniteTable and VirtualizedInfiniteTable.
4
+ *
5
+ * Every export here is non-generic on purpose: `withTheme` erases type
6
+ * parameters, so generic row/cell renderers compose these rather than being
7
+ * wrapped themselves.
8
+ *
9
+ * The table elements are laid out with flex, which strips their implicit ARIA
10
+ * roles — callers must pass explicit `role` attributes.
11
+ */
12
+ export declare const TableOuterContainer: import("react").ComponentType<Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
13
+ $width?: number | string;
14
+ $height?: number | string;
15
+ $fillWidth?: boolean;
16
+ $fillHeight?: boolean;
17
+ } & {
18
+ theme: import("../theme").Theme;
19
+ } & {
20
+ as?: React.ElementType;
21
+ }, "$width" | "$height" | "$fillWidth" | "$fillHeight" | keyof import("react").ClassAttributes<HTMLDivElement> | keyof import("react").HTMLAttributes<HTMLDivElement> | "as"> & {
22
+ theme?: import("@callstack/react-theme-provider").$DeepPartial<import("../theme").Theme> | undefined;
23
+ }> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
24
+ $width?: number | string;
25
+ $height?: number | string;
26
+ $fillWidth?: boolean;
27
+ $fillHeight?: boolean;
28
+ } & {
29
+ theme: import("../theme").Theme;
30
+ } & {
31
+ as?: React.ElementType;
32
+ }> & {
33
+ __wyw_meta: unknown;
34
+ } & import("react").FunctionComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
35
+ $width?: number | string;
36
+ $height?: number | string;
37
+ $fillWidth?: boolean;
38
+ $fillHeight?: boolean;
39
+ } & {
40
+ theme: import("../theme").Theme;
41
+ } & {
42
+ as?: React.ElementType;
43
+ }>, {}>;
44
+ /**
45
+ * Deliberately not wrapped in `withTheme` — it receives a ref, and the
46
+ * `withTheme` HOC does not forward one.
47
+ */
48
+ export declare const TableScrollContainer: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
49
+ $noLastRowPadding?: boolean;
50
+ }>;
51
+ /**
52
+ * `min-width` is the sum of the resolved column widths, so a table whose fixed
53
+ * columns overflow scrolls horizontally instead of squashing — while a table of
54
+ * flexible columns still fills its container.
55
+ */
56
+ export declare const StyledTable: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLTableElement> & import("react").TableHTMLAttributes<HTMLTableElement> & {
57
+ $rowMinWidth: number;
58
+ }>;
59
+ export declare const TableHead: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLTableSectionElement> & import("react").HTMLAttributes<HTMLTableSectionElement> & Record<never, unknown>>;
60
+ export declare const TableBody: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLTableSectionElement> & import("react").HTMLAttributes<HTMLTableSectionElement> & {
61
+ $virtualHeight?: number;
62
+ }>;
63
+ export declare const TableHeaderRow: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & Record<never, unknown>>;
64
+ export declare const TableRow: import("react").ComponentType<Pick<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & {
65
+ $isClickable?: boolean;
66
+ $isSelected?: boolean;
67
+ $density?: TableDensity;
68
+ $variant?: TableVariant;
69
+ $isLastRow?: boolean;
70
+ $isExpanded?: boolean;
71
+ $translateY?: number;
72
+ $rowHeight?: number;
73
+ } & {
74
+ theme: import("../theme").Theme;
75
+ } & {
76
+ as?: React.ElementType;
77
+ }, "as" | "$variant" | "$isSelected" | "$isClickable" | "$density" | "$isLastRow" | "$isExpanded" | "$translateY" | "$rowHeight" | keyof import("react").ClassAttributes<HTMLTableRowElement> | keyof import("react").HTMLAttributes<HTMLTableRowElement>> & {
78
+ theme?: import("@callstack/react-theme-provider").$DeepPartial<import("../theme").Theme> | undefined;
79
+ }> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & {
80
+ $isClickable?: boolean;
81
+ $isSelected?: boolean;
82
+ $density?: TableDensity;
83
+ $variant?: TableVariant;
84
+ $isLastRow?: boolean;
85
+ $isExpanded?: boolean;
86
+ $translateY?: number;
87
+ $rowHeight?: number;
88
+ } & {
89
+ theme: import("../theme").Theme;
90
+ } & {
91
+ as?: React.ElementType;
92
+ }> & {
93
+ __wyw_meta: unknown;
94
+ } & import("react").FunctionComponent<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & {
95
+ $isClickable?: boolean;
96
+ $isSelected?: boolean;
97
+ $density?: TableDensity;
98
+ $variant?: TableVariant;
99
+ $isLastRow?: boolean;
100
+ $isExpanded?: boolean;
101
+ $translateY?: number;
102
+ $rowHeight?: number;
103
+ } & {
104
+ theme: import("../theme").Theme;
105
+ } & {
106
+ as?: React.ElementType;
107
+ }>, {}>;
108
+ export declare const TableLoadingRow: import("react").ComponentType<Pick<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & {
109
+ $density?: TableDensity;
110
+ $variant?: TableVariant;
111
+ } & {
112
+ theme: import("../theme").Theme;
113
+ } & {
114
+ as?: React.ElementType;
115
+ }, "as" | "$variant" | "$density" | keyof import("react").ClassAttributes<HTMLTableRowElement> | keyof import("react").HTMLAttributes<HTMLTableRowElement>> & {
116
+ theme?: import("@callstack/react-theme-provider").$DeepPartial<import("../theme").Theme> | undefined;
117
+ }> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & {
118
+ $density?: TableDensity;
119
+ $variant?: TableVariant;
120
+ } & {
121
+ theme: import("../theme").Theme;
122
+ } & {
123
+ as?: React.ElementType;
124
+ }> & {
125
+ __wyw_meta: unknown;
126
+ } & import("react").FunctionComponent<import("react").ClassAttributes<HTMLTableRowElement> & import("react").HTMLAttributes<HTMLTableRowElement> & {
127
+ $density?: TableDensity;
128
+ $variant?: TableVariant;
129
+ } & {
130
+ theme: import("../theme").Theme;
131
+ } & {
132
+ as?: React.ElementType;
133
+ }>, {}>;
134
+ export declare const TableHeaderCell: import("react").ComponentType<Pick<import("react").ClassAttributes<HTMLTableHeaderCellElement> & import("react").ThHTMLAttributes<HTMLTableHeaderCellElement> & {
135
+ $width?: number;
136
+ $minWidth?: number;
137
+ $maxWidth?: number;
138
+ $pin?: ColumnPin;
139
+ $pinnedOffset?: number;
140
+ $align?: ColumnAlign;
141
+ $isSortable?: boolean;
142
+ $density?: TableDensity;
143
+ $variant?: TableVariant;
144
+ $isCompact?: boolean;
145
+ } & {
146
+ theme: import("../theme").Theme;
147
+ } & {
148
+ as?: React.ElementType;
149
+ }, "$width" | "$minWidth" | "$maxWidth" | "as" | "$variant" | "$align" | keyof import("react").ClassAttributes<HTMLTableHeaderCellElement> | keyof import("react").ThHTMLAttributes<HTMLTableHeaderCellElement> | "$pinnedOffset" | "$density" | "$pin" | "$isSortable" | "$isCompact"> & {
150
+ theme?: import("@callstack/react-theme-provider").$DeepPartial<import("../theme").Theme> | undefined;
151
+ }> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<import("react").ClassAttributes<HTMLTableHeaderCellElement> & import("react").ThHTMLAttributes<HTMLTableHeaderCellElement> & {
152
+ $width?: number;
153
+ $minWidth?: number;
154
+ $maxWidth?: number;
155
+ $pin?: ColumnPin;
156
+ $pinnedOffset?: number;
157
+ $align?: ColumnAlign;
158
+ $isSortable?: boolean;
159
+ $density?: TableDensity;
160
+ $variant?: TableVariant;
161
+ $isCompact?: boolean;
162
+ } & {
163
+ theme: import("../theme").Theme;
164
+ } & {
165
+ as?: React.ElementType;
166
+ }> & {
167
+ __wyw_meta: unknown;
168
+ } & import("react").FunctionComponent<import("react").ClassAttributes<HTMLTableHeaderCellElement> & import("react").ThHTMLAttributes<HTMLTableHeaderCellElement> & {
169
+ $width?: number;
170
+ $minWidth?: number;
171
+ $maxWidth?: number;
172
+ $pin?: ColumnPin;
173
+ $pinnedOffset?: number;
174
+ $align?: ColumnAlign;
175
+ $isSortable?: boolean;
176
+ $density?: TableDensity;
177
+ $variant?: TableVariant;
178
+ $isCompact?: boolean;
179
+ } & {
180
+ theme: import("../theme").Theme;
181
+ } & {
182
+ as?: React.ElementType;
183
+ }>, {}>;
184
+ export declare const TableDataCell: import("react").ComponentType<Pick<import("react").ClassAttributes<HTMLTableDataCellElement> & import("react").TdHTMLAttributes<HTMLTableDataCellElement> & {
185
+ $width?: number;
186
+ $minWidth?: number;
187
+ $maxWidth?: number;
188
+ $pin?: ColumnPin;
189
+ $pinnedOffset?: number;
190
+ $align?: ColumnAlign;
191
+ $density?: TableDensity;
192
+ $variant?: TableVariant;
193
+ $isCompact?: boolean;
194
+ /**
195
+ * Makes the cell a containing block for absolutely-positioned children —
196
+ * an inline editor overlay, for instance. Without it the nearest
197
+ * positioned ancestor is the row, which in a virtualized body is
198
+ * `position: absolute`, so `inset: 0` would cover the whole row.
199
+ */
200
+ $isPositioned?: boolean;
201
+ /**
202
+ * Marks a cell the user can act on directly — an editable spreadsheet cell,
203
+ * for instance. Gives it a text cursor and its own hover background,
204
+ * independent of whether the whole row is clickable.
205
+ */
206
+ $isEditable?: boolean;
207
+ } & {
208
+ theme: import("../theme").Theme;
209
+ } & {
210
+ as?: React.ElementType;
211
+ }, "$width" | "$minWidth" | "$maxWidth" | "as" | "$variant" | "$align" | "$pinnedOffset" | keyof import("react").ClassAttributes<HTMLTableDataCellElement> | keyof import("react").TdHTMLAttributes<HTMLTableDataCellElement> | "$density" | "$pin" | "$isCompact" | "$isPositioned" | "$isEditable"> & {
212
+ theme?: import("@callstack/react-theme-provider").$DeepPartial<import("../theme").Theme> | undefined;
213
+ }> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<import("react").ClassAttributes<HTMLTableDataCellElement> & import("react").TdHTMLAttributes<HTMLTableDataCellElement> & {
214
+ $width?: number;
215
+ $minWidth?: number;
216
+ $maxWidth?: number;
217
+ $pin?: ColumnPin;
218
+ $pinnedOffset?: number;
219
+ $align?: ColumnAlign;
220
+ $density?: TableDensity;
221
+ $variant?: TableVariant;
222
+ $isCompact?: boolean;
223
+ /**
224
+ * Makes the cell a containing block for absolutely-positioned children —
225
+ * an inline editor overlay, for instance. Without it the nearest
226
+ * positioned ancestor is the row, which in a virtualized body is
227
+ * `position: absolute`, so `inset: 0` would cover the whole row.
228
+ */
229
+ $isPositioned?: boolean;
230
+ /**
231
+ * Marks a cell the user can act on directly — an editable spreadsheet cell,
232
+ * for instance. Gives it a text cursor and its own hover background,
233
+ * independent of whether the whole row is clickable.
234
+ */
235
+ $isEditable?: boolean;
236
+ } & {
237
+ theme: import("../theme").Theme;
238
+ } & {
239
+ as?: React.ElementType;
240
+ }> & {
241
+ __wyw_meta: unknown;
242
+ } & import("react").FunctionComponent<import("react").ClassAttributes<HTMLTableDataCellElement> & import("react").TdHTMLAttributes<HTMLTableDataCellElement> & {
243
+ $width?: number;
244
+ $minWidth?: number;
245
+ $maxWidth?: number;
246
+ $pin?: ColumnPin;
247
+ $pinnedOffset?: number;
248
+ $align?: ColumnAlign;
249
+ $density?: TableDensity;
250
+ $variant?: TableVariant;
251
+ $isCompact?: boolean;
252
+ /**
253
+ * Makes the cell a containing block for absolutely-positioned children —
254
+ * an inline editor overlay, for instance. Without it the nearest
255
+ * positioned ancestor is the row, which in a virtualized body is
256
+ * `position: absolute`, so `inset: 0` would cover the whole row.
257
+ */
258
+ $isPositioned?: boolean;
259
+ /**
260
+ * Marks a cell the user can act on directly — an editable spreadsheet cell,
261
+ * for instance. Gives it a text cursor and its own hover background,
262
+ * independent of whether the whole row is clickable.
263
+ */
264
+ $isEditable?: boolean;
265
+ } & {
266
+ theme: import("../theme").Theme;
267
+ } & {
268
+ as?: React.ElementType;
269
+ }>, {}>;
270
+ export declare const HeaderContentWrapper: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
271
+ $grow?: boolean;
272
+ }>;
273
+ /** Holds a trailing affordance — a menu trigger, say — at the cell's far edge. */
274
+ export declare const HeaderTrailingWrapper: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & Record<never, unknown>>;
275
+ export declare const SortIconWrapper: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & Record<never, unknown>>;
276
+ /**
277
+ * Grab area pinned to the trailing edge of a resizable header cell.
278
+ *
279
+ * The area is wide enough to grab comfortably, but the indicator sits flush
280
+ * against the trailing edge — centring it inside the grab area would leave it
281
+ * floating a few pixels short of the column border it represents.
282
+ */
283
+ export declare const ColumnResizeHandle: import("react").ComponentType<Pick<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
284
+ $isResizing?: boolean;
285
+ } & {
286
+ theme: import("../theme").Theme;
287
+ } & {
288
+ as?: React.ElementType;
289
+ }, keyof import("react").ClassAttributes<HTMLDivElement> | keyof import("react").HTMLAttributes<HTMLDivElement> | "as" | "$isResizing"> & {
290
+ theme?: import("@callstack/react-theme-provider").$DeepPartial<import("../theme").Theme> | undefined;
291
+ }> & import("@callstack/react-theme-provider/typings/hoist-non-react-statics").NonReactStatics<import("react").ComponentType<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
292
+ $isResizing?: boolean;
293
+ } & {
294
+ theme: import("../theme").Theme;
295
+ } & {
296
+ as?: React.ElementType;
297
+ }> & {
298
+ __wyw_meta: unknown;
299
+ } & import("react").FunctionComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
300
+ $isResizing?: boolean;
301
+ } & {
302
+ theme: import("../theme").Theme;
303
+ } & {
304
+ as?: React.ElementType;
305
+ }>, {}>;
306
+ /** Sentinel that drives infinite scroll; carries no visual weight. */
307
+ export declare const InfiniteScrollSentinel: import("@linaria/react").StyledComponent<import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & Record<never, unknown>>;