@atlaskit/dynamic-table 14.11.1 → 14.11.3
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/CHANGELOG.md +12 -0
- package/dist/cjs/components/stateless.js +1 -1
- package/dist/cjs/hoc/with-sorted-page-rows.js +20 -20
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/components/stateless.js +1 -1
- package/dist/es2019/hoc/with-sorted-page-rows.js +20 -20
- package/dist/es2019/version.json +1 -1
- package/dist/esm/components/stateless.js +1 -1
- package/dist/esm/hoc/with-sorted-page-rows.js +20 -20
- package/dist/esm/version.json +1 -1
- package/package.json +3 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @atlaskit/dynamic-table
|
|
2
2
|
|
|
3
|
+
## 14.11.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`a486e54d1ef`](https://bitbucket.org/atlassian/atlassian-frontend/commits/a486e54d1ef) - Improved performance of built-in table sorting for stateful dynamic tables
|
|
8
|
+
|
|
9
|
+
## 14.11.2
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`4ae083a7e66`](https://bitbucket.org/atlassian/atlassian-frontend/commits/4ae083a7e66) - Use `@af/accessibility-testing` for default jest-axe config and jest-axe import in accessibility testing.
|
|
14
|
+
|
|
3
15
|
## 14.11.1
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -29,7 +29,7 @@ var _tableHead = _interopRequireDefault(require("./table-head"));
|
|
|
29
29
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
30
30
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
31
31
|
var packageName = "@atlaskit/dynamic-table";
|
|
32
|
-
var packageVersion = "14.11.
|
|
32
|
+
var packageVersion = "14.11.3";
|
|
33
33
|
function toggleSortOrder(currentSortOrder) {
|
|
34
34
|
switch (currentSortOrder) {
|
|
35
35
|
case _constants.DESC:
|
|
@@ -23,6 +23,17 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
23
23
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
24
24
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
25
25
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
26
|
+
var getSortingCellValue = function getSortingCellValue(cells, head, sortKey) {
|
|
27
|
+
for (var i = 0; i < cells.length; i++) {
|
|
28
|
+
var _head$cells$i;
|
|
29
|
+
if (head.cells[i] && ((_head$cells$i = head.cells[i]) === null || _head$cells$i === void 0 ? void 0 : _head$cells$i.key) === sortKey) {
|
|
30
|
+
var _cells$i;
|
|
31
|
+
return (_cells$i = cells[i]) === null || _cells$i === void 0 ? void 0 : _cells$i.key;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return undefined;
|
|
35
|
+
};
|
|
36
|
+
|
|
26
37
|
// sort all rows based on sort key and order
|
|
27
38
|
var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
28
39
|
if (!sortKey || !head) {
|
|
@@ -31,16 +42,13 @@ var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
|
31
42
|
if (!rows) {
|
|
32
43
|
return [];
|
|
33
44
|
}
|
|
45
|
+
var modifier = sortOrder === _constants.ASC ? 1 : -1;
|
|
34
46
|
|
|
35
|
-
//
|
|
36
|
-
var
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return undefined;
|
|
43
|
-
};
|
|
47
|
+
// Re-initialising an I18n Collator on every sort is performance intensive, thus constructed outside
|
|
48
|
+
var collator = new Intl.Collator(undefined, {
|
|
49
|
+
numeric: true,
|
|
50
|
+
sensitivity: 'accent'
|
|
51
|
+
});
|
|
44
52
|
|
|
45
53
|
// Get copy of rows to avoid sorting prop in place
|
|
46
54
|
var sortableRows = Array.from(rows);
|
|
@@ -48,11 +56,8 @@ var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
|
48
56
|
// Reorder rows in table based on sorting cell value
|
|
49
57
|
// Algorithm will sort numerics or strings, but not both
|
|
50
58
|
return sortableRows.sort(function (a, b) {
|
|
51
|
-
var valA = getSortingCellValue(a.cells);
|
|
52
|
-
var valB = getSortingCellValue(b.cells);
|
|
53
|
-
|
|
54
|
-
// modifier used for sorting type (ascending or descending)
|
|
55
|
-
var modifier = sortOrder === _constants.ASC ? 1 : -1;
|
|
59
|
+
var valA = getSortingCellValue(a.cells, head, sortKey);
|
|
60
|
+
var valB = getSortingCellValue(b.cells, head, sortKey);
|
|
56
61
|
if (valA === undefined || valB === undefined) {
|
|
57
62
|
return modifier;
|
|
58
63
|
}
|
|
@@ -72,13 +77,8 @@ var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
|
72
77
|
return 1;
|
|
73
78
|
}
|
|
74
79
|
}
|
|
75
|
-
|
|
76
|
-
// Sort strings using localeCompare
|
|
77
80
|
if (typeof valA === 'string' && typeof valB === 'string') {
|
|
78
|
-
return modifier *
|
|
79
|
-
sensitivity: 'accent',
|
|
80
|
-
numeric: true
|
|
81
|
-
});
|
|
81
|
+
return modifier * collator.compare(valA, valB);
|
|
82
82
|
}
|
|
83
83
|
if (!valA && valA !== 0 || valA < valB) {
|
|
84
84
|
return -modifier;
|
package/dist/cjs/version.json
CHANGED
|
@@ -14,7 +14,7 @@ import ManagedPagination from './managed-pagination';
|
|
|
14
14
|
import RankableTableBody from './rankable/body';
|
|
15
15
|
import TableHead from './table-head';
|
|
16
16
|
const packageName = "@atlaskit/dynamic-table";
|
|
17
|
-
const packageVersion = "14.11.
|
|
17
|
+
const packageVersion = "14.11.3";
|
|
18
18
|
function toggleSortOrder(currentSortOrder) {
|
|
19
19
|
switch (currentSortOrder) {
|
|
20
20
|
case DESC:
|
|
@@ -3,6 +3,17 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { ASC } from '../internal/constants';
|
|
5
5
|
import { getPageRows, validateSortKey } from '../internal/helpers';
|
|
6
|
+
const getSortingCellValue = (cells, head, sortKey) => {
|
|
7
|
+
for (let i = 0; i < cells.length; i++) {
|
|
8
|
+
var _head$cells$i;
|
|
9
|
+
if (head.cells[i] && ((_head$cells$i = head.cells[i]) === null || _head$cells$i === void 0 ? void 0 : _head$cells$i.key) === sortKey) {
|
|
10
|
+
var _cells$i;
|
|
11
|
+
return (_cells$i = cells[i]) === null || _cells$i === void 0 ? void 0 : _cells$i.key;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return undefined;
|
|
15
|
+
};
|
|
16
|
+
|
|
6
17
|
// sort all rows based on sort key and order
|
|
7
18
|
const getSortedRows = (head, rows, sortKey, sortOrder) => {
|
|
8
19
|
if (!sortKey || !head) {
|
|
@@ -11,16 +22,13 @@ const getSortedRows = (head, rows, sortKey, sortOrder) => {
|
|
|
11
22
|
if (!rows) {
|
|
12
23
|
return [];
|
|
13
24
|
}
|
|
25
|
+
const modifier = sortOrder === ASC ? 1 : -1;
|
|
14
26
|
|
|
15
|
-
//
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return undefined;
|
|
23
|
-
};
|
|
27
|
+
// Re-initialising an I18n Collator on every sort is performance intensive, thus constructed outside
|
|
28
|
+
const collator = new Intl.Collator(undefined, {
|
|
29
|
+
numeric: true,
|
|
30
|
+
sensitivity: 'accent'
|
|
31
|
+
});
|
|
24
32
|
|
|
25
33
|
// Get copy of rows to avoid sorting prop in place
|
|
26
34
|
const sortableRows = Array.from(rows);
|
|
@@ -28,11 +36,8 @@ const getSortedRows = (head, rows, sortKey, sortOrder) => {
|
|
|
28
36
|
// Reorder rows in table based on sorting cell value
|
|
29
37
|
// Algorithm will sort numerics or strings, but not both
|
|
30
38
|
return sortableRows.sort((a, b) => {
|
|
31
|
-
const valA = getSortingCellValue(a.cells);
|
|
32
|
-
const valB = getSortingCellValue(b.cells);
|
|
33
|
-
|
|
34
|
-
// modifier used for sorting type (ascending or descending)
|
|
35
|
-
const modifier = sortOrder === ASC ? 1 : -1;
|
|
39
|
+
const valA = getSortingCellValue(a.cells, head, sortKey);
|
|
40
|
+
const valB = getSortingCellValue(b.cells, head, sortKey);
|
|
36
41
|
if (valA === undefined || valB === undefined) {
|
|
37
42
|
return modifier;
|
|
38
43
|
}
|
|
@@ -52,13 +57,8 @@ const getSortedRows = (head, rows, sortKey, sortOrder) => {
|
|
|
52
57
|
return 1;
|
|
53
58
|
}
|
|
54
59
|
}
|
|
55
|
-
|
|
56
|
-
// Sort strings using localeCompare
|
|
57
60
|
if (typeof valA === 'string' && typeof valB === 'string') {
|
|
58
|
-
return modifier *
|
|
59
|
-
sensitivity: 'accent',
|
|
60
|
-
numeric: true
|
|
61
|
-
});
|
|
61
|
+
return modifier * collator.compare(valA, valB);
|
|
62
62
|
}
|
|
63
63
|
if (!valA && valA !== 0 || valA < valB) {
|
|
64
64
|
return -modifier;
|
package/dist/es2019/version.json
CHANGED
|
@@ -22,7 +22,7 @@ import ManagedPagination from './managed-pagination';
|
|
|
22
22
|
import RankableTableBody from './rankable/body';
|
|
23
23
|
import TableHead from './table-head';
|
|
24
24
|
var packageName = "@atlaskit/dynamic-table";
|
|
25
|
-
var packageVersion = "14.11.
|
|
25
|
+
var packageVersion = "14.11.3";
|
|
26
26
|
function toggleSortOrder(currentSortOrder) {
|
|
27
27
|
switch (currentSortOrder) {
|
|
28
28
|
case DESC:
|
|
@@ -16,6 +16,17 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
16
16
|
import React from 'react';
|
|
17
17
|
import { ASC } from '../internal/constants';
|
|
18
18
|
import { getPageRows, validateSortKey } from '../internal/helpers';
|
|
19
|
+
var getSortingCellValue = function getSortingCellValue(cells, head, sortKey) {
|
|
20
|
+
for (var i = 0; i < cells.length; i++) {
|
|
21
|
+
var _head$cells$i;
|
|
22
|
+
if (head.cells[i] && ((_head$cells$i = head.cells[i]) === null || _head$cells$i === void 0 ? void 0 : _head$cells$i.key) === sortKey) {
|
|
23
|
+
var _cells$i;
|
|
24
|
+
return (_cells$i = cells[i]) === null || _cells$i === void 0 ? void 0 : _cells$i.key;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return undefined;
|
|
28
|
+
};
|
|
29
|
+
|
|
19
30
|
// sort all rows based on sort key and order
|
|
20
31
|
var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
21
32
|
if (!sortKey || !head) {
|
|
@@ -24,16 +35,13 @@ var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
|
24
35
|
if (!rows) {
|
|
25
36
|
return [];
|
|
26
37
|
}
|
|
38
|
+
var modifier = sortOrder === ASC ? 1 : -1;
|
|
27
39
|
|
|
28
|
-
//
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return undefined;
|
|
36
|
-
};
|
|
40
|
+
// Re-initialising an I18n Collator on every sort is performance intensive, thus constructed outside
|
|
41
|
+
var collator = new Intl.Collator(undefined, {
|
|
42
|
+
numeric: true,
|
|
43
|
+
sensitivity: 'accent'
|
|
44
|
+
});
|
|
37
45
|
|
|
38
46
|
// Get copy of rows to avoid sorting prop in place
|
|
39
47
|
var sortableRows = Array.from(rows);
|
|
@@ -41,11 +49,8 @@ var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
|
41
49
|
// Reorder rows in table based on sorting cell value
|
|
42
50
|
// Algorithm will sort numerics or strings, but not both
|
|
43
51
|
return sortableRows.sort(function (a, b) {
|
|
44
|
-
var valA = getSortingCellValue(a.cells);
|
|
45
|
-
var valB = getSortingCellValue(b.cells);
|
|
46
|
-
|
|
47
|
-
// modifier used for sorting type (ascending or descending)
|
|
48
|
-
var modifier = sortOrder === ASC ? 1 : -1;
|
|
52
|
+
var valA = getSortingCellValue(a.cells, head, sortKey);
|
|
53
|
+
var valB = getSortingCellValue(b.cells, head, sortKey);
|
|
49
54
|
if (valA === undefined || valB === undefined) {
|
|
50
55
|
return modifier;
|
|
51
56
|
}
|
|
@@ -65,13 +70,8 @@ var getSortedRows = function getSortedRows(head, rows, sortKey, sortOrder) {
|
|
|
65
70
|
return 1;
|
|
66
71
|
}
|
|
67
72
|
}
|
|
68
|
-
|
|
69
|
-
// Sort strings using localeCompare
|
|
70
73
|
if (typeof valA === 'string' && typeof valB === 'string') {
|
|
71
|
-
return modifier *
|
|
72
|
-
sensitivity: 'accent',
|
|
73
|
-
numeric: true
|
|
74
|
-
});
|
|
74
|
+
return modifier * collator.compare(valA, valB);
|
|
75
75
|
}
|
|
76
76
|
if (!valA && valA !== 0 || valA < valB) {
|
|
77
77
|
return -modifier;
|
package/dist/esm/version.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/dynamic-table",
|
|
3
|
-
"version": "14.11.
|
|
3
|
+
"version": "14.11.3",
|
|
4
4
|
"description": "A dynamic table displays rows of data with built-in pagination, sorting, and re-ordering functionality.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@atlaskit/pagination": "^14.4.0",
|
|
42
42
|
"@atlaskit/spinner": "^15.5.0",
|
|
43
43
|
"@atlaskit/theme": "^12.5.0",
|
|
44
|
-
"@atlaskit/tokens": "^1.
|
|
44
|
+
"@atlaskit/tokens": "^1.14.0",
|
|
45
45
|
"@babel/runtime": "^7.0.0",
|
|
46
46
|
"@emotion/react": "^11.7.1",
|
|
47
47
|
"react-beautiful-dnd": "^12.1.1"
|
|
@@ -51,19 +51,14 @@
|
|
|
51
51
|
"react-dom": "^16.8.0"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
|
-
"@
|
|
55
|
-
"@atlaskit/button": "^16.8.0",
|
|
56
|
-
"@atlaskit/docs": "*",
|
|
57
|
-
"@atlaskit/dropdown-menu": "^11.10.0",
|
|
54
|
+
"@af/accessibility-testing": "*",
|
|
58
55
|
"@atlaskit/ssr": "*",
|
|
59
|
-
"@atlaskit/toggle": "^12.6.0",
|
|
60
56
|
"@atlaskit/visual-regression": "*",
|
|
61
57
|
"@atlaskit/webdriver-runner": "*",
|
|
62
58
|
"@atlassian/atlassian-frontend-prettier-config-1.0.1": "npm:@atlassian/atlassian-frontend-prettier-config@1.0.1",
|
|
63
59
|
"@emotion/styled": "^11.0.0",
|
|
64
60
|
"@testing-library/react": "^12.1.5",
|
|
65
61
|
"@testing-library/user-event": "^14.4.3",
|
|
66
|
-
"jest-axe": "^4.0.0",
|
|
67
62
|
"react-dom": "^16.8.0",
|
|
68
63
|
"typescript": "~4.9.5"
|
|
69
64
|
},
|