jqtree 1.6.3 → 1.7.1
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/.github/workflows/ci.yml +15 -21
- package/.github/workflows/codeql-analysis.yml +2 -2
- package/README.md +1 -1
- package/bower.json +10 -3
- package/config/production +2 -2
- package/config/{rollup.config.js → rollup.config.mjs} +3 -8
- package/docs/Gemfile.lock +34 -37
- package/docs/_config.yml +1 -1
- package/docs/_entries/10_changelog.md +13 -0
- package/docs/_entries/93_getnextnode.md +4 -1
- package/docs/_entries/{95_getpreviousnode.md → 95_getnextvisiblenode.md} +1 -1
- package/docs/_entries/96_getpreviousnode.md +0 -0
- package/docs/_entries/98_getpreviousvisiblenode.md +14 -0
- package/docs/package.json +7 -7
- package/docs/pnpm-lock.yaml +413 -265
- package/docs/static/bower.json +2 -2
- package/docs/static/bower_components/fontawesome/css/all.min.css +6 -2
- package/docs/static/bower_components/fontawesome/webfonts/fa-brands-400.ttf +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-brands-400.woff2 +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-regular-400.ttf +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-regular-400.woff2 +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-solid-900.ttf +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-solid-900.woff2 +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-v4compatibility.ttf +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-v4compatibility.woff2 +0 -0
- package/docs/static/bower_components/jquery/dist/jquery.js +944 -1121
- package/docs/static/bower_components/jquery/dist/jquery.min.js +2 -2
- package/docs/static/documentation.css +181 -159
- package/docs/static/example.css +0 -1
- package/docs/tree.jquery.js +3 -3
- package/lib/dataLoader.js +5 -31
- package/lib/dragAndDropHandler.js +40 -142
- package/lib/elementsRenderer.js +52 -72
- package/lib/keyHandler.js +8 -32
- package/lib/mouse.widget.js +24 -74
- package/lib/node.js +72 -134
- package/lib/nodeElement.js +24 -84
- package/lib/playwright/coverage.js +58 -97
- package/lib/playwright/playwright.test.js +148 -210
- package/lib/playwright/testUtils.js +116 -182
- package/lib/saveStateHandler.js +13 -62
- package/lib/scrollHandler.js +24 -77
- package/lib/selectNodeHandler.js +6 -25
- package/lib/simple.widget.js +20 -53
- package/lib/test/jqTree/accessibility.test.js +37 -0
- package/lib/test/jqTree/create.test.js +0 -4
- package/lib/test/jqTree/events.test.js +73 -84
- package/lib/test/jqTree/keyboard.test.js +0 -6
- package/lib/test/jqTree/loadOnDemand.test.js +84 -121
- package/lib/test/jqTree/methods.test.js +107 -150
- package/lib/test/jqTree/options.test.js +32 -54
- package/lib/test/node.test.js +134 -76
- package/lib/test/nodeUtil.test.js +0 -1
- package/lib/test/support/jqTreeMatchers.js +4 -9
- package/lib/test/support/setupTests.js +0 -4
- package/lib/test/support/testUtil.js +2 -11
- package/lib/test/support/treeStructure.js +0 -6
- package/lib/test/util.test.js +0 -1
- package/lib/tree.jquery.js +28 -239
- package/lib/util.js +0 -6
- package/lib/version.js +1 -1
- package/package.json +44 -47
- package/src/dragAndDropHandler.ts +24 -10
- package/src/elementsRenderer.ts +49 -42
- package/src/jqtreeOptions.ts +3 -3
- package/src/keyHandler.ts +3 -3
- package/src/mouse.widget.ts +12 -0
- package/src/node.ts +52 -16
- package/src/nodeElement.ts +27 -21
- package/src/saveStateHandler.ts +1 -1
- package/src/scrollHandler.ts +6 -2
- package/src/selectNodeHandler.ts +1 -1
- package/src/simple.widget.ts +2 -0
- package/src/test/.eslintrc +3 -1
- package/src/test/jqTree/accessibility.test.ts +25 -0
- package/src/test/jqTree/events.test.ts +79 -93
- package/src/test/jqTree/methods.test.ts +1 -1
- package/src/test/node.test.ts +152 -58
- package/src/test/nodeUtil.test.ts +1 -1
- package/src/tree.jquery.ts +7 -6
- package/src/version.ts +1 -1
- package/tree.jquery.debug.js +297 -904
- package/tree.jquery.debug.js.map +1 -1
- package/tree.jquery.js +3 -3
- package/tree.jquery.js.map +1 -1
- package/tsconfig.json +1 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-brands-400.eot +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-brands-400.svg +0 -3717
- package/docs/static/bower_components/fontawesome/webfonts/fa-brands-400.woff +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-regular-400.eot +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-regular-400.svg +0 -801
- package/docs/static/bower_components/fontawesome/webfonts/fa-regular-400.woff +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-solid-900.eot +0 -0
- package/docs/static/bower_components/fontawesome/webfonts/fa-solid-900.svg +0 -5028
- package/docs/static/bower_components/fontawesome/webfonts/fa-solid-900.woff +0 -0
- /package/docs/_entries/{96_getprevioussibling.md → 97_getprevioussibling.md} +0 -0
- /package/docs/_entries/{97_parent.md → 99_parent.md} +0 -0
package/lib/elementsRenderer.js
CHANGED
|
@@ -4,38 +4,27 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
|
-
|
|
8
7
|
var _util = require("./util");
|
|
9
|
-
|
|
8
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
10
9
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
11
|
-
|
|
12
10
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
13
|
-
|
|
14
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
15
|
-
|
|
11
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
16
12
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
17
|
-
|
|
18
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
19
|
-
|
|
13
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
20
14
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
21
|
-
|
|
22
|
-
function
|
|
23
|
-
|
|
15
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
16
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
17
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
24
18
|
var ElementsRenderer = /*#__PURE__*/function () {
|
|
25
19
|
function ElementsRenderer(treeWidget) {
|
|
26
20
|
_classCallCheck(this, ElementsRenderer);
|
|
27
|
-
|
|
28
21
|
_defineProperty(this, "openedIconElement", void 0);
|
|
29
|
-
|
|
30
22
|
_defineProperty(this, "closedIconElement", void 0);
|
|
31
|
-
|
|
32
23
|
_defineProperty(this, "treeWidget", void 0);
|
|
33
|
-
|
|
34
24
|
this.treeWidget = treeWidget;
|
|
35
25
|
this.openedIconElement = this.createButtonElement(treeWidget.options.openedIcon || "+");
|
|
36
26
|
this.closedIconElement = this.createButtonElement(treeWidget.options.closedIcon || "-");
|
|
37
27
|
}
|
|
38
|
-
|
|
39
28
|
_createClass(ElementsRenderer, [{
|
|
40
29
|
key: "render",
|
|
41
30
|
value: function render(fromNode) {
|
|
@@ -50,21 +39,27 @@ var ElementsRenderer = /*#__PURE__*/function () {
|
|
|
50
39
|
value: function renderFromRoot() {
|
|
51
40
|
var $element = this.treeWidget.element;
|
|
52
41
|
$element.empty();
|
|
53
|
-
|
|
42
|
+
if ($element[0]) {
|
|
43
|
+
this.createDomElements($element[0], this.treeWidget.tree.children, true, 1);
|
|
44
|
+
}
|
|
54
45
|
}
|
|
55
46
|
}, {
|
|
56
47
|
key: "renderFromNode",
|
|
57
48
|
value: function renderFromNode(node) {
|
|
58
49
|
// remember current li
|
|
59
|
-
var $previousLi = jQuery(node.element);
|
|
50
|
+
var $previousLi = jQuery(node.element);
|
|
60
51
|
|
|
52
|
+
// create element
|
|
61
53
|
var li = this.createLi(node, node.getLevel());
|
|
62
|
-
this.attachNodeData(node, li);
|
|
54
|
+
this.attachNodeData(node, li);
|
|
63
55
|
|
|
64
|
-
|
|
56
|
+
// add element to dom
|
|
57
|
+
$previousLi.after(li);
|
|
65
58
|
|
|
66
|
-
|
|
59
|
+
// remove previous li
|
|
60
|
+
$previousLi.remove();
|
|
67
61
|
|
|
62
|
+
// create children
|
|
68
63
|
if (node.children) {
|
|
69
64
|
this.createDomElements(li, node.children, false, node.getLevel() + 1);
|
|
70
65
|
}
|
|
@@ -74,17 +69,14 @@ var ElementsRenderer = /*#__PURE__*/function () {
|
|
|
74
69
|
value: function createDomElements(element, children, isRootNode, level) {
|
|
75
70
|
var ul = this.createUl(isRootNode);
|
|
76
71
|
element.appendChild(ul);
|
|
77
|
-
|
|
78
72
|
var _iterator = _createForOfIteratorHelper(children),
|
|
79
|
-
|
|
80
|
-
|
|
73
|
+
_step;
|
|
81
74
|
try {
|
|
82
75
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
83
76
|
var child = _step.value;
|
|
84
77
|
var li = this.createLi(child, level);
|
|
85
78
|
ul.appendChild(li);
|
|
86
79
|
this.attachNodeData(child, li);
|
|
87
|
-
|
|
88
80
|
if (child.hasChildren()) {
|
|
89
81
|
this.createDomElements(li, child.children, false, level + 1);
|
|
90
82
|
}
|
|
@@ -106,23 +98,19 @@ var ElementsRenderer = /*#__PURE__*/function () {
|
|
|
106
98
|
value: function createUl(isRootNode) {
|
|
107
99
|
var classString;
|
|
108
100
|
var role;
|
|
109
|
-
|
|
110
101
|
if (!isRootNode) {
|
|
111
102
|
classString = "";
|
|
112
103
|
role = "group";
|
|
113
104
|
} else {
|
|
114
105
|
classString = "jqtree-tree";
|
|
115
106
|
role = "tree";
|
|
116
|
-
|
|
117
107
|
if (this.treeWidget.options.rtl) {
|
|
118
108
|
classString += " jqtree-rtl";
|
|
119
109
|
}
|
|
120
110
|
}
|
|
121
|
-
|
|
122
111
|
if (this.treeWidget.options.dragAndDrop) {
|
|
123
112
|
classString += " jqtree-dnd";
|
|
124
113
|
}
|
|
125
|
-
|
|
126
114
|
var ul = document.createElement("ul");
|
|
127
115
|
ul.className = "jqtree_common ".concat(classString);
|
|
128
116
|
ul.setAttribute("role", role);
|
|
@@ -134,138 +122,132 @@ var ElementsRenderer = /*#__PURE__*/function () {
|
|
|
134
122
|
var isSelected = Boolean(this.treeWidget.selectNodeHandler.isNodeSelected(node));
|
|
135
123
|
var mustShowFolder = node.isFolder() || node.isEmptyFolder && this.treeWidget.options.showEmptyFolder;
|
|
136
124
|
var li = mustShowFolder ? this.createFolderLi(node, level, isSelected) : this.createNodeLi(node, level, isSelected);
|
|
137
|
-
|
|
138
125
|
if (this.treeWidget.options.onCreateLi) {
|
|
139
126
|
this.treeWidget.options.onCreateLi(node, jQuery(li), isSelected);
|
|
140
127
|
}
|
|
141
|
-
|
|
142
128
|
return li;
|
|
143
129
|
}
|
|
130
|
+
}, {
|
|
131
|
+
key: "setTreeItemAriaAttributes",
|
|
132
|
+
value: function setTreeItemAriaAttributes(element, name, level, isSelected) {
|
|
133
|
+
element.setAttribute("aria-label", name);
|
|
134
|
+
element.setAttribute("aria-level", "".concat(level));
|
|
135
|
+
element.setAttribute("aria-selected", (0, _util.getBoolString)(isSelected));
|
|
136
|
+
element.setAttribute("role", "treeitem");
|
|
137
|
+
}
|
|
144
138
|
}, {
|
|
145
139
|
key: "createFolderLi",
|
|
146
140
|
value: function createFolderLi(node, level, isSelected) {
|
|
147
141
|
var buttonClasses = this.getButtonClasses(node);
|
|
148
142
|
var folderClasses = this.getFolderClasses(node, isSelected);
|
|
149
|
-
var iconElement = node.is_open ? this.openedIconElement : this.closedIconElement;
|
|
143
|
+
var iconElement = node.is_open ? this.openedIconElement : this.closedIconElement;
|
|
150
144
|
|
|
145
|
+
// li
|
|
151
146
|
var li = document.createElement("li");
|
|
152
147
|
li.className = "jqtree_common ".concat(folderClasses);
|
|
153
|
-
li.setAttribute("role", "
|
|
148
|
+
li.setAttribute("role", "none");
|
|
154
149
|
|
|
150
|
+
// div
|
|
155
151
|
var div = document.createElement("div");
|
|
156
152
|
div.className = "jqtree-element jqtree_common";
|
|
157
|
-
div.setAttribute("role", "
|
|
158
|
-
li.appendChild(div);
|
|
153
|
+
div.setAttribute("role", "none");
|
|
154
|
+
li.appendChild(div);
|
|
159
155
|
|
|
156
|
+
// button link
|
|
160
157
|
var buttonLink = document.createElement("a");
|
|
161
158
|
buttonLink.className = buttonClasses;
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
159
|
+
if (iconElement) {
|
|
160
|
+
buttonLink.appendChild(iconElement.cloneNode(true));
|
|
161
|
+
}
|
|
166
162
|
if (this.treeWidget.options.buttonLeft) {
|
|
167
163
|
div.appendChild(buttonLink);
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
div.appendChild(this.createTitleSpan(node.name, level, isSelected, node.is_open, true));
|
|
164
|
+
}
|
|
172
165
|
|
|
166
|
+
// title span
|
|
167
|
+
var titleSpan = this.createTitleSpan(node.name, isSelected, true, level);
|
|
168
|
+
titleSpan.setAttribute("aria-expanded", (0, _util.getBoolString)(node.is_open));
|
|
169
|
+
div.appendChild(titleSpan);
|
|
173
170
|
if (!this.treeWidget.options.buttonLeft) {
|
|
174
171
|
div.appendChild(buttonLink);
|
|
175
172
|
}
|
|
176
|
-
|
|
177
173
|
return li;
|
|
178
174
|
}
|
|
179
175
|
}, {
|
|
180
176
|
key: "createNodeLi",
|
|
181
177
|
value: function createNodeLi(node, level, isSelected) {
|
|
182
178
|
var liClasses = ["jqtree_common"];
|
|
183
|
-
|
|
184
179
|
if (isSelected) {
|
|
185
180
|
liClasses.push("jqtree-selected");
|
|
186
181
|
}
|
|
182
|
+
var classString = liClasses.join(" ");
|
|
187
183
|
|
|
188
|
-
|
|
189
|
-
|
|
184
|
+
// li
|
|
190
185
|
var li = document.createElement("li");
|
|
191
186
|
li.className = classString;
|
|
192
|
-
li.setAttribute("role", "
|
|
187
|
+
li.setAttribute("role", "none");
|
|
193
188
|
|
|
189
|
+
// div
|
|
194
190
|
var div = document.createElement("div");
|
|
195
191
|
div.className = "jqtree-element jqtree_common";
|
|
196
|
-
div.setAttribute("role", "
|
|
197
|
-
li.appendChild(div);
|
|
192
|
+
div.setAttribute("role", "none");
|
|
193
|
+
li.appendChild(div);
|
|
198
194
|
|
|
199
|
-
|
|
195
|
+
// title span
|
|
196
|
+
var titleSpan = this.createTitleSpan(node.name, isSelected, false, level);
|
|
197
|
+
div.appendChild(titleSpan);
|
|
200
198
|
return li;
|
|
201
199
|
}
|
|
202
200
|
}, {
|
|
203
201
|
key: "createTitleSpan",
|
|
204
|
-
value: function createTitleSpan(nodeName,
|
|
202
|
+
value: function createTitleSpan(nodeName, isSelected, isFolder, level) {
|
|
205
203
|
var titleSpan = document.createElement("span");
|
|
206
204
|
var classes = "jqtree-title jqtree_common";
|
|
207
|
-
|
|
208
205
|
if (isFolder) {
|
|
209
206
|
classes += " jqtree-title-folder";
|
|
210
207
|
}
|
|
211
|
-
|
|
212
208
|
classes += " jqtree-title-button-".concat(this.treeWidget.options.buttonLeft ? "left" : "right");
|
|
213
209
|
titleSpan.className = classes;
|
|
214
|
-
titleSpan.setAttribute("role", "treeitem");
|
|
215
|
-
titleSpan.setAttribute("aria-level", "".concat(level));
|
|
216
|
-
titleSpan.setAttribute("aria-selected", (0, _util.getBoolString)(isSelected));
|
|
217
|
-
titleSpan.setAttribute("aria-expanded", (0, _util.getBoolString)(isOpen));
|
|
218
|
-
|
|
219
210
|
if (isSelected) {
|
|
220
211
|
var tabIndex = this.treeWidget.options.tabIndex;
|
|
221
|
-
|
|
222
212
|
if (tabIndex !== undefined) {
|
|
223
213
|
titleSpan.setAttribute("tabindex", "".concat(tabIndex));
|
|
224
214
|
}
|
|
225
215
|
}
|
|
226
|
-
|
|
216
|
+
this.setTreeItemAriaAttributes(titleSpan, nodeName, level, isSelected);
|
|
227
217
|
if (this.treeWidget.options.autoEscape) {
|
|
228
218
|
titleSpan.textContent = nodeName;
|
|
229
219
|
} else {
|
|
230
220
|
titleSpan.innerHTML = nodeName;
|
|
231
221
|
}
|
|
232
|
-
|
|
233
222
|
return titleSpan;
|
|
234
223
|
}
|
|
235
224
|
}, {
|
|
236
225
|
key: "getButtonClasses",
|
|
237
226
|
value: function getButtonClasses(node) {
|
|
238
227
|
var classes = ["jqtree-toggler", "jqtree_common"];
|
|
239
|
-
|
|
240
228
|
if (!node.is_open) {
|
|
241
229
|
classes.push("jqtree-closed");
|
|
242
230
|
}
|
|
243
|
-
|
|
244
231
|
if (this.treeWidget.options.buttonLeft) {
|
|
245
232
|
classes.push("jqtree-toggler-left");
|
|
246
233
|
} else {
|
|
247
234
|
classes.push("jqtree-toggler-right");
|
|
248
235
|
}
|
|
249
|
-
|
|
250
236
|
return classes.join(" ");
|
|
251
237
|
}
|
|
252
238
|
}, {
|
|
253
239
|
key: "getFolderClasses",
|
|
254
240
|
value: function getFolderClasses(node, isSelected) {
|
|
255
241
|
var classes = ["jqtree-folder"];
|
|
256
|
-
|
|
257
242
|
if (!node.is_open) {
|
|
258
243
|
classes.push("jqtree-closed");
|
|
259
244
|
}
|
|
260
|
-
|
|
261
245
|
if (isSelected) {
|
|
262
246
|
classes.push("jqtree-selected");
|
|
263
247
|
}
|
|
264
|
-
|
|
265
248
|
if (node.is_loading) {
|
|
266
249
|
classes.push("jqtree-loading");
|
|
267
250
|
}
|
|
268
|
-
|
|
269
251
|
return classes.join(" ");
|
|
270
252
|
}
|
|
271
253
|
}, {
|
|
@@ -281,8 +263,6 @@ var ElementsRenderer = /*#__PURE__*/function () {
|
|
|
281
263
|
}
|
|
282
264
|
}
|
|
283
265
|
}]);
|
|
284
|
-
|
|
285
266
|
return ElementsRenderer;
|
|
286
267
|
}();
|
|
287
|
-
|
|
288
268
|
exports["default"] = ElementsRenderer;
|
package/lib/keyHandler.js
CHANGED
|
@@ -4,61 +4,45 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
|
-
|
|
7
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
8
8
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
-
|
|
10
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
11
|
-
|
|
9
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
12
10
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
13
|
-
|
|
14
|
-
function
|
|
15
|
-
|
|
11
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
13
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
16
14
|
var KeyHandler = /*#__PURE__*/function () {
|
|
17
15
|
function KeyHandler(treeWidget) {
|
|
18
16
|
var _this = this;
|
|
19
|
-
|
|
20
17
|
_classCallCheck(this, KeyHandler);
|
|
21
|
-
|
|
22
18
|
_defineProperty(this, "treeWidget", void 0);
|
|
23
|
-
|
|
24
19
|
_defineProperty(this, "handleKeyDown", function (e) {
|
|
25
20
|
if (!_this.canHandleKeyboard()) {
|
|
26
21
|
return true;
|
|
27
22
|
}
|
|
28
|
-
|
|
29
23
|
var selectedNode = _this.treeWidget.getSelectedNode();
|
|
30
|
-
|
|
31
24
|
if (!selectedNode) {
|
|
32
25
|
return true;
|
|
33
26
|
}
|
|
34
|
-
|
|
35
27
|
var key = e.which;
|
|
36
|
-
|
|
37
28
|
switch (key) {
|
|
38
29
|
case KeyHandler.DOWN:
|
|
39
30
|
return _this.moveDown(selectedNode);
|
|
40
|
-
|
|
41
31
|
case KeyHandler.UP:
|
|
42
32
|
return _this.moveUp(selectedNode);
|
|
43
|
-
|
|
44
33
|
case KeyHandler.RIGHT:
|
|
45
34
|
return _this.moveRight(selectedNode);
|
|
46
|
-
|
|
47
35
|
case KeyHandler.LEFT:
|
|
48
36
|
return _this.moveLeft(selectedNode);
|
|
49
|
-
|
|
50
37
|
default:
|
|
51
38
|
return true;
|
|
52
39
|
}
|
|
53
40
|
});
|
|
54
|
-
|
|
55
41
|
this.treeWidget = treeWidget;
|
|
56
|
-
|
|
57
42
|
if (treeWidget.options.keyboardSupport) {
|
|
58
43
|
jQuery(document).on("keydown.jqtree", this.handleKeyDown);
|
|
59
44
|
}
|
|
60
45
|
}
|
|
61
|
-
|
|
62
46
|
_createClass(KeyHandler, [{
|
|
63
47
|
key: "deinit",
|
|
64
48
|
value: function deinit() {
|
|
@@ -67,12 +51,12 @@ var KeyHandler = /*#__PURE__*/function () {
|
|
|
67
51
|
}, {
|
|
68
52
|
key: "moveDown",
|
|
69
53
|
value: function moveDown(selectedNode) {
|
|
70
|
-
return this.selectNode(selectedNode.
|
|
54
|
+
return this.selectNode(selectedNode.getNextVisibleNode());
|
|
71
55
|
}
|
|
72
56
|
}, {
|
|
73
57
|
key: "moveUp",
|
|
74
58
|
value: function moveUp(selectedNode) {
|
|
75
|
-
return this.selectNode(selectedNode.
|
|
59
|
+
return this.selectNode(selectedNode.getPreviousVisibleNode());
|
|
76
60
|
}
|
|
77
61
|
}, {
|
|
78
62
|
key: "moveRight",
|
|
@@ -83,7 +67,7 @@ var KeyHandler = /*#__PURE__*/function () {
|
|
|
83
67
|
// folder node
|
|
84
68
|
if (selectedNode.is_open) {
|
|
85
69
|
// Right moves to the first child of an open node
|
|
86
|
-
return this.selectNode(selectedNode.
|
|
70
|
+
return this.selectNode(selectedNode.getNextVisibleNode());
|
|
87
71
|
} else {
|
|
88
72
|
// Right expands a closed node
|
|
89
73
|
this.treeWidget.openNode(selectedNode);
|
|
@@ -110,11 +94,9 @@ var KeyHandler = /*#__PURE__*/function () {
|
|
|
110
94
|
return true;
|
|
111
95
|
} else {
|
|
112
96
|
this.treeWidget.selectNode(node);
|
|
113
|
-
|
|
114
97
|
if (!this.treeWidget.scrollHandler.isScrolledIntoView(jQuery(node.element).find(".jqtree-element"))) {
|
|
115
98
|
this.treeWidget.scrollToNode(node);
|
|
116
99
|
}
|
|
117
|
-
|
|
118
100
|
return false;
|
|
119
101
|
}
|
|
120
102
|
}
|
|
@@ -124,16 +106,10 @@ var KeyHandler = /*#__PURE__*/function () {
|
|
|
124
106
|
return (this.treeWidget.options.keyboardSupport || false) && this.treeWidget.selectNodeHandler.isFocusOnTree();
|
|
125
107
|
}
|
|
126
108
|
}]);
|
|
127
|
-
|
|
128
109
|
return KeyHandler;
|
|
129
110
|
}();
|
|
130
|
-
|
|
131
111
|
exports["default"] = KeyHandler;
|
|
132
|
-
|
|
133
112
|
_defineProperty(KeyHandler, "LEFT", 37);
|
|
134
|
-
|
|
135
113
|
_defineProperty(KeyHandler, "UP", 38);
|
|
136
|
-
|
|
137
114
|
_defineProperty(KeyHandler, "RIGHT", 39);
|
|
138
|
-
|
|
139
115
|
_defineProperty(KeyHandler, "DOWN", 40);
|