gemi 0.37.0 → 0.40.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.
Files changed (182) hide show
  1. package/dist/app/App.d.ts +5 -3
  2. package/dist/app/App.d.ts.map +1 -1
  3. package/dist/app/index.js +37 -37
  4. package/dist/app/index.js.map +3 -3
  5. package/dist/auth/oauth/XOAuthProvider.d.ts +1 -1
  6. package/dist/auth/oauth/XOAuthProvider.d.ts.map +1 -1
  7. package/dist/bin/gemi.js +66804 -26887
  8. package/dist/bin/gemi.js.map +110 -20
  9. package/dist/broadcasting/index.js +1 -1
  10. package/dist/bun/plugin.js +4 -0
  11. package/dist/{chunk-hw6nrw6g.js.map → bun/plugin.js.map} +1 -1
  12. package/dist/bun/preload.js +4 -0
  13. package/dist/bun/preload.js.map +10 -0
  14. package/dist/{chunk-kv145fsh.js → chunk-1axcwesm.js} +2 -2
  15. package/dist/{chunk-kv145fsh.js.map → chunk-1axcwesm.js.map} +1 -1
  16. package/dist/chunk-2xvzn1zw.js +4 -0
  17. package/dist/{chunk-qps2yeaf.js.map → chunk-2xvzn1zw.js.map} +3 -3
  18. package/dist/{chunk-sm6zbv38.js → chunk-32bqjwdp.js} +3 -3
  19. package/dist/{chunk-sm6zbv38.js.map → chunk-32bqjwdp.js.map} +1 -1
  20. package/dist/chunk-36rnd542.js +5 -0
  21. package/dist/{chunk-34ac0e8a.js.map → chunk-36rnd542.js.map} +1 -1
  22. package/dist/chunk-3mdvhyh7.js +101 -0
  23. package/dist/chunk-3mdvhyh7.js.map +48 -0
  24. package/dist/{chunk-zf8mc5nr.js → chunk-3vwd9m9r.js} +2 -2
  25. package/dist/{chunk-kfekwtbp.js.map → chunk-3vwd9m9r.js.map} +1 -1
  26. package/dist/{chunk-3s6dm0ff.js → chunk-58by1xt1.js} +2 -2
  27. package/dist/{chunk-3s6dm0ff.js.map → chunk-58by1xt1.js.map} +1 -1
  28. package/dist/{chunk-9p8h8aej.js → chunk-63px5syb.js} +2 -2
  29. package/dist/{chunk-9p8h8aej.js.map → chunk-63px5syb.js.map} +1 -1
  30. package/dist/{chunk-b8t8hrgm.js → chunk-6ey5s3q9.js} +4 -4
  31. package/dist/{chunk-b8t8hrgm.js.map → chunk-6ey5s3q9.js.map} +1 -1
  32. package/dist/{chunk-mq07k1x9.js → chunk-6g504b6e.js} +29 -29
  33. package/dist/{chunk-mq07k1x9.js.map → chunk-6g504b6e.js.map} +7 -5
  34. package/dist/{chunk-kt67sv2v.js → chunk-7n19b204.js} +2 -2
  35. package/dist/{chunk-kt67sv2v.js.map → chunk-7n19b204.js.map} +1 -1
  36. package/dist/chunk-8z5r7z7w.js +5 -0
  37. package/dist/chunk-8z5r7z7w.js.map +10 -0
  38. package/dist/{chunk-3464zptf.js → chunk-90fdy2mf.js} +2 -2
  39. package/dist/{chunk-3464zptf.js.map → chunk-90fdy2mf.js.map} +1 -1
  40. package/dist/{chunk-fa8tk1f8.js → chunk-9t65prt6.js} +2 -2
  41. package/dist/{chunk-fa8tk1f8.js.map → chunk-9t65prt6.js.map} +1 -1
  42. package/dist/{chunk-ks022k0g.js → chunk-a9rab7d6.js} +2 -2
  43. package/dist/{chunk-ks022k0g.js.map → chunk-a9rab7d6.js.map} +1 -1
  44. package/dist/{chunk-8by5dnz7.js → chunk-c0hftpkd.js} +3 -3
  45. package/dist/{chunk-8by5dnz7.js.map → chunk-c0hftpkd.js.map} +1 -1
  46. package/dist/{chunk-e4v7ay0q.js → chunk-c7xghmmk.js} +3 -3
  47. package/dist/{chunk-e4v7ay0q.js.map → chunk-c7xghmmk.js.map} +1 -1
  48. package/dist/{chunk-05yzymd6.js → chunk-d70jknn3.js} +2 -2
  49. package/dist/{chunk-05yzymd6.js.map → chunk-d70jknn3.js.map} +1 -1
  50. package/dist/{chunk-703zn6wy.js → chunk-demk6jrq.js} +2 -2
  51. package/dist/{chunk-703zn6wy.js.map → chunk-demk6jrq.js.map} +1 -1
  52. package/dist/{chunk-g9htz9wp.js → chunk-ewgyn3bd.js} +4 -4
  53. package/dist/{chunk-g9htz9wp.js.map → chunk-ewgyn3bd.js.map} +1 -1
  54. package/dist/{chunk-j06ebr2s.js → chunk-ferag84m.js} +2 -2
  55. package/dist/{chunk-j06ebr2s.js.map → chunk-ferag84m.js.map} +1 -1
  56. package/dist/{chunk-kfekwtbp.js → chunk-fr27jc6x.js} +2 -2
  57. package/dist/{chunk-zf8mc5nr.js.map → chunk-fr27jc6x.js.map} +1 -1
  58. package/dist/{chunk-vgz78xam.js → chunk-h6mq7va4.js} +2 -2
  59. package/dist/{chunk-vgz78xam.js.map → chunk-h6mq7va4.js.map} +1 -1
  60. package/dist/{chunk-9krpj7nc.js → chunk-jkn3v7kp.js} +3 -3
  61. package/dist/{chunk-9krpj7nc.js.map → chunk-jkn3v7kp.js.map} +1 -1
  62. package/dist/{chunk-rda8ja4x.js → chunk-jz4b0r4f.js} +2 -2
  63. package/dist/{chunk-rda8ja4x.js.map → chunk-jz4b0r4f.js.map} +1 -1
  64. package/dist/{chunk-gm3gevhz.js → chunk-mbc8kxq4.js} +2 -2
  65. package/dist/{chunk-gm3gevhz.js.map → chunk-mbc8kxq4.js.map} +1 -1
  66. package/dist/{chunk-gyhg162v.js → chunk-n98nb1fp.js} +1 -1
  67. package/dist/{chunk-twncacnk.js → chunk-ptzhwayj.js} +2 -2
  68. package/dist/{chunk-twncacnk.js.map → chunk-ptzhwayj.js.map} +1 -1
  69. package/dist/{chunk-3hb1j6ty.js → chunk-qtz62kb1.js} +3 -3
  70. package/dist/{chunk-3hb1j6ty.js.map → chunk-qtz62kb1.js.map} +1 -1
  71. package/dist/{chunk-qmpybvq3.js → chunk-qz4m6jpd.js} +3 -3
  72. package/dist/{chunk-qmpybvq3.js.map → chunk-qz4m6jpd.js.map} +1 -1
  73. package/dist/{chunk-s34ss7ej.js → chunk-stp84phd.js} +20 -20
  74. package/dist/{chunk-s34ss7ej.js.map → chunk-stp84phd.js.map} +8 -7
  75. package/dist/{chunk-rtmsz7yd.js → chunk-t4f1hd5h.js} +3 -3
  76. package/dist/{chunk-rtmsz7yd.js.map → chunk-t4f1hd5h.js.map} +1 -1
  77. package/dist/chunk-tjc2jbfx.js +4 -0
  78. package/dist/chunk-tjc2jbfx.js.map +9 -0
  79. package/dist/{chunk-y9m0jemc.js → chunk-v0pw47bz.js} +3 -3
  80. package/dist/{chunk-y9m0jemc.js.map → chunk-v0pw47bz.js.map} +1 -1
  81. package/dist/{chunk-nacrt2vw.js → chunk-w3sw7qzr.js} +2 -2
  82. package/dist/{chunk-nacrt2vw.js.map → chunk-w3sw7qzr.js.map} +1 -1
  83. package/dist/{chunk-wspcma7s.js → chunk-x3xmwhm7.js} +3 -3
  84. package/dist/{chunk-wspcma7s.js.map → chunk-x3xmwhm7.js.map} +1 -1
  85. package/dist/{chunk-frdxhs0s.js → chunk-xn8qhpkm.js} +3 -3
  86. package/dist/{chunk-frdxhs0s.js.map → chunk-xn8qhpkm.js.map} +1 -1
  87. package/dist/{chunk-md7n9kmr.js → chunk-xna33s0d.js} +3 -3
  88. package/dist/{chunk-md7n9kmr.js.map → chunk-xna33s0d.js.map} +1 -1
  89. package/dist/{chunk-7fx4zpqd.js → chunk-y21w70m1.js} +3 -3
  90. package/dist/{chunk-7fx4zpqd.js.map → chunk-y21w70m1.js.map} +1 -1
  91. package/dist/{chunk-a44rr4a0.js → chunk-y8j3mhc5.js} +2 -2
  92. package/dist/{chunk-a44rr4a0.js.map → chunk-y8j3mhc5.js.map} +1 -1
  93. package/dist/{chunk-ektbs6gq.js → chunk-zfb7fy42.js} +3 -3
  94. package/dist/{chunk-ektbs6gq.js.map → chunk-zfb7fy42.js.map} +1 -1
  95. package/dist/client/Head.d.ts.map +1 -1
  96. package/dist/client/HttpReload.d.ts.map +1 -1
  97. package/dist/client/index.js +26975 -35202
  98. package/dist/client/index.js.map +1 -1
  99. package/dist/client/init.d.ts +2 -2
  100. package/dist/client/init.d.ts.map +1 -1
  101. package/dist/client/useQuery.d.ts.map +1 -1
  102. package/dist/config/index.js +4 -0
  103. package/dist/config/index.js.map +10 -0
  104. package/dist/email/index.js +2 -2
  105. package/dist/email/index.js.map +1 -1
  106. package/dist/facades/Redis.d.ts +12 -0
  107. package/dist/facades/Redis.d.ts.map +1 -0
  108. package/dist/facades/index.d.ts +1 -0
  109. package/dist/facades/index.d.ts.map +1 -1
  110. package/dist/facades/index.js +2 -2
  111. package/dist/facades/index.js.map +1 -1
  112. package/dist/http/ApiRouter.d.ts +13 -1
  113. package/dist/http/ApiRouter.d.ts.map +1 -1
  114. package/dist/http/index.js +2 -2
  115. package/dist/http/index.js.map +1 -1
  116. package/dist/i18n/index.js +2 -2
  117. package/dist/i18n/index.js.map +1 -1
  118. package/dist/internal/gemiExternals.d.ts +3 -0
  119. package/dist/internal/gemiExternals.d.ts.map +1 -0
  120. package/dist/kernel/Kernel.d.ts +2 -0
  121. package/dist/kernel/Kernel.d.ts.map +1 -1
  122. package/dist/kernel/index.js +2 -2
  123. package/dist/kernel/index.js.map +6 -7
  124. package/dist/server/index.js +15 -9
  125. package/dist/server/index.js.map +6 -5
  126. package/dist/server2/Server.d.ts +12 -0
  127. package/dist/server2/Server.d.ts.map +1 -0
  128. package/dist/server2/banner.d.ts +5 -0
  129. package/dist/server2/banner.d.ts.map +1 -0
  130. package/dist/server2/generateEtag.d.ts +2 -0
  131. package/dist/server2/generateEtag.d.ts.map +1 -0
  132. package/dist/server2/httpDev.d.ts +26 -0
  133. package/dist/server2/httpDev.d.ts.map +1 -0
  134. package/dist/server2/httpProd.d.ts +4 -0
  135. package/dist/server2/httpProd.d.ts.map +1 -0
  136. package/dist/server2/index.d.ts +2 -0
  137. package/dist/server2/index.d.ts.map +1 -0
  138. package/dist/server2/renderErrorPage.d.ts +2 -0
  139. package/dist/server2/renderErrorPage.d.ts.map +1 -0
  140. package/dist/server2/styles.d.ts +18 -0
  141. package/dist/server2/styles.d.ts.map +1 -0
  142. package/dist/server2/types.d.ts +2 -0
  143. package/dist/server2/types.d.ts.map +1 -0
  144. package/dist/server2/watchEnv.d.ts +7 -0
  145. package/dist/server2/watchEnv.d.ts.map +1 -0
  146. package/dist/services/Singleton.d.ts +4 -0
  147. package/dist/services/Singleton.d.ts.map +1 -0
  148. package/dist/services/cron/CronJob.d.ts +1 -1
  149. package/dist/services/cron/CronJob.d.ts.map +1 -1
  150. package/dist/services/cron/CronServiceContainer.d.ts +5 -0
  151. package/dist/services/cron/CronServiceContainer.d.ts.map +1 -1
  152. package/dist/services/index.d.ts +4 -3
  153. package/dist/services/index.d.ts.map +1 -1
  154. package/dist/services/index.js +2 -2
  155. package/dist/services/index.js.map +1 -1
  156. package/dist/services/redis/RedisServiceContainer.d.ts +10 -0
  157. package/dist/services/redis/RedisServiceContainer.d.ts.map +1 -0
  158. package/dist/services/redis/RedisServiceProvider.d.ts +8 -0
  159. package/dist/services/redis/RedisServiceProvider.d.ts.map +1 -0
  160. package/dist/services/router/ViewRouterServiceContainer.d.ts.map +1 -1
  161. package/dist/services/router/createFlatApiRoutes.test.d.ts +2 -0
  162. package/dist/services/router/createFlatApiRoutes.test.d.ts.map +1 -0
  163. package/dist/services/singleton/SingletonServiceContainer.d.ts +8 -0
  164. package/dist/services/singleton/SingletonServiceContainer.d.ts.map +1 -0
  165. package/dist/services/singleton/SingletonServiceProvider.d.ts +7 -0
  166. package/dist/services/singleton/SingletonServiceProvider.d.ts.map +1 -0
  167. package/dist/vite/index.mjs +62 -3
  168. package/package.json +10 -9
  169. package/dist/chunk-34ac0e8a.js +0 -5
  170. package/dist/chunk-hw6nrw6g.js +0 -4
  171. package/dist/chunk-jk9aba71.js +0 -61
  172. package/dist/chunk-jk9aba71.js.map +0 -55
  173. package/dist/chunk-qps2yeaf.js +0 -4
  174. package/dist/services/Injectable.d.ts +0 -7
  175. package/dist/services/Injectable.d.ts.map +0 -1
  176. package/dist/services/custom-service/CustomServiceContainer.d.ts +0 -8
  177. package/dist/services/custom-service/CustomServiceContainer.d.ts.map +0 -1
  178. package/dist/services/custom-service/CustomServiceProvider.d.ts +0 -7
  179. package/dist/services/custom-service/CustomServiceProvider.d.ts.map +0 -1
  180. package/dist/vite/index-3fSp4NVF.mjs +0 -20135
  181. package/dist/vite/typescript-1ZdUKbbC.mjs +0 -14693
  182. /package/dist/{chunk-gyhg162v.js.map → chunk-n98nb1fp.js.map} +0 -0
@@ -1,8 +1,8 @@
1
1
  // @bun
2
- import{Y as _}from"../chunk-9p8h8aej.js";import{Fb as G}from"../chunk-zf8mc5nr.js";import{join as C}from"path";import{jsx as L}from"react/jsx-runtime";function N(n,t){let l=Object.keys(t).sort((p,w)=>w.length-p.length).map((p)=>p.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")),h=new RegExp(l.join("|"),"g");return n.replace(h,(p)=>t[p])}async function B(n,t,l=[]){let h=[...l.map((e)=>`${n}/views/${e}.tsx`),`${n}/views/RootLayout.tsx`],p=new Set;for(let e of h){let s=t.moduleGraph.getModulesByFile(e);if(s)p=p.union(s)}let w=[],$=[],d={};for(let e of p)if(e)for(let s of e.importedModules){if(s.file.includes("module.css"))d[s.file]=s.ssrTransformResult.map.sourcesContent.join("");if(s.file.includes(".css"))$.push(s.file)}for(let e of $){let s=await t.transformRequest(e+"?direct"),i=e.includes("module.css"),c="";if(i)c=N(d[e],s.default);w.push({isDev:!0,id:e,content:i?c:s.code})}return w.map((e,s)=>{return L("style",{type:"text/css","data-vite-dev-id":e.id,children:e.content},s)})}async function I(n=[]){return n.map((t,l)=>{return L("style",{id:t?.id,type:"text/css",children:t.content},l)})}function k(n){return n.replace(/\x1b\[[0-9;]*m/g,"").replace(/\[[0-9;]*m/g,"").replace(/\n\s*\n/g,`
2
+ import{aa as _}from"../chunk-63px5syb.js";import{Kb as N}from"../chunk-3vwd9m9r.js";import{join as C}from"path";import{createElement as B}from"react";function J(o,e){let i=Object.keys(e).sort((a,g)=>g.length-a.length).map((a)=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")),u=new RegExp(i.join("|"),"g");return o.replace(u,(a)=>e[a])}async function P(o,e,i=[]){let u=[...i.map((t)=>`${o}/views/${t}.tsx`),`${o}/views/RootLayout.tsx`],a=new Set;for(let t of u){let s=e.moduleGraph.getModulesByFile(t);if(s)a=a.union(s)}let g=[],h=[],w={};for(let t of a)if(t)for(let s of t.importedModules){if(s.file.includes("module.css"))w[s.file]=s.ssrTransformResult.map.sourcesContent.join("");if(s.file.includes(".css"))h.push(s.file)}for(let t of h){let s=await e.transformRequest(t+"?direct"),r=t.includes("module.css"),p="";if(r)p=J(w[t],s.default);g.push({isDev:!0,id:t,content:r?p:s.code})}return g.map((t,s)=>{return B("style",{key:s,type:"text/css","data-vite-dev-id":t.id,dangerouslySetInnerHTML:{__html:t.content}})})}async function I(o=[]){return o.map((e,i)=>{return B("style",{key:i,id:e?.id,type:"text/css",dangerouslySetInnerHTML:{__html:e.content}})})}function z(o){return o.replace(/\x1b\[[0-9;]*m/g,"").replace(/\[[0-9;]*m/g,"").replace(/\n\s*\n/g,`
3
3
  `).split(`
4
- `).map((t)=>t.trim()).filter((t)=>t.length>0).join(`
5
- `).trim()}function F(n){return`
4
+ `).map((e)=>e.trim()).filter((e)=>e.length>0).join(`
5
+ `).trim()}function F(o){return`
6
6
  <!DOCTYPE html>
7
7
  <html lang="en">
8
8
  <head>
@@ -28,8 +28,8 @@ import{Y as _}from"../chunk-9p8h8aej.js";import{Fb as G}from"../chunk-zf8mc5nr.j
28
28
  <script type="module" src="/refresh.js"></script>
29
29
  <script type="module" src="/@vite/client"></script>
30
30
  <script>
31
- ${k.toString()}
32
- const err = ${JSON.stringify(n,Object.getOwnPropertyNames(n),2)}
31
+ ${z.toString()}
32
+ const err = ${JSON.stringify(o,Object.getOwnPropertyNames(o),2)}
33
33
 
34
34
  window.addEventListener('load', () => {
35
35
  const container = document.getElementById('overlay')
@@ -42,12 +42,18 @@ import{Y as _}from"../chunk-9p8h8aej.js";import{Fb as G}from"../chunk-zf8mc5nr.j
42
42
  </script>
43
43
  </body>
44
44
  </html>
45
- `}var E=process.cwd(),T=C(E,"app");async function H(){let n=process.cwd(),t=await(await import("vite")).createServer({root:n,logLevel:"error",server:{watch:{usePolling:!0,interval:100,ignored:["**/storage/**","**/node_modules/**","**/.**"]},hmr:{clientPort:5174}},appType:"custom",resolve:{alias:{"@/app":T}}});process.env.ROOT_DIR=E,process.env.APP_DIR=T;async function l(e){let{pathname:s,host:i,protocol:c}=new URL(e.url);if(s.startsWith("/render-error.js"))return new Response("window.render_error = true",{headers:{"Content-Type":"application/javascript"}});if(s.startsWith("/refresh.js"))return new Response(`
46
- import RefreshRuntime from "${c}//${i}/@react-refresh";
45
+ `}var O=process.cwd(),T=C(O,"app");async function K(){let o=process.cwd(),e=await(await import("vite")).createServer({root:o,logLevel:"error",server:{watch:{usePolling:!0,interval:100,ignored:["**/storage/**","**/node_modules/**","**/.**"]},hmr:{clientPort:5174}},appType:"custom",resolve:{alias:{"@/app":T}}});process.env.ROOT_DIR=O,process.env.APP_DIR=T;async function i(t){let{pathname:s,host:r,protocol:p}=new URL(t.url);if(s.startsWith("/render-error.js"))return new Response("window.render_error = true",{headers:{"Content-Type":"application/javascript"}});if(s.startsWith("/refresh.js"))return new Response(`
46
+ import RefreshRuntime from "${p}//${r}/@react-refresh";
47
47
  RefreshRuntime.injectIntoGlobalHook(window);
48
48
  window.$RefreshReg$ = () => {};
49
49
  window.$RefreshSig$ = () => (type) => type;
50
50
  window.__vite_plugin_react_preamble_installed__ = true;
51
- `,{headers:{"Content-Type":"application/javascript"}});try{let f=await fetch(`http://localhost:5174${s}`);if(f.ok)return f}catch(f){console.log(f)}}async function h(){try{return(await t.ssrLoadModule(C(T,"bootstrap.ts"),{fixStacktrace:!0})).app}catch(e){t.ws.send({type:"error",err:{...e,message:""}}),console.error(e)}}async function p(e){let s=e.fetch.bind(e);return{maxRequestBodySize:10737418240,fetch:async(i,c)=>{if(c.upgrade(i,{data:{headers:i.headers}}))return;if(!i.headers.get("x-forwarded-for")){let o=c.requestIP(i);i.headers.set("x-forwarded-for",o.address)}let{pathname:f}=new URL(i.url),r=await l(i);if(r instanceof Response)return r;try{let o=await s(i);if(o instanceof Response)return o;else{let u={},g={},P=(a,v)=>`"${a}": () => import("${v}")`,y=[];for(let a of["404",...e.getFlatComponentTree.call(e)]){let v=`${process.env.APP_DIR}`,R=await t.ssrLoadModule(`${v}/views/${a}.tsx`,{fixStacktrace:!0});u[a]=R.default,g[a]=R?.OpenGraph,y.push(P(a,`${v}/views/${a}.tsx`))}let x=`{${y.join(",")}}`;return await o({getStyles:async(a)=>await B(T,t,a),bootstrapModules:["/refresh.js","/app/client.tsx","/@vite/client"],viewImportMap:u,ogMap:g,loaders:x,cssManifest:{}})}}catch(o){if(f.startsWith("/api"))return new Response(JSON.stringify({error:o.message}),{status:500,headers:{"Content-Type":"application/json"}});return new Response(F(o),{headers:{"Content-Type":"text/html"}})}},idleTimeout:Number(process.env.SERVER_IDLE_TIMEOUT??10),port:process.env.PORT||5173,websocket:e.websocket}}await t.listen(5174);let w=await h(),$=await p(w),d=Bun.serve($);return w.onPublish((e,s,i)=>{d.publish(e,s,i)}),console.log(`Server started on http://localhost:${process.env.PORT||5173}`),t.watcher.on("change",async(e)=>{let s=e.replace(E,"");if(s.startsWith("/logs"))return;if(s.startsWith("/prisma"))return;if(s.startsWith("/app/views")){console.log(`[vite] ${s} changed. \uD83C\uDF5C Hot reloading...`);return}console.log(`[vite] ${s} changed. Reloading...`);let i=t.moduleGraph.getModulesByFile(e)??[];for(let c of Array.from(i))try{t.moduleGraph.invalidateModule(c)}catch(f){}try{let c=await h(),f=await p(c);c.onPublish((r,o,u)=>{d.publish(r,o,u)}),d.reload(f),t.ws.send({type:"custom",event:"http-reload"}),t.ws.send({type:"update",updates:[]})}catch(c){console.log("Error on server reload"),console.log(t.ssrFixStacktrace(c))}}),d}import{join as j}from"path";function U(n){let t=n.toString(),l=new Bun.CryptoHasher("sha1");return l.update(t),l.digest("hex")}if(!globalThis.URLPattern)globalThis.URLPattern=_;import{exists as J}from"fs/promises";var z=process.env.GEMI_PROJECT_DIR??"",O=j(process.cwd(),z),M=j(O,"app"),S=j(O,"dist");async function V(){let{app:n}=await import(`${S}/server/bootstrap.mjs`),t=await import(`${S}/client/.vite/manifest.json`),l=await import(`${S}/server/.vite/manifest.json`);process.env.ROOT_DIR=O,process.env.APP_DIR=M,process.env.DIST_DIR=S;let h={},p={},w={},$=(r,o)=>`"${r}": () => import("${o}")`,d=[];for(let r of["404",...n.getFlatComponentTree.call(n)]){let o=l[`app/views/${r}.tsx`];if(!o?.file){console.log(`Server file not found for ${r}`),console.log(o);let P=Object.keys(l),y=`app/views/${r}.tsx`;console.log(`${y} not found in server manifest`),console.log(P)}let u=await import(`${process.env.DIST_DIR}/server/${o?.file}`);h[r]=u.default,p[r]=u.OpenGraph;let g=t[`app/views/${r}.tsx`];if(g?.css&&g?.css.length>0)w[r]=g?.css;if(g)d.push($(r,`/${g?.file}`))}let e=`{${d.join(",")}}`,i=await Bun.file(`${S}/client/${t["app/client.tsx"].css}`).text();async function c(r){let{pathname:o}=new URL(r.url),u=new _({pathname:"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|avif|webp|ico|ttf)"}),g=o.startsWith("/.well-known"),P=u.test({pathname:o})||g,y=o.startsWith("/api");if(P&&!y){let a=new URL(r.url),v=r.url.replace(a.origin,"").split("?")[0],R=`${S}/client${v.replace("/assets/assets","/assets")}`;if(!await J(R)&&a.pathname.includes(".js"))return new Response(`if(caches){caches?.delete("${R}")}window.location.reload();export {}`,{headers:{"Content-Type":"application/javascript"}});try{let m=Bun.file(R),D=U(m.lastModified);return new Response(m.stream(),{headers:{"Content-Type":m.type,"Cache-Control":"public, max-age=31536000, must-revalidate","Content-Length":String(m.size),ETag:D}})}catch(m){return n.onException?.(m),new Response("Not found",{status:404})}}let x=n.fetch.bind(n);try{let a=await x(r);if(a instanceof Response)return a;else{let v=[];return v.push({content:i}),await a({getStyles:async(b)=>{if(!b)return I([]);for(let m of b){let D=t[`app/views/${m}.tsx`];for(let A of D?.css??[]){let W=Bun.file(`${process.env.DIST_DIR}/client/${A}`);v.push({id:A,content:await W.text()})}}return I(v)},bootstrapModules:[`/${t["app/client.tsx"].file}`],loaders:e,viewImportMap:h,ogMap:p,cssManifest:w})}}catch(a){if(console.error(a),o.startsWith("/api"))return new Response(JSON.stringify({error:a.message}),{status:500,headers:{"Content-Type":"application/json"}});return n.onException?.(a),new Response(a.stack,{status:500})}}let f=Bun.serve({maxRequestBodySize:10737418240,fetch:async(r,o)=>{if(!r.headers.get("x-forwarded-for")){let u=o.requestIP(r);r.headers.set("x-forwarded-for",u.address)}return await c(r)},idleTimeout:Number(process.env.SERVER_IDLE_TIMEOUT??10),port:process.env.PORT||5173});return console.log("Production server running on",f.url.href),f}export{V as startProdServer,H as startDevServer};
51
+ `,{headers:{"Content-Type":"application/javascript"}});try{let d=await fetch(`http://localhost:5174${s}`);if(d.ok)return d}catch(d){console.log(d)}}async function u(){try{return(await e.ssrLoadModule(C(T,"bootstrap.ts"),{fixStacktrace:!0})).app}catch(t){e.ws.send({type:"error",err:{...t,message:""}}),console.error(t)}}async function a(t){let s=t.fetch.bind(t);return{maxRequestBodySize:10737418240,fetch:async(r,p)=>{if(p.upgrade(r,{data:{headers:r.headers}}))return;if(!r.headers.get("x-forwarded-for")){let c=p.requestIP(r);r.headers.set("x-forwarded-for",c.address)}let{pathname:d}=new URL(r.url),n=await i(r);if(n instanceof Response)return n;try{let c=await s(r);if(c instanceof Response)return c;else{let f={},R={},m=(l,$)=>`"${l}": () => import("${$}")`,x=[];for(let l of["404",...t.getFlatComponentTree.call(t)]){let $=`${process.env.APP_DIR}`,y=await e.ssrLoadModule(`${$}/views/${l}.tsx`,{fixStacktrace:!0});f[l]=y.default,R[l]=y?.OpenGraph,x.push(m(l,`${$}/views/${l}.tsx`))}let b=`{${x.join(",")}}`;return await c({getStyles:async(l)=>await P(T,e,l),bootstrapModules:["/refresh.js","/app/client.tsx","/@vite/client"],viewImportMap:f,ogMap:R,loaders:b,cssManifest:{}})}}catch(c){if(d.startsWith("/api"))return new Response(JSON.stringify({error:c.message}),{status:500,headers:{"Content-Type":"application/json"}});return new Response(F(c),{headers:{"Content-Type":"text/html"}})}},idleTimeout:Number(process.env.SERVER_IDLE_TIMEOUT??10),port:process.env.PORT||5173,websocket:t.websocket}}await e.listen(5174);let g=await u(),h=await a(g),w=Bun.serve(h);return g.onPublish((t,s,r)=>{w.publish(t,s,r)}),console.log(`Server started on http://localhost:${process.env.PORT||5173}`),e.watcher.on("change",async(t)=>{let s=t.replace(O,"");if(s.startsWith("/logs"))return;if(s.startsWith("/prisma"))return;if(s.startsWith("/app/views")){console.log(`[vite] ${s} changed. \uD83C\uDF5C Hot reloading...`);return}console.log(`[vite] ${s} changed. Reloading...`);let r=e.moduleGraph.getModulesByFile(t)??[];for(let p of Array.from(r))try{e.moduleGraph.invalidateModule(p)}catch(d){}try{let p=await u(),d=await a(p);p.onPublish((n,c,f)=>{w.publish(n,c,f)}),w.reload(d),e.ws.send({type:"custom",event:"http-reload"}),e.ws.send({type:"update",updates:[]})}catch(p){console.log("Error on server reload"),console.log(e.ssrFixStacktrace(p))}}),w}import{join as A}from"path";function W(o){let e=o.toString(),i=new Bun.CryptoHasher("sha1");return i.update(e),i.digest("hex")}if(!globalThis.URLPattern)globalThis.URLPattern=_;import{exists as Q}from"fs/promises";var X=process.env.GEMI_PROJECT_DIR??"",D=A(process.cwd(),X),Y=A(D,"app"),S=A(D,"dist");async function Z(){let{app:o}=await import(`${S}/server/bootstrap.mjs`),e=await import(`${S}/client/.vite/manifest.json`),i=await import(`${S}/server/.vite/manifest.json`);process.env.ROOT_DIR=D,process.env.APP_DIR=Y,process.env.DIST_DIR=S;let u={},a={},g={},h=(n,c)=>`"${n}": () => import("${c}")`,w=[];for(let n of["404",...o.getFlatComponentTree.call(o)]){let c=i[`app/views/${n}.tsx`];if(!c?.file){console.log(`Server file not found for ${n}`),console.log(c);let m=Object.keys(i),x=`app/views/${n}.tsx`;console.log(`${x} not found in server manifest`),console.log(m)}let f=await import(`${process.env.DIST_DIR}/server/${c?.file}`);u[n]=f.default,a[n]=f.OpenGraph;let R=e[`app/views/${n}.tsx`];if(R?.css&&R?.css.length>0)g[n]=R?.css;if(R)w.push(h(n,`/${R?.file}`))}let t=`{${w.join(",")}}`,r=await Bun.file(`${S}/client/${e["app/client.tsx"].css}`).text();async function p(n){let{pathname:c}=new URL(n.url),f=new _({pathname:"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|avif|webp|ico|ttf)"}),R=c.startsWith("/.well-known"),m=f.test({pathname:c})||R,x=c.startsWith("/api");if(m&&!x){let l=new URL(n.url),$=n.url.replace(l.origin,"").split("?")[0],y=`${S}/client${$.replace("/assets/assets","/assets")}`;if(!await Q(y)&&l.pathname.includes(".js"))return new Response(`if(caches){caches?.delete("${y}")}window.location.reload();export {}`,{headers:{"Content-Type":"application/javascript"}});try{let v=Bun.file(y),E=W(v.lastModified);return new Response(v.stream(),{headers:{"Content-Type":v.type,"Cache-Control":"public, max-age=31536000, must-revalidate","Content-Length":String(v.size),ETag:E}})}catch(v){return o.onException?.(v),new Response("Not found",{status:404})}}let b=o.fetch.bind(o);try{let l=await b(n);if(l instanceof Response)return l;else{let $=[];return $.push({content:r}),await l({getStyles:async(j)=>{if(!j)return I([]);for(let v of j){let E=e[`app/views/${v}.tsx`];for(let L of E?.css??[]){let H=Bun.file(`${process.env.DIST_DIR}/client/${L}`);$.push({id:L,content:await H.text()})}}return I($)},bootstrapModules:[`/${e["app/client.tsx"].file}`],loaders:t,viewImportMap:u,ogMap:a,cssManifest:g})}}catch(l){if(console.error(l),c.startsWith("/api"))return new Response(JSON.stringify({error:l.message}),{status:500,headers:{"Content-Type":"application/json"}});return o.onException?.(l),new Response(l.stack,{status:500})}}let d=Bun.serve({maxRequestBodySize:10737418240,fetch:async(n,c)=>{if(!n.headers.get("x-forwarded-for")){let f=c.requestIP(n);n.headers.set("x-forwarded-for",f.address)}return await p(n)},idleTimeout:Number(process.env.SERVER_IDLE_TIMEOUT??10),port:process.env.PORT||5173});return console.log("Production server running on",d.url.href),d}import{IncomingMessage as V,ServerResponse as M}from"http";import{Socket as k}from"net";import{join as q}from"path";import{createServer as tt}from"vite";function et(o,e){let i=new URL(e.url),u=new V(new k);u.url=i.pathname+i.search,u.method=e.method,u.headers=Object.fromEntries(e.headers);let a=new M(u),g=[];return new Promise((h)=>{a.write=(w)=>{if(w)g.push(Buffer.from(w));return!0},a.end=(w)=>{if(w&&typeof w!=="function")g.push(Buffer.from(w));let t=new Headers;for(let[s,r]of Object.entries(a.getHeaders())){if(r==null)continue;for(let p of Array.isArray(r)?r:[r])t.append(s,String(p))}return h(new Response(g.length?Buffer.concat(g):null,{status:a.statusCode,headers:t})),a},o.middlewares(u,a,()=>h(null))})}var G=process.cwd(),U=q(G,"app");async function st(o){let e=Boolean(globalThis.__gemiVite),i=globalThis.__gemiVite??=await tt({server:{middlewareMode:!0},appType:"custom"});process.env.ROOT_DIR=G,process.env.APP_DIR=U;let u=Bun.serve({port:5173,fetch:async(a)=>{let g=o.fetch.bind(o),h=await et(i,a)??await g(a),{pathname:w,host:t,protocol:s}=new URL(a.url);if(w.startsWith("/render-error.js"))return new Response("window.render_error = true",{headers:{"Content-Type":"application/javascript"}});if(w.startsWith("/refresh.js"))return new Response(`
52
+ import RefreshRuntime from "${s}//${t}/@react-refresh";
53
+ RefreshRuntime.injectIntoGlobalHook(window);
54
+ window.$RefreshReg$ = () => {};
55
+ window.$RefreshSig$ = () => (type) => type;
56
+ window.__vite_plugin_react_preamble_installed__ = true;
57
+ `,{headers:{"Content-Type":"application/javascript"}});if(h instanceof Response)return h;else{let r={},p={},d=(f,R)=>`"${f}": () => import("${R}")`,n=[];for(let f of["404",...o.getFlatComponentTree.call(o)]){let R=`${process.env.APP_DIR}`,m=await i.ssrLoadModule(`${R}/views/${f}.tsx`,{fixStacktrace:!0});r[f]=m.default,p[f]=m?.OpenGraph,n.push(d(f,`${R}/views/${f}.tsx`))}let c=`{${n.join(",")}}`;return await h({getStyles:async(f)=>await P(U,i,f),bootstrapModules:["/refresh.js","/app/client.tsx","/@vite/client"],viewImportMap:r,ogMap:p,loaders:c,cssManifest:{}})}}});if(e)i.ws.send({type:"custom",event:"http-reload"});return u}export{Z as startProdServer,K as startDevServer,st as dev};
52
58
 
53
- //# debugId=60D6A45AB29703A064756E2164756E21
59
+ //# debugId=3508ECE14185AD0C64756E2164756E21
@@ -1,15 +1,16 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../server/dev.ts", "../server/styles.tsx", "../server/renderErrorPage.ts", "../server/prod.ts", "../server/generateEtag.ts", "../../../node_modules/.bun/urlpattern-polyfill@10.1.0/node_modules/urlpattern-polyfill/index.js"],
3
+ "sources": ["../server/dev.ts", "../server/styles.tsx", "../server/renderErrorPage.ts", "../server/prod.ts", "../server/generateEtag.ts", "../../../node_modules/.bun/urlpattern-polyfill@10.1.0/node_modules/urlpattern-polyfill/index.js", "../server/dev2.ts"],
4
4
  "sourcesContent": [
5
5
  "import type { Serve } from \"bun\";\nimport { join } from \"node:path\";\n\nimport type { App } from \"../app/App\";\nimport { createDevStyles } from \"./styles\";\nimport { renderErrorPage } from \"./renderErrorPage\";\n\nconst rootDir = process.cwd();\nconst appDir = join(rootDir, \"app\");\n\nexport async function startDevServer() {\n const root = process.cwd();\n\n const vite = await (await import(\"vite\")).createServer({\n root,\n logLevel: \"error\",\n server: {\n watch: {\n usePolling: true,\n interval: 100,\n // ignore paths starts with .\n ignored: [\"**/storage/**\", \"**/node_modules/**\", \"**/.**\"],\n },\n hmr: {\n clientPort: 5174,\n },\n },\n appType: \"custom\",\n resolve: {\n alias: {\n \"@/app\": appDir,\n },\n },\n });\n\n process.env.ROOT_DIR = rootDir;\n process.env.APP_DIR = appDir;\n\n async function handleDevRequests(req: Request): Promise<Response> {\n const { pathname, host, protocol } = new URL(req.url);\n if (pathname.startsWith(\"/render-error.js\")) {\n return new Response(\"window.render_error = true\", {\n headers: {\n \"Content-Type\": \"application/javascript\",\n },\n });\n }\n if (pathname.startsWith(\"/refresh.js\")) {\n return new Response(\n `\n import RefreshRuntime from \"${protocol}//${host}/@react-refresh\";\n RefreshRuntime.injectIntoGlobalHook(window);\n window.$RefreshReg$ = () => {};\n window.$RefreshSig$ = () => (type) => type;\n window.__vite_plugin_react_preamble_installed__ = true;\n `,\n {\n headers: {\n \"Content-Type\": \"application/javascript\",\n },\n },\n );\n }\n\n try {\n const res = await fetch(`http://localhost:5174${pathname}`);\n\n if (res.ok) {\n return res;\n }\n } catch (err) {\n console.log(err);\n }\n }\n\n async function getApp(): Promise<App> {\n try {\n const module = await vite.ssrLoadModule(join(appDir, \"bootstrap.ts\"), {\n fixStacktrace: true,\n });\n return module.app;\n } catch (err) {\n vite.ws.send({ type: \"error\", err: { ...err, message: \"\" } });\n console.error(err);\n }\n }\n\n async function createServe(app: App): Promise<Serve> {\n const handler = app.fetch.bind(app);\n return {\n maxRequestBodySize: 10 * 1024 * 1024 * 1024, // 10 GB\n fetch: async (req, server) => {\n if (server.upgrade(req, { data: { headers: req.headers } })) {\n return; // do not return a Response\n }\n if (!req.headers.get(\"x-forwarded-for\")) {\n const ip = server.requestIP(req);\n req.headers.set(\"x-forwarded-for\", ip.address);\n }\n\n const { pathname } = new URL(req.url);\n\n const devResponse = await handleDevRequests(req);\n if (devResponse instanceof Response) {\n return devResponse;\n }\n\n try {\n const result = await handler(req);\n if (result instanceof Response) {\n return result;\n } else {\n const viewImportMap = {};\n const ogMap = {};\n const template = (viewName: string, path: string) =>\n `\"${viewName}\": () => import(\"${path}\")`;\n const templates = [];\n\n for (const fileName of [\n \"404\",\n ...app.getFlatComponentTree.call(app),\n ]) {\n if (process.env.NODE_ENV === \"test\") {\n break;\n }\n const appDir = `${process.env.APP_DIR}`;\n const mod = await vite.ssrLoadModule(\n `${appDir}/views/${fileName}.tsx`,\n { fixStacktrace: true },\n );\n\n viewImportMap[fileName] = mod.default;\n ogMap[fileName] = mod?.OpenGraph;\n templates.push(\n template(fileName, `${appDir}/views/${fileName}.tsx`),\n );\n }\n\n const loaders = `{${templates.join(\",\")}}`;\n\n return await result({\n getStyles: async (currentViews: string[]) =>\n await createDevStyles(appDir, vite, currentViews),\n bootstrapModules: [\n \"/refresh.js\",\n \"/app/client.tsx\",\n \"/@vite/client\",\n ],\n viewImportMap,\n ogMap,\n loaders,\n cssManifest: {},\n });\n }\n } catch (err) {\n if (pathname.startsWith(\"/api\")) {\n return new Response(JSON.stringify({ error: err.message }), {\n status: 500,\n headers: { \"Content-Type\": \"application/json\" },\n });\n }\n\n return new Response(renderErrorPage(err), {\n headers: { \"Content-Type\": \"text/html\" },\n });\n }\n },\n\n idleTimeout: Number(process.env.SERVER_IDLE_TIMEOUT ?? 10),\n port: process.env.PORT || 5173,\n websocket: app.websocket,\n };\n }\n\n await vite.listen(5174);\n\n const app = await getApp();\n const serve = await createServe(app);\n const server = Bun.serve(serve);\n app.onPublish(\n (\n topic: string,\n data: string | ArrayBufferView | ArrayBuffer | SharedArrayBuffer,\n compress?: boolean,\n ) => {\n server.publish(topic, data, compress);\n },\n );\n\n console.log(`Server started on http://localhost:${process.env.PORT || 5173}`);\n\n vite.watcher.on(\"change\", async (file) => {\n const fileRelativePath = file.replace(rootDir, \"\");\n if (fileRelativePath.startsWith(\"/logs\")) {\n return;\n }\n\n if (fileRelativePath.startsWith(\"/prisma\")) {\n return;\n }\n\n if (fileRelativePath.startsWith(\"/app/views\")) {\n console.log(`[vite] ${fileRelativePath} changed. 🍜 Hot reloading...`);\n return;\n }\n\n console.log(`[vite] ${fileRelativePath} changed. Reloading...`);\n const modules = vite.moduleGraph.getModulesByFile(file) ?? [];\n for (const mod of Array.from(modules)) {\n try {\n vite.moduleGraph.invalidateModule(mod);\n } catch (err) {}\n }\n\n try {\n const app = await getApp();\n const serve = await createServe(app);\n app.onPublish(\n (\n topic: string,\n data: string | ArrayBufferView | ArrayBuffer | SharedArrayBuffer,\n compress?: boolean,\n ) => {\n server.publish(topic, data, compress);\n },\n );\n server.reload(serve);\n vite.ws.send({\n type: \"custom\",\n event: \"http-reload\",\n });\n vite.ws.send({\n type: \"update\",\n updates: [],\n });\n } catch (err) {\n console.log(\"Error on server reload\");\n console.log(vite.ssrFixStacktrace(err));\n }\n });\n\n return server;\n}\n",
6
- "import { ModuleNode, type ViteDevServer } from \"vite\";\n\nfunction replaceStrings(text: string, record: Record<string, string>): string {\n const escapedKeys = Object.keys(record)\n .sort((a, b) => b.length - a.length)\n .map((key) => key.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\"));\n\n // Create a single regex with all keys\n const regex = new RegExp(escapedKeys.join(\"|\"), \"g\");\n\n return text.replace(regex, (match) => record[match]);\n}\n\nexport async function createDevStyles(\n appDir: string,\n vite: ViteDevServer,\n currentViews: string[] = [],\n) {\n const views = [\n ...currentViews.map((view) => `${appDir}/views/${view}.tsx`),\n `${appDir}/views/RootLayout.tsx`,\n ];\n\n let modules = new Set<ModuleNode>();\n for (const view of views) {\n const mod = vite.moduleGraph.getModulesByFile(view);\n if (mod) {\n modules = modules.union(mod);\n }\n }\n\n const styles = [];\n const cssModules = [];\n const cssModuleContent: Record<string, string> = {};\n for (const mod of modules as any) {\n if (mod) {\n for (const imported of mod.importedModules) {\n if (imported.file.includes(\"module.css\")) {\n cssModuleContent[imported.file] =\n imported.ssrTransformResult.map.sourcesContent.join(\"\");\n }\n if (imported.file.includes(\".css\")) {\n cssModules.push(imported.file);\n }\n }\n }\n }\n\n for (const cssModulePath of cssModules) {\n const transform = await vite.transformRequest(cssModulePath + \"?direct\");\n\n const isCssModule = cssModulePath.includes(\"module.css\");\n\n let transformedCssModule = \"\";\n\n if (isCssModule) {\n transformedCssModule = replaceStrings(\n cssModuleContent[cssModulePath],\n transform.default,\n );\n }\n\n styles.push({\n isDev: true,\n id: cssModulePath,\n content: isCssModule ? transformedCssModule : transform.code,\n });\n }\n\n return styles.map((style, i) => {\n return (\n <style key={i} type=\"text/css\" data-vite-dev-id={style.id}>\n {style.content}\n </style>\n );\n });\n}\n\nexport async function createStyles(styles = []) {\n return styles.map((style, i) => {\n return (\n <style key={i} id={style?.id} type=\"text/css\">\n {style.content}\n </style>\n );\n });\n}\n",
6
+ "import { createElement } from \"react\";\nimport { ModuleNode, type ViteDevServer } from \"vite\";\n\nfunction replaceStrings(text: string, record: Record<string, string>): string {\n const escapedKeys = Object.keys(record)\n .sort((a, b) => b.length - a.length)\n .map((key) => key.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\"));\n\n // Create a single regex with all keys\n const regex = new RegExp(escapedKeys.join(\"|\"), \"g\");\n\n return text.replace(regex, (match) => record[match]);\n}\n\nexport async function createDevStyles(\n appDir: string,\n vite: ViteDevServer,\n currentViews: string[] = [],\n) {\n const views = [\n ...currentViews.map((view) => `${appDir}/views/${view}.tsx`),\n `${appDir}/views/RootLayout.tsx`,\n ];\n\n let modules = new Set<ModuleNode>();\n for (const view of views) {\n const mod = vite.moduleGraph.getModulesByFile(view);\n if (mod) {\n modules = modules.union(mod);\n }\n }\n\n const styles = [];\n const cssModules = [];\n const cssModuleContent: Record<string, string> = {};\n for (const mod of modules as any) {\n if (mod) {\n for (const imported of mod.importedModules) {\n if (imported.file.includes(\"module.css\")) {\n cssModuleContent[imported.file] = imported.ssrTransformResult.map.sourcesContent.join(\"\");\n }\n if (imported.file.includes(\".css\")) {\n cssModules.push(imported.file);\n }\n }\n }\n }\n\n for (const cssModulePath of cssModules) {\n const transform = await vite.transformRequest(cssModulePath + \"?direct\");\n\n const isCssModule = cssModulePath.includes(\"module.css\");\n\n let transformedCssModule = \"\";\n\n if (isCssModule) {\n transformedCssModule = replaceStrings(cssModuleContent[cssModulePath], transform.default);\n }\n\n styles.push({\n isDev: true,\n id: cssModulePath,\n content: isCssModule ? transformedCssModule : transform.code,\n });\n }\n\n return styles.map((style, i) => {\n return createElement(\"style\", {\n key: i,\n type: \"text/css\",\n \"data-vite-dev-id\": style.id,\n dangerouslySetInnerHTML: { __html: style.content },\n });\n });\n}\n\nexport async function createStyles(styles = []) {\n return styles.map((style, i) => {\n return createElement(\"style\", {\n key: i,\n id: style?.id,\n type: \"text/css\",\n dangerouslySetInnerHTML: { __html: style.content },\n });\n });\n}\n",
7
7
  "function cleanupTerminalText(text) {\n return (\n text\n // Remove ANSI escape sequences (colors, formatting)\n .replace(/\\x1b\\[[0-9;]*m/g, \"\")\n // Remove ANSI escape sequences with different format\n .replace(/\\[[0-9;]*m/g, \"\")\n // Remove excessive whitespace and normalize line breaks\n .replace(/\\n\\s*\\n/g, \"\\n\")\n // Trim each line\n .split(\"\\n\")\n .map((line) => line.trim())\n .filter((line) => line.length > 0)\n .join(\"\\n\")\n .trim()\n );\n}\n\nexport function renderErrorPage(err: any) {\n return `\n<!DOCTYPE html>\n<html lang=\"en\">\n <head>\n <meta charset=\"UTF-8\" />\n <meta\n name=\"viewport\"\n content=\"width=device-width, initial-scale=1.0\"\n />\n\n <title>Error</title>\n <style>\n body {\n font-family: Arial, sans-serif;\n padding: 20px;\n }\n h1 {\n color: red;\n }\n </style>\n </head>\n <body>\n <div id=\"overlay\"></div>\n <script type=\"module\" src=\"/refresh.js\"></script>\n <script type=\"module\" src=\"/@vite/client\"></script>\n <script>\n ${cleanupTerminalText.toString()}\n const err = ${JSON.stringify(err, Object.getOwnPropertyNames(err), 2)}\n\n window.addEventListener('load', () => {\n const container = document.getElementById('overlay')\n const ErrorOverlay = customElements.get('vite-error-overlay')\n if (ErrorOverlay) {\n const overlay = new ErrorOverlay({ ...err, message: cleanupTerminalText(err.message) });\n container.appendChild(overlay)\n }\n })\n </script>\n </body>\n</html>\n`;\n}\n",
8
8
  "import { join } from \"node:path\";\nimport { generateETag } from \"./generateEtag\";\nimport { URLPattern } from \"urlpattern-polyfill\";\nimport { exists } from \"node:fs/promises\";\nimport { createStyles } from \"./styles\";\n\nconst projectDir = process.env.GEMI_PROJECT_DIR ?? \"\";\nconst rootDir = join(process.cwd(), projectDir);\n\nconst appDir = join(rootDir, \"app\");\nconst distDir = join(rootDir, \"dist\");\n\nexport async function startProdServer() {\n const { app } = await import(`${distDir}/server/bootstrap.mjs`);\n const manifest = await import(`${distDir}/client/.vite/manifest.json`);\n const serverManifest = await import(`${distDir}/server/.vite/manifest.json`);\n\n process.env.ROOT_DIR = rootDir;\n process.env.APP_DIR = appDir;\n process.env.DIST_DIR = distDir;\n\n const viewImportMap = {};\n const ogMap = {};\n const cssManifest = {};\n const template = (viewName: string, path: string) =>\n `\"${viewName}\": () => import(\"${path}\")`;\n const templates = [];\n\n for (const fileName of [\"404\", ...app.getFlatComponentTree.call(app)]) {\n const serverFile = serverManifest[`app/views/${fileName}.tsx`];\n if (!serverFile?.file) {\n console.log(`Server file not found for ${fileName}`);\n console.log(serverFile);\n const files = Object.keys(serverManifest);\n const path = `app/views/${fileName}.tsx`;\n console.log(`${path} not found in server manifest`);\n console.log(files);\n }\n const mod = await import(\n `${process.env.DIST_DIR}/server/${serverFile?.file}`\n );\n viewImportMap[fileName] = mod.default;\n ogMap[fileName] = mod.OpenGraph;\n const clientFile = manifest[`app/views/${fileName}.tsx`];\n\n if (clientFile?.css && clientFile?.css.length > 0) {\n cssManifest[fileName] = clientFile?.css;\n }\n if (clientFile) {\n templates.push(template(fileName, `/${clientFile?.file}`));\n }\n }\n\n const loaders = `{${templates.join(\",\")}}`;\n\n const appCssFile = Bun.file(\n `${distDir}/client/${manifest[\"app/client.tsx\"].css}`,\n );\n const appCSSContent = await appCssFile.text();\n\n async function requestHandler(req: Request) {\n const { pathname } = new URL(req.url);\n\n const pattern = new URLPattern({\n pathname: \"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|avif|webp|ico|ttf)\",\n });\n\n const isWellKnownFile = pathname.startsWith(\"/.well-known\");\n const isFileRequest = pattern.test({ pathname }) || isWellKnownFile;\n\n const isApi = pathname.startsWith(\"/api\");\n\n if (isFileRequest && !isApi) {\n const url = new URL(req.url);\n const filePath = req.url.replace(url.origin, \"\").split(\"?\")[0];\n const distPath = `${distDir}/client${filePath.replace(\"/assets/assets\", \"/assets\")}`;\n const doesExist = await exists(distPath);\n\n if (!doesExist && url.pathname.includes(\".js\")) {\n return new Response(\n `if(caches){caches?.delete(\"${distPath}\")}window.location.reload();export {}`,\n {\n headers: { \"Content-Type\": \"application/javascript\" },\n },\n );\n }\n try {\n const file = Bun.file(distPath);\n\n const etag = generateETag(file.lastModified);\n return new Response(file.stream(), {\n headers: {\n \"Content-Type\": file.type,\n \"Cache-Control\": \"public, max-age=31536000, must-revalidate\",\n \"Content-Length\": String(file.size),\n ETag: etag,\n },\n });\n } catch (error) {\n app.onException?.(error);\n return new Response(\"Not found\", { status: 404 });\n }\n }\n\n const handler = app.fetch.bind(app);\n\n try {\n const result = await handler(req);\n if (result instanceof Response) {\n return result;\n } else {\n const styles = [];\n\n styles.push({\n content: appCSSContent,\n });\n\n const getStyles = async (currentViews: string[]) => {\n if (!currentViews) {\n return createStyles([]);\n }\n for (const view of currentViews) {\n const clientFile = manifest[`app/views/${view}.tsx`];\n for (const cssFile of clientFile?.css ?? []) {\n const css = Bun.file(`${process.env.DIST_DIR}/client/${cssFile}`);\n styles.push({\n id: cssFile,\n content: await css.text(),\n });\n }\n }\n return createStyles(styles);\n };\n\n return await result({\n getStyles,\n bootstrapModules: [`/${manifest[\"app/client.tsx\"].file}`],\n loaders,\n viewImportMap,\n ogMap,\n cssManifest,\n });\n }\n } catch (err) {\n console.error(err);\n if (pathname.startsWith(\"/api\")) {\n return new Response(JSON.stringify({ error: err.message }), {\n status: 500,\n headers: { \"Content-Type\": \"application/json\" },\n });\n }\n app.onException?.(err);\n return new Response(err.stack, { status: 500 });\n }\n }\n\n const server = Bun.serve({\n maxRequestBodySize: 10 * 1024 * 1024 * 1024, // 10 GB\n fetch: async (req, server) => {\n if (!req.headers.get(\"x-forwarded-for\")) {\n const ip = server.requestIP(req);\n req.headers.set(\"x-forwarded-for\", ip.address);\n }\n return await requestHandler(req);\n },\n idleTimeout: Number(process.env.SERVER_IDLE_TIMEOUT ?? 10),\n port: process.env.PORT || 5173,\n });\n\n console.log(\"Production server running on\", server.url.href);\n\n return server;\n}\n",
9
9
  "export function generateETag(lastModified: number): string {\n // Assuming the last modified timestamp is in milliseconds\n const lastModifiedStr = lastModified.toString();\n\n const hasher = new Bun.CryptoHasher(\"sha1\");\n hasher.update(lastModifiedStr);\n const hash = hasher.digest(\"hex\");\n\n return hash;\n}\n",
10
- "import { URLPattern } from \"./dist/urlpattern.js\";\n\nexport { URLPattern };\n\nif (!globalThis.URLPattern) {\n globalThis.URLPattern = URLPattern;\n}\n"
10
+ "import { URLPattern } from \"./dist/urlpattern.js\";\n\nexport { URLPattern };\n\nif (!globalThis.URLPattern) {\n globalThis.URLPattern = URLPattern;\n}\n",
11
+ "import { IncomingMessage, ServerResponse } from \"node:http\";\nimport { Socket } from \"node:net\";\nimport { join } from \"node:path\";\n\nimport { createServer, type ViteDevServer } from \"vite\";\n\nimport { App } from \"../app\";\nimport { createDevStyles } from \"./styles\";\n\n// Run a Web `Request` through Vite's Connect middleware.\n// Resolves to a `Response` when Vite handles the request (module transforms,\n// assets, the HMR client, ...), or `null` when it calls `next()` — which, with\n// `appType: \"custom\"`, it does for everything it doesn't own.\nfunction viteMiddleware(vite: ViteDevServer, request: Request): Promise<Response | null> {\n const url = new URL(request.url);\n\n const req = new IncomingMessage(new Socket());\n req.url = url.pathname + url.search;\n req.method = request.method;\n req.headers = Object.fromEntries(request.headers);\n\n const res = new ServerResponse(req);\n const chunks: Buffer[] = [];\n\n return new Promise((resolve) => {\n res.write = ((chunk: any) => {\n if (chunk) chunks.push(Buffer.from(chunk));\n return true;\n }) as typeof res.write;\n\n res.end = ((chunk?: any) => {\n if (chunk && typeof chunk !== \"function\") chunks.push(Buffer.from(chunk));\n\n const headers = new Headers();\n for (const [key, value] of Object.entries(res.getHeaders())) {\n if (value == null) continue;\n for (const v of Array.isArray(value) ? value : [value]) {\n headers.append(key, String(v));\n }\n }\n\n resolve(\n new Response(chunks.length ? Buffer.concat(chunks) : null, {\n status: res.statusCode,\n headers,\n }),\n );\n return res;\n }) as typeof res.end;\n\n vite.middlewares(req, res, () => resolve(null));\n });\n}\n\nconst rootDir = process.cwd();\nconst appDir = join(rootDir, \"app\");\n\ndeclare global {\n // Created once and reused across `bun --hot` reloads (see below).\n var __gemiVite: ViteDevServer | undefined;\n}\n\nexport async function dev(app: App) {\n // `bun --hot` re-runs this module on every server-code change, so keep a\n // single Vite server on `globalThis` instead of spawning a new one (and a new\n // HMR socket) on each reload.\n const isReload = Boolean(globalThis.__gemiVite);\n const vite = (globalThis.__gemiVite ??= await createServer({\n server: { middlewareMode: true },\n appType: \"custom\",\n }));\n\n process.env.ROOT_DIR = rootDir;\n process.env.APP_DIR = appDir;\n\n const server = Bun.serve({\n port: 5173,\n fetch: async (req) => {\n const handler = app.fetch.bind(app);\n const result = (await viteMiddleware(vite, req)) ?? (await handler(req));\n const { pathname, host, protocol } = new URL(req.url);\n if (pathname.startsWith(\"/render-error.js\")) {\n return new Response(\"window.render_error = true\", {\n headers: {\n \"Content-Type\": \"application/javascript\",\n },\n });\n }\n if (pathname.startsWith(\"/refresh.js\")) {\n return new Response(\n `\n import RefreshRuntime from \"${protocol}//${host}/@react-refresh\";\n RefreshRuntime.injectIntoGlobalHook(window);\n window.$RefreshReg$ = () => {};\n window.$RefreshSig$ = () => (type) => type;\n window.__vite_plugin_react_preamble_installed__ = true;\n `,\n {\n headers: {\n \"Content-Type\": \"application/javascript\",\n },\n },\n );\n }\n if (result instanceof Response) {\n return result;\n } else {\n const viewImportMap = {};\n const ogMap = {};\n const template = (viewName: string, path: string) =>\n `\"${viewName}\": () => import(\"${path}\")`;\n const templates = [];\n\n for (const fileName of [\"404\", ...app.getFlatComponentTree.call(app)]) {\n if (process.env.NODE_ENV === \"test\") {\n break;\n }\n const appDir = `${process.env.APP_DIR}`;\n const mod = await vite.ssrLoadModule(`${appDir}/views/${fileName}.tsx`, {\n fixStacktrace: true,\n });\n\n viewImportMap[fileName] = mod.default;\n ogMap[fileName] = mod?.OpenGraph;\n templates.push(template(fileName, `${appDir}/views/${fileName}.tsx`));\n }\n\n const loaders = `{${templates.join(\",\")}}`;\n\n return await result({\n getStyles: async (currentViews: string[]) =>\n await createDevStyles(appDir, vite, currentViews),\n bootstrapModules: [\"/refresh.js\", \"/app/client.tsx\", \"/@vite/client\"],\n viewImportMap,\n ogMap,\n loaders,\n cssManifest: {},\n });\n }\n },\n });\n\n // On a reload `app` has already been rebuilt with the new code and Bun.serve\n // above has swapped in the new fetch handler, so the updated controllers are\n // live *now*. Tell the client to re-run its queries only at this point —\n // firing it from Vite's file watcher instead races Bun's reload and leaves\n // the UI one change behind.\n if (isReload) {\n vite.ws.send({ type: \"custom\", event: \"http-reload\" });\n }\n\n return server;\n}\n"
11
12
  ],
12
- "mappings": "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",
13
- "debugId": "60D6A45AB29703A064756E2164756E21",
13
+ "mappings": "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",
14
+ "debugId": "3508ECE14185AD0C64756E2164756E21",
14
15
  "names": []
15
16
  }
@@ -0,0 +1,12 @@
1
+ import { Kernel } from "../kernel";
2
+ import { Instrumentation } from "./types";
3
+ export declare class Server {
4
+ private app;
5
+ private instrumentation;
6
+ constructor(params: {
7
+ kernel: new () => Kernel;
8
+ instrumentation?: Instrumentation;
9
+ });
10
+ start(): Promise<void>;
11
+ }
12
+ //# sourceMappingURL=Server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../server2/Server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,qBAAa,MAAM;IACjB,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,eAAe,CAAkB;gBAE7B,MAAM,EAAE;QAAE,MAAM,EAAE,UAAU,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,eAAe,CAAA;KAAE;IAO7E,KAAK;CAgBZ"}
@@ -0,0 +1,5 @@
1
+ export declare function printStartupBanner(params: {
2
+ port: number | string;
3
+ rootDir: string;
4
+ }): void;
5
+ //# sourceMappingURL=banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../server2/banner.ts"],"names":[],"mappings":"AA8CA,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB,QAsBA"}
@@ -0,0 +1,2 @@
1
+ export declare function generateETag(lastModified: number): string;
2
+ //# sourceMappingURL=generateEtag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateEtag.d.ts","sourceRoot":"","sources":["../../server2/generateEtag.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CASzD"}
@@ -0,0 +1,26 @@
1
+ import { type ViteDevServer } from "vite";
2
+ import { App } from "../app";
3
+ import { Instrumentation } from "./types";
4
+ declare global {
5
+ var __gemiVite: ViteDevServer | undefined;
6
+ var __gemiErrorHooked: boolean | undefined;
7
+ var __gemiErrorActive: boolean | undefined;
8
+ var __gemiErrorPageServed: boolean | undefined;
9
+ }
10
+ export declare function viteErrorPayload(err: any): {
11
+ message: any;
12
+ stack: string;
13
+ frame: string;
14
+ loc: {
15
+ file: any;
16
+ line: any;
17
+ column: any;
18
+ };
19
+ } | {
20
+ message: any;
21
+ stack: any;
22
+ frame?: undefined;
23
+ loc?: undefined;
24
+ };
25
+ export declare function httpDev(app: App, instrumentation: Instrumentation): Promise<Bun.Server<undefined>>;
26
+ //# sourceMappingURL=httpDev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpDev.d.ts","sourceRoot":"","sources":["../../server2/httpDev.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;AAExD,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAG7B,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAoD1C,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,UAAU,EAAE,aAAa,GAAG,SAAS,CAAC;IAE1C,IAAI,iBAAiB,EAAE,OAAO,GAAG,SAAS,CAAC;IAE3C,IAAI,iBAAiB,EAAE,OAAO,GAAG,SAAS,CAAC;IAG3C,IAAI,qBAAqB,EAAE,OAAO,GAAG,SAAS,CAAC;CAChD;AAoBD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG;;;;;;;;;;;;;;EAoBxC;AA+BD,wBAAsB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,eAAe,kCAqLvE"}
@@ -0,0 +1,4 @@
1
+ import type { App } from "../app";
2
+ import { Instrumentation } from "./types";
3
+ export declare function httpProd(app: App, instrumentation: Instrumentation): Promise<Bun.Server<undefined>>;
4
+ //# sourceMappingURL=httpProd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpProd.d.ts","sourceRoot":"","sources":["../../server2/httpProd.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAa1C,wBAAsB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,eAAe,kCAoKxE"}
@@ -0,0 +1,2 @@
1
+ export { Server } from "./Server";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../server2/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function renderErrorPage(err: any): string;
2
+ //# sourceMappingURL=renderErrorPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderErrorPage.d.ts","sourceRoot":"","sources":["../../server2/renderErrorPage.ts"],"names":[],"mappings":"AAkBA,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,UA0CvC"}
@@ -0,0 +1,18 @@
1
+ import { type ViteDevServer } from "vite";
2
+ export declare function createDevStyles(appDir: string, vite: ViteDevServer, currentViews?: string[]): Promise<import("react").DetailedReactHTMLElement<{
3
+ key: number;
4
+ type: string;
5
+ "data-vite-dev-id": any;
6
+ dangerouslySetInnerHTML: {
7
+ __html: any;
8
+ };
9
+ }, HTMLElement>[]>;
10
+ export declare function createStyles(styles?: any[]): Promise<import("react").DetailedReactHTMLElement<{
11
+ key: number;
12
+ id: any;
13
+ type: string;
14
+ dangerouslySetInnerHTML: {
15
+ __html: any;
16
+ };
17
+ }, HTMLElement>[]>;
18
+ //# sourceMappingURL=styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../server2/styles.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;AAa3D,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,aAAa,EACnB,YAAY,GAAE,MAAM,EAAO;;;;;;;mBA8D5B;AAED,wBAAsB,YAAY,CAAC,MAAM,QAAK;;;;;;;mBAS7C"}
@@ -0,0 +1,2 @@
1
+ export type Instrumentation = (req: Request, next: (req: Request) => Promise<Response>) => Promise<Response>;
2
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../server2/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,CAC5B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,KACtC,OAAO,CAAC,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type FSWatcher } from "node:fs";
2
+ declare global {
3
+ var __gemiEnvWatcher: FSWatcher | undefined;
4
+ }
5
+ export declare function envFiles(rootDir: string): string[];
6
+ export declare function watchEnv(rootDir?: string): void;
7
+ //# sourceMappingURL=watchEnv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watchEnv.d.ts","sourceRoot":"","sources":["../../server2/watchEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AAG1E,OAAO,CAAC,MAAM,CAAC;IAGb,IAAI,gBAAgB,EAAE,SAAS,GAAG,SAAS,CAAC;CAC7C;AA8BD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CASlD;AAgCD,wBAAgB,QAAQ,CAAC,OAAO,GAAE,MAAsB,QAmBvD"}
@@ -0,0 +1,4 @@
1
+ export declare class Singleton {
2
+ static use<T extends Singleton>(this: new () => T): T;
3
+ }
4
+ //# sourceMappingURL=Singleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Singleton.d.ts","sourceRoot":"","sources":["../../services/Singleton.ts"],"names":[],"mappings":"AAEA,qBAAa,SAAS;IACpB,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC;CAUtD"}
@@ -1,4 +1,4 @@
1
- import type { CronExpression } from "cronbake";
1
+ export type CronExpression = "@yearly" | "@annually" | "@monthly" | "@weekly" | "@daily" | "@midnight" | "@hourly" | (string & {});
2
2
  export declare class CronJob {
3
3
  name: string;
4
4
  cron: CronExpression;
@@ -1 +1 @@
1
- {"version":3,"file":"CronJob.d.ts","sourceRoot":"","sources":["../../../services/cron/CronJob.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,qBAAa,OAAO;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IAErB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAChC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAC9B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAElC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc;CAGtC"}
1
+ {"version":3,"file":"CronJob.d.ts","sourceRoot":"","sources":["../../../services/cron/CronJob.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,WAAW,GACX,UAAU,GACV,SAAS,GACT,QAAQ,GACR,WAAW,GACX,SAAS,GACT,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,qBAAa,OAAO;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IAErB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAChC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAC9B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAElC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc;CAGtC"}
@@ -1,8 +1,13 @@
1
1
  import { ServiceContainer } from "../ServiceContainer";
2
2
  import type { CronServiceProvider } from "./CronServiceProvider";
3
+ type BunCronHandle = Bun.CronJob;
4
+ declare global {
5
+ var __gemiCronJobs: Map<string, BunCronHandle> | undefined;
6
+ }
3
7
  export declare class CronServiceContainer extends ServiceContainer {
4
8
  service: CronServiceProvider;
5
9
  static _name: string;
6
10
  constructor(service: CronServiceProvider);
7
11
  }
12
+ export {};
8
13
  //# sourceMappingURL=CronServiceContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CronServiceContainer.d.ts","sourceRoot":"","sources":["../../../services/cron/CronServiceContainer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,qBAAa,oBAAqB,SAAQ,gBAAgB;IAGrC,OAAO,EAAE,mBAAmB;IAF/C,MAAM,CAAC,KAAK,SAA0B;gBAEnB,OAAO,EAAE,mBAAmB;CAqDhD"}
1
+ {"version":3,"file":"CronServiceContainer.d.ts","sourceRoot":"","sources":["../../../services/cron/CronServiceContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAKjE,KAAK,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC;AAEjC,OAAO,CAAC,MAAM,CAAC;IAMb,IAAI,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,SAAS,CAAC;CAC5D;AAED,qBAAa,oBAAqB,SAAQ,gBAAgB;IAGrC,OAAO,EAAE,mBAAmB;IAF/C,MAAM,CAAC,KAAK,SAA0B;gBAEnB,OAAO,EAAE,mBAAmB;CAoDhD"}
@@ -1,7 +1,7 @@
1
1
  export { FileStorageServiceProvider } from "./file-storage/FileStorageServiceProvider";
2
2
  export { FileSystemDriver } from "./file-storage/drivers/FileSystemDriver";
3
3
  export { S3Driver } from "./file-storage/drivers/S3Driver";
4
- export type { FileMetadata, PutFileParams, ReadFileParams, } from "./file-storage/drivers/types";
4
+ export type { FileMetadata, PutFileParams, ReadFileParams } from "./file-storage/drivers/types";
5
5
  export { FileStorageDriver } from "./file-storage/drivers/FileStorageDriver";
6
6
  export { RateLimiterServiceProvider } from "./rate-limiter/RateLimiterServiceProvider";
7
7
  export { InMemoryRateLimiter } from "./rate-limiter/drivers/InMemoryRateLimiterDriver";
@@ -18,7 +18,7 @@ export type { LogEntry } from "./logging/types";
18
18
  export { QueueServiceProvider } from "./queue/QueueServiceProvider";
19
19
  export { Job } from "./queue/Job";
20
20
  export { ImageOptimizationServiceProvider } from "./image-optimization/ImageOptimizationServiceProvider";
21
- export type { FitEnum, ResizeParameters, } from "./image-optimization/drivers/types";
21
+ export type { FitEnum, ResizeParameters } from "./image-optimization/drivers/types";
22
22
  export { ImageOptimizationDriver } from "./image-optimization/drivers/ImageOptimizationDriver";
23
23
  export { Sharp } from "./image-optimization/drivers/SharpDriver";
24
24
  export { GoogleOAuthProvider } from "../auth/oauth/GoogleOAuthProvider";
@@ -26,5 +26,6 @@ export { XOAuthProvider } from "../auth/oauth/XOAuthProvider";
26
26
  export { OAuthProvider } from "../auth/oauth/OAuthProvider";
27
27
  export { CronServiceProvider } from "./cron/CronServiceProvider";
28
28
  export { CronJob } from "./cron/CronJob";
29
- export { Service } from "./Injectable";
29
+ export { RedisServiceProvider } from "./redis/RedisServiceProvider";
30
+ export { Singleton } from "./Singleton";
30
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../services/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,YAAY,EACV,YAAY,EACZ,aAAa,EACb,cAAc,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAI9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAGnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAI7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAGlC,OAAO,EAAE,gCAAgC,EAAE,MAAM,uDAAuD,CAAC;AACzG,YAAY,EACV,OAAO,EACP,gBAAgB,GACjB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAC/F,OAAO,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAC;AAGjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../services/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAI9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAGnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAI7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAGlC,OAAO,EAAE,gCAAgC,EAAE,MAAM,uDAAuD,CAAC;AACzG,YAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAC/F,OAAO,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAC;AAGjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{$ as c,Z as a,_ as b,aa as d,ba as e,ca as f,da as g,ea as h,fa as i,ga as j,ha as k,ia as l,ja as m,ka as n,la as o,ma as p,na as q,oa as r,pa as s,qa as t,ra as u,sa as v,ta as w,ua as x,wa as y}from"../chunk-s34ss7ej.js";import"../chunk-a44rr4a0.js";import"../chunk-g9htz9wp.js";import"../chunk-8by5dnz7.js";import"../chunk-ektbs6gq.js";import"../chunk-b8t8hrgm.js";import"../chunk-sm6zbv38.js";import"../chunk-rtmsz7yd.js";import"../chunk-y9m0jemc.js";import"../chunk-md7n9kmr.js";import"../chunk-frdxhs0s.js";import"../chunk-e4v7ay0q.js";import"../chunk-qmpybvq3.js";import"../chunk-05yzymd6.js";import"../chunk-703zn6wy.js";import"../chunk-7fx4zpqd.js";import"../chunk-zf8mc5nr.js";export{v as XOAuthProvider,m as ViewRouterServiceProvider,r as Sharp,y as Service,e as S3Driver,j as ResendDriver,h as RateLimiterServiceProvider,f as RateLimiterDriver,o as QueueServiceProvider,t as OAuthProvider,n as LoggingServiceProvider,p as Job,g as InMemoryRateLimiter,s as ImageOptimizationServiceProvider,q as ImageOptimizationDriver,u as GoogleOAuthProvider,b as FileSystemDriver,c as FileStorageServiceProvider,a as FileStorageDriver,k as EmailServiceProvider,i as EmailDriver,w as CronServiceProvider,x as CronJob,l as BroadcastingServiceProvider,d as ApiRouterServiceProvider};
2
+ import{Ba as z,ba as a,ca as b,da as c,ea as d,fa as e,ga as f,ha as g,ia as h,ja as i,ka as j,la as k,ma as l,na as m,oa as n,pa as o,qa as p,ra as q,sa as r,ta as s,ua as t,va as u,wa as v,xa as w,ya as x,za as y}from"../chunk-stp84phd.js";import"../chunk-y8j3mhc5.js";import"../chunk-ewgyn3bd.js";import"../chunk-6ey5s3q9.js";import"../chunk-32bqjwdp.js";import"../chunk-t4f1hd5h.js";import"../chunk-y21w70m1.js";import"../chunk-v0pw47bz.js";import"../chunk-c0hftpkd.js";import"../chunk-xna33s0d.js";import"../chunk-zfb7fy42.js";import"../chunk-xn8qhpkm.js";import"../chunk-c7xghmmk.js";import"../chunk-qz4m6jpd.js";import"../chunk-d70jknn3.js";import"../chunk-demk6jrq.js";import"../chunk-3vwd9m9r.js";export{v as XOAuthProvider,m as ViewRouterServiceProvider,z as Singleton,r as Sharp,e as S3Driver,j as ResendDriver,y as RedisServiceProvider,h as RateLimiterServiceProvider,f as RateLimiterDriver,o as QueueServiceProvider,t as OAuthProvider,n as LoggingServiceProvider,p as Job,g as InMemoryRateLimiter,s as ImageOptimizationServiceProvider,q as ImageOptimizationDriver,u as GoogleOAuthProvider,b as FileSystemDriver,c as FileStorageServiceProvider,a as FileStorageDriver,k as EmailServiceProvider,i as EmailDriver,w as CronServiceProvider,x as CronJob,l as BroadcastingServiceProvider,d as ApiRouterServiceProvider};
3
3
 
4
- //# debugId=A948504650B3E17764756E2164756E21
4
+ //# debugId=920B37B600FDC65964756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "A948504650B3E17764756E2164756E21",
7
+ "debugId": "920B37B600FDC65964756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -0,0 +1,10 @@
1
+ import { RedisClient } from "bun";
2
+ import { ServiceContainer } from "../ServiceContainer";
3
+ import type { RedisServiceProvider } from "./RedisServiceProvider";
4
+ export declare class RedisServiceContainer extends ServiceContainer {
5
+ service: RedisServiceProvider;
6
+ static _name: string;
7
+ client: RedisClient;
8
+ constructor(service: RedisServiceProvider);
9
+ }
10
+ //# sourceMappingURL=RedisServiceContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedisServiceContainer.d.ts","sourceRoot":"","sources":["../../../services/redis/RedisServiceContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,qBAAa,qBAAsB,SAAQ,gBAAgB;IAQtC,OAAO,EAAE,oBAAoB;IAPhD,MAAM,CAAC,KAAK,SAA2B;IAKhC,MAAM,EAAE,WAAW,CAAC;gBAER,OAAO,EAAE,oBAAoB;CAIjD"}
@@ -0,0 +1,8 @@
1
+ import type { RedisOptions } from "bun";
2
+ import { ServiceProvider } from "../ServiceProvider";
3
+ export declare class RedisServiceProvider extends ServiceProvider {
4
+ url?: string;
5
+ options?: RedisOptions;
6
+ boot(): void;
7
+ }
8
+ //# sourceMappingURL=RedisServiceProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedisServiceProvider.d.ts","sourceRoot":"","sources":["../../../services/redis/RedisServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,qBAAa,oBAAqB,SAAQ,eAAe;IAIvD,GAAG,CAAC,EAAE,MAAM,CAAyB;IAGrC,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB,IAAI;CACL"}
@@ -1 +1 @@
1
- {"version":3,"file":"ViewRouterServiceContainer.d.ts","sourceRoot":"","sources":["../../../services/router/ViewRouterServiceContainer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzC,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAO7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA4CxD,qBAAa,0BAA2B,SAAQ,gBAAgB;IAS3C,OAAO,EAAE,yBAAyB;IARrD,MAAM,CAAC,KAAK,SAAgC;IAE5C,cAAc,EAAE,cAAc,CAAM;IACpC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAM;IAC7C,aAAa,EAAE,aAAa,CAAM;IAClC,iBAAiB,EAAE,MAAM,EAAE,CAAM;IACjC,IAAI,EAAE,GAAG,CAAQ;gBAEE,OAAO,EAAE,yBAAyB;IAarD,IAAI;IAEE,YAAY,CAAC,GAAG,EAAE,WAAW;YAarB,MAAM;IAkLd,iBAAiB,CAAC,GAAG,EAAE,OAAO,gCAhHZ;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,aAAa,EAAE,GAAG,CAAC;QACnB,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC5B;CA2WJ"}
1
+ {"version":3,"file":"ViewRouterServiceContainer.d.ts","sourceRoot":"","sources":["../../../services/router/ViewRouterServiceContainer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzC,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAO7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA4CxD,qBAAa,0BAA2B,SAAQ,gBAAgB;IAS3C,OAAO,EAAE,yBAAyB;IARrD,MAAM,CAAC,KAAK,SAAgC;IAE5C,cAAc,EAAE,cAAc,CAAM;IACpC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAM;IAC7C,aAAa,EAAE,aAAa,CAAM;IAClC,iBAAiB,EAAE,MAAM,EAAE,CAAM;IACjC,IAAI,EAAE,GAAG,CAAQ;gBAEE,OAAO,EAAE,yBAAyB;IAarD,IAAI;IAEE,YAAY,CAAC,GAAG,EAAE,WAAW;YAarB,MAAM;IAuKd,iBAAiB,CAAC,GAAG,EAAE,OAAO,gCArGZ;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,aAAa,EAAE,GAAG,CAAC;QACnB,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC5B;CAwVJ"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createFlatApiRoutes.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFlatApiRoutes.test.d.ts","sourceRoot":"","sources":["../../../services/router/createFlatApiRoutes.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import { ServiceContainer } from "../ServiceContainer";
2
+ import { SingletonServiceProvider } from "./SingletonServiceProvider";
3
+ export declare class SingletonServiceContainer extends ServiceContainer {
4
+ service: SingletonServiceProvider;
5
+ static _name: string;
6
+ constructor(service: SingletonServiceProvider);
7
+ }
8
+ //# sourceMappingURL=SingletonServiceContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingletonServiceContainer.d.ts","sourceRoot":"","sources":["../../../services/singleton/SingletonServiceContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAG,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,qBAAa,yBAA0B,SAAQ,gBAAgB;IAG1C,OAAO,EAAE,wBAAwB;IAFpD,MAAM,CAAC,KAAK,SAA+B;gBAExB,OAAO,EAAE,wBAAwB;CAGrD"}
@@ -0,0 +1,7 @@
1
+ import { Singleton } from "../Singleton";
2
+ import { ServiceProvider } from "../ServiceProvider";
3
+ export declare class SingletonServiceProvider extends ServiceProvider {
4
+ services: Map<string, Singleton>;
5
+ boot(): void;
6
+ }
7
+ //# sourceMappingURL=SingletonServiceProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingletonServiceProvider.d.ts","sourceRoot":"","sources":["../../../services/singleton/SingletonServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,qBAAa,wBAAyB,SAAQ,eAAe;IAC3D,QAAQ,yBAAgC;IAExC,IAAI;CACL"}