spiceflow 1.16.1 → 1.17.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.
package/README.md CHANGED
@@ -1088,7 +1088,11 @@ const app = new Spiceflow()
1088
1088
  })
1089
1089
 
1090
1090
  // Add Spiceflow tools to your existing server
1091
- const mcpServer = await addMcpTools({ mcpServer: existingServer, app })
1091
+ const mcpServer = await addMcpTools({
1092
+ mcpServer: existingServer,
1093
+ app,
1094
+ ignorePaths: ['/mcp', '/sse']
1095
+ })
1092
1096
 
1093
1097
  // Now your existing server has access to all Spiceflow routes as tools
1094
1098
  ```
package/dist/mcp.d.ts CHANGED
@@ -1,10 +1,22 @@
1
1
  import { SSEServerTransportSpiceflow } from './mcp-transport.ts';
2
2
  import { AnySpiceflow, Spiceflow } from './spiceflow.ts';
3
3
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
4
- export declare function addMcpTools({ mcpServer, app, path, }: {
4
+ /**
5
+ * Add MCP tools to an existing MCP server from a Spiceflow app
6
+ * @example
7
+ * ```ts
8
+ * await addMcpTools({
9
+ * mcpServer,
10
+ * app,
11
+ * ignorePaths: ['/sse', '/mcp']
12
+ * })
13
+ * ```
14
+ */
15
+ export declare function addMcpTools<const App extends AnySpiceflow, Paths extends string = App extends Spiceflow<any, any, any, any, any, any, infer RoutePaths> ? RoutePaths : string>({ mcpServer, app, ignorePaths, onlyPaths, }: {
5
16
  mcpServer: McpServer;
6
- app: AnySpiceflow;
7
- path: string;
17
+ app: App;
18
+ ignorePaths: Paths[];
19
+ onlyPaths?: Paths[];
8
20
  }): Promise<McpServer>;
9
21
  export declare const mcp: <Path extends string = "/mcp">({ path, name, version, transports, }?: {
10
22
  path?: Path | undefined;
package/dist/mcp.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AAGhE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAInE,wBAAsB,WAAW,CAAC,EAChC,SAAS,EACT,GAAG,EAEH,IAAI,GACL,EAAE;IACD,SAAS,EAAE,SAAS,CAAA;IACpB,GAAG,EAAE,YAAY,CAAA;IAEjB,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,SAAS,CAAC,CAwBrB;AAED,eAAO,MAAM,GAAG,GAAI,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE;;;;;CAQ5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA6EL,CAAA"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AAGhE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAInE;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAC/B,KAAK,CAAC,GAAG,SAAS,YAAY,EAC9B,KAAK,SAAS,MAAM,GAAG,GAAG,SAAS,SAAS,CAC1C,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,UAAU,CACjB,GACG,UAAU,GACV,MAAM,EACV,EACA,SAAS,EACT,GAAG,EACH,WAAW,EACX,SAAS,GACV,EAAE;IACD,SAAS,EAAE,SAAS,CAAA;IACpB,GAAG,EAAE,GAAG,CAAA;IACR,WAAW,EAAE,KAAK,EAAE,CAAA;IACpB,SAAS,CAAC,EAAE,KAAK,EAAE,CAAA;CACpB,GAAG,OAAO,CAAC,SAAS,CAAC,CAyBrB;AAED,eAAO,MAAM,GAAG,GAAI,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE;;;;;CAQ5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA6EL,CAAA"}
package/dist/mcp.js CHANGED
@@ -3,7 +3,18 @@ import { createMCPServer } from "./openapi-to-mcp.js";
3
3
  import { openapi } from "./openapi.js";
4
4
  import { Spiceflow } from "./spiceflow.js";
5
5
  const defaultTransports = new Map();
6
- export async function addMcpTools({ mcpServer, app, path, }) {
6
+ /**
7
+ * Add MCP tools to an existing MCP server from a Spiceflow app
8
+ * @example
9
+ * ```ts
10
+ * await addMcpTools({
11
+ * mcpServer,
12
+ * app,
13
+ * ignorePaths: ['/sse', '/mcp']
14
+ * })
15
+ * ```
16
+ */
17
+ export async function addMcpTools({ mcpServer, app, ignorePaths, onlyPaths, }) {
7
18
  // Always add the OpenAPI route
8
19
  app.use(openapi({ path: '/_mcp_openapi' }));
9
20
  const basePath = app.topLevelApp?.basePath || '';
@@ -13,7 +24,8 @@ export async function addMcpTools({ mcpServer, app, path, }) {
13
24
  .then((r) => r.json()));
14
25
  const { server: configuredServer } = createMCPServer({
15
26
  server: mcpServer,
16
- ignorePaths: ['/_mcp_openapi', path, path + '/message'],
27
+ ignorePaths: ['/_mcp_openapi', ...ignorePaths],
28
+ paths: onlyPaths,
17
29
  fetch: (url, init) => {
18
30
  const req = new Request(url, init);
19
31
  return app.handle(req);
package/dist/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
@@ -100,11 +100,11 @@ export declare class Spiceflow<const in out BasePath extends string = '', const
100
100
  response: ComposeSpiceflowResponse<Schema['response'], Handle>;
101
101
  };
102
102
  }>, RoutePaths | JoinPath<BasePath, Path>>;
103
- route<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends UnwrapRoute<LocalSchema, Definitions['type']>, const Handle extends InlineHandler<this, Schema, Singleton, JoinPath<BasePath, Path>>, Method extends HTTPMethod | HTTPMethod[] = '*'>(options: {
103
+ route<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends UnwrapRoute<LocalSchema, Definitions['type']>, const Handle extends InlineHandler<this, Schema, Singleton, JoinPath<BasePath, Path>>, Method extends HTTPMethod | HTTPMethod[] = '*'>(options: LocalHook<LocalSchema, Schema, Singleton, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>> & {
104
104
  path: Path;
105
105
  method?: Method;
106
106
  handler: Handle;
107
- } & LocalHook<LocalSchema, Schema, Singleton, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, ClientRoutes & CreateClient<JoinPath<BasePath, Path>, {
107
+ }): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, ClientRoutes & CreateClient<JoinPath<BasePath, Path>, {
108
108
  [M in Method extends readonly (infer E)[] ? Lowercase<E & string> : Lowercase<Method & string>]: {
109
109
  request: GetRequestSchema<Schema>;
110
110
  params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
@@ -1 +1 @@
1
- {"version":3,"file":"spiceflow.d.ts","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spiceflow.d.ts","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
package/dist/spiceflow.js CHANGED
@@ -76,8 +76,7 @@ export class Spiceflow {
76
76
  path = path.replace(/\/$/, '') || '/';
77
77
  const result = bfsFind(this, (app) => {
78
78
  app.topLevelApp = root;
79
- let prefix = this.joinBasePaths(this.getAppAndParents(app).map((x) => x.basePath))
80
- .replace(/\/$/, '');
79
+ let prefix = this.joinBasePaths(this.getAppAndParents(app).map((x) => x.basePath)).replace(/\/$/, '');
81
80
  if (prefix && !path.startsWith(prefix)) {
82
81
  return;
83
82
  }
@@ -181,7 +180,9 @@ export class Spiceflow {
181
180
  return method === '*' ? [...METHODS] : [method];
182
181
  })
183
182
  : (() => {
184
- const method = typeof actualMethod === 'string' ? actualMethod.toUpperCase() : actualMethod;
183
+ const method = typeof actualMethod === 'string'
184
+ ? actualMethod.toUpperCase()
185
+ : actualMethod;
185
186
  return method === '*' ? [...METHODS] : [method];
186
187
  })();
187
188
  if (options.request &&
@@ -1 +1 @@
1
- {"version":3,"file":"spiceflow.js","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spiceflow.js","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
@@ -29,10 +29,10 @@ test('* param is a path without front slash', async () => {
29
29
  });
30
30
  test('* param in .route() does not contain leading slash', async () => {
31
31
  const app = new Spiceflow().route({
32
- method: "GET",
33
- path: "/repos/:owner/:repo/:branch/file/*",
32
+ method: 'GET',
33
+ path: '/repos/:owner/:repo/:branch/file/*',
34
34
  handler: async ({ params }) => {
35
- const { owner, repo, branch, "*": filePath } = params;
35
+ const { owner, repo, branch, '*': filePath } = params;
36
36
  return { owner, repo, branch, filePath };
37
37
  },
38
38
  });
@@ -673,7 +673,7 @@ test('does not append subapp basePath if it is the same as parent app', async ()
673
673
  }
674
674
  // Test that getAllRoutes() doesn't contain duplicate basePaths
675
675
  const allRoutes = app.getAllRoutes();
676
- expect(allRoutes.map(route => route.path)).toMatchInlineSnapshot(`
676
+ expect(allRoutes.map((route) => route.path)).toMatchInlineSnapshot(`
677
677
  [
678
678
  "/api/users",
679
679
  "/api/v1/posts",
@@ -698,7 +698,7 @@ test('does not append subapp basePath if parent is prefix of subapp path', async
698
698
  }
699
699
  // Test that getAllRoutes() contains the correct paths
700
700
  const allRoutes = app.getAllRoutes();
701
- expect(allRoutes.map(route => route.path)).toMatchInlineSnapshot(`
701
+ expect(allRoutes.map((route) => route.path)).toMatchInlineSnapshot(`
702
702
  [
703
703
  "/api/sub/users",
704
704
  "/api/v2/posts",
@@ -856,6 +856,29 @@ describe('safePath', () => {
856
856
  app.safePath('/posts/*');
857
857
  expect(app.safePath('/posts/*', { '*': 'some/key' })).toBe('/posts/some/key');
858
858
  });
859
+ test('safePath with .route works for static and wildcard paths', () => {
860
+ const app = new Spiceflow()
861
+ .route({
862
+ method: 'GET',
863
+ path: '/users',
864
+ handler: () => 'users',
865
+ })
866
+ .route({
867
+ method: 'POST',
868
+ path: '/posts',
869
+ handler: () => 'posts',
870
+ })
871
+ .route({
872
+ method: 'GET',
873
+ path: '/files/*',
874
+ handler: () => 'files',
875
+ });
876
+ expect(app.safePath('/users')).toBe('/users');
877
+ expect(app.safePath('/posts')).toBe('/posts');
878
+ // @ts-expect-error
879
+ app.safePath('/files/*');
880
+ expect(app.safePath('/files/*', { '*': 'a/b.txt' })).toBe('/files/a/b.txt');
881
+ });
859
882
  test('handles paths with required parameters', () => {
860
883
  const app = new Spiceflow()
861
884
  .get('/users/:id', ({ params }) => params.id)
@@ -1113,10 +1136,8 @@ test('route override with .use() - parent app routes take precedence over child
1113
1136
  expect(await childOnlyRes.json()).toMatchInlineSnapshot(`"child only"`);
1114
1137
  });
1115
1138
  test('route override with .use() - parent app routes always win, regardless of order', async () => {
1116
- const firstChildApp = new Spiceflow()
1117
- .get('/shared', () => 'first child');
1118
- const secondChildApp = new Spiceflow()
1119
- .get('/shared', () => 'second child');
1139
+ const firstChildApp = new Spiceflow().get('/shared', () => 'first child');
1140
+ const secondChildApp = new Spiceflow().get('/shared', () => 'second child');
1120
1141
  const parentApp = new Spiceflow()
1121
1142
  .get('/shared', () => 'parent')
1122
1143
  .use(firstChildApp)
@@ -1127,27 +1148,20 @@ test('route override with .use() - parent app routes always win, regardless of o
1127
1148
  expect(await res.json()).toMatchInlineSnapshot(`"parent"`);
1128
1149
  });
1129
1150
  test('route override with nested .use() - first matching parent route wins', async () => {
1130
- const deepestApp = new Spiceflow()
1131
- .get('/test', () => 'deepest');
1132
- const middleApp = new Spiceflow()
1133
- .get('/test', () => 'middle')
1134
- .use(deepestApp);
1135
- const rootApp = new Spiceflow()
1136
- .get('/test', () => 'root')
1137
- .use(middleApp);
1151
+ const deepestApp = new Spiceflow().get('/test', () => 'deepest');
1152
+ const middleApp = new Spiceflow().get('/test', () => 'middle').use(deepestApp);
1153
+ const rootApp = new Spiceflow().get('/test', () => 'root').use(middleApp);
1138
1154
  // Root app route wins over all nested routes
1139
1155
  const res = await rootApp.handle(new Request('http://localhost/test', { method: 'GET' }));
1140
1156
  expect(res.status).toBe(200);
1141
1157
  expect(await res.json()).toMatchInlineSnapshot(`"root"`);
1142
1158
  });
1143
1159
  test('route override with .use() - child routes are accessible when no parent route exists', async () => {
1144
- const firstChildApp = new Spiceflow()
1145
- .get('/child1-route', () => 'first child');
1160
+ const firstChildApp = new Spiceflow().get('/child1-route', () => 'first child');
1146
1161
  const secondChildApp = new Spiceflow()
1147
1162
  .get('/child2-route', () => 'second child')
1148
1163
  .get('/shared-child', () => 'second child shared');
1149
- const thirdChildApp = new Spiceflow()
1150
- .get('/shared-child', () => 'third child shared');
1164
+ const thirdChildApp = new Spiceflow().get('/shared-child', () => 'third child shared');
1151
1165
  const parentApp = new Spiceflow()
1152
1166
  .get('/parent-only', () => 'parent')
1153
1167
  .use(firstChildApp)
@@ -1 +1 @@
1
- {"version":3,"file":"spiceflow.test.js","sourceRoot":"","sources":["../src/spiceflow.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spiceflow.test.js","sourceRoot":"","sources":["../src/spiceflow.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spiceflow",
3
- "version": "1.16.1",
3
+ "version": "1.17.1",
4
4
  "description": "Simple API framework with RPC and type safety",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/mcp.ts CHANGED
@@ -7,16 +7,40 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
7
7
 
8
8
  const defaultTransports = new Map<string, SSEServerTransportSpiceflow>()
9
9
 
10
- export async function addMcpTools({
10
+ /**
11
+ * Add MCP tools to an existing MCP server from a Spiceflow app
12
+ * @example
13
+ * ```ts
14
+ * await addMcpTools({
15
+ * mcpServer,
16
+ * app,
17
+ * ignorePaths: ['/sse', '/mcp']
18
+ * })
19
+ * ```
20
+ */
21
+ export async function addMcpTools<
22
+ const App extends AnySpiceflow,
23
+ Paths extends string = App extends Spiceflow<
24
+ any,
25
+ any,
26
+ any,
27
+ any,
28
+ any,
29
+ any,
30
+ infer RoutePaths
31
+ >
32
+ ? RoutePaths
33
+ : string,
34
+ >({
11
35
  mcpServer,
12
36
  app,
13
-
14
- path,
37
+ ignorePaths,
38
+ onlyPaths,
15
39
  }: {
16
40
  mcpServer: McpServer
17
- app: AnySpiceflow
18
-
19
- path: string
41
+ app: App
42
+ ignorePaths: Paths[]
43
+ onlyPaths?: Paths[]
20
44
  }): Promise<McpServer> {
21
45
  // Always add the OpenAPI route
22
46
  app.use(openapi({ path: '/_mcp_openapi' }))
@@ -32,7 +56,8 @@ export async function addMcpTools({
32
56
 
33
57
  const { server: configuredServer } = createMCPServer({
34
58
  server: mcpServer,
35
- ignorePaths: ['/_mcp_openapi', path, path + '/message'],
59
+ ignorePaths: ['/_mcp_openapi', ...ignorePaths],
60
+ paths: onlyPaths,
36
61
  fetch: (url, init) => {
37
62
  const req = new Request(url, init)
38
63
  return app.handle(req)
@@ -38,18 +38,21 @@ test('* param is a path without front slash', async () => {
38
38
 
39
39
  test('* param in .route() does not contain leading slash', async () => {
40
40
  const app = new Spiceflow().route({
41
- method: "GET",
42
- path: "/repos/:owner/:repo/:branch/file/*",
41
+ method: 'GET',
42
+ path: '/repos/:owner/:repo/:branch/file/*',
43
43
  handler: async ({ params }) => {
44
- const { owner, repo, branch, "*": filePath } = params
44
+ const { owner, repo, branch, '*': filePath } = params
45
45
  return { owner, repo, branch, filePath }
46
46
  },
47
47
  })
48
48
 
49
49
  const res = await app.handle(
50
- new Request('http://localhost/repos/user/myrepo/main/file/src/components/Button.tsx', {
51
- method: 'GET',
52
- }),
50
+ new Request(
51
+ 'http://localhost/repos/user/myrepo/main/file/src/components/Button.tsx',
52
+ {
53
+ method: 'GET',
54
+ },
55
+ ),
53
56
  )
54
57
  expect(res.status).toBe(200)
55
58
  const result = await res.json()
@@ -85,7 +88,7 @@ test('* method listens on all HTTP methods', async () => {
85
88
 
86
89
  // Test different HTTP methods
87
90
  const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS']
88
-
91
+
89
92
  for (const method of methods) {
90
93
  const res = await app.handle(
91
94
  new Request('http://localhost/wildcard', { method }),
@@ -104,7 +107,7 @@ test('route without method defaults to * (all methods)', async () => {
104
107
 
105
108
  // Test different HTTP methods
106
109
  const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH']
107
-
110
+
108
111
  for (const method of methods) {
109
112
  const res = await app.handle(
110
113
  new Request('http://localhost/default', { method }),
@@ -820,15 +823,13 @@ test('use with nested basPath works', async () => {
820
823
 
821
824
  test('does not append subapp basePath if it is the same as parent app', async () => {
822
825
  const app = new Spiceflow({ basePath: '/api' })
823
- .use(
824
- new Spiceflow({ basePath: '/api' }).get('/users', () => 'users'),
825
- )
826
+ .use(new Spiceflow({ basePath: '/api' }).get('/users', () => 'users'))
826
827
  .use(
827
828
  new Spiceflow({ basePath: '/api' }).use(
828
829
  new Spiceflow({ basePath: '/v1' }).get('/posts', () => 'posts'),
829
830
  ),
830
831
  )
831
-
832
+
832
833
  // Test that /api/users works (not /api/api/users)
833
834
  {
834
835
  const res = await app.handle(
@@ -849,7 +850,7 @@ test('does not append subapp basePath if it is the same as parent app', async ()
849
850
 
850
851
  // Test that getAllRoutes() doesn't contain duplicate basePaths
851
852
  const allRoutes = app.getAllRoutes()
852
- expect(allRoutes.map(route => route.path)).toMatchInlineSnapshot(`
853
+ expect(allRoutes.map((route) => route.path)).toMatchInlineSnapshot(`
853
854
  [
854
855
  "/api/users",
855
856
  "/api/v1/posts",
@@ -859,15 +860,13 @@ test('does not append subapp basePath if it is the same as parent app', async ()
859
860
 
860
861
  test('does not append subapp basePath if parent is prefix of subapp path', async () => {
861
862
  const app = new Spiceflow({ basePath: '/api' })
862
- .use(
863
- new Spiceflow({ basePath: '/api/sub' }).get('/users', () => 'users'),
864
- )
863
+ .use(new Spiceflow({ basePath: '/api/sub' }).get('/users', () => 'users'))
865
864
  .use(
866
865
  new Spiceflow({ basePath: '/api' }).use(
867
866
  new Spiceflow({ basePath: '/api/v2' }).get('/posts', () => 'posts'),
868
867
  ),
869
868
  )
870
-
869
+
871
870
  // Test that /api/sub/users works (not /api/api/sub/users)
872
871
  {
873
872
  const res = await app.handle(
@@ -888,7 +887,7 @@ test('does not append subapp basePath if parent is prefix of subapp path', async
888
887
 
889
888
  // Test that getAllRoutes() contains the correct paths
890
889
  const allRoutes = app.getAllRoutes()
891
- expect(allRoutes.map(route => route.path)).toMatchInlineSnapshot(`
890
+ expect(allRoutes.map((route) => route.path)).toMatchInlineSnapshot(`
892
891
  [
893
892
  "/api/sub/users",
894
893
  "/api/v2/posts",
@@ -1094,6 +1093,31 @@ describe('safePath', () => {
1094
1093
  )
1095
1094
  })
1096
1095
 
1096
+ test('safePath with .route works for static and wildcard paths', () => {
1097
+ const app = new Spiceflow()
1098
+ .route({
1099
+ method: 'GET',
1100
+ path: '/users',
1101
+ handler: () => 'users',
1102
+ })
1103
+ .route({
1104
+ method: 'POST',
1105
+ path: '/posts',
1106
+ handler: () => 'posts',
1107
+ })
1108
+ .route({
1109
+ method: 'GET',
1110
+ path: '/files/*',
1111
+ handler: () => 'files',
1112
+ })
1113
+
1114
+ expect(app.safePath('/users')).toBe('/users')
1115
+ expect(app.safePath('/posts')).toBe('/posts')
1116
+ // @ts-expect-error
1117
+ app.safePath('/files/*')
1118
+ expect(app.safePath('/files/*', { '*': 'a/b.txt' })).toBe('/files/a/b.txt')
1119
+ })
1120
+
1097
1121
  test('handles paths with required parameters', () => {
1098
1122
  const app = new Spiceflow()
1099
1123
  .get('/users/:id', ({ params }) => params.id)
@@ -1151,13 +1175,13 @@ describe('safePath', () => {
1151
1175
  // Test that safePath works inside a route handler by creating a separate test
1152
1176
  const testApp = new Spiceflow()
1153
1177
  .get('/target', () => 'target')
1154
- .get('/source', function() {
1178
+ .get('/source', function () {
1155
1179
  // Should be able to call safePath from inside handler
1156
1180
  return this.safePath('/target')
1157
1181
  })
1158
1182
 
1159
1183
  const res = await testApp.handle(
1160
- new Request('http://localhost/source', { method: 'GET' })
1184
+ new Request('http://localhost/source', { method: 'GET' }),
1161
1185
  )
1162
1186
  expect(res.status).toBe(200)
1163
1187
  expect(await res.json()).toBe('/target')
@@ -1172,18 +1196,20 @@ describe('safePath', () => {
1172
1196
  // Valid paths work
1173
1197
  expect(app.safePath('/api/users')).toBe('/api/users')
1174
1198
  expect(app.safePath('/api/posts')).toBe('/api/posts')
1175
- expect(app.safePath('/api/settings/:id', { id: '1' })).toBe('/api/settings/1')
1199
+ expect(app.safePath('/api/settings/:id', { id: '1' })).toBe(
1200
+ '/api/settings/1',
1201
+ )
1176
1202
 
1177
1203
  // Invalid paths should cause TypeScript errors
1178
1204
  // @ts-expect-error - Path not defined in app
1179
1205
  app.safePath('/api/nonexistent')
1180
-
1206
+
1181
1207
  // @ts-expect-error - Path not defined in app
1182
1208
  app.safePath('/completely/different/path')
1183
-
1209
+
1184
1210
  // @ts-expect-error - Path not defined in app
1185
1211
  app.safePath('/api/users/invalid')
1186
-
1212
+
1187
1213
  // @ts-expect-error - Wrong parameter name
1188
1214
  app.safePath('/api/settings/:wrongParam', { wrongParam: '1' })
1189
1215
  })
@@ -1191,7 +1217,7 @@ describe('safePath', () => {
1191
1217
  test('safePath works with all method shorthand functions', () => {
1192
1218
  const app = new Spiceflow()
1193
1219
  .get('/get-route', () => 'get')
1194
- .post('/post-route', () => 'post')
1220
+ .post('/post-route', () => 'post')
1195
1221
  .put('/put-route', () => 'put')
1196
1222
  .patch('/patch-route', () => 'patch')
1197
1223
  .delete('/delete-route', () => 'delete')
@@ -1217,13 +1243,13 @@ describe('safePath', () => {
1217
1243
  test('safePath works inside route handlers', async () => {
1218
1244
  const app = new Spiceflow()
1219
1245
  .get('/target', () => 'target reached')
1220
- .post('/redirect-test', function() {
1246
+ .post('/redirect-test', function () {
1221
1247
  // Should be able to reference other routes in the same app
1222
1248
  return this.safePath('/target')
1223
1249
  })
1224
1250
 
1225
1251
  const res = await app.handle(
1226
- new Request('http://localhost/redirect-test', { method: 'POST' })
1252
+ new Request('http://localhost/redirect-test', { method: 'POST' }),
1227
1253
  )
1228
1254
  expect(res.status).toBe(200)
1229
1255
  expect(await res.json()).toBe('/target')
@@ -1264,14 +1290,14 @@ test('composition with .use() works with state and onError - child app gets same
1264
1290
 
1265
1291
  // Test successful request - state starts from child app (0), then root middleware (+1), then child middleware (+10)
1266
1292
  const successRes = await rootApp.handle(
1267
- new Request('http://localhost/success', { method: 'GET' })
1293
+ new Request('http://localhost/success', { method: 'GET' }),
1268
1294
  )
1269
1295
  expect(successRes.status).toBe(200)
1270
1296
  expect(await successRes.json()).toEqual({ counter: 11 }) // 0 + 1 + 10
1271
1297
 
1272
1298
  // Test error case - root onError should catch child errors
1273
1299
  const errorRes = await rootApp.handle(
1274
- new Request('http://localhost/error', { method: 'GET' })
1300
+ new Request('http://localhost/error', { method: 'GET' }),
1275
1301
  )
1276
1302
  expect(errorRes.status).toBe(400)
1277
1303
  expect(await errorRes.text()).toBe('Root error handler')
@@ -1283,7 +1309,7 @@ test('composition with .use() works with state and onError - child app gets same
1283
1309
  test('onError receives path parameter', async () => {
1284
1310
  let capturedPath = ''
1285
1311
  let capturedError: any = null
1286
-
1312
+
1287
1313
  const app = new Spiceflow()
1288
1314
  .get('/test/path/:id', ({ params }) => {
1289
1315
  throw new Error('Test error')
@@ -1299,7 +1325,7 @@ test('onError receives path parameter', async () => {
1299
1325
 
1300
1326
  // Test GET request
1301
1327
  const getRes = await app.handle(
1302
- new Request('http://localhost/test/path/123?foo=bar', { method: 'GET' })
1328
+ new Request('http://localhost/test/path/123?foo=bar', { method: 'GET' }),
1303
1329
  )
1304
1330
  expect(getRes.status).toBe(500)
1305
1331
  expect(capturedPath).toBe('/test/path/123?foo=bar')
@@ -1307,7 +1333,7 @@ test('onError receives path parameter', async () => {
1307
1333
 
1308
1334
  // Test POST request
1309
1335
  const postRes = await app.handle(
1310
- new Request('http://localhost/another/route', { method: 'POST' })
1336
+ new Request('http://localhost/another/route', { method: 'POST' }),
1311
1337
  )
1312
1338
  expect(postRes.status).toBe(500)
1313
1339
  expect(capturedPath).toBe('/another/route')
@@ -1332,7 +1358,7 @@ test('error status validation', async () => {
1332
1358
  })
1333
1359
 
1334
1360
  const res = await app.handle(
1335
- new Request('http://localhost/test', { method: 'GET' })
1361
+ new Request('http://localhost/test', { method: 'GET' }),
1336
1362
  )
1337
1363
  expect(res.status).toBe(expected)
1338
1364
  }
@@ -1355,7 +1381,7 @@ test('error statusCode fallback', async () => {
1355
1381
  })
1356
1382
 
1357
1383
  const res = await app.handle(
1358
- new Request('http://localhost/test', { method: 'GET' })
1384
+ new Request('http://localhost/test', { method: 'GET' }),
1359
1385
  )
1360
1386
  expect(res.status).toBe(expected)
1361
1387
  }
@@ -1367,7 +1393,7 @@ test('route override - same method and path, second route wins', async () => {
1367
1393
  .get('/test', () => 'second handler')
1368
1394
 
1369
1395
  const res = await app.handle(
1370
- new Request('http://localhost/test', { method: 'GET' })
1396
+ new Request('http://localhost/test', { method: 'GET' }),
1371
1397
  )
1372
1398
  expect(res.status).toBe(200)
1373
1399
  expect(await res.json()).toMatchInlineSnapshot(`"second handler"`)
@@ -1380,13 +1406,13 @@ test('route override - different methods on same path work independently', async
1380
1406
  .get('/test', () => 'get override')
1381
1407
 
1382
1408
  const getRes = await app.handle(
1383
- new Request('http://localhost/test', { method: 'GET' })
1409
+ new Request('http://localhost/test', { method: 'GET' }),
1384
1410
  )
1385
1411
  expect(getRes.status).toBe(200)
1386
1412
  expect(await getRes.json()).toMatchInlineSnapshot(`"get override"`)
1387
1413
 
1388
1414
  const postRes = await app.handle(
1389
- new Request('http://localhost/test', { method: 'POST' })
1415
+ new Request('http://localhost/test', { method: 'POST' }),
1390
1416
  )
1391
1417
  expect(postRes.status).toBe(200)
1392
1418
  expect(await postRes.json()).toMatchInlineSnapshot(`"post handler"`)
@@ -1404,32 +1430,30 @@ test('route override with .use() - parent app routes take precedence over child
1404
1430
 
1405
1431
  // Parent app route takes precedence over child app route
1406
1432
  const sharedRes = await parentApp.handle(
1407
- new Request('http://localhost/shared', { method: 'GET' })
1433
+ new Request('http://localhost/shared', { method: 'GET' }),
1408
1434
  )
1409
1435
  expect(sharedRes.status).toBe(200)
1410
1436
  expect(await sharedRes.json()).toMatchInlineSnapshot(`"parent handler"`)
1411
1437
 
1412
1438
  // Parent-only route works as expected
1413
1439
  const parentOnlyRes = await parentApp.handle(
1414
- new Request('http://localhost/parent-only', { method: 'GET' })
1440
+ new Request('http://localhost/parent-only', { method: 'GET' }),
1415
1441
  )
1416
1442
  expect(parentOnlyRes.status).toBe(200)
1417
1443
  expect(await parentOnlyRes.json()).toMatchInlineSnapshot(`"parent only"`)
1418
1444
 
1419
1445
  // Child-only route works as expected
1420
1446
  const childOnlyRes = await parentApp.handle(
1421
- new Request('http://localhost/child-only', { method: 'GET' })
1447
+ new Request('http://localhost/child-only', { method: 'GET' }),
1422
1448
  )
1423
1449
  expect(childOnlyRes.status).toBe(200)
1424
1450
  expect(await childOnlyRes.json()).toMatchInlineSnapshot(`"child only"`)
1425
1451
  })
1426
1452
 
1427
1453
  test('route override with .use() - parent app routes always win, regardless of order', async () => {
1428
- const firstChildApp = new Spiceflow()
1429
- .get('/shared', () => 'first child')
1454
+ const firstChildApp = new Spiceflow().get('/shared', () => 'first child')
1430
1455
 
1431
- const secondChildApp = new Spiceflow()
1432
- .get('/shared', () => 'second child')
1456
+ const secondChildApp = new Spiceflow().get('/shared', () => 'second child')
1433
1457
 
1434
1458
  const parentApp = new Spiceflow()
1435
1459
  .get('/shared', () => 'parent')
@@ -1438,67 +1462,68 @@ test('route override with .use() - parent app routes always win, regardless of o
1438
1462
 
1439
1463
  // Parent route always wins, regardless of child apps
1440
1464
  const res = await parentApp.handle(
1441
- new Request('http://localhost/shared', { method: 'GET' })
1465
+ new Request('http://localhost/shared', { method: 'GET' }),
1442
1466
  )
1443
1467
  expect(res.status).toBe(200)
1444
1468
  expect(await res.json()).toMatchInlineSnapshot(`"parent"`)
1445
1469
  })
1446
1470
 
1447
1471
  test('route override with nested .use() - first matching parent route wins', async () => {
1448
- const deepestApp = new Spiceflow()
1449
- .get('/test', () => 'deepest')
1472
+ const deepestApp = new Spiceflow().get('/test', () => 'deepest')
1450
1473
 
1451
- const middleApp = new Spiceflow()
1452
- .get('/test', () => 'middle')
1453
- .use(deepestApp)
1474
+ const middleApp = new Spiceflow().get('/test', () => 'middle').use(deepestApp)
1454
1475
 
1455
- const rootApp = new Spiceflow()
1456
- .get('/test', () => 'root')
1457
- .use(middleApp)
1476
+ const rootApp = new Spiceflow().get('/test', () => 'root').use(middleApp)
1458
1477
 
1459
1478
  // Root app route wins over all nested routes
1460
1479
  const res = await rootApp.handle(
1461
- new Request('http://localhost/test', { method: 'GET' })
1480
+ new Request('http://localhost/test', { method: 'GET' }),
1462
1481
  )
1463
1482
  expect(res.status).toBe(200)
1464
1483
  expect(await res.json()).toMatchInlineSnapshot(`"root"`)
1465
1484
  })
1466
1485
 
1467
1486
  test('route override with .use() - child routes are accessible when no parent route exists', async () => {
1468
- const firstChildApp = new Spiceflow()
1469
- .get('/child1-route', () => 'first child')
1487
+ const firstChildApp = new Spiceflow().get(
1488
+ '/child1-route',
1489
+ () => 'first child',
1490
+ )
1470
1491
 
1471
1492
  const secondChildApp = new Spiceflow()
1472
1493
  .get('/child2-route', () => 'second child')
1473
1494
  .get('/shared-child', () => 'second child shared')
1474
1495
 
1475
- const thirdChildApp = new Spiceflow()
1476
- .get('/shared-child', () => 'third child shared')
1496
+ const thirdChildApp = new Spiceflow().get(
1497
+ '/shared-child',
1498
+ () => 'third child shared',
1499
+ )
1477
1500
 
1478
1501
  const parentApp = new Spiceflow()
1479
1502
  .get('/parent-only', () => 'parent')
1480
1503
  .use(firstChildApp)
1481
- .use(secondChildApp)
1504
+ .use(secondChildApp)
1482
1505
  .use(thirdChildApp)
1483
1506
 
1484
1507
  // First child route works
1485
1508
  const child1Res = await parentApp.handle(
1486
- new Request('http://localhost/child1-route', { method: 'GET' })
1509
+ new Request('http://localhost/child1-route', { method: 'GET' }),
1487
1510
  )
1488
1511
  expect(child1Res.status).toBe(200)
1489
1512
  expect(await child1Res.json()).toMatchInlineSnapshot(`"first child"`)
1490
1513
 
1491
1514
  // Second child route works
1492
1515
  const child2Res = await parentApp.handle(
1493
- new Request('http://localhost/child2-route', { method: 'GET' })
1516
+ new Request('http://localhost/child2-route', { method: 'GET' }),
1494
1517
  )
1495
1518
  expect(child2Res.status).toBe(200)
1496
1519
  expect(await child2Res.json()).toMatchInlineSnapshot(`"second child"`)
1497
1520
 
1498
1521
  // For conflicting child routes, first one wins (since no parent route exists)
1499
1522
  const sharedChildRes = await parentApp.handle(
1500
- new Request('http://localhost/shared-child', { method: 'GET' })
1523
+ new Request('http://localhost/shared-child', { method: 'GET' }),
1501
1524
  )
1502
1525
  expect(sharedChildRes.status).toBe(200)
1503
- expect(await sharedChildRes.json()).toMatchInlineSnapshot(`"second child shared"`)
1526
+ expect(await sharedChildRes.json()).toMatchInlineSnapshot(
1527
+ `"second child shared"`,
1528
+ )
1504
1529
  })
package/src/spiceflow.ts CHANGED
@@ -132,7 +132,9 @@ export class Spiceflow<
132
132
  let root = this.topLevelApp || this
133
133
  const allApps = bfs(root) || []
134
134
  const allRoutes = allApps.flatMap((x) => {
135
- const prefix = this.joinBasePaths(this.getAppAndParents(x).map((x) => x.basePath))
135
+ const prefix = this.joinBasePaths(
136
+ this.getAppAndParents(x).map((x) => x.basePath),
137
+ )
136
138
 
137
139
  return x.routes.map((x) => ({ ...x, path: prefix + x.path }))
138
140
  })
@@ -183,8 +185,9 @@ export class Spiceflow<
183
185
  path = path.replace(/\/$/, '') || '/'
184
186
  const result = bfsFind(this, (app) => {
185
187
  app.topLevelApp = root
186
- let prefix = this.joinBasePaths(this.getAppAndParents(app).map((x) => x.basePath))
187
- .replace(/\/$/, '')
188
+ let prefix = this.joinBasePaths(
189
+ this.getAppAndParents(app).map((x) => x.basePath),
190
+ ).replace(/\/$/, '')
188
191
  if (prefix && !path.startsWith(prefix)) {
189
192
  return
190
193
  }
@@ -461,18 +464,18 @@ export class Spiceflow<
461
464
  >,
462
465
  Method extends HTTPMethod | HTTPMethod[] = '*',
463
466
  >(
464
- options: {
465
- path: Path
466
- method?: Method
467
- handler: Handle
468
- } & LocalHook<
467
+ options: LocalHook<
469
468
  LocalSchema,
470
469
  Schema,
471
470
  Singleton,
472
471
  Definitions['error'],
473
472
  Metadata['macro'],
474
473
  JoinPath<BasePath, Path>
475
- >,
474
+ > & {
475
+ path: Path
476
+ method?: Method
477
+ handler: Handle
478
+ },
476
479
  ): Spiceflow<
477
480
  BasePath,
478
481
  Scoped,
@@ -506,7 +509,10 @@ export class Spiceflow<
506
509
  return method === '*' ? [...METHODS] : [method as string]
507
510
  })
508
511
  : (() => {
509
- const method = typeof actualMethod === 'string' ? actualMethod.toUpperCase() : actualMethod
512
+ const method =
513
+ typeof actualMethod === 'string'
514
+ ? actualMethod.toUpperCase()
515
+ : actualMethod
510
516
  return method === '*' ? [...METHODS] : [method as string]
511
517
  })()
512
518
  if (
@@ -1129,7 +1135,7 @@ export class Spiceflow<
1129
1135
  server.hostname === '0.0.0.0' ? 'localhost' : server.hostname
1130
1136
  console.log(`Listening on http://${displayedHost}:${server.port}`)
1131
1137
 
1132
- return {port: server.port, server}
1138
+ return { port: server.port, server }
1133
1139
  }
1134
1140
 
1135
1141
  return this.listenForNode(port, hostname)