jqtree 1.7.5 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/bower.json +1 -1
  2. package/config/babel.config.json +1 -1
  3. package/config/production +2 -0
  4. package/devserver/devserver_scroll.js +8 -0
  5. package/devserver/test_scroll.html +28 -0
  6. package/devserver/test_scroll_container.html +39 -0
  7. package/docs/_config.yml +1 -1
  8. package/docs/_entries/general/changelog.md +7 -0
  9. package/package.json +5 -1
  10. package/src/dataLoader.ts +44 -19
  11. package/src/dragAndDropHandler/dragElement.ts +42 -0
  12. package/src/dragAndDropHandler/hitAreasGenerator.ts +175 -0
  13. package/src/dragAndDropHandler/index.ts +470 -0
  14. package/src/dragAndDropHandler/types.ts +12 -0
  15. package/src/dragAndDropHandler/visibleNodeIterator.ts +97 -0
  16. package/src/elementsRenderer.ts +75 -40
  17. package/src/jqtreeMethodTypes.ts +40 -0
  18. package/src/jqtreeOptions.ts +43 -25
  19. package/src/keyHandler.ts +59 -30
  20. package/src/mouse.widget.ts +3 -3
  21. package/src/mouseWidgetTypes.ts +6 -0
  22. package/src/nodeElement/borderDropHint.ts +32 -0
  23. package/src/nodeElement/folderElement.ts +133 -0
  24. package/src/nodeElement/ghostDropHint.ts +68 -0
  25. package/src/nodeElement/index.ts +101 -0
  26. package/src/playwright/coverage.ts +1 -4
  27. package/src/playwright/playwright.test.ts +0 -4
  28. package/src/saveStateHandler.ts +75 -26
  29. package/src/scrollHandler.ts +13 -7
  30. package/src/selectNodeHandler.ts +10 -16
  31. package/src/test/jqTree/keyboard.test.ts +18 -23
  32. package/src/test/jqTree/methods.test.ts +32 -3
  33. package/src/test/jqTree/options.test.ts +15 -4
  34. package/src/test/node.test.ts +1 -1
  35. package/src/tree.jquery.ts +239 -57
  36. package/src/util.ts +3 -0
  37. package/src/version.ts +1 -1
  38. package/tree.jquery.debug.js +1728 -2576
  39. package/tree.jquery.debug.js.map +1 -1
  40. package/tree.jquery.js +2 -2
  41. package/tree.jquery.js.map +1 -1
  42. package/lib/dataLoader.js +0 -123
  43. package/lib/dragAndDropHandler.js +0 -588
  44. package/lib/elementsRenderer.js +0 -267
  45. package/lib/jqtreeOptions.js +0 -1
  46. package/lib/keyHandler.js +0 -111
  47. package/lib/mouse.widget.js +0 -255
  48. package/lib/node.js +0 -708
  49. package/lib/nodeElement.js +0 -274
  50. package/lib/nodeUtils.js +0 -10
  51. package/lib/playwright/coverage.js +0 -99
  52. package/lib/playwright/playwright.test.js +0 -606
  53. package/lib/playwright/testUtils.js +0 -210
  54. package/lib/saveStateHandler.js +0 -277
  55. package/lib/scrollHandler/containerScrollParent.js +0 -160
  56. package/lib/scrollHandler/createScrollParent.js +0 -57
  57. package/lib/scrollHandler/documentScrollParent.js +0 -169
  58. package/lib/scrollHandler/scrollParent.js +0 -58
  59. package/lib/scrollHandler/types.js +0 -1
  60. package/lib/scrollHandler.js +0 -71
  61. package/lib/selectNodeHandler.js +0 -128
  62. package/lib/simple.widget.js +0 -158
  63. package/lib/test/global.d.js +0 -3
  64. package/lib/test/jqTree/accessibility.test.js +0 -37
  65. package/lib/test/jqTree/create.test.js +0 -48
  66. package/lib/test/jqTree/events.test.js +0 -210
  67. package/lib/test/jqTree/keyboard.test.js +0 -225
  68. package/lib/test/jqTree/loadOnDemand.test.js +0 -218
  69. package/lib/test/jqTree/methods.test.js +0 -1348
  70. package/lib/test/jqTree/options.test.js +0 -548
  71. package/lib/test/jqTree/scrollHandler/containerScrollParent.test.js +0 -94
  72. package/lib/test/node.test.js +0 -1202
  73. package/lib/test/nodeUtil.test.js +0 -27
  74. package/lib/test/nodeUtils.test.js +0 -20
  75. package/lib/test/support/exampleData.js +0 -35
  76. package/lib/test/support/jqTreeMatchers.js +0 -70
  77. package/lib/test/support/matchers.d.js +0 -1
  78. package/lib/test/support/setupTests.js +0 -7
  79. package/lib/test/support/testUtil.js +0 -29
  80. package/lib/test/support/treeStructure.js +0 -38
  81. package/lib/test/util.test.js +0 -26
  82. package/lib/tree.jquery.d.js +0 -1
  83. package/lib/tree.jquery.js +0 -1105
  84. package/lib/types.js +0 -1
  85. package/lib/typings.d.js +0 -2
  86. package/lib/util.js +0 -15
  87. package/lib/version.js +0 -8
  88. package/src/dragAndDropHandler.ts +0 -713
  89. package/src/nodeElement.ts +0 -272
  90. package/src/types.ts +0 -19
@@ -1,1105 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.JqTreeWidget = void 0;
7
- var _version = _interopRequireDefault(require("./version"));
8
- var _dragAndDropHandler = require("./dragAndDropHandler");
9
- var _elementsRenderer = _interopRequireDefault(require("./elementsRenderer"));
10
- var _dataLoader = _interopRequireDefault(require("./dataLoader"));
11
- var _keyHandler = _interopRequireDefault(require("./keyHandler"));
12
- var _mouse = _interopRequireDefault(require("./mouse.widget"));
13
- var _saveStateHandler = _interopRequireDefault(require("./saveStateHandler"));
14
- var _scrollHandler = _interopRequireDefault(require("./scrollHandler"));
15
- var _selectNodeHandler = _interopRequireDefault(require("./selectNodeHandler"));
16
- var _simple = _interopRequireDefault(require("./simple.widget"));
17
- var _node6 = require("./node");
18
- var _util = require("./util");
19
- var _nodeElement = require("./nodeElement");
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
21
- 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; } } }; }
22
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
25
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
26
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
- 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); }
28
- 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; }
29
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
30
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
31
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
32
- 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); } }
33
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
34
- function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
35
- function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
36
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
37
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
38
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
39
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
40
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
41
- 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; } }
42
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
43
- 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; }
44
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
45
- 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); }
46
- var NODE_PARAM_IS_EMPTY = "Node parameter is empty";
47
- var PARAM_IS_EMPTY = "Parameter is empty: ";
48
- var JqTreeWidget = exports.JqTreeWidget = /*#__PURE__*/function (_MouseWidget) {
49
- _inherits(JqTreeWidget, _MouseWidget);
50
- var _super = _createSuper(JqTreeWidget);
51
- function JqTreeWidget() {
52
- var _this;
53
- _classCallCheck(this, JqTreeWidget);
54
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
55
- args[_key] = arguments[_key];
56
- }
57
- _this = _super.call.apply(_super, [this].concat(args));
58
- _defineProperty(_assertThisInitialized(_this), "element", void 0);
59
- _defineProperty(_assertThisInitialized(_this), "tree", void 0);
60
- _defineProperty(_assertThisInitialized(_this), "dndHandler", void 0);
61
- _defineProperty(_assertThisInitialized(_this), "renderer", void 0);
62
- _defineProperty(_assertThisInitialized(_this), "dataLoader", void 0);
63
- _defineProperty(_assertThisInitialized(_this), "scrollHandler", void 0);
64
- _defineProperty(_assertThisInitialized(_this), "selectNodeHandler", void 0);
65
- _defineProperty(_assertThisInitialized(_this), "isInitialized", void 0);
66
- _defineProperty(_assertThisInitialized(_this), "saveStateHandler", void 0);
67
- _defineProperty(_assertThisInitialized(_this), "keyHandler", void 0);
68
- _defineProperty(_assertThisInitialized(_this), "handleClick", function (e) {
69
- var clickTarget = _this.getClickTarget(e.target);
70
- if (clickTarget) {
71
- if (clickTarget.type === "button") {
72
- _this.toggle(clickTarget.node, _this.options.slide);
73
- e.preventDefault();
74
- e.stopPropagation();
75
- } else if (clickTarget.type === "label") {
76
- var _node2 = clickTarget.node;
77
- var event = _this._triggerEvent("tree.click", {
78
- node: _node2,
79
- click_event: e
80
- });
81
- if (!event.isDefaultPrevented()) {
82
- _this.doSelectNode(_node2);
83
- }
84
- }
85
- }
86
- });
87
- _defineProperty(_assertThisInitialized(_this), "handleDblclick", function (e) {
88
- var clickTarget = _this.getClickTarget(e.target);
89
- if ((clickTarget === null || clickTarget === void 0 ? void 0 : clickTarget.type) === "label") {
90
- _this._triggerEvent("tree.dblclick", {
91
- node: clickTarget.node,
92
- click_event: e
93
- });
94
- }
95
- });
96
- _defineProperty(_assertThisInitialized(_this), "handleContextmenu", function (e) {
97
- var $div = jQuery(e.target).closest("ul.jqtree-tree .jqtree-element");
98
- if ($div.length) {
99
- var _node3 = _this.getNode($div);
100
- if (_node3) {
101
- e.preventDefault();
102
- e.stopPropagation();
103
- _this._triggerEvent("tree.contextmenu", {
104
- node: _node3,
105
- click_event: e
106
- });
107
- return false;
108
- }
109
- }
110
- return null;
111
- });
112
- return _this;
113
- }
114
- _createClass(JqTreeWidget, [{
115
- key: "toggle",
116
- value: function toggle(node) {
117
- var slideParam = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
118
- if (!node) {
119
- throw Error(NODE_PARAM_IS_EMPTY);
120
- }
121
- var slide = slideParam !== null && slideParam !== void 0 ? slideParam : this.options.slide;
122
- if (node.is_open) {
123
- this.closeNode(node, slide);
124
- } else {
125
- this.openNode(node, slide);
126
- }
127
- return this.element;
128
- }
129
- }, {
130
- key: "getTree",
131
- value: function getTree() {
132
- return this.tree;
133
- }
134
- }, {
135
- key: "selectNode",
136
- value: function selectNode(node, optionsParam) {
137
- this.doSelectNode(node, optionsParam);
138
- return this.element;
139
- }
140
- }, {
141
- key: "getSelectedNode",
142
- value: function getSelectedNode() {
143
- return this.selectNodeHandler.getSelectedNode();
144
- }
145
- }, {
146
- key: "toJson",
147
- value: function toJson() {
148
- return JSON.stringify(this.tree.getData());
149
- }
150
- }, {
151
- key: "loadData",
152
- value: function loadData(data, parentNode) {
153
- this.doLoadData(data, parentNode);
154
- return this.element;
155
- }
156
-
157
- /*
158
- signatures:
159
- - loadDataFromUrl(url, parent_node=null, on_finished=null)
160
- loadDataFromUrl('/my_data');
161
- loadDataFromUrl('/my_data', node1);
162
- loadDataFromUrl('/my_data', node1, function() { console.log('finished'); });
163
- loadDataFromUrl('/my_data', null, function() { console.log('finished'); });
164
- - loadDataFromUrl(parent_node=null, on_finished=null)
165
- loadDataFromUrl();
166
- loadDataFromUrl(node1);
167
- loadDataFromUrl(null, function() { console.log('finished'); });
168
- loadDataFromUrl(node1, function() { console.log('finished'); });
169
- */
170
- }, {
171
- key: "loadDataFromUrl",
172
- value: function loadDataFromUrl(param1, param2, param3) {
173
- if (typeof param1 === "string") {
174
- // first parameter is url
175
- this.doLoadDataFromUrl(param1, param2, param3 !== null && param3 !== void 0 ? param3 : null);
176
- } else {
177
- // first parameter is not url
178
- this.doLoadDataFromUrl(null, param1, param2);
179
- }
180
- return this.element;
181
- }
182
- }, {
183
- key: "reload",
184
- value: function reload(onFinished) {
185
- this.doLoadDataFromUrl(null, null, onFinished);
186
- return this.element;
187
- }
188
- }, {
189
- key: "refresh",
190
- value: function refresh() {
191
- this._refreshElements(null);
192
- return this.element;
193
- }
194
- }, {
195
- key: "getNodeById",
196
- value: function getNodeById(nodeId) {
197
- return this.tree.getNodeById(nodeId);
198
- }
199
- }, {
200
- key: "getNodeByName",
201
- value: function getNodeByName(name) {
202
- return this.tree.getNodeByName(name);
203
- }
204
- }, {
205
- key: "getNodeByNameMustExist",
206
- value: function getNodeByNameMustExist(name) {
207
- return this.tree.getNodeByNameMustExist(name);
208
- }
209
- }, {
210
- key: "getNodesByProperty",
211
- value: function getNodesByProperty(key, value) {
212
- return this.tree.getNodesByProperty(key, value);
213
- }
214
- }, {
215
- key: "getNodeByHtmlElement",
216
- value: function getNodeByHtmlElement(element) {
217
- return this.getNode(jQuery(element));
218
- }
219
- }, {
220
- key: "getNodeByCallback",
221
- value: function getNodeByCallback(callback) {
222
- return this.tree.getNodeByCallback(callback);
223
- }
224
- }, {
225
- key: "openNode",
226
- value: function openNode(node, param1, param2) {
227
- var _this2 = this;
228
- if (!node) {
229
- throw Error(NODE_PARAM_IS_EMPTY);
230
- }
231
- var parseParams = function parseParams() {
232
- var onFinished;
233
- var slide;
234
- if ((0, _util.isFunction)(param1)) {
235
- onFinished = param1;
236
- slide = null;
237
- } else {
238
- slide = param1;
239
- onFinished = param2;
240
- }
241
- if (slide == null) {
242
- var _this2$options$slide;
243
- slide = (_this2$options$slide = _this2.options.slide) !== null && _this2$options$slide !== void 0 ? _this2$options$slide : false;
244
- }
245
- return [slide, onFinished];
246
- };
247
- var _parseParams = parseParams(),
248
- _parseParams2 = _slicedToArray(_parseParams, 2),
249
- slide = _parseParams2[0],
250
- onFinished = _parseParams2[1];
251
- this._openNode(node, slide, onFinished);
252
- return this.element;
253
- }
254
- }, {
255
- key: "closeNode",
256
- value: function closeNode(node, slideParam) {
257
- if (!node) {
258
- throw Error(NODE_PARAM_IS_EMPTY);
259
- }
260
- var slide = slideParam !== null && slideParam !== void 0 ? slideParam : this.options.slide;
261
- if (node.isFolder() || node.isEmptyFolder) {
262
- new _nodeElement.FolderElement(node, this).close(slide, this.options.animationSpeed);
263
- this.saveState();
264
- }
265
- return this.element;
266
- }
267
- }, {
268
- key: "isDragging",
269
- value: function isDragging() {
270
- return this.dndHandler.isDragging;
271
- }
272
- }, {
273
- key: "refreshHitAreas",
274
- value: function refreshHitAreas() {
275
- this.dndHandler.refresh();
276
- return this.element;
277
- }
278
- }, {
279
- key: "addNodeAfter",
280
- value: function addNodeAfter(newNodeInfo, existingNode) {
281
- var newNode = existingNode.addAfter(newNodeInfo);
282
- if (newNode) {
283
- this._refreshElements(existingNode.parent);
284
- }
285
- return newNode;
286
- }
287
- }, {
288
- key: "addNodeBefore",
289
- value: function addNodeBefore(newNodeInfo, existingNode) {
290
- if (!existingNode) {
291
- throw Error(PARAM_IS_EMPTY + "existingNode");
292
- }
293
- var newNode = existingNode.addBefore(newNodeInfo);
294
- if (newNode) {
295
- this._refreshElements(existingNode.parent);
296
- }
297
- return newNode;
298
- }
299
- }, {
300
- key: "addParentNode",
301
- value: function addParentNode(newNodeInfo, existingNode) {
302
- if (!existingNode) {
303
- throw Error(PARAM_IS_EMPTY + "existingNode");
304
- }
305
- var newNode = existingNode.addParent(newNodeInfo);
306
- if (newNode) {
307
- this._refreshElements(newNode.parent);
308
- }
309
- return newNode;
310
- }
311
- }, {
312
- key: "removeNode",
313
- value: function removeNode(node) {
314
- if (!node) {
315
- throw Error(NODE_PARAM_IS_EMPTY);
316
- }
317
- if (!node.parent) {
318
- throw Error("Node has no parent");
319
- }
320
- this.selectNodeHandler.removeFromSelection(node, true); // including children
321
-
322
- var parent = node.parent;
323
- node.remove();
324
- this._refreshElements(parent);
325
- return this.element;
326
- }
327
- }, {
328
- key: "appendNode",
329
- value: function appendNode(newNodeInfo, parentNodeParam) {
330
- var parentNode = parentNodeParam || this.tree;
331
- var node = parentNode.append(newNodeInfo);
332
- this._refreshElements(parentNode);
333
- return node;
334
- }
335
- }, {
336
- key: "prependNode",
337
- value: function prependNode(newNodeInfo, parentNodeParam) {
338
- var parentNode = parentNodeParam !== null && parentNodeParam !== void 0 ? parentNodeParam : this.tree;
339
- var node = parentNode.prepend(newNodeInfo);
340
- this._refreshElements(parentNode);
341
- return node;
342
- }
343
- }, {
344
- key: "updateNode",
345
- value: function updateNode(node, data) {
346
- if (!node) {
347
- throw Error(NODE_PARAM_IS_EMPTY);
348
- }
349
- var idIsChanged = _typeof(data) === "object" && data.id && data.id !== node.id;
350
- if (idIsChanged) {
351
- this.tree.removeNodeFromIndex(node);
352
- }
353
- node.setData(data);
354
- if (idIsChanged) {
355
- this.tree.addNodeToIndex(node);
356
- }
357
- if (_typeof(data) === "object" && data["children"] && data["children"] instanceof Array) {
358
- node.removeChildren();
359
- if (data.children.length) {
360
- node.loadFromData(data.children);
361
- }
362
- }
363
- this._refreshElements(node);
364
- return this.element;
365
- }
366
- }, {
367
- key: "isSelectedNodeInSubtree",
368
- value: function isSelectedNodeInSubtree(subtree) {
369
- var selectedNode = this.getSelectedNode();
370
- if (!selectedNode) {
371
- return false;
372
- } else {
373
- return subtree === selectedNode || subtree.isParentOf(selectedNode);
374
- }
375
- }
376
- }, {
377
- key: "moveNode",
378
- value: function moveNode(node, targetNode, position) {
379
- if (!node) {
380
- throw Error(NODE_PARAM_IS_EMPTY);
381
- }
382
- if (!targetNode) {
383
- throw Error(PARAM_IS_EMPTY + "targetNode");
384
- }
385
- var positionIndex = (0, _node6.getPosition)(position);
386
- if (positionIndex !== undefined) {
387
- this.tree.moveNode(node, targetNode, positionIndex);
388
- this._refreshElements(null);
389
- }
390
- return this.element;
391
- }
392
- }, {
393
- key: "getStateFromStorage",
394
- value: function getStateFromStorage() {
395
- return this.saveStateHandler.getStateFromStorage();
396
- }
397
- }, {
398
- key: "addToSelection",
399
- value: function addToSelection(node, mustSetFocus) {
400
- if (!node) {
401
- throw Error(NODE_PARAM_IS_EMPTY);
402
- }
403
- this.selectNodeHandler.addToSelection(node);
404
- this._getNodeElementForNode(node).select(mustSetFocus === undefined ? true : mustSetFocus);
405
- this.saveState();
406
- return this.element;
407
- }
408
- }, {
409
- key: "getSelectedNodes",
410
- value: function getSelectedNodes() {
411
- return this.selectNodeHandler.getSelectedNodes();
412
- }
413
- }, {
414
- key: "isNodeSelected",
415
- value: function isNodeSelected(node) {
416
- if (!node) {
417
- throw Error(NODE_PARAM_IS_EMPTY);
418
- }
419
- return this.selectNodeHandler.isNodeSelected(node);
420
- }
421
- }, {
422
- key: "removeFromSelection",
423
- value: function removeFromSelection(node) {
424
- if (!node) {
425
- throw Error(NODE_PARAM_IS_EMPTY);
426
- }
427
- this.selectNodeHandler.removeFromSelection(node);
428
- this._getNodeElementForNode(node).deselect();
429
- this.saveState();
430
- return this.element;
431
- }
432
- }, {
433
- key: "scrollToNode",
434
- value: function scrollToNode(node) {
435
- var _jQuery$offset$top, _jQuery$offset, _this$$el$offset$top, _this$$el$offset;
436
- if (!node) {
437
- throw Error(NODE_PARAM_IS_EMPTY);
438
- }
439
- var nodeTop = (_jQuery$offset$top = (_jQuery$offset = jQuery(node.element).offset()) === null || _jQuery$offset === void 0 ? void 0 : _jQuery$offset.top) !== null && _jQuery$offset$top !== void 0 ? _jQuery$offset$top : 0;
440
- var treeTop = (_this$$el$offset$top = (_this$$el$offset = this.$el.offset()) === null || _this$$el$offset === void 0 ? void 0 : _this$$el$offset.top) !== null && _this$$el$offset$top !== void 0 ? _this$$el$offset$top : 0;
441
- var top = nodeTop - treeTop;
442
- this.scrollHandler.scrollToY(top);
443
- return this.element;
444
- }
445
- }, {
446
- key: "getState",
447
- value: function getState() {
448
- return this.saveStateHandler.getState();
449
- }
450
- }, {
451
- key: "setState",
452
- value: function setState(state) {
453
- this.saveStateHandler.setInitialState(state);
454
- this._refreshElements(null);
455
- return this.element;
456
- }
457
- }, {
458
- key: "setOption",
459
- value: function setOption(option, value) {
460
- this.options[option] = value;
461
- return this.element;
462
- }
463
- }, {
464
- key: "moveDown",
465
- value: function moveDown() {
466
- var selectedNode = this.getSelectedNode();
467
- if (selectedNode) {
468
- this.keyHandler.moveDown(selectedNode);
469
- }
470
- return this.element;
471
- }
472
- }, {
473
- key: "moveUp",
474
- value: function moveUp() {
475
- var selectedNode = this.getSelectedNode();
476
- if (selectedNode) {
477
- this.keyHandler.moveUp(selectedNode);
478
- }
479
- return this.element;
480
- }
481
- }, {
482
- key: "getVersion",
483
- value: function getVersion() {
484
- return _version["default"];
485
- }
486
- }, {
487
- key: "_triggerEvent",
488
- value: function _triggerEvent(eventName, values) {
489
- var event = jQuery.Event(eventName, values);
490
- this.element.trigger(event);
491
- return event;
492
- }
493
- }, {
494
- key: "_openNode",
495
- value: function _openNode(node) {
496
- var _this3 = this;
497
- var slide = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
498
- var onFinished = arguments.length > 2 ? arguments[2] : undefined;
499
- var doOpenNode = function doOpenNode(_node, _slide, _onFinished) {
500
- var folderElement = new _nodeElement.FolderElement(_node, _this3);
501
- folderElement.open(_onFinished, _slide, _this3.options.animationSpeed);
502
- };
503
- if (node.isFolder() || node.isEmptyFolder) {
504
- if (node.load_on_demand) {
505
- this.loadFolderOnDemand(node, slide, onFinished);
506
- } else {
507
- var parent = node.parent;
508
- while (parent) {
509
- // nb: do not open root element
510
- if (parent.parent) {
511
- doOpenNode(parent, false, null);
512
- }
513
- parent = parent.parent;
514
- }
515
- doOpenNode(node, slide, onFinished);
516
- this.saveState();
517
- }
518
- }
519
- }
520
-
521
- /*
522
- Redraw the tree or part of the tree.
523
- from_node: redraw this subtree
524
- */
525
- }, {
526
- key: "_refreshElements",
527
- value: function _refreshElements(fromNode) {
528
- var mustSetFocus = this.selectNodeHandler.isFocusOnTree();
529
- var mustSelect = fromNode ? this.isSelectedNodeInSubtree(fromNode) : false;
530
- this.renderer.render(fromNode);
531
- if (mustSelect) {
532
- this.selectCurrentNode(mustSetFocus);
533
- }
534
- this._triggerEvent("tree.refresh");
535
- }
536
- }, {
537
- key: "_getNodeElementForNode",
538
- value: function _getNodeElementForNode(node) {
539
- if (node.isFolder()) {
540
- return new _nodeElement.FolderElement(node, this);
541
- } else {
542
- return new _nodeElement.NodeElement(node, this);
543
- }
544
- }
545
- }, {
546
- key: "_getNodeElement",
547
- value: function _getNodeElement($element) {
548
- var node = this.getNode($element);
549
- if (node) {
550
- return this._getNodeElementForNode(node);
551
- } else {
552
- return null;
553
- }
554
- }
555
- }, {
556
- key: "_containsElement",
557
- value: function _containsElement(element) {
558
- var node = this.getNode(jQuery(element));
559
- return node != null && node.tree === this.tree;
560
- }
561
- }, {
562
- key: "_getScrollLeft",
563
- value: function _getScrollLeft() {
564
- return this.scrollHandler.getScrollLeft();
565
- }
566
- }, {
567
- key: "init",
568
- value: function init() {
569
- _get(_getPrototypeOf(JqTreeWidget.prototype), "init", this).call(this);
570
- this.element = this.$el;
571
- this.isInitialized = false;
572
- this.options.rtl = this.getRtlOption();
573
- if (this.options.closedIcon == null) {
574
- this.options.closedIcon = this.getDefaultClosedIcon();
575
- }
576
- this.renderer = new _elementsRenderer["default"](this);
577
- this.dataLoader = new _dataLoader["default"](this);
578
- this.saveStateHandler = new _saveStateHandler["default"](this);
579
- this.selectNodeHandler = new _selectNodeHandler["default"](this);
580
- this.dndHandler = new _dragAndDropHandler.DragAndDropHandler(this);
581
- this.scrollHandler = new _scrollHandler["default"](this);
582
- this.keyHandler = new _keyHandler["default"](this);
583
- this.initData();
584
- this.element.on("click", this.handleClick);
585
- this.element.on("dblclick", this.handleDblclick);
586
- if (this.options.useContextMenu) {
587
- this.element.on("contextmenu", this.handleContextmenu);
588
- }
589
- }
590
- }, {
591
- key: "deinit",
592
- value: function deinit() {
593
- this.element.empty();
594
- this.element.off();
595
- this.keyHandler.deinit();
596
- this.tree = new _node6.Node({}, true);
597
- _get(_getPrototypeOf(JqTreeWidget.prototype), "deinit", this).call(this);
598
- }
599
- }, {
600
- key: "mouseCapture",
601
- value: function mouseCapture(positionInfo) {
602
- if (this.options.dragAndDrop) {
603
- return this.dndHandler.mouseCapture(positionInfo);
604
- } else {
605
- return false;
606
- }
607
- }
608
- }, {
609
- key: "mouseStart",
610
- value: function mouseStart(positionInfo) {
611
- if (this.options.dragAndDrop) {
612
- return this.dndHandler.mouseStart(positionInfo);
613
- } else {
614
- return false;
615
- }
616
- }
617
- }, {
618
- key: "mouseDrag",
619
- value: function mouseDrag(positionInfo) {
620
- if (this.options.dragAndDrop) {
621
- var result = this.dndHandler.mouseDrag(positionInfo);
622
- this.scrollHandler.checkScrolling(positionInfo);
623
- return result;
624
- } else {
625
- return false;
626
- }
627
- }
628
- }, {
629
- key: "mouseStop",
630
- value: function mouseStop(positionInfo) {
631
- if (this.options.dragAndDrop) {
632
- this.scrollHandler.stopScrolling();
633
- return this.dndHandler.mouseStop(positionInfo);
634
- } else {
635
- return false;
636
- }
637
- }
638
- }, {
639
- key: "getMouseDelay",
640
- value: function getMouseDelay() {
641
- var _this$options$startDn;
642
- return (_this$options$startDn = this.options.startDndDelay) !== null && _this$options$startDn !== void 0 ? _this$options$startDn : 0;
643
- }
644
- }, {
645
- key: "initData",
646
- value: function initData() {
647
- if (this.options.data) {
648
- this.doLoadData(this.options.data, null);
649
- } else {
650
- var dataUrl = this.getDataUrlInfo(null);
651
- if (dataUrl) {
652
- this.doLoadDataFromUrl(null, null, null);
653
- } else {
654
- this.doLoadData([], null);
655
- }
656
- }
657
- }
658
- }, {
659
- key: "getDataUrlInfo",
660
- value: function getDataUrlInfo(node) {
661
- var _this4 = this;
662
- var dataUrl = this.options.dataUrl || this.element.data("url");
663
- var getUrlFromString = function getUrlFromString(url) {
664
- var urlInfo = {
665
- url: url
666
- };
667
- setUrlInfoData(urlInfo);
668
- return urlInfo;
669
- };
670
- var setUrlInfoData = function setUrlInfoData(urlInfo) {
671
- if (node !== null && node !== void 0 && node.id) {
672
- // Load on demand of a subtree; add node parameter
673
- var data = {
674
- node: node.id
675
- };
676
- urlInfo["data"] = data;
677
- } else {
678
- // Add selected_node parameter
679
- var selectedNodeId = _this4.getNodeIdToBeSelected();
680
- if (selectedNodeId) {
681
- var _data = {
682
- selected_node: selectedNodeId
683
- };
684
- urlInfo["data"] = _data;
685
- }
686
- }
687
- };
688
- if (typeof dataUrl === "function") {
689
- return dataUrl(node);
690
- } else if (typeof dataUrl === "string") {
691
- return getUrlFromString(dataUrl);
692
- } else if (dataUrl && _typeof(dataUrl) === "object") {
693
- setUrlInfoData(dataUrl);
694
- return dataUrl;
695
- } else {
696
- return null;
697
- }
698
- }
699
- }, {
700
- key: "getNodeIdToBeSelected",
701
- value: function getNodeIdToBeSelected() {
702
- if (this.options.saveState) {
703
- return this.saveStateHandler.getNodeIdToBeSelected();
704
- } else {
705
- return null;
706
- }
707
- }
708
- }, {
709
- key: "initTree",
710
- value: function initTree(data) {
711
- var _this5 = this;
712
- var doInit = function doInit() {
713
- if (!_this5.isInitialized) {
714
- _this5.isInitialized = true;
715
- _this5._triggerEvent("tree.init");
716
- }
717
- };
718
- if (!this.options.nodeClass) {
719
- return;
720
- }
721
- this.tree = new this.options.nodeClass(null, true, this.options.nodeClass);
722
- this.selectNodeHandler.clear();
723
- this.tree.loadFromData(data);
724
- var mustLoadOnDemand = this.setInitialState();
725
- this._refreshElements(null);
726
- if (!mustLoadOnDemand) {
727
- doInit();
728
- } else {
729
- // Load data on demand and then init the tree
730
- this.setInitialStateOnDemand(doInit);
731
- }
732
- }
733
-
734
- // Set initial state, either by restoring the state or auto-opening nodes
735
- // result: must load nodes on demand?
736
- }, {
737
- key: "setInitialState",
738
- value: function setInitialState() {
739
- var _this6 = this;
740
- var restoreState = function restoreState() {
741
- // result: is state restored, must load on demand?
742
- if (!_this6.options.saveState) {
743
- return [false, false];
744
- } else {
745
- var state = _this6.saveStateHandler.getStateFromStorage();
746
- if (!state) {
747
- return [false, false];
748
- } else {
749
- var _mustLoadOnDemand = _this6.saveStateHandler.setInitialState(state);
750
-
751
- // return true: the state is restored
752
- return [true, _mustLoadOnDemand];
753
- }
754
- }
755
- };
756
- var autoOpenNodes = function autoOpenNodes() {
757
- // result: must load on demand?
758
- if (_this6.options.autoOpen === false) {
759
- return false;
760
- }
761
- var maxLevel = _this6.getAutoOpenMaxLevel();
762
- var mustLoadOnDemand = false;
763
- _this6.tree.iterate(function (node, level) {
764
- if (node.load_on_demand) {
765
- mustLoadOnDemand = true;
766
- return false;
767
- } else if (!node.hasChildren()) {
768
- return false;
769
- } else {
770
- node.is_open = true;
771
- return level !== maxLevel;
772
- }
773
- });
774
- return mustLoadOnDemand;
775
- };
776
- var _restoreState = restoreState(),
777
- _restoreState2 = _slicedToArray(_restoreState, 2),
778
- isRestored = _restoreState2[0],
779
- mustLoadOnDemand = _restoreState2[1]; // eslint-disable-line prefer-const
780
-
781
- if (!isRestored) {
782
- mustLoadOnDemand = autoOpenNodes();
783
- }
784
- return mustLoadOnDemand;
785
- }
786
-
787
- // Set the initial state for nodes that are loaded on demand
788
- // Call cb_finished when done
789
- }, {
790
- key: "setInitialStateOnDemand",
791
- value: function setInitialStateOnDemand(cbFinished) {
792
- var _this7 = this;
793
- var restoreState = function restoreState() {
794
- if (!_this7.options.saveState) {
795
- return false;
796
- } else {
797
- var state = _this7.saveStateHandler.getStateFromStorage();
798
- if (!state) {
799
- return false;
800
- } else {
801
- _this7.saveStateHandler.setInitialStateOnDemand(state, cbFinished);
802
- return true;
803
- }
804
- }
805
- };
806
- var autoOpenNodes = function autoOpenNodes() {
807
- var maxLevel = _this7.getAutoOpenMaxLevel();
808
- var loadingCount = 0;
809
- var loadAndOpenNode = function loadAndOpenNode(node) {
810
- loadingCount += 1;
811
- _this7._openNode(node, false, function () {
812
- loadingCount -= 1;
813
- openNodes();
814
- });
815
- };
816
- var openNodes = function openNodes() {
817
- _this7.tree.iterate(function (node, level) {
818
- if (node.load_on_demand) {
819
- if (!node.is_loading) {
820
- loadAndOpenNode(node);
821
- }
822
- return false;
823
- } else {
824
- _this7._openNode(node, false, null);
825
- return level !== maxLevel;
826
- }
827
- });
828
- if (loadingCount === 0) {
829
- cbFinished();
830
- }
831
- };
832
- openNodes();
833
- };
834
- if (!restoreState()) {
835
- autoOpenNodes();
836
- }
837
- }
838
- }, {
839
- key: "getAutoOpenMaxLevel",
840
- value: function getAutoOpenMaxLevel() {
841
- if (this.options.autoOpen === true) {
842
- return -1;
843
- } else if (typeof this.options.autoOpen === "number") {
844
- return this.options.autoOpen;
845
- } else if (typeof this.options.autoOpen === "string") {
846
- return parseInt(this.options.autoOpen, 10);
847
- } else {
848
- return 0;
849
- }
850
- }
851
- }, {
852
- key: "getClickTarget",
853
- value: function getClickTarget(element) {
854
- var $target = jQuery(element);
855
- var $button = $target.closest(".jqtree-toggler");
856
- if ($button.length) {
857
- var _node4 = this.getNode($button);
858
- if (_node4) {
859
- return {
860
- type: "button",
861
- node: _node4
862
- };
863
- }
864
- } else {
865
- var $el = $target.closest(".jqtree-element");
866
- if ($el.length) {
867
- var _node5 = this.getNode($el);
868
- if (_node5) {
869
- return {
870
- type: "label",
871
- node: _node5
872
- };
873
- }
874
- }
875
- }
876
- return null;
877
- }
878
- }, {
879
- key: "getNode",
880
- value: function getNode($element) {
881
- var $li = $element.closest("li.jqtree_common");
882
- if ($li.length === 0) {
883
- return null;
884
- } else {
885
- return $li.data("node");
886
- }
887
- }
888
- }, {
889
- key: "saveState",
890
- value: function saveState() {
891
- if (this.options.saveState) {
892
- this.saveStateHandler.saveState();
893
- }
894
- }
895
- }, {
896
- key: "selectCurrentNode",
897
- value: function selectCurrentNode(mustSetFocus) {
898
- var node = this.getSelectedNode();
899
- if (node) {
900
- var nodeElement = this._getNodeElementForNode(node);
901
- if (nodeElement) {
902
- nodeElement.select(mustSetFocus);
903
- }
904
- }
905
- }
906
- }, {
907
- key: "deselectCurrentNode",
908
- value: function deselectCurrentNode() {
909
- var node = this.getSelectedNode();
910
- if (node) {
911
- this.removeFromSelection(node);
912
- }
913
- }
914
- }, {
915
- key: "getDefaultClosedIcon",
916
- value: function getDefaultClosedIcon() {
917
- if (this.options.rtl) {
918
- // triangle to the left
919
- return "&#x25c0;";
920
- } else {
921
- // triangle to the right
922
- return "&#x25ba;";
923
- }
924
- }
925
- }, {
926
- key: "getRtlOption",
927
- value: function getRtlOption() {
928
- if (this.options.rtl != null) {
929
- return this.options.rtl;
930
- } else {
931
- var dataRtl = this.element.data("rtl");
932
- if (dataRtl !== null && dataRtl !== false && dataRtl !== undefined) {
933
- return true;
934
- } else {
935
- return false;
936
- }
937
- }
938
- }
939
- }, {
940
- key: "doSelectNode",
941
- value: function doSelectNode(node, optionsParam) {
942
- var _this8 = this;
943
- var saveState = function saveState() {
944
- if (_this8.options.saveState) {
945
- _this8.saveStateHandler.saveState();
946
- }
947
- };
948
- if (!node) {
949
- // Called with empty node -> deselect current node
950
- this.deselectCurrentNode();
951
- saveState();
952
- return;
953
- }
954
- var defaultOptions = {
955
- mustSetFocus: true,
956
- mustToggle: true
957
- };
958
- var selectOptions = _objectSpread(_objectSpread({}, defaultOptions), optionsParam || {});
959
- var canSelect = function canSelect() {
960
- if (_this8.options.onCanSelectNode) {
961
- return _this8.options.selectable === true && _this8.options.onCanSelectNode(node);
962
- } else {
963
- return _this8.options.selectable === true;
964
- }
965
- };
966
- var openParents = function openParents() {
967
- var parent = node.parent;
968
- if (parent && parent.parent && !parent.is_open) {
969
- _this8.openNode(parent, false);
970
- }
971
- };
972
- if (!canSelect()) {
973
- return;
974
- }
975
- if (this.selectNodeHandler.isNodeSelected(node)) {
976
- if (selectOptions.mustToggle) {
977
- this.deselectCurrentNode();
978
- this._triggerEvent("tree.select", {
979
- node: null,
980
- previous_node: node
981
- });
982
- }
983
- } else {
984
- var deselectedNode = this.getSelectedNode() || null;
985
- this.deselectCurrentNode();
986
- this.addToSelection(node, selectOptions.mustSetFocus);
987
- this._triggerEvent("tree.select", {
988
- node: node,
989
- deselected_node: deselectedNode
990
- });
991
- openParents();
992
- }
993
- saveState();
994
- }
995
- }, {
996
- key: "doLoadData",
997
- value: function doLoadData(data, parentNode) {
998
- if (data) {
999
- if (parentNode) {
1000
- this.deselectNodes(parentNode);
1001
- this.loadSubtree(data, parentNode);
1002
- } else {
1003
- this.initTree(data);
1004
- }
1005
- if (this.isDragging()) {
1006
- this.dndHandler.refresh();
1007
- }
1008
- }
1009
- this._triggerEvent("tree.load_data", {
1010
- tree_data: data,
1011
- parent_node: parentNode
1012
- });
1013
- }
1014
- }, {
1015
- key: "deselectNodes",
1016
- value: function deselectNodes(parentNode) {
1017
- var selectedNodesUnderParent = this.selectNodeHandler.getSelectedNodesUnder(parentNode);
1018
- var _iterator = _createForOfIteratorHelper(selectedNodesUnderParent),
1019
- _step;
1020
- try {
1021
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
1022
- var n = _step.value;
1023
- this.selectNodeHandler.removeFromSelection(n);
1024
- }
1025
- } catch (err) {
1026
- _iterator.e(err);
1027
- } finally {
1028
- _iterator.f();
1029
- }
1030
- }
1031
- }, {
1032
- key: "loadSubtree",
1033
- value: function loadSubtree(data, parentNode) {
1034
- parentNode.loadFromData(data);
1035
- parentNode.load_on_demand = false;
1036
- parentNode.is_loading = false;
1037
- this._refreshElements(parentNode);
1038
- }
1039
- }, {
1040
- key: "doLoadDataFromUrl",
1041
- value: function doLoadDataFromUrl(urlInfoParam, parentNode, onFinished) {
1042
- var urlInfo = urlInfoParam || this.getDataUrlInfo(parentNode);
1043
- this.dataLoader.loadFromUrl(urlInfo, parentNode, onFinished);
1044
- }
1045
- }, {
1046
- key: "loadFolderOnDemand",
1047
- value: function loadFolderOnDemand(node) {
1048
- var _this9 = this;
1049
- var slide = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1050
- var onFinished = arguments.length > 2 ? arguments[2] : undefined;
1051
- node.is_loading = true;
1052
- this.doLoadDataFromUrl(null, node, function () {
1053
- _this9._openNode(node, slide, onFinished);
1054
- });
1055
- }
1056
- }]);
1057
- return JqTreeWidget;
1058
- }(_mouse["default"]);
1059
- _defineProperty(JqTreeWidget, "defaults", {
1060
- animationSpeed: "fast",
1061
- autoEscape: true,
1062
- autoOpen: false,
1063
- // true / false / int (open n levels starting at 0)
1064
- buttonLeft: true,
1065
- // The symbol to use for a closed node - ► BLACK RIGHT-POINTING POINTER
1066
- // http://www.fileformat.info/info/unicode/char/25ba/index.htm
1067
- closedIcon: undefined,
1068
- data: undefined,
1069
- dataFilter: undefined,
1070
- dataUrl: undefined,
1071
- dragAndDrop: false,
1072
- keyboardSupport: true,
1073
- nodeClass: _node6.Node,
1074
- onCanMove: undefined,
1075
- // Can this node be moved?
1076
- onCanMoveTo: undefined,
1077
- // Can this node be moved to this position? function(moved_node, target_node, position)
1078
- onCanSelectNode: undefined,
1079
- onCreateLi: undefined,
1080
- onDragMove: undefined,
1081
- onDragStop: undefined,
1082
- onGetStateFromStorage: undefined,
1083
- onIsMoveHandle: undefined,
1084
- onLoadFailed: undefined,
1085
- onLoading: undefined,
1086
- onSetStateFromStorage: undefined,
1087
- openedIcon: "&#x25bc;",
1088
- openFolderDelay: 500,
1089
- // The delay for opening a folder during drag and drop; the value is in milliseconds
1090
- // The symbol to use for an open node - ▼ BLACK DOWN-POINTING TRIANGLE
1091
- // http://www.fileformat.info/info/unicode/char/25bc/index.htm
1092
- rtl: undefined,
1093
- // right-to-left support; true / false (default)
1094
- saveState: false,
1095
- // true / false / string (cookie name)
1096
- selectable: true,
1097
- showEmptyFolder: false,
1098
- slide: true,
1099
- // must display slide animation?
1100
- startDndDelay: 300,
1101
- // The delay for starting dnd (in milliseconds)
1102
- tabIndex: 0,
1103
- useContextMenu: true
1104
- });
1105
- _simple["default"].register(JqTreeWidget, "tree");