@browserlessapi/inferlo 0.4.0 → 0.6.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 (142) hide show
  1. package/README.md +21 -3
  2. package/dist/adonisjs.d.ts +33 -0
  3. package/dist/adonisjs.js +30 -0
  4. package/dist/adonisjs.js.map +1 -0
  5. package/dist/ai/index.d.ts +22 -8
  6. package/dist/ai/index.js +107 -15
  7. package/dist/ai/index.js.map +1 -1
  8. package/dist/ai/providers.js +5 -4
  9. package/dist/ai/providers.js.map +1 -1
  10. package/dist/ai/public.d.ts +21 -0
  11. package/dist/ai/public.js +17 -0
  12. package/dist/ai/public.js.map +1 -0
  13. package/dist/ai/tool.d.ts +47 -0
  14. package/dist/ai/tool.js +85 -0
  15. package/dist/ai/tool.js.map +1 -0
  16. package/dist/ai-client.d.ts +3 -0
  17. package/dist/ai-client.js +8 -0
  18. package/dist/ai-client.js.map +1 -0
  19. package/dist/api-version.d.ts +32 -0
  20. package/dist/api-version.js +45 -0
  21. package/dist/api-version.js.map +1 -0
  22. package/dist/app.d.ts +117 -5
  23. package/dist/app.js +667 -156
  24. package/dist/app.js.map +1 -1
  25. package/dist/audit.d.ts +50 -0
  26. package/dist/audit.js +92 -0
  27. package/dist/audit.js.map +1 -0
  28. package/dist/cache.d.ts +92 -0
  29. package/dist/cache.js +245 -0
  30. package/dist/cache.js.map +1 -0
  31. package/dist/cli/main.js +45 -5
  32. package/dist/cli/main.js.map +1 -1
  33. package/dist/config.d.ts +16 -0
  34. package/dist/config.js +101 -0
  35. package/dist/config.js.map +1 -0
  36. package/dist/db/table.d.ts +31 -0
  37. package/dist/db/table.js +140 -1
  38. package/dist/db/table.js.map +1 -1
  39. package/dist/deprecation.d.ts +23 -0
  40. package/dist/deprecation.js +70 -0
  41. package/dist/deprecation.js.map +1 -0
  42. package/dist/describe.d.ts +68 -5
  43. package/dist/describe.js +38 -3
  44. package/dist/describe.js.map +1 -1
  45. package/dist/elysia.d.ts +49 -0
  46. package/dist/elysia.js +10 -0
  47. package/dist/elysia.js.map +1 -0
  48. package/dist/env.d.ts +2 -0
  49. package/dist/env.js +5 -4
  50. package/dist/env.js.map +1 -1
  51. package/dist/express.d.ts +38 -0
  52. package/dist/express.js +18 -0
  53. package/dist/express.js.map +1 -0
  54. package/dist/fastify.d.ts +52 -0
  55. package/dist/fastify.js +65 -0
  56. package/dist/fastify.js.map +1 -0
  57. package/dist/h3.d.ts +76 -0
  58. package/dist/h3.js +61 -0
  59. package/dist/h3.js.map +1 -0
  60. package/dist/hapi.d.ts +45 -0
  61. package/dist/hapi.js +57 -0
  62. package/dist/hapi.js.map +1 -0
  63. package/dist/hono.d.ts +26 -0
  64. package/dist/hono.js +10 -0
  65. package/dist/hono.js.map +1 -0
  66. package/dist/index.d.ts +27 -5
  67. package/dist/index.js +9 -2
  68. package/dist/index.js.map +1 -1
  69. package/dist/jobs.d.ts +24 -0
  70. package/dist/jobs.js +35 -6
  71. package/dist/jobs.js.map +1 -1
  72. package/dist/koa.d.ts +51 -0
  73. package/dist/koa.js +45 -0
  74. package/dist/koa.js.map +1 -0
  75. package/dist/lambda.d.ts +110 -0
  76. package/dist/lambda.js +169 -0
  77. package/dist/lambda.js.map +1 -0
  78. package/dist/logging.d.ts +23 -0
  79. package/dist/logging.js +87 -0
  80. package/dist/logging.js.map +1 -0
  81. package/dist/mcp.d.ts +1 -7
  82. package/dist/mcp.js +18 -4
  83. package/dist/mcp.js.map +1 -1
  84. package/dist/metrics.d.ts +48 -0
  85. package/dist/metrics.js +184 -0
  86. package/dist/metrics.js.map +1 -0
  87. package/dist/module.d.ts +52 -0
  88. package/dist/module.js +152 -0
  89. package/dist/module.js.map +1 -0
  90. package/dist/nestjs.d.ts +43 -0
  91. package/dist/nestjs.js +47 -0
  92. package/dist/nestjs.js.map +1 -0
  93. package/dist/nextjs.d.ts +35 -0
  94. package/dist/nextjs.js +33 -0
  95. package/dist/nextjs.js.map +1 -0
  96. package/dist/openapi.d.ts +3 -1
  97. package/dist/openapi.js +16 -3
  98. package/dist/openapi.js.map +1 -1
  99. package/dist/permissions.d.ts +26 -0
  100. package/dist/permissions.js +78 -0
  101. package/dist/permissions.js.map +1 -0
  102. package/dist/react-router.d.ts +41 -0
  103. package/dist/react-router.js +42 -0
  104. package/dist/react-router.js.map +1 -0
  105. package/dist/redact.d.ts +19 -0
  106. package/dist/redact.js +150 -0
  107. package/dist/redact.js.map +1 -0
  108. package/dist/request-matcher.d.ts +4 -0
  109. package/dist/request-matcher.js +14 -0
  110. package/dist/request-matcher.js.map +1 -0
  111. package/dist/route.d.ts +54 -1
  112. package/dist/route.js +24 -0
  113. package/dist/route.js.map +1 -1
  114. package/dist/secure-headers.d.ts +8 -0
  115. package/dist/secure-headers.js +61 -0
  116. package/dist/secure-headers.js.map +1 -0
  117. package/dist/serve.d.ts +72 -1
  118. package/dist/serve.js +201 -61
  119. package/dist/serve.js.map +1 -1
  120. package/dist/sessions.d.ts +72 -0
  121. package/dist/sessions.js +171 -0
  122. package/dist/sessions.js.map +1 -0
  123. package/dist/sveltekit.d.ts +72 -0
  124. package/dist/sveltekit.js +68 -0
  125. package/dist/sveltekit.js.map +1 -0
  126. package/dist/tracing.d.ts +118 -0
  127. package/dist/tracing.js +204 -0
  128. package/dist/tracing.js.map +1 -0
  129. package/dist/trpc.d.ts +57 -0
  130. package/dist/trpc.js +142 -0
  131. package/dist/trpc.js.map +1 -0
  132. package/dist/tsed.d.ts +32 -0
  133. package/dist/tsed.js +13 -0
  134. package/dist/tsed.js.map +1 -0
  135. package/llms.txt +15 -5
  136. package/package.json +99 -3
  137. package/templates/app/AGENTS.md +12 -6
  138. package/templates/app/_env.example +2 -0
  139. package/templates/app/src/app.ts +15 -8
  140. package/templates/app/src/config.ts +17 -0
  141. package/templates/app/src/server.ts +9 -9
  142. package/templates/app/src/routes/health.ts +0 -3
@@ -1,5 +1,6 @@
1
- import { createToken, env, hashToken } from "@browserlessapi/inferlo";
1
+ import { createToken, hashToken } from "@browserlessapi/inferlo";
2
2
  import { app } from "./app.ts";
3
+ import { settings } from "./config.ts";
3
4
 
4
5
  await app.db.$sync();
5
6
 
@@ -9,18 +10,17 @@ if (app.db.$adapter.dialect === "memory") {
9
10
  const token = createToken("dev");
10
11
  await app.db.api_keys.insert({ userId: user.id, hash: await hashToken(token) });
11
12
  console.log(`Dev API key: ${token}`);
12
- console.log(`Try: curl -H "Authorization: Bearer ${token}" http://localhost:${env("PORT", { default: "3000" })}/notes`);
13
+ console.log(`Try: curl -H "Authorization: Bearer ${token}" http://localhost:${settings.PORT}/notes`);
13
14
  }
14
15
 
15
- const server = await app.listen(env.int("PORT", { default: 3000 }));
16
+ const server = await app.listen(settings.PORT);
16
17
  console.log(`{{name}} running on http://localhost:${server.port}`);
17
18
 
18
19
  // Background jobs run in this process. With jobQueue: { store: "database" } in src/app.ts they can
19
20
  // also run in separate processes: npm run worker.
20
- const jobs = app.jobs.start();
21
+ app.jobs.start();
21
22
 
22
- process.on("SIGTERM", async () => {
23
- await jobs.stop(); // waits for the running job
24
- await server.close();
25
- await app.db.$close();
26
- });
23
+ // Graceful shutdown: /ready answers 503 at once so the load balancer stops sending traffic, requests are
24
+ // still served for 5 seconds, then in-flight requests and the running job finish and the server and the
25
+ // database close.
26
+ process.on("SIGTERM", () => void app.close({ delayMs: 5000 }));
@@ -1,3 +0,0 @@
1
- import { route } from "@browserlessapi/inferlo";
2
-
3
- export const health = route.get("/health", { auth: "public", summary: "Health check" }).handle(() => ({ ok: true }));