gemi 0.40.0 → 0.41.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 (147) hide show
  1. package/dist/app/index.js +2 -272
  2. package/dist/app/index.js.map +3 -9
  3. package/dist/app/prismaExtension.d.ts +1 -5
  4. package/dist/app/prismaExtension.d.ts.map +1 -1
  5. package/dist/bin/gemi.js +171 -6641
  6. package/dist/bin/gemi.js.map +7 -7
  7. package/dist/broadcasting/index.js +1 -1
  8. package/dist/bun/plugin.js +1 -1
  9. package/dist/bun/preload.js +1 -1
  10. package/dist/{chunk-1axcwesm.js → chunk-1skcvfwy.js} +2 -2
  11. package/dist/{chunk-1axcwesm.js.map → chunk-1skcvfwy.js.map} +1 -1
  12. package/dist/chunk-1wv2m67p.js +4 -0
  13. package/dist/{chunk-3vwd9m9r.js.map → chunk-1wv2m67p.js.map} +1 -1
  14. package/dist/{chunk-32bqjwdp.js → chunk-37qn44wf.js} +3 -3
  15. package/dist/{chunk-32bqjwdp.js.map → chunk-37qn44wf.js.map} +1 -1
  16. package/dist/{chunk-y21w70m1.js → chunk-46g7xzc3.js} +3 -3
  17. package/dist/{chunk-y21w70m1.js.map → chunk-46g7xzc3.js.map} +1 -1
  18. package/dist/{chunk-w3sw7qzr.js → chunk-55jrzaj0.js} +2 -2
  19. package/dist/{chunk-w3sw7qzr.js.map → chunk-55jrzaj0.js.map} +1 -1
  20. package/dist/{chunk-h6mq7va4.js → chunk-59dfj0a9.js} +2 -2
  21. package/dist/{chunk-h6mq7va4.js.map → chunk-59dfj0a9.js.map} +1 -1
  22. package/dist/{chunk-ptzhwayj.js → chunk-5a4hvpbv.js} +2 -2
  23. package/dist/{chunk-ptzhwayj.js.map → chunk-5a4hvpbv.js.map} +1 -1
  24. package/dist/{chunk-y8j3mhc5.js → chunk-5jar30t5.js} +2 -2
  25. package/dist/{chunk-y8j3mhc5.js.map → chunk-5jar30t5.js.map} +1 -1
  26. package/dist/{chunk-7n19b204.js → chunk-6nm2pt02.js} +2 -2
  27. package/dist/{chunk-7n19b204.js.map → chunk-6nm2pt02.js.map} +1 -1
  28. package/dist/{chunk-xn8qhpkm.js → chunk-7219pj06.js} +3 -3
  29. package/dist/{chunk-xn8qhpkm.js.map → chunk-7219pj06.js.map} +1 -1
  30. package/dist/{chunk-90fdy2mf.js → chunk-8egdqsbr.js} +2 -2
  31. package/dist/{chunk-90fdy2mf.js.map → chunk-8egdqsbr.js.map} +1 -1
  32. package/dist/{chunk-58by1xt1.js → chunk-8spbzsaa.js} +2 -2
  33. package/dist/{chunk-58by1xt1.js.map → chunk-8spbzsaa.js.map} +1 -1
  34. package/dist/{chunk-stp84phd.js → chunk-9gj1htjp.js} +5 -5
  35. package/dist/{chunk-stp84phd.js.map → chunk-9gj1htjp.js.map} +1 -1
  36. package/dist/{chunk-63px5syb.js → chunk-9x52jhc8.js} +2 -2
  37. package/dist/{chunk-63px5syb.js.map → chunk-9x52jhc8.js.map} +1 -1
  38. package/dist/{chunk-mbc8kxq4.js → chunk-ar3kj71m.js} +2 -2
  39. package/dist/{chunk-mbc8kxq4.js.map → chunk-ar3kj71m.js.map} +1 -1
  40. package/dist/{chunk-3vwd9m9r.js → chunk-cy0yet3t.js} +2 -2
  41. package/dist/{chunk-fr27jc6x.js.map → chunk-cy0yet3t.js.map} +1 -1
  42. package/dist/{chunk-c7xghmmk.js → chunk-e40j5tgj.js} +3 -3
  43. package/dist/{chunk-c7xghmmk.js.map → chunk-e40j5tgj.js.map} +1 -1
  44. package/dist/{chunk-6g504b6e.js → chunk-e43m0sz9.js} +4 -4
  45. package/dist/{chunk-6g504b6e.js.map → chunk-e43m0sz9.js.map} +1 -1
  46. package/dist/{chunk-zfb7fy42.js → chunk-e7wdb957.js} +3 -3
  47. package/dist/{chunk-zfb7fy42.js.map → chunk-e7wdb957.js.map} +1 -1
  48. package/dist/{chunk-3mdvhyh7.js → chunk-ffj2g6wn.js} +3 -3
  49. package/dist/{chunk-3mdvhyh7.js.map → chunk-ffj2g6wn.js.map} +1 -1
  50. package/dist/{chunk-9t65prt6.js → chunk-gky8x4rv.js} +2 -2
  51. package/dist/{chunk-9t65prt6.js.map → chunk-gky8x4rv.js.map} +1 -1
  52. package/dist/{chunk-fr27jc6x.js → chunk-j6eh0etj.js} +2 -2
  53. package/dist/{chunk-tjc2jbfx.js.map → chunk-j6eh0etj.js.map} +1 -1
  54. package/dist/chunk-j7harkz1.js +6 -0
  55. package/dist/chunk-j7harkz1.js.map +14 -0
  56. package/dist/{chunk-qz4m6jpd.js → chunk-jhp3h3kc.js} +3 -3
  57. package/dist/{chunk-qz4m6jpd.js.map → chunk-jhp3h3kc.js.map} +1 -1
  58. package/dist/{chunk-x3xmwhm7.js → chunk-jnbtsgrp.js} +2 -2
  59. package/dist/{chunk-x3xmwhm7.js.map → chunk-jnbtsgrp.js.map} +1 -1
  60. package/dist/chunk-k4kdssr3.js +5 -0
  61. package/dist/{chunk-36rnd542.js.map → chunk-k4kdssr3.js.map} +1 -1
  62. package/dist/{chunk-jz4b0r4f.js → chunk-k5ddt5jb.js} +2 -2
  63. package/dist/{chunk-jz4b0r4f.js.map → chunk-k5ddt5jb.js.map} +1 -1
  64. package/dist/{chunk-n98nb1fp.js → chunk-kk353x3p.js} +1 -1
  65. package/dist/{chunk-v0pw47bz.js → chunk-m1vjp86n.js} +3 -3
  66. package/dist/{chunk-v0pw47bz.js.map → chunk-m1vjp86n.js.map} +1 -1
  67. package/dist/{chunk-xna33s0d.js → chunk-m5nxws92.js} +3 -3
  68. package/dist/{chunk-xna33s0d.js.map → chunk-m5nxws92.js.map} +1 -1
  69. package/dist/{chunk-2xvzn1zw.js → chunk-qksh8x1f.js} +2 -2
  70. package/dist/{chunk-2xvzn1zw.js.map → chunk-qksh8x1f.js.map} +1 -1
  71. package/dist/chunk-th24m9jj.js +4 -0
  72. package/dist/chunk-th24m9jj.js.map +13 -0
  73. package/dist/{chunk-ewgyn3bd.js → chunk-w102mcq7.js} +4 -4
  74. package/dist/{chunk-ewgyn3bd.js.map → chunk-w102mcq7.js.map} +1 -1
  75. package/dist/{chunk-ferag84m.js → chunk-w262fkzb.js} +2 -2
  76. package/dist/{chunk-ferag84m.js.map → chunk-w262fkzb.js.map} +1 -1
  77. package/dist/{chunk-6ey5s3q9.js → chunk-wss9zewk.js} +4 -4
  78. package/dist/{chunk-6ey5s3q9.js.map → chunk-wss9zewk.js.map} +1 -1
  79. package/dist/{chunk-jkn3v7kp.js → chunk-ww5pp0rp.js} +3 -3
  80. package/dist/{chunk-jkn3v7kp.js.map → chunk-ww5pp0rp.js.map} +1 -1
  81. package/dist/{chunk-qtz62kb1.js → chunk-wypjxj9v.js} +3 -3
  82. package/dist/{chunk-qtz62kb1.js.map → chunk-wypjxj9v.js.map} +1 -1
  83. package/dist/{chunk-a9rab7d6.js → chunk-xdsym1c8.js} +2 -2
  84. package/dist/{chunk-a9rab7d6.js.map → chunk-xdsym1c8.js.map} +1 -1
  85. package/dist/{chunk-demk6jrq.js → chunk-xfeqd7as.js} +2 -2
  86. package/dist/{chunk-demk6jrq.js.map → chunk-xfeqd7as.js.map} +1 -1
  87. package/dist/{chunk-t4f1hd5h.js → chunk-xxdb06dz.js} +3 -3
  88. package/dist/{chunk-t4f1hd5h.js.map → chunk-xxdb06dz.js.map} +1 -1
  89. package/dist/{chunk-c0hftpkd.js → chunk-yhphtr31.js} +3 -3
  90. package/dist/{chunk-c0hftpkd.js.map → chunk-yhphtr31.js.map} +1 -1
  91. package/dist/{chunk-d70jknn3.js → chunk-z3tgcb5r.js} +2 -2
  92. package/dist/{chunk-d70jknn3.js.map → chunk-z3tgcb5r.js.map} +1 -1
  93. package/dist/chunk-zjxbe8tx.js +5 -0
  94. package/dist/chunk-zjxbe8tx.js.map +10 -0
  95. package/dist/config/index.d.ts +15 -0
  96. package/dist/config/index.d.ts.map +1 -0
  97. package/dist/config/index.js +1 -1
  98. package/dist/config/load.d.ts +3 -0
  99. package/dist/config/load.d.ts.map +1 -0
  100. package/dist/email/index.js +2 -2
  101. package/dist/email/index.js.map +2 -2
  102. package/dist/facades/index.js +2 -2
  103. package/dist/facades/index.js.map +1 -1
  104. package/dist/http/index.js +2 -2
  105. package/dist/http/index.js.map +1 -1
  106. package/dist/i18n/index.js +2 -2
  107. package/dist/i18n/index.js.map +1 -1
  108. package/dist/kernel/index.js +2 -2
  109. package/dist/kernel/index.js.map +2 -2
  110. package/dist/server/Server.d.ts.map +1 -0
  111. package/dist/server/banner.d.ts.map +1 -0
  112. package/dist/server/generateEtag.d.ts.map +1 -0
  113. package/dist/server/httpDev.d.ts.map +1 -0
  114. package/dist/server/httpProd.d.ts.map +1 -0
  115. package/dist/server/index.d.ts.map +1 -0
  116. package/dist/server/index.js +2 -57
  117. package/dist/server/index.js.map +4 -10
  118. package/dist/server/renderErrorPage.d.ts.map +1 -0
  119. package/dist/server/styles.d.ts.map +1 -0
  120. package/dist/server/types.d.ts.map +1 -0
  121. package/dist/server/watchEnv.d.ts.map +1 -0
  122. package/dist/services/index.js +2 -2
  123. package/dist/services/index.js.map +1 -1
  124. package/package.json +12 -30
  125. package/dist/chunk-36rnd542.js +0 -5
  126. package/dist/chunk-tjc2jbfx.js +0 -4
  127. package/dist/server2/Server.d.ts.map +0 -1
  128. package/dist/server2/banner.d.ts.map +0 -1
  129. package/dist/server2/generateEtag.d.ts.map +0 -1
  130. package/dist/server2/httpDev.d.ts.map +0 -1
  131. package/dist/server2/httpProd.d.ts.map +0 -1
  132. package/dist/server2/index.d.ts.map +0 -1
  133. package/dist/server2/renderErrorPage.d.ts.map +0 -1
  134. package/dist/server2/styles.d.ts.map +0 -1
  135. package/dist/server2/types.d.ts.map +0 -1
  136. package/dist/server2/watchEnv.d.ts.map +0 -1
  137. /package/dist/{chunk-n98nb1fp.js.map → chunk-kk353x3p.js.map} +0 -0
  138. /package/dist/{server2 → server}/Server.d.ts +0 -0
  139. /package/dist/{server2 → server}/banner.d.ts +0 -0
  140. /package/dist/{server2 → server}/generateEtag.d.ts +0 -0
  141. /package/dist/{server2 → server}/httpDev.d.ts +0 -0
  142. /package/dist/{server2 → server}/httpProd.d.ts +0 -0
  143. /package/dist/{server2 → server}/index.d.ts +0 -0
  144. /package/dist/{server2 → server}/renderErrorPage.d.ts +0 -0
  145. /package/dist/{server2 → server}/styles.d.ts +0 -0
  146. /package/dist/{server2 → server}/types.d.ts +0 -0
  147. /package/dist/{server2 → server}/watchEnv.d.ts +0 -0
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{pb as T}from"./chunk-t4f1hd5h.js";import{wb as A}from"./chunk-zfb7fy42.js";import"./chunk-xn8qhpkm.js";import{yb as y}from"./chunk-c7xghmmk.js";import{Hb as r}from"./chunk-3vwd9m9r.js";var u=r(A(),1);var i=r(y(),1),E=r(A(),1);import{exec as d}from"child_process";import{promisify as I}from"util";var x=r(T(),1),_=(c,n,e)=>{if(n.Version!==1)throw Error(`Profile ${c} credential_process did not return Version 1.`);if(n.AccessKeyId===void 0||n.SecretAccessKey===void 0)throw Error(`Profile ${c} credential_process returned invalid credentials.`);if(n.Expiration){let w=new Date;if(new Date(n.Expiration)<w)throw Error(`Profile ${c} credential_process returned expired credentials.`)}let s=n.AccountId;if(!s&&e?.[c]?.aws_account_id)s=e[c].aws_account_id;let t={accessKeyId:n.AccessKeyId,secretAccessKey:n.SecretAccessKey,...n.SessionToken&&{sessionToken:n.SessionToken},...n.Expiration&&{expiration:new Date(n.Expiration)},...n.CredentialScope&&{credentialScope:n.CredentialScope},...s&&{accountId:s}};return x.setCredentialFeature(t,"CREDENTIALS_PROCESS","w"),t};var K=async(c,n,e)=>{let s=n[c];if(n[c]){let t=s.credential_process;if(t!==void 0){let w=I(E.externalDataInterceptor?.getTokenRecord?.().exec??d);try{let{stdout:o}=await w(t),S;try{S=JSON.parse(o.trim())}catch{throw Error(`Profile ${c} credential_process returned invalid JSON.`)}return _(c,S,n)}catch(o){throw new i.CredentialsProviderError(o.message,{logger:e})}}else throw new i.CredentialsProviderError(`Profile ${c} did not contain credential_process.`,{logger:e})}else throw new i.CredentialsProviderError(`Profile ${c} could not be found in shared credentials file.`,{logger:e})};var R=(c={})=>async({callerClientConfig:n}={})=>{c.logger?.debug("@aws-sdk/credential-provider-process - fromProcess");let e=await u.parseKnownFiles(c);return K(u.getProfileName({profile:c.profile??n?.profile}),e,c.logger)};export{R as fromProcess};
2
+ import{ub as A}from"./chunk-e7wdb957.js";import"./chunk-7219pj06.js";import{wb as T}from"./chunk-xxdb06dz.js";import{xb as y}from"./chunk-e40j5tgj.js";import{Kb as r}from"./chunk-cy0yet3t.js";var u=r(A(),1);var i=r(y(),1),E=r(A(),1);import{exec as d}from"child_process";import{promisify as I}from"util";var x=r(T(),1),_=(c,n,e)=>{if(n.Version!==1)throw Error(`Profile ${c} credential_process did not return Version 1.`);if(n.AccessKeyId===void 0||n.SecretAccessKey===void 0)throw Error(`Profile ${c} credential_process returned invalid credentials.`);if(n.Expiration){let w=new Date;if(new Date(n.Expiration)<w)throw Error(`Profile ${c} credential_process returned expired credentials.`)}let s=n.AccountId;if(!s&&e?.[c]?.aws_account_id)s=e[c].aws_account_id;let t={accessKeyId:n.AccessKeyId,secretAccessKey:n.SecretAccessKey,...n.SessionToken&&{sessionToken:n.SessionToken},...n.Expiration&&{expiration:new Date(n.Expiration)},...n.CredentialScope&&{credentialScope:n.CredentialScope},...s&&{accountId:s}};return x.setCredentialFeature(t,"CREDENTIALS_PROCESS","w"),t};var K=async(c,n,e)=>{let s=n[c];if(n[c]){let t=s.credential_process;if(t!==void 0){let w=I(E.externalDataInterceptor?.getTokenRecord?.().exec??d);try{let{stdout:o}=await w(t),S;try{S=JSON.parse(o.trim())}catch{throw Error(`Profile ${c} credential_process returned invalid JSON.`)}return _(c,S,n)}catch(o){throw new i.CredentialsProviderError(o.message,{logger:e})}}else throw new i.CredentialsProviderError(`Profile ${c} did not contain credential_process.`,{logger:e})}else throw new i.CredentialsProviderError(`Profile ${c} could not be found in shared credentials file.`,{logger:e})};var R=(c={})=>async({callerClientConfig:n}={})=>{c.logger?.debug("@aws-sdk/credential-provider-process - fromProcess");let e=await u.parseKnownFiles(c);return K(u.getProfileName({profile:c.profile??n?.profile}),e,c.logger)};export{R as fromProcess};
3
3
 
4
- //# debugId=73966BB4C633348D64756E2164756E21
4
+ //# debugId=6CEA4B06C5C6257C64756E2164756E21
@@ -7,6 +7,6 @@
7
7
  "import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const getValidatedProcessCredentials = (profileName, data, profiles) => {\n if (data.Version !== 1) {\n throw Error(`Profile ${profileName} credential_process did not return Version 1.`);\n }\n if (data.AccessKeyId === undefined || data.SecretAccessKey === undefined) {\n throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);\n }\n if (data.Expiration) {\n const currentTime = new Date();\n const expireTime = new Date(data.Expiration);\n if (expireTime < currentTime) {\n throw Error(`Profile ${profileName} credential_process returned expired credentials.`);\n }\n }\n let accountId = data.AccountId;\n if (!accountId && profiles?.[profileName]?.aws_account_id) {\n accountId = profiles[profileName].aws_account_id;\n }\n const credentials = {\n accessKeyId: data.AccessKeyId,\n secretAccessKey: data.SecretAccessKey,\n ...(data.SessionToken && { sessionToken: data.SessionToken }),\n ...(data.Expiration && { expiration: new Date(data.Expiration) }),\n ...(data.CredentialScope && { credentialScope: data.CredentialScope }),\n ...(accountId && { accountId }),\n };\n setCredentialFeature(credentials, \"CREDENTIALS_PROCESS\", \"w\");\n return credentials;\n};\n"
8
8
  ],
9
9
  "mappings": ";wNAAA,SCAA,SACA,KACA,SAAS,sBACT,oBAAS,aCHT,eACa,EAAiC,CAAC,EAAa,EAAM,IAAa,CAC3E,GAAI,EAAK,UAAY,EACjB,MAAM,MAAM,WAAW,gDAA0D,EAErF,GAAI,EAAK,cAAgB,QAAa,EAAK,kBAAoB,OAC3D,MAAM,MAAM,WAAW,oDAA8D,EAEzF,GAAI,EAAK,WAAY,CACjB,IAAM,EAAc,IAAI,KAExB,GADmB,IAAI,KAAK,EAAK,UAAU,EAC1B,EACb,MAAM,MAAM,WAAW,oDAA8D,EAG7F,IAAI,EAAY,EAAK,UACrB,GAAI,CAAC,GAAa,IAAW,IAAc,eACvC,EAAY,EAAS,GAAa,eAEtC,IAAM,EAAc,CAChB,YAAa,EAAK,YAClB,gBAAiB,EAAK,mBAClB,EAAK,cAAgB,CAAE,aAAc,EAAK,YAAa,KACvD,EAAK,YAAc,CAAE,WAAY,IAAI,KAAK,EAAK,UAAU,CAAE,KAC3D,EAAK,iBAAmB,CAAE,gBAAiB,EAAK,eAAgB,KAChE,GAAa,CAAE,WAAU,CACjC,EAEA,OADA,uBAAqB,EAAa,sBAAuB,GAAG,EACrD,GDvBJ,IAAM,EAA4B,MAAO,EAAa,EAAU,IAAW,CAC9E,IAAM,EAAU,EAAS,GACzB,GAAI,EAAS,GAAc,CACvB,IAAM,EAAoB,EAAQ,mBAClC,GAAI,IAAsB,OAAW,CACjC,IAAM,EAAc,EAAU,2BAAyB,iBAAiB,EAAE,MAAQ,CAAI,EACtF,GAAI,CACA,IAAQ,UAAW,MAAM,EAAY,CAAiB,EAClD,EACJ,GAAI,CACA,EAAO,KAAK,MAAM,EAAO,KAAK,CAAC,EAEnC,KAAM,CACF,MAAM,MAAM,WAAW,6CAAuD,EAElF,OAAO,EAA+B,EAAa,EAAM,CAAQ,EAErE,MAAO,EAAO,CACV,MAAM,IAAI,2BAAyB,EAAM,QAAS,CAAE,QAAO,CAAC,GAIhE,WAAM,IAAI,2BAAyB,WAAW,wCAAmD,CAAE,QAAO,CAAC,EAI/G,WAAM,IAAI,2BAAyB,WAAW,mDAA8D,CACxG,QACJ,CAAC,GD/BF,IAAM,EAAc,CAAC,EAAO,CAAC,IAAM,OAAS,sBAAuB,CAAC,IAAM,CAC7E,EAAK,QAAQ,MAAM,oDAAoD,EACvE,IAAM,EAAW,MAAM,kBAAgB,CAAI,EAC3C,OAAO,EAA0B,iBAAe,CAC5C,QAAS,EAAK,SAAW,GAAoB,OACjD,CAAC,EAAG,EAAU,EAAK,MAAM",
10
- "debugId": "73966BB4C633348D64756E2164756E21",
10
+ "debugId": "6CEA4B06C5C6257C64756E2164756E21",
11
11
  "names": []
12
12
  }
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{Ib as s}from"./chunk-3vwd9m9r.js";var i=s((t,e)=>{e.exports={name:"@aws-sdk/nested-clients",version:"3.996.14",description:"Nested clients for AWS SDK packages.",main:"./dist-cjs/index.js",module:"./dist-es/index.js",types:"./dist-types/index.d.ts",scripts:{build:"yarn lint && concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",lint:"node ../../scripts/validation/submodules-linter.js --pkg nested-clients",test:"yarn g:vitest run","test:watch":"yarn g:vitest watch"},engines:{node:">=20.0.0"},sideEffects:!1,author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.973.24","@aws-sdk/middleware-host-header":"^3.972.8","@aws-sdk/middleware-logger":"^3.972.8","@aws-sdk/middleware-recursion-detection":"^3.972.8","@aws-sdk/middleware-user-agent":"^3.972.25","@aws-sdk/region-config-resolver":"^3.972.9","@aws-sdk/types":"^3.973.6","@aws-sdk/util-endpoints":"^3.996.5","@aws-sdk/util-user-agent-browser":"^3.972.8","@aws-sdk/util-user-agent-node":"^3.973.11","@smithy/config-resolver":"^4.4.13","@smithy/core":"^3.23.12","@smithy/fetch-http-handler":"^5.3.15","@smithy/hash-node":"^4.2.12","@smithy/invalid-dependency":"^4.2.12","@smithy/middleware-content-length":"^4.2.12","@smithy/middleware-endpoint":"^4.4.27","@smithy/middleware-retry":"^4.4.44","@smithy/middleware-serde":"^4.2.15","@smithy/middleware-stack":"^4.2.12","@smithy/node-config-provider":"^4.3.12","@smithy/node-http-handler":"^4.5.0","@smithy/protocol-http":"^5.3.12","@smithy/smithy-client":"^4.12.7","@smithy/types":"^4.13.1","@smithy/url-parser":"^4.2.12","@smithy/util-base64":"^4.3.2","@smithy/util-body-length-browser":"^4.2.2","@smithy/util-body-length-node":"^4.2.3","@smithy/util-defaults-mode-browser":"^4.3.43","@smithy/util-defaults-mode-node":"^4.2.47","@smithy/util-endpoints":"^3.3.3","@smithy/util-middleware":"^4.2.12","@smithy/util-retry":"^4.2.12","@smithy/util-utf8":"^4.2.2",tslib:"^2.6.2"},devDependencies:{concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["./cognito-identity.d.ts","./cognito-identity.js","./signin.d.ts","./signin.js","./sso-oidc.d.ts","./sso-oidc.js","./sso.d.ts","./sso.js","./sts.d.ts","./sts.js","dist-*/**"],browser:{"./dist-es/submodules/cognito-identity/runtimeConfig":"./dist-es/submodules/cognito-identity/runtimeConfig.browser","./dist-es/submodules/signin/runtimeConfig":"./dist-es/submodules/signin/runtimeConfig.browser","./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sso/runtimeConfig":"./dist-es/submodules/sso/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"packages/nested-clients"},exports:{"./package.json":"./package.json","./sso-oidc":{types:"./dist-types/submodules/sso-oidc/index.d.ts",module:"./dist-es/submodules/sso-oidc/index.js",node:"./dist-cjs/submodules/sso-oidc/index.js",import:"./dist-es/submodules/sso-oidc/index.js",require:"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{types:"./dist-types/submodules/sts/index.d.ts",module:"./dist-es/submodules/sts/index.js",node:"./dist-cjs/submodules/sts/index.js",import:"./dist-es/submodules/sts/index.js",require:"./dist-cjs/submodules/sts/index.js"},"./signin":{types:"./dist-types/submodules/signin/index.d.ts",module:"./dist-es/submodules/signin/index.js",node:"./dist-cjs/submodules/signin/index.js",import:"./dist-es/submodules/signin/index.js",require:"./dist-cjs/submodules/signin/index.js"},"./cognito-identity":{types:"./dist-types/submodules/cognito-identity/index.d.ts",module:"./dist-es/submodules/cognito-identity/index.js",node:"./dist-cjs/submodules/cognito-identity/index.js",import:"./dist-es/submodules/cognito-identity/index.js",require:"./dist-cjs/submodules/cognito-identity/index.js"},"./sso":{types:"./dist-types/submodules/sso/index.d.ts",module:"./dist-es/submodules/sso/index.js",node:"./dist-cjs/submodules/sso/index.js",import:"./dist-es/submodules/sso/index.js",require:"./dist-cjs/submodules/sso/index.js"}}}});
2
+ import{Lb as s}from"./chunk-cy0yet3t.js";var i=s((t,e)=>{e.exports={name:"@aws-sdk/nested-clients",version:"3.996.14",description:"Nested clients for AWS SDK packages.",main:"./dist-cjs/index.js",module:"./dist-es/index.js",types:"./dist-types/index.d.ts",scripts:{build:"yarn lint && concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",lint:"node ../../scripts/validation/submodules-linter.js --pkg nested-clients",test:"yarn g:vitest run","test:watch":"yarn g:vitest watch"},engines:{node:">=20.0.0"},sideEffects:!1,author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.973.24","@aws-sdk/middleware-host-header":"^3.972.8","@aws-sdk/middleware-logger":"^3.972.8","@aws-sdk/middleware-recursion-detection":"^3.972.8","@aws-sdk/middleware-user-agent":"^3.972.25","@aws-sdk/region-config-resolver":"^3.972.9","@aws-sdk/types":"^3.973.6","@aws-sdk/util-endpoints":"^3.996.5","@aws-sdk/util-user-agent-browser":"^3.972.8","@aws-sdk/util-user-agent-node":"^3.973.11","@smithy/config-resolver":"^4.4.13","@smithy/core":"^3.23.12","@smithy/fetch-http-handler":"^5.3.15","@smithy/hash-node":"^4.2.12","@smithy/invalid-dependency":"^4.2.12","@smithy/middleware-content-length":"^4.2.12","@smithy/middleware-endpoint":"^4.4.27","@smithy/middleware-retry":"^4.4.44","@smithy/middleware-serde":"^4.2.15","@smithy/middleware-stack":"^4.2.12","@smithy/node-config-provider":"^4.3.12","@smithy/node-http-handler":"^4.5.0","@smithy/protocol-http":"^5.3.12","@smithy/smithy-client":"^4.12.7","@smithy/types":"^4.13.1","@smithy/url-parser":"^4.2.12","@smithy/util-base64":"^4.3.2","@smithy/util-body-length-browser":"^4.2.2","@smithy/util-body-length-node":"^4.2.3","@smithy/util-defaults-mode-browser":"^4.3.43","@smithy/util-defaults-mode-node":"^4.2.47","@smithy/util-endpoints":"^3.3.3","@smithy/util-middleware":"^4.2.12","@smithy/util-retry":"^4.2.12","@smithy/util-utf8":"^4.2.2",tslib:"^2.6.2"},devDependencies:{concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["./cognito-identity.d.ts","./cognito-identity.js","./signin.d.ts","./signin.js","./sso-oidc.d.ts","./sso-oidc.js","./sso.d.ts","./sso.js","./sts.d.ts","./sts.js","dist-*/**"],browser:{"./dist-es/submodules/cognito-identity/runtimeConfig":"./dist-es/submodules/cognito-identity/runtimeConfig.browser","./dist-es/submodules/signin/runtimeConfig":"./dist-es/submodules/signin/runtimeConfig.browser","./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sso/runtimeConfig":"./dist-es/submodules/sso/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"packages/nested-clients"},exports:{"./package.json":"./package.json","./sso-oidc":{types:"./dist-types/submodules/sso-oidc/index.d.ts",module:"./dist-es/submodules/sso-oidc/index.js",node:"./dist-cjs/submodules/sso-oidc/index.js",import:"./dist-es/submodules/sso-oidc/index.js",require:"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{types:"./dist-types/submodules/sts/index.d.ts",module:"./dist-es/submodules/sts/index.js",node:"./dist-cjs/submodules/sts/index.js",import:"./dist-es/submodules/sts/index.js",require:"./dist-cjs/submodules/sts/index.js"},"./signin":{types:"./dist-types/submodules/signin/index.d.ts",module:"./dist-es/submodules/signin/index.js",node:"./dist-cjs/submodules/signin/index.js",import:"./dist-es/submodules/signin/index.js",require:"./dist-cjs/submodules/signin/index.js"},"./cognito-identity":{types:"./dist-types/submodules/cognito-identity/index.d.ts",module:"./dist-es/submodules/cognito-identity/index.js",node:"./dist-cjs/submodules/cognito-identity/index.js",import:"./dist-es/submodules/cognito-identity/index.js",require:"./dist-cjs/submodules/cognito-identity/index.js"},"./sso":{types:"./dist-types/submodules/sso/index.d.ts",module:"./dist-es/submodules/sso/index.js",node:"./dist-cjs/submodules/sso/index.js",import:"./dist-es/submodules/sso/index.js",require:"./dist-cjs/submodules/sso/index.js"}}}});
3
3
  export{i as a};
4
4
 
5
- //# debugId=BB7A8CBBC107392964756E2164756E21
5
+ //# debugId=A96167CF28562C9D64756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "72EF8D5A4899D66464756E2164756E21",
7
+ "debugId": "A96167CF28562C9D64756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -0,0 +1,6 @@
1
+ // @bun
2
+ import{h as C}from"./chunk-zjxbe8tx.js";import{G as Y}from"./chunk-9x52jhc8.js";import"./chunk-cy0yet3t.js";import{join as d}from"path";function P(b){let x=b.toString(),g=new Bun.CryptoHasher("sha1");return g.update(x),g.digest("hex")}if(!globalThis.URLPattern)globalThis.URLPattern=Y;import{exists as bb}from"fs/promises";import{createElement as F}from"react";async function A(b=[]){return b.map((x,g)=>{return F("style",{key:g,id:x?.id,type:"text/css",dangerouslySetInnerHTML:{__html:x.content}})})}import{existsSync as w}from"fs";import{basename as M}from"path";import{networkInterfaces as f}from"os";var S={name:"gemi",version:"0.41.0",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"},files:["dist/**/*"],module:!0,exports:{"./http":"./http/index.ts","./client":"./client/index.ts","./app":"./app/index.ts","./facades":"./facades/index.ts","./email":"./email/index.ts","./vite":"./dist/vite/index.mjs","./runtime":"./client/runtime.ts","./kernel":"./kernel/index.ts","./services":"./services/index.ts","./broadcasting":"./broadcasting/index.ts","./i18n":"./i18n/index.ts","./server":"./server/index.ts","./config":"./config/index.ts","./bun/preload":"./bun/preload.ts","./bun/plugin":"./bun/plugin.ts"},scripts:{lint:"oxlint",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:client-types","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 --sourcemap ./bin/gemi.ts && bun ./scripts/prepare-bin.ts","build:client":"vite build -c vite.client.config.mts","build:plugin":"vite build -c vite.plugin.config.mts","build:types":"tsc","build:client-types":"tsc -p tsconfig.browser.json",test:"vitest","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"},dependencies:{"@aws-sdk/client-s3":"^3.629.0","@aws-sdk/s3-request-presigner":"^3.629.0","@prisma/client":"^6.4.1","ast-types":"^0.14.2",commander:"^12.1.0",history:"^5.3.0","jsx-email":"2.0.0-rc2.1",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","@repo/typescript-config":"*","@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",oxlint:"^1.39.0",react:"19.2.3","react-dom":"19.2.3",typescript:"^5.7.3",vitest:"^4.0.0"},peerDependencies:{react:">=19","react-dom":">=19",sharp:"^0.34.2",vite:"^8.0.0"}};var m=[" \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"],l=Boolean(process.stdout.isTTY)&&!process.env.NO_COLOR,J=(b,x)=>l?`\x1B[${b}m${x}\x1B[0m`:x,o=(b)=>J("1",b),E=(b)=>J("2",b),I=(b)=>J("36",b),t=(b)=>J("32",b),s=(b)=>J("35",b);function r(){return S.version??"?"}function a(b){for(let x of Object.values(f()))for(let g of x??[])if((g.family==="IPv4"||g.family===4)&&!g.internal)return`http://${g.address}:${b}`;return null}function e(b){return C(b).filter((x)=>w(x)).map((x)=>M(x))}function N(b){let{port:x,rootDir:g}=b,j=`http://localhost:${x}`,_=a(x),z=e(g),R=(U,k)=>` ${t("\u279C")} ${o(U.padEnd(9))}${k}`,$=["",...m.map((U)=>s(U)),"",` ${E("gemi")} ${I(`v${r()}`)}`,"",R("Local:",I(j)),R("Network:",_?I(_):E("unavailable")),R("Env:",z.length?z.join(", "):E("none")),""];console.log($.join(`
3
+ `))}var ub=process.env.GEMI_PROJECT_DIR??"",Z=d(process.cwd(),ub),xb=d(Z,"app"),Q=d(Z,"dist");async function kb(b,x){let g=await import(`${Q}/client/.vite/manifest.json`),j=await import(`${Q}/server/.vite/manifest.json`);process.env.ROOT_DIR=Z,process.env.APP_DIR=xb,process.env.DIST_DIR=Q;let _={},z={},R={},$=(u,n)=>`"${u}": () => import("${n}")`,U=[];for(let u of["404",...b.getFlatComponentTree.call(b)]){let n=j[`app/views/${u}.tsx`];if(!n?.file){console.log(`Server file not found for ${u}`),console.log(n);let H=Object.keys(j),W=`app/views/${u}.tsx`;console.log(`${W} not found in server manifest`),console.log(H)}let O=await import(`${process.env.DIST_DIR}/server/${n?.file}`);_[u]=O.default,z[u]=O.OpenGraph;let c=g[`app/views/${u}.tsx`];if(c?.css&&c?.css.length>0)R[u]=c?.css;if(c)U.push($(u,`/${c?.file}`))}let k=`{${U.join(",")}}`,v=g["app/client.tsx"]?.css??[],h=(await Promise.all(v.map((u)=>Bun.file(`${Q}/client/${u}`).text()))).join(`
4
+ `);async function D(u){let{pathname:n}=new URL(u.url),O=new Y({pathname:"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|avif|webp|ico|ttf|map)"}),c=n.startsWith("/.well-known"),H=O.test({pathname:n})||c,W=n.startsWith("/api");if(H&&!W){let T=new URL(u.url),G=u.url.replace(T.origin,"").split("?")[0],X=`${Q}/client${G.replace("/assets/assets","/assets")}`;if(!await bb(X)&&T.pathname.includes(".js"))return new Response(`if(caches){caches?.delete("${X}")}window.location.reload();export {}`,{headers:{"Content-Type":"application/javascript"}});try{let L=Bun.file(X),K=P(L.lastModified);return new Response(L.stream(),{headers:{"Content-Type":L.type,"Cache-Control":"public, max-age=31536000, must-revalidate","Content-Length":String(L.size),ETag:K}})}catch(L){return b.onException?.(L),new Response("Not found",{status:404})}}let i=b.fetch.bind(b);try{let T=await i(u);if(T instanceof Response)return T;else{let G=[];return G.push({content:h}),await T({getStyles:async(B)=>{if(!B)return A([]);for(let L of B){let K=g[`app/views/${L}.tsx`];for(let y of K?.css??[]){let q=Bun.file(`${process.env.DIST_DIR}/client/${y}`);G.push({id:y,content:await q.text()})}}return A(G)},bootstrapModules:[`/${g["app/client.tsx"].file}`],loaders:k,viewImportMap:_,ogMap:z,cssManifest:R})}}catch(T){if(console.error(T),n.startsWith("/api"))return new Response(JSON.stringify({error:T.message}),{status:500,headers:{"Content-Type":"application/json"}});return b.onException?.(T),new Response(T.stack,{status:500})}}let V=Bun.serve({maxRequestBodySize:10737418240,fetch:async(u,n)=>{if(!u.headers.get("x-forwarded-for")){let O=n.requestIP(u);if(O)u.headers.set("x-forwarded-for",O.address)}return await x(u,D)},idleTimeout:Number(process.env.SERVER_IDLE_TIMEOUT??10),port:process.env.PORT||5173});return N({port:V.port,rootDir:Z}),V}export{kb as httpProd};
5
+
6
+ //# debugId=FD37F250C0B5B13564756E2164756E21
@@ -0,0 +1,14 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../server/httpProd.ts", "../server/generateEtag.ts", "../../../node_modules/.bun/urlpattern-polyfill@10.1.0/node_modules/urlpattern-polyfill/index.js", "../server/styles.ts", "../server/banner.ts"],
4
+ "sourcesContent": [
5
+ "import { join } from \"node:path\";\nimport { generateETag } from \"./generateEtag\";\nimport { URLPattern } from \"urlpattern-polyfill\";\nimport { exists } from \"node:fs/promises\";\nimport { createStyles } from \"./styles\";\nimport type { App } from \"../app\";\nimport { Instrumentation } from \"./types\";\nimport { printStartupBanner } from \"./banner\";\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\n// `app` is built by `Server.start` (from the kernel) and passed in — same as\n// `httpDev` — so prod and dev share one construction path. What differs here is\n// that views/styles are served from the built `dist/` manifests instead of\n// Vite's dev SSR graph.\nexport async function httpProd(app: App, instrumentation: Instrumentation) {\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) => `\"${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(`${process.env.DIST_DIR}/server/${serverFile?.file}`);\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 // Vite's manifest `css` field is a `string[]` — a client entry can emit more\n // than one CSS chunk. Read and concatenate them all instead of interpolating\n // the array into a single path (which only works for a one-element array).\n const appCssFiles: string[] = manifest[\"app/client.tsx\"]?.css ?? [];\n const appCSSContent = (\n await Promise.all(\n appCssFiles.map((cssFile) => Bun.file(`${distDir}/client/${cssFile}`).text()),\n )\n ).join(\"\\n\");\n\n async function requestHandler(req: Request) {\n const { pathname } = new URL(req.url);\n\n const pattern = new URLPattern({\n pathname:\n \"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|avif|webp|ico|ttf|map)\",\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 // `requestIP` is null for closed/unix sockets — guard so it never\n // throws before the request is handled.\n const ip = server.requestIP(req);\n if (ip) req.headers.set(\"x-forwarded-for\", ip.address);\n }\n return await instrumentation(req, requestHandler);\n },\n idleTimeout: Number(process.env.SERVER_IDLE_TIMEOUT ?? 10),\n port: process.env.PORT || 5173,\n });\n\n printStartupBanner({ port: server.port, rootDir });\n\n return server;\n}\n",
6
+ "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",
7
+ "import { URLPattern } from \"./dist/urlpattern.js\";\n\nexport { URLPattern };\n\nif (!globalThis.URLPattern) {\n globalThis.URLPattern = URLPattern;\n}\n",
8
+ "import { createElement } from \"react\";\nimport { type 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 const modules = new Set<ModuleNode>();\n for (const view of views) {\n const mod = vite.moduleGraph.getModulesByFile(view);\n if (mod) {\n for (const m of mod) modules.add(m);\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(\n cssModuleContent[cssModulePath],\n // Vite's `TransformResult` type has no `default`, but the CSS-module\n // transform attaches the class-name mapping there at runtime.\n (transform as unknown as { default: Record<string, string> }).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 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",
9
+ "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"
10
+ ],
11
+ "mappings": ";wHAAA,SAAS,OCAF,SAAS,CAAY,CAAC,EAA8B,CAEzD,IAAM,EAAkB,EAAa,SAAS,EAExC,EAAS,IAAI,IAAI,aAAa,MAAM,EAI1C,OAHA,EAAO,OAAO,CAAe,EAChB,EAAO,OAAO,KAAK,ECFlC,GAAI,CAAC,WAAW,WACd,WAAW,WAAa,EFF1B,iBAAS,qBGHT,wBAAS,cAiFT,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,ECzFH,qBAAS,WACT,mBAAS,aACT,4BAAS,81EAKT,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,EJ7D5B,IAAM,GAAa,QAAQ,IAAI,kBAAoB,GAC7C,EAAU,EAAK,QAAQ,IAAI,EAAG,EAAU,EAExC,GAAS,EAAK,EAAS,KAAK,EAC5B,EAAU,EAAK,EAAS,MAAM,EAMpC,eAAsB,EAAQ,CAAC,EAAU,EAAkC,CACzE,IAAM,EAAW,MAAa,UAAG,gCAC3B,EAAiB,MAAa,UAAG,gCAEvC,QAAQ,IAAI,SAAW,EACvB,QAAQ,IAAI,QAAU,GACtB,QAAQ,IAAI,SAAW,EAEvB,IAAM,EAAgB,CAAC,EACjB,EAAQ,CAAC,EACT,EAAc,CAAC,EACf,EAAW,CAAC,EAAkB,IAAiB,IAAI,qBAA4B,MAC/E,EAAY,CAAC,EAEnB,QAAW,IAAY,CAAC,MAAO,GAAG,EAAI,qBAAqB,KAAK,CAAG,CAAC,EAAG,CACrE,IAAM,EAAa,EAAe,aAAa,SAC/C,GAAI,CAAC,GAAY,KAAM,CACrB,QAAQ,IAAI,6BAA6B,GAAU,EACnD,QAAQ,IAAI,CAAU,EACtB,IAAM,EAAQ,OAAO,KAAK,CAAc,EAClC,EAAO,aAAa,QAC1B,QAAQ,IAAI,GAAG,gCAAmC,EAClD,QAAQ,IAAI,CAAK,EAEnB,IAAM,EAAM,MAAa,UAAG,QAAQ,IAAI,mBAAmB,GAAY,QACvE,EAAc,GAAY,EAAI,QAC9B,EAAM,GAAY,EAAI,UACtB,IAAM,EAAa,EAAS,aAAa,SAEzC,GAAI,GAAY,KAAO,GAAY,IAAI,OAAS,EAC9C,EAAY,GAAY,GAAY,IAEtC,GAAI,EACF,EAAU,KAAK,EAAS,EAAU,IAAI,GAAY,MAAM,CAAC,EAI7D,IAAM,EAAU,IAAI,EAAU,KAAK,GAAG,KAKhC,EAAwB,EAAS,mBAAmB,KAAO,CAAC,EAC5D,GACJ,MAAM,QAAQ,IACZ,EAAY,IAAI,CAAC,IAAY,IAAI,KAAK,GAAG,YAAkB,GAAS,EAAE,KAAK,CAAC,CAC9E,GACA,KAAK;AAAA,CAAI,EAEX,eAAe,CAAc,CAAC,EAAc,CAC1C,IAAQ,YAAa,IAAI,IAAI,EAAI,GAAG,EAE9B,EAAU,IAAI,EAAW,CAC7B,SACE,iEACJ,CAAC,EAEK,EAAkB,EAAS,WAAW,cAAc,EACpD,EAAgB,EAAQ,KAAK,CAAE,UAAS,CAAC,GAAK,EAE9C,EAAQ,EAAS,WAAW,MAAM,EAExC,GAAI,GAAiB,CAAC,EAAO,CAC3B,IAAM,EAAM,IAAI,IAAI,EAAI,GAAG,EACrB,EAAW,EAAI,IAAI,QAAQ,EAAI,OAAQ,EAAE,EAAE,MAAM,GAAG,EAAE,GACtD,EAAW,GAAG,WAAiB,EAAS,QAAQ,iBAAkB,SAAS,IAGjF,GAAI,CAFc,MAAM,GAAO,CAAQ,GAErB,EAAI,SAAS,SAAS,KAAK,EAC3C,OAAO,IAAI,SACT,8BAA8B,yCAC9B,CACE,QAAS,CAAE,eAAgB,wBAAyB,CACtD,CACF,EAEF,GAAI,CACF,IAAM,EAAO,IAAI,KAAK,CAAQ,EAExB,EAAO,EAAa,EAAK,YAAY,EAC3C,OAAO,IAAI,SAAS,EAAK,OAAO,EAAG,CACjC,QAAS,CACP,eAAgB,EAAK,KACrB,gBAAiB,4CACjB,iBAAkB,OAAO,EAAK,IAAI,EAClC,KAAM,CACR,CACF,CAAC,EACD,MAAO,EAAO,CAEd,OADA,EAAI,cAAc,CAAK,EAChB,IAAI,SAAS,YAAa,CAAE,OAAQ,GAAI,CAAC,GAIpD,IAAM,EAAU,EAAI,MAAM,KAAK,CAAG,EAElC,GAAI,CACF,IAAM,EAAS,MAAM,EAAQ,CAAG,EAChC,GAAI,aAAkB,SACpB,OAAO,EACF,KACL,IAAM,EAAS,CAAC,EAuBhB,OArBA,EAAO,KAAK,CACV,QAAS,CACX,CAAC,EAmBM,MAAM,EAAO,CAClB,UAlBgB,MAAO,IAA2B,CAClD,GAAI,CAAC,EACH,OAAO,EAAa,CAAC,CAAC,EAExB,QAAW,KAAQ,EAAc,CAC/B,IAAM,EAAa,EAAS,aAAa,SACzC,QAAW,KAAW,GAAY,KAAO,CAAC,EAAG,CAC3C,IAAM,EAAM,IAAI,KAAK,GAAG,QAAQ,IAAI,mBAAmB,GAAS,EAChE,EAAO,KAAK,CACV,GAAI,EACJ,QAAS,MAAM,EAAI,KAAK,CAC1B,CAAC,GAGL,OAAO,EAAa,CAAM,GAK1B,iBAAkB,CAAC,IAAI,EAAS,kBAAkB,MAAM,EACxD,UACA,gBACA,QACA,aACF,CAAC,GAEH,MAAO,EAAK,CAEZ,GADA,QAAQ,MAAM,CAAG,EACb,EAAS,WAAW,MAAM,EAC5B,OAAO,IAAI,SAAS,KAAK,UAAU,CAAE,MAAO,EAAI,OAAQ,CAAC,EAAG,CAC1D,OAAQ,IACR,QAAS,CAAE,eAAgB,kBAAmB,CAChD,CAAC,EAGH,OADA,EAAI,cAAc,CAAG,EACd,IAAI,SAAS,EAAI,MAAO,CAAE,OAAQ,GAAI,CAAC,GAIlD,IAAM,EAAS,IAAI,MAAM,CACvB,mBAAoB,YACpB,MAAO,MAAO,EAAK,IAAW,CAC5B,GAAI,CAAC,EAAI,QAAQ,IAAI,iBAAiB,EAAG,CAGvC,IAAM,EAAK,EAAO,UAAU,CAAG,EAC/B,GAAI,EAAI,EAAI,QAAQ,IAAI,kBAAmB,EAAG,OAAO,EAEvD,OAAO,MAAM,EAAgB,EAAK,CAAc,GAElD,YAAa,OAAO,QAAQ,IAAI,qBAAuB,EAAE,EACzD,KAAM,QAAQ,IAAI,MAAQ,IAC5B,CAAC,EAID,OAFA,EAAmB,CAAE,KAAM,EAAO,KAAM,SAAQ,CAAC,EAE1C",
12
+ "debugId": "FD37F250C0B5B13564756E2164756E21",
13
+ "names": []
14
+ }
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{Gb as E}from"./chunk-demk6jrq.js";function G(){let q=process.env.APP_DIR,y=`${process.env.ROOT_DIR}/dist/server/bootstrap.mjs`,z=new File([`
2
+ import{Jb as E}from"./chunk-xfeqd7as.js";function G(){let q=process.env.APP_DIR,y=`${process.env.ROOT_DIR}/dist/server/bootstrap.mjs`,z=new File([`
3
3
  import { app } from "${y}"
4
4
  self.onmessage = async (event) => {
5
5
  const clone = app.clone()
@@ -18,6 +18,6 @@ import{Gb as E}from"./chunk-demk6jrq.js";function G(){let q=process.env.APP_DIR,
18
18
  }
19
19
  };
20
20
  `],"worker.ts"),A=URL.createObjectURL(z);return new Worker(A)}async function H(q,x){let y=G();return y.postMessage({jobName:q,args:x}),await new Promise((z,A)=>{y.onmessage=(F)=>{let B=F.data;if("error"in B)A(B.error);else z(B.result)}})}class K extends E{service;static _name="QueueServiceContainer";queue=new Set;activeRunningJobsCount=0;isRunning=!1;jobs={};constructor(q){super();this.service=q;this.jobs=Object.fromEntries(this.service.jobs.map((x)=>[x.name,x]))}dispatchJob(q,x){if(this.jobs[q])return new this.jobs[q]().run(JSON.parse(x))}async next(){if(!this.isRunning)this.isRunning=!0;if(this.activeRunningJobsCount>=this.service.concurrency)return await new Promise((x)=>setTimeout(x,1000)),this.next();let q=this.queue.values().next().value;if(this.jobs[q?.class]){let{value:x}=this.queue.values().next();if(x)this.queue.delete(x);this.run(q)}if(this.queue.size===0){this.isRunning=!1;return}await this.next()}async run(q){let x=this.jobs[q.class],y=new x,z=JSON.parse(q.args);this.activeRunningJobsCount++;try{let A=await(y.worker?H(q.class,q.args):y.run(...z));y.onSuccess(A,...z)}catch(A){if(y.onFail(A,...z),q.retries>=y.maxAttempts-1)y.onDeadletter(A,...z);else this.push(x,q.args,q.retries+1)}this.activeRunningJobsCount--}push(q,x,y=0){if(this.queue.add({class:q.name,args:x,createdAt:Date.now(),retries:y}),!this.isRunning)this.next()}}
21
- export{K as zb};
21
+ export{K as Cb};
22
22
 
23
- //# debugId=701B4608EB371CF864756E2164756E21
23
+ //# debugId=12EA57DEE48B165964756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "import { ServiceContainer } from \"../ServiceContainer\";\nimport { Job } from \"./Job\";\nimport { QueueServiceProvider } from \"./QueueServiceProvider\";\n\nfunction createWorker() {\n const APP_DIR = process.env.APP_DIR;\n const ROOT_DIR = process.env.ROOT_DIR;\n\n const appPath =\n process.env.NODE_ENV === \"production\"\n ? `${ROOT_DIR}/dist/server/bootstrap.mjs`\n : `${APP_DIR}/bootstrap.ts`;\n\n const file = new File(\n [\n `\n import { app } from \"${appPath}\"\n self.onmessage = async (event) => {\n const clone = app.clone()\n let result = null;\n let error = null;\n try {\n result = clone.dispatchJob(event.data.jobName, event.data.args)\n } catch (err) {\n error = err\n }\n clone.destroy()\n if(error) {\n self.postMessage({error});\n } else {\n self.postMessage({result});\n }\n };\n `,\n ],\n \"worker.ts\",\n );\n const url = URL.createObjectURL(file);\n return new Worker(url);\n}\n\n// TODO: terminate worker after the job is done\nasync function runInWorker(jobName: string, args: string) {\n const worker = createWorker();\n worker.postMessage({ jobName, args });\n return await new Promise((resolve, reject) => {\n worker.onmessage = (e) => {\n const data = e.data;\n if (\"error\" in data) {\n reject(data.error);\n } else {\n resolve(data.result);\n }\n };\n });\n}\n\ntype JobDefinition = {\n class: string;\n args: string;\n createdAt: number;\n retries: number;\n};\n\nexport class QueueServiceContainer extends ServiceContainer {\n static _name = \"QueueServiceContainer\";\n\n queue: Set<JobDefinition> = new Set();\n activeRunningJobsCount = 0;\n isRunning = false;\n jobs: Record<string, new () => Job> = {};\n\n constructor(public service: QueueServiceProvider) {\n super();\n this.jobs = Object.fromEntries(\n this.service.jobs.map((job) => [job.name, job]),\n );\n }\n\n dispatchJob(jobName: string, args: string) {\n if (this.jobs[jobName]) {\n const job = new this.jobs[jobName]();\n return job.run(JSON.parse(args));\n }\n }\n\n async next() {\n if (!this.isRunning) {\n this.isRunning = true;\n }\n\n if (this.activeRunningJobsCount >= this.service.concurrency) {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n return this.next();\n }\n\n const jobDefinition = this.queue.values().next().value as JobDefinition;\n\n if (this.jobs[jobDefinition?.class]) {\n const { value } = this.queue.values().next();\n if (value) {\n this.queue.delete(value);\n }\n\n this.run(jobDefinition);\n }\n\n if (this.queue.size === 0) {\n this.isRunning = false;\n return;\n }\n\n await this.next();\n }\n\n private async run(jobDefinition: JobDefinition) {\n const Job = this.jobs[jobDefinition.class];\n const jobInstance = new Job();\n const args: any[] = JSON.parse(jobDefinition.args);\n\n this.activeRunningJobsCount++;\n\n try {\n const result = await (jobInstance.worker\n ? runInWorker(jobDefinition.class, jobDefinition.args)\n : jobInstance.run(...args));\n\n jobInstance.onSuccess(result, ...args);\n } catch (err) {\n jobInstance.onFail(err, ...args);\n if (jobDefinition.retries >= jobInstance.maxAttempts - 1) {\n jobInstance.onDeadletter(err, ...args);\n } else {\n this.push(Job, jobDefinition.args, jobDefinition.retries + 1);\n }\n }\n\n this.activeRunningJobsCount--;\n }\n\n push(job: new () => Job, args: string, retries = 0) {\n this.queue.add({\n class: job.name,\n args,\n createdAt: Date.now(),\n retries,\n });\n if (!this.isRunning) {\n this.next();\n }\n }\n}\n"
6
6
  ],
7
7
  "mappings": ";yCAIA,SAAS,CAAY,EAAG,CACtB,IAAM,EAAU,QAAQ,IAAI,QAGtB,EAEA,GAJW,QAAQ,IAAI,qCAOvB,EAAO,IAAI,KACf,CACE;AAAA,6BACuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAkBzB,EACA,WACF,EACM,EAAM,IAAI,gBAAgB,CAAI,EACpC,OAAO,IAAI,OAAO,CAAG,EAIvB,eAAe,CAAW,CAAC,EAAiB,EAAc,CACxD,IAAM,EAAS,EAAa,EAE5B,OADA,EAAO,YAAY,CAAE,UAAS,MAAK,CAAC,EAC7B,MAAM,IAAI,QAAQ,CAAC,EAAS,IAAW,CAC5C,EAAO,UAAY,CAAC,IAAM,CACxB,IAAM,EAAO,EAAE,KACf,GAAI,UAAW,EACb,EAAO,EAAK,KAAK,EAEjB,OAAQ,EAAK,MAAM,GAGxB,EAUI,MAAM,UAA8B,CAAiB,CAQvC,cAPZ,OAAQ,wBAEf,MAA4B,IAAI,IAChC,uBAAyB,EACzB,UAAY,GACZ,KAAsC,CAAC,EAEvC,WAAW,CAAQ,EAA+B,CAChD,MAAM,EADW,eAEjB,KAAK,KAAO,OAAO,YACjB,KAAK,QAAQ,KAAK,IAAI,CAAC,IAAQ,CAAC,EAAI,KAAM,CAAG,CAAC,CAChD,EAGF,WAAW,CAAC,EAAiB,EAAc,CACzC,GAAI,KAAK,KAAK,GAEZ,OADY,IAAI,KAAK,KAAK,GAAS,EACxB,IAAI,KAAK,MAAM,CAAI,CAAC,OAI7B,KAAI,EAAG,CACX,GAAI,CAAC,KAAK,UACR,KAAK,UAAY,GAGnB,GAAI,KAAK,wBAA0B,KAAK,QAAQ,YAE9C,OADA,MAAM,IAAI,QAAQ,CAAC,IAAY,WAAW,EAAS,IAAI,CAAC,EACjD,KAAK,KAAK,EAGnB,IAAM,EAAgB,KAAK,MAAM,OAAO,EAAE,KAAK,EAAE,MAEjD,GAAI,KAAK,KAAK,GAAe,OAAQ,CACnC,IAAQ,SAAU,KAAK,MAAM,OAAO,EAAE,KAAK,EAC3C,GAAI,EACF,KAAK,MAAM,OAAO,CAAK,EAGzB,KAAK,IAAI,CAAa,EAGxB,GAAI,KAAK,MAAM,OAAS,EAAG,CACzB,KAAK,UAAY,GACjB,OAGF,MAAM,KAAK,KAAK,OAGJ,IAAG,CAAC,EAA8B,CAC9C,IAAM,EAAM,KAAK,KAAK,EAAc,OAC9B,EAAc,IAAI,EAClB,EAAc,KAAK,MAAM,EAAc,IAAI,EAEjD,KAAK,yBAEL,GAAI,CACF,IAAM,EAAS,MAAO,EAAY,OAC9B,EAAY,EAAc,MAAO,EAAc,IAAI,EACnD,EAAY,IAAI,GAAG,CAAI,GAE3B,EAAY,UAAU,EAAQ,GAAG,CAAI,EACrC,MAAO,EAAK,CAEZ,GADA,EAAY,OAAO,EAAK,GAAG,CAAI,EAC3B,EAAc,SAAW,EAAY,YAAc,EACrD,EAAY,aAAa,EAAK,GAAG,CAAI,EAErC,UAAK,KAAK,EAAK,EAAc,KAAM,EAAc,QAAU,CAAC,EAIhE,KAAK,yBAGP,IAAI,CAAC,EAAoB,EAAc,EAAU,EAAG,CAOlD,GANA,KAAK,MAAM,IAAI,CACb,MAAO,EAAI,KACX,OACA,UAAW,KAAK,IAAI,EACpB,SACF,CAAC,EACG,CAAC,KAAK,UACR,KAAK,KAAK,EAGhB",
8
- "debugId": "701B4608EB371CF864756E2164756E21",
8
+ "debugId": "12EA57DEE48B165964756E2164756E21",
9
9
  "names": []
10
10
  }