@21st-dev/magic
Version:
Magic MCP UI builder by 21st.dev
1 lines • 112 kB
JavaScript
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[193],{25776:(e,t,n)=>{n.d(t,{G5:()=>nf,cW:()=>tD,l5:()=>e4,ny:()=>e7});var r,o,i,s,a,c,l,d,u,p,f,m,h,v,g,b,x=n(95155),y=n(12115),j=n(82979),w=n(878),$=n(47192),C=n(26084),k=n(13284),S=n(77454),N=n(60802),O=n(61245),A=n(73603),E=n(97288),L=n(90061),M=n(70943),F=n(77175),I=n(78520),D=n(89105),R=n(69322),T=n(39345),H=function(){return(H=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function B(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}function P(e,t,n,r){return new(n||(n=Promise))(function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):((t=e.value)instanceof n?t:new n(function(e){e(t)})).then(s,a)}c((r=r.apply(e,t||[])).next())})}function z(e,t){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var c=[i,a];if(n)throw TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return s.label++,{value:c[1],done:!1};case 5:s.label++,r=c[1],c=[0];continue;case 7:c=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){s=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){s.label=c[1];break}if(6===c[0]&&s.label<o[1]){s.label=o[1],o=c;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(c);break}o[2]&&s.ops.pop(),s.trys.pop();continue}c=t.call(e,s)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function _(e,t,n){if(n||2==arguments.length)for(var r,o=0,i=t.length;o<i;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))}var U=function(e){return(0,x.jsx)("svg",H({fill:"currentColor",height:"16",viewBox:"0 0 16 16",width:"16",xmlns:"http://www.w3.org/2000/svg"},e))},Z=function(){return(0,x.jsxs)(U,{viewBox:"0 0 48 48",children:[(0,x.jsx)("title",{children:"Sign in"}),(0,x.jsx)("path",{d:"M9 42q-1.2 0-2.1-.9Q6 40.2 6 39V9q0-1.2.9-2.1Q7.8 6 9 6h14.55v3H9v30h14.55v3Zm24.3-9.25-2.15-2.15 5.1-5.1h-17.5v-3h17.4l-5.1-5.1 2.15-2.15 8.8 8.8Z"})]})},J=function(){return(0,x.jsxs)(U,{viewBox:"0 0 48 48",children:[(0,x.jsx)("title",{children:"Sign out"}),(0,x.jsx)("path",{d:"M9 42q-1.2 0-2.1-.9Q6 40.2 6 39V9q0-1.2.9-2.1Q7.8 6 9 6h14.55v3H9v30h14.55v3Zm24.3-9.25-2.15-2.15 5.1-5.1h-17.5v-3h17.4l-5.1-5.1 2.15-2.15 8.8 8.8Z"})]})},W=function(){return(0,x.jsxs)(U,{fill:"none",stroke:"currentColor",children:[(0,x.jsx)("title",{children:"Restart script"}),(0,x.jsx)("path",{d:"M8 2C4.68629 2 2 4.68629 2 8C2 10.0946 3.07333 11.9385 4.7 13.0118",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M14.0005 7.9998C14.0005 5.82095 12.8391 3.91335 11.1016 2.8623",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M14.0003 2.3335H11.167C10.8908 2.3335 10.667 2.55735 10.667 2.8335V5.66683",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M1.99967 13.6665L4.83301 13.6665C5.10915 13.6665 5.33301 13.4426 5.33301 13.1665L5.33301 10.3332",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M10 10L12 12L10 14",strokeLinecap:"round",strokeLinejoin:"round"}),(0,x.jsx)("path",{d:"M14.667 14L12.667 14",strokeLinecap:"round",strokeLinejoin:"round"})]})},V=function(){return(0,x.jsxs)(U,{children:[(0,x.jsx)("title",{children:"Run sandbox"}),(0,x.jsx)("path",{d:"M11.0792 8.1078C11.2793 8.25007 11.27 8.55012 11.0616 8.67981L6.02535 11.8135C5.79638 11.956 5.5 11.7913 5.5 11.5216L5.5 8.40703L5.5 4.80661C5.5 4.52735 5.81537 4.36463 6.04296 4.52647L11.0792 8.1078Z"})]})},Y=function(){return(0,x.jsxs)(U,{children:[(0,x.jsx)("title",{children:"Click to go back"}),(0,x.jsx)("path",{d:"M9.64645 12.3536C9.84171 12.5488 10.1583 12.5488 10.3536 12.3536C10.5488 12.1583 10.5488 11.8417 10.3536 11.6464L9.64645 12.3536ZM10.3536 4.35355C10.5488 4.15829 10.5488 3.84171 10.3536 3.64644C10.1583 3.45118 9.84171 3.45118 9.64645 3.64644L10.3536 4.35355ZM6.07072 7.92929L5.71716 7.57573L6.07072 7.92929ZM10.3536 11.6464L6.42427 7.71716L5.71716 8.42426L9.64645 12.3536L10.3536 11.6464ZM6.42427 8.28284L10.3536 4.35355L9.64645 3.64644L5.71716 7.57573L6.42427 8.28284ZM6.42427 7.71716C6.58048 7.87337 6.58048 8.12663 6.42427 8.28284L5.71716 7.57573C5.48285 7.81005 5.48285 8.18995 5.71716 8.42426L6.42427 7.71716Z"})]})},q=function(){return(0,x.jsxs)(U,{children:[(0,x.jsx)("title",{children:"Click to go forward"}),(0,x.jsx)("path",{d:"M6.35355 3.64645C6.15829 3.45118 5.84171 3.45118 5.64645 3.64645C5.45118 3.84171 5.45118 4.15829 5.64645 4.35355L6.35355 3.64645ZM5.64645 11.6464C5.45118 11.8417 5.45118 12.1583 5.64645 12.3536C5.84171 12.5488 6.15829 12.5488 6.35355 12.3536L5.64645 11.6464ZM9.92929 8.07071L10.2828 8.42426L9.92929 8.07071ZM5.64645 4.35355L9.57574 8.28284L10.2828 7.57574L6.35355 3.64645L5.64645 4.35355ZM9.57574 7.71716L5.64645 11.6464L6.35355 12.3536L10.2828 8.42426L9.57574 7.71716ZM9.57574 8.28284C9.41952 8.12663 9.41953 7.87337 9.57574 7.71716L10.2828 8.42426C10.5172 8.18995 10.5172 7.81005 10.2828 7.57574L9.57574 8.28284Z"})]})},G=function(){return(0,x.jsxs)(U,{children:[(0,x.jsx)("title",{children:"Refresh preview"}),(0,x.jsx)("path",{clipRule:"evenodd",d:"M3.83325 7.99992C3.83325 5.69867 5.69853 3.83325 7.99934 3.83325C9.81246 3.83325 11.3563 4.99195 11.9285 6.61097C11.9396 6.6425 11.9536 6.67221 11.97 6.69992H8.80005C8.52391 6.69992 8.30005 6.92378 8.30005 7.19992C8.30005 7.47606 8.52391 7.69992 8.80005 7.69992H12.5667C12.8981 7.69992 13.1667 7.43129 13.1667 7.09992V3.33325C13.1667 3.05711 12.9429 2.83325 12.6667 2.83325C12.3906 2.83325 12.1667 3.05711 12.1667 3.33325V4.94608C11.2268 3.66522 9.7106 2.83325 7.99934 2.83325C5.14613 2.83325 2.83325 5.14651 2.83325 7.99992C2.83325 10.8533 5.14613 13.1666 7.99934 13.1666C9.91218 13.1666 11.5815 12.1266 12.474 10.5836C12.6123 10.3446 12.5306 10.0387 12.2915 9.90044C12.0525 9.76218 11.7466 9.84387 11.6084 10.0829C10.8873 11.3296 9.54072 12.1666 7.99934 12.1666C5.69853 12.1666 3.83325 10.3012 3.83325 7.99992Z",fillRule:"evenodd"})]})},X=function(){return(0,x.jsxs)(U,{fill:"none",stroke:"currentColor",children:[(0,x.jsx)("title",{children:"Open on CodeSandbox"}),(0,x.jsx)("path",{d:"M6.66665 3.33337H4.33331C3.78103 3.33337 3.33331 3.78109 3.33331 4.33337V11.6667C3.33331 12.219 3.78103 12.6667 4.33331 12.6667H11.6666C12.2189 12.6667 12.6666 12.219 12.6666 11.6667V9.33337",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M10 3.33337H12.5667C12.6219 3.33337 12.6667 3.37815 12.6667 3.43337V6.00004",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M7.33331 8.66668L12.5333 3.46667",strokeLinecap:"round"})]})},K=function(){return jsxs(U,{children:[jsx("title",{children:"Directory"}),jsx("path",{d:"M12.5526 12.6667H3.66675C3.2922 12.6667 2.96575 12.4608 2.79442 12.156L3.81072 8.0908C3.92201 7.64563 4.32199 7.33333 4.78086 7.33333H13.386C14.0365 7.33333 14.5139 7.94472 14.3561 8.57587L13.5228 11.9092C13.4115 12.3544 13.0115 12.6667 12.5526 12.6667Z",fill:"currentColor"}),jsx("path",{d:"M13.3334 6.63333V6.33333C13.3334 5.78105 12.8857 5.33333 12.3334 5.33333H8.30286C8.10543 5.33333 7.91242 5.2749 7.74816 5.16538L6.25201 4.16795C6.08774 4.05844 5.89473 4 5.69731 4H3.66675C3.11446 4 2.66675 4.44772 2.66675 5L2.66675 11.6667C2.66675 12.219 3.11446 12.6667 3.66675 12.6667H12.5526C13.0115 12.6667 13.4115 12.3544 13.5228 11.9092L14.3561 8.57587C14.5139 7.94472 14.0365 7.33333 13.386 7.33333H4.78086C4.32199 7.33333 3.92201 7.64563 3.81072 8.0908L2.75008 12.3333",fill:"none",stroke:"currentColor",strokeLinecap:"round"})]})},Q=function(){return jsxs(U,{children:[jsx("title",{children:"Directory"}),jsx("path",{d:"M12.3334 12.6667H3.66675C3.11446 12.6667 2.66675 12.219 2.66675 11.6667V5C2.66675 4.44772 3.11446 4 3.66675 4H5.69731C5.89473 4 6.08774 4.05844 6.25201 4.16795L7.74816 5.16538C7.91242 5.2749 8.10543 5.33333 8.30286 5.33333H12.3334C12.8857 5.33333 13.3334 5.78105 13.3334 6.33333V11.6667C13.3334 12.219 12.8857 12.6667 12.3334 12.6667Z",fill:"currentColor",stroke:"currentColor",strokeLinecap:"round"})]})},ee=function(){return jsxs(U,{fill:"currentColor",children:[jsx("title",{children:"File"}),jsx("path",{clipRule:"evenodd",d:"M4.5 4.33325C4.5 4.05711 4.72386 3.83325 5 3.83325H8.16675V6.56659C8.16675 6.89795 8.43538 7.16658 8.76675 7.16658H11.5V12.3333C11.5 12.6094 11.2761 12.8333 11 12.8333H5C4.72386 12.8333 4.5 12.6094 4.5 12.3333V4.33325ZM12.5 6.67568C12.5001 6.67265 12.5001 6.66962 12.5001 6.66658C12.5001 6.66355 12.5001 6.66052 12.5 6.65749V6.41413C12.5 6.01631 12.342 5.63478 12.0607 5.35347L9.97978 3.27259C9.69848 2.99129 9.31694 2.83325 8.91912 2.83325H8.66675H5C4.17157 2.83325 3.5 3.50483 3.5 4.33325V12.3333C3.5 13.1617 4.17157 13.8333 5 13.8333H11C11.8284 13.8333 12.5 13.1617 12.5 12.3333V6.67568ZM9.16675 3.89888C9.20518 3.92078 9.24085 3.94787 9.27267 3.9797L11.3536 6.06058C11.3854 6.09243 11.4125 6.12813 11.4344 6.16658H9.16675V3.89888Z",fillRule:"evenodd"})]})},et=function(){return(0,x.jsxs)(U,{stroke:"currentColor",children:[(0,x.jsx)("title",{children:"Close file"}),(0,x.jsx)("path",{d:"M12 4L4 12",strokeLinecap:"round"}),(0,x.jsx)("path",{d:"M4 4L12 12",strokeLinecap:"round"})]})},en=function(){return jsxs(U,{children:[jsx("title",{children:"Open browser console"}),jsx("path",{d:"M5.65871 3.62037C5.44905 3.44066 5.1334 3.46494 4.95368 3.6746C4.77397 3.88427 4.79825 4.19992 5.00792 4.37963L5.65871 3.62037ZM5.00792 11.6204C4.79825 11.8001 4.77397 12.1157 4.95368 12.3254C5.1334 12.5351 5.44905 12.5593 5.65871 12.3796L5.00792 11.6204ZM9.9114 7.92407L10.2368 7.54445L9.9114 7.92407ZM5.00792 4.37963L9.586 8.3037L10.2368 7.54445L5.65871 3.62037L5.00792 4.37963ZM9.586 7.6963L5.00792 11.6204L5.65871 12.3796L10.2368 8.45555L9.586 7.6963ZM9.586 8.3037C9.39976 8.14407 9.39976 7.85594 9.586 7.6963L10.2368 8.45555C10.5162 8.2161 10.5162 7.7839 10.2368 7.54445L9.586 8.3037Z"}),jsx("path",{d:"M10 11.5C9.72386 11.5 9.5 11.7239 9.5 12C9.5 12.2761 9.72386 12.5 10 12.5V11.5ZM14.6667 12.5C14.9428 12.5 15.1667 12.2761 15.1667 12C15.1667 11.7239 14.9428 11.5 14.6667 11.5V12.5ZM10 12.5H14.6667V11.5H10V12.5Z"})]})},er={colors:{surface1:"#ffffff",surface2:"#EFEFEF",surface3:"#F3F3F3",disabled:"#C5C5C5",base:"#323232",clickable:"#808080",hover:"#4D4D4D",accent:"#3973E0",error:"#EA3323",errorSurface:"#FCF1F0",warning:"#6A4516",warningSurface:"#FEF2C0"},syntax:{plain:"#151515",comment:{color:"#999",fontStyle:"italic"},keyword:"#7C5AE3",tag:"#0971F1",punctuation:"#3B3B3B",definition:"#85A600",property:"#3B3B3B",static:"#3B3B3B",string:"#2E6BD0"},font:{body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'"Fira Mono", "DejaVu Sans Mono", Menlo, Consolas, "Liberation Mono", Monaco, "Lucida Console", monospace',size:"13px",lineHeight:"20px"}},eo={colors:{surface1:"#151515",surface2:"#252525",surface3:"#2F2F2F",disabled:"#4D4D4D",base:"#808080",clickable:"#999999",hover:"#C5C5C5",accent:"#E5E5E5",error:"#FFB4A6",errorSurface:"#690000",warning:"#E7C400",warningSurface:"#3A3000"},syntax:{plain:"#FFFFFF",comment:{color:"#757575",fontStyle:"italic"},keyword:"#77B7D7",tag:"#DFAB5C",punctuation:"#ffffff",definition:"#86D9CA",property:"#77B7D7",static:"#C64640",string:"#977CDC"},font:{body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'"Fira Mono", "DejaVu Sans Mono", Menlo, Consolas, "Liberation Mono", Monaco, "Lucida Console", monospace',size:"13px",lineHeight:"20px"}},ei={light:er,dark:eo,auto:"undefined"!=typeof window&&(null==(r=null==window?void 0:window.matchMedia)?void 0:r.call(window,"(prefers-color-scheme: dark)").matches)?eo:er},es=function(e){var t=e.lastIndexOf("/");return e.slice(t+1)},ea=function(e,t){var n=("/"===e[0]?e.slice(1):e).split("/"),r=[];if(1===n.length)r.unshift(n[0]);else for(var o=0;o<t.length;o++)for(var i=t[o].split("/"),s=1;s<=n.length;s++){var a=n[n.length-s],c=i[i.length-s];if(r.length<s&&r.unshift(a),a!==c)break}return r.length<n.length&&r.unshift(".."),r.join("/")},ec=function(e){var t=0,n=0,r=0;if(e.startsWith("#")){if(e.length<7)return!0;t=parseInt(e.substr(1,2),16),n=parseInt(e.substr(3,2),16),r=parseInt(e.substr(5,2),16)}else{var o=e.replace("rgb(","").replace("rgba(","").replace(")","").split(",");if(o.length<3)return!0;t=parseInt(o[0],10),n=parseInt(o[1],10),r=parseInt(o[2],10)}return(299*t+587*n+114*r)/1e3<128},el=0,ed=function(){return(+(Date.now().toString(10).substr(0,4)+el++)).toString(16)},eu=(o=(0,j.GC)({prefix:"sp"})).createTheme,ep=o.css,ef=(o.getCssText,o.keyframes),em={space:Array(11).fill(" ").reduce(function(e,t,n){var r;return H(H({},e),((r={})[n+1]="".concat((n+1)*4,"px"),r))},{}),border:{radius:"4px"},layout:{height:"300px",headerHeight:"40px"},transitions:{default:"150ms ease"},zIndices:{base:"1",overlay:"2",top:"3"}},eh=function(e){var t=Object.entries(e.syntax).reduce(function(e,t){var n,r=t[0],o=t[1],i=((n={})["color-".concat(r)]=o,n);return"object"==typeof o&&(i=Object.entries(o).reduce(function(e,t){var n,o=t[0],i=t[1];return H(H({},e),((n={})["".concat(o,"-").concat(r)]=i,n))},{})),H(H({},e),i)},{});return H(H({},em),{colors:e.colors,font:e.font,syntax:t})},ev=function(e){if(void 0===e&&(e="light"),"string"==typeof e){var t,n,r,o,i,s=ei[e];if(!s)throw Error("[sandpack-react]: invalid theme '".concat(e,"' provided."));return{theme:s,id:e,mode:ec(s.colors.surface1)?"dark":"light"}}var a=ec(null!=(n=null==(t=null==e?void 0:e.colors)?void 0:t.surface1)?n:er.colors.surface1)?"dark":"light",c="dark"===a?eo:er,l={colors:H(H({},c.colors),null!=(r=null==e?void 0:e.colors)?r:{}),syntax:H(H({},c.syntax),null!=(o=null==e?void 0:e.syntax)?o:{}),font:H(H({},c.font),null!=(i=null==e?void 0:e.font)?i:{})},d=e?eg(JSON.stringify(l)):"default";return{theme:l,id:"sp-".concat(d),mode:a}},eg=function(e){for(var t=0,n=0;n<e.length;t&=t)t=31*t+e.charCodeAt(n++);return Math.abs(t)},eb=function(){return""};eb.toString=eb;var ex=(0,y.createContext)({}),ey=function(e){var t=e.children,n=e.classes;return(0,x.jsx)(ex.Provider,{value:n||{},children:t})},ej=function(){var e=(0,y.useContext)(ex);return function(t,n){void 0===n&&(n=[]);var r="".concat("sp","-").concat(t);return ew.apply(void 0,_(_([],n,!1),[r,e[r]],!1))}},ew=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.filter(Boolean).join(" ")},e$=ep({all:"initial",fontSize:"$font$size",fontFamily:"$font$body",display:"block",boxSizing:"border-box",textRendering:"optimizeLegibility",WebkitTapHighlightColor:"transparent",WebkitFontSmoothing:"subpixel-antialiased",variants:{variant:{dark:{colorScheme:"dark"},light:{colorScheme:"light"}}},"@media screen and (min-resolution: 2dppx)":{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},"*":{boxSizing:"border-box"},".sp-wrapper:focus":{outline:"0"}}),eC=y.createContext({theme:er,id:"light",mode:"light"}),ek=function(e){var t=e.theme,n=e.children,r=e.className,o=B(e,["theme","children","className"]),i=y.useState(t),s=i[0],a=i[1],c=ev(s),l=c.theme,d=c.id,u=c.mode,p=ej(),f=y.useMemo(function(){return eu(d,eh(l))},[l,d]);return y.useEffect(function(){if("auto"!==t)return void a(t);var e=function(e){a(e.matches?"dark":"light")};return window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e),function(){window.matchMedia("(prefers-color-scheme: dark)").removeEventListener("change",e)}},[t]),(0,x.jsx)(eC.Provider,{value:{theme:l,id:d,mode:u},children:(0,x.jsx)("div",H({className:p("wrapper",[f,e$({variant:u}),r])},o,{children:n}))})};eC.Consumer;var eS={"/styles.css":{code:"body {\n font-family: sans-serif;\n -webkit-font-smoothing: auto;\n -moz-font-smoothing: auto;\n -moz-osx-font-smoothing: grayscale;\n font-smoothing: auto;\n text-rendering: optimizeLegibility;\n font-smooth: always;\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nh1 {\n font-size: 1.5rem;\n}"}},eN={files:{"/src/styles.css":eS["/styles.css"],"/src/pages/index.astro":{code:'---\nimport "../styles.css";\nconst data = "world";\n---\n\n<h1>Hello {data}</h1>\n\n<style>\n h1 {\n font-size: 1.5rem;\n }\n</style>'},".env":{code:'ASTRO_TELEMETRY_DISABLED="1"'},"/package.json":{code:JSON.stringify({dependencies:{astro:"^1.6.12","esbuild-wasm":"^0.15.16"},scripts:{dev:"astro dev",start:"astro dev",build:"astro build",preview:"astro preview",astro:"astro"}})}},main:"/src/pages/index.astro",environment:"node"},eO={files:H(H({},eS),{"/pages/_app.js":{code:"import '../styles.css'\n\nexport default function MyApp({ Component, pageProps }) {\n return <Component {...pageProps} />\n}"},"/pages/index.js":{code:'export default function Home({ data }) {\n return (\n <div>\n <h1>Hello {data}</h1>\n </div>\n );\n}\n \nexport function getServerSideProps() {\n return {\n props: { data: "world" },\n }\n}\n'},"/next.config.js":{code:"/** @type {import('next').NextConfig} */\nconst nextConfig = {\n reactStrictMode: true,\n swcMinify: true,\n}\n\nmodule.exports = nextConfig\n"},"/package.json":{code:JSON.stringify({name:"my-app",version:"0.1.0",private:!0,scripts:{dev:"NEXT_TELEMETRY_DISABLED=1 next dev",build:"next build",start:"next start",lint:"next lint"},dependencies:{next:"12.1.6",react:"18.2.0","react-dom":"18.2.0","@next/swc-wasm-nodejs":"12.1.6"}})}}),main:"/pages/index.js",environment:"node"},eA={files:{"/index.js":{code:"const http = require('http');\n\nconst hostname = '127.0.0.1';\nconst port = 3000;\n\nconst server = http.createServer((req, res) => {\n res.statusCode = 200;\n res.setHeader('Content-Type', 'text/html');\n res.end('Hello world');\n});\n\nserver.listen(port, hostname, () => {\n console.log(`Server running at http://${hostname}:${port}/`);\n});"},"/package.json":{code:JSON.stringify({dependencies:{},scripts:{start:"node index.js"},main:"index.js"})}},main:"/index.js",environment:"node"},eE={files:H(H({},eS),{"/index.js":{code:'import "./styles.css";\n\ndocument.getElementById("app").innerHTML = `\n<h1>Hello world</h1>\n`;\n'},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="app"></div>\n <script type="module" src="/index.js"><\/script>\n </body>\n</html>\n'},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"vite build",preview:"vite preview"},devDependencies:{vite:"4.1.4","esbuild-wasm":"0.17.12"}})}}),main:"/index.js",environment:"node"},eL={files:H(H({},eS),{"/App.jsx":{code:'export default function App() {\n const data = "world"\n\n return <h1>Hello {data}</h1>\n}\n'},"/index.jsx":{code:'import { render } from "preact";\nimport "./styles.css";\n\nimport App from "./App";\n\nconst root = document.getElementById("root");\nrender(<App />, root);\n'},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="root"></div>\n <script type="module" src="/index.jsx"><\/script>\n </body>\n</html>\n'},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"vite build",preview:"vite preview"},dependencies:{preact:"^10.16.0"},devDependencies:{"@preact/preset-vite":"^2.5.0",vite:"4.1.4","esbuild-wasm":"0.17.12"}})},"/vite.config.js":{code:"import { defineConfig } from \"vite\";\nimport preact from '@preact/preset-vite'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [preact()],\n});\n"}}),main:"/App.jsx",environment:"node"},eM={files:H(H({},eS),{"/App.tsx":{code:'export default function App() {\n const data: string = "world"\n\n return <h1>Hello {data}</h1>\n}\n'},"/index.tsx":{code:'import { render } from "preact";\nimport "./styles.css";\n\nimport App from "./App";\n\nconst root = document.getElementById("root") as HTMLElement;\nrender(<App />, root);\n'},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="root"></div>\n <script type="module" src="/index.tsx"><\/script>\n </body>\n</html>\n'},"/tsconfig.json":{code:JSON.stringify({compilerOptions:{target:"ESNext",useDefineForClassFields:!0,lib:["DOM","DOM.Iterable","ESNext"],allowJs:!1,skipLibCheck:!0,esModuleInterop:!1,allowSyntheticDefaultImports:!0,strict:!0,forceConsistentCasingInFileNames:!0,module:"ESNext",moduleResolution:"Node",resolveJsonModule:!0,isolatedModules:!0,noEmit:!0,jsx:"react-jsx",jsxImportSource:"preact"},include:["src"],references:[{path:"./tsconfig.node.json"}]},null,2)},"/tsconfig.node.json":{code:JSON.stringify({compilerOptions:{composite:!0,module:"ESNext",moduleResolution:"Node",allowSyntheticDefaultImports:!0},include:["vite.config.ts"]},null,2)},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"tsc && vite build",preview:"vite preview"},dependencies:{preact:"^10.16.0"},devDependencies:{"@preact/preset-vite":"^2.5.0",typescript:"^4.9.5",vite:"4.1.4","esbuild-wasm":"^0.17.12"}},null,2)},"/vite-env.d.ts":{code:'/// <reference types="vite/client" />'},"/vite.config.ts":{code:"import { defineConfig } from 'vite'\nimport preact from '@preact/preset-vite'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [preact()],\n})\n"}}),main:"/App.tsx",environment:"node"},eF={files:H(H({},eS),{"/App.jsx":{code:'export default function App() {\n const data = "world"\n\n return <h1>Hello {data}</h1>\n}\n'},"/index.jsx":{code:'import { StrictMode } from "react";\nimport { createRoot } from "react-dom/client";\nimport "./styles.css";\n\nimport App from "./App";\n\nconst root = createRoot(document.getElementById("root"));\nroot.render(\n <StrictMode>\n <App />\n </StrictMode>\n);'},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="root"></div>\n <script type="module" src="/index.jsx"><\/script>\n </body>\n</html>\n'},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"vite build",preview:"vite preview"},dependencies:{react:"^18.2.0","react-dom":"^18.2.0"},devDependencies:{"@vitejs/plugin-react":"3.1.0",vite:"4.1.4","esbuild-wasm":"0.17.12"}})},"/vite.config.js":{code:'import { defineConfig } from "vite";\nimport react from "@vitejs/plugin-react";\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [react()],\n});\n'}}),main:"/App.jsx",environment:"node"},eI={files:H(H({},eS),{"/App.tsx":{code:'export default function App() {\n const data: string = "world"\n\n return <h1>Hello {data}</h1>\n}\n'},"/index.tsx":{code:'import { StrictMode } from "react";\nimport { createRoot } from "react-dom/client";\nimport "./styles.css";\n\nimport App from "./App";\nimport React from "react";\n\nconst root = createRoot(document.getElementById("root") as HTMLElement);\nroot.render(\n <StrictMode>\n <App />\n </StrictMode>\n);\n'},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="root"></div>\n <script type="module" src="/index.tsx"><\/script>\n </body>\n</html>\n'},"/tsconfig.json":{code:JSON.stringify({compilerOptions:{target:"ESNext",useDefineForClassFields:!0,lib:["DOM","DOM.Iterable","ESNext"],allowJs:!1,skipLibCheck:!0,esModuleInterop:!1,allowSyntheticDefaultImports:!0,strict:!0,forceConsistentCasingInFileNames:!0,module:"ESNext",moduleResolution:"Node",resolveJsonModule:!0,isolatedModules:!0,noEmit:!0,jsx:"react-jsx"},include:["src"],references:[{path:"./tsconfig.node.json"}]},null,2)},"/tsconfig.node.json":{code:JSON.stringify({compilerOptions:{composite:!0,module:"ESNext",moduleResolution:"Node",allowSyntheticDefaultImports:!0},include:["vite.config.ts"]},null,2)},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"tsc && vite build",preview:"vite preview"},dependencies:{react:"^19.0.0","react-dom":"^19.0.0"},devDependencies:{"@types/react":"^19.0.8","@types/react-dom":"^19.0.3","@vitejs/plugin-react":"^4.3.4",typescript:"^4.9.5",vite:"4.2.0","esbuild-wasm":"^0.17.12"}},null,2)},"/vite-env.d.ts":{code:'/// <reference types="vite/client" />'},"/vite.config.ts":{code:"import { defineConfig } from 'vite'\nimport react from '@vitejs/plugin-react'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [react()],\n})\n"}}),main:"/App.tsx",environment:"node"},eD={files:{"/src/styles.css":eS["/styles.css"],"/src/App.svelte":{code:'<script>\nconst data = "world";\n<\/script>\n\n<h1>Hello {data}</h1>\n\n<style>\nh1 {\n font-size: 1.5rem;\n}\n</style>'},"/src/main.js":{code:"import App from './App.svelte'\nimport \"./styles.css\"\n\nconst app = new App({\n target: document.getElementById('app'),\n})\n\nexport default app"},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="app"></div>\n <script type="module" src="/src/main.js"><\/script>\n </body>\n</html>\n'},"/vite.config.js":{code:"import { defineConfig } from 'vite'\nimport { svelte } from '@sveltejs/vite-plugin-svelte'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [svelte()],\n})"},"/package.json":{code:JSON.stringify({type:"module",scripts:{dev:"vite"},devDependencies:{"@sveltejs/vite-plugin-svelte":"^2.0.2",svelte:"^3.55.1",vite:"4.0.4","esbuild-wasm":"^0.17.12"}})}},main:"/src/App.svelte",environment:"node"},eR={files:{"/src/styles.css":eS["/styles.css"],"/src/App.svelte":{code:'<script lang="ts">\nconst data: string = "world";\n<\/script>\n\n<h1>Hello {data}</h1>\n\n<style>\nh1 {\n font-size: 1.5rem;\n}\n</style>'},"/src/main.ts":{code:"import App from './App.svelte'\nimport \"./styles.css\"\n\nconst app = new App({\n target: document.getElementById('app'),\n})\n\nexport default app"},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="app"></div>\n <script type="module" src="/src/main.ts"><\/script>\n </body>\n</html>\n'},"/vite-env.d.ts":{code:'/// <reference types="svelte" />\n/// <reference types="vite/client" />'},"svelte.config.js":{code:"import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'\n\nexport default {\n // Consult https://svelte.dev/docs#compile-time-svelte-preprocess\n // for more information about preprocessors\n preprocess: vitePreprocess(),\n}\n"},"/vite.config.ts":{code:"import { defineConfig } from 'vite'\nimport { svelte } from '@sveltejs/vite-plugin-svelte'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [svelte()],\n})"},"tsconfig.json":{code:JSON.stringify({extends:"@tsconfig/svelte/tsconfig.json",compilerOptions:{target:"ESNext",useDefineForClassFields:!0,module:"ESNext",resolveJsonModule:!0,allowJs:!0,checkJs:!0,isolatedModules:!0},include:["src/**/*.d.ts","src/**/*.ts","src/**/*.js","src/**/*.svelte"],references:[{path:"./tsconfig.node.json"}]},null,2)},"tsconfig.node.json":{code:JSON.stringify({compilerOptions:{composite:!0,module:"ESNext",moduleResolution:"Node"},include:["vite.config.ts"]},null,2)},"/package.json":{code:JSON.stringify({type:"module",scripts:{dev:"vite"},devDependencies:{"@sveltejs/vite-plugin-svelte":"^2.0.2","@tsconfig/svelte":"^3.0.0",svelte:"^3.55.1","svelte-check":"^2.10.3",tslib:"^2.5.0",vite:"4.1.4","esbuild-wasm":"^0.17.12"}},null,2)}},main:"/src/App.svelte",environment:"node"},eT={files:{"/src/styles.css":eS["/styles.css"],"/src/App.vue":{code:'<script setup>\nimport { ref } from "vue";\n\nconst data = ref("world");\n<\/script>\n\n<template>\n <h1>Hello {{ data }}</h1>\n</template>\n\n<style>\nh1 {\n font-size: 1.5rem;\n}\n</style>'},"/src/main.js":{code:"import { createApp } from 'vue'\nimport App from './App.vue'\nimport \"./styles.css\"\n \ncreateApp(App).mount('#app') \n"},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="app"></div>\n <script type="module" src="/src/main.js"><\/script>\n </body>\n</html>\n'},"/vite.config.js":{code:"import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [vue()]\n})\n"},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"vite build",preview:"vite preview"},dependencies:{vue:"^3.2.45"},devDependencies:{"@vitejs/plugin-vue":"3.2.0",vite:"4.1.4","esbuild-wasm":"0.17.12"}})}},main:"/src/App.vue",environment:"node"},eH={files:{"/src/styles.css":eS["/styles.css"],"/src/App.vue":{code:'<script setup lang="ts">\nimport { ref } from "vue";\n\nconst data = ref<string>("world");\n<\/script>\n\n<template>\n <h1>Hello {{ data }}</h1>\n</template>\n\n<style>\nh1 {\n font-size: 1.5rem;\n}\n</style>'},"/src/main.ts":{code:"import { createApp } from 'vue'\nimport App from './App.vue'\nimport \"./styles.css\"\n\ncreateApp(App).mount('#app')\n"},"/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <title>Vite App</title>\n </head>\n <body>\n <div id="app"></div>\n <script type="module" src="/src/main.ts"><\/script>\n </body>\n</html>\n'},"/vite-env.d.ts":{code:'/// <reference types="vite/client" />'},"/vite.config.ts":{code:"import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n plugins: [vue()]\n})\n"},"tsconfig.json":{code:JSON.stringify({compilerOptions:{target:"ESNext",useDefineForClassFields:!0,module:"ESNext",moduleResolution:"Node",strict:!0,jsx:"preserve",resolveJsonModule:!0,isolatedModules:!0,esModuleInterop:!0,lib:["ESNext","DOM"],skipLibCheck:!0,noEmit:!0},include:["src/**/*.ts","src/**/*.d.ts","src/**/*.tsx","src/**/*.vue"],references:[{path:"./tsconfig.node.json"}]},null,2)},"tsconfig.node.json":{code:JSON.stringify({compilerOptions:{composite:!0,module:"ESNext",moduleResolution:"Node",allowSyntheticDefaultImports:!0},include:["vite.config.ts"]},null,2)},"/package.json":{code:JSON.stringify({scripts:{dev:"vite",build:"tsc && vite build",preview:"vite preview"},dependencies:{vue:"^3.2.47"},devDependencies:{"@vitejs/plugin-vue":"^4.0.0",vite:"4.1.4","vue-tsc":"^1.2.0",typescript:"^4.9.5","esbuild-wasm":"^0.17.12"}},null,2)}},main:"/src/App.vue",environment:"node"},eB={files:{"/src/app/app.component.css":eS["/styles.css"],"/src/app/app.component.html":{code:"<div>\n<h1>{{ helloWorld }}</h1>\n</div> \n"},"/src/app/app.component.ts":{code:'import { Component } from "@angular/core";\n\n@Component({\n selector: "app-root",\n templateUrl: "./app.component.html",\n styleUrls: ["./app.component.css"]\n})\nexport class AppComponent {\n helloWorld = "Hello world";\n} \n'},"/src/app/app.module.ts":{code:'import { BrowserModule } from "@angular/platform-browser";\nimport { NgModule } from "@angular/core";\n \nimport { AppComponent } from "./app.component";\n \n@NgModule({\n declarations: [AppComponent],\n imports: [BrowserModule],\n providers: [],\n bootstrap: [AppComponent]\n})\nexport class AppModule {} \n'},"/src/index.html":{code:'<!doctype html>\n<html lang="en">\n \n<head>\n <meta charset="utf-8">\n <title>Angular</title>\n <base href="/">\n \n <meta name="viewport" content="width=device-width, initial-scale=1">\n <link rel="icon" type="image/x-icon" href="favicon.ico">\n</head>\n \n<body>\n <app-root></app-root>\n</body>\n \n</html>\n'},"/src/main.ts":{code:'import { enableProdMode } from "@angular/core";\nimport { platformBrowserDynamic } from "@angular/platform-browser-dynamic";\n \nimport { AppModule } from "./app/app.module"; \n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch(err => console.log(err));\n \n'},"/src/polyfills.ts":{code:'import "core-js/proposals/reflect-metadata"; \n import "zone.js/dist/zone";\n'},"/package.json":{code:JSON.stringify({dependencies:{"@angular/core":"^11.2.0","@angular/platform-browser":"^11.2.0","@angular/platform-browser-dynamic":"^11.2.0","@angular/common":"^11.2.0","@angular/compiler":"^11.2.0","zone.js":"0.11.3","core-js":"3.8.3",rxjs:"6.6.3"},main:"/src/main.ts"})}},main:"/src/app/app.component.ts",environment:"angular-cli"},eP={files:H(H({},eS),{"/App.js":{code:"export default function App() {\n return <h1>Hello world</h1>\n}\n"},"/index.js":{code:'import React, { StrictMode } from "react";\nimport { createRoot } from "react-dom/client";\nimport "./styles.css";\n\nimport App from "./App";\n\nconst root = createRoot(document.getElementById("root"));\nroot.render(\n <StrictMode>\n <App />\n </StrictMode>\n);'},"/public/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <title>Document</title>\n </head>\n <body>\n <div id="root"></div>\n </body>\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{react:"^19.0.0","react-dom":"^19.0.0","react-scripts":"^5.0.0"},main:"/index.js"})}}),main:"/App.js",environment:"create-react-app"},ez={files:H(H({},eS),{"tsconfig.json":{code:'{\n "include": [\n "./**/*"\n ],\n "compilerOptions": {\n "strict": true,\n "esModuleInterop": true,\n "lib": [ "dom", "es2015" ],\n "jsx": "react-jsx"\n }\n}'},"/App.tsx":{code:"export default function App(): JSX.Element {\n return <h1>Hello world</h1>\n}\n"},"/index.tsx":{code:'import React, { StrictMode } from "react";\nimport { createRoot } from "react-dom/client";\nimport "./styles.css";\n\nimport App from "./App";\n\nconst root = createRoot(document.getElementById("root"));\nroot.render(\n <StrictMode>\n <App />\n </StrictMode>\n);'},"/public/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <title>Document</title>\n </head>\n <body>\n <div id="root"></div>\n </body>\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{react:"^19.0.0","react-dom":"^19.0.0","react-scripts":"^4.0.0"},devDependencies:{"@types/react":"^19.0.0","@types/react-dom":"^19.0.0",typescript:"^4.0.0"},main:"/index.tsx"})}}),main:"/App.tsx",environment:"create-react-app"},e_={files:H(H({},eS),{"/App.tsx":{code:'import { Component } from "solid-js";\n\nconst App: Component = () => {\n return <h1>Hello world</h1>\n};\n\nexport default App;'},"/index.tsx":{code:'import { render } from "solid-js/web";\nimport App from "./App";\n\nimport "./styles.css";\n\nrender(() => <App />, document.getElementById("app"));'},"/index.html":{code:'<html>\n<head>\n <title>Parcel Sandbox</title>\n <meta charset="UTF-8" />\n</head>\n<body>\n <div id="app"></div>\n <script src="src/index.tsx"><\/script>\n</body>\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{"solid-js":"1.3.15"},main:"/index.tsx"})}}),main:"/App.tsx",environment:"solid"},eU={files:H(H({},eS),{"/App.svelte":{code:"<style>\n h1 {\n font-size: 1.5rem;\n }\n</style>\n\n<script>\n let name = 'world';\n<\/script>\n\n<main>\n <h1>Hello {name}</h1>\n</main>"},"/index.js":{code:'import App from "./App.svelte";\nimport "./styles.css";\n\nconst app = new App({\n target: document.body\n});\n\nexport default app;\n '},"/public/index.html":{code:'<!DOCTYPE html>\n<html>\n <head>\n <meta charset="utf8" />\n <meta name="viewport" content="width=device-width" />\n\n <title>Svelte app</title>\n\n <link rel="stylesheet" href="public/bundle.css" />\n </head>\n\n <body>\n <script src="bundle.js"><\/script>\n </body>\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{svelte:"^3.0.0"},main:"/index.js"})}}),main:"/App.svelte",environment:"svelte"},eZ={files:{"tsconfig.json":{code:'{\n "include": [\n "./**/*"\n ],\n "compilerOptions": {\n "strict": true,\n "esModuleInterop": true,\n "lib": [ "dom", "es2015" ],\n "jsx": "react-jsx"\n }\n}'},"/add.ts":{code:"export const add = (a: number, b: number): number => a + b;"},"/add.test.ts":{code:"import { add } from './add';\n\ndescribe('add', () => {\n test('Commutative Law of Addition', () => {\n expect(add(1, 2)).toBe(add(2, 1));\n });\n});"},"package.json":{code:JSON.stringify({dependencies:{},devDependencies:{typescript:"^4.0.0"},main:"/add.ts"})}},main:"/add.test.ts",environment:"parcel",mode:"tests"},eJ={files:H(H({},eS),{"/index.js":{code:'import "./styles.css";\n\ndocument.getElementById("app").innerHTML = `\n<h1>Hello world</h1>\n`;\n'},"/index.html":{code:'<!DOCTYPE html>\n<html>\n\n<head>\n <title>Parcel Sandbox</title>\n <meta charset="UTF-8" />\n</head>\n\n<body>\n <div id="app"></div>\n\n <script src="index.js">\n <\/script>\n</body>\n\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{},main:"/index.js"})}}),main:"/index.js",environment:"parcel"},eW={files:H(H({},eS),{"tsconfig.json":{code:'{\n "compilerOptions": {\n "strict": true,\n "module": "commonjs",\n "jsx": "preserve",\n "esModuleInterop": true,\n "sourceMap": true,\n "allowJs": true,\n "lib": [\n "es6",\n "dom"\n ],\n "rootDir": "src",\n "moduleResolution": "node"\n }\n}'},"/index.ts":{code:'import "./styles.css";\n\ndocument.getElementById("app").innerHTML = `\n<h1>Hello world</h1>\n`;\n'},"/index.html":{code:'<!DOCTYPE html>\n<html>\n\n<head>\n <title>Parcel Sandbox</title>\n <meta charset="UTF-8" />\n</head>\n\n<body>\n <div id="app"></div>\n\n <script src="index.ts">\n <\/script>\n</body>\n\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{},devDependencies:{typescript:"^4.0.0"},main:"/index.ts"})}}),main:"/index.ts",environment:"parcel"},eV={files:{"/src/styles.css":eS["/styles.css"],"/src/App.vue":{code:"<template>\n <h1>Hello {{ msg }}</h1>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\nconst msg = ref('world');\n<\/script>"},"/src/main.js":{code:"import { createApp } from 'vue'\nimport App from './App.vue'\nimport \"./styles.css\";\n\ncreateApp(App).mount('#app')\n"},"/public/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="utf-8" />\n <meta http-equiv="X-UA-Compatible" content="IE=edge" />\n <meta name="viewport" content="width=device-width,initial-scale=1.0" />\n <title>codesandbox</title>\n </head>\n <body>\n <noscript>\n <strong\n >We\'re sorry but codesandbox doesn\'t work properly without JavaScript\n enabled. Please enable it to continue.</strong\n >\n </noscript>\n <div id="app"></div>\n \x3c!-- built files will be auto injected --\x3e\n </body>\n</html>\n'},"/package.json":{code:JSON.stringify({name:"vue3",version:"0.1.0",private:!0,main:"/src/main.js",scripts:{serve:"vue-cli-service serve",build:"vue-cli-service build"},dependencies:{"core-js":"^3.26.1",vue:"^3.2.45"},devDependencies:{"@vue/cli-plugin-babel":"^5.0.8","@vue/cli-service":"^5.0.8"}})}},main:"/src/App.vue",environment:"vue-cli"},eY={files:{"/src/styles.css":eS["/styles.css"],"/src/App.vue":{code:"<template>\n <h1>Hello {{ msg }}</h1>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nconst msg = ref<string>('world');\n<\/script>"},"/src/main.ts":{code:"import { createApp } from 'vue'\nimport App from './App.vue'\nimport \"./styles.css\";\n\ncreateApp(App).mount('#app')\n"},"/src/shims-vue.d.ts":'/* eslint-disable */\ndeclare module "*.vue" {\n import type { DefineComponent } from "vue";\n const component: DefineComponent<{}, {}, any>;\n export default component;\n}',"/public/index.html":{code:'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="utf-8" />\n <meta http-equiv="X-UA-Compatible" content="IE=edge" />\n <meta name="viewport" content="width=device-width,initial-scale=1.0" />\n <title>codesandbox</title>\n </head>\n <body>\n <noscript>\n <strong\n >We\'re sorry but codesandbox doesn\'t work properly without JavaScript\n enabled. Please enable it to continue.</strong\n >\n </noscript>\n <div id="app"></div>\n \x3c!-- built files will be auto injected --\x3e\n </body>\n</html>\n'},"/package.json":{code:JSON.stringify({name:"vue3-ts",version:"0.1.0",private:!0,main:"/src/main.ts",scripts:{serve:"vue-cli-service serve",build:"vue-cli-service build"},dependencies:{"core-js":"^3.26.1",vue:"^3.2.45"},devDependencies:{"@vue/cli-plugin-babel":"^5.0.8","@vue/cli-plugin-typescript":"^5.0.8","@vue/cli-service":"^5.0.8",typescript:"^4.9.3"}})},"/tsconfig.json":{code:JSON.stringify({compilerOptions:{target:"esnext",module:"esnext",strict:!0,jsx:"preserve",moduleResolution:"node",experimentalDecorators:!0,skipLibCheck:!0,esModuleInterop:!0,allowSyntheticDefaultImports:!0,forceConsistentCasingInFileNames:!0,useDefineForClassFields:!0,sourceMap:!1,baseUrl:".",types:["webpack-env"],paths:{"@/*":["src/*"]},lib:["esnext","dom","dom.iterable","scripthost"]},include:["src/**/*.ts","src/**/*.tsx","src/**/*.vue","tests/**/*.ts","tests/**/*.tsx"],exclude:["node_modules"]})}},main:"/src/App.vue",environment:"vue-cli"},eq={static:{files:H(H({},eS),{"/index.html":{code:'<!DOCTYPE html>\n<html>\n\n<head>\n <title>Parcel Sandbox</title>\n <meta charset="UTF-8" />\n <link rel="stylesheet" href="/styles.css" />\n</head>\n\n<body>\n <h1>Hello world</h1>\n</body>\n\n</html>'},"/package.json":{code:JSON.stringify({dependencies:{},main:"/index.html"})}}),main:"/index.html",environment:"static"},angular:eB,react:eP,"react-ts":ez,solid:e_,svelte:eU,"test-ts":eZ,"vanilla-ts":eW,vanilla:eJ,vue:eV,"vue-ts":eY,node:eA,nextjs:eO,vite:eE,"vite-react":eF,"vite-react-ts":eI,"vite-preact":eL,"vite-preact-ts":eM,"vite-vue":eT,"vite-vue-ts":eH,"vite-svelte":eD,"vite-svelte-ts":eR,astro:eN},eG=function(e){var t,n,r,o,i,s,a=(0,$.f)(e.files),c=eK({template:e.template,customSetup:e.customSetup,files:a}),l=(0,$.f)(null!=(n=null==(t=e.options)?void 0:t.visibleFiles)?n:[]),d=(null==(r=e.options)?void 0:r.activeFile)?eX(null==(o=e.options)?void 0:o.activeFile,c.files):void 0;0===l.length&&a&&Object.keys(a).forEach(function(e){var t=a[e];if("string"==typeof t)return void l.push(e);!d&&t.active&&(d=e,!0===t.hidden&&l.push(e)),t.hidden||l.push(e)}),0===l.length&&(l=[c.main]),c.entry&&!c.files[c.entry]&&(c.entry=eX(c.entry,c.files)),!d&&c.main&&(d=c.main),d&&c.files[d]||(d=l[0]),l.includes(d)||l.push(d);var u=(0,$.d)(c.files,null!=(i=c.dependencies)?i:{},null!=(s=c.devDependencies)?s:{},c.entry);return{visibleFiles:l.filter(function(e){return u[e]}),activeFile:d,files:u,environment:c.environment,shouldUpdatePreview:!0}},eX=function(e,t){var n=(0,$.f)(t),r=(0,$.f)(e);if(r in n)return r;if(!e)return null;for(var o=null,i=0,s=[".js",".jsx",".ts",".tsx"];!o&&i<s.length;){var a=r.split(".")[0],c="".concat(a).concat(s[i]);void 0!==n[c]&&(o=c),i++}return o},eK=function(e){var t=e.files,n=e.template,r=e.customSetup;if(!n){if(!r){var o=eq.vanilla;return H(H({},o),{files:H(H({},o.files),eQ(t))})}if(!t||0===Object.keys(t).length)throw Error("[sandpack-react]: without a template, you must pass at least one file");return H(H({},r),{files:eQ(t)})}var i=eq[n];if(!i)throw Error('[sandpack-react]: invalid template "'.concat(n,'" provided'));return r||t?{files:eQ(H(H({},i.files),t)),dependencies:H(H({},i.dependencies),null==r?void 0:r.dependencies),devDependencies:H(H({},i.devDependencies),null==r?void 0:r.devDependencies),entry:(0,$.f)(null==r?void 0:r.entry),main:i.main,environment:(null==r?void 0:r.environment)||i.environment}:i},eQ=function(e){return e?Object.keys(e).reduce(function(t,n){return"string"==typeof e[n]?t[n]={code:e[n]}:t[n]=e[n],t},{}):{}},e0=function(e,t){var n=(0,y.useState)({editorState:"pristine"}),r=n[0],o=n[1],i=eG(e),s=(0,w.j)(i.files,t)?"pristine":"dirty";return s!==r.editorState&&o(function(e){return H(H({},e),{editorState:s})}),r},e1=function(e){if("function"!=typeof y.useId)return function(){return e3(ed(),9)};var t=(0,y.useId)();return function(){return P(void 0,void 0,void 0,function(){return z(this,function(n){switch(n.label){case 0:return[4,function(e){return P(this,void 0,void 0,function(){var t,n;return z(this,function(r){switch(r.label){case 0:return t=new TextEncoder().encode(e),[4,crypto.subtle.digest("SHA-256",t)];case 1:return n=Array.from(new Uint8Array(r.sent())),[2,btoa(String.fromCharCode.apply(String,n))]}})})}(Object.entries(e).map(function(e,t){return e+"|"+t}).join("|||")+t+"2.19.8")];case 1:return[2,e3(n.sent().replace(/:/g,"sp").replace(/[^a-zA-Z]/g,""),9)]}})})}};function e3(e,t){return e.length>t?e.slice(0,t):e.padEnd(t,"s")}var e2=function(e,t){var n,r,o,i=e.options,s=e.customSetup,a=e.teamId,c=e.sandboxId;null!=i||(i={}),null!=s||(s={});var l=(null==i?void 0:i.initMode)||"lazy",d=(0,y.useState)({startRoute:null==i?void 0:i.startRoute,bundlerState:void 0,error:null,initMode:l,reactDevTools:void 0,status:null==(n=null==i?void 0:i.autorun)||n?"initial":"idle"}),u=d[0],p=d[1],f=(0,y.useRef)(),m=(0,y.useRef)(null),h=(0,y.useRef)(null),v=(0,y.useRef)({}),g=(0,y.useRef)({}),b=(0,y.useRef)(null),x=(0,y.useRef)({}),j=(0,y.useRef)(),w=(0,y.useRef)({global:{}}),k=(0,y.useRef)(),S=(0,y.useRef)(t.environment),N=e1(t.files),O=(0,y.useCallback)(function(e,n,r){return P(void 0,void 0,void 0,function(){var o,l,d,f,m,h,v,y;return z(this,function($){switch($.label){case 0:return g.current[n]&&g.current[n].destroy(),null!=i||(i={}),null!=s||(s={}),o=null!=(h=null==i?void 0:i.bundlerTimeOut)?h:4e4,b.current&&clearTimeout(b.current),"function"!=typeof j.current&&(b.current=setTimeout(function(){A(),p(function(e){return H(H({},e),{status:"timeout"})})},o)),d=C.Jy,f=[e,{files:t.files,template:t.environment}],m={externalResources:i.externalResources,bundlerURL:i.bundlerURL,startRoute:null!=(v=null==r?void 0:r.startRoute)?v:i.startRoute,fileResolver:i.fileResolver,skipEval:null!=(y=i.skipEval)&&y,logLevel:i.logLevel,showOpenInCodeSandbox:!1,showErrorScreen:!0,showLoadingScreen:!1,reactDevTools:u.reactDevTools,customNpmRegistries:null==s?void 0:s.npmRegistries,teamId:a,experimental_enableServiceWorker:!!(null==i?void 0:i.experimental_enableServiceWorker)},[4,P(void 0,void 0,void 0,function(){var e,t;return z(this,function(n){switch(n.label){case 0:if(!(null==i?void 0:i.experimental_enableStableServiceWorkerId))return[3,3];if(e="SANDPACK_INTERNAL:URL-CONSISTENT-ID",t=localStorage.getItem(e))return[3,2];return[4,N()];case 1:t=n.sent(),localStorage.setItem(e,t),n.label=2;case 2:return[2,t];case 3:return[4,N()];case 4:return[2,n.sent()]}})})];case 1:return[4,d.apply(void 0,f.concat([(m.experimental_stableServiceWorkerId=$.sent(),m.sandboxId=c,m)]))];case 2:return l=$.sent(),"function"!=typeof j.current&&(j.current=l.listen(I)),x.current[n]=x.current[n]||{},w.current[n]&&(Object.keys(w.current[n]).forEach(function(e){var t=w.current[n][e],r=l.listen(t);x.current[n][e]=r}),w.current[n]={}),Object.entries(w.current.global).forEach(function(e){var t=e[0],r=e[1],o=l.listen(r);x.current[n][t]=o}),g.current[n]=l,[2]}})})},[t.environment,t.files,u.reactDevTools]),A=(0,y.useCallback)(function(){Object.keys(g.current).map(F),"function"==typeof j.current&&(j.current(),j.current=void 0)},[]),E=(0,y.useCallback)(function(){return P(void 0,void 0,void 0,function(){return z(this,function(e){switch(e.label){case 0:return[4,Promise.all(Object.entries(v.current).map(function(e){var t=e[0],n=e[1],r=n.iframe,o=n.clientPropsOverride,i=void 0===o?{}:o;return P(void 0,void 0,void 0,function(){return z(this,function(e){switch(e.label){case 0:return[4,O(r,t,i)];case 1:return e.sent(),[2]}})})}))];case 1:return e.sent(),p(function(e){return H(H({},e),{error:null,status:"running"})}),[2]}})})},[O]);f.current=function(e){e.some(function(e){return e.isIntersecting})?E():A()};var L=(0,y.useCallback)(function(){var e,t,n;if(null==(e=null==i?void 0:i.autorun)||e){var r=null!=(t=null==i?void 0:i.initModeObserverOptions)?t:{rootMargin:"1000px 0px"};m.current&&h.current&&(null==(n=m.current)||n.unobserve(h.current)),h.current&&"lazy"===u.initMode?(m.current=new IntersectionObserver(function(e){var t,n;e.some(function(e){return e.isIntersecting})&&e.some(function(e){return e.isIntersecting})&&h.current&&(null==(t=f.current)||t.call(f,e),null==(n=m.current)||n.unobserve(h.current))},r),m.current.observe(h.current)):h.current&&"user-visible"===u.initMode?(m.current=new IntersectionObserver(function(e){var t;null==(t=f.current)||t.call(f,e)},r),m.current.observe(h.current)):E()}},[null==i?void 0:i.aut