@theia/playwright 1.37.0-next.8 → 1.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/lib/index.d.ts +4 -0
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +4 -0
  4. package/lib/index.js.map +1 -1
  5. package/lib/tests/theia-explorer-view.test.js +24 -5
  6. package/lib/tests/theia-explorer-view.test.js.map +1 -1
  7. package/lib/tests/theia-output-view.test.d.ts +2 -0
  8. package/lib/tests/theia-output-view.test.d.ts.map +1 -0
  9. package/lib/tests/theia-output-view.test.js +77 -0
  10. package/lib/tests/theia-output-view.test.js.map +1 -0
  11. package/lib/tests/theia-quick-command.test.js +14 -0
  12. package/lib/tests/theia-quick-command.test.js.map +1 -1
  13. package/lib/tests/theia-sample-app.test.js +3 -30
  14. package/lib/tests/theia-sample-app.test.js.map +1 -1
  15. package/lib/tests/theia-terminal-view.test.d.ts +2 -0
  16. package/lib/tests/theia-terminal-view.test.d.ts.map +1 -0
  17. package/lib/tests/theia-terminal-view.test.js +76 -0
  18. package/lib/tests/theia-terminal-view.test.js.map +1 -0
  19. package/lib/tests/theia-toolbar.test.d.ts +2 -0
  20. package/lib/tests/theia-toolbar.test.d.ts.map +1 -0
  21. package/lib/tests/theia-toolbar.test.js +60 -0
  22. package/lib/tests/theia-toolbar.test.js.map +1 -0
  23. package/lib/tests/theia-workspace.test.js +5 -3
  24. package/lib/tests/theia-workspace.test.js.map +1 -1
  25. package/lib/theia-app.d.ts +7 -0
  26. package/lib/theia-app.d.ts.map +1 -1
  27. package/lib/theia-app.js +30 -1
  28. package/lib/theia-app.js.map +1 -1
  29. package/lib/theia-explorer-view.d.ts +6 -4
  30. package/lib/theia-explorer-view.d.ts.map +1 -1
  31. package/lib/theia-explorer-view.js +38 -6
  32. package/lib/theia-explorer-view.js.map +1 -1
  33. package/lib/theia-monaco-editor.d.ts +16 -0
  34. package/lib/theia-monaco-editor.d.ts.map +1 -0
  35. package/lib/theia-monaco-editor.js +76 -0
  36. package/lib/theia-monaco-editor.js.map +1 -0
  37. package/lib/theia-output-channel.d.ts +25 -0
  38. package/lib/theia-output-channel.d.ts.map +1 -0
  39. package/lib/theia-output-channel.js +72 -0
  40. package/lib/theia-output-channel.js.map +1 -0
  41. package/lib/theia-output-view.d.ts +10 -0
  42. package/lib/theia-output-view.d.ts.map +1 -0
  43. package/lib/theia-output-view.js +82 -0
  44. package/lib/theia-output-view.js.map +1 -0
  45. package/lib/theia-quick-command-palette.d.ts +2 -1
  46. package/lib/theia-quick-command-palette.d.ts.map +1 -1
  47. package/lib/theia-quick-command-palette.js +9 -2
  48. package/lib/theia-quick-command-palette.js.map +1 -1
  49. package/lib/theia-terminal.d.ts +14 -0
  50. package/lib/theia-terminal.d.ts.map +1 -0
  51. package/lib/theia-terminal.js +60 -0
  52. package/lib/theia-terminal.js.map +1 -0
  53. package/lib/theia-text-editor.d.ts +2 -3
  54. package/lib/theia-text-editor.d.ts.map +1 -1
  55. package/lib/theia-text-editor.js +11 -40
  56. package/lib/theia-text-editor.js.map +1 -1
  57. package/lib/theia-toolbar-item.d.ts +11 -0
  58. package/lib/theia-toolbar-item.d.ts.map +1 -0
  59. package/lib/theia-toolbar-item.js +40 -0
  60. package/lib/theia-toolbar-item.js.map +1 -0
  61. package/lib/theia-toolbar.d.ts +20 -0
  62. package/lib/theia-toolbar.d.ts.map +1 -0
  63. package/lib/theia-toolbar.js +91 -0
  64. package/lib/theia-toolbar.js.map +1 -0
  65. package/lib/theia-tree-node.d.ts +1 -0
  66. package/lib/theia-tree-node.d.ts.map +1 -1
  67. package/lib/theia-tree-node.js +8 -0
  68. package/lib/theia-tree-node.js.map +1 -1
  69. package/package.json +13 -10
  70. package/src/index.ts +4 -0
  71. package/src/tests/resources/sample-files1/sampleFolderCompact/nestedFolder1/nestedFolder2/sampleFile1-1.txt +0 -0
  72. package/src/tests/theia-explorer-view.test.ts +25 -6
  73. package/src/tests/theia-output-view.test.ts +85 -0
  74. package/src/tests/theia-quick-command.test.ts +15 -0
  75. package/src/tests/theia-sample-app.test.ts +3 -34
  76. package/src/tests/theia-terminal-view.test.ts +85 -0
  77. package/src/tests/theia-toolbar.test.ts +65 -0
  78. package/src/tests/theia-workspace.test.ts +5 -3
  79. package/src/theia-app.ts +37 -1
  80. package/src/theia-explorer-view.ts +42 -7
  81. package/src/theia-monaco-editor.ts +83 -0
  82. package/src/theia-output-channel.ts +88 -0
  83. package/src/theia-output-view.ts +87 -0
  84. package/src/theia-quick-command-palette.ts +10 -2
  85. package/src/theia-terminal.ts +69 -0
  86. package/src/theia-text-editor.ts +13 -44
  87. package/src/theia-toolbar-item.ts +41 -0
  88. package/src/theia-toolbar.ts +99 -0
  89. package/src/theia-tree-node.ts +10 -1
  90. package/LICENSE +0 -642
package/lib/theia-app.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // *****************************************************************************
3
- // Copyright (C) 2021 logi.cals GmbH, EclipseSource and others.
3
+ // Copyright (C) 2021-2023 logi.cals GmbH, EclipseSource and others.
4
4
  //
5
5
  // This program and the accompanying materials are made available under the
6
6
  // terms of the Eclipse Public License v. 2.0 which is available at
@@ -128,6 +128,35 @@ class TheiaApp {
128
128
  await editor.waitForVisible();
129
129
  return editor;
130
130
  }
131
+ async openTerminal(terminalFactory) {
132
+ const mainMenu = await this.menuBar.openMenu('Terminal');
133
+ const menuItem = await mainMenu.menuItemByName('New Terminal');
134
+ if (!menuItem) {
135
+ throw Error('Menu item \'New Terminal\' could not be found.');
136
+ }
137
+ const newTabIds = await this.runAndWaitForNewTabs(() => menuItem.click());
138
+ if (newTabIds.length > 1) {
139
+ console.warn('More than one new tab detected after opening the terminal');
140
+ }
141
+ return new terminalFactory(newTabIds[0], this);
142
+ }
143
+ async runAndWaitForNewTabs(command) {
144
+ const tabIdsBefore = await this.visibleTabIds();
145
+ await command();
146
+ return (await this.waitForNewTabs(tabIdsBefore)).filter(item => !tabIdsBefore.includes(item));
147
+ }
148
+ async waitForNewTabs(tabIds) {
149
+ let tabIdsCurrent;
150
+ while ((tabIdsCurrent = (await this.visibleTabIds())).length <= tabIds.length) {
151
+ console.debug('Awaiting a new tab to appear');
152
+ }
153
+ return tabIdsCurrent;
154
+ }
155
+ async visibleTabIds() {
156
+ const tabs = await this.page.$$('.p-TabBar-tab');
157
+ const tabIds = (await Promise.all(tabs.map(tab => tab.getAttribute('id')))).filter(id => !!id);
158
+ return tabIds;
159
+ }
131
160
  /** Specific Theia apps may add additional conditions to wait for. */
132
161
  async waitForInitialized() {
133
162
  // empty by default
@@ -1 +1 @@
1
- {"version":3,"file":"theia-app.js","sourceRoot":"","sources":["../src/theia-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theia-app.js","sourceRoot":"","sources":["../src/theia-app.ts"],"names":[],"mappings":"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"}
@@ -22,16 +22,18 @@ export declare class TheiaExplorerView extends TheiaView {
22
22
  protected clickButton(id: string): Promise<void>;
23
23
  visibleFileStatNodes(filterPredicate?: TheiaExplorerFileStatNodePredicate): Promise<TheiaExplorerFileStatNode[]>;
24
24
  getFileStatNodeByLabel(label: string): Promise<TheiaExplorerFileStatNode>;
25
- fileStatNode(filePath: string): Promise<TheiaExplorerFileStatNode | undefined>;
26
- fileStatNodeBySegments(...pathFragments: string[]): Promise<TheiaExplorerFileStatNode | undefined>;
25
+ fileStatNode(filePath: string, compact?: boolean): Promise<TheiaExplorerFileStatNode | undefined>;
26
+ protected fileStatNodeBySegments(...pathFragments: string[]): Promise<TheiaExplorerFileStatNode | undefined>;
27
+ protected compactFileStatNode(path: string): Promise<TheiaExplorerFileStatNode | undefined>;
27
28
  selectTreeNode(filePath: string): Promise<void>;
28
29
  isTreeNodeSelected(filePath: string): Promise<boolean>;
29
30
  protected treeNodeSelector(filePath: string): string;
30
31
  protected treeNodeId(filePath: string): string;
31
32
  clickContextMenuItem(file: string, path: string[]): Promise<void>;
32
- protected existsNode(path: string, isDirectory: boolean): Promise<boolean>;
33
+ protected existsNode(path: string, isDirectory: boolean, compact?: boolean): Promise<boolean>;
33
34
  existsFileNode(path: string): Promise<boolean>;
34
- existsDirectoryNode(path: string): Promise<boolean>;
35
+ existsDirectoryNode(path: string, compact?: boolean): Promise<boolean>;
36
+ waitForTreeNodeVisible(path: string): Promise<void>;
35
37
  getNumberOfVisibleNodes(): Promise<number>;
36
38
  deleteNode(path: string, confirm?: boolean): Promise<void>;
37
39
  renameNode(path: string, newName: string, confirm?: boolean): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"theia-explorer-view.d.ts","sourceRoot":"","sources":["../src/theia-explorer-view.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AASzC,qBAAa,yBAA0B,SAAQ,aAAa;cAEzB,aAAa,EAAE,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC;IAAE,SAAS,CAAC,YAAY,EAAE,iBAAiB;gBAAjG,aAAa,EAAE,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,EAAY,YAAY,EAAE,iBAAiB;IAI1H,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAItC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAI1B,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5B,qBAAqB,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;CAO1E;AAED,oBAAY,kCAAkC,GAAG,CAAC,IAAI,EAAE,yBAAyB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACvG,eAAO,MAAM,gBAAgB,EAAE,kCAG9B,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,SAAS;gBAEhC,GAAG,EAAE,QAAQ;IAIV,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;cAIlB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhD,oBAAoB,CAAC,eAAe,GAAE,kCAAiE,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAgB9I,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAMzE,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAI9E,sBAAsB,CAAC,GAAG,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAyBlG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc/C,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK5D,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIpD,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IASxC,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;cAQvD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB1E,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9C,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAInD,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IAO1C,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/D,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9C;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;CAMjD"}
1
+ {"version":3,"file":"theia-explorer-view.d.ts","sourceRoot":"","sources":["../src/theia-explorer-view.ts"],"names":[],"mappings":"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"}
@@ -100,8 +100,8 @@ class TheiaExplorerView extends theia_view_1.TheiaView {
100
100
  }
101
101
  return file;
102
102
  }
103
- async fileStatNode(filePath) {
104
- return this.fileStatNodeBySegments(...filePath.split('/'));
103
+ async fileStatNode(filePath, compact = false) {
104
+ return compact ? this.compactFileStatNode(filePath) : this.fileStatNodeBySegments(...filePath.split('/'));
105
105
  }
106
106
  async fileStatNodeBySegments(...pathFragments) {
107
107
  await super.activate();
@@ -124,6 +124,33 @@ class TheiaExplorerView extends theia_view_1.TheiaView {
124
124
  }
125
125
  return currentTreeNode;
126
126
  }
127
+ async compactFileStatNode(path) {
128
+ // default setting `explorer.compactFolders=true` renders folders in a compact form - single child folders will be compressed in a combined tree element
129
+ await super.activate();
130
+ const viewElement = await this.viewElement();
131
+ // check if first segment folder needs to be expanded first (if folder has never been expanded, it will not show the compact folder structure)
132
+ await this.waitForVisibleFileNodes();
133
+ const firstSegment = path.split('/')[0];
134
+ const selector = this.treeNodeSelector(firstSegment);
135
+ const folderElement = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.$(selector));
136
+ if (folderElement && await folderElement.isVisible()) {
137
+ const folderNode = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(selector, { state: 'visible' }));
138
+ if (!folderNode) {
139
+ throw new Error(`Tree node '${selector}' not found in explorer`);
140
+ }
141
+ const folderFileStatNode = new TheiaExplorerFileStatNode(folderNode, this);
142
+ if (await folderFileStatNode.isCollapsed()) {
143
+ await folderFileStatNode.expand();
144
+ }
145
+ }
146
+ // now get tree node via the full path
147
+ const fullPathSelector = this.treeNodeSelector(path);
148
+ const treeNode = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(fullPathSelector, { state: 'visible' }));
149
+ if (!treeNode) {
150
+ throw new Error(`Tree node '${fullPathSelector}' not found in explorer`);
151
+ }
152
+ return new TheiaExplorerFileStatNode(treeNode, this);
153
+ }
127
154
  async selectTreeNode(filePath) {
128
155
  await this.activate();
129
156
  const treeNode = await this.page.waitForSelector(this.treeNodeSelector(filePath));
@@ -162,8 +189,8 @@ class TheiaExplorerView extends theia_view_1.TheiaView {
162
189
  const menuItem = await fileStatNode.getMenuItemByNamePath(...path);
163
190
  await menuItem.click();
164
191
  }
165
- async existsNode(path, isDirectory) {
166
- const fileStatNode = await this.fileStatNode(path);
192
+ async existsNode(path, isDirectory, compact = false) {
193
+ const fileStatNode = await this.fileStatNode(path, compact);
167
194
  if (!fileStatNode) {
168
195
  return false;
169
196
  }
@@ -182,8 +209,13 @@ class TheiaExplorerView extends theia_view_1.TheiaView {
182
209
  async existsFileNode(path) {
183
210
  return this.existsNode(path, false);
184
211
  }
185
- async existsDirectoryNode(path) {
186
- return this.existsNode(path, true);
212
+ async existsDirectoryNode(path, compact = false) {
213
+ return this.existsNode(path, true, compact);
214
+ }
215
+ async waitForTreeNodeVisible(path) {
216
+ // wait for tree node to be visible, e.g. after triggering create
217
+ const viewElement = await this.viewElement();
218
+ await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(this.treeNodeSelector(path), { state: 'visible' }));
187
219
  }
188
220
  async getNumberOfVisibleNodes() {
189
221
  await this.activate();
@@ -1 +1 @@
1
- {"version":3,"file":"theia-explorer-view.js","sourceRoot":"","sources":["../src/theia-explorer-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theia-explorer-view.js","sourceRoot":"","sources":["../src/theia-explorer-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { ElementHandle } from '@playwright/test';
2
+ import { TheiaPageObject } from './theia-page-object';
3
+ import { TheiaApp } from './theia-app';
4
+ export declare class TheiaMonacoEditor extends TheiaPageObject {
5
+ protected readonly selector: string;
6
+ constructor(selector: string, app: TheiaApp);
7
+ waitForVisible(): Promise<void>;
8
+ protected viewElement(): Promise<ElementHandle<SVGElement | HTMLElement> | null>;
9
+ numberOfLines(): Promise<number | undefined>;
10
+ textContentOfLineByLineNumber(lineNumber: number): Promise<string | undefined>;
11
+ lineByLineNumber(lineNumber: number): Promise<ElementHandle<SVGElement | HTMLElement> | undefined>;
12
+ textContentOfLineContainingText(text: string): Promise<string | undefined>;
13
+ lineContainingText(text: string): Promise<ElementHandle<SVGElement | HTMLElement> | undefined>;
14
+ protected replaceEditorSymbolsWithSpace(content: string): string | Promise<string | undefined>;
15
+ }
16
+ //# sourceMappingURL=theia-monaco-editor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-monaco-editor.d.ts","sourceRoot":"","sources":["../src/theia-monaco-editor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,iBAAkB,SAAQ,eAAe;IACtC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM;gBAAhB,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ;IAIxD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC;IAI1E,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAO5C,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAO9E,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,SAAS,CAAC;IAiBlG,+BAA+B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAO1E,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,SAAS,CAAC;IAKpG,SAAS,CAAC,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAMjG"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2023 EclipseSource and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TheiaMonacoEditor = void 0;
19
+ const theia_page_object_1 = require("./theia-page-object");
20
+ class TheiaMonacoEditor extends theia_page_object_1.TheiaPageObject {
21
+ constructor(selector, app) {
22
+ super(app);
23
+ this.selector = selector;
24
+ }
25
+ async waitForVisible() {
26
+ await this.page.waitForSelector(this.selector, { state: 'visible' });
27
+ }
28
+ viewElement() {
29
+ return this.page.$(this.selector);
30
+ }
31
+ async numberOfLines() {
32
+ await this.waitForVisible();
33
+ const viewElement = await this.viewElement();
34
+ const lineElements = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.$$('.view-lines .view-line'));
35
+ return lineElements === null || lineElements === void 0 ? void 0 : lineElements.length;
36
+ }
37
+ async textContentOfLineByLineNumber(lineNumber) {
38
+ await this.waitForVisible();
39
+ const lineElement = await this.lineByLineNumber(lineNumber);
40
+ const content = await (lineElement === null || lineElement === void 0 ? void 0 : lineElement.textContent());
41
+ return content ? this.replaceEditorSymbolsWithSpace(content) : undefined;
42
+ }
43
+ async lineByLineNumber(lineNumber) {
44
+ await this.waitForVisible();
45
+ const viewElement = await this.viewElement();
46
+ const lines = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.$$('.view-lines > .view-line'));
47
+ if (!lines) {
48
+ throw new Error('Couldn\'t retrieve lines of monaco editor');
49
+ }
50
+ const linesWithXCoordinates = [];
51
+ for (const lineElement of lines) {
52
+ const box = await lineElement.boundingBox();
53
+ linesWithXCoordinates.push({ x: box ? box.x : Number.MAX_VALUE, lineElement });
54
+ }
55
+ linesWithXCoordinates.sort((a, b) => a.x.toString().localeCompare(b.x.toString()));
56
+ return linesWithXCoordinates[lineNumber - 1].lineElement;
57
+ }
58
+ async textContentOfLineContainingText(text) {
59
+ await this.waitForVisible();
60
+ const lineElement = await this.lineContainingText(text);
61
+ const content = await (lineElement === null || lineElement === void 0 ? void 0 : lineElement.textContent());
62
+ return content ? this.replaceEditorSymbolsWithSpace(content) : undefined;
63
+ }
64
+ async lineContainingText(text) {
65
+ const viewElement = await this.viewElement();
66
+ return viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(`.view-lines .view-line:has-text("${text}")`);
67
+ }
68
+ replaceEditorSymbolsWithSpace(content) {
69
+ // [ ] &nbsp; => \u00a0 -- NO-BREAK SPACE
70
+ // [·] &middot; => \u00b7 -- MIDDLE DOT
71
+ // [] &zwnj; => \u200c -- ZERO WIDTH NON-JOINER
72
+ return content.replace(/[\u00a0\u00b7]/g, ' ').replace(/[\u200c]/g, '');
73
+ }
74
+ }
75
+ exports.TheiaMonacoEditor = TheiaMonacoEditor;
76
+ //# sourceMappingURL=theia-monaco-editor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-monaco-editor.js","sourceRoot":"","sources":["../src/theia-monaco-editor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { ElementHandle } from '@playwright/test';
2
+ import { TheiaOutputView } from './theia-output-view';
3
+ import { TheiaPageObject } from './theia-page-object';
4
+ import { TheiaMonacoEditor } from './theia-monaco-editor';
5
+ export interface TheiaOutputViewChannelData {
6
+ viewSelector: string;
7
+ dataUri: string;
8
+ channelName: string;
9
+ }
10
+ export declare class TheiaOutputViewChannel extends TheiaPageObject {
11
+ protected readonly data: TheiaOutputViewChannelData;
12
+ protected readonly outputView: TheiaOutputView;
13
+ protected monacoEditor: TheiaMonacoEditor;
14
+ constructor(data: TheiaOutputViewChannelData, outputView: TheiaOutputView);
15
+ protected get viewSelector(): string;
16
+ protected get dataUri(): string | undefined;
17
+ protected get channelName(): string | undefined;
18
+ waitForVisible(): Promise<void>;
19
+ isDisplayed(): Promise<boolean>;
20
+ protected viewElement(): Promise<ElementHandle<SVGElement | HTMLElement> | null>;
21
+ numberOfLines(): Promise<number | undefined>;
22
+ maxSeverityOfLineByLineNumber(lineNumber: number): Promise<'error' | 'warning' | 'info'>;
23
+ textContentOfLineByLineNumber(lineNumber: number): Promise<string | undefined>;
24
+ }
25
+ //# sourceMappingURL=theia-output-channel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-output-channel.d.ts","sourceRoot":"","sources":["../src/theia-output-channel.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,MAAM,WAAW,0BAA0B;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IAI3C,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B;IAAE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe;IAF/G,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC;gBAEX,IAAI,EAAE,0BAA0B,EAAqB,UAAU,EAAE,eAAe;IAK/G,SAAS,KAAK,YAAY,IAAI,MAAM,CAEnC;IAED,SAAS,KAAK,OAAO,IAAI,MAAM,GAAG,SAAS,CAE1C;IAED,SAAS,KAAK,WAAW,IAAI,MAAM,GAAG,SAAS,CAE9C;IAEK,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC;IAI1E,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAK5C,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IAkBxF,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAGvF"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2023 EclipseSource and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TheiaOutputViewChannel = void 0;
19
+ const theia_page_object_1 = require("./theia-page-object");
20
+ const util_1 = require("./util");
21
+ const theia_monaco_editor_1 = require("./theia-monaco-editor");
22
+ class TheiaOutputViewChannel extends theia_page_object_1.TheiaPageObject {
23
+ constructor(data, outputView) {
24
+ super(outputView.app);
25
+ this.data = data;
26
+ this.outputView = outputView;
27
+ this.monacoEditor = new theia_monaco_editor_1.TheiaMonacoEditor(this.viewSelector, outputView.app);
28
+ }
29
+ get viewSelector() {
30
+ return this.data.viewSelector;
31
+ }
32
+ get dataUri() {
33
+ return this.data.dataUri;
34
+ }
35
+ get channelName() {
36
+ return this.data.channelName;
37
+ }
38
+ async waitForVisible() {
39
+ await this.page.waitForSelector(this.viewSelector, { state: 'visible' });
40
+ }
41
+ async isDisplayed() {
42
+ return (0, util_1.isElementVisible)(this.viewElement());
43
+ }
44
+ viewElement() {
45
+ return this.page.$(this.viewSelector);
46
+ }
47
+ async numberOfLines() {
48
+ await this.waitForVisible();
49
+ return this.monacoEditor.numberOfLines();
50
+ }
51
+ async maxSeverityOfLineByLineNumber(lineNumber) {
52
+ await this.waitForVisible();
53
+ const lineElement = await this.monacoEditor.lineByLineNumber(lineNumber);
54
+ const contents = await (lineElement === null || lineElement === void 0 ? void 0 : lineElement.$$('span > span.mtk1'));
55
+ if (!contents || contents.length < 1) {
56
+ throw new Error(`Could not find contents of line number ${lineNumber}!`);
57
+ }
58
+ const severityClassNames = await Promise.all(contents.map(async (content) => { var _a; return (_a = (await content.getAttribute('class'))) === null || _a === void 0 ? void 0 : _a.split(' ')[1]; }));
59
+ if (severityClassNames.includes('theia-output-error')) {
60
+ return 'error';
61
+ }
62
+ else if (severityClassNames.includes('theia-output-warning')) {
63
+ return 'warning';
64
+ }
65
+ return 'info';
66
+ }
67
+ async textContentOfLineByLineNumber(lineNumber) {
68
+ return this.monacoEditor.textContentOfLineByLineNumber(lineNumber);
69
+ }
70
+ }
71
+ exports.TheiaOutputViewChannel = TheiaOutputViewChannel;
72
+ //# sourceMappingURL=theia-output-channel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-output-channel.js","sourceRoot":"","sources":["../src/theia-output-channel.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAIhF,2DAAsD;AACtD,iCAA0C;AAC1C,+DAA0D;AAQ1D,MAAa,sBAAuB,SAAQ,mCAAe;IAIvD,YAA+B,IAAgC,EAAqB,UAA2B;QAC3G,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QADK,SAAI,GAAJ,IAAI,CAA4B;QAAqB,eAAU,GAAV,UAAU,CAAiB;QAE3G,IAAI,CAAC,YAAY,GAAG,IAAI,uCAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IACjF,CAAC;IAED,IAAc,YAAY;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;IAClC,CAAC;IAED,IAAc,OAAO;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,IAAc,WAAW;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,WAAW;QACb,OAAO,IAAA,uBAAgB,EAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAChD,CAAC;IAES,WAAW;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,6BAA6B,CAAC,UAAkB;QAClD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,MAAM,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,EAAE,CAAC,kBAAkB,CAAC,CAAA,CAAC;QAC3D,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,0CAA0C,UAAU,GAAG,CAAC,CAAC;SAC5E;QACD,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CACrD,KAAK,EAAC,OAAO,EAAC,EAAE,WAAC,OAAA,MAAA,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC,CAAC;QAE5E,IAAI,kBAAkB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;YACnD,OAAO,OAAO,CAAC;SAClB;aAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE;YAC5D,OAAO,SAAS,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,6BAA6B,CAAC,UAAkB;QAClD,OAAO,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC;CACJ;AA3DD,wDA2DC"}
@@ -0,0 +1,10 @@
1
+ import { TheiaApp } from './theia-app';
2
+ import { TheiaOutputViewChannel } from './theia-output-channel';
3
+ import { TheiaView } from './theia-view';
4
+ export declare class TheiaOutputView extends TheiaView {
5
+ constructor(app: TheiaApp);
6
+ isOutputChannelSelected(outputChannelName: string): Promise<boolean>;
7
+ getOutputChannel(outputChannelName: string): Promise<TheiaOutputViewChannel | undefined>;
8
+ selectOutputChannel(outputChannelName: string): Promise<boolean>;
9
+ }
10
+ //# sourceMappingURL=theia-output-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-output-view.d.ts","sourceRoot":"","sources":["../src/theia-output-view.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AASzC,qBAAa,eAAgB,SAAQ,SAAS;gBAC9B,GAAG,EAAE,QAAQ;IAInB,uBAAuB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAapE,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;IAiBxF,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAwBzE"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2023 EclipseSource and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TheiaOutputView = void 0;
19
+ const theia_output_channel_1 = require("./theia-output-channel");
20
+ const theia_view_1 = require("./theia-view");
21
+ const util_1 = require("./util");
22
+ const TheiaOutputViewData = {
23
+ tabSelector: '#shell-tab-outputView',
24
+ viewSelector: '#outputView',
25
+ viewName: 'Output'
26
+ };
27
+ class TheiaOutputView extends theia_view_1.TheiaView {
28
+ constructor(app) {
29
+ super(TheiaOutputViewData, app);
30
+ }
31
+ async isOutputChannelSelected(outputChannelName) {
32
+ await this.activate();
33
+ const contentPanel = await this.page.$('#theia-bottom-content-panel');
34
+ if (contentPanel && (await contentPanel.isVisible())) {
35
+ const channelList = await contentPanel.$('#outputChannelList');
36
+ const selectedChannel = await (channelList === null || channelList === void 0 ? void 0 : channelList.$('div.theia-select-component-label'));
37
+ if (selectedChannel && (await selectedChannel.textContent()) === outputChannelName) {
38
+ return true;
39
+ }
40
+ }
41
+ return false;
42
+ }
43
+ async getOutputChannel(outputChannelName) {
44
+ await this.activate();
45
+ const channel = new theia_output_channel_1.TheiaOutputViewChannel({
46
+ viewSelector: 'div.p-Widget.theia-editor.p-DockPanel-widget > div.monaco-editor',
47
+ dataUri: (0, util_1.normalizeId)(`output:/${encodeURIComponent(outputChannelName)}`),
48
+ channelName: outputChannelName
49
+ }, this);
50
+ await channel.waitForVisible();
51
+ if (await channel.isDisplayed()) {
52
+ return channel;
53
+ }
54
+ return undefined;
55
+ }
56
+ async selectOutputChannel(outputChannelName) {
57
+ await this.activate();
58
+ const contentPanel = await this.page.$('#theia-bottom-content-panel');
59
+ if (contentPanel && (await contentPanel.isVisible())) {
60
+ const channelSelectComponent = await contentPanel.$('#outputChannelList');
61
+ if (!channelSelectComponent) {
62
+ throw Error('Output Channel List not visible.');
63
+ }
64
+ // open output channel list component
65
+ await channelSelectComponent.click();
66
+ const channelContainer = await this.page.waitForSelector('#select-component-container > div.theia-select-component-dropdown');
67
+ if (!channelContainer) {
68
+ throw Error('Output Channel List could not be opened.');
69
+ }
70
+ const channels = await channelContainer.$$('div.theia-select-component-option-value');
71
+ for (const channel of channels) {
72
+ if (await channel.textContent() === outputChannelName) {
73
+ await channel.click();
74
+ }
75
+ }
76
+ return this.isOutputChannelSelected(outputChannelName);
77
+ }
78
+ return false;
79
+ }
80
+ }
81
+ exports.TheiaOutputView = TheiaOutputView;
82
+ //# sourceMappingURL=theia-output-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-output-view.js","sourceRoot":"","sources":["../src/theia-output-view.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,11 @@ import { TheiaPageObject } from './theia-page-object';
3
3
  export declare class TheiaQuickCommandPalette extends TheiaPageObject {
4
4
  selector: string;
5
5
  open(): Promise<void>;
6
+ hide(): Promise<void>;
6
7
  isOpen(): Promise<boolean>;
7
8
  trigger(...commandName: string[]): Promise<void>;
8
9
  protected triggerSingleCommand(commandName: string): Promise<void>;
9
- type(command: string): Promise<void>;
10
+ type(value: string, confirm?: boolean): Promise<void>;
10
11
  protected selectedCommand(): Promise<ElementHandle<SVGElement | HTMLElement> | null>;
11
12
  }
12
13
  //# sourceMappingURL=theia-quick-command-palette.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theia-quick-command-palette.d.ts","sourceRoot":"","sources":["../src/theia-quick-command-palette.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,qBAAa,wBAAyB,SAAQ,eAAe;IAEzD,QAAQ,SAAyB;IAE3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAS1B,OAAO,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;cAMtC,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAW1B,eAAe,IAAI,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC;CAO7F"}
1
+ {"version":3,"file":"theia-quick-command-palette.d.ts","sourceRoot":"","sources":["../src/theia-quick-command-palette.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,qBAAa,wBAAyB,SAAQ,eAAe;IAEzD,QAAQ,SAAyB;IAE3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAS1B,OAAO,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;cAMtC,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;cAczC,eAAe,IAAI,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC;CAO7F"}
@@ -27,6 +27,10 @@ class TheiaQuickCommandPalette extends theia_page_object_1.TheiaPageObject {
27
27
  await this.page.keyboard.press(util_1.OSUtil.isMacOS ? 'Meta+Shift+p' : 'Control+Shift+p');
28
28
  await this.page.waitForSelector(this.selector);
29
29
  }
30
+ async hide() {
31
+ await this.page.keyboard.press('Escape');
32
+ await this.page.waitForSelector(this.selector, { state: 'hidden' });
33
+ }
30
34
  async isOpen() {
31
35
  try {
32
36
  await this.page.waitForSelector(this.selector, { timeout: 5000 });
@@ -52,14 +56,17 @@ class TheiaQuickCommandPalette extends theia_page_object_1.TheiaPageObject {
52
56
  }
53
57
  await this.page.keyboard.press('Enter');
54
58
  }
55
- async type(command) {
59
+ async type(value, confirm = false) {
56
60
  if (!await this.isOpen()) {
57
61
  this.open();
58
62
  }
59
63
  const input = await this.page.waitForSelector(`${this.selector} .monaco-inputbox .input`);
60
64
  if (input != null) {
61
65
  await input.focus();
62
- await input.type(command, { delay: util_1.USER_KEY_TYPING_DELAY });
66
+ await input.type(value, { delay: util_1.USER_KEY_TYPING_DELAY });
67
+ if (confirm) {
68
+ await this.page.keyboard.press('Enter');
69
+ }
63
70
  }
64
71
  }
65
72
  async selectedCommand() {
@@ -1 +1 @@
1
- {"version":3,"file":"theia-quick-command-palette.js","sourceRoot":"","sources":["../src/theia-quick-command-palette.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+DAA+D;AAC/D,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAGhF,2DAAsD;AACtD,iCAAuD;AAEvD,MAAa,wBAAyB,SAAQ,mCAAe;IAA7D;;QAEI,aAAQ,GAAG,qBAAqB,CAAC;IAoDrC,CAAC;IAlDG,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAM,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACpF,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,MAAM;QACR,IAAI;YACA,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;SACrE;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAG,WAAqB;QAClC,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE;YAC/B,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;SAC5C;IACL,CAAC;IAES,KAAK,CAAC,oBAAoB,CAAC,WAAmB;QACpD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,EAAE;YACtB,IAAI,CAAC,IAAI,EAAE,CAAC;SACf;QACD,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,OAAO,CAAC,CAAC,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS,EAAE,CAAA,KAAK,WAAW,CAAC,EAAE;YACnD,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC5C,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;SAC3C;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAe;QACtB,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,EAAE;YACtB,IAAI,CAAC,IAAI,EAAE,CAAC;SACf;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,QAAQ,0BAA0B,CAAC,CAAC;QAC1F,IAAI,KAAK,IAAI,IAAI,EAAE;YACf,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,4BAAqB,EAAE,CAAC,CAAC;SAC/D;IACL,CAAC;IAES,KAAK,CAAC,eAAe;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;SACjD;QACD,OAAO,OAAO,CAAC,CAAC,CAAC,oDAAoD,CAAC,CAAC;IAC3E,CAAC;CACJ;AAtDD,4DAsDC"}
1
+ {"version":3,"file":"theia-quick-command-palette.js","sourceRoot":"","sources":["../src/theia-quick-command-palette.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { ElementHandle } from '@playwright/test';
2
+ import { TheiaApp } from './theia-app';
3
+ import { TheiaMenu } from './theia-menu';
4
+ import { TheiaView } from './theia-view';
5
+ export declare class TheiaTerminal extends TheiaView {
6
+ constructor(tabId: string, app: TheiaApp);
7
+ submit(text: string): Promise<void>;
8
+ write(text: string): Promise<void>;
9
+ contents(): Promise<string>;
10
+ protected openContextMenu(): Promise<TheiaMenu>;
11
+ protected waitForInputArea(): Promise<ElementHandle<SVGElement | HTMLElement>>;
12
+ protected waitForVisibleView(): Promise<ElementHandle<SVGElement | HTMLElement>>;
13
+ }
14
+ //# sourceMappingURL=theia-terminal.d.ts.map