silgi 0.43.28 → 0.50.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 (478) hide show
  1. package/README.md +103 -1
  2. package/dist/_virtual/_rolldown/runtime.mjs +5 -0
  3. package/dist/adapters/_fetch-adapter.d.mts +18 -0
  4. package/dist/adapters/_fetch-adapter.mjs +53 -0
  5. package/dist/adapters/astro.d.mts +15 -0
  6. package/dist/adapters/astro.mjs +31 -0
  7. package/dist/adapters/aws-lambda.d.mts +42 -0
  8. package/dist/adapters/aws-lambda.mjs +92 -0
  9. package/dist/adapters/express.d.mts +16 -0
  10. package/dist/adapters/express.mjs +110 -0
  11. package/dist/adapters/message-port.d.mts +42 -0
  12. package/dist/adapters/message-port.mjs +132 -0
  13. package/dist/adapters/nestjs.d.mts +25 -0
  14. package/dist/adapters/nestjs.mjs +83 -0
  15. package/dist/adapters/nextjs.d.mts +14 -0
  16. package/dist/adapters/nextjs.mjs +29 -0
  17. package/dist/adapters/peer.d.mts +27 -0
  18. package/dist/adapters/peer.mjs +36 -0
  19. package/dist/adapters/remix.d.mts +15 -0
  20. package/dist/adapters/remix.mjs +30 -0
  21. package/dist/adapters/solidstart.d.mts +12 -0
  22. package/dist/adapters/solidstart.mjs +29 -0
  23. package/dist/adapters/sveltekit.d.mts +14 -0
  24. package/dist/adapters/sveltekit.mjs +30 -0
  25. package/dist/broker/index.d.mts +62 -0
  26. package/dist/broker/index.mjs +153 -0
  27. package/dist/broker/nats.d.mts +33 -0
  28. package/dist/broker/nats.mjs +31 -0
  29. package/dist/broker/redis.d.mts +51 -0
  30. package/dist/broker/redis.mjs +92 -0
  31. package/dist/builder.d.mts +55 -0
  32. package/dist/builder.mjs +70 -0
  33. package/dist/callable.d.mts +19 -0
  34. package/dist/callable.mjs +42 -0
  35. package/dist/caller.mjs +90 -0
  36. package/dist/client/adapters/fetch/index.d.mts +15 -0
  37. package/dist/client/adapters/fetch/index.mjs +57 -0
  38. package/dist/client/adapters/ofetch/index.d.mts +55 -0
  39. package/dist/client/adapters/ofetch/index.mjs +91 -0
  40. package/dist/client/adapters/websocket/index.d.mts +20 -0
  41. package/dist/client/adapters/websocket/index.mjs +101 -0
  42. package/dist/client/client.d.mts +37 -0
  43. package/dist/client/client.mjs +80 -0
  44. package/dist/client/consume.d.mts +50 -0
  45. package/dist/client/consume.mjs +66 -0
  46. package/dist/client/dynamic-link.d.mts +16 -0
  47. package/dist/client/dynamic-link.mjs +19 -0
  48. package/dist/client/index.d.mts +6 -0
  49. package/dist/client/index.mjs +5 -0
  50. package/dist/client/interceptor.d.mts +31 -0
  51. package/dist/client/interceptor.mjs +34 -0
  52. package/dist/client/openapi.d.mts +29 -0
  53. package/dist/client/openapi.mjs +89 -0
  54. package/dist/client/plugins/batch.d.mts +26 -0
  55. package/dist/client/plugins/batch.mjs +64 -0
  56. package/dist/client/plugins/circuit-breaker.d.mts +24 -0
  57. package/dist/client/plugins/circuit-breaker.mjs +60 -0
  58. package/dist/client/plugins/csrf.d.mts +13 -0
  59. package/dist/client/plugins/csrf.mjs +20 -0
  60. package/dist/client/plugins/dedupe.d.mts +10 -0
  61. package/dist/client/plugins/dedupe.mjs +28 -0
  62. package/dist/client/plugins/index.d.mts +8 -0
  63. package/dist/client/plugins/index.mjs +8 -0
  64. package/dist/client/plugins/otel.d.mts +12 -0
  65. package/dist/client/plugins/otel.mjs +27 -0
  66. package/dist/client/plugins/retry.d.mts +34 -0
  67. package/dist/client/plugins/retry.mjs +79 -0
  68. package/dist/client/plugins/timeout.d.mts +10 -0
  69. package/dist/client/plugins/timeout.mjs +14 -0
  70. package/dist/client/server.d.mts +16 -0
  71. package/dist/client/server.mjs +59 -0
  72. package/dist/client/types.d.mts +29 -0
  73. package/dist/codec/devalue.d.mts +21 -0
  74. package/dist/codec/devalue.mjs +33 -0
  75. package/dist/codec/msgpack.d.mts +18 -0
  76. package/dist/codec/msgpack.mjs +45 -0
  77. package/dist/codec/sanitize.mjs +38 -0
  78. package/dist/codegen/emitters.d.mts +51 -0
  79. package/dist/codegen/emitters.mjs +143 -0
  80. package/dist/codegen/generate.d.mts +25 -0
  81. package/dist/codegen/generate.mjs +224 -0
  82. package/dist/codegen/index.d.mts +44 -0
  83. package/dist/codegen/index.mjs +103 -0
  84. package/dist/codegen/parse.d.mts +124 -0
  85. package/dist/codegen/parse.mjs +135 -0
  86. package/dist/codegen/preserve.d.mts +21 -0
  87. package/dist/codegen/preserve.mjs +62 -0
  88. package/dist/codegen/schema-to-code.d.mts +57 -0
  89. package/dist/codegen/schema-to-code.mjs +167 -0
  90. package/dist/compile.d.mts +46 -0
  91. package/dist/compile.mjs +332 -0
  92. package/dist/core/codec.mjs +67 -0
  93. package/dist/core/context-bridge.mjs +11 -0
  94. package/dist/core/dispatch.mjs +62 -0
  95. package/dist/core/error.d.mts +99 -60
  96. package/dist/core/error.mjs +125 -92
  97. package/dist/core/handler.d.mts +6 -0
  98. package/dist/core/handler.mjs +153 -0
  99. package/dist/core/input.mjs +49 -0
  100. package/dist/core/iterator.d.mts +17 -0
  101. package/dist/core/iterator.mjs +79 -0
  102. package/dist/core/router-utils.mjs +22 -0
  103. package/dist/core/schema.d.mts +20 -0
  104. package/dist/core/schema.mjs +33 -0
  105. package/dist/core/serve.d.mts +51 -0
  106. package/dist/core/serve.mjs +76 -0
  107. package/dist/core/sse.d.mts +18 -0
  108. package/dist/core/sse.mjs +110 -0
  109. package/dist/core/storage.d.mts +17 -4
  110. package/dist/core/storage.mjs +60 -13
  111. package/dist/core/task.d.mts +62 -0
  112. package/dist/core/task.mjs +165 -0
  113. package/dist/core/trace-map.d.mts +13 -0
  114. package/dist/core/trace-map.mjs +13 -0
  115. package/dist/core/url.mjs +28 -0
  116. package/dist/core/utils.mjs +24 -0
  117. package/dist/index.d.mts +17 -21
  118. package/dist/index.mjs +14 -22
  119. package/dist/integrations/ai/index.d.mts +25 -0
  120. package/dist/integrations/ai/index.mjs +117 -0
  121. package/dist/integrations/better-auth/index.d.mts +41 -0
  122. package/dist/integrations/better-auth/index.mjs +331 -0
  123. package/dist/integrations/drizzle/index.d.mts +27 -0
  124. package/dist/integrations/drizzle/index.mjs +285 -0
  125. package/dist/integrations/hey-api/index.d.mts +2 -0
  126. package/dist/integrations/hey-api/index.mjs +2 -0
  127. package/dist/integrations/hey-api/to-client.d.mts +20 -0
  128. package/dist/integrations/hey-api/to-client.mjs +39 -0
  129. package/dist/integrations/pinia-colada/general-utils.d.mts +13 -0
  130. package/dist/integrations/pinia-colada/general-utils.mjs +9 -0
  131. package/dist/integrations/pinia-colada/index.d.mts +6 -0
  132. package/dist/integrations/pinia-colada/index.mjs +5 -0
  133. package/dist/integrations/pinia-colada/key.d.mts +11 -0
  134. package/dist/integrations/pinia-colada/key.mjs +11 -0
  135. package/dist/integrations/pinia-colada/procedure-utils.d.mts +25 -0
  136. package/dist/integrations/pinia-colada/procedure-utils.mjs +33 -0
  137. package/dist/integrations/pinia-colada/router-utils.d.mts +17 -0
  138. package/dist/integrations/pinia-colada/router-utils.mjs +30 -0
  139. package/dist/integrations/pinia-colada/types.d.mts +25 -0
  140. package/dist/integrations/react/index.d.mts +83 -0
  141. package/dist/integrations/react/index.mjs +196 -0
  142. package/dist/integrations/tanstack-query/index.d.mts +120 -0
  143. package/dist/integrations/tanstack-query/index.mjs +100 -0
  144. package/dist/integrations/tanstack-query/ssr.d.mts +60 -0
  145. package/dist/integrations/tanstack-query/ssr.mjs +102 -0
  146. package/dist/integrations/zod/converter.d.mts +75 -0
  147. package/dist/integrations/zod/converter.mjs +345 -0
  148. package/dist/integrations/zod/index.d.mts +2 -0
  149. package/dist/integrations/zod/index.mjs +2 -0
  150. package/dist/lazy.d.mts +22 -0
  151. package/dist/lazy.mjs +34 -0
  152. package/dist/lifecycle.d.mts +36 -0
  153. package/dist/lifecycle.mjs +46 -0
  154. package/dist/map-input.d.mts +17 -0
  155. package/dist/map-input.mjs +47 -0
  156. package/dist/plugins/analytics/accumulator.d.mts +24 -0
  157. package/dist/plugins/analytics/accumulator.mjs +91 -0
  158. package/dist/plugins/analytics/alerts.d.mts +59 -0
  159. package/dist/plugins/analytics/alerts.mjs +140 -0
  160. package/dist/plugins/analytics/collector.d.mts +38 -0
  161. package/dist/plugins/analytics/collector.mjs +275 -0
  162. package/dist/plugins/analytics/cost.d.mts +61 -0
  163. package/dist/plugins/analytics/cost.mjs +97 -0
  164. package/dist/plugins/analytics/export.d.mts +7 -0
  165. package/dist/plugins/analytics/export.mjs +86 -0
  166. package/dist/plugins/analytics/normalize.mjs +144 -0
  167. package/dist/plugins/analytics/query.mjs +164 -0
  168. package/dist/plugins/analytics/request-id.mjs +34 -0
  169. package/dist/plugins/analytics/routes.d.mts +11 -0
  170. package/dist/plugins/analytics/routes.mjs +211 -0
  171. package/dist/plugins/analytics/sse.d.mts +31 -0
  172. package/dist/plugins/analytics/sse.mjs +74 -0
  173. package/dist/plugins/analytics/store.mjs +103 -0
  174. package/dist/plugins/analytics/timeseries.d.mts +50 -0
  175. package/dist/plugins/analytics/timeseries.mjs +169 -0
  176. package/dist/plugins/analytics/trace.d.mts +48 -0
  177. package/dist/plugins/analytics/trace.mjs +83 -0
  178. package/dist/plugins/analytics/types.d.mts +145 -0
  179. package/dist/plugins/analytics/types.mjs +40 -0
  180. package/dist/plugins/analytics/utils.d.mts +4 -0
  181. package/dist/plugins/analytics/utils.mjs +56 -0
  182. package/dist/plugins/analytics.d.mts +18 -0
  183. package/dist/plugins/analytics.mjs +188 -0
  184. package/dist/plugins/batch-server.d.mts +20 -0
  185. package/dist/plugins/batch-server.mjs +91 -0
  186. package/dist/plugins/body-limit.d.mts +19 -0
  187. package/dist/plugins/body-limit.mjs +49 -0
  188. package/dist/plugins/cache.d.mts +170 -0
  189. package/dist/plugins/cache.mjs +212 -0
  190. package/dist/plugins/coerce.d.mts +24 -0
  191. package/dist/plugins/coerce.mjs +70 -0
  192. package/dist/plugins/cookies.d.mts +14 -0
  193. package/dist/plugins/cookies.mjs +48 -0
  194. package/dist/plugins/cors.d.mts +43 -0
  195. package/dist/plugins/cors.mjs +62 -0
  196. package/dist/plugins/file-upload.d.mts +38 -0
  197. package/dist/plugins/file-upload.mjs +102 -0
  198. package/dist/plugins/index.d.mts +18 -0
  199. package/dist/plugins/index.mjs +17 -0
  200. package/dist/plugins/otel.d.mts +35 -0
  201. package/dist/plugins/otel.mjs +40 -0
  202. package/dist/plugins/pino.d.mts +60 -0
  203. package/dist/plugins/pino.mjs +42 -0
  204. package/dist/plugins/pubsub.d.mts +50 -0
  205. package/dist/plugins/pubsub.mjs +53 -0
  206. package/dist/plugins/ratelimit.d.mts +53 -0
  207. package/dist/plugins/ratelimit.mjs +92 -0
  208. package/dist/plugins/signing.d.mts +41 -0
  209. package/dist/plugins/signing.mjs +118 -0
  210. package/dist/plugins/strict-get.d.mts +10 -0
  211. package/dist/plugins/strict-get.mjs +33 -0
  212. package/dist/scalar.d.mts +49 -0
  213. package/dist/scalar.mjs +311 -0
  214. package/dist/silgi.d.mts +144 -0
  215. package/dist/silgi.mjs +164 -0
  216. package/dist/trpc-interop.d.mts +22 -0
  217. package/dist/trpc-interop.mjs +68 -0
  218. package/dist/types.d.mts +108 -0
  219. package/dist/ws.d.mts +88 -0
  220. package/dist/ws.mjs +205 -0
  221. package/lib/dashboard/index.html +120 -0
  222. package/lib/ocache.d.mts +1 -0
  223. package/lib/ocache.mjs +1 -0
  224. package/lib/ofetch.d.mts +1 -0
  225. package/lib/ofetch.mjs +1 -0
  226. package/lib/srvx.d.mts +1 -0
  227. package/lib/srvx.mjs +1 -0
  228. package/lib/unstorage.d.mts +1 -0
  229. package/lib/unstorage.mjs +1 -0
  230. package/package.json +314 -150
  231. package/dist/build.d.mts +0 -3
  232. package/dist/build.mjs +0 -4
  233. package/dist/cli/build/build.mjs +0 -15
  234. package/dist/cli/build/dev.d.mts +0 -10
  235. package/dist/cli/build/dev.mjs +0 -91
  236. package/dist/cli/build/prepare.d.mts +0 -6
  237. package/dist/cli/build/prepare.mjs +0 -15
  238. package/dist/cli/commands/commands.mjs +0 -90
  239. package/dist/cli/commands/env.mjs +0 -53
  240. package/dist/cli/commands/init.mjs +0 -84
  241. package/dist/cli/commands/install.mjs +0 -52
  242. package/dist/cli/commands/prepare.mjs +0 -65
  243. package/dist/cli/commands/reset.mjs +0 -46
  244. package/dist/cli/commands/run.mjs +0 -31
  245. package/dist/cli/commands/watch.mjs +0 -153
  246. package/dist/cli/config/defaults.mjs +0 -117
  247. package/dist/cli/config/index.d.mts +0 -3
  248. package/dist/cli/config/index.mjs +0 -4
  249. package/dist/cli/config/loader.d.mts +0 -6
  250. package/dist/cli/config/loader.mjs +0 -71
  251. package/dist/cli/config/resolvers/compatibility.mjs +0 -71
  252. package/dist/cli/config/resolvers/imports.mjs +0 -35
  253. package/dist/cli/config/resolvers/paths.mjs +0 -98
  254. package/dist/cli/config/resolvers/storage.mjs +0 -23
  255. package/dist/cli/config/resolvers/url.mjs +0 -9
  256. package/dist/cli/config/types.d.mts +0 -14
  257. package/dist/cli/config/types.mjs +0 -147
  258. package/dist/cli/core/apiful.mjs +0 -36
  259. package/dist/cli/core/devServer.mjs +0 -10
  260. package/dist/cli/core/env.mjs +0 -68
  261. package/dist/cli/core/installPackage.mjs +0 -60
  262. package/dist/cli/core/runtimeConfig.mjs +0 -70
  263. package/dist/cli/core/scan.mjs +0 -35
  264. package/dist/cli/core/silgi.mjs +0 -111
  265. package/dist/cli/framework/emptyFramework.mjs +0 -7
  266. package/dist/cli/framework/h3.mjs +0 -55
  267. package/dist/cli/framework/index.mjs +0 -15
  268. package/dist/cli/framework/nitro.mjs +0 -24
  269. package/dist/cli/framework/nuxt.mjs +0 -10
  270. package/dist/cli/index.d.mts +0 -1
  271. package/dist/cli/index.mjs +0 -29
  272. package/dist/cli/module/exportScan.mjs +0 -180
  273. package/dist/cli/module/install.mjs +0 -49
  274. package/dist/cli/module/scan.mjs +0 -193
  275. package/dist/cli/scan/prepareCommands.mjs +0 -40
  276. package/dist/cli/scan/prepareConfigs.mjs +0 -33
  277. package/dist/cli/scan/prepareCoreFile.mjs +0 -118
  278. package/dist/cli/scan/prepareScanFile.mjs +0 -59
  279. package/dist/cli/scan/prepareSchema.mjs +0 -128
  280. package/dist/cli/scan/scanExportFile.mjs +0 -288
  281. package/dist/cli/scan/writeCoreFile.mjs +0 -22
  282. package/dist/cli/scan/writeTypesAndFiles.mjs +0 -72
  283. package/dist/cli/utils/cancel.mjs +0 -14
  284. package/dist/cli/utils/common.mjs +0 -15
  285. package/dist/cli/utils/compatibility.mjs +0 -33
  286. package/dist/cli/utils/debug.mjs +0 -11
  287. package/dist/cli/utils/ignore.mjs +0 -56
  288. package/dist/cli/utils/processManager.mjs +0 -170
  289. package/dist/cli/utils/readScanFile.mjs +0 -58
  290. package/dist/cli/utils/storage.mjs +0 -23
  291. package/dist/core/context.d.mts +0 -30
  292. package/dist/core/context.mjs +0 -32
  293. package/dist/core/createSilgi.d.mts +0 -6
  294. package/dist/core/createSilgi.mjs +0 -153
  295. package/dist/core/event.d.mts +0 -26
  296. package/dist/core/event.mjs +0 -44
  297. package/dist/core/index.d.mts +0 -25
  298. package/dist/core/index.mjs +0 -30
  299. package/dist/core/orchestrate.mjs +0 -115
  300. package/dist/core/response.d.mts +0 -20
  301. package/dist/core/response.mjs +0 -105
  302. package/dist/core/silgi.d.mts +0 -19
  303. package/dist/core/silgi.mjs +0 -141
  304. package/dist/core/silgiApp.d.mts +0 -9
  305. package/dist/core/silgiApp.mjs +0 -23
  306. package/dist/core/unctx.d.mts +0 -21
  307. package/dist/core/unctx.mjs +0 -35
  308. package/dist/core/utils/event-stream.d.mts +0 -53
  309. package/dist/core/utils/event-stream.mjs +0 -38
  310. package/dist/core/utils/event.d.mts +0 -8
  311. package/dist/core/utils/event.mjs +0 -12
  312. package/dist/core/utils/internal/event-stream.d.mts +0 -45
  313. package/dist/core/utils/internal/event-stream.mjs +0 -137
  314. package/dist/core/utils/internal/obj.mjs +0 -9
  315. package/dist/core/utils/internal/object.mjs +0 -29
  316. package/dist/core/utils/internal/query.mjs +0 -73
  317. package/dist/core/utils/internal/req.mjs +0 -35
  318. package/dist/core/utils/merge.d.mts +0 -14
  319. package/dist/core/utils/merge.mjs +0 -27
  320. package/dist/core/utils/middleware.d.mts +0 -14
  321. package/dist/core/utils/middleware.mjs +0 -12
  322. package/dist/core/utils/request.mjs +0 -35
  323. package/dist/core/utils/resolver.d.mts +0 -7
  324. package/dist/core/utils/resolver.mjs +0 -29
  325. package/dist/core/utils/runtime.d.mts +0 -7
  326. package/dist/core/utils/runtime.mjs +0 -20
  327. package/dist/core/utils/sanitize.mjs +0 -22
  328. package/dist/core/utils/schema.d.mts +0 -34
  329. package/dist/core/utils/schema.mjs +0 -33
  330. package/dist/core/utils/service.d.mts +0 -13
  331. package/dist/core/utils/service.mjs +0 -19
  332. package/dist/core/utils/shared.d.mts +0 -6
  333. package/dist/core/utils/shared.mjs +0 -7
  334. package/dist/core/utils/storage.d.mts +0 -24
  335. package/dist/core/utils/storage.mjs +0 -54
  336. package/dist/kit/add/add-commands.d.mts +0 -6
  337. package/dist/kit/add/add-commands.mjs +0 -12
  338. package/dist/kit/add/add-core-file.d.mts +0 -9
  339. package/dist/kit/add/add-core-file.mjs +0 -11
  340. package/dist/kit/add/add-imports.d.mts +0 -14
  341. package/dist/kit/add/add-imports.mjs +0 -56
  342. package/dist/kit/add/add-npm.d.mts +0 -14
  343. package/dist/kit/add/add-npm.mjs +0 -23
  344. package/dist/kit/define.d.mts +0 -28
  345. package/dist/kit/define.mjs +0 -25
  346. package/dist/kit/errors.d.mts +0 -6
  347. package/dist/kit/errors.mjs +0 -11
  348. package/dist/kit/esm.d.mts +0 -11
  349. package/dist/kit/esm.mjs +0 -21
  350. package/dist/kit/fs.d.mts +0 -4
  351. package/dist/kit/fs.mjs +0 -13
  352. package/dist/kit/function-utils.d.mts +0 -27
  353. package/dist/kit/function-utils.mjs +0 -75
  354. package/dist/kit/gen.d.mts +0 -5
  355. package/dist/kit/gen.mjs +0 -26
  356. package/dist/kit/hash.d.mts +0 -4
  357. package/dist/kit/hash.mjs +0 -10
  358. package/dist/kit/index.d.mts +0 -22
  359. package/dist/kit/index.mjs +0 -23
  360. package/dist/kit/isFramework.d.mts +0 -6
  361. package/dist/kit/isFramework.mjs +0 -21
  362. package/dist/kit/logger.d.mts +0 -6
  363. package/dist/kit/logger.mjs +0 -10
  364. package/dist/kit/migration.d.mts +0 -113
  365. package/dist/kit/migration.mjs +0 -301
  366. package/dist/kit/module.d.mts +0 -14
  367. package/dist/kit/module.mjs +0 -53
  368. package/dist/kit/path.d.mts +0 -7
  369. package/dist/kit/path.mjs +0 -26
  370. package/dist/kit/preset.d.mts +0 -8
  371. package/dist/kit/preset.mjs +0 -11
  372. package/dist/kit/resolve.d.mts +0 -37
  373. package/dist/kit/resolve.mjs +0 -82
  374. package/dist/kit/template.d.mts +0 -19
  375. package/dist/kit/template.mjs +0 -91
  376. package/dist/kit/useRequest.d.mts +0 -19
  377. package/dist/kit/useRequest.mjs +0 -63
  378. package/dist/kit/utils.d.mts +0 -34
  379. package/dist/kit/utils.mjs +0 -91
  380. package/dist/package.mjs +0 -176
  381. package/dist/presets/_all.gen.d.mts +0 -6
  382. package/dist/presets/_all.gen.mjs +0 -18
  383. package/dist/presets/_resolve.d.mts +0 -12
  384. package/dist/presets/_resolve.mjs +0 -57
  385. package/dist/presets/_types.gen.d.mts +0 -8
  386. package/dist/presets/_types.gen.mjs +0 -5
  387. package/dist/presets/h3/preset.d.mts +0 -6
  388. package/dist/presets/h3/preset.mjs +0 -35
  389. package/dist/presets/hono/preset.d.mts +0 -6
  390. package/dist/presets/hono/preset.mjs +0 -30
  391. package/dist/presets/index.d.mts +0 -3
  392. package/dist/presets/index.mjs +0 -3
  393. package/dist/presets/nitro/preset.d.mts +0 -6
  394. package/dist/presets/nitro/preset.mjs +0 -37
  395. package/dist/presets/npmpackage/preset.d.mts +0 -6
  396. package/dist/presets/npmpackage/preset.mjs +0 -29
  397. package/dist/presets/nuxt/preset.d.mts +0 -6
  398. package/dist/presets/nuxt/preset.mjs +0 -41
  399. package/dist/runtime/index.d.mts +0 -4
  400. package/dist/runtime/index.mjs +0 -5
  401. package/dist/runtime/internal/config.d.mts +0 -11
  402. package/dist/runtime/internal/config.mjs +0 -97
  403. package/dist/runtime/internal/debug.d.mts +0 -6
  404. package/dist/runtime/internal/debug.mjs +0 -11
  405. package/dist/runtime/internal/defu.d.mts +0 -4
  406. package/dist/runtime/internal/defu.mjs +0 -9
  407. package/dist/runtime/internal/index.d.mts +0 -7
  408. package/dist/runtime/internal/index.mjs +0 -8
  409. package/dist/runtime/internal/nitro.d.mts +0 -6
  410. package/dist/runtime/internal/nitro.mjs +0 -36
  411. package/dist/runtime/internal/nuxt.d.mts +0 -12
  412. package/dist/runtime/internal/nuxt.mjs +0 -16
  413. package/dist/runtime/internal/ofetch.d.mts +0 -8
  414. package/dist/runtime/internal/ofetch.mjs +0 -39
  415. package/dist/runtime/internal/plugin.d.mts +0 -7
  416. package/dist/runtime/internal/plugin.mjs +0 -8
  417. package/dist/types/cliConfig.d.mts +0 -288
  418. package/dist/types/cliConfig.mjs +0 -0
  419. package/dist/types/cliHooks.d.mts +0 -142
  420. package/dist/types/cliHooks.mjs +0 -0
  421. package/dist/types/compatibility.d.mts +0 -13
  422. package/dist/types/compatibility.mjs +0 -0
  423. package/dist/types/config.d.mts +0 -46
  424. package/dist/types/config.mjs +0 -0
  425. package/dist/types/dotenv.d.mts +0 -29
  426. package/dist/types/dotenv.mjs +0 -0
  427. package/dist/types/event.d.mts +0 -63
  428. package/dist/types/event.mjs +0 -0
  429. package/dist/types/global.d.mts +0 -24
  430. package/dist/types/global.mjs +0 -0
  431. package/dist/types/helper.d.mts +0 -25
  432. package/dist/types/helper.mjs +0 -0
  433. package/dist/types/hooks.d.mts +0 -37
  434. package/dist/types/hooks.mjs +0 -0
  435. package/dist/types/index.d.mts +0 -26
  436. package/dist/types/index.mjs +0 -0
  437. package/dist/types/kits.d.mts +0 -32
  438. package/dist/types/kits.mjs +0 -0
  439. package/dist/types/middleware.d.mts +0 -31
  440. package/dist/types/middleware.mjs +0 -0
  441. package/dist/types/module.d.mts +0 -102
  442. package/dist/types/module.mjs +0 -0
  443. package/dist/types/preset.d.mts +0 -20
  444. package/dist/types/preset.mjs +0 -0
  445. package/dist/types/route.d.mts +0 -59
  446. package/dist/types/route.mjs +0 -0
  447. package/dist/types/runtime/index.d.mts +0 -5
  448. package/dist/types/runtime/index.mjs +0 -0
  449. package/dist/types/runtime/nuxt.d.mts +0 -13
  450. package/dist/types/runtime/nuxt.mjs +0 -0
  451. package/dist/types/runtime/ofetch.d.mts +0 -14
  452. package/dist/types/runtime/ofetch.mjs +0 -0
  453. package/dist/types/runtime/plugin.d.mts +0 -8
  454. package/dist/types/runtime/plugin.mjs +0 -0
  455. package/dist/types/runtime/silgi.d.mts +0 -11
  456. package/dist/types/runtime/silgi.mjs +0 -0
  457. package/dist/types/schema.d.mts +0 -86
  458. package/dist/types/schema.mjs +0 -0
  459. package/dist/types/service.d.mts +0 -102
  460. package/dist/types/service.mjs +0 -0
  461. package/dist/types/shared.d.mts +0 -19
  462. package/dist/types/shared.mjs +0 -0
  463. package/dist/types/silgi.d.mts +0 -71
  464. package/dist/types/silgi.mjs +0 -0
  465. package/dist/types/silgiCLI.d.mts +0 -118
  466. package/dist/types/silgiCLI.mjs +0 -0
  467. package/dist/types/standard-schema.d.mts +0 -61
  468. package/dist/types/standard-schema.mjs +0 -0
  469. package/dist/types/storage.d.mts +0 -30
  470. package/dist/types/storage.mjs +0 -0
  471. package/dist/types/tree-kill.d.mts +0 -18
  472. package/dist/types/tree-kill.mjs +0 -0
  473. package/lib/config.d.mts +0 -7
  474. package/lib/config.mjs +0 -5
  475. package/lib/meta.d.mts +0 -4
  476. package/lib/meta.mjs +0 -6
  477. package/lib/runtime-meta.d.mts +0 -4
  478. package/lib/runtime-meta.mjs +0 -32
@@ -1,115 +0,0 @@
1
- import { normalizeResult, useSilgi } from "./unctx.mjs";
2
- import { createError } from "./error.mjs";
3
- import { generateStorageKey, useSilgiStorage } from "./utils/storage.mjs";
4
- import { parseRequestInput } from "./utils/internal/req.mjs";
5
- import { getQuery, getRouterParams } from "./utils/request.mjs";
6
- import { getUrlPrefix } from "./utils/resolver.mjs";
7
- import { silgiFetch } from "./silgi.mjs";
8
- import consola from "consola";
9
-
10
- //#region src/core/orchestrate.ts
11
- async function orchestrate(route, event) {
12
- const silgiCtx = useSilgi();
13
- const silgiURL = getUrlPrefix(route.route || event.req.url, route.method);
14
- const input = route.service?.rules?.readBeforeBody === false ? {} : await parseRequestInput(event.req);
15
- const hookContext = { earlyReturnValue: false };
16
- const routerParams = input.path || getRouterParams(event);
17
- const queryParams = input.query || getQuery(event);
18
- const inputData = {
19
- args: input,
20
- query: queryParams,
21
- path: routerParams
22
- };
23
- try {
24
- if (!route.service) throw createError({
25
- statusCode: 404,
26
- statusMessage: "Service not found"
27
- });
28
- const cachePromise = cacheExecute(input, route, silgiURL, event);
29
- const beforeHookPromise = silgiCtx.callHook("fetch:before", {
30
- url: silgiURL,
31
- input,
32
- event,
33
- route,
34
- hookContext
35
- });
36
- const cacheData = await cachePromise;
37
- await beforeHookPromise;
38
- if (hookContext.earlyReturnValue !== false) return hookContext.earlyReturnValue;
39
- if (cacheData?.success) {
40
- await silgiCtx.callHook("fetch:after", {
41
- event,
42
- url: silgiURL,
43
- input,
44
- result: cacheData.data,
45
- success: true,
46
- cached: true,
47
- route,
48
- hookContext
49
- });
50
- return cacheData.data;
51
- }
52
- silgiCtx.shared.$fetch = silgiFetch;
53
- silgiCtx.shared.silgi = silgiCtx;
54
- const result = await route.service?.handler?.(inputData, silgiCtx.shared, event);
55
- await silgiCtx.callHook("fetch:after", {
56
- event,
57
- url: silgiURL,
58
- input: inputData,
59
- result,
60
- success: true,
61
- route,
62
- hookContext
63
- });
64
- if (route.service?.storage && cacheData?.cachedKey) await useSilgiStorage(route.service.storage.base).setItem(cacheData.cachedKey, result, route.service.storage.options);
65
- return result;
66
- } catch (err) {
67
- consola.error("Error in orchestrate:", err);
68
- await silgiCtx.callHook("fetch:error", {
69
- event,
70
- input: inputData,
71
- error: err instanceof Error ? err : new Error(String(err)),
72
- url: silgiURL,
73
- route,
74
- hookContext
75
- });
76
- silgiCtx.captureError(silgiCtx, createError({
77
- message: err instanceof Error ? err.message : String(err),
78
- statusCode: 500,
79
- statusMessage: "Internal Server Error",
80
- cause: err
81
- }), {
82
- event,
83
- tags: ["execute"]
84
- });
85
- throw err;
86
- }
87
- }
88
- async function cacheExecute(input, route, silgiURL, event) {
89
- if (!route.service || !route.service.storage) return;
90
- const cacheKey = route.service.storage ? await generateStorageKey({
91
- url: silgiURL,
92
- input,
93
- keyGenerator: route.service.storage.key,
94
- storageOptions: route.service.storage,
95
- requestId: event?.requestId
96
- }) : null;
97
- if (cacheKey) {
98
- const cachedResult = await useSilgiStorage(route.service.storage.base).getItem(cacheKey);
99
- if (cachedResult !== null) return {
100
- success: true,
101
- data: normalizeResult(cachedResult),
102
- cached: true,
103
- cachedKey: cacheKey
104
- };
105
- }
106
- return {
107
- success: false,
108
- data: null,
109
- cached: false,
110
- cachedKey: cacheKey
111
- };
112
- }
113
-
114
- //#endregion
115
- export { orchestrate };
@@ -1,20 +0,0 @@
1
- import { SilgiError$1 as SilgiError } from "./error.mjs";
2
- import { SilgiEvent } from "silgi/types";
3
-
4
- //#region src/core/response.d.ts
5
- type MaybePromise<T> = T | Promise<T>;
6
- interface SilgiHandlerConfig {
7
- debug?: boolean;
8
- // websocket?: WebSocketOptions;
9
- onError?: (error: SilgiError, event: SilgiEvent) => MaybePromise<void | unknown>;
10
- onRequest?: (event: SilgiEvent) => MaybePromise<void>;
11
- onBeforeResponse?: (event: SilgiEvent, response: Response | PreparedResponse) => MaybePromise<void>;
12
- }
13
- type PreparedResponse = ResponseInit & {
14
- body?: BodyInit | null;
15
- };
16
- declare const kNotFound: symbol;
17
- declare const kHandled: symbol;
18
- declare function handleResponse(val: unknown, event: SilgiEvent, config: SilgiHandlerConfig): Response | Promise<Response>;
19
- //#endregion
20
- export { handleResponse as handleResponse$1, kHandled as kHandled$1, kNotFound as kNotFound$1 };
@@ -1,105 +0,0 @@
1
- import { isJSONSerializable } from "./utils/internal/object.mjs";
2
- import { createError } from "./error.mjs";
3
- import { FastResponse } from "srvx";
4
-
5
- //#region src/core/response.ts
6
- const kNotFound = /* @__PURE__ */ Symbol.for("silgi.notFound");
7
- const kHandled = /* @__PURE__ */ Symbol.for("silgi.handled");
8
- function handleResponse(val, event, config) {
9
- if (val && val instanceof Promise) return val.catch((error) => error).then((resolvedVal) => handleResponse(resolvedVal, event, config));
10
- const response = prepareResponse(val, event, config);
11
- if (response instanceof Promise) return handleResponse(response, event, config);
12
- const { onBeforeResponse } = config;
13
- return onBeforeResponse ? Promise.resolve(onBeforeResponse(event, response)).then(() => response) : response;
14
- }
15
- function prepareResponse(val, event, config, nested) {
16
- if (val === kHandled) return new FastResponse(null);
17
- if (val === kNotFound) val = createError({
18
- statusCode: 404,
19
- statusMessage: `Cannot find any route matching [${event.req.method}] ${event.url}`
20
- });
21
- if (val && val instanceof Error) {
22
- const error = createError(val);
23
- const { onError } = config;
24
- return onError && !nested ? Promise.resolve(onError(error, event)).catch((error$1) => error$1).then((newVal) => prepareResponse(newVal ?? val, event, config, true)) : errorResponse(error, config.debug);
25
- }
26
- const eventHeaders = event.res._headers;
27
- if (!(val instanceof Response)) {
28
- const res = prepareResponseBody(val, event, config);
29
- const status = event.res.status;
30
- return new FastResponse(nullBody(event.req.method, status) ? null : res.body, {
31
- status,
32
- statusText: event.res.statusText,
33
- headers: res.headers && eventHeaders ? mergeHeaders(res.headers, eventHeaders) : res.headers || eventHeaders
34
- });
35
- }
36
- if (!eventHeaders) return val;
37
- return new FastResponse(nullBody(event.req.method, val.status) ? null : val.body, {
38
- status: val.status,
39
- statusText: val.statusText,
40
- headers: mergeHeaders(eventHeaders, val.headers)
41
- });
42
- }
43
- function nullBody(method, status) {
44
- return method === "HEAD" || status === 100 || status === 101 || status === 102 || status === 204 || status === 205 || status === 304;
45
- }
46
- function mergeHeaders(base, merge) {
47
- const mergedHeaders = new Headers(base);
48
- for (const [name, value] of merge) if (name === "set-cookie") mergedHeaders.append(name, value);
49
- else mergedHeaders.set(name, value);
50
- return mergedHeaders;
51
- }
52
- const emptyHeaders = new Headers({ "content-length": "0" });
53
- const jsonHeaders = new Headers({ "content-type": "application/json;charset=UTF-8" });
54
- function prepareResponseBody(val, event, config) {
55
- if (val === null || val === void 0) return {
56
- body: "",
57
- headers: emptyHeaders
58
- };
59
- const valType = typeof val;
60
- if (valType === "string") return { body: val };
61
- if (val instanceof Uint8Array) {
62
- event.res.headers.set("content-length", val.byteLength.toString());
63
- return { body: val };
64
- }
65
- if (isJSONSerializable(val, valType)) return {
66
- body: JSON.stringify(val, void 0, config.debug ? 2 : void 0),
67
- headers: jsonHeaders
68
- };
69
- if (valType === "bigint") return {
70
- body: val.toString(),
71
- headers: jsonHeaders
72
- };
73
- if (val instanceof Blob) {
74
- const headers = {
75
- "content-type": val.type,
76
- "content-length": val.size.toString()
77
- };
78
- if ("name" in val) {
79
- const filename = encodeURIComponent(val.name);
80
- headers["content-disposition"] = `filename="${filename}"; filename*=UTF-8''${filename}`;
81
- }
82
- return {
83
- body: val.stream(),
84
- headers
85
- };
86
- }
87
- if (valType === "symbol") return { body: val.toString() };
88
- if (valType === "function") return { body: `${val.name}()` };
89
- return { body: val };
90
- }
91
- function errorResponse(error, debug) {
92
- return new FastResponse(JSON.stringify({
93
- statusCode: error.statusCode,
94
- statusMessage: error.statusMessage,
95
- data: error.data,
96
- stack: debug && error.stack ? error.stack.split("\n").map((l) => l.trim()) : void 0
97
- }, null, 2), {
98
- status: error.statusCode,
99
- statusText: error.statusMessage,
100
- headers: { "content-type": "application/json; charset=utf-8" }
101
- });
102
- }
103
-
104
- //#endregion
105
- export { handleResponse, kHandled, kNotFound };
@@ -1,19 +0,0 @@
1
- import { MiddlewareSetup, ServiceSetup, ServicesObject, Silgi, SilgiEvent, SilgiRuntimeContext, StandardSchemaV1, WebSocketOptions } from "silgi/types";
2
-
3
- //#region src/core/silgi.d.ts
4
-
5
- /**
6
- * Fetch API for Silgi framework
7
- */
8
- declare function silgiFetch<Service extends ServicesObject = ServicesObject, Path extends keyof Service = keyof Service>(_request: Path, options?: RequestInit, context?: SilgiRuntimeContext): Promise<Response | Promise<Response>>;
9
- /**
10
- * Fetch API for Silgi framework using standard Request options
11
- */
12
- declare function silgiFetch(_request: Request | URL, options?: RequestInit & {
13
- path?: Record<string, any>;
14
- }, context?: SilgiRuntimeContext): Promise<Response | Promise<Response>>;
15
- declare function middleware(event: SilgiEvent): Promise<any>;
16
- declare function handler(event: SilgiEvent): Promise<any>;
17
- declare function getWebsocket(silgi?: Silgi): WebSocketOptions;
18
- //#endregion
19
- export { getWebsocket as getWebsocket$1, handler as handler$1, middleware as middleware$1, silgiFetch as silgiFetch$1 };
@@ -1,141 +0,0 @@
1
- import { useSilgi } from "./unctx.mjs";
2
- import { createError, isError } from "./error.mjs";
3
- import { SilgiHttpEvent } from "./event.mjs";
4
- import { handleResponse, kNotFound } from "./response.mjs";
5
- import { orchestrate } from "./orchestrate.mjs";
6
- import { findAllRoutes, findRoute } from "rou3";
7
-
8
- //#region src/core/silgi.ts
9
- function getHeader(name, headers) {
10
- if (!headers) return;
11
- if (headers instanceof Headers) return headers.get(name);
12
- const lName = name.toLowerCase();
13
- if (Array.isArray(headers)) return headers.find((h) => h[0] === name || lName === h[0].toLowerCase())?.[1];
14
- return headers[name] || headers[lName];
15
- }
16
- function substitutePathParams(path, pathParams) {
17
- if (!pathParams) return path;
18
- return path.replace(/:(\w+)/g, (_, key) => {
19
- if (key in pathParams) return encodeURIComponent(pathParams[key]);
20
- return `:${key}`;
21
- });
22
- }
23
- function withDuplexIfBody(options) {
24
- if (!options) return options;
25
- if (options.body && !("duplex" in options)) return {
26
- ...options,
27
- duplex: "half"
28
- };
29
- return options;
30
- }
31
- async function silgiFetch(_request, options, context) {
32
- let request;
33
- if (typeof _request === "string") {
34
- _request = substitutePathParams(_request, options?.pathParams);
35
- let url = _request;
36
- if (url[0] === "/") {
37
- const host = getHeader("Host", options?.headers) || ".";
38
- const proto = getHeader("X-Forwarded-Proto", options?.headers) === "https" ? "https" : "http";
39
- url = `${proto}://${host}${url}`;
40
- }
41
- request = new Request(url, withDuplexIfBody(options));
42
- } else if (options || _request instanceof URL) request = new Request(_request, withDuplexIfBody(options));
43
- else request = _request;
44
- const silgiEvent = new SilgiHttpEvent(request, context);
45
- let handlerRes;
46
- try {
47
- handlerRes = handler(silgiEvent);
48
- } catch (error) {
49
- handlerRes = Promise.reject(error);
50
- }
51
- return handleResponse(handlerRes, silgiEvent, {});
52
- }
53
- async function middleware(event) {
54
- const silgiContext = useSilgi();
55
- event._chain = Promise.resolve(await silgiContext.callHook("request:on", event));
56
- let _chain = void 0;
57
- const _middleware = silgiContext.globalMiddlewares;
58
- if (_middleware) {
59
- _chain = _chain || Promise.resolve();
60
- for (const m of _middleware) _chain = _chain.then(async (_previous) => {
61
- if (_previous !== void 0 && _previous !== kNotFound) return _previous;
62
- if (!(m.method === event.req.method) || !m.middleware) return;
63
- try {
64
- await silgiContext.callHook("middleware:global:on", event, m.middleware);
65
- } catch (error) {
66
- if (isError(error)) throw error;
67
- throw createError({
68
- message: "Middleware error",
69
- statusCode: 500,
70
- statusMessage: "Middleware error",
71
- cause: error
72
- });
73
- }
74
- return m.middleware.handler?.(event, silgiContext);
75
- });
76
- }
77
- const _mRouter = silgiContext._middlewareRouter;
78
- if (_mRouter) {
79
- const matches = findAllRoutes(_mRouter, event.req.method, event.url.pathname);
80
- if (matches.length > 0) {
81
- _chain = _chain || Promise.resolve();
82
- for (const match of matches) _chain = _chain.then(async (_previous) => {
83
- if (_previous !== void 0 && _previous !== kNotFound) return _previous;
84
- if (!(match.data.method === event.req.method) || !match.data.middleware) return;
85
- event.context.params = match.params;
86
- event.context.matchedRoute = match.data;
87
- try {
88
- await silgiContext.callHook("middleware:router:on", event, match.data.middleware);
89
- } catch (error) {
90
- if (isError(error)) throw error;
91
- throw createError({
92
- message: "Middleware error",
93
- statusCode: 500,
94
- statusMessage: "Middleware error",
95
- cause: error
96
- });
97
- }
98
- return match.data.middleware.handler?.(event, silgiContext);
99
- });
100
- }
101
- }
102
- event._chain = _chain;
103
- if (event._chain) {
104
- const data = await event._chain;
105
- if (data !== void 0 && data !== kNotFound) return data;
106
- }
107
- }
108
- async function handler(event) {
109
- await middleware(event);
110
- const silgiContext = useSilgi();
111
- if (silgiContext.router) {
112
- const match = findRoute(silgiContext.router, event.req.method, event.url.pathname);
113
- if (match) if (event._chain) return event._chain.then(async (_previous) => {
114
- if (_previous !== void 0 && _previous !== kNotFound) return _previous;
115
- event.context.params = match.params;
116
- event.context.matchedRoute = match.data;
117
- return orchestrate(match.data, event);
118
- });
119
- else {
120
- event.context.params = match.params;
121
- event.context.matchedRoute = match.data;
122
- return orchestrate(match.data, event);
123
- }
124
- }
125
- return event._chain ? event._chain.then((_previous) => _previous === void 0 ? kNotFound : _previous) : kNotFound;
126
- }
127
- function getWebsocket(silgi = useSilgi()) {
128
- return {
129
- ...silgi.options.websocket,
130
- resolve: async (request) => {
131
- const _method = request.method || "GET";
132
- const event = new SilgiHttpEvent(request, {});
133
- const silgiContext = useSilgi();
134
- const handler$1 = silgiContext.router && findRoute(silgiContext.router, event.req.method, event.url.pathname);
135
- return handler$1?.data.service?.websocket || {};
136
- }
137
- };
138
- }
139
-
140
- //#endregion
141
- export { getWebsocket, handler, middleware, silgiFetch };
@@ -1,9 +0,0 @@
1
- import { UseContext } from "unctx";
2
- import { SilgiCLI } from "silgi/types";
3
-
4
- //#region src/core/silgiApp.d.ts
5
- declare const silgiCLICtx: UseContext<SilgiCLI>;
6
- declare function useSilgiCLI(): SilgiCLI;
7
- declare function tryUseSilgiCLI(): SilgiCLI | null;
8
- //#endregion
9
- export { silgiCLICtx as silgiCLICtx$1, tryUseSilgiCLI as tryUseSilgiCLI$1, useSilgiCLI as useSilgiCLI$1 };
@@ -1,23 +0,0 @@
1
- import consola from "consola";
2
- import { getContext } from "unctx";
3
-
4
- //#region src/core/silgiApp.ts
5
- const silgiCLICtx = getContext("silgiCLI");
6
- function useSilgiCLI() {
7
- const instance = silgiCLICtx.tryUse();
8
- if (!instance) throw new Error("Silgi instance is unavailable!");
9
- return instance;
10
- }
11
- async function silgiCLIIClose() {
12
- const silgi = silgiCLICtx.tryUse();
13
- if (!silgi) return;
14
- await silgi.close();
15
- await silgi.callHook("close", silgi);
16
- consola.withTag("silgi").success("Process terminated");
17
- }
18
- function tryUseSilgiCLI() {
19
- return silgiCLICtx.tryUse();
20
- }
21
-
22
- //#endregion
23
- export { silgiCLICtx, silgiCLIIClose, tryUseSilgiCLI, useSilgiCLI };
@@ -1,21 +0,0 @@
1
- import { UseContext } from "unctx";
2
- import { Silgi } from "silgi/types";
3
-
4
- //#region src/core/unctx.d.ts
5
- declare const silgiCtx: UseContext<Silgi>;
6
- declare function useSilgi(): Silgi;
7
- /**
8
- * Get access to Nuxt instance.
9
- *
10
- * Returns null if Nuxt instance is unavailable.
11
- * @example
12
- * ```js
13
- * const silgi = tryUseSilgi()
14
- * if (silgi) {
15
- * // Do something
16
- * }
17
- * ```
18
- */
19
- declare function tryUseSilgi(): Silgi | null;
20
- //#endregion
21
- export { silgiCtx as silgiCtx$1, tryUseSilgi as tryUseSilgi$1, useSilgi as useSilgi$1 };
@@ -1,35 +0,0 @@
1
- import { getContext } from "unctx";
2
-
3
- //#region src/core/unctx.ts
4
- const silgiCtx = getContext("silgi");
5
- function useSilgi() {
6
- const instance = silgiCtx.tryUse();
7
- if (!instance) throw new Error("Silgi instance is unavailable!");
8
- return instance;
9
- }
10
- function normalizeResult(result) {
11
- if (Array.isArray(result)) return [...result];
12
- if (result && typeof result === "object") {
13
- if (Object.keys(result).every((key) => !Number.isNaN(Number(key)))) return Object.values(result);
14
- return { ...result };
15
- }
16
- return result;
17
- }
18
- /**
19
- * Get access to Nuxt instance.
20
- *
21
- * Returns null if Nuxt instance is unavailable.
22
- * @example
23
- * ```js
24
- * const silgi = tryUseSilgi()
25
- * if (silgi) {
26
- * // Do something
27
- * }
28
- * ```
29
- */
30
- function tryUseSilgi() {
31
- return silgiCtx.tryUse();
32
- }
33
-
34
- //#endregion
35
- export { normalizeResult, silgiCtx, tryUseSilgi, useSilgi };
@@ -1,53 +0,0 @@
1
- import { EventStream$1 as EventStream } from "./internal/event-stream.mjs";
2
- import { SilgiEvent } from "silgi/types";
3
-
4
- //#region src/core/utils/event-stream.d.ts
5
- interface EventStreamOptions {
6
- /**
7
- * Automatically close the writable stream when the request is closed
8
- *
9
- * Default is `true`
10
- */
11
- autoclose?: boolean;
12
- }
13
- /**
14
- * See https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#fields
15
- */
16
- interface EventStreamMessage {
17
- id?: string;
18
- event?: string;
19
- retry?: number;
20
- data: string;
21
- }
22
- /**
23
- * Initialize an EventStream instance for creating [server sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events)
24
- *
25
- * @experimental This function is experimental and might be unstable in some environments.
26
- *
27
- * @example
28
- *
29
- * ```ts
30
- * import { createEventStream, sendEventStream } from "h3";
31
- *
32
- * app.get("/sse", (event) => {
33
- * const eventStream = createEventStream(event);
34
- *
35
- * // Send a message every second
36
- * const interval = setInterval(async () => {
37
- * await eventStream.push("Hello world");
38
- * }, 1000);
39
- *
40
- * // cleanup the interval and close the stream when the connection is terminated
41
- * eventStream.onClosed(async () => {
42
- * console.log("closing SSE...");
43
- * clearInterval(interval);
44
- * await eventStream.close();
45
- * });
46
- *
47
- * return eventStream.send();
48
- * });
49
- * ```
50
- */
51
- declare function createEventStream(event: SilgiEvent, opts?: EventStreamOptions): EventStream;
52
- //#endregion
53
- export { EventStreamMessage, EventStreamOptions, createEventStream as createEventStream$1 };
@@ -1,38 +0,0 @@
1
- import { EventStream } from "./internal/event-stream.mjs";
2
-
3
- //#region src/core/utils/event-stream.ts
4
- /**
5
- * Initialize an EventStream instance for creating [server sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events)
6
- *
7
- * @experimental This function is experimental and might be unstable in some environments.
8
- *
9
- * @example
10
- *
11
- * ```ts
12
- * import { createEventStream, sendEventStream } from "h3";
13
- *
14
- * app.get("/sse", (event) => {
15
- * const eventStream = createEventStream(event);
16
- *
17
- * // Send a message every second
18
- * const interval = setInterval(async () => {
19
- * await eventStream.push("Hello world");
20
- * }, 1000);
21
- *
22
- * // cleanup the interval and close the stream when the connection is terminated
23
- * eventStream.onClosed(async () => {
24
- * console.log("closing SSE...");
25
- * clearInterval(interval);
26
- * await eventStream.close();
27
- * });
28
- *
29
- * return eventStream.send();
30
- * });
31
- * ```
32
- */
33
- function createEventStream(event, opts) {
34
- return new EventStream(event, opts);
35
- }
36
-
37
- //#endregion
38
- export { createEventStream };
@@ -1,8 +0,0 @@
1
- import { SilgiEvent, SilgiRuntimeContext } from "silgi/types";
2
-
3
- //#region src/core/utils/event.d.ts
4
- // import { isRuntimePresents } from 'silgi/kit'
5
- declare function getEvent<T extends SilgiEvent>(event?: SilgiEvent): T;
6
- declare function getEventContext<T extends SilgiRuntimeContext>(event?: SilgiEvent): T;
7
- //#endregion
8
- export { getEvent as getEvent$1, getEventContext as getEventContext$1 };
@@ -1,12 +0,0 @@
1
- //#region src/core/utils/event.ts
2
- function getEvent(event) {
3
- if (event?.event) return getEvent(event.event);
4
- return event;
5
- }
6
- function getEventContext(event) {
7
- const _event = getEvent(event);
8
- return _event.context;
9
- }
10
-
11
- //#endregion
12
- export { getEvent, getEventContext };
@@ -1,45 +0,0 @@
1
- import { EventStreamMessage, EventStreamOptions } from "../event-stream.mjs";
2
- import { SilgiEvent } from "silgi/types";
3
-
4
- //#region src/core/utils/internal/event-stream.d.ts
5
-
6
- /**
7
- * A helper class for [server sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#event_stream_format)
8
- */
9
- declare class EventStream {
10
- private readonly _event;
11
- private readonly _transformStream;
12
- private readonly _writer;
13
- private readonly _encoder;
14
- private _writerIsClosed;
15
- private _paused;
16
- private _unsentData;
17
- private _disposed;
18
- private _handled;
19
- constructor(event: SilgiEvent, opts?: EventStreamOptions);
20
- /**
21
- * Publish new event(s) for the client
22
- */
23
- push(message: string): Promise<void>;
24
- push(message: string[]): Promise<void>;
25
- push(message: EventStreamMessage): Promise<void>;
26
- push(message: EventStreamMessage[]): Promise<void>;
27
- private _sendEvent;
28
- private _sendEvents;
29
- pause(): void;
30
- get isPaused(): boolean;
31
- resume(): Promise<void>;
32
- flush(): Promise<void>;
33
- /**
34
- * Close the stream and the connection if the stream is being sent to the client
35
- */
36
- close(): Promise<void>;
37
- /**
38
- * Triggers callback when the writable stream is closed.
39
- * It is also triggered after calling the `close()` method.
40
- */
41
- onClosed(cb: () => any): void;
42
- send(): Promise<BodyInit>;
43
- }
44
- //#endregion
45
- export { EventStream as EventStream$1 };