gemi 0.115.0 → 0.116.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/dist/ai/index.js +1 -1
- package/dist/{chunk-t24p7gc6.js → chunk-1q9kd20m.js} +1 -1
- package/dist/{chunk-0z8ejxre.js → chunk-4088szy9.js} +1 -1
- package/dist/chunk-49nyyjfe.js +5 -0
- package/dist/{chunk-9b4erdy2.js.map → chunk-49nyyjfe.js.map} +3 -3
- package/dist/{chunk-0av6xvm6.js → chunk-6cx8ncd4.js} +1 -1
- package/dist/{chunk-jafm3613.js → chunk-6d8rvr1v.js} +2 -2
- package/dist/{chunk-jafm3613.js.map → chunk-6d8rvr1v.js.map} +1 -1
- package/dist/{chunk-wzrt5mac.js → chunk-79xg42e7.js} +1 -1
- package/dist/chunk-jmg2zsaf.js +5 -0
- package/dist/{chunk-7g9yh5ae.js.map → chunk-jmg2zsaf.js.map} +4 -4
- package/dist/chunk-ms9k0rx6.js +46 -0
- package/dist/{chunk-d6591xck.js.map → chunk-ms9k0rx6.js.map} +5 -5
- package/dist/{chunk-mps6ynbh.js → chunk-p91b8zcn.js} +1 -1
- package/dist/{chunk-dexdkh3z.js → chunk-pn8v6fj2.js} +1 -1
- package/dist/{chunk-mtbygktb.js → chunk-v1tfdgy1.js} +1 -1
- package/dist/{chunk-t4t3hqe0.js → chunk-yf1njzd5.js} +1 -1
- package/dist/chunks/{ThemeProvider-BgLyzzOL.js → ThemeProvider-BLI4zpLu.js} +8 -3
- package/dist/chunks/ThemeProvider-BLI4zpLu.js.map +1 -0
- package/dist/client/ClientRouter.d.ts +3 -5
- package/dist/client/ClientRouter.d.ts.map +1 -1
- package/dist/client/ClientRouterContext.d.ts.map +1 -1
- package/dist/client/Head.d.ts +1 -1
- package/dist/client/Head.d.ts.map +1 -1
- package/dist/client/ServerDataProvider.d.ts +2 -0
- package/dist/client/ServerDataProvider.d.ts.map +1 -1
- package/dist/client/createRoot.d.ts +2 -4
- package/dist/client/createRoot.d.ts.map +1 -1
- package/dist/client/htmlAttributes.d.ts +18 -0
- package/dist/client/htmlAttributes.d.ts.map +1 -0
- package/dist/client/index.d.ts +1 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +79 -6
- package/dist/client/index.js.map +1 -1
- package/dist/email/index.js +1 -1
- package/dist/facades/Meta.d.ts +11 -1
- package/dist/facades/Meta.d.ts.map +1 -1
- package/dist/facades/index.js +1 -1
- package/dist/http/HttpRequest.d.ts +3 -0
- package/dist/http/HttpRequest.d.ts.map +1 -1
- package/dist/http/Metadata.d.ts +23 -0
- package/dist/http/Metadata.d.ts.map +1 -1
- package/dist/http/index.js +1 -1
- package/dist/http/requestContext.d.ts +3 -0
- package/dist/http/requestContext.d.ts.map +1 -1
- package/dist/i18n/index.d.ts +1 -0
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +2 -2
- package/dist/i18n/index.js.map +2 -2
- package/dist/kernel/index.js +1 -1
- package/dist/orm/index.js +1 -1
- package/dist/server/index.js +1 -1
- package/dist/services/index.d.ts +1 -1
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -1
- package/dist/services/router/ViewRouteDispatcher.d.ts +3 -1
- package/dist/services/router/ViewRouteDispatcher.d.ts.map +1 -1
- package/dist/services/router/config.d.ts +19 -0
- package/dist/services/router/config.d.ts.map +1 -1
- package/dist/testing/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-7g9yh5ae.js +0 -5
- package/dist/chunk-9b4erdy2.js +0 -5
- package/dist/chunk-d6591xck.js +0 -46
- package/dist/chunks/ThemeProvider-BgLyzzOL.js.map +0 -1
- /package/dist/{chunk-t24p7gc6.js.map → chunk-1q9kd20m.js.map} +0 -0
- /package/dist/{chunk-0z8ejxre.js.map → chunk-4088szy9.js.map} +0 -0
- /package/dist/{chunk-0av6xvm6.js.map → chunk-6cx8ncd4.js.map} +0 -0
- /package/dist/{chunk-wzrt5mac.js.map → chunk-79xg42e7.js.map} +0 -0
- /package/dist/{chunk-mps6ynbh.js.map → chunk-p91b8zcn.js.map} +0 -0
- /package/dist/{chunk-dexdkh3z.js.map → chunk-pn8v6fj2.js.map} +0 -0
- /package/dist/{chunk-mtbygktb.js.map → chunk-v1tfdgy1.js.map} +0 -0
- /package/dist/{chunk-t4t3hqe0.js.map → chunk-yf1njzd5.js.map} +0 -0
package/dist/services/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{gb as Z8}from"../chunk-z10cas5r.js";import{Ab as E5,Bb as m5,Cb as k,Db as c5,Eb as u5,Fb as p5,Gb as d5,Hb as l5,Ib as n5,Jb as i5,Kb as o5,Lb as s5,Mb as a5,Nb as t5,Ob as r5,Pb as e5,Qb as W8,Rb as J8,hb as W5,ib as J5,jb as Z5,kb as $5,lb as z4,mb as Y5,nb as Y4,ob as Q4,pb as I1,qb as Q5,rb as K5,sb as v5,ub as P5,vb as w5,wb as y5,xb as A5,yb as h5,zb as g5}from"../chunk-t4t3hqe0.js";import"../chunk-0z8ejxre.js";import{ic as L5,jc as D5,kc as F5,lc as H5,mc as U5,nc as O5,oc as R5,pc as f5,qc as _5,rc as k5,sc as C5,tc as I5,uc as b5,vc as T5}from"../chunk-ktr3k768.js";import{wc as S5}from"../chunk-2z1981d0.js";import{Ac as B5,Bc as M5,Cc as j5,Dc as N5,Ec as x5,xc as G5,yc as z5,zc as X5}from"../chunk-7vb4eey2.js";import{Jc as V5,Kc as q5}from"../chunk-mtbygktb.js";import"../chunk-n672d4g8.js";import{$c as r6,Ae as b1,Cd as LW,Dd as DW,Ed as FW,Fd as HW,Gd as UW,Hd as SW,Id as OW,Jd as RW,Kd as fW,Md as _W,Nd as kW,Od as CW,Pd as IW,Qd as bW,Rd as TW,Sd as vW,Td as x0,Ud as PW,Vd as wW,Wd as VW,Xd as qW,Yd as yW,ad as e6,ae as q,bd as WW,be as j1,cd as JW,ce as AW,dd as ZW,de as hW,ed as $W,ee as gW,fe as EW,ge as mW,hd as y0,id as S0,ie as cW,jd as O0,je as uW,kd as t1,ke as pW,ld as YW,le as dW,me as lW,od as QW,pd as GW,pe as nW,sd as A0,ue as iW,ye as oW}from"../chunk-d6591xck.js";import"../chunk-whtzggn6.js";import"../chunk-hytt9qyj.js";import{Ag as o1,Bg as z1,Cg as f1,Dg as KW,Eg as zW,Fg as XW,Gg as BW,Ig as MW,Kg as _1,dg as a1,eg as i1,fg as K1,rg as $4,ug as i,wg as c}from"../chunk-dexdkh3z.js";import"../chunk-15c2vgaf.js";import"../chunk-9b4erdy2.js";import{Xg as jW,Yg as NW,Zg as xW}from"../chunk-tn2bryy2.js";import"../chunk-cbqazg9k.js";import"../chunk-1myhm0g3.js";import"../chunk-kejwjerj.js";import"../chunk-aazmrxj9.js";import{Ph as sW,Qh as aW,Rh as tW,Sh as rW,Uh as eW}from"../chunk-qsrcdzan.js";import"../chunk-7g9yh5ae.js";import{bi as v}from"../chunk-t4yh4nf9.js";import"../chunk-1vzks22y.js";import"../chunk-zyt2w03d.js";import"../chunk-1hr4xht1.js";import"../chunk-d9mar37g.js";import{ui as D0}from"../chunk-vw8849ys.js";import{Buffer as L0}from"buffer";class F0 extends z1{client;config;constructor(...W){super();this.config=W}async connect(){let W=await import("../chunk-tzm3c7n6.js");return this.client??=new W.S3Client(...this.config),{sdk:W,client:this.client}}async put(W,{signal:J}={}){J?.throwIfAborted();let Z,$,Y,Q=process.env.BUCKET_NAME;if(W instanceof Blob)Z=W,Y=`${Bun.randomUUIDv7()}.${W.type.split("/")[1].split(";")[0]}`,$=W.type;else Z=W.body,Y=W.name,Q=W.bucket??Q,$=W.contentType||(Z instanceof Blob||Z instanceof File?Z.type:void 0);$=$||void 0;let G=Z instanceof L0?Z:Z instanceof Blob||Z instanceof File?L0.from(await Z.arrayBuffer()):"",{sdk:K,client:z}=await this.connect();return J?.throwIfAborted(),await z.send(new K.PutObjectCommand({Bucket:Q,Key:Y,Body:G,ContentType:$}),{abortSignal:J}),Y}async delete(W){let J=typeof W==="string"?W:W.name,Z=(typeof W==="string"?void 0:W.bucket)??process.env.BUCKET_NAME;if(!J)throw Error("Object name has to be specified");let{sdk:$,client:Y}=await this.connect();try{await Y.send(new $.DeleteObjectCommand({Bucket:Z,Key:J}))}catch(Q){if(Q?.name==="NoSuchKey"||Q?.$metadata?.httpStatusCode===404)return;throw Q}}async*pages(W,{bucket:J,signal:Z}){let{sdk:$,client:Y}=await this.connect(),Q;do{Z?.throwIfAborted();let G=await Y.send(new $.ListObjectsV2Command({Bucket:J??process.env.BUCKET_NAME,Prefix:W,ContinuationToken:Q}),{abortSignal:Z});yield(G.Contents??[]).map((K)=>({name:K.Key,size:K.Size??0,lastModified:K.LastModified??new Date(0)})),Q=G.IsTruncated?G.NextContinuationToken:void 0}while(Q)}async*objects(W,J={}){for await(let Z of this.pages(W,J))yield*Z}async deletePrefix(W,J={}){o1(W);let Z=J.bucket??process.env.BUCKET_NAME,{sdk:$,client:Y}=await this.connect(),Q=0;for await(let G of this.pages(W,{...J,bucket:Z})){if(G.length===0)continue;J.signal?.throwIfAborted();let z=(await Y.send(new $.DeleteObjectsCommand({Bucket:Z,Delete:{Objects:G.map((X)=>({Key:X.name})),Quiet:!0}}),{abortSignal:J.signal}))?.Errors??[];if(z.length>0){let X=z[0];throw Error(`S3 could not delete ${z.length} object(s) under "${W}", e.g. "${X.Key}": ${X.Code??"unknown"} ${X.Message??""}`.trim())}Q+=G.length}return Q}async list(W){let{sdk:J,client:Z}=await this.connect();return await Z.send(new J.ListObjectsV2Command({Bucket:process.env.BUCKET_NAME,Prefix:W}))}async fetch(W,{signal:J}={}){J?.throwIfAborted();let Z=process.env.BUCKET_NAME,$;if(typeof W==="string")$=W;else Z=W.bucket??Z,$=W.name;if(!$)throw Error("Object name has to be specified");let{sdk:Y,client:Q}=await this.connect();J?.throwIfAborted();let G=await Q.send(new Y.GetObjectCommand({Bucket:Z,Key:$}),{abortSignal:J}),K=f1(G.Body.transformToWebStream(),J);return J?.throwIfAborted(),new Response(K,{headers:{"Content-Type":G.ContentType,"Content-Length":G.ContentLength.toString(),"Cache-Control":"private, max-age=12000, must-revalidate","Last-Modified":G.LastModified?.toUTCString()||"",ETag:G.ETag||""}})}async read(W){let J=typeof W==="string"?{name:W}:W,Z=J.bucket??process.env.BUCKET_NAME,{name:$,range:Y=null}=J;if(!$)throw Error("Object name has to be specified");let{sdk:Q,client:G}=await this.connect(),K;try{K=await G.send(new Q.GetObjectCommand({Bucket:Z,Key:$,Range:Y?i1(Y):void 0}))}catch(M){if(M?.name==="InvalidRange"||M?.$metadata?.httpStatusCode===416)throw new i(await this.size({name:$,bucket:Z}));if(M?.name==="NoSuchKey"||M?.$metadata?.httpStatusCode===404)throw new c($);throw M}let z=K1(K.ContentRange),X=Boolean(z)&&K.$metadata?.httpStatusCode===206,B=z?.total??K.ContentLength??0;return{body:K.Body.transformToWebStream(),start:z?.start??0,end:z?.end??B-1,total:B,partial:X,type:K.ContentType??"application/octet-stream",etag:K.ETag||void 0,lastModified:K.LastModified,name:$}}async size(W){let J=typeof W==="string"?W:W.name,Z=(typeof W==="string"?void 0:W.bucket)??process.env.BUCKET_NAME,{sdk:$,client:Y}=await this.connect();try{return(await Y.send(new $.HeadObjectCommand({Bucket:Z,Key:J}))).ContentLength??0}catch(Q){if(Q?.name==="NotFound"||Q?.$metadata?.httpStatusCode===404)throw new c(J);throw Q}}}import{Buffer as H0}from"buffer";import{Readable as H6}from"stream";function s1(W){return W?.statusCode===404||W?.details?.errorCode==="BlobNotFound"||W?.code==="BlobNotFound"}function U6(W){return W?.statusCode===416||W?.details?.errorCode==="InvalidRange"||W?.code==="InvalidRange"}class U0 extends z1{config;serviceClientPromise=null;constructor(W={}){super();this.config=W}async serviceClient(){if(this.config.serviceClient)return this.config.serviceClient;return this.serviceClientPromise??=(async()=>{let W;try{W=await import("@azure/storage-blob")}catch{throw Error("AzureBlobDriver requires the '@azure/storage-blob' package. Install it with `bun add @azure/storage-blob`, or pass a pre-built `serviceClient`.")}let J=this.config.connectionString??process.env.AZURE_STORAGE_CONNECTION_STRING;if(this.config.url)return new W.BlobServiceClient(this.config.url,this.config.credential);if(J)return W.BlobServiceClient.fromConnectionString(J);throw Error("AzureBlobDriver needs a connection string (AZURE_STORAGE_CONNECTION_STRING), a `url`, or a `serviceClient`.")})(),this.serviceClientPromise}async blob(W,J){if(!W)throw Error("Object name has to be specified");let Z=J??this.config.container??process.env.BUCKET_NAME;if(!Z)throw Error("AzureBlobDriver needs a container name, from `bucket`, the `container` config, or BUCKET_NAME.");return(await this.serviceClient()).getContainerClient(Z).getBlockBlobClient(W)}async put(W,{signal:J}={}){J?.throwIfAborted();let Z,$,Y,Q;if(W instanceof Blob)Z=W,Y=`${Bun.randomUUIDv7()}.${W.type.split("/")[1].split(";")[0]}`,$=W.type;else Z=W.body,Y=W.name,Q=W.bucket,$=W.contentType??(Z instanceof Blob||Z instanceof File?Z.type:void 0);let G=Z instanceof H0?Z:H0.from(await Z.arrayBuffer()),K=await this.blob(Y,Q);return J?.throwIfAborted(),await K.uploadData(G,{blobHTTPHeaders:$?{blobContentType:$}:void 0,abortSignal:J}),Y}async*objects(W,{bucket:J,signal:Z}={}){Z?.throwIfAborted();let $=J??this.config.container??process.env.BUCKET_NAME;if(!$)throw Error("AzureBlobDriver needs a container name, from `bucket`, the `container` config, or BUCKET_NAME.");let Q=(await this.serviceClient()).getContainerClient($);for await(let G of Q.listBlobsFlat({prefix:W}))Z?.throwIfAborted(),yield{name:G.name,size:G.properties?.contentLength??0,lastModified:G.properties?.lastModified??new Date(0)}}async list(W){let J=this.config.container??process.env.BUCKET_NAME,$=(await this.serviceClient()).getContainerClient(J),Y=[];for await(let Q of $.listBlobsFlat({prefix:W}))Y.push(Q.name);return Y}async fetch(W,{signal:J}={}){J?.throwIfAborted();let Z=await this.download(typeof W==="string"?{name:W}:{name:W.name,bucket:W.bucket},J);return new Response(Z.body,{headers:{"Content-Type":Z.type,"Content-Length":String(Z.total),"Cache-Control":"private, max-age=12000, must-revalidate","Last-Modified":Z.lastModified?.toUTCString()??"",ETag:Z.etag??""}})}async read(W){return this.download(typeof W==="string"?{name:W}:W)}async download(W,J){let{name:Z,bucket:$,range:Y=null}=W,Q=await this.blob(Z,$);J?.throwIfAborted();let G,K,z=Y?.kind==="suffix"||Y?.kind==="offset"&&Y.end===null&&Y.start===0;if(Y&&z){let H=await this.size({name:Z,bucket:$}),m=a1(Y,H);if(!m)throw new i(H);G=m.start,K=m.length}else if(Y?.kind==="offset")G=Y.start,K=Y.end===null?void 0:Y.end-Y.start+1;let X;try{X=await Q.download(G,K,J?{abortSignal:J}:void 0)}catch(H){if(U6(H))throw new i(await this.size({name:Z,bucket:$}));if(s1(H))throw new c(Z);throw H}let B=K1(X.contentRange),M=Boolean(B),D=B?.total??X.contentLength??0,S=await S6(X);if(S instanceof ReadableStream)S=f1(S,J);return J?.throwIfAborted(),{body:S,start:B?.start??0,end:B?.end??D-1,total:D,partial:M,type:X.contentType??"application/octet-stream",etag:X.etag||void 0,lastModified:X.lastModified,name:Z}}async size(W){let J=typeof W==="string"?W:W.name,Z=typeof W==="string"?void 0:W.bucket,$=await this.blob(J,Z);try{return(await $.getProperties()).contentLength??0}catch(Y){if(s1(Y))throw new c(J);throw Y}}async delete(W){let J=typeof W==="string"?W:W.name,Z=typeof W==="string"?void 0:W.bucket,$=await this.blob(J,Z);try{await $.delete()}catch(Y){if(s1(Y))return;throw Y}}}async function S6(W){if(W.blobBody)return await W.blobBody;if(W.readableStreamBody)return H6.toWeb(W.readableStreamBody);return null}var O6=`
|
|
2
|
+
import{gb as Z8}from"../chunk-z10cas5r.js";import{Ab as E5,Bb as m5,Cb as k,Db as c5,Eb as u5,Fb as p5,Gb as d5,Hb as l5,Ib as n5,Jb as i5,Kb as o5,Lb as s5,Mb as a5,Nb as t5,Ob as r5,Pb as e5,Qb as W8,Rb as J8,hb as W5,ib as J5,jb as Z5,kb as $5,lb as z4,mb as Y5,nb as Y4,ob as Q4,pb as I1,qb as Q5,rb as K5,sb as v5,ub as P5,vb as w5,wb as y5,xb as A5,yb as h5,zb as g5}from"../chunk-yf1njzd5.js";import"../chunk-4088szy9.js";import{ic as L5,jc as D5,kc as F5,lc as H5,mc as U5,nc as O5,oc as R5,pc as f5,qc as _5,rc as k5,sc as C5,tc as I5,uc as b5,vc as T5}from"../chunk-ktr3k768.js";import{wc as S5}from"../chunk-2z1981d0.js";import{Ac as B5,Bc as M5,Cc as j5,Dc as N5,Ec as x5,xc as G5,yc as z5,zc as X5}from"../chunk-7vb4eey2.js";import{Jc as V5,Kc as q5}from"../chunk-v1tfdgy1.js";import"../chunk-n672d4g8.js";import{$c as r6,Ae as b1,Cd as LW,Dd as DW,Ed as FW,Fd as HW,Gd as UW,Hd as SW,Id as OW,Jd as RW,Kd as fW,Md as _W,Nd as kW,Od as CW,Pd as IW,Qd as bW,Rd as TW,Sd as vW,Td as x0,Ud as PW,Vd as wW,Wd as VW,Xd as qW,Yd as yW,ad as e6,ae as q,bd as WW,be as j1,cd as JW,ce as AW,dd as ZW,de as hW,ed as $W,ee as gW,fe as EW,ge as mW,hd as y0,id as S0,ie as cW,jd as O0,je as uW,kd as t1,ke as pW,ld as YW,le as dW,me as lW,od as QW,pd as GW,pe as nW,sd as A0,ue as iW,ye as oW}from"../chunk-ms9k0rx6.js";import"../chunk-whtzggn6.js";import"../chunk-hytt9qyj.js";import{Ag as o1,Bg as z1,Cg as f1,Dg as KW,Eg as zW,Fg as XW,Gg as BW,Ig as MW,Kg as _1,dg as a1,eg as i1,fg as K1,rg as $4,ug as i,wg as c}from"../chunk-pn8v6fj2.js";import"../chunk-15c2vgaf.js";import"../chunk-49nyyjfe.js";import{Xg as jW,Yg as NW,Zg as xW}from"../chunk-tn2bryy2.js";import"../chunk-cbqazg9k.js";import"../chunk-1myhm0g3.js";import"../chunk-kejwjerj.js";import"../chunk-aazmrxj9.js";import{Ph as sW,Qh as aW,Rh as tW,Sh as rW,Uh as eW}from"../chunk-qsrcdzan.js";import"../chunk-jmg2zsaf.js";import{bi as v}from"../chunk-t4yh4nf9.js";import"../chunk-1vzks22y.js";import"../chunk-zyt2w03d.js";import"../chunk-1hr4xht1.js";import"../chunk-d9mar37g.js";import{ui as D0}from"../chunk-vw8849ys.js";import{Buffer as L0}from"buffer";class F0 extends z1{client;config;constructor(...W){super();this.config=W}async connect(){let W=await import("../chunk-tzm3c7n6.js");return this.client??=new W.S3Client(...this.config),{sdk:W,client:this.client}}async put(W,{signal:J}={}){J?.throwIfAborted();let Z,$,Y,Q=process.env.BUCKET_NAME;if(W instanceof Blob)Z=W,Y=`${Bun.randomUUIDv7()}.${W.type.split("/")[1].split(";")[0]}`,$=W.type;else Z=W.body,Y=W.name,Q=W.bucket??Q,$=W.contentType||(Z instanceof Blob||Z instanceof File?Z.type:void 0);$=$||void 0;let G=Z instanceof L0?Z:Z instanceof Blob||Z instanceof File?L0.from(await Z.arrayBuffer()):"",{sdk:K,client:z}=await this.connect();return J?.throwIfAborted(),await z.send(new K.PutObjectCommand({Bucket:Q,Key:Y,Body:G,ContentType:$}),{abortSignal:J}),Y}async delete(W){let J=typeof W==="string"?W:W.name,Z=(typeof W==="string"?void 0:W.bucket)??process.env.BUCKET_NAME;if(!J)throw Error("Object name has to be specified");let{sdk:$,client:Y}=await this.connect();try{await Y.send(new $.DeleteObjectCommand({Bucket:Z,Key:J}))}catch(Q){if(Q?.name==="NoSuchKey"||Q?.$metadata?.httpStatusCode===404)return;throw Q}}async*pages(W,{bucket:J,signal:Z}){let{sdk:$,client:Y}=await this.connect(),Q;do{Z?.throwIfAborted();let G=await Y.send(new $.ListObjectsV2Command({Bucket:J??process.env.BUCKET_NAME,Prefix:W,ContinuationToken:Q}),{abortSignal:Z});yield(G.Contents??[]).map((K)=>({name:K.Key,size:K.Size??0,lastModified:K.LastModified??new Date(0)})),Q=G.IsTruncated?G.NextContinuationToken:void 0}while(Q)}async*objects(W,J={}){for await(let Z of this.pages(W,J))yield*Z}async deletePrefix(W,J={}){o1(W);let Z=J.bucket??process.env.BUCKET_NAME,{sdk:$,client:Y}=await this.connect(),Q=0;for await(let G of this.pages(W,{...J,bucket:Z})){if(G.length===0)continue;J.signal?.throwIfAborted();let z=(await Y.send(new $.DeleteObjectsCommand({Bucket:Z,Delete:{Objects:G.map((X)=>({Key:X.name})),Quiet:!0}}),{abortSignal:J.signal}))?.Errors??[];if(z.length>0){let X=z[0];throw Error(`S3 could not delete ${z.length} object(s) under "${W}", e.g. "${X.Key}": ${X.Code??"unknown"} ${X.Message??""}`.trim())}Q+=G.length}return Q}async list(W){let{sdk:J,client:Z}=await this.connect();return await Z.send(new J.ListObjectsV2Command({Bucket:process.env.BUCKET_NAME,Prefix:W}))}async fetch(W,{signal:J}={}){J?.throwIfAborted();let Z=process.env.BUCKET_NAME,$;if(typeof W==="string")$=W;else Z=W.bucket??Z,$=W.name;if(!$)throw Error("Object name has to be specified");let{sdk:Y,client:Q}=await this.connect();J?.throwIfAborted();let G=await Q.send(new Y.GetObjectCommand({Bucket:Z,Key:$}),{abortSignal:J}),K=f1(G.Body.transformToWebStream(),J);return J?.throwIfAborted(),new Response(K,{headers:{"Content-Type":G.ContentType,"Content-Length":G.ContentLength.toString(),"Cache-Control":"private, max-age=12000, must-revalidate","Last-Modified":G.LastModified?.toUTCString()||"",ETag:G.ETag||""}})}async read(W){let J=typeof W==="string"?{name:W}:W,Z=J.bucket??process.env.BUCKET_NAME,{name:$,range:Y=null}=J;if(!$)throw Error("Object name has to be specified");let{sdk:Q,client:G}=await this.connect(),K;try{K=await G.send(new Q.GetObjectCommand({Bucket:Z,Key:$,Range:Y?i1(Y):void 0}))}catch(M){if(M?.name==="InvalidRange"||M?.$metadata?.httpStatusCode===416)throw new i(await this.size({name:$,bucket:Z}));if(M?.name==="NoSuchKey"||M?.$metadata?.httpStatusCode===404)throw new c($);throw M}let z=K1(K.ContentRange),X=Boolean(z)&&K.$metadata?.httpStatusCode===206,B=z?.total??K.ContentLength??0;return{body:K.Body.transformToWebStream(),start:z?.start??0,end:z?.end??B-1,total:B,partial:X,type:K.ContentType??"application/octet-stream",etag:K.ETag||void 0,lastModified:K.LastModified,name:$}}async size(W){let J=typeof W==="string"?W:W.name,Z=(typeof W==="string"?void 0:W.bucket)??process.env.BUCKET_NAME,{sdk:$,client:Y}=await this.connect();try{return(await Y.send(new $.HeadObjectCommand({Bucket:Z,Key:J}))).ContentLength??0}catch(Q){if(Q?.name==="NotFound"||Q?.$metadata?.httpStatusCode===404)throw new c(J);throw Q}}}import{Buffer as H0}from"buffer";import{Readable as H6}from"stream";function s1(W){return W?.statusCode===404||W?.details?.errorCode==="BlobNotFound"||W?.code==="BlobNotFound"}function U6(W){return W?.statusCode===416||W?.details?.errorCode==="InvalidRange"||W?.code==="InvalidRange"}class U0 extends z1{config;serviceClientPromise=null;constructor(W={}){super();this.config=W}async serviceClient(){if(this.config.serviceClient)return this.config.serviceClient;return this.serviceClientPromise??=(async()=>{let W;try{W=await import("@azure/storage-blob")}catch{throw Error("AzureBlobDriver requires the '@azure/storage-blob' package. Install it with `bun add @azure/storage-blob`, or pass a pre-built `serviceClient`.")}let J=this.config.connectionString??process.env.AZURE_STORAGE_CONNECTION_STRING;if(this.config.url)return new W.BlobServiceClient(this.config.url,this.config.credential);if(J)return W.BlobServiceClient.fromConnectionString(J);throw Error("AzureBlobDriver needs a connection string (AZURE_STORAGE_CONNECTION_STRING), a `url`, or a `serviceClient`.")})(),this.serviceClientPromise}async blob(W,J){if(!W)throw Error("Object name has to be specified");let Z=J??this.config.container??process.env.BUCKET_NAME;if(!Z)throw Error("AzureBlobDriver needs a container name, from `bucket`, the `container` config, or BUCKET_NAME.");return(await this.serviceClient()).getContainerClient(Z).getBlockBlobClient(W)}async put(W,{signal:J}={}){J?.throwIfAborted();let Z,$,Y,Q;if(W instanceof Blob)Z=W,Y=`${Bun.randomUUIDv7()}.${W.type.split("/")[1].split(";")[0]}`,$=W.type;else Z=W.body,Y=W.name,Q=W.bucket,$=W.contentType??(Z instanceof Blob||Z instanceof File?Z.type:void 0);let G=Z instanceof H0?Z:H0.from(await Z.arrayBuffer()),K=await this.blob(Y,Q);return J?.throwIfAborted(),await K.uploadData(G,{blobHTTPHeaders:$?{blobContentType:$}:void 0,abortSignal:J}),Y}async*objects(W,{bucket:J,signal:Z}={}){Z?.throwIfAborted();let $=J??this.config.container??process.env.BUCKET_NAME;if(!$)throw Error("AzureBlobDriver needs a container name, from `bucket`, the `container` config, or BUCKET_NAME.");let Q=(await this.serviceClient()).getContainerClient($);for await(let G of Q.listBlobsFlat({prefix:W}))Z?.throwIfAborted(),yield{name:G.name,size:G.properties?.contentLength??0,lastModified:G.properties?.lastModified??new Date(0)}}async list(W){let J=this.config.container??process.env.BUCKET_NAME,$=(await this.serviceClient()).getContainerClient(J),Y=[];for await(let Q of $.listBlobsFlat({prefix:W}))Y.push(Q.name);return Y}async fetch(W,{signal:J}={}){J?.throwIfAborted();let Z=await this.download(typeof W==="string"?{name:W}:{name:W.name,bucket:W.bucket},J);return new Response(Z.body,{headers:{"Content-Type":Z.type,"Content-Length":String(Z.total),"Cache-Control":"private, max-age=12000, must-revalidate","Last-Modified":Z.lastModified?.toUTCString()??"",ETag:Z.etag??""}})}async read(W){return this.download(typeof W==="string"?{name:W}:W)}async download(W,J){let{name:Z,bucket:$,range:Y=null}=W,Q=await this.blob(Z,$);J?.throwIfAborted();let G,K,z=Y?.kind==="suffix"||Y?.kind==="offset"&&Y.end===null&&Y.start===0;if(Y&&z){let H=await this.size({name:Z,bucket:$}),m=a1(Y,H);if(!m)throw new i(H);G=m.start,K=m.length}else if(Y?.kind==="offset")G=Y.start,K=Y.end===null?void 0:Y.end-Y.start+1;let X;try{X=await Q.download(G,K,J?{abortSignal:J}:void 0)}catch(H){if(U6(H))throw new i(await this.size({name:Z,bucket:$}));if(s1(H))throw new c(Z);throw H}let B=K1(X.contentRange),M=Boolean(B),D=B?.total??X.contentLength??0,S=await S6(X);if(S instanceof ReadableStream)S=f1(S,J);return J?.throwIfAborted(),{body:S,start:B?.start??0,end:B?.end??D-1,total:D,partial:M,type:X.contentType??"application/octet-stream",etag:X.etag||void 0,lastModified:X.lastModified,name:Z}}async size(W){let J=typeof W==="string"?W:W.name,Z=typeof W==="string"?void 0:W.bucket,$=await this.blob(J,Z);try{return(await $.getProperties()).contentLength??0}catch(Y){if(s1(Y))throw new c(J);throw Y}}async delete(W){let J=typeof W==="string"?W:W.name,Z=typeof W==="string"?void 0:W.bucket,$=await this.blob(J,Z);try{await $.delete()}catch(Y){if(s1(Y))return;throw Y}}}async function S6(W){if(W.blobBody)return await W.blobBody;if(W.readableStreamBody)return H6.toWeb(W.readableStreamBody);return null}var O6=`
|
|
3
3
|
local currentKey = KEYS[1]
|
|
4
4
|
local previousKey = KEYS[2]
|
|
5
5
|
local limit = tonumber(ARGV[1])
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { HttpRequest } from "../../http";
|
|
2
2
|
import { type CarriedContext } from "../../http/requestContext";
|
|
3
3
|
import { type FlatViewRoutes } from "./createFlatViewRoutes";
|
|
4
|
-
import { type ViewRouteConfig } from "./config";
|
|
4
|
+
import { type LocaleRouting, type ViewRouteConfig } from "./config";
|
|
5
5
|
import type { ComponentTree } from "../../client/types";
|
|
6
6
|
import { type IslandResolver } from "./staticDocument";
|
|
7
7
|
/**
|
|
@@ -61,6 +61,8 @@ export declare class ViewRouteDispatcher {
|
|
|
61
61
|
private readonly hooks;
|
|
62
62
|
/** See `ViewRouteConfig.partialRendering`. */
|
|
63
63
|
readonly partialRendering: boolean;
|
|
64
|
+
/** See `ViewRouteConfig.localeRouting`. */
|
|
65
|
+
readonly localeRouting: LocaleRouting;
|
|
64
66
|
constructor(config: ViewRouteConfig);
|
|
65
67
|
/**
|
|
66
68
|
* Whether every flag gating a route is on for this request.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewRouteDispatcher.d.ts","sourceRoot":"","sources":["../../../services/router/ViewRouteDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,KAAK,cAAc,EAAmC,MAAM,2BAA2B,CAAC;AAEjG,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"ViewRouteDispatcher.d.ts","sourceRoot":"","sources":["../../../services/router/ViewRouteDispatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ export interface ApiRouteConfig {
|
|
|
12
12
|
onRequestEnd?: (req: HttpRequest) => void | Promise<void>;
|
|
13
13
|
onRequestFail?: (req: HttpRequest, error: any) => void | Promise<void>;
|
|
14
14
|
}
|
|
15
|
+
/** See `ViewRouteConfig.localeRouting`. */
|
|
16
|
+
export type LocaleRouting = "prefix" | "off";
|
|
15
17
|
export interface ViewRouteConfig {
|
|
16
18
|
root: (props: any) => JSX.Element;
|
|
17
19
|
rootRouter: new () => ViewRouter;
|
|
@@ -25,6 +27,23 @@ export interface ViewRouteConfig {
|
|
|
25
27
|
* app cannot audit them all at once.
|
|
26
28
|
*/
|
|
27
29
|
partialRendering?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* How these views take part in locale routing when `translation`
|
|
32
|
+
* configures `supportedLocales`. Set it on a `route.domains` group's `view`
|
|
33
|
+
* to opt that host out (e.g. user-published sites that are not the app's
|
|
34
|
+
* own UI), or with the `"no-locale"` middleware directive on one router or
|
|
35
|
+
* route.
|
|
36
|
+
*
|
|
37
|
+
* - `"prefix"` (default): URLs carry the locale (`/tr-TR/about`), and a
|
|
38
|
+
* visitor whose cookie or `Accept-Language` names another locale is
|
|
39
|
+
* redirected to it.
|
|
40
|
+
* - `"off"`: URLs never carry a locale and nothing redirects. A first
|
|
41
|
+
* segment like `/tr-TR` is an ordinary path. Nothing is detected from the
|
|
42
|
+
* cookie or `Accept-Language`, and no `i18n-locale` cookie is set. The
|
|
43
|
+
* request renders in `translation.defaultLocale` unless middleware picks
|
|
44
|
+
* one with `Lang.setLocale(locale, { cookie: false })`.
|
|
45
|
+
*/
|
|
46
|
+
localeRouting?: LocaleRouting;
|
|
28
47
|
onRequestStart?: (req: HttpRequest) => void | Promise<void>;
|
|
29
48
|
onRequestEnd?: (req: HttpRequest) => void | Promise<void>;
|
|
30
49
|
onRequestFail?: (req: HttpRequest, error: any) => void | Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../services/router/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,MAAM,WAAW,cAAc;IAI7B,UAAU,EAAE,OAAO,SAAS,CAAC;IAE7B,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../services/router/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,MAAM,WAAW,cAAc;IAI7B,UAAU,EAAE,OAAO,SAAS,CAAC;IAE7B,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAED,2CAA2C;AAC3C,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,KAAK,CAAC;AAG7C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,OAAO,CAAC;IAClC,UAAU,EAAE,UAAU,UAAU,CAAC;IAEjC;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;;;;;;;;;;OAeG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE;;;;;;;;;;;;;OAaG;IACH,gBAAgB,CAAC,EAAE,CACjB,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,aAAa,KACnB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAID,MAAM,WAAW,cAAc;IAG7B,MAAM,EAAE,UAAU,SAAS,CAAC,GAAG,CAAC,CAAC;IACjC,iCAAiC;IACjC,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D;;;;OAIG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC;CAC9B;AAKD,MAAM,WAAW,kBAAkB;IACjC,GAAG,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACnE,IAAI,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,CACP,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,GAAG,EAAE,OAAO,KACT,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,OAAO,EAAE,CACP,IAAI,EAAE,MAAM,KACT,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IAE5E,0FAA0F;IAC1F,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAID,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;IAExC,MAAM,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAE7B,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAE5B;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1B;AAGD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,cAAc,CAAC;IACpB,IAAI,EAAE,eAAe,CAAC;IACtB,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAElE;AAGD,wBAAgB,sBAAsB,IAAI,IAAI,CAC5C,QAAQ,CAAC,cAAc,CAAC,EACxB,YAAY,CACb,CAMA;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAC7C,QAAQ,CAAC,eAAe,CAAC,EACzB,MAAM,GAAG,YAAY,CACtB,CASA"}
|
package/dist/testing/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as QueryManagerProvider, D as I18nProvider, F as createMemoryHistory, I as toVariantKey, J as Subject, L as applyParams, N as ProgressManager, O as ServerDataContext, P as Action, i as RouteTransitionProvider, o as ClientRouterContext, r as m, t as ThemeProvider, z as QueryManagerContext } from "../chunks/ThemeProvider-
|
|
1
|
+
import { B as QueryManagerProvider, D as I18nProvider, F as createMemoryHistory, I as toVariantKey, J as Subject, L as applyParams, N as ProgressManager, O as ServerDataContext, P as Action, i as RouteTransitionProvider, o as ClientRouterContext, r as m, t as ThemeProvider, z as QueryManagerContext } from "../chunks/ThemeProvider-BLI4zpLu.js";
|
|
2
2
|
import { r as RouteStateProvider } from "../chunks/useParams-BN3XXfmG.js";
|
|
3
3
|
import { Suspense, useContext, useMemo, useRef, useState } from "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
package/package.json
CHANGED
package/dist/chunk-7g9yh5ae.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
var b="UTC";function W(j){if(typeof j!=="string"||j.length===0)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:j}),!0}catch{return!1}}var S=new Map,H=500;function U(j,B){let N=S.get(j);if(N===void 0){if(S.size>=H)S.delete(S.keys().next().value);N=B(),S.set(j,N)}return N}function Y(j){return j instanceof Date?j:new Date(j)}function M(j){return j.dateStyle!==void 0||j.timeStyle!==void 0||j.weekday!==void 0||j.era!==void 0||j.year!==void 0||j.month!==void 0||j.day!==void 0||j.dayPeriod!==void 0||j.hour!==void 0||j.minute!==void 0||j.second!==void 0||j.fractionalSecondDigits!==void 0||j.timeZoneName!==void 0}function $(j){let{locale:B,timeZone:N}=j,Q=(J={})=>{let K={...J,timeZone:J.timeZone??N};return U(`dt|${B}|${JSON.stringify(K)}`,()=>{return new Intl.DateTimeFormat(B,K)})},P=(J,K)=>{if(J&&M(J))return J;return{...K,...J}};return{locale:B,timeZone:N,date(J,K){return Q(P(K,{dateStyle:"medium"})).format(Y(J))},time(J,K){return Q(P(K,{timeStyle:"short"})).format(Y(J))},dateTime(J,K){return Q(P(K,{dateStyle:"medium",timeStyle:"short"})).format(Y(J))},number(J,K={}){return U(`n|${B}|${JSON.stringify(K)}`,()=>new Intl.NumberFormat(B,K)).format(J)},relative(J,K,R={}){return U(`r|${B}|${JSON.stringify(R)}`,()=>new Intl.RelativeTimeFormat(B,R)).format(J,K)},list(J,K={}){return U(`l|${B}|${JSON.stringify(K)}`,()=>new Intl.ListFormat(B,K)).format(J)},plural(J,K={}){return U(`p|${B}|${JSON.stringify(K)}`,()=>new Intl.PluralRules(B,K)).select(J)},dateTimeFormat:Q}}var x=/^[a-z]{2,3}(?:[-_][a-z0-9]{2,8})*$/i;function I(j){return x.test(j)}function z(j){return j.split(/[-_]/)[0].toLowerCase()}function G(j,B,N){let Q=j?.split(";")[0].trim();if(!Q||!I(Q))return null;let P=Q.replaceAll("_","-").toLowerCase(),J=B.find((X)=>X.toLowerCase()===P);if(J)return J;let K=z(Q),R=B.filter((X)=>z(X)===K);if(R.length===0)return null;if(N&&R.includes(N))return N;return R[0]}class _{config;static token="translator";translations={};isEnabled=!1;constructor(j){this.config=j;if(!W(this.config.timeZone))throw Error(`translation.timeZone: "${String(this.config.timeZone)}" is not a time zone this runtime knows. Use an IANA name such as "UTC" or "Europe/Istanbul".`);let B={};for(let[N,Q]of Object.entries(this.config.prefetch))for(let P of this.config.supportedLocales){if(!B[P])B[P]={};B[P][N]={};for(let J of Q){B[P][N][J.name]={};for(let[K,R]of Object.entries(J.dictionary))this.isEnabled=!0,B[P][N][J.name][K]=R[P]}}this.translations=B}get isLocaleAware(){return this.isEnabled||this.config.supportedLocales.length>0}get supportedLocales(){return this.config.supportedLocales}get defaultLocale(){return this.config.defaultLocale}get components(){return this.config.components}get timeZone(){return this.config.timeZone}detectTimeZone(j){if(j){let B=this.config.detectTimeZone(j);if(W(B))return B}return this.config.timeZone}formatter(j,B){return $({locale:j||this.defaultLocale,timeZone:W(B)?B:this.timeZone})}onLocaleChange(j){return this.config.onLocaleChange(j)}detectLocale(j){let B=this.config.defaultLocale??this.config.supportedLocales[0]??"en-US",N=(K)=>G(K,this.config.supportedLocales,this.config.defaultLocale),Q=N(this.config.detectLocale(j));if(Q)return Q;let P=N(j.cookies.get("i18n-locale"));if(P)return P;let J=j.headers.get("accept-language")??"";for(let K of J.split(",")){let R=N(K);if(R)return R}return B}getPageTranslations(j,B){if(this.translations[j][B])return this.translations[j][B];return{}}}
|
|
3
|
-
export{G as Vh,b as Wh,W as Xh,$ as Yh,_ as Zh};
|
|
4
|
-
|
|
5
|
-
//# debugId=752914F8E621207A64756E2164756E21
|
package/dist/chunk-9b4erdy2.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import{AsyncLocalStorage as E}from"async_hooks";class Q{content={title:"Gemi App",description:null,openGraph:null};touched=!1;render(){return{title:this.content.title,description:this.content.description,openGraph:this.content.openGraph}}title(j){this.touched=!0,this.content.title=j}description(j){this.touched=!0,this.content.description=j}openGraph({title:j,description:B,type:z,url:G,image:J,imageAlt:U,imageWidth:V,imageHeight:X,twitterImage:Y=J,twitterImageAlt:D=U,twitterImageWidth:K=V,twitterImageHeight:M=X}){this.touched=!0;let Z=J,$=Y;if(J&&!J.startsWith("http"))Z=`${process.env.HOST_NAME}${J}`,$=`${process.env.HOST_NAME}${Y}`;this.content.openGraph=Object.fromEntries(Object.entries({title:j,description:B,type:z,url:G,image:Z,imageAlt:U,imageWidth:V,imageHeight:X,twitterImage:$,twitterImageAlt:D,twitterImageWidth:K,twitterImageHeight:M}).filter(([O,N])=>N!==void 0))}}function b(j,B,z={}){return[`${j}=${B}`,z.maxAge?`Max-Age=${z.maxAge}`:"",z.httpOnly?"HttpOnly":"",z.secure?"Secure":"",z.sameSite?`SameSite=${z.sameSite}`:"SameSite=Strict",z.path?`Path=${z.path}`:"Path=/",z.domain?`Domain=${z.domain}`:"",z.expires?`Expires=${z.expires.toUTCString()}`:"",z.partitioned?"Partitioned":""].filter((G)=>G!=="").join("; ")}var P=new E;class F{req;cookies=new Set;headers=new Headers;serverQueries=null;user=null;csrfHmac=null;locale=null;metadata=new Q;rangeRequest=null;sessionId=null;featureEvaluations=null;featureContext=null;featureBuckets=null;pendingWork=new Set;ended=!1;constructor(j){this.req=j}waitUntil(j){if(this.ended)return;let B=Promise.resolve(j).then(()=>{},()=>{});this.pendingWork.add(B),B.then(()=>this.pendingWork.delete(B))}hasPendingWork(){return this.pendingWork.size>0}async whenIdle(){while(this.pendingWork.size>0)await Promise.all(Array.from(this.pendingWork))}setLocale(j){this.locale=j}renderMeta(){return this.metadata.render()}setCSRFHmac(j){this.csrfHmac=j}setCookie(j,B,z={}){this.cookies.add(b(j,B,z))}deleteCookie(j,B={}){this.cookies.add(b(j,"",{...B,maxAge:-1}))}setHeaders(j,B){this.headers.set(j,B)}setUser(j){this.user=j}setRequest(j){this.req=j}destroy(){this.ended=!0,delete this.cookies,delete this.headers,this.serverQueries=null,this.sessionId=null,this.featureEvaluations=null,this.featureContext=null,this.featureBuckets=null,delete this.user}}var L="session_id";function H(){let j=T.getStore();if(!j)return null;if(j.sessionId)return j.sessionId;let B=j.req?.cookies?.get(L);if(B)j.sessionId=B;return j.sessionId}function W(){let j=T.getStore();if(!j)return null;let B=H();if(B)return B;let z=Bun.randomUUIDv7();return j.sessionId=z,j.setCookie(L,z,{httpOnly:!0,secure:Bun.env.NODE_ENV==="production",sameSite:"Lax",expires:new Date(Date.now()+31536000000)}),z}class T{static getStore(){return P.getStore()}static setRequest(j){P.getStore().req=j}static run(j,B,z){let G=new F(j);if(z)G.user=z.user;return P.run(G,B)}static runWith(j,B){return P.run(j,B)}static exit(j){return P.exit(j)}}
|
|
3
|
-
export{H as Ug,W as Vg,T as Wg};
|
|
4
|
-
|
|
5
|
-
//# debugId=F6B99A11E50DE5D164756E2164756E21
|