buddy-workbench 0.1.0
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/README.md +31 -0
- package/package.json +25 -0
- package/plugins/example/plugin.json +5 -0
- package/plugins/example/view.html +5 -0
- package/server/config.js +14 -0
- package/server/lib/free-port.js +27 -0
- package/server/repositories/group-tasks.js +6 -0
- package/server/repositories/launchers.js +19 -0
- package/server/repositories/port-history.js +16 -0
- package/server/repositories/settings.js +44 -0
- package/server/routes/clipboard.js +8 -0
- package/server/routes/group-tasks.js +17 -0
- package/server/routes/launchers.js +47 -0
- package/server/routes/plugins.js +6 -0
- package/server/routes/port-diagnostics.js +25 -0
- package/server/routes/pr-review.js +378 -0
- package/server/routes/settings.js +18 -0
- package/server/services/clipboard-history.js +85 -0
- package/server/services/git.js +14 -0
- package/server/services/package-scripts.js +11 -0
- package/server/services/plugins.js +15 -0
- package/server/services/process-manager.js +195 -0
- package/server/services/script-supervisor.js +28 -0
- package/server.js +55 -0
- package/ui/dist/assets/index-CCCOP2nr.js +496 -0
- package/ui/dist/assets/index-Dty-56mC.js +3 -0
- package/ui/dist/assets/index-VPzoCQox.css +1 -0
- package/ui/dist/assets/mozjpeg_dec-muSO2n8T.wasm +0 -0
- package/ui/dist/assets/mozjpeg_enc-DO-zoExo.wasm +0 -0
- package/ui/dist/devbuddy.svg +29 -0
- package/ui/dist/index.html +16 -0
- package/ui/dist/manifest.webmanifest +17 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var St=(()=>{var y=import.meta.url;return(function(O={}){var l=O,C,S,dr=new Promise((r,e)=>{C=r,S=e});const ie=globalThis.ServiceWorkerGlobalScope!==void 0&&typeof self<"u"&&globalThis.caches&&globalThis.caches.default!==void 0,oe=typeof process=="object"&&process.release&&process.release.name==="node";(ie||oe)&&(globalThis.ImageData||(globalThis.ImageData=class{constructor(e,a,i){this.data=e,this.width=a,this.height=i}}),import.meta.url===void 0&&(import.meta.url="https://localhost"),typeof self<"u"&&self.location===void 0&&(self.location={href:""}));var pr=Object.assign({},l),hr="./this.program",gr=(r,e)=>{throw e},_r=typeof window=="object",K=typeof importScripts=="function";typeof process=="object"&&typeof process.versions=="object"&&process.versions.node;var b="";function se(r){return l.locateFile?l.locateFile(r,b):b+r}var rr;(_r||K)&&(K?b=self.location.href:typeof document<"u"&&document.currentScript&&(b=document.currentScript.src),y&&(b=y),b.startsWith("blob:")?b="":b=b.substr(0,b.replace(/[?#].*/,"").lastIndexOf("/")+1),K&&(rr=r=>{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}));var le=l.print||console.log.bind(console),I=l.printErr||console.error.bind(console);Object.assign(l,pr),pr=null,l.arguments&&l.arguments,l.thisProgram&&(hr=l.thisProgram),l.quit&&(gr=l.quit);var x;l.wasmBinary&&(x=l.wasmBinary);var X,mr=!1,$,_,L,er,q,p,yr,br;function wr(){var r=X.buffer;l.HEAP8=$=new Int8Array(r),l.HEAP16=L=new Int16Array(r),l.HEAPU8=_=new Uint8Array(r),l.HEAPU16=er=new Uint16Array(r),l.HEAP32=q=new Int32Array(r),l.HEAPU32=p=new Uint32Array(r),l.HEAPF32=yr=new Float32Array(r),l.HEAPF64=br=new Float64Array(r)}var $r=[],Ar=[],Tr=[];function fe(){if(l.preRun)for(typeof l.preRun=="function"&&(l.preRun=[l.preRun]);l.preRun.length;)ce(l.preRun.shift());tr($r)}function ue(){tr(Ar)}function ve(){if(l.postRun)for(typeof l.postRun=="function"&&(l.postRun=[l.postRun]);l.postRun.length;)pe(l.postRun.shift());tr(Tr)}function ce(r){$r.unshift(r)}function de(r){Ar.unshift(r)}function pe(r){Tr.unshift(r)}var W=0,z=null;function he(r){var e;W++,(e=l.monitorRunDependencies)==null||e.call(l,W)}function ge(r){var a;if(W--,(a=l.monitorRunDependencies)==null||a.call(l,W),W==0&&z){var e=z;z=null,e()}}function Er(r){var a;(a=l.onAbort)==null||a.call(l,r),r="Aborted("+r+")",I(r),mr=!0,r+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(r);throw S(e),e}var _e="data:application/octet-stream;base64,",Cr=r=>r.startsWith(_e),k;l.locateFile?(k="mozjpeg_enc.wasm",Cr(k)||(k=se(k))):k=new URL("/assets/mozjpeg_enc-DO-zoExo.wasm",import.meta.url).href;function Rr(r){if(r==k&&x)return new Uint8Array(x);if(rr)return rr(r);throw"both async and sync fetching of the wasm failed"}function me(r){return!x&&(_r||K)&&typeof fetch=="function"?fetch(r,{credentials:"same-origin"}).then(e=>{if(!e.ok)throw`failed to load wasm binary file at '${r}'`;return e.arrayBuffer()}).catch(()=>Rr(r)):Promise.resolve().then(()=>Rr(r))}function Pr(r,e,a){return me(r).then(i=>WebAssembly.instantiate(i,e)).then(a,i=>{I(`failed to asynchronously prepare wasm: ${i}`),Er(i)})}function ye(r,e,a,i){return!r&&typeof WebAssembly.instantiateStreaming=="function"&&!Cr(e)&&typeof fetch=="function"?fetch(e,{credentials:"same-origin"}).then(s=>{var f=WebAssembly.instantiateStreaming(s,a);return f.then(i,function(u){return I(`wasm streaming compile failed: ${u}`),I("falling back to ArrayBuffer instantiation"),Pr(e,a,i)})}):Pr(e,a,i)}function be(){var r={a:Vr};function e(i,s){return w=i.exports,X=w.C,wr(),Kr=w.H,de(w.D),ge(),w}he();function a(i){e(i.instance)}if(l.instantiateWasm)try{return l.instantiateWasm(r,e)}catch(i){I(`Module.instantiateWasm callback failed with error: ${i}`),S(i)}return ye(x,k,r,a).catch(S),{}}function we(r){this.name="ExitStatus",this.message=`Program terminated with exit(${r})`,this.status=r}var tr=r=>{for(;r.length>0;)r.shift()(l)};l.noExitRuntime;class $e{constructor(e){this.excPtr=e,this.ptr=e-24}set_type(e){p[this.ptr+4>>2]=e}get_type(){return p[this.ptr+4>>2]}set_destructor(e){p[this.ptr+8>>2]=e}get_destructor(){return p[this.ptr+8>>2]}set_caught(e){e=e?1:0,$[this.ptr+12]=e}get_caught(){return $[this.ptr+12]!=0}set_rethrown(e){e=e?1:0,$[this.ptr+13]=e}get_rethrown(){return $[this.ptr+13]!=0}init(e,a){this.set_adjusted_ptr(0),this.set_type(e),this.set_destructor(a)}set_adjusted_ptr(e){p[this.ptr+16>>2]=e}get_adjusted_ptr(){return p[this.ptr+16>>2]}get_exception_ptr(){var e=t(this.get_type());if(e)return p[this.excPtr>>2];var a=this.get_adjusted_ptr();return a!==0?a:this.excPtr}}var Fr=0,Ae=(r,e,a)=>{var i=new $e(r);throw i.init(e,a),Fr=r,Fr},fr={},Sr=r=>{for(;r.length;){var e=r.pop(),a=r.pop();a(e)}};function nr(r){return this.fromWireType(p[r>>2])}var T={},j={},D={},ar,Wr=r=>{throw new ar(r)},P=(r,e,a)=>{r.forEach(function(v){D[v]=e});function i(v){var c=a(v);c.length!==r.length&&Wr("Mismatched type converter count");for(var d=0;d<r.length;++d)A(r[d],c[d])}var s=new Array(e.length),f=[],u=0;e.forEach((v,c)=>{j.hasOwnProperty(v)?s[c]=j[v]:(f.push(v),T.hasOwnProperty(v)||(T[v]=[]),T[v].push(()=>{s[c]=j[v],++u,u===f.length&&i(s)}))}),f.length===0&&i(s)},Lr=r=>{var e=fr[r];delete fr[r];var a=e.rawConstructor,i=e.rawDestructor,s=e.fields,f=s.map(u=>u.getterReturnType).concat(s.map(u=>u.setterArgumentType));P([r],f,u=>{var v={};return s.forEach((c,d)=>{var h=c.fieldName,g=u[d],R=c.getter,E=c.getterContext,B=u[d+s.length],Br=c.setter,J=c.setterContext;v[h]={read:N=>g.fromWireType(R(E,N)),write:(N,Nr)=>{var ae=[];Br(J,N,B.toWireType(ae,Nr)),Sr(ae)}}}),[{name:e.name,fromWireType:c=>{var d={};for(var h in v)d[h]=v[h].read(c);return i(c),d},toWireType:(c,d)=>{for(var h in v)if(!(h in d))throw new TypeError(`Missing field: "${h}"`);var g=a();for(h in v)v[h].write(g,d[h]);return c!==null&&c.push(i,g),g},argPackAdvance:H,readValueFromPointer:nr,destructorFunction:i}]})},qr=(r,e,a,i,s)=>{},Te=()=>{for(var r=new Array(256),e=0;e<256;++e)r[e]=String.fromCharCode(e);zr=r},zr,m=r=>{for(var e="",a=r;_[a];)e+=zr[_[a++]];return e},G,U=r=>{throw new G(r)};function kr(r,e,a={}){var i=e.name;if(r||U(`type "${i}" must have a positive integer typeid pointer`),j.hasOwnProperty(r)){if(a.ignoreDuplicateRegistrations)return;U(`Cannot register type '${i}' twice`)}if(j[r]=e,delete D[r],T.hasOwnProperty(r)){var s=T[r];delete T[r],s.forEach(f=>f())}}function A(r,e,a={}){if(!("argPackAdvance"in e))throw new TypeError("registerType registeredInstance requires argPackAdvance");return kr(r,e,a)}var H=8,Ee=(r,e,a,i)=>{e=m(e),A(r,{name:e,fromWireType:function(s){return!!s},toWireType:function(s,f){return f?a:i},argPackAdvance:H,readValueFromPointer:function(s){return this.fromWireType(_[s])},destructorFunction:null})},Ur=[],F=[],ir=r=>{r>9&&--F[r+1]===0&&(F[r]=void 0,Ur.push(r))},Ce=()=>F.length/2-5-Ur.length,Re=()=>{F.push(0,1,void 0,1,null,1,!0,1,!1,1),l.count_emval_handles=Ce},Q={toValue:r=>(r||U("Cannot use deleted val. handle = "+r),F[r]),toHandle:r=>{switch(r){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{const e=Ur.pop()||F.length;return F[e]=r,F[e+1]=1,e}}}},Pe={name:"emscripten::val",fromWireType:r=>{var e=Q.toValue(r);return ir(r),e},toWireType:(r,e)=>Q.toHandle(e),argPackAdvance:H,readValueFromPointer:nr,destructorFunction:null},Or=r=>A(r,Pe),Gr=(r,e)=>{switch(e){case 4:return function(a){return this.fromWireType(yr[a>>2])};case 8:return function(a){return this.fromWireType(br[a>>3])};default:throw new TypeError(`invalid float width (${e}): ${r}`)}},Fe=(r,e,a)=>{e=m(e),A(r,{name:e,fromWireType:i=>i,toWireType:(i,s)=>s,argPackAdvance:H,readValueFromPointer:Gr(e,a),destructorFunction:null})},jr=(r,e)=>Object.defineProperty(e,"name",{value:r});function Se(r){for(var e=1;e<r.length;++e)if(r[e]!==null&&r[e].destructorFunction===void 0)return!0;return!1}function We(r,e,a,i,s,f){var u=e.length;u<2&&U("argTypes array size mismatch! Must at least get return value and 'this' types!"),e[1];var v=Se(e),c=e[0].name!=="void",d=u-2,h=new Array(d),g=[],R=[],E=function(...B){B.length!==d&&U(`function ${r} called with ${B.length} arguments, expected ${d}`),R.length=0;var Br;g.length=1,g[0]=s;for(var J=0;J<d;++J)h[J]=e[J+2].toWireType(R,B[J]),g.push(h[J]);var N=i(...g);function Nr(ae){if(v)Sr(R);else for(var cr=2;cr<e.length;cr++){var Ft=cr===1?Br:h[cr-2];e[cr].destructorFunction!==null&&e[cr].destructorFunction(Ft)}if(c)return e[0].fromWireType(ae)}return Nr(N)};return jr(r,E)}var ke=(r,e,a)=>{if(r[e].overloadTable===void 0){var i=r[e];r[e]=function(...s){return r[e].overloadTable.hasOwnProperty(s.length)||U(`Function '${a}' called with an invalid number of arguments (${s.length}) - expects one of (${r[e].overloadTable})!`),r[e].overloadTable[s.length].apply(this,s)},r[e].overloadTable=[],r[e].overloadTable[i.argCount]=i}},Ue=(r,e,a)=>{l.hasOwnProperty(r)?((a===void 0||l[r].overloadTable!==void 0&&l[r].overloadTable[a]!==void 0)&&U(`Cannot register public name '${r}' twice`),ke(l,r,r),l.hasOwnProperty(a)&&U(`Cannot register multiple overloads of a function with the same number of arguments (${a})!`),l[r].overloadTable[a]=e):(l[r]=e,a!==void 0&&(l[r].numArguments=a))},Oe=(r,e)=>{for(var a=[],i=0;i<r;i++)a.push(p[e+i*4>>2]);return a},ur=(r,e,a)=>{l.hasOwnProperty(r)||Wr("Replacing nonexistent public symbol"),l[r].overloadTable!==void 0&&a!==void 0?l[r].overloadTable[a]=e:(l[r]=e,l[r].argCount=a)},Jr=(r,e,a)=>{r=r.replace(/p/g,"i");var i=l["dynCall_"+r];return i(e,...a)},or=[],Kr,Xr=r=>{var e=or[r];return e||(r>=or.length&&(or.length=r+1),or[r]=e=Kr.get(r)),e},je=(r,e,a=[])=>{if(r.includes("j"))return Jr(r,e,a);var i=Xr(e)(...a);return i},Ie=(r,e)=>(...a)=>je(r,e,a),Y=(r,e)=>{r=m(r);function a(){return r.includes("j")?Ie(r,e):Xr(e)}var i=a();return typeof i!="function"&&U(`unknown function pointer with signature ${r}: ${e}`),i},Qr=(r,e)=>{var a=jr(e,function(i){this.name=e,this.message=i;var s=new Error(i).stack;s!==void 0&&(this.stack=this.toString()+`
|
|
2
|
+
`+s.replace(/^Error(:[^\n]*)?\n/,""))});return a.prototype=Object.create(r.prototype),a.prototype.constructor=a,a.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},a},Yr,Zr=r=>{var e=Mr(r),a=m(e);return M(e),a},De=(r,e)=>{var a=[],i={};function s(f){if(!i[f]&&!j[f]){if(D[f]){D[f].forEach(s);return}a.push(f),i[f]=!0}}throw e.forEach(s),new Yr(`${r}: `+a.map(Zr).join([", "]))},He=r=>{r=r.trim();const e=r.indexOf("(");return e!==-1?r.substr(0,e):r},Ve=(r,e,a,i,s,f,u)=>{var v=Oe(e,a);r=m(r),r=He(r),s=Y(i,s),Ue(r,function(){De(`Cannot call ${r} due to unbound types`,v)},e-1),P([],v,c=>{var d=[c[0],null].concat(c.slice(1));return ur(r,We(r,d,null,s,f),e-1),[]})},Me=(r,e,a)=>{switch(e){case 1:return a?i=>$[i]:i=>_[i];case 2:return a?i=>L[i>>1]:i=>er[i>>1];case 4:return a?i=>q[i>>2]:i=>p[i>>2];default:throw new TypeError(`invalid integer width (${e}): ${r}`)}},Be=(r,e,a,i,s)=>{e=m(e);var f=h=>h;if(i===0){var u=32-8*a;f=h=>h<<u>>>u}var v=e.includes("unsigned"),c=(h,g)=>{},d;v?d=function(h,g){return c(g,this.name),g>>>0}:d=function(h,g){return c(g,this.name),g},A(r,{name:e,fromWireType:f,toWireType:d,argPackAdvance:H,readValueFromPointer:Me(e,a,i!==0),destructorFunction:null})},Ne=(r,e,a)=>{var i=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],s=i[e];function f(u){var v=p[u>>2],c=p[u+4>>2];return new s($.buffer,c,v)}a=m(a),A(r,{name:a,fromWireType:f,argPackAdvance:H,readValueFromPointer:f},{ignoreDuplicateRegistrations:!0})},xe=(r,e,a,i)=>{if(!(i>0))return 0;for(var s=a,f=a+i-1,u=0;u<r.length;++u){var v=r.charCodeAt(u);if(v>=55296&&v<=57343){var c=r.charCodeAt(++u);v=65536+((v&1023)<<10)|c&1023}if(v<=127){if(a>=f)break;e[a++]=v}else if(v<=2047){if(a+1>=f)break;e[a++]=192|v>>6,e[a++]=128|v&63}else if(v<=65535){if(a+2>=f)break;e[a++]=224|v>>12,e[a++]=128|v>>6&63,e[a++]=128|v&63}else{if(a+3>=f)break;e[a++]=240|v>>18,e[a++]=128|v>>12&63,e[a++]=128|v>>6&63,e[a++]=128|v&63}}return e[a]=0,a-s},re=(r,e,a)=>xe(r,_,e,a),Le=r=>{for(var e=0,a=0;a<r.length;++a){var i=r.charCodeAt(a);i<=127?e++:i<=2047?e+=2:i>=55296&&i<=57343?(e+=4,++a):e+=3}return e},ee=(r,e,a)=>{for(var i=e+a,s="";!(e>=i);){var f=r[e++];if(!f)return s;if(!(f&128)){s+=String.fromCharCode(f);continue}var u=r[e++]&63;if((f&224)==192){s+=String.fromCharCode((f&31)<<6|u);continue}var v=r[e++]&63;if((f&240)==224?f=(f&15)<<12|u<<6|v:f=(f&7)<<18|u<<12|v<<6|r[e++]&63,f<65536)s+=String.fromCharCode(f);else{var c=f-65536;s+=String.fromCharCode(55296|c>>10,56320|c&1023)}}return s},qe=(r,e)=>r?ee(_,r,e):"",ze=(r,e)=>{e=m(e);var a=e==="std::string";A(r,{name:e,fromWireType(i){var s=p[i>>2],f=i+4,u;if(a)for(var v=f,c=0;c<=s;++c){var d=f+c;if(c==s||_[d]==0){var h=d-v,g=qe(v,h);u===void 0?u=g:(u+="\0",u+=g),v=d+1}}else{for(var R=new Array(s),c=0;c<s;++c)R[c]=String.fromCharCode(_[f+c]);u=R.join("")}return M(i),u},toWireType(i,s){s instanceof ArrayBuffer&&(s=new Uint8Array(s));var f,u=typeof s=="string";u||s instanceof Uint8Array||s instanceof Uint8ClampedArray||s instanceof Int8Array||U("Cannot pass non-string to std::string"),a&&u?f=Le(s):f=s.length;var v=Z(4+f+1),c=v+4;if(p[v>>2]=f,a&&u)re(s,c,f+1);else if(u)for(var d=0;d<f;++d){var h=s.charCodeAt(d);h>255&&(M(c),U("String has UTF-16 code units that do not fit in 8 bits")),_[c+d]=h}else for(var d=0;d<f;++d)_[c+d]=s[d];return i!==null&&i.push(M,v),v},argPackAdvance:H,readValueFromPointer:nr,destructorFunction(i){M(i)}})},Ge=(r,e)=>{for(var a="",i=0;!(i>=e/2);++i){var s=L[r+i*2>>1];if(s==0)break;a+=String.fromCharCode(s)}return a},Je=(r,e,a)=>{if(a??(a=2147483647),a<2)return 0;a-=2;for(var i=e,s=a<r.length*2?a/2:r.length,f=0;f<s;++f){var u=r.charCodeAt(f);L[e>>1]=u,e+=2}return L[e>>1]=0,e-i},Ke=r=>r.length*2,Xe=(r,e)=>{for(var a=0,i="";!(a>=e/4);){var s=q[r+a*4>>2];if(s==0)break;if(++a,s>=65536){var f=s-65536;i+=String.fromCharCode(55296|f>>10,56320|f&1023)}else i+=String.fromCharCode(s)}return i},Qe=(r,e,a)=>{if(a??(a=2147483647),a<4)return 0;for(var i=e,s=i+a-4,f=0;f<r.length;++f){var u=r.charCodeAt(f);if(u>=55296&&u<=57343){var v=r.charCodeAt(++f);u=65536+((u&1023)<<10)|v&1023}if(q[e>>2]=u,e+=4,e+4>s)break}return q[e>>2]=0,e-i},Ye=r=>{for(var e=0,a=0;a<r.length;++a){var i=r.charCodeAt(a);i>=55296&&i<=57343&&++a,e+=4}return e},Ze=(r,e,a)=>{a=m(a);var i,s,f,u;e===2?(i=Ge,s=Je,u=Ke,f=v=>er[v>>1]):e===4&&(i=Xe,s=Qe,u=Ye,f=v=>p[v>>2]),A(r,{name:a,fromWireType:v=>{for(var c=p[v>>2],d,h=v+4,g=0;g<=c;++g){var R=v+4+g*e;if(g==c||f(R)==0){var E=R-h,B=i(h,E);d===void 0?d=B:(d+="\0",d+=B),h=R+e}}return M(v),d},toWireType:(v,c)=>{typeof c!="string"&&U(`Cannot pass non-string to C++ string type ${a}`);var d=u(c),h=Z(4+d+e);return p[h>>2]=d/e,s(c,h+4,d+e),v!==null&&v.push(M,h),h},argPackAdvance:H,readValueFromPointer:nr,destructorFunction(v){M(v)}})},Ir=(r,e,a,i,s,f)=>{fr[r]={name:m(e),rawConstructor:Y(a,i),rawDestructor:Y(s,f),fields:[]}},rt=(r,e,a,i,s,f,u,v,c,d)=>{fr[r].fields.push({fieldName:m(e),getterReturnType:a,getter:Y(i,s),getterContext:f,setterArgumentType:u,setter:Y(v,c),setterContext:d})},et=(r,e)=>{e=m(e),A(r,{isVoid:!0,name:e,argPackAdvance:0,fromWireType:()=>{},toWireType:(a,i)=>{}})},tt=(r,e,a)=>_.copyWithin(r,e,e+a),vr=[],nt=(r,e,a,i)=>(r=vr[r],e=Q.toValue(e),r(null,e,a,i)),at={},it=r=>{var e=at[r];return e===void 0?m(r):e},te=()=>{if(typeof globalThis=="object")return globalThis;function r(e){e.$$$embind_global$$$=e;var a=typeof $$$embind_global$$$=="object"&&e.$$$embind_global$$$==e;return a||delete e.$$$embind_global$$$,a}if(typeof $$$embind_global$$$=="object"||(typeof global=="object"&&r(global)?$$$embind_global$$$=global:typeof self=="object"&&r(self)&&($$$embind_global$$$=self),typeof $$$embind_global$$$=="object"))return $$$embind_global$$$;throw Error("unable to get global object.")},ot=r=>r===0?Q.toHandle(te()):(r=it(r),Q.toHandle(te()[r])),st=r=>{var e=vr.length;return vr.push(r),e},lt=(r,e)=>{var a=j[r];return a===void 0&&U(`${e} has unknown type ${Zr(r)}`),a},ft=(r,e)=>{for(var a=new Array(r),i=0;i<r;++i)a[i]=lt(p[e+i*4>>2],"parameter "+i);return a},ut=Reflect.construct,vt=(r,e,a)=>{var i=[],s=r.toWireType(i,a);return i.length&&(p[e>>2]=Q.toHandle(i)),s},ct=(r,e,a)=>{var i=ft(r,e),s=i.shift();r--;var f=new Array(r),u=(c,d,h,g)=>{for(var R=0,E=0;E<r;++E)f[E]=i[E].readValueFromPointer(g+R),R+=i[E].argPackAdvance;var B=a===1?ut(d,f):d.apply(c,f);return vt(s,h,B)},v=`methodCaller<(${i.map(c=>c.name).join(", ")}) => ${s.name}>`;return st(jr(v,u))},dt=r=>{var e=Q.toValue(r);Sr(e),ir(r)},pt=()=>{Er("")},Dr=()=>2147483648,ht=r=>{var e=X.buffer,a=(r-e.byteLength+65535)/65536;try{return X.grow(a),wr(),1}catch{}},sr=r=>{var e=_.length;r>>>=0;var a=Dr();if(r>a)return!1;for(var i=(c,d)=>c+(d-c%d)%d,s=1;s<=4;s*=2){var f=e*(1+.2/s);f=Math.min(f,r+100663296);var u=Math.min(a,i(Math.max(r,f),65536)),v=ht(u);if(v)return!0}return!1},Hr={},gt=()=>hr||"./this.program",lr=()=>{if(!lr.strings){var r=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:r,_:gt()};for(var a in Hr)Hr[a]===void 0?delete e[a]:e[a]=Hr[a];var i=[];for(var a in e)i.push(`${a}=${e[a]}`);lr.strings=i}return lr.strings},_t=(r,e)=>{for(var a=0;a<r.length;++a)$[e++]=r.charCodeAt(a);$[e]=0},mt=(r,e)=>{var a=0;return lr().forEach((i,s)=>{var f=e+a;p[r+s*4>>2]=f,_t(i,f),a+=i.length+1}),0},yt=(r,e)=>{var a=lr();p[r>>2]=a.length;var i=0;return a.forEach(s=>i+=s.length+1),p[e>>2]=i,0},bt=r=>{gr(r,new we(r))},wt=(r,e)=>{bt(r)},$t=wt,At=r=>52;function Tt(r,e,a,i,s){return 70}var Et=[null,[],[]],V=(r,e)=>{var a=Et[r];e===0||e===10?((r===1?le:I)(ee(a,0)),a.length=0):a.push(e)},ne=(r,e,a,i)=>{for(var s=0,f=0;f<a;f++){var u=p[e>>2],v=p[e+4>>2];e+=8;for(var c=0;c<v;c++)V(r,_[u+c]);s+=v}return p[i>>2]=s,0};ar=l.InternalError=class extends Error{constructor(e){super(e),this.name="InternalError"}},Te(),G=l.BindingError=class extends Error{constructor(e){super(e),this.name="BindingError"}},Re(),Yr=l.UnboundTypeError=Qr(Error,"UnboundTypeError");var Vr={j:Ae,k:Lr,n:qr,h:Ee,z:Or,f:Fe,e:Ve,c:Be,a:Ne,g:ze,d:Ze,l:Ir,b:rt,i:et,s:tt,y:nt,u:ir,A:ot,x:ct,w:dt,o:pt,p:sr,q:mt,r:yt,B:$t,t:At,m:Tt,v:ne},w=be(),Mr=r=>(Mr=w.E)(r),Z=r=>(Z=w.F)(r),M=r=>(M=w.G)(r),t=r=>(t=w.I)(r);l.dynCall_jiji=(r,e,a,i,s)=>(l.dynCall_jiji=w.J)(r,e,a,i,s);var n;z=function r(){n||o(),n||(z=r)};function o(){if(W>0||(fe(),W>0))return;function r(){n||(n=!0,l.calledRun=!0,!mr&&(ue(),C(l),l.onRuntimeInitialized&&l.onRuntimeInitialized(),ve()))}l.setStatus?(l.setStatus("Running..."),setTimeout(function(){setTimeout(function(){l.setStatus("")},1),r()},1)):r()}if(l.preInit)for(typeof l.preInit=="function"&&(l.preInit=[l.preInit]);l.preInit.length>0;)l.preInit.pop()();return o(),dr})})();const Wt={quality:75,baseline:!1,arithmetic:!1,progressive:!0,optimize_coding:!0,smoothing:0,color_space:3,quant_table:3,trellis_multipass:!1,trellis_opt_zero:!1,trellis_opt_table:!1,trellis_loops:1,auto_subsample:!0,chroma_subsample:2,separate_chroma_quality:!1,chroma_quality:75},kt={preserveOrientation:!1};function Pt(y,O,l={}){let C;return O&&(C=(S,dr)=>{const xr=new WebAssembly.Instance(O,S);return dr(xr),xr.exports}),y({noInitialRun:!0,instantiateWasm:C,...l})}let Ct;async function Ut(y,O){let l=y,C=O;arguments.length===1&&!(y instanceof WebAssembly.Module)&&(l=void 0,C=y),Ct=Pt(St,l,C)}async function Vt(y,O={}){Ct||Ut();const l=await Ct,C={...Wt,...O};return l.encode(y.data,y.width,y.height,C).buffer}var Ot=(()=>{var y=import.meta.url;return(function(O={}){var l=O,C,S,dr=new Promise((t,n)=>{C=t,S=n});const ie=globalThis.ServiceWorkerGlobalScope!==void 0&&typeof self<"u"&&globalThis.caches&&globalThis.caches.default!==void 0,oe=typeof process=="object"&&process.release&&process.release.name==="node";(ie||oe)&&(globalThis.ImageData||(globalThis.ImageData=class{constructor(n,o,r){this.data=n,this.width=o,this.height=r}}),import.meta.url===void 0&&(import.meta.url="https://localhost"),typeof self<"u"&&self.location===void 0&&(self.location={href:""}));var pr=Object.assign({},l),hr="./this.program",gr=(t,n)=>{throw n},_r=typeof window=="object",K=typeof importScripts=="function";typeof process=="object"&&typeof process.versions=="object"&&process.versions.node;var b="";function se(t){return l.locateFile?l.locateFile(t,b):b+t}var rr;(_r||K)&&(K?b=self.location.href:typeof document<"u"&&document.currentScript&&(b=document.currentScript.src),y&&(b=y),b.startsWith("blob:")?b="":b=b.substr(0,b.replace(/[?#].*/,"").lastIndexOf("/")+1),K&&(rr=t=>{var n=new XMLHttpRequest;return n.open("GET",t,!1),n.responseType="arraybuffer",n.send(null),new Uint8Array(n.response)}));var le=l.print||console.log.bind(console),I=l.printErr||console.error.bind(console);Object.assign(l,pr),pr=null,l.arguments&&l.arguments,l.thisProgram&&(hr=l.thisProgram),l.quit&&(gr=l.quit);var x;l.wasmBinary&&(x=l.wasmBinary);var X,mr=!1,$,_,L,er,q,p,yr,br;function wr(){var t=X.buffer;l.HEAP8=$=new Int8Array(t),l.HEAP16=L=new Int16Array(t),l.HEAPU8=_=new Uint8Array(t),l.HEAPU16=er=new Uint16Array(t),l.HEAP32=q=new Int32Array(t),l.HEAPU32=p=new Uint32Array(t),l.HEAPF32=yr=new Float32Array(t),l.HEAPF64=br=new Float64Array(t)}var $r=[],Ar=[],Tr=[];function fe(){if(l.preRun)for(typeof l.preRun=="function"&&(l.preRun=[l.preRun]);l.preRun.length;)ce(l.preRun.shift());tr($r)}function ue(){tr(Ar)}function ve(){if(l.postRun)for(typeof l.postRun=="function"&&(l.postRun=[l.postRun]);l.postRun.length;)pe(l.postRun.shift());tr(Tr)}function ce(t){$r.unshift(t)}function de(t){Ar.unshift(t)}function pe(t){Tr.unshift(t)}var W=0,z=null;function he(t){var n;W++,(n=l.monitorRunDependencies)==null||n.call(l,W)}function ge(t){var o;if(W--,(o=l.monitorRunDependencies)==null||o.call(l,W),W==0&&z){var n=z;z=null,n()}}function Er(t){var o;(o=l.onAbort)==null||o.call(l,t),t="Aborted("+t+")",I(t),mr=!0,t+=". Build with -sASSERTIONS for more info.";var n=new WebAssembly.RuntimeError(t);throw S(n),n}var _e="data:application/octet-stream;base64,",Cr=t=>t.startsWith(_e),k;l.locateFile?(k="mozjpeg_dec.wasm",Cr(k)||(k=se(k))):k=new URL("/assets/mozjpeg_dec-muSO2n8T.wasm",import.meta.url).href;function Rr(t){if(t==k&&x)return new Uint8Array(x);if(rr)return rr(t);throw"both async and sync fetching of the wasm failed"}function me(t){return!x&&(_r||K)&&typeof fetch=="function"?fetch(t,{credentials:"same-origin"}).then(n=>{if(!n.ok)throw`failed to load wasm binary file at '${t}'`;return n.arrayBuffer()}).catch(()=>Rr(t)):Promise.resolve().then(()=>Rr(t))}function Pr(t,n,o){return me(t).then(r=>WebAssembly.instantiate(r,n)).then(o,r=>{I(`failed to asynchronously prepare wasm: ${r}`),Er(r)})}function ye(t,n,o,r){return!t&&typeof WebAssembly.instantiateStreaming=="function"&&!Cr(n)&&typeof fetch=="function"?fetch(n,{credentials:"same-origin"}).then(e=>{var a=WebAssembly.instantiateStreaming(e,o);return a.then(r,function(i){return I(`wasm streaming compile failed: ${i}`),I("falling back to ArrayBuffer instantiation"),Pr(n,o,r)})}):Pr(n,o,r)}function be(){var t={a:Et};function n(r,e){return V=r.exports,X=V.A,wr(),Jr=V.F,de(V.B),ge(),V}he();function o(r){n(r.instance)}if(l.instantiateWasm)try{return l.instantiateWasm(t,n)}catch(r){I(`Module.instantiateWasm callback failed with error: ${r}`),S(r)}return ye(x,k,t,o).catch(S),{}}function we(t){this.name="ExitStatus",this.message=`Program terminated with exit(${t})`,this.status=t}var tr=t=>{for(;t.length>0;)t.shift()(l)};l.noExitRuntime;class $e{constructor(n){this.excPtr=n,this.ptr=n-24}set_type(n){p[this.ptr+4>>2]=n}get_type(){return p[this.ptr+4>>2]}set_destructor(n){p[this.ptr+8>>2]=n}get_destructor(){return p[this.ptr+8>>2]}set_caught(n){n=n?1:0,$[this.ptr+12]=n}get_caught(){return $[this.ptr+12]!=0}set_rethrown(n){n=n?1:0,$[this.ptr+13]=n}get_rethrown(){return $[this.ptr+13]!=0}init(n,o){this.set_adjusted_ptr(0),this.set_type(n),this.set_destructor(o)}set_adjusted_ptr(n){p[this.ptr+16>>2]=n}get_adjusted_ptr(){return p[this.ptr+16>>2]}get_exception_ptr(){var n=Mr(this.get_type());if(n)return p[this.excPtr>>2];var o=this.get_adjusted_ptr();return o!==0?o:this.excPtr}}var Fr=0,Ae=(t,n,o)=>{var r=new $e(t);throw r.init(n,o),Fr=t,Fr},fr=(t,n,o,r,e)=>{},Sr=()=>{for(var t=new Array(256),n=0;n<256;++n)t[n]=String.fromCharCode(n);nr=t},nr,T=t=>{for(var n="",o=t;_[o];)n+=nr[_[o++]];return n},j={},D={},ar={},Wr,P=t=>{throw new Wr(t)},Lr,qr=t=>{throw new Lr(t)},Te=(t,n,o)=>{t.forEach(function(s){ar[s]=n});function r(s){var f=o(s);f.length!==t.length&&qr("Mismatched type converter count");for(var u=0;u<t.length;++u)m(t[u],f[u])}var e=new Array(n.length),a=[],i=0;n.forEach((s,f)=>{D.hasOwnProperty(s)?e[f]=D[s]:(a.push(s),j.hasOwnProperty(s)||(j[s]=[]),j[s].push(()=>{e[f]=D[s],++i,i===a.length&&r(e)}))}),a.length===0&&r(e)};function zr(t,n,o={}){var r=n.name;if(t||P(`type "${r}" must have a positive integer typeid pointer`),D.hasOwnProperty(t)){if(o.ignoreDuplicateRegistrations)return;P(`Cannot register type '${r}' twice`)}if(D[t]=n,delete ar[t],j.hasOwnProperty(t)){var e=j[t];delete j[t],e.forEach(a=>a())}}function m(t,n,o={}){if(!("argPackAdvance"in n))throw new TypeError("registerType registeredInstance requires argPackAdvance");return zr(t,n,o)}var G=8,U=(t,n,o,r)=>{n=T(n),m(t,{name:n,fromWireType:function(e){return!!e},toWireType:function(e,a){return a?o:r},argPackAdvance:G,readValueFromPointer:function(e){return this.fromWireType(_[e])},destructorFunction:null})},kr=[],A=[],H=t=>{t>9&&--A[t+1]===0&&(A[t]=void 0,kr.push(t))},Ee=()=>A.length/2-5-kr.length,Ur=()=>{A.push(0,1,void 0,1,null,1,!0,1,!1,1),l.count_emval_handles=Ee},F={toValue:t=>(t||P("Cannot use deleted val. handle = "+t),A[t]),toHandle:t=>{switch(t){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{const n=kr.pop()||A.length;return A[n]=t,A[n+1]=1,n}}}};function ir(t){return this.fromWireType(p[t>>2])}var Ce={name:"emscripten::val",fromWireType:t=>{var n=F.toValue(t);return H(t),n},toWireType:(t,n)=>F.toHandle(n),argPackAdvance:G,readValueFromPointer:ir,destructorFunction:null},Re=t=>m(t,Ce),Q=(t,n)=>{switch(n){case 4:return function(o){return this.fromWireType(yr[o>>2])};case 8:return function(o){return this.fromWireType(br[o>>3])};default:throw new TypeError(`invalid float width (${n}): ${t}`)}},Pe=(t,n,o)=>{n=T(n),m(t,{name:n,fromWireType:r=>r,toWireType:(r,e)=>e,argPackAdvance:G,readValueFromPointer:Q(n,o),destructorFunction:null})},Or=(t,n)=>Object.defineProperty(n,"name",{value:t}),Gr=t=>{for(;t.length;){var n=t.pop(),o=t.pop();o(n)}};function Fe(t){for(var n=1;n<t.length;++n)if(t[n]!==null&&t[n].destructorFunction===void 0)return!0;return!1}function jr(t,n,o,r,e,a){var i=n.length;i<2&&P("argTypes array size mismatch! Must at least get return value and 'this' types!"),n[1];var s=Fe(n),f=n[0].name!=="void",u=i-2,v=new Array(u),c=[],d=[],h=function(...g){g.length!==u&&P(`function ${t} called with ${g.length} arguments, expected ${u}`),d.length=0;var R;c.length=1,c[0]=e;for(var E=0;E<u;++E)v[E]=n[E+2].toWireType(d,g[E]),c.push(v[E]);var B=r(...c);function Br(J){if(s)Gr(d);else for(var N=2;N<n.length;N++){var Nr=N===1?R:v[N-2];n[N].destructorFunction!==null&&n[N].destructorFunction(Nr)}if(f)return n[0].fromWireType(J)}return Br(B)};return Or(t,h)}var Se=(t,n,o)=>{if(t[n].overloadTable===void 0){var r=t[n];t[n]=function(...e){return t[n].overloadTable.hasOwnProperty(e.length)||P(`Function '${o}' called with an invalid number of arguments (${e.length}) - expects one of (${t[n].overloadTable})!`),t[n].overloadTable[e.length].apply(this,e)},t[n].overloadTable=[],t[n].overloadTable[r.argCount]=r}},We=(t,n,o)=>{l.hasOwnProperty(t)?((o===void 0||l[t].overloadTable!==void 0&&l[t].overloadTable[o]!==void 0)&&P(`Cannot register public name '${t}' twice`),Se(l,t,t),l.hasOwnProperty(o)&&P(`Cannot register multiple overloads of a function with the same number of arguments (${o})!`),l[t].overloadTable[o]=n):(l[t]=n,o!==void 0&&(l[t].numArguments=o))},ke=(t,n)=>{for(var o=[],r=0;r<t;r++)o.push(p[n+r*4>>2]);return o},Ue=(t,n,o)=>{l.hasOwnProperty(t)||qr("Replacing nonexistent public symbol"),l[t].overloadTable!==void 0&&o!==void 0?l[t].overloadTable[o]=n:(l[t]=n,l[t].argCount=o)},Oe=(t,n,o)=>{t=t.replace(/p/g,"i");var r=l["dynCall_"+t];return r(n,...o)},ur=[],Jr,or=t=>{var n=ur[t];return n||(t>=ur.length&&(ur.length=t+1),ur[t]=n=Jr.get(t)),n},Kr=(t,n,o=[])=>{if(t.includes("j"))return Oe(t,n,o);var r=or(n)(...o);return r},Xr=(t,n)=>(...o)=>Kr(t,n,o),je=(t,n)=>{t=T(t);function o(){return t.includes("j")?Xr(t,n):or(n)}var r=o();return typeof r!="function"&&P(`unknown function pointer with signature ${t}: ${n}`),r},Ie=(t,n)=>{var o=Or(n,function(r){this.name=n,this.message=r;var e=new Error(r).stack;e!==void 0&&(this.stack=this.toString()+`
|
|
3
|
+
`+e.replace(/^Error(:[^\n]*)?\n/,""))});return o.prototype=Object.create(t.prototype),o.prototype.constructor=o,o.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},o},Y,Qr=t=>{var n=ne(t),o=T(n);return w(n),o},Yr=(t,n)=>{var o=[],r={};function e(a){if(!r[a]&&!D[a]){if(ar[a]){ar[a].forEach(e);return}o.push(a),r[a]=!0}}throw n.forEach(e),new Y(`${t}: `+o.map(Qr).join([", "]))},Zr=t=>{t=t.trim();const n=t.indexOf("(");return n!==-1?t.substr(0,n):t},De=(t,n,o,r,e,a,i)=>{var s=ke(n,o);t=T(t),t=Zr(t),e=je(r,e),We(t,function(){Yr(`Cannot call ${t} due to unbound types`,s)},n-1),Te([],s,f=>{var u=[f[0],null].concat(f.slice(1));return Ue(t,jr(t,u,null,e,a),n-1),[]})},He=(t,n,o)=>{switch(n){case 1:return o?r=>$[r]:r=>_[r];case 2:return o?r=>L[r>>1]:r=>er[r>>1];case 4:return o?r=>q[r>>2]:r=>p[r>>2];default:throw new TypeError(`invalid integer width (${n}): ${t}`)}},Ve=(t,n,o,r,e)=>{n=T(n);var a=v=>v;if(r===0){var i=32-8*o;a=v=>v<<i>>>i}var s=n.includes("unsigned"),f=(v,c)=>{},u;s?u=function(v,c){return f(c,this.name),c>>>0}:u=function(v,c){return f(c,this.name),c},m(t,{name:n,fromWireType:a,toWireType:u,argPackAdvance:G,readValueFromPointer:He(n,o,r!==0),destructorFunction:null})},Me=(t,n,o)=>{var r=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],e=r[n];function a(i){var s=p[i>>2],f=p[i+4>>2];return new e($.buffer,f,s)}o=T(o),m(t,{name:o,fromWireType:a,argPackAdvance:G,readValueFromPointer:a},{ignoreDuplicateRegistrations:!0})},Be=(t,n,o,r)=>{if(!(r>0))return 0;for(var e=o,a=o+r-1,i=0;i<t.length;++i){var s=t.charCodeAt(i);if(s>=55296&&s<=57343){var f=t.charCodeAt(++i);s=65536+((s&1023)<<10)|f&1023}if(s<=127){if(o>=a)break;n[o++]=s}else if(s<=2047){if(o+1>=a)break;n[o++]=192|s>>6,n[o++]=128|s&63}else if(s<=65535){if(o+2>=a)break;n[o++]=224|s>>12,n[o++]=128|s>>6&63,n[o++]=128|s&63}else{if(o+3>=a)break;n[o++]=240|s>>18,n[o++]=128|s>>12&63,n[o++]=128|s>>6&63,n[o++]=128|s&63}}return n[o]=0,o-e},Ne=(t,n,o)=>Be(t,_,n,o),xe=t=>{for(var n=0,o=0;o<t.length;++o){var r=t.charCodeAt(o);r<=127?n++:r<=2047?n+=2:r>=55296&&r<=57343?(n+=4,++o):n+=3}return n},re=(t,n,o)=>{for(var r=n+o,e="";!(n>=r);){var a=t[n++];if(!a)return e;if(!(a&128)){e+=String.fromCharCode(a);continue}var i=t[n++]&63;if((a&224)==192){e+=String.fromCharCode((a&31)<<6|i);continue}var s=t[n++]&63;if((a&240)==224?a=(a&15)<<12|i<<6|s:a=(a&7)<<18|i<<12|s<<6|t[n++]&63,a<65536)e+=String.fromCharCode(a);else{var f=a-65536;e+=String.fromCharCode(55296|f>>10,56320|f&1023)}}return e},Le=(t,n)=>t?re(_,t,n):"",ee=(t,n)=>{n=T(n);var o=n==="std::string";m(t,{name:n,fromWireType(r){var e=p[r>>2],a=r+4,i;if(o)for(var s=a,f=0;f<=e;++f){var u=a+f;if(f==e||_[u]==0){var v=u-s,c=Le(s,v);i===void 0?i=c:(i+="\0",i+=c),s=u+1}}else{for(var d=new Array(e),f=0;f<e;++f)d[f]=String.fromCharCode(_[a+f]);i=d.join("")}return w(r),i},toWireType(r,e){e instanceof ArrayBuffer&&(e=new Uint8Array(e));var a,i=typeof e=="string";i||e instanceof Uint8Array||e instanceof Uint8ClampedArray||e instanceof Int8Array||P("Cannot pass non-string to std::string"),o&&i?a=xe(e):a=e.length;var s=Vr(4+a+1),f=s+4;if(p[s>>2]=a,o&&i)Ne(e,f,a+1);else if(i)for(var u=0;u<a;++u){var v=e.charCodeAt(u);v>255&&(w(f),P("String has UTF-16 code units that do not fit in 8 bits")),_[f+u]=v}else for(var u=0;u<a;++u)_[f+u]=e[u];return r!==null&&r.push(w,s),s},argPackAdvance:G,readValueFromPointer:ir,destructorFunction(r){w(r)}})},qe=(t,n)=>{for(var o="",r=0;!(r>=n/2);++r){var e=L[t+r*2>>1];if(e==0)break;o+=String.fromCharCode(e)}return o},ze=(t,n,o)=>{if(o??(o=2147483647),o<2)return 0;o-=2;for(var r=n,e=o<t.length*2?o/2:t.length,a=0;a<e;++a){var i=t.charCodeAt(a);L[n>>1]=i,n+=2}return L[n>>1]=0,n-r},Ge=t=>t.length*2,Je=(t,n)=>{for(var o=0,r="";!(o>=n/4);){var e=q[t+o*4>>2];if(e==0)break;if(++o,e>=65536){var a=e-65536;r+=String.fromCharCode(55296|a>>10,56320|a&1023)}else r+=String.fromCharCode(e)}return r},Ke=(t,n,o)=>{if(o??(o=2147483647),o<4)return 0;for(var r=n,e=r+o-4,a=0;a<t.length;++a){var i=t.charCodeAt(a);if(i>=55296&&i<=57343){var s=t.charCodeAt(++a);i=65536+((i&1023)<<10)|s&1023}if(q[n>>2]=i,n+=4,n+4>e)break}return q[n>>2]=0,n-r},Xe=t=>{for(var n=0,o=0;o<t.length;++o){var r=t.charCodeAt(o);r>=55296&&r<=57343&&++o,n+=4}return n},Qe=(t,n,o)=>{o=T(o);var r,e,a,i;n===2?(r=qe,e=ze,i=Ge,a=s=>er[s>>1]):n===4&&(r=Je,e=Ke,i=Xe,a=s=>p[s>>2]),m(t,{name:o,fromWireType:s=>{for(var f=p[s>>2],u,v=s+4,c=0;c<=f;++c){var d=s+4+c*n;if(c==f||a(d)==0){var h=d-v,g=r(v,h);u===void 0?u=g:(u+="\0",u+=g),v=d+n}}return w(s),u},toWireType:(s,f)=>{typeof f!="string"&&P(`Cannot pass non-string to C++ string type ${o}`);var u=i(f),v=Vr(4+u+n);return p[v>>2]=u/n,e(f,v+4,u+n),s!==null&&s.push(w,v),v},argPackAdvance:G,readValueFromPointer:ir,destructorFunction(s){w(s)}})},Ye=(t,n)=>{n=T(n),m(t,{isVoid:!0,name:n,argPackAdvance:0,fromWireType:()=>{},toWireType:(o,r)=>{}})},Ze=(t,n,o)=>_.copyWithin(t,n,n+o),Ir=[],rt=(t,n,o,r)=>(t=Ir[t],n=F.toValue(n),t(null,n,o,r)),et={},tt=t=>{var n=et[t];return n===void 0?T(t):n},vr=()=>{if(typeof globalThis=="object")return globalThis;function t(n){n.$$$embind_global$$$=n;var o=typeof $$$embind_global$$$=="object"&&n.$$$embind_global$$$==n;return o||delete n.$$$embind_global$$$,o}if(typeof $$$embind_global$$$=="object"||(typeof global=="object"&&t(global)?$$$embind_global$$$=global:typeof self=="object"&&t(self)&&($$$embind_global$$$=self),typeof $$$embind_global$$$=="object"))return $$$embind_global$$$;throw Error("unable to get global object.")},nt=t=>t===0?F.toHandle(vr()):(t=tt(t),F.toHandle(vr()[t])),at=t=>{var n=Ir.length;return Ir.push(t),n},it=(t,n)=>{var o=D[t];return o===void 0&&P(`${n} has unknown type ${Qr(t)}`),o},te=(t,n)=>{for(var o=new Array(t),r=0;r<t;++r)o[r]=it(p[n+r*4>>2],"parameter "+r);return o},ot=Reflect.construct,st=(t,n,o)=>{var r=[],e=t.toWireType(r,o);return r.length&&(p[n>>2]=F.toHandle(r)),e},lt=(t,n,o)=>{var r=te(t,n),e=r.shift();t--;var a=new Array(t),i=(f,u,v,c)=>{for(var d=0,h=0;h<t;++h)a[h]=r[h].readValueFromPointer(c+d),d+=r[h].argPackAdvance;var g=o===1?ot(u,a):u.apply(f,a);return st(e,v,g)},s=`methodCaller<(${r.map(f=>f.name).join(", ")}) => ${e.name}>`;return at(Or(s,i))},ft=t=>{t>9&&(A[t+1]+=1)},ut=t=>{var n=F.toValue(t);Gr(n),H(t)},vt=()=>{Er("")},ct=()=>2147483648,dt=t=>{var n=X.buffer,o=(t-n.byteLength+65535)/65536;try{return X.grow(o),wr(),1}catch{}},pt=t=>{var n=_.length;t>>>=0;var o=ct();if(t>o)return!1;for(var r=(f,u)=>f+(u-f%u)%u,e=1;e<=4;e*=2){var a=n*(1+.2/e);a=Math.min(a,t+100663296);var i=Math.min(o,r(Math.max(t,a),65536)),s=dt(i);if(s)return!0}return!1},Dr={},ht=()=>hr||"./this.program",sr=()=>{if(!sr.strings){var t=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",n={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:t,_:ht()};for(var o in Dr)Dr[o]===void 0?delete n[o]:n[o]=Dr[o];var r=[];for(var o in n)r.push(`${o}=${n[o]}`);sr.strings=r}return sr.strings},Hr=(t,n)=>{for(var o=0;o<t.length;++o)$[n++]=t.charCodeAt(o);$[n]=0},gt=(t,n)=>{var o=0;return sr().forEach((r,e)=>{var a=n+o;p[t+e*4>>2]=a,Hr(r,a),o+=r.length+1}),0},lr=(t,n)=>{var o=sr();p[t>>2]=o.length;var r=0;return o.forEach(e=>r+=e.length+1),p[n>>2]=r,0},_t=t=>{gr(t,new we(t))},mt=(t,n)=>{_t(t)},yt=mt,bt=t=>52;function wt(t,n,o,r,e){return 70}var $t=[null,[],[]],At=(t,n)=>{var o=$t[t];n===0||n===10?((t===1?le:I)(re(o,0)),o.length=0):o.push(n)},Tt=(t,n,o,r)=>{for(var e=0,a=0;a<o;a++){var i=p[n>>2],s=p[n+4>>2];n+=8;for(var f=0;f<s;f++)At(t,_[i+f]);e+=s}return p[r>>2]=e,0};Sr(),Wr=l.BindingError=class extends Error{constructor(n){super(n),this.name="BindingError"}},Lr=l.InternalError=class extends Error{constructor(n){super(n),this.name="InternalError"}},Ur(),Y=l.UnboundTypeError=Ie(Error,"UnboundTypeError");var Et={o:Ae,q:fr,m:U,l:Re,j:Pe,f:De,b:Ve,a:Me,e:ee,c:Qe,n:Ye,v:Ze,i:rt,d:H,k:nt,h:lt,y:ft,g:ut,r:vt,s:pt,t:gt,u:lr,z:yt,w:bt,p:wt,x:Tt},V=be(),ne=t=>(ne=V.C)(t),Vr=t=>(Vr=V.D)(t),w=t=>(w=V.E)(t),Mr=t=>(Mr=V.G)(t);l.dynCall_jiji=(t,n,o,r,e)=>(l.dynCall_jiji=V.H)(t,n,o,r,e);var Z;z=function t(){Z||M(),Z||(z=t)};function M(){if(W>0||(fe(),W>0))return;function t(){Z||(Z=!0,l.calledRun=!0,!mr&&(ue(),C(l),l.onRuntimeInitialized&&l.onRuntimeInitialized(),ve()))}l.setStatus?(l.setStatus("Running..."),setTimeout(function(){setTimeout(function(){l.setStatus("")},1),t()},1)):t()}if(l.preInit)for(typeof l.preInit=="function"&&(l.preInit=[l.preInit]);l.preInit.length>0;)l.preInit.pop()();return M(),dr})})();let Rt;async function jt(y,O){let l=y,C=O;arguments.length===1&&!(y instanceof WebAssembly.Module)&&(l=void 0,C=y),Rt=Pt(Ot,l,C)}async function xt(y,O={}){Rt||jt();const l={...kt,...O},S=(await Rt).decode(y,l.preserveOrientation);if(!S)throw new Error("Decoding error");return S}export{xt as decode,Vt as encode};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,PingFang SC,sans-serif;color:#172033;background:#f7f8fc}html,body{height:100vh;overflow:hidden}body{margin:0;background:#f7f8fc}.workbench{height:100vh;overflow:hidden;background:#f7f8fc}.sidebar{position:sticky!important;top:0;height:100vh;background:#171c2b!important;padding:28px 14px}.brand{padding:0 12px 30px;color:#fff;font-size:21px;font-weight:750;letter-spacing:-.4px}.brand span{color:#9589ff}.sidebar .ant-menu{background:transparent;border-inline-end:0}.sidebar-bottom{position:absolute;right:14px;bottom:28px;left:14px}.sidebar-footer{padding:14px 12px 0;color:#727b94;font-size:12px}.page{height:100vh;overflow-y:auto;padding:46px clamp(24px,5vw,72px)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:30px}.page-header .ant-typography{margin:0}.launcher-grid{display:grid;gap:7px}.launcher-card{cursor:pointer;border-color:#e3e6ef}.launcher-card .ant-card-body{padding:10px 14px}.service-card{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px}.service-card .ant-typography{display:block;margin:0}.service-card h4.ant-typography{margin:0 0 1px;font-size:15px;line-height:20px}.service-info{min-width:0;flex:1}.service-info>.ant-typography{font-size:12px;line-height:16px}.service-action{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap}.service-action .ant-badge{font-size:11px;line-height:14px}.launcher-table .ant-table-tbody>tr{cursor:pointer}.launcher-folder{display:block;max-width:620px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.start-script-icon{color:#8c8c8c;font-size:12px}.script-add{margin-bottom:10px}.service-config{margin-bottom:20px}.service-config .ant-collapse-content-box{padding-bottom:0!important}.service-config .ant-form-item{margin-bottom:14px}.clipboard-picker{min-width:190px}.squoosh-page{position:relative;min-height:calc(100vh - 92px);margin:-20px clamp(-24px,-5vw,-72px);padding:24px clamp(24px,5vw,72px);color:#172033}.squoosh-page.is-file-dragging{box-shadow:inset 0 0 0 3px #7667e8}.squoosh-page.is-file-dragging:after{position:absolute;z-index:20;top:12px;right:12px;bottom:12px;left:12px;display:grid;place-items:center;border:2px dashed #7667e8;border-radius:12px;background:#f8f7ffc7;color:#5b4cc4;content:"Drop image to compress";font-size:20px;font-weight:700;pointer-events:none}.squoosh-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #e4e7ef}.squoosh-header .ant-typography{margin:0;color:inherit}.squoosh-header>div>.ant-typography:first-child,.settings-heading>.ant-typography:first-child{color:#6d5ce7;font-size:11px;font-weight:750;letter-spacing:.12em}.squoosh-header h2.ant-typography{margin-top:4px;font-size:25px}.squoosh-studio{display:grid;grid-template-columns:minmax(0,1fr) 380px;height:clamp(570px,calc(100vh - 240px),640px);margin-top:16px;border:1px solid #e1e5ed;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 12px 32px #1f2a4412}.squoosh-preview-area{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;background:#fbfcfe}.preview-pane{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:570px}.preview-pane+.preview-pane{border-left:1px solid #e1e5ed}.preview-pane>header{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:0 16px;border-bottom:1px solid #e1e5ed;background:#fff}.preview-pane>header>div{display:grid;gap:1px;min-width:0}.preview-pane>header .ant-typography{color:#27344c;font-weight:650}.preview-pane>header span{overflow:hidden;color:#7d8799;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.preview-canvas{position:relative;display:grid;min-width:0;min-height:0;place-items:center;padding:22px;background-color:#f3f5f9;background-image:linear-gradient(45deg,#e9edf4 25%,transparent 25%),linear-gradient(-45deg,#e9edf4 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e9edf4 75%),linear-gradient(-45deg,transparent 75%,#e9edf4 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px}.image-dropzone{width:100%;max-width:420px}.image-dropzone.ant-upload-wrapper .ant-upload-drag{border-color:#cfd6e4;background:#ffffffe0}.image-dropzone.ant-upload-wrapper .ant-upload-drag:hover{border-color:#7667e8}.image-dropzone .ant-upload{padding:76px 18px!important}.image-dropzone .ant-upload-drag-icon .anticon{color:#6d5ce7}.image-dropzone .ant-upload-text{color:#27344c!important}.image-dropzone .ant-upload-hint{color:#7d8799!important}.image-panel{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0}.image-panel img{display:block;width:auto;max-width:100%;max-height:min(65vh,650px);object-fit:contain;border-radius:5px;box-shadow:0 10px 30px #00000052}.image-panel-meta{display:grid;gap:3px;min-width:0;text-align:center}.image-panel-meta .ant-typography{min-width:0;color:#46516a}.squoosh-settings{overflow-y:auto;padding:22px 20px;background:#fff}.settings-heading{margin-bottom:21px;padding-bottom:17px;border-bottom:1px solid #e7eaf0}.settings-heading .ant-typography{margin:0;color:#27344c}.settings-heading h4.ant-typography{margin-top:5px}.settings-heading .ant-typography-secondary{margin-top:4px;color:#7d8799;font-size:13px}.option-row,.option-switch,.option-select{display:flex;justify-content:space-between;align-items:center;gap:16px}.option-row{margin-bottom:4px}.option-row .ant-typography,.option-switch .ant-typography,.option-select .ant-typography{color:#27344c}.option-row .ant-typography-secondary,.option-switch .ant-typography-secondary,.option-select .ant-typography-secondary{color:#7d8799;font-size:12px}.option-switch{padding:15px 0;border-top:1px solid #e7eaf0}.option-select{padding:14px 0;border-top:1px solid #e7eaf0}.option-select .ant-select,.option-select .ant-input-number{flex:0 0 170px;width:170px}.advanced-options{margin:6px -12px 16px}.advanced-options .ant-collapse-header,.advanced-options .ant-collapse-content{color:#46516a!important}.advanced-options .ant-collapse-content{background:transparent}.advanced-options .ant-collapse-content-box{padding-top:0!important}.image-loading{display:grid;min-height:330px;place-items:center}.image-loading .ant-spin-text{color:#46516a}.preview-pane>header button.ant-btn.ant-btn-color-primary{min-width:116px;border-color:#5f50d8!important;background:#6657dc!important;color:#fff!important;font-weight:650;text-shadow:none}.preview-pane>header button.ant-btn.ant-btn-color-primary>span,.preview-pane>header button.ant-btn.ant-btn-color-primary .anticon{color:#fff!important}.preview-pane>header button.ant-btn.ant-btn-color-primary:hover{border-color:#5143c2!important;background:#5143c2!important;color:#fff!important}.compression-saving{position:absolute;bottom:24px;left:50%;z-index:1;margin:0;padding:9px 12px;border-radius:4px;background:#fff7e6;color:#ad6800;font-weight:600;text-align:center;transform:translate(-50%);white-space:nowrap}.compression-saving.is-saving{background:#f6ffed;color:#389e0d}.clipboard-tabs{margin:-12px 0 16px}.clipboard-tabs .ant-tabs-nav{margin-bottom:0}.clipboard-list{display:grid;gap:8px}.clipboard-item .ant-card-body{position:relative;display:block;padding:12px 14px}.clipboard-item .ant-card-body>div{width:100%;min-width:0}.clipboard-actions{position:absolute;top:8px;right:8px;display:flex}.clipboard-item pre{width:100%;max-height:160px;overflow:auto;margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.clipboard-original{display:flex;gap:12px;margin-top:8px;font-size:12px}.port-manual-query{margin:-12px 0 16px}.port-query-result{margin-top:12px}.group-task-list{display:grid;gap:8px}.group-task-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.group-task-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.group-task-card>div:first-child{display:grid;gap:2px}.group-task-card .ant-space{flex-wrap:nowrap}.group-task-card .ant-btn{width:72px}.group-task-selector{display:grid;gap:8px;width:100%}.group-task-selector .ant-card-body{padding:10px 14px}.group-task-projects{display:grid;gap:8px}.settings-page{width:100%;max-width:none}.settings-page>.ant-typography{margin:0}.settings-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-page-header .ant-typography{margin:0}.settings-page-header>.ant-btn{min-width:96px}.settings-card{width:100%;margin-top:20px;border-radius:14px;border:1px solid #e4e8f1;box-shadow:0 2px 12px #1f2a440d}.settings-card h4.ant-typography{margin:0}.settings-icon-wrap{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:10px;background:linear-gradient(135deg,#ece9fc,#ddd6fe)}.settings-icon{color:#6d5ce7;font-size:18px}.settings-title{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #eef0f6}.settings-title .ant-typography{margin:0}.settings-title .ant-typography-secondary{font-size:13px;margin-top:2px}.token-settings-form{display:grid;gap:0}.token-row{display:grid;grid-template-columns:200px 1fr;align-items:center;gap:20px;padding:16px 18px;margin:0 -6px;border-radius:10px;border:1px solid transparent;transition:background .18s,border-color .18s}.token-row:hover{background:#f8f9fc;border-color:#eef0f6}.token-row+.token-row{margin-top:2px}.token-row.is-configured{background:#fafbfe}.token-row-info{display:grid;gap:2px;min-width:0}.token-row-name-line{display:flex;align-items:center;gap:8px}.token-row-name{font-size:14px;white-space:nowrap}.token-row-hint{font-size:12px;line-height:1.4}.token-row-tag.ant-tag{margin:0;font-size:11px;line-height:18px;padding-inline:6px;border-radius:4px}.token-row .ant-form-item{margin:0;min-width:0}.token-row .ant-input,.token-row .ant-input-password{border-radius:8px}.script-header{display:flex;align-items:center;gap:16px}.script-header .ant-divider{flex:1;min-width:0;margin:16px 0}.script-header>.ant-btn{flex-shrink:0}.script-editor{margin-bottom:10px}.script-fields{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.script-fields .ant-form-item{margin-bottom:12px}.log-output{min-height:360px;max-height:58vh;overflow:auto;margin:0;padding:12px 0;border-radius:8px;background:#111827;color:#d1fae5;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.log-line{min-height:19px}.log-line:hover{background:#ffffff0a}.log-line code{padding:0 15px;overflow-wrap:anywhere;color:inherit;white-space:pre-wrap;font:inherit}.log-link{color:#7dd3fc;text-decoration:underline;text-underline-offset:2px}.log-link:hover{color:#bae6fd}.ansi-black{color:#475569}.ansi-red,.log-error{color:#fb7185}.ansi-green,.log-success{color:#86efac}.ansi-yellow,.log-warning{color:#fcd34d}.ansi-blue{color:#93c5fd}.ansi-magenta{color:#f0abfc}.ansi-cyan{color:#67e8f9}.ansi-gray{color:#94a3b8}.ansi-white{color:#f8fafc}@media(max-width:1100px){.squoosh-studio{grid-template-columns:1fr}.squoosh-settings{border-top:1px solid #e1e5ed}.preview-pane{min-height:440px}}@media(max-width:650px){.sidebar{width:64px!important;min-width:64px!important;padding:20px 8px}.brand{padding:0 10px 25px;font-size:0}.brand span{font-size:20px}.sidebar .ant-menu-title-content,.sidebar-footer{display:none}.sidebar-bottom{right:8px;bottom:20px;left:8px}.page{padding:32px 20px}.service-card,.page-header{align-items:flex-start;flex-direction:column}.script-fields{grid-template-columns:1fr}.token-row{grid-template-columns:1fr;gap:10px;padding:14px 12px}.squoosh-page{min-height:calc(100vh - 64px);margin:-12px -20px -32px;padding:18px 20px 28px}.squoosh-header{align-items:flex-start;flex-direction:column}.squoosh-preview-area{grid-template-columns:1fr}.preview-pane{min-height:360px}.preview-pane+.preview-pane{border-top:1px solid #e1e5ed;border-left:0}.preview-canvas{min-height:300px}}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" fill="none" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">DevBuddy</title>
|
|
3
|
+
<desc id="desc">A friendly developer workbench icon with a terminal and sparkle.</desc>
|
|
4
|
+
<defs>
|
|
5
|
+
<linearGradient id="background" x1="28" y1="22" x2="226" y2="236" gradientUnits="userSpaceOnUse">
|
|
6
|
+
<stop stop-color="#8274FF"/>
|
|
7
|
+
<stop offset=".48" stop-color="#6555E8"/>
|
|
8
|
+
<stop offset="1" stop-color="#3E2EAA"/>
|
|
9
|
+
</linearGradient>
|
|
10
|
+
<linearGradient id="screen" x1="55" y1="67" x2="205" y2="191" gradientUnits="userSpaceOnUse">
|
|
11
|
+
<stop stop-color="#252044"/>
|
|
12
|
+
<stop offset="1" stop-color="#151327"/>
|
|
13
|
+
</linearGradient>
|
|
14
|
+
<filter id="shadow" x="25" y="37" width="207" height="190" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
|
15
|
+
<feDropShadow dx="0" dy="12" stdDeviation="9" flood-color="#241D64" flood-opacity=".32"/>
|
|
16
|
+
</filter>
|
|
17
|
+
</defs>
|
|
18
|
+
<rect width="256" height="256" rx="62" fill="url(#background)"/>
|
|
19
|
+
<path d="M48 80C48 64.536 60.536 52 76 52H180C195.464 52 208 64.536 208 80V176C208 191.464 195.464 204 180 204H76C60.536 204 48 191.464 48 176V80Z" fill="url(#screen)" filter="url(#shadow)"/>
|
|
20
|
+
<path d="M48 82C48 65.431 61.431 52 78 52H178C194.569 52 208 65.431 208 82V99H48V82Z" fill="#37305E"/>
|
|
21
|
+
<circle cx="75" cy="75.5" r="7.5" fill="#FF7B89"/>
|
|
22
|
+
<circle cx="99" cy="75.5" r="7.5" fill="#FFD16A"/>
|
|
23
|
+
<circle cx="123" cy="75.5" r="7.5" fill="#7DE5B5"/>
|
|
24
|
+
<path d="M83 128L105 150L83 172" stroke="#AFA7FF" stroke-width="13" stroke-linecap="round" stroke-linejoin="round"/>
|
|
25
|
+
<path d="M126 173H169" stroke="#F6F4FF" stroke-width="13" stroke-linecap="round"/>
|
|
26
|
+
<path d="M186 31L190.4 43.6L203 48L190.4 52.4L186 65L181.6 52.4L169 48L181.6 43.6L186 31Z" fill="#FFF2AD"/>
|
|
27
|
+
<circle cx="205" cy="121" r="7" fill="#9CF3CD"/>
|
|
28
|
+
<circle cx="50" cy="190" r="5" fill="#C9C4FF"/>
|
|
29
|
+
</svg>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<meta name="theme-color" content="#6555e8" />
|
|
7
|
+
<link rel="icon" type="image/svg+xml" href="/devbuddy.svg" />
|
|
8
|
+
<link rel="manifest" href="/manifest.webmanifest" />
|
|
9
|
+
<title>DevBuddy · Workbench</title>
|
|
10
|
+
<script type="module" crossorigin src="/assets/index-CCCOP2nr.js"></script>
|
|
11
|
+
<link rel="stylesheet" crossorigin href="/assets/index-VPzoCQox.css">
|
|
12
|
+
</head>
|
|
13
|
+
<body>
|
|
14
|
+
<div id="app"></div>
|
|
15
|
+
</body>
|
|
16
|
+
</html>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "DevBuddy Workbench",
|
|
3
|
+
"short_name": "DevBuddy",
|
|
4
|
+
"description": "A local workbench for development projects, scripts, ports, and clipboard history.",
|
|
5
|
+
"start_url": "/",
|
|
6
|
+
"display": "standalone",
|
|
7
|
+
"background_color": "#6555e8",
|
|
8
|
+
"theme_color": "#6555e8",
|
|
9
|
+
"icons": [
|
|
10
|
+
{
|
|
11
|
+
"src": "/devbuddy.svg",
|
|
12
|
+
"sizes": "any",
|
|
13
|
+
"type": "image/svg+xml",
|
|
14
|
+
"purpose": "any maskable"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|