@galaxy-io/dls 1.2.7 → 1.3.1

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 (305) 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 +183 -253
  8. package/dist/charts/ChartAxis.d.ts +47 -22
  9. package/dist/charts/ChartAxis.js +81 -60
  10. package/dist/charts/ChartCategoryTargets.d.ts +27 -0
  11. package/dist/charts/ChartCategoryTargets.js +75 -0
  12. package/dist/charts/ChartEmptyState.d.ts +17 -0
  13. package/dist/charts/ChartEmptyState.js +29 -0
  14. package/dist/charts/ChartFrame.d.ts +110 -0
  15. package/dist/charts/ChartFrame.js +143 -0
  16. package/dist/charts/ChartLegend.d.ts +27 -4
  17. package/dist/charts/ChartLegend.js +46 -23
  18. package/dist/charts/ChartPrimitives.d.ts +230 -0
  19. package/dist/charts/ChartPrimitives.js +305 -0
  20. package/dist/charts/ChartTooltip.d.ts +25 -4
  21. package/dist/charts/ChartTooltip.js +55 -49
  22. package/dist/charts/LineChart.d.ts +42 -20
  23. package/dist/charts/LineChart.js +175 -241
  24. package/dist/charts/PieChart.d.ts +48 -32
  25. package/dist/charts/PieChart.js +180 -170
  26. package/dist/charts/barChartGeometry.d.ts +120 -0
  27. package/dist/charts/barChartGeometry.js +210 -0
  28. package/dist/charts/barChartLegend.d.ts +25 -0
  29. package/dist/charts/barChartLegend.js +23 -0
  30. package/dist/charts/chartFormat.d.ts +27 -0
  31. package/dist/charts/chartFormat.js +71 -0
  32. package/dist/charts/chartScales.d.ts +120 -0
  33. package/dist/charts/chartScales.js +165 -0
  34. package/dist/charts/chartTheme.d.ts +18 -0
  35. package/dist/charts/chartTheme.js +26 -0
  36. package/dist/charts/constants.d.ts +241 -18
  37. package/dist/charts/constants.js +261 -32
  38. package/dist/charts/lineChartGeometry.d.ts +92 -0
  39. package/dist/charts/lineChartGeometry.js +134 -0
  40. package/dist/charts/pieChartGeometry.d.ts +60 -0
  41. package/dist/charts/pieChartGeometry.js +79 -0
  42. package/dist/charts/types.d.ts +428 -54
  43. package/dist/charts/types.js +155 -0
  44. package/dist/charts/useCartesianChartLayout.d.ts +70 -0
  45. package/dist/charts/useCartesianChartLayout.js +56 -0
  46. package/dist/charts/useChartDimensions.d.ts +47 -0
  47. package/dist/charts/useChartDimensions.js +63 -0
  48. package/dist/charts/useChartFormatters.d.ts +19 -0
  49. package/dist/charts/useChartFormatters.js +20 -0
  50. package/dist/charts/useChartInteraction.d.ts +76 -0
  51. package/dist/charts/useChartInteraction.js +126 -0
  52. package/dist/charts/useChartTooltipPosition.d.ts +53 -0
  53. package/dist/charts/useChartTooltipPosition.js +39 -0
  54. package/dist/charts/useSeriesColorResolver.d.ts +37 -0
  55. package/dist/charts/useSeriesColorResolver.js +27 -0
  56. package/dist/hooks/useElementClientSize.d.ts +20 -0
  57. package/dist/hooks/useElementClientSize.js +43 -0
  58. package/dist/inputs/CheckboxInput.d.ts +7 -2
  59. package/dist/inputs/CheckboxInput.js +30 -14
  60. package/dist/inputs/Input.d.ts +1 -1
  61. package/dist/inputs/Input.js +6 -2
  62. package/dist/inputs/MultiSelectInput.js +1 -1
  63. package/dist/inputs/RadioInput.js +7 -2
  64. package/dist/styles.css +69 -74
  65. package/dist/table/InfiniteSpreadsheet.d.ts +6 -0
  66. package/dist/table/InfiniteSpreadsheet.js +235 -0
  67. package/dist/table/InfiniteTable.d.ts +7 -88
  68. package/dist/table/InfiniteTable.js +366 -577
  69. package/dist/{spreadsheet → table}/SpreadsheetCell.d.ts +6 -4
  70. package/dist/table/SpreadsheetCell.js +71 -0
  71. package/dist/{spreadsheet → table}/SpreadsheetCellEditor.js +27 -21
  72. package/dist/table/SpreadsheetHeaderCell.d.ts +23 -0
  73. package/dist/table/SpreadsheetHeaderCell.js +91 -0
  74. package/dist/table/SpreadsheetMenuItem.d.ts +14 -0
  75. package/dist/table/SpreadsheetMenuItem.js +33 -0
  76. package/dist/table/SpreadsheetPrimitives.d.ts +172 -0
  77. package/dist/table/SpreadsheetPrimitives.js +105 -0
  78. package/dist/table/SpreadsheetRow.d.ts +33 -0
  79. package/dist/table/SpreadsheetRow.js +73 -0
  80. package/dist/{spreadsheet → table}/SpreadsheetRowActionCell.d.ts +5 -7
  81. package/dist/table/SpreadsheetRowActionCell.js +51 -0
  82. package/dist/table/TableExpandCell.d.ts +11 -0
  83. package/dist/table/TableExpandCell.js +24 -0
  84. package/dist/table/TableExpandedRow.d.ts +16 -0
  85. package/dist/table/TableExpandedRow.js +77 -0
  86. package/dist/table/TableHeaderCellContent.d.ts +30 -0
  87. package/dist/table/TableHeaderCellContent.js +48 -0
  88. package/dist/table/TablePrimitives.d.ts +307 -0
  89. package/dist/table/TablePrimitives.js +298 -0
  90. package/dist/table/TableSelectCell.d.ts +18 -0
  91. package/dist/table/TableSelectCell.js +26 -0
  92. package/dist/table/TableStatusRow.d.ts +18 -0
  93. package/dist/table/TableStatusRow.js +50 -0
  94. package/dist/table/VirtualizedInfiniteTable.d.ts +11 -27
  95. package/dist/table/VirtualizedInfiniteTable.js +182 -317
  96. package/dist/table/types.d.ts +249 -0
  97. package/dist/table/types.js +51 -0
  98. package/dist/table/useInfiniteScrollSentinel.d.ts +24 -0
  99. package/dist/table/useInfiniteScrollSentinel.js +53 -0
  100. package/dist/{spreadsheet/hooks → table}/useSpreadsheetEditing.d.ts +1 -1
  101. package/dist/{spreadsheet/hooks → table}/useSpreadsheetEditing.js +1 -1
  102. package/dist/table/useTableColumnLayout.d.ts +28 -0
  103. package/dist/table/useTableColumnLayout.js +63 -0
  104. package/dist/table/useTableColumnResize.d.ts +38 -0
  105. package/dist/table/useTableColumnResize.js +155 -0
  106. package/dist/table/useTableKeyboardNavigation.d.ts +25 -0
  107. package/dist/table/useTableKeyboardNavigation.js +83 -0
  108. package/dist/table/useTableRowExpansion.d.ts +24 -0
  109. package/dist/table/useTableRowExpansion.js +62 -0
  110. package/dist/table/useTableRowSelection.d.ts +27 -0
  111. package/dist/table/useTableRowSelection.js +94 -0
  112. package/dist/table/utils.d.ts +50 -0
  113. package/dist/table/utils.js +78 -0
  114. package/dist/text/MarkdownText.js +45 -27
  115. package/dist/theme/variants/dark.js +1 -1
  116. package/dist/widget/Widget.d.ts +2 -0
  117. package/dist/widget/Widget.js +14 -7
  118. package/package.json +1 -5
  119. package/dist/assets/components/enrichment/PerplexityIcon.d.ts +0 -3
  120. package/dist/assets/components/enrichment/PerplexityIcon.js +0 -35
  121. package/dist/assets/components/enrichment/TavilyIcon.d.ts +0 -3
  122. package/dist/assets/components/enrichment/TavilyIcon.js +0 -15
  123. package/dist/assets/components/onboarding/TenantSetupDark.d.ts +0 -3
  124. package/dist/assets/components/onboarding/TenantSetupDark.js +0 -498
  125. package/dist/assets/components/onboarding/TenantSetupLight.d.ts +0 -3
  126. package/dist/assets/components/onboarding/TenantSetupLight.js +0 -482
  127. package/dist/assets/components/onboarding/UserSetupDark.d.ts +0 -3
  128. package/dist/assets/components/onboarding/UserSetupDark.js +0 -1086
  129. package/dist/assets/components/onboarding/UserSetupLight.d.ts +0 -3
  130. package/dist/assets/components/onboarding/UserSetupLight.js +0 -1024
  131. package/dist/assets/components/onboarding/WorkspaceSetupBuildDark.d.ts +0 -3
  132. package/dist/assets/components/onboarding/WorkspaceSetupBuildDark.js +0 -466
  133. package/dist/assets/components/onboarding/WorkspaceSetupBuildLight.d.ts +0 -3
  134. package/dist/assets/components/onboarding/WorkspaceSetupBuildLight.js +0 -460
  135. package/dist/assets/components/onboarding/WorkspaceSetupConnectDark.d.ts +0 -3
  136. package/dist/assets/components/onboarding/WorkspaceSetupConnectDark.js +0 -336
  137. package/dist/assets/components/onboarding/WorkspaceSetupConnectLight.d.ts +0 -3
  138. package/dist/assets/components/onboarding/WorkspaceSetupConnectLight.js +0 -336
  139. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateDark.d.ts +0 -3
  140. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateDark.js +0 -153
  141. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateLight.d.ts +0 -3
  142. package/dist/assets/components/onboarding/WorkspaceSetupIntegrateLight.js +0 -153
  143. package/dist/assets/components/projects/MappingMethodAutoIntrospectDark.d.ts +0 -3
  144. package/dist/assets/components/projects/MappingMethodAutoIntrospectDark.js +0 -117
  145. package/dist/assets/components/projects/MappingMethodAutoIntrospectLight.d.ts +0 -3
  146. package/dist/assets/components/projects/MappingMethodAutoIntrospectLight.js +0 -117
  147. package/dist/assets/components/projects/MappingMethodBlankDark.d.ts +0 -3
  148. package/dist/assets/components/projects/MappingMethodBlankDark.js +0 -150
  149. package/dist/assets/components/projects/MappingMethodBlankDarkHovered.d.ts +0 -3
  150. package/dist/assets/components/projects/MappingMethodBlankDarkHovered.js +0 -150
  151. package/dist/assets/components/projects/MappingMethodBlankLight.d.ts +0 -3
  152. package/dist/assets/components/projects/MappingMethodBlankLight.js +0 -150
  153. package/dist/assets/components/projects/MappingMethodBlankLightHovered.d.ts +0 -3
  154. package/dist/assets/components/projects/MappingMethodBlankLightHovered.js +0 -150
  155. package/dist/assets/components/projects/MappingMethodJsonDark.d.ts +0 -3
  156. package/dist/assets/components/projects/MappingMethodJsonDark.js +0 -90
  157. package/dist/assets/components/projects/MappingMethodJsonDarkHovered.d.ts +0 -3
  158. package/dist/assets/components/projects/MappingMethodJsonDarkHovered.js +0 -90
  159. package/dist/assets/components/projects/MappingMethodJsonLight.d.ts +0 -3
  160. package/dist/assets/components/projects/MappingMethodJsonLight.js +0 -90
  161. package/dist/assets/components/projects/MappingMethodJsonLightHovered.d.ts +0 -3
  162. package/dist/assets/components/projects/MappingMethodJsonLightHovered.js +0 -90
  163. package/dist/assets/components/projects/ProjectsEmptyStateDark.d.ts +0 -3
  164. package/dist/assets/components/projects/ProjectsEmptyStateDark.js +0 -454
  165. package/dist/assets/components/projects/ProjectsEmptyStateLight.d.ts +0 -3
  166. package/dist/assets/components/projects/ProjectsEmptyStateLight.js +0 -456
  167. package/dist/assets/components/root/CreateProjectActionCardDark.d.ts +0 -3
  168. package/dist/assets/components/root/CreateProjectActionCardDark.js +0 -1796
  169. package/dist/assets/components/root/CreateProjectActionCardDarkHovered.d.ts +0 -3
  170. package/dist/assets/components/root/CreateProjectActionCardDarkHovered.js +0 -1796
  171. package/dist/assets/components/root/CreateProjectActionCardLight.d.ts +0 -3
  172. package/dist/assets/components/root/CreateProjectActionCardLight.js +0 -1786
  173. package/dist/assets/components/root/CreateProjectActionCardLightHovered.d.ts +0 -3
  174. package/dist/assets/components/root/CreateProjectActionCardLightHovered.js +0 -1786
  175. package/dist/assets/components/root/CreateSourceActionCardDark.d.ts +0 -3
  176. package/dist/assets/components/root/CreateSourceActionCardDark.js +0 -879
  177. package/dist/assets/components/root/CreateSourceActionCardDarkHovered.d.ts +0 -3
  178. package/dist/assets/components/root/CreateSourceActionCardDarkHovered.js +0 -879
  179. package/dist/assets/components/root/CreateSourceActionCardLight.d.ts +0 -3
  180. package/dist/assets/components/root/CreateSourceActionCardLight.js +0 -889
  181. package/dist/assets/components/root/CreateSourceActionCardLightHovered.d.ts +0 -3
  182. package/dist/assets/components/root/CreateSourceActionCardLightHovered.js +0 -889
  183. package/dist/assets/components/sources/AttioIcon.d.ts +0 -3
  184. package/dist/assets/components/sources/AttioIcon.js +0 -11
  185. package/dist/assets/components/sources/BigquerySourceIcon.d.ts +0 -3
  186. package/dist/assets/components/sources/BigquerySourceIcon.js +0 -39
  187. package/dist/assets/components/sources/BrowserbaseSourceIcon.d.ts +0 -3
  188. package/dist/assets/components/sources/BrowserbaseSourceIcon.js +0 -35
  189. package/dist/assets/components/sources/ClickhouseLogoSourceIconDark.d.ts +0 -3
  190. package/dist/assets/components/sources/ClickhouseLogoSourceIconDark.js +0 -13
  191. package/dist/assets/components/sources/ClickhouseLogoSourceIconLight.d.ts +0 -3
  192. package/dist/assets/components/sources/ClickhouseLogoSourceIconLight.js +0 -13
  193. package/dist/assets/components/sources/ConfluenceSourceIcon.d.ts +0 -3
  194. package/dist/assets/components/sources/ConfluenceSourceIcon.js +0 -30
  195. package/dist/assets/components/sources/GithubSourceIcon.d.ts +0 -3
  196. package/dist/assets/components/sources/GithubSourceIcon.js +0 -27
  197. package/dist/assets/components/sources/GoogleDriveIcon.d.ts +0 -3
  198. package/dist/assets/components/sources/GoogleDriveIcon.js +0 -45
  199. package/dist/assets/components/sources/HubspotSourceIcon.d.ts +0 -3
  200. package/dist/assets/components/sources/HubspotSourceIcon.js +0 -14
  201. package/dist/assets/components/sources/JiraSourceIcon.d.ts +0 -3
  202. package/dist/assets/components/sources/JiraSourceIcon.js +0 -54
  203. package/dist/assets/components/sources/LinearSourceIcon.d.ts +0 -3
  204. package/dist/assets/components/sources/LinearSourceIcon.js +0 -14
  205. package/dist/assets/components/sources/MysqlLogoSourceIconDark.d.ts +0 -3
  206. package/dist/assets/components/sources/MysqlLogoSourceIconDark.js +0 -17
  207. package/dist/assets/components/sources/NetsuiteSourceIcon.d.ts +0 -3
  208. package/dist/assets/components/sources/NetsuiteSourceIcon.js +0 -32
  209. package/dist/assets/components/sources/NotionIcon.d.ts +0 -3
  210. package/dist/assets/components/sources/NotionIcon.js +0 -20
  211. package/dist/assets/components/sources/PostgresqlIcon.d.ts +0 -3
  212. package/dist/assets/components/sources/PostgresqlIcon.js +0 -61
  213. package/dist/assets/components/sources/S3Icon.d.ts +0 -3
  214. package/dist/assets/components/sources/S3Icon.js +0 -76
  215. package/dist/assets/components/sources/SalesforceSourceIcon.d.ts +0 -3
  216. package/dist/assets/components/sources/SalesforceSourceIcon.js +0 -23
  217. package/dist/assets/components/sources/SlackIcon.d.ts +0 -3
  218. package/dist/assets/components/sources/SlackIcon.js +0 -32
  219. package/dist/assets/components/sources/SnowflakeLogoSourceIconDark.d.ts +0 -3
  220. package/dist/assets/components/sources/SnowflakeLogoSourceIconDark.js +0 -14
  221. package/dist/assets/components/sources/SnowflakeLogoSourceIconLight.d.ts +0 -3
  222. package/dist/assets/components/sources/SnowflakeLogoSourceIconLight.js +0 -14
  223. package/dist/assets/components/sources/WikipediaSourceIcon.d.ts +0 -3
  224. package/dist/assets/components/sources/WikipediaSourceIcon.js +0 -1490
  225. package/dist/avatar/AvatarEmpty.d.ts +0 -7
  226. package/dist/avatar/AvatarEmpty.js +0 -99
  227. package/dist/avatar/types.d.ts +0 -5
  228. package/dist/avatar/types.js +0 -9
  229. package/dist/charts/utils.d.ts +0 -29
  230. package/dist/charts/utils.js +0 -62
  231. package/dist/icons/BackIcon.d.ts +0 -3
  232. package/dist/icons/BackIcon.js +0 -13
  233. package/dist/icons/CloseIcon.d.ts +0 -3
  234. package/dist/icons/CloseIcon.js +0 -13
  235. package/dist/icons/CreateIcon.d.ts +0 -3
  236. package/dist/icons/CreateIcon.js +0 -13
  237. package/dist/icons/ForwardIcon.d.ts +0 -3
  238. package/dist/icons/ForwardIcon.js +0 -13
  239. package/dist/icons/HelpIcon.d.ts +0 -3
  240. package/dist/icons/HelpIcon.js +0 -14
  241. package/dist/icons/ProjectsIcon.d.ts +0 -3
  242. package/dist/icons/ProjectsIcon.js +0 -12
  243. package/dist/icons/SearchIcon.d.ts +0 -3
  244. package/dist/icons/SearchIcon.js +0 -12
  245. package/dist/icons/SourcesIcon.d.ts +0 -3
  246. package/dist/icons/SourcesIcon.js +0 -12
  247. package/dist/icons/TextIcon.d.ts +0 -4
  248. package/dist/icons/TextIcon.js +0 -22
  249. package/dist/icons/WebScrapeIcon.d.ts +0 -4
  250. package/dist/icons/WebScrapeIcon.js +0 -22
  251. package/dist/icons/WebhookIcon.d.ts +0 -4
  252. package/dist/icons/WebhookIcon.js +0 -22
  253. package/dist/icons/sources/AttioLogomark.d.ts +0 -4
  254. package/dist/icons/sources/AttioLogomark.js +0 -8
  255. package/dist/icons/sources/BrowserbaseLogomark.d.ts +0 -4
  256. package/dist/icons/sources/BrowserbaseLogomark.js +0 -8
  257. package/dist/icons/sources/ClickhouseLogomark.d.ts +0 -4
  258. package/dist/icons/sources/ClickhouseLogomark.js +0 -16
  259. package/dist/icons/sources/ConfluenceLogomark.d.ts +0 -4
  260. package/dist/icons/sources/ConfluenceLogomark.js +0 -8
  261. package/dist/icons/sources/GithubLogomark.d.ts +0 -4
  262. package/dist/icons/sources/GithubLogomark.js +0 -8
  263. package/dist/icons/sources/GoogleBigqueryLogomark.d.ts +0 -4
  264. package/dist/icons/sources/GoogleBigqueryLogomark.js +0 -8
  265. package/dist/icons/sources/GoogleDriveLogomark.d.ts +0 -4
  266. package/dist/icons/sources/GoogleDriveLogomark.js +0 -8
  267. package/dist/icons/sources/HubspotLogomark.d.ts +0 -4
  268. package/dist/icons/sources/HubspotLogomark.js +0 -8
  269. package/dist/icons/sources/JiraLogomark.d.ts +0 -4
  270. package/dist/icons/sources/JiraLogomark.js +0 -8
  271. package/dist/icons/sources/LinearLogomark.d.ts +0 -4
  272. package/dist/icons/sources/LinearLogomark.js +0 -8
  273. package/dist/icons/sources/MySQLLogomark.d.ts +0 -4
  274. package/dist/icons/sources/MySQLLogomark.js +0 -8
  275. package/dist/icons/sources/NetsuiteLogomark.d.ts +0 -4
  276. package/dist/icons/sources/NetsuiteLogomark.js +0 -8
  277. package/dist/icons/sources/NotionLogomark.d.ts +0 -4
  278. package/dist/icons/sources/NotionLogomark.js +0 -8
  279. package/dist/icons/sources/PostgresLogomark.d.ts +0 -4
  280. package/dist/icons/sources/PostgresLogomark.js +0 -8
  281. package/dist/icons/sources/S3Logomark.d.ts +0 -4
  282. package/dist/icons/sources/S3Logomark.js +0 -8
  283. package/dist/icons/sources/SalesforceLogomark.d.ts +0 -4
  284. package/dist/icons/sources/SalesforceLogomark.js +0 -8
  285. package/dist/icons/sources/SlackLogoIconmark.d.ts +0 -4
  286. package/dist/icons/sources/SlackLogoIconmark.js +0 -8
  287. package/dist/icons/sources/SnowflakeLogomark.d.ts +0 -4
  288. package/dist/icons/sources/SnowflakeLogomark.js +0 -16
  289. package/dist/icons/sources/WikipediaLogomark.d.ts +0 -4
  290. package/dist/icons/sources/WikipediaLogomark.js +0 -8
  291. package/dist/spreadsheet/InfiniteSpreadsheet.d.ts +0 -3
  292. package/dist/spreadsheet/InfiniteSpreadsheet.js +0 -265
  293. package/dist/spreadsheet/SpreadsheetAddColumnButton.d.ts +0 -6
  294. package/dist/spreadsheet/SpreadsheetAddColumnButton.js +0 -32
  295. package/dist/spreadsheet/SpreadsheetCell.js +0 -115
  296. package/dist/spreadsheet/SpreadsheetHeaderCell.d.ts +0 -18
  297. package/dist/spreadsheet/SpreadsheetHeaderCell.js +0 -141
  298. package/dist/spreadsheet/SpreadsheetRow.d.ts +0 -21
  299. package/dist/spreadsheet/SpreadsheetRow.js +0 -68
  300. package/dist/spreadsheet/SpreadsheetRowActionCell.js +0 -78
  301. package/dist/spreadsheet/hooks/useColumnResize.d.ts +0 -6
  302. package/dist/spreadsheet/hooks/useColumnResize.js +0 -46
  303. package/dist/spreadsheet/types.d.ts +0 -92
  304. package/dist/spreadsheet/types.js +0 -21
  305. /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>>;