wg-backend-django/dell-env/share/jupyter/nbextensions/dash/main.js
2023-10-30 14:40:43 +07:00

43 lines
1.4 KiB
JavaScript

// file my_extension/main.js
define([
'base/js/namespace',
'base/js/utils',
], function(Jupyter, utils){
function load_ipython_extension(){
var notebookUrl = window.location.href
var baseUrl = utils.get_body_data('baseUrl');
var baseNotebooks = baseUrl + "notebooks"
var n = notebookUrl.search(baseNotebooks)
var jupyterServerUrl = notebookUrl.slice(0, n)
var register_comm = function() {
Jupyter.notebook.kernel.comm_manager.register_target('dash',
function (comm, msg) {
// Register handlers for later messages:
comm.on_msg(function (msg) {
console.log("Dash message", msg);
var msgData = msg.content.data;
if (msgData.type === 'base_url_request') {
comm.send({
type: 'base_url_response',
server_url: jupyterServerUrl,
base_subpath: baseUrl,
frontend: "notebook"
});
} else if (msgData.type === 'show') {
}
});
});
};
Jupyter.notebook.events.on('kernel_ready.Kernel', register_comm)
}
return {
load_ipython_extension: load_ipython_extension
};
});