@difizen/libro-jupyter 0.2.10 → 0.2.12
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.
- package/es/cell/jupyter-code-cell-view.d.ts +1 -0
- package/es/cell/jupyter-code-cell-view.d.ts.map +1 -1
- package/es/cell/jupyter-code-cell-view.js +55 -21
- package/es/libro-jupyter-server-launch-manager.d.ts +1 -3
- package/es/libro-jupyter-server-launch-manager.d.ts.map +1 -1
- package/es/libro-jupyter-server-launch-manager.js +1 -30
- package/package.json +17 -17
- package/src/cell/jupyter-code-cell-view.tsx +19 -0
- package/src/libro-jupyter-server-launch-manager.ts +2 -14
|
@@ -11,6 +11,7 @@ export declare class JupyterCodeCellView extends LibroCodeCellView {
|
|
|
11
11
|
model: JupyterCodeCellModel;
|
|
12
12
|
clearExecution: () => void;
|
|
13
13
|
protected getEditorOption(): CodeEditorViewOptions;
|
|
14
|
+
onViewMount(): Promise<void>;
|
|
14
15
|
tooltipProvider: TooltipProvider;
|
|
15
16
|
completionProvider: CompletionProvider;
|
|
16
17
|
run(): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jupyter-code-cell-view.d.ts","sourceRoot":"","sources":["../../src/cell/jupyter-code-cell-view.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAElB,eAAe,EAEhB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"jupyter-code-cell-view.d.ts","sourceRoot":"","sources":["../../src/cell/jupyter-code-cell-view.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAElB,eAAe,EAEhB,MAAM,4BAA4B,CAAC;AAYpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAkBzE,qBAEa,mBAAoB,SAAQ,iBAAiB;IACxD,UAAkB,OAAO,EAAE,gBAAgB,CAAC;IAE5C,IAAa,MAAM,IAGQ,gBAAgB,CAD1C;IACD,IAAa,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAG1C;IAEQ,IAAI,2FAA4B;IACjC,KAAK,EAAE,oBAAoB,CAAC;IAE3B,cAAc,aAQrB;cAEiB,eAAe,IAAI,qBAAqB;IAe5C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB3C,eAAe,EAAE,eAAe,CAqB9B;IAEF,kBAAkB,EAAE,kBAAkB,CA8BpC;IAEa,GAAG;CA8EnB"}
|
|
@@ -176,24 +176,58 @@ export var JupyterCodeCellView = (_dec = transient(), _dec2 = view('jupyter-code
|
|
|
176
176
|
});
|
|
177
177
|
}
|
|
178
178
|
}, {
|
|
179
|
-
key: "
|
|
179
|
+
key: "onViewMount",
|
|
180
180
|
value: function () {
|
|
181
|
-
var
|
|
182
|
-
var
|
|
181
|
+
var _onViewMount = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
|
182
|
+
var _this2 = this;
|
|
183
|
+
var kcReady, kernelConnection;
|
|
183
184
|
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
184
185
|
while (1) switch (_context3.prev = _context3.next) {
|
|
186
|
+
case 0:
|
|
187
|
+
_get(_getPrototypeOf(JupyterCodeCellView.prototype), "onViewMount", this).call(this);
|
|
188
|
+
kcReady = getOrigin(this.parent.model.kcReady);
|
|
189
|
+
_context3.next = 4;
|
|
190
|
+
return kcReady;
|
|
191
|
+
case 4:
|
|
192
|
+
kernelConnection = _context3.sent;
|
|
193
|
+
// kernel重启后,清除执行状态,输出不变
|
|
194
|
+
kernelConnection === null || kernelConnection === void 0 || kernelConnection.statusChanged(function (e) {
|
|
195
|
+
var terminateStatus = ['autorestarting', 'starting', 'restarting'];
|
|
196
|
+
if (terminateStatus.includes(e)) {
|
|
197
|
+
_this2.model.clearExecution();
|
|
198
|
+
_this2.model.executing = false;
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
case 6:
|
|
202
|
+
case "end":
|
|
203
|
+
return _context3.stop();
|
|
204
|
+
}
|
|
205
|
+
}, _callee3, this);
|
|
206
|
+
}));
|
|
207
|
+
function onViewMount() {
|
|
208
|
+
return _onViewMount.apply(this, arguments);
|
|
209
|
+
}
|
|
210
|
+
return onViewMount;
|
|
211
|
+
}()
|
|
212
|
+
}, {
|
|
213
|
+
key: "run",
|
|
214
|
+
value: function () {
|
|
215
|
+
var _run = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
|
|
216
|
+
var libroModel, kernelConnection, cellContent, cellModel, future, startTimeStr, msgPromise, endTimeStr;
|
|
217
|
+
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
218
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
185
219
|
case 0:
|
|
186
220
|
libroModel = this.parent.model;
|
|
187
221
|
if (!(!libroModel || !(libroModel instanceof LibroJupyterModel) || !libroModel.kernelConnection || libroModel.kernelConnection.isDisposed)) {
|
|
188
|
-
|
|
222
|
+
_context4.next = 3;
|
|
189
223
|
break;
|
|
190
224
|
}
|
|
191
|
-
return
|
|
225
|
+
return _context4.abrupt("return", false);
|
|
192
226
|
case 3:
|
|
193
227
|
kernelConnection = getOrigin(libroModel.kernelConnection);
|
|
194
228
|
cellContent = this.model.source;
|
|
195
229
|
cellModel = this.model;
|
|
196
|
-
|
|
230
|
+
_context4.prev = 6;
|
|
197
231
|
// if (this.outputArea instanceof LibroOutputArea)
|
|
198
232
|
// this.outputArea.lastOutputContainerHeight =
|
|
199
233
|
// this.outputArea.container?.current?.clientHeight;
|
|
@@ -225,10 +259,10 @@ export var JupyterCodeCellView = (_dec = transient(), _dec2 = view('jupyter-code
|
|
|
225
259
|
future.onReply = function (msg) {
|
|
226
260
|
cellModel.msgChangeEmitter.fire(msg);
|
|
227
261
|
};
|
|
228
|
-
|
|
262
|
+
_context4.next = 15;
|
|
229
263
|
return future.done;
|
|
230
264
|
case 15:
|
|
231
|
-
msgPromise =
|
|
265
|
+
msgPromise = _context4.sent;
|
|
232
266
|
cellModel.executing = false;
|
|
233
267
|
cellModel.kernelExecuting = false;
|
|
234
268
|
startTimeStr = msgPromise.metadata['started'];
|
|
@@ -236,36 +270,36 @@ export var JupyterCodeCellView = (_dec = transient(), _dec2 = view('jupyter-code
|
|
|
236
270
|
cellModel.metadata.execution['shell.execute_reply.started'] = startTimeStr;
|
|
237
271
|
cellModel.metadata.execution['shell.execute_reply.end'] = endTimeStr;
|
|
238
272
|
if (msgPromise) {
|
|
239
|
-
|
|
273
|
+
_context4.next = 24;
|
|
240
274
|
break;
|
|
241
275
|
}
|
|
242
|
-
return
|
|
276
|
+
return _context4.abrupt("return", true);
|
|
243
277
|
case 24:
|
|
244
278
|
if (!(msgPromise.content.status === 'ok')) {
|
|
245
|
-
|
|
279
|
+
_context4.next = 28;
|
|
246
280
|
break;
|
|
247
281
|
}
|
|
248
|
-
return
|
|
282
|
+
return _context4.abrupt("return", true);
|
|
249
283
|
case 28:
|
|
250
284
|
throw new KernelError(msgPromise.content);
|
|
251
285
|
case 29:
|
|
252
|
-
|
|
286
|
+
_context4.next = 36;
|
|
253
287
|
break;
|
|
254
288
|
case 31:
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
if (!
|
|
258
|
-
|
|
289
|
+
_context4.prev = 31;
|
|
290
|
+
_context4.t0 = _context4["catch"](6);
|
|
291
|
+
if (!_context4.t0.message.startsWith('Canceled')) {
|
|
292
|
+
_context4.next = 35;
|
|
259
293
|
break;
|
|
260
294
|
}
|
|
261
|
-
return
|
|
295
|
+
return _context4.abrupt("return", false);
|
|
262
296
|
case 35:
|
|
263
|
-
throw
|
|
297
|
+
throw _context4.t0;
|
|
264
298
|
case 36:
|
|
265
299
|
case "end":
|
|
266
|
-
return
|
|
300
|
+
return _context4.stop();
|
|
267
301
|
}
|
|
268
|
-
},
|
|
302
|
+
}, _callee4, this, [[6, 31]]);
|
|
269
303
|
}));
|
|
270
304
|
function run() {
|
|
271
305
|
return _run.apply(this, arguments);
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { ServerManager, ServerConnection } from '@difizen/libro-kernel';
|
|
2
|
-
import { ApplicationContribution } from '@difizen/mana-app';
|
|
3
2
|
import { ServerLaunchManager } from './libro-jupyter-protocol.js';
|
|
4
|
-
export declare class JupyterServerLaunchManager implements ServerLaunchManager
|
|
3
|
+
export declare class JupyterServerLaunchManager implements ServerLaunchManager {
|
|
5
4
|
protected serverManager: ServerManager;
|
|
6
5
|
protected serverConnection: ServerConnection;
|
|
7
6
|
constructor(serverManager: ServerManager, serverConnection: ServerConnection);
|
|
8
|
-
onStart(): Promise<void>;
|
|
9
7
|
launch(): Promise<import("@difizen/libro-kernel").ISpecModels>;
|
|
10
8
|
}
|
|
11
9
|
//# sourceMappingURL=libro-jupyter-server-launch-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libro-jupyter-server-launch-manager.d.ts","sourceRoot":"","sources":["../src/libro-jupyter-server-launch-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"libro-jupyter-server-launch-manager.d.ts","sourceRoot":"","sources":["../src/libro-jupyter-server-launch-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,qBACa,0BAA2B,YAAW,mBAAmB;IACpE,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IACvC,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;gBAI3C,aAAa,EAAE,aAAa,EAE5B,gBAAgB,EAAE,gBAAgB;IAMpC,MAAM;CAGP"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
2
|
var _dec, _class;
|
|
3
|
-
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
4
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
5
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
6
3
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
7
4
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
8
5
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
@@ -10,10 +7,9 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
|
|
|
10
7
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
11
8
|
import { ServerManager, ServerConnection } from '@difizen/libro-kernel';
|
|
12
9
|
import { inject, singleton } from '@difizen/mana-app';
|
|
13
|
-
import { ApplicationContribution } from '@difizen/mana-app';
|
|
14
10
|
import { ServerLaunchManager } from "./libro-jupyter-protocol.js";
|
|
15
11
|
export var JupyterServerLaunchManager = (_dec = singleton({
|
|
16
|
-
contrib: [ServerLaunchManager
|
|
12
|
+
contrib: [ServerLaunchManager]
|
|
17
13
|
}), _dec(_class = /*#__PURE__*/function () {
|
|
18
14
|
function JupyterServerLaunchManager(serverManager, serverConnection) {
|
|
19
15
|
_classCallCheck(this, JupyterServerLaunchManager);
|
|
@@ -25,31 +21,6 @@ export var JupyterServerLaunchManager = (_dec = singleton({
|
|
|
25
21
|
JupyterServerLaunchManager = inject(ServerConnection)(JupyterServerLaunchManager, undefined, 1) || JupyterServerLaunchManager;
|
|
26
22
|
JupyterServerLaunchManager = inject(ServerManager)(JupyterServerLaunchManager, undefined, 0) || JupyterServerLaunchManager;
|
|
27
23
|
_createClass(JupyterServerLaunchManager, [{
|
|
28
|
-
key: "onStart",
|
|
29
|
-
value: function () {
|
|
30
|
-
var _onStart = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
31
|
-
var host;
|
|
32
|
-
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
33
|
-
while (1) switch (_context.prev = _context.next) {
|
|
34
|
-
case 0:
|
|
35
|
-
host = location.host;
|
|
36
|
-
this.serverConnection.updateSettings({
|
|
37
|
-
baseUrl: "http://".concat(host),
|
|
38
|
-
wsUrl: "ws://".concat(host)
|
|
39
|
-
});
|
|
40
|
-
this.launch();
|
|
41
|
-
case 3:
|
|
42
|
-
case "end":
|
|
43
|
-
return _context.stop();
|
|
44
|
-
}
|
|
45
|
-
}, _callee, this);
|
|
46
|
-
}));
|
|
47
|
-
function onStart() {
|
|
48
|
-
return _onStart.apply(this, arguments);
|
|
49
|
-
}
|
|
50
|
-
return onStart;
|
|
51
|
-
}()
|
|
52
|
-
}, {
|
|
53
24
|
key: "launch",
|
|
54
25
|
value: function launch() {
|
|
55
26
|
return this.serverManager.launch();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@difizen/libro-jupyter",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"libro"
|
|
@@ -31,22 +31,22 @@
|
|
|
31
31
|
"src"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@difizen/libro-cofine-editor": "^0.2.
|
|
35
|
-
"@difizen/libro-code-editor": "^0.2.
|
|
36
|
-
"@difizen/libro-code-cell": "^0.2.
|
|
37
|
-
"@difizen/libro-codemirror": "^0.2.
|
|
38
|
-
"@difizen/libro-rendermime": "^0.2.
|
|
39
|
-
"@difizen/libro-common": "^0.2.
|
|
40
|
-
"@difizen/libro-core": "^0.2.
|
|
41
|
-
"@difizen/libro-kernel": "^0.2.
|
|
42
|
-
"@difizen/libro-l10n": "^0.2.
|
|
43
|
-
"@difizen/libro-output": "^0.2.
|
|
44
|
-
"@difizen/libro-search": "^0.2.
|
|
45
|
-
"@difizen/libro-search-code-cell": "^0.2.
|
|
46
|
-
"@difizen/libro-lsp": "^0.2.
|
|
47
|
-
"@difizen/libro-markdown-cell": "^0.2.
|
|
48
|
-
"@difizen/libro-raw-cell": "^0.2.
|
|
49
|
-
"@difizen/libro-language-client": "^0.2.
|
|
34
|
+
"@difizen/libro-cofine-editor": "^0.2.12",
|
|
35
|
+
"@difizen/libro-code-editor": "^0.2.12",
|
|
36
|
+
"@difizen/libro-code-cell": "^0.2.12",
|
|
37
|
+
"@difizen/libro-codemirror": "^0.2.12",
|
|
38
|
+
"@difizen/libro-rendermime": "^0.2.12",
|
|
39
|
+
"@difizen/libro-common": "^0.2.12",
|
|
40
|
+
"@difizen/libro-core": "^0.2.12",
|
|
41
|
+
"@difizen/libro-kernel": "^0.2.12",
|
|
42
|
+
"@difizen/libro-l10n": "^0.2.12",
|
|
43
|
+
"@difizen/libro-output": "^0.2.12",
|
|
44
|
+
"@difizen/libro-search": "^0.2.12",
|
|
45
|
+
"@difizen/libro-search-code-cell": "^0.2.12",
|
|
46
|
+
"@difizen/libro-lsp": "^0.2.12",
|
|
47
|
+
"@difizen/libro-markdown-cell": "^0.2.12",
|
|
48
|
+
"@difizen/libro-raw-cell": "^0.2.12",
|
|
49
|
+
"@difizen/libro-language-client": "^0.2.12",
|
|
50
50
|
"@difizen/mana-app": "latest",
|
|
51
51
|
"@difizen/mana-l10n": "latest",
|
|
52
52
|
"@ant-design/colors": "^7.0.0",
|
|
@@ -6,6 +6,7 @@ import type {
|
|
|
6
6
|
TooltipProvider,
|
|
7
7
|
TooltipProviderOption,
|
|
8
8
|
} from '@difizen/libro-code-editor';
|
|
9
|
+
import type { KernelMessage } from '@difizen/libro-kernel';
|
|
9
10
|
import { KernelError } from '@difizen/libro-kernel';
|
|
10
11
|
import { getCellURI } from '@difizen/libro-language-client';
|
|
11
12
|
import { transient } from '@difizen/mana-app';
|
|
@@ -77,6 +78,24 @@ export class JupyterCodeCellView extends LibroCodeCellView {
|
|
|
77
78
|
};
|
|
78
79
|
}
|
|
79
80
|
|
|
81
|
+
override async onViewMount(): Promise<void> {
|
|
82
|
+
super.onViewMount();
|
|
83
|
+
const kcReady = getOrigin((this.parent.model as LibroJupyterModel).kcReady);
|
|
84
|
+
const kernelConnection = await kcReady;
|
|
85
|
+
// kernel重启后,清除执行状态,输出不变
|
|
86
|
+
kernelConnection?.statusChanged((e) => {
|
|
87
|
+
const terminateStatus: KernelMessage.Status[] = [
|
|
88
|
+
'autorestarting',
|
|
89
|
+
'starting',
|
|
90
|
+
'restarting',
|
|
91
|
+
];
|
|
92
|
+
if (terminateStatus.includes(e)) {
|
|
93
|
+
this.model.clearExecution();
|
|
94
|
+
this.model.executing = false;
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
|
|
80
99
|
tooltipProvider: TooltipProvider = async (option: TooltipProviderOption) => {
|
|
81
100
|
const cellContent = this.model.value;
|
|
82
101
|
const kernelConnection = getOrigin(
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { ServerManager, ServerConnection } from '@difizen/libro-kernel';
|
|
2
2
|
import { inject, singleton } from '@difizen/mana-app';
|
|
3
|
-
import { ApplicationContribution } from '@difizen/mana-app';
|
|
4
3
|
|
|
5
4
|
import { ServerLaunchManager } from './libro-jupyter-protocol.js';
|
|
6
5
|
|
|
7
|
-
@singleton({ contrib: [ServerLaunchManager
|
|
8
|
-
export class JupyterServerLaunchManager
|
|
9
|
-
implements ServerLaunchManager, ApplicationContribution
|
|
10
|
-
{
|
|
6
|
+
@singleton({ contrib: [ServerLaunchManager] })
|
|
7
|
+
export class JupyterServerLaunchManager implements ServerLaunchManager {
|
|
11
8
|
protected serverManager: ServerManager;
|
|
12
9
|
protected serverConnection: ServerConnection;
|
|
13
10
|
|
|
@@ -21,15 +18,6 @@ export class JupyterServerLaunchManager
|
|
|
21
18
|
this.serverConnection = serverConnection;
|
|
22
19
|
}
|
|
23
20
|
|
|
24
|
-
async onStart() {
|
|
25
|
-
const host = location.host;
|
|
26
|
-
this.serverConnection.updateSettings({
|
|
27
|
-
baseUrl: `http://${host}`,
|
|
28
|
-
wsUrl: `ws://${host}`,
|
|
29
|
-
});
|
|
30
|
-
this.launch();
|
|
31
|
-
}
|
|
32
|
-
|
|
33
21
|
launch() {
|
|
34
22
|
return this.serverManager.launch();
|
|
35
23
|
}
|