@qoretechnologies/reqore 0.34.13 → 0.35.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/__tests__/helpers/table.test.tsx +47 -0
- package/__tests__/table.test.tsx +158 -123
- package/dist/components/Button/index.d.ts +2 -0
- package/dist/components/Button/index.d.ts.map +1 -1
- package/dist/components/Button/index.js +7 -4
- package/dist/components/Button/index.js.map +1 -1
- package/dist/components/Collection/index.d.ts +2 -1
- package/dist/components/Collection/index.d.ts.map +1 -1
- package/dist/components/Collection/index.js +5 -11
- package/dist/components/Collection/index.js.map +1 -1
- package/dist/components/ControlGroup/index.d.ts.map +1 -1
- package/dist/components/ControlGroup/index.js +4 -3
- package/dist/components/ControlGroup/index.js.map +1 -1
- package/dist/components/Dropdown/index.d.ts +4 -1
- package/dist/components/Dropdown/index.d.ts.map +1 -1
- package/dist/components/Dropdown/index.js +2 -2
- package/dist/components/Dropdown/index.js.map +1 -1
- package/dist/components/Dropdown/list.d.ts +4 -1
- package/dist/components/Dropdown/list.d.ts.map +1 -1
- package/dist/components/Dropdown/list.js +10 -5
- package/dist/components/Dropdown/list.js.map +1 -1
- package/dist/components/Input/index.js +4 -4
- package/dist/components/Input/index.js.map +1 -1
- package/dist/components/Panel/index.d.ts +4 -1
- package/dist/components/Panel/index.d.ts.map +1 -1
- package/dist/components/Panel/index.js.map +1 -1
- package/dist/components/Table/cell.d.ts +12 -0
- package/dist/components/Table/cell.d.ts.map +1 -0
- package/dist/components/Table/cell.js +89 -0
- package/dist/components/Table/cell.js.map +1 -0
- package/dist/components/Table/header.d.ts +15 -2
- package/dist/components/Table/header.d.ts.map +1 -1
- package/dist/components/Table/header.js +31 -14
- package/dist/components/Table/header.js.map +1 -1
- package/dist/components/Table/headerCell.d.ts +8 -6
- package/dist/components/Table/headerCell.d.ts.map +1 -1
- package/dist/components/Table/headerCell.js +60 -51
- package/dist/components/Table/headerCell.js.map +1 -1
- package/dist/components/Table/helpers.d.ts +39 -1
- package/dist/components/Table/helpers.d.ts.map +1 -1
- package/dist/components/Table/helpers.js +145 -1
- package/dist/components/Table/helpers.js.map +1 -1
- package/dist/components/Table/index.d.ts +39 -25
- package/dist/components/Table/index.d.ts.map +1 -1
- package/dist/components/Table/index.js +139 -52
- package/dist/components/Table/index.js.map +1 -1
- package/dist/components/Table/row.d.ts +9 -4
- package/dist/components/Table/row.d.ts.map +1 -1
- package/dist/components/Table/row.js +30 -54
- package/dist/components/Table/row.js.map +1 -1
- package/dist/hooks/useQueryWithDelay.d.ts +8 -0
- package/dist/hooks/useQueryWithDelay.d.ts.map +1 -0
- package/dist/hooks/useQueryWithDelay.js +25 -0
- package/dist/hooks/useQueryWithDelay.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Button/index.tsx +6 -1
- package/src/components/Collection/index.tsx +9 -15
- package/src/components/ControlGroup/index.tsx +10 -5
- package/src/components/Dropdown/index.tsx +9 -0
- package/src/components/Dropdown/list.tsx +18 -6
- package/src/components/Input/index.tsx +3 -3
- package/src/components/Panel/index.tsx +3 -1
- package/src/components/Table/cell.tsx +117 -0
- package/src/components/Table/header.tsx +102 -45
- package/src/components/Table/headerCell.tsx +123 -80
- package/src/components/Table/helpers.ts +206 -1
- package/src/components/Table/index.tsx +288 -90
- package/src/components/Table/row.tsx +47 -125
- package/src/hooks/useQueryWithDelay.ts +30 -0
- package/src/index.tsx +3 -0
- package/src/mock/tableData.ts +40 -20
- package/src/stories/Breadcrumbs/Breadcrumbs.stories.tsx +1 -1
- package/src/stories/Button/Button.stories.tsx +1 -1
- package/src/stories/Checkbox/Checkbox.stories.tsx +1 -1
- package/src/stories/Collection/Collection.stories.tsx +19 -1
- package/src/stories/Columns/Columns.stories.tsx +1 -1
- package/src/stories/Comment/Comment.stories.tsx +1 -1
- package/src/stories/ControlGroup/ControlGroup.stories.tsx +1 -1
- package/src/stories/Drawer/Drawer.stories.tsx +5 -5
- package/src/stories/Dropdown/Dropdown.stories.tsx +11 -1
- package/src/stories/Header/Header.stories.tsx +1 -1
- package/src/stories/Icon/Icon.stories.tsx +1 -1
- package/src/stories/Input/Input.stories.tsx +1 -1
- package/src/stories/Menu/Menu.stories.tsx +1 -1
- package/src/stories/Message/Message.stories.tsx +1 -1
- package/src/stories/Modal/Modal.stories.tsx +1 -1
- package/src/stories/MultiSelect/MultiSelect.stories.tsx +1 -1
- package/src/stories/Navbar/Navbar.stories.tsx +1 -1
- package/src/stories/Notifications/Interactive.stories.tsx +1 -1
- package/src/stories/Notifications/Notification.stories.tsx +1 -1
- package/src/stories/Notifications/Notifications.stories.tsx +1 -1
- package/src/stories/Paging/Paging.stories.tsx +1 -1
- package/src/stories/Panel/Panel.stories.tsx +5 -5
- package/src/stories/Paragraph/Paragraph.stories.tsx +1 -1
- package/src/stories/Popover/Popover.stories.tsx +2 -2
- package/src/stories/RadioGroup/RadioGroup.stories.tsx +1 -1
- package/src/stories/Sidebar/Sidebar.stories.tsx +2 -2
- package/src/stories/Spacer/Spacer.stories.tsx +1 -1
- package/src/stories/Spinner/Spinner.stories.tsx +1 -1
- package/src/stories/Table/Table.stories.tsx +277 -78
- package/src/stories/Tabs/Tabs.stories.tsx +1 -1
- package/src/stories/Tag/Tag.stories.tsx +1 -1
- package/src/stories/TextArea/TextArea.stories.tsx +2 -2
- package/src/stories/Tree/Tree.stories.tsx +2 -2
- package/src/stories/utils/args.ts +1 -1
- package/tests.json +1 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getColumnsCount,
|
|
3
|
+
getOnlyShownColumns,
|
|
4
|
+
hasHiddenColumns,
|
|
5
|
+
updateColumnData,
|
|
6
|
+
} from '../../src/components/Table/helpers';
|
|
7
|
+
import { testColumns } from '../../src/mock/tableData';
|
|
8
|
+
|
|
9
|
+
test('Updates top level column width', () => {
|
|
10
|
+
const columns = [...testColumns];
|
|
11
|
+
|
|
12
|
+
expect(columns[0].width).toBe(50);
|
|
13
|
+
|
|
14
|
+
const newColumns = updateColumnData(columns, 'id', 'resizedWidth', 100);
|
|
15
|
+
|
|
16
|
+
expect(newColumns[0].width).toBe(50);
|
|
17
|
+
expect(newColumns[0].resizedWidth).toBe(100);
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
test('Updates group level column width', () => {
|
|
21
|
+
const columns = [...testColumns];
|
|
22
|
+
|
|
23
|
+
expect(columns[1].header!.columns![0].width).toBe(150);
|
|
24
|
+
|
|
25
|
+
const newColumns = updateColumnData(columns, 'firstName', 'resizedWidth', 250);
|
|
26
|
+
|
|
27
|
+
expect(newColumns[1].header!.columns![0].width).toBe(150);
|
|
28
|
+
expect(newColumns[1].header!.columns![0].resizedWidth).toBe(250);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
test('Filters out hidden columns', () => {
|
|
32
|
+
const columns = [...testColumns];
|
|
33
|
+
|
|
34
|
+
expect(getColumnsCount(columns)).toBe(8);
|
|
35
|
+
|
|
36
|
+
columns[1].header!.columns![0].show = false;
|
|
37
|
+
columns[1].header!.columns![1].show = false;
|
|
38
|
+
columns[3].show = false;
|
|
39
|
+
columns[4].header!.columns![1].show = false;
|
|
40
|
+
|
|
41
|
+
const newColumns = getOnlyShownColumns(columns);
|
|
42
|
+
|
|
43
|
+
expect(getColumnsCount(newColumns)).toBe(4);
|
|
44
|
+
expect(hasHiddenColumns(columns)).toBe(true);
|
|
45
|
+
expect(hasHiddenColumns(newColumns)).toBe(false);
|
|
46
|
+
expect(newColumns[1].dataId).toBe('address');
|
|
47
|
+
});
|
package/__tests__/table.test.tsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { fireEvent, render } from '@testing-library/react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { ReqoreLayoutContent, ReqoreTable, ReqoreUIProvider } from '../src';
|
|
4
|
-
import {
|
|
4
|
+
import { IReqoreTableProps } from '../src/components/Table';
|
|
5
5
|
import tableData from '../src/mock/tableData';
|
|
6
6
|
|
|
7
7
|
test('Renders basic <Table /> properly', () => {
|
|
@@ -13,39 +13,44 @@ test('Renders basic <Table /> properly', () => {
|
|
|
13
13
|
</ReqoreUIProvider>
|
|
14
14
|
);
|
|
15
15
|
|
|
16
|
-
expect(document.querySelectorAll('.reqore-table-header
|
|
16
|
+
expect(document.querySelectorAll('.reqore-table-column-group-header').length).toBe(2);
|
|
17
|
+
expect(document.querySelectorAll('.reqore-table-header-cell').length).toBe(10);
|
|
17
18
|
expect(document.querySelectorAll('.reqore-table-row').length).toBe(10);
|
|
18
19
|
});
|
|
19
20
|
|
|
20
21
|
test('Renders <Table /> with grouped columns properly', () => {
|
|
21
|
-
const data = {
|
|
22
|
+
const data: IReqoreTableProps = {
|
|
22
23
|
...tableData,
|
|
23
24
|
columns: [
|
|
24
25
|
{
|
|
25
26
|
dataId: 'id',
|
|
26
|
-
header:
|
|
27
|
+
header: {
|
|
28
|
+
label: 'ID',
|
|
29
|
+
},
|
|
27
30
|
width: 50,
|
|
28
31
|
align: 'center',
|
|
29
32
|
},
|
|
30
33
|
{
|
|
31
|
-
header:
|
|
34
|
+
header: {
|
|
35
|
+
label: 'Name',
|
|
36
|
+
columns: [
|
|
37
|
+
{ dataId: 'firstName', header: { label: 'First Name' }, width: 150, grow: 2 },
|
|
38
|
+
{ dataId: 'lastName', header: { label: 'Last Name' }, width: 150, grow: 1 },
|
|
39
|
+
],
|
|
40
|
+
},
|
|
32
41
|
dataId: 'name',
|
|
33
42
|
grow: 3,
|
|
34
|
-
columns: [
|
|
35
|
-
{ dataId: 'firstName', header: 'First Name', width: 150, grow: 2 },
|
|
36
|
-
{ dataId: 'lastName', header: 'Last Name', width: 150, grow: 1 },
|
|
37
|
-
],
|
|
38
43
|
},
|
|
39
|
-
{ dataId: 'address', header: 'Address', width: 300, grow: 2 },
|
|
44
|
+
{ dataId: 'address', header: { label: 'Address' }, width: 300, grow: 2 },
|
|
40
45
|
{
|
|
41
46
|
dataId: 'age',
|
|
42
|
-
header: 'Really long age header',
|
|
47
|
+
header: { label: 'Really long age header' },
|
|
43
48
|
width: 50,
|
|
44
49
|
align: 'center',
|
|
45
50
|
},
|
|
46
|
-
{ dataId: 'occupation', header: 'Ocuppation', width: 200 },
|
|
47
|
-
{ dataId: 'group', header: 'Group', width: 150 },
|
|
48
|
-
]
|
|
51
|
+
{ dataId: 'occupation', header: { label: 'Ocuppation' }, width: 200 },
|
|
52
|
+
{ dataId: 'group', header: { label: 'Group' }, width: 150 },
|
|
53
|
+
],
|
|
49
54
|
};
|
|
50
55
|
|
|
51
56
|
render(
|
|
@@ -57,39 +62,43 @@ test('Renders <Table /> with grouped columns properly', () => {
|
|
|
57
62
|
);
|
|
58
63
|
|
|
59
64
|
expect(document.querySelectorAll('.reqore-table-column-group').length).toBe(1);
|
|
60
|
-
expect(document.querySelectorAll('.reqore-table-header-cell').length).toBe(
|
|
65
|
+
expect(document.querySelectorAll('.reqore-table-header-cell').length).toBe(8);
|
|
61
66
|
});
|
|
62
67
|
|
|
63
68
|
test('Renders <Table /> with custom content', () => {
|
|
64
|
-
const data = {
|
|
69
|
+
const data: IReqoreTableProps = {
|
|
65
70
|
...tableData,
|
|
66
71
|
columns: [
|
|
67
72
|
{
|
|
68
73
|
dataId: 'id',
|
|
69
|
-
header: 'ID',
|
|
74
|
+
header: { label: 'ID' },
|
|
70
75
|
width: 50,
|
|
71
76
|
align: 'center',
|
|
72
|
-
|
|
77
|
+
cell: {
|
|
78
|
+
content: ({ id }) => <span>ID {id}</span>,
|
|
79
|
+
},
|
|
73
80
|
},
|
|
74
81
|
{
|
|
75
|
-
header:
|
|
82
|
+
header: {
|
|
83
|
+
label: 'Name',
|
|
84
|
+
columns: [
|
|
85
|
+
{ dataId: 'firstName', header: { label: 'First Name' }, width: 150, grow: 2 },
|
|
86
|
+
{ dataId: 'lastName', header: { label: 'Last Name' }, width: 150, grow: 1 },
|
|
87
|
+
],
|
|
88
|
+
},
|
|
76
89
|
dataId: 'name',
|
|
77
90
|
grow: 3,
|
|
78
|
-
columns: [
|
|
79
|
-
{ dataId: 'firstName', header: 'First Name', width: 150, grow: 2 },
|
|
80
|
-
{ dataId: 'lastName', header: 'Last Name', width: 150, grow: 1 },
|
|
81
|
-
],
|
|
82
91
|
},
|
|
83
|
-
{ dataId: 'address', header: 'Address', width: 300, grow: 2 },
|
|
92
|
+
{ dataId: 'address', header: { label: 'Address' }, width: 300, grow: 2 },
|
|
84
93
|
{
|
|
85
94
|
dataId: 'age',
|
|
86
|
-
header: 'Really long age header',
|
|
95
|
+
header: { label: 'Really long age header' },
|
|
87
96
|
width: 50,
|
|
88
97
|
align: 'center',
|
|
89
98
|
},
|
|
90
|
-
{ dataId: 'occupation', header: 'Ocuppation', width: 200 },
|
|
91
|
-
{ dataId: 'group', header: 'Group', width: 150 },
|
|
92
|
-
]
|
|
99
|
+
{ dataId: 'occupation', header: { label: 'Ocuppation' }, width: 200 },
|
|
100
|
+
{ dataId: 'group', header: { label: 'Group' }, width: 150 },
|
|
101
|
+
],
|
|
93
102
|
};
|
|
94
103
|
|
|
95
104
|
render(
|
|
@@ -101,54 +110,68 @@ test('Renders <Table /> with custom content', () => {
|
|
|
101
110
|
);
|
|
102
111
|
|
|
103
112
|
const firstRow = document.querySelector('.reqore-table-row');
|
|
104
|
-
const idCell = firstRow
|
|
113
|
+
const idCell = firstRow!.querySelector('.reqore-table-cell');
|
|
105
114
|
|
|
106
|
-
expect(idCell
|
|
115
|
+
expect(idCell!.textContent).toBe('ID 1');
|
|
107
116
|
});
|
|
108
117
|
|
|
109
118
|
test('Renders <Table /> with predefined content', () => {
|
|
110
|
-
const data = {
|
|
119
|
+
const data: IReqoreTableProps = {
|
|
111
120
|
...tableData,
|
|
112
121
|
columns: [
|
|
113
122
|
{
|
|
114
123
|
dataId: 'id',
|
|
115
|
-
header: 'ID',
|
|
124
|
+
header: { label: 'ID' },
|
|
116
125
|
width: 50,
|
|
117
126
|
align: 'center',
|
|
118
|
-
|
|
127
|
+
cell: {
|
|
128
|
+
content: 'tag:info',
|
|
129
|
+
},
|
|
119
130
|
},
|
|
120
131
|
{
|
|
121
|
-
header:
|
|
132
|
+
header: {
|
|
133
|
+
label: 'Name',
|
|
134
|
+
columns: [
|
|
135
|
+
{
|
|
136
|
+
dataId: 'firstName',
|
|
137
|
+
header: { label: 'First Name' },
|
|
138
|
+
width: 150,
|
|
139
|
+
grow: 2,
|
|
140
|
+
cell: {
|
|
141
|
+
content: 'tag:#000000',
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
dataId: 'lastName',
|
|
146
|
+
header: { label: 'Last Name' },
|
|
147
|
+
width: 150,
|
|
148
|
+
grow: 1,
|
|
149
|
+
cell: {
|
|
150
|
+
content: 'title:success',
|
|
151
|
+
},
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
},
|
|
122
155
|
dataId: 'name',
|
|
123
156
|
grow: 3,
|
|
124
|
-
columns: [
|
|
125
|
-
{
|
|
126
|
-
dataId: 'firstName',
|
|
127
|
-
header: 'First Name',
|
|
128
|
-
width: 150,
|
|
129
|
-
grow: 2,
|
|
130
|
-
content: 'tag:#000000',
|
|
131
|
-
},
|
|
132
|
-
{
|
|
133
|
-
dataId: 'lastName',
|
|
134
|
-
header: 'Last Name',
|
|
135
|
-
width: 150,
|
|
136
|
-
grow: 1,
|
|
137
|
-
content: 'title:success',
|
|
138
|
-
},
|
|
139
|
-
],
|
|
140
157
|
},
|
|
141
|
-
{
|
|
158
|
+
{
|
|
159
|
+
dataId: 'address',
|
|
160
|
+
header: { label: 'Address' },
|
|
161
|
+
width: 300,
|
|
162
|
+
grow: 2,
|
|
163
|
+
cell: { content: 'text:warning' },
|
|
164
|
+
},
|
|
142
165
|
{
|
|
143
166
|
dataId: 'age',
|
|
144
|
-
header: 'Really long age header',
|
|
167
|
+
header: { label: 'Really long age header' },
|
|
145
168
|
width: 50,
|
|
146
169
|
align: 'center',
|
|
147
170
|
},
|
|
148
|
-
{ dataId: 'occupation', header: 'Ocuppation', width: 200 },
|
|
149
|
-
{ dataId: 'group', header: 'Group', width: 150 },
|
|
150
|
-
{ dataId: 'date', header: 'Date', content: 'time-ago' },
|
|
151
|
-
]
|
|
171
|
+
{ dataId: 'occupation', header: { label: 'Ocuppation' }, width: 200 },
|
|
172
|
+
{ dataId: 'group', header: { label: 'Group' }, width: 150 },
|
|
173
|
+
{ dataId: 'date', header: { label: 'Date' }, cell: { content: 'time-ago' } },
|
|
174
|
+
],
|
|
152
175
|
};
|
|
153
176
|
|
|
154
177
|
render(
|
|
@@ -161,11 +184,11 @@ test('Renders <Table /> with predefined content', () => {
|
|
|
161
184
|
|
|
162
185
|
const firstRow = document.querySelector('.reqore-table-row');
|
|
163
186
|
|
|
164
|
-
const idCell = firstRow
|
|
165
|
-
const firstNameCell = firstRow
|
|
166
|
-
const lastNameCell = firstRow
|
|
167
|
-
const addressCell = firstRow
|
|
168
|
-
const dateCell = firstRow
|
|
187
|
+
const idCell = firstRow!.querySelectorAll('.reqore-table-cell')[0];
|
|
188
|
+
const firstNameCell = firstRow!.querySelectorAll('.reqore-table-cell')[1];
|
|
189
|
+
const lastNameCell = firstRow!.querySelectorAll('.reqore-table-cell')[2];
|
|
190
|
+
const addressCell = firstRow!.querySelectorAll('.reqore-table-cell')[3];
|
|
191
|
+
const dateCell = firstRow!.querySelectorAll('.reqore-table-cell')[7];
|
|
169
192
|
|
|
170
193
|
expect(idCell.querySelector('.reqore-tag')).toBeTruthy();
|
|
171
194
|
expect(firstNameCell.querySelector('.reqore-tag')).toBeTruthy();
|
|
@@ -175,33 +198,33 @@ test('Renders <Table /> with predefined content', () => {
|
|
|
175
198
|
});
|
|
176
199
|
|
|
177
200
|
test('Sorting on <Table /> works properly', () => {
|
|
178
|
-
const data = {
|
|
201
|
+
const data: IReqoreTableProps = {
|
|
179
202
|
...tableData,
|
|
180
203
|
columns: [
|
|
181
204
|
{
|
|
182
205
|
dataId: 'id',
|
|
183
|
-
header: 'ID',
|
|
206
|
+
header: { label: 'ID' },
|
|
184
207
|
width: 50,
|
|
185
208
|
align: 'center',
|
|
186
209
|
sortable: true,
|
|
187
210
|
},
|
|
188
|
-
{ dataId: 'firstName', header: 'First Name', width: 150 },
|
|
189
|
-
{ dataId: 'lastName', header: 'Last Name', width: 150, sortable: true },
|
|
190
|
-
{ dataId: 'address', header: 'Address', width: 300, grow: 2 },
|
|
211
|
+
{ dataId: 'firstName', header: { label: 'First Name' }, width: 150 },
|
|
212
|
+
{ dataId: 'lastName', header: { label: 'Last Name' }, width: 150, sortable: true },
|
|
213
|
+
{ dataId: 'address', header: { label: 'Address' }, width: 300, grow: 2 },
|
|
191
214
|
{
|
|
192
215
|
dataId: 'age',
|
|
193
|
-
header: 'Really long age header',
|
|
216
|
+
header: { label: 'Really long age header' },
|
|
194
217
|
width: 50,
|
|
195
218
|
align: 'center',
|
|
196
219
|
sortable: true,
|
|
197
220
|
},
|
|
198
|
-
{ dataId: 'occupation', header: 'Ocuppation', width: 200 },
|
|
199
|
-
{ dataId: 'group', header: 'Group', width: 150 },
|
|
200
|
-
]
|
|
221
|
+
{ dataId: 'occupation', header: { label: 'Ocuppation' }, width: 200 },
|
|
222
|
+
{ dataId: 'group', header: { label: 'Group' }, width: 150 },
|
|
223
|
+
],
|
|
201
224
|
sort: {
|
|
202
225
|
by: 'id',
|
|
203
226
|
direction: 'desc',
|
|
204
|
-
}
|
|
227
|
+
},
|
|
205
228
|
};
|
|
206
229
|
|
|
207
230
|
const fn = jest.fn();
|
|
@@ -215,16 +238,16 @@ test('Sorting on <Table /> works properly', () => {
|
|
|
215
238
|
);
|
|
216
239
|
|
|
217
240
|
const firstRow = document.querySelector('.reqore-table-row');
|
|
218
|
-
const idCell = firstRow
|
|
241
|
+
const idCell = firstRow!.querySelector('.reqore-table-cell');
|
|
219
242
|
|
|
220
|
-
expect(idCell
|
|
243
|
+
expect(idCell!.textContent).toBe('1000');
|
|
221
244
|
|
|
222
245
|
const lastNameHeaderCell = document.querySelectorAll('.reqore-table-header-cell')[2];
|
|
223
246
|
|
|
224
247
|
fireEvent.click(lastNameHeaderCell);
|
|
225
248
|
expect(fn).toHaveBeenCalledWith({ by: 'lastName', direction: 'desc' });
|
|
226
249
|
|
|
227
|
-
const lastNameCell = firstRow
|
|
250
|
+
const lastNameCell = firstRow!.querySelectorAll('.reqore-table-cell')[2];
|
|
228
251
|
|
|
229
252
|
expect(lastNameCell.textContent).toBe('Zold');
|
|
230
253
|
|
|
@@ -232,7 +255,7 @@ test('Sorting on <Table /> works properly', () => {
|
|
|
232
255
|
|
|
233
256
|
expect(fn).toHaveBeenLastCalledWith({ by: 'lastName', direction: 'asc' });
|
|
234
257
|
expect(lastNameCell.textContent).toBe('Abbess');
|
|
235
|
-
expect(idCell
|
|
258
|
+
expect(idCell!.textContent).toBe('543');
|
|
236
259
|
});
|
|
237
260
|
|
|
238
261
|
test('Rows on <Table /> can be selected', () => {
|
|
@@ -252,16 +275,16 @@ test('Rows on <Table /> can be selected', () => {
|
|
|
252
275
|
);
|
|
253
276
|
|
|
254
277
|
const firstRow = document.querySelector('.reqore-table-row');
|
|
255
|
-
const firstCheckCell = firstRow
|
|
278
|
+
const firstCheckCell = firstRow!.querySelector('.reqore-table-cell');
|
|
256
279
|
|
|
257
|
-
fireEvent.click(firstCheckCell);
|
|
280
|
+
fireEvent.click(firstCheckCell!);
|
|
258
281
|
|
|
259
282
|
expect(fn).toHaveBeenCalledWith([1]);
|
|
260
283
|
|
|
261
284
|
const secondRow = document.querySelectorAll('.reqore-table-row')[1];
|
|
262
285
|
const secondCheckCell = secondRow.querySelector('.reqore-table-cell');
|
|
263
286
|
|
|
264
|
-
fireEvent.click(secondCheckCell);
|
|
287
|
+
fireEvent.click(secondCheckCell!);
|
|
265
288
|
|
|
266
289
|
expect(fn).toHaveBeenLastCalledWith([1, 2]);
|
|
267
290
|
});
|
|
@@ -285,18 +308,18 @@ test('Rows on <Table /> cannot be selected if _selectId is missing', () => {
|
|
|
285
308
|
const thirdRow = document.querySelectorAll('.reqore-table-row')[2];
|
|
286
309
|
const thirdCheckCell = thirdRow.querySelector('.reqore-table-cell');
|
|
287
310
|
|
|
288
|
-
fireEvent.click(thirdCheckCell);
|
|
311
|
+
fireEvent.click(thirdCheckCell!);
|
|
289
312
|
|
|
290
313
|
const fourthRow = document.querySelectorAll('.reqore-table-row')[3];
|
|
291
314
|
const fourthCheckCell = fourthRow.querySelector('.reqore-table-cell');
|
|
292
315
|
|
|
293
|
-
fireEvent.click(fourthCheckCell);
|
|
316
|
+
fireEvent.click(fourthCheckCell!);
|
|
294
317
|
|
|
295
318
|
expect(fn).toHaveBeenCalledTimes(1);
|
|
296
319
|
});
|
|
297
320
|
|
|
298
321
|
test('Rows on <Table /> are all selected/deselected when clicking on header', () => {
|
|
299
|
-
const data = {
|
|
322
|
+
const data: IReqoreTableProps = {
|
|
300
323
|
...tableData,
|
|
301
324
|
selectable: true,
|
|
302
325
|
};
|
|
@@ -312,91 +335,103 @@ test('Rows on <Table /> are all selected/deselected when clicking on header', ()
|
|
|
312
335
|
);
|
|
313
336
|
|
|
314
337
|
const header = document.querySelector('.reqore-table-header-wrapper');
|
|
315
|
-
const firstHeaderCell = header
|
|
338
|
+
const firstHeaderCell = header!.querySelector('.reqore-table-header-cell');
|
|
316
339
|
|
|
317
|
-
fireEvent.click(firstHeaderCell);
|
|
340
|
+
fireEvent.click(firstHeaderCell!);
|
|
318
341
|
|
|
319
|
-
const selectableData
|
|
342
|
+
const selectableData = tableData.data
|
|
320
343
|
.filter((datum) => datum._selectId ?? false)
|
|
321
344
|
.map((datum) => datum._selectId);
|
|
322
345
|
|
|
323
346
|
expect(fn).toHaveBeenCalledWith(selectableData);
|
|
324
347
|
|
|
325
|
-
fireEvent.click(firstHeaderCell);
|
|
348
|
+
fireEvent.click(firstHeaderCell!);
|
|
326
349
|
|
|
327
350
|
expect(fn).toHaveBeenLastCalledWith([]);
|
|
328
351
|
|
|
329
352
|
const firstRow = document.querySelector('.reqore-table-row');
|
|
330
|
-
const firstCheckCell = firstRow
|
|
353
|
+
const firstCheckCell = firstRow!.querySelector('.reqore-table-cell');
|
|
331
354
|
|
|
332
|
-
fireEvent.click(firstCheckCell);
|
|
333
|
-
fireEvent.click(firstHeaderCell);
|
|
355
|
+
fireEvent.click(firstCheckCell!);
|
|
356
|
+
fireEvent.click(firstHeaderCell!);
|
|
334
357
|
|
|
335
358
|
expect(fn).toHaveBeenLastCalledWith(selectableData);
|
|
336
359
|
});
|
|
337
360
|
|
|
338
361
|
test('Cells on <Table /> are interactive', () => {
|
|
339
362
|
const fn = jest.fn();
|
|
340
|
-
const data = {
|
|
363
|
+
const data: IReqoreTableProps = {
|
|
341
364
|
...tableData,
|
|
342
365
|
columns: [
|
|
343
366
|
{
|
|
344
367
|
dataId: 'id',
|
|
345
|
-
header: 'ID',
|
|
368
|
+
header: { label: 'ID', tooltip: 'Custom ID tooltip nice' },
|
|
346
369
|
width: 50,
|
|
347
370
|
align: 'center',
|
|
348
371
|
sortable: true,
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
372
|
+
cell: {
|
|
373
|
+
onClick: ({ id }) => {
|
|
374
|
+
fn(id);
|
|
375
|
+
},
|
|
352
376
|
},
|
|
353
377
|
},
|
|
354
378
|
{
|
|
355
|
-
header:
|
|
379
|
+
header: {
|
|
380
|
+
label: 'Name',
|
|
381
|
+
columns: [
|
|
382
|
+
{
|
|
383
|
+
dataId: 'firstName',
|
|
384
|
+
header: {
|
|
385
|
+
label: 'First Name',
|
|
386
|
+
icon: 'SlideshowLine',
|
|
387
|
+
effect: {
|
|
388
|
+
gradient: {
|
|
389
|
+
colors: {
|
|
390
|
+
0: 'success',
|
|
391
|
+
100: 'info',
|
|
392
|
+
},
|
|
393
|
+
},
|
|
394
|
+
},
|
|
395
|
+
},
|
|
396
|
+
width: 150,
|
|
397
|
+
grow: 2,
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
dataId: 'lastName',
|
|
401
|
+
header: { label: 'Last Name', icon: 'SlideshowLine' },
|
|
402
|
+
width: 150,
|
|
403
|
+
grow: 1,
|
|
404
|
+
sortable: true,
|
|
405
|
+
},
|
|
406
|
+
],
|
|
407
|
+
},
|
|
356
408
|
dataId: 'name',
|
|
357
409
|
grow: 3,
|
|
358
|
-
columns: [
|
|
359
|
-
{
|
|
360
|
-
icon: 'SlideshowLine',
|
|
361
|
-
dataId: 'firstName',
|
|
362
|
-
header: 'First Name',
|
|
363
|
-
width: 150,
|
|
364
|
-
grow: 2,
|
|
365
|
-
},
|
|
366
|
-
{
|
|
367
|
-
icon: 'SlideshowLine',
|
|
368
|
-
dataId: 'lastName',
|
|
369
|
-
header: 'Last Name',
|
|
370
|
-
width: 150,
|
|
371
|
-
grow: 1,
|
|
372
|
-
sortable: true,
|
|
373
|
-
},
|
|
374
|
-
],
|
|
375
410
|
},
|
|
376
411
|
{
|
|
377
412
|
dataId: 'address',
|
|
378
|
-
header: 'Address',
|
|
413
|
+
header: { label: 'Address', onClick: () => alert('clicked address') },
|
|
379
414
|
width: 300,
|
|
380
415
|
grow: 2,
|
|
381
|
-
onClick: () => alert('clicked address'),
|
|
382
416
|
},
|
|
383
417
|
{
|
|
384
|
-
icon: 'User4Line',
|
|
385
418
|
dataId: 'age',
|
|
386
|
-
header: 'Really long age header',
|
|
419
|
+
header: { label: 'Really long age header', icon: 'User4Line' },
|
|
387
420
|
width: 50,
|
|
388
421
|
align: 'center',
|
|
389
422
|
sortable: true,
|
|
390
423
|
},
|
|
391
424
|
{
|
|
392
|
-
header:
|
|
425
|
+
header: {
|
|
426
|
+
label: 'Data',
|
|
427
|
+
columns: [
|
|
428
|
+
{ dataId: 'occupation', header: { label: 'Ocuppation' }, width: 200 },
|
|
429
|
+
{ dataId: 'group', header: { label: 'Groups' }, width: 150 },
|
|
430
|
+
],
|
|
431
|
+
},
|
|
393
432
|
dataId: 'data',
|
|
394
|
-
columns: [
|
|
395
|
-
{ dataId: 'occupation', header: 'Ocuppation', width: 200 },
|
|
396
|
-
{ dataId: 'group', header: 'Groups', width: 150 },
|
|
397
|
-
],
|
|
398
433
|
},
|
|
399
|
-
]
|
|
434
|
+
],
|
|
400
435
|
};
|
|
401
436
|
|
|
402
437
|
render(
|
|
@@ -408,9 +443,9 @@ test('Cells on <Table /> are interactive', () => {
|
|
|
408
443
|
);
|
|
409
444
|
|
|
410
445
|
const firstRow = document.querySelector('.reqore-table-row');
|
|
411
|
-
const firstCheckCell = firstRow
|
|
446
|
+
const firstCheckCell = firstRow!.querySelector('.reqore-table-cell');
|
|
412
447
|
|
|
413
|
-
fireEvent.click(firstCheckCell);
|
|
448
|
+
fireEvent.click(firstCheckCell!);
|
|
414
449
|
|
|
415
450
|
expect(fn).toHaveBeenCalledWith(1);
|
|
416
451
|
});
|
|
@@ -30,6 +30,8 @@ export interface IReqoreButtonProps extends React.HTMLAttributes<HTMLButtonEleme
|
|
|
30
30
|
descriptionEffect?: IReqoreEffect;
|
|
31
31
|
label?: React.HTMLAttributes<HTMLButtonElement>['children'];
|
|
32
32
|
as?: string | React.ElementType;
|
|
33
|
+
grow?: 1 | 2 | 3 | 4;
|
|
34
|
+
rounded?: boolean;
|
|
33
35
|
}
|
|
34
36
|
export interface IReqoreButtonStyle extends Omit<IReqoreButtonProps, 'intent'> {
|
|
35
37
|
theme: IReqoreTheme;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAEhF,OAAO,EAML,MAAM,EACP,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAezE,OAAO,EACL,eAAe,EACf,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,aAAa,EAIb,kBAAkB,EAClB,eAAe,EAChB,MAAM,WAAW,CAAC;AAGnB,OAAkB,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAGpD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,eAAe,CAAC;AAE7D,MAAM,WAAW,kBACf,SAAQ,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAC7C,eAAe,EACf,aAAa,EACb,eAAe,EACf,iBAAiB;IACnB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACxC,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC,KAAK,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5D,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Button/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -77,7 +77,7 @@ var getButtonMainColor = function (theme, color) {
|
|
|
77
77
|
}
|
|
78
78
|
return theme.main;
|
|
79
79
|
};
|
|
80
|
-
exports.StyledAnimatedTextWrapper = styled_components_1["default"].span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n overflow: hidden;\n position: relative;\n text-align: ", ";\n display: flex;\n flex-flow: column;\n align-items: ", ";\n"], ["\n overflow: hidden;\n position: relative;\n text-align: ", ";\n display: flex;\n flex-flow: column;\n align-items: ", ";\n"])), function (_a) {
|
|
80
|
+
exports.StyledAnimatedTextWrapper = styled_components_1["default"].span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n min-width: 5px;\n overflow: hidden;\n position: relative;\n text-align: ", ";\n display: flex;\n flex-flow: column;\n align-items: ", ";\n"], ["\n min-width: 5px;\n overflow: hidden;\n position: relative;\n text-align: ", ";\n display: flex;\n flex-flow: column;\n align-items: ", ";\n"])), function (_a) {
|
|
81
81
|
var textAlign = _a.textAlign;
|
|
82
82
|
return textAlign;
|
|
83
83
|
}, function (_a) {
|
|
@@ -99,7 +99,7 @@ exports.StyledInvisibleContent = (0, styled_components_1["default"])(Effect_1.St
|
|
|
99
99
|
return !wrap
|
|
100
100
|
? (0, styled_components_1.css)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n white-space: nowrap;\n "], ["\n white-space: nowrap;\n "]))) : (0, styled_components_1.css)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n word-break: break-word;\n "], ["\n word-break: break-word;\n "])));
|
|
101
101
|
});
|
|
102
|
-
exports.StyledButton = (0, styled_components_1["default"])(Effect_1.StyledEffect)(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n display: flex;\n flex-flow: column;\n justify-content: center;\n margin: 0;\n font-weight: 600;\n position: relative;\n overflow: hidden;\n vertical-align: middle;\n border: ", ";\n padding: 0 ", "px;\n font-size: ", "px;\n\n min-height: ", "px;\n min-width: ", "px;\n max-width: ", ";\n ", "\n\n flex: ", ";\n align-self: ", ";\n\n border-radius: ", "px;\n\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n ", "\n\n ", "\n\n &:disabled {\n ", ";\n }\n\n &:focus,\n &:active {\n outline: none;\n }\n\n &:focus {\n border-color: ", ";\n }\n\n .reqore-button-description {\n padding-bottom: ", "px;\n }\n"], ["\n display: flex;\n flex-flow: column;\n justify-content: center;\n margin: 0;\n font-weight: 600;\n position: relative;\n overflow: hidden;\n vertical-align: middle;\n border: ", ";\n padding: 0 ", "px;\n font-size: ", "px;\n\n min-height: ", "px;\n min-width: ", "px;\n max-width: ", ";\n ", "\n\n flex: ", ";\n align-self: ", ";\n\n border-radius: ", "px;\n\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n ", "\n\n ", "\n\n &:disabled {\n ", ";\n }\n\n &:focus,\n &:active {\n outline: none;\n }\n\n &:focus {\n border-color: ", ";\n }\n\n .reqore-button-description {\n padding-bottom: ", "px;\n }\n"])), function (_a) {
|
|
102
|
+
exports.StyledButton = (0, styled_components_1["default"])(Effect_1.StyledEffect)(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n display: flex;\n flex-flow: column;\n justify-content: center;\n margin: 0;\n font-weight: 600;\n position: relative;\n overflow: hidden;\n vertical-align: middle;\n border: ", ";\n padding: 0 ", "px;\n font-size: ", "px;\n\n min-height: ", "px;\n min-width: ", "px;\n max-width: ", ";\n ", "\n\n flex: ", ";\n flex-grow: ", ";\n align-self: ", ";\n\n border-radius: ", "px;\n\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n ", "\n\n ", "\n\n &:disabled {\n ", ";\n }\n\n &:focus,\n &:active {\n outline: none;\n }\n\n &:focus {\n border-color: ", ";\n }\n\n .reqore-button-description {\n padding-bottom: ", "px;\n }\n"], ["\n display: flex;\n flex-flow: column;\n justify-content: center;\n margin: 0;\n font-weight: 600;\n position: relative;\n overflow: hidden;\n vertical-align: middle;\n border: ", ";\n padding: 0 ", "px;\n font-size: ", "px;\n\n min-height: ", "px;\n min-width: ", "px;\n max-width: ", ";\n ", "\n\n flex: ", ";\n flex-grow: ", ";\n align-self: ", ";\n\n border-radius: ", "px;\n\n background-color: ", ";\n\n color: ", ";\n\n ", "\n\n ", "\n\n ", "\n\n &:disabled {\n ", ";\n }\n\n &:focus,\n &:active {\n outline: none;\n }\n\n &:focus {\n border-color: ", ";\n }\n\n .reqore-button-description {\n padding-bottom: ", "px;\n }\n"])), function (_a) {
|
|
103
103
|
var theme = _a.theme, color = _a.color, flat = _a.flat;
|
|
104
104
|
return !flat ? "1px solid ".concat((0, colors_1.changeLightness)(getButtonMainColor(theme, color), 0.2)) : 0;
|
|
105
105
|
}, function (_a) {
|
|
@@ -127,12 +127,15 @@ exports.StyledButton = (0, styled_components_1["default"])(Effect_1.StyledEffect
|
|
|
127
127
|
}, function (_a) {
|
|
128
128
|
var fluid = _a.fluid, fixed = _a.fixed;
|
|
129
129
|
return (fixed ? '0 0 auto' : fluid ? '1 auto' : '0 0 auto');
|
|
130
|
+
}, function (_a) {
|
|
131
|
+
var grow = _a.grow;
|
|
132
|
+
return grow;
|
|
130
133
|
}, function (_a) {
|
|
131
134
|
var fixed = _a.fixed, fluid = _a.fluid;
|
|
132
135
|
return (fixed ? 'flex-start' : fluid ? 'stretch' : undefined);
|
|
133
136
|
}, function (_a) {
|
|
134
|
-
var size = _a.size;
|
|
135
|
-
return sizes_1.RADIUS_FROM_SIZE[size];
|
|
137
|
+
var size = _a.size, rounded = _a.rounded;
|
|
138
|
+
return rounded === false ? undefined : sizes_1.RADIUS_FROM_SIZE[size];
|
|
136
139
|
}, function (_a) {
|
|
137
140
|
var minimal = _a.minimal, color = _a.color;
|
|
138
141
|
if (minimal) {
|