@theia/notebook 1.67.0-next.13 → 1.67.0-next.56

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 (244) hide show
  1. package/README.md +1 -1
  2. package/package.json +7 -7
  3. package/src/browser/contributions/notebook-actions-contribution.ts +25 -22
  4. package/src/browser/contributions/notebook-cell-actions-contribution.ts +20 -9
  5. package/src/browser/contributions/notebook-label-provider-contribution.ts +2 -1
  6. package/src/browser/contributions/notebook-outline-contribution.ts +8 -6
  7. package/src/browser/contributions/notebook-status-bar-contribution.ts +4 -6
  8. package/src/browser/index.ts +1 -0
  9. package/src/browser/notebook-cell-open-handler.ts +3 -3
  10. package/src/browser/notebook-editor-split-contribution.ts +51 -0
  11. package/src/browser/notebook-editor-widget-factory.ts +11 -1
  12. package/src/browser/notebook-editor-widget.tsx +18 -3
  13. package/src/browser/notebook-frontend-module.ts +5 -0
  14. package/src/browser/notebook-open-handler.ts +19 -11
  15. package/src/browser/notebook-types.ts +1 -0
  16. package/src/browser/service/notebook-context-manager.ts +17 -9
  17. package/src/browser/view/notebook-cell-editor.tsx +13 -5
  18. package/src/browser/view/notebook-cell-list-view.tsx +15 -12
  19. package/src/browser/view/notebook-cell-toolbar-factory.tsx +5 -4
  20. package/src/browser/view/notebook-code-cell-view.tsx +6 -1
  21. package/src/browser/view/notebook-markdown-cell-view.tsx +27 -7
  22. package/src/browser/view-model/notebook-cell-model.ts +8 -41
  23. package/src/browser/view-model/notebook-model.ts +2 -33
  24. package/src/browser/view-model/notebook-view-model.ts +138 -0
  25. package/lib/browser/contributions/cell-operations.d.ts +0 -8
  26. package/lib/browser/contributions/cell-operations.d.ts.map +0 -1
  27. package/lib/browser/contributions/cell-operations.js +0 -45
  28. package/lib/browser/contributions/cell-operations.js.map +0 -1
  29. package/lib/browser/contributions/notebook-actions-contribution.d.ts +0 -48
  30. package/lib/browser/contributions/notebook-actions-contribution.d.ts.map +0 -1
  31. package/lib/browser/contributions/notebook-actions-contribution.js +0 -341
  32. package/lib/browser/contributions/notebook-actions-contribution.js.map +0 -1
  33. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts +0 -66
  34. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts.map +0 -1
  35. package/lib/browser/contributions/notebook-cell-actions-contribution.js +0 -512
  36. package/lib/browser/contributions/notebook-cell-actions-contribution.js.map +0 -1
  37. package/lib/browser/contributions/notebook-color-contribution.d.ts +0 -6
  38. package/lib/browser/contributions/notebook-color-contribution.d.ts.map +0 -1
  39. package/lib/browser/contributions/notebook-color-contribution.js +0 -247
  40. package/lib/browser/contributions/notebook-color-contribution.js.map +0 -1
  41. package/lib/browser/contributions/notebook-context-keys.d.ts +0 -44
  42. package/lib/browser/contributions/notebook-context-keys.d.ts.map +0 -1
  43. package/lib/browser/contributions/notebook-context-keys.js +0 -108
  44. package/lib/browser/contributions/notebook-context-keys.js.map +0 -1
  45. package/lib/browser/contributions/notebook-label-provider-contribution.d.ts +0 -19
  46. package/lib/browser/contributions/notebook-label-provider-contribution.d.ts.map +0 -1
  47. package/lib/browser/contributions/notebook-label-provider-contribution.js +0 -85
  48. package/lib/browser/contributions/notebook-label-provider-contribution.js.map +0 -1
  49. package/lib/browser/contributions/notebook-outline-contribution.d.ts +0 -28
  50. package/lib/browser/contributions/notebook-outline-contribution.d.ts.map +0 -1
  51. package/lib/browser/contributions/notebook-outline-contribution.js +0 -113
  52. package/lib/browser/contributions/notebook-outline-contribution.js.map +0 -1
  53. package/lib/browser/contributions/notebook-output-action-contribution.d.ts +0 -16
  54. package/lib/browser/contributions/notebook-output-action-contribution.d.ts.map +0 -1
  55. package/lib/browser/contributions/notebook-output-action-contribution.js +0 -83
  56. package/lib/browser/contributions/notebook-output-action-contribution.js.map +0 -1
  57. package/lib/browser/contributions/notebook-status-bar-contribution.d.ts +0 -12
  58. package/lib/browser/contributions/notebook-status-bar-contribution.d.ts.map +0 -1
  59. package/lib/browser/contributions/notebook-status-bar-contribution.js +0 -63
  60. package/lib/browser/contributions/notebook-status-bar-contribution.js.map +0 -1
  61. package/lib/browser/contributions/notebook-undo-redo-handler.d.ts +0 -10
  62. package/lib/browser/contributions/notebook-undo-redo-handler.d.ts.map +0 -1
  63. package/lib/browser/contributions/notebook-undo-redo-handler.js +0 -49
  64. package/lib/browser/contributions/notebook-undo-redo-handler.js.map +0 -1
  65. package/lib/browser/index.d.ts +0 -13
  66. package/lib/browser/index.d.ts.map +0 -1
  67. package/lib/browser/index.js +0 -31
  68. package/lib/browser/index.js.map +0 -1
  69. package/lib/browser/notebook-cell-open-handler.d.ts +0 -10
  70. package/lib/browser/notebook-cell-open-handler.d.ts.map +0 -1
  71. package/lib/browser/notebook-cell-open-handler.js +0 -51
  72. package/lib/browser/notebook-cell-open-handler.js.map +0 -1
  73. package/lib/browser/notebook-cell-resource-resolver.d.ts +0 -26
  74. package/lib/browser/notebook-cell-resource-resolver.d.ts.map +0 -1
  75. package/lib/browser/notebook-cell-resource-resolver.js +0 -109
  76. package/lib/browser/notebook-cell-resource-resolver.js.map +0 -1
  77. package/lib/browser/notebook-editor-widget-factory.d.ts +0 -19
  78. package/lib/browser/notebook-editor-widget-factory.d.ts.map +0 -1
  79. package/lib/browser/notebook-editor-widget-factory.js +0 -93
  80. package/lib/browser/notebook-editor-widget-factory.js.map +0 -1
  81. package/lib/browser/notebook-editor-widget.d.ts +0 -99
  82. package/lib/browser/notebook-editor-widget.d.ts.map +0 -1
  83. package/lib/browser/notebook-editor-widget.js +0 -323
  84. package/lib/browser/notebook-editor-widget.js.map +0 -1
  85. package/lib/browser/notebook-frontend-module.d.ts +0 -5
  86. package/lib/browser/notebook-frontend-module.d.ts.map +0 -1
  87. package/lib/browser/notebook-frontend-module.js +0 -112
  88. package/lib/browser/notebook-frontend-module.js.map +0 -1
  89. package/lib/browser/notebook-open-handler.d.ts +0 -23
  90. package/lib/browser/notebook-open-handler.d.ts.map +0 -1
  91. package/lib/browser/notebook-open-handler.js +0 -113
  92. package/lib/browser/notebook-open-handler.js.map +0 -1
  93. package/lib/browser/notebook-output-utils.d.ts +0 -13
  94. package/lib/browser/notebook-output-utils.d.ts.map +0 -1
  95. package/lib/browser/notebook-output-utils.js +0 -112
  96. package/lib/browser/notebook-output-utils.js.map +0 -1
  97. package/lib/browser/notebook-renderer-registry.d.ts +0 -25
  98. package/lib/browser/notebook-renderer-registry.d.ts.map +0 -1
  99. package/lib/browser/notebook-renderer-registry.js +0 -72
  100. package/lib/browser/notebook-renderer-registry.js.map +0 -1
  101. package/lib/browser/notebook-type-registry.d.ts +0 -12
  102. package/lib/browser/notebook-type-registry.d.ts.map +0 -1
  103. package/lib/browser/notebook-type-registry.js +0 -60
  104. package/lib/browser/notebook-type-registry.js.map +0 -1
  105. package/lib/browser/notebook-types.d.ts +0 -130
  106. package/lib/browser/notebook-types.d.ts.map +0 -1
  107. package/lib/browser/notebook-types.js +0 -28
  108. package/lib/browser/notebook-types.js.map +0 -1
  109. package/lib/browser/renderers/cell-output-webview.d.ts +0 -26
  110. package/lib/browser/renderers/cell-output-webview.d.ts.map +0 -1
  111. package/lib/browser/renderers/cell-output-webview.js +0 -21
  112. package/lib/browser/renderers/cell-output-webview.js.map +0 -1
  113. package/lib/browser/service/notebook-cell-editor-service.d.ts +0 -23
  114. package/lib/browser/service/notebook-cell-editor-service.d.ts.map +0 -1
  115. package/lib/browser/service/notebook-cell-editor-service.js +0 -89
  116. package/lib/browser/service/notebook-cell-editor-service.js.map +0 -1
  117. package/lib/browser/service/notebook-cell-status-bar-service.d.ts +0 -39
  118. package/lib/browser/service/notebook-cell-status-bar-service.d.ts.map +0 -1
  119. package/lib/browser/service/notebook-cell-status-bar-service.js +0 -69
  120. package/lib/browser/service/notebook-cell-status-bar-service.js.map +0 -1
  121. package/lib/browser/service/notebook-clipboard-service.d.ts +0 -10
  122. package/lib/browser/service/notebook-clipboard-service.d.ts.map +0 -1
  123. package/lib/browser/service/notebook-clipboard-service.js +0 -42
  124. package/lib/browser/service/notebook-clipboard-service.js.map +0 -1
  125. package/lib/browser/service/notebook-context-manager.d.ts +0 -26
  126. package/lib/browser/service/notebook-context-manager.d.ts.map +0 -1
  127. package/lib/browser/service/notebook-context-manager.js +0 -131
  128. package/lib/browser/service/notebook-context-manager.js.map +0 -1
  129. package/lib/browser/service/notebook-editor-widget-service.d.ts +0 -27
  130. package/lib/browser/service/notebook-editor-widget-service.d.ts.map +0 -1
  131. package/lib/browser/service/notebook-editor-widget-service.js +0 -124
  132. package/lib/browser/service/notebook-editor-widget-service.js.map +0 -1
  133. package/lib/browser/service/notebook-execution-service.d.ts +0 -25
  134. package/lib/browser/service/notebook-execution-service.d.ts.map +0 -1
  135. package/lib/browser/service/notebook-execution-service.js +0 -150
  136. package/lib/browser/service/notebook-execution-service.js.map +0 -1
  137. package/lib/browser/service/notebook-execution-state-service.d.ts +0 -78
  138. package/lib/browser/service/notebook-execution-state-service.d.ts.map +0 -1
  139. package/lib/browser/service/notebook-execution-state-service.js +0 -247
  140. package/lib/browser/service/notebook-execution-state-service.js.map +0 -1
  141. package/lib/browser/service/notebook-kernel-history-service.d.ts +0 -28
  142. package/lib/browser/service/notebook-kernel-history-service.d.ts.map +0 -1
  143. package/lib/browser/service/notebook-kernel-history-service.js +0 -116
  144. package/lib/browser/service/notebook-kernel-history-service.js.map +0 -1
  145. package/lib/browser/service/notebook-kernel-quick-pick-service.d.ts +0 -61
  146. package/lib/browser/service/notebook-kernel-quick-pick-service.d.ts.map +0 -1
  147. package/lib/browser/service/notebook-kernel-quick-pick-service.js +0 -425
  148. package/lib/browser/service/notebook-kernel-quick-pick-service.js.map +0 -1
  149. package/lib/browser/service/notebook-kernel-service.d.ts +0 -125
  150. package/lib/browser/service/notebook-kernel-service.d.ts.map +0 -1
  151. package/lib/browser/service/notebook-kernel-service.js +0 -268
  152. package/lib/browser/service/notebook-kernel-service.js.map +0 -1
  153. package/lib/browser/service/notebook-model-resolver-service.d.ts +0 -28
  154. package/lib/browser/service/notebook-model-resolver-service.d.ts.map +0 -1
  155. package/lib/browser/service/notebook-model-resolver-service.js +0 -157
  156. package/lib/browser/service/notebook-model-resolver-service.js.map +0 -1
  157. package/lib/browser/service/notebook-monaco-text-model-service.d.ts +0 -21
  158. package/lib/browser/service/notebook-monaco-text-model-service.d.ts.map +0 -1
  159. package/lib/browser/service/notebook-monaco-text-model-service.js +0 -73
  160. package/lib/browser/service/notebook-monaco-text-model-service.js.map +0 -1
  161. package/lib/browser/service/notebook-options.d.ts +0 -30
  162. package/lib/browser/service/notebook-options.d.ts.map +0 -1
  163. package/lib/browser/service/notebook-options.js +0 -130
  164. package/lib/browser/service/notebook-options.js.map +0 -1
  165. package/lib/browser/service/notebook-renderer-messaging-service.d.ts +0 -35
  166. package/lib/browser/service/notebook-renderer-messaging-service.d.ts.map +0 -1
  167. package/lib/browser/service/notebook-renderer-messaging-service.js +0 -100
  168. package/lib/browser/service/notebook-renderer-messaging-service.js.map +0 -1
  169. package/lib/browser/service/notebook-service.d.ts +0 -68
  170. package/lib/browser/service/notebook-service.d.ts.map +0 -1
  171. package/lib/browser/service/notebook-service.js +0 -184
  172. package/lib/browser/service/notebook-service.js.map +0 -1
  173. package/lib/browser/view/notebook-cell-editor.d.ts +0 -44
  174. package/lib/browser/view/notebook-cell-editor.d.ts.map +0 -1
  175. package/lib/browser/view/notebook-cell-editor.js +0 -267
  176. package/lib/browser/view/notebook-cell-editor.js.map +0 -1
  177. package/lib/browser/view/notebook-cell-list-view.d.ts +0 -56
  178. package/lib/browser/view/notebook-cell-list-view.d.ts.map +0 -1
  179. package/lib/browser/view/notebook-cell-list-view.js +0 -222
  180. package/lib/browser/view/notebook-cell-list-view.js.map +0 -1
  181. package/lib/browser/view/notebook-cell-toolbar-factory.d.ts +0 -33
  182. package/lib/browser/view/notebook-cell-toolbar-factory.d.ts.map +0 -1
  183. package/lib/browser/view/notebook-cell-toolbar-factory.js +0 -110
  184. package/lib/browser/view/notebook-cell-toolbar-factory.js.map +0 -1
  185. package/lib/browser/view/notebook-cell-toolbar.d.ts +0 -25
  186. package/lib/browser/view/notebook-cell-toolbar.d.ts.map +0 -1
  187. package/lib/browser/view/notebook-cell-toolbar.js +0 -51
  188. package/lib/browser/view/notebook-cell-toolbar.js.map +0 -1
  189. package/lib/browser/view/notebook-code-cell-view.d.ts +0 -91
  190. package/lib/browser/view/notebook-code-cell-view.d.ts.map +0 -1
  191. package/lib/browser/view/notebook-code-cell-view.js +0 -333
  192. package/lib/browser/view/notebook-code-cell-view.js.map +0 -1
  193. package/lib/browser/view/notebook-find-widget.d.ts +0 -63
  194. package/lib/browser/view/notebook-find-widget.d.ts.map +0 -1
  195. package/lib/browser/view/notebook-find-widget.js +0 -225
  196. package/lib/browser/view/notebook-find-widget.js.map +0 -1
  197. package/lib/browser/view/notebook-main-toolbar.d.ts +0 -53
  198. package/lib/browser/view/notebook-main-toolbar.d.ts.map +0 -1
  199. package/lib/browser/view/notebook-main-toolbar.js +0 -184
  200. package/lib/browser/view/notebook-main-toolbar.js.map +0 -1
  201. package/lib/browser/view/notebook-markdown-cell-view.d.ts +0 -26
  202. package/lib/browser/view/notebook-markdown-cell-view.d.ts.map +0 -1
  203. package/lib/browser/view/notebook-markdown-cell-view.js +0 -198
  204. package/lib/browser/view/notebook-markdown-cell-view.js.map +0 -1
  205. package/lib/browser/view/notebook-viewport-service.d.ts +0 -17
  206. package/lib/browser/view/notebook-viewport-service.d.ts.map +0 -1
  207. package/lib/browser/view/notebook-viewport-service.js +0 -61
  208. package/lib/browser/view/notebook-viewport-service.js.map +0 -1
  209. package/lib/browser/view-model/notebook-cell-model.d.ts +0 -149
  210. package/lib/browser/view-model/notebook-cell-model.d.ts.map +0 -1
  211. package/lib/browser/view-model/notebook-cell-model.js +0 -391
  212. package/lib/browser/view-model/notebook-cell-model.js.map +0 -1
  213. package/lib/browser/view-model/notebook-cell-output-model.d.ts +0 -17
  214. package/lib/browser/view-model/notebook-cell-output-model.d.ts.map +0 -1
  215. package/lib/browser/view-model/notebook-cell-output-model.js +0 -87
  216. package/lib/browser/view-model/notebook-cell-output-model.js.map +0 -1
  217. package/lib/browser/view-model/notebook-model.d.ts +0 -93
  218. package/lib/browser/view-model/notebook-model.d.ts.map +0 -1
  219. package/lib/browser/view-model/notebook-model.js +0 -468
  220. package/lib/browser/view-model/notebook-model.js.map +0 -1
  221. package/lib/common/index.d.ts +0 -3
  222. package/lib/common/index.d.ts.map +0 -1
  223. package/lib/common/index.js +0 -21
  224. package/lib/common/index.js.map +0 -1
  225. package/lib/common/notebook-common.d.ts +0 -227
  226. package/lib/common/notebook-common.d.ts.map +0 -1
  227. package/lib/common/notebook-common.js +0 -151
  228. package/lib/common/notebook-common.js.map +0 -1
  229. package/lib/common/notebook-preferences.d.ts +0 -15
  230. package/lib/common/notebook-preferences.d.ts.map +0 -1
  231. package/lib/common/notebook-preferences.js +0 -89
  232. package/lib/common/notebook-preferences.js.map +0 -1
  233. package/lib/common/notebook-protocol.d.ts +0 -21
  234. package/lib/common/notebook-protocol.d.ts.map +0 -1
  235. package/lib/common/notebook-protocol.js +0 -18
  236. package/lib/common/notebook-protocol.js.map +0 -1
  237. package/lib/common/notebook-range.d.ts +0 -14
  238. package/lib/common/notebook-range.d.ts.map +0 -1
  239. package/lib/common/notebook-range.js +0 -18
  240. package/lib/common/notebook-range.js.map +0 -1
  241. package/lib/node/notebook-backend-module.d.ts +0 -4
  242. package/lib/node/notebook-backend-module.d.ts.map +0 -1
  243. package/lib/node/notebook-backend-module.js +0 -23
  244. package/lib/node/notebook-backend-module.js.map +0 -1
@@ -1,116 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2023 TypeFox 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-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- /*---------------------------------------------------------------------------------------------
18
- * Copyright (c) Microsoft Corporation. All rights reserved.
19
- * Licensed under the MIT License. See License.txt in the project root for license information.
20
- *--------------------------------------------------------------------------------------------*/
21
- var NotebookKernelHistoryService_1;
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.NotebookKernelHistoryService = void 0;
24
- const tslib_1 = require("tslib");
25
- const inversify_1 = require("@theia/core/shared/inversify");
26
- const browser_1 = require("@theia/core/lib/browser");
27
- const notebook_kernel_service_1 = require("./notebook-kernel-service");
28
- const core_1 = require("@theia/core");
29
- const notebook_actions_contribution_1 = require("../contributions/notebook-actions-contribution");
30
- const MAX_KERNELS_IN_HISTORY = 5;
31
- let NotebookKernelHistoryService = NotebookKernelHistoryService_1 = class NotebookKernelHistoryService {
32
- constructor() {
33
- this.mostRecentKernelsMap = {};
34
- }
35
- init() {
36
- this.loadState();
37
- }
38
- getKernels(notebook) {
39
- const allAvailableKernels = this.notebookKernelService.getMatchingKernel(notebook);
40
- const allKernels = allAvailableKernels.all;
41
- const selectedKernel = allAvailableKernels.selected;
42
- // We will suggest the only kernel
43
- const suggested = allAvailableKernels.all.length === 1 ? allAvailableKernels.all[0] : undefined;
44
- const mostRecentKernelIds = this.mostRecentKernelsMap[notebook.viewType] ? this.mostRecentKernelsMap[notebook.viewType].map(kernel => kernel[1]) : [];
45
- const all = mostRecentKernelIds.map(kernelId => allKernels.find(kernel => kernel.id === kernelId)).filter(kernel => !!kernel);
46
- return {
47
- selected: selectedKernel !== null && selectedKernel !== void 0 ? selectedKernel : suggested,
48
- all
49
- };
50
- }
51
- async resolveSelectedKernel(notebook) {
52
- const alreadySelected = this.getKernels(notebook);
53
- if (alreadySelected.selected) {
54
- return alreadySelected.selected;
55
- }
56
- await this.commandService.executeCommand(notebook_actions_contribution_1.NotebookCommands.SELECT_KERNEL_COMMAND.id, notebook);
57
- const { selected } = this.getKernels(notebook);
58
- return selected;
59
- }
60
- addMostRecentKernel(kernel) {
61
- var _a;
62
- const viewType = kernel.viewType;
63
- const recentKernels = (_a = this.mostRecentKernelsMap[viewType]) !== null && _a !== void 0 ? _a : [kernel.id];
64
- if (recentKernels.length > MAX_KERNELS_IN_HISTORY) {
65
- recentKernels.splice(MAX_KERNELS_IN_HISTORY);
66
- }
67
- this.mostRecentKernelsMap[viewType] = recentKernels;
68
- this.saveState();
69
- }
70
- saveState() {
71
- let notEmpty = false;
72
- for (const kernels of Object.values(this.mostRecentKernelsMap)) {
73
- notEmpty = notEmpty || Object.entries(kernels).length > 0;
74
- }
75
- this.storageService.setData(NotebookKernelHistoryService_1.STORAGE_KEY, notEmpty ? this.mostRecentKernelsMap : undefined);
76
- }
77
- async loadState() {
78
- const kernelMap = await this.storageService.getData(NotebookKernelHistoryService_1.STORAGE_KEY);
79
- if (kernelMap) {
80
- this.mostRecentKernelsMap = kernelMap;
81
- }
82
- else {
83
- this.mostRecentKernelsMap = {};
84
- }
85
- }
86
- clear() {
87
- this.mostRecentKernelsMap = {};
88
- this.saveState();
89
- }
90
- dispose() {
91
- }
92
- };
93
- exports.NotebookKernelHistoryService = NotebookKernelHistoryService;
94
- NotebookKernelHistoryService.STORAGE_KEY = 'notebook.kernelHistory';
95
- tslib_1.__decorate([
96
- (0, inversify_1.inject)(browser_1.StorageService),
97
- tslib_1.__metadata("design:type", Object)
98
- ], NotebookKernelHistoryService.prototype, "storageService", void 0);
99
- tslib_1.__decorate([
100
- (0, inversify_1.inject)(notebook_kernel_service_1.NotebookKernelService),
101
- tslib_1.__metadata("design:type", notebook_kernel_service_1.NotebookKernelService)
102
- ], NotebookKernelHistoryService.prototype, "notebookKernelService", void 0);
103
- tslib_1.__decorate([
104
- (0, inversify_1.inject)(core_1.CommandService),
105
- tslib_1.__metadata("design:type", Object)
106
- ], NotebookKernelHistoryService.prototype, "commandService", void 0);
107
- tslib_1.__decorate([
108
- (0, inversify_1.postConstruct)(),
109
- tslib_1.__metadata("design:type", Function),
110
- tslib_1.__metadata("design:paramtypes", []),
111
- tslib_1.__metadata("design:returntype", void 0)
112
- ], NotebookKernelHistoryService.prototype, "init", null);
113
- exports.NotebookKernelHistoryService = NotebookKernelHistoryService = NotebookKernelHistoryService_1 = tslib_1.__decorate([
114
- (0, inversify_1.injectable)()
115
- ], NotebookKernelHistoryService);
116
- //# sourceMappingURL=notebook-kernel-history-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notebook-kernel-history-service.js","sourceRoot":"","sources":["../../../src/browser/service/notebook-kernel-history-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF;;;gGAGgG;;;;;AAEhG,4DAAiF;AACjF,qDAAyD;AACzD,uEAAyG;AACzG,sCAAyD;AAEzD,kGAAkF;AAWlF,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAG1B,IAAM,4BAA4B,oCAAlC,MAAM,4BAA4B;IAAlC;QAYO,yBAAoB,GAAgB,EAAE,CAAC;IAwErD,CAAC;IArEa,IAAI;QACV,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAED,UAAU,CAAC,QAA+B;QACtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC;QAC3C,MAAM,cAAc,GAAG,mBAAmB,CAAC,QAAQ,CAAC;QACpD,kCAAkC;QAClC,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChG,MAAM,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtJ,MAAM,GAAG,GAAG,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAqB,CAAC;QAElJ,OAAO;YACH,QAAQ,EAAE,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,SAAS;YACrC,GAAG;SACN,CAAC;IACN,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAuB;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC3B,OAAO,eAAe,CAAC,QAAQ,CAAC;QACpC,CAAC;QAED,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,gDAAgB,CAAC,qBAAqB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC9F,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC/C,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,mBAAmB,CAAC,MAAsB;;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,mCAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEzE,IAAI,aAAa,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;YAChD,aAAa,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC;QACpD,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAES,SAAS;QACf,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC7D,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,8BAA4B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC5H,CAAC;IAES,KAAK,CAAC,SAAS;QACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,8BAA4B,CAAC,WAAW,CAAC,CAAC;QAC9F,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,oBAAoB,GAAG,SAAwB,CAAC;QACzD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QACnC,CAAC;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAED,OAAO;IAEP,CAAC;;AAnFQ,oEAA4B;AAWpB,wCAAW,GAAG,wBAAwB,AAA3B,CAA4B;AAR9C;IADT,IAAA,kBAAM,EAAC,wBAAc,CAAC;;oEACkB;AAG/B;IADT,IAAA,kBAAM,EAAC,+CAAqB,CAAC;sCACG,+CAAqB;2EAAC;AAG7C;IADT,IAAA,kBAAM,EAAC,qBAAc,CAAC;;oEACkB;AAM/B;IADT,IAAA,yBAAa,GAAE;;;;wDAGf;uCAjBQ,4BAA4B;IADxC,IAAA,sBAAU,GAAE;GACA,4BAA4B,CAoFxC"}
@@ -1,61 +0,0 @@
1
- import { CommandService, ILogger, QuickInputService, QuickPickInput, QuickPickItem } from '@theia/core';
2
- import { NotebookKernelService, NotebookKernel, NotebookKernelMatchResult, SourceCommand } from './notebook-kernel-service';
3
- import { NotebookModel } from '../view-model/notebook-model';
4
- import { NotebookEditorWidget } from '../notebook-editor-widget';
5
- import { OpenerService } from '@theia/core/lib/browser';
6
- import { NotebookKernelHistoryService } from './notebook-kernel-history-service';
7
- import { NotebookCommand } from '../../common';
8
- export declare const JUPYTER_EXTENSION_ID = "ms-toolsai.jupyter";
9
- type KernelPick = QuickPickItem & {
10
- kernel: NotebookKernel;
11
- };
12
- type GroupedKernelsPick = QuickPickItem & {
13
- kernels: NotebookKernel[];
14
- source: string;
15
- };
16
- type SourcePick = QuickPickItem & {
17
- action: SourceCommand;
18
- };
19
- type InstallExtensionPick = QuickPickItem & {
20
- extensionIds: string[];
21
- };
22
- type KernelSourceQuickPickItem = QuickPickItem & {
23
- command: NotebookCommand;
24
- documentation?: string;
25
- };
26
- type KernelQuickPickItem = (QuickPickItem & {
27
- autoRun?: boolean;
28
- }) | InstallExtensionPick | KernelPick | GroupedKernelsPick | SourcePick | KernelSourceQuickPickItem;
29
- export type KernelQuickPickContext = {
30
- id: string;
31
- extension: string;
32
- } | {
33
- notebookEditorId: string;
34
- } | {
35
- id: string;
36
- extension: string;
37
- notebookEditorId: string;
38
- } | {
39
- ui?: boolean;
40
- notebookEditor?: NotebookEditorWidget;
41
- };
42
- export declare class NotebookKernelQuickPickService {
43
- protected readonly notebookKernelService: NotebookKernelService;
44
- protected readonly quickInputService: QuickInputService;
45
- protected readonly commandService: CommandService;
46
- protected readonly openerService: OpenerService;
47
- protected readonly notebookKernelHistoryService: NotebookKernelHistoryService;
48
- protected readonly logger: ILogger;
49
- showQuickPick(editor: NotebookModel, wantedId?: string, skipAutoRun?: boolean): Promise<boolean>;
50
- protected getKernelPickerQuickPickItems(matchResult: NotebookKernelMatchResult): QuickPickInput<KernelQuickPickItem>[];
51
- protected selectKernel(notebook: NotebookModel, kernel: NotebookKernel): void;
52
- protected getMatchingResult(notebook: NotebookModel): NotebookKernelMatchResult;
53
- protected handleQuickPick(editor: NotebookModel, pick: KernelQuickPickItem, items: KernelQuickPickItem[]): Promise<boolean>;
54
- protected displaySelectAnotherQuickPick(editor: NotebookModel, kernelListEmpty: boolean): Promise<boolean>;
55
- protected isUri(value: string): boolean;
56
- protected calculateKernelSources(editor: NotebookModel): Promise<QuickPickInput<KernelQuickPickItem>[]>;
57
- protected selectOneKernel(notebook: NotebookModel, source: string, kernels: NotebookKernel[]): Promise<void>;
58
- protected executeCommand<T>(notebook: NotebookModel, command: NotebookCommand): Promise<T | undefined | void>;
59
- }
60
- export {};
61
- //# sourceMappingURL=notebook-kernel-quick-pick-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notebook-kernel-quick-pick-service.d.ts","sourceRoot":"","sources":["../../../src/browser/service/notebook-kernel-quick-pick-service.ts"],"names":[],"mappings":"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"}
@@ -1,425 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NotebookKernelQuickPickService = exports.JUPYTER_EXTENSION_ID = void 0;
4
- const tslib_1 = require("tslib");
5
- // *****************************************************************************
6
- // Copyright (C) 2023 TypeFox and others.
7
- //
8
- // This program and the accompanying materials are made available under the
9
- // terms of the Eclipse Public License v. 2.0 which is available at
10
- // http://www.eclipse.org/legal/epl-2.0.
11
- //
12
- // This Source Code may also be made available under the following Secondary
13
- // Licenses when the conditions for such availability set forth in the Eclipse
14
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
15
- // with the GNU Classpath Exception which is available at
16
- // https://www.gnu.org/software/classpath/license.html.
17
- //
18
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
19
- // *****************************************************************************
20
- /*---------------------------------------------------------------------------------------------
21
- * Copyright (c) Microsoft Corporation. All rights reserved.
22
- * Licensed under the MIT License. See License.txt in the project root for license information.
23
- *--------------------------------------------------------------------------------------------*/
24
- const core_1 = require("@theia/core");
25
- const inversify_1 = require("@theia/core/shared/inversify");
26
- const notebook_kernel_service_1 = require("./notebook-kernel-service");
27
- const browser_1 = require("@theia/core/lib/browser");
28
- const notebook_kernel_history_service_1 = require("./notebook-kernel-history-service");
29
- const common_1 = require("../../common");
30
- const debounce = require("@theia/core/shared/lodash.debounce");
31
- exports.JUPYTER_EXTENSION_ID = 'ms-toolsai.jupyter';
32
- function isKernelPick(item) {
33
- return 'kernel' in item;
34
- }
35
- function isGroupedKernelsPick(item) {
36
- return 'kernels' in item;
37
- }
38
- function isSourcePick(item) {
39
- return 'action' in item;
40
- }
41
- function isKernelSourceQuickPickItem(item) {
42
- return 'command' in item;
43
- }
44
- function supportAutoRun(item) {
45
- return 'autoRun' in item && !!item.autoRun;
46
- }
47
- const KERNEL_PICKER_UPDATE_DEBOUNCE = 200;
48
- function toKernelQuickPick(kernel, selected) {
49
- const res = {
50
- kernel,
51
- label: kernel.label,
52
- description: kernel.description,
53
- detail: kernel.detail
54
- };
55
- if (kernel.id === (selected === null || selected === void 0 ? void 0 : selected.id)) {
56
- if (!res.description) {
57
- res.description = core_1.nls.localizeByDefault('Currently Selected');
58
- }
59
- else {
60
- res.description = core_1.nls.localizeByDefault('{0} - Currently Selected', res.description);
61
- }
62
- }
63
- return res;
64
- }
65
- let NotebookKernelQuickPickService = class NotebookKernelQuickPickService {
66
- async showQuickPick(editor, wantedId, skipAutoRun) {
67
- const notebook = editor;
68
- const matchResult = this.getMatchingResult(notebook);
69
- const { selected, all } = matchResult;
70
- let newKernel;
71
- if (wantedId) {
72
- for (const candidate of all) {
73
- if (candidate.id === wantedId) {
74
- newKernel = candidate;
75
- break;
76
- }
77
- }
78
- if (!newKernel) {
79
- console.warn(`wanted kernel DOES NOT EXIST, wanted: ${wantedId}, all: ${all.map(k => k.id)}`);
80
- return false;
81
- }
82
- }
83
- if (newKernel) {
84
- this.selectKernel(notebook, newKernel);
85
- return true;
86
- }
87
- const quickPick = this.quickInputService.createQuickPick();
88
- const quickPickItems = this.getKernelPickerQuickPickItems(matchResult);
89
- if (quickPickItems.length === 1 && supportAutoRun(quickPickItems[0]) && !skipAutoRun) {
90
- return this.handleQuickPick(editor, quickPickItems[0], quickPickItems);
91
- }
92
- quickPick.items = quickPickItems;
93
- quickPick.canSelectMany = false;
94
- quickPick.placeholder = selected
95
- ? core_1.nls.localizeByDefault("Change kernel for '{0}'", 'current') // TODO get label for current notebook from a label provider
96
- : core_1.nls.localizeByDefault("Select kernel for '{0}'", 'current');
97
- quickPick.busy = this.notebookKernelService.getKernelDetectionTasks(notebook).length > 0;
98
- const kernelDetectionTaskListener = this.notebookKernelService.onDidChangeKernelDetectionTasks(() => {
99
- quickPick.busy = this.notebookKernelService.getKernelDetectionTasks(notebook).length > 0;
100
- });
101
- const kernelChangeEventListener = debounce(core_1.Event.any(this.notebookKernelService.onDidChangeSourceActions, this.notebookKernelService.onDidAddKernel, this.notebookKernelService.onDidRemoveKernel, this.notebookKernelService.onDidChangeNotebookAffinity), KERNEL_PICKER_UPDATE_DEBOUNCE)(async () => {
102
- // reset quick pick progress
103
- quickPick.busy = false;
104
- const currentActiveItems = quickPick.activeItems;
105
- const newMatchResult = this.getMatchingResult(notebook);
106
- const newQuickPickItems = this.getKernelPickerQuickPickItems(newMatchResult);
107
- quickPick.keepScrollPosition = true;
108
- // recalculate active items
109
- const activeItems = [];
110
- for (const item of currentActiveItems) {
111
- if (isKernelPick(item)) {
112
- const kernelId = item.kernel.id;
113
- const sameItem = newQuickPickItems.find(pi => isKernelPick(pi) && pi.kernel.id === kernelId);
114
- if (sameItem) {
115
- activeItems.push(sameItem);
116
- }
117
- }
118
- else if (isSourcePick(item)) {
119
- const sameItem = newQuickPickItems.find(pi => isSourcePick(pi) && pi.action.command.id === item.action.command.id);
120
- if (sameItem) {
121
- activeItems.push(sameItem);
122
- }
123
- }
124
- }
125
- quickPick.items = newQuickPickItems;
126
- quickPick.activeItems = activeItems;
127
- }, this);
128
- const pick = await new Promise((resolve, reject) => {
129
- quickPick.onDidAccept(() => {
130
- const item = quickPick.selectedItems[0];
131
- if (item) {
132
- resolve({ selected: item, items: quickPick.items });
133
- }
134
- else {
135
- resolve({ selected: undefined, items: quickPick.items });
136
- }
137
- quickPick.hide();
138
- });
139
- quickPick.onDidHide(() => {
140
- kernelDetectionTaskListener.dispose();
141
- kernelChangeEventListener === null || kernelChangeEventListener === void 0 ? void 0 : kernelChangeEventListener.dispose();
142
- quickPick.dispose();
143
- resolve({ selected: undefined, items: quickPick.items });
144
- });
145
- quickPick.show();
146
- });
147
- if (pick.selected) {
148
- return this.handleQuickPick(editor, pick.selected, pick.items);
149
- }
150
- return false;
151
- }
152
- getKernelPickerQuickPickItems(matchResult) {
153
- const quickPickItems = [];
154
- if (matchResult.selected) {
155
- const kernelItem = toKernelQuickPick(matchResult.selected, matchResult.selected);
156
- quickPickItems.push(kernelItem);
157
- }
158
- // TODO use suggested here when kernel affinity is implemented. For now though show all kernels
159
- matchResult.all.filter(kernel => { var _a; return kernel.id !== ((_a = matchResult.selected) === null || _a === void 0 ? void 0 : _a.id); }).map(kernel => toKernelQuickPick(kernel, matchResult.selected))
160
- .forEach(kernel => {
161
- quickPickItems.push(kernel);
162
- });
163
- const shouldAutoRun = quickPickItems.length === 0;
164
- if (quickPickItems.length > 0) {
165
- quickPickItems.push({
166
- type: 'separator'
167
- });
168
- }
169
- // select another kernel quick pick
170
- quickPickItems.push({
171
- id: 'selectAnother',
172
- label: core_1.nls.localizeByDefault('Select Another Kernel...'),
173
- autoRun: shouldAutoRun
174
- });
175
- return quickPickItems;
176
- }
177
- selectKernel(notebook, kernel) {
178
- this.logger.debug('Selected notebook kernel', {
179
- notebook: notebook.uri.toString(),
180
- kernel: kernel.id
181
- });
182
- const currentInfo = this.notebookKernelService.getMatchingKernel(notebook);
183
- if (currentInfo.selected) {
184
- // there is already a selected kernel
185
- this.notebookKernelHistoryService.addMostRecentKernel(currentInfo.selected);
186
- }
187
- this.notebookKernelService.selectKernelForNotebook(kernel, notebook);
188
- this.notebookKernelHistoryService.addMostRecentKernel(kernel);
189
- }
190
- getMatchingResult(notebook) {
191
- const { selected, all } = this.notebookKernelHistoryService.getKernels(notebook);
192
- const matchingResult = this.notebookKernelService.getMatchingKernel(notebook);
193
- return {
194
- selected: selected,
195
- all: matchingResult.all,
196
- suggestions: all,
197
- hidden: []
198
- };
199
- }
200
- async handleQuickPick(editor, pick, items) {
201
- if (pick.id === 'selectAnother') {
202
- return this.displaySelectAnotherQuickPick(editor, items.length === 1 && items[0] === pick);
203
- }
204
- if (isKernelPick(pick)) {
205
- const newKernel = pick.kernel;
206
- this.selectKernel(editor, newKernel);
207
- return true;
208
- }
209
- if (isSourcePick(pick)) {
210
- this.logger.debug('Selected notebook kernel command', {
211
- notebook: editor.uri.toString(),
212
- command: pick.action.command.id
213
- });
214
- // selected explicitly, it should trigger the execution?
215
- pick.action.run(this.commandService);
216
- }
217
- return true;
218
- }
219
- async displaySelectAnotherQuickPick(editor, kernelListEmpty) {
220
- const notebook = editor;
221
- const disposables = new core_1.DisposableCollection();
222
- const quickPick = this.quickInputService.createQuickPick();
223
- const quickPickItem = await new Promise(resolve => {
224
- // select from kernel sources
225
- quickPick.title = kernelListEmpty ? core_1.nls.localizeByDefault('Select Kernel') : core_1.nls.localizeByDefault('Select Another Kernel');
226
- quickPick.placeholder = core_1.nls.localizeByDefault('Type to choose a kernel source');
227
- quickPick.busy = true;
228
- // quickPick.buttons = [this.quickInputService.backButton];
229
- quickPick.show();
230
- disposables.push(quickPick.onDidTriggerButton(button => {
231
- if (button === this.quickInputService.backButton) {
232
- resolve(button);
233
- }
234
- }));
235
- quickPick.onDidTriggerItemButton(async (e) => {
236
- if (isKernelSourceQuickPickItem(e.item) && e.item.documentation !== undefined) {
237
- const uri = this.isUri(e.item.documentation) ? new core_1.URI(e.item.documentation) : await this.commandService.executeCommand(e.item.documentation);
238
- if (uri) {
239
- (await this.openerService.getOpener(uri, { openExternal: true })).open(uri, { openExternal: true });
240
- }
241
- }
242
- });
243
- disposables.push(quickPick.onDidAccept(async () => {
244
- resolve(quickPick.selectedItems[0]);
245
- }));
246
- disposables.push(quickPick.onDidHide(() => {
247
- resolve(undefined);
248
- }));
249
- this.calculateKernelSources(editor).then(quickPickItems => {
250
- quickPick.items = quickPickItems;
251
- if (quickPick.items.length > 0) {
252
- quickPick.busy = false;
253
- }
254
- });
255
- debounce(core_1.Event.any(this.notebookKernelService.onDidChangeSourceActions, this.notebookKernelService.onDidAddKernel, this.notebookKernelService.onDidRemoveKernel), KERNEL_PICKER_UPDATE_DEBOUNCE)(async () => {
256
- quickPick.busy = true;
257
- const quickPickItems = await this.calculateKernelSources(editor);
258
- quickPick.items = quickPickItems;
259
- quickPick.busy = false;
260
- });
261
- });
262
- quickPick.hide();
263
- disposables.dispose();
264
- if (quickPickItem === this.quickInputService.backButton) {
265
- return this.showQuickPick(editor, undefined, true);
266
- }
267
- if (quickPickItem) {
268
- const selectedKernelPickItem = quickPickItem;
269
- if (isKernelSourceQuickPickItem(selectedKernelPickItem)) {
270
- try {
271
- const selectedKernelId = await this.executeCommand(notebook, selectedKernelPickItem.command);
272
- if (selectedKernelId) {
273
- const { all } = this.getMatchingResult(notebook);
274
- const notebookKernel = all.find(kernel => kernel.id === `ms-toolsai.jupyter/${selectedKernelId}`);
275
- if (notebookKernel) {
276
- this.selectKernel(notebook, notebookKernel);
277
- return true;
278
- }
279
- return true;
280
- }
281
- else {
282
- return this.displaySelectAnotherQuickPick(editor, false);
283
- }
284
- }
285
- catch (ex) {
286
- console.error('Failed to select notebook kernel', ex);
287
- return false;
288
- }
289
- }
290
- else if (isKernelPick(selectedKernelPickItem)) {
291
- this.selectKernel(notebook, selectedKernelPickItem.kernel);
292
- return true;
293
- }
294
- else if (isGroupedKernelsPick(selectedKernelPickItem)) {
295
- await this.selectOneKernel(notebook, selectedKernelPickItem.source, selectedKernelPickItem.kernels);
296
- return true;
297
- }
298
- else if (isSourcePick(selectedKernelPickItem)) {
299
- // selected explicitly, it should trigger the execution?
300
- try {
301
- await selectedKernelPickItem.action.run(this.commandService);
302
- return true;
303
- }
304
- catch (ex) {
305
- console.error('Failed to select notebook kernel', ex);
306
- return false;
307
- }
308
- }
309
- // } else if (isSearchMarketplacePick(selectedKernelPickItem)) {
310
- // await this.showKernelExtension(
311
- // this.paneCompositePartService,
312
- // this.extensionWorkbenchService,
313
- // this.extensionService,
314
- // editor.textModel.viewType,
315
- // []
316
- // );
317
- // return true;
318
- // } else if (isInstallExtensionPick(selectedKernelPickItem)) {
319
- // await this.showKernelExtension(
320
- // this.paneCompositePartService,
321
- // this.extensionWorkbenchService,
322
- // this.extensionService,
323
- // editor.textModel.viewType,
324
- // selectedKernelPickItem.extensionIds,
325
- // );
326
- // return true;
327
- // }
328
- }
329
- return false;
330
- }
331
- isUri(value) {
332
- return /^(?<scheme>\w[\w\d+.-]*):/.test(value);
333
- }
334
- async calculateKernelSources(editor) {
335
- const notebook = editor;
336
- const actions = await this.notebookKernelService.getKernelSourceActionsFromProviders(notebook);
337
- const matchResult = this.getMatchingResult(notebook);
338
- const others = matchResult.all.filter(item => item.extensionId !== exports.JUPYTER_EXTENSION_ID);
339
- const quickPickItems = [];
340
- // group controllers by extension
341
- for (const group of core_1.ArrayUtils.groupBy(others, (a, b) => a.extensionId === b.extensionId ? 0 : 1)) {
342
- const source = group[0].extensionId;
343
- if (group.length > 1) {
344
- quickPickItems.push({
345
- label: source,
346
- kernels: group
347
- });
348
- }
349
- else {
350
- quickPickItems.push({
351
- label: group[0].label,
352
- kernel: group[0]
353
- });
354
- }
355
- }
356
- const validActions = actions.filter(action => action.command);
357
- quickPickItems.push(...validActions.map(action => {
358
- const buttons = action.documentation ? [{
359
- iconClass: (0, browser_1.codicon)('info'),
360
- tooltip: core_1.nls.localizeByDefault('Learn More'),
361
- }] : [];
362
- return {
363
- id: typeof action.command === 'string' ? action.command : action.command.id,
364
- label: action.label,
365
- description: action.description,
366
- command: action.command,
367
- documentation: action.documentation,
368
- buttons
369
- };
370
- }));
371
- return quickPickItems;
372
- }
373
- async selectOneKernel(notebook, source, kernels) {
374
- const quickPickItems = kernels.map(kernel => toKernelQuickPick(kernel, undefined));
375
- const quickPick = this.quickInputService.createQuickPick();
376
- quickPick.items = quickPickItems;
377
- quickPick.canSelectMany = false;
378
- quickPick.title = core_1.nls.localizeByDefault('Select Kernel from {0}', source);
379
- quickPick.onDidAccept(async () => {
380
- if (quickPick.selectedItems && quickPick.selectedItems.length > 0 && isKernelPick(quickPick.selectedItems[0])) {
381
- this.selectKernel(notebook, quickPick.selectedItems[0].kernel);
382
- }
383
- quickPick.hide();
384
- quickPick.dispose();
385
- });
386
- quickPick.onDidHide(() => {
387
- quickPick.dispose();
388
- });
389
- quickPick.show();
390
- }
391
- async executeCommand(notebook, command) {
392
- const args = (command.arguments || []).concat([common_1.NotebookModelResource.create(notebook.uri)]);
393
- return this.commandService.executeCommand(command.id, ...args);
394
- }
395
- };
396
- exports.NotebookKernelQuickPickService = NotebookKernelQuickPickService;
397
- tslib_1.__decorate([
398
- (0, inversify_1.inject)(notebook_kernel_service_1.NotebookKernelService),
399
- tslib_1.__metadata("design:type", notebook_kernel_service_1.NotebookKernelService)
400
- ], NotebookKernelQuickPickService.prototype, "notebookKernelService", void 0);
401
- tslib_1.__decorate([
402
- (0, inversify_1.inject)(core_1.QuickInputService),
403
- tslib_1.__metadata("design:type", Object)
404
- ], NotebookKernelQuickPickService.prototype, "quickInputService", void 0);
405
- tslib_1.__decorate([
406
- (0, inversify_1.inject)(core_1.CommandService),
407
- tslib_1.__metadata("design:type", Object)
408
- ], NotebookKernelQuickPickService.prototype, "commandService", void 0);
409
- tslib_1.__decorate([
410
- (0, inversify_1.inject)(browser_1.OpenerService),
411
- tslib_1.__metadata("design:type", Object)
412
- ], NotebookKernelQuickPickService.prototype, "openerService", void 0);
413
- tslib_1.__decorate([
414
- (0, inversify_1.inject)(notebook_kernel_history_service_1.NotebookKernelHistoryService),
415
- tslib_1.__metadata("design:type", notebook_kernel_history_service_1.NotebookKernelHistoryService)
416
- ], NotebookKernelQuickPickService.prototype, "notebookKernelHistoryService", void 0);
417
- tslib_1.__decorate([
418
- (0, inversify_1.inject)(core_1.ILogger),
419
- (0, inversify_1.named)('notebook'),
420
- tslib_1.__metadata("design:type", Object)
421
- ], NotebookKernelQuickPickService.prototype, "logger", void 0);
422
- exports.NotebookKernelQuickPickService = NotebookKernelQuickPickService = tslib_1.__decorate([
423
- (0, inversify_1.injectable)()
424
- ], NotebookKernelQuickPickService);
425
- //# sourceMappingURL=notebook-kernel-quick-pick-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notebook-kernel-quick-pick-service.js","sourceRoot":"","sources":["../../../src/browser/service/notebook-kernel-quick-pick-service.ts"],"names":[],"mappings":"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"}