@opensumi/playwright 2.21.3 → 2.21.4-rc-1668395886.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 (89) hide show
  1. package/lib/debug-view.js +1 -1
  2. package/lib/diff-editor.d.ts +4 -0
  3. package/lib/diff-editor.d.ts.map +1 -0
  4. package/lib/diff-editor.js +8 -0
  5. package/lib/diff-editor.js.map +1 -0
  6. package/lib/editor.d.ts +2 -2
  7. package/lib/editor.d.ts.map +1 -1
  8. package/lib/editor.js.map +1 -1
  9. package/lib/explorer-view.d.ts +1 -0
  10. package/lib/explorer-view.d.ts.map +1 -1
  11. package/lib/explorer-view.js +30 -9
  12. package/lib/explorer-view.js.map +1 -1
  13. package/lib/filetree-view.js +2 -2
  14. package/lib/filetree-view.js.map +1 -1
  15. package/lib/opened-editor-view.js +2 -2
  16. package/lib/opened-editor-view.js.map +1 -1
  17. package/lib/panel.js +2 -2
  18. package/lib/panel.js.map +1 -1
  19. package/lib/scm-view.d.ts +21 -0
  20. package/lib/scm-view.d.ts.map +1 -0
  21. package/lib/scm-view.js +65 -0
  22. package/lib/scm-view.js.map +1 -0
  23. package/lib/search-view.js +1 -1
  24. package/lib/source-control-view.d.ts +8 -0
  25. package/lib/source-control-view.d.ts.map +1 -0
  26. package/lib/source-control-view.js +45 -0
  27. package/lib/source-control-view.js.map +1 -0
  28. package/lib/tests/scm.test.js +41 -3
  29. package/lib/tests/scm.test.js.map +1 -1
  30. package/lib/tests/settings.test.d.ts +2 -0
  31. package/lib/tests/settings.test.d.ts.map +1 -0
  32. package/lib/tests/settings.test.js +83 -0
  33. package/lib/tests/settings.test.js.map +1 -0
  34. package/lib/text-editor.d.ts +2 -2
  35. package/lib/text-editor.d.ts.map +1 -1
  36. package/lib/text-editor.js.map +1 -1
  37. package/lib/tree-node.d.ts +3 -1
  38. package/lib/tree-node.d.ts.map +1 -1
  39. package/lib/tree-node.js +3 -3
  40. package/lib/tree-node.js.map +1 -1
  41. package/package.json +4 -3
  42. package/src/app.ts +135 -0
  43. package/src/component-editor.ts +64 -0
  44. package/src/constans/index.ts +18 -0
  45. package/src/context-menu.ts +27 -0
  46. package/src/debug-view.ts +24 -0
  47. package/src/diff-editor.ts +3 -0
  48. package/src/editor.ts +130 -0
  49. package/src/explorer-view.ts +142 -0
  50. package/src/filetree-view.ts +28 -0
  51. package/src/index.ts +19 -0
  52. package/src/menu-item.ts +40 -0
  53. package/src/menu.ts +69 -0
  54. package/src/menubar.ts +53 -0
  55. package/src/opened-editor-view.ts +28 -0
  56. package/src/panel.ts +50 -0
  57. package/src/quick-command-palette.ts +62 -0
  58. package/src/quick-open-palette.ts +62 -0
  59. package/src/scm-view.ts +73 -0
  60. package/src/search-view.ts +44 -0
  61. package/src/source-control-view.ts +44 -0
  62. package/src/terminal.ts +22 -0
  63. package/src/tests/app.test.ts +16 -0
  64. package/src/tests/debug.test.ts +68 -0
  65. package/src/tests/editor.test.ts +143 -0
  66. package/src/tests/explorer-view.test.ts +202 -0
  67. package/src/tests/hooks/index.ts +13 -0
  68. package/src/tests/keymaps.test.ts +118 -0
  69. package/src/tests/language.test.ts +55 -0
  70. package/src/tests/scm.test.ts +84 -0
  71. package/src/tests/search-view.test.ts +32 -0
  72. package/src/tests/settings.test.ts +103 -0
  73. package/src/tests/workspaces/debug/.sumi/launch.json +15 -0
  74. package/src/tests/workspaces/debug/index.js +18 -0
  75. package/src/tests/workspaces/default/editor.js +0 -0
  76. package/src/tests/workspaces/default/editor2.js +87 -0
  77. package/src/tests/workspaces/default/editor3.js +0 -0
  78. package/src/tests/workspaces/default/test/test.js +1 -0
  79. package/src/tests/workspaces/git-workspace/a.js +0 -0
  80. package/src/tests/workspaces/language/definition.ts +12 -0
  81. package/src/tests/workspaces/language/reference.ts +9 -0
  82. package/src/text-editor.ts +318 -0
  83. package/src/tree-node.ts +98 -0
  84. package/src/utils/element.ts +35 -0
  85. package/src/utils/index.ts +2 -0
  86. package/src/utils/key.ts +6 -0
  87. package/src/view-base.ts +11 -0
  88. package/src/view.ts +90 -0
  89. package/src/workspace.ts +36 -0
package/lib/debug-view.js CHANGED
@@ -4,7 +4,7 @@ exports.OpenSumiDebugView = void 0;
4
4
  const panel_1 = require("./panel");
5
5
  class OpenSumiDebugView extends panel_1.OpenSumiPanel {
6
6
  constructor(app) {
7
- super(app, 'debug');
7
+ super(app, 'DEBUG');
8
8
  this.selector = {
9
9
  toolbarClass: "[class*='debug_configuration_toolbar___']",
10
10
  actionStartID: "[id='debug.action.start']",
@@ -0,0 +1,4 @@
1
+ import { OpenSumiTextEditor } from './text-editor';
2
+ export declare class OpenSumiDiffEditor extends OpenSumiTextEditor {
3
+ }
4
+ //# sourceMappingURL=diff-editor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff-editor.d.ts","sourceRoot":"","sources":["../src/diff-editor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,qBAAa,kBAAmB,SAAQ,kBAAkB;CAAG"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenSumiDiffEditor = void 0;
4
+ const text_editor_1 = require("./text-editor");
5
+ class OpenSumiDiffEditor extends text_editor_1.OpenSumiTextEditor {
6
+ }
7
+ exports.OpenSumiDiffEditor = OpenSumiDiffEditor;
8
+ //# sourceMappingURL=diff-editor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff-editor.js","sourceRoot":"","sources":["../src/diff-editor.ts"],"names":[],"mappings":";;;AAAA,+CAAmD;AAEnD,MAAa,kBAAmB,SAAQ,gCAAkB;CAAG;AAA7D,gDAA6D"}
package/lib/editor.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import { OpenSumiApp } from './app';
2
- import { OpenSumiExplorerFileStatNode } from './explorer-view';
2
+ import { OpenSumiTreeNode } from './tree-node';
3
3
  import { OpenSumiView } from './view';
4
4
  export declare class OpenSumiEditor extends OpenSumiView {
5
5
  private readonly filestatElement?;
6
- constructor(app: OpenSumiApp, filestatElement?: OpenSumiExplorerFileStatNode | undefined);
6
+ constructor(app: OpenSumiApp, filestatElement?: OpenSumiTreeNode | undefined);
7
7
  getTab(): Promise<import("@playwright/test").ElementHandle<SVGElement | HTMLElement> | undefined>;
8
8
  getContainer(selector?: string): Promise<import("@playwright/test").ElementHandle<SVGElement | HTMLElement> | null | undefined>;
9
9
  getCurrentTab(): Promise<import("@playwright/test").ElementHandle<SVGElement | HTMLElement> | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../src/editor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,cAAe,SAAQ,YAAY;IAChB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAAnD,GAAG,EAAE,WAAW,EAAmB,eAAe,CAAC,0CAA8B;IAQvF,MAAM;IAgBN,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM;IAQ9B,aAAa;IAIb,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAOtB,SAAS;IAMT,OAAO;IAOP,IAAI;IAWJ,KAAK;IAYL,YAAY;IAKZ,IAAI,CAAC,KAAK,SAAI;IAQd,IAAI,CAAC,KAAK,SAAI;IAQd,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAY7B,oBAAoB,CAAC,EAAE,EAAE,MAAM;CAWtC"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../src/editor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,cAAe,SAAQ,YAAY;IAChB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAAnD,GAAG,EAAE,WAAW,EAAmB,eAAe,CAAC,8BAAkB;IAQ3E,MAAM;IAgBN,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM;IAQ9B,aAAa;IAIb,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO;IAOtB,SAAS;IAMT,OAAO;IAOP,IAAI;IAWJ,KAAK;IAYL,YAAY;IAKZ,IAAI,CAAC,KAAK,SAAI;IAQd,IAAI,CAAC,KAAK,SAAI;IAQd,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAY7B,oBAAoB,CAAC,EAAE,EAAE,MAAM;CAWtC"}
package/lib/editor.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../src/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../src/editor.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export declare class OpenSumiExplorerFileStatNode extends OpenSumiTreeNode {
12
12
  }
13
13
  export declare class OpenSumiExplorerOpenedEditorNode extends OpenSumiTreeNode {
14
14
  getRelativePath(): Promise<string | null | undefined>;
15
+ getFsPath(): Promise<string | null>;
15
16
  isGroup(): Promise<boolean | undefined>;
16
17
  getMenuItemByName(name: string): Promise<import("./menu-item").OpenSumiMenuItem | undefined>;
17
18
  open(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"explorer-view.d.ts","sourceRoot":"","sources":["../src/explorer-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,qBAAa,4BAA6B,SAAQ,gBAAgB;IAC1D,SAAS;IAIT,QAAQ;IASR,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAM9B,IAAI,CAAC,OAAO,UAAO;IAQnB,OAAO;CAOd;AAED,qBAAa,gCAAiC,SAAQ,gBAAgB;IAC9D,eAAe;IAIf,OAAO;IAMP,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAM9B,IAAI;CAGX;AAED,qBAAa,oBAAqB,SAAQ,aAAa;IACrD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,iBAAiB,CAA2B;gBAExC,GAAG,EAAE,WAAW;IAK5B,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAI7B,IAAI,YAAY,yBAEf;IAED,IAAI,gBAAgB,6BAEnB;IAEK,yBAAyB,CAAC,IAAI,EAAE,MAAM;IAkBtC,6BAA6B,CAAC,IAAI,EAAE,MAAM;CAiBjD"}
1
+ {"version":3,"file":"explorer-view.d.ts","sourceRoot":"","sources":["../src/explorer-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,qBAAa,4BAA6B,SAAQ,gBAAgB;IAC1D,SAAS;IAIT,QAAQ;IASR,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAM9B,IAAI,CAAC,OAAO,UAAO;IAQnB,OAAO;CAOd;AAED,qBAAa,gCAAiC,SAAQ,gBAAgB;IAC9D,eAAe;IAIf,SAAS;IAIT,OAAO;IAMP,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAM9B,IAAI;CAGX;AAED,qBAAa,oBAAqB,SAAQ,aAAa;IACrD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,iBAAiB,CAA2B;gBAExC,GAAG,EAAE,WAAW;IAK5B,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAI7B,IAAI,YAAY,yBAEf;IAED,IAAI,gBAAgB,6BAEnB;IAEK,yBAAyB,CAAC,IAAI,EAAE,MAAM;IA0BtC,6BAA6B,CAAC,IAAI,EAAE,MAAM;CAyBjD"}
@@ -44,6 +44,9 @@ class OpenSumiExplorerOpenedEditorNode extends tree_node_1.OpenSumiTreeNode {
44
44
  var _a;
45
45
  return await ((_a = (await this.elementHandle.$('[class*="opened_editor_node_description__"]'))) === null || _a === void 0 ? void 0 : _a.textContent());
46
46
  }
47
+ async getFsPath() {
48
+ return await this.elementHandle.getAttribute('title');
49
+ }
47
50
  async isGroup() {
48
51
  const icon = await this.elementHandle.waitForSelector("[class*='file_icon___']");
49
52
  const className = await icon.getAttribute('class');
@@ -61,7 +64,7 @@ class OpenSumiExplorerOpenedEditorNode extends tree_node_1.OpenSumiTreeNode {
61
64
  exports.OpenSumiExplorerOpenedEditorNode = OpenSumiExplorerOpenedEditorNode;
62
65
  class OpenSumiExplorerView extends panel_1.OpenSumiPanel {
63
66
  constructor(app) {
64
- super(app, 'explorer');
67
+ super(app, 'EXPLORER');
65
68
  this._openedEditorView = new opened_editor_view_1.OpenSumiOpenedEditorView(this.app, 'OPENED EDITORS');
66
69
  }
67
70
  initFileTreeView(name) {
@@ -74,7 +77,7 @@ class OpenSumiExplorerView extends panel_1.OpenSumiPanel {
74
77
  return this._openedEditorView;
75
78
  }
76
79
  async getFileStatTreeNodeByPath(path) {
77
- var _a;
80
+ var _a, _b;
78
81
  const treeItems = await ((_a = (await this.fileTreeView.getViewElement())) === null || _a === void 0 ? void 0 : _a.$$('[class*="file_tree_node__"]'));
79
82
  if (!treeItems) {
80
83
  return;
@@ -82,9 +85,18 @@ class OpenSumiExplorerView extends panel_1.OpenSumiPanel {
82
85
  let node;
83
86
  for (const item of treeItems) {
84
87
  const title = await item.getAttribute('title');
85
- if (title === null || title === void 0 ? void 0 : title.includes(path)) {
86
- node = item;
87
- break;
88
+ if (title === null || title === void 0 ? void 0 : title.startsWith('Group')) {
89
+ if (title === path) {
90
+ node = item;
91
+ break;
92
+ }
93
+ }
94
+ else {
95
+ // The title maybe `~/a.js • Untracked`
96
+ if ((_b = title === null || title === void 0 ? void 0 : title.split(' ')[0]) === null || _b === void 0 ? void 0 : _b.endsWith(path)) {
97
+ node = item;
98
+ break;
99
+ }
88
100
  }
89
101
  }
90
102
  if (node) {
@@ -92,7 +104,7 @@ class OpenSumiExplorerView extends panel_1.OpenSumiPanel {
92
104
  }
93
105
  }
94
106
  async getOpenedEditorTreeNodeByPath(path) {
95
- var _a;
107
+ var _a, _b;
96
108
  const treeItems = await ((_a = (await this.openedEditorView.getViewElement())) === null || _a === void 0 ? void 0 : _a.$$('[class*="opened_editor_node__"]'));
97
109
  if (!treeItems) {
98
110
  return;
@@ -100,9 +112,18 @@ class OpenSumiExplorerView extends panel_1.OpenSumiPanel {
100
112
  let node;
101
113
  for (const item of treeItems) {
102
114
  const title = await item.getAttribute('title');
103
- if (title === null || title === void 0 ? void 0 : title.includes(path)) {
104
- node = item;
105
- break;
115
+ if (title === null || title === void 0 ? void 0 : title.startsWith('Group')) {
116
+ if (title === path) {
117
+ node = item;
118
+ break;
119
+ }
120
+ }
121
+ else {
122
+ // The title maybe `~/a.js • Untracked`
123
+ if ((_b = title === null || title === void 0 ? void 0 : title.split(' ')[0]) === null || _b === void 0 ? void 0 : _b.endsWith(path)) {
124
+ node = item;
125
+ break;
126
+ }
106
127
  }
107
128
  }
108
129
  if (node) {
@@ -1 +1 @@
1
- {"version":3,"file":"explorer-view.js","sourceRoot":"","sources":["../src/explorer-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"explorer-view.js","sourceRoot":"","sources":["../src/explorer-view.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ const view_1 = require("./view");
5
5
  class OpenSumiFileTreeView extends view_1.OpenSumiView {
6
6
  constructor(app, workspaceName) {
7
7
  super(app, {
8
- viewSelector: '#file-explorer',
9
- tabSelector: '#file-explorer [tabindex="0"]',
8
+ viewSelector: '[data-view-id="file-explorer"]',
9
+ tabSelector: '[data-view-id="file-explorer"] [tabindex="0"]',
10
10
  name: workspaceName,
11
11
  });
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filetree-view.js","sourceRoot":"","sources":["../src/filetree-view.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAEtC,MAAa,oBAAqB,SAAQ,mBAAY;IACpD,YAAY,GAAgB,EAAE,aAAqB;QACjD,KAAK,CAAC,GAAG,EAAE;YACT,YAAY,EAAE,gBAAgB;YAC9B,WAAW,EAAE,+BAA+B;YAC5C,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,4BAA4B,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,IAAI,KAAK,KAAK,EAAE;gBAClB,OAAO,MAAM,CAAC;aACf;SACF;IACH,CAAC;CACF;AAxBD,oDAwBC"}
1
+ {"version":3,"file":"filetree-view.js","sourceRoot":"","sources":["../src/filetree-view.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAEtC,MAAa,oBAAqB,SAAQ,mBAAY;IACpD,YAAY,GAAgB,EAAE,aAAqB;QACjD,KAAK,CAAC,GAAG,EAAE;YACT,YAAY,EAAE,gCAAgC;YAC9C,WAAW,EAAE,+CAA+C;YAC5D,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,4BAA4B,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,IAAI,KAAK,KAAK,EAAE;gBAClB,OAAO,MAAM,CAAC;aACf;SACF;IACH,CAAC;CACF;AAxBD,oDAwBC"}
@@ -5,8 +5,8 @@ const view_1 = require("./view");
5
5
  class OpenSumiOpenedEditorView extends view_1.OpenSumiView {
6
6
  constructor(app, workspaceName) {
7
7
  super(app, {
8
- viewSelector: '#file-opened-editor',
9
- tabSelector: '#file-opened-editor [tabindex="0"]',
8
+ viewSelector: '[data-view-id="file-opened-editor"]',
9
+ tabSelector: '[data-view-id="file-opened-editor"] [tabindex="0"]',
10
10
  name: workspaceName,
11
11
  });
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"opened-editor-view.js","sourceRoot":"","sources":["../src/opened-editor-view.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAEtC,MAAa,wBAAyB,SAAQ,mBAAY;IACxD,YAAY,GAAgB,EAAE,aAAqB;QACjD,KAAK,CAAC,GAAG,EAAE;YACT,YAAY,EAAE,qBAAqB;YACnC,WAAW,EAAE,oCAAoC;YACjD,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,4BAA4B,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,IAAI,KAAK,KAAK,EAAE;gBAClB,OAAO,MAAM,CAAC;aACf;SACF;IACH,CAAC;CACF;AAxBD,4DAwBC"}
1
+ {"version":3,"file":"opened-editor-view.js","sourceRoot":"","sources":["../src/opened-editor-view.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAEtC,MAAa,wBAAyB,SAAQ,mBAAY;IACxD,YAAY,GAAgB,EAAE,aAAqB;QACjD,KAAK,CAAC,GAAG,EAAE;YACT,YAAY,EAAE,qCAAqC;YACnD,WAAW,EAAE,oDAAoD;YACjE,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,4BAA4B,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,IAAI,KAAK,KAAK,EAAE;gBAClB,OAAO,MAAM,CAAC;aACf;SACF;IACH,CAAC;CACF;AAxBD,4DAwBC"}
package/lib/panel.js CHANGED
@@ -9,7 +9,7 @@ class OpenSumiPanel extends view_base_1.OpenSumiViewBase {
9
9
  this.whenReady = this.init();
10
10
  }
11
11
  get viewSelector() {
12
- return `.${this.viewId}`;
12
+ return `[data-viewlet-id="${this.viewId.toLocaleLowerCase()}"]`;
13
13
  }
14
14
  async init() {
15
15
  this.view = await this.page.$(this.viewSelector);
@@ -24,7 +24,7 @@ class OpenSumiPanel extends view_base_1.OpenSumiViewBase {
24
24
  return;
25
25
  }
26
26
  await this.app.quickOpenPalette.type('view ');
27
- await this.app.quickOpenPalette.trigger(this.viewId.toLocaleUpperCase());
27
+ await this.app.quickOpenPalette.trigger(this.viewId);
28
28
  await this.waitForVisible();
29
29
  this.view = await this.page.$(this.viewSelector);
30
30
  return this;
package/lib/panel.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"panel.js","sourceRoot":"","sources":["../src/panel.ts"],"names":[],"mappings":";;;AAGA,2CAA+C;AAE/C,MAAsB,aAAc,SAAQ,4BAAgB;IAI1D,YAAY,GAAgB,EAAU,MAAc;QAClD,KAAK,CAAC,GAAG,CAAC,CAAC;QADyB,WAAM,GAAN,MAAM,CAAQ;QAElD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,SAAS;;QACb,MAAM,IAAI,CAAC,SAAS,CAAC;QACrB,OAAO,MAAA,IAAI,CAAC,IAAI,0CAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO;SACR;QACD,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK;;QACT,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;SACnB;QACD,MAAM,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAK,EAAE,CAAA,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AA5CD,sCA4CC"}
1
+ {"version":3,"file":"panel.js","sourceRoot":"","sources":["../src/panel.ts"],"names":[],"mappings":";;;AAGA,2CAA+C;AAE/C,MAAsB,aAAc,SAAQ,4BAAgB;IAI1D,YAAY,GAAgB,EAAU,MAAc;QAClD,KAAK,CAAC,GAAG,CAAC,CAAC;QADyB,WAAM,GAAN,MAAM,CAAQ;QAElD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,YAAY;QACd,OAAO,qBAAqB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,SAAS;;QACb,MAAM,IAAI,CAAC,SAAS,CAAC;QACrB,OAAO,MAAA,IAAI,CAAC,IAAI,0CAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO;SACR;QACD,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK;;QACT,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;SACnB;QACD,MAAM,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAK,EAAE,CAAA,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF;AA5CD,sCA4CC"}
@@ -0,0 +1,21 @@
1
+ import { OpenSumiApp } from './app';
2
+ import { OpenSumiOpenedEditorView } from './opened-editor-view';
3
+ import { OpenSumiPanel } from './panel';
4
+ import { OpenSumiSourceControlView } from './source-control-view';
5
+ import { OpenSumiTreeNode } from './tree-node';
6
+ export declare class OpenSumiSCMFileStatNode extends OpenSumiTreeNode {
7
+ getFsPath(): Promise<string | null>;
8
+ isFolder(): Promise<boolean | undefined>;
9
+ getMenuItemByName(name: string): Promise<import("./menu-item").OpenSumiMenuItem | undefined>;
10
+ open(): Promise<void>;
11
+ getBadge(): Promise<string | null | undefined>;
12
+ }
13
+ export declare class OpenSumiSCMView extends OpenSumiPanel {
14
+ private _scmView;
15
+ private _openedEditorView;
16
+ constructor(app: OpenSumiApp);
17
+ get scmView(): OpenSumiSourceControlView;
18
+ get openedEditorView(): OpenSumiOpenedEditorView;
19
+ getFileStatTreeNodeByPath(path: string): Promise<OpenSumiSCMFileStatNode | undefined>;
20
+ }
21
+ //# sourceMappingURL=scm-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-view.d.ts","sourceRoot":"","sources":["../src/scm-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,qBAAa,uBAAwB,SAAQ,gBAAgB;IACrD,SAAS;IAIT,QAAQ;IASR,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAM9B,IAAI;IAIJ,QAAQ;CAIf;AAED,qBAAa,eAAgB,SAAQ,aAAa;IAChD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,iBAAiB,CAA2B;gBAExC,GAAG,EAAE,WAAW;IAK5B,IAAI,OAAO,8BAEV;IAED,IAAI,gBAAgB,6BAEnB;IAEK,yBAAyB,CAAC,IAAI,EAAE,MAAM;CAkB7C"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenSumiSCMView = exports.OpenSumiSCMFileStatNode = void 0;
4
+ const panel_1 = require("./panel");
5
+ const source_control_view_1 = require("./source-control-view");
6
+ const tree_node_1 = require("./tree-node");
7
+ class OpenSumiSCMFileStatNode extends tree_node_1.OpenSumiTreeNode {
8
+ async getFsPath() {
9
+ return await this.elementHandle.getAttribute('title');
10
+ }
11
+ async isFolder() {
12
+ const icon = await this.elementHandle.$("[class*='file_icon___']");
13
+ if (!icon) {
14
+ return false;
15
+ }
16
+ const className = await icon.getAttribute('class');
17
+ return className === null || className === void 0 ? void 0 : className.includes('folder-icon');
18
+ }
19
+ async getMenuItemByName(name) {
20
+ const contextMenu = await this.openContextMenu();
21
+ const menuItem = await contextMenu.menuItemByName(name);
22
+ return menuItem;
23
+ }
24
+ async open() {
25
+ await this.elementHandle.click();
26
+ }
27
+ async getBadge() {
28
+ const status = await this.elementHandle.$('[class*="scm_tree_node_status___"]');
29
+ return await (status === null || status === void 0 ? void 0 : status.textContent());
30
+ }
31
+ }
32
+ exports.OpenSumiSCMFileStatNode = OpenSumiSCMFileStatNode;
33
+ class OpenSumiSCMView extends panel_1.OpenSumiPanel {
34
+ constructor(app) {
35
+ super(app, 'SCM');
36
+ this._scmView = new source_control_view_1.OpenSumiSourceControlView(app, 'SOURCE CONTROL');
37
+ }
38
+ get scmView() {
39
+ return this._scmView;
40
+ }
41
+ get openedEditorView() {
42
+ return this._openedEditorView;
43
+ }
44
+ async getFileStatTreeNodeByPath(path) {
45
+ var _a, _b;
46
+ const treeItems = await ((_a = (await this.scmView.getViewElement())) === null || _a === void 0 ? void 0 : _a.$$('[class*="scm_tree_node___"]'));
47
+ if (!treeItems) {
48
+ return;
49
+ }
50
+ let node;
51
+ for (const item of treeItems) {
52
+ const title = await item.getAttribute('title');
53
+ // title maybe `a.js • Untracked`
54
+ if ((_b = title === null || title === void 0 ? void 0 : title.split(' ')[0]) === null || _b === void 0 ? void 0 : _b.endsWith(path)) {
55
+ node = item;
56
+ break;
57
+ }
58
+ }
59
+ if (node) {
60
+ return new OpenSumiSCMFileStatNode(node, this.app);
61
+ }
62
+ }
63
+ }
64
+ exports.OpenSumiSCMView = OpenSumiSCMView;
65
+ //# sourceMappingURL=scm-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-view.js","sourceRoot":"","sources":["../src/scm-view.ts"],"names":[],"mappings":";;;AAGA,mCAAwC;AACxC,+DAAkE;AAClE,2CAA+C;AAE/C,MAAa,uBAAwB,SAAQ,4BAAgB;IAC3D,KAAK,CAAC,SAAS;QACb,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,KAAK,CAAC;SACd;QACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACnD,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAY;QAClC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC;QAChF,OAAO,MAAM,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE,CAAA,CAAC;IACrC,CAAC;CACF;AA5BD,0DA4BC;AAED,MAAa,eAAgB,SAAQ,qBAAa;IAIhD,YAAY,GAAgB;QAC1B,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,+CAAyB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,IAAY;;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAA,MAAA,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,0CAAE,EAAE,CAAC,6BAA6B,CAAC,CAAA,CAAC;QACjG,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;SACR;QACD,IAAI,IAAI,CAAC;QACT,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC/C,iCAAiC;YACjC,IAAI,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,0CAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACxC,IAAI,GAAG,IAAI,CAAC;gBACZ,MAAM;aACP;SACF;QACD,IAAI,IAAI,EAAE;YACR,OAAO,IAAI,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;SACpD;IACH,CAAC;CACF;AAnCD,0CAmCC"}
@@ -4,7 +4,7 @@ exports.OpenSumiSearchView = void 0;
4
4
  const panel_1 = require("./panel");
5
5
  class OpenSumiSearchView extends panel_1.OpenSumiPanel {
6
6
  constructor(app) {
7
- super(app, 'search');
7
+ super(app, 'SEARCH');
8
8
  }
9
9
  get searchInputSelector() {
10
10
  return '#search-input-field';
@@ -0,0 +1,8 @@
1
+ import { OpenSumiApp } from './app';
2
+ import { OpenSumiView } from './view';
3
+ export declare class OpenSumiSourceControlView extends OpenSumiView {
4
+ constructor(app: OpenSumiApp, name: string);
5
+ getTitleActionByName(name: string): Promise<import("@playwright/test").ElementHandle<SVGElement | HTMLElement> | undefined>;
6
+ getTitleActionById(id: string): Promise<import("@playwright/test").ElementHandle<SVGElement | HTMLElement> | undefined>;
7
+ }
8
+ //# sourceMappingURL=source-control-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-control-view.d.ts","sourceRoot":"","sources":["../src/source-control-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,yBAA0B,SAAQ,YAAY;gBAC7C,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;IAQpC,oBAAoB,CAAC,IAAI,EAAE,MAAM;IAgBjC,kBAAkB,CAAC,EAAE,EAAE,MAAM;CAepC"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenSumiSourceControlView = void 0;
4
+ const view_1 = require("./view");
5
+ class OpenSumiSourceControlView extends view_1.OpenSumiView {
6
+ constructor(app, name) {
7
+ super(app, {
8
+ viewSelector: '[data-view-id="scm_view"]',
9
+ tabSelector: '[data-view-id="scm_view"] [tabindex="0"]',
10
+ name,
11
+ });
12
+ }
13
+ async getTitleActionByName(name) {
14
+ const header = await this.page.$('.scm [class*="titlebar___"]');
15
+ if (!header) {
16
+ return;
17
+ }
18
+ await header.hover();
19
+ const titleAction = await header.waitForSelector('[class*="titleActions___"]');
20
+ const actions = await titleAction.$$('[class*="iconAction__"]');
21
+ for (const action of actions) {
22
+ const title = await action.getAttribute('title');
23
+ if (name === title) {
24
+ return action;
25
+ }
26
+ }
27
+ }
28
+ async getTitleActionById(id) {
29
+ const header = await this.page.$('.scm [class*="titlebar___"]');
30
+ if (!header) {
31
+ return;
32
+ }
33
+ await header.hover();
34
+ const titleAction = await header.waitForSelector('[class*="titleActions___"]');
35
+ const actions = await titleAction.$$('[class*="iconAction__"]');
36
+ for (const action of actions) {
37
+ const itemId = await action.getAttribute('id');
38
+ if (id === itemId) {
39
+ return action;
40
+ }
41
+ }
42
+ }
43
+ }
44
+ exports.OpenSumiSourceControlView = OpenSumiSourceControlView;
45
+ //# sourceMappingURL=source-control-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-control-view.js","sourceRoot":"","sources":["../src/source-control-view.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAEtC,MAAa,yBAA0B,SAAQ,mBAAY;IACzD,YAAY,GAAgB,EAAE,IAAY;QACxC,KAAK,CAAC,GAAG,EAAE;YACT,YAAY,EAAE,2BAA2B;YACzC,WAAW,EAAE,0CAA0C;YACvD,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,4BAA4B,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,IAAI,KAAK,KAAK,EAAE;gBAClB,OAAO,MAAM,CAAC;aACf;SACF;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,EAAU;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,4BAA4B,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC;QAChE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,EAAE,KAAK,MAAM,EAAE;gBACjB,OAAO,MAAM,CAAC;aACf;SACF;IACH,CAAC;CACF;AAxCD,8DAwCC"}
@@ -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");
9
+ const scm_view_1 = require("../scm-view");
8
10
  const terminal_1 = require("../terminal");
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_1.OpenSumiTerminal);
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":"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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,83 @@
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, _b, _c;
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
+ // Settings => Feature => Search > Include
55
+ const tabs = (await ((_a = (await editor.getContainer())) === null || _a === void 0 ? void 0 : _a.$$('[class*="index_item_wrapper__"]'))) || [];
56
+ let featrueTab;
57
+ for (const tab of tabs) {
58
+ const title = await tab.textContent();
59
+ if (title === 'Feature') {
60
+ featrueTab = tab;
61
+ break;
62
+ }
63
+ }
64
+ await featrueTab.click();
65
+ await app.page.waitForTimeout(1000);
66
+ const items = (await ((_b = (await editor.getContainer())) === null || _b === void 0 ? void 0 : _b.$$('[class*="preference_item___"]'))) || [];
67
+ let searchIncludeItem;
68
+ for (const item of items) {
69
+ const key = await ((_c = (await item.$('[class*="key___"]'))) === null || _c === void 0 ? void 0 : _c.textContent());
70
+ if (key === 'Search > Include ') {
71
+ searchIncludeItem = item;
72
+ break;
73
+ }
74
+ }
75
+ const editButton = await searchIncludeItem.$('[class*="control_wrap___"] a');
76
+ (0, test_1.expect)(editButton).toBeDefined();
77
+ await editButton.click();
78
+ await app.page.waitForTimeout(2000);
79
+ const currentTab = await editor.getCurrentTab();
80
+ (0, test_1.expect)(await (currentTab === null || currentTab === void 0 ? void 0 : currentTab.textContent())).toBe(' settings.json');
81
+ });
82
+ });
83
+ //# sourceMappingURL=settings.test.js.map