UNPKG

@codesandbox/sandpack-client

Version:

<img style="width:100%" src="https://user-images.githubusercontent.com/4838076/143581035-ebee5ba2-9cb1-4fe8-a05b-2f44bd69bb4b.gif" alt="Component toolkit for live running code editing experiences" />

1 lines 6.02 kB
!function(e){var t={};function r(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(o,n,function(t){return e[t]}.bind(null,n));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="/",r(r.s="../../node_modules/thread-loader/dist/cjs.js?!../../node_modules/babel-loader/lib/index.js?!./src/sandbox/eval/transpilers/coffee/coffee-worker.ts")}({"../../node_modules/@babel/runtime/helpers/asyncToGenerator.js":function(e,t){function r(e,t,r,o,n,s,i){try{var a=e[s](i),l=a.value}catch(e){return void r(e)}a.done?t(l):Promise.resolve(l).then(o,n)}e.exports=function(e){return function(){var t=this,o=arguments;return new Promise((function(n,s){var i=e.apply(t,o);function a(e){r(i,n,s,a,l,"next",e)}function l(e){r(i,n,s,a,l,"throw",e)}a(void 0)}))}},e.exports.__esModule=!0,e.exports.default=e.exports},"../../node_modules/@babel/runtime/helpers/defineProperty.js":function(e,t,r){var o=r("../../node_modules/@babel/runtime/helpers/toPropertyKey.js");e.exports=function(e,t,r){return(t=o(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e},e.exports.__esModule=!0,e.exports.default=e.exports},"../../node_modules/@babel/runtime/helpers/toPrimitive.js":function(e,t,r){var o=r("../../node_modules/@babel/runtime/helpers/typeof.js").default;e.exports=function(e,t){if("object"!==o(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)},e.exports.__esModule=!0,e.exports.default=e.exports},"../../node_modules/@babel/runtime/helpers/toPropertyKey.js":function(e,t,r){var o=r("../../node_modules/@babel/runtime/helpers/typeof.js").default,n=r("../../node_modules/@babel/runtime/helpers/toPrimitive.js");e.exports=function(e){var t=n(e,"string");return"symbol"===o(t)?t:String(t)},e.exports.__esModule=!0,e.exports.default=e.exports},"../../node_modules/@babel/runtime/helpers/typeof.js":function(e,t){function r(t){return e.exports=r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,r(t)}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports},"../../node_modules/thread-loader/dist/cjs.js?!../../node_modules/babel-loader/lib/index.js?!./src/sandbox/eval/transpilers/coffee/coffee-worker.ts":function(e,t,r){"use strict";r.r(t);var o=r("../../node_modules/@babel/runtime/helpers/asyncToGenerator.js"),n=r.n(o),s=r("../../node_modules/@babel/runtime/helpers/defineProperty.js"),i=r.n(s);class a extends Error{}const l=new class{constructor(e){i()(this,"name",void 0),i()(this,"functions",new Map),i()(this,"pendingCalls",new Map),i()(this,"callId",0),i()(this,"isReady",!1),i()(this,"initializeFS",void 0),i()(this,"queuedMessages",[]),this.name=e,self.addEventListener("message",e=>{this.handleMessage(e.data).catch(console.error)}),self.postMessage({type:"worker_started",codesandbox:!0})}registerFunction(e,t){this.functions.set(e,t)}registerFSInitializer(e){this.initializeFS=e}handleMessage(e){var t=this;return n()((function*(){if("object"==typeof e&&e.codesandbox)if(t.isReady)switch(e.type){case"ping":t.isReady&&(yield t.emitReady());break;case"request":yield t.handleCallRequest(e);break;case"response":yield t.handleCallResponse(e);break;case"initialize-fs":if(!t.initializeFS)throw new Error("initializeFS is undefined for ".concat(t.name));yield t.initializeFS()}else t.queuedMessages.push(e);else e.browserfsMessage||console.warn("Invalid message from main thread to ".concat(t.name),e)}))()}handleCallResponse(e){const t=this.pendingCalls.get(e.idx);t&&(e.isError?t.reject(function(e){const t=new a(e.message);return t.name=e.name,t.columnNumber=e.columnNumber,t.fileName=e.fileName,t.lineNumber=e.lineNumber,t}(e.data)):t.resolve(e.data))}handleCallRequest(e){var t=this;return n()((function*(){try{const r=t.functions.get(e.method);if(!r)throw new Error("Could not find registered child function for call ".concat(t.name,"#").concat(e.method));const o=yield r(e.data);self.postMessage({type:"response",codesandbox:!0,idx:e.idx,data:o})}catch(t){console.error(t),self.postMessage({type:"response",codesandbox:!0,idx:e.idx,isError:!0,data:(r=t,{name:r.name,message:r.message,fileName:r.fileName,lineNumber:r.lineNumber,columnNumber:r.columnNumber})})}var r}))()}callFn(e){let t=e.method,r=e.data;const o=this.callId++,n={type:"request",codesandbox:!0,idx:o,method:t,data:r};return new Promise((e,s)=>{this.pendingCalls.set(o,{method:t,data:r,resolve:e,reject:s}),self.postMessage(n)})}emitReady(){this.isReady=!0,this.queuedMessages.forEach(e=>{console.warn("Run queued message",e),this.handleMessage(e).catch(console.error)}),self.postMessage({type:"ready",codesandbox:!0})}}("coffee-worker");function u(){return(u=n()((function*(e){const t=e.code,r=e.path;return{code:self.CoffeeScript.compile(t,{filename:r,sourceFiles:[r],bare:!0,literate:!1,inlineMap:!0,sourceMap:!1})}}))).apply(this,arguments)}self.importScripts("".concat("","/static/js/coffeescript.2.3.2.js")),l.registerFunction("compile",(function(e){return u.apply(this,arguments)})),l.emitReady()}});