@theia/playwright 1.25.0-next.7 → 1.25.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 (173) hide show
  1. package/lib/index.d.ts +26 -0
  2. package/lib/index.d.ts.map +1 -0
  3. package/lib/index.js +53 -0
  4. package/lib/index.js.map +1 -0
  5. package/lib/tests/fixtures/theia-fixture.d.ts +4 -0
  6. package/lib/tests/fixtures/theia-fixture.d.ts.map +1 -0
  7. package/lib/tests/fixtures/theia-fixture.js +24 -0
  8. package/lib/tests/fixtures/theia-fixture.js.map +1 -0
  9. package/lib/tests/theia-app.test.d.ts +2 -0
  10. package/lib/tests/theia-app.test.d.ts.map +1 -0
  11. package/lib/tests/theia-app.test.js +30 -0
  12. package/lib/tests/theia-app.test.js.map +1 -0
  13. package/lib/tests/theia-explorer-view.test.d.ts +2 -0
  14. package/lib/tests/theia-explorer-view.test.d.ts.map +1 -0
  15. package/lib/tests/theia-explorer-view.test.js +110 -0
  16. package/lib/tests/theia-explorer-view.test.js.map +1 -0
  17. package/lib/tests/theia-main-menu.test.d.ts +2 -0
  18. package/lib/tests/theia-main-menu.test.d.ts.map +1 -0
  19. package/lib/tests/theia-main-menu.test.js +74 -0
  20. package/lib/tests/theia-main-menu.test.js.map +1 -0
  21. package/lib/tests/theia-preference-view.test.d.ts +2 -0
  22. package/lib/tests/theia-preference-view.test.d.ts.map +1 -0
  23. package/lib/tests/theia-preference-view.test.js +79 -0
  24. package/lib/tests/theia-preference-view.test.js.map +1 -0
  25. package/lib/tests/theia-problems-view.test.d.ts +2 -0
  26. package/lib/tests/theia-problems-view.test.d.ts.map +1 -0
  27. package/lib/tests/theia-problems-view.test.js +53 -0
  28. package/lib/tests/theia-problems-view.test.js.map +1 -0
  29. package/lib/tests/theia-quick-command.test.d.ts +2 -0
  30. package/lib/tests/theia-quick-command.test.d.ts.map +1 -0
  31. package/lib/tests/theia-quick-command.test.js +54 -0
  32. package/lib/tests/theia-quick-command.test.js.map +1 -0
  33. package/lib/tests/theia-sample-app.test.d.ts +2 -0
  34. package/lib/tests/theia-sample-app.test.d.ts.map +1 -0
  35. package/lib/tests/theia-sample-app.test.js +81 -0
  36. package/lib/tests/theia-sample-app.test.js.map +1 -0
  37. package/lib/tests/theia-status-bar.test.d.ts +2 -0
  38. package/lib/tests/theia-status-bar.test.d.ts.map +1 -0
  39. package/lib/tests/theia-status-bar.test.js +42 -0
  40. package/lib/tests/theia-status-bar.test.js.map +1 -0
  41. package/lib/tests/theia-text-editor.test.d.ts +2 -0
  42. package/lib/tests/theia-text-editor.test.d.ts.map +1 -0
  43. package/lib/tests/theia-text-editor.test.js +148 -0
  44. package/lib/tests/theia-text-editor.test.js.map +1 -0
  45. package/lib/tests/theia-workspace.test.d.ts +2 -0
  46. package/lib/tests/theia-workspace.test.d.ts.map +1 -0
  47. package/lib/tests/theia-workspace.test.js +48 -0
  48. package/lib/tests/theia-workspace.test.js.map +1 -0
  49. package/lib/theia-about-dialog.d.ts +5 -0
  50. package/lib/theia-about-dialog.d.ts.map +1 -0
  51. package/lib/theia-about-dialog.js +27 -0
  52. package/lib/theia-about-dialog.js.map +1 -0
  53. package/lib/theia-app.d.ts +44 -0
  54. package/lib/theia-app.d.ts.map +1 -0
  55. package/lib/theia-app.js +136 -0
  56. package/lib/theia-app.js.map +1 -0
  57. package/lib/theia-context-menu.d.ts +9 -0
  58. package/lib/theia-context-menu.d.ts.map +1 -0
  59. package/lib/theia-context-menu.js +38 -0
  60. package/lib/theia-context-menu.js.map +1 -0
  61. package/lib/theia-dialog.d.ts +28 -0
  62. package/lib/theia-dialog.d.ts.map +1 -0
  63. package/lib/theia-dialog.js +99 -0
  64. package/lib/theia-dialog.js.map +1 -0
  65. package/lib/theia-editor.d.ts +10 -0
  66. package/lib/theia-editor.d.ts.map +1 -0
  67. package/lib/theia-editor.js +69 -0
  68. package/lib/theia-editor.js.map +1 -0
  69. package/lib/theia-explorer-view.d.ts +39 -0
  70. package/lib/theia-explorer-view.d.ts.map +1 -0
  71. package/lib/theia-explorer-view.js +210 -0
  72. package/lib/theia-explorer-view.js.map +1 -0
  73. package/lib/theia-main-menu.d.ts +13 -0
  74. package/lib/theia-main-menu.d.ts.map +1 -0
  75. package/lib/theia-main-menu.js +54 -0
  76. package/lib/theia-main-menu.js.map +1 -0
  77. package/lib/theia-menu-item.d.ts +14 -0
  78. package/lib/theia-menu-item.d.ts.map +1 -0
  79. package/lib/theia-menu-item.js +55 -0
  80. package/lib/theia-menu-item.js.map +1 -0
  81. package/lib/theia-menu.d.ts +17 -0
  82. package/lib/theia-menu.d.ts.map +1 -0
  83. package/lib/theia-menu.js +87 -0
  84. package/lib/theia-menu.js.map +1 -0
  85. package/lib/theia-notification-indicator.d.ts +9 -0
  86. package/lib/theia-notification-indicator.d.ts.map +1 -0
  87. package/lib/theia-notification-indicator.js +45 -0
  88. package/lib/theia-notification-indicator.js.map +1 -0
  89. package/lib/theia-notification-overlay.d.ts +23 -0
  90. package/lib/theia-notification-overlay.d.ts.map +1 -0
  91. package/lib/theia-notification-overlay.js +80 -0
  92. package/lib/theia-notification-overlay.js.map +1 -0
  93. package/lib/theia-page-object.d.ts +8 -0
  94. package/lib/theia-page-object.d.ts.map +1 -0
  95. package/lib/theia-page-object.js +28 -0
  96. package/lib/theia-page-object.js.map +1 -0
  97. package/lib/theia-preference-view.d.ts +51 -0
  98. package/lib/theia-preference-view.d.ts.map +1 -0
  99. package/lib/theia-preference-view.js +197 -0
  100. package/lib/theia-preference-view.js.map +1 -0
  101. package/lib/theia-problem-indicator.d.ts +9 -0
  102. package/lib/theia-problem-indicator.d.ts.map +1 -0
  103. package/lib/theia-problem-indicator.js +40 -0
  104. package/lib/theia-problem-indicator.js.map +1 -0
  105. package/lib/theia-problem-view.d.ts +6 -0
  106. package/lib/theia-problem-view.d.ts.map +1 -0
  107. package/lib/theia-problem-view.js +31 -0
  108. package/lib/theia-problem-view.js.map +1 -0
  109. package/lib/theia-quick-command-palette.d.ts +12 -0
  110. package/lib/theia-quick-command-palette.d.ts.map +1 -0
  111. package/lib/theia-quick-command-palette.js +74 -0
  112. package/lib/theia-quick-command-palette.js.map +1 -0
  113. package/lib/theia-rename-dialog.d.ts +6 -0
  114. package/lib/theia-rename-dialog.d.ts.map +1 -0
  115. package/lib/theia-rename-dialog.js +36 -0
  116. package/lib/theia-rename-dialog.js.map +1 -0
  117. package/lib/theia-status-bar.d.ts +14 -0
  118. package/lib/theia-status-bar.d.ts.map +1 -0
  119. package/lib/theia-status-bar.js +40 -0
  120. package/lib/theia-status-bar.js.map +1 -0
  121. package/lib/theia-status-indicator.d.ts +15 -0
  122. package/lib/theia-status-indicator.d.ts.map +1 -0
  123. package/lib/theia-status-indicator.js +77 -0
  124. package/lib/theia-status-indicator.js.map +1 -0
  125. package/lib/theia-text-editor.d.ts +28 -0
  126. package/lib/theia-text-editor.d.ts.map +1 -0
  127. package/lib/theia-text-editor.js +149 -0
  128. package/lib/theia-text-editor.js.map +1 -0
  129. package/lib/theia-toggle-bottom-indicator.d.ts +5 -0
  130. package/lib/theia-toggle-bottom-indicator.d.ts.map +1 -0
  131. package/lib/theia-toggle-bottom-indicator.js +27 -0
  132. package/lib/theia-toggle-bottom-indicator.js.map +1 -0
  133. package/lib/theia-tree-node.d.ts +17 -0
  134. package/lib/theia-tree-node.d.ts.map +1 -0
  135. package/lib/theia-tree-node.js +54 -0
  136. package/lib/theia-tree-node.js.map +1 -0
  137. package/lib/theia-view.d.ts +33 -0
  138. package/lib/theia-view.d.ts.map +1 -0
  139. package/lib/theia-view.js +152 -0
  140. package/lib/theia-view.js.map +1 -0
  141. package/lib/theia-workspace.d.ts +19 -0
  142. package/lib/theia-workspace.d.ts.map +1 -0
  143. package/lib/theia-workspace.js +70 -0
  144. package/lib/theia-workspace.js.map +1 -0
  145. package/lib/util.d.ts +20 -0
  146. package/lib/util.d.ts.map +1 -0
  147. package/lib/util.js +94 -0
  148. package/lib/util.js.map +1 -0
  149. package/package.json +8 -6
  150. package/src/index.ts +41 -0
  151. package/src/tests/fixtures/theia-fixture.ts +25 -0
  152. package/src/tests/resources/sample-files1/sample.txt +4 -0
  153. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-1/sampleFile1-1-1.txt +1 -0
  154. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-1/sampleFile1-1-2.txt +1 -0
  155. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-2/sampleFile1-2-1.txt +1 -0
  156. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder1/sampleFolder1-2/sampleFile1-2-2.txt +1 -0
  157. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-1/sampleFile2-1-1.txt +1 -0
  158. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-1/sampleFile2-1-2.txt +1 -0
  159. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-2/sampleFile2-2-1.txt +1 -0
  160. package/src/tests/resources/sample-files1/sampleFolder/sampleFolder2/sampleFolder2-2/sampleFile2-2-2.txt +1 -0
  161. package/src/tests/resources/sample-files2/another-sample.txt +1 -0
  162. package/src/tests/theia-app.test.ts +34 -0
  163. package/src/tests/theia-explorer-view.test.ts +124 -0
  164. package/src/tests/theia-main-menu.test.ts +89 -0
  165. package/src/tests/theia-preference-view.test.ts +93 -0
  166. package/src/tests/theia-problems-view.test.ts +60 -0
  167. package/src/tests/theia-quick-command.test.ts +61 -0
  168. package/src/tests/theia-sample-app.test.ts +92 -0
  169. package/src/tests/theia-status-bar.test.ts +47 -0
  170. package/src/tests/theia-text-editor.test.ts +176 -0
  171. package/src/tests/theia-workspace.test.ts +51 -0
  172. package/src/theia-app.ts +32 -14
  173. package/src/theia-workspace.ts +4 -0
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2021 logi.cals GmbH, 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.TheiaNotificationOverlay = void 0;
19
+ const theia_page_object_1 = require("./theia-page-object");
20
+ class TheiaNotificationOverlay extends theia_page_object_1.TheiaPageObject {
21
+ constructor(app, notificationIndicator) {
22
+ super(app);
23
+ this.notificationIndicator = notificationIndicator;
24
+ this.HEADER_NOTIFICATIONS = 'NOTIFICATIONS';
25
+ this.HEADER_NO_NOTIFICATIONS = 'NO NEW NOTIFICATIONS';
26
+ }
27
+ get selector() {
28
+ return '.theia-notifications-overlay';
29
+ }
30
+ get containerSelector() {
31
+ return `${this.selector} .theia-notifications-container.theia-notification-center`;
32
+ }
33
+ get titleSelector() {
34
+ return `${this.containerSelector} .theia-notification-center-header-title`;
35
+ }
36
+ async isVisible() {
37
+ const element = await this.page.$(`${this.containerSelector}.open`);
38
+ return element ? element.isVisible() : false;
39
+ }
40
+ async waitForVisible() {
41
+ await this.page.waitForSelector(`${this.containerSelector}.open`);
42
+ }
43
+ async activate() {
44
+ if (!await this.isVisible()) {
45
+ await this.notificationIndicator.toggleOverlay();
46
+ }
47
+ await this.waitForVisible();
48
+ }
49
+ async toggle() {
50
+ await this.app.quickCommandPalette.type('Toggle Notifications');
51
+ await this.app.quickCommandPalette.trigger('Notifications: Toggle Notifications');
52
+ }
53
+ entrySelector(entryText) {
54
+ return `${this.containerSelector} .theia-notification-message span:has-text("${entryText}")`;
55
+ }
56
+ async waitForEntry(entryText) {
57
+ await this.activate();
58
+ await this.page.waitForSelector(this.entrySelector(entryText));
59
+ }
60
+ async waitForEntryDetached(entryText) {
61
+ await this.activate();
62
+ await this.page.waitForSelector(this.entrySelector(entryText), { state: 'detached' });
63
+ }
64
+ async isEntryVisible(entryText) {
65
+ await this.activate();
66
+ const element = await this.page.$(this.entrySelector(entryText));
67
+ return !!element && element.isVisible();
68
+ }
69
+ get clearAllButtonSelector() {
70
+ return this.selector + ' .theia-notification-center-header ul > li.codicon.codicon-clear-all';
71
+ }
72
+ async clearAllNotifications() {
73
+ await this.activate();
74
+ const element = await this.page.waitForSelector(this.clearAllButtonSelector);
75
+ await element.click();
76
+ await this.notificationIndicator.waitForVisible(false /* expectNotifications */);
77
+ }
78
+ }
79
+ exports.TheiaNotificationOverlay = TheiaNotificationOverlay;
80
+ //# sourceMappingURL=theia-notification-overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-notification-overlay.js","sourceRoot":"","sources":["../src/theia-notification-overlay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { Page } from '@playwright/test';
2
+ import { TheiaApp } from './theia-app';
3
+ export declare abstract class TheiaPageObject {
4
+ app: TheiaApp;
5
+ constructor(app: TheiaApp);
6
+ get page(): Page;
7
+ }
8
+ //# sourceMappingURL=theia-page-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-page-object.d.ts","sourceRoot":"","sources":["../src/theia-page-object.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,8BAAsB,eAAe;IAEd,GAAG,EAAE,QAAQ;gBAAb,GAAG,EAAE,QAAQ;IAEhC,IAAI,IAAI,IAAI,IAAI,CAEf;CAEJ"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2021 logi.cals GmbH, 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.TheiaPageObject = void 0;
19
+ class TheiaPageObject {
20
+ constructor(app) {
21
+ this.app = app;
22
+ }
23
+ get page() {
24
+ return this.app.page;
25
+ }
26
+ }
27
+ exports.TheiaPageObject = TheiaPageObject;
28
+ //# sourceMappingURL=theia-page-object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-page-object.js","sourceRoot":"","sources":["../src/theia-page-object.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;;;AAMhF,MAAsB,eAAe;IAEjC,YAAmB,GAAa;QAAb,QAAG,GAAH,GAAG,CAAU;IAAI,CAAC;IAErC,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACzB,CAAC;CAEJ;AARD,0CAQC"}
@@ -0,0 +1,51 @@
1
+ import { TheiaApp } from './theia-app';
2
+ import { TheiaView } from './theia-view';
3
+ export declare const PreferenceIds: {
4
+ Explorer: {
5
+ AutoReveal: string;
6
+ };
7
+ DiffEditor: {
8
+ MaxComputationTime: string;
9
+ };
10
+ };
11
+ export declare const DefaultPreferences: {
12
+ Explorer: {
13
+ AutoReveal: {
14
+ Enabled: boolean;
15
+ };
16
+ };
17
+ DiffEditor: {
18
+ MaxComputationTime: string;
19
+ };
20
+ };
21
+ export declare enum TheiaPreferenceScope {
22
+ User = "User",
23
+ Workspace = "Workspace"
24
+ }
25
+ export declare class TheiaPreferenceView extends TheiaView {
26
+ customTimeout?: number;
27
+ constructor(app: TheiaApp);
28
+ open(preferenceScope?: TheiaPreferenceScope): Promise<TheiaView>;
29
+ protected getScopeSelector(scope: TheiaPreferenceScope): string;
30
+ openPreferenceScope(scope: TheiaPreferenceScope): Promise<void>;
31
+ getBooleanPreferenceById(preferenceId: string): Promise<boolean>;
32
+ getBooleanPreferenceByPath(sectionTitle: string, name: string): Promise<boolean>;
33
+ setBooleanPreferenceById(preferenceId: string, value: boolean): Promise<void>;
34
+ setBooleanPreferenceByPath(sectionTitle: string, name: string, value: boolean): Promise<void>;
35
+ getStringPreferenceById(preferenceId: string): Promise<string>;
36
+ getStringPreferenceByPath(sectionTitle: string, name: string): Promise<string>;
37
+ setStringPreferenceById(preferenceId: string, value: string): Promise<void>;
38
+ setStringPreferenceByPath(sectionTitle: string, name: string, value: string): Promise<void>;
39
+ waitForModified(preferenceId: string): Promise<void>;
40
+ resetStringPreferenceById(preferenceId: string): Promise<void>;
41
+ resetStringPreferenceByPath(sectionTitle: string, name: string): Promise<void>;
42
+ resetBooleanPreferenceById(preferenceId: string): Promise<void>;
43
+ resetBooleanPreferenceByPath(sectionTitle: string, name: string): Promise<void>;
44
+ private findPreferenceId;
45
+ private findPreferenceEditorById;
46
+ private getPreferenceSelector;
47
+ private getPreferenceEditorSelector;
48
+ private getPreferenceGutterSelector;
49
+ private findPreferenceResetButton;
50
+ }
51
+ //# sourceMappingURL=theia-preference-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-preference-view.d.ts","sourceRoot":"","sources":["../src/theia-preference-view.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAOzC,eAAO,MAAM,aAAa;;;;;;;CAOzB,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;CAS9B,CAAC;AAEF,oBAAY,oBAAoB;IAC5B,IAAI,SAAS;IACb,SAAS,cAAc;CAC1B;AAED,qBAAa,mBAAoB,SAAQ,SAAS;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;gBAElB,GAAG,EAAE,QAAQ;IAIV,IAAI,CAAC,eAAe,uBAAiC,GAAG,OAAO,CAAC,SAAS,CAAC;IAOzF,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM;IAIzD,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/D,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKhE,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKhF,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7E,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7F,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK9D,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK9E,uBAAuB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3E,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3F,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpD,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB9D,2BAA2B,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9E,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/D,4BAA4B,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAKvE,gBAAgB;YAYhB,wBAAwB;IAStC,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,2BAA2B;IAInC,OAAO,CAAC,2BAA2B;YAIrB,yBAAyB;CAwB1C"}
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2021 logi.cals GmbH, 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.TheiaPreferenceView = exports.TheiaPreferenceScope = exports.DefaultPreferences = exports.PreferenceIds = void 0;
19
+ const theia_view_1 = require("./theia-view");
20
+ const TheiaSettingsViewData = {
21
+ tabSelector: '#shell-tab-settings_widget',
22
+ viewSelector: '#settings_widget'
23
+ };
24
+ exports.PreferenceIds = {
25
+ Explorer: {
26
+ AutoReveal: 'explorer.autoReveal'
27
+ },
28
+ DiffEditor: {
29
+ MaxComputationTime: 'diffEditor.maxComputationTime'
30
+ }
31
+ };
32
+ exports.DefaultPreferences = {
33
+ Explorer: {
34
+ AutoReveal: {
35
+ Enabled: true
36
+ }
37
+ },
38
+ DiffEditor: {
39
+ MaxComputationTime: '5000'
40
+ }
41
+ };
42
+ var TheiaPreferenceScope;
43
+ (function (TheiaPreferenceScope) {
44
+ TheiaPreferenceScope["User"] = "User";
45
+ TheiaPreferenceScope["Workspace"] = "Workspace";
46
+ })(TheiaPreferenceScope = exports.TheiaPreferenceScope || (exports.TheiaPreferenceScope = {}));
47
+ class TheiaPreferenceView extends theia_view_1.TheiaView {
48
+ constructor(app) {
49
+ super(TheiaSettingsViewData, app);
50
+ }
51
+ async open(preferenceScope = TheiaPreferenceScope.Workspace) {
52
+ await this.app.quickCommandPalette.trigger('Preferences: Open Settings (UI)');
53
+ await this.waitForVisible();
54
+ await this.openPreferenceScope(preferenceScope);
55
+ return this;
56
+ }
57
+ getScopeSelector(scope) {
58
+ return `li.preferences-scope-tab div.p-TabBar-tabLabel:has-text("${scope}")`;
59
+ }
60
+ async openPreferenceScope(scope) {
61
+ await this.activate();
62
+ const scopeTab = await this.page.waitForSelector(this.getScopeSelector(scope));
63
+ await scopeTab.click();
64
+ }
65
+ async getBooleanPreferenceById(preferenceId) {
66
+ const element = await this.findPreferenceEditorById(preferenceId);
67
+ return element.isChecked();
68
+ }
69
+ async getBooleanPreferenceByPath(sectionTitle, name) {
70
+ const preferenceId = await this.findPreferenceId(sectionTitle, name);
71
+ return this.getBooleanPreferenceById(preferenceId);
72
+ }
73
+ async setBooleanPreferenceById(preferenceId, value) {
74
+ const element = await this.findPreferenceEditorById(preferenceId);
75
+ return value ? element.check() : element.uncheck();
76
+ }
77
+ async setBooleanPreferenceByPath(sectionTitle, name, value) {
78
+ const preferenceId = await this.findPreferenceId(sectionTitle, name);
79
+ return this.setBooleanPreferenceById(preferenceId, value);
80
+ }
81
+ async getStringPreferenceById(preferenceId) {
82
+ const element = await this.findPreferenceEditorById(preferenceId);
83
+ return element.evaluate(e => e.value);
84
+ }
85
+ async getStringPreferenceByPath(sectionTitle, name) {
86
+ const preferenceId = await this.findPreferenceId(sectionTitle, name);
87
+ return this.getStringPreferenceById(preferenceId);
88
+ }
89
+ async setStringPreferenceById(preferenceId, value) {
90
+ const element = await this.findPreferenceEditorById(preferenceId);
91
+ return element.fill(value);
92
+ }
93
+ async setStringPreferenceByPath(sectionTitle, name, value) {
94
+ const preferenceId = await this.findPreferenceId(sectionTitle, name);
95
+ return this.setStringPreferenceById(preferenceId, value);
96
+ }
97
+ async waitForModified(preferenceId) {
98
+ await this.activate();
99
+ const viewElement = await this.viewElement();
100
+ await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(`${this.getPreferenceGutterSelector(preferenceId)}.theia-mod-item-modified`, { timeout: this.customTimeout }));
101
+ }
102
+ async resetStringPreferenceById(preferenceId) {
103
+ const resetPreferenceButton = await this.findPreferenceResetButton(preferenceId);
104
+ if (!resetPreferenceButton) {
105
+ // preference not modified
106
+ return;
107
+ }
108
+ const previousValue = await this.getStringPreferenceById(preferenceId);
109
+ const selector = this.getPreferenceEditorSelector(preferenceId);
110
+ const done = await resetPreferenceButton.click();
111
+ await this.page.waitForFunction(data => {
112
+ const element = document.querySelector(data.selector);
113
+ if (!element) {
114
+ throw new Error(`Could not find preference element with id "${data.preferenceId}"`);
115
+ }
116
+ const value = element.value;
117
+ return value !== data.previousValue;
118
+ }, { preferenceId, selector, previousValue, done }, { timeout: this.customTimeout });
119
+ }
120
+ async resetStringPreferenceByPath(sectionTitle, name) {
121
+ const preferenceId = await this.findPreferenceId(sectionTitle, name);
122
+ return this.resetStringPreferenceById(preferenceId);
123
+ }
124
+ async resetBooleanPreferenceById(preferenceId) {
125
+ const resetPreferenceButton = await this.findPreferenceResetButton(preferenceId);
126
+ if (!resetPreferenceButton) {
127
+ // preference not modified
128
+ return;
129
+ }
130
+ const previousValue = await this.getBooleanPreferenceById(preferenceId);
131
+ const selector = this.getPreferenceEditorSelector(preferenceId);
132
+ const done = await resetPreferenceButton.click();
133
+ await this.page.waitForFunction(data => {
134
+ const element = document.querySelector(data.selector);
135
+ if (!element) {
136
+ throw new Error(`Could not find preference element with id "${data.preferenceId}"`);
137
+ }
138
+ const value = element.checked;
139
+ return value !== data.previousValue;
140
+ }, { preferenceId, selector, previousValue, done }, { timeout: this.customTimeout });
141
+ }
142
+ async resetBooleanPreferenceByPath(sectionTitle, name) {
143
+ const preferenceId = await this.findPreferenceId(sectionTitle, name);
144
+ return this.resetBooleanPreferenceById(preferenceId);
145
+ }
146
+ async findPreferenceId(sectionTitle, name) {
147
+ const viewElement = await this.viewElement();
148
+ const sectionElement = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.$(`xpath=//li[contains(@class, 'settings-section-title') and text() = '${sectionTitle}']/..`));
149
+ const firstPreferenceAfterSection = await (sectionElement === null || sectionElement === void 0 ? void 0 : sectionElement.$(`xpath=following-sibling::li[div/text() = '${name}'][1]`));
150
+ const preferenceId = await (firstPreferenceAfterSection === null || firstPreferenceAfterSection === void 0 ? void 0 : firstPreferenceAfterSection.getAttribute('data-pref-id'));
151
+ if (!preferenceId) {
152
+ throw new Error(`Could not find preference id for "${sectionTitle}" > (...) > "${name}"`);
153
+ }
154
+ return preferenceId;
155
+ }
156
+ async findPreferenceEditorById(preferenceId) {
157
+ const viewElement = await this.viewElement();
158
+ const element = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(this.getPreferenceEditorSelector(preferenceId), { timeout: this.customTimeout }));
159
+ if (!element) {
160
+ throw new Error(`Could not find element with preference id "${preferenceId}"`);
161
+ }
162
+ return element;
163
+ }
164
+ getPreferenceSelector(preferenceId) {
165
+ return `li[data-pref-id="${preferenceId}"]`;
166
+ }
167
+ getPreferenceEditorSelector(preferenceId) {
168
+ return `${this.getPreferenceSelector(preferenceId)} input`;
169
+ }
170
+ getPreferenceGutterSelector(preferenceId) {
171
+ return `${this.getPreferenceSelector(preferenceId)} .pref-context-gutter`;
172
+ }
173
+ async findPreferenceResetButton(preferenceId) {
174
+ await this.activate();
175
+ const viewElement = await this.viewElement();
176
+ const gutter = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(`${this.getPreferenceGutterSelector(preferenceId)}`, { timeout: this.customTimeout }));
177
+ if (!gutter) {
178
+ throw new Error(`Could not determine modified state for element with preference id "${preferenceId}"`);
179
+ }
180
+ const isModified = await gutter.evaluate(e => e.classList.contains('theia-mod-item-modified'));
181
+ if (!isModified) {
182
+ return undefined;
183
+ }
184
+ const settingsContextMenuBtn = await (viewElement === null || viewElement === void 0 ? void 0 : viewElement.waitForSelector(`${this.getPreferenceSelector(preferenceId)} .settings-context-menu-btn`));
185
+ if (!settingsContextMenuBtn) {
186
+ throw new Error(`Could not find context menu button for element with preference id "${preferenceId}"`);
187
+ }
188
+ await settingsContextMenuBtn.click();
189
+ const resetPreferenceButton = await this.page.waitForSelector('li[data-command="preferences:reset"]');
190
+ if (!resetPreferenceButton) {
191
+ throw new Error(`Could not find menu entry to reset preference with id "${preferenceId}"`);
192
+ }
193
+ return resetPreferenceButton;
194
+ }
195
+ }
196
+ exports.TheiaPreferenceView = TheiaPreferenceView;
197
+ //# sourceMappingURL=theia-preference-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-preference-view.js","sourceRoot":"","sources":["../src/theia-preference-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ElementHandle } from '@playwright/test';
2
+ import { TheiaStatusIndicator } from './theia-status-indicator';
3
+ export declare class TheiaProblemIndicator extends TheiaStatusIndicator {
4
+ isVisible(): Promise<boolean>;
5
+ numberOfProblems(): Promise<number>;
6
+ numberOfWarnings(): Promise<number>;
7
+ protected getSpans(): Promise<ElementHandle[] | undefined>;
8
+ }
9
+ //# sourceMappingURL=theia-problem-indicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-problem-indicator.d.ts","sourceRoot":"","sources":["../src/theia-problem-indicator.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAIhE,qBAAa,qBAAsB,SAAQ,oBAAoB;IAE5C,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAKtC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAKnC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;cAKzB,QAAQ,IAAI,OAAO,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC;CAKnE"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2021 logi.cals GmbH, 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.TheiaProblemIndicator = void 0;
19
+ const theia_status_indicator_1 = require("./theia-status-indicator");
20
+ const PROBLEM_ICON = 'codicon-error';
21
+ class TheiaProblemIndicator extends theia_status_indicator_1.TheiaStatusIndicator {
22
+ async isVisible() {
23
+ const handle = await super.getElementHandleByIcon(PROBLEM_ICON);
24
+ return !!handle && handle.isVisible();
25
+ }
26
+ async numberOfProblems() {
27
+ const spans = await this.getSpans();
28
+ return spans ? +await spans[1].innerText() : -1;
29
+ }
30
+ async numberOfWarnings() {
31
+ const spans = await this.getSpans();
32
+ return spans ? +await spans[3].innerText() : -1;
33
+ }
34
+ async getSpans() {
35
+ const handle = await super.getElementHandleByIcon(PROBLEM_ICON);
36
+ return handle === null || handle === void 0 ? void 0 : handle.$$('span');
37
+ }
38
+ }
39
+ exports.TheiaProblemIndicator = TheiaProblemIndicator;
40
+ //# sourceMappingURL=theia-problem-indicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-problem-indicator.js","sourceRoot":"","sources":["../src/theia-problem-indicator.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,qEAAgE;AAEhE,MAAM,YAAY,GAAG,eAAe,CAAC;AAErC,MAAa,qBAAsB,SAAQ,6CAAoB;IAElD,KAAK,CAAC,SAAS;QACpB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAChE,OAAO,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAES,KAAK,CAAC,QAAQ;QACpB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAChE,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;CAEJ;AAtBD,sDAsBC"}
@@ -0,0 +1,6 @@
1
+ import { TheiaApp } from './theia-app';
2
+ import { TheiaView } from './theia-view';
3
+ export declare class TheiaProblemsView extends TheiaView {
4
+ constructor(app: TheiaApp);
5
+ }
6
+ //# sourceMappingURL=theia-problem-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-problem-view.d.ts","sourceRoot":"","sources":["../src/theia-problem-view.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAQzC,qBAAa,iBAAkB,SAAQ,SAAS;gBAChC,GAAG,EAAE,QAAQ;CAG5B"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2021 logi.cals GmbH, 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.TheiaProblemsView = void 0;
19
+ const theia_view_1 = require("./theia-view");
20
+ const TheiaProblemsViewData = {
21
+ tabSelector: '#shell-tab-problems',
22
+ viewSelector: '#problems',
23
+ viewName: 'Problems'
24
+ };
25
+ class TheiaProblemsView extends theia_view_1.TheiaView {
26
+ constructor(app) {
27
+ super(TheiaProblemsViewData, app);
28
+ }
29
+ }
30
+ exports.TheiaProblemsView = TheiaProblemsView;
31
+ //# sourceMappingURL=theia-problem-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-problem-view.js","sourceRoot":"","sources":["../src/theia-problem-view.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,6CAAyC;AAEzC,MAAM,qBAAqB,GAAG;IAC1B,WAAW,EAAE,qBAAqB;IAClC,YAAY,EAAE,WAAW;IACzB,QAAQ,EAAE,UAAU;CACvB,CAAC;AAEF,MAAa,iBAAkB,SAAQ,sBAAS;IAC5C,YAAY,GAAa;QACrB,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;CACJ;AAJD,8CAIC"}
@@ -0,0 +1,12 @@
1
+ import { ElementHandle } from '@playwright/test';
2
+ import { TheiaPageObject } from './theia-page-object';
3
+ export declare class TheiaQuickCommandPalette extends TheiaPageObject {
4
+ selector: string;
5
+ open(): Promise<void>;
6
+ isOpen(): Promise<boolean>;
7
+ trigger(...commandName: string[]): Promise<void>;
8
+ protected triggerSingleCommand(commandName: string): Promise<void>;
9
+ type(command: string): Promise<void>;
10
+ protected selectedCommand(): Promise<ElementHandle<SVGElement | HTMLElement> | null>;
11
+ }
12
+ //# sourceMappingURL=theia-quick-command-palette.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2021 logi.cals GmbH, 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.TheiaQuickCommandPalette = void 0;
19
+ const theia_page_object_1 = require("./theia-page-object");
20
+ const util_1 = require("./util");
21
+ class TheiaQuickCommandPalette extends theia_page_object_1.TheiaPageObject {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.selector = '.quick-input-widget';
25
+ }
26
+ async open() {
27
+ await this.page.keyboard.press(util_1.OSUtil.isMacOS ? 'Meta+Shift+p' : 'Control+Shift+p');
28
+ await this.page.waitForSelector(this.selector);
29
+ }
30
+ async isOpen() {
31
+ try {
32
+ await this.page.waitForSelector(this.selector, { timeout: 5000 });
33
+ }
34
+ catch (err) {
35
+ return false;
36
+ }
37
+ return true;
38
+ }
39
+ async trigger(...commandName) {
40
+ for (const command of commandName) {
41
+ await this.triggerSingleCommand(command);
42
+ }
43
+ }
44
+ async triggerSingleCommand(commandName) {
45
+ if (!await this.isOpen()) {
46
+ this.open();
47
+ }
48
+ let selected = await this.selectedCommand();
49
+ while (!(await (selected === null || selected === void 0 ? void 0 : selected.getAttribute('aria-label')) === commandName)) {
50
+ await this.page.keyboard.press('ArrowDown');
51
+ selected = await this.selectedCommand();
52
+ }
53
+ await this.page.keyboard.press('Enter');
54
+ }
55
+ async type(command) {
56
+ if (!await this.isOpen()) {
57
+ this.open();
58
+ }
59
+ const input = await this.page.waitForSelector(`${this.selector} .monaco-inputbox .input`);
60
+ if (input != null) {
61
+ await input.focus();
62
+ await input.type(command, { delay: util_1.USER_KEY_TYPING_DELAY });
63
+ }
64
+ }
65
+ async selectedCommand() {
66
+ const command = await this.page.waitForSelector(this.selector);
67
+ if (!command) {
68
+ throw new Error('No selected command found!');
69
+ }
70
+ return command.$('.monaco-list-row.focused');
71
+ }
72
+ }
73
+ exports.TheiaQuickCommandPalette = TheiaQuickCommandPalette;
74
+ //# sourceMappingURL=theia-quick-command-palette.js.map
@@ -0,0 +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,YAAY,CAAC,YAAY,CAAC,CAAA,KAAK,WAAW,CAAC,EAAE;YAClE,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,0BAA0B,CAAC,CAAC;IACjD,CAAC;CACJ;AAtDD,4DAsDC"}
@@ -0,0 +1,6 @@
1
+ import { TheiaDialog } from './theia-dialog';
2
+ export declare class TheiaRenameDialog extends TheiaDialog {
3
+ enterNewName(newName: string): Promise<void>;
4
+ confirm(): Promise<void>;
5
+ }
6
+ //# sourceMappingURL=theia-rename-dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-rename-dialog.d.ts","sourceRoot":"","sources":["../src/theia-rename-dialog.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,qBAAa,iBAAkB,SAAQ,WAAW;IAExC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAOjC"}