gemi 0.157.1 → 0.160.2
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/Agent.d.ts +231 -55
- package/dist/ai/Agent.d.ts.map +1 -1
- package/dist/ai/AgentController.d.ts +45 -11
- package/dist/ai/AgentController.d.ts.map +1 -1
- package/dist/ai/eval/Eval.d.ts +2 -11
- package/dist/ai/eval/Eval.d.ts.map +1 -1
- package/dist/ai/generate.d.ts +165 -7
- package/dist/ai/generate.d.ts.map +1 -1
- package/dist/ai/index.d.ts +5 -5
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +11 -11
- package/dist/ai/index.js.map +4 -4
- package/dist/ai/usageMeter.d.ts +149 -6
- package/dist/ai/usageMeter.d.ts.map +1 -1
- package/dist/app/index.js +1 -1
- package/dist/bin/gemi.js +178 -121
- package/dist/bin/gemi.js.map +5 -4
- package/dist/bun/plugin.js +1 -1
- package/dist/bun/preload.js +1 -1
- package/dist/{chunk-0v3bca8k.js → chunk-0b8m1f07.js} +3 -3
- package/dist/{chunk-0v3bca8k.js.map → chunk-0b8m1f07.js.map} +1 -1
- package/dist/{chunk-xff7tkde.js → chunk-0qernzn1.js} +2 -2
- package/dist/{chunk-xff7tkde.js.map → chunk-0qernzn1.js.map} +1 -1
- package/dist/chunk-0qrbspbe.js +5 -0
- package/dist/{chunk-6np1r9gk.js.map → chunk-0qrbspbe.js.map} +1 -1
- package/dist/{chunk-517fjfme.js → chunk-0vb4j7cx.js} +3 -3
- package/dist/{chunk-517fjfme.js.map → chunk-0vb4j7cx.js.map} +1 -1
- package/dist/{chunk-0yjm936b.js → chunk-191gkynh.js} +3 -3
- package/dist/{chunk-0yjm936b.js.map → chunk-191gkynh.js.map} +1 -1
- package/dist/chunk-1xxh48bd.js +4 -0
- package/dist/{chunk-cmt3jw6j.js.map → chunk-1xxh48bd.js.map} +2 -2
- package/dist/chunk-27habdva.js +4 -0
- package/dist/{chunk-3ndc8adc.js.map → chunk-27habdva.js.map} +2 -2
- package/dist/{chunk-qvngsa1c.js → chunk-2ednvght.js} +2 -2
- package/dist/{chunk-qvngsa1c.js.map → chunk-2ednvght.js.map} +1 -1
- package/dist/chunk-3cvza61a.js +4 -0
- package/dist/{chunk-pw5h5935.js.map → chunk-3cvza61a.js.map} +2 -2
- package/dist/{chunk-1de3awrh.js → chunk-3d8jxky6.js} +3 -3
- package/dist/{chunk-1de3awrh.js.map → chunk-3d8jxky6.js.map} +1 -1
- package/dist/chunk-3vmc6adw.js +4 -0
- package/dist/{chunk-z7224rhm.js.map → chunk-3vmc6adw.js.map} +2 -2
- package/dist/{chunk-7yww9aq7.js → chunk-4670xxae.js} +2 -2
- package/dist/{chunk-7yww9aq7.js.map → chunk-4670xxae.js.map} +1 -1
- package/dist/{chunk-xtqd9vpp.js → chunk-4vqnv41y.js} +2 -2
- package/dist/{chunk-xtqd9vpp.js.map → chunk-4vqnv41y.js.map} +1 -1
- package/dist/{chunk-exb35whf.js → chunk-4ye6p5yk.js} +2 -2
- package/dist/{chunk-exb35whf.js.map → chunk-4ye6p5yk.js.map} +1 -1
- package/dist/{chunk-9md6acv2.js → chunk-57qnqcrp.js} +1 -1
- package/dist/{chunk-zcg6m7gf.js → chunk-5c6dfy75.js} +2 -2
- package/dist/{chunk-zcg6m7gf.js.map → chunk-5c6dfy75.js.map} +1 -1
- package/dist/{chunk-t7yt8egz.js → chunk-5pc21syf.js} +3 -3
- package/dist/{chunk-t7yt8egz.js.map → chunk-5pc21syf.js.map} +1 -1
- package/dist/{chunk-5zxxd7qp.js → chunk-5qzxyj68.js} +1 -1
- package/dist/{chunk-pgdxqrjv.js → chunk-664ewdjv.js} +4 -4
- package/dist/{chunk-pgdxqrjv.js.map → chunk-664ewdjv.js.map} +2 -2
- package/dist/chunk-6d6p0q3p.js +5 -0
- package/dist/{chunk-7zy6nq9e.js.map → chunk-6d6p0q3p.js.map} +2 -2
- package/dist/{chunk-k1aw97dm.js → chunk-6ytezxzj.js} +2 -2
- package/dist/{chunk-78wht1ph.js.map → chunk-6ytezxzj.js.map} +1 -1
- package/dist/{chunk-00z7s34q.js → chunk-79nypedr.js} +2 -2
- package/dist/{chunk-00z7s34q.js.map → chunk-79nypedr.js.map} +1 -1
- package/dist/{chunk-4vnrnbn3.js → chunk-7bc9ypbk.js} +3 -3
- package/dist/{chunk-4vnrnbn3.js.map → chunk-7bc9ypbk.js.map} +1 -1
- package/dist/{chunk-wg0ttent.js → chunk-7rfw4h2x.js} +3 -3
- package/dist/{chunk-wg0ttent.js.map → chunk-7rfw4h2x.js.map} +1 -1
- package/dist/{chunk-rrz2ry81.js → chunk-8m3m5hcf.js} +2 -2
- package/dist/{chunk-rrz2ry81.js.map → chunk-8m3m5hcf.js.map} +1 -1
- package/dist/{chunk-aq5zx3vg.js → chunk-8tyw6faf.js} +2 -2
- package/dist/{chunk-aq5zx3vg.js.map → chunk-8tyw6faf.js.map} +1 -1
- package/dist/{chunk-p83cjehh.js → chunk-8z29qvvm.js} +3 -3
- package/dist/{chunk-p83cjehh.js.map → chunk-8z29qvvm.js.map} +1 -1
- package/dist/{chunk-dhq7zv0t.js → chunk-982x8jps.js} +2 -2
- package/dist/{chunk-dhq7zv0t.js.map → chunk-982x8jps.js.map} +1 -1
- package/dist/{chunk-38kjpa6q.js → chunk-98byy5m4.js} +1 -1
- package/dist/{chunk-986eh0n3.js → chunk-9983zmhx.js} +2 -2
- package/dist/{chunk-986eh0n3.js.map → chunk-9983zmhx.js.map} +1 -1
- package/dist/{chunk-r5y2khw4.js → chunk-9f2ps5v2.js} +2 -2
- package/dist/{chunk-r5y2khw4.js.map → chunk-9f2ps5v2.js.map} +1 -1
- package/dist/{chunk-q3e1bqrs.js → chunk-bfj2jafb.js} +3 -3
- package/dist/{chunk-q3e1bqrs.js.map → chunk-bfj2jafb.js.map} +1 -1
- package/dist/{chunk-0vc2akg0.js → chunk-bqxt1she.js} +1 -1
- package/dist/{chunk-159j20yr.js → chunk-bzcfw8qd.js} +2 -2
- package/dist/{chunk-159j20yr.js.map → chunk-bzcfw8qd.js.map} +1 -1
- package/dist/chunk-cn6dteec.js +6 -0
- package/dist/{chunk-vp6t1gmt.js.map → chunk-cn6dteec.js.map} +2 -2
- package/dist/{chunk-x82f3q6a.js → chunk-cq16azbw.js} +4 -4
- package/dist/{chunk-x82f3q6a.js.map → chunk-cq16azbw.js.map} +1 -1
- package/dist/{chunk-72f6pbap.js → chunk-csvffxjh.js} +2 -2
- package/dist/{chunk-72f6pbap.js.map → chunk-csvffxjh.js.map} +1 -1
- package/dist/chunk-ctrmztan.js +4 -0
- package/dist/{chunk-42646nt7.js.map → chunk-ctrmztan.js.map} +2 -2
- package/dist/chunk-cxz7wycm.js +10 -0
- package/dist/{chunk-set6qmjw.js.map → chunk-cxz7wycm.js.map} +3 -3
- package/dist/{chunk-4t2j3zcg.js → chunk-d249m2ct.js} +2 -2
- package/dist/{chunk-4t2j3zcg.js.map → chunk-d249m2ct.js.map} +2 -2
- package/dist/{chunk-p2c72zx3.js → chunk-d3195ypx.js} +2 -2
- package/dist/{chunk-p2c72zx3.js.map → chunk-d3195ypx.js.map} +1 -1
- package/dist/{chunk-h3gcxf2k.js → chunk-day21sfa.js} +3 -3
- package/dist/{chunk-h3gcxf2k.js.map → chunk-day21sfa.js.map} +1 -1
- package/dist/{chunk-78wht1ph.js → chunk-egwz89ze.js} +2 -2
- package/dist/{chunk-k1aw97dm.js.map → chunk-egwz89ze.js.map} +1 -1
- package/dist/chunk-fcjjd162.js +4 -0
- package/dist/{chunk-jrv31jp9.js.map → chunk-fcjjd162.js.map} +2 -2
- package/dist/{chunk-rtv4ax8z.js → chunk-g71ppv6x.js} +2 -2
- package/dist/{chunk-rtv4ax8z.js.map → chunk-g71ppv6x.js.map} +1 -1
- package/dist/{chunk-56a3vnrj.js → chunk-gmeeyg19.js} +3 -3
- package/dist/{chunk-56a3vnrj.js.map → chunk-gmeeyg19.js.map} +1 -1
- package/dist/chunk-htbvkr11.js +41 -0
- package/dist/chunk-htbvkr11.js.map +28 -0
- package/dist/{chunk-ctrae98c.js → chunk-hxe06cgw.js} +2 -2
- package/dist/{chunk-ctrae98c.js.map → chunk-hxe06cgw.js.map} +1 -1
- package/dist/{chunk-yzsyg1f7.js → chunk-j144nwvh.js} +3 -3
- package/dist/{chunk-yzsyg1f7.js.map → chunk-j144nwvh.js.map} +1 -1
- package/dist/{chunk-q7k2hc45.js → chunk-jarsydtr.js} +3 -3
- package/dist/{chunk-q7k2hc45.js.map → chunk-jarsydtr.js.map} +1 -1
- package/dist/chunk-jx1crzgg.js +117 -0
- package/dist/{chunk-t66ex43f.js.map → chunk-jx1crzgg.js.map} +10 -9
- package/dist/chunk-k43m5dvs.js +4 -0
- package/dist/{chunk-69c2s43a.js.map → chunk-k43m5dvs.js.map} +2 -2
- package/dist/chunk-kan3yz82.js +5 -0
- package/dist/{chunk-3t4nw1n2.js.map → chunk-kan3yz82.js.map} +2 -2
- package/dist/{chunk-ah2jy1vx.js → chunk-m4pkbndk.js} +2 -2
- package/dist/{chunk-ah2jy1vx.js.map → chunk-m4pkbndk.js.map} +1 -1
- package/dist/{chunk-fe12f946.js → chunk-m73mjzeh.js} +2 -2
- package/dist/{chunk-fe12f946.js.map → chunk-m73mjzeh.js.map} +1 -1
- package/dist/{chunk-9gt9qdge.js → chunk-m8a80sgn.js} +1 -1
- package/dist/{chunk-px3ctjxh.js → chunk-msxhf3m6.js} +2 -2
- package/dist/{chunk-px3ctjxh.js.map → chunk-msxhf3m6.js.map} +1 -1
- package/dist/chunk-p6nkfcn1.js +5 -0
- package/dist/{chunk-kwc68y45.js.map → chunk-p6nkfcn1.js.map} +2 -2
- package/dist/{chunk-ss3yn4g2.js → chunk-p9syxzxh.js} +3 -3
- package/dist/{chunk-ss3yn4g2.js.map → chunk-p9syxzxh.js.map} +1 -1
- package/dist/{chunk-yewj83ez.js → chunk-pyyhmeg1.js} +3 -3
- package/dist/{chunk-yewj83ez.js.map → chunk-pyyhmeg1.js.map} +1 -1
- package/dist/{chunk-nvhbkqmd.js → chunk-qbsk0jr8.js} +2 -2
- package/dist/{chunk-nvhbkqmd.js.map → chunk-qbsk0jr8.js.map} +1 -1
- package/dist/{chunk-g5d62d1n.js → chunk-qsbtqh47.js} +2 -2
- package/dist/{chunk-g5d62d1n.js.map → chunk-qsbtqh47.js.map} +1 -1
- package/dist/{chunk-wnjvfmqc.js → chunk-qz9n2e59.js} +3 -3
- package/dist/{chunk-wnjvfmqc.js.map → chunk-qz9n2e59.js.map} +1 -1
- package/dist/{chunk-qbvm5q1g.js → chunk-rq3wrwfa.js} +1 -1
- package/dist/{chunk-8eyxj78g.js → chunk-ryq2ezgt.js} +3 -3
- package/dist/{chunk-8eyxj78g.js.map → chunk-ryq2ezgt.js.map} +1 -1
- package/dist/{chunk-v10xzpqs.js → chunk-s0xwqcrf.js} +2 -2
- package/dist/{chunk-v10xzpqs.js.map → chunk-s0xwqcrf.js.map} +1 -1
- package/dist/{chunk-kbdt84xg.js → chunk-szdbsmq7.js} +2 -2
- package/dist/{chunk-kbdt84xg.js.map → chunk-szdbsmq7.js.map} +1 -1
- package/dist/{chunk-n95dppzm.js → chunk-tsbxdz4h.js} +2 -2
- package/dist/{chunk-n95dppzm.js.map → chunk-tsbxdz4h.js.map} +1 -1
- package/dist/chunk-v0gjdknx.js +4 -0
- package/dist/{chunk-7426gfgw.js.map → chunk-v0gjdknx.js.map} +2 -2
- package/dist/chunk-v8fx4vgq.js +4 -0
- package/dist/{chunk-zfbqgzwa.js.map → chunk-v8fx4vgq.js.map} +2 -2
- package/dist/{chunk-dce3w52r.js → chunk-vb73ddwz.js} +3 -3
- package/dist/{chunk-dce3w52r.js.map → chunk-vb73ddwz.js.map} +1 -1
- package/dist/{chunk-xyyq577r.js → chunk-w0rfypzx.js} +2 -2
- package/dist/{chunk-xyyq577r.js.map → chunk-w0rfypzx.js.map} +1 -1
- package/dist/{chunk-tr8se94g.js → chunk-weyv3zrt.js} +3 -3
- package/dist/{chunk-tr8se94g.js.map → chunk-weyv3zrt.js.map} +1 -1
- package/dist/{chunk-9kyfaeey.js → chunk-wtddr3vs.js} +2 -2
- package/dist/{chunk-9kyfaeey.js.map → chunk-wtddr3vs.js.map} +1 -1
- package/dist/{chunk-tzheb6ak.js → chunk-xp7x27n8.js} +3 -3
- package/dist/{chunk-tzheb6ak.js.map → chunk-xp7x27n8.js.map} +1 -1
- package/dist/{chunk-ycn7w2e9.js → chunk-yzw2tvqq.js} +2 -2
- package/dist/{chunk-ycn7w2e9.js.map → chunk-yzw2tvqq.js.map} +1 -1
- package/dist/{chunk-wbv6218d.js → chunk-zz2n9pa5.js} +3 -3
- package/dist/{chunk-wbv6218d.js.map → chunk-zz2n9pa5.js.map} +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/console/run.js +2 -2
- package/dist/console/run.js.map +1 -1
- package/dist/container/index.js +2 -2
- package/dist/container/index.js.map +1 -1
- package/dist/database/index.js +2 -2
- package/dist/database/index.js.map +1 -1
- package/dist/email/index.js +2 -2
- package/dist/email/index.js.map +1 -1
- package/dist/facades/index.js +2 -2
- package/dist/facades/index.js.map +1 -1
- package/dist/foundation/index.js +2 -2
- package/dist/foundation/index.js.map +1 -1
- package/dist/http/ApiRouter.d.ts.map +1 -1
- package/dist/http/McpRouter.d.ts +203 -6
- package/dist/http/McpRouter.d.ts.map +1 -1
- package/dist/http/index.d.ts +1 -1
- package/dist/http/index.d.ts.map +1 -1
- package/dist/http/index.js +2 -2
- package/dist/http/index.js.map +1 -1
- package/dist/i18n/dictionaryRuntime.js +2 -2
- package/dist/i18n/dictionaryRuntime.js.map +1 -1
- package/dist/i18n/index.js +2 -2
- package/dist/i18n/index.js.map +1 -1
- package/dist/kernel/index.js +2 -2
- package/dist/kernel/index.js.map +1 -1
- package/dist/orm/index.js +2 -2
- package/dist/orm/index.js.map +1 -1
- package/dist/probe/index.d.ts +79 -0
- package/dist/probe/index.d.ts.map +1 -0
- package/dist/probe/index.js +8 -0
- package/dist/probe/index.js.map +10 -0
- package/dist/server/index.js +2 -2
- package/dist/server/index.js.map +1 -1
- package/dist/services/image-optimization/ImageManager.d.ts +3 -0
- package/dist/services/image-optimization/ImageManager.d.ts.map +1 -1
- package/dist/services/image-optimization/config.d.ts +12 -0
- package/dist/services/image-optimization/config.d.ts.map +1 -1
- package/dist/services/image-optimization/fetchSourceImage.d.ts +37 -0
- package/dist/services/image-optimization/fetchSourceImage.d.ts.map +1 -0
- package/dist/services/index.d.ts +1 -1
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +9 -9
- package/dist/services/index.js.map +3 -3
- package/dist/services/mcp/McpRegistry.d.ts.map +1 -1
- package/dist/services/queue/work.js +2 -2
- package/dist/services/queue/work.js.map +1 -1
- package/dist/services/rate-limiter/drivers/RedisRateLimiterDriver.d.ts +95 -13
- package/dist/services/rate-limiter/drivers/RedisRateLimiterDriver.d.ts.map +1 -1
- package/dist/services/router/ApiRouteDispatcher.d.ts +12 -0
- package/dist/services/router/ApiRouteDispatcher.d.ts.map +1 -1
- package/dist/services/router/createFlatApiRoutes.d.ts +10 -0
- package/dist/services/router/createFlatApiRoutes.d.ts.map +1 -1
- package/dist/stats/route-table.js +1 -1
- package/dist/support/index.js +2 -2
- package/dist/support/index.js.map +1 -1
- package/dist/vitest/index.js +1 -1
- package/package.json +2 -1
- package/dist/chunk-3ndc8adc.js +0 -4
- package/dist/chunk-3t4nw1n2.js +0 -5
- package/dist/chunk-42646nt7.js +0 -4
- package/dist/chunk-69c2s43a.js +0 -4
- package/dist/chunk-6np1r9gk.js +0 -5
- package/dist/chunk-7426gfgw.js +0 -4
- package/dist/chunk-7zy6nq9e.js +0 -5
- package/dist/chunk-cmt3jw6j.js +0 -4
- package/dist/chunk-jrv31jp9.js +0 -4
- package/dist/chunk-kwc68y45.js +0 -5
- package/dist/chunk-pw5h5935.js +0 -4
- package/dist/chunk-set6qmjw.js +0 -10
- package/dist/chunk-t66ex43f.js +0 -117
- package/dist/chunk-vp6t1gmt.js +0 -6
- package/dist/chunk-xp5axyb5.js +0 -30
- package/dist/chunk-xp5axyb5.js.map +0 -28
- package/dist/chunk-z7224rhm.js +0 -4
- package/dist/chunk-zfbqgzwa.js +0 -4
- /package/dist/{chunk-9md6acv2.js.map → chunk-57qnqcrp.js.map} +0 -0
- /package/dist/{chunk-5zxxd7qp.js.map → chunk-5qzxyj68.js.map} +0 -0
- /package/dist/{chunk-38kjpa6q.js.map → chunk-98byy5m4.js.map} +0 -0
- /package/dist/{chunk-0vc2akg0.js.map → chunk-bqxt1she.js.map} +0 -0
- /package/dist/{chunk-9gt9qdge.js.map → chunk-m8a80sgn.js.map} +0 -0
- /package/dist/{chunk-qbvm5q1g.js.map → chunk-rq3wrwfa.js.map} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import"./chunk-
|
|
2
|
+
import"./chunk-egwz89ze.js";function R(f,D){let P=new Map;for(let p of[...D.tables].sort())P.set(p,{name:p,columns:[],primaryKey:[],relations:[]});for(let{table:p,...s}of D.columns)P.get(p)?.columns.push(s);for(let{table:p,column:s}of D.primaryKeys)P.get(p)?.primaryKey.push(s);let d=new Map;for(let p of D.foreignKeys){let s=P.get(p.table);if(!s)continue;let M=`${p.table}\x00${p.key}`,q=d.get(M);if(!q)q={name:p.name,columns:[],referencedTable:p.referencedTable,referencedColumns:[],onDelete:p.onDelete,onUpdate:p.onUpdate},d.set(M,q),s.relations.push(q);q.columns.push(p.column),q.referencedColumns.push(p.referencedColumn)}return{dialect:f,tables:[...P.values()]}}async function h(f,D){let P=await f.unsafe(`
|
|
3
3
|
select TABLE_NAME as name
|
|
4
4
|
from information_schema.TABLES
|
|
5
5
|
where TABLE_SCHEMA = database() and TABLE_TYPE = 'BASE TABLE'
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
function v(j){return Object.freeze({name:j})}class T extends Error{key;constructor(j){super(`Request state "${j.name}" is not set. Check that whatever sets it (a middleware, \`context()\`) ran for this request.`);this.key=j;this.name="MissingRequestStateError"}}class K{#j=new Map;get(j){return this.#j.get(j)}require(j){if(!this.#j.has(j))throw new T(j);return this.#j.get(j)}set(j,J){return this.#j.set(j,J),J}has(j){return this.#j.has(j)}delete(j){return this.#j.delete(j)}static carry(j,J){for(let[Q,V]of j.#j)if(!J.#j.has(Q))J.#j.set(Q,V)}}function P(){for(let j of["HOST_NAME","APP_URL"]){let J=process.env[j]?.trim().replace(/\/+$/,"");if(J)return J}return}function g(j){let J=P(),Q=J===void 0?"fallback":J===process.env.HOST_NAME?.trim().replace(/\/+$/,"")?"HOST_NAME":"APP_URL",V=J??j?.trim().replace(/\/+$/,"");if(!V)throw Error("The app's public origin is not configured: set HOST_NAME (or APP_URL), e.g. HOST_NAME=https://example.com.");let $=URL.canParse(V)?new URL(V).protocol:null;if($!=="http:"&&$!=="https:")throw Error(`The app's public origin from ${Q} (${JSON.stringify(V)}) is not an absolute http(s) URL, e.g. https://example.com.`);return V}import{AsyncLocalStorage as y}from"async_hooks";var C=new Set(["woff2","woff","truetype","opentype","collection","embedded-opentype","svg"]),S={woff2:"woff2",woff:"woff",ttf:"truetype",otf:"opentype",ttc:"collection",eot:"embedded-opentype",svg:"svg"};var I=new Set(["auto","block","swap","fallback","optional"]),w=/^[a-zA-Z0-9.%+\- ]+$/,R=/^[uU]\+[0-9a-fA-F?]{1,6}(-[0-9a-fA-F]{1,6})?(\s*,\s*[uU]\+[0-9a-fA-F?]{1,6}(-[0-9a-fA-F]{1,6})?)*$/;function G(j){throw TypeError(`Meta.fonts: ${j}`)}function q(j){let J=(j.split(/[?#]/)[0]??"").split("/").pop()??"",Q=J.lastIndexOf(".");return Q===-1?null:S[J.slice(Q+1).toLowerCase()]??null}function U(j,J){if(J===void 0||J===null)return null;let Q=String(J).trim();if(!Q||!w.test(Q))G(`${j} ${JSON.stringify(J)} is not a valid font-${j} value`);return Q}function W(j){if(!Array.isArray(j))G("expected an array of fonts");return j.map((J)=>{if(typeof J?.family!=="string"||!J.family.trim())G("every font needs a family");let Q=typeof J.src==="string"?[{url:J.src}]:J.src;if(!Array.isArray(Q)||Q.length===0)G(`font "${J.family}" needs a src`);let V=Q.map((Z)=>{if(typeof Z?.url!=="string"||!Z.url.trim())G(`font "${J.family}" has a source without a url`);if(Z.format!==void 0&&!C.has(Z.format))G(`font "${J.family}" has an unknown format ${JSON.stringify(Z.format)}`);return{url:Z.url.trim(),format:Z.format??q(Z.url)}}),$=J.display??"swap";if(!I.has($))G(`display ${JSON.stringify($)} is not a valid font-display value`);let X=J.unicodeRange?.trim()||null;if(X&&!R.test(X))G(`unicodeRange ${JSON.stringify(J.unicodeRange)} is not a valid unicode-range`);return{family:J.family.trim(),src:V,weight:U("weight",J.weight),style:U("style",J.style),stretch:U("stretch",J.stretch),display:$,unicodeRange:X,preload:J.preload===!0}})}class Y{content={title:"Gemi App",description:null,openGraph:null,htmlAttributes:null,canonical:null,alternates:null,fonts:null,robots:null};touched=!1;render(){return{title:this.content.title,description:this.content.description,openGraph:this.content.openGraph,htmlAttributes:this.content.htmlAttributes,canonical:this.content.canonical,alternates:this.content.alternates,fonts:this.content.fonts,robots:this.content.robots}}htmlAttributes(j){this.touched=!0;let J=Object.fromEntries(Object.entries(j).filter(([,Q])=>Q!==void 0));this.content.htmlAttributes={...this.content.htmlAttributes,...J}}canonical(j){this.touched=!0,this.content.canonical=j}robots(j){this.touched=!0,this.content.robots=j}alternates(j){this.touched=!0,this.content.alternates=j}fonts(j){let J=W(j);this.touched=!0,this.content.fonts=[...this.content.fonts??[],...J]}title(j){this.touched=!0,this.content.title=j}description(j){this.touched=!0,this.content.description=j}openGraph({title:j,description:J,type:Q,url:V,image:$,imageAlt:X,imageWidth:Z,imageHeight:D,twitterImage:H=$,twitterImageAlt:E=X,twitterImageWidth:b=Z,twitterImageHeight:x=D,twitterCard:A=H?"summary_large_image":"summary"}){this.touched=!0;let N=(z)=>z&&!z.startsWith("http")?`${P()}${z}`:z;this.content.openGraph=Object.fromEntries(Object.entries({title:j,description:J,type:Q,url:V,image:N($),imageAlt:X,imageWidth:Z,imageHeight:D,twitterImage:N(H),twitterImageAlt:E,twitterImageWidth:b,twitterImageHeight:x,twitterCard:A}).filter(([z,O])=>O!==void 0))}}function F(j,J,Q={}){return[`${j}=${J}`,Q.maxAge?`Max-Age=${Q.maxAge}`:"",Q.httpOnly?"HttpOnly":"",Q.secure?"Secure":"",Q.sameSite?`SameSite=${Q.sameSite}`:"SameSite=Strict",Q.path?`Path=${Q.path}`:"Path=/",Q.domain?`Domain=${Q.domain}`:"",Q.expires?`Expires=${Q.expires.toUTCString()}`:"",Q.partitioned?"Partitioned":""].filter((V)=>V!=="").join("; ")}var B=new y;class M{req;cookies=new Set;headers=new Headers;serverQueries=null;user=null;csrfHmac=null;locale=null;metadata=new Y;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 J=Promise.resolve(j).then(()=>{},()=>{});this.pendingWork.add(J),J.then(()=>this.pendingWork.delete(J))}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,J,Q={}){this.cookies.add(F(j,J,Q))}deleteCookie(j,J={}){this.cookies.add(F(j,"",{...J,maxAge:-1}))}setHeaders(j,J){this.headers.set(j,J)}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 _="session_id";function k(){let j=L.getStore();if(!j)return null;if(j.sessionId)return j.sessionId;let J=j.req?.cookies?.get(_);if(J)j.sessionId=J;return j.sessionId}function a(){let j=L.getStore();if(!j)return null;let J=k();if(J)return J;let Q=Bun.randomUUIDv7();return j.sessionId=Q,j.setCookie(_,Q,{httpOnly:!0,secure:Bun.env.NODE_ENV==="production",sameSite:"Lax",expires:new Date(Date.now()+31536000000)}),Q}class L{static getStore(){return B.getStore()}static setRequest(j){B.getStore().req=j}static run(j,J,Q){let V=new M(j);if(Q){if(V.user=Q.user,Q.state&&j.state)K.carry(Q.state,j.state)}return B.run(V,J)}static runWith(j,J){return B.run(j,J)}static exit(j){return B.exit(j)}}
|
|
3
|
-
export{P as
|
|
3
|
+
export{P as Ri,g as Si,v as Ti,T as Ui,K as Vi,k as Wi,a as Xi,L as Yi};
|
|
4
4
|
|
|
5
|
-
//# debugId=
|
|
5
|
+
//# debugId=5F3A097945ADA26364756E2164756E21
|
|
@@ -9,6 +9,6 @@
|
|
|
9
9
|
"import { type MetaFont, type NormalizedFont, normalizeFonts } from \"../client/fonts\";\nimport { configuredAppOrigin } from \"../utils/appOrigin\";\n\nexport type { MetaFont };\n\nexport type OpenGraphParams = {\n title: string;\n description?: string;\n type: string;\n url: string;\n /** Rendered as `og:image` only when set. A path is prefixed with the app origin. */\n image?: string;\n imageAlt?: string;\n imageWidth?: number;\n imageHeight?: number;\n twitterImage?: string;\n twitterImageAlt?: string;\n twitterImageWidth?: number;\n twitterImageHeight?: number;\n /**\n * The `twitter:card` type. Defaults to `\"summary_large_image\"` when the page\n * has an image (`twitterImage ?? image`), `\"summary\"` otherwise.\n */\n twitterCard?: \"summary\" | \"summary_large_image\";\n};\n/**\n * Attributes for the document's `<html>` element, handed to the root (or a\n * static view's) layout as its `htmlAttributes` prop.\n */\nexport type HtmlAttributes = {\n /** The document's language, e.g. `\"tr\"`. Defaults to the request's locale. */\n lang?: string;\n /** Text direction. Defaults to the one `lang` is written in. */\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n};\n\n/** One `<link rel=\"alternate\" hreflang>`: the same page in another language. */\nexport type AlternateLink = {\n /** A BCP 47 tag, or `\"x-default\"` for the page to use when none matches. */\n hrefLang: string;\n href: string;\n};\n\nexport class Metadata {\n content: any = {\n title: \"Gemi App\",\n description: null,\n openGraph: null,\n htmlAttributes: null,\n canonical: null,\n alternates: null,\n fonts: null,\n robots: null,\n };\n\n /**\n * Whether a handler set anything, as opposed to `content` still being the\n * defaults. A partially rendered response that touched no metadata sends\n * none, so the client keeps what the skipped segments put there.\n */\n touched = false;\n\n render() {\n return {\n title: this.content.title,\n description: this.content.description,\n openGraph: this.content.openGraph,\n htmlAttributes: this.content.htmlAttributes,\n canonical: this.content.canonical,\n alternates: this.content.alternates,\n fonts: this.content.fonts,\n robots: this.content.robots,\n };\n }\n\n /** Merged into what earlier calls set; `undefined` leaves an attribute alone. */\n htmlAttributes(attributes: HtmlAttributes) {\n this.touched = true;\n const defined = Object.fromEntries(\n Object.entries(attributes).filter(([, value]) => value !== undefined),\n );\n this.content.htmlAttributes = { ...this.content.htmlAttributes, ...defined };\n }\n\n canonical(url: string) {\n this.touched = true;\n this.content.canonical = url;\n }\n\n /** `<meta name=\"robots\">`'s content, e.g. `\"noindex, nofollow\"`; the last call wins. */\n robots(content: string) {\n this.touched = true;\n this.content.robots = content;\n }\n\n alternates(links: AlternateLink[]) {\n this.touched = true;\n this.content.alternates = links;\n }\n\n /** Added to what earlier calls declared, so a layout and its page can both declare fonts. */\n fonts(fonts: MetaFont[]) {\n const normalized: NormalizedFont[] = normalizeFonts(fonts);\n this.touched = true;\n this.content.fonts = [...(this.content.fonts ?? []), ...normalized];\n }\n\n title(title: string) {\n this.touched = true;\n this.content.title = title;\n }\n\n description(description: string) {\n this.touched = true;\n this.content.description = description;\n }\n\n openGraph({\n title,\n description,\n type,\n url,\n image,\n imageAlt,\n imageWidth,\n imageHeight,\n twitterImage = image,\n twitterImageAlt = imageAlt,\n twitterImageWidth = imageWidth,\n twitterImageHeight = imageHeight,\n twitterCard = twitterImage ? \"summary_large_image\" : \"summary\",\n }: OpenGraphParams) {\n this.touched = true;\n const absolute = (src: string | undefined) =>\n src && !src.startsWith(\"http\") ? `${configuredAppOrigin()}${src}` : src;\n this.content.openGraph = Object.fromEntries(\n Object.entries({\n title,\n description,\n type,\n url,\n image: absolute(image),\n imageAlt,\n imageWidth,\n imageHeight,\n twitterImage: absolute(twitterImage),\n twitterImageAlt,\n twitterImageWidth,\n twitterImageHeight,\n twitterCard,\n }).filter(([_, value]) => value !== undefined),\n );\n }\n}\n"
|
|
10
10
|
],
|
|
11
11
|
"mappings": ";AAkCO,SAAS,CAAW,CAAC,EAA2B,CACrD,OAAO,OAAO,OAAO,CAAE,MAAK,CAAC,EAIxB,MAAM,UAAiC,KAAM,CACtB,IAA5B,WAAW,CAAiB,EAAwB,CAClD,MACE,kBAAkB,EAAI,mGAExB,EAJ0B,WAK1B,KAAK,KAAO,2BAEhB,CAEO,MAAM,CAAa,CACxB,GAAU,IAAI,IAGd,GAAM,CAAC,EAAiC,CACtC,OAAO,KAAK,GAAQ,IAAI,CAAG,EAI7B,OAAU,CAAC,EAAqB,CAC9B,GAAI,CAAC,KAAK,GAAQ,IAAI,CAAG,EACvB,MAAM,IAAI,EAAyB,CAAG,EAExC,OAAO,KAAK,GAAQ,IAAI,CAAG,EAI7B,GAAM,CAAC,EAAkB,EAAsB,CAE7C,OADA,KAAK,GAAQ,IAAI,EAAK,CAAK,EACpB,EAGT,GAAG,CAAC,EAA6B,CAC/B,OAAO,KAAK,GAAQ,IAAI,CAAG,EAG7B,MAAM,CAAC,EAA6B,CAClC,OAAO,KAAK,GAAQ,OAAO,CAAG,QAQzB,MAAK,CAAC,EAAoB,EAAkB,CACjD,QAAY,EAAK,KAAU,EAAK,GAC9B,GAAI,CAAC,EAAG,GAAQ,IAAI,CAAG,EACrB,EAAG,GAAQ,IAAI,EAAK,CAAK,EAIjC,CChFO,SAAS,CAAmB,EAAuB,CACxD,QAAW,IAAQ,CAAC,YAAa,SAAS,EAAY,CACpD,IAAM,EAAQ,QAAQ,IAAI,IAAO,KAAK,EAAE,QAAQ,OAAQ,EAAE,EAC1D,GAAI,EACF,OAAO,EAGX,OAQK,SAAS,CAAS,CAAC,EAA2B,CACnD,IAAM,EAAa,EAAoB,EACjC,EAAS,IAAe,OAAY,WAAa,IAAe,QAAQ,IAAI,WAAW,KAAK,EAAE,QAAQ,OAAQ,EAAE,EAAI,YAAc,UAClI,EAAQ,GAAc,GAAU,KAAK,EAAE,QAAQ,OAAQ,EAAE,EAC/D,GAAI,CAAC,EACH,MAAU,MACR,4GACF,EAEF,IAAM,EAAW,IAAI,SAAS,CAAK,EAAI,IAAI,IAAI,CAAK,EAAE,SAAW,KACjE,GAAI,IAAa,SAAW,IAAa,SACvC,MAAU,MACR,gCAAgC,MAAW,KAAK,UAAU,CAAK,8DACjE,EAEF,OAAO,ECzCT,4BAAS,oBC4DT,IAAM,EAAU,IAAI,IAAgB,CAClC,QACA,OACA,WACA,WACA,aACA,oBACA,KACF,CAAC,EAEK,EAAkD,CACtD,MAAO,QACP,KAAM,OACN,IAAK,WACL,IAAK,WACL,IAAK,aACL,IAAK,oBACL,IAAK,KACP,EAUA,IAAM,EAAW,IAAI,IAAI,CAAC,OAAQ,QAAS,OAAQ,WAAY,UAAU,CAAC,EAIpE,EAAa,uBACb,EAAgB,qGAEtB,SAAS,CAAO,CAAC,EAAwB,CACvC,MAAU,UAAU,eAAe,GAAS,EAIvC,SAAS,CAAY,CAAC,EAAgC,CAC3D,IAAM,GAAQ,EAAI,MAAM,MAAM,EAAE,IAAM,IAAI,MAAM,GAAG,EAAE,IAAI,GAAK,GACxD,EAAM,EAAK,YAAY,GAAG,EAChC,OAAO,IAAQ,GAAK,KAAQ,EAAoB,EAAK,MAAM,EAAM,CAAC,EAAE,YAAY,IAAM,KAGxF,SAAS,CAAU,CAAC,EAAc,EAAmD,CACnF,GAAI,IAAU,QAAa,IAAU,KAAM,OAAO,KAClD,IAAM,EAAO,OAAO,CAAK,EAAE,KAAK,EAChC,GAAI,CAAC,GAAQ,CAAC,EAAW,KAAK,CAAI,EAChC,EAAQ,GAAG,KAAQ,KAAK,UAAU,CAAK,yBAAyB,SAAY,EAE9E,OAAO,EAIF,SAAS,CAAc,CAAC,EAAqC,CAClE,GAAI,CAAC,MAAM,QAAQ,CAAK,EAAG,EAAQ,4BAA4B,EAC/D,OAAO,EAAM,IAAI,CAAC,IAAS,CACzB,GAAI,OAAO,GAAM,SAAW,UAAY,CAAC,EAAK,OAAO,KAAK,EACxD,EAAQ,2BAA2B,EAErC,IAAM,EAAU,OAAO,EAAK,MAAQ,SAAW,CAAC,CAAE,IAAK,EAAK,GAAI,CAAC,EAAI,EAAK,IAC1E,GAAI,CAAC,MAAM,QAAQ,CAAO,GAAK,EAAQ,SAAW,EAChD,EAAQ,SAAS,EAAK,qBAAqB,EAE7C,IAAM,EAAM,EAAQ,IAAI,CAAC,IAAW,CAClC,GAAI,OAAO,GAAQ,MAAQ,UAAY,CAAC,EAAO,IAAI,KAAK,EACtD,EAAQ,SAAS,EAAK,oCAAoC,EAE5D,GAAI,EAAO,SAAW,QAAa,CAAC,EAAQ,IAAI,EAAO,MAAM,EAC3D,EAAQ,SAAS,EAAK,iCAAiC,KAAK,UAAU,EAAO,MAAM,GAAG,EAExF,MAAO,CAAE,IAAK,EAAO,IAAI,KAAK,EAAG,OAAQ,EAAO,QAAU,EAAa,EAAO,GAAG,CAAE,EACpF,EACK,EAAU,EAAK,SAAW,OAChC,GAAI,CAAC,EAAS,IAAI,CAAO,EACvB,EAAQ,WAAW,KAAK,UAAU,CAAO,qCAAqC,EAEhF,IAAM,EAAe,EAAK,cAAc,KAAK,GAAK,KAClD,GAAI,GAAgB,CAAC,EAAc,KAAK,CAAY,EAClD,EAAQ,gBAAgB,KAAK,UAAU,EAAK,YAAY,gCAAgC,EAE1F,MAAO,CACL,OAAQ,EAAK,OAAO,KAAK,EACzB,MACA,OAAQ,EAAW,SAAU,EAAK,MAAM,EACxC,MAAO,EAAW,QAAS,EAAK,KAAK,EACrC,QAAS,EAAW,UAAW,EAAK,OAAO,EAC3C,UACA,eACA,QAAS,EAAK,UAAY,EAC5B,EACD,EC9GI,MAAM,CAAS,CACpB,QAAe,CACb,MAAO,WACP,YAAa,KACb,UAAW,KACX,eAAgB,KAChB,UAAW,KACX,WAAY,KACZ,MAAO,KACP,OAAQ,IACV,EAOA,QAAU,GAEV,MAAM,EAAG,CACP,MAAO,CACL,MAAO,KAAK,QAAQ,MACpB,YAAa,KAAK,QAAQ,YAC1B,UAAW,KAAK,QAAQ,UACxB,eAAgB,KAAK,QAAQ,eAC7B,UAAW,KAAK,QAAQ,UACxB,WAAY,KAAK,QAAQ,WACzB,MAAO,KAAK,QAAQ,MACpB,OAAQ,KAAK,QAAQ,MACvB,EAIF,cAAc,CAAC,EAA4B,CACzC,KAAK,QAAU,GACf,IAAM,EAAU,OAAO,YACrB,OAAO,QAAQ,CAAU,EAAE,OAAO,GAAI,KAAW,IAAU,MAAS,CACtE,EACA,KAAK,QAAQ,eAAiB,IAAK,KAAK,QAAQ,kBAAmB,CAAQ,EAG7E,SAAS,CAAC,EAAa,CACrB,KAAK,QAAU,GACf,KAAK,QAAQ,UAAY,EAI3B,MAAM,CAAC,EAAiB,CACtB,KAAK,QAAU,GACf,KAAK,QAAQ,OAAS,EAGxB,UAAU,CAAC,EAAwB,CACjC,KAAK,QAAU,GACf,KAAK,QAAQ,WAAa,EAI5B,KAAK,CAAC,EAAmB,CACvB,IAAM,EAA+B,EAAe,CAAK,EACzD,KAAK,QAAU,GACf,KAAK,QAAQ,MAAQ,CAAC,GAAI,KAAK,QAAQ,OAAS,CAAC,EAAI,GAAG,CAAU,EAGpE,KAAK,CAAC,EAAe,CACnB,KAAK,QAAU,GACf,KAAK,QAAQ,MAAQ,EAGvB,WAAW,CAAC,EAAqB,CAC/B,KAAK,QAAU,GACf,KAAK,QAAQ,YAAc,EAG7B,SAAS,EACP,QACA,cACA,OACA,MACA,QACA,WACA,aACA,cACA,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EAAe,sBAAwB,WACnC,CAClB,KAAK,QAAU,GACf,IAAM,EAAW,CAAC,IAChB,GAAO,CAAC,EAAI,WAAW,MAAM,EAAI,GAAG,EAAoB,IAAI,IAAQ,EACtE,KAAK,QAAQ,UAAY,OAAO,YAC9B,OAAO,QAAQ,CACb,QACA,cACA,OACA,MACA,MAAO,EAAS,CAAK,EACrB,WACA,aACA,cACA,aAAc,EAAS,CAAY,EACnC,kBACA,oBACA,qBACA,aACF,CAAC,EAAE,OAAO,EAAE,EAAG,KAAW,IAAU,MAAS,CAC/C,EAEJ,CFrIO,SAAS,CAAY,CAC1B,EACA,EACA,EAA+B,CAAC,EAChC,CACA,MAAO,CACL,GAAG,KAAQ,IACX,EAAQ,OAAS,WAAW,EAAQ,SAAW,GAC/C,EAAQ,SAAW,WAAa,GAChC,EAAQ,OAAS,SAAW,GAC5B,EAAQ,SAAW,YAAY,EAAQ,WAAa,kBACpD,EAAQ,KAAO,QAAQ,EAAQ,OAAS,SACxC,EAAQ,OAAS,UAAU,EAAQ,SAAW,GAC9C,EAAQ,QAAU,WAAW,EAAQ,QAAQ,YAAY,IAAM,GAC/D,EAAQ,YAAc,cAAgB,EACxC,EACG,OAAO,CAAC,IAAM,IAAM,EAAE,EACtB,KAAK,IAAI,EAGd,IAAM,EAAiB,IAAI,EAY3B,MAAM,CAAM,CA0DS,IAzDnB,QAAuB,IAAI,IAC3B,QAAmB,IAAI,QAMvB,cAAyC,KACzC,KAAY,KACZ,SAA0B,KAC1B,OAAwB,KACxB,SAAW,IAAI,EAUf,aAAiC,KAWjC,UAA2B,KAW3B,mBAAkD,KAElD,eAA0B,KAE1B,eAA6C,KAO7C,YAAc,IAAI,IAClB,MAAQ,GAER,WAAW,CAAQ,EAAkB,CAAlB,WAenB,SAAS,CAAC,EAA4B,CACpC,GAAI,KAAK,MACP,OAEF,IAAM,EAAU,QAAQ,QAAQ,CAAI,EAAE,KACpC,IAAM,GACN,IAAM,EACR,EACA,KAAK,YAAY,IAAI,CAAO,EACvB,EAAQ,KAAK,IAAM,KAAK,YAAY,OAAO,CAAO,CAAC,EAI1D,cAAc,EAAG,CACf,OAAO,KAAK,YAAY,KAAO,OAO3B,SAAQ,EAAG,CACf,MAAO,KAAK,YAAY,KAAO,EAC7B,MAAM,QAAQ,IAAI,MAAM,KAAK,KAAK,WAAW,CAAC,EAIlD,SAAS,CAAC,EAAgB,CACxB,KAAK,OAAS,EAGhB,UAAU,EAAG,CACX,OAAO,KAAK,SAAS,OAAO,EAG9B,WAAW,CAAC,EAAc,CACxB,KAAK,SAAW,EAGlB,SAAS,CAAC,EAAc,EAAe,EAA+B,CAAC,EAAG,CACxE,KAAK,QAAQ,IAAI,EAAa,EAAM,EAAO,CAAO,CAAC,EAOrD,YAAY,CAAC,EAAc,EAAwD,CAAC,EAAG,CACrF,KAAK,QAAQ,IAAI,EAAa,EAAM,GAAI,IAAK,EAAS,OAAQ,EAAG,CAAC,CAAC,EAGrE,UAAU,CAAC,EAAc,EAAe,CACtC,KAAK,QAAQ,IAAI,EAAM,CAAK,EAG9B,OAAO,CAAC,EAAW,CACjB,KAAK,KAAO,EAGd,UAAU,CAAC,EAA4B,CACrC,KAAK,IAAM,EAGb,OAAO,EAAG,CACR,KAAK,MAAQ,GACb,OAAO,KAAK,QACZ,OAAO,KAAK,QACZ,KAAK,cAAgB,KACrB,KAAK,UAAY,KACjB,KAAK,mBAAqB,KAC1B,KAAK,eAAiB,KACtB,KAAK,eAAiB,KACtB,OAAO,KAAK,KAEhB,CAEO,IAAM,EAAoB,aAsB1B,SAAS,CAAS,EAAkB,CACzC,IAAM,EAAQ,EAAe,SAAS,EACtC,GAAI,CAAC,EACH,OAAO,KAET,GAAI,EAAM,UACR,OAAO,EAAM,UAEf,IAAM,EAAO,EAAM,KAAK,SAAS,IAAI,CAAiB,EACtD,GAAI,EACF,EAAM,UAAY,EAEpB,OAAO,EAAM,UAaR,SAAS,CAAe,EAAkB,CAC/C,IAAM,EAAQ,EAAe,SAAS,EACtC,GAAI,CAAC,EACH,OAAO,KAET,IAAM,EAAW,EAAU,EAC3B,GAAI,EACF,OAAO,EAGT,IAAM,EAAS,IAAI,aAAa,EAehC,OAdA,EAAM,UAAY,EAClB,EAAM,UAAU,EAAmB,EAAQ,CACzC,SAAU,GACV,OAAQ,mBAAyB,aAQjC,SAAU,MACV,QAAS,IAAI,KAAK,KAAK,IAAI,EAAI,WAAyB,CAC1D,CAAC,EACM,EAGF,MAAM,CAAe,OACnB,SAAQ,EAAG,CAChB,OAAO,EAAe,SAAS,QAG1B,WAAU,CAAC,EAA4B,CAC5C,EAAe,SAAS,EAAE,IAAM,QAO3B,IAAM,CACX,EACA,EACA,EACG,CACH,IAAM,EAAQ,IAAI,EAAM,CAAW,EACnC,GAAI,GAEF,GADA,EAAM,KAAO,EAAQ,KACjB,EAAQ,OAAS,EAAY,MAC/B,EAAa,MAAM,EAAQ,MAAO,EAAY,KAAK,EAGvD,OAAO,EAAe,IAAI,EAAO,CAAE,QAU9B,QAAU,CAAC,EAAc,EAAgB,CAC9C,OAAO,EAAe,IAAI,EAAO,CAAE,QAQ9B,KAAO,CAAC,EAAgB,CAC7B,OAAO,EAAe,KAAK,CAAE,EAEjC",
|
|
12
|
-
"debugId": "
|
|
12
|
+
"debugId": "5F3A097945ADA26364756E2164756E21",
|
|
13
13
|
"names": []
|
|
14
14
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{Ba as y}from"./chunk-kk18xqgc.js";import{createElement as k}from"react";function z(i,n){let p=Object.keys(n).sort((s,e)=>e.length-s.length).map((s)=>s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")),b=new RegExp(p.join("|"),"g");return i.replace(b,(s)=>n[s])}async function L(i,n,p=[],b){let s=[...p.map((t)=>`${i}/views/${t}.tsx`),b?`${i}/views/${b}.tsx`:`${i}/views/RootLayout.tsx`],e=new Set;for(let t of s){let u=n.moduleGraph.getModulesByFile(t);if(u)for(let l of u)e.add(l)}let g=[],x=[],r={};for(let t of e)if(t)for(let u of t.importedModules){if(u.file.includes("module.css"))r[u.file]=u.ssrTransformResult.map.sourcesContent.join("");if(u.file.includes(".css"))x.push(u.file)}for(let t of x){let u=await n.transformRequest(t+"?direct"),l=t.includes("module.css"),v="";if(l)v=z(r[t],u.default);g.push({isDev:!0,id:t,content:l?v:u.code})}return g.map((t,u)=>{return k("style",{key:u,type:"text/css","data-vite-dev-id":t.id,dangerouslySetInnerHTML:{__html:t.content}})})}async function _(i=[]){return i.map((n,p)=>{return k("style",{key:p,id:n?.id,type:"text/css",dangerouslySetInnerHTML:{__html:n.content}})})}import{existsSync as J}from"fs";import{basename as N}from"path";import{networkInterfaces as O}from"os";var q={name:"gemi",version:"0.160.2",private:!1,license:"MIT",author:"Enes Tufekci <enes@gemijs.dev>",repository:{type:"git",url:"git+https://github.com/nstfkc/gemi.git",directory:"packages/gemi"},bin:{gemi:"./dist/bin/gemi.js","gemi-orm-generator":"./dist/bin/orm-generator.js"},files:["dist/**/*","ide/typescript-plugin/package.json","skills/**/*"],module:!0,exports:{"./http":"./http/index.ts","./client":"./client/index.ts","./ai":"./ai/index.ts","./ai/client":"./ai/client/index.ts","./ai/voice":"./ai/voice/index.ts","./testing":"./testing/index.ts","./app":"./app/index.ts","./facades":"./facades/index.ts","./email":"./email/index.ts","./vite":"./dist/vite/index.mjs","./kernel":"./kernel/index.ts","./services":"./services/index.ts","./i18n":"./i18n/index.ts","./dictionary":"./i18n/dictionaryRuntime.ts","./server":"./server/index.ts","./config":"./config/index.ts","./container":"./container/index.ts","./foundation":"./foundation/index.ts","./database":"./database/index.ts","./orm":"./orm/index.ts","./support":"./support/index.ts","./probe":"./probe/index.ts","./console/run":"./console/run.ts","./queue/work":"./services/queue/work.ts","./stats/route-table":"./stats/route-table.ts","./ide/typescript-plugin":"./ide/typescript-plugin/index.ts","./bun/preload":"./bun/preload.ts","./bun/plugin":"./bun/plugin.ts","./vitest":"./vitest/index.ts"},scripts:{lint:"oxlint",typecheck:"tsc --noEmit -p tsconfig.json && tsc --noEmit -p tsconfig.browser.json && tsc --noEmit -p ide/typescript-plugin/tsconfig.json",build:"NODE_ENV=production bun run build:core && bun run build:bin && bun run build:types && bun run build:client && bun run build:plugin && bun run build:ts-plugin && bun run build:client-types && bun run build:augmentation","build:core":"bun ./scripts/build.ts","build:bin":"bun build --outdir=./dist/bin --target=bun --external=vite --external=react-dom --external=react/jsx-runtime --external=bun --external=sharp --external=@azure/storage-blob --external=typescript --sourcemap ./bin/gemi.ts ./bin/orm-generator.ts && bun ./scripts/prepare-bin.ts","build:client":"rm -rf dist/client dist/testing dist/ai/client dist/ai/voice dist/chunks && vite build -c vite.client.config.mts","build:plugin":"vite build -c vite.plugin.config.mts","build:ts-plugin":"bun ./scripts/build-ts-plugin.ts","build:types":"tsc -p tsconfig.build.json","build:client-types":"tsc -p tsconfig.browser.json",test:"bun --bun x vitest","test:types":"vitest run --typecheck.only","test:live":"bun --bun x vitest run ai/live","test:packaging":"bun --bun x vitest run --config vitest.packaging.config.ts","build:publish":"bun scripts/build-publish.ts",prepublishOnly:"echo 'Do not publish from this directory \u2014 its exports point at TS source. Run: bun run build:publish, then publish from .publish/' && exit 1","build:augmentation":"bun ./scripts/wire-augmentation.ts"},dependencies:{"@aws-sdk/client-s3":"^3.629.0","@aws-sdk/s3-request-presigner":"^3.629.0","ast-types":"^0.14.2",commander:"^12.1.0",history:"^5.3.0","jsx-email":"2.0.0-rc2.1","magic-string":"^0.30.17",open:"^10.1.0","react-error-boundary":"^6.0.0",recast:"^0.23.9",resend:"^6.12.3",satori:"^0.12.2","temporal-polyfill":"^0.2.5","twitter-api-v2":"^1.20.2","urlpattern-polyfill":"^10.0.0",uuid:"^9.0.1"},devDependencies:{"@babel/parser":"^7.25.4","@prisma/generator-helper":"^6.5.0","@repo/typescript-config":"*","@testing-library/react":"^16.3.2","@types/bun":"^1.3.14","@types/eslint":"^8.56.5","@types/node":"^20.11.24","@types/react":"^19.0.2","@types/react-dom":"^19.0.2",eslint:"^8.57.0",jsdom:"^30.0.1",oxlint:"^1.39.0",postgres:"^3.4.5",react:"19.2.3","react-dom":"19.2.3",typescript:"^5.7.3",vitest:"^4.0.0"},peerDependencies:{"@azure/storage-blob":"^12.28.0",react:">=19","react-dom":">=19",sharp:"^0.34.2",typescript:">=5",vite:"^8.0.0",postgres:"^3.4.0"},peerDependenciesMeta:{"@azure/storage-blob":{optional:!0},typescript:{optional:!0},postgres:{optional:!0}}};var Q=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2557\u2588\u2588\u2557","\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D \u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2551","\u2588\u2588\u2551 \u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2554\u2588\u2588\u2588\u2588\u2554\u2588\u2588\u2551\u2588\u2588\u2551","\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551\u255A\u2588\u2588\u2554\u255D\u2588\u2588\u2551\u2588\u2588\u2551","\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u255A\u2550\u255D \u2588\u2588\u2551\u2588\u2588\u2551"," \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D"],W=Boolean(process.stdout.isTTY)&&!process.env.NO_COLOR,c=(i,n)=>W?`\x1B[${i}m${n}\x1B[0m`:n,X=(i)=>c("1",i),d=(i)=>c("2",i),j=(i)=>c("36",i),Y=(i)=>c("32",i),Z=(i)=>c("35",i);function $(){return q.version??"?"}function f(i){for(let n of Object.values(O()))for(let p of n??[])if((p.family==="IPv4"||p.family===4)&&!p.internal)return`http://${p.address}:${i}`;return null}function H(i){return y(i).filter((n)=>J(n)).map((n)=>N(n))}function V(i){let{port:n,rootDir:p}=i,b=`http://localhost:${n}`,s=f(n),e=H(p),g=(r,t)=>` ${Y("\u279C")} ${X(r.padEnd(9))}${t}`,x=["",...Q.map((r)=>Z(r)),"",` ${d("gemi")} ${j(`v${$()}`)}`,"",g("Local:",j(b)),g("Network:",s?j(s):d("unavailable")),g("Env:",e.length?e.join(", "):d("none")),""];console.log(x.join(`
|
|
3
|
+
`))}function D(i=process.env.SERVER_IDLE_TIMEOUT){if(i===void 0||i.trim()==="")return 10;let n=Number(i.trim());if(!Number.isInteger(n)||n<0||n>255)throw Error(`SERVER_IDLE_TIMEOUT must be a whole number of seconds from 0 to 255 (0 disables the timeout), got ${JSON.stringify(i)}.`);return n}
|
|
4
|
+
export{L as W,_ as X,V as Y,D as Z};
|
|
5
|
+
|
|
6
|
+
//# debugId=A81FE0CE7BC50E2264756E2164756E21
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"import { existsSync } from \"node:fs\";\nimport { basename } from \"node:path\";\nimport { networkInterfaces } from \"node:os\";\nimport { envFiles } from \"./watchEnv\";\nimport pkg from \"../package.json\";\n\n// \"GEMI\" — ANSI Shadow figlet font.\nconst ART = [\n \" ██████╗ ███████╗███╗ ███╗██╗\",\n \"██╔════╝ ██╔════╝████╗ ████║██║\",\n \"██║ ███╗█████╗ ██╔████╔██║██║\",\n \"██║ ██║██╔══╝ ██║╚██╔╝██║██║\",\n \"╚██████╔╝███████╗██║ ╚═╝ ██║██║\",\n \" ╚═════╝ ╚══════╝╚═╝ ╚═╝╚═╝\",\n];\n\nconst useColor = Boolean(process.stdout.isTTY) && !process.env.NO_COLOR;\nconst paint = (code: string, text: string) =>\n useColor ? `\\x1b[${code}m${text}\\x1b[0m` : text;\nconst bold = (t: string) => paint(\"1\", t);\nconst dim = (t: string) => paint(\"2\", t);\nconst cyan = (t: string) => paint(\"36\", t);\nconst green = (t: string) => paint(\"32\", t);\nconst magenta = (t: string) => paint(\"35\", t);\n\nfunction gemiVersion(): string {\n return (pkg as { version?: string }).version ?? \"?\";\n}\n\nfunction networkUrl(port: number | string): string | null {\n for (const ifaces of Object.values(networkInterfaces())) {\n for (const iface of ifaces ?? []) {\n // Node <18 reported `family` as the number 4; newer Bun/Node use \"IPv4\".\n const isV4 = iface.family === \"IPv4\" || (iface.family as unknown) === 4;\n if (isV4 && !iface.internal) return `http://${iface.address}:${port}`;\n }\n }\n return null;\n}\n\nfunction loadedEnvFiles(rootDir: string): string[] {\n return envFiles(rootDir)\n .filter((file) => existsSync(file))\n .map((file) => basename(file));\n}\n\nexport function printStartupBanner(params: {\n port: number | string;\n rootDir: string;\n}) {\n const { port, rootDir } = params;\n const local = `http://localhost:${port}`;\n const network = networkUrl(port);\n const env = loadedEnvFiles(rootDir);\n\n const row = (label: string, value: string) =>\n ` ${green(\"➜\")} ${bold(label.padEnd(9))}${value}`;\n\n const out = [\n \"\",\n ...ART.map((line) => magenta(line)),\n \"\",\n ` ${dim(\"gemi\")} ${cyan(`v${gemiVersion()}`)}`,\n \"\",\n row(\"Local:\", cyan(local)),\n row(\"Network:\", network ? cyan(network) : dim(\"unavailable\")),\n row(\"Env:\", env.length ? env.join(\", \") : dim(\"none\")),\n \"\",\n ];\n\n console.log(out.join(\"\\n\"));\n}\n",
|
|
7
7
|
"/**\n * Bun's default, and what both servers use when `SERVER_IDLE_TIMEOUT` is unset.\n */\nexport const DEFAULT_SERVER_IDLE_TIMEOUT = 10;\n\n/**\n * The `idleTimeout` (seconds) both `gemi dev` and `gemi start` pass to\n * `Bun.serve`, from `SERVER_IDLE_TIMEOUT` (#787).\n *\n * One reader for both servers, so a long-poll that works under `gemi start`\n * also works under `gemi dev`. Before this, only `httpProd` read the variable\n * and the dev server always ran at Bun's 10 seconds.\n *\n * It is the time a connection may stay silent, a response that has not started\n * included, before Bun closes it; `0` disables it. It does not apply to an\n * upgraded websocket (the HMR relay included), which has its own\n * `websocket.idleTimeout`.\n *\n * Unset or blank means the default. Anything that is not a whole number from 0\n * to 255 (Bun's own limits) fails the boot with the variable's name, instead\n * of Bun's \"expects idleTimeout to be an integer\", which does not say where the\n * value came from.\n */\nexport function serverIdleTimeout(raw: string | undefined = process.env.SERVER_IDLE_TIMEOUT): number {\n if (raw === undefined || raw.trim() === \"\") return DEFAULT_SERVER_IDLE_TIMEOUT;\n\n const seconds = Number(raw.trim());\n if (!Number.isInteger(seconds) || seconds < 0 || seconds > 255) {\n throw new Error(\n `SERVER_IDLE_TIMEOUT must be a whole number of seconds from 0 to 255 ` +\n `(0 disables the timeout), got ${JSON.stringify(raw)}.`,\n );\n }\n return seconds;\n}\n"
|
|
8
8
|
],
|
|
9
|
-
"mappings": ";yCAAA,wBAAS,cAGT,SAAS,CAAc,CAAC,EAAc,EAAwC,CAC5E,IAAM,EAAc,OAAO,KAAK,CAAM,EACnC,KAAK,CAAC,EAAG,IAAM,EAAE,OAAS,EAAE,MAAM,EAClC,IAAI,CAAC,IAAQ,EAAI,QAAQ,sBAAuB,MAAM,CAAC,EAGpD,EAAQ,IAAI,OAAO,EAAY,KAAK,GAAG,EAAG,GAAG,EAEnD,OAAO,EAAK,QAAQ,EAAO,CAAC,IAAU,EAAO,EAAM,EAGrD,eAAsB,CAAe,CACnC,EACA,EACA,EAAyB,CAAC,EAE1B,EACA,CACA,IAAM,EAAQ,CACZ,GAAG,EAAa,IAAI,CAAC,IAAS,GAAG,WAAgB,OAAU,EAC3D,EAAS,GAAG,WAAgB,QAAe,GAAG,wBAChD,EAEM,EAAU,IAAI,IACpB,QAAW,KAAQ,EAAO,CACxB,IAAM,EAAM,EAAK,YAAY,iBAAiB,CAAI,EAClD,GAAI,EACF,QAAW,KAAK,EAAK,EAAQ,IAAI,CAAC,EAItC,IAAM,EAAS,CAAC,EACV,EAAa,CAAC,EACd,EAA2C,CAAC,EAClD,QAAW,KAAO,EAChB,GAAI,EACF,QAAW,KAAY,EAAI,gBAAiB,CAC1C,GAAI,EAAS,KAAK,SAAS,YAAY,EACrC,EAAiB,EAAS,MAAQ,EAAS,mBAAmB,IAAI,eAAe,KAAK,EAAE,EAE1F,GAAI,EAAS,KAAK,SAAS,MAAM,EAC/B,EAAW,KAAK,EAAS,IAAI,EAMrC,QAAW,KAAiB,EAAY,CACtC,IAAM,EAAY,MAAM,EAAK,iBAAiB,EAAgB,SAAS,EAEjE,EAAc,EAAc,SAAS,YAAY,EAEnD,EAAuB,GAE3B,GAAI,EACF,EAAuB,EACrB,EAAiB,GAGhB,EAA6D,OAChE,EAGF,EAAO,KAAK,CACV,MAAO,GACP,GAAI,EACJ,QAAS,EAAc,EAAuB,EAAU,IAC1D,CAAC,EAGH,OAAO,EAAO,IAAI,CAAC,EAAO,IAAM,CAC9B,OAAO,EAAc,QAAS,CAC5B,IAAK,EACL,KAAM,WACN,mBAAoB,EAAM,GAC1B,wBAAyB,CAAE,OAAQ,EAAM,OAAQ,CACnD,CAAC,EACF,EAGH,eAAsB,CAAY,CAAC,EAAS,CAAC,EAAG,CAC9C,OAAO,EAAO,IAAI,CAAC,EAAO,IAAM,CAC9B,OAAO,EAAc,QAAS,CAC5B,IAAK,EACL,GAAI,GAAO,GACX,KAAM,WACN,wBAAyB,CAAE,OAAQ,EAAM,OAAQ,CACnD,CAAC,EACF,EC3FH,qBAAS,WACT,mBAAS,aACT,4BAAS,
|
|
10
|
-
"debugId": "
|
|
9
|
+
"mappings": ";yCAAA,wBAAS,cAGT,SAAS,CAAc,CAAC,EAAc,EAAwC,CAC5E,IAAM,EAAc,OAAO,KAAK,CAAM,EACnC,KAAK,CAAC,EAAG,IAAM,EAAE,OAAS,EAAE,MAAM,EAClC,IAAI,CAAC,IAAQ,EAAI,QAAQ,sBAAuB,MAAM,CAAC,EAGpD,EAAQ,IAAI,OAAO,EAAY,KAAK,GAAG,EAAG,GAAG,EAEnD,OAAO,EAAK,QAAQ,EAAO,CAAC,IAAU,EAAO,EAAM,EAGrD,eAAsB,CAAe,CACnC,EACA,EACA,EAAyB,CAAC,EAE1B,EACA,CACA,IAAM,EAAQ,CACZ,GAAG,EAAa,IAAI,CAAC,IAAS,GAAG,WAAgB,OAAU,EAC3D,EAAS,GAAG,WAAgB,QAAe,GAAG,wBAChD,EAEM,EAAU,IAAI,IACpB,QAAW,KAAQ,EAAO,CACxB,IAAM,EAAM,EAAK,YAAY,iBAAiB,CAAI,EAClD,GAAI,EACF,QAAW,KAAK,EAAK,EAAQ,IAAI,CAAC,EAItC,IAAM,EAAS,CAAC,EACV,EAAa,CAAC,EACd,EAA2C,CAAC,EAClD,QAAW,KAAO,EAChB,GAAI,EACF,QAAW,KAAY,EAAI,gBAAiB,CAC1C,GAAI,EAAS,KAAK,SAAS,YAAY,EACrC,EAAiB,EAAS,MAAQ,EAAS,mBAAmB,IAAI,eAAe,KAAK,EAAE,EAE1F,GAAI,EAAS,KAAK,SAAS,MAAM,EAC/B,EAAW,KAAK,EAAS,IAAI,EAMrC,QAAW,KAAiB,EAAY,CACtC,IAAM,EAAY,MAAM,EAAK,iBAAiB,EAAgB,SAAS,EAEjE,EAAc,EAAc,SAAS,YAAY,EAEnD,EAAuB,GAE3B,GAAI,EACF,EAAuB,EACrB,EAAiB,GAGhB,EAA6D,OAChE,EAGF,EAAO,KAAK,CACV,MAAO,GACP,GAAI,EACJ,QAAS,EAAc,EAAuB,EAAU,IAC1D,CAAC,EAGH,OAAO,EAAO,IAAI,CAAC,EAAO,IAAM,CAC9B,OAAO,EAAc,QAAS,CAC5B,IAAK,EACL,KAAM,WACN,mBAAoB,EAAM,GAC1B,wBAAyB,CAAE,OAAQ,EAAM,OAAQ,CACnD,CAAC,EACF,EAGH,eAAsB,CAAY,CAAC,EAAS,CAAC,EAAG,CAC9C,OAAO,EAAO,IAAI,CAAC,EAAO,IAAM,CAC9B,OAAO,EAAc,QAAS,CAC5B,IAAK,EACL,GAAI,GAAO,GACX,KAAM,WACN,wBAAyB,CAAE,OAAQ,EAAM,OAAQ,CACnD,CAAC,EACF,EC3FH,qBAAS,WACT,mBAAS,aACT,4BAAS,82HAKT,IAAM,EAAM,CACV,oKACA,mLACA,yKACA,oKACA,mLACA,yJACF,EAEM,EAAW,QAAQ,QAAQ,OAAO,KAAK,GAAK,CAAC,QAAQ,IAAI,SACzD,EAAQ,CAAC,EAAc,IAC3B,EAAW,QAAQ,KAAQ,WAAgB,EACvC,EAAO,CAAC,IAAc,EAAM,IAAK,CAAC,EAClC,EAAM,CAAC,IAAc,EAAM,IAAK,CAAC,EACjC,EAAO,CAAC,IAAc,EAAM,KAAM,CAAC,EACnC,EAAQ,CAAC,IAAc,EAAM,KAAM,CAAC,EACpC,EAAU,CAAC,IAAc,EAAM,KAAM,CAAC,EAE5C,SAAS,CAAW,EAAW,CAC7B,OAAQ,EAA6B,SAAW,IAGlD,SAAS,CAAU,CAAC,EAAsC,CACxD,QAAW,KAAU,OAAO,OAAO,EAAkB,CAAC,EACpD,QAAW,KAAS,GAAU,CAAC,EAG7B,IADa,EAAM,SAAW,QAAW,EAAM,SAAuB,IAC1D,CAAC,EAAM,SAAU,MAAO,UAAU,EAAM,WAAW,IAGnE,OAAO,KAGT,SAAS,CAAc,CAAC,EAA2B,CACjD,OAAO,EAAS,CAAO,EACpB,OAAO,CAAC,IAAS,EAAW,CAAI,CAAC,EACjC,IAAI,CAAC,IAAS,EAAS,CAAI,CAAC,EAG1B,SAAS,CAAkB,CAAC,EAGhC,CACD,IAAQ,OAAM,WAAY,EACpB,EAAQ,oBAAoB,IAC5B,EAAU,EAAW,CAAI,EACzB,EAAM,EAAe,CAAO,EAE5B,EAAM,CAAC,EAAe,IAC1B,KAAK,EAAM,QAAE,MAAM,EAAK,EAAM,OAAO,CAAC,CAAC,IAAI,IAEvC,EAAM,CACV,GACA,GAAG,EAAI,IAAI,CAAC,IAAS,EAAQ,CAAI,CAAC,EAClC,GACA,KAAK,EAAI,MAAM,KAAK,EAAK,IAAI,EAAY,GAAG,IAC5C,GACA,EAAI,SAAU,EAAK,CAAK,CAAC,EACzB,EAAI,WAAY,EAAU,EAAK,CAAO,EAAI,EAAI,aAAa,CAAC,EAC5D,EAAI,OAAQ,EAAI,OAAS,EAAI,KAAK,IAAI,EAAI,EAAI,MAAM,CAAC,EACrD,EACF,EAEA,QAAQ,IAAI,EAAI,KAAK;AAAA,CAAI,CAAC,EC/CrB,SAAS,CAAiB,CAAC,EAA0B,QAAQ,IAAI,oBAA6B,CACnG,GAAI,IAAQ,QAAa,EAAI,KAAK,IAAM,GAAI,MArBH,IAuBzC,IAAM,EAAU,OAAO,EAAI,KAAK,CAAC,EACjC,GAAI,CAAC,OAAO,UAAU,CAAO,GAAK,EAAU,GAAK,EAAU,IACzD,MAAU,MACR,qGACmC,KAAK,UAAU,CAAG,IACvD,EAEF,OAAO",
|
|
10
|
+
"debugId": "A81FE0CE7BC50E2264756E2164756E21",
|
|
11
11
|
"names": []
|
|
12
12
|
}
|