@jupyterlite/services 0.1.0 → 0.7.0-rc.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 (87) hide show
  1. package/lib/contents/drive.d.ts +277 -0
  2. package/lib/contents/drive.js +888 -0
  3. package/lib/contents/drive.js.map +1 -0
  4. package/lib/contents/drivecontents.d.ts +92 -0
  5. package/lib/contents/drivecontents.js +132 -0
  6. package/lib/contents/drivecontents.js.map +1 -0
  7. package/lib/contents/drivefs.d.ts +245 -0
  8. package/lib/contents/drivefs.js +481 -0
  9. package/lib/contents/drivefs.js.map +1 -0
  10. package/lib/contents/emscripten.d.ts +96 -0
  11. package/lib/contents/emscripten.js +10 -0
  12. package/lib/contents/emscripten.js.map +1 -0
  13. package/lib/contents/index.d.ts +5 -0
  14. package/lib/contents/index.js +8 -0
  15. package/lib/contents/index.js.map +1 -0
  16. package/lib/contents/tokens.d.ts +21 -0
  17. package/lib/contents/tokens.js +55 -0
  18. package/lib/contents/tokens.js.map +1 -0
  19. package/lib/index.d.ts +9 -0
  20. package/lib/index.js +12 -0
  21. package/lib/index.js.map +1 -0
  22. package/lib/kernel/base.d.ts +245 -0
  23. package/lib/kernel/base.js +457 -0
  24. package/lib/kernel/base.js.map +1 -0
  25. package/lib/kernel/client.d.ts +114 -0
  26. package/lib/kernel/client.js +375 -0
  27. package/lib/kernel/client.js.map +1 -0
  28. package/lib/kernel/index.d.ts +5 -0
  29. package/lib/kernel/index.js +8 -0
  30. package/lib/kernel/index.js.map +1 -0
  31. package/lib/kernel/kernelspecclient.d.ts +39 -0
  32. package/lib/kernel/kernelspecclient.js +37 -0
  33. package/lib/kernel/kernelspecclient.js.map +1 -0
  34. package/lib/kernel/kernelspecs.d.ts +59 -0
  35. package/lib/kernel/kernelspecs.js +62 -0
  36. package/lib/kernel/kernelspecs.js.map +1 -0
  37. package/lib/kernel/tokens.d.ts +163 -0
  38. package/lib/kernel/tokens.js +20 -0
  39. package/lib/kernel/tokens.js.map +1 -0
  40. package/lib/nbconvert/exporters.d.ts +80 -0
  41. package/lib/nbconvert/exporters.js +154 -0
  42. package/lib/nbconvert/exporters.js.map +1 -0
  43. package/lib/nbconvert/index.d.ts +3 -0
  44. package/lib/nbconvert/index.js +6 -0
  45. package/lib/nbconvert/index.js.map +1 -0
  46. package/lib/nbconvert/manager.d.ts +66 -0
  47. package/lib/nbconvert/manager.js +77 -0
  48. package/lib/nbconvert/manager.js.map +1 -0
  49. package/lib/nbconvert/tokens.d.ts +49 -0
  50. package/lib/nbconvert/tokens.js +8 -0
  51. package/lib/nbconvert/tokens.js.map +1 -0
  52. package/lib/session/client.d.ts +85 -0
  53. package/lib/session/client.js +200 -0
  54. package/lib/session/client.js.map +1 -0
  55. package/lib/session/index.d.ts +1 -0
  56. package/lib/session/index.js +4 -0
  57. package/lib/session/index.js.map +1 -0
  58. package/lib/settings/index.d.ts +1 -0
  59. package/lib/settings/index.js +4 -0
  60. package/lib/settings/index.js.map +1 -0
  61. package/lib/settings/settings.d.ts +91 -0
  62. package/lib/settings/settings.js +185 -0
  63. package/lib/settings/settings.js.map +1 -0
  64. package/package.json +67 -8
  65. package/src/contents/drive.ts +1030 -0
  66. package/src/contents/drivecontents.ts +253 -0
  67. package/src/contents/drivefs.ts +824 -0
  68. package/src/contents/emscripten.ts +148 -0
  69. package/src/contents/index.ts +8 -0
  70. package/src/contents/tokens.ts +61 -0
  71. package/src/index.ts +13 -0
  72. package/src/kernel/base.ts +637 -0
  73. package/src/kernel/client.ts +483 -0
  74. package/src/kernel/index.ts +8 -0
  75. package/src/kernel/kernelspecclient.ts +64 -0
  76. package/src/kernel/kernelspecs.ts +103 -0
  77. package/src/kernel/tokens.ts +222 -0
  78. package/src/nbconvert/exporters.ts +177 -0
  79. package/src/nbconvert/index.ts +6 -0
  80. package/src/nbconvert/manager.ts +105 -0
  81. package/src/nbconvert/tokens.ts +60 -0
  82. package/src/session/client.ts +251 -0
  83. package/src/session/index.ts +4 -0
  84. package/src/settings/index.ts +4 -0
  85. package/src/settings/settings.ts +236 -0
  86. package/style/index.css +6 -0
  87. package/style/index.js +6 -0
@@ -0,0 +1,457 @@
1
+ import { KernelMessage } from '@jupyterlab/services';
2
+ import { Signal } from '@lumino/signaling';
3
+ /**
4
+ * A base kernel class handling basic kernel messaging.
5
+ */
6
+ export class BaseKernel {
7
+ /**
8
+ * Construct a new BaseKernel.
9
+ *
10
+ * @param options The instantiation options for a BaseKernel.
11
+ */
12
+ constructor(options) {
13
+ this._history = [];
14
+ this._executionCount = 0;
15
+ this._isDisposed = false;
16
+ this._disposed = new Signal(this);
17
+ this._parentHeader = undefined;
18
+ this._parent = undefined;
19
+ const { id, name, location, sendMessage } = options;
20
+ this._id = id;
21
+ this._name = name;
22
+ this._location = location;
23
+ this._sendMessage = sendMessage;
24
+ }
25
+ /**
26
+ * A promise that is fulfilled when the kernel is ready.
27
+ */
28
+ get ready() {
29
+ return Promise.resolve();
30
+ }
31
+ /**
32
+ * Return whether the kernel is disposed.
33
+ */
34
+ get isDisposed() {
35
+ return this._isDisposed;
36
+ }
37
+ /**
38
+ * A signal emitted when the kernel is disposed.
39
+ */
40
+ get disposed() {
41
+ return this._disposed;
42
+ }
43
+ /**
44
+ * Get the kernel id
45
+ */
46
+ get id() {
47
+ return this._id;
48
+ }
49
+ /**
50
+ * Get the name of the kernel
51
+ */
52
+ get name() {
53
+ return this._name;
54
+ }
55
+ /**
56
+ * The location in the virtual filesystem from which the kernel was started.
57
+ */
58
+ get location() {
59
+ return this._location;
60
+ }
61
+ /**
62
+ * The current execution count
63
+ */
64
+ get executionCount() {
65
+ return this._executionCount;
66
+ }
67
+ /**
68
+ * Get the last parent header
69
+ */
70
+ get parentHeader() {
71
+ return this._parentHeader;
72
+ }
73
+ /**
74
+ * Get the last parent message (mimic ipykernel's get_parent)
75
+ */
76
+ get parent() {
77
+ return this._parent;
78
+ }
79
+ /**
80
+ * Dispose the kernel.
81
+ */
82
+ dispose() {
83
+ if (this.isDisposed) {
84
+ return;
85
+ }
86
+ this._isDisposed = true;
87
+ this._disposed.emit(void 0);
88
+ }
89
+ /**
90
+ * Handle an incoming message from the client.
91
+ *
92
+ * @param msg The message to handle
93
+ */
94
+ async handleMessage(msg) {
95
+ this._busy(msg);
96
+ this._parent = msg;
97
+ const msgType = msg.header.msg_type;
98
+ switch (msgType) {
99
+ case 'kernel_info_request':
100
+ await this._kernelInfo(msg);
101
+ break;
102
+ case 'execute_request':
103
+ await this._execute(msg);
104
+ break;
105
+ case 'input_reply':
106
+ this.inputReply(msg.content);
107
+ break;
108
+ case 'inspect_request':
109
+ await this._inspect(msg);
110
+ break;
111
+ case 'is_complete_request':
112
+ await this._isCompleteRequest(msg);
113
+ break;
114
+ case 'complete_request':
115
+ await this._complete(msg);
116
+ break;
117
+ case 'history_request':
118
+ await this._historyRequest(msg);
119
+ break;
120
+ case 'comm_open':
121
+ await this.commOpen(msg);
122
+ break;
123
+ case 'comm_msg':
124
+ await this.commMsg(msg);
125
+ break;
126
+ case 'comm_close':
127
+ await this.commClose(msg);
128
+ break;
129
+ default:
130
+ break;
131
+ }
132
+ this._idle(msg);
133
+ }
134
+ /**
135
+ * Stream an event from the kernel
136
+ *
137
+ * @param parentHeader The parent header.
138
+ * @param content The stream content.
139
+ */
140
+ stream(content, parentHeader = undefined) {
141
+ var _a;
142
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
143
+ const message = KernelMessage.createMessage({
144
+ channel: 'iopub',
145
+ msgType: 'stream',
146
+ // TODO: better handle this
147
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
148
+ parentHeader: parentHeaderValue,
149
+ content,
150
+ });
151
+ this._sendMessage(message);
152
+ }
153
+ /**
154
+ * Send a `display_data` message to the client.
155
+ *
156
+ * @param parentHeader The parent header.
157
+ * @param content The display_data content.
158
+ */
159
+ displayData(content, parentHeader = undefined) {
160
+ var _a, _b;
161
+ // Make sure metadata is always set
162
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
163
+ content.metadata = (_a = content.metadata) !== null && _a !== void 0 ? _a : {};
164
+ const message = KernelMessage.createMessage({
165
+ channel: 'iopub',
166
+ msgType: 'display_data',
167
+ // TODO: better handle this
168
+ session: (_b = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _b !== void 0 ? _b : '',
169
+ parentHeader: parentHeaderValue,
170
+ content,
171
+ });
172
+ this._sendMessage(message);
173
+ }
174
+ /**
175
+ * Send a `input_request` message to the client.
176
+ *
177
+ * @param parentHeader The parent header.
178
+ * @param content The input_request content.
179
+ */
180
+ inputRequest(content, parentHeader = undefined) {
181
+ var _a;
182
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
183
+ const message = KernelMessage.createMessage({
184
+ channel: 'stdin',
185
+ msgType: 'input_request',
186
+ // TODO: better handle this
187
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
188
+ parentHeader: parentHeaderValue,
189
+ content,
190
+ });
191
+ this._sendMessage(message);
192
+ }
193
+ /**
194
+ * Send an `execute_result` message.
195
+ *
196
+ * @param parentHeader The parent header.
197
+ * @param content The execute result content.
198
+ */
199
+ publishExecuteResult(content, parentHeader = undefined) {
200
+ var _a;
201
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
202
+ const message = KernelMessage.createMessage({
203
+ channel: 'iopub',
204
+ msgType: 'execute_result',
205
+ // TODO: better handle this
206
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
207
+ parentHeader: parentHeaderValue,
208
+ content,
209
+ });
210
+ this._sendMessage(message);
211
+ }
212
+ /**
213
+ * Send an `error` message to the client.
214
+ *
215
+ * @param parentHeader The parent header.
216
+ * @param content The error content.
217
+ */
218
+ publishExecuteError(content, parentHeader = undefined) {
219
+ var _a;
220
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
221
+ const message = KernelMessage.createMessage({
222
+ channel: 'iopub',
223
+ msgType: 'error',
224
+ // TODO: better handle this
225
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
226
+ parentHeader: parentHeaderValue,
227
+ content,
228
+ });
229
+ this._sendMessage(message);
230
+ }
231
+ /**
232
+ * Send a `update_display_data` message to the client.
233
+ *
234
+ * @param parentHeader The parent header.
235
+ * @param content The update_display_data content.
236
+ */
237
+ updateDisplayData(content, parentHeader = undefined) {
238
+ var _a;
239
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
240
+ const message = KernelMessage.createMessage({
241
+ channel: 'iopub',
242
+ msgType: 'update_display_data',
243
+ // TODO: better handle this
244
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
245
+ parentHeader: parentHeaderValue,
246
+ content,
247
+ });
248
+ this._sendMessage(message);
249
+ }
250
+ /**
251
+ * Send a `clear_output` message to the client.
252
+ *
253
+ * @param parentHeader The parent header.
254
+ * @param content The clear_output content.
255
+ */
256
+ clearOutput(content, parentHeader = undefined) {
257
+ var _a;
258
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
259
+ const message = KernelMessage.createMessage({
260
+ channel: 'iopub',
261
+ msgType: 'clear_output',
262
+ // TODO: better handle this
263
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
264
+ parentHeader: parentHeaderValue,
265
+ content,
266
+ });
267
+ this._sendMessage(message);
268
+ }
269
+ /**
270
+ * Send a `comm` message to the client.
271
+ *
272
+ * @param .
273
+ */
274
+ handleComm(type, content, metadata, buffers, parentHeader = undefined) {
275
+ var _a;
276
+ const parentHeaderValue = typeof parentHeader !== 'undefined' ? parentHeader : this._parentHeader;
277
+ const message = KernelMessage.createMessage({
278
+ channel: 'iopub',
279
+ msgType: type,
280
+ // TODO: better handle this
281
+ session: (_a = parentHeaderValue === null || parentHeaderValue === void 0 ? void 0 : parentHeaderValue.session) !== null && _a !== void 0 ? _a : '',
282
+ parentHeader: parentHeaderValue,
283
+ content,
284
+ metadata,
285
+ buffers,
286
+ });
287
+ this._sendMessage(message);
288
+ }
289
+ /**
290
+ * Send an 'idle' status message.
291
+ *
292
+ * @param parent The parent message
293
+ */
294
+ _idle(parent) {
295
+ const message = KernelMessage.createMessage({
296
+ msgType: 'status',
297
+ session: parent.header.session,
298
+ parentHeader: parent.header,
299
+ channel: 'iopub',
300
+ content: {
301
+ execution_state: 'idle',
302
+ },
303
+ });
304
+ this._sendMessage(message);
305
+ }
306
+ /**
307
+ * Send a 'busy' status message.
308
+ *
309
+ * @param parent The parent message.
310
+ */
311
+ _busy(parent) {
312
+ const message = KernelMessage.createMessage({
313
+ msgType: 'status',
314
+ session: parent.header.session,
315
+ parentHeader: parent.header,
316
+ channel: 'iopub',
317
+ content: {
318
+ execution_state: 'busy',
319
+ },
320
+ });
321
+ this._sendMessage(message);
322
+ }
323
+ /**
324
+ * Handle a kernel_info_request message
325
+ *
326
+ * @param parent The parent message.
327
+ */
328
+ async _kernelInfo(parent) {
329
+ const content = await this.kernelInfoRequest();
330
+ const message = KernelMessage.createMessage({
331
+ msgType: 'kernel_info_reply',
332
+ channel: 'shell',
333
+ session: parent.header.session,
334
+ parentHeader: parent.header,
335
+ content,
336
+ });
337
+ this._sendMessage(message);
338
+ }
339
+ /**
340
+ * Handle a `history_request` message
341
+ *
342
+ * @param msg The parent message.
343
+ */
344
+ async _historyRequest(msg) {
345
+ const historyMsg = msg;
346
+ const message = KernelMessage.createMessage({
347
+ msgType: 'history_reply',
348
+ channel: 'shell',
349
+ parentHeader: historyMsg.header,
350
+ session: msg.header.session,
351
+ content: {
352
+ status: 'ok',
353
+ history: this._history,
354
+ },
355
+ });
356
+ this._sendMessage(message);
357
+ }
358
+ /**
359
+ * Send an `execute_input` message.
360
+ *
361
+ * @param msg The parent message.
362
+ */
363
+ _executeInput(msg) {
364
+ const parent = msg;
365
+ const code = parent.content.code;
366
+ const message = KernelMessage.createMessage({
367
+ msgType: 'execute_input',
368
+ parentHeader: parent.header,
369
+ channel: 'iopub',
370
+ session: msg.header.session,
371
+ content: {
372
+ code,
373
+ execution_count: this._executionCount,
374
+ },
375
+ });
376
+ this._sendMessage(message);
377
+ }
378
+ /**
379
+ * Handle an execute_request message.
380
+ *
381
+ * @param msg The parent message.
382
+ */
383
+ async _execute(msg) {
384
+ const executeMsg = msg;
385
+ const content = executeMsg.content;
386
+ if (content.store_history) {
387
+ this._executionCount++;
388
+ }
389
+ // TODO: handle differently
390
+ this._parentHeader = executeMsg.header;
391
+ this._executeInput(executeMsg);
392
+ if (content.store_history) {
393
+ this._history.push([0, 0, content.code]);
394
+ }
395
+ const reply = await this.executeRequest(executeMsg.content);
396
+ const message = KernelMessage.createMessage({
397
+ msgType: 'execute_reply',
398
+ channel: 'shell',
399
+ parentHeader: executeMsg.header,
400
+ session: msg.header.session,
401
+ content: reply,
402
+ });
403
+ this._sendMessage(message);
404
+ }
405
+ /**
406
+ * Handle an complete_request message
407
+ *
408
+ * @param msg The parent message.
409
+ */
410
+ async _complete(msg) {
411
+ const completeMsg = msg;
412
+ const content = await this.completeRequest(completeMsg.content);
413
+ const message = KernelMessage.createMessage({
414
+ msgType: 'complete_reply',
415
+ parentHeader: completeMsg.header,
416
+ channel: 'shell',
417
+ session: msg.header.session,
418
+ content,
419
+ });
420
+ this._sendMessage(message);
421
+ }
422
+ /**
423
+ * Handle an inspect_request message
424
+ *
425
+ * @param msg The parent message.
426
+ */
427
+ async _inspect(msg) {
428
+ const inspectMsg = msg;
429
+ const content = await this.inspectRequest(inspectMsg.content);
430
+ const message = KernelMessage.createMessage({
431
+ msgType: 'inspect_reply',
432
+ parentHeader: inspectMsg.header,
433
+ channel: 'shell',
434
+ session: msg.header.session,
435
+ content,
436
+ });
437
+ this._sendMessage(message);
438
+ }
439
+ /**
440
+ * Handle an is_complete_request message
441
+ *
442
+ * @param msg The parent message.
443
+ */
444
+ async _isCompleteRequest(msg) {
445
+ const isCompleteMsg = msg;
446
+ const content = await this.isCompleteRequest(isCompleteMsg.content);
447
+ const message = KernelMessage.createMessage({
448
+ msgType: 'is_complete_reply',
449
+ parentHeader: isCompleteMsg.header,
450
+ channel: 'shell',
451
+ session: msg.header.session,
452
+ content,
453
+ });
454
+ this._sendMessage(message);
455
+ }
456
+ }
457
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/kernel/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import { IObservableMap } from '@jupyterlab/observables';
2
+ import { Kernel, KernelMessage, ServerConnection } from '@jupyterlab/services';
3
+ import { ISignal } from '@lumino/signaling';
4
+ import { IKernel, IKernelSpecs } from './tokens';
5
+ /**
6
+ * A class to handle requests to /api/kernels
7
+ */
8
+ export declare class LiteKernelClient implements Kernel.IKernelAPIClient {
9
+ /**
10
+ * Construct a new Kernels
11
+ *
12
+ * @param options The instantiation options
13
+ */
14
+ constructor(options: LiteKernelClient.IOptions);
15
+ /**
16
+ * The server settings for the kernel client.
17
+ */
18
+ get serverSettings(): ServerConnection.ISettings;
19
+ /**
20
+ * Signal emitted when the kernels map changes
21
+ */
22
+ get changed(): ISignal<this, IObservableMap.IChangedArgs<IKernel>>;
23
+ /**
24
+ * Start a new kernel.
25
+ *
26
+ * @param options The kernel start options.
27
+ */
28
+ startNew(options: LiteKernelClient.IKernelOptions): Promise<Kernel.IModel>;
29
+ /**
30
+ * Restart a kernel.
31
+ *
32
+ * @param kernelId The kernel id.
33
+ */
34
+ restart(kernelId: string): Promise<void>;
35
+ /**
36
+ * Interrupt a kernel.
37
+ */
38
+ interrupt(kernelId: string): Promise<void>;
39
+ /**
40
+ * List the running kernels.
41
+ */
42
+ listRunning(): Promise<Kernel.IModel[]>;
43
+ /**
44
+ * Shut down a kernel.
45
+ *
46
+ * @param id The kernel id.
47
+ */
48
+ shutdown(id: string): Promise<void>;
49
+ /**
50
+ * Shut down all kernels.
51
+ */
52
+ shutdownAll(): Promise<void>;
53
+ /**
54
+ * Get a kernel by id
55
+ */
56
+ getModel(id: string): Promise<IKernel | undefined>;
57
+ /**
58
+ * Handle stdin request received from Service Worker.
59
+ */
60
+ handleStdin(inputRequest: KernelMessage.IInputRequestMsg): Promise<KernelMessage.IInputReplyMsg>;
61
+ /**
62
+ * Get a kernel id corresponding to a client id.
63
+ */
64
+ private _getClientKernel;
65
+ private _kernels;
66
+ private _clients;
67
+ private _mutexMap;
68
+ private _kernelClients;
69
+ private _kernelspecs;
70
+ private _serverSettings;
71
+ private _changed;
72
+ private _stdinPromise?;
73
+ private _kernelSends;
74
+ private _cancelReason;
75
+ }
76
+ /**
77
+ * A namespace for Kernels statics.
78
+ */
79
+ export declare namespace LiteKernelClient {
80
+ /**
81
+ * Options to create a new Kernels.
82
+ */
83
+ interface IOptions {
84
+ /**
85
+ * The kernel specs service.
86
+ */
87
+ kernelSpecs: IKernelSpecs;
88
+ /**
89
+ * Server settings for the kernel client.
90
+ */
91
+ serverSettings?: ServerConnection.ISettings;
92
+ }
93
+ /**
94
+ * Options to start a new kernel.
95
+ */
96
+ interface IKernelOptions {
97
+ /**
98
+ * The kernel id.
99
+ */
100
+ id?: string;
101
+ /**
102
+ * The kernel name.
103
+ */
104
+ name?: string;
105
+ /**
106
+ * The location in the virtual filesystem from which the kernel was started.
107
+ */
108
+ location?: string;
109
+ }
110
+ /**
111
+ * The base url for the Kernels manager
112
+ */
113
+ const WS_BASE_URL: string;
114
+ }