@theia/notebook 1.41.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 (188) hide show
  1. package/README.md +30 -0
  2. package/lib/browser/contributions/notebook-actions-contribution.d.ts +27 -0
  3. package/lib/browser/contributions/notebook-actions-contribution.d.ts.map +1 -0
  4. package/lib/browser/contributions/notebook-actions-contribution.js +172 -0
  5. package/lib/browser/contributions/notebook-actions-contribution.js.map +1 -0
  6. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts +30 -0
  7. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts.map +1 -0
  8. package/lib/browser/contributions/notebook-cell-actions-contribution.js +200 -0
  9. package/lib/browser/contributions/notebook-cell-actions-contribution.js.map +1 -0
  10. package/lib/browser/contributions/notebook-color-contribution.d.ts +6 -0
  11. package/lib/browser/contributions/notebook-color-contribution.d.ts.map +1 -0
  12. package/lib/browser/contributions/notebook-color-contribution.js +252 -0
  13. package/lib/browser/contributions/notebook-color-contribution.js.map +1 -0
  14. package/lib/browser/contributions/notebook-context-keys.d.ts +38 -0
  15. package/lib/browser/contributions/notebook-context-keys.d.ts.map +1 -0
  16. package/lib/browser/contributions/notebook-context-keys.js +95 -0
  17. package/lib/browser/contributions/notebook-context-keys.js.map +1 -0
  18. package/lib/browser/index.d.ts +11 -0
  19. package/lib/browser/index.d.ts.map +1 -0
  20. package/lib/browser/index.js +38 -0
  21. package/lib/browser/index.js.map +1 -0
  22. package/lib/browser/notebook-cell-resource-resolver.d.ts +20 -0
  23. package/lib/browser/notebook-cell-resource-resolver.d.ts.map +1 -0
  24. package/lib/browser/notebook-cell-resource-resolver.js +75 -0
  25. package/lib/browser/notebook-cell-resource-resolver.js.map +1 -0
  26. package/lib/browser/notebook-editor-widget-factory.d.ts +17 -0
  27. package/lib/browser/notebook-editor-widget-factory.d.ts.map +1 -0
  28. package/lib/browser/notebook-editor-widget-factory.js +78 -0
  29. package/lib/browser/notebook-editor-widget-factory.js.map +1 -0
  30. package/lib/browser/notebook-editor-widget.d.ts +49 -0
  31. package/lib/browser/notebook-editor-widget.d.ts.map +1 -0
  32. package/lib/browser/notebook-editor-widget.js +150 -0
  33. package/lib/browser/notebook-editor-widget.js.map +1 -0
  34. package/lib/browser/notebook-frontend-module.d.ts +5 -0
  35. package/lib/browser/notebook-frontend-module.d.ts.map +1 -0
  36. package/lib/browser/notebook-frontend-module.js +81 -0
  37. package/lib/browser/notebook-frontend-module.js.map +1 -0
  38. package/lib/browser/notebook-open-handler.d.ts +18 -0
  39. package/lib/browser/notebook-open-handler.d.ts.map +1 -0
  40. package/lib/browser/notebook-open-handler.js +94 -0
  41. package/lib/browser/notebook-open-handler.js.map +1 -0
  42. package/lib/browser/notebook-renderer-registry.d.ts +17 -0
  43. package/lib/browser/notebook-renderer-registry.d.ts.map +1 -0
  44. package/lib/browser/notebook-renderer-registry.js +63 -0
  45. package/lib/browser/notebook-renderer-registry.js.map +1 -0
  46. package/lib/browser/notebook-type-registry.d.ts +7 -0
  47. package/lib/browser/notebook-type-registry.d.ts.map +1 -0
  48. package/lib/browser/notebook-type-registry.js +42 -0
  49. package/lib/browser/notebook-type-registry.js.map +1 -0
  50. package/lib/browser/renderers/cell-output-webview.d.ts +12 -0
  51. package/lib/browser/renderers/cell-output-webview.d.ts.map +1 -0
  52. package/lib/browser/renderers/cell-output-webview.js +20 -0
  53. package/lib/browser/renderers/cell-output-webview.js.map +1 -0
  54. package/lib/browser/service/notebook-cell-context-manager.d.ts +16 -0
  55. package/lib/browser/service/notebook-cell-context-manager.d.ts.map +1 -0
  56. package/lib/browser/service/notebook-cell-context-manager.js +83 -0
  57. package/lib/browser/service/notebook-cell-context-manager.js.map +1 -0
  58. package/lib/browser/service/notebook-editor-service.d.ts +22 -0
  59. package/lib/browser/service/notebook-editor-service.d.ts.map +1 -0
  60. package/lib/browser/service/notebook-editor-service.js +95 -0
  61. package/lib/browser/service/notebook-editor-service.js.map +1 -0
  62. package/lib/browser/service/notebook-execution-service.d.ts +25 -0
  63. package/lib/browser/service/notebook-execution-service.d.ts.map +1 -0
  64. package/lib/browser/service/notebook-execution-service.js +140 -0
  65. package/lib/browser/service/notebook-execution-service.js.map +1 -0
  66. package/lib/browser/service/notebook-execution-state-service.d.ts +94 -0
  67. package/lib/browser/service/notebook-execution-state-service.d.ts.map +1 -0
  68. package/lib/browser/service/notebook-execution-state-service.js +250 -0
  69. package/lib/browser/service/notebook-execution-state-service.js.map +1 -0
  70. package/lib/browser/service/notebook-kernel-history-service.d.ts +23 -0
  71. package/lib/browser/service/notebook-kernel-history-service.d.ts.map +1 -0
  72. package/lib/browser/service/notebook-kernel-history-service.js +109 -0
  73. package/lib/browser/service/notebook-kernel-history-service.js.map +1 -0
  74. package/lib/browser/service/notebook-kernel-quick-pick-service.d.ts +65 -0
  75. package/lib/browser/service/notebook-kernel-quick-pick-service.d.ts.map +1 -0
  76. package/lib/browser/service/notebook-kernel-quick-pick-service.js +430 -0
  77. package/lib/browser/service/notebook-kernel-quick-pick-service.js.map +1 -0
  78. package/lib/browser/service/notebook-kernel-service.d.ts +112 -0
  79. package/lib/browser/service/notebook-kernel-service.d.ts.map +1 -0
  80. package/lib/browser/service/notebook-kernel-service.js +274 -0
  81. package/lib/browser/service/notebook-kernel-service.js.map +1 -0
  82. package/lib/browser/service/notebook-model-resolver-service.d.ts +26 -0
  83. package/lib/browser/service/notebook-model-resolver-service.d.ts.map +1 -0
  84. package/lib/browser/service/notebook-model-resolver-service.js +139 -0
  85. package/lib/browser/service/notebook-model-resolver-service.js.map +1 -0
  86. package/lib/browser/service/notebook-renderer-messaging-service.d.ts +30 -0
  87. package/lib/browser/service/notebook-renderer-messaging-service.d.ts.map +1 -0
  88. package/lib/browser/service/notebook-renderer-messaging-service.js +94 -0
  89. package/lib/browser/service/notebook-renderer-messaging-service.js.map +1 -0
  90. package/lib/browser/service/notebook-service.d.ts +64 -0
  91. package/lib/browser/service/notebook-service.d.ts.map +1 -0
  92. package/lib/browser/service/notebook-service.js +162 -0
  93. package/lib/browser/service/notebook-service.js.map +1 -0
  94. package/lib/browser/view/notebook-cell-editor.d.ts +26 -0
  95. package/lib/browser/view/notebook-cell-editor.d.ts.map +1 -0
  96. package/lib/browser/view/notebook-cell-editor.js +79 -0
  97. package/lib/browser/view/notebook-cell-editor.js.map +1 -0
  98. package/lib/browser/view/notebook-cell-list-view.d.ts +43 -0
  99. package/lib/browser/view/notebook-cell-list-view.d.ts.map +1 -0
  100. package/lib/browser/view/notebook-cell-list-view.js +111 -0
  101. package/lib/browser/view/notebook-cell-list-view.js.map +1 -0
  102. package/lib/browser/view/notebook-cell-toolbar-factory.d.ts +25 -0
  103. package/lib/browser/view/notebook-cell-toolbar-factory.d.ts.map +1 -0
  104. package/lib/browser/view/notebook-cell-toolbar-factory.js +93 -0
  105. package/lib/browser/view/notebook-cell-toolbar-factory.js.map +1 -0
  106. package/lib/browser/view/notebook-cell-toolbar.d.ts +25 -0
  107. package/lib/browser/view/notebook-cell-toolbar.d.ts.map +1 -0
  108. package/lib/browser/view/notebook-cell-toolbar.js +50 -0
  109. package/lib/browser/view/notebook-cell-toolbar.js.map +1 -0
  110. package/lib/browser/view/notebook-code-cell-view.d.ts +47 -0
  111. package/lib/browser/view/notebook-code-cell-view.d.ts.map +1 -0
  112. package/lib/browser/view/notebook-code-cell-view.js +166 -0
  113. package/lib/browser/view/notebook-code-cell-view.js.map +1 -0
  114. package/lib/browser/view/notebook-main-toolbar.d.ts +31 -0
  115. package/lib/browser/view/notebook-main-toolbar.d.ts.map +1 -0
  116. package/lib/browser/view/notebook-main-toolbar.js +118 -0
  117. package/lib/browser/view/notebook-main-toolbar.js.map +1 -0
  118. package/lib/browser/view/notebook-markdown-cell-view.d.ts +12 -0
  119. package/lib/browser/view/notebook-markdown-cell-view.d.ts.map +1 -0
  120. package/lib/browser/view/notebook-markdown-cell-view.js +70 -0
  121. package/lib/browser/view/notebook-markdown-cell-view.js.map +1 -0
  122. package/lib/browser/view-model/notebook-cell-model.d.ts +74 -0
  123. package/lib/browser/view-model/notebook-cell-model.d.ts.map +1 -0
  124. package/lib/browser/view-model/notebook-cell-model.js +226 -0
  125. package/lib/browser/view-model/notebook-cell-model.js.map +1 -0
  126. package/lib/browser/view-model/notebook-cell-output-model.d.ts +19 -0
  127. package/lib/browser/view-model/notebook-cell-output-model.d.ts.map +1 -0
  128. package/lib/browser/view-model/notebook-cell-output-model.js +61 -0
  129. package/lib/browser/view-model/notebook-cell-output-model.js.map +1 -0
  130. package/lib/browser/view-model/notebook-model.d.ts +59 -0
  131. package/lib/browser/view-model/notebook-model.d.ts.map +1 -0
  132. package/lib/browser/view-model/notebook-model.js +315 -0
  133. package/lib/browser/view-model/notebook-model.js.map +1 -0
  134. package/lib/common/index.d.ts +3 -0
  135. package/lib/common/index.d.ts.map +1 -0
  136. package/lib/common/index.js +30 -0
  137. package/lib/common/index.js.map +1 -0
  138. package/lib/common/notebook-common.d.ts +344 -0
  139. package/lib/common/notebook-common.d.ts.map +1 -0
  140. package/lib/common/notebook-common.js +112 -0
  141. package/lib/common/notebook-common.js.map +1 -0
  142. package/lib/common/notebook-protocol.d.ts +21 -0
  143. package/lib/common/notebook-protocol.d.ts.map +1 -0
  144. package/lib/common/notebook-protocol.js +18 -0
  145. package/lib/common/notebook-protocol.js.map +1 -0
  146. package/lib/common/notebook-range.d.ts +14 -0
  147. package/lib/common/notebook-range.d.ts.map +1 -0
  148. package/lib/common/notebook-range.js +18 -0
  149. package/lib/common/notebook-range.js.map +1 -0
  150. package/package.json +52 -0
  151. package/src/browser/contributions/notebook-actions-contribution.ts +171 -0
  152. package/src/browser/contributions/notebook-cell-actions-contribution.ts +204 -0
  153. package/src/browser/contributions/notebook-color-contribution.ts +268 -0
  154. package/src/browser/contributions/notebook-context-keys.ts +99 -0
  155. package/src/browser/index.ts +26 -0
  156. package/src/browser/notebook-cell-resource-resolver.ts +79 -0
  157. package/src/browser/notebook-editor-widget-factory.ts +70 -0
  158. package/src/browser/notebook-editor-widget.tsx +157 -0
  159. package/src/browser/notebook-frontend-module.ts +95 -0
  160. package/src/browser/notebook-open-handler.ts +87 -0
  161. package/src/browser/notebook-renderer-registry.ts +62 -0
  162. package/src/browser/notebook-type-registry.ts +30 -0
  163. package/src/browser/renderers/cell-output-webview.ts +32 -0
  164. package/src/browser/service/notebook-cell-context-manager.ts +70 -0
  165. package/src/browser/service/notebook-editor-service.ts +86 -0
  166. package/src/browser/service/notebook-execution-service.ts +139 -0
  167. package/src/browser/service/notebook-execution-state-service.ts +322 -0
  168. package/src/browser/service/notebook-kernel-history-service.ts +109 -0
  169. package/src/browser/service/notebook-kernel-quick-pick-service.ts +494 -0
  170. package/src/browser/service/notebook-kernel-service.ts +357 -0
  171. package/src/browser/service/notebook-model-resolver-service.ts +141 -0
  172. package/src/browser/service/notebook-renderer-messaging-service.ts +111 -0
  173. package/src/browser/service/notebook-service.ts +178 -0
  174. package/src/browser/style/index.css +236 -0
  175. package/src/browser/view/notebook-cell-editor.tsx +97 -0
  176. package/src/browser/view/notebook-cell-list-view.tsx +171 -0
  177. package/src/browser/view/notebook-cell-toolbar-factory.tsx +91 -0
  178. package/src/browser/view/notebook-cell-toolbar.tsx +70 -0
  179. package/src/browser/view/notebook-code-cell-view.tsx +190 -0
  180. package/src/browser/view/notebook-main-toolbar.tsx +115 -0
  181. package/src/browser/view/notebook-markdown-cell-view.tsx +73 -0
  182. package/src/browser/view-model/notebook-cell-model.ts +271 -0
  183. package/src/browser/view-model/notebook-cell-output-model.ts +69 -0
  184. package/src/browser/view-model/notebook-model.ts +372 -0
  185. package/src/common/index.ts +18 -0
  186. package/src/common/notebook-common.ts +462 -0
  187. package/src/common/notebook-protocol.ts +35 -0
  188. package/src/common/notebook-range.ts +30 -0
@@ -0,0 +1,430 @@
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 __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
22
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
23
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
24
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
25
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
26
+ };
27
+ var __metadata = (this && this.__metadata) || function (k, v) {
28
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
29
+ };
30
+ Object.defineProperty(exports, "__esModule", { value: true });
31
+ exports.KernelPickerMRUStrategy = exports.NotebookKernelQuickPickServiceImpl = exports.NotebookKernelQuickPickService = exports.JUPYTER_EXTENSION_ID = void 0;
32
+ const core_1 = require("@theia/core");
33
+ const inversify_1 = require("@theia/core/shared/inversify");
34
+ const notebook_kernel_service_1 = require("./notebook-kernel-service");
35
+ const browser_1 = require("@theia/core/lib/browser");
36
+ const notebook_kernel_history_service_1 = require("./notebook-kernel-history-service");
37
+ const debounce = require("@theia/core/shared/lodash.debounce");
38
+ exports.JUPYTER_EXTENSION_ID = 'ms-toolsai.jupyter';
39
+ exports.NotebookKernelQuickPickService = Symbol('NotebookKernelQuickPickService');
40
+ function isKernelPick(item) {
41
+ return 'kernel' in item;
42
+ }
43
+ function isGroupedKernelsPick(item) {
44
+ return 'kernels' in item;
45
+ }
46
+ function isSourcePick(item) {
47
+ return 'action' in item;
48
+ }
49
+ function isKernelSourceQuickPickItem(item) {
50
+ return 'command' in item;
51
+ }
52
+ function supportAutoRun(item) {
53
+ return 'autoRun' in item && !!item.autoRun;
54
+ }
55
+ const KERNEL_PICKER_UPDATE_DEBOUNCE = 200;
56
+ function toKernelQuickPick(kernel, selected) {
57
+ const res = {
58
+ kernel,
59
+ label: kernel.label,
60
+ description: kernel.description,
61
+ detail: kernel.detail
62
+ };
63
+ if (kernel.id === (selected === null || selected === void 0 ? void 0 : selected.id)) {
64
+ if (!res.description) {
65
+ res.description = core_1.nls.localizeByDefault('Currently Selected');
66
+ }
67
+ else {
68
+ res.description = core_1.nls.localizeByDefault('{0} - Currently Selected', res.description);
69
+ }
70
+ }
71
+ return res;
72
+ }
73
+ let NotebookKernelQuickPickServiceImpl = class NotebookKernelQuickPickServiceImpl {
74
+ async showQuickPick(editor, wantedId, skipAutoRun) {
75
+ const notebook = editor;
76
+ const matchResult = this.getMatchingResult(notebook);
77
+ const { selected, all } = matchResult;
78
+ let newKernel;
79
+ if (wantedId) {
80
+ for (const candidate of all) {
81
+ if (candidate.id === wantedId) {
82
+ newKernel = candidate;
83
+ break;
84
+ }
85
+ }
86
+ if (!newKernel) {
87
+ console.warn(`wanted kernel DOES NOT EXIST, wanted: ${wantedId}, all: ${all.map(k => k.id)}`);
88
+ return false;
89
+ }
90
+ }
91
+ if (newKernel) {
92
+ this.selectKernel(notebook, newKernel);
93
+ return true;
94
+ }
95
+ const quickPick = this.quickInputService.createQuickPick();
96
+ const quickPickItems = this.getKernelPickerQuickPickItems(matchResult);
97
+ if (quickPickItems.length === 1 && supportAutoRun(quickPickItems[0]) && !skipAutoRun) {
98
+ return this.handleQuickPick(editor, quickPickItems[0], quickPickItems);
99
+ }
100
+ quickPick.items = quickPickItems;
101
+ quickPick.canSelectMany = false;
102
+ quickPick.placeholder = selected
103
+ ? core_1.nls.localizeByDefault("Change kernel for '{0}'", 'current') // TODO get label for current notebook from a label provider
104
+ : core_1.nls.localizeByDefault("Select kernel for '{0}'", 'current');
105
+ quickPick.busy = this.notebookKernelService.getKernelDetectionTasks(notebook).length > 0;
106
+ const kernelDetectionTaskListener = this.notebookKernelService.onDidChangeKernelDetectionTasks(() => {
107
+ quickPick.busy = this.notebookKernelService.getKernelDetectionTasks(notebook).length > 0;
108
+ });
109
+ const kernelChangeEventListener = debounce(core_1.Event.any(this.notebookKernelService.onDidChangeSourceActions, this.notebookKernelService.onDidAddKernel, this.notebookKernelService.onDidRemoveKernel, this.notebookKernelService.onDidChangeNotebookAffinity), KERNEL_PICKER_UPDATE_DEBOUNCE)(async () => {
110
+ // reset quick pick progress
111
+ quickPick.busy = false;
112
+ const currentActiveItems = quickPick.activeItems;
113
+ const newMatchResult = this.getMatchingResult(notebook);
114
+ const newQuickPickItems = this.getKernelPickerQuickPickItems(newMatchResult);
115
+ quickPick.keepScrollPosition = true;
116
+ // recalculate active items
117
+ const activeItems = [];
118
+ for (const item of currentActiveItems) {
119
+ if (isKernelPick(item)) {
120
+ const kernelId = item.kernel.id;
121
+ const sameItem = newQuickPickItems.find(pi => isKernelPick(pi) && pi.kernel.id === kernelId);
122
+ if (sameItem) {
123
+ activeItems.push(sameItem);
124
+ }
125
+ }
126
+ else if (isSourcePick(item)) {
127
+ const sameItem = newQuickPickItems.find(pi => isSourcePick(pi) && pi.action.command.id === item.action.command.id);
128
+ if (sameItem) {
129
+ activeItems.push(sameItem);
130
+ }
131
+ }
132
+ }
133
+ quickPick.items = newQuickPickItems;
134
+ quickPick.activeItems = activeItems;
135
+ }, this);
136
+ const pick = await new Promise((resolve, reject) => {
137
+ quickPick.onDidAccept(() => {
138
+ const item = quickPick.selectedItems[0];
139
+ if (item) {
140
+ resolve({ selected: item, items: quickPick.items });
141
+ }
142
+ else {
143
+ resolve({ selected: undefined, items: quickPick.items });
144
+ }
145
+ quickPick.hide();
146
+ });
147
+ quickPick.onDidHide(() => {
148
+ kernelDetectionTaskListener.dispose();
149
+ kernelChangeEventListener === null || kernelChangeEventListener === void 0 ? void 0 : kernelChangeEventListener.dispose();
150
+ quickPick.dispose();
151
+ resolve({ selected: undefined, items: quickPick.items });
152
+ });
153
+ quickPick.show();
154
+ });
155
+ if (pick.selected) {
156
+ return this.handleQuickPick(editor, pick.selected, pick.items);
157
+ }
158
+ return false;
159
+ }
160
+ getMatchingResult(notebook) {
161
+ return this.notebookKernelService.getMatchingKernel(notebook);
162
+ }
163
+ async handleQuickPick(editor, pick, quickPickItems) {
164
+ if (isKernelPick(pick)) {
165
+ const newKernel = pick.kernel;
166
+ this.selectKernel(editor, newKernel);
167
+ return true;
168
+ }
169
+ if (isSourcePick(pick)) {
170
+ // selected explicitly, it should trigger the execution?
171
+ pick.action.run();
172
+ }
173
+ return true;
174
+ }
175
+ selectKernel(notebook, kernel) {
176
+ this.notebookKernelService.selectKernelForNotebook(kernel, notebook);
177
+ }
178
+ };
179
+ __decorate([
180
+ (0, inversify_1.inject)(notebook_kernel_service_1.NotebookKernelService),
181
+ __metadata("design:type", notebook_kernel_service_1.NotebookKernelService)
182
+ ], NotebookKernelQuickPickServiceImpl.prototype, "notebookKernelService", void 0);
183
+ __decorate([
184
+ (0, inversify_1.inject)(core_1.QuickInputService),
185
+ __metadata("design:type", Object)
186
+ ], NotebookKernelQuickPickServiceImpl.prototype, "quickInputService", void 0);
187
+ __decorate([
188
+ (0, inversify_1.inject)(core_1.CommandService),
189
+ __metadata("design:type", Object)
190
+ ], NotebookKernelQuickPickServiceImpl.prototype, "commandService", void 0);
191
+ NotebookKernelQuickPickServiceImpl = __decorate([
192
+ (0, inversify_1.injectable)()
193
+ ], NotebookKernelQuickPickServiceImpl);
194
+ exports.NotebookKernelQuickPickServiceImpl = NotebookKernelQuickPickServiceImpl;
195
+ let KernelPickerMRUStrategy = class KernelPickerMRUStrategy extends NotebookKernelQuickPickServiceImpl {
196
+ getKernelPickerQuickPickItems(matchResult) {
197
+ const quickPickItems = [];
198
+ if (matchResult.selected) {
199
+ const kernelItem = toKernelQuickPick(matchResult.selected, matchResult.selected);
200
+ quickPickItems.push(kernelItem);
201
+ }
202
+ // TODO use suggested here when kernel affinity is implemented. For now though show all kernels
203
+ 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))
204
+ .forEach(kernel => {
205
+ quickPickItems.push(kernel);
206
+ });
207
+ const shouldAutoRun = quickPickItems.length === 0;
208
+ if (quickPickItems.length > 0) {
209
+ quickPickItems.push({
210
+ type: 'separator'
211
+ });
212
+ }
213
+ // select another kernel quick pick
214
+ quickPickItems.push({
215
+ id: 'selectAnother',
216
+ label: core_1.nls.localizeByDefault('Select Another Kernel...'),
217
+ autoRun: shouldAutoRun
218
+ });
219
+ return quickPickItems;
220
+ }
221
+ selectKernel(notebook, kernel) {
222
+ const currentInfo = this.notebookKernelService.getMatchingKernel(notebook);
223
+ if (currentInfo.selected) {
224
+ // there is already a selected kernel
225
+ this.notebookKernelHistoryService.addMostRecentKernel(currentInfo.selected);
226
+ }
227
+ super.selectKernel(notebook, kernel);
228
+ this.notebookKernelHistoryService.addMostRecentKernel(kernel);
229
+ }
230
+ getMatchingResult(notebook) {
231
+ const { selected, all } = this.notebookKernelHistoryService.getKernels(notebook);
232
+ const matchingResult = this.notebookKernelService.getMatchingKernel(notebook);
233
+ return {
234
+ selected: selected,
235
+ all: matchingResult.all,
236
+ suggestions: all,
237
+ hidden: []
238
+ };
239
+ }
240
+ async handleQuickPick(editor, pick, items) {
241
+ if (pick.id === 'selectAnother') {
242
+ return this.displaySelectAnotherQuickPick(editor, items.length === 1 && items[0] === pick);
243
+ }
244
+ return super.handleQuickPick(editor, pick, items);
245
+ }
246
+ async displaySelectAnotherQuickPick(editor, kernelListEmpty) {
247
+ const notebook = editor;
248
+ const disposables = new core_1.DisposableCollection();
249
+ const quickPick = this.quickInputService.createQuickPick();
250
+ const quickPickItem = await new Promise(resolve => {
251
+ // select from kernel sources
252
+ quickPick.title = kernelListEmpty ? core_1.nls.localizeByDefault('Select Kernel') : core_1.nls.localizeByDefault('Select Another Kernel');
253
+ quickPick.placeholder = core_1.nls.localizeByDefault('Type to choose a kernel source');
254
+ quickPick.busy = true;
255
+ // quickPick.buttons = [this.quickInputService.backButton];
256
+ quickPick.show();
257
+ disposables.push(quickPick.onDidTriggerButton(button => {
258
+ if (button === this.quickInputService.backButton) {
259
+ resolve(button);
260
+ }
261
+ }));
262
+ quickPick.onDidTriggerItemButton(async (e) => {
263
+ if (isKernelSourceQuickPickItem(e.item) && e.item.documentation !== undefined) {
264
+ const uri = core_1.URI.isUri(e.item.documentation) ? new core_1.URI(e.item.documentation) : await this.commandService.executeCommand(e.item.documentation);
265
+ if (uri) {
266
+ (await this.openerService.getOpener(uri, { openExternal: true })).open(uri, { openExternal: true });
267
+ }
268
+ }
269
+ });
270
+ disposables.push(quickPick.onDidAccept(async () => {
271
+ resolve(quickPick.selectedItems[0]);
272
+ }));
273
+ disposables.push(quickPick.onDidHide(() => {
274
+ resolve(undefined);
275
+ }));
276
+ this.calculateKernelSources(editor).then(quickPickItems => {
277
+ quickPick.items = quickPickItems;
278
+ if (quickPick.items.length > 0) {
279
+ quickPick.busy = false;
280
+ }
281
+ });
282
+ debounce(core_1.Event.any(this.notebookKernelService.onDidChangeSourceActions, this.notebookKernelService.onDidAddKernel, this.notebookKernelService.onDidRemoveKernel), KERNEL_PICKER_UPDATE_DEBOUNCE)(async () => {
283
+ quickPick.busy = true;
284
+ const quickPickItems = await this.calculateKernelSources(editor);
285
+ quickPick.items = quickPickItems;
286
+ quickPick.busy = false;
287
+ });
288
+ });
289
+ quickPick.hide();
290
+ disposables.dispose();
291
+ if (quickPickItem === this.quickInputService.backButton) {
292
+ return this.showQuickPick(editor, undefined, true);
293
+ }
294
+ if (quickPickItem) {
295
+ const selectedKernelPickItem = quickPickItem;
296
+ if (isKernelSourceQuickPickItem(selectedKernelPickItem)) {
297
+ try {
298
+ const selectedKernelId = await this.executeCommand(notebook, selectedKernelPickItem.command);
299
+ if (selectedKernelId) {
300
+ const { all } = this.getMatchingResult(notebook);
301
+ const notebookKernel = all.find(kernel => kernel.id === `ms-toolsai.jupyter/${selectedKernelId}`);
302
+ if (notebookKernel) {
303
+ this.selectKernel(notebook, notebookKernel);
304
+ return true;
305
+ }
306
+ return true;
307
+ }
308
+ else {
309
+ return this.displaySelectAnotherQuickPick(editor, false);
310
+ }
311
+ }
312
+ catch (ex) {
313
+ return false;
314
+ }
315
+ }
316
+ else if (isKernelPick(selectedKernelPickItem)) {
317
+ this.selectKernel(notebook, selectedKernelPickItem.kernel);
318
+ return true;
319
+ }
320
+ else if (isGroupedKernelsPick(selectedKernelPickItem)) {
321
+ await this.selectOneKernel(notebook, selectedKernelPickItem.source, selectedKernelPickItem.kernels);
322
+ return true;
323
+ }
324
+ else if (isSourcePick(selectedKernelPickItem)) {
325
+ // selected explicilty, it should trigger the execution?
326
+ try {
327
+ await selectedKernelPickItem.action.run();
328
+ return true;
329
+ }
330
+ catch (ex) {
331
+ return false;
332
+ }
333
+ }
334
+ // } else if (isSearchMarketplacePick(selectedKernelPickItem)) {
335
+ // await this.showKernelExtension(
336
+ // this.paneCompositePartService,
337
+ // this.extensionWorkbenchService,
338
+ // this.extensionService,
339
+ // editor.textModel.viewType,
340
+ // []
341
+ // );
342
+ // return true;
343
+ // } else if (isInstallExtensionPick(selectedKernelPickItem)) {
344
+ // await this.showKernelExtension(
345
+ // this.paneCompositePartService,
346
+ // this.extensionWorkbenchService,
347
+ // this.extensionService,
348
+ // editor.textModel.viewType,
349
+ // selectedKernelPickItem.extensionIds,
350
+ // );
351
+ // return true;
352
+ // }
353
+ }
354
+ return false;
355
+ }
356
+ async calculateKernelSources(editor) {
357
+ const notebook = editor;
358
+ const actions = await this.notebookKernelService.getKernelSourceActionsFromProviders(notebook);
359
+ const matchResult = this.getMatchingResult(notebook);
360
+ const others = matchResult.all.filter(item => item.extension !== exports.JUPYTER_EXTENSION_ID);
361
+ const quickPickItems = [];
362
+ // group controllers by extension
363
+ for (const group of core_1.ArrayUtils.groupBy(others, (a, b) => a.extension === b.extension ? 0 : 1)) {
364
+ const source = group[0].extension;
365
+ if (group.length > 1) {
366
+ quickPickItems.push({
367
+ label: source,
368
+ kernels: group
369
+ });
370
+ }
371
+ else {
372
+ quickPickItems.push({
373
+ label: group[0].label,
374
+ kernel: group[0]
375
+ });
376
+ }
377
+ }
378
+ const validActions = actions.filter(action => action.command);
379
+ quickPickItems.push(...validActions.map(action => {
380
+ const buttons = action.documentation ? [{
381
+ iconClass: (0, browser_1.codicon)('info'),
382
+ tooltip: core_1.nls.localizeByDefault('Learn More'),
383
+ }] : [];
384
+ return {
385
+ id: typeof action.command === 'string' ? action.command : action.command.id,
386
+ label: action.label,
387
+ description: action.description,
388
+ command: action.command,
389
+ documentation: action.documentation,
390
+ buttons
391
+ };
392
+ }));
393
+ return quickPickItems;
394
+ }
395
+ async selectOneKernel(notebook, source, kernels) {
396
+ const quickPickItems = kernels.map(kernel => toKernelQuickPick(kernel, undefined));
397
+ const quickPick = this.quickInputService.createQuickPick();
398
+ quickPick.items = quickPickItems;
399
+ quickPick.canSelectMany = false;
400
+ quickPick.title = core_1.nls.localizeByDefault('Select Kernel from {0}', source);
401
+ quickPick.onDidAccept(async () => {
402
+ if (quickPick.selectedItems && quickPick.selectedItems.length > 0 && isKernelPick(quickPick.selectedItems[0])) {
403
+ this.selectKernel(notebook, quickPick.selectedItems[0].kernel);
404
+ }
405
+ quickPick.hide();
406
+ quickPick.dispose();
407
+ });
408
+ quickPick.onDidHide(() => {
409
+ quickPick.dispose();
410
+ });
411
+ quickPick.show();
412
+ }
413
+ async executeCommand(notebook, command) {
414
+ const id = typeof command === 'string' ? command : command.id;
415
+ return this.commandService.executeCommand(id, { uri: notebook.uri });
416
+ }
417
+ };
418
+ __decorate([
419
+ (0, inversify_1.inject)(browser_1.OpenerService),
420
+ __metadata("design:type", Object)
421
+ ], KernelPickerMRUStrategy.prototype, "openerService", void 0);
422
+ __decorate([
423
+ (0, inversify_1.inject)(notebook_kernel_history_service_1.NotebookKernelHistoryService),
424
+ __metadata("design:type", notebook_kernel_history_service_1.NotebookKernelHistoryService)
425
+ ], KernelPickerMRUStrategy.prototype, "notebookKernelHistoryService", void 0);
426
+ KernelPickerMRUStrategy = __decorate([
427
+ (0, inversify_1.injectable)()
428
+ ], KernelPickerMRUStrategy);
429
+ exports.KernelPickerMRUStrategy = KernelPickerMRUStrategy;
430
+ //# sourceMappingURL=notebook-kernel-quick-pick-service.js.map
@@ -0,0 +1 @@
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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"}
@@ -0,0 +1,112 @@
1
+ import { Command, CommandRegistry, Disposable, Emitter, Event, URI } from '@theia/core';
2
+ import { StorageService } from '@theia/core/lib/browser';
3
+ import { NotebookKernelSourceAction } from '../../common';
4
+ import { NotebookModel } from '../view-model/notebook-model';
5
+ import { NotebookService } from './notebook-service';
6
+ export interface SelectedNotebookKernelChangeEvent {
7
+ notebook: URI;
8
+ oldKernel: string | undefined;
9
+ newKernel: string | undefined;
10
+ }
11
+ export interface NotebookKernelMatchResult {
12
+ readonly selected: NotebookKernel | undefined;
13
+ readonly suggestions: NotebookKernel[];
14
+ readonly all: NotebookKernel[];
15
+ readonly hidden: NotebookKernel[];
16
+ }
17
+ export interface NotebookKernelChangeEvent {
18
+ label?: true;
19
+ description?: true;
20
+ detail?: true;
21
+ supportedLanguages?: true;
22
+ hasExecutionOrder?: true;
23
+ hasInterruptHandler?: true;
24
+ }
25
+ export interface NotebookKernel {
26
+ readonly id: string;
27
+ readonly viewType: string;
28
+ readonly onDidChange: Event<Readonly<NotebookKernelChangeEvent>>;
29
+ readonly extension: string;
30
+ readonly localResourceRoot: URI;
31
+ readonly preloadUris: URI[];
32
+ readonly preloadProvides: string[];
33
+ label: string;
34
+ description?: string;
35
+ detail?: string;
36
+ supportedLanguages: string[];
37
+ implementsInterrupt?: boolean;
38
+ implementsExecutionOrder?: boolean;
39
+ executeNotebookCellsRequest(uri: URI, cellHandles: number[]): Promise<void>;
40
+ cancelNotebookCellExecution(uri: URI, cellHandles: number[]): Promise<void>;
41
+ }
42
+ export declare const enum ProxyKernelState {
43
+ Disconnected = 1,
44
+ Connected = 2,
45
+ Initializing = 3
46
+ }
47
+ export interface INotebookProxyKernelChangeEvent extends NotebookKernelChangeEvent {
48
+ connectionState?: true;
49
+ }
50
+ export interface NotebookKernelDetectionTask {
51
+ readonly notebookType: string;
52
+ }
53
+ export interface NotebookTextModelLike {
54
+ uri: URI;
55
+ viewType: string;
56
+ }
57
+ export interface NotebookSourceActionChangeEvent {
58
+ notebook?: URI;
59
+ viewType: string;
60
+ }
61
+ export interface KernelSourceActionProvider {
62
+ readonly viewType: string;
63
+ onDidChangeSourceActions?: Event<void>;
64
+ provideKernelSourceActions(): Promise<NotebookKernelSourceAction[]>;
65
+ }
66
+ export declare class SourceCommand implements Disposable {
67
+ readonly commandRegistry: CommandRegistry;
68
+ readonly command: Command;
69
+ readonly model: NotebookTextModelLike;
70
+ readonly isPrimary: boolean;
71
+ execution: Promise<void> | undefined;
72
+ protected readonly onDidChangeStateEmitter: Emitter<void>;
73
+ readonly onDidChangeState: Event<void>;
74
+ constructor(commandRegistry: CommandRegistry, command: Command, model: NotebookTextModelLike, isPrimary: boolean);
75
+ run(): Promise<void>;
76
+ private runCommand;
77
+ dispose(): void;
78
+ }
79
+ export declare class NotebookKernelService implements Disposable {
80
+ protected notebookService: NotebookService;
81
+ protected storageService: StorageService;
82
+ private readonly kernels;
83
+ private notebookBindings;
84
+ private readonly kernelDetectionTasks;
85
+ private readonly onDidChangeKernelDetectionTasksEmitter;
86
+ readonly onDidChangeKernelDetectionTasks: Event<string>;
87
+ private readonly onDidChangeSourceActionsEmitter;
88
+ private readonly kernelSourceActionProviders;
89
+ readonly onDidChangeSourceActions: Event<NotebookSourceActionChangeEvent>;
90
+ private readonly onDidAddKernelEmitter;
91
+ readonly onDidAddKernel: Event<NotebookKernel>;
92
+ private readonly onDidRemoveKernelEmitter;
93
+ readonly onDidRemoveKernel: Event<NotebookKernel>;
94
+ private readonly onDidChangeSelectedNotebookKernelBindingEmitter;
95
+ readonly onDidChangeSelectedKernel: Event<SelectedNotebookKernelChangeEvent>;
96
+ private readonly onDidChangeNotebookAffinityEmitter;
97
+ readonly onDidChangeNotebookAffinity: Event<void>;
98
+ init(): void;
99
+ registerKernel(kernel: NotebookKernel): Disposable;
100
+ getMatchingKernel(notebook: NotebookTextModelLike): NotebookKernelMatchResult;
101
+ selectKernelForNotebook(kernel: NotebookKernel | undefined, notebook: NotebookTextModelLike): void;
102
+ getSelectedOrSuggestedKernel(notebook: NotebookModel): NotebookKernel | undefined;
103
+ getKernel(id: string): NotebookKernel | undefined;
104
+ private static score;
105
+ private tryAutoBindNotebook;
106
+ registerNotebookKernelDetectionTask(task: NotebookKernelDetectionTask): Disposable;
107
+ getKernelDetectionTasks(notebook: NotebookTextModelLike): NotebookKernelDetectionTask[];
108
+ registerKernelSourceActionProvider(viewType: string, provider: KernelSourceActionProvider): Disposable;
109
+ getKernelSourceActionsFromProviders(notebook: NotebookTextModelLike): Promise<NotebookKernelSourceAction[]>;
110
+ dispose(): void;
111
+ }
112
+ //# sourceMappingURL=notebook-kernel-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notebook-kernel-service.d.ts","sourceRoot":"","sources":["../../../src/browser/service/notebook-kernel-service.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAExF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,iCAAiC;IAC9C,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,yBAAyB;IACtC,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,yBAAyB;IACtC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,kBAAkB,CAAC,EAAE,IAAI,CAAC;IAC1B,iBAAiB,CAAC,EAAE,IAAI,CAAC;IACzB,mBAAmB,CAAC,EAAE,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACjE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,iBAAiB,EAAE,GAAG,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;IAEnC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/E;AAED,0BAAkB,gBAAgB;IAC9B,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,YAAY,IAAI;CACnB;AAED,MAAM,WAAW,+BAAgC,SAAQ,yBAAyB;IAC9E,eAAe,CAAC,EAAE,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,2BAA2B;IACxC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,qBAAqB;IAAG,GAAG,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE;AAiBrE,MAAM,WAAW,+BAA+B;IAC5C,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wBAAwB,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,0BAA0B,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC;CACvE;AAED,qBAAa,aAAc,YAAW,UAAU;IAMxC,QAAQ,CAAC,eAAe,EAAE,eAAe;IACzC,QAAQ,CAAC,OAAO,EAAE,OAAO;IACzB,QAAQ,CAAC,KAAK,EAAE,qBAAqB;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO;IAR/B,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;IACrC,SAAS,CAAC,QAAQ,CAAC,uBAAuB,gBAAuB;IACjE,QAAQ,CAAC,gBAAgB,cAAsC;gBAGlD,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,qBAAqB,EAC5B,SAAS,EAAE,OAAO;IAGzB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAYZ,UAAU;IAWxB,OAAO,IAAI,IAAI;CAIlB;AAGD,qBACa,qBAAsB,YAAW,UAAU;IAGpD,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAG3C,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAEzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IAEzD,OAAO,CAAC,gBAAgB,CAAiC;IAEzD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAoD;IACzF,OAAO,CAAC,QAAQ,CAAC,sCAAsC,CAAyB;IAChF,QAAQ,CAAC,+BAA+B,gBAAqD;IAE7F,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAkD;IAClG,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAmD;IAC/F,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,+BAA+B,CAAC,CAA8C;IAEvH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiC;IACvE,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,CAAoC;IAElF,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAiC;IAC1E,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAuC;IAExF,OAAO,CAAC,QAAQ,CAAC,+CAA+C,CAAoD;IACpH,QAAQ,CAAC,yBAAyB,EAAE,KAAK,CAAC,iCAAiC,CAAC,CAA8D;IAE1I,OAAO,CAAC,QAAQ,CAAC,kCAAkC,CAAuB;IAC1E,QAAQ,CAAC,2BAA2B,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiD;IAGlG,IAAI,IAAI,IAAI;IAQZ,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,UAAU;IAqBlD,iBAAiB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,yBAAyB;IA0B7E,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,EAAE,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAclG,4BAA4B,CAAC,QAAQ,EAAE,aAAa,GAAG,cAAc,GAAG,SAAS;IASjF,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAIjD,OAAO,CAAC,MAAM,CAAC,KAAK;IAUpB,OAAO,CAAC,mBAAmB;IAiB3B,mCAAmC,CAAC,IAAI,EAAE,2BAA2B,GAAG,UAAU;IAiBlF,uBAAuB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,2BAA2B,EAAE;IAIvF,kCAAkC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,0BAA0B,GAAG,UAAU;IAsBhG,mCAAmC,CAAC,QAAQ,EAAE,qBAAqB,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAQjH,OAAO,IAAI,IAAI;CAQlB"}