jqtree 1.7.4 → 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 (94) hide show
  1. package/.eslintrc +5 -1
  2. package/bower.json +1 -1
  3. package/config/babel.config.json +1 -1
  4. package/config/production +2 -0
  5. package/devserver/devserver_scroll.js +8 -0
  6. package/devserver/test_scroll.html +28 -0
  7. package/devserver/test_scroll_container.html +39 -0
  8. package/docs/_config.yml +1 -1
  9. package/docs/_entries/general/changelog.md +12 -0
  10. package/docs/package.json +1 -1
  11. package/docs/pnpm-lock.yaml +30 -30
  12. package/package.json +31 -27
  13. package/src/dataLoader.ts +44 -19
  14. package/src/dragAndDropHandler/dragElement.ts +42 -0
  15. package/src/dragAndDropHandler/hitAreasGenerator.ts +175 -0
  16. package/src/dragAndDropHandler/index.ts +470 -0
  17. package/src/dragAndDropHandler/types.ts +12 -0
  18. package/src/dragAndDropHandler/visibleNodeIterator.ts +97 -0
  19. package/src/elementsRenderer.ts +75 -40
  20. package/src/jqtreeMethodTypes.ts +40 -0
  21. package/src/jqtreeOptions.ts +43 -25
  22. package/src/keyHandler.ts +59 -38
  23. package/src/mouse.widget.ts +3 -3
  24. package/src/mouseWidgetTypes.ts +6 -0
  25. package/src/node.ts +32 -48
  26. package/src/nodeElement/borderDropHint.ts +32 -0
  27. package/src/nodeElement/folderElement.ts +133 -0
  28. package/src/nodeElement/ghostDropHint.ts +68 -0
  29. package/src/nodeElement/index.ts +101 -0
  30. package/src/nodeUtils.ts +10 -0
  31. package/src/playwright/coverage.ts +1 -4
  32. package/src/playwright/playwright.test.ts +203 -15
  33. package/src/playwright/testUtils.ts +23 -15
  34. package/src/saveStateHandler.ts +75 -26
  35. package/src/scrollHandler/containerScrollParent.ts +177 -0
  36. package/src/scrollHandler/createScrollParent.ts +50 -0
  37. package/src/scrollHandler/documentScrollParent.ts +182 -0
  38. package/src/scrollHandler/types.ts +7 -0
  39. package/src/scrollHandler.ts +36 -248
  40. package/src/selectNodeHandler.ts +10 -16
  41. package/src/test/jqTree/keyboard.test.ts +18 -23
  42. package/src/test/jqTree/loadOnDemand.test.ts +2 -3
  43. package/src/test/jqTree/methods.test.ts +33 -4
  44. package/src/test/jqTree/options.test.ts +15 -4
  45. package/src/test/node.test.ts +85 -26
  46. package/src/test/nodeUtils.test.ts +21 -0
  47. package/src/tree.jquery.ts +262 -83
  48. package/src/util.ts +3 -0
  49. package/src/version.ts +1 -1
  50. package/tree.jquery.debug.js +1922 -2608
  51. package/tree.jquery.debug.js.map +1 -1
  52. package/tree.jquery.js +2 -2
  53. package/tree.jquery.js.map +1 -1
  54. package/lib/dataLoader.js +0 -124
  55. package/lib/dragAndDropHandler.js +0 -596
  56. package/lib/elementsRenderer.js +0 -268
  57. package/lib/jqtreeOptions.js +0 -1
  58. package/lib/keyHandler.js +0 -115
  59. package/lib/mouse.widget.js +0 -256
  60. package/lib/node.js +0 -717
  61. package/lib/nodeElement.js +0 -277
  62. package/lib/playwright/coverage.js +0 -96
  63. package/lib/playwright/playwright.test.js +0 -228
  64. package/lib/playwright/testUtils.js +0 -184
  65. package/lib/saveStateHandler.js +0 -278
  66. package/lib/scrollHandler.js +0 -250
  67. package/lib/selectNodeHandler.js +0 -129
  68. package/lib/simple.widget.js +0 -159
  69. package/lib/test/global.d.js +0 -3
  70. package/lib/test/jqTree/accessibility.test.js +0 -37
  71. package/lib/test/jqTree/create.test.js +0 -48
  72. package/lib/test/jqTree/events.test.js +0 -210
  73. package/lib/test/jqTree/keyboard.test.js +0 -225
  74. package/lib/test/jqTree/loadOnDemand.test.js +0 -218
  75. package/lib/test/jqTree/methods.test.js +0 -1347
  76. package/lib/test/jqTree/options.test.js +0 -548
  77. package/lib/test/node.test.js +0 -1160
  78. package/lib/test/nodeUtil.test.js +0 -27
  79. package/lib/test/support/exampleData.js +0 -36
  80. package/lib/test/support/jqTreeMatchers.js +0 -70
  81. package/lib/test/support/matchers.d.js +0 -1
  82. package/lib/test/support/setupTests.js +0 -7
  83. package/lib/test/support/testUtil.js +0 -32
  84. package/lib/test/support/treeStructure.js +0 -39
  85. package/lib/test/util.test.js +0 -26
  86. package/lib/tree.jquery.d.js +0 -1
  87. package/lib/tree.jquery.js +0 -1106
  88. package/lib/types.js +0 -1
  89. package/lib/typings.d.js +0 -2
  90. package/lib/util.js +0 -18
  91. package/lib/version.js +0 -9
  92. package/src/dragAndDropHandler.ts +0 -719
  93. package/src/nodeElement.ts +0 -272
  94. package/src/types.ts +0 -19
@@ -1,27 +0,0 @@
1
- "use strict";
2
-
3
- var _node = require("../node");
4
- var context = describe;
5
- describe("getPosition", function () {
6
- it("returns the position", function () {
7
- expect((0, _node.getPosition)("inside")).toBe(_node.Position.Inside);
8
- });
9
- context("with an unknown position", function () {
10
- it("returns undefined", function () {
11
- expect((0, _node.getPosition)("unknown")).toBeUndefined();
12
- });
13
- });
14
- });
15
- describe("getPositionName", function () {
16
- it("returns the name of the position", function () {
17
- expect((0, _node.getPositionName)(_node.Position.After)).toBe("after");
18
- expect((0, _node.getPositionName)(_node.Position.Before)).toBe("before");
19
- expect((0, _node.getPositionName)(_node.Position.Inside)).toBe("inside");
20
- expect((0, _node.getPositionName)(_node.Position.None)).toBe("none");
21
- });
22
- context("with an unknown position", function () {
23
- it("returns an empty string", function () {
24
- expect((0, _node.getPositionName)(10)).toBe("");
25
- });
26
- });
27
- });
@@ -1,36 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var exampleData = [{
8
- name: "node1",
9
- id: 123,
10
- // extra data
11
- intProperty: 1,
12
- strProperty: "1",
13
- children: [{
14
- name: "child1",
15
- id: 125,
16
- intProperty: 2
17
- }, {
18
- name: "child2",
19
- id: 126
20
- }]
21
- }, {
22
- name: "node2",
23
- id: 124,
24
- intProperty: 3,
25
- strProperty: "3",
26
- children: [{
27
- name: "node3",
28
- id: 127,
29
- children: [{
30
- name: "child3",
31
- id: 128
32
- }]
33
- }]
34
- }];
35
- var _default = exampleData;
36
- exports["default"] = _default;
@@ -1,70 +0,0 @@
1
- "use strict";
2
-
3
- var _treeStructure = _interopRequireDefault(require("./treeStructure"));
4
- var _testUtil = require("./testUtil");
5
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
6
- var assertJqTreeFolder = function assertJqTreeFolder($el) {
7
- /* istanbul ignore if */
8
- if (!$el.hasClass("jqtree-folder")) {
9
- throw new Error("Node is not a folder");
10
- }
11
- };
12
- expect.extend({
13
- toBeClosed: function toBeClosed(el) {
14
- var $el = jQuery(el);
15
- assertJqTreeFolder($el);
16
-
17
- /* istanbul ignore next */
18
- return {
19
- message: function message() {
20
- return "The node is open";
21
- },
22
- pass: $el.hasClass("jqtree-closed")
23
- };
24
- },
25
- toBeFocused: function toBeFocused(el) {
26
- /* istanbul ignore next */
27
- return {
28
- message: function message() {
29
- return "The is node is not focused";
30
- },
31
- pass: document.activeElement === (0, _testUtil.titleSpan)(el)[0]
32
- };
33
- },
34
- toBeOpen: function toBeOpen(el) {
35
- var $el = jQuery(el);
36
- assertJqTreeFolder($el);
37
-
38
- /* istanbul ignore next */
39
- return {
40
- message: function message() {
41
- return "The node is closed";
42
- },
43
- pass: !$el.hasClass("jqtree-closed")
44
- };
45
- },
46
- toBeSelected: function toBeSelected(el) {
47
- var $el = jQuery(el);
48
-
49
- /* istanbul ignore next */
50
- return {
51
- message: function message() {
52
- return "The node is not selected";
53
- },
54
- pass: $el.hasClass("jqtree-selected")
55
- };
56
- },
57
- toHaveTreeStructure: function toHaveTreeStructure(el, expectedStructure) {
58
- var _this = this;
59
- var $el = jQuery(el);
60
- var receivedStructure = (0, _treeStructure["default"])($el);
61
-
62
- /* istanbul ignore next */
63
- return {
64
- message: function message() {
65
- return _this.utils.printDiffOrStringify(expectedStructure, receivedStructure, "expected", "received", true);
66
- },
67
- pass: this.equals(receivedStructure, expectedStructure)
68
- };
69
- }
70
- });
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,7 +0,0 @@
1
- "use strict";
2
-
3
- var _jquery = _interopRequireDefault(require("jquery"));
4
- require("./jqTreeMatchers");
5
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
6
- window.$ = _jquery["default"]; // eslint-disable-line @typescript-eslint/no-unsafe-member-access
7
- window.jQuery = _jquery["default"]; // eslint-disable-line @typescript-eslint/no-unsafe-member-access
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.togglerLink = exports.titleSpan = exports.singleChild = void 0;
7
- var singleChild = function singleChild($el, selector) {
8
- var $result = $el.children(selector);
9
-
10
- /* istanbul ignore if */
11
- if ($result.length === 0) {
12
- throw "No child found for selector '".concat(selector, "'");
13
- }
14
-
15
- /* istanbul ignore if */
16
- if ($result.length > 1) {
17
- throw "Multiple elements found for selector '".concat(selector, "'");
18
- }
19
- return $result;
20
- };
21
- exports.singleChild = singleChild;
22
- var titleSpan = function titleSpan(liNode) {
23
- return singleChild(nodeElement(liNode), "span.jqtree-title");
24
- };
25
- exports.titleSpan = titleSpan;
26
- var togglerLink = function togglerLink(liNode) {
27
- return singleChild(nodeElement(liNode), "a.jqtree-toggler");
28
- };
29
- exports.togglerLink = togglerLink;
30
- var nodeElement = function nodeElement(liNode) {
31
- return singleChild(jQuery(liNode), "div.jqtree-element ");
32
- };
@@ -1,39 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _testUtil = require("./testUtil");
8
- var getTreeNode = function getTreeNode($li) {
9
- var $div = (0, _testUtil.singleChild)($li, "div.jqtree-element");
10
- var $span = (0, _testUtil.singleChild)($div, "span.jqtree-title");
11
- var name = $span.html();
12
- var selected = $li.hasClass("jqtree-selected");
13
- if ($li.hasClass("jqtree-folder")) {
14
- var $ul = $li.children("ul.jqtree_common");
15
- return {
16
- nodeType: "folder",
17
- children: getChildren($ul),
18
- name: name,
19
- open: !$li.hasClass("jqtree-closed"),
20
- selected: selected
21
- };
22
- } else {
23
- return {
24
- nodeType: "child",
25
- name: name,
26
- selected: selected
27
- };
28
- }
29
- };
30
- var getChildren = function getChildren($ul) {
31
- return $ul.children("li.jqtree_common").map(function (_, li) {
32
- return getTreeNode(jQuery(li));
33
- }).get();
34
- };
35
- var treeStructure = function treeStructure($el) {
36
- return getChildren((0, _testUtil.singleChild)($el, "ul.jqtree-tree"));
37
- };
38
- var _default = treeStructure;
39
- exports["default"] = _default;
@@ -1,26 +0,0 @@
1
- "use strict";
2
-
3
- var _util = require("../util");
4
- describe("getBoolString", function () {
5
- it("returns true or false", function () {
6
- expect((0, _util.getBoolString)(true)).toBe("true");
7
- expect((0, _util.getBoolString)(false)).toBe("false");
8
- expect((0, _util.getBoolString)(1)).toBe("true");
9
- expect((0, _util.getBoolString)(null)).toBe("false");
10
- });
11
- });
12
- describe("isFunction", function () {
13
- it("returns a boolean", function () {
14
- expect((0, _util.isFunction)(_util.isInt)).toBe(true);
15
- expect((0, _util.isFunction)("isInt")).toBe(false);
16
- });
17
- });
18
- describe("isInt", function () {
19
- it("returns a boolean", function () {
20
- expect((0, _util.isInt)(10)).toBe(true);
21
- expect((0, _util.isInt)(0)).toBe(true);
22
- expect((0, _util.isInt)(-1)).toBe(true);
23
- expect((0, _util.isInt)("1")).toBe(false);
24
- expect((0, _util.isInt)(null)).toBe(false);
25
- });
26
- });
@@ -1 +0,0 @@
1
- "use strict";