jqtree 1.6.2 → 1.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. package/.eslintrc +3 -12
  2. package/.github/workflows/ci.yml +48 -23
  3. package/.github/workflows/codeql-analysis.yml +9 -5
  4. package/.prettier +3 -0
  5. package/README.md +11 -8
  6. package/bower.json +1 -1
  7. package/{.postcssrc → config/.postcssrc} +0 -0
  8. package/{babel.config.json → config/babel.config.json} +0 -0
  9. package/{babel.coverage.config.json → config/babel.coverage.config.json} +0 -0
  10. package/{jest-jsdom.config.js → config/jest.config.js} +8 -3
  11. package/config/playwright.config.js +18 -0
  12. package/config/production +4 -0
  13. package/{rollup.config.js → config/rollup.config.js} +3 -3
  14. package/{jqtree.postcss → css/jqtree.postcss} +0 -0
  15. package/devserver/index.html +1 -9
  16. package/docs/Gemfile +2 -0
  17. package/docs/Gemfile.lock +263 -0
  18. package/{_config.yml → docs/_config.yml} +8 -1
  19. package/{_entries → docs/_entries}/01_general.md +0 -0
  20. package/{_entries → docs/_entries}/02_introduction.md +0 -0
  21. package/{_entries → docs/_entries}/03_features.md +1 -1
  22. package/{_entries → docs/_entries}/04_demo.html +1 -7
  23. package/{_entries → docs/_entries}/05_requirements.md +0 -0
  24. package/{_entries → docs/_entries}/06_downloads.md +0 -0
  25. package/{_entries → docs/_entries}/07_tutorial.md +0 -0
  26. package/{_entries → docs/_entries}/08_examples.md +0 -0
  27. package/{_entries → docs/_entries}/09_usecases.md +0 -0
  28. package/{_entries → docs/_entries}/10_changelog.md +4 -0
  29. package/{_entries → docs/_entries}/11_options.md +0 -0
  30. package/{_entries → docs/_entries}/12_animationspeed.md +0 -0
  31. package/{_entries → docs/_entries}/13_autoescape.md +0 -0
  32. package/{_entries → docs/_entries}/14_autoopen.md +0 -0
  33. package/{_entries → docs/_entries}/15_buttonleft.md +0 -0
  34. package/{_entries → docs/_entries}/16_closedicon.md +0 -0
  35. package/{_entries → docs/_entries}/17_data.md +0 -0
  36. package/{_entries → docs/_entries}/18_datafilter.md +0 -0
  37. package/{_entries → docs/_entries}/19_data-url.md +0 -0
  38. package/{_entries → docs/_entries}/20_draganddrop.md +0 -0
  39. package/{_entries → docs/_entries}/21_keyboardsupport.md +0 -0
  40. package/{_entries → docs/_entries}/22_oncanmove.md +0 -0
  41. package/{_entries → docs/_entries}/23_oncanmoveto.md +2 -2
  42. package/{_entries → docs/_entries}/24_oncanselectnode.md +0 -0
  43. package/{_entries → docs/_entries}/25_oncreateli.md +2 -2
  44. package/{_entries → docs/_entries}/26_ondragmove.md +0 -0
  45. package/{_entries → docs/_entries}/27_ondragstop.md +0 -0
  46. package/{_entries → docs/_entries}/28_onismovehandle.md +0 -0
  47. package/{_entries → docs/_entries}/29_onloadfailed.md +0 -0
  48. package/{_entries → docs/_entries}/30_onloading.md +2 -2
  49. package/{_entries → docs/_entries}/31_openedicon.md +0 -0
  50. package/{_entries → docs/_entries}/32_openfolderdelay.md +2 -0
  51. package/{_entries → docs/_entries}/33_rtl.md +0 -0
  52. package/{_entries → docs/_entries}/34_savestate.md +0 -0
  53. package/{_entries → docs/_entries}/35_selectable.md +0 -0
  54. package/{_entries → docs/_entries}/36_showemptyfolder.md +0 -0
  55. package/{_entries → docs/_entries}/37_slide.md +0 -0
  56. package/{_entries → docs/_entries}/38_start_dnd_delay.md +0 -0
  57. package/{_entries → docs/_entries}/39_tabindex.md +0 -0
  58. package/{_entries → docs/_entries}/40_usecontextmenu.md +0 -0
  59. package/{_entries → docs/_entries}/41_functions.md +0 -0
  60. package/{_entries → docs/_entries}/42_addparentnode.md +1 -1
  61. package/{_entries → docs/_entries}/43_addnodeafter.md +1 -1
  62. package/{_entries → docs/_entries}/44_addnodebefore.md +1 -1
  63. package/{_entries → docs/_entries}/45_appendnode.md +5 -5
  64. package/{_entries → docs/_entries}/46_closenode.md +0 -0
  65. package/{_entries → docs/_entries}/47_destroy.md +0 -0
  66. package/{_entries → docs/_entries}/48_getnodebycallback.md +0 -0
  67. package/{_entries → docs/_entries}/49_getnodebyid.md +0 -0
  68. package/{_entries → docs/_entries}/50_getnodebyhtmlelement.md +2 -2
  69. package/{_entries → docs/_entries}/51_getselectednode.md +0 -0
  70. package/{_entries → docs/_entries}/52_getstate.md +0 -0
  71. package/{_entries → docs/_entries}/53_gettree.md +1 -1
  72. package/{_entries → docs/_entries}/54_isdragging.md +1 -1
  73. package/{_entries → docs/_entries}/55_loaddata.md +3 -3
  74. package/{_entries → docs/_entries}/56_loaddatafromurl.md +4 -4
  75. package/{_entries → docs/_entries}/57_movedown.md +0 -0
  76. package/{_entries → docs/_entries}/58_movenode.md +3 -3
  77. package/{_entries → docs/_entries}/59_moveup.md +0 -0
  78. package/{_entries → docs/_entries}/60_opennode.md +3 -3
  79. package/docs/_entries/61_prependnode.md +21 -0
  80. package/{_entries → docs/_entries}/62_refresh.md +0 -0
  81. package/{_entries → docs/_entries}/63_reload.md +2 -2
  82. package/{_entries → docs/_entries}/64_removenode.md +0 -0
  83. package/{_entries → docs/_entries}/65_selectnode.md +0 -0
  84. package/{_entries → docs/_entries}/66_scrolltonode.md +0 -0
  85. package/{_entries → docs/_entries}/67_setoption.md +0 -0
  86. package/{_entries → docs/_entries}/68_setstate.md +0 -0
  87. package/{_entries → docs/_entries}/69_toggle.md +0 -0
  88. package/{_entries → docs/_entries}/70_tojson.md +0 -0
  89. package/{_entries → docs/_entries}/71_updatenode.md +1 -1
  90. package/{_entries → docs/_entries}/72_events.md +0 -0
  91. package/{_entries → docs/_entries}/73_tree-click.md +0 -0
  92. package/{_entries → docs/_entries}/74_tree-close.md +0 -0
  93. package/{_entries → docs/_entries}/75_tree-contextmenu.md +0 -0
  94. package/{_entries → docs/_entries}/76_tree-dblclick.md +0 -0
  95. package/{_entries → docs/_entries}/77_tree-init.md +0 -0
  96. package/{_entries → docs/_entries}/78_tree-load-data.md +0 -0
  97. package/{_entries → docs/_entries}/79_tree-loading-data.md +0 -0
  98. package/{_entries → docs/_entries}/80_tree-move.md +0 -0
  99. package/{_entries → docs/_entries}/81_tree-refresh.md +0 -0
  100. package/{_entries → docs/_entries}/82_tree-open.md +0 -0
  101. package/{_entries → docs/_entries}/83_tree-select.md +0 -0
  102. package/{_entries → docs/_entries}/84_multiple-selection.md +0 -0
  103. package/{_entries → docs/_entries}/85_add-to-selection.md +0 -0
  104. package/{_entries → docs/_entries}/86_get-selected-nodes.md +0 -0
  105. package/{_entries → docs/_entries}/87_is-node-selected.md +1 -1
  106. package/{_entries → docs/_entries}/88_remove-from-selection.md +0 -0
  107. package/{_entries → docs/_entries}/89_node-functions.md +0 -0
  108. package/{_entries → docs/_entries}/90_children.md +0 -0
  109. package/{_entries → docs/_entries}/91_getdata.md +2 -2
  110. package/{_entries → docs/_entries}/92_getlevel.md +0 -0
  111. package/{_entries → docs/_entries}/93_getnextnode.md +0 -0
  112. package/{_entries → docs/_entries}/94_getnextsibling.md +0 -0
  113. package/{_entries → docs/_entries}/95_getpreviousnode.md +0 -0
  114. package/{_entries → docs/_entries}/96_getprevioussibling.md +0 -0
  115. package/{_entries → docs/_entries}/97_parent.md +1 -1
  116. package/{_entries → docs/_entries}/insert.py +0 -0
  117. package/{_entries → docs/_entries}/renumber.py +0 -0
  118. package/{_examples → docs/_examples}/01_load_json_data.html +3 -5
  119. package/{_examples → docs/_examples}/02_load_json_data_from_server.html +3 -5
  120. package/{_examples → docs/_examples}/03_drag_and_drop.html +3 -5
  121. package/{_examples → docs/_examples}/04_save_state.html +3 -5
  122. package/{_examples → docs/_examples}/05_load_on_demand.html +3 -5
  123. package/{_examples → docs/_examples}/06_autoescape.html +3 -5
  124. package/{_examples → docs/_examples}/07_autoscroll.html +3 -5
  125. package/{_examples → docs/_examples}/08_multiple_select.html +3 -5
  126. package/{_examples → docs/_examples}/09_custom_html.html +3 -5
  127. package/{_examples → docs/_examples}/10_icon_buttons.html +3 -5
  128. package/{_examples → docs/_examples}/11_right-to-left.html +3 -5
  129. package/{_examples → docs/_examples}/12_button_on_right.html +3 -5
  130. package/docs/_examples/13_drag_outside.html +48 -0
  131. package/{_examples → docs/_examples}/14_filter.html +7 -9
  132. package/docs/_layouts/example.html +7 -0
  133. package/{_layouts/base.html → docs/_layouts/page.html} +4 -11
  134. package/docs/documentation.css +3 -0
  135. package/docs/index.html +65 -0
  136. package/docs/jqtree.css +189 -0
  137. package/docs/package.json +22 -0
  138. package/docs/pnpm-lock.yaml +768 -0
  139. package/docs/postcss.config.js +7 -0
  140. package/{static → docs/static}/bower.json +0 -1
  141. package/{static → docs/static}/bower_components/fontawesome/css/all.min.css +0 -0
  142. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-brands-400.eot +0 -0
  143. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-brands-400.svg +0 -0
  144. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-brands-400.ttf +0 -0
  145. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-brands-400.woff +0 -0
  146. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-brands-400.woff2 +0 -0
  147. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-regular-400.eot +0 -0
  148. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-regular-400.svg +0 -0
  149. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-regular-400.ttf +0 -0
  150. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-regular-400.woff +0 -0
  151. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-regular-400.woff2 +0 -0
  152. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-solid-900.eot +0 -0
  153. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-solid-900.svg +0 -0
  154. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-solid-900.ttf +0 -0
  155. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-solid-900.woff +0 -0
  156. package/{static → docs/static}/bower_components/fontawesome/webfonts/fa-solid-900.woff2 +0 -0
  157. package/{static → docs/static}/bower_components/jquery/dist/jquery.js +0 -0
  158. package/{static → docs/static}/bower_components/jquery/dist/jquery.min.js +0 -0
  159. package/{static → docs/static}/bower_components/jquery-mockjax/dist/jquery.mockjax.js +0 -0
  160. package/docs/static/documentation.css +1313 -0
  161. package/docs/static/documentation.js +26 -0
  162. package/{static → docs/static}/example.css +5 -37
  163. package/{static → docs/static}/example.postcss +5 -35
  164. package/{static → docs/static}/example_data.js +0 -0
  165. package/{static → docs/static}/examples/autoescape.js +0 -0
  166. package/{static → docs/static}/examples/autoscroll.js +0 -0
  167. package/{static → docs/static}/examples/button-on-right.js +0 -0
  168. package/{static → docs/static}/examples/custom_html.js +5 -9
  169. package/{static → docs/static}/examples/drag-outside.js +0 -0
  170. package/{static → docs/static}/examples/drag_and_drop.js +0 -0
  171. package/{static → docs/static}/examples/filter.js +2 -2
  172. package/{static → docs/static}/examples/icon_buttons.js +0 -0
  173. package/{static → docs/static}/examples/load_json_data.js +0 -0
  174. package/{static → docs/static}/examples/load_json_data_from_server.js +0 -0
  175. package/{static → docs/static}/examples/load_on_demand.js +0 -0
  176. package/{static → docs/static}/examples/multiple_select.js +0 -0
  177. package/{static → docs/static}/examples/right-to-left.js +0 -0
  178. package/{static → docs/static}/examples/save_state.js +0 -0
  179. package/{static → docs/static}/monokai.css +0 -0
  180. package/{static → docs/static}/spinner.gif +0 -0
  181. package/docs/tailwind.config.js +16 -0
  182. package/docs/tree.jquery.js +21 -0
  183. package/lib/dragAndDropHandler.js +8 -4
  184. package/lib/mouse.widget.js +3 -3
  185. package/lib/nodeElement.js +3 -3
  186. package/lib/playwright/coverage.js +140 -0
  187. package/lib/playwright/playwright.test.js +293 -201
  188. package/lib/playwright/testUtils.js +267 -0
  189. package/lib/test/jqTree/events.test.js +10 -9
  190. package/lib/test/jqTree/loadOnDemand.test.js +26 -21
  191. package/lib/test/jqTree/methods.test.js +84 -64
  192. package/lib/test/jqTree/options.test.js +41 -29
  193. package/lib/tree.jquery.js +4 -4
  194. package/package.json +48 -49
  195. package/src/dragAndDropHandler.ts +8 -4
  196. package/src/jqtreeOptions.ts +1 -1
  197. package/src/playwright/.eslintrc +2 -2
  198. package/src/playwright/coverage.ts +41 -0
  199. package/src/playwright/playwright.test.ts +50 -52
  200. package/src/playwright/playwright.test.ts-snapshots/with-dragAndDrop-moves-a-node-1-Chromium-darwin.png +0 -0
  201. package/src/playwright/playwright.test.ts-snapshots/with-dragAndDrop-moves-a-node-1-Chromium-linux.png +0 -0
  202. package/src/playwright/playwright.test.ts-snapshots/without-dragAndDrop-displays-a-tree-1-Chromium-darwin.png +0 -0
  203. package/src/playwright/playwright.test.ts-snapshots/without-dragAndDrop-displays-a-tree-1-Chromium-linux.png +0 -0
  204. package/src/playwright/playwright.test.ts-snapshots/without-dragAndDrop-selects-a-node-1-Chromium-darwin.png +0 -0
  205. package/src/playwright/playwright.test.ts-snapshots/without-dragAndDrop-selects-a-node-1-Chromium-linux.png +0 -0
  206. package/src/playwright/testUtils.ts +122 -0
  207. package/src/test/.eslintrc +13 -3
  208. package/src/test/jqTree/events.test.ts +10 -9
  209. package/src/test/jqTree/loadOnDemand.test.ts +10 -10
  210. package/src/test/jqTree/methods.test.ts +37 -45
  211. package/src/test/jqTree/options.test.ts +26 -28
  212. package/src/tree.jquery.d.ts +1 -1
  213. package/tree.jquery.debug.js +17 -14
  214. package/tree.jquery.debug.js.map +1 -1
  215. package/tree.jquery.js +3 -3
  216. package/tree.jquery.js.map +1 -1
  217. package/_entries/61_prependnode.md +0 -21
  218. package/_examples/13_drag_outside.html +0 -26
  219. package/_layouts/frontpage.html +0 -20
  220. package/_layouts/page.html +0 -7
  221. package/index.html +0 -48
  222. package/jest-browser.config.js +0 -15
  223. package/jest-playwright.config.js +0 -21
  224. package/jest.config.js +0 -8
  225. package/lib/playwright/testUtil.js +0 -459
  226. package/lib/playwright/visualRegression.js +0 -193
  227. package/production +0 -5
  228. package/src/playwright/screenshots/displays_a_tree_Desktop.png +0 -0
  229. package/src/playwright/screenshots/displays_a_tree_iPhone 6.png +0 -0
  230. package/src/playwright/screenshots/moves_a_node_Desktop.png +0 -0
  231. package/src/playwright/screenshots/moves_a_node_iPhone 6.png +0 -0
  232. package/src/playwright/screenshots/opens_a_node_Desktop.png +0 -0
  233. package/src/playwright/screenshots/opens_a_node_iPhone 6.png +0 -0
  234. package/src/playwright/screenshots/selects_a_node_Desktop.png +0 -0
  235. package/src/playwright/screenshots/selects_a_node_iPhone 6.png +0 -0
  236. package/src/playwright/testUtil.ts +0 -170
  237. package/src/playwright/visualRegression.ts +0 -88
  238. package/static/bower_components/bootstrap/dist/css/bootstrap-theme.min.css +0 -6
  239. package/static/bower_components/bootstrap/dist/css/bootstrap.min.css +0 -6
  240. package/static/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  241. package/static/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +0 -288
  242. package/static/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  243. package/static/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  244. package/static/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  245. package/static/bower_components/bootstrap/dist/js/bootstrap.min.js +0 -6
  246. package/static/documentation.css +0 -171
  247. package/static/documentation.js +0 -48
@@ -1,21 +0,0 @@
1
- ---
2
- title: prependNode
3
- name: functions-prependnode
4
- ---
5
-
6
- **function prependNode(new_node_info, parent_node);**
7
-
8
- Add a node to this parent node as the first child. If **parent_node** is empty, then the new node becomes a root node.
9
-
10
- {% highlight js %}
11
- var parent_node = $tree.tree('getNodeById', 123);
12
-
13
- $tree.tree(
14
- 'prependNode',
15
- {
16
- name: 'new_node',
17
- id: 456
18
- },
19
- parent_node
20
- );
21
- {% endhighlight %}
@@ -1,26 +0,0 @@
1
- ---
2
- title: Drag outside tree
3
- layout: page
4
- js: examples/drag-outside.js
5
- css: example.css
6
- ---
7
-
8
- <p id="nav">
9
- <a href="../12_button_on_right/">&laquo; Example 12</a>
10
- <a href="../14_filter/" class="next">Example 14 &raquo;</a>
11
- </p>
12
-
13
- <h1>Example 13 - drag node outside tree</h1>
14
-
15
- <div id="tree1" data-url="/example_data/"></div>
16
-
17
- <div id="targetDiv">drag here</div>
18
-
19
- <h3>javascript</h3>
20
-
21
- {% highlight js %}
22
- $('#tree1').tree({
23
- onDragMove: handleMove,
24
- onDragStop: handleStop
25
- });
26
- {% endhighlight %}
@@ -1,20 +0,0 @@
1
- ---
2
- layout: base
3
- ---
4
-
5
- <div class="jumbotron" id="jqtree">
6
- <div class="container">
7
- <h1>jqTree</h1>
8
- <p>
9
- <strong class="title">JqTree</strong> is a jQuery widget for displaying a <strong>tree structure</strong> in html
10
- <br>
11
- It supports <strong>json data</strong>, loading via <strong>ajax</strong> and <strong>drag-and-drop</strong>.
12
- </p>
13
- <p>
14
- <a class="btn btn-primary" href="https://github.com/mbraak/jqTree/tarball/master">Download jqTree</a>
15
- </p>
16
- </div>
17
- </div>
18
- <div class="container">
19
- {{ content }}
20
- </div>
@@ -1,7 +0,0 @@
1
- ---
2
- layout: base
3
- ---
4
-
5
- <div class="container">
6
- {{ content }}
7
- </div>
package/index.html DELETED
@@ -1,48 +0,0 @@
1
- ---
2
- layout: frontpage
3
- js: documentation.js
4
- css: documentation.css
5
- ---
6
-
7
- <div class="row">
8
- <div class="col-md-3">
9
- <div class="bs-sidebar hidden-print" id="menu" role="complementary">
10
- <a href="#jqtree"><h2>jqTree</h2></a>
11
- <ul class="nav bs-sidenav">
12
- {% assign level = 0 %}
13
-
14
- {% for entry in site.entries %}
15
- {% if entry.section %}
16
- {% if level == 1 %}
17
- </ul>
18
- </li>
19
- {% endif %}
20
- <li>
21
- <a href="#{{ entry.name }}">{{ entry.title }}</a>
22
- <ul class="nav">
23
- {% assign level = 1 %}
24
- {% else %}
25
- <li><a href="#{{ entry.name }}">{{ entry.title }}</a></li>
26
- {% endif %}
27
- {% endfor %}
28
-
29
- {% if level == 1 %}
30
- </ul>
31
- </li>
32
- {% endif %}
33
- </ul>
34
- </div>
35
- </div>
36
- <div class="col-md-9" id="main">
37
- {% for entry in site.entries %}
38
- {% if entry.hide_title %}
39
- <div id="{{ entry.name }}"></div>
40
- {% elsif entry.section %}
41
- <h3 id="{{ entry.name }}">{{ entry.title }}</h3>
42
- {% else %}
43
- <h4 id="{{ entry.name }}">{{ entry.title }}</h4>
44
- {% endif %}
45
- {{ entry.output }}
46
- {% endfor %}
47
- </div>
48
- </div>
@@ -1,15 +0,0 @@
1
- module.exports = {
2
- modulePathIgnorePatterns: [
3
- "<rootDir>/build/",
4
- "<rootDir>/lib/",
5
- "<rootDir>/_site/",
6
- "<rootDir>/static/",
7
- ],
8
- preset: "jest-playwright-preset",
9
- testRegex: "\\/src\\/playwright\\/.*\\.test\\.ts",
10
- setupFilesAfterEnv: ["expect-playwright", "givens/setup.js"],
11
- coveragePathIgnorePatterns: [
12
- "<rootDir>/node_modules/",
13
- "<rootDir>/src/playwright/",
14
- ],
15
- };
@@ -1,21 +0,0 @@
1
- module.exports = {
2
- devices: [
3
- {
4
- name: "Desktop",
5
- deviceScaleFactor: 1,
6
- hasTouch: false,
7
- isMobile: false,
8
- userAgent: "Chrome",
9
- viewport: {
10
- width: 800,
11
- height: 600,
12
- },
13
- },
14
- "iPhone 6",
15
- ],
16
- launchOptions: {
17
- headless: true,
18
- chromiumSandbox: false,
19
- },
20
- collectCoverage: true,
21
- };
package/jest.config.js DELETED
@@ -1,8 +0,0 @@
1
- module.exports = {
2
- projects: [
3
- "<rootDir>/jest-browser.config.js",
4
- "<rootDir>/jest-jsdom.config.js",
5
- ],
6
- coverageDirectory: "jest-coverage",
7
- coverageReporters: ["json"],
8
- };
@@ -1,459 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.selectNode = exports.openNode = exports.getTreeStructure = exports.findTitleElement = exports.findNodeElement = exports.expectToBeSelected = exports.expectToBeOpen = exports.expectToBeClosed = exports.dragAndDrop = void 0;
7
-
8
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9
-
10
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
11
-
12
- var expectToBeSelected = /*#__PURE__*/function () {
13
- var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(handle) {
14
- var isSelected;
15
- return regeneratorRuntime.wrap(function _callee$(_context) {
16
- while (1) {
17
- switch (_context.prev = _context.next) {
18
- case 0:
19
- _context.next = 2;
20
- return isNodeSelected(handle);
21
-
22
- case 2:
23
- isSelected = _context.sent;
24
- expect(isSelected).toBe(true);
25
-
26
- case 4:
27
- case "end":
28
- return _context.stop();
29
- }
30
- }
31
- }, _callee);
32
- }));
33
-
34
- return function expectToBeSelected(_x) {
35
- return _ref.apply(this, arguments);
36
- };
37
- }();
38
-
39
- exports.expectToBeSelected = expectToBeSelected;
40
-
41
- var expectToBeOpen = /*#__PURE__*/function () {
42
- var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(handle) {
43
- var isOpen;
44
- return regeneratorRuntime.wrap(function _callee2$(_context2) {
45
- while (1) {
46
- switch (_context2.prev = _context2.next) {
47
- case 0:
48
- _context2.next = 2;
49
- return isNodeOpen(handle);
50
-
51
- case 2:
52
- isOpen = _context2.sent;
53
- expect(isOpen).toBe(true);
54
-
55
- case 4:
56
- case "end":
57
- return _context2.stop();
58
- }
59
- }
60
- }, _callee2);
61
- }));
62
-
63
- return function expectToBeOpen(_x2) {
64
- return _ref2.apply(this, arguments);
65
- };
66
- }();
67
-
68
- exports.expectToBeOpen = expectToBeOpen;
69
-
70
- var expectToBeClosed = /*#__PURE__*/function () {
71
- var _ref3 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(handle) {
72
- var isOpen;
73
- return regeneratorRuntime.wrap(function _callee3$(_context3) {
74
- while (1) {
75
- switch (_context3.prev = _context3.next) {
76
- case 0:
77
- _context3.next = 2;
78
- return isNodeOpen(handle);
79
-
80
- case 2:
81
- isOpen = _context3.sent;
82
- expect(isOpen).toBe(false);
83
-
84
- case 4:
85
- case "end":
86
- return _context3.stop();
87
- }
88
- }
89
- }, _callee3);
90
- }));
91
-
92
- return function expectToBeClosed(_x3) {
93
- return _ref3.apply(this, arguments);
94
- };
95
- }();
96
-
97
- exports.expectToBeClosed = expectToBeClosed;
98
-
99
- var findTitleElement = /*#__PURE__*/function () {
100
- var _ref4 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(title) {
101
- return regeneratorRuntime.wrap(function _callee4$(_context4) {
102
- while (1) {
103
- switch (_context4.prev = _context4.next) {
104
- case 0:
105
- _context4.next = 2;
106
- return findElement("css=.jqtree-title >> text=\"".concat(title, "\""));
107
-
108
- case 2:
109
- return _context4.abrupt("return", _context4.sent);
110
-
111
- case 3:
112
- case "end":
113
- return _context4.stop();
114
- }
115
- }
116
- }, _callee4);
117
- }));
118
-
119
- return function findTitleElement(_x4) {
120
- return _ref4.apply(this, arguments);
121
- };
122
- }();
123
-
124
- exports.findTitleElement = findTitleElement;
125
-
126
- var findNodeElement = /*#__PURE__*/function () {
127
- var _ref5 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5(title) {
128
- var titleElement;
129
- return regeneratorRuntime.wrap(function _callee5$(_context5) {
130
- while (1) {
131
- switch (_context5.prev = _context5.next) {
132
- case 0:
133
- _context5.next = 2;
134
- return findTitleElement(title);
135
-
136
- case 2:
137
- titleElement = _context5.sent;
138
- _context5.next = 5;
139
- return titleElement.evaluateHandle(function (el) {
140
- var li = el.closest("li");
141
-
142
- if (!li) {
143
- throw Error("Node element not found");
144
- }
145
-
146
- return li;
147
- });
148
-
149
- case 5:
150
- return _context5.abrupt("return", _context5.sent);
151
-
152
- case 6:
153
- case "end":
154
- return _context5.stop();
155
- }
156
- }
157
- }, _callee5);
158
- }));
159
-
160
- return function findNodeElement(_x5) {
161
- return _ref5.apply(this, arguments);
162
- };
163
- }();
164
-
165
- exports.findNodeElement = findNodeElement;
166
-
167
- var openNode = /*#__PURE__*/function () {
168
- var _ref6 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee6(handle) {
169
- var toggler;
170
- return regeneratorRuntime.wrap(function _callee6$(_context6) {
171
- while (1) {
172
- switch (_context6.prev = _context6.next) {
173
- case 0:
174
- _context6.next = 2;
175
- return findToggler(handle);
176
-
177
- case 2:
178
- toggler = _context6.sent;
179
- _context6.next = 5;
180
- return toggler.click();
181
-
182
- case 5:
183
- case "end":
184
- return _context6.stop();
185
- }
186
- }
187
- }, _callee6);
188
- }));
189
-
190
- return function openNode(_x6) {
191
- return _ref6.apply(this, arguments);
192
- };
193
- }();
194
-
195
- exports.openNode = openNode;
196
-
197
- var findToggler = /*#__PURE__*/function () {
198
- var _ref7 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee7(handle) {
199
- var toggler;
200
- return regeneratorRuntime.wrap(function _callee7$(_context7) {
201
- while (1) {
202
- switch (_context7.prev = _context7.next) {
203
- case 0:
204
- _context7.next = 2;
205
- return handle.$(".jqtree-toggler");
206
-
207
- case 2:
208
- toggler = _context7.sent;
209
-
210
- if (toggler) {
211
- _context7.next = 5;
212
- break;
213
- }
214
-
215
- throw Error("Toggler button not found");
216
-
217
- case 5:
218
- return _context7.abrupt("return", toggler);
219
-
220
- case 6:
221
- case "end":
222
- return _context7.stop();
223
- }
224
- }
225
- }, _callee7);
226
- }));
227
-
228
- return function findToggler(_x7) {
229
- return _ref7.apply(this, arguments);
230
- };
231
- }();
232
-
233
- var findElement = /*#__PURE__*/function () {
234
- var _ref8 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee8(selector) {
235
- var element;
236
- return regeneratorRuntime.wrap(function _callee8$(_context8) {
237
- while (1) {
238
- switch (_context8.prev = _context8.next) {
239
- case 0:
240
- _context8.next = 2;
241
- return page.$(selector);
242
-
243
- case 2:
244
- element = _context8.sent;
245
-
246
- if (element) {
247
- _context8.next = 5;
248
- break;
249
- }
250
-
251
- throw Error("Element not found: ".concat(selector));
252
-
253
- case 5:
254
- return _context8.abrupt("return", element);
255
-
256
- case 6:
257
- case "end":
258
- return _context8.stop();
259
- }
260
- }
261
- }, _callee8);
262
- }));
263
-
264
- return function findElement(_x8) {
265
- return _ref8.apply(this, arguments);
266
- };
267
- }();
268
-
269
- var isNodeOpen = /*#__PURE__*/function () {
270
- var _ref9 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee9(handle) {
271
- return regeneratorRuntime.wrap(function _callee9$(_context9) {
272
- while (1) {
273
- switch (_context9.prev = _context9.next) {
274
- case 0:
275
- return _context9.abrupt("return", handle.evaluate(function (el) {
276
- return !el.classList.contains("jqtree-closed");
277
- }));
278
-
279
- case 1:
280
- case "end":
281
- return _context9.stop();
282
- }
283
- }
284
- }, _callee9);
285
- }));
286
-
287
- return function isNodeOpen(_x9) {
288
- return _ref9.apply(this, arguments);
289
- };
290
- }();
291
-
292
- var isNodeSelected = /*#__PURE__*/function () {
293
- var _ref10 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee10(handle) {
294
- return regeneratorRuntime.wrap(function _callee10$(_context10) {
295
- while (1) {
296
- switch (_context10.prev = _context10.next) {
297
- case 0:
298
- return _context10.abrupt("return", handle.evaluate(function (el) {
299
- return el.classList.contains("jqtree-selected");
300
- }));
301
-
302
- case 1:
303
- case "end":
304
- return _context10.stop();
305
- }
306
- }
307
- }, _callee10);
308
- }));
309
-
310
- return function isNodeSelected(_x10) {
311
- return _ref10.apply(this, arguments);
312
- };
313
- }();
314
-
315
- var selectNode = /*#__PURE__*/function () {
316
- var _ref11 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee11(handle) {
317
- var titleHandle;
318
- return regeneratorRuntime.wrap(function _callee11$(_context11) {
319
- while (1) {
320
- switch (_context11.prev = _context11.next) {
321
- case 0:
322
- _context11.next = 2;
323
- return handle.$(".jqtree-title");
324
-
325
- case 2:
326
- titleHandle = _context11.sent;
327
- _context11.next = 5;
328
- return titleHandle === null || titleHandle === void 0 ? void 0 : titleHandle.click();
329
-
330
- case 5:
331
- case "end":
332
- return _context11.stop();
333
- }
334
- }
335
- }, _callee11);
336
- }));
337
-
338
- return function selectNode(_x11) {
339
- return _ref11.apply(this, arguments);
340
- };
341
- }();
342
-
343
- exports.selectNode = selectNode;
344
-
345
- var getTreeStructure = /*#__PURE__*/function () {
346
- var _ref12 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee12() {
347
- return regeneratorRuntime.wrap(function _callee12$(_context12) {
348
- while (1) {
349
- switch (_context12.prev = _context12.next) {
350
- case 0:
351
- _context12.next = 2;
352
- return page.evaluate("\n ;\n function getTreeNode($li) {\n const $div = $li.children(\"div.jqtree-element\");\n const $span = $div.children(\"span.jqtree-title\");\n const name = $span.text();\n const selected = $li.hasClass(\"jqtree-selected\");\n\n if ($li.hasClass(\"jqtree-folder\")) {\n const $ul = $li.children(\"ul.jqtree_common\");\n\n return {\n nodeType: \"folder\",\n children: getChildren($ul),\n name,\n open: !$li.hasClass(\"jqtree-closed\"),\n selected,\n };\n } else {\n return {\n nodeType: \"child\",\n name,\n selected,\n };\n }\n }\n\n function getChildren($ul) {\n return $ul\n .children(\"li.jqtree_common\")\n .map((_, li) => {\n return getTreeNode(jQuery(li));\n })\n .get();\n }\n\n JSON.stringify(window.getChildren(jQuery(\"ul.jqtree-tree\")));\n ").then(function (s) {
353
- return JSON.parse(s);
354
- });
355
-
356
- case 2:
357
- return _context12.abrupt("return", _context12.sent);
358
-
359
- case 3:
360
- case "end":
361
- return _context12.stop();
362
- }
363
- }
364
- }, _callee12);
365
- }));
366
-
367
- return function getTreeStructure() {
368
- return _ref12.apply(this, arguments);
369
- };
370
- }();
371
-
372
- exports.getTreeStructure = getTreeStructure;
373
-
374
- var getRect = /*#__PURE__*/function () {
375
- var _ref13 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee13(handle) {
376
- var boundingBox;
377
- return regeneratorRuntime.wrap(function _callee13$(_context13) {
378
- while (1) {
379
- switch (_context13.prev = _context13.next) {
380
- case 0:
381
- _context13.next = 2;
382
- return handle.boundingBox();
383
-
384
- case 2:
385
- boundingBox = _context13.sent;
386
-
387
- if (boundingBox) {
388
- _context13.next = 5;
389
- break;
390
- }
391
-
392
- throw "No bounding box";
393
-
394
- case 5:
395
- return _context13.abrupt("return", boundingBox);
396
-
397
- case 6:
398
- case "end":
399
- return _context13.stop();
400
- }
401
- }
402
- }, _callee13);
403
- }));
404
-
405
- return function getRect(_x12) {
406
- return _ref13.apply(this, arguments);
407
- };
408
- }();
409
-
410
- var dragAndDrop = /*#__PURE__*/function () {
411
- var _ref14 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee14(from, to) {
412
- var fromRect, toRect;
413
- return regeneratorRuntime.wrap(function _callee14$(_context14) {
414
- while (1) {
415
- switch (_context14.prev = _context14.next) {
416
- case 0:
417
- _context14.next = 2;
418
- return findTitleElement(from).then(getRect);
419
-
420
- case 2:
421
- fromRect = _context14.sent;
422
- _context14.next = 5;
423
- return findTitleElement(to).then(getRect);
424
-
425
- case 5:
426
- toRect = _context14.sent;
427
- _context14.next = 8;
428
- return page.mouse.move(fromRect.x + fromRect.width / 2, fromRect.y + fromRect.height / 2);
429
-
430
- case 8:
431
- _context14.next = 10;
432
- return page.mouse.down();
433
-
434
- case 10:
435
- _context14.next = 12;
436
- return page.waitForTimeout(200);
437
-
438
- case 12:
439
- _context14.next = 14;
440
- return page.mouse.move(toRect.x + toRect.width / 2, toRect.y + toRect.height / 2);
441
-
442
- case 14:
443
- _context14.next = 16;
444
- return page.mouse.up();
445
-
446
- case 16:
447
- case "end":
448
- return _context14.stop();
449
- }
450
- }
451
- }, _callee14);
452
- }));
453
-
454
- return function dragAndDrop(_x13, _x14) {
455
- return _ref14.apply(this, arguments);
456
- };
457
- }();
458
-
459
- exports.dragAndDrop = dragAndDrop;