@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.
- package/README.md +2 -0
- package/dist/avatar/Avatar.d.ts +2 -1
- package/dist/avatar/Avatar.js +103 -14
- package/dist/buttons/Button.d.ts +6 -1
- package/dist/buttons/Button.js +8 -4
- package/dist/charts/BarChart.d.ts +30 -20
- package/dist/charts/BarChart.js +216 -250
- package/dist/charts/ChartAxis.d.ts +47 -22
- package/dist/charts/ChartAxis.js +81 -60
- package/dist/charts/ChartEmptyState.d.ts +17 -0
- package/dist/charts/ChartEmptyState.js +29 -0
- package/dist/charts/ChartFrame.d.ts +82 -0
- package/dist/charts/ChartFrame.js +86 -0
- package/dist/charts/ChartLegend.d.ts +27 -4
- package/dist/charts/ChartLegend.js +46 -23
- package/dist/charts/ChartPrimitives.d.ts +195 -0
- package/dist/charts/ChartPrimitives.js +268 -0
- package/dist/charts/ChartTooltip.d.ts +27 -6
- package/dist/charts/ChartTooltip.js +56 -50
- package/dist/charts/LineChart.d.ts +42 -20
- package/dist/charts/LineChart.js +186 -237
- package/dist/charts/PieChart.d.ts +48 -32
- package/dist/charts/PieChart.js +159 -171
- package/dist/charts/barChartGeometry.d.ts +87 -0
- package/dist/charts/barChartGeometry.js +218 -0
- package/dist/charts/chartFormat.d.ts +19 -0
- package/dist/charts/chartFormat.js +59 -0
- package/dist/charts/chartScales.d.ts +84 -0
- package/dist/charts/chartScales.js +111 -0
- package/dist/charts/chartTheme.d.ts +18 -0
- package/dist/charts/chartTheme.js +26 -0
- package/dist/charts/constants.d.ts +225 -18
- package/dist/charts/constants.js +240 -32
- package/dist/charts/lineChartGeometry.d.ts +54 -0
- package/dist/charts/lineChartGeometry.js +143 -0
- package/dist/charts/pieChartGeometry.d.ts +48 -0
- package/dist/charts/pieChartGeometry.js +89 -0
- package/dist/charts/types.d.ts +522 -54
- package/dist/charts/types.js +136 -0
- package/dist/charts/useChartDimensions.d.ts +40 -0
- package/dist/charts/useChartDimensions.js +53 -0
- package/dist/charts/useChartFormatters.d.ts +19 -0
- package/dist/charts/useChartFormatters.js +20 -0
- package/dist/charts/useChartInteraction.d.ts +71 -0
- package/dist/charts/useChartInteraction.js +130 -0
- package/dist/charts/useChartTooltipPosition.d.ts +53 -0
- package/dist/charts/useChartTooltipPosition.js +39 -0
- package/dist/hooks/useElementClientSize.d.ts +20 -0
- package/dist/hooks/useElementClientSize.js +43 -0
- package/dist/inputs/CheckboxInput.d.ts +7 -2
- package/dist/inputs/CheckboxInput.js +30 -14
- package/dist/inputs/Input.d.ts +5 -2
- package/dist/inputs/Input.js +20 -17
- package/dist/inputs/MultiSelectInput.js +1 -1
- package/dist/inputs/RadioInput.js +7 -2
- package/dist/styles.css +68 -75
- package/dist/table/InfiniteSpreadsheet.d.ts +6 -0
- package/dist/table/InfiniteSpreadsheet.js +235 -0
- package/dist/table/InfiniteTable.d.ts +7 -88
- package/dist/table/InfiniteTable.js +366 -577
- package/dist/{spreadsheet → table}/SpreadsheetCell.d.ts +6 -4
- package/dist/table/SpreadsheetCell.js +71 -0
- package/dist/{spreadsheet → table}/SpreadsheetCellEditor.js +27 -21
- package/dist/table/SpreadsheetHeaderCell.d.ts +23 -0
- package/dist/table/SpreadsheetHeaderCell.js +91 -0
- package/dist/table/SpreadsheetMenuItem.d.ts +14 -0
- package/dist/table/SpreadsheetMenuItem.js +33 -0
- package/dist/table/SpreadsheetPrimitives.d.ts +172 -0
- package/dist/table/SpreadsheetPrimitives.js +105 -0
- package/dist/table/SpreadsheetRow.d.ts +33 -0
- package/dist/table/SpreadsheetRow.js +73 -0
- package/dist/{spreadsheet → table}/SpreadsheetRowActionCell.d.ts +5 -7
- package/dist/table/SpreadsheetRowActionCell.js +51 -0
- package/dist/table/TableExpandCell.d.ts +11 -0
- package/dist/table/TableExpandCell.js +24 -0
- package/dist/table/TableExpandedRow.d.ts +16 -0
- package/dist/table/TableExpandedRow.js +77 -0
- package/dist/table/TableHeaderCellContent.d.ts +30 -0
- package/dist/table/TableHeaderCellContent.js +48 -0
- package/dist/table/TablePrimitives.d.ts +307 -0
- package/dist/table/TablePrimitives.js +298 -0
- package/dist/table/TableSelectCell.d.ts +18 -0
- package/dist/table/TableSelectCell.js +26 -0
- package/dist/table/TableStatusRow.d.ts +18 -0
- package/dist/table/TableStatusRow.js +50 -0
- package/dist/table/VirtualizedInfiniteTable.d.ts +11 -27
- package/dist/table/VirtualizedInfiniteTable.js +182 -317
- package/dist/table/types.d.ts +249 -0
- package/dist/table/types.js +51 -0
- package/dist/table/useInfiniteScrollSentinel.d.ts +24 -0
- package/dist/table/useInfiniteScrollSentinel.js +53 -0
- package/dist/{spreadsheet/hooks → table}/useSpreadsheetEditing.d.ts +1 -1
- package/dist/{spreadsheet/hooks → table}/useSpreadsheetEditing.js +1 -1
- package/dist/table/useTableColumnLayout.d.ts +28 -0
- package/dist/table/useTableColumnLayout.js +63 -0
- package/dist/table/useTableColumnResize.d.ts +38 -0
- package/dist/table/useTableColumnResize.js +155 -0
- package/dist/table/useTableKeyboardNavigation.d.ts +25 -0
- package/dist/table/useTableKeyboardNavigation.js +83 -0
- package/dist/table/useTableRowExpansion.d.ts +24 -0
- package/dist/table/useTableRowExpansion.js +62 -0
- package/dist/table/useTableRowSelection.d.ts +27 -0
- package/dist/table/useTableRowSelection.js +94 -0
- package/dist/table/utils.d.ts +50 -0
- package/dist/table/utils.js +78 -0
- package/dist/text/MarkdownText.js +45 -27
- package/dist/theme/variants/dark.js +1 -1
- package/dist/widget/Widget.d.ts +2 -0
- package/dist/widget/Widget.js +14 -7
- package/package.json +1 -5
- package/dist/assets/components/enrichment/PerplexityIcon.d.ts +0 -3
- package/dist/assets/components/enrichment/PerplexityIcon.js +0 -35
- package/dist/assets/components/enrichment/TavilyIcon.d.ts +0 -3
- package/dist/assets/components/enrichment/TavilyIcon.js +0 -15
- package/dist/assets/components/onboarding/TenantSetupDark.d.ts +0 -3
- package/dist/assets/components/onboarding/TenantSetupDark.js +0 -498
- package/dist/assets/components/onboarding/TenantSetupLight.d.ts +0 -3
- package/dist/assets/components/onboarding/TenantSetupLight.js +0 -482
- package/dist/assets/components/onboarding/UserSetupDark.d.ts +0 -3
- package/dist/assets/components/onboarding/UserSetupDark.js +0 -1086
- package/dist/assets/components/onboarding/UserSetupLight.d.ts +0 -3
- package/dist/assets/components/onboarding/UserSetupLight.js +0 -1024
- package/dist/assets/components/onboarding/WorkspaceSetupBuildDark.d.ts +0 -3
- package/dist/assets/components/onboarding/WorkspaceSetupBuildDark.js +0 -466
- package/dist/assets/components/onboarding/WorkspaceSetupBuildLight.d.ts +0 -3
- package/dist/assets/components/onboarding/WorkspaceSetupBuildLight.js +0 -460
- package/dist/assets/components/onboarding/WorkspaceSetupConnectDark.d.ts +0 -3
- package/dist/assets/components/onboarding/WorkspaceSetupConnectDark.js +0 -336
- package/dist/assets/components/onboarding/WorkspaceSetupConnectLight.d.ts +0 -3
- package/dist/assets/components/onboarding/WorkspaceSetupConnectLight.js +0 -336
- package/dist/assets/components/onboarding/WorkspaceSetupIntegrateDark.d.ts +0 -3
- package/dist/assets/components/onboarding/WorkspaceSetupIntegrateDark.js +0 -153
- package/dist/assets/components/onboarding/WorkspaceSetupIntegrateLight.d.ts +0 -3
- package/dist/assets/components/onboarding/WorkspaceSetupIntegrateLight.js +0 -153
- package/dist/assets/components/projects/MappingMethodAutoIntrospectDark.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodAutoIntrospectDark.js +0 -117
- package/dist/assets/components/projects/MappingMethodAutoIntrospectLight.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodAutoIntrospectLight.js +0 -117
- package/dist/assets/components/projects/MappingMethodBlankDark.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodBlankDark.js +0 -150
- package/dist/assets/components/projects/MappingMethodBlankDarkHovered.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodBlankDarkHovered.js +0 -150
- package/dist/assets/components/projects/MappingMethodBlankLight.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodBlankLight.js +0 -150
- package/dist/assets/components/projects/MappingMethodBlankLightHovered.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodBlankLightHovered.js +0 -150
- package/dist/assets/components/projects/MappingMethodJsonDark.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodJsonDark.js +0 -90
- package/dist/assets/components/projects/MappingMethodJsonDarkHovered.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodJsonDarkHovered.js +0 -90
- package/dist/assets/components/projects/MappingMethodJsonLight.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodJsonLight.js +0 -90
- package/dist/assets/components/projects/MappingMethodJsonLightHovered.d.ts +0 -3
- package/dist/assets/components/projects/MappingMethodJsonLightHovered.js +0 -90
- package/dist/assets/components/projects/ProjectsEmptyStateDark.d.ts +0 -3
- package/dist/assets/components/projects/ProjectsEmptyStateDark.js +0 -454
- package/dist/assets/components/projects/ProjectsEmptyStateLight.d.ts +0 -3
- package/dist/assets/components/projects/ProjectsEmptyStateLight.js +0 -456
- package/dist/assets/components/root/CreateProjectActionCardDark.d.ts +0 -3
- package/dist/assets/components/root/CreateProjectActionCardDark.js +0 -1796
- package/dist/assets/components/root/CreateProjectActionCardDarkHovered.d.ts +0 -3
- package/dist/assets/components/root/CreateProjectActionCardDarkHovered.js +0 -1796
- package/dist/assets/components/root/CreateProjectActionCardLight.d.ts +0 -3
- package/dist/assets/components/root/CreateProjectActionCardLight.js +0 -1786
- package/dist/assets/components/root/CreateProjectActionCardLightHovered.d.ts +0 -3
- package/dist/assets/components/root/CreateProjectActionCardLightHovered.js +0 -1786
- package/dist/assets/components/root/CreateSourceActionCardDark.d.ts +0 -3
- package/dist/assets/components/root/CreateSourceActionCardDark.js +0 -879
- package/dist/assets/components/root/CreateSourceActionCardDarkHovered.d.ts +0 -3
- package/dist/assets/components/root/CreateSourceActionCardDarkHovered.js +0 -879
- package/dist/assets/components/root/CreateSourceActionCardLight.d.ts +0 -3
- package/dist/assets/components/root/CreateSourceActionCardLight.js +0 -889
- package/dist/assets/components/root/CreateSourceActionCardLightHovered.d.ts +0 -3
- package/dist/assets/components/root/CreateSourceActionCardLightHovered.js +0 -889
- package/dist/assets/components/sources/AttioIcon.d.ts +0 -3
- package/dist/assets/components/sources/AttioIcon.js +0 -11
- package/dist/assets/components/sources/BigquerySourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/BigquerySourceIcon.js +0 -39
- package/dist/assets/components/sources/BrowserbaseSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/BrowserbaseSourceIcon.js +0 -35
- package/dist/assets/components/sources/ClickhouseLogoSourceIconDark.d.ts +0 -3
- package/dist/assets/components/sources/ClickhouseLogoSourceIconDark.js +0 -13
- package/dist/assets/components/sources/ClickhouseLogoSourceIconLight.d.ts +0 -3
- package/dist/assets/components/sources/ClickhouseLogoSourceIconLight.js +0 -13
- package/dist/assets/components/sources/ConfluenceSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/ConfluenceSourceIcon.js +0 -30
- package/dist/assets/components/sources/GithubSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/GithubSourceIcon.js +0 -27
- package/dist/assets/components/sources/GoogleDriveIcon.d.ts +0 -3
- package/dist/assets/components/sources/GoogleDriveIcon.js +0 -45
- package/dist/assets/components/sources/HubspotSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/HubspotSourceIcon.js +0 -14
- package/dist/assets/components/sources/JiraSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/JiraSourceIcon.js +0 -54
- package/dist/assets/components/sources/LinearSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/LinearSourceIcon.js +0 -14
- package/dist/assets/components/sources/MysqlLogoSourceIconDark.d.ts +0 -3
- package/dist/assets/components/sources/MysqlLogoSourceIconDark.js +0 -17
- package/dist/assets/components/sources/NetsuiteSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/NetsuiteSourceIcon.js +0 -32
- package/dist/assets/components/sources/NotionIcon.d.ts +0 -3
- package/dist/assets/components/sources/NotionIcon.js +0 -20
- package/dist/assets/components/sources/PostgresqlIcon.d.ts +0 -3
- package/dist/assets/components/sources/PostgresqlIcon.js +0 -61
- package/dist/assets/components/sources/S3Icon.d.ts +0 -3
- package/dist/assets/components/sources/S3Icon.js +0 -76
- package/dist/assets/components/sources/SalesforceSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/SalesforceSourceIcon.js +0 -23
- package/dist/assets/components/sources/SlackIcon.d.ts +0 -3
- package/dist/assets/components/sources/SlackIcon.js +0 -32
- package/dist/assets/components/sources/SnowflakeLogoSourceIconDark.d.ts +0 -3
- package/dist/assets/components/sources/SnowflakeLogoSourceIconDark.js +0 -14
- package/dist/assets/components/sources/SnowflakeLogoSourceIconLight.d.ts +0 -3
- package/dist/assets/components/sources/SnowflakeLogoSourceIconLight.js +0 -14
- package/dist/assets/components/sources/WikipediaSourceIcon.d.ts +0 -3
- package/dist/assets/components/sources/WikipediaSourceIcon.js +0 -1490
- package/dist/avatar/AvatarEmpty.d.ts +0 -7
- package/dist/avatar/AvatarEmpty.js +0 -99
- package/dist/avatar/types.d.ts +0 -5
- package/dist/avatar/types.js +0 -9
- package/dist/charts/utils.d.ts +0 -29
- package/dist/charts/utils.js +0 -62
- package/dist/icons/BackIcon.d.ts +0 -3
- package/dist/icons/BackIcon.js +0 -13
- package/dist/icons/CloseIcon.d.ts +0 -3
- package/dist/icons/CloseIcon.js +0 -13
- package/dist/icons/CreateIcon.d.ts +0 -3
- package/dist/icons/CreateIcon.js +0 -13
- package/dist/icons/ForwardIcon.d.ts +0 -3
- package/dist/icons/ForwardIcon.js +0 -13
- package/dist/icons/HelpIcon.d.ts +0 -3
- package/dist/icons/HelpIcon.js +0 -14
- package/dist/icons/ProjectsIcon.d.ts +0 -3
- package/dist/icons/ProjectsIcon.js +0 -12
- package/dist/icons/SearchIcon.d.ts +0 -3
- package/dist/icons/SearchIcon.js +0 -12
- package/dist/icons/SourcesIcon.d.ts +0 -3
- package/dist/icons/SourcesIcon.js +0 -12
- package/dist/icons/TextIcon.d.ts +0 -4
- package/dist/icons/TextIcon.js +0 -22
- package/dist/icons/WebScrapeIcon.d.ts +0 -4
- package/dist/icons/WebScrapeIcon.js +0 -22
- package/dist/icons/WebhookIcon.d.ts +0 -4
- package/dist/icons/WebhookIcon.js +0 -22
- package/dist/icons/sources/AttioLogomark.d.ts +0 -4
- package/dist/icons/sources/AttioLogomark.js +0 -8
- package/dist/icons/sources/BrowserbaseLogomark.d.ts +0 -4
- package/dist/icons/sources/BrowserbaseLogomark.js +0 -8
- package/dist/icons/sources/ClickhouseLogomark.d.ts +0 -4
- package/dist/icons/sources/ClickhouseLogomark.js +0 -16
- package/dist/icons/sources/ConfluenceLogomark.d.ts +0 -4
- package/dist/icons/sources/ConfluenceLogomark.js +0 -8
- package/dist/icons/sources/GithubLogomark.d.ts +0 -4
- package/dist/icons/sources/GithubLogomark.js +0 -8
- package/dist/icons/sources/GoogleBigqueryLogomark.d.ts +0 -4
- package/dist/icons/sources/GoogleBigqueryLogomark.js +0 -8
- package/dist/icons/sources/GoogleDriveLogomark.d.ts +0 -4
- package/dist/icons/sources/GoogleDriveLogomark.js +0 -8
- package/dist/icons/sources/HubspotLogomark.d.ts +0 -4
- package/dist/icons/sources/HubspotLogomark.js +0 -8
- package/dist/icons/sources/JiraLogomark.d.ts +0 -4
- package/dist/icons/sources/JiraLogomark.js +0 -8
- package/dist/icons/sources/LinearLogomark.d.ts +0 -4
- package/dist/icons/sources/LinearLogomark.js +0 -8
- package/dist/icons/sources/MySQLLogomark.d.ts +0 -4
- package/dist/icons/sources/MySQLLogomark.js +0 -8
- package/dist/icons/sources/NetsuiteLogomark.d.ts +0 -4
- package/dist/icons/sources/NetsuiteLogomark.js +0 -8
- package/dist/icons/sources/NotionLogomark.d.ts +0 -4
- package/dist/icons/sources/NotionLogomark.js +0 -8
- package/dist/icons/sources/PostgresLogomark.d.ts +0 -4
- package/dist/icons/sources/PostgresLogomark.js +0 -8
- package/dist/icons/sources/S3Logomark.d.ts +0 -4
- package/dist/icons/sources/S3Logomark.js +0 -8
- package/dist/icons/sources/SalesforceLogomark.d.ts +0 -4
- package/dist/icons/sources/SalesforceLogomark.js +0 -8
- package/dist/icons/sources/SlackLogoIconmark.d.ts +0 -4
- package/dist/icons/sources/SlackLogoIconmark.js +0 -8
- package/dist/icons/sources/SnowflakeLogomark.d.ts +0 -4
- package/dist/icons/sources/SnowflakeLogomark.js +0 -16
- package/dist/icons/sources/WikipediaLogomark.d.ts +0 -4
- package/dist/icons/sources/WikipediaLogomark.js +0 -8
- package/dist/spreadsheet/InfiniteSpreadsheet.d.ts +0 -3
- package/dist/spreadsheet/InfiniteSpreadsheet.js +0 -265
- package/dist/spreadsheet/SpreadsheetAddColumnButton.d.ts +0 -6
- package/dist/spreadsheet/SpreadsheetAddColumnButton.js +0 -32
- package/dist/spreadsheet/SpreadsheetCell.js +0 -115
- package/dist/spreadsheet/SpreadsheetHeaderCell.d.ts +0 -18
- package/dist/spreadsheet/SpreadsheetHeaderCell.js +0 -141
- package/dist/spreadsheet/SpreadsheetRow.d.ts +0 -21
- package/dist/spreadsheet/SpreadsheetRow.js +0 -68
- package/dist/spreadsheet/SpreadsheetRowActionCell.js +0 -78
- package/dist/spreadsheet/hooks/useColumnResize.d.ts +0 -6
- package/dist/spreadsheet/hooks/useColumnResize.js +0 -46
- package/dist/spreadsheet/types.d.ts +0 -92
- package/dist/spreadsheet/types.js +0 -21
- /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
|
|
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
|
-
|
|
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>>;
|