handsontable 0.0.0-next-a148bc1-20241121 → 0.0.0-next-3058de1-20241122
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of handsontable might be problematic. Click here for more details.
- package/3rdparty/walkontable/src/calculator/index.js +1 -2
- package/3rdparty/walkontable/src/calculator/index.mjs +2 -2
- package/3rdparty/walkontable/src/calculator/viewportRows.js +3 -3
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +3 -3
- package/3rdparty/walkontable/src/core/_base.js +3 -0
- package/3rdparty/walkontable/src/core/_base.mjs +3 -0
- package/3rdparty/walkontable/src/core/clone.js +1 -0
- package/3rdparty/walkontable/src/core/clone.mjs +1 -0
- package/3rdparty/walkontable/src/core/core.js +2 -0
- package/3rdparty/walkontable/src/core/core.mjs +2 -0
- package/3rdparty/walkontable/src/facade/core.js +3 -0
- package/3rdparty/walkontable/src/facade/core.mjs +3 -0
- package/3rdparty/walkontable/src/index.js +0 -3
- package/3rdparty/walkontable/src/index.mjs +2 -3
- package/3rdparty/walkontable/src/overlay/_base.js +3 -1
- package/3rdparty/walkontable/src/overlay/_base.mjs +3 -1
- package/3rdparty/walkontable/src/overlay/bottom.js +2 -2
- package/3rdparty/walkontable/src/overlay/bottom.mjs +2 -2
- package/3rdparty/walkontable/src/overlay/inlineStart.js +1 -1
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/top.js +2 -2
- package/3rdparty/walkontable/src/overlay/top.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/_base.js +4 -3
- package/3rdparty/walkontable/src/renderer/_base.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/cells.js +10 -11
- package/3rdparty/walkontable/src/renderer/cells.mjs +8 -10
- package/3rdparty/walkontable/src/renderer/colGroup.js +7 -6
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +5 -5
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +5 -4
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +3 -3
- package/3rdparty/walkontable/src/renderer/index.js +23 -20
- package/3rdparty/walkontable/src/renderer/index.mjs +10 -8
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -5
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +4 -4
- package/3rdparty/walkontable/src/renderer/rows.js +11 -23
- package/3rdparty/walkontable/src/renderer/rows.mjs +10 -23
- package/3rdparty/walkontable/src/renderer/table.js +13 -4
- package/3rdparty/walkontable/src/renderer/table.mjs +13 -4
- package/3rdparty/walkontable/src/settings.js +0 -2
- package/3rdparty/walkontable/src/settings.mjs +0 -2
- package/3rdparty/walkontable/src/table.js +17 -9
- package/3rdparty/walkontable/src/table.mjs +17 -9
- package/3rdparty/walkontable/src/types.js +1 -0
- package/3rdparty/walkontable/src/types.mjs +1 -0
- package/3rdparty/walkontable/src/utils/column.js +1 -1
- package/3rdparty/walkontable/src/utils/column.mjs +1 -1
- package/3rdparty/walkontable/src/utils/nodesPool.js +5 -22
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -22
- package/3rdparty/walkontable/src/utils/orderView/index.js +5 -4
- package/3rdparty/walkontable/src/utils/orderView/index.mjs +2 -2
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +4 -3
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +2 -2
- package/3rdparty/walkontable/src/utils/orderView/view.js +76 -79
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +74 -78
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +5 -4
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +3 -3
- package/3rdparty/walkontable/src/utils/stylesHandler.js +287 -0
- package/3rdparty/walkontable/src/utils/stylesHandler.mjs +283 -0
- package/3rdparty/walkontable/src/viewport.js +1 -0
- package/3rdparty/walkontable/src/viewport.mjs +1 -0
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core/hooks/constants.js +9 -0
- package/core/hooks/constants.mjs +9 -0
- package/core/hooks/index.d.ts +1 -0
- package/core.d.ts +2 -0
- package/core.js +47 -0
- package/core.mjs +47 -0
- package/dataMap/metaManager/metaSchema.js +23 -3
- package/dataMap/metaManager/metaSchema.mjs +23 -3
- package/dist/handsontable.css +17 -9
- package/dist/handsontable.full.css +249 -240
- package/dist/handsontable.full.js +4767 -4686
- package/dist/handsontable.full.min.css +11 -9
- package/dist/handsontable.full.min.js +53 -53
- package/dist/handsontable.js +4474 -4387
- package/dist/handsontable.min.css +5 -4
- package/dist/handsontable.min.js +24 -24
- package/editors/autocompleteEditor/autocompleteEditor.js +1 -1
- package/editors/autocompleteEditor/autocompleteEditor.mjs +1 -1
- package/editors/baseEditor/baseEditor.js +1 -1
- package/editors/baseEditor/baseEditor.mjs +1 -1
- package/editors/dateEditor/dateEditor.js +9 -0
- package/editors/dateEditor/dateEditor.mjs +10 -1
- package/editors/handsontableEditor/handsontableEditor.js +7 -1
- package/editors/handsontableEditor/handsontableEditor.mjs +7 -1
- package/editors/selectEditor/selectEditor.js +20 -9
- package/editors/selectEditor/selectEditor.mjs +20 -9
- package/editors/textEditor/textEditor.js +4 -11
- package/editors/textEditor/textEditor.mjs +4 -11
- package/helpers/dom/element.js +32 -1
- package/helpers/dom/element.mjs +31 -1
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/themes.js +17 -0
- package/helpers/themes.mjs +13 -0
- package/package.json +10 -3
- package/plugins/comments/commentEditor.js +9 -0
- package/plugins/comments/commentEditor.mjs +9 -0
- package/plugins/comments/comments.js +14 -0
- package/plugins/comments/comments.mjs +15 -1
- package/plugins/contextMenu/menu/menu.js +9 -4
- package/plugins/contextMenu/menu/menu.mjs +9 -4
- package/plugins/filters/ui/multipleSelect.js +6 -0
- package/plugins/filters/ui/multipleSelect.mjs +6 -0
- package/plugins/manualRowMove/manualRowMove.js +1 -1
- package/plugins/manualRowMove/manualRowMove.mjs +1 -1
- package/plugins/manualRowResize/manualRowResize.js +1 -2
- package/plugins/manualRowResize/manualRowResize.mjs +2 -3
- package/plugins/mergeCells/mergeCells.js +1 -1
- package/plugins/mergeCells/mergeCells.mjs +1 -1
- package/plugins/nestedRows/ui/headers.js +7 -1
- package/plugins/nestedRows/ui/headers.mjs +7 -1
- package/plugins/stretchColumns/calculator.js +2 -1
- package/plugins/stretchColumns/calculator.mjs +3 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +5 -8
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +5 -8
- package/settings.d.ts +1 -0
- package/styles/handsontable.css +2178 -0
- package/styles/handsontable.min.css +30 -0
- package/styles/ht-theme-horizon.css +607 -0
- package/styles/ht-theme-horizon.min.css +30 -0
- package/styles/ht-theme-main.css +613 -0
- package/styles/ht-theme-main.min.css +30 -0
- package/tableView.js +46 -0
- package/tableView.mjs +47 -1
- package/utils/autoResize.js +4 -1
- package/utils/autoResize.mjs +4 -1
- package/utils/ghostTable.js +5 -3
- package/utils/ghostTable.mjs +5 -3
- package/3rdparty/walkontable/src/utils/orderView/viewDiffer/index.js +0 -138
- package/3rdparty/walkontable/src/utils/orderView/viewDiffer/index.mjs +0 -135
- package/3rdparty/walkontable/src/utils/orderView/viewDiffer/viewOrder.js +0 -72
- package/3rdparty/walkontable/src/utils/orderView/viewDiffer/viewOrder.mjs +0 -68
@@ -1,9 +1,9 @@
|
|
1
|
-
import
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
1
|
+
import RowHeadersRenderer from "./rowHeaders.mjs";
|
2
|
+
import ColumnHeadersRenderer from "./columnHeaders.mjs";
|
3
|
+
import ColGroupRenderer from "./colGroup.mjs";
|
4
|
+
import RowsRenderer from "./rows.mjs";
|
5
|
+
import CellsRenderer from "./cells.mjs";
|
6
|
+
import TableRenderer from "./table.mjs";
|
7
7
|
/**
|
8
8
|
* Content renderer.
|
9
9
|
*
|
@@ -18,7 +18,8 @@ class Renderer {
|
|
18
18
|
TBODY,
|
19
19
|
rowUtils,
|
20
20
|
columnUtils,
|
21
|
-
cellRenderer
|
21
|
+
cellRenderer,
|
22
|
+
stylesHandler
|
22
23
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
23
24
|
/**
|
24
25
|
* General renderer class used to render Walkontable content on screen.
|
@@ -26,7 +27,8 @@ class Renderer {
|
|
26
27
|
* @type {TableRenderer}
|
27
28
|
*/
|
28
29
|
this.renderer = new TableRenderer(TABLE, {
|
29
|
-
cellRenderer
|
30
|
+
cellRenderer,
|
31
|
+
stylesHandler
|
30
32
|
});
|
31
33
|
this.renderer.setRenderers({
|
32
34
|
rowHeaders: new RowHeadersRenderer(),
|
@@ -2,10 +2,11 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
|
-
var _orderView = require("
|
6
|
-
var _base = require("./_base");
|
5
|
+
var _orderView = require("./../utils/orderView");
|
6
|
+
var _base = _interopRequireDefault(require("./_base"));
|
7
7
|
var _element = require("../../../../helpers/dom/element");
|
8
8
|
var _a11y = require("../../../../helpers/a11y");
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
9
10
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
10
11
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
11
12
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
@@ -22,7 +23,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
22
23
|
*
|
23
24
|
* @class {CellsRenderer}
|
24
25
|
*/
|
25
|
-
class RowHeadersRenderer extends _base.
|
26
|
+
class RowHeadersRenderer extends _base.default {
|
26
27
|
constructor() {
|
27
28
|
super('TH');
|
28
29
|
/**
|
@@ -50,7 +51,7 @@ class RowHeadersRenderer extends _base.BaseRenderer {
|
|
50
51
|
if (this.orderViews.has(rootNode)) {
|
51
52
|
orderView = this.orderViews.get(rootNode);
|
52
53
|
} else {
|
53
|
-
orderView = new _orderView.SharedOrderView(rootNode, sourceColumnIndex => this.nodesPool.obtain(this.sourceRowIndex, sourceColumnIndex));
|
54
|
+
orderView = new _orderView.SharedOrderView(rootNode, sourceColumnIndex => this.nodesPool.obtain(this.sourceRowIndex, sourceColumnIndex), this.nodeType);
|
54
55
|
this.orderViews.set(rootNode, orderView);
|
55
56
|
}
|
56
57
|
return orderView;
|
@@ -91,4 +92,4 @@ class RowHeadersRenderer extends _base.BaseRenderer {
|
|
91
92
|
}
|
92
93
|
}
|
93
94
|
}
|
94
|
-
exports.
|
95
|
+
exports.default = RowHeadersRenderer;
|
@@ -2,8 +2,8 @@ import "core-js/modules/es.error.cause.js";
|
|
2
2
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
3
3
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
4
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
5
|
-
import { SharedOrderView } from "
|
6
|
-
import
|
5
|
+
import { SharedOrderView } from "./../utils/orderView/index.mjs";
|
6
|
+
import BaseRenderer from "./_base.mjs";
|
7
7
|
import { setAttribute, removeAttribute } from "../../../../helpers/dom/element.mjs";
|
8
8
|
import { A11Y_COLINDEX, A11Y_ROWHEADER, A11Y_SCOPE_ROW, A11Y_TABINDEX } from "../../../../helpers/a11y.mjs";
|
9
9
|
/**
|
@@ -19,7 +19,7 @@ import { A11Y_COLINDEX, A11Y_ROWHEADER, A11Y_SCOPE_ROW, A11Y_TABINDEX } from "..
|
|
19
19
|
*
|
20
20
|
* @class {CellsRenderer}
|
21
21
|
*/
|
22
|
-
export class RowHeadersRenderer extends BaseRenderer {
|
22
|
+
export default class RowHeadersRenderer extends BaseRenderer {
|
23
23
|
constructor() {
|
24
24
|
super('TH');
|
25
25
|
/**
|
@@ -47,7 +47,7 @@ export class RowHeadersRenderer extends BaseRenderer {
|
|
47
47
|
if (this.orderViews.has(rootNode)) {
|
48
48
|
orderView = this.orderViews.get(rootNode);
|
49
49
|
} else {
|
50
|
-
orderView = new SharedOrderView(rootNode, sourceColumnIndex => this.nodesPool.obtain(this.sourceRowIndex, sourceColumnIndex));
|
50
|
+
orderView = new SharedOrderView(rootNode, sourceColumnIndex => this.nodesPool.obtain(this.sourceRowIndex, sourceColumnIndex), this.nodeType);
|
51
51
|
this.orderViews.set(rootNode, orderView);
|
52
52
|
}
|
53
53
|
return orderView;
|
@@ -2,12 +2,13 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
|
-
var _base = require("./_base");
|
6
|
-
var _console = require("
|
7
|
-
var _templateLiteralTag = require("
|
8
|
-
var _orderView = require("
|
5
|
+
var _base = _interopRequireDefault(require("./_base"));
|
6
|
+
var _console = require("./../../../../helpers/console");
|
7
|
+
var _templateLiteralTag = require("./../../../../helpers/templateLiteralTag");
|
8
|
+
var _orderView = require("./../utils/orderView");
|
9
9
|
var _element = require("../../../../helpers/dom/element");
|
10
10
|
var _a11y = require("../../../../helpers/a11y");
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
11
12
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
12
13
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
13
14
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
@@ -29,7 +30,7 @@ let performanceWarningAppeared = false;
|
|
29
30
|
*
|
30
31
|
* @class {RowsRenderer}
|
31
32
|
*/
|
32
|
-
class RowsRenderer extends _base.
|
33
|
+
class RowsRenderer extends _base.default {
|
33
34
|
constructor(rootNode) {
|
34
35
|
super('TR', rootNode);
|
35
36
|
/**
|
@@ -38,7 +39,7 @@ class RowsRenderer extends _base.BaseRenderer {
|
|
38
39
|
* @type {WeakMap}
|
39
40
|
*/
|
40
41
|
_defineProperty(this, "orderView", void 0);
|
41
|
-
this.orderView = new _orderView.OrderView(rootNode, sourceRowIndex => this.nodesPool.obtain(sourceRowIndex));
|
42
|
+
this.orderView = new _orderView.OrderView(rootNode, sourceRowIndex => this.nodesPool.obtain(sourceRowIndex), this.nodeType);
|
42
43
|
}
|
43
44
|
|
44
45
|
/**
|
@@ -51,16 +52,6 @@ class RowsRenderer extends _base.BaseRenderer {
|
|
51
52
|
return this.orderView.getNode(visualIndex);
|
52
53
|
}
|
53
54
|
|
54
|
-
/**
|
55
|
-
* Checks if the the row is marked as "stale" and has to be rerendered.
|
56
|
-
*
|
57
|
-
* @param {number} visualIndex Visual index of the rendered node (it always goeas from 0 to N).
|
58
|
-
* @returns {boolean}
|
59
|
-
*/
|
60
|
-
hasStaleContent(visualIndex) {
|
61
|
-
return this.orderView.hasStaleContent(visualIndex);
|
62
|
-
}
|
63
|
-
|
64
55
|
/**
|
65
56
|
* Renders the cells.
|
66
57
|
*/
|
@@ -88,17 +79,14 @@ class RowsRenderer extends _base.BaseRenderer {
|
|
88
79
|
// `aria-rowindex` is incremented by both tbody and thead rows.
|
89
80
|
(0, _a11y.A11Y_ROWINDEX)(sourceRowIndex + ((_this$table$rowUtils$ = (_this$table$rowUtils = this.table.rowUtils) === null || _this$table$rowUtils === void 0 || (_this$table$rowUtils = _this$table$rowUtils.dataAccessObject) === null || _this$table$rowUtils === void 0 ? void 0 : _this$table$rowUtils.columnHeaders.length) !== null && _this$table$rowUtils$ !== void 0 ? _this$table$rowUtils$ : 0) + 1)]);
|
90
81
|
}
|
82
|
+
(0, _element.removeClass)(TR, [ROW_CLASSNAMES.rowEven, ROW_CLASSNAMES.rowOdd]);
|
91
83
|
if ((sourceRowIndex + 1) % 2 === 0) {
|
92
|
-
|
93
|
-
|
94
|
-
(0, _element.addClass)(TR, ROW_CLASSNAMES.rowEven);
|
95
|
-
}
|
96
|
-
} else if (!(0, _element.hasClass)(TR, ROW_CLASSNAMES.rowOdd)) {
|
97
|
-
(0, _element.removeClass)(TR, ROW_CLASSNAMES.rowEven);
|
84
|
+
(0, _element.addClass)(TR, ROW_CLASSNAMES.rowEven);
|
85
|
+
} else {
|
98
86
|
(0, _element.addClass)(TR, ROW_CLASSNAMES.rowOdd);
|
99
87
|
}
|
100
88
|
}
|
101
89
|
this.orderView.end();
|
102
90
|
}
|
103
91
|
}
|
104
|
-
exports.
|
92
|
+
exports.default = RowsRenderer;
|
@@ -2,11 +2,11 @@ import "core-js/modules/es.error.cause.js";
|
|
2
2
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
3
3
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
4
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
5
|
-
import
|
6
|
-
import { warn } from "
|
7
|
-
import { toSingleLine } from "
|
8
|
-
import { OrderView } from "
|
9
|
-
import { addClass,
|
5
|
+
import BaseRenderer from "./_base.mjs";
|
6
|
+
import { warn } from "./../../../../helpers/console.mjs";
|
7
|
+
import { toSingleLine } from "./../../../../helpers/templateLiteralTag.mjs";
|
8
|
+
import { OrderView } from "./../utils/orderView/index.mjs";
|
9
|
+
import { addClass, removeClass, setAttribute } from "../../../../helpers/dom/element.mjs";
|
10
10
|
import { A11Y_ROW, A11Y_ROWGROUP, A11Y_ROWINDEX } from "../../../../helpers/a11y.mjs";
|
11
11
|
const ROW_CLASSNAMES = {
|
12
12
|
rowEven: 'ht__row_even',
|
@@ -26,7 +26,7 @@ let performanceWarningAppeared = false;
|
|
26
26
|
*
|
27
27
|
* @class {RowsRenderer}
|
28
28
|
*/
|
29
|
-
export class RowsRenderer extends BaseRenderer {
|
29
|
+
export default class RowsRenderer extends BaseRenderer {
|
30
30
|
constructor(rootNode) {
|
31
31
|
super('TR', rootNode);
|
32
32
|
/**
|
@@ -35,7 +35,7 @@ export class RowsRenderer extends BaseRenderer {
|
|
35
35
|
* @type {WeakMap}
|
36
36
|
*/
|
37
37
|
_defineProperty(this, "orderView", void 0);
|
38
|
-
this.orderView = new OrderView(rootNode, sourceRowIndex => this.nodesPool.obtain(sourceRowIndex));
|
38
|
+
this.orderView = new OrderView(rootNode, sourceRowIndex => this.nodesPool.obtain(sourceRowIndex), this.nodeType);
|
39
39
|
}
|
40
40
|
|
41
41
|
/**
|
@@ -48,16 +48,6 @@ export class RowsRenderer extends BaseRenderer {
|
|
48
48
|
return this.orderView.getNode(visualIndex);
|
49
49
|
}
|
50
50
|
|
51
|
-
/**
|
52
|
-
* Checks if the the row is marked as "stale" and has to be rerendered.
|
53
|
-
*
|
54
|
-
* @param {number} visualIndex Visual index of the rendered node (it always goeas from 0 to N).
|
55
|
-
* @returns {boolean}
|
56
|
-
*/
|
57
|
-
hasStaleContent(visualIndex) {
|
58
|
-
return this.orderView.hasStaleContent(visualIndex);
|
59
|
-
}
|
60
|
-
|
61
51
|
/**
|
62
52
|
* Renders the cells.
|
63
53
|
*/
|
@@ -85,13 +75,10 @@ export class RowsRenderer extends BaseRenderer {
|
|
85
75
|
// `aria-rowindex` is incremented by both tbody and thead rows.
|
86
76
|
A11Y_ROWINDEX(sourceRowIndex + ((_this$table$rowUtils$ = (_this$table$rowUtils = this.table.rowUtils) === null || _this$table$rowUtils === void 0 || (_this$table$rowUtils = _this$table$rowUtils.dataAccessObject) === null || _this$table$rowUtils === void 0 ? void 0 : _this$table$rowUtils.columnHeaders.length) !== null && _this$table$rowUtils$ !== void 0 ? _this$table$rowUtils$ : 0) + 1)]);
|
87
77
|
}
|
78
|
+
removeClass(TR, [ROW_CLASSNAMES.rowEven, ROW_CLASSNAMES.rowOdd]);
|
88
79
|
if ((sourceRowIndex + 1) % 2 === 0) {
|
89
|
-
|
90
|
-
|
91
|
-
addClass(TR, ROW_CLASSNAMES.rowEven);
|
92
|
-
}
|
93
|
-
} else if (!hasClass(TR, ROW_CLASSNAMES.rowOdd)) {
|
94
|
-
removeClass(TR, ROW_CLASSNAMES.rowEven);
|
80
|
+
addClass(TR, ROW_CLASSNAMES.rowEven);
|
81
|
+
} else {
|
95
82
|
addClass(TR, ROW_CLASSNAMES.rowOdd);
|
96
83
|
}
|
97
84
|
}
|
@@ -52,7 +52,8 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
52
52
|
class TableRenderer {
|
53
53
|
constructor(rootNode) {
|
54
54
|
let {
|
55
|
-
cellRenderer
|
55
|
+
cellRenderer,
|
56
|
+
stylesHandler
|
56
57
|
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
57
58
|
/**
|
58
59
|
* Table element which will be used to render the children element.
|
@@ -168,9 +169,14 @@ class TableRenderer {
|
|
168
169
|
* @type {'inline_start'|'top'|'top_inline_start_corner'|'bottom'|'bottom_inline_start_corner'|'master'}
|
169
170
|
*/
|
170
171
|
_defineProperty(this, "activeOverlayName", void 0);
|
172
|
+
/**
|
173
|
+
* Styles handler instance.
|
174
|
+
*/
|
175
|
+
_defineProperty(this, "stylesHandler", void 0);
|
171
176
|
this.rootNode = rootNode;
|
172
177
|
this.rootDocument = this.rootNode.ownerDocument;
|
173
178
|
this.cellRenderer = cellRenderer;
|
179
|
+
this.stylesHandler = stylesHandler;
|
174
180
|
}
|
175
181
|
|
176
182
|
/**
|
@@ -313,12 +319,15 @@ class TableRenderer {
|
|
313
319
|
// Fix for multi-line content and for supporting `rowHeights` option.
|
314
320
|
for (let visibleRowIndex = 0; visibleRowIndex < rowsToRender; visibleRowIndex++) {
|
315
321
|
const TR = rows.getRenderedNode(visibleRowIndex);
|
322
|
+
const rowUtils = this.rowUtils;
|
316
323
|
if (TR.firstChild) {
|
317
324
|
const sourceRowIndex = this.renderedRowToSource(visibleRowIndex);
|
318
|
-
const rowHeight =
|
325
|
+
const rowHeight = rowUtils.getHeightByOverlayName(sourceRowIndex, this.activeOverlayName);
|
326
|
+
const isBorderBoxSizing = this.stylesHandler.areCellsBorderBox();
|
327
|
+
const borderCompensation = isBorderBoxSizing ? 0 : 1;
|
319
328
|
if (rowHeight) {
|
320
329
|
// Decrease height. 1 pixel will be "replaced" by 1px border top
|
321
|
-
TR.firstChild.style.height = `${rowHeight -
|
330
|
+
TR.firstChild.style.height = `${rowHeight - borderCompensation}px`;
|
322
331
|
} else {
|
323
332
|
TR.firstChild.style.height = '';
|
324
333
|
}
|
@@ -326,4 +335,4 @@ class TableRenderer {
|
|
326
335
|
}
|
327
336
|
}
|
328
337
|
}
|
329
|
-
exports.
|
338
|
+
exports.default = TableRenderer;
|
@@ -46,10 +46,11 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
46
46
|
*
|
47
47
|
* @class {RowsRenderer}
|
48
48
|
*/
|
49
|
-
export class TableRenderer {
|
49
|
+
export default class TableRenderer {
|
50
50
|
constructor(rootNode) {
|
51
51
|
let {
|
52
|
-
cellRenderer
|
52
|
+
cellRenderer,
|
53
|
+
stylesHandler
|
53
54
|
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
54
55
|
/**
|
55
56
|
* Table element which will be used to render the children element.
|
@@ -165,9 +166,14 @@ export class TableRenderer {
|
|
165
166
|
* @type {'inline_start'|'top'|'top_inline_start_corner'|'bottom'|'bottom_inline_start_corner'|'master'}
|
166
167
|
*/
|
167
168
|
_defineProperty(this, "activeOverlayName", void 0);
|
169
|
+
/**
|
170
|
+
* Styles handler instance.
|
171
|
+
*/
|
172
|
+
_defineProperty(this, "stylesHandler", void 0);
|
168
173
|
this.rootNode = rootNode;
|
169
174
|
this.rootDocument = this.rootNode.ownerDocument;
|
170
175
|
this.cellRenderer = cellRenderer;
|
176
|
+
this.stylesHandler = stylesHandler;
|
171
177
|
}
|
172
178
|
|
173
179
|
/**
|
@@ -310,12 +316,15 @@ export class TableRenderer {
|
|
310
316
|
// Fix for multi-line content and for supporting `rowHeights` option.
|
311
317
|
for (let visibleRowIndex = 0; visibleRowIndex < rowsToRender; visibleRowIndex++) {
|
312
318
|
const TR = rows.getRenderedNode(visibleRowIndex);
|
319
|
+
const rowUtils = this.rowUtils;
|
313
320
|
if (TR.firstChild) {
|
314
321
|
const sourceRowIndex = this.renderedRowToSource(visibleRowIndex);
|
315
|
-
const rowHeight =
|
322
|
+
const rowHeight = rowUtils.getHeightByOverlayName(sourceRowIndex, this.activeOverlayName);
|
323
|
+
const isBorderBoxSizing = this.stylesHandler.areCellsBorderBox();
|
324
|
+
const borderCompensation = isBorderBoxSizing ? 0 : 1;
|
316
325
|
if (rowHeight) {
|
317
326
|
// Decrease height. 1 pixel will be "replaced" by 1px border top
|
318
|
-
TR.firstChild.style.height = `${rowHeight -
|
327
|
+
TR.firstChild.style.height = `${rowHeight - borderCompensation}px`;
|
319
328
|
} else {
|
320
329
|
TR.firstChild.style.height = '';
|
321
330
|
}
|
@@ -19,7 +19,6 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
19
19
|
* @property {Option} currentRowClassName Option `currentRowClassName`.
|
20
20
|
* @property {Option} data Option `data`.
|
21
21
|
* @property {Option} defaultColumnWidth Option `defaultColumnWidth`.
|
22
|
-
* @property {Option} defaultRowHeight Option `defaultRowHeight`.
|
23
22
|
* @property {Option} externalRowCalculator Option `externalRowCalculator`.
|
24
23
|
* @property {Option} fixedColumnsStart Option `fixedColumnsStart`.
|
25
24
|
* @property {Option} fixedRowsBottom Option `fixedRowsBottom`.
|
@@ -185,7 +184,6 @@ class Settings {
|
|
185
184
|
rowHeightByOverlayName() {
|
186
185
|
// return undefined means use default size for the rendered cell content
|
187
186
|
},
|
188
|
-
defaultRowHeight: 23,
|
189
187
|
defaultColumnWidth: 50,
|
190
188
|
selections: null,
|
191
189
|
hideBorderOnMouseDownOver: false,
|
@@ -16,7 +16,6 @@ import { objectEach } from "../../../helpers/object.mjs";
|
|
16
16
|
* @property {Option} currentRowClassName Option `currentRowClassName`.
|
17
17
|
* @property {Option} data Option `data`.
|
18
18
|
* @property {Option} defaultColumnWidth Option `defaultColumnWidth`.
|
19
|
-
* @property {Option} defaultRowHeight Option `defaultRowHeight`.
|
20
19
|
* @property {Option} externalRowCalculator Option `externalRowCalculator`.
|
21
20
|
* @property {Option} fixedColumnsStart Option `fixedColumnsStart`.
|
22
21
|
* @property {Option} fixedRowsBottom Option `fixedRowsBottom`.
|
@@ -180,7 +179,6 @@ export default class Settings {
|
|
180
179
|
rowHeightByOverlayName() {
|
181
180
|
// return undefined means use default size for the rendered cell content
|
182
181
|
},
|
183
|
-
defaultRowHeight: 23,
|
184
182
|
defaultColumnWidth: 50,
|
185
183
|
selections: null,
|
186
184
|
hideBorderOnMouseDownOver: false,
|
@@ -117,7 +117,8 @@ class Table {
|
|
117
117
|
TBODY: this.TBODY,
|
118
118
|
rowUtils: this.rowUtils,
|
119
119
|
columnUtils: this.columnUtils,
|
120
|
-
cellRenderer: this.wtSettings.getSettingPure('cellRenderer')
|
120
|
+
cellRenderer: this.wtSettings.getSettingPure('cellRenderer'),
|
121
|
+
stylesHandler: this.dataAccessObject.stylesHandler
|
121
122
|
});
|
122
123
|
}
|
123
124
|
|
@@ -353,7 +354,7 @@ class Table {
|
|
353
354
|
markIfOversizedColumnHeader(col) {
|
354
355
|
const sourceColIndex = this.columnFilter.renderedToSource(col);
|
355
356
|
let level = this.wtSettings.getSetting('columnHeaders').length;
|
356
|
-
const defaultRowHeight = this.
|
357
|
+
const defaultRowHeight = this.dataAccessObject.stylesHandler.getDefaultRowHeight();
|
357
358
|
let previousColHeaderHeight;
|
358
359
|
let currentHeader;
|
359
360
|
let currentHeaderHeight;
|
@@ -631,10 +632,14 @@ class Table {
|
|
631
632
|
return;
|
632
633
|
}
|
633
634
|
let rowCount = this.TBODY.childNodes.length;
|
634
|
-
const expectedTableHeight = rowCount * this.
|
635
|
+
const expectedTableHeight = rowCount * this.dataAccessObject.stylesHandler.getDefaultRowHeight();
|
635
636
|
const actualTableHeight = (0, _element.innerHeight)(this.TBODY) - 1;
|
637
|
+
const borderBoxSizing = this.wot.stylesHandler.areCellsBorderBox();
|
638
|
+
const rowHeightFn = borderBoxSizing ? _element.outerHeight : _element.innerHeight;
|
639
|
+
const borderCompensation = borderBoxSizing ? 0 : 1;
|
640
|
+
const firstRowBorderCompensation = borderBoxSizing ? 1 : 0;
|
636
641
|
let previousRowHeight;
|
637
|
-
let
|
642
|
+
let rowCurrentHeight;
|
638
643
|
let sourceRowIndex;
|
639
644
|
let currentTr;
|
640
645
|
let rowHeader;
|
@@ -648,14 +653,17 @@ class Table {
|
|
648
653
|
previousRowHeight = this.getRowHeight(sourceRowIndex);
|
649
654
|
currentTr = this.getTrForRow(sourceRowIndex);
|
650
655
|
rowHeader = currentTr.querySelector('th');
|
656
|
+
const topBorderCompensation = sourceRowIndex === 0 ? firstRowBorderCompensation : 0;
|
651
657
|
if (rowHeader) {
|
652
|
-
|
658
|
+
rowCurrentHeight = rowHeightFn(rowHeader);
|
653
659
|
} else {
|
654
|
-
|
660
|
+
rowCurrentHeight = rowHeightFn(currentTr) - borderCompensation;
|
655
661
|
}
|
656
|
-
if (!previousRowHeight && this.
|
657
|
-
|
658
|
-
|
662
|
+
if (!previousRowHeight && this.dataAccessObject.stylesHandler.getDefaultRowHeight() < rowCurrentHeight - topBorderCompensation || previousRowHeight < rowCurrentHeight) {
|
663
|
+
if (!borderBoxSizing) {
|
664
|
+
rowCurrentHeight += 1;
|
665
|
+
}
|
666
|
+
this.dataAccessObject.wtViewport.oversizedRows[sourceRowIndex] = rowCurrentHeight;
|
659
667
|
}
|
660
668
|
}
|
661
669
|
}
|
@@ -113,7 +113,8 @@ class Table {
|
|
113
113
|
TBODY: this.TBODY,
|
114
114
|
rowUtils: this.rowUtils,
|
115
115
|
columnUtils: this.columnUtils,
|
116
|
-
cellRenderer: this.wtSettings.getSettingPure('cellRenderer')
|
116
|
+
cellRenderer: this.wtSettings.getSettingPure('cellRenderer'),
|
117
|
+
stylesHandler: this.dataAccessObject.stylesHandler
|
117
118
|
});
|
118
119
|
}
|
119
120
|
|
@@ -349,7 +350,7 @@ class Table {
|
|
349
350
|
markIfOversizedColumnHeader(col) {
|
350
351
|
const sourceColIndex = this.columnFilter.renderedToSource(col);
|
351
352
|
let level = this.wtSettings.getSetting('columnHeaders').length;
|
352
|
-
const defaultRowHeight = this.
|
353
|
+
const defaultRowHeight = this.dataAccessObject.stylesHandler.getDefaultRowHeight();
|
353
354
|
let previousColHeaderHeight;
|
354
355
|
let currentHeader;
|
355
356
|
let currentHeaderHeight;
|
@@ -627,10 +628,14 @@ class Table {
|
|
627
628
|
return;
|
628
629
|
}
|
629
630
|
let rowCount = this.TBODY.childNodes.length;
|
630
|
-
const expectedTableHeight = rowCount * this.
|
631
|
+
const expectedTableHeight = rowCount * this.dataAccessObject.stylesHandler.getDefaultRowHeight();
|
631
632
|
const actualTableHeight = innerHeight(this.TBODY) - 1;
|
633
|
+
const borderBoxSizing = this.wot.stylesHandler.areCellsBorderBox();
|
634
|
+
const rowHeightFn = borderBoxSizing ? outerHeight : innerHeight;
|
635
|
+
const borderCompensation = borderBoxSizing ? 0 : 1;
|
636
|
+
const firstRowBorderCompensation = borderBoxSizing ? 1 : 0;
|
632
637
|
let previousRowHeight;
|
633
|
-
let
|
638
|
+
let rowCurrentHeight;
|
634
639
|
let sourceRowIndex;
|
635
640
|
let currentTr;
|
636
641
|
let rowHeader;
|
@@ -644,14 +649,17 @@ class Table {
|
|
644
649
|
previousRowHeight = this.getRowHeight(sourceRowIndex);
|
645
650
|
currentTr = this.getTrForRow(sourceRowIndex);
|
646
651
|
rowHeader = currentTr.querySelector('th');
|
652
|
+
const topBorderCompensation = sourceRowIndex === 0 ? firstRowBorderCompensation : 0;
|
647
653
|
if (rowHeader) {
|
648
|
-
|
654
|
+
rowCurrentHeight = rowHeightFn(rowHeader);
|
649
655
|
} else {
|
650
|
-
|
656
|
+
rowCurrentHeight = rowHeightFn(currentTr) - borderCompensation;
|
651
657
|
}
|
652
|
-
if (!previousRowHeight && this.
|
653
|
-
|
654
|
-
|
658
|
+
if (!previousRowHeight && this.dataAccessObject.stylesHandler.getDefaultRowHeight() < rowCurrentHeight - topBorderCompensation || previousRowHeight < rowCurrentHeight) {
|
659
|
+
if (!borderBoxSizing) {
|
660
|
+
rowCurrentHeight += 1;
|
661
|
+
}
|
662
|
+
this.dataAccessObject.wtViewport.oversizedRows[sourceRowIndex] = rowCurrentHeight;
|
655
663
|
}
|
656
664
|
}
|
657
665
|
}
|
@@ -66,6 +66,7 @@
|
|
66
66
|
* @property {Walkontable} cloneSource CloneSource.
|
67
67
|
* @property {Walkontable} wot Wot.
|
68
68
|
* @property {number} parentTableOffset ParentTableOffset.
|
69
|
+
* @property {StylesHandler} stylesHandler StylesHandler.
|
69
70
|
* @property {number|null} startColumnRendered StartColumnRendered.
|
70
71
|
* @property {number|null} startColumnVisible StartColumnVisible.
|
71
72
|
* @property {number|null} endColumnRendered EndColumnRendered.
|
@@ -66,6 +66,7 @@
|
|
66
66
|
* @property {Walkontable} cloneSource CloneSource.
|
67
67
|
* @property {Walkontable} wot Wot.
|
68
68
|
* @property {number} parentTableOffset ParentTableOffset.
|
69
|
+
* @property {StylesHandler} stylesHandler StylesHandler.
|
69
70
|
* @property {number|null} startColumnRendered StartColumnRendered.
|
70
71
|
* @property {number|null} startColumnVisible StartColumnVisible.
|
71
72
|
* @property {number|null} endColumnRendered EndColumnRendered.
|
@@ -50,7 +50,7 @@ class ColumnUtils {
|
|
50
50
|
* @returns {number}
|
51
51
|
*/
|
52
52
|
getHeaderHeight(level) {
|
53
|
-
let height = this.
|
53
|
+
let height = this.dataAccessObject.stylesHandler.getDefaultRowHeight();
|
54
54
|
const oversizedHeight = this.dataAccessObject.wtViewport.oversizedColumnHeaders[level];
|
55
55
|
if (oversizedHeight !== undefined) {
|
56
56
|
height = height ? Math.max(height, oversizedHeight) : oversizedHeight;
|
@@ -47,7 +47,7 @@ export default class ColumnUtils {
|
|
47
47
|
* @returns {number}
|
48
48
|
*/
|
49
49
|
getHeaderHeight(level) {
|
50
|
-
let height = this.
|
50
|
+
let height = this.dataAccessObject.stylesHandler.getDefaultRowHeight();
|
51
51
|
const oversizedHeight = this.dataAccessObject.wtViewport.oversizedColumnHeaders[level];
|
52
52
|
if (oversizedHeight !== undefined) {
|
53
53
|
height = height ? Math.max(height, oversizedHeight) : oversizedHeight;
|
@@ -13,24 +13,18 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
13
13
|
class NodesPool {
|
14
14
|
constructor(nodeType) {
|
15
15
|
/**
|
16
|
-
* Node type to generate (
|
16
|
+
* Node type to generate (ew 'th', 'td').
|
17
17
|
*
|
18
18
|
* @type {string}
|
19
19
|
*/
|
20
20
|
_defineProperty(this, "nodeType", void 0);
|
21
|
-
/**
|
22
|
-
* The holder for all created DOM nodes (THs, TDs).
|
23
|
-
*
|
24
|
-
* @type {Map<string, HTMLElement>}
|
25
|
-
*/
|
26
|
-
_defineProperty(this, "pool", new Map());
|
27
21
|
this.nodeType = nodeType.toUpperCase();
|
28
22
|
}
|
29
23
|
|
30
24
|
/**
|
31
25
|
* Set document owner for this instance.
|
32
26
|
*
|
33
|
-
* @param {
|
27
|
+
* @param {HTMLDocument} rootDocument The document window owner.
|
34
28
|
*/
|
35
29
|
setRootDocument(rootDocument) {
|
36
30
|
this.rootDocument = rootDocument;
|
@@ -39,21 +33,10 @@ class NodesPool {
|
|
39
33
|
/**
|
40
34
|
* Obtains an element. The returned elements in the feature can be cached.
|
41
35
|
*
|
42
|
-
* @param {number} rowIndex The row index.
|
43
|
-
* @param {number} [columnIndex] The column index.
|
44
36
|
* @returns {HTMLElement}
|
45
37
|
*/
|
46
|
-
obtain(
|
47
|
-
|
48
|
-
const key = hasColumnIndex ? `${rowIndex}x${columnIndex}` : rowIndex.toString();
|
49
|
-
if (this.pool.has(key)) {
|
50
|
-
return this.pool.get(key);
|
51
|
-
}
|
52
|
-
const node = this.rootDocument.createElement(this.nodeType);
|
53
|
-
|
54
|
-
// node.dataset.id = key; // Uncomment for debug purposes
|
55
|
-
this.pool.set(key, node);
|
56
|
-
return node;
|
38
|
+
obtain() {
|
39
|
+
return this.rootDocument.createElement(this.nodeType);
|
57
40
|
}
|
58
41
|
}
|
59
|
-
exports.
|
42
|
+
exports.default = NodesPool;
|
@@ -7,27 +7,21 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
7
7
|
*
|
8
8
|
* @class {NodesPool}
|
9
9
|
*/
|
10
|
-
export class NodesPool {
|
10
|
+
export default class NodesPool {
|
11
11
|
constructor(nodeType) {
|
12
12
|
/**
|
13
|
-
* Node type to generate (
|
13
|
+
* Node type to generate (ew 'th', 'td').
|
14
14
|
*
|
15
15
|
* @type {string}
|
16
16
|
*/
|
17
17
|
_defineProperty(this, "nodeType", void 0);
|
18
|
-
/**
|
19
|
-
* The holder for all created DOM nodes (THs, TDs).
|
20
|
-
*
|
21
|
-
* @type {Map<string, HTMLElement>}
|
22
|
-
*/
|
23
|
-
_defineProperty(this, "pool", new Map());
|
24
18
|
this.nodeType = nodeType.toUpperCase();
|
25
19
|
}
|
26
20
|
|
27
21
|
/**
|
28
22
|
* Set document owner for this instance.
|
29
23
|
*
|
30
|
-
* @param {
|
24
|
+
* @param {HTMLDocument} rootDocument The document window owner.
|
31
25
|
*/
|
32
26
|
setRootDocument(rootDocument) {
|
33
27
|
this.rootDocument = rootDocument;
|
@@ -36,20 +30,9 @@ export class NodesPool {
|
|
36
30
|
/**
|
37
31
|
* Obtains an element. The returned elements in the feature can be cached.
|
38
32
|
*
|
39
|
-
* @param {number} rowIndex The row index.
|
40
|
-
* @param {number} [columnIndex] The column index.
|
41
33
|
* @returns {HTMLElement}
|
42
34
|
*/
|
43
|
-
obtain(
|
44
|
-
|
45
|
-
const key = hasColumnIndex ? `${rowIndex}x${columnIndex}` : rowIndex.toString();
|
46
|
-
if (this.pool.has(key)) {
|
47
|
-
return this.pool.get(key);
|
48
|
-
}
|
49
|
-
const node = this.rootDocument.createElement(this.nodeType);
|
50
|
-
|
51
|
-
// node.dataset.id = key; // Uncomment for debug purposes
|
52
|
-
this.pool.set(key, node);
|
53
|
-
return node;
|
35
|
+
obtain() {
|
36
|
+
return this.rootDocument.createElement(this.nodeType);
|
54
37
|
}
|
55
38
|
}
|
@@ -1,7 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
|
-
var _view = require("./view");
|
5
|
-
exports.OrderView = _view.
|
6
|
-
var _sharedView = require("./sharedView");
|
7
|
-
exports.SharedOrderView = _sharedView.
|
4
|
+
var _view = _interopRequireDefault(require("./view"));
|
5
|
+
exports.OrderView = _view.default;
|
6
|
+
var _sharedView = _interopRequireDefault(require("./sharedView"));
|
7
|
+
exports.SharedOrderView = _sharedView.default;
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|