@opensumi/playwright 2.21.13 → 2.22.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 (155) hide show
  1. package/lib/app.d.ts +2 -1
  2. package/lib/app.d.ts.map +1 -1
  3. package/lib/app.js +21 -9
  4. package/lib/app.js.map +1 -1
  5. package/lib/component-editor.d.ts +2 -2
  6. package/lib/debug-view.d.ts +10 -0
  7. package/lib/debug-view.d.ts.map +1 -1
  8. package/lib/debug-view.js +41 -1
  9. package/lib/debug-view.js.map +1 -1
  10. package/lib/diff-editor.d.ts +4 -0
  11. package/lib/diff-editor.d.ts.map +1 -0
  12. package/lib/diff-editor.js +8 -0
  13. package/lib/diff-editor.js.map +1 -0
  14. package/lib/editor.d.ts +6 -5
  15. package/lib/editor.d.ts.map +1 -1
  16. package/lib/editor.js +6 -2
  17. package/lib/editor.js.map +1 -1
  18. package/lib/explorer-view.d.ts +4 -0
  19. package/lib/explorer-view.d.ts.map +1 -1
  20. package/lib/explorer-view.js +36 -10
  21. package/lib/explorer-view.js.map +1 -1
  22. package/lib/filetree-view.d.ts +1 -1
  23. package/lib/filetree-view.js +2 -2
  24. package/lib/filetree-view.js.map +1 -1
  25. package/lib/index.d.ts +2 -1
  26. package/lib/index.d.ts.map +1 -1
  27. package/lib/index.js +2 -1
  28. package/lib/index.js.map +1 -1
  29. package/lib/menu.d.ts +1 -1
  30. package/lib/opened-editor-view.d.ts +2 -2
  31. package/lib/opened-editor-view.d.ts.map +1 -1
  32. package/lib/opened-editor-view.js +4 -4
  33. package/lib/opened-editor-view.js.map +1 -1
  34. package/lib/outline-view.d.ts +9 -0
  35. package/lib/outline-view.d.ts.map +1 -0
  36. package/lib/outline-view.js +38 -0
  37. package/lib/outline-view.js.map +1 -0
  38. package/lib/output-view.d.ts +10 -0
  39. package/lib/output-view.d.ts.map +1 -0
  40. package/lib/output-view.js +78 -0
  41. package/lib/output-view.js.map +1 -0
  42. package/lib/panel.js +2 -2
  43. package/lib/panel.js.map +1 -1
  44. package/lib/scm-view.d.ts +21 -0
  45. package/lib/scm-view.d.ts.map +1 -0
  46. package/lib/scm-view.js +65 -0
  47. package/lib/scm-view.js.map +1 -0
  48. package/lib/search-view.d.ts +34 -0
  49. package/lib/search-view.d.ts.map +1 -1
  50. package/lib/search-view.js +196 -4
  51. package/lib/search-view.js.map +1 -1
  52. package/lib/source-control-view.d.ts +8 -0
  53. package/lib/source-control-view.d.ts.map +1 -0
  54. package/lib/source-control-view.js +45 -0
  55. package/lib/source-control-view.js.map +1 -0
  56. package/lib/terminal-view.d.ts +10 -0
  57. package/lib/terminal-view.d.ts.map +1 -0
  58. package/lib/terminal-view.js +50 -0
  59. package/lib/terminal-view.js.map +1 -0
  60. package/lib/tests/debug.test.js +49 -0
  61. package/lib/tests/debug.test.js.map +1 -1
  62. package/lib/tests/editor/undoRedo.test.d.ts +2 -0
  63. package/lib/tests/editor/undoRedo.test.d.ts.map +1 -0
  64. package/lib/tests/editor/undoRedo.test.js +52 -0
  65. package/lib/tests/editor/undoRedo.test.js.map +1 -0
  66. package/lib/tests/editor.test.js +0 -2
  67. package/lib/tests/editor.test.js.map +1 -1
  68. package/lib/tests/explorer-view.test.js +129 -5
  69. package/lib/tests/explorer-view.test.js.map +1 -1
  70. package/lib/tests/output.test.d.ts +2 -0
  71. package/lib/tests/output.test.d.ts.map +1 -0
  72. package/lib/tests/output.test.js +76 -0
  73. package/lib/tests/output.test.js.map +1 -0
  74. package/lib/tests/scm.test.js +42 -4
  75. package/lib/tests/scm.test.js.map +1 -1
  76. package/lib/tests/search-view.test.js +191 -8
  77. package/lib/tests/search-view.test.js.map +1 -1
  78. package/lib/tests/settings.test.d.ts +2 -0
  79. package/lib/tests/settings.test.d.ts.map +1 -0
  80. package/lib/tests/settings.test.js +95 -0
  81. package/lib/tests/settings.test.js.map +1 -0
  82. package/lib/text-editor.d.ts +7 -3
  83. package/lib/text-editor.d.ts.map +1 -1
  84. package/lib/text-editor.js +15 -0
  85. package/lib/text-editor.js.map +1 -1
  86. package/lib/tree-node.d.ts +3 -1
  87. package/lib/tree-node.d.ts.map +1 -1
  88. package/lib/tree-node.js +4 -4
  89. package/lib/tree-node.js.map +1 -1
  90. package/lib/utils/key.d.ts +1 -0
  91. package/lib/utils/key.d.ts.map +1 -1
  92. package/lib/utils/key.js +6 -1
  93. package/lib/utils/key.js.map +1 -1
  94. package/lib/view.js +1 -1
  95. package/lib/view.js.map +1 -1
  96. package/package.json +12 -11
  97. package/src/app.ts +148 -0
  98. package/src/component-editor.ts +64 -0
  99. package/src/constans/index.ts +18 -0
  100. package/src/context-menu.ts +27 -0
  101. package/src/debug-view.ts +73 -0
  102. package/src/diff-editor.ts +3 -0
  103. package/src/editor.ts +135 -0
  104. package/src/explorer-view.ts +149 -0
  105. package/src/filetree-view.ts +28 -0
  106. package/src/index.ts +20 -0
  107. package/src/menu-item.ts +40 -0
  108. package/src/menu.ts +69 -0
  109. package/src/menubar.ts +53 -0
  110. package/src/opened-editor-view.ts +28 -0
  111. package/src/outline-view.ts +37 -0
  112. package/src/output-view.ts +76 -0
  113. package/src/panel.ts +50 -0
  114. package/src/quick-command-palette.ts +62 -0
  115. package/src/quick-open-palette.ts +62 -0
  116. package/src/scm-view.ts +72 -0
  117. package/src/search-view.ts +260 -0
  118. package/src/source-control-view.ts +44 -0
  119. package/src/terminal-view.ts +50 -0
  120. package/src/tests/app.test.ts +16 -0
  121. package/src/tests/debug.test.ts +121 -0
  122. package/src/tests/editor/undoRedo.test.ts +55 -0
  123. package/src/tests/editor.test.ts +141 -0
  124. package/src/tests/explorer-view.test.ts +329 -0
  125. package/src/tests/hooks/index.ts +13 -0
  126. package/src/tests/keymaps.test.ts +118 -0
  127. package/src/tests/language.test.ts +55 -0
  128. package/src/tests/output.test.ts +87 -0
  129. package/src/tests/scm.test.ts +84 -0
  130. package/src/tests/search-view.test.ts +239 -0
  131. package/src/tests/settings.test.ts +115 -0
  132. package/src/tests/workspaces/debug/.sumi/launch.json +15 -0
  133. package/src/tests/workspaces/debug/index.js +18 -0
  134. package/src/tests/workspaces/default/editor-undo-redo.text +0 -0
  135. package/src/tests/workspaces/default/editor.js +0 -0
  136. package/src/tests/workspaces/default/editor2.js +87 -0
  137. package/src/tests/workspaces/default/editor3.js +0 -0
  138. package/src/tests/workspaces/default/test/test.js +1 -0
  139. package/src/tests/workspaces/git-workspace/a.js +0 -0
  140. package/src/tests/workspaces/language/definition.ts +12 -0
  141. package/src/tests/workspaces/language/reference.ts +9 -0
  142. package/src/tests/workspaces/search/index.js +5 -0
  143. package/src/tests/workspaces/search/index2.js +1 -0
  144. package/src/text-editor.ts +333 -0
  145. package/src/tree-node.ts +98 -0
  146. package/src/utils/element.ts +35 -0
  147. package/src/utils/index.ts +2 -0
  148. package/src/utils/key.ts +11 -0
  149. package/src/view-base.ts +11 -0
  150. package/src/view.ts +90 -0
  151. package/src/workspace.ts +36 -0
  152. package/lib/terminal.d.ts +0 -7
  153. package/lib/terminal.d.ts.map +0 -1
  154. package/lib/terminal.js +0 -25
  155. package/lib/terminal.js.map +0 -1
@@ -4,12 +4,15 @@ const tslib_1 = require("tslib");
4
4
  const path_1 = tslib_1.__importDefault(require("path"));
5
5
  const test_1 = require("@playwright/test");
6
6
  const app_1 = require("../app");
7
+ const diff_editor_1 = require("../diff-editor");
7
8
  const explorer_view_1 = require("../explorer-view");
8
- const terminal_1 = require("../terminal");
9
+ const scm_view_1 = require("../scm-view");
10
+ const terminal_view_1 = require("../terminal-view");
9
11
  const workspace_1 = require("../workspace");
10
12
  const hooks_1 = tslib_1.__importStar(require("./hooks"));
11
13
  let app;
12
14
  let explorer;
15
+ let scm;
13
16
  let fileTreeView;
14
17
  let workspace;
15
18
  hooks_1.default.describe('OpenSumi SCM Panel', () => {
@@ -19,15 +22,15 @@ hooks_1.default.describe('OpenSumi SCM Panel', () => {
19
22
  explorer = await app.open(explorer_view_1.OpenSumiExplorerView);
20
23
  explorer.initFileTreeView(workspace.workspace.displayName);
21
24
  fileTreeView = explorer.fileTreeView;
25
+ const terminal = await app.open(terminal_view_1.OpenSumiTerminalView);
26
+ // There should have GIT on the PATH
27
+ await terminal.sendText('git init');
22
28
  });
23
29
  hooks_1.default.afterAll(() => {
24
30
  app.dispose();
25
31
  });
26
32
  (0, hooks_1.default)('The "U" charset should on the files tail after git initialized', async () => {
27
33
  await explorer.fileTreeView.open();
28
- const terminal = await app.open(terminal_1.OpenSumiTerminal);
29
- // There should have GIT on the PATH
30
- await terminal.sendText('git init');
31
34
  const action = await fileTreeView.getTitleActionByName('Refresh');
32
35
  await (action === null || action === void 0 ? void 0 : action.click());
33
36
  await app.page.waitForTimeout(2000);
@@ -35,5 +38,40 @@ hooks_1.default.describe('OpenSumi SCM Panel', () => {
35
38
  const badge = await (node === null || node === void 0 ? void 0 : node.badge());
36
39
  (0, test_1.expect)(badge).toBe('U');
37
40
  });
41
+ (0, hooks_1.default)('The "U" charset should on the files tail on SCM view', async () => {
42
+ scm = await app.open(scm_view_1.OpenSumiSCMView);
43
+ await scm.open();
44
+ await app.page.waitForTimeout(2000);
45
+ const node = await scm.getFileStatTreeNodeByPath('a.js');
46
+ const badge = await (node === null || node === void 0 ? void 0 : node.getBadge());
47
+ (0, test_1.expect)(badge).toBe('U');
48
+ });
49
+ (0, hooks_1.default)('Open file from context menu', async () => {
50
+ scm = await app.open(scm_view_1.OpenSumiSCMView);
51
+ await scm.open();
52
+ const node = await scm.getFileStatTreeNodeByPath('a.js');
53
+ const item = await (node === null || node === void 0 ? void 0 : node.getMenuItemByName('Open File'));
54
+ await (item === null || item === void 0 ? void 0 : item.click());
55
+ await app.page.waitForTimeout(1000);
56
+ if (node) {
57
+ const editor = new diff_editor_1.OpenSumiDiffEditor(app, node);
58
+ const currentTab = await editor.getCurrentTab();
59
+ const dataUri = await (currentTab === null || currentTab === void 0 ? void 0 : currentTab.getAttribute('data-uri'));
60
+ (0, test_1.expect)(dataUri === null || dataUri === void 0 ? void 0 : dataUri.startsWith('file')).toBeTruthy();
61
+ }
62
+ });
63
+ (0, hooks_1.default)('Open file with diff editor', async () => {
64
+ scm = await app.open(scm_view_1.OpenSumiSCMView);
65
+ await scm.open();
66
+ const node = await scm.getFileStatTreeNodeByPath('a.js');
67
+ await (node === null || node === void 0 ? void 0 : node.open());
68
+ await app.page.waitForTimeout(1000);
69
+ if (node) {
70
+ const editor = new diff_editor_1.OpenSumiDiffEditor(app, node);
71
+ const currentTab = await editor.getCurrentTab();
72
+ const dataUri = await (currentTab === null || currentTab === void 0 ? void 0 : currentTab.getAttribute('data-uri'));
73
+ (0, test_1.expect)(dataUri === null || dataUri === void 0 ? void 0 : dataUri.startsWith('diff')).toBeTruthy();
74
+ }
75
+ });
38
76
  });
39
77
  //# sourceMappingURL=scm.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scm.test.js","sourceRoot":"","sources":["../../src/tests/scm.test.ts"],"names":[],"mappings":";;;AAAA,wDAAwB;AAExB,2CAA0C;AAE1C,gCAAqC;AACrC,oDAAwD;AAExD,0CAA+C;AAC/C,4CAAiD;AAEjD,yDAAqC;AAErC,IAAI,GAAgB,CAAC;AACrB,IAAI,QAA8B,CAAC;AACnC,IAAI,YAAkC,CAAC;AACvC,IAAI,SAA4B,CAAC;AAEjC,eAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACvC,eAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;QACxB,SAAS,GAAG,IAAI,6BAAiB,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC,CAAC,CAAC;QAC1F,GAAG,GAAG,MAAM,iBAAW,CAAC,IAAI,CAAC,YAAI,EAAE,SAAS,CAAC,CAAC;QAC9C,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,oCAAoB,CAAC,CAAC;QAChD,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC3D,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,eAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;QACjB,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,IAAA,eAAI,EAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,2BAAgB,CAAC,CAAC;QAClD,oCAAoC;QACpC,MAAM,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAClE,MAAM,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,EAAE,CAAA,CAAC;QACtB,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE,CAAA,CAAC;QAClC,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"scm.test.js","sourceRoot":"","sources":["../../src/tests/scm.test.ts"],"names":[],"mappings":";;;AAAA,wDAAwB;AAExB,2CAA0C;AAE1C,gCAAqC;AACrC,gDAAoD;AACpD,oDAAwD;AAExD,0CAA8C;AAC9C,oDAAwD;AACxD,4CAAiD;AAEjD,yDAAqC;AAErC,IAAI,GAAgB,CAAC;AACrB,IAAI,QAA8B,CAAC;AACnC,IAAI,GAAoB,CAAC;AACzB,IAAI,YAAkC,CAAC;AACvC,IAAI,SAA4B,CAAC;AAEjC,eAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACvC,eAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;QACxB,SAAS,GAAG,IAAI,6BAAiB,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC,CAAC,CAAC;QAC1F,GAAG,GAAG,MAAM,iBAAW,CAAC,IAAI,CAAC,YAAI,EAAE,SAAS,CAAC,CAAC;QAC9C,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,oCAAoB,CAAC,CAAC;QAChD,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC3D,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,oCAAoB,CAAC,CAAC;QACtD,oCAAoC;QACpC,MAAM,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,eAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;QACjB,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,IAAA,eAAI,EAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAClE,MAAM,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,EAAE,CAAA,CAAC;QACtB,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE,CAAA,CAAC;QAClC,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,IAAA,eAAI,EAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACtE,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,0BAAe,CAAC,CAAC;QACtC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EAAE,CAAA,CAAC;QACrC,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,IAAA,eAAI,EAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC7C,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,0BAAe,CAAC,CAAC;QACtC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA,CAAC;QACxD,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE,CAAA,CAAC;QACpB,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE;YACR,MAAM,MAAM,GAAG,IAAI,gCAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,MAAM,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,YAAY,CAAC,UAAU,CAAC,CAAA,CAAC;YAC3D,IAAA,aAAM,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;SAClD;IACH,CAAC,CAAC,CAAC;IAEH,IAAA,eAAI,EAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC5C,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,0BAAe,CAAC,CAAC;QACtC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAE,CAAA,CAAC;QACnB,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE;YACR,MAAM,MAAM,GAAG,IAAI,gCAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,MAAM,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,YAAY,CAAC,UAAU,CAAC,CAAA,CAAC;YAC3D,IAAA,aAAM,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;SAClD;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -4,27 +4,210 @@ const tslib_1 = require("tslib");
4
4
  const path_1 = tslib_1.__importDefault(require("path"));
5
5
  const test_1 = require("@playwright/test");
6
6
  const __1 = require("..");
7
+ const diff_editor_1 = require("../diff-editor");
8
+ const explorer_view_1 = require("../explorer-view");
7
9
  const search_view_1 = require("../search-view");
10
+ const text_editor_1 = require("../text-editor");
11
+ const key_1 = require("../utils/key");
8
12
  const workspace_1 = require("../workspace");
9
13
  const hooks_1 = tslib_1.__importStar(require("./hooks"));
10
14
  let app;
11
15
  let search;
16
+ let editor;
17
+ let explorer;
18
+ let workspace;
12
19
  hooks_1.default.describe('OpenSumi Search Panel', () => {
13
20
  hooks_1.default.beforeAll(async () => {
14
- const workspace = new workspace_1.OpenSumiWorkspace([path_1.default.resolve('./src/tests/workspaces/default')]);
21
+ workspace = new workspace_1.OpenSumiWorkspace([path_1.default.resolve('./src/tests/workspaces/search')]);
15
22
  app = await __1.OpenSumiApp.load(hooks_1.page, workspace);
16
23
  search = await app.open(search_view_1.OpenSumiSearchView);
17
24
  });
18
25
  (0, hooks_1.default)('Can search files by simple text', async () => {
19
26
  const searchText = 'hello';
20
27
  (0, test_1.expect)(await search.isVisible()).toBeTruthy();
21
- await search.focusOnSearch();
22
- await hooks_1.page.keyboard.type(searchText);
23
- // search panel should searched after typing
24
- await app.page.keyboard.press('Enter');
25
- const { results, files } = await search.getSearchResult();
26
- (0, test_1.expect)(results).toBe(1);
27
- (0, test_1.expect)(files).toBe(1);
28
+ await search.search({
29
+ search: searchText,
30
+ });
31
+ await app.page.waitForTimeout(1000);
32
+ const result = await search.getSearchResult();
33
+ (0, test_1.expect)(result).toBeDefined();
34
+ if (result) {
35
+ const { results, files } = result;
36
+ (0, test_1.expect)(results).toBe(1);
37
+ (0, test_1.expect)(files).toBe(1);
38
+ }
39
+ });
40
+ (0, hooks_1.default)('Open file with editor', async () => {
41
+ const searchText = 'hello';
42
+ (0, test_1.expect)(await search.isVisible()).toBeTruthy();
43
+ await search.search({
44
+ search: searchText,
45
+ });
46
+ await app.page.waitForTimeout(1000);
47
+ const result = await search.getSearchResult();
48
+ (0, test_1.expect)(result).toBeDefined();
49
+ if (result) {
50
+ const { results, files } = result;
51
+ (0, test_1.expect)(results).toBe(1);
52
+ (0, test_1.expect)(files).toBe(1);
53
+ }
54
+ const fileNode = await search.getTreeNodeByIndex(0);
55
+ const contentNode = await search.getTreeNodeByIndex(1);
56
+ (0, test_1.expect)(await (fileNode === null || fileNode === void 0 ? void 0 : fileNode.isFile())).toBeTruthy();
57
+ (0, test_1.expect)(await (contentNode === null || contentNode === void 0 ? void 0 : contentNode.isFile())).toBeFalsy();
58
+ (0, test_1.expect)(contentNode).toBeDefined();
59
+ if (contentNode) {
60
+ await (contentNode === null || contentNode === void 0 ? void 0 : contentNode.open());
61
+ await app.page.waitForTimeout(1000);
62
+ const editor = new text_editor_1.OpenSumiTextEditor(app, contentNode);
63
+ const currentTab = await editor.getCurrentTab();
64
+ const dataUri = await (currentTab === null || currentTab === void 0 ? void 0 : currentTab.getAttribute('data-uri'));
65
+ (0, test_1.expect)(dataUri === null || dataUri === void 0 ? void 0 : dataUri.startsWith('file')).toBeTruthy();
66
+ }
67
+ });
68
+ (0, hooks_1.default)('Open file with diffEditor', async () => {
69
+ const searchText = 'hello';
70
+ const replaceText = 'Hello';
71
+ (0, test_1.expect)(await search.isVisible()).toBeTruthy();
72
+ await search.search({
73
+ search: searchText,
74
+ });
75
+ const input = await search.focusOnReplace();
76
+ await hooks_1.page.keyboard.type(replaceText);
77
+ const contentNode = await search.getTreeNodeByIndex(1);
78
+ (0, test_1.expect)(contentNode).toBeDefined();
79
+ if (contentNode) {
80
+ await contentNode.open();
81
+ await app.page.waitForTimeout(1000);
82
+ const editor = new diff_editor_1.OpenSumiDiffEditor(app, contentNode);
83
+ const currentTab = await editor.getCurrentTab();
84
+ const dataUri = await (currentTab === null || currentTab === void 0 ? void 0 : currentTab.getAttribute('data-uri'));
85
+ (0, test_1.expect)(dataUri === null || dataUri === void 0 ? void 0 : dataUri.startsWith('file')).toBeFalsy();
86
+ }
87
+ await (input === null || input === void 0 ? void 0 : input.fill(''));
88
+ });
89
+ (0, hooks_1.default)('Open search rules view', async () => {
90
+ var _a, _b, _c, _d;
91
+ (0, test_1.expect)(await search.isVisible()).toBeTruthy();
92
+ await search.toggleDisplaySearchRules();
93
+ // Include input and Exclude input should be shown.
94
+ (0, test_1.expect)((_a = (await search.getIncludeInput())) === null || _a === void 0 ? void 0 : _a.isVisible()).toBeTruthy();
95
+ (0, test_1.expect)((_b = (await search.getExcludeInput())) === null || _b === void 0 ? void 0 : _b.isVisible()).toBeTruthy();
96
+ await search.toggleDisplaySearchRules();
97
+ (0, test_1.expect)((_c = (await search.getIncludeInput())) === null || _c === void 0 ? void 0 : _c.isVisible()).toBeFalsy();
98
+ (0, test_1.expect)((_d = (await search.getExcludeInput())) === null || _d === void 0 ? void 0 : _d.isVisible()).toBeFalsy();
99
+ });
100
+ (0, hooks_1.default)('Replace search result with RegExp', async () => {
101
+ const searchText = 'const (.+) = require((.*))';
102
+ const replaceText = '$1...$2';
103
+ await search.search({
104
+ search: searchText,
105
+ useRegexp: true,
106
+ });
107
+ await app.page.waitForTimeout(1000);
108
+ let result = await search.getSearchResult();
109
+ (0, test_1.expect)(result).toBeDefined();
110
+ if (result) {
111
+ const { results, files } = result;
112
+ (0, test_1.expect)(results).toBe(1);
113
+ (0, test_1.expect)(files).toBe(1);
114
+ }
115
+ const input = await search.focusOnReplace();
116
+ await hooks_1.page.keyboard.type(replaceText);
117
+ const replaceButton = await search.getReplaceAllButton();
118
+ (0, test_1.expect)(await (replaceButton === null || replaceButton === void 0 ? void 0 : replaceButton.isEnabled())).toBeTruthy();
119
+ await (replaceButton === null || replaceButton === void 0 ? void 0 : replaceButton.click());
120
+ const confirmed = await app.getDialogButton('Replace');
121
+ await (confirmed === null || confirmed === void 0 ? void 0 : confirmed.click());
122
+ await app.page.waitForTimeout(1000);
123
+ await search.search({
124
+ search: "fs...('fs')",
125
+ useRegexp: false,
126
+ });
127
+ await app.page.waitForTimeout(1000);
128
+ result = await search.getSearchResult();
129
+ (0, test_1.expect)(result).toBeDefined();
130
+ if (result) {
131
+ const { results, files } = result;
132
+ (0, test_1.expect)(results).toBe(1);
133
+ (0, test_1.expect)(files).toBe(1);
134
+ }
135
+ await (input === null || input === void 0 ? void 0 : input.fill(''));
136
+ });
137
+ (0, hooks_1.default)('Search content with MatchCase', async () => {
138
+ const searchText = 'abcd';
139
+ await search.search({
140
+ search: searchText,
141
+ isMatchCase: true,
142
+ });
143
+ await app.page.waitForTimeout(1000);
144
+ let result = await search.getSearchResult();
145
+ await app.page.waitForTimeout(1000);
146
+ (0, test_1.expect)(result.results).toBe(1);
147
+ (0, test_1.expect)(result.files).toBe(1);
148
+ await search.search({
149
+ search: searchText,
150
+ isMatchCase: false,
151
+ });
152
+ await app.page.waitForTimeout(1000);
153
+ result = await search.getSearchResult();
154
+ (0, test_1.expect)(result.results).toBe(2);
155
+ (0, test_1.expect)(result.files).toBe(1);
156
+ });
157
+ (0, hooks_1.default)('Search content with editor selection', async () => {
158
+ explorer = await app.open(explorer_view_1.OpenSumiExplorerView);
159
+ explorer.initFileTreeView(workspace.workspace.displayName);
160
+ editor = await app.openEditor(text_editor_1.OpenSumiTextEditor, explorer, 'index.js');
161
+ await editor.selectLineContainingText('hello');
162
+ await app.page.keyboard.press((0, key_1.keypressWithCmdCtrlAndShift)('KeyF'), { delay: 200 });
163
+ await app.page.waitForTimeout(1000);
164
+ const result = await search.getSearchResult();
165
+ (0, test_1.expect)(result).toBeDefined();
166
+ if (result) {
167
+ const { results, files } = result;
168
+ (0, test_1.expect)(results).toBe(1);
169
+ (0, test_1.expect)(files).toBe(1);
170
+ }
171
+ });
172
+ (0, hooks_1.default)('File content can not be search after deleted', async () => {
173
+ const searchText = 'console.log';
174
+ await search.search({
175
+ search: searchText,
176
+ useRegexp: false,
177
+ });
178
+ await app.page.waitForTimeout(1000);
179
+ let result = await search.getSearchResult();
180
+ (0, test_1.expect)(result).toBeDefined();
181
+ if (result) {
182
+ const { results, files } = result;
183
+ (0, test_1.expect)(results).toBe(4);
184
+ (0, test_1.expect)(files).toBe(2);
185
+ }
186
+ // Delete `index2.js` file
187
+ if (!(await explorer.isVisible())) {
188
+ await explorer.open();
189
+ }
190
+ const file = await explorer.getFileStatTreeNodeByPath('index2.js');
191
+ (0, test_1.expect)(file).toBeDefined();
192
+ const menu = await (file === null || file === void 0 ? void 0 : file.openContextMenu());
193
+ const deleteMenu = await (menu === null || menu === void 0 ? void 0 : menu.menuItemByName('Delete'));
194
+ await (deleteMenu === null || deleteMenu === void 0 ? void 0 : deleteMenu.click());
195
+ await app.page.waitForTimeout(200);
196
+ const confirmed = await app.getDialogButton('Move to trash');
197
+ await (confirmed === null || confirmed === void 0 ? void 0 : confirmed.click());
198
+ await app.page.waitForTimeout(2000);
199
+ await search.search({
200
+ search: searchText,
201
+ useRegexp: false,
202
+ });
203
+ await app.page.waitForTimeout(1000);
204
+ result = await search.getSearchResult();
205
+ (0, test_1.expect)(result).toBeDefined();
206
+ if (result) {
207
+ const { results, files } = result;
208
+ (0, test_1.expect)(results).toBe(3);
209
+ (0, test_1.expect)(files).toBe(1);
210
+ }
28
211
  });
29
212
  });
30
213
  //# sourceMappingURL=search-view.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-view.test.js","sourceRoot":"","sources":["../../src/tests/search-view.test.ts"],"names":[],"mappings":";;;AAAA,wDAAwB;AAExB,2CAA0C;AAE1C,0BAAiC;AACjC,gDAAoD;AACpD,4CAAiD;AAEjD,yDAAqC;AAErC,IAAI,GAAgB,CAAC;AACrB,IAAI,MAA0B,CAAC;AAE/B,eAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC1C,eAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,SAAS,GAAG,IAAI,6BAAiB,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC;QAC1F,GAAG,GAAG,MAAM,eAAW,CAAC,IAAI,CAAC,YAAI,EAAE,SAAS,CAAC,CAAC;QAC9C,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,gCAAkB,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,IAAA,eAAI,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC;QAC3B,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;QAC9C,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7B,MAAM,YAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,4CAA4C;QAC5C,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QAC1D,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"search-view.test.js","sourceRoot":"","sources":["../../src/tests/search-view.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=settings.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.test.d.ts","sourceRoot":"","sources":["../../src/tests/settings.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const path_1 = tslib_1.__importDefault(require("path"));
5
+ const test_1 = require("@playwright/test");
6
+ const app_1 = require("../app");
7
+ const component_editor_1 = require("../component-editor");
8
+ const constans_1 = require("../constans");
9
+ const context_menu_1 = require("../context-menu");
10
+ const explorer_view_1 = require("../explorer-view");
11
+ const utils_1 = require("../utils");
12
+ const workspace_1 = require("../workspace");
13
+ const hooks_1 = tslib_1.__importStar(require("./hooks"));
14
+ let app;
15
+ let explorer;
16
+ let workspace;
17
+ hooks_1.default.describe('OpenSumi Shortcuts', () => {
18
+ hooks_1.default.beforeAll(async () => {
19
+ workspace = new workspace_1.OpenSumiWorkspace([path_1.default.resolve('./src/tests/workspaces/default')]);
20
+ app = await app_1.OpenSumiApp.load(hooks_1.page, workspace);
21
+ explorer = await app.open(explorer_view_1.OpenSumiExplorerView);
22
+ explorer.initFileTreeView(workspace.workspace.displayName);
23
+ });
24
+ hooks_1.default.afterAll(() => {
25
+ app.dispose();
26
+ });
27
+ const openSettingsView = async () => {
28
+ const leftTabbar = await app.page.waitForSelector(`#${constans_1.OPENSUMI_VIEW_CONTAINERS.LEFT_TABBAR}`);
29
+ const settingsButton = await leftTabbar.$('[class*="titleActions___"] span');
30
+ await (settingsButton === null || settingsButton === void 0 ? void 0 : settingsButton.click());
31
+ const menu = new context_menu_1.OpenSumiContextMenu(app);
32
+ await menu.clickMenuItem('Settings');
33
+ };
34
+ (0, hooks_1.default)('open Settings by keybinding', async () => {
35
+ await explorer.fileTreeView.focus();
36
+ await app.page.keyboard.press((0, utils_1.keypressWithCmdCtrl)(','), { delay: 200 });
37
+ const editor = await app.openComponentEditor(component_editor_1.OpenSumiComponentEditor, 'pref:/', 'Settings', "[class*='preferences___']");
38
+ (0, test_1.expect)(await editor.isVisible()).toBeTruthy();
39
+ await editor.close();
40
+ await app.page.waitForTimeout(1000);
41
+ (0, test_1.expect)(await editor.isVisible()).toBeFalsy();
42
+ });
43
+ (0, hooks_1.default)('open Settings by settings button', async () => {
44
+ await openSettingsView();
45
+ const editor = await app.openComponentEditor(component_editor_1.OpenSumiComponentEditor, 'pref:/', 'Settings', "[class*='preferences___']");
46
+ (0, test_1.expect)(await editor.isVisible()).toBeTruthy();
47
+ await editor.close();
48
+ });
49
+ (0, hooks_1.default)('edit settings in settings.json', async () => {
50
+ var _a;
51
+ await openSettingsView();
52
+ const editor = await app.openComponentEditor(component_editor_1.OpenSumiComponentEditor, 'pref:/', 'Settings', "[class*='preferences___']");
53
+ (0, test_1.expect)(await editor.isVisible()).toBeTruthy();
54
+ const editorContainer = await editor.getContainer();
55
+ // Settings => View => Search => Search > Include
56
+ const tabs = (await (editorContainer === null || editorContainer === void 0 ? void 0 : editorContainer.$$('[class*="group_item__"]'))) || [];
57
+ let viewTab;
58
+ for (const tab of tabs) {
59
+ const title = await tab.textContent();
60
+ if (title === 'View') {
61
+ viewTab = tab;
62
+ break;
63
+ }
64
+ }
65
+ await viewTab.click();
66
+ await app.page.waitForTimeout(50);
67
+ const subTabs = (await (editorContainer === null || editorContainer === void 0 ? void 0 : editorContainer.$$('[class*="index_item__"]'))) || [];
68
+ let searchSetting;
69
+ for (const tab of subTabs) {
70
+ const title = await tab.textContent();
71
+ if (title === 'Search') {
72
+ searchSetting = tab;
73
+ break;
74
+ }
75
+ }
76
+ await searchSetting.click();
77
+ await app.page.waitForTimeout(1000);
78
+ const items = (await (editorContainer === null || editorContainer === void 0 ? void 0 : editorContainer.$$('[class*="preference_item___"]'))) || [];
79
+ let searchIncludeItem;
80
+ for (const item of items) {
81
+ const key = await ((_a = (await item.$('[class*="key___"]'))) === null || _a === void 0 ? void 0 : _a.textContent());
82
+ if ((key === null || key === void 0 ? void 0 : key.trim()) === 'Search > Include') {
83
+ searchIncludeItem = item;
84
+ break;
85
+ }
86
+ }
87
+ const editButton = await searchIncludeItem.$('[class*="control_wrap___"] a');
88
+ (0, test_1.expect)(editButton).toBeDefined();
89
+ await editButton.click();
90
+ await app.page.waitForTimeout(2000);
91
+ const currentTab = await editor.getCurrentTab();
92
+ (0, test_1.expect)(await (currentTab === null || currentTab === void 0 ? void 0 : currentTab.textContent())).toBe(' settings.json');
93
+ });
94
+ });
95
+ //# sourceMappingURL=settings.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.test.js","sourceRoot":"","sources":["../../src/tests/settings.test.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { ElementHandle, Page } from '@playwright/test';
2
2
  import { OpenSumiApp } from './app';
3
3
  import { OpenSumiContextMenu } from './context-menu';
4
4
  import { OpenSumiEditor } from './editor';
5
- import { OpenSumiExplorerFileStatNode } from './explorer-view';
5
+ import { OpenSumiTreeNode } from './tree-node';
6
6
  declare abstract class ViewsModel {
7
7
  readonly page: Page;
8
8
  constructor(page: Page);
@@ -23,7 +23,7 @@ declare class OverlaysModel extends ViewsModel {
23
23
  export declare class OpenSumiTextEditor extends OpenSumiEditor {
24
24
  private glyphMarginModel;
25
25
  private overlaysModel;
26
- constructor(app: OpenSumiApp, filestatElement: OpenSumiExplorerFileStatNode);
26
+ constructor(app: OpenSumiApp, filestatElement: OpenSumiTreeNode);
27
27
  getGlyphMarginModel(): Promise<GlyphMarginModel>;
28
28
  getOverlaysModel(): Promise<OverlaysModel>;
29
29
  openLineContextMenuByLineNumber(lineNumber: number): Promise<OpenSumiContextMenu | undefined>;
@@ -33,6 +33,10 @@ export declare class OpenSumiTextEditor extends OpenSumiEditor {
33
33
  textContentOfLineByLineNumber(lineNumber: number): Promise<string | undefined>;
34
34
  replaceLineWithLineNumber(text: string, lineNumber: number): Promise<void>;
35
35
  protected typeTextAndHitEnter(text: string): Promise<void>;
36
+ typeText(text: string): Promise<void>;
37
+ saveByKeyboard(): Promise<void>;
38
+ undoByKeyboard(): Promise<void>;
39
+ redoByKeyboard(): Promise<void>;
36
40
  selectLineWithLineNumber(lineNumber: number): Promise<ElementHandle<SVGElement | HTMLElement> | undefined>;
37
41
  placeCursorInLineWithLineNumber(lineNumber: number): Promise<ElementHandle<SVGElement | HTMLElement> | undefined>;
38
42
  placeCursorInLineWithPosition(lineNumber: number, columnNumber: number): Promise<ElementHandle<SVGElement | HTMLElement> | undefined>;
@@ -51,7 +55,7 @@ export declare class OpenSumiTextEditor extends OpenSumiEditor {
51
55
  pasteContentAfterLineByLineNumber(lineNumber: number): Promise<void>;
52
56
  protected lineContainingText(text: string): Promise<ElementHandle<SVGElement | HTMLElement> | undefined>;
53
57
  protected selectLine(lineElement: ElementHandle<SVGElement | HTMLElement> | undefined): Promise<void>;
54
- protected placeCursorInLine(lineElement: ElementHandle<SVGElement | HTMLElement> | undefined, point?: 'start' | 'end'): Promise<void>;
58
+ placeCursorInLine(lineElement: ElementHandle<SVGElement | HTMLElement> | undefined, point?: 'start' | 'end'): Promise<void>;
55
59
  protected replaceEditorSymbolsWithSpace(content: string): string | Promise<string | undefined>;
56
60
  protected selectedSuggestion(): Promise<ElementHandle<SVGElement | HTMLElement>>;
57
61
  getSelectedSuggestionText(): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"text-editor.d.ts","sourceRoot":"","sources":["../src/text-editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-editor.d.ts","sourceRoot":"","sources":["../src/text-editor.ts"],"names":[],"mappings":"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"}
@@ -111,6 +111,21 @@ class OpenSumiTextEditor extends editor_1.OpenSumiEditor {
111
111
  await this.page.keyboard.type(text);
112
112
  await this.page.keyboard.press('Enter');
113
113
  }
114
+ async typeText(text) {
115
+ await this.page.keyboard.type(text);
116
+ }
117
+ async saveByKeyboard() {
118
+ await this.page.keyboard.press((0, utils_1.keypressWithCmdCtrl)('s'));
119
+ await this.waitForEditorDone();
120
+ }
121
+ async undoByKeyboard() {
122
+ await this.page.keyboard.press((0, utils_1.keypressWithCmdCtrl)('z'));
123
+ await this.waitForEditorDone();
124
+ }
125
+ async redoByKeyboard() {
126
+ await this.page.keyboard.press((0, utils_1.keypressWithCmdCtrlAndShift)('z'));
127
+ await this.waitForEditorDone();
128
+ }
114
129
  async selectLineWithLineNumber(lineNumber) {
115
130
  await this.activate();
116
131
  const lineElement = await this.lineByLineNumber(lineNumber);
@@ -1 +1 @@
1
- {"version":3,"file":"text-editor.js","sourceRoot":"","sources":["../src/text-editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-editor.js","sourceRoot":"","sources":["../src/text-editor.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export interface IOpenSumiTreeNodeSelector {
10
10
  focusedClass: string;
11
11
  collapsedClass: string;
12
12
  }
13
- export declare class OpenSumiTreeNode {
13
+ export declare abstract class OpenSumiTreeNode {
14
14
  protected elementHandle: ElementHandle<SVGElement | HTMLElement>;
15
15
  protected app: OpenSumiApp;
16
16
  private selector;
@@ -25,5 +25,7 @@ export declare class OpenSumiTreeNode {
25
25
  expand(): Promise<void>;
26
26
  collapse(): Promise<void>;
27
27
  openContextMenu(): Promise<OpenSumiContextMenu>;
28
+ abstract getFsPath(): Promise<string | null>;
29
+ abstract open(preview?: boolean): Promise<void>;
28
30
  }
29
31
  //# sourceMappingURL=tree-node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-node.d.ts","sourceRoot":"","sources":["../src/tree-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,gBAAgB;IAEzB,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC;IAChE,SAAS,CAAC,GAAG,EAAE,WAAW;IAC1B,OAAO,CAAC,QAAQ;gBAFN,aAAa,EAAE,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,EACtD,GAAG,EAAE,WAAW,EAClB,QAAQ,GAAE,yBAQjB;IAGG,mBAAmB;IAKnB,KAAK;IAQL,WAAW;IAQX,KAAK;IAQL,UAAU;IAMV,WAAW;IAIX,UAAU;IAIV,MAAM;IASN,QAAQ;IASR,eAAe;CAGtB"}
1
+ {"version":3,"file":"tree-node.d.ts","sourceRoot":"","sources":["../src/tree-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,8BAAsB,gBAAgB;IAElC,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC;IAChE,SAAS,CAAC,GAAG,EAAE,WAAW;IAC1B,OAAO,CAAC,QAAQ;gBAFN,aAAa,EAAE,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,EACtD,GAAG,EAAE,WAAW,EAClB,QAAQ,GAAE,yBAQjB;IAGG,mBAAmB;IAKnB,KAAK;IAQL,WAAW;IAQX,KAAK;IAQL,UAAU;IAMV,WAAW;IAIX,UAAU;IAIV,MAAM;IASN,QAAQ;IASR,eAAe;IAIrB,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAChD"}
package/lib/tree-node.js CHANGED
@@ -4,13 +4,13 @@ exports.OpenSumiTreeNode = void 0;
4
4
  const context_menu_1 = require("./context-menu");
5
5
  class OpenSumiTreeNode {
6
6
  constructor(elementHandle, app, selector = {
7
- labelClass: "[class*='tree_node_displayname__']",
8
- descriptionClass: "[class*='tree_node_description__']",
9
- badgeClass: "[class*='tree_node_status___']",
7
+ labelClass: "[class*='node_displayname__']",
8
+ descriptionClass: "[class*='node_description__']",
9
+ badgeClass: "[class*='node_status___']",
10
10
  toggleClass: "[class*='expansion_toggle__']",
11
11
  selectedClass: "[class*='mod_selected__']",
12
12
  focusedClass: "[class*='mod_focused__']",
13
- collapsedClass: "[class*='mode_collapsed__']",
13
+ collapsedClass: "[class*='mod_collapsed__']",
14
14
  }) {
15
15
  this.elementHandle = elementHandle;
16
16
  this.app = app;