@basthon/browser-bundle 0.61.2 → 0.61.4
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/lib/{0.61.2 → 0.61.4}/python3/basthon.tar +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/IPython-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/graphviz-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/p5-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/proj4py-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/rcviz-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/requests-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2/python3-old → 0.61.4/python3}/modules/turtle-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/modules/tutor-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3/repodata.json +1 -1
- package/lib/0.61.4/python3-old/basthon.data +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/basthon.js +1 -1
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/IPython-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/graphviz-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/ipythonblocks-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/ivp-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/lolviz-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/p5-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/proj4py-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/rcviz-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/requests-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2/python3 → 0.61.4/python3-old}/modules/turtle-0.0.1-py3-none-any.whl +0 -0
- package/lib/{0.61.2 → 0.61.4}/python3-old/modules/tutor-0.0.1-py3-none-any.whl +0 -0
- package/lib/595817d88d82727f463b.wasm +0 -0
- package/lib/kernel-base_lib_index_js.js +1 -1
- package/lib/kernel-base_lib_index_js.js.map +1 -1
- package/lib/vendors-node_modules_sql_js_dist_sql-wasm_js-node_modules_sql_js_dist_sql-wasm_wasm_asset-url-ea4ee4.js +1 -1
- package/lib/vendors-node_modules_sql_js_dist_sql-wasm_js-node_modules_sql_js_dist_sql-wasm_wasm_asset-url-ea4ee4.js.map +1 -1
- package/package.json +3 -3
- package/lib/0.61.2/python3-old/basthon.data +0 -0
- package/lib/057823fecaede6350cf9.wasm +0 -0
- /package/lib/{0.61.2 → 0.61.4}/python3/modules/extern/pytutor-main.min.css +0 -0
- /package/lib/{0.61.2 → 0.61.4}/python3/modules/extern/pytutor-main.min.js +0 -0
- /package/lib/{0.61.2 → 0.61.4}/python3/modules/extern/pytutor-main.min.js.map +0 -0
- /package/lib/{0.61.2 → 0.61.4}/python3-old/modules/extern/pytutor-main.min.css +0 -0
- /package/lib/{0.61.2 → 0.61.4}/python3-old/modules/extern/pytutor-main.min.js +0 -0
- /package/lib/{0.61.2 → 0.61.4}/python3-old/modules/extern/pytutor-main.min.js.map +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_basthon_browser_bundle=self.webpackChunk_basthon_browser_bundle||[]).push([["kernel-base_lib_index_js"],{6806:(e,t,n)=>{n.d(t,{H:()=>m});var r=n(7371),u=n(9249),o=n(5754),a=n(1987),i=n(5058),s=n(8501),c=n(6666),l=n(4795),p=n(2841),f=n.n(p),h=n(2490);function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,i.Z)(e);if(t){var u=(0,i.Z)(this).constructor;n=Reflect.construct(r,arguments,u)}else n=r.apply(this,arguments);return(0,a.Z)(this,n)}}function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?v(Object(n),!0).forEach((function(t){(0,c.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var y="filesystem:/";!function(){var e,t=function(){var e=(0,l.Z)(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise((function(e,n){var r=new FileReader;r.onloadend=function(){e(r.result)},r.onerror=n,r.readAsDataURL(new Blob([t]))}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();window._fetch=null!==(e=window._fetch)&&void 0!==e?e:window.fetch,window.fetch=function(){var e=(0,l.Z)(f().mark((function e(n,r){var u,o,a,i,s,c,l,p;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=null!==(u=n.url)&&void 0!==u?u:n.toString(),a=y,!o.startsWith(a)){e.next=22;break}return i=o.slice(12),s=null,c={status:200,statusText:"OK",headers:new Headers},e.prev=6,s=window.Basthon.getFile(i),e.next=10,t(s);case 10:l=e.sent,p=l.substring(l.indexOf(":")+1,l.indexOf(";")),s=s.buffer,c.headers.append("Content-Type",p),c.headers.append("Content-Length",s.byteLength),e.next=21;break;case 17:e.prev=17,e.t0=e.catch(6),c.status=404,c.statusText="Not Found";case 21:return e.abrupt("return",new Response(s,c));case 22:return e.next=24,window._fetch(n,r);case 24:return e.abrupt("return",e.sent);case 25:case"end":return e.stop()}}),e,null,[[6,17]])})));return function(t,n){return e.apply(this,arguments)}}();var n=Object.getOwnPropertyDescriptor(HTMLImageElement.prototype,"src");Object.defineProperty(HTMLImageElement.prototype,"src",w(w({},n),{},{get:function(){var e;return null===(e=null==n?void 0:n.get)||void 0===e?void 0:e.call(this)},set:function(e){var r,u=this,o=y;if(e.startsWith(o)){var a=e.slice(12),i=window.Basthon.getFile(a).buffer;(0,l.Z)(f().mark((function e(){var r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==(r=null==n?void 0:n.set)&&void 0!==r){e.next=4;break}e.t0=void 0,e.next=10;break;case 4:return e.t1=r,e.t2=u,e.next=8,t(i);case 8:e.t3=e.sent,e.t0=e.t1.call.call(e.t1,e.t2,e.t3);case 10:return e.abrupt("return",e.t0);case 11:case"end":return e.stop()}}),e)})))()}else null===(r=null==n?void 0:n.set)||void 0===r||r.call(this,e)}}))}();var b=function(e){(0,o.Z)(n,e);var t=d(n);function n(e){var r;return(0,u.Z)(this,n),(r=t.call(this,"Function ".concat(e," not implemented!"))).name="NotImplementedError",r}return(0,r.Z)(n)}((0,s.Z)(Error)),k=function(e){(0,o.Z)(n,e);var t=d(n);function n(e,r){var o;return(0,u.Z)(this,n),(o=t.call(this,e)).detail=r,o}return(0,r.Z)(n)}((0,s.Z)(Event)),m=function(){function e(t){(0,u.Z)(this,e),this._ready=!1,this._loaded=new h.I,this._execution_count=0,this._pendingInput=!1,this._listeners=new Map,this._rootPath=t.rootPath}var t,n,o,a,i,s,c,p;return(0,r.Z)(e,[{key:"version",value:function(){return"0.61.
|
|
1
|
+
"use strict";(self.webpackChunk_basthon_browser_bundle=self.webpackChunk_basthon_browser_bundle||[]).push([["kernel-base_lib_index_js"],{6806:(e,t,n)=>{n.d(t,{H:()=>m});var r=n(7371),u=n(9249),o=n(5754),a=n(1987),i=n(5058),s=n(8501),c=n(6666),l=n(4795),p=n(2841),f=n.n(p),h=n(2490);function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,i.Z)(e);if(t){var u=(0,i.Z)(this).constructor;n=Reflect.construct(r,arguments,u)}else n=r.apply(this,arguments);return(0,a.Z)(this,n)}}function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?v(Object(n),!0).forEach((function(t){(0,c.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var y="filesystem:/";!function(){var e,t=function(){var e=(0,l.Z)(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise((function(e,n){var r=new FileReader;r.onloadend=function(){e(r.result)},r.onerror=n,r.readAsDataURL(new Blob([t]))}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();window._fetch=null!==(e=window._fetch)&&void 0!==e?e:window.fetch,window.fetch=function(){var e=(0,l.Z)(f().mark((function e(n,r){var u,o,a,i,s,c,l,p;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=null!==(u=n.url)&&void 0!==u?u:n.toString(),a=y,!o.startsWith(a)){e.next=22;break}return i=o.slice(12),s=null,c={status:200,statusText:"OK",headers:new Headers},e.prev=6,s=window.Basthon.getFile(i),e.next=10,t(s);case 10:l=e.sent,p=l.substring(l.indexOf(":")+1,l.indexOf(";")),s=s.buffer,c.headers.append("Content-Type",p),c.headers.append("Content-Length",s.byteLength),e.next=21;break;case 17:e.prev=17,e.t0=e.catch(6),c.status=404,c.statusText="Not Found";case 21:return e.abrupt("return",new Response(s,c));case 22:return e.next=24,window._fetch(n,r);case 24:return e.abrupt("return",e.sent);case 25:case"end":return e.stop()}}),e,null,[[6,17]])})));return function(t,n){return e.apply(this,arguments)}}();var n=Object.getOwnPropertyDescriptor(HTMLImageElement.prototype,"src");Object.defineProperty(HTMLImageElement.prototype,"src",w(w({},n),{},{get:function(){var e;return null===(e=null==n?void 0:n.get)||void 0===e?void 0:e.call(this)},set:function(e){var r,u=this,o=y;if(e.startsWith(o)){var a=e.slice(12),i=window.Basthon.getFile(a).buffer;(0,l.Z)(f().mark((function e(){var r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==(r=null==n?void 0:n.set)&&void 0!==r){e.next=4;break}e.t0=void 0,e.next=10;break;case 4:return e.t1=r,e.t2=u,e.next=8,t(i);case 8:e.t3=e.sent,e.t0=e.t1.call.call(e.t1,e.t2,e.t3);case 10:return e.abrupt("return",e.t0);case 11:case"end":return e.stop()}}),e)})))()}else null===(r=null==n?void 0:n.set)||void 0===r||r.call(this,e)}}))}();var b=function(e){(0,o.Z)(n,e);var t=d(n);function n(e){var r;return(0,u.Z)(this,n),(r=t.call(this,"Function ".concat(e," not implemented!"))).name="NotImplementedError",r}return(0,r.Z)(n)}((0,s.Z)(Error)),k=function(e){(0,o.Z)(n,e);var t=d(n);function n(e,r){var o;return(0,u.Z)(this,n),(o=t.call(this,e)).detail=r,o}return(0,r.Z)(n)}((0,s.Z)(Event)),m=function(){function e(t){(0,u.Z)(this,e),this._ready=!1,this._loaded=new h.I,this._execution_count=0,this._pendingInput=!1,this._listeners=new Map,this._rootPath=t.rootPath}var t,n,o,a,i,s,c,p;return(0,r.Z)(e,[{key:"version",value:function(){return"0.61.4"}},{key:"language",value:function(){throw new b("language")}},{key:"languageName",value:function(){throw new b("languageName")}},{key:"moduleExts",value:function(){throw new b("moduleExts")}},{key:"launch",value:(p=(0,l.Z)(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw new b("launch");case 1:case"end":return e.stop()}}),e)}))),function(){return p.apply(this,arguments)})},{key:"execution_count",get:function(){return this._execution_count}},{key:"evalAsync",value:function(e,t,n){throw new b("evalAsync")}},{key:"restart",value:function(){throw new b("restart")}},{key:"putFile",value:(c=(0,l.Z)(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw new b("putFile");case 1:case"end":return e.stop()}}),e)}))),function(e,t){return c.apply(this,arguments)})},{key:"putModule",value:(s=(0,l.Z)(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw new b("putModule");case 1:case"end":return e.stop()}}),e)}))),function(e,t){return s.apply(this,arguments)})},{key:"userModules",value:function(){return[]}},{key:"getFile",value:function(e){throw new b("getFile")}},{key:"getUserModuleFile",value:function(e){throw new b("getUserModuleFile")}},{key:"more",value:function(e){throw new b("more")}},{key:"complete",value:function(e){return[]}},{key:"banner",value:function(){return"Welcome to the ".concat(this.languageName()," REPL!")}},{key:"ps1",value:function(){return">>> "}},{key:"ps2",value:function(){return"... "}},{key:"init",value:(i=(0,l.Z)(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.launch();case 3:e.next=9;break;case 5:return e.prev=5,e.t0=e.catch(0),this._loaded.reject(e.t0),e.abrupt("return");case 9:this.addEventListener("eval.request",this.evalFromEvent.bind(this)),this._ready=!0,this._loaded.resolve();case 12:case"end":return e.stop()}}),e,this,[[0,5]])}))),function(){return i.apply(this,arguments)})},{key:"ready",get:function(){return this._ready}},{key:"loaded",value:(a=(0,l.Z)(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._loaded.promise;case 2:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"basthonRoot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this._rootPath+"/"+this.version()+"/"+this.language();if(e&&!t.startsWith("http")){var n=window.location.origin+window.location.pathname;t=n.substring(0,n.lastIndexOf("/"))+"/"+t}return t}},{key:"download",value:function(e,t){if(!("string"==typeof e||e instanceof String)){var n=new Blob([e],{type:"application/octet-stream"});e=window.URL.createObjectURL(n)}var r=document.createElement("a");r.download=t,r.href=e,r.target="_blank",r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r)}},{key:"dispatchEvent",value:function(e,t){document.dispatchEvent(new k("basthon.".concat(e),t))}},{key:"addEventListener",value:function(e,t){var n=function(e){return t(e.detail)};document.addEventListener("basthon.".concat(e),n);var r=this._listeners.get(e);null==r&&(r=new Map,this._listeners.set(e,r)),r.set(t,n)}},{key:"removeEventListener",value:function(e,t){var n=this._listeners.get(e);document.removeEventListener("basthon.".concat(e),null==n?void 0:n.get(t))}},{key:"inputAsync",value:(o=(0,l.Z)(f().mark((function e(t){var n,r,u,o,a=arguments;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>1&&void 0!==a[1]&&a[1],r=a.length>2&&void 0!==a[2]?a[2]:void 0,(r=this.clone(r)).content={prompt:t,password:n},u=new Promise((function(e,t){r.resolve=e,r.reject=t})),this._pendingInput=!0,this.dispatchEvent("eval.input",r),e.next=9,u;case 9:return o=e.sent,this._pendingInput=!1,e.abrupt("return",o);case 12:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"clone",value:function(e){return JSON.parse(JSON.stringify(e))}},{key:"putRessource",value:(n=(0,l.Z)(f().mark((function e(t,n){var r,u;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u=null!==(r=t.split(".").pop())&&void 0!==r?r:"",!this.moduleExts().includes(u)){e.next=7;break}return e.next=4,this.putModule(t,n);case 4:case 9:return e.abrupt("return",e.sent);case 7:return e.next=9,this.putFile(t,n);case 10:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"pendingInput",value:function(){return this._pendingInput}},{key:"evalFromEvent",value:(t=(0,l.Z)(f().mark((function e(t){var n,r,u,o,a,i,s,c,l=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=function(e){return function(n){var r=l.clone(t);r.stream=e,r.content=n,l.dispatchEvent("eval.output",r)}},r=n("stdout"),u=n("stderr"),e.prev=3,e.next=6,this.evalAsync(t.code,r,u,t);case 6:o=e.sent,e.next=17;break;case 9:return e.prev=9,e.t0=e.catch(3),u(e.t0.toString()),(a=this.clone(t)).error=e.t0,a.execution_count=this.execution_count,this.dispatchEvent("eval.error",a),e.abrupt("return");case 17:if(null!=o){e.next=19;break}return e.abrupt("return");case 19:i=o[0],s=o[1],(c=this.clone(t)).execution_count=s,null!=i&&(c.result=i),this.dispatchEvent("eval.finished",c);case 25:case"end":return e.stop()}}),e,this,[[3,9]])}))),function(e){return t.apply(this,arguments)})}],[{key:"loadScript",value:function(e){return new Promise((function(t,n){var r=document.createElement("script");r.onload=t,r.onerror=n,r.src=e,document.head.appendChild(r)}))}}]),e}()}}]);
|
|
2
2
|
//# sourceMappingURL=kernel-base_lib_index_js.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel-base_lib_index_js.js","mappings":"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","sources":["webpack://@basthon/browser-bundle/../kernel-base/lib/kernel.js","webpack://@basthon/browser-bundle/../kernel-base/lib/version.js"],"sourcesContent":["import { PromiseDelegate } from \"promise-delegate\";\nimport { VERSION } from \"./version\";\nconst _localfsScheme = \"filesystem:/\";\n/* we mock the fetch function to redirect queries to local FS */\n(function () {\n var _a;\n const toDataURL = async (content) => {\n return await new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n resolve(reader.result);\n };\n reader.onerror = reject;\n reader.readAsDataURL(new Blob([content]));\n });\n };\n //@ts-ignore\n window._fetch = (_a = window._fetch) !== null && _a !== void 0 ? _a : window.fetch;\n window.fetch = async function (request, opts) {\n var _a;\n //@ts-ignore\n const url = (_a = request.url) !== null && _a !== void 0 ? _a : request.toString();\n const prefix = _localfsScheme;\n if (url.startsWith(prefix)) {\n const path = url.slice(prefix.length);\n let content = null;\n const options = {\n status: 200,\n statusText: \"OK\",\n headers: new Headers(),\n };\n try {\n //@ts-ignore\n content = window.Basthon.getFile(path);\n const dataURL = await toDataURL(content);\n const mime = dataURL.substring(dataURL.indexOf(\":\") + 1, dataURL.indexOf(\";\"));\n content = content.buffer;\n options.headers.append(\"Content-Type\", mime);\n options.headers.append(\"Content-Length\", content.byteLength);\n }\n catch (e) {\n options.status = 404;\n options.statusText = \"Not Found\";\n }\n return new Response(content, options);\n }\n //@ts-ignore\n return await window._fetch(request, opts);\n };\n const desc = Object.getOwnPropertyDescriptor(HTMLImageElement.prototype, \"src\");\n Object.defineProperty(HTMLImageElement.prototype, \"src\", {\n ...desc,\n get: function () {\n var _a;\n return (_a = desc === null || desc === void 0 ? void 0 : desc.get) === null || _a === void 0 ? void 0 : _a.call(this);\n },\n set: function (e) {\n var _a;\n const prefix = _localfsScheme;\n if (e.startsWith(prefix)) {\n const path = e.slice(prefix.length);\n //@ts-ignore\n const content = window.Basthon.getFile(path).buffer;\n (async () => { var _a; return (_a = desc === null || desc === void 0 ? void 0 : desc.set) === null || _a === void 0 ? void 0 : _a.call(this, await toDataURL(content)); })();\n }\n else {\n (_a = desc === null || desc === void 0 ? void 0 : desc.set) === null || _a === void 0 ? void 0 : _a.call(this, e);\n }\n },\n });\n})();\n/**\n * An error thrown by not implemented API functions.\n */\nclass NotImplementedError extends Error {\n constructor(funcName) {\n super(`Function ${funcName} not implemented!`);\n this.name = \"NotImplementedError\";\n }\n}\n/**\n * Event for Basthon's dispatch/listen.\n */\nclass BasthonEvent extends Event {\n constructor(id, data) {\n super(id);\n this.detail = data;\n }\n}\n/**\n * API that any Basthon kernel should fill to be supported\n * in console/notebook.\n */\nexport class KernelBase {\n constructor(options) {\n this._ready = false;\n this._loaded = new PromiseDelegate();\n this._execution_count = 0;\n this._pendingInput = false;\n // a map to register wrapped listeners to allow later remove\n this._listeners = new Map();\n // root path where kernel is installed\n this._rootPath = options.rootPath;\n }\n /**\n * Kernel version number (string).\n */\n version() {\n return VERSION;\n }\n /**\n * Language implemented in the kernel (string).\n * Generally lower case.\n */\n language() {\n throw new NotImplementedError(\"language\");\n }\n /**\n * Language name implemented in the kernel (string).\n * As it should be displayed in text.\n */\n languageName() {\n throw new NotImplementedError(\"languageName\");\n }\n /**\n * Script (module) file extensions\n */\n moduleExts() {\n throw new NotImplementedError(\"moduleExts\");\n }\n /**\n * Launch the kernel.\n */\n async launch() {\n throw new NotImplementedError(\"launch\");\n }\n /**\n * Execution count getter.\n */\n get execution_count() {\n return this._execution_count;\n }\n /**\n * Async code evaluation that resolves with the result.\n */\n evalAsync(code, outCallback, errCallback, data = null) {\n throw new NotImplementedError(\"evalAsync\");\n }\n restart() {\n throw new NotImplementedError(\"restart\");\n }\n async putFile(filename, content) {\n throw new NotImplementedError(\"putFile\");\n }\n async putModule(filename, content) {\n throw new NotImplementedError(\"putModule\");\n }\n userModules() {\n return [];\n }\n /**\n * Get a file content from the VFS.\n */\n getFile(path) {\n throw new NotImplementedError(\"getFile\");\n }\n /**\n * Get a user module file content.\n */\n getUserModuleFile(filename) {\n throw new NotImplementedError(\"getUserModuleFile\");\n }\n more(source) {\n throw new NotImplementedError(\"more\");\n }\n complete(code) {\n return [];\n }\n banner() {\n return `Welcome to the ${this.languageName()} REPL!`;\n }\n ps1() {\n return \">>> \";\n }\n ps2() {\n return \"... \";\n }\n /**\n * Initialize the kernel.\n */\n async init() {\n try {\n await this.launch();\n }\n catch (error) {\n this._loaded.reject(error);\n return;\n }\n // connecting eval to basthon.eval.request event.\n this.addEventListener(\"eval.request\", this.evalFromEvent.bind(this));\n this._ready = true;\n this._loaded.resolve();\n }\n /**\n * Is the kernel ready?\n */\n get ready() {\n return this._ready;\n }\n /**\n * Promise that resolve when the kernel is loaded.\n */\n async loaded() {\n await this._loaded.promise;\n }\n /**\n * Root for kernel files. This is always the language directory\n * inside the version number directory inside the kernel directory.\n */\n basthonRoot(absolute = false) {\n let url = this._rootPath + \"/\" + this.version() + \"/\" + this.language();\n if (absolute && !url.startsWith(\"http\")) {\n const base = window.location.origin + window.location.pathname;\n url = base.substring(0, base.lastIndexOf(\"/\")) + \"/\" + url;\n }\n return url;\n }\n /**\n * Downloading data (bytes array or data URL) as filename\n * (opening browser dialog).\n */\n download(data, filename) {\n if (!(typeof data === \"string\" || data instanceof String)) {\n const blob = new Blob([data], { type: \"application/octet-stream\" });\n data = window.URL.createObjectURL(blob);\n }\n const anchor = document.createElement(\"a\");\n anchor.download = filename;\n anchor.href = data;\n anchor.target = \"_blank\";\n anchor.style.display = \"none\"; // just to be safe!\n document.body.appendChild(anchor);\n anchor.click();\n document.body.removeChild(anchor);\n }\n /**\n * Dynamically load a script asynchronously.\n */\n static loadScript(url) {\n return new Promise(function (resolve, reject) {\n let script = document.createElement(\"script\");\n script.onload = resolve;\n script.onerror = reject;\n script.src = url;\n document.head.appendChild(script);\n });\n }\n /**\n * Wrapper around document.dispatchEvent.\n * It adds the 'basthon.' prefix to each event name and\n * manage the event lookup to retreive relevent data.\n */\n dispatchEvent(eventName, data) {\n document.dispatchEvent(new BasthonEvent(`basthon.${eventName}`, data));\n }\n /**\n * Wrapper around document.addEventListener.\n * It manages the 'basthon.' prefix to each event name and\n * manage the event lookup to retreive relevent data.\n */\n addEventListener(eventName, callback) {\n // wrapped callback\n const _callback = (event) => callback(event.detail);\n document.addEventListener(`basthon.${eventName}`, _callback);\n // register the wrapped callback in order to remove it\n let listeners = this._listeners.get(eventName);\n if (listeners == null) {\n listeners = new Map();\n this._listeners.set(eventName, listeners);\n }\n listeners.set(callback, _callback);\n }\n /**\n * Wrapper around document.removeEventListener.\n * It manages the 'basthon.' prefix to each event name.\n */\n removeEventListener(eventName, callback) {\n // get the wrapped callback\n const listeners = this._listeners.get(eventName);\n document.removeEventListener(`basthon.${eventName}`, listeners === null || listeners === void 0 ? void 0 : listeners.get(callback));\n }\n /**\n * Send eval.input event then wait for the user response and return it.\n */\n async inputAsync(prompt, password = false, data = undefined) {\n data = this.clone(data);\n data.content = { prompt, password };\n const promise = new Promise(function (resolve, reject) {\n data.resolve = resolve;\n data.reject = reject;\n });\n this._pendingInput = true;\n this.dispatchEvent(\"eval.input\", data);\n const res = await promise;\n this._pendingInput = false;\n return res;\n }\n /**\n * Simple clone via JSON copy.\n */\n clone(obj) {\n // simple trick that is enough for our purpose.\n return JSON.parse(JSON.stringify(obj));\n }\n /**\n * Put a ressource (file or module).\n * Detection is based on extension.\n */\n async putRessource(filename, content) {\n var _a;\n const ext = (_a = filename.split(\".\").pop()) !== null && _a !== void 0 ? _a : \"\";\n if (this.moduleExts().includes(ext)) {\n return await this.putModule(filename, content);\n }\n else {\n return await this.putFile(filename, content);\n }\n }\n /**\n * Is an input pending?\n */\n pendingInput() {\n return this._pendingInput;\n }\n /**\n * Internal. Code evaluation after an eval.request event.\n */\n async evalFromEvent(data) {\n const stdCallback = (std) => (text) => {\n let dataEvent = this.clone(data);\n dataEvent.stream = std;\n dataEvent.content = text;\n this.dispatchEvent(\"eval.output\", dataEvent);\n };\n const outCallback = stdCallback(\"stdout\");\n const errCallback = stdCallback(\"stderr\");\n let args;\n try {\n args = await this.evalAsync(data.code, outCallback, errCallback, data);\n }\n catch (error) {\n errCallback(error.toString());\n const dataEvent = this.clone(data);\n dataEvent.error = error;\n dataEvent.execution_count = this.execution_count;\n this.dispatchEvent(\"eval.error\", dataEvent);\n return;\n }\n if (args == null)\n return; // this should not happend\n const result = args[0];\n const executionCount = args[1];\n let dataEvent = this.clone(data);\n dataEvent.execution_count = executionCount;\n if (result != null)\n dataEvent.result = result;\n this.dispatchEvent(\"eval.finished\", dataEvent);\n }\n}\n","export const VERSION = \"0.61.2\";\n"],"names":["_localfsScheme","_a","toDataURL","_ref","_asyncToGenerator","_regeneratorRuntime","_callee","content","_context","prev","next","Promise","resolve","reject","reader","FileReader","onloadend","result","onerror","readAsDataURL","Blob","abrupt","sent","stop","_x","apply","arguments","window","_fetch","fetch","_ref2","_callee2","request","opts","url","prefix","path","options","dataURL","mime","_context2","toString","startsWith","slice","status","statusText","headers","Headers","Basthon","getFile","substring","indexOf","buffer","append","byteLength","t0","Response","_x2","_x3","desc","Object","getOwnPropertyDescriptor","HTMLImageElement","prototype","defineProperty","_objectSpread","get","call","this","set","e","_this","_callee3","_context3","t1","t2","t3","NotImplementedError","_Error","_inherits","_super","_createSuper","funcName","_this2","_classCallCheck","concat","name","_createClass","_wrapNativeSuper","Error","BasthonEvent","_Event","_super2","id","data","_this3","detail","Event","KernelBase","_ready","_loaded","PromiseDelegate","_execution_count","_pendingInput","_listeners","Map","_rootPath","rootPath","_evalFromEvent","_putRessource","_inputAsync","_init","_putModule","_putFile","_launch","key","value","_callee4","_context4","code","outCallback","errCallback","_callee5","filename","_context5","_x4","_x5","_callee6","_context6","_x6","_x7","source","languageName","_callee7","_context7","launch","addEventListener","evalFromEvent","bind","_callee8","_context8","promise","absolute","length","undefined","version","language","base","location","origin","pathname","lastIndexOf","String","blob","type","URL","createObjectURL","anchor","document","createElement","download","href","target","style","display","body","appendChild","click","removeChild","eventName","dispatchEvent","callback","_callback","event","listeners","removeEventListener","_callee9","prompt","password","res","_args9","_context9","clone","_x8","obj","JSON","parse","stringify","_callee10","ext","_context10","split","pop","moduleExts","includes","putModule","putFile","_x9","_x10","_callee11","stdCallback","args","_dataEvent","executionCount","dataEvent","_this4","_context11","std","text","stream","evalAsync","error","execution_count","_x11","script","onload","src","head"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"kernel-base_lib_index_js.js","mappings":"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","sources":["webpack://@basthon/browser-bundle/../kernel-base/lib/kernel.js","webpack://@basthon/browser-bundle/../kernel-base/lib/version.js"],"sourcesContent":["import { PromiseDelegate } from \"promise-delegate\";\nimport { VERSION } from \"./version\";\nconst _localfsScheme = \"filesystem:/\";\n/* we mock the fetch function to redirect queries to local FS */\n(function () {\n var _a;\n const toDataURL = async (content) => {\n return await new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n resolve(reader.result);\n };\n reader.onerror = reject;\n reader.readAsDataURL(new Blob([content]));\n });\n };\n //@ts-ignore\n window._fetch = (_a = window._fetch) !== null && _a !== void 0 ? _a : window.fetch;\n window.fetch = async function (request, opts) {\n var _a;\n //@ts-ignore\n const url = (_a = request.url) !== null && _a !== void 0 ? _a : request.toString();\n const prefix = _localfsScheme;\n if (url.startsWith(prefix)) {\n const path = url.slice(prefix.length);\n let content = null;\n const options = {\n status: 200,\n statusText: \"OK\",\n headers: new Headers(),\n };\n try {\n //@ts-ignore\n content = window.Basthon.getFile(path);\n const dataURL = await toDataURL(content);\n const mime = dataURL.substring(dataURL.indexOf(\":\") + 1, dataURL.indexOf(\";\"));\n content = content.buffer;\n options.headers.append(\"Content-Type\", mime);\n options.headers.append(\"Content-Length\", content.byteLength);\n }\n catch (e) {\n options.status = 404;\n options.statusText = \"Not Found\";\n }\n return new Response(content, options);\n }\n //@ts-ignore\n return await window._fetch(request, opts);\n };\n const desc = Object.getOwnPropertyDescriptor(HTMLImageElement.prototype, \"src\");\n Object.defineProperty(HTMLImageElement.prototype, \"src\", {\n ...desc,\n get: function () {\n var _a;\n return (_a = desc === null || desc === void 0 ? void 0 : desc.get) === null || _a === void 0 ? void 0 : _a.call(this);\n },\n set: function (e) {\n var _a;\n const prefix = _localfsScheme;\n if (e.startsWith(prefix)) {\n const path = e.slice(prefix.length);\n //@ts-ignore\n const content = window.Basthon.getFile(path).buffer;\n (async () => { var _a; return (_a = desc === null || desc === void 0 ? void 0 : desc.set) === null || _a === void 0 ? void 0 : _a.call(this, await toDataURL(content)); })();\n }\n else {\n (_a = desc === null || desc === void 0 ? void 0 : desc.set) === null || _a === void 0 ? void 0 : _a.call(this, e);\n }\n },\n });\n})();\n/**\n * An error thrown by not implemented API functions.\n */\nclass NotImplementedError extends Error {\n constructor(funcName) {\n super(`Function ${funcName} not implemented!`);\n this.name = \"NotImplementedError\";\n }\n}\n/**\n * Event for Basthon's dispatch/listen.\n */\nclass BasthonEvent extends Event {\n constructor(id, data) {\n super(id);\n this.detail = data;\n }\n}\n/**\n * API that any Basthon kernel should fill to be supported\n * in console/notebook.\n */\nexport class KernelBase {\n constructor(options) {\n this._ready = false;\n this._loaded = new PromiseDelegate();\n this._execution_count = 0;\n this._pendingInput = false;\n // a map to register wrapped listeners to allow later remove\n this._listeners = new Map();\n // root path where kernel is installed\n this._rootPath = options.rootPath;\n }\n /**\n * Kernel version number (string).\n */\n version() {\n return VERSION;\n }\n /**\n * Language implemented in the kernel (string).\n * Generally lower case.\n */\n language() {\n throw new NotImplementedError(\"language\");\n }\n /**\n * Language name implemented in the kernel (string).\n * As it should be displayed in text.\n */\n languageName() {\n throw new NotImplementedError(\"languageName\");\n }\n /**\n * Script (module) file extensions\n */\n moduleExts() {\n throw new NotImplementedError(\"moduleExts\");\n }\n /**\n * Launch the kernel.\n */\n async launch() {\n throw new NotImplementedError(\"launch\");\n }\n /**\n * Execution count getter.\n */\n get execution_count() {\n return this._execution_count;\n }\n /**\n * Async code evaluation that resolves with the result.\n */\n evalAsync(code, outCallback, errCallback, data = null) {\n throw new NotImplementedError(\"evalAsync\");\n }\n restart() {\n throw new NotImplementedError(\"restart\");\n }\n async putFile(filename, content) {\n throw new NotImplementedError(\"putFile\");\n }\n async putModule(filename, content) {\n throw new NotImplementedError(\"putModule\");\n }\n userModules() {\n return [];\n }\n /**\n * Get a file content from the VFS.\n */\n getFile(path) {\n throw new NotImplementedError(\"getFile\");\n }\n /**\n * Get a user module file content.\n */\n getUserModuleFile(filename) {\n throw new NotImplementedError(\"getUserModuleFile\");\n }\n more(source) {\n throw new NotImplementedError(\"more\");\n }\n complete(code) {\n return [];\n }\n banner() {\n return `Welcome to the ${this.languageName()} REPL!`;\n }\n ps1() {\n return \">>> \";\n }\n ps2() {\n return \"... \";\n }\n /**\n * Initialize the kernel.\n */\n async init() {\n try {\n await this.launch();\n }\n catch (error) {\n this._loaded.reject(error);\n return;\n }\n // connecting eval to basthon.eval.request event.\n this.addEventListener(\"eval.request\", this.evalFromEvent.bind(this));\n this._ready = true;\n this._loaded.resolve();\n }\n /**\n * Is the kernel ready?\n */\n get ready() {\n return this._ready;\n }\n /**\n * Promise that resolve when the kernel is loaded.\n */\n async loaded() {\n await this._loaded.promise;\n }\n /**\n * Root for kernel files. This is always the language directory\n * inside the version number directory inside the kernel directory.\n */\n basthonRoot(absolute = false) {\n let url = this._rootPath + \"/\" + this.version() + \"/\" + this.language();\n if (absolute && !url.startsWith(\"http\")) {\n const base = window.location.origin + window.location.pathname;\n url = base.substring(0, base.lastIndexOf(\"/\")) + \"/\" + url;\n }\n return url;\n }\n /**\n * Downloading data (bytes array or data URL) as filename\n * (opening browser dialog).\n */\n download(data, filename) {\n if (!(typeof data === \"string\" || data instanceof String)) {\n const blob = new Blob([data], { type: \"application/octet-stream\" });\n data = window.URL.createObjectURL(blob);\n }\n const anchor = document.createElement(\"a\");\n anchor.download = filename;\n anchor.href = data;\n anchor.target = \"_blank\";\n anchor.style.display = \"none\"; // just to be safe!\n document.body.appendChild(anchor);\n anchor.click();\n document.body.removeChild(anchor);\n }\n /**\n * Dynamically load a script asynchronously.\n */\n static loadScript(url) {\n return new Promise(function (resolve, reject) {\n let script = document.createElement(\"script\");\n script.onload = resolve;\n script.onerror = reject;\n script.src = url;\n document.head.appendChild(script);\n });\n }\n /**\n * Wrapper around document.dispatchEvent.\n * It adds the 'basthon.' prefix to each event name and\n * manage the event lookup to retreive relevent data.\n */\n dispatchEvent(eventName, data) {\n document.dispatchEvent(new BasthonEvent(`basthon.${eventName}`, data));\n }\n /**\n * Wrapper around document.addEventListener.\n * It manages the 'basthon.' prefix to each event name and\n * manage the event lookup to retreive relevent data.\n */\n addEventListener(eventName, callback) {\n // wrapped callback\n const _callback = (event) => callback(event.detail);\n document.addEventListener(`basthon.${eventName}`, _callback);\n // register the wrapped callback in order to remove it\n let listeners = this._listeners.get(eventName);\n if (listeners == null) {\n listeners = new Map();\n this._listeners.set(eventName, listeners);\n }\n listeners.set(callback, _callback);\n }\n /**\n * Wrapper around document.removeEventListener.\n * It manages the 'basthon.' prefix to each event name.\n */\n removeEventListener(eventName, callback) {\n // get the wrapped callback\n const listeners = this._listeners.get(eventName);\n document.removeEventListener(`basthon.${eventName}`, listeners === null || listeners === void 0 ? void 0 : listeners.get(callback));\n }\n /**\n * Send eval.input event then wait for the user response and return it.\n */\n async inputAsync(prompt, password = false, data = undefined) {\n data = this.clone(data);\n data.content = { prompt, password };\n const promise = new Promise(function (resolve, reject) {\n data.resolve = resolve;\n data.reject = reject;\n });\n this._pendingInput = true;\n this.dispatchEvent(\"eval.input\", data);\n const res = await promise;\n this._pendingInput = false;\n return res;\n }\n /**\n * Simple clone via JSON copy.\n */\n clone(obj) {\n // simple trick that is enough for our purpose.\n return JSON.parse(JSON.stringify(obj));\n }\n /**\n * Put a ressource (file or module).\n * Detection is based on extension.\n */\n async putRessource(filename, content) {\n var _a;\n const ext = (_a = filename.split(\".\").pop()) !== null && _a !== void 0 ? _a : \"\";\n if (this.moduleExts().includes(ext)) {\n return await this.putModule(filename, content);\n }\n else {\n return await this.putFile(filename, content);\n }\n }\n /**\n * Is an input pending?\n */\n pendingInput() {\n return this._pendingInput;\n }\n /**\n * Internal. Code evaluation after an eval.request event.\n */\n async evalFromEvent(data) {\n const stdCallback = (std) => (text) => {\n let dataEvent = this.clone(data);\n dataEvent.stream = std;\n dataEvent.content = text;\n this.dispatchEvent(\"eval.output\", dataEvent);\n };\n const outCallback = stdCallback(\"stdout\");\n const errCallback = stdCallback(\"stderr\");\n let args;\n try {\n args = await this.evalAsync(data.code, outCallback, errCallback, data);\n }\n catch (error) {\n errCallback(error.toString());\n const dataEvent = this.clone(data);\n dataEvent.error = error;\n dataEvent.execution_count = this.execution_count;\n this.dispatchEvent(\"eval.error\", dataEvent);\n return;\n }\n if (args == null)\n return; // this should not happend\n const result = args[0];\n const executionCount = args[1];\n let dataEvent = this.clone(data);\n dataEvent.execution_count = executionCount;\n if (result != null)\n dataEvent.result = result;\n this.dispatchEvent(\"eval.finished\", dataEvent);\n }\n}\n","export const VERSION = \"0.61.4\";\n"],"names":["_localfsScheme","_a","toDataURL","_ref","_asyncToGenerator","_regeneratorRuntime","_callee","content","_context","prev","next","Promise","resolve","reject","reader","FileReader","onloadend","result","onerror","readAsDataURL","Blob","abrupt","sent","stop","_x","apply","arguments","window","_fetch","fetch","_ref2","_callee2","request","opts","url","prefix","path","options","dataURL","mime","_context2","toString","startsWith","slice","status","statusText","headers","Headers","Basthon","getFile","substring","indexOf","buffer","append","byteLength","t0","Response","_x2","_x3","desc","Object","getOwnPropertyDescriptor","HTMLImageElement","prototype","defineProperty","_objectSpread","get","call","this","set","e","_this","_callee3","_context3","t1","t2","t3","NotImplementedError","_Error","_inherits","_super","_createSuper","funcName","_this2","_classCallCheck","concat","name","_createClass","_wrapNativeSuper","Error","BasthonEvent","_Event","_super2","id","data","_this3","detail","Event","KernelBase","_ready","_loaded","PromiseDelegate","_execution_count","_pendingInput","_listeners","Map","_rootPath","rootPath","_evalFromEvent","_putRessource","_inputAsync","_init","_putModule","_putFile","_launch","key","value","_callee4","_context4","code","outCallback","errCallback","_callee5","filename","_context5","_x4","_x5","_callee6","_context6","_x6","_x7","source","languageName","_callee7","_context7","launch","addEventListener","evalFromEvent","bind","_callee8","_context8","promise","absolute","length","undefined","version","language","base","location","origin","pathname","lastIndexOf","String","blob","type","URL","createObjectURL","anchor","document","createElement","download","href","target","style","display","body","appendChild","click","removeChild","eventName","dispatchEvent","callback","_callback","event","listeners","removeEventListener","_callee9","prompt","password","res","_args9","_context9","clone","_x8","obj","JSON","parse","stringify","_callee10","ext","_context10","split","pop","moduleExts","includes","putModule","putFile","_x9","_x10","_callee11","stdCallback","args","_dataEvent","executionCount","dataEvent","_this4","_context11","std","text","stream","evalAsync","error","execution_count","_x11","script","onload","src","head"],"sourceRoot":""}
|