@tcn/ui-table 0.0.2 → 0.0.4
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 +12 -12
- package/dist/__stories__/aip_table.stories.js +22 -15
- package/dist/__stories__/aip_table.stories.js.map +1 -1
- package/dist/__stories__/table.stories.d.ts +1 -0
- package/dist/__stories__/table.stories.js +35 -6
- package/dist/__stories__/table.stories.js.map +1 -1
- package/dist/_components/table/table.d.ts +14 -0
- package/dist/_components/{table_body/table_body.js → table/table.js} +14 -13
- package/dist/_components/table/table.js.map +1 -0
- package/dist/_components/table/table_column.js.map +1 -0
- package/dist/_components/{table_body/table_body_presenter.d.ts → table/table_presenter.d.ts} +2 -2
- package/dist/_components/{table_body/table_body_presenter.js → table/table_presenter.js} +2 -2
- package/dist/_components/table/table_presenter.js.map +1 -0
- package/dist/_components/{table_body/table_body_presenter.test.js → table/table_presenter.test.js} +11 -11
- package/dist/_components/table/table_presenter.test.js.map +1 -0
- package/dist/_components/table_pager.d.ts +6 -0
- package/dist/_components/{table_footer.js → table_pager.js} +5 -4
- package/dist/_components/table_pager.js.map +1 -0
- package/dist/_components/table_search.d.ts +6 -0
- package/dist/_components/table_search.js +10 -0
- package/dist/_components/table_search.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/package.json +5 -3
- package/dist/_components/table_body/table_body.d.ts +0 -12
- package/dist/_components/table_body/table_body.js.map +0 -1
- package/dist/_components/table_body/table_body_presenter.js.map +0 -1
- package/dist/_components/table_body/table_body_presenter.test.js.map +0 -1
- package/dist/_components/table_body/table_column.js.map +0 -1
- package/dist/_components/table_footer.d.ts +0 -6
- package/dist/_components/table_footer.js.map +0 -1
- package/dist/_components/table_header.d.ts +0 -7
- package/dist/_components/table_header.js +0 -14
- package/dist/_components/table_header.js.map +0 -1
- /package/dist/_components/{table_body/table_body.module.css → table/table.module.css} +0 -0
- /package/dist/_components/{table_body → table}/table_column.d.ts +0 -0
- /package/dist/_components/{table_body → table}/table_column.js +0 -0
- /package/dist/_components/{table_body/table_body_presenter.test.d.ts → table/table_presenter.test.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -16,19 +16,19 @@ We have thus eliminated all of the entanglement between presentation and data ha
|
|
|
16
16
|
|
|
17
17
|
This package provides several components that can be used together or independently:
|
|
18
18
|
|
|
19
|
-
- `
|
|
20
|
-
- `TableBody`: The main table component that renders the data
|
|
19
|
+
- `Table`: The main table component that renders the data
|
|
21
20
|
- `TableColumn`: Configures how each column is displayed
|
|
22
|
-
- `
|
|
21
|
+
- `TableSearch`: Runs a global search on the given data source
|
|
22
|
+
- `TablePager`: Pagination controls for the data source
|
|
23
23
|
|
|
24
24
|
The components are designed to work independently from each other, but may consume a common `DataSource`, allowing you to:
|
|
25
25
|
- Use them together for a complete table experience
|
|
26
26
|
- Implement your own header/footer components
|
|
27
27
|
- Customize the layout and styling
|
|
28
28
|
|
|
29
|
-
In other words, if you pass the `
|
|
29
|
+
In other words, if you pass the `Table` and `TablePager` the same `DataStore` instance, the paging controls in the footer will affect the `Table`.
|
|
30
30
|
|
|
31
|
-
### `
|
|
31
|
+
### `Table`
|
|
32
32
|
|
|
33
33
|
The core component that renders the actual table (as a semantic HTML `<table>` element). It handles:
|
|
34
34
|
- Column configuration
|
|
@@ -54,7 +54,7 @@ The `DataSource` interface and implementations are found in a separate `Resource
|
|
|
54
54
|
|
|
55
55
|
## Column Configuration
|
|
56
56
|
|
|
57
|
-
The `
|
|
57
|
+
The `Table` is configured with `TableColumn` components that describe:
|
|
58
58
|
- Column position
|
|
59
59
|
- Header content
|
|
60
60
|
- Footer content
|
|
@@ -68,12 +68,12 @@ The `TableBody` is configured with `TableColumn` components that describe:
|
|
|
68
68
|
```tsx
|
|
69
69
|
const s = useStringTranslation();
|
|
70
70
|
|
|
71
|
-
<
|
|
71
|
+
<Table dataSource={personSource}>
|
|
72
72
|
<TableColumn
|
|
73
73
|
heading={s("Name")}
|
|
74
74
|
fieldName="name"
|
|
75
75
|
/>
|
|
76
|
-
</
|
|
76
|
+
</Table>
|
|
77
77
|
```
|
|
78
78
|
|
|
79
79
|
### Column Props
|
|
@@ -98,13 +98,13 @@ You can customize how cells are rendered using the `render` prop:
|
|
|
98
98
|
const d = useDateTranslation();
|
|
99
99
|
const s = useStringTranslation();
|
|
100
100
|
|
|
101
|
-
<
|
|
101
|
+
<Table dataSource={personSource}>
|
|
102
102
|
<TableColumn
|
|
103
103
|
heading={s("Birthdate")}
|
|
104
104
|
fieldName="birthdate"
|
|
105
105
|
render={(item) => d(item.birthdate)}
|
|
106
106
|
/>
|
|
107
|
-
</
|
|
107
|
+
</Table>
|
|
108
108
|
```
|
|
109
109
|
|
|
110
110
|
### Action Columns
|
|
@@ -112,7 +112,7 @@ const s = useStringTranslation();
|
|
|
112
112
|
Columns that don't represent data (like action buttons):
|
|
113
113
|
|
|
114
114
|
```tsx
|
|
115
|
-
<
|
|
115
|
+
<Table dataSource={personSource}>
|
|
116
116
|
<TableColumn
|
|
117
117
|
heading={s("Actions")}
|
|
118
118
|
render={(item) => (
|
|
@@ -122,7 +122,7 @@ Columns that don't represent data (like action buttons):
|
|
|
122
122
|
)}
|
|
123
123
|
sticky="end"
|
|
124
124
|
/>
|
|
125
|
-
</
|
|
125
|
+
</Table>
|
|
126
126
|
```
|
|
127
127
|
|
|
128
128
|
## Styling
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
|
-
import { AIPDataSource } from '@tcn
|
|
2
|
+
import { AIPDataSource } from '@tcn/resource-store';
|
|
3
3
|
import { Button } from '@tcn/ui-controls';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
4
|
+
import { HStack, Spacer, VStack } from '@tcn/ui-layout';
|
|
5
|
+
import { Panel, PanelBodyVertical, PanelFooter, PanelHeader } from '@tcn/ui-scaffold';
|
|
6
|
+
import { Table } from "../_components/table/table.js";
|
|
7
|
+
import { TableColumn } from "../_components/table/table_column.js";
|
|
8
|
+
import { TablePager } from "../_components/table_pager.js";
|
|
9
|
+
import { TableSearch } from "../_components/table_search.js";
|
|
9
10
|
import { useSignalValue, useSignalValueEffect } from '@tcn/state';
|
|
11
|
+
import { Title } from '@tcn/ui-typography';
|
|
10
12
|
import { useToken } from "./auth_provider.js";
|
|
11
13
|
const meta = {
|
|
12
14
|
title: 'AIP Table',
|
|
@@ -57,7 +59,7 @@ export function Basic() {
|
|
|
57
59
|
resourceUrl: resourceURL,
|
|
58
60
|
resourceName,
|
|
59
61
|
fields,
|
|
60
|
-
authToken,
|
|
62
|
+
getAuthToken: () => authToken.get(),
|
|
61
63
|
});
|
|
62
64
|
});
|
|
63
65
|
const tokenValue = useSignalValue(authToken);
|
|
@@ -66,11 +68,13 @@ export function Basic() {
|
|
|
66
68
|
}, authToken);
|
|
67
69
|
return (React.createElement(VStack, null,
|
|
68
70
|
React.createElement(HStack, { height: "auto" }, tokenValue === '' ? 'Sign in to load data' : ''),
|
|
69
|
-
React.createElement(
|
|
70
|
-
React.createElement(
|
|
71
|
-
React.createElement(
|
|
72
|
-
|
|
73
|
-
React.createElement(
|
|
71
|
+
React.createElement(Panel, null,
|
|
72
|
+
React.createElement(PanelHeader, null,
|
|
73
|
+
React.createElement(Title, null, "Organizations"),
|
|
74
|
+
React.createElement(Spacer, null),
|
|
75
|
+
React.createElement(TableSearch, { dataSource: source })),
|
|
76
|
+
React.createElement(PanelBodyVertical, null,
|
|
77
|
+
React.createElement(Table, { dataSource: source, onRowClick: i => alert(`Clicked ${i.name}`), flex: true },
|
|
74
78
|
React.createElement(TableColumn, { heading: "Name", fieldName: "name", render: (i) => i.name, width: 320, footer: "Note: not for display", sticky: "start" }),
|
|
75
79
|
React.createElement(TableColumn, { heading: "Display Name", fieldName: "display_name", width: 300, render: (i) => i.displayName }),
|
|
76
80
|
React.createElement(TableColumn, { heading: "Client SID", fieldName: "client_sid", width: 80, render: (i) => i.clientSid, canSort: true }),
|
|
@@ -80,9 +84,12 @@ export function Basic() {
|
|
|
80
84
|
React.createElement(TableColumn, { heading: "Created Time", fieldName: "create_time", width: 200, render: (i) => i.createTime.toLocaleString() }),
|
|
81
85
|
React.createElement(TableColumn, { heading: "Update Time", fieldName: "update_time", width: 200, render: (i) => (React.createElement("div", { style: { color: 'red' } }, i.updateTime.toLocaleString())) }),
|
|
82
86
|
React.createElement(TableColumn, { heading: "Actions", width: 80, render: (i) => (React.createElement("div", null,
|
|
83
|
-
React.createElement(Button, { onClick:
|
|
84
|
-
|
|
85
|
-
|
|
87
|
+
React.createElement(Button, { onClick: e => {
|
|
88
|
+
e.stopPropagation();
|
|
89
|
+
alert(`Edit ${i.name}`);
|
|
90
|
+
} }, "Edit"))), sticky: "end" }))),
|
|
91
|
+
React.createElement(PanelFooter, null,
|
|
92
|
+
React.createElement(TablePager, { dataSource: source })))));
|
|
86
93
|
}
|
|
87
94
|
export default meta;
|
|
88
95
|
//# sourceMappingURL=aip_table.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aip_table.stories.js","sourceRoot":"","sources":["../../src/__stories__/aip_table.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"aip_table.stories.js","sourceRoot":"","sources":["../../src/__stories__/aip_table.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,4 +4,5 @@ declare const meta: Meta;
|
|
|
4
4
|
export declare function Basic(): React.JSX.Element;
|
|
5
5
|
export declare function WithSort(): React.JSX.Element;
|
|
6
6
|
export declare function ComplexHeadersAndFooters(): React.JSX.Element;
|
|
7
|
+
export declare function WithTableHeaderAndTableFooter(): React.JSX.Element;
|
|
7
8
|
export default meta;
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
|
-
import { StaticDataSource, StaticNumberField, StaticStringField, } from '@tcn
|
|
2
|
+
import { StaticDataSource, StaticNumberField, StaticStringField, } from '@tcn/resource-store';
|
|
3
3
|
import { useSignalValue } from '@tcn/state';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { Spacer } from '@tcn/ui-layout';
|
|
5
|
+
import { Panel, PanelBodyVertical, PanelFooter, PanelHeader } from '@tcn/ui-scaffold';
|
|
6
|
+
import { Table } from "../_components/table/table.js";
|
|
7
|
+
import { TableColumn } from "../_components/table/table_column.js";
|
|
8
|
+
import { TablePager } from "../_components/table_pager.js";
|
|
9
|
+
import { TableSearch } from "../_components/table_search.js";
|
|
6
10
|
const meta = {
|
|
7
11
|
title: 'Table',
|
|
8
12
|
};
|
|
@@ -23,7 +27,9 @@ export function Basic() {
|
|
|
23
27
|
new StaticNumberField('age', i => i.age),
|
|
24
28
|
]);
|
|
25
29
|
});
|
|
26
|
-
return (React.createElement(
|
|
30
|
+
return (React.createElement(Table, { dataSource: source, onRowClick: item => {
|
|
31
|
+
alert(`Clicked ${item.name}`);
|
|
32
|
+
} },
|
|
27
33
|
React.createElement(TableColumn, { heading: "Name", fieldName: "name" }),
|
|
28
34
|
React.createElement(TableColumn, { heading: "Age", fieldName: "age" }),
|
|
29
35
|
React.createElement("div", null, "Other kinds of children don't render")));
|
|
@@ -36,7 +42,9 @@ export function WithSort() {
|
|
|
36
42
|
]);
|
|
37
43
|
});
|
|
38
44
|
const currentResults = useSignalValue(source.broadcasts.currentResults);
|
|
39
|
-
return (React.createElement(
|
|
45
|
+
return (React.createElement(Table, { dataSource: source, onRowClick: item => {
|
|
46
|
+
alert(`Clicked ${item.name}`);
|
|
47
|
+
} },
|
|
40
48
|
React.createElement(TableColumn, { heading: "Name", footer: "Some Names", fieldName: "name", canSort: true }),
|
|
41
49
|
React.createElement(TableColumn, { heading: "Age", footer: `Average Age: ${Math.round(currentResults.reduce((sum, i) => sum + i.age, 0) / currentResults.length)}`, fieldName: "age", canSort: true, width: 120 })));
|
|
42
50
|
}
|
|
@@ -47,7 +55,7 @@ export function ComplexHeadersAndFooters() {
|
|
|
47
55
|
new StaticNumberField('age', i => i.age),
|
|
48
56
|
]);
|
|
49
57
|
});
|
|
50
|
-
return (React.createElement(
|
|
58
|
+
return (React.createElement(Table, { dataSource: source },
|
|
51
59
|
React.createElement(TableColumn, { heading: React.createElement("div", { style: { display: 'flex', alignItems: 'center', gap: '8px' } },
|
|
52
60
|
React.createElement("span", null, "\uD83D\uDC64"),
|
|
53
61
|
React.createElement("span", null, "Name")), footer: React.createElement("div", { style: { display: 'flex', justifyContent: 'space-between' } },
|
|
@@ -59,5 +67,26 @@ export function ComplexHeadersAndFooters() {
|
|
|
59
67
|
React.createElement("span", null, "Average:"),
|
|
60
68
|
React.createElement("span", null, Math.round(items.reduce((sum, i) => sum + i.age, 0) / items.length))), fieldName: "age", render: (i) => i.age })));
|
|
61
69
|
}
|
|
70
|
+
export function WithTableHeaderAndTableFooter() {
|
|
71
|
+
const [source] = useState(() => {
|
|
72
|
+
return new StaticDataSource(items, [
|
|
73
|
+
new StaticStringField('name', i => i.name),
|
|
74
|
+
new StaticNumberField('age', i => i.age),
|
|
75
|
+
]);
|
|
76
|
+
});
|
|
77
|
+
return (React.createElement(Panel, null,
|
|
78
|
+
React.createElement(PanelHeader, null,
|
|
79
|
+
"The Table",
|
|
80
|
+
React.createElement(Spacer, null),
|
|
81
|
+
React.createElement(TableSearch, { dataSource: source })),
|
|
82
|
+
React.createElement(PanelBodyVertical, null,
|
|
83
|
+
React.createElement(Table, { dataSource: source, onRowClick: item => {
|
|
84
|
+
alert(`Clicked ${item.name}`);
|
|
85
|
+
} },
|
|
86
|
+
React.createElement(TableColumn, { heading: "Name", fieldName: "name" }),
|
|
87
|
+
React.createElement(TableColumn, { heading: "Age", fieldName: "age" }))),
|
|
88
|
+
React.createElement(PanelFooter, null,
|
|
89
|
+
React.createElement(TablePager, { dataSource: source }))));
|
|
90
|
+
}
|
|
62
91
|
export default meta;
|
|
63
92
|
//# sourceMappingURL=table.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.stories.js","sourceRoot":"","sources":["../../src/__stories__/table.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,
|
|
1
|
+
{"version":3,"file":"table.stories.js","sourceRoot":"","sources":["../../src/__stories__/table.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React, { ReactElement } from 'react';
|
|
2
|
+
import { DataSource } from '@tcn/resource-store';
|
|
3
|
+
import { TableColumnProps } from './table_column.js';
|
|
4
|
+
export type TableProps<T> = {
|
|
5
|
+
dataSource: DataSource<T>;
|
|
6
|
+
children: ReactElement<TableColumnProps<T>>[];
|
|
7
|
+
onRowClick?: (row: T, rowIndex: number) => void;
|
|
8
|
+
height?: string;
|
|
9
|
+
width?: string;
|
|
10
|
+
zIndex?: number;
|
|
11
|
+
highlightedRows?: Set<number> | null;
|
|
12
|
+
flex?: boolean;
|
|
13
|
+
};
|
|
14
|
+
export declare function Table<T>({ dataSource, children, width, height, zIndex, highlightedRows, onRowClick, flex, }: TableProps<T>): React.JSX.Element;
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import React, { isValidElement, useState, useRef } from 'react';
|
|
2
2
|
import { Status, useRunnerStatus, useSignalValue } from '@tcn/state';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { DataCell } from
|
|
6
|
-
import { FooterCell } from
|
|
7
|
-
import { HeaderCell } from
|
|
8
|
-
import styles from './
|
|
9
|
-
import { TableBodyPresenter } from './table_body_presenter.js';
|
|
3
|
+
import { Box, FlexBox } from '@tcn/ui-layout';
|
|
4
|
+
import { BodyText } from '@tcn/ui-typography';
|
|
5
|
+
import { DataCell } from "../cells/data_cell.js";
|
|
6
|
+
import { FooterCell } from "../cells/footer_cell.js";
|
|
7
|
+
import { HeaderCell } from "../cells/header_cell.js";
|
|
8
|
+
import styles from './table.module.css';
|
|
10
9
|
import { TableColumn } from './table_column.js';
|
|
10
|
+
import { TablePresenter } from './table_presenter.js';
|
|
11
11
|
// @TODO: Props for loading and error states
|
|
12
12
|
function wrapContent(content) {
|
|
13
13
|
if (typeof content === 'string') {
|
|
14
|
-
return React.createElement(
|
|
14
|
+
return React.createElement(BodyText, null, content);
|
|
15
15
|
}
|
|
16
16
|
return content;
|
|
17
17
|
}
|
|
18
|
-
export function
|
|
18
|
+
export function Table({ dataSource, children, width = '100%', height = '100%', zIndex, highlightedRows, onRowClick, flex = false, }) {
|
|
19
19
|
const rows = useSignalValue(dataSource.broadcasts.currentResults);
|
|
20
20
|
const page = useSignalValue(dataSource.broadcasts.currentPageIndex);
|
|
21
21
|
const scrollerRef = useRef(null);
|
|
22
22
|
const columns = React.Children.toArray(children).filter((child) => isValidElement(child) && child.type === TableColumn);
|
|
23
|
-
const [presenter] = useState(() => new
|
|
23
|
+
const [presenter] = useState(() => new TablePresenter({
|
|
24
24
|
dataSource,
|
|
25
25
|
columns: columns.map(column => ({
|
|
26
26
|
fieldName: column.props.fieldName,
|
|
@@ -36,7 +36,8 @@ export function TableBody({ dataSource, children, width = '100%', height = '100%
|
|
|
36
36
|
}));
|
|
37
37
|
const columnInfo = useSignalValue(presenter.broadcasts.columnInfo);
|
|
38
38
|
const itemsStatus = useRunnerStatus(dataSource.broadcasts.currentResults);
|
|
39
|
-
|
|
39
|
+
const Container = flex ? FlexBox : Box;
|
|
40
|
+
return (React.createElement(Container, { ref: scrollerRef, zIndex: zIndex, className: styles['table-body-wrapper'], style: { overflow: 'auto' } },
|
|
40
41
|
React.createElement("table", { className: styles['table-body'], style: { width, height } },
|
|
41
42
|
React.createElement("thead", null,
|
|
42
43
|
React.createElement("tr", null,
|
|
@@ -44,7 +45,7 @@ export function TableBody({ dataSource, children, width = '100%', height = '100%
|
|
|
44
45
|
React.createElement("th", { key: "fill", className: "fill" }))),
|
|
45
46
|
React.createElement("tbody", null,
|
|
46
47
|
itemsStatus === Status.SUCCESS &&
|
|
47
|
-
rows.map((item, rowIndex) => (React.createElement("tr", { key: `${page}-${rowIndex}`, "data-selected": highlightedRows?.has(rowIndex) },
|
|
48
|
+
rows.map((item, rowIndex) => (React.createElement("tr", { key: `${page}-${rowIndex}`, "data-selected": highlightedRows?.has(rowIndex), onClick: () => onRowClick?.(item, rowIndex) },
|
|
48
49
|
columnInfo.map((col, colIndex) => {
|
|
49
50
|
const fieldName = col.fieldName;
|
|
50
51
|
const render = col.render;
|
|
@@ -64,4 +65,4 @@ export function TableBody({ dataSource, children, width = '100%', height = '100%
|
|
|
64
65
|
columnInfo.map((col, colIndex) => (React.createElement(FooterCell, { key: `footer-${colIndex}`, content: wrapContent(col.footer), sticky: col.sticky, width: col.width }))),
|
|
65
66
|
React.createElement("td", { key: "footer-fill", className: "fill" }))))));
|
|
66
67
|
}
|
|
67
|
-
//# sourceMappingURL=
|
|
68
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/_components/table/table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table_column.js","sourceRoot":"","sources":["../../../src/_components/table/table_column.tsx"],"names":[],"mappings":"AAsBA,qEAAqE;AACrE,8BAA8B;AAC9B,MAAM,UAAU,WAAW,CAAI,MAA2B;IACxD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/_components/{table_body/table_body_presenter.d.ts → table/table_presenter.d.ts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactNode, RefObject } from 'react';
|
|
2
|
-
import { DataSource } from '@tcn
|
|
2
|
+
import { DataSource } from '@tcn/resource-store';
|
|
3
3
|
type SortMode = 'none' | 'asc' | 'desc';
|
|
4
4
|
export type ColumnInfo = {
|
|
5
5
|
width: number;
|
|
@@ -11,7 +11,7 @@ export type ColumnInfo = {
|
|
|
11
11
|
sticky?: 'start' | 'end';
|
|
12
12
|
fieldName?: string;
|
|
13
13
|
};
|
|
14
|
-
export declare class
|
|
14
|
+
export declare class TablePresenter {
|
|
15
15
|
private _columnInfo;
|
|
16
16
|
private _dataSource;
|
|
17
17
|
private _broadcasts;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Signal } from '@tcn/state';
|
|
2
2
|
const sortModes = ['none', 'asc', 'desc'];
|
|
3
|
-
export class
|
|
3
|
+
export class TablePresenter {
|
|
4
4
|
_columnInfo = new Signal([]);
|
|
5
5
|
_dataSource;
|
|
6
6
|
_broadcasts = {
|
|
@@ -52,4 +52,4 @@ export class TableBodyPresenter {
|
|
|
52
52
|
this.setColumnSortMode(index, nextMode);
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
-
//# sourceMappingURL=
|
|
55
|
+
//# sourceMappingURL=table_presenter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table_presenter.js","sourceRoot":"","sources":["../../../src/_components/table/table_presenter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,MAAM,EAAE,MAAM,YAAY,CAAC;AAInD,MAAM,SAAS,GAAe,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAatD,MAAM,OAAO,cAAc;IACjB,WAAW,GAAG,IAAI,MAAM,CAAe,EAAE,CAAC,CAAC;IAC3C,WAAW,CAAkB;IAC7B,WAAW,GAAG;QACpB,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS;KACvC,CAAC;IAEM,YAAY,CAA6B;IAEzC,iBAAiB,CAAyB;IAElD,YAAY,EACV,UAAU,EACV,OAAO,EACP,WAAW,GAKZ;QACC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAEhC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAClF,IAAI,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,KAAa,EAAE,KAAa;QACzC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;YAChC,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,KAAa,EAAE,QAAkB;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,oCAAoC;YACpC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEnD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtC,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACtC,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,KAAa;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAE7C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC;QACpC,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QACxD,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QAEtC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF"}
|
package/dist/_components/{table_body/table_body_presenter.test.js → table/table_presenter.test.js}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { StaticDataSource, StaticStringField } from '@tcn
|
|
1
|
+
import { StaticDataSource, StaticStringField } from '@tcn/resource-store';
|
|
2
2
|
import { Signal } from '@tcn/state';
|
|
3
3
|
import { beforeEach, describe, expect, it } from 'vitest';
|
|
4
|
-
import {
|
|
5
|
-
describe('
|
|
4
|
+
import { TablePresenter } from './table_presenter.js';
|
|
5
|
+
describe('TablePresenter', () => {
|
|
6
6
|
let dataSource;
|
|
7
7
|
let mockColumnInfo;
|
|
8
8
|
beforeEach(() => {
|
|
@@ -29,7 +29,7 @@ describe('TableBodyPresenter', () => {
|
|
|
29
29
|
});
|
|
30
30
|
describe('constructor', () => {
|
|
31
31
|
it('initializes with provided data source and columns', () => {
|
|
32
|
-
const presenter = new
|
|
32
|
+
const presenter = new TablePresenter({
|
|
33
33
|
dataSource,
|
|
34
34
|
columns: mockColumnInfo,
|
|
35
35
|
});
|
|
@@ -39,7 +39,7 @@ describe('TableBodyPresenter', () => {
|
|
|
39
39
|
});
|
|
40
40
|
describe('setColumnWidth', () => {
|
|
41
41
|
it('updates the width of the specified column', () => {
|
|
42
|
-
const presenter = new
|
|
42
|
+
const presenter = new TablePresenter({
|
|
43
43
|
dataSource,
|
|
44
44
|
columns: mockColumnInfo,
|
|
45
45
|
});
|
|
@@ -52,7 +52,7 @@ describe('TableBodyPresenter', () => {
|
|
|
52
52
|
});
|
|
53
53
|
describe('setColumnSortMode', () => {
|
|
54
54
|
it('updates sort mode and calls setFieldSort when fieldName exists', () => {
|
|
55
|
-
const presenter = new
|
|
55
|
+
const presenter = new TablePresenter({
|
|
56
56
|
dataSource,
|
|
57
57
|
columns: mockColumnInfo,
|
|
58
58
|
});
|
|
@@ -71,7 +71,7 @@ describe('TableBodyPresenter', () => {
|
|
|
71
71
|
heading: 'Name',
|
|
72
72
|
},
|
|
73
73
|
];
|
|
74
|
-
const presenter = new
|
|
74
|
+
const presenter = new TablePresenter({
|
|
75
75
|
dataSource,
|
|
76
76
|
columns: columnsWithoutFieldName,
|
|
77
77
|
});
|
|
@@ -84,7 +84,7 @@ describe('TableBodyPresenter', () => {
|
|
|
84
84
|
});
|
|
85
85
|
describe('setNextColumnSortMode', () => {
|
|
86
86
|
it('cycles through sort modes in order: none -> asc -> desc -> none', () => {
|
|
87
|
-
const presenter = new
|
|
87
|
+
const presenter = new TablePresenter({
|
|
88
88
|
dataSource,
|
|
89
89
|
columns: mockColumnInfo,
|
|
90
90
|
});
|
|
@@ -102,7 +102,7 @@ describe('TableBodyPresenter', () => {
|
|
|
102
102
|
expect(dataSource.broadcasts.sortStatus.get()).toEqual([]);
|
|
103
103
|
});
|
|
104
104
|
it('does not cycle sort modes for unsortable columns', () => {
|
|
105
|
-
const presenter = new
|
|
105
|
+
const presenter = new TablePresenter({
|
|
106
106
|
dataSource,
|
|
107
107
|
columns: mockColumnInfo,
|
|
108
108
|
});
|
|
@@ -113,7 +113,7 @@ describe('TableBodyPresenter', () => {
|
|
|
113
113
|
});
|
|
114
114
|
describe('broadcasts', () => {
|
|
115
115
|
it('provides access to column info signal', () => {
|
|
116
|
-
const presenter = new
|
|
116
|
+
const presenter = new TablePresenter({
|
|
117
117
|
dataSource,
|
|
118
118
|
columns: mockColumnInfo,
|
|
119
119
|
});
|
|
@@ -122,4 +122,4 @@ describe('TableBodyPresenter', () => {
|
|
|
122
122
|
});
|
|
123
123
|
});
|
|
124
124
|
});
|
|
125
|
-
//# sourceMappingURL=
|
|
125
|
+
//# sourceMappingURL=table_presenter.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table_presenter.test.js","sourceRoot":"","sources":["../../../src/_components/table/table_presenter.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,13 @@ import React from 'react';
|
|
|
2
2
|
import { useSignalValue } from '@tcn/state';
|
|
3
3
|
import { Button } from '@tcn/ui-controls';
|
|
4
4
|
import { Box } from '@tcn/ui-layout';
|
|
5
|
-
export function
|
|
5
|
+
export function TablePager({ dataSource }) {
|
|
6
6
|
const pageIndex = useSignalValue(dataSource.broadcasts.currentPageIndex);
|
|
7
|
-
|
|
7
|
+
const pagesCount = useSignalValue(dataSource.broadcasts.pagesCount);
|
|
8
|
+
return (React.createElement(Box, { height: "40px" },
|
|
8
9
|
"Page: ",
|
|
9
10
|
pageIndex + 1,
|
|
10
11
|
React.createElement(Button, { onClick: () => dataSource.previousPage(), disabled: pageIndex === 0 }, "<"),
|
|
11
|
-
React.createElement(Button, { onClick: () => dataSource.nextPage() }, ">")));
|
|
12
|
+
React.createElement(Button, { onClick: () => dataSource.nextPage(), disabled: pageIndex === pagesCount - 1 }, ">")));
|
|
12
13
|
}
|
|
13
|
-
//# sourceMappingURL=
|
|
14
|
+
//# sourceMappingURL=table_pager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table_pager.js","sourceRoot":"","sources":["../../src/_components/table_pager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAMrC,MAAM,UAAU,UAAU,CAAI,EAAE,UAAU,EAAsB;IAC9D,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAEpE,OAAO,CACL,oBAAC,GAAG,IAAC,MAAM,EAAC,MAAM;;QACT,SAAS,GAAG,CAAC;QACpB,oBAAC,MAAM,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,KAAK,CAAC,QAElE;QACT,oBAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,EACpC,QAAQ,EAAE,SAAS,KAAK,UAAU,GAAG,CAAC,QAG/B,CACL,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useSignalValue } from '@tcn/state';
|
|
3
|
+
import { Input } from '@tcn/ui-controls';
|
|
4
|
+
import { Box } from '@tcn/ui-layout';
|
|
5
|
+
export function TableSearch({ dataSource }) {
|
|
6
|
+
const filterString = useSignalValue(dataSource.broadcasts.filterString);
|
|
7
|
+
return (React.createElement(Box, { width: "auto" },
|
|
8
|
+
React.createElement(Input, { placeholder: "Search", value: filterString, onChange: e => dataSource.setFilterString(e) })));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=table_search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table_search.js","sourceRoot":"","sources":["../../src/_components/table_search.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAMrC,MAAM,UAAU,WAAW,CAAC,EAAE,UAAU,EAAoB;IAC1D,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAExE,OAAO,CACL,oBAAC,GAAG,IAAC,KAAK,EAAC,MAAM;QACf,oBAAC,KAAK,IACJ,WAAW,EAAC,QAAQ,EACpB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAC5C,CACE,CACP,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { TableColumn } from './_components/
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
1
|
+
export { Table } from './_components/table/table.js';
|
|
2
|
+
export { TableColumn } from './_components/table/table_column.js';
|
|
3
|
+
export { TablePager } from './_components/table_pager.js';
|
|
4
|
+
export { TableSearch } from './_components/table_search.js';
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { TableColumn } from './_components/
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
1
|
+
export { Table } from './_components/table/table.js';
|
|
2
|
+
export { TableColumn } from './_components/table/table_column.js';
|
|
3
|
+
export { TablePager } from './_components/table_pager.js';
|
|
4
|
+
export { TableSearch } from './_components/table_search.js';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tcn/ui-table",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"author": "TCN",
|
|
6
6
|
"description": "Blackcat UI Table",
|
|
@@ -61,11 +61,13 @@
|
|
|
61
61
|
"vitest": "^2.1.4"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@tcn
|
|
64
|
+
"@tcn/resource-store": "^1.0.7",
|
|
65
65
|
"@tcn/state": "^0.1.4",
|
|
66
66
|
"@tcn/ui-controls": "^0.2.34",
|
|
67
|
-
"@tcn/ui-core": "^0.
|
|
67
|
+
"@tcn/ui-core": "^0.5.0",
|
|
68
68
|
"@tcn/ui-layout": "^0.3.38",
|
|
69
|
+
"@tcn/ui-scaffold": "^1.0.1",
|
|
70
|
+
"@tcn/ui-typography": "^1.0.0",
|
|
69
71
|
"classnames": "^2.5.1"
|
|
70
72
|
},
|
|
71
73
|
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import React, { ReactElement } from 'react';
|
|
2
|
-
import { DataSource } from '@tcn-internal/resource-store';
|
|
3
|
-
import { TableColumnProps } from './table_column.js';
|
|
4
|
-
export type TableBodyProps<T> = {
|
|
5
|
-
dataSource: DataSource<T>;
|
|
6
|
-
children: ReactElement<TableColumnProps<T>>[];
|
|
7
|
-
height?: string;
|
|
8
|
-
width?: string;
|
|
9
|
-
zIndex?: number;
|
|
10
|
-
highlightedRows?: Set<number> | null;
|
|
11
|
-
};
|
|
12
|
-
export declare function TableBody<T>({ dataSource, children, width, height, zIndex, highlightedRows, }: TableBodyProps<T>): React.JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table_body.js","sourceRoot":"","sources":["../../../src/_components/table_body/table_body.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table_body_presenter.js","sourceRoot":"","sources":["../../../src/_components/table_body/table_body_presenter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,MAAM,EAAE,MAAM,YAAY,CAAC;AAInD,MAAM,SAAS,GAAe,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAatD,MAAM,OAAO,kBAAkB;IACrB,WAAW,GAAG,IAAI,MAAM,CAAe,EAAE,CAAC,CAAC;IAC3C,WAAW,CAAkB;IAC7B,WAAW,GAAG;QACpB,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS;KACvC,CAAC;IAEM,YAAY,CAA6B;IAEzC,iBAAiB,CAAyB;IAElD,YAAY,EACV,UAAU,EACV,OAAO,EACP,WAAW,GAKZ;QACC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAEhC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAClF,IAAI,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,KAAa,EAAE,KAAa;QACzC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;YAChC,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,KAAa,EAAE,QAAkB;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,oCAAoC;YACpC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEnD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtC,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACtC,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,KAAa;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAE7C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC;QACpC,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QACxD,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QAEtC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table_body_presenter.test.js","sourceRoot":"","sources":["../../../src/_components/table_body/table_body_presenter.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table_column.js","sourceRoot":"","sources":["../../../src/_components/table_body/table_column.tsx"],"names":[],"mappings":"AAsBA,qEAAqE;AACrE,8BAA8B;AAC9B,MAAM,UAAU,WAAW,CAAI,MAA2B;IACxD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table_footer.js","sourceRoot":"","sources":["../../src/_components/table_footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAMrC,MAAM,UAAU,WAAW,CAAI,EAAE,UAAU,EAAuB;IAChE,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAEzE,OAAO,CACL,oBAAC,GAAG;;QACK,SAAS,GAAG,CAAC;QACpB,oBAAC,MAAM,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,KAAK,CAAC,QAElE;QACT,oBAAC,MAAM,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAe,CACvD,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { DataSource } from '@tcn-internal/resource-store';
|
|
3
|
-
export type TableHeaderProps = {
|
|
4
|
-
title: string;
|
|
5
|
-
dataSource: DataSource<any>;
|
|
6
|
-
};
|
|
7
|
-
export declare function TableHeader({ title, dataSource }: TableHeaderProps): React.JSX.Element;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { useSignalValue } from '@tcn/state';
|
|
3
|
-
import { Input } from '@tcn/ui-controls';
|
|
4
|
-
import { Text } from '@tcn/ui-core';
|
|
5
|
-
import { Box, FlexBox, HStack } from '@tcn/ui-layout';
|
|
6
|
-
export function TableHeader({ title, dataSource }) {
|
|
7
|
-
const filterString = useSignalValue(dataSource.broadcasts.filterString);
|
|
8
|
-
return (React.createElement(HStack, null,
|
|
9
|
-
React.createElement(FlexBox, { width: "auto" },
|
|
10
|
-
React.createElement(Text, { variant: "large" }, title)),
|
|
11
|
-
React.createElement(Box, { width: "300px" },
|
|
12
|
-
React.createElement(Input, { placeholder: "Search", value: filterString, onChange: e => dataSource.setFilterString(e) }))));
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=table_header.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table_header.js","sourceRoot":"","sources":["../../src/_components/table_header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAOtD,MAAM,UAAU,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAoB;IACjE,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAExE,OAAO,CACL,oBAAC,MAAM;QACL,oBAAC,OAAO,IAAC,KAAK,EAAC,MAAM;YACnB,oBAAC,IAAI,IAAC,OAAO,EAAC,OAAO,IAAE,KAAK,CAAQ,CAC5B;QACV,oBAAC,GAAG,IAAC,KAAK,EAAC,OAAO;YAChB,oBAAC,KAAK,IACJ,WAAW,EAAC,QAAQ,EACpB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAC5C,CACE,CACC,CACV,CAAC;AACJ,CAAC"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|