@coveord/plasma-mantine 49.3.5 → 49.4.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/.turbo/turbo-build.log +3 -3
- package/.turbo/turbo-test.log +29 -29
- package/dist/.tsbuildinfo +1 -1
- package/dist/cjs/components/table/Table.js +8 -10
- package/dist/cjs/components/table/Table.js.map +1 -1
- package/dist/cjs/components/table/Table.types.js +6 -0
- package/dist/cjs/components/table/Table.types.js.map +1 -0
- package/dist/cjs/components/table/TableActions.js +3 -3
- package/dist/cjs/components/table/TableActions.js.map +1 -1
- package/dist/cjs/components/table/TableContext.js +18 -3
- package/dist/cjs/components/table/TableContext.js.map +1 -1
- package/dist/cjs/components/table/TableDateRangePicker.js +2 -2
- package/dist/cjs/components/table/TableDateRangePicker.js.map +1 -1
- package/dist/cjs/components/table/TableFilter.js +2 -2
- package/dist/cjs/components/table/TableFilter.js.map +1 -1
- package/dist/cjs/components/table/TableHeader.js +2 -2
- package/dist/cjs/components/table/TableHeader.js.map +1 -1
- package/dist/cjs/components/table/TablePagination.js +2 -2
- package/dist/cjs/components/table/TablePagination.js.map +1 -1
- package/dist/cjs/components/table/TablePerPage.js +2 -2
- package/dist/cjs/components/table/TablePerPage.js.map +1 -1
- package/dist/cjs/components/table/TablePredicate.js +2 -2
- package/dist/cjs/components/table/TablePredicate.js.map +1 -1
- package/dist/cjs/components/table/index.js +7 -1
- package/dist/cjs/components/table/index.js.map +1 -1
- package/dist/cjs/components/table/useRowSelection.js +27 -17
- package/dist/cjs/components/table/useRowSelection.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/definitions/components/table/Table.d.ts +1 -98
- package/dist/definitions/components/table/Table.d.ts.map +1 -1
- package/dist/definitions/components/table/Table.types.d.ts +177 -0
- package/dist/definitions/components/table/Table.types.d.ts.map +1 -0
- package/dist/definitions/components/table/TableActions.d.ts.map +1 -1
- package/dist/definitions/components/table/TableContext.d.ts +4 -71
- package/dist/definitions/components/table/TableContext.d.ts.map +1 -1
- package/dist/definitions/components/table/TableFilter.d.ts.map +1 -1
- package/dist/definitions/components/table/TablePagination.d.ts.map +1 -1
- package/dist/definitions/components/table/TablePerPage.d.ts.map +1 -1
- package/dist/definitions/components/table/TablePredicate.d.ts.map +1 -1
- package/dist/definitions/components/table/index.d.ts +2 -2
- package/dist/definitions/components/table/index.d.ts.map +1 -1
- package/dist/definitions/components/table/useRowSelection.d.ts +4 -1
- package/dist/definitions/components/table/useRowSelection.d.ts.map +1 -1
- package/dist/definitions/index.d.ts +1 -1
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/esm/components/table/Table.js +9 -11
- package/dist/esm/components/table/Table.js.map +1 -1
- package/dist/esm/components/table/Table.types.js +3 -0
- package/dist/esm/components/table/Table.types.js.map +1 -0
- package/dist/esm/components/table/TableActions.js +2 -2
- package/dist/esm/components/table/TableActions.js.map +1 -1
- package/dist/esm/components/table/TableContext.js +8 -1
- package/dist/esm/components/table/TableContext.js.map +1 -1
- package/dist/esm/components/table/TableDateRangePicker.js +1 -1
- package/dist/esm/components/table/TableDateRangePicker.js.map +1 -1
- package/dist/esm/components/table/TableFilter.js +1 -1
- package/dist/esm/components/table/TableFilter.js.map +1 -1
- package/dist/esm/components/table/TableHeader.js +1 -1
- package/dist/esm/components/table/TableHeader.js.map +1 -1
- package/dist/esm/components/table/TablePagination.js +1 -1
- package/dist/esm/components/table/TablePagination.js.map +1 -1
- package/dist/esm/components/table/TablePerPage.js +1 -1
- package/dist/esm/components/table/TablePerPage.js.map +1 -1
- package/dist/esm/components/table/TablePredicate.js +2 -2
- package/dist/esm/components/table/TablePredicate.js.map +1 -1
- package/dist/esm/components/table/index.js +1 -1
- package/dist/esm/components/table/index.js.map +1 -1
- package/dist/esm/components/table/useRowSelection.js +26 -17
- package/dist/esm/components/table/useRowSelection.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/package.json +5 -4
- package/src/components/table/Table.tsx +16 -117
- package/src/components/table/Table.types.ts +203 -0
- package/src/components/table/TableActions.tsx +10 -3
- package/src/components/table/TableContext.tsx +9 -70
- package/src/components/table/TableDateRangePicker.tsx +1 -1
- package/src/components/table/TableFilter.tsx +2 -3
- package/src/components/table/TableHeader.tsx +1 -1
- package/src/components/table/TablePagination.tsx +3 -3
- package/src/components/table/TablePerPage.tsx +2 -3
- package/src/components/table/TablePredicate.tsx +3 -2
- package/src/components/table/__tests__/Table.spec.tsx +59 -22
- package/src/components/table/index.ts +2 -2
- package/src/components/table/useRowSelection.ts +36 -21
- package/src/index.ts +2 -0
- package/dist/cjs/components/table/useTable.js +0 -21
- package/dist/cjs/components/table/useTable.js.map +0 -1
- package/dist/definitions/components/table/useTable.d.ts +0 -16
- package/dist/definitions/components/table/useTable.d.ts.map +0 -1
- package/dist/esm/components/table/useTable.js +0 -11
- package/dist/esm/components/table/useTable.js.map +0 -1
- package/src/components/table/useTable.tsx +0 -11
|
@@ -3,9 +3,9 @@ import {render, screen, userEvent, waitFor, within} from '@test-utils';
|
|
|
3
3
|
import {FunctionComponent} from 'react';
|
|
4
4
|
|
|
5
5
|
import {Table} from '../Table';
|
|
6
|
-
import {useTable} from '../
|
|
6
|
+
import {useTable} from '../TableContext';
|
|
7
7
|
|
|
8
|
-
type RowData = {firstName: string; lastName?: string};
|
|
8
|
+
type RowData = {id: string; firstName: string; lastName?: string};
|
|
9
9
|
|
|
10
10
|
const columnHelper = createColumnHelper<RowData>();
|
|
11
11
|
const columns: Array<ColumnDef<RowData>> = [
|
|
@@ -15,7 +15,13 @@ const columns: Array<ColumnDef<RowData>> = [
|
|
|
15
15
|
|
|
16
16
|
describe('Table', () => {
|
|
17
17
|
it('renders the data', () => {
|
|
18
|
-
render(
|
|
18
|
+
render(
|
|
19
|
+
<Table
|
|
20
|
+
getRowId={({id}) => id}
|
|
21
|
+
data={[{id: '🆔', firstName: 'first', lastName: 'last'}]}
|
|
22
|
+
columns={columns}
|
|
23
|
+
/>
|
|
24
|
+
);
|
|
19
25
|
|
|
20
26
|
expect(screen.getByRole('columnheader', {name: 'firstName'})).toBeVisible();
|
|
21
27
|
expect(screen.getByRole('columnheader', {name: 'lastName'})).toBeVisible();
|
|
@@ -45,7 +51,7 @@ describe('Table', () => {
|
|
|
45
51
|
enableSorting: false,
|
|
46
52
|
}),
|
|
47
53
|
];
|
|
48
|
-
render(<Table data={[{firstName: 'first', lastName: 'last'}]} columns={customColumns} />);
|
|
54
|
+
render(<Table data={[{id: '🆔', firstName: 'first', lastName: 'last'}]} columns={customColumns} />);
|
|
49
55
|
|
|
50
56
|
expect(screen.getByRole('columnheader', {name: 'First Name'})).toBeVisible();
|
|
51
57
|
expect(screen.getByRole('columnheader', {name: 'Last Name'})).toBeVisible();
|
|
@@ -141,7 +147,8 @@ describe('Table', () => {
|
|
|
141
147
|
];
|
|
142
148
|
render(
|
|
143
149
|
<Table
|
|
144
|
-
|
|
150
|
+
getRowId={({id}) => id}
|
|
151
|
+
data={[{id: '🆔', firstName: 'first', lastName: 'last'}]}
|
|
145
152
|
getExpandChildren={(row: RowData) => <Fixture row={row} />}
|
|
146
153
|
columns={customColumns}
|
|
147
154
|
/>
|
|
@@ -172,10 +179,11 @@ describe('Table', () => {
|
|
|
172
179
|
];
|
|
173
180
|
render(
|
|
174
181
|
<Table
|
|
182
|
+
getRowId={({id}) => id}
|
|
175
183
|
data={[
|
|
176
|
-
{firstName: 'Luke', lastName: 'Skywalker'},
|
|
177
|
-
{firstName: 'Lea', lastName: 'Skywalker'},
|
|
178
|
-
{firstName: 'Han', lastName: 'Solo'},
|
|
184
|
+
{id: '🆔-1', firstName: 'Luke', lastName: 'Skywalker'},
|
|
185
|
+
{id: '🆔-2', firstName: 'Lea', lastName: 'Skywalker'},
|
|
186
|
+
{id: '🆔-3', firstName: 'Han', lastName: 'Solo'},
|
|
179
187
|
]}
|
|
180
188
|
getExpandChildren={(row: RowData) => (row.lastName === 'Skywalker' ? <Fixture row={row} /> : null)}
|
|
181
189
|
columns={customColumns}
|
|
@@ -200,9 +208,10 @@ describe('Table', () => {
|
|
|
200
208
|
];
|
|
201
209
|
render(
|
|
202
210
|
<Table
|
|
211
|
+
getRowId={({id}) => id}
|
|
203
212
|
data={[
|
|
204
|
-
{firstName: 'Jack', lastName: 'Russel'},
|
|
205
|
-
{firstName: 'Golden', lastName: 'Retriever'},
|
|
213
|
+
{id: '🆔-1', firstName: 'Jack', lastName: 'Russel'},
|
|
214
|
+
{id: '🆔-2', firstName: 'Golden', lastName: 'Retriever'},
|
|
206
215
|
]}
|
|
207
216
|
getExpandChildren={(row: RowData) => <Fixture row={row} />}
|
|
208
217
|
columns={customColumns}
|
|
@@ -234,14 +243,18 @@ describe('Table', () => {
|
|
|
234
243
|
const doubleClickSpy = vi.fn();
|
|
235
244
|
render(
|
|
236
245
|
<Table<RowData>
|
|
237
|
-
|
|
246
|
+
getRowId={({id}) => id}
|
|
247
|
+
data={[
|
|
248
|
+
{id: '🆔-1', firstName: 'Mario'},
|
|
249
|
+
{id: '🆔-2', firstName: 'Luigi'},
|
|
250
|
+
]}
|
|
238
251
|
columns={columns}
|
|
239
252
|
doubleClickAction={doubleClickSpy}
|
|
240
253
|
></Table>
|
|
241
254
|
);
|
|
242
255
|
await user.dblClick(screen.getByRole('cell', {name: 'Mario'}));
|
|
243
256
|
expect(doubleClickSpy).toHaveBeenCalledTimes(1);
|
|
244
|
-
expect(doubleClickSpy).toHaveBeenCalledWith({firstName: 'Mario'});
|
|
257
|
+
expect(doubleClickSpy).toHaveBeenCalledWith({id: '🆔-1', firstName: 'Mario'});
|
|
245
258
|
});
|
|
246
259
|
|
|
247
260
|
it('reset row selection when user click outside the table', async () => {
|
|
@@ -250,9 +263,10 @@ describe('Table', () => {
|
|
|
250
263
|
<div>
|
|
251
264
|
<div>I'm a header</div>
|
|
252
265
|
<Table
|
|
266
|
+
getRowId={({id}) => id}
|
|
253
267
|
data={[
|
|
254
|
-
{firstName: 'first', lastName: 'last'},
|
|
255
|
-
{firstName: 'patate', lastName: 'king'},
|
|
268
|
+
{id: '🆔-1', firstName: 'first', lastName: 'last'},
|
|
269
|
+
{id: '🆔-2', firstName: 'patate', lastName: 'king'},
|
|
256
270
|
]}
|
|
257
271
|
columns={columns}
|
|
258
272
|
/>
|
|
@@ -276,9 +290,10 @@ describe('Table', () => {
|
|
|
276
290
|
it('displays a checkbox as the first cell of each row', () => {
|
|
277
291
|
render(
|
|
278
292
|
<Table
|
|
293
|
+
getRowId={({id}) => id}
|
|
279
294
|
data={[
|
|
280
|
-
{firstName: 'John', lastName: 'Smith'},
|
|
281
|
-
{firstName: 'Jane', lastName: 'Doe'},
|
|
295
|
+
{id: '🆔-1', firstName: 'John', lastName: 'Smith'},
|
|
296
|
+
{id: '🆔-2', firstName: 'Jane', lastName: 'Doe'},
|
|
282
297
|
]}
|
|
283
298
|
columns={columns}
|
|
284
299
|
multiRowSelectionEnabled
|
|
@@ -293,13 +308,33 @@ describe('Table', () => {
|
|
|
293
308
|
});
|
|
294
309
|
});
|
|
295
310
|
|
|
311
|
+
it('selects the rows specified in the initial state on mount', () => {
|
|
312
|
+
render(
|
|
313
|
+
<Table
|
|
314
|
+
getRowId={({id}) => id}
|
|
315
|
+
data={[
|
|
316
|
+
{id: '🆔-1', firstName: 'John', lastName: 'Smith'},
|
|
317
|
+
{id: '🆔-2', firstName: 'Jane', lastName: 'Doe'},
|
|
318
|
+
]}
|
|
319
|
+
columns={columns}
|
|
320
|
+
multiRowSelectionEnabled
|
|
321
|
+
initialState={{
|
|
322
|
+
rowSelection: {'🆔-2': {id: '🆔-2', firstName: 'Jane', lastName: 'Doe'}},
|
|
323
|
+
}}
|
|
324
|
+
/>
|
|
325
|
+
);
|
|
326
|
+
|
|
327
|
+
expect(screen.getByRole('row', {name: /jane doe/i, selected: true})).toBeInTheDocument();
|
|
328
|
+
});
|
|
329
|
+
|
|
296
330
|
it('selects all rows of the current page when clicking on the checkbox that is in the column header', async () => {
|
|
297
331
|
const user = userEvent.setup({delay: null});
|
|
298
332
|
render(
|
|
299
333
|
<Table
|
|
334
|
+
getRowId={({id}) => id}
|
|
300
335
|
data={[
|
|
301
|
-
{firstName: 'John', lastName: 'Smith'},
|
|
302
|
-
{firstName: 'Jane', lastName: 'Doe'},
|
|
336
|
+
{id: '🆔-1', firstName: 'John', lastName: 'Smith'},
|
|
337
|
+
{id: '🆔-2', firstName: 'Jane', lastName: 'Doe'},
|
|
303
338
|
]}
|
|
304
339
|
columns={columns}
|
|
305
340
|
multiRowSelectionEnabled
|
|
@@ -321,9 +356,10 @@ describe('Table', () => {
|
|
|
321
356
|
<div>
|
|
322
357
|
<div>I'm a header</div>
|
|
323
358
|
<Table
|
|
359
|
+
getRowId={({id}) => id}
|
|
324
360
|
data={[
|
|
325
|
-
{firstName: 'first', lastName: 'last'},
|
|
326
|
-
{firstName: 'patate', lastName: 'king'},
|
|
361
|
+
{id: '🆔-1', firstName: 'first', lastName: 'last'},
|
|
362
|
+
{id: '🆔-2', firstName: 'patate', lastName: 'king'},
|
|
327
363
|
]}
|
|
328
364
|
columns={columns}
|
|
329
365
|
multiRowSelectionEnabled
|
|
@@ -348,9 +384,10 @@ describe('Table', () => {
|
|
|
348
384
|
const user = userEvent.setup({delay: null});
|
|
349
385
|
render(
|
|
350
386
|
<Table
|
|
387
|
+
getRowId={({id}) => id}
|
|
351
388
|
data={[
|
|
352
|
-
{firstName: 'John', lastName: 'Smith'},
|
|
353
|
-
{firstName: 'Jane', lastName: 'Doe'},
|
|
389
|
+
{id: '🆔-1', firstName: 'John', lastName: 'Smith'},
|
|
390
|
+
{id: '🆔-2', firstName: 'Jane', lastName: 'Doe'},
|
|
354
391
|
]}
|
|
355
392
|
columns={columns}
|
|
356
393
|
multiRowSelectionEnabled
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './Table';
|
|
2
|
-
export {
|
|
3
|
-
export
|
|
2
|
+
export {useTable} from './TableContext';
|
|
3
|
+
export {type onTableChangeEvent, type InitialTableState, type TableState, type TableProps} from './Table.types';
|
|
@@ -1,29 +1,48 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import {useClickOutside} from '@mantine/hooks';
|
|
2
|
+
import {functionalUpdate, RowSelectionState, Table} from '@tanstack/table-core';
|
|
3
|
+
import isEqual from 'fast-deep-equal';
|
|
3
4
|
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
import {RowSelectionWithData, TableProps, TableState} from './Table.types';
|
|
6
|
+
|
|
7
|
+
export const useRowSelection = <T>(
|
|
8
|
+
table: Table<T>,
|
|
9
|
+
{multiRowSelectionEnabled}: Pick<TableProps<T>, 'multiRowSelectionEnabled'>
|
|
10
|
+
) => {
|
|
11
|
+
const outsideClickRef = useClickOutside(() => {
|
|
12
|
+
if (!multiRowSelectionEnabled) {
|
|
13
|
+
clearSelection();
|
|
14
|
+
}
|
|
15
|
+
});
|
|
6
16
|
|
|
7
17
|
table.setOptions((prev) => ({
|
|
8
18
|
...prev,
|
|
9
19
|
onRowSelectionChange: (rowSelectionUpdater) => {
|
|
10
20
|
table.setState((old) => {
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
21
|
+
const newRowSelection = functionalUpdate(
|
|
22
|
+
rowSelectionUpdater,
|
|
23
|
+
old['rowSelection']
|
|
24
|
+
) as RowSelectionWithData<T>;
|
|
25
|
+
|
|
26
|
+
if (isEqual(old['rowSelection'], newRowSelection)) {
|
|
27
|
+
return old;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const rows = table.getRowModel().rowsById;
|
|
31
|
+
|
|
32
|
+
Object.keys(newRowSelection).forEach((rowId) => {
|
|
33
|
+
if (newRowSelection[rowId] === true) {
|
|
34
|
+
if (!rows[rowId]) {
|
|
35
|
+
console.error(
|
|
36
|
+
'The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.'
|
|
37
|
+
);
|
|
19
38
|
}
|
|
20
|
-
|
|
21
|
-
}
|
|
39
|
+
newRowSelection[rowId] = rows[rowId]?.original ?? (true as T);
|
|
40
|
+
}
|
|
22
41
|
});
|
|
23
42
|
|
|
24
43
|
return {
|
|
25
44
|
...old,
|
|
26
|
-
rowSelection:
|
|
45
|
+
rowSelection: newRowSelection as RowSelectionState,
|
|
27
46
|
};
|
|
28
47
|
});
|
|
29
48
|
},
|
|
@@ -33,13 +52,9 @@ export const useRowSelection = <T>(table: Table<T>) => {
|
|
|
33
52
|
table.resetRowSelection(true);
|
|
34
53
|
};
|
|
35
54
|
|
|
36
|
-
const getSelectedRows = () => Object.values(rowSelection);
|
|
55
|
+
const getSelectedRows = () => Object.values((table.getState() as TableState<T>).rowSelection);
|
|
37
56
|
|
|
38
57
|
const getSelectedRow = () => getSelectedRows()[0] ?? null;
|
|
39
58
|
|
|
40
|
-
return {
|
|
41
|
-
clearSelection,
|
|
42
|
-
getSelectedRow,
|
|
43
|
-
getSelectedRows,
|
|
44
|
-
};
|
|
59
|
+
return {clearSelection, getSelectedRow, getSelectedRows, outsideClickRef};
|
|
45
60
|
};
|
package/src/index.ts
CHANGED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "useTable", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return useTable;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _react = require("react");
|
|
12
|
-
var _tableContext = require("./TableContext");
|
|
13
|
-
var useTable = function() {
|
|
14
|
-
var ctx = (0, _react.useContext)(_tableContext.TableContext);
|
|
15
|
-
if (ctx === null) {
|
|
16
|
-
throw new Error("useTable must be used inside of a TableContext.Provider");
|
|
17
|
-
}
|
|
18
|
-
return ctx;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
//# sourceMappingURL=useTable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/table/useTable.tsx"],"sourcesContent":["import {useContext} from 'react';\nimport {TableContext} from './TableContext';\n\nexport const useTable = () => {\n const ctx = useContext(TableContext);\n if (ctx === null) {\n throw new Error('useTable must be used inside of a TableContext.Provider');\n }\n\n return ctx;\n};\n"],"names":["useTable","ctx","useContext","TableContext","Error"],"mappings":";;;;+BAGaA;;;eAAAA;;;qBAHY;4BACE;AAEpB,IAAMA,WAAW,WAAM;IAC1B,IAAMC,MAAMC,IAAAA,iBAAU,EAACC,0BAAY;IACnC,IAAIF,QAAQ,IAAI,EAAE;QACd,MAAM,IAAIG,MAAM,2DAA2D;IAC/E,CAAC;IAED,OAAOH;AACX"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
export declare const useTable: () => {
|
|
3
|
-
onChange: () => void;
|
|
4
|
-
state: import("@tanstack/table-core").TableState;
|
|
5
|
-
setState: import("react").Dispatch<(prevState: import("@tanstack/table-core").TableState) => import("@tanstack/table-core").TableState>;
|
|
6
|
-
isFiltered: boolean;
|
|
7
|
-
clearFilters: () => void;
|
|
8
|
-
getSelectedRow: () => any;
|
|
9
|
-
getSelectedRows: () => any[];
|
|
10
|
-
clearSelection: () => void;
|
|
11
|
-
form: import("@mantine/form").UseFormReturnType<import("./TableContext").TableFormType, (values: import("./TableContext").TableFormType) => import("./TableContext").TableFormType>;
|
|
12
|
-
containerRef: import("react").RefObject<HTMLDivElement>;
|
|
13
|
-
multiRowSelectionEnabled: boolean;
|
|
14
|
-
getPageCount: () => number;
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=useTable.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../../../src/components/table/useTable.tsx"],"names":[],"mappings":";AAGA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;CAOpB,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { useContext } from "react";
|
|
2
|
-
import { TableContext } from "./TableContext";
|
|
3
|
-
export var useTable = function() {
|
|
4
|
-
var ctx = useContext(TableContext);
|
|
5
|
-
if (ctx === null) {
|
|
6
|
-
throw new Error("useTable must be used inside of a TableContext.Provider");
|
|
7
|
-
}
|
|
8
|
-
return ctx;
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=useTable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/table/useTable.tsx"],"sourcesContent":["import {useContext} from 'react';\nimport {TableContext} from './TableContext';\n\nexport const useTable = () => {\n const ctx = useContext(TableContext);\n if (ctx === null) {\n throw new Error('useTable must be used inside of a TableContext.Provider');\n }\n\n return ctx;\n};\n"],"names":["useContext","TableContext","useTable","ctx","Error"],"mappings":"AAAA,SAAQA,UAAU,QAAO,QAAQ;AACjC,SAAQC,YAAY,QAAO,iBAAiB;AAE5C,OAAO,IAAMC,WAAW,WAAM;IAC1B,IAAMC,MAAMH,WAAWC;IACvB,IAAIE,QAAQ,IAAI,EAAE;QACd,MAAM,IAAIC,MAAM,2DAA2D;IAC/E,CAAC;IAED,OAAOD;AACX,EAAE"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import {useContext} from 'react';
|
|
2
|
-
import {TableContext} from './TableContext';
|
|
3
|
-
|
|
4
|
-
export const useTable = () => {
|
|
5
|
-
const ctx = useContext(TableContext);
|
|
6
|
-
if (ctx === null) {
|
|
7
|
-
throw new Error('useTable must be used inside of a TableContext.Provider');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
return ctx;
|
|
11
|
-
};
|