spiceflow 1.17.12 → 1.18.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 (47) hide show
  1. package/README.md +167 -2
  2. package/dist/client/errors.d.ts +2 -1
  3. package/dist/client/errors.d.ts.map +1 -1
  4. package/dist/client/errors.js +3 -1
  5. package/dist/client/errors.js.map +1 -1
  6. package/dist/client/fetch.d.ts +86 -0
  7. package/dist/client/fetch.d.ts.map +1 -0
  8. package/dist/client/fetch.js +143 -0
  9. package/dist/client/fetch.js.map +1 -0
  10. package/dist/client/index.d.ts +4 -14
  11. package/dist/client/index.d.ts.map +1 -1
  12. package/dist/client/index.js +3 -176
  13. package/dist/client/index.js.map +1 -1
  14. package/dist/client/shared.d.ts +47 -0
  15. package/dist/client/shared.d.ts.map +1 -0
  16. package/dist/client/shared.js +314 -0
  17. package/dist/client/shared.js.map +1 -0
  18. package/dist/client/types.d.ts +2 -1
  19. package/dist/client/types.d.ts.map +1 -1
  20. package/dist/fetch-client.test.d.ts +2 -0
  21. package/dist/fetch-client.test.d.ts.map +1 -0
  22. package/dist/fetch-client.test.js +362 -0
  23. package/dist/fetch-client.test.js.map +1 -0
  24. package/dist/index.d.ts +1 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -1
  27. package/dist/index.js.map +1 -1
  28. package/dist/mcp.d.ts +1 -1
  29. package/dist/mcp.d.ts.map +1 -1
  30. package/dist/openapi.d.ts +1 -1
  31. package/dist/openapi.d.ts.map +1 -1
  32. package/dist/spiceflow.d.ts +36 -14
  33. package/dist/spiceflow.d.ts.map +1 -1
  34. package/dist/spiceflow.js +49 -16
  35. package/dist/spiceflow.js.map +1 -1
  36. package/dist/spiceflow.test.js +205 -1
  37. package/dist/spiceflow.test.js.map +1 -1
  38. package/package.json +3 -3
  39. package/src/client/errors.ts +3 -0
  40. package/src/client/fetch.ts +447 -0
  41. package/src/client/index.ts +19 -229
  42. package/src/client/shared.ts +406 -0
  43. package/src/client/types.ts +2 -1
  44. package/src/fetch-client.test.ts +411 -0
  45. package/src/index.ts +1 -1
  46. package/src/spiceflow.test.ts +315 -1
  47. package/src/spiceflow.ts +106 -32
@@ -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
@@ -23,6 +23,7 @@ export class Spiceflow {
23
23
  Prefix: '',
24
24
  ClientRoutes: {},
25
25
  RoutePaths: '',
26
+ RouteQuerySchemas: {},
26
27
  Scoped: false,
27
28
  Singleton: {},
28
29
  Definitions: {},
@@ -671,24 +672,56 @@ export class Spiceflow {
671
672
  });
672
673
  }
673
674
  safePath(path, ...rest) {
674
- let params = (rest.length > 0 ? rest[0] : undefined);
675
- let result = path;
676
- // Handle all provided parameters
677
- if (params && typeof params === 'object') {
678
- Object.entries(params).forEach(([key, value]) => {
679
- if (key === '*') {
680
- // Replace wildcard
681
- result = result.replace(/\*/, String(value));
682
- }
683
- else {
684
- // Replace named parameters as before
685
- const regex = new RegExp(`:${key}`, 'g');
686
- result = result.replace(regex, String(value));
687
- }
688
- });
689
- }
675
+ return buildSafePath(path, rest[0]);
676
+ }
677
+ }
678
+ function buildSafePath(path, allParams) {
679
+ let result = path;
680
+ if (!allParams || typeof allParams !== 'object')
690
681
  return result;
682
+ const pathParamNames = new Set();
683
+ const paramMatches = path.matchAll(/:(\w+)/g);
684
+ for (const m of paramMatches) {
685
+ pathParamNames.add(m[1]);
686
+ }
687
+ const hasWildcard = path.includes('*');
688
+ if (hasWildcard)
689
+ pathParamNames.add('*');
690
+ const searchParams = new URLSearchParams();
691
+ for (const [key, value] of Object.entries(allParams)) {
692
+ if (value === undefined || value === null)
693
+ continue;
694
+ if (key === '*' && hasWildcard) {
695
+ result = result.replace(/\*/, String(value));
696
+ }
697
+ else if (pathParamNames.has(key)) {
698
+ result = result.replace(new RegExp(`:${key}`, 'g'), String(value));
699
+ }
700
+ else {
701
+ searchParams.set(key, String(value));
702
+ }
691
703
  }
704
+ const qs = searchParams.toString();
705
+ if (qs)
706
+ result += '?' + qs;
707
+ return result;
708
+ }
709
+ /**
710
+ * Create a standalone type-safe path builder. Pass your app instance for automatic
711
+ * type inference, or call with explicit type params. The app value is not used at runtime.
712
+ *
713
+ * ```ts
714
+ * const app = new Spiceflow()
715
+ * .get('/users/:id', handler, { query: z.object({ page: z.number() }) })
716
+ *
717
+ * const safePath = createSafePath(app)
718
+ * safePath('/users/:id', { id: '123', page: 1 })
719
+ * ```
720
+ */
721
+ export function createSafePath(_app) {
722
+ return (path, ...rest) => {
723
+ return buildSafePath(path, rest[0]);
724
+ };
692
725
  }
693
726
  const METHODS = [
694
727
  'ALL',
@@ -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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"}
@@ -1,5 +1,5 @@
1
1
  import { test, describe, expect } from 'vitest';
2
- import { bfs, cloneDeep, Spiceflow } from "./spiceflow.js";
2
+ import { bfs, cloneDeep, createSafePath, Spiceflow } from "./spiceflow.js";
3
3
  import { z } from 'zod';
4
4
  import { createSpiceflowClient } from "./client/index.js";
5
5
  test('works', async () => {
@@ -990,6 +990,210 @@ describe('safePath', () => {
990
990
  expect(res.status).toBe(200);
991
991
  expect(await res.json()).toBe('/target');
992
992
  });
993
+ test('safePath appends query params', () => {
994
+ const app = new Spiceflow()
995
+ .get('/search', () => 'results', {
996
+ query: z.object({ q: z.string(), page: z.coerce.number() }),
997
+ })
998
+ .get('/users/:id', ({ params }) => params.id, {
999
+ query: z.object({ fields: z.string() }),
1000
+ });
1001
+ expect(app.safePath('/search', { q: 'hello', page: 1 })).toBe('/search?q=hello&page=1');
1002
+ expect(app.safePath('/users/:id', { id: '42', fields: 'name' })).toBe('/users/42?fields=name');
1003
+ // @ts-expect-error - invalid query key 'invalid' not in schema
1004
+ app.safePath('/search', { invalid: 'x' });
1005
+ // @ts-expect-error - invalid query key 'nonexistent' not in schema
1006
+ app.safePath('/users/:id', { id: '1', nonexistent: 'x' });
1007
+ });
1008
+ test('safePath with query params and no path params', () => {
1009
+ const app = new Spiceflow().get('/items', () => 'items', {
1010
+ query: z.object({ sort: z.string(), limit: z.coerce.number() }),
1011
+ });
1012
+ expect(app.safePath('/items', { sort: 'date', limit: 10 })).toBe('/items?sort=date&limit=10');
1013
+ // @ts-expect-error - wrong query key
1014
+ app.safePath('/items', { order: 'asc' });
1015
+ });
1016
+ test('safePath without query still works', () => {
1017
+ const app = new Spiceflow()
1018
+ .get('/simple', () => 'simple')
1019
+ .get('/with-query', () => 'q', {
1020
+ query: z.object({ x: z.string() }),
1021
+ });
1022
+ expect(app.safePath('/simple')).toBe('/simple');
1023
+ expect(app.safePath('/with-query')).toBe('/with-query');
1024
+ });
1025
+ test('safePath with .route and query', () => {
1026
+ const app = new Spiceflow().route({
1027
+ method: 'GET',
1028
+ path: '/api/search',
1029
+ query: z.object({ term: z.string() }),
1030
+ handler: () => 'search',
1031
+ });
1032
+ expect(app.safePath('/api/search', { term: 'test' })).toBe('/api/search?term=test');
1033
+ // @ts-expect-error - invalid query key for .route-based route
1034
+ app.safePath('/api/search', { wrong: 'x' });
1035
+ });
1036
+ test('safePath skips undefined/null query values', () => {
1037
+ const app = new Spiceflow().get('/filter', () => 'filter', {
1038
+ query: z.object({ a: z.string(), b: z.string().optional() }),
1039
+ });
1040
+ expect(app.safePath('/filter', { a: 'yes', b: undefined })).toBe('/filter?a=yes');
1041
+ });
1042
+ test('safePath query with basePath', () => {
1043
+ const app = new Spiceflow({ basePath: '/api' }).get('/search', () => 'search', {
1044
+ query: z.object({ q: z.string() }),
1045
+ });
1046
+ expect(app.safePath('/api/search', { q: 'hello' })).toBe('/api/search?q=hello');
1047
+ // @ts-expect-error - invalid query key with basePath
1048
+ app.safePath('/api/search', { wrong: 'x' });
1049
+ });
1050
+ test('safePath query with all HTTP method shorthands', () => {
1051
+ const app = new Spiceflow()
1052
+ .put('/put-q', () => 'put', {
1053
+ query: z.object({ x: z.string() }),
1054
+ })
1055
+ .patch('/patch-q', () => 'patch', {
1056
+ query: z.object({ y: z.coerce.number() }),
1057
+ })
1058
+ .delete('/del-q', () => 'del', {
1059
+ query: z.object({ confirm: z.boolean() }),
1060
+ });
1061
+ expect(app.safePath('/put-q', { x: 'val' })).toBe('/put-q?x=val');
1062
+ expect(app.safePath('/patch-q', { y: 5 })).toBe('/patch-q?y=5');
1063
+ expect(app.safePath('/del-q', { confirm: true })).toBe('/del-q?confirm=true');
1064
+ // @ts-expect-error - wrong query key on put
1065
+ app.safePath('/put-q', { wrong: 'x' });
1066
+ // @ts-expect-error - wrong query key on patch
1067
+ app.safePath('/patch-q', { wrong: 1 });
1068
+ // @ts-expect-error - wrong query key on delete
1069
+ app.safePath('/del-q', { wrong: true });
1070
+ });
1071
+ test('safePath routes without query schema accept arbitrary query at runtime', () => {
1072
+ const app = new Spiceflow().get('/no-schema', () => 'ok');
1073
+ expect(app.safePath('/no-schema', { anything: 'works' })).toBe('/no-schema?anything=works');
1074
+ });
1075
+ });
1076
+ describe('createSafePath', () => {
1077
+ test('works with simple paths', () => {
1078
+ const app = new Spiceflow()
1079
+ .get('/users', () => 'users')
1080
+ .get('/posts', () => 'posts');
1081
+ const safePath = createSafePath(app);
1082
+ expect(safePath('/users')).toBe('/users');
1083
+ expect(safePath('/posts')).toBe('/posts');
1084
+ // @ts-expect-error - invalid path
1085
+ safePath('/nonexistent');
1086
+ });
1087
+ test('works with path params', () => {
1088
+ const app = new Spiceflow()
1089
+ .get('/users/:id', ({ params }) => params.id)
1090
+ .get('/posts/:postId/comments/:commentId', ({ params }) => params);
1091
+ const safePath = createSafePath(app);
1092
+ expect(safePath('/users/:id', { id: '123' })).toBe('/users/123');
1093
+ expect(safePath('/posts/:postId/comments/:commentId', {
1094
+ postId: 'abc',
1095
+ commentId: '456',
1096
+ })).toBe('/posts/abc/comments/456');
1097
+ // @ts-expect-error - wrong path
1098
+ safePath('/wrong/:id', { id: '1' });
1099
+ });
1100
+ test('works with query params and rejects invalid keys', () => {
1101
+ const app = new Spiceflow()
1102
+ .get('/search', () => 'results', {
1103
+ query: z.object({ q: z.string(), page: z.coerce.number() }),
1104
+ });
1105
+ const safePath = createSafePath(app);
1106
+ expect(safePath('/search', { q: 'hello', page: 1 })).toBe('/search?q=hello&page=1');
1107
+ // @ts-expect-error - invalid query key
1108
+ safePath('/search', { invalid: 'x' });
1109
+ });
1110
+ test('works with both path and query params', () => {
1111
+ const app = new Spiceflow()
1112
+ .get('/users/:id', ({ params }) => params.id, {
1113
+ query: z.object({ fields: z.string() }),
1114
+ });
1115
+ const safePath = createSafePath(app);
1116
+ expect(safePath('/users/:id', { id: '42', fields: 'name' })).toBe('/users/42?fields=name');
1117
+ // @ts-expect-error - invalid query key with path params
1118
+ safePath('/users/:id', { id: '1', wrong: 'x' });
1119
+ });
1120
+ test('works with wildcard paths', () => {
1121
+ const app = new Spiceflow().get('/files/*', () => 'files');
1122
+ const safePath = createSafePath(app);
1123
+ expect(safePath('/files/*', { '*': 'a/b.txt' })).toBe('/files/a/b.txt');
1124
+ });
1125
+ test('rejects invalid query keys across multiple routes', () => {
1126
+ const app = new Spiceflow()
1127
+ .get('/items', () => 'items', {
1128
+ query: z.object({ sort: z.string(), limit: z.coerce.number() }),
1129
+ })
1130
+ .post('/create', () => 'created', {
1131
+ query: z.object({ dryRun: z.boolean() }),
1132
+ });
1133
+ const safePath = createSafePath(app);
1134
+ expect(safePath('/items', { sort: 'name', limit: 10 })).toBe('/items?sort=name&limit=10');
1135
+ expect(safePath('/create', { dryRun: true })).toBe('/create?dryRun=true');
1136
+ // @ts-expect-error - 'order' not in /items query schema
1137
+ safePath('/items', { order: 'asc' });
1138
+ // @ts-expect-error - 'verbose' not in /create query schema
1139
+ safePath('/create', { verbose: true });
1140
+ });
1141
+ test('works with .route and rejects invalid query keys', () => {
1142
+ const app = new Spiceflow().route({
1143
+ method: 'GET',
1144
+ path: '/api/data',
1145
+ query: z.object({ format: z.string() }),
1146
+ handler: () => 'data',
1147
+ });
1148
+ const safePath = createSafePath(app);
1149
+ expect(safePath('/api/data', { format: 'json' })).toBe('/api/data?format=json');
1150
+ // @ts-expect-error - invalid query key on .route
1151
+ safePath('/api/data', { type: 'csv' });
1152
+ // @ts-expect-error - invalid path
1153
+ safePath('/api/other');
1154
+ });
1155
+ test('works with basePath and rejects invalid query keys', () => {
1156
+ const app = new Spiceflow({ basePath: '/v2' }).get('/users', () => 'users', {
1157
+ query: z.object({ active: z.boolean() }),
1158
+ });
1159
+ const safePath = createSafePath(app);
1160
+ expect(safePath('/v2/users', { active: true })).toBe('/v2/users?active=true');
1161
+ // @ts-expect-error - invalid query key
1162
+ safePath('/v2/users', { status: 'active' });
1163
+ // @ts-expect-error - path without basePath prefix
1164
+ safePath('/users');
1165
+ });
1166
+ test('without query schema allows arbitrary query', () => {
1167
+ const app = new Spiceflow().get('/free', () => 'ok');
1168
+ const safePath = createSafePath(app);
1169
+ expect(safePath('/free', { any: 'value', works: 'here' })).toBe('/free?any=value&works=here');
1170
+ });
1171
+ test('partial query params are accepted', () => {
1172
+ const app = new Spiceflow().get('/filter', () => 'filter', {
1173
+ query: z.object({ a: z.string(), b: z.string(), c: z.string() }),
1174
+ });
1175
+ const safePath = createSafePath(app);
1176
+ expect(safePath('/filter', { a: 'only-a' })).toBe('/filter?a=only-a');
1177
+ expect(safePath('/filter', { a: '1', c: '3' })).toBe('/filter?a=1&c=3');
1178
+ });
1179
+ test('mixed routes with and without query schemas', () => {
1180
+ const app = new Spiceflow()
1181
+ .get('/typed', () => 'typed', {
1182
+ query: z.object({ x: z.string() }),
1183
+ })
1184
+ .get('/untyped', () => 'untyped')
1185
+ .get('/also-typed/:id', ({ params }) => params.id, {
1186
+ query: z.object({ verbose: z.boolean() }),
1187
+ });
1188
+ const safePath = createSafePath(app);
1189
+ expect(safePath('/typed', { x: 'val' })).toBe('/typed?x=val');
1190
+ expect(safePath('/untyped', { anything: 'goes' })).toBe('/untyped?anything=goes');
1191
+ expect(safePath('/also-typed/:id', { id: '1', verbose: true })).toBe('/also-typed/1?verbose=true');
1192
+ // @ts-expect-error - wrong key on typed route
1193
+ safePath('/typed', { wrong: 'x' });
1194
+ // @ts-expect-error - wrong key on also-typed route
1195
+ safePath('/also-typed/:id', { id: '1', wrong: true });
1196
+ });
993
1197
  });
994
1198
  test('composition with .use() works with state and onError - child app gets same state, errors caught by root', async () => {
995
1199
  let rootErrorCalled = false;