@nuralyui/table 0.0.3 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/bundle.js +2351 -0
  2. package/package.json +16 -2
  3. package/react.js +2 -2
  4. package/react.js.map +1 -1
  5. package/table.component.d.ts +112 -12
  6. package/table.component.js +285 -136
  7. package/table.component.js.map +1 -1
  8. package/table.style.js +676 -2
  9. package/table.style.js.map +1 -1
  10. package/table.types.d.ts +60 -4
  11. package/table.types.js +0 -23
  12. package/table.types.js.map +1 -1
  13. package/components/hy-table-actions.d.ts +0 -10
  14. package/components/hy-table-actions.d.ts.map +0 -1
  15. package/components/hy-table-actions.js +0 -39
  16. package/components/hy-table-actions.js.map +0 -1
  17. package/components/hy-table-content.d.ts +0 -25
  18. package/components/hy-table-content.d.ts.map +0 -1
  19. package/components/hy-table-content.js +0 -168
  20. package/components/hy-table-content.js.map +0 -1
  21. package/components/hy-table-filter.d.ts +0 -11
  22. package/components/hy-table-filter.d.ts.map +0 -1
  23. package/components/hy-table-filter.js +0 -59
  24. package/components/hy-table-filter.js.map +0 -1
  25. package/components/hy-table-pagination.d.ts +0 -21
  26. package/components/hy-table-pagination.d.ts.map +0 -1
  27. package/components/hy-table-pagination.js +0 -111
  28. package/components/hy-table-pagination.js.map +0 -1
  29. package/components/table-actions.style.d.ts +0 -2
  30. package/components/table-actions.style.d.ts.map +0 -1
  31. package/components/table-actions.style.js +0 -31
  32. package/components/table-actions.style.js.map +0 -1
  33. package/components/table-actions.variables.d.ts +0 -2
  34. package/components/table-actions.variables.d.ts.map +0 -1
  35. package/components/table-actions.variables.js +0 -13
  36. package/components/table-actions.variables.js.map +0 -1
  37. package/components/table-content.style.d.ts +0 -2
  38. package/components/table-content.style.d.ts.map +0 -1
  39. package/components/table-content.style.js +0 -77
  40. package/components/table-content.style.js.map +0 -1
  41. package/components/table-content.variables.d.ts +0 -2
  42. package/components/table-content.variables.d.ts.map +0 -1
  43. package/components/table-content.variables.js +0 -29
  44. package/components/table-content.variables.js.map +0 -1
  45. package/components/table-filter.style.d.ts +0 -2
  46. package/components/table-filter.style.d.ts.map +0 -1
  47. package/components/table-filter.style.js +0 -39
  48. package/components/table-filter.style.js.map +0 -1
  49. package/components/table-filter.variables.d.ts +0 -2
  50. package/components/table-filter.variables.d.ts.map +0 -1
  51. package/components/table-filter.variables.js +0 -17
  52. package/components/table-filter.variables.js.map +0 -1
  53. package/components/table-pagination.style.d.ts +0 -2
  54. package/components/table-pagination.style.d.ts.map +0 -1
  55. package/components/table-pagination.style.js +0 -102
  56. package/components/table-pagination.style.js.map +0 -1
  57. package/components/table-pagination.variables.d.ts +0 -2
  58. package/components/table-pagination.variables.d.ts.map +0 -1
  59. package/components/table-pagination.variables.js +0 -17
  60. package/components/table-pagination.variables.js.map +0 -1
  61. package/demo/table-demo.d.ts +0 -17
  62. package/demo/table-demo.d.ts.map +0 -1
  63. package/demo/table-demo.js +0 -166
  64. package/demo/table-demo.js.map +0 -1
  65. package/index.d.ts.map +0 -1
  66. package/react.d.ts.map +0 -1
  67. package/table.component.d.ts.map +0 -1
  68. package/table.style.d.ts.map +0 -1
  69. package/table.types.d.ts.map +0 -1
  70. package/test/hy-table-actions_test.d.ts +0 -2
  71. package/test/hy-table-actions_test.d.ts.map +0 -1
  72. package/test/hy-table-actions_test.js +0 -32
  73. package/test/hy-table-actions_test.js.map +0 -1
  74. package/test/hy-table-content_test.d.ts +0 -2
  75. package/test/hy-table-content_test.d.ts.map +0 -1
  76. package/test/hy-table-content_test.js +0 -168
  77. package/test/hy-table-content_test.js.map +0 -1
  78. package/test/hy-table-filter_test.d.ts +0 -2
  79. package/test/hy-table-filter_test.d.ts.map +0 -1
  80. package/test/hy-table-filter_test.js +0 -80
  81. package/test/hy-table-filter_test.js.map +0 -1
  82. package/test/hy-table-pagination_test.d.ts +0 -2
  83. package/test/hy-table-pagination_test.d.ts.map +0 -1
  84. package/test/hy-table-pagination_test.js +0 -114
  85. package/test/hy-table-pagination_test.js.map +0 -1
  86. package/test/hy-table_test.d.ts +0 -2
  87. package/test/hy-table_test.d.ts.map +0 -1
  88. package/test/hy-table_test.js +0 -145
  89. package/test/hy-table_test.js.map +0 -1
@@ -1,114 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import { html, fixture, expect } from '@open-wc/testing';
11
- import '../components/hy-table-pagination';
12
- import { Sizes } from '../table.types';
13
- suite('HyTablePagination', () => {
14
- test('init pagination', () => __awaiter(void 0, void 0, void 0, function* () {
15
- const numberOfItems = 100;
16
- const itemPerPage = [5, 10, 15];
17
- const selectedItemPerPage = itemPerPage[0];
18
- const currentPage = 1;
19
- const size = Sizes.Normal;
20
- const el = yield fixture(html `<hy-table-pagination
21
- .numberOfItems=${numberOfItems}
22
- .itemPerPage=${itemPerPage}
23
- .selectedItemPerPage=${selectedItemPerPage}
24
- .currentPage=${currentPage}
25
- .size=${size}
26
- ></hy-table-pagination>`);
27
- expect(el.numberOfItems).to.equal(numberOfItems);
28
- expect(el.itemPerPage).to.equal(itemPerPage);
29
- expect(el.selectedItemPerPage).to.equal(selectedItemPerPage);
30
- expect(el.currentPage).to.equal(currentPage);
31
- expect(el.size).to.equal(size);
32
- expect(el.numberOfPages).to.equal(20);
33
- expect(el.fromItem).to.equal(1);
34
- expect(el.toItem).to.equal(5);
35
- expect(el.enablePrevious).to.be.false;
36
- expect(el.enableNext).to.be.true;
37
- }));
38
- test('handles item per page change', () => __awaiter(void 0, void 0, void 0, function* () {
39
- const numberOfItems = 100;
40
- const itemPerPage = [10, 20, 50];
41
- const selectedItemPerPage = itemPerPage[0];
42
- const currentPage = 1;
43
- const el = yield fixture(html `<hy-table-pagination
44
- .numberOfItems=${numberOfItems}
45
- .itemPerPage=${itemPerPage}
46
- .selectedItemPerPage=${selectedItemPerPage}
47
- .currentPage=${currentPage}
48
- ></hy-table-pagination>`);
49
- expect(el.fromItem).to.equal(1);
50
- expect(el.toItem).to.equal(10);
51
- expect(el.enablePrevious).to.be.false;
52
- expect(el.enableNext).to.be.true;
53
- expect(el.numberOfPages).to.equal(10);
54
- const select = el.shadowRoot.querySelector('select');
55
- select.value = '20';
56
- select.dispatchEvent(new Event('change'));
57
- yield el.updateComplete;
58
- expect(el.selectedItemPerPage).to.equal(20);
59
- expect(el.fromItem).to.equal(1);
60
- expect(el.toItem).to.equal(20);
61
- expect(el.enablePrevious).to.be.false;
62
- expect(el.enableNext).to.be.true;
63
- expect(el.numberOfPages).to.equal(5);
64
- }));
65
- test('handles next page action', () => __awaiter(void 0, void 0, void 0, function* () {
66
- const numberOfItems = 100;
67
- const itemPerPage = [10, 20, 50];
68
- const selectedItemPerPage = itemPerPage[0];
69
- const currentPage = 1;
70
- const el = yield fixture(html `<hy-table-pagination
71
- .numberOfItems=${numberOfItems}
72
- .itemPerPage=${itemPerPage}
73
- .selectedItemPerPage=${selectedItemPerPage}
74
- .currentPage=${currentPage}
75
- ></hy-table-pagination>`);
76
- expect(el.currentPage).to.equal(1);
77
- expect(el.fromItem).to.equal(1);
78
- expect(el.toItem).to.equal(10);
79
- expect(el.enablePrevious).to.be.false;
80
- expect(el.enableNext).to.be.true;
81
- el._nextPage();
82
- yield el.updateComplete;
83
- expect(el.currentPage).to.equal(2);
84
- expect(el.fromItem).to.equal(11);
85
- expect(el.toItem).to.equal(20);
86
- expect(el.enablePrevious).to.be.true;
87
- expect(el.enableNext).to.be.true;
88
- }));
89
- test('handles previous page action', () => __awaiter(void 0, void 0, void 0, function* () {
90
- const numberOfItems = 100;
91
- const itemPerPage = [10, 20, 50];
92
- const selectedItemPerPage = itemPerPage[0];
93
- const currentPage = 10;
94
- const el = yield fixture(html `<hy-table-pagination
95
- .numberOfItems=${numberOfItems}
96
- .itemPerPage=${itemPerPage}
97
- .selectedItemPerPage=${selectedItemPerPage}
98
- .currentPage=${currentPage}
99
- ></hy-table-pagination>`);
100
- expect(el.currentPage).to.equal(10);
101
- expect(el.fromItem).to.equal(91);
102
- expect(el.toItem).to.equal(100);
103
- expect(el.enablePrevious).to.be.true;
104
- expect(el.enableNext).to.be.false;
105
- el._previousPage();
106
- yield el.updateComplete;
107
- expect(el.currentPage).to.equal(9);
108
- expect(el.fromItem).to.equal(81);
109
- expect(el.toItem).to.equal(90);
110
- expect(el.enablePrevious).to.be.true;
111
- expect(el.enableNext).to.be.true;
112
- }));
113
- });
114
- //# sourceMappingURL=hy-table-pagination_test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hy-table-pagination_test.js","sourceRoot":"","sources":["../../../../src/components/table/test/hy-table-pagination_test.ts"],"names":[],"mappings":"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","sourcesContent":["import {html, fixture, expect} from '@open-wc/testing';\nimport '../components/hy-table-pagination';\nimport {HyTablePagination} from '../components/hy-table-pagination';\nimport {Sizes} from '../table.types';\n\nsuite('HyTablePagination', () => {\n test('init pagination', async () => {\n const numberOfItems = 100;\n const itemPerPage = [5, 10, 15];\n const selectedItemPerPage = itemPerPage[0];\n const currentPage = 1;\n const size = Sizes.Normal;\n const el: HyTablePagination = await fixture(\n html`<hy-table-pagination\n .numberOfItems=${numberOfItems}\n .itemPerPage=${itemPerPage}\n .selectedItemPerPage=${selectedItemPerPage}\n .currentPage=${currentPage}\n .size=${size}\n ></hy-table-pagination>`\n );\n expect(el.numberOfItems).to.equal(numberOfItems);\n expect(el.itemPerPage).to.equal(itemPerPage);\n expect(el.selectedItemPerPage).to.equal(selectedItemPerPage);\n expect(el.currentPage).to.equal(currentPage);\n expect(el.size).to.equal(size);\n expect(el.numberOfPages).to.equal(20);\n expect(el.fromItem).to.equal(1);\n expect(el.toItem).to.equal(5);\n expect(el.enablePrevious).to.be.false;\n expect(el.enableNext).to.be.true;\n });\n\n test('handles item per page change', async () => {\n const numberOfItems = 100;\n const itemPerPage = [10, 20, 50];\n const selectedItemPerPage = itemPerPage[0];\n const currentPage = 1;\n const el: HyTablePagination = await fixture(html`<hy-table-pagination\n .numberOfItems=${numberOfItems}\n .itemPerPage=${itemPerPage}\n .selectedItemPerPage=${selectedItemPerPage}\n .currentPage=${currentPage}\n ></hy-table-pagination>`);\n expect(el.fromItem).to.equal(1);\n expect(el.toItem).to.equal(10);\n expect(el.enablePrevious).to.be.false;\n expect(el.enableNext).to.be.true;\n expect(el.numberOfPages).to.equal(10);\n\n const select = el.shadowRoot!.querySelector('select')!;\n select.value = '20';\n select.dispatchEvent(new Event('change'));\n await el.updateComplete;\n expect(el.selectedItemPerPage).to.equal(20);\n expect(el.fromItem).to.equal(1);\n expect(el.toItem).to.equal(20);\n expect(el.enablePrevious).to.be.false;\n expect(el.enableNext).to.be.true;\n expect(el.numberOfPages).to.equal(5);\n });\n\n test('handles next page action', async () => {\n const numberOfItems = 100;\n const itemPerPage = [10, 20, 50];\n const selectedItemPerPage = itemPerPage[0];\n const currentPage = 1;\n const el: HyTablePagination = await fixture(html`<hy-table-pagination\n .numberOfItems=${numberOfItems}\n .itemPerPage=${itemPerPage}\n .selectedItemPerPage=${selectedItemPerPage}\n .currentPage=${currentPage}\n ></hy-table-pagination>`);\n expect(el.currentPage).to.equal(1);\n expect(el.fromItem).to.equal(1);\n expect(el.toItem).to.equal(10);\n expect(el.enablePrevious).to.be.false;\n expect(el.enableNext).to.be.true;\n\n el._nextPage();\n await el.updateComplete;\n expect(el.currentPage).to.equal(2);\n expect(el.fromItem).to.equal(11);\n expect(el.toItem).to.equal(20);\n expect(el.enablePrevious).to.be.true;\n expect(el.enableNext).to.be.true;\n });\n\n test('handles previous page action', async () => {\n const numberOfItems = 100;\n const itemPerPage = [10, 20, 50];\n const selectedItemPerPage = itemPerPage[0];\n const currentPage = 10;\n const el: HyTablePagination = await fixture(html`<hy-table-pagination\n .numberOfItems=${numberOfItems}\n .itemPerPage=${itemPerPage}\n .selectedItemPerPage=${selectedItemPerPage}\n .currentPage=${currentPage}\n ></hy-table-pagination>`);\n expect(el.currentPage).to.equal(10);\n expect(el.fromItem).to.equal(91);\n expect(el.toItem).to.equal(100);\n expect(el.enablePrevious).to.be.true;\n expect(el.enableNext).to.be.false;\n\n el._previousPage();\n await el.updateComplete;\n expect(el.currentPage).to.equal(9);\n expect(el.fromItem).to.equal(81);\n expect(el.toItem).to.equal(90);\n expect(el.enablePrevious).to.be.true;\n expect(el.enableNext).to.be.true;\n });\n});\n"]}
@@ -1,2 +0,0 @@
1
- import '../table.component';
2
- //# sourceMappingURL=hy-table_test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hy-table_test.d.ts","sourceRoot":"","sources":["../../../../src/components/table/test/hy-table_test.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAC"}
@@ -1,145 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import '../table.component';
11
- import { fixture, html, expect } from '@open-wc/testing';
12
- import { SelectionMode, SortOrder } from '../table.types';
13
- suite('HyTableComponent', () => {
14
- const headers = [
15
- { key: 'name', name: 'Name' },
16
- { key: 'age', name: 'Age' },
17
- ];
18
- const rows = [
19
- { name: 'John', age: 30 },
20
- { name: 'Doe', age: 55 },
21
- { name: 'Jack', age: 20 },
22
- { name: 'Phil', age: 35 },
23
- { name: 'Sebastian', age: 45 },
24
- { name: 'Thibaut', age: 44 },
25
- ];
26
- test('init table', () => __awaiter(void 0, void 0, void 0, function* () {
27
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows}></hy-table>`);
28
- expect(el.rowsCopy).to.deep.equal(rows);
29
- expect(el.displayedRows).to.deep.equal(el.rowsCopy.slice(0, el.selectedItemPerPage));
30
- expect(el.currentPage).to.equal(1);
31
- }));
32
- test('sort data correctly', () => __awaiter(void 0, void 0, void 0, function* () {
33
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows}></hy-table>`);
34
- const sortToNameEvent = new CustomEvent('', { detail: { index: 0 } });
35
- const rowsAscToName = [
36
- { name: 'Doe', age: 55 },
37
- { name: 'Jack', age: 20 },
38
- { name: 'John', age: 30 },
39
- { name: 'Phil', age: 35 },
40
- { name: 'Sebastian', age: 45 },
41
- { name: 'Thibaut', age: 44 },
42
- ];
43
- el._handleSortOrder(sortToNameEvent);
44
- yield el.updateComplete;
45
- expect(el.sortAttribute.order).to.equal(SortOrder.Ascending);
46
- expect(el.rowsCopy).to.deep.equal(rowsAscToName);
47
- const rowsDescToName = [
48
- { name: 'Thibaut', age: 44 },
49
- { name: 'Sebastian', age: 45 },
50
- { name: 'Phil', age: 35 },
51
- { name: 'John', age: 30 },
52
- { name: 'Jack', age: 20 },
53
- { name: 'Doe', age: 55 },
54
- ];
55
- el._handleSortOrder(sortToNameEvent);
56
- yield el.updateComplete;
57
- expect(el.sortAttribute.order).to.equal(SortOrder.Descending);
58
- expect(el.rowsCopy).to.deep.equal(rowsDescToName);
59
- el._handleSortOrder(sortToNameEvent);
60
- yield el.updateComplete;
61
- expect(el.sortAttribute.order).to.equal(SortOrder.Default);
62
- expect(el.rowsCopy).to.deep.equal(rows);
63
- }));
64
- suite('Multiple selection', () => {
65
- const selectedItems = Array(rows.length).fill(false);
66
- test('select one item', () => __awaiter(void 0, void 0, void 0, function* () {
67
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows} .selectionMode=${SelectionMode.Multiple}></hy-table>`);
68
- expect(el.selectedItems).to.deep.equal(selectedItems);
69
- const selectFirstItemEvent = new CustomEvent('', { detail: { index: 1, value: true } });
70
- el._handleCheckOne(selectFirstItemEvent);
71
- yield el.updateComplete;
72
- expect(el.selectedItems[1]).to.be.true;
73
- const selectSecondItemEvent = new CustomEvent('', { detail: { index: 3, value: true } });
74
- el._handleCheckOne(selectSecondItemEvent);
75
- yield el.updateComplete;
76
- expect(el.selectedItems[3]).to.be.true;
77
- expect(el.selectedItems[1]).to.be.true;
78
- }));
79
- test('select all', () => __awaiter(void 0, void 0, void 0, function* () {
80
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows} .selectionMode=${SelectionMode.Multiple}></hy-table>`);
81
- expect(el.selectedItems).to.deep.equal(selectedItems);
82
- const selectAllItemsEvent = new CustomEvent('', { detail: { isEveryItemChecked: false } });
83
- el._handleCheckAll(selectAllItemsEvent);
84
- yield el.updateComplete;
85
- expect(el.selectedItems.every((v) => v)).to.be.true;
86
- const unselectAllItemsEvent = new CustomEvent('', { detail: { isEveryItemChecked: true } });
87
- el._handleCheckAll(unselectAllItemsEvent);
88
- yield el.updateComplete;
89
- expect(el.selectedItems.every((v) => !v)).to.be.true;
90
- }));
91
- });
92
- suite('Single selection', () => {
93
- const selectedItems = Array(rows.length).fill(false);
94
- test('select one item', () => __awaiter(void 0, void 0, void 0, function* () {
95
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows} .selectionMode=${SelectionMode.Multiple}></hy-table>`);
96
- expect(el.selectedItems).to.deep.equal(selectedItems);
97
- const selectFirstItemEvent = new CustomEvent('', { detail: { index: 0 } });
98
- el._handleSelectOne(selectFirstItemEvent);
99
- yield el.updateComplete;
100
- expect(el.selectedItems[0]).to.be.true;
101
- const selectSecondItemEvent = new CustomEvent('', { detail: { index: 3 } });
102
- el._handleSelectOne(selectSecondItemEvent);
103
- yield el.updateComplete;
104
- expect(el.selectedItems[3]).to.be.true;
105
- expect(el.selectedItems[0]).to.be.false;
106
- }));
107
- });
108
- test('search items', () => __awaiter(void 0, void 0, void 0, function* () {
109
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows}></hy-table>`);
110
- const searchEvent = new CustomEvent('', { detail: { value: 'Joh' } });
111
- el._handleSearch(searchEvent);
112
- yield el.updateComplete;
113
- expect(el.rowsCopy.length).to.equal(1);
114
- expect(el.rowsCopy).to.deep.equal([{ name: 'John', age: 30 }]);
115
- const initSearchEvent = new CustomEvent('', { detail: { value: '' } });
116
- el._handleSearch(initSearchEvent);
117
- yield el.updateComplete;
118
- expect(el.rowsCopy).to.deep.equal(rows);
119
- }));
120
- test('update page', () => __awaiter(void 0, void 0, void 0, function* () {
121
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows}></hy-table>`);
122
- const updatePageEvent = new CustomEvent('', { detail: { page: 2 } });
123
- el._handleUpdatePage(updatePageEvent);
124
- yield el.updateComplete;
125
- expect(el.currentPage).to.equal(2);
126
- expect(el.displayedRows).to.deep.equal([{ name: 'Thibaut', age: 44 }]);
127
- }));
128
- test('update item per page', () => __awaiter(void 0, void 0, void 0, function* () {
129
- const el = yield fixture(html `<hy-table .headers=${headers} .rows=${rows}></hy-table>`);
130
- const updateItemPerPageEvent = new CustomEvent('', { detail: { selectedItemPerPage: el.itemPerPage[1] } });
131
- expect(el.displayedRows).to.deep.equal([
132
- { name: 'John', age: 30 },
133
- { name: 'Doe', age: 55 },
134
- { name: 'Jack', age: 20 },
135
- { name: 'Phil', age: 35 },
136
- { name: 'Sebastian', age: 45 },
137
- ]);
138
- el._handleItemPerPage(updateItemPerPageEvent);
139
- yield el.updateComplete;
140
- expect(el.selectedItemPerPage).to.equal(el.itemPerPage[1]);
141
- expect(el.currentPage).to.equal(1);
142
- expect(el.displayedRows).to.deep.equal(rows);
143
- }));
144
- });
145
- //# sourceMappingURL=hy-table_test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hy-table_test.js","sourceRoot":"","sources":["../../../../src/components/table/test/hy-table_test.ts"],"names":[],"mappings":"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","sourcesContent":["import '../table.component';\nimport {HyTable} from '../table.component';\nimport {fixture, html, expect} from '@open-wc/testing';\nimport {SelectionMode, SortOrder} from '../table.types';\nsuite('HyTableComponent', () => {\n const headers = [\n {key: 'name', name: 'Name'},\n {key: 'age', name: 'Age'},\n ];\n const rows = [\n {name: 'John', age: 30},\n {name: 'Doe', age: 55},\n {name: 'Jack', age: 20},\n {name: 'Phil', age: 35},\n {name: 'Sebastian', age: 45},\n {name: 'Thibaut', age: 44},\n ];\n test('init table', async () => {\n const el: HyTable = await fixture(html`<hy-table .headers=${headers} .rows=${rows}></hy-table>`);\n expect(el.rowsCopy).to.deep.equal(rows);\n expect(el.displayedRows).to.deep.equal(el.rowsCopy.slice(0, el.selectedItemPerPage));\n expect(el.currentPage).to.equal(1);\n });\n\n test('sort data correctly', async () => {\n const el: HyTable = await fixture(html`<hy-table .headers=${headers} .rows=${rows}></hy-table>`);\n const sortToNameEvent = new CustomEvent('', {detail: {index: 0}});\n const rowsAscToName = [\n {name: 'Doe', age: 55},\n {name: 'Jack', age: 20},\n {name: 'John', age: 30},\n {name: 'Phil', age: 35},\n {name: 'Sebastian', age: 45},\n {name: 'Thibaut', age: 44},\n ];\n el._handleSortOrder(sortToNameEvent);\n await el.updateComplete;\n expect(el.sortAttribute.order).to.equal(SortOrder.Ascending);\n expect(el.rowsCopy).to.deep.equal(rowsAscToName);\n const rowsDescToName = [\n {name: 'Thibaut', age: 44},\n {name: 'Sebastian', age: 45},\n {name: 'Phil', age: 35},\n {name: 'John', age: 30},\n {name: 'Jack', age: 20},\n {name: 'Doe', age: 55},\n ];\n el._handleSortOrder(sortToNameEvent);\n await el.updateComplete;\n expect(el.sortAttribute.order).to.equal(SortOrder.Descending);\n expect(el.rowsCopy).to.deep.equal(rowsDescToName);\n el._handleSortOrder(sortToNameEvent);\n await el.updateComplete;\n expect(el.sortAttribute.order).to.equal(SortOrder.Default);\n expect(el.rowsCopy).to.deep.equal(rows);\n });\n\n suite('Multiple selection', () => {\n const selectedItems = Array(rows.length).fill(false);\n test('select one item', async () => {\n const el: HyTable = await fixture(\n html`<hy-table .headers=${headers} .rows=${rows} .selectionMode=${SelectionMode.Multiple}></hy-table>`\n );\n expect(el.selectedItems).to.deep.equal(selectedItems);\n const selectFirstItemEvent = new CustomEvent('', {detail: {index: 1, value: true}});\n el._handleCheckOne(selectFirstItemEvent);\n await el.updateComplete;\n expect(el.selectedItems[1]).to.be.true;\n const selectSecondItemEvent = new CustomEvent('', {detail: {index: 3, value: true}});\n el._handleCheckOne(selectSecondItemEvent);\n await el.updateComplete;\n expect(el.selectedItems[3]).to.be.true;\n expect(el.selectedItems[1]).to.be.true;\n });\n test('select all', async () => {\n const el: HyTable = await fixture(\n html`<hy-table .headers=${headers} .rows=${rows} .selectionMode=${SelectionMode.Multiple}></hy-table>`\n );\n expect(el.selectedItems).to.deep.equal(selectedItems);\n const selectAllItemsEvent = new CustomEvent('', {detail: {isEveryItemChecked: false}});\n el._handleCheckAll(selectAllItemsEvent);\n await el.updateComplete;\n expect(el.selectedItems.every((v) => v)).to.be.true;\n const unselectAllItemsEvent = new CustomEvent('', {detail: {isEveryItemChecked: true}});\n el._handleCheckAll(unselectAllItemsEvent);\n await el.updateComplete;\n expect(el.selectedItems.every((v) => !v)).to.be.true;\n });\n });\n\n suite('Single selection', () => {\n const selectedItems = Array(rows.length).fill(false);\n\n test('select one item', async () => {\n const el: HyTable = await fixture(\n html`<hy-table .headers=${headers} .rows=${rows} .selectionMode=${SelectionMode.Multiple}></hy-table>`\n );\n expect(el.selectedItems).to.deep.equal(selectedItems);\n const selectFirstItemEvent = new CustomEvent('', {detail: {index: 0}});\n el._handleSelectOne(selectFirstItemEvent);\n await el.updateComplete;\n expect(el.selectedItems[0]).to.be.true;\n const selectSecondItemEvent = new CustomEvent('', {detail: {index: 3}});\n el._handleSelectOne(selectSecondItemEvent);\n await el.updateComplete;\n expect(el.selectedItems[3]).to.be.true;\n expect(el.selectedItems[0]).to.be.false;\n });\n });\n\n test('search items', async () => {\n const el: HyTable = await fixture(html`<hy-table .headers=${headers} .rows=${rows}></hy-table>`);\n const searchEvent = new CustomEvent('', {detail: {value: 'Joh'}});\n el._handleSearch(searchEvent);\n await el.updateComplete;\n expect(el.rowsCopy.length).to.equal(1);\n expect(el.rowsCopy).to.deep.equal([{name: 'John', age: 30}]);\n const initSearchEvent = new CustomEvent('', {detail: {value: ''}});\n el._handleSearch(initSearchEvent);\n await el.updateComplete;\n expect(el.rowsCopy).to.deep.equal(rows);\n });\n\n test('update page', async () => {\n const el: HyTable = await fixture(html`<hy-table .headers=${headers} .rows=${rows}></hy-table>`);\n const updatePageEvent = new CustomEvent('', {detail: {page: 2}});\n el._handleUpdatePage(updatePageEvent);\n await el.updateComplete;\n expect(el.currentPage).to.equal(2);\n expect(el.displayedRows).to.deep.equal([{name: 'Thibaut', age: 44}]);\n });\n test('update item per page', async () => {\n const el: HyTable = await fixture(html`<hy-table .headers=${headers} .rows=${rows}></hy-table>`);\n const updateItemPerPageEvent = new CustomEvent('', {detail: {selectedItemPerPage: el.itemPerPage[1]}});\n expect(el.displayedRows).to.deep.equal([\n {name: 'John', age: 30},\n {name: 'Doe', age: 55},\n {name: 'Jack', age: 20},\n {name: 'Phil', age: 35},\n {name: 'Sebastian', age: 45},\n ]);\n el._handleItemPerPage(updateItemPerPageEvent);\n await el.updateComplete;\n expect(el.selectedItemPerPage).to.equal(el.itemPerPage[1]);\n expect(el.currentPage).to.equal(1);\n expect(el.displayedRows).to.deep.equal(rows);\n });\n});\n"]}