@mastra/deployer 1.36.0-alpha.0 → 1.36.0-alpha.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGhE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAY5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAoBnD,KAAK,QAAQ,GAAG,YAAY,CAAC;AAE7B,KAAK,SAAS,GAAG,aAAa,GAAG;IAC/B,OAAO,EAAE,GAAG,CAAC;QAAE,UAAU,EAAE,+BAA+B,CAAA;KAAE,CAAC,CAAC;CAC/D,CAAC;AAEF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,wCAmB/D;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,mBAER;cAegC,QAAQ;eAAa,SAAS;2CAkZhE;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAmC,mDAyElG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAIlD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIhE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAY5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAoBnD,KAAK,QAAQ,GAAG,YAAY,CAAC;AAE7B,KAAK,SAAS,GAAG,aAAa,GAAG;IAC/B,OAAO,EAAE,GAAG,CAAC;QAAE,UAAU,EAAE,+BAA+B,CAAA;KAAE,CAAC,CAAC;CAC/D,CAAC;AAgCF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,wCAmB/D;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,mBAER;cAegC,QAAQ;eAAa,SAAS;2CA0XhE;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAmC,mDAyElG"}
@@ -15,6 +15,7 @@ import { Tool } from '@mastra/core/tools';
15
15
  import { MastraServer as MastraServer$1, normalizeQueryParams, checkRouteFGA, redactStreamChunk } from '@mastra/server/server-adapter';
16
16
  import util from 'util';
17
17
  import { Buffer as Buffer$1 } from 'buffer';
18
+ import { findMatchingCustomRoute } from '@mastra/server/auth';
18
19
  import { ViewerRegistry, handleInputMessage } from '@mastra/server/browser-stream';
19
20
  import { InMemoryTaskStore } from '@mastra/server/a2a/store';
20
21
  import { Hono } from 'hono';
@@ -4420,6 +4421,27 @@ var getStudioPath = () => {
4420
4421
  const studioPath = process.env.MASTRA_STUDIO_PATH || join(__dirname, "studio");
4421
4422
  return studioPath;
4422
4423
  };
4424
+ var DEFAULT_CORS_ALLOW_METHODS = ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"];
4425
+ var DEFAULT_CORS_ALLOW_HEADERS = ["Content-Type", "Authorization", "x-mastra-client-type", "x-mastra-dev-playground"];
4426
+ var DEFAULT_CORS_EXPOSE_HEADERS = ["Content-Length", "X-Requested-With"];
4427
+ function getCorsConfig(serverCors, credentialsDefault) {
4428
+ const userCors = serverCors && typeof serverCors === "object" ? serverCors : void 0;
4429
+ const origin = userCors && "origin" in userCors && userCors.origin ? userCors.origin : credentialsDefault ? (requestOrigin) => requestOrigin || void 0 : "*";
4430
+ const credentials = userCors && "credentials" in userCors ? userCors.credentials : credentialsDefault;
4431
+ return {
4432
+ origin,
4433
+ allowMethods: DEFAULT_CORS_ALLOW_METHODS,
4434
+ credentials,
4435
+ maxAge: 3600,
4436
+ ...userCors,
4437
+ allowHeaders: [...DEFAULT_CORS_ALLOW_HEADERS, ...userCors?.allowHeaders ?? []],
4438
+ exposeHeaders: [...DEFAULT_CORS_EXPOSE_HEADERS, ...userCors?.exposeHeaders ?? []]
4439
+ };
4440
+ }
4441
+ function getRouteCorsConfig(apiRoutes, pathname, method) {
4442
+ const route = findMatchingCustomRoute(pathname, method, apiRoutes)?.route;
4443
+ return route?.cors;
4444
+ }
4423
4445
  function getToolExports(tools) {
4424
4446
  try {
4425
4447
  return tools.reduce((acc, toolModule) => {
@@ -4512,31 +4534,12 @@ async function createHonoServer(mastra, options = {
4512
4534
  app.use("*", timeout(server?.timeout ?? 3 * 60 * 1e3));
4513
4535
  } else {
4514
4536
  const hasAuth = !!server?.auth;
4515
- let corsOrigin;
4516
- if (server?.cors && typeof server.cors === "object" && "origin" in server.cors && server.cors.origin) {
4517
- corsOrigin = server.cors.origin;
4518
- } else if (hasAuth) {
4519
- corsOrigin = (origin) => origin || void 0;
4520
- } else {
4521
- corsOrigin = "*";
4522
- }
4523
- const corsConfig = {
4524
- origin: corsOrigin,
4525
- allowMethods: ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"],
4526
- // Enable credentials for cookie-based auth (e.g., Better Auth sessions)
4527
- credentials: hasAuth ? true : false,
4528
- maxAge: 3600,
4529
- ...server?.cors,
4530
- allowHeaders: [
4531
- "Content-Type",
4532
- "Authorization",
4533
- "x-mastra-client-type",
4534
- "x-mastra-dev-playground",
4535
- ...server?.cors?.allowHeaders ?? []
4536
- ],
4537
- exposeHeaders: ["Content-Length", "X-Requested-With", ...server?.cors?.exposeHeaders ?? []]
4538
- };
4539
- app.use("*", timeout(server?.timeout ?? 3 * 60 * 1e3), cors(corsConfig));
4537
+ app.use("*", timeout(server?.timeout ?? 3 * 60 * 1e3), async (c, next) => {
4538
+ const pathname = new URL(c.req.url).pathname;
4539
+ const method = c.req.method === "OPTIONS" ? c.req.header("Access-Control-Request-Method") ?? c.req.method : c.req.method;
4540
+ const routeCors = getRouteCorsConfig(processedRoutes, pathname, method);
4541
+ return cors(routeCors ? getCorsConfig(routeCors, false) : getCorsConfig(server?.cors, hasAuth))(c, next);
4542
+ });
4540
4543
  }
4541
4544
  app.get(
4542
4545
  "/health",