@lucideproxy/svg 0.0.1
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/3xhqia.js +10 -0
- package/5ypec/3k2dyx.js +2 -0
- package/5ypec/qzatah.js +41 -0
- package/5ypec/zdmrcu.js +2 -0
- package/7cpa7/m20fhz.js +31 -0
- package/7cpa7/vpa1gg.wasm +0 -0
- package/assets/AccountPage-DgzsV3p_-eac502ad.js +1 -0
- package/assets/AccountPage-fg4fizGa-eac502ad.css +1 -0
- package/assets/AiPage-BYyoMN5L-eac502ad.css +1 -0
- package/assets/AiPage-C7vje5zO-eac502ad.js +1 -0
- package/assets/ChatPage-CgwrQNaj-eac502ad.js +1 -0
- package/assets/ChatPage-Hgs1zZvt-eac502ad.css +1 -0
- package/assets/DarkVeil-B3ov-j6T-eac502ad.js +1 -0
- package/assets/GamesPage-Btpg86D--eac502ad.css +1 -0
- package/assets/GamesPage-Cv8v7l5_-eac502ad.js +1 -0
- package/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/assets/SettingsModal-DLrzJ2lM-eac502ad.css +1 -0
- package/assets/SettingsPage-DKaqVxDa-eac502ad.js +1 -0
- package/assets/boot-DURONIBP-eac502ad.js +1 -0
- package/assets/emoji-BAJ2KL4a-eac502ad.js +3 -0
- package/assets/fingerprint-BEH1UDAC-eac502ad.js +1 -0
- package/assets/fingerprint-Y5nV5FVa-eac502ad.js +4 -0
- package/assets/index-C2iBobdE-eac502ad.css +1 -0
- package/assets/index-_E4fBqHJ-eac502ad.js +1 -0
- package/assets/livekit-DqpdvE-G-eac502ad.js +39 -0
- package/assets/markdown-dIRGbAJA-eac502ad.css +1 -0
- package/assets/markdown-rngvaYIh-eac502ad.js +291 -0
- package/assets/motion-ClYBgd9J-eac502ad.js +9 -0
- package/assets/ogl-BWe_HKY6-eac502ad.js +1 -0
- package/assets/proxy-runtime-1NyFshf9-eac502ad.js +13 -0
- package/assets/react-CKawGOZZ-eac502ad.js +49 -0
- package/branding/lucide.png +0 -0
- package/favicon.svg +8 -0
- package/index.html +26 -0
- package/index.svg +33 -0
- package/logo.svg +33 -0
- package/package.json +17 -0
- package/privacy.html +118 -0
- package/terms.html +97 -0
package/3xhqia.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
importScripts("5ypec/zdmrcu.js");
|
|
2
|
+
|
|
3
|
+
self.addEventListener("install", () => self.skipWaiting());
|
|
4
|
+
self.addEventListener("activate", (event) => event.waitUntil(self.clients.claim()));
|
|
5
|
+
|
|
6
|
+
self.addEventListener("fetch", (event) => {
|
|
7
|
+
if (_5y1iazf.shouldRoute(event)) {
|
|
8
|
+
event.respondWith(_5y1iazf.route(event));
|
|
9
|
+
}
|
|
10
|
+
});
|
package/5ypec/3k2dyx.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var _5y1iazf;(()=>{var e={286(e,t,o){o.d(t,{I:()=>r});let r=Symbol.for("controller frame handle")},805(e,t,o){o.d(t,{C:()=>r});class r{methods;id;sendRaw;counter=0;promiseCallbacks=new Map;constructor(e,t,o){this.methods=e,this.id=t,this.sendRaw=o}recieve(e){if(null==e||"object"!=typeof e)return;let t=e[this.id];if(null==t||"object"!=typeof t)return;let o=t.$type;if("response"===o){let e=t.$token,o=t.$data,r=t.$error,i=this.promiseCallbacks.get(e);if(!i)return;this.promiseCallbacks.delete(e),void 0!==r?i.reject(Error(r)):i.resolve(o)}else if("request"===o){let e=t.$method,o=t.$args;this.methods[e](o).then(e=>{this.sendRaw({[this.id]:{$type:"response",$token:t.$token,$data:e?.[0]}},e?.[1])}).catch(e=>{console.error(e),this.sendRaw({[this.id]:{$type:"response",$token:t.$token,$error:e?.toString()||"Unknown error"}},[])})}}call(e,t,o=[]){let r=this.counter++;return new Promise((i,s)=>{this.promiseCallbacks.set(r,{resolve:i,reject:s}),this.sendRaw({[this.id]:{$type:"request",$method:e,$args:t,$token:r}},o)})}}},423(e,t,o){o.d(t,{Cx:()=>f,bw:()=>l,cP:()=>i,ht:()=>N,pX:()=>a});let{BareResponse:r,CookieJar:i,IncrementalHtmlRewriter:s,Plugin:n,SCRAMJETCLIENT:a,SCRAMJETCLIENTNAME:c,ScramjetClient:l,ScramjetFetchHandler:h,ScramjetFetchTrackedClient:d,ScramjetHeaders:p,Tap:f,createLocationProxy:k,defaultConfig:g,defaultConfigDev:y,flagEnabled:m,getOwnPropertyDescriptorHandler:u,getRewriter:w,getScriptBlockTypeString:b,htmlRules:$,isArchiveMimeType:v,isAudioOrVideoMimeType:C,isFontMimeType:S,isHtmlMimeType:j,isImageMimeType:M,isInlineDisplayableMimeType:x,isJavascriptMimeType:P,isJavascriptMimeTypeEssenceMatch:A,isModuleScriptType:R,isScriptType:W,isScriptableMimeType:E,isXmlMimeType:J,isZipBasedMimeType:I,isdedicated:T,isshared:D,issw:O,iswindow:q,isworker:H,parseMimeType:X,rewriteBlob:U,rewriteCss:B,rewriteHtml:L,rewriteJs:_,rewriteJsInner:F,rewriteSrcset:G,rewriteUrl:z,rewriteWorkers:K,setWasm:N,unrewriteBlob:Q,unrewriteCss:V,unrewriteHtml:Y,unrewriteUrl:Z,versionInfo:ee}=globalThis._ff87g8f}},t={};function o(r){var i=t[r];if(void 0!==i)return i.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,o),s.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{o.r(r),o.d(r,{load:()=>l});var e=o(805),t=o(286),i=o(423);let s=MessagePort.prototype.postMessage,n=(e,t,o)=>{s.call(e,t,o)};class a{port;readyResolve;readyPromise=new Promise(e=>{this.readyResolve=e});ready=!1;async init(){await this.readyPromise,this.ready=!0}rpc;constructor(t){this.port=t,this.rpc=new e.C({ready:async()=>{this.readyResolve()}},"transport",(e,o)=>{n(t,e,o)}),t.onmessageerror=e=>{console.error("onmessageerror (this should never happen!)",e)},t.onmessage=e=>{this.rpc.recieve(e.data)},t.start()}connect(e,t,o,r,i,s,a){let c=new MessageChannel,l=c.port1;return console.warn("connecting"),this.rpc.call("connect",{url:e.href,protocols:t,requestHeaders:o,port:c.port2},[c.port2]).then(e=>{console.log(e),"success"===e.result?r(e.protocol,e.extensions):a(e.error)}),l.onmessage=e=>{let t=e.data;"data"===t.type?i(t.data):"close"===t.type&&s(t.code,t.reason)},l.onmessageerror=e=>{console.error("onmessageerror (this should never happen!)",e),a("Message error in transport port")},[e=>{n(l,{type:"data",data:e},e instanceof ArrayBuffer?[e]:[])},e=>{n(l,{type:"close",code:e})}]}async request(e,t,o,r,i){return await this.rpc.call("request",{remote:e.href,method:t,body:o,headers:r})}async sendSetCookie(e,t={}){await this.rpc.call("sendSetCookie",{cookies:e.map(({url:e,cookie:t})=>({url:e.href,cookie:t})),options:t})}}let c=navigator.serviceWorker.controller;function l(e){if(i.pX in globalThis)return void globalThis[i.pX].syncDocumentInit({initHeaders:e.initHeaders,history:e.history,cookies:e.cookies});if(!("WASM"in self))throw Error("WASM not found in global scope!");let t=Uint8Array.from(atob(self.WASM),e=>e.charCodeAt(0));delete self.WASM,(0,i.ht)(t),new h(globalThis,e)}class h{global;init;client;cookieJar;transport;handleServiceWorkerCookieMessage;constructor(e,t){this.global=e,this.init=t;const o=new MessageChannel;this.transport=new a(o.port1),c?.postMessage({$sw$initRemoteTransport:{port:o.port2,prefix:this.init.prefix.href}},[o.port2]),this.cookieJar=new i.cP,this.cookieJar.load(this.init.cookies),this.handleServiceWorkerCookieMessage=e=>{if(!e.data?.$controller$setCookie||"object"!=typeof e.data.$controller$setCookie)return;let t=e.data.$controller$setCookie;if(t.options?.clear&&this.cookieJar.clear(),Array.isArray(t.cookies)){for(let e of t.cookies)if("string"==typeof e?.url&&"string"==typeof e.cookie)try{this.cookieJar.setCookies(e.cookie,new URL(e.url))}catch{console.error("Failed to set cookie",e)}}if("string"==typeof t.id){let e=navigator.serviceWorker?.controller??c;e?.postMessage({$sw$setCookieDone:{id:t.id}})}},navigator.serviceWorker?.addEventListener("message",this.handleServiceWorkerCookieMessage),this.injectScramjet()}injectScramjet(){let e=this.global.frameElement;e&&!e.name&&(window.name=e.name=`${Array(8).fill(0).map(()=>Math.floor(36*Math.random()).toString(36)).join("")}`);let o=e?.[t.I],r=!0;if(!o){r=!1;let e=this.global.window;for(;e.parent!==e;){let r=e[i.pX];if(!r){e=e.parent.window;continue}let s=r.descriptors.get("window.frameElement",e);if(s&&s[t.I]){o=s[t.I];break}e=e.parent.window}}let s={config:this.init.sjconfig,prefix:this.init.prefix,cookieJar:this.cookieJar,interface:{getInjectScripts:this.init.yieldGetInjectScripts(this.init.config,this.init.sjconfig,this.init.prefix,this.cookieJar,this.init.codecEncode,this.init.codecDecode),codecEncode:this.init.codecEncode,codecDecode:this.init.codecDecode}};this.client=new i.bw(this.global,{context:s,transport:this.transport,sendSetCookie:async(e,t)=>{await this.transport.sendSetCookie(e,t)},shouldBlockMessageEvent:()=>!1,hookSubcontext:e=>new h(e,{...this.init,cookies:this.cookieJar.dump()}).client,initHeaders:this.init.initHeaders,history:this.init.history});let n={window:this.global.window,client:this.client,isTopLevel:r};o&&i.Cx.dispatch(o.hooks.init.pre,n,{}),this.client.hook(),o&&i.Cx.dispatch(o.hooks.init.post,n,{})}}})(),_5y1iazf=r})();
|
|
2
|
+
//# sourceMappingURL=controller.inject.js.map
|
package/5ypec/qzatah.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
var _5y1iazf;(()=>{var e={286(e,t,r){r.d(t,{I:()=>o});let o=Symbol.for("controller frame handle")},355(e,t,r){r.d(t,{O:()=>s,x:()=>o});let o="0.0.14";function s(){if("undefined"==typeof _ff87g8f)throw Error("@mercuryworkshop/scramjet is not loaded. Load scramjet before the controller.");var e="2.0.67-alpha.2",t=_ff87g8f.versionInfo.version;if(e!==t)throw Error(`@mercuryworkshop/scramjet version mismatch: this build expects ${e}, but the loaded runtime is ${t}`)}},805(e,t,r){r.d(t,{C:()=>o});class o{methods;id;sendRaw;counter=0;promiseCallbacks=new Map;constructor(e,t,r){this.methods=e,this.id=t,this.sendRaw=r}recieve(e){if(null==e||"object"!=typeof e)return;let t=e[this.id];if(null==t||"object"!=typeof t)return;let r=t.$type;if("response"===r){let e=t.$token,r=t.$data,o=t.$error,s=this.promiseCallbacks.get(e);if(!s)return;this.promiseCallbacks.delete(e),void 0!==o?s.reject(Error(o)):s.resolve(r)}else if("request"===r){let e=t.$method,r=t.$args;this.methods[e](r).then(e=>{this.sendRaw({[this.id]:{$type:"response",$token:t.$token,$data:e?.[0]}},e?.[1])}).catch(e=>{console.error(e),this.sendRaw({[this.id]:{$type:"response",$token:t.$token,$error:e?.toString()||"Unknown error"}},[])})}}call(e,t,r=[]){let o=this.counter++;return new Promise((s,i)=>{this.promiseCallbacks.set(o,{resolve:s,reject:i}),this.sendRaw({[this.id]:{$type:"request",$method:e,$args:t,$token:o}},r)})}}},986(e){let t=Object.getPrototypeOf({});function r(){return function(e){return"object"==typeof e&&null!==e&&!(e instanceof RegExp)&&!(e instanceof Date)}}function o(e){function o(e){return"constructor"!==e&&"prototype"!==e&&"__proto__"!==e}let s=Object.prototype.propertyIsEnumerable,i=e?.symbols?function(e){let t=Object.keys(e),r=Object.getOwnPropertySymbols(e);for(let o=0,i=r.length;o<i;++o)s.call(e,r[o])&&t.push(r[o]);return t}:Object.keys,n="function"==typeof e?.cloneProtoObject?e.cloneProtoObject:void 0,a="function"==typeof e?.isMergeableObject?e.isMergeableObject:r(),c=e?.onlyDefinedProperties===!0,l=e&&"function"==typeof e.mergeArray?e.mergeArray({clone:d,deepmerge:h,getKeys:i,isMergeableObject:a}):function(e,t){let r=e.length,o=t.length,s=0,i=Array(r+o);for(;s<r;++s)i[s]=d(e[s]);for(s=0;s<o;++s)i[s+r]=d(t[s]);return i};function d(e){return a(e)?Array.isArray(e)?function(e){let t=0,r=e.length,o=Array(r);for(;t<r;++t)o[t]=d(e[t]);return o}(e):function(e){let r,s,a,c={};if(n&&Object.getPrototypeOf(e)!==t)return n(e);let l=i(e);for(r=0,s=l.length;r<s;++r)o(a=l[r])&&(c[a]=d(e[a]));return c}(e):e}function h(e,r){if(c&&void 0===r)return d(e);let s=Array.isArray(r),f=Array.isArray(e);return"object"!=typeof r||null===r?r:a(e)?s&&f?l(e,r):s!==f?d(r):function(e,r){let s,l,f,p={},u=i(e),y=i(r);for(s=0,l=u.length;s<l;++s)o(f=u[s])&&-1===y.indexOf(f)&&(p[f]=d(e[f]));for(s=0,l=y.length;s<l;++s)if(o(f=y[s]))if(f in e)-1!==u.indexOf(f)&&(n&&a(r[f])&&Object.getPrototypeOf(r[f])!==t?p[f]=n(r[f]):p[f]=h(e[f],r[f]));else{if(c&&void 0===r[f])continue;p[f]=d(r[f])}return p}(e,r):d(r)}return e?.all?function(){let e;switch(arguments.length){case 0:return{};case 1:return d(arguments[0]);case 2:return h(arguments[0],arguments[1])}for(let t=0,r=arguments.length;t<r;++t)e=h(e,arguments[t]);return e}:h}e.exports=o,e.exports.default=o,e.exports.deepmerge=o,Object.defineProperty(e.exports,"isMergeableObject",{get:r})},235(e,t,r){r.d(t,{Sr:()=>s}),WebSocket.CLOSED,WebSocket.CONNECTING,WebSocket.OPEN,EventTarget;let o=[101,204,205,304];class s extends Response{url;rawHeaders;redirected=!1;static fromTransferrableResponse(e,t){let r=new s(o.includes(e.status)?void 0:e.body,{headers:new Headers(e.headers),status:e.status,statusText:e.statusText});return r.url=t,r.redirected=e.status>=300&&e.status<400&&void 0!==e.headers.location,r.rawHeaders=e.headers,r}static fromNativeResponse(e){let t=new s(o.includes(e.status)?void 0:e.body,{headers:e.headers,status:e.status,statusText:e.statusText});return t.url=e.url,t.rawHeaders=[...e.headers],t.redirected=e.redirected,t}}},423(e,t,r){r.d(t,{Cx:()=>p,Oy:()=>G,cP:()=>s,ht:()=>z,k_:()=>n,mK:()=>d,sb:()=>y,uh:()=>f});let{BareResponse:o,CookieJar:s,IncrementalHtmlRewriter:i,Plugin:n,SCRAMJETCLIENT:a,SCRAMJETCLIENTNAME:c,ScramjetClient:l,ScramjetFetchHandler:d,ScramjetFetchTrackedClient:h,ScramjetHeaders:f,Tap:p,createLocationProxy:u,defaultConfig:y,defaultConfigDev:m,flagEnabled:g,getOwnPropertyDescriptorHandler:w,getRewriter:k,getScriptBlockTypeString:b,htmlRules:j,isArchiveMimeType:S,isAudioOrVideoMimeType:v,isFontMimeType:C,isHtmlMimeType:x,isImageMimeType:$,isInlineDisplayableMimeType:P,isJavascriptMimeType:O,isJavascriptMimeTypeEssenceMatch:R,isModuleScriptType:A,isScriptType:E,isScriptableMimeType:U,isXmlMimeType:M,isZipBasedMimeType:W,isdedicated:T,isshared:D,issw:I,iswindow:L,isworker:N,parseMimeType:_,rewriteBlob:J,rewriteCss:H,rewriteHtml:q,rewriteJs:F,rewriteJsInner:B,rewriteSrcset:K,rewriteUrl:G,rewriteWorkers:V,setWasm:z,unrewriteBlob:Q,unrewriteCss:X,unrewriteHtml:Y,unrewriteUrl:Z,versionInfo:ee}=globalThis._ff87g8f}},t={};function r(o){var s=t[o];if(void 0!==s)return s.exports;var i=t[o]={exports:{}};return e[o](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{r.r(o),r.d(o,{Controller:()=>S,Frame:()=>v,ManagedPlugin:()=>d,VERSION:()=>a.x,assertRuntimeScramjetVersion:()=>a.O,config:()=>c});var e=r(805),t=r(235),s=r(986),i=r(423),n=r(286),a=r(355);let c={prefix:"/~/sj/",scramjetPath:"/scramjet/scramjet.js",injectPath:"/controller/controller.inject.js",wasmPath:"/scramjet/scramjet.wasm",virtualWasmPath:"scramjet.wasm.js",codec:{encode:e=>e?encodeURIComponent(e):e,decode:e=>e?decodeURIComponent(e):e}},l={flags:{...i.sb.flags,allowFailedIntercepts:!0},maskedfiles:["inject.js","scramjet.wasm.js"]};class d extends i.k_{frame=null;dependencies=[];constructor(e,t){super(e),this.dependencies=t}install(e){this.frame=e}}let h="state",f="cookies",p=null;function u(e){return"object"==typeof e&&null!==e&&"number"==typeof e.updatedAt&&Number.isFinite(e.updatedAt)&&"string"==typeof e.cookies?e:null}function y(e){return new Promise((t,r)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>r(e.error??Error("IndexedDB request failed"))})}function m(e){return new Promise((t,r)=>{e.oncomplete=()=>t(),e.onabort=()=>r(e.error??Error("IndexedDB transaction aborted")),e.onerror=()=>r(e.error??Error("IndexedDB transaction failed"))})}function g(){return p||(p=new Promise((e,t)=>{let r=indexedDB.open("__scramjet_controller",1);r.onupgradeneeded=()=>{let e=r.result;e.objectStoreNames.contains(h)||e.createObjectStore(h)},r.onsuccess=()=>e(r.result),r.onerror=()=>t(r.error??Error("Failed to open cookie database"))}))}async function w(){try{let e=(await g()).transaction(h,"readonly"),t=e.objectStore(h),r=await y(t.get(f));return await m(e),u(r)}catch(e){return console.error("Failed to read persisted controller cookies:",e),null}}async function k(e,t){try{let r=(await g()).transaction(h,"readwrite"),o=r.objectStore(h),s=u(await y(o.get(f))),i=Math.max(Date.now(),t+1,(s?.updatedAt??0)+1);return o.put({updatedAt:i,cookies:e},f),await m(r),i}catch(e){return console.error("Failed to persist controller cookies:",e),t}}function b(){return Math.random().toString(36).substring(2,10)}let j=(0,s.deepmerge)();class S{init;id;config;scramjetConfig;prefix;cookieJar=new i.cP;frames=[];serviceWorkerController;guardServiceWorkerRevive=!0;ready;readyResolve;isReady=!1;rpc;port=null;transport;cookieUpdatedAt=0;cookieSyncPromise=null;cookieSyncDirty=!0;cookieSyncChannel=new BroadcastChannel("__scramjet_controller_channel");wasmAlreadyFetched=!1;wasmPayload=null;onTabChannelMessage=e=>{this.rpc.recieve(e.data)};onCookieSyncMessage=e=>{let t="object"==typeof e.data&&null!==e.data?e.data.updatedAt:void 0;"number"!=typeof t||t<=this.cookieUpdatedAt||(this.cookieSyncDirty=!0,this.loadSavedCookies())};async loadScramjetWasm(){if(this.wasmAlreadyFetched)return;let e=await fetch(this.config.wasmPath);(0,i.ht)(await e.arrayBuffer()),this.wasmAlreadyFetched=!0}methods={ready:async()=>{this.readyResolve(),setTimeout(()=>{this.guardServiceWorkerRevive=!1},5e3)},request:async e=>{let t=new URL(e.rawUrl).pathname,r=this.frames.find(e=>t.startsWith(e.prefix));if(!r)throw Error("No frame found for request");try{if(await this.loadSavedCookies(),t===r.prefix+this.config.virtualWasmPath){if(!this.wasmPayload){let e=await fetch(this.config.wasmPath),t=await e.arrayBuffer(),r=btoa(new Uint8Array(t).reduce((e,t)=>(e.push(String.fromCharCode(t)),e),[]).join(""));this.wasmPayload=`self.WASM = '${r}';`}return[{body:this.wasmPayload,status:200,statusText:"OK",headers:[["Content-Type","application/javascript"]]},[]]}let o=i.uh.fromRawHeaders(e.initialHeaders),s=await r.fetchHandler.handleFetch({initialHeaders:o,rawClientUrl:e.rawClientUrl?new URL(e.rawClientUrl):void 0,rawUrl:new URL(e.rawUrl),rawReferrer:e.rawReferrer,rawDestination:e.destination,method:e.method,mode:e.mode,referrer:e.referrer,body:e.body,cache:e.cache,clientId:e.clientId});return[{body:s.body,status:s.status,statusText:s.statusText,headers:s.headers.toRawHeaders()},s.body instanceof ReadableStream||s.body instanceof ArrayBuffer?[s.body]:[]]}catch(o){let t={setResponse:void 0,suppressError:!1};if(await i.Cx.dispatch(r.hooks.error.request,{rawrequest:e,error:o},t),t.suppressError||console.error("Error in controller request handler:",o),t.setResponse)return[t.setResponse,[]];throw o}},initRemoteTransport:async t=>{let r=new e.C({request:async({remote:e,method:t,body:r,headers:o})=>{let s=await this.transport.request(new URL(e),t,r,o,void 0);return[s,[s.body]]},sendSetCookie:async({cookies:e,options:t})=>{await this.loadSavedCookies(!0),t?.clear&&this.cookieJar.clear(),this.applyCookieSyncEntries(e),await this.persistCookies(),await this.propagateCookieSync(e,t)},connect:async({url:e,protocols:t,requestHeaders:r,port:o})=>{let s,i=new Promise(e=>s=e),[n,a]=this.transport.connect(new URL(e),t,r,(e,t)=>{s({result:"success",protocol:e,extensions:t})},e=>{o.postMessage({type:"data",data:e},e instanceof ArrayBuffer?[e]:[])},(e,t)=>{o.postMessage({type:"close",code:e,reason:t})},e=>{s({result:"failure",error:e})});return o.onmessageerror=e=>{console.error("Transport port messageerror (this should never happen!)",e)},o.onmessage=({data:e})=>{"data"===e.type?n(e.data):"close"===e.type&&a(e.code,e.reason)},[await i,[]]}},"transport",(e,r)=>t.postMessage(e,r));t.onmessageerror=e=>{console.error("Transport port messageerror (this should never happen!)",e)},t.onmessage=e=>{r.recieve(e.data)},r.call("ready",void 0,[])}};constructor(t){this.init=t,(0,a.O)(),this.id=b(),this.config=j(c,t.config||{}),this.scramjetConfig=j(l,i.sb),this.scramjetConfig=j(this.scramjetConfig,t.scramjetConfig||{}),this.prefix=this.config.prefix+this.id+"/",this.serviceWorkerController=t.serviceworker,this.ready=Promise.all([new Promise(e=>{this.readyResolve=e}),this.loadScramjetWasm(),this.loadSavedCookies(!0)]).then(()=>void 0),this.rpc=new e.C(this.methods,"tabchannel-"+this.id,(e,t)=>{if(!this.port)throw Error("Port not found");this.port.postMessage(e,t)}),this.transport=t.transport,this.cookieSyncChannel.addEventListener("message",this.onCookieSyncMessage),this.setupMessagePort(),navigator.serviceWorker.addEventListener("message",e=>{if(e.data?.$controller$setCookie&&"object"==typeof e.data.$controller$setCookie){let t=e.data.$controller$setCookie;t.options?.clear&&this.cookieJar.clear(),this.applyCookieSyncEntries(t.cookies),"string"==typeof t.id&&this.serviceWorkerController.postMessage({$sw$setCookieDone:{id:t.id}});return}if(e.data.$controller$swrevive){if(this.guardServiceWorkerRevive)return;this.setupMessagePort()}})}setupMessagePort(){if(this.port){this.port.removeEventListener("message",this.onTabChannelMessage);try{this.port.close()}catch{}this.port=null}let e=new MessageChannel;this.port=e.port1,this.port.addEventListener("message",this.onTabChannelMessage),this.port.start(),this.serviceWorkerController.postMessage({$controller$init:{prefix:this.prefix,id:this.id}},[e.port2])}applyCookieSyncEntries(e){if(Array.isArray(e))for(let t of e)"string"==typeof t?.url&&"string"==typeof t.cookie&&this.cookieJar.setCookies(t.cookie,new URL(t.url))}async propagateCookieSync(e,t={}){this.port&&await this.rpc.call("sendSetCookie",{cookies:e,options:t})}async loadSavedCookies(e=!1){if(e||this.cookieSyncDirty)return this.cookieSyncPromise||(this.cookieSyncPromise=(async()=>{let e=await w();e&&e.updatedAt>this.cookieUpdatedAt&&(this.cookieJar.load(e.cookies),this.cookieUpdatedAt=e.updatedAt),this.cookieSyncDirty=!1})().finally(()=>{this.cookieSyncPromise=null})),this.cookieSyncPromise}async persistCookies(){let e=await k(this.cookieJar.dump(),this.cookieUpdatedAt);e<=this.cookieUpdatedAt||(this.cookieUpdatedAt=e,this.cookieSyncDirty=!1,this.cookieSyncChannel.postMessage({updatedAt:e}))}setTransport(e){for(let t of(this.transport=e,this.frames))t.controller.transport=e,t.fetchHandler.client.transport=e}createFrame(e,t={}){if(!this.ready)throw Error("Controller is not ready! Try awaiting controller.wait()");let r=new v(this,e??=document.createElement("iframe"),t);return this.frames.push(r),r}async wait(){await this.ready}}class v{controller;element;options;id;prefix;fetchHandler;hooks;get context(){return{config:this.controller.scramjetConfig,prefix:new URL(this.prefix,location.href),cookieJar:this.controller.cookieJar,interface:{getInjectScripts:function e(t,r,o,s,i,n){return(a,c,l,d)=>{var h;return[d(t.scramjetPath),d(o.href+t.virtualWasmPath),d(t.injectPath),d("data:text/javascript;charset=utf-8;base64,"+(h=`
|
|
2
|
+
document.querySelectorAll("script[scramjet-injected]").forEach(script => script.remove());
|
|
3
|
+
_5y1iazf.load({
|
|
4
|
+
config: ${JSON.stringify(t)},
|
|
5
|
+
sjconfig: ${JSON.stringify(r)},
|
|
6
|
+
prefix: new URL("${o.href}"),
|
|
7
|
+
cookies: ${JSON.stringify(s.dump())},
|
|
8
|
+
yieldGetInjectScripts: ${e.toString()},
|
|
9
|
+
codecEncode: ${i.toString()},
|
|
10
|
+
codecDecode: ${n.toString()},
|
|
11
|
+
initHeaders: ${JSON.stringify(l.headers??[])},
|
|
12
|
+
history: ${JSON.stringify(l.history??[])},
|
|
13
|
+
})
|
|
14
|
+
`,btoa(new TextEncoder().encode(h).reduce((e,t)=>(e.push(String.fromCharCode(t)),e),[]).join(""))))]}}(this.controller.config,this.controller.scramjetConfig,new URL(this.prefix,location.href),this.controller.cookieJar,this.controller.config.codec.encode,this.controller.config.codec.decode),getWorkerInjectScripts:(e,t,r)=>{var o;let s="";return s+=r(this.controller.config.scramjetPath),s+=r(this.prefix+this.controller.config.virtualWasmPath),s+=r("data:text/javascript;charset=utf-8;base64,"+(o=`
|
|
15
|
+
(()=>{
|
|
16
|
+
const { ScramjetClient, CookieJar, setWasm } = _ff87g8f;
|
|
17
|
+
|
|
18
|
+
setWasm(Uint8Array.from(atob(self.WASM), (c) => c.charCodeAt(0)));
|
|
19
|
+
delete self.WASM;
|
|
20
|
+
|
|
21
|
+
const sjconfig = ${JSON.stringify(this.controller.scramjetConfig)};
|
|
22
|
+
const prefix = new URL("${this.prefix}", location.href);
|
|
23
|
+
|
|
24
|
+
const context = {
|
|
25
|
+
config: sjconfig,
|
|
26
|
+
prefix,
|
|
27
|
+
interface: {
|
|
28
|
+
codecEncode: ${this.controller.config.codec.encode.toString()},
|
|
29
|
+
codecDecode: ${this.controller.config.codec.decode.toString()},
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const client = new ScramjetClient(globalThis, {
|
|
34
|
+
context,
|
|
35
|
+
transport: null,
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
client.hook();
|
|
39
|
+
})();
|
|
40
|
+
`,btoa(new TextEncoder().encode(o).reduce((e,t)=>(e.push(String.fromCharCode(t)),e),[]).join(""))))},codecEncode:this.controller.config.codec.encode,codecDecode:this.controller.config.codec.decode}}}plugins=[];constructor(e,r,o={}){for(const s of(this.controller=e,this.element=r,this.options=o,this.id=b(),this.prefix=this.controller.prefix+this.id+"/",this.fetchHandler=new i.mK({crossOriginIsolated:self.crossOriginIsolated,context:this.context,transport:e.transport,async sendSetCookie(t,r){await e.persistCookies(),await e.propagateCookieSync(t.map(({url:e,cookie:t})=>({url:e.href,cookie:t})),r)},fetchBlobUrl:async e=>t.Sr.fromNativeResponse(await fetch(e)),fetchDataUrl:async e=>t.Sr.fromNativeResponse(await fetch(e))}),this.hooks={fetch:this.fetchHandler.hooks.fetch,init:i.Cx.create(),error:i.Cx.create()},r[n.I]=this,this.plugins=o.plugins??[],this.plugins)){for(const e of s.dependencies)if(!this.plugins.find(t=>t.name===e))throw Error(`Dependency ${e} not found for plugin ${s.name}`);s.install(this)}}getPlugin(e){let t=this.plugins.find(t=>t.name===e);if(!t)throw Error(`Plugin ${e} not found`);return t}back(){this.element.contentWindow?.history.back()}forward(){this.element.contentWindow?.history.forward()}reload(){this.element.contentWindow?.location.reload()}go(e){let t=(0,i.Oy)(e,this.context,{origin:new URL(location.href),base:new URL(location.href)});this.element.src=t}}})(),_5y1iazf=o})();
|
|
41
|
+
//# sourceMappingURL=controller.api.js.map
|
package/5ypec/zdmrcu.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var _5y1iazf;(()=>{var e={805(e,t,r){r.d(t,{C:()=>o});class o{methods;id;sendRaw;counter=0;promiseCallbacks=new Map;constructor(e,t,r){this.methods=e,this.id=t,this.sendRaw=r}recieve(e){if(null==e||"object"!=typeof e)return;let t=e[this.id];if(null==t||"object"!=typeof t)return;let r=t.$type;if("response"===r){let e=t.$token,r=t.$data,o=t.$error,s=this.promiseCallbacks.get(e);if(!s)return;this.promiseCallbacks.delete(e),void 0!==o?s.reject(Error(o)):s.resolve(r)}else if("request"===r){let e=t.$method,r=t.$args;this.methods[e](r).then(e=>{this.sendRaw({[this.id]:{$type:"response",$token:t.$token,$data:e?.[0]}},e?.[1])}).catch(e=>{console.error(e),this.sendRaw({[this.id]:{$type:"response",$token:t.$token,$error:e?.toString()||"Unknown error"}},[])})}}call(e,t,r=[]){let o=this.counter++;return new Promise((s,i)=>{this.promiseCallbacks.set(o,{resolve:s,reject:i}),this.sendRaw({[this.id]:{$type:"request",$method:e,$args:t,$token:o}},r)})}}}},t={};function r(o){var s=t[o];if(void 0!==s)return s.exports;var i=t[o]={exports:{}};return e[o](i,i.exports,r),i.exports}r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{r.r(o),r.d(o,{route:()=>a,shouldRoute:()=>n});var e=r(805);let t={};addEventListener("message",e=>{if(e.data&&"object"==typeof e.data){if(e.data.$sw$setCookieDone&&"object"==typeof e.data.$sw$setCookieDone){let r=e.data.$sw$setCookieDone,o=t[r.id];o&&(o(),delete t[r.id])}if(e.data.$sw$initRemoteTransport&&"object"==typeof e.data.$sw$initRemoteTransport){let{port:t,prefix:r}=e.data.$sw$initRemoteTransport,o=i.find(e=>new URL(r).pathname.startsWith(e.prefix));if(!o)return void console.error("No relevant controller found for transport init");o.rpc.call("initRemoteTransport",t,[t])}}});class s{prefix;id;rpc;constructor(r,o,s){this.prefix=r,this.id=o,this.rpc=new e.C({sendSetCookie:async({cookies:e,options:r})=>{let o=await self.clients.matchAll(),s=[],i=[],n=r?.destination==="document"||r?.destination==="iframe";for(let a of o){let o=Math.random().toString(36).substring(2,10);s.push(o),a.postMessage({$controller$setCookie:{cookies:e,options:r,id:o}}),n||i.push(new Promise(e=>{t[o]=()=>e(o)}))}if(i.length>0){let r,n=!1,a=new Promise(i=>{r=setTimeout(()=>{if(!n){let r=s.filter(e=>void 0!==t[e]);console.error(`timed out waiting for set cookie response (deadlock?): cookies=${e.length} clients=${o.length} pending=${r.length}/${s.length} clientUrls=${o.map(e=>e.url).join(",")}`)}i()},1e3)});try{await Promise.race([a,Promise.any(i).then(()=>{n=!0}).catch(()=>{})])}finally{for(let e of(void 0!==r&&clearTimeout(r),s))delete t[e]}}}},"tabchannel-"+o,(e,t)=>{s.postMessage(e,t)}),s.onmessage=e=>{this.rpc.recieve(e.data)},s.onmessageerror=console.error,this.rpc.call("ready",void 0)}}let i=[];function n(e){let t=new URL(e.request.url);return void 0!==i.find(e=>t.pathname.startsWith(e.prefix))}async function a(e){try{let t=new URL(e.request.url),r=i.find(e=>t.pathname.startsWith(e.prefix)),o=await clients.get(e.clientId),s=[...e.request.headers],n=await r.rpc.call("request",{rawUrl:e.request.url,rawReferrer:e.request.referrer,destination:e.request.destination,mode:e.request.mode,referrer:e.request.referrer,method:e.request.method,body:e.request.body,cache:e.request.cache,forceCrossOriginIsolated:!1,initialHeaders:s,rawClientUrl:o?o.url:void 0,clientId:e.clientId||e.resultingClientId},e.request.body instanceof ReadableStream||e.request.body instanceof ArrayBuffer?[e.request.body]:void 0);return new Response(n.body,{status:n.status,statusText:n.statusText,headers:n.headers})}catch(e){return console.error("Service Worker error:",e),new Response("Internal Service Worker Error: "+e.message,{status:500})}}addEventListener("message",e=>{if(!e.data||"object"!=typeof e.data||!e.data.$controller$init||"object"!=typeof e.data.$controller$init)return;let t=e.data.$controller$init,r=i.findIndex(e=>e.id===t.id);-1!==r&&i.splice(r,1),i.push(new s(t.prefix,t.id,e.ports[0]))}),addEventListener("install",()=>{self.skipWaiting()}),addEventListener("activate",e=>{e.waitUntil(clients.claim())}),setTimeout(async()=>{for(let e of(console.log("service worker activated, notifying clients to revive"),await clients.matchAll()))e.postMessage({$controller$swrevive:{}})},100)})(),_5y1iazf=o})();
|
|
2
|
+
//# sourceMappingURL=controller.sw.js.map
|