spiceflow 1.4.0 → 1.5.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 (58) hide show
  1. package/README.md +1 -0
  2. package/dist/client/errors.js +4 -1
  3. package/dist/client/errors.js.map +1 -1
  4. package/dist/client/index.d.ts.map +1 -1
  5. package/dist/client/index.js +73 -51
  6. package/dist/client/index.js.map +1 -1
  7. package/dist/client.test.js +32 -73
  8. package/dist/client.test.js.map +1 -1
  9. package/dist/context.d.ts +0 -1
  10. package/dist/context.d.ts.map +1 -1
  11. package/dist/cors.d.ts.map +1 -1
  12. package/dist/cors.js +9 -6
  13. package/dist/cors.js.map +1 -1
  14. package/dist/error.js +8 -18
  15. package/dist/error.js.map +1 -1
  16. package/dist/mcp-transport.js +12 -8
  17. package/dist/mcp-transport.js.map +1 -1
  18. package/dist/mcp.d.ts.map +1 -1
  19. package/dist/mcp.js +10 -12
  20. package/dist/mcp.js.map +1 -1
  21. package/dist/mcp.test.js +5 -12
  22. package/dist/mcp.test.js.map +1 -1
  23. package/dist/middleware.test.js +2 -2
  24. package/dist/middleware.test.js.map +1 -1
  25. package/dist/openapi.js +117 -77
  26. package/dist/openapi.js.map +1 -1
  27. package/dist/openapi.test.js +98 -27
  28. package/dist/openapi.test.js.map +1 -1
  29. package/dist/spiceflow.d.ts +1 -2
  30. package/dist/spiceflow.d.ts.map +1 -1
  31. package/dist/spiceflow.js +99 -104
  32. package/dist/spiceflow.js.map +1 -1
  33. package/dist/spiceflow.test.js +127 -62
  34. package/dist/spiceflow.test.js.map +1 -1
  35. package/dist/static-node.js +6 -3
  36. package/dist/static-node.js.map +1 -1
  37. package/dist/static.js +3 -5
  38. package/dist/static.js.map +1 -1
  39. package/dist/stream.test.js +45 -66
  40. package/dist/stream.test.js.map +1 -1
  41. package/dist/types.test.js +10 -45
  42. package/dist/types.test.js.map +1 -1
  43. package/dist/utils.d.ts.map +1 -1
  44. package/dist/zod.test.js +2 -2
  45. package/dist/zod.test.js.map +1 -1
  46. package/package.json +10 -2
  47. package/src/client/index.ts +29 -7
  48. package/src/client.test.ts +20 -14
  49. package/src/context.ts +1 -1
  50. package/src/cors.ts +1 -0
  51. package/src/mcp.test.ts +5 -12
  52. package/src/mcp.ts +1 -0
  53. package/src/middleware.test.ts +1 -1
  54. package/src/openapi.test.ts +88 -0
  55. package/src/spiceflow.test.ts +120 -2
  56. package/src/spiceflow.ts +33 -11
  57. package/src/stream.test.ts +10 -2
  58. package/src/zod.test.ts +2 -3
@@ -1 +1 @@
1
- {"version":3,"file":"stream.test.js","sourceRoot":"","sources":["../src/stream.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.test.js","sourceRoot":"","sources":["../src/stream.test.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,3 @@
1
- var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
2
- var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
3
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
5
- return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
6
- function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
7
- function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
8
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
9
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
10
- function fulfill(value) { resume("next", value); }
11
- function reject(value) { resume("throw", value); }
12
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
13
- };
14
- var __asyncValues = (this && this.__asyncValues) || function (o) {
15
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
16
- var m = o[Symbol.asyncIterator], i;
17
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
18
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
19
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
20
- };
21
1
  import { test, expect } from 'vitest';
22
2
  import { Spiceflow } from './spiceflow.js';
23
3
  import { createSpiceflowClient } from './client/index.js';
@@ -49,37 +29,22 @@ test('`use` on Spiceflow return', async () => {
49
29
  expect(await res.json()).toEqual('hi');
50
30
  });
51
31
  test('async generator type with client', async () => {
52
- var _a, e_1, _b, _c;
53
- const app = new Spiceflow().get('/stream', function () {
54
- return __asyncGenerator(this, arguments, function* () {
55
- yield yield __await({ message: 'Hello' });
56
- yield yield __await({ message: 'World' });
57
- });
32
+ const app = new Spiceflow().get('/stream', async function* () {
33
+ yield { message: 'Hello' };
34
+ yield { message: 'World' };
58
35
  });
59
36
  const client = createSpiceflowClient(app);
60
37
  const streamResponse = await client.stream.get();
61
38
  if (streamResponse.error) {
62
39
  throw streamResponse.error;
63
40
  }
64
- try {
65
- // Type check: each yielded item should have the 'message' property
66
- for (var _d = true, _e = __asyncValues(streamResponse.data), _f; _f = await _e.next(), _a = _f.done, !_a; _d = true) {
67
- _c = _f.value;
68
- _d = false;
69
- const item = _c;
70
- // @ts-expect-error
71
- item.something;
72
- item.message;
73
- expect(item).toHaveProperty('message');
74
- expect(typeof item.message).toBe('string');
75
- }
76
- }
77
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
78
- finally {
79
- try {
80
- if (!_d && !_a && (_b = _e.return)) await _b.call(_e);
81
- }
82
- finally { if (e_1) throw e_1.error; }
41
+ // Type check: each yielded item should have the 'message' property
42
+ for await (const item of streamResponse.data) {
43
+ // @ts-expect-error
44
+ item.something;
45
+ item.message;
46
+ expect(item).toHaveProperty('message');
47
+ expect(typeof item.message).toBe('string');
83
48
  }
84
49
  });
85
50
  //# sourceMappingURL=types.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.test.js","sourceRoot":"","sources":["../src/types.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.test.js","sourceRoot":"","sources":["../src/types.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,UAAW,GAAG,QAOpC,CAAA;AAED,eAAO,MAAM,GAAG,SAAU,MAAM,YAAY,WAAW,YACN,CAAA;AAEjD,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,CAQpE;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DZ,CAAA;AAEV,eAAO,MAAM,iBAAiB,EAEzB,GACF,CAAoB,IAAf,MAAM,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAC1C,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAA;AACxC,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAExD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,QACd,MAAM,WACH,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,aACF,CAAA;AAEnC,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAA;AAEtC,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,QAAQ,CAoB1D"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,UAAW,GAAG,QAOpC,CAAA;AAED,eAAO,MAAM,GAAG,SAAU,MAAM,YAAY,WAAW,YACN,CAAA;AAEjD,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,CAQpE;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DZ,CAAA;AAEV,eAAO,MAAM,iBAAiB,EAEzB,GACF,CAAC,IAAI,MAAM,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAC1C,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAA;AACxC,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAExD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,QACd,MAAM,WACH,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,aACF,CAAA;AAEnC,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAA;AAEtC,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,QAAQ,CAoB1D"}
package/dist/zod.test.js CHANGED
@@ -1,7 +1,7 @@
1
- import { test, expect } from 'vitest';
1
+ import { expect, test } from 'vitest';
2
+ import { z } from 'zod';
2
3
  import { Spiceflow } from './spiceflow.js';
3
4
  import { req } from './utils.js';
4
- import { z } from 'zod';
5
5
  test('body is parsed as json', async () => {
6
6
  let name = '';
7
7
  const res = await new Spiceflow()
@@ -1 +1 @@
1
- {"version":3,"file":"zod.test.js","sourceRoot":"","sources":["../src/zod.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAY,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IACxC,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,MAAM,GAAG,GAAG,MAAM,IAAI,SAAS,EAAE;SAC9B,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;SAEf,IAAI,CACH,OAAO,EACP,KAAK,EAAE,CAAC,EAAE,EAAE;QACV,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACnC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAChB,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAA;QACrB,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,UAAU;SACX,CAAA;IACH,CAAC,EACD;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;SACjB,CAAC;QACF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,CAAC;KACH,CACF;SACA,IAAI,CACH,QAAQ,EACR,KAAK,EAAE,CAAC,EAAE,EAAE;QACV,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACnC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAChB,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAA;QACrB,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,IAAI;SACpB,CAAA;IACH,CAAC,EACD;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;SACjB,CAAC;QACF,QAAQ,EAAE;YACR,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;aACrB,CAAC;YACF,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;gBACZ,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;aACzB,CAAC;SACH;KACF,CACF;SACA,MAAM,CACL,GAAG,CAAC,OAAO,EAAE;QACX,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACvC,CAAC,CACH,CAAA;IACH,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC5B,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;AACtE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"zod.test.js","sourceRoot":"","sources":["../src/zod.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAEhC,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IACxC,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,MAAM,GAAG,GAAG,MAAM,IAAI,SAAS,EAAE;SAC9B,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;SAEf,IAAI,CACH,OAAO,EACP,KAAK,EAAE,CAAC,EAAE,EAAE;QACV,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACnC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAChB,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAA;QACrB,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,UAAU;SACX,CAAA;IACH,CAAC,EACD;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;SACjB,CAAC;QACF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,CAAC;KACH,CACF;SACA,IAAI,CACH,QAAQ,EACR,KAAK,EAAE,CAAC,EAAE,EAAE;QACV,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACnC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAChB,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAA;QACrB,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,IAAI;SACpB,CAAA;IACH,CAAC,EACD;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;SACjB,CAAC;QACF,QAAQ,EAAE;YACR,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;aACrB,CAAC;YACF,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;gBACZ,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;aACzB,CAAC;SACH;KACF,CACF;SACA,MAAM,CACL,GAAG,CAAC,OAAO,EAAE;QACX,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACvC,CAAC,CACH,CAAA;IACH,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC5B,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;AACtE,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spiceflow",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "description": "Simple API framework with RPC and type safety",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -41,15 +41,23 @@
41
41
  "license": "",
42
42
  "dependencies": {
43
43
  "@medley/router": "^0.2.1",
44
- "@modelcontextprotocol/sdk": "^1.0.4",
45
44
  "@sinclair/typebox": "^0.33.7",
46
45
  "ajv": "^8.17.1",
47
46
  "ajv-formats": "^3.0.1",
48
47
  "eventsource-parser": "^3.0.0",
49
48
  "openapi-types": "^12.1.3",
49
+ "superjson": "^2.2.2",
50
50
  "zod": "^3.24.1",
51
51
  "zod-to-json-schema": "^3.24.1"
52
52
  },
53
+ "peerDependencies": {
54
+ "@modelcontextprotocol/sdk": "^1.0.4"
55
+ },
56
+ "peerDependenciesMeta": {
57
+ "@modelcontextprotocol/sdk": {
58
+ "optional": true
59
+ }
60
+ },
53
61
  "devDependencies": {
54
62
  "@types/node": "22.7.4",
55
63
  "eventsource": "^3.0.2",
@@ -2,6 +2,7 @@
2
2
  /* eslint-disable no-case-declarations */
3
3
  /* eslint-disable prefer-const */
4
4
  import type { Spiceflow } from '../spiceflow.js'
5
+ import superjson from 'superjson'
5
6
  import { EventSourceParserStream } from 'eventsource-parser/stream'
6
7
 
7
8
  import type { SpiceflowClient } from './types.js'
@@ -161,17 +162,17 @@ export async function* streamSSEResponse(
161
162
  const { done, value: event } = await reader.read()
162
163
  if (done) break
163
164
  if (event?.event === 'error') {
164
- throw new SpiceflowFetchError(500, event.data)
165
+ throw new SpiceflowFetchError(500, superjsonDeserialize(event.data))
165
166
  }
166
167
  if (event) {
167
- yield tryParsingJson(event.data)
168
+ yield tryParsingSSEJson(event.data)
168
169
  }
169
170
  }
170
171
  }
171
172
 
172
- function tryParsingJson(data: string): any {
173
+ function tryParsingSSEJson(data: string): any {
173
174
  try {
174
- return JSON.parse(data)
175
+ return superjsonDeserialize(JSON.parse(data))
175
176
  } catch (error) {
176
177
  return null
177
178
  }
@@ -185,6 +186,10 @@ const createProxy = (
185
186
  ): any =>
186
187
  new Proxy(() => {}, {
187
188
  get(_, param: string): any {
189
+ // handle case where createClient returns a promise and await calls .then on it
190
+ if ((!paths.length && param === 'then') || param === 'catch') {
191
+ return _[param]
192
+ }
188
193
  return createProxy(
189
194
  domain,
190
195
  config,
@@ -237,7 +242,7 @@ const createProxy = (
237
242
  }
238
243
  }
239
244
 
240
- return (async () => {
245
+ return Promise.resolve().then(async () => {
241
246
  let fetchInit = {
242
247
  method: method?.toUpperCase(),
243
248
  body,
@@ -365,6 +370,7 @@ const createProxy = (
365
370
  }
366
371
 
367
372
  const url = domain + path + q
373
+ // console.log({ url, fetchInit })
368
374
  const response = await (instance?.handle(
369
375
  new Request(url, fetchInit),
370
376
  ) ?? fetcher!(url, fetchInit))
@@ -402,6 +408,7 @@ const createProxy = (
402
408
 
403
409
  case 'application/json':
404
410
  data = await response.json()
411
+ data = superjsonDeserialize(data)
405
412
  break
406
413
  case 'application/octet-stream':
407
414
  data = await response.arrayBuffer()
@@ -423,7 +430,11 @@ const createProxy = (
423
430
  }
424
431
 
425
432
  if (response.status >= 300 || response.status < 200) {
426
- error = new SpiceflowFetchError(response.status, data)
433
+ error = new SpiceflowFetchError(
434
+ response.status,
435
+ data || 'Unknown error',
436
+ )
437
+ // console.trace({ error, data })
427
438
  data = null
428
439
  }
429
440
 
@@ -434,7 +445,7 @@ const createProxy = (
434
445
  status: response.status,
435
446
  headers: response.headers,
436
447
  }
437
- })()
448
+ })
438
449
  }
439
450
 
440
451
  if (typeof body === 'object')
@@ -468,3 +479,14 @@ export const createSpiceflowClient = <
468
479
 
469
480
  return createProxy('http://e.ly', config, [], domain)
470
481
  }
482
+
483
+ function superjsonDeserialize(data: any) {
484
+ if (data?.__superjsonMeta) {
485
+ const { __superjsonMeta, ...rest } = data
486
+ return superjson.deserialize({
487
+ json: rest,
488
+ meta: __superjsonMeta,
489
+ })
490
+ }
491
+ return data
492
+ }
@@ -1,9 +1,9 @@
1
1
  import { z } from 'zod'
2
2
  import { createSpiceflowClient } from './client/index.js'
3
- import { Spiceflow, t } from './spiceflow.js'
3
+ import { Spiceflow } from './spiceflow.js'
4
+ import { Type as t } from '@sinclair/typebox'
4
5
 
5
6
  import { describe, expect, it } from 'vitest'
6
-
7
7
  const app = new Spiceflow()
8
8
  .get('/', () => 'a')
9
9
  .post('/', () => 'a')
@@ -11,11 +11,11 @@ const app = new Spiceflow()
11
11
  .get('/true', () => true)
12
12
  .get('/false', () => false)
13
13
  .post('/array', async ({ request }) => await request.json(), {
14
- body: t.Array(t.String()),
14
+ body: z.array(z.string()),
15
15
  })
16
16
  .post('/mirror', async ({ request }) => await request.json())
17
17
  .post('/body', async ({ request }) => await request.text(), {
18
- body: t.String(),
18
+ body: z.string(),
19
19
  })
20
20
  .post('/zodAny', async ({ request }) => await request.json(), {
21
21
  body: z.object({ body: z.array(z.any()) }),
@@ -25,9 +25,9 @@ const app = new Spiceflow()
25
25
  return { body: body || null }
26
26
  })
27
27
  .post('/deep/nested/mirror', async ({ request }) => await request.json(), {
28
- body: t.Object({
29
- username: t.String(),
30
- password: t.String(),
28
+ body: z.object({
29
+ username: z.string(),
30
+ password: z.string(),
31
31
  }),
32
32
  })
33
33
  .get('/throws', () => {
@@ -62,8 +62,8 @@ const app = new Spiceflow()
62
62
  },
63
63
  {
64
64
  response: {
65
- 200: t.Object({
66
- x: t.String(),
65
+ 200: z.object({
66
+ x: z.string(),
67
67
  }),
68
68
  },
69
69
  },
@@ -78,8 +78,8 @@ const app = new Spiceflow()
78
78
  .get('/dateObject', () => ({ date: new Date() }))
79
79
  .get('/redirect', ({ redirect }) => redirect('http://localhost:8083/true'))
80
80
  .post('/redirect', ({ redirect }) => redirect('http://localhost:8083/true'), {
81
- body: t.Object({
82
- username: t.String(),
81
+ body: z.object({
82
+ username: z.string(),
83
83
  }),
84
84
  })
85
85
  // .get('/formdata', () => ({
@@ -210,9 +210,7 @@ describe('client', () => {
210
210
  expect(data).toMatchInlineSnapshot(
211
211
  `"this string will not be parsed as json"`,
212
212
  )
213
- expect(error).toMatchInlineSnapshot(
214
- `null`,
215
- )
213
+ expect(error).toMatchInlineSnapshot(`null`)
216
214
  })
217
215
 
218
216
  it('stream ', async () => {
@@ -271,3 +269,11 @@ describe('client', () => {
271
269
  // expect(value).toEqual('Kirifuji Nagisa')
272
270
  // })
273
271
  })
272
+
273
+ describe('client as promise', () => {
274
+ it('should work with async client', async () => {
275
+ const asyncClient = Promise.resolve(client)
276
+ const { data } = await (await asyncClient).mirror.post({ test: 'value' })
277
+ expect(data).toEqual({ test: 'value' })
278
+ }, 200)
279
+ })
package/src/context.ts CHANGED
@@ -82,7 +82,7 @@ export type Context<
82
82
 
83
83
  request: SpiceflowRequest<Route['body']>
84
84
  state: Singleton['state']
85
- response?: Route['response']
85
+ // response?: Route['response']
86
86
  }>
87
87
 
88
88
  // Use to mimic request before mapping route
package/src/cors.ts CHANGED
@@ -26,6 +26,7 @@ export const cors = (options?: CORSOptions): MiddlewareHandler => {
26
26
  allowMethods: ['GET', 'HEAD', 'PUT', 'POST', 'DELETE', 'PATCH'],
27
27
  allowHeaders: [],
28
28
  exposeHeaders: [],
29
+ credentials: true,
29
30
  cacheAge: 21600 // 6 hours default
30
31
  }
31
32
  const opts = {
package/src/mcp.test.ts CHANGED
@@ -195,12 +195,12 @@ describe('MCP Plugin', () => {
195
195
  {
196
196
  "mimeType": "application/json",
197
197
  "name": "GET /goSomething",
198
- "uri": "http://localhost:3000/goSomething",
198
+ "uri": "http://localhost:4000/goSomething",
199
199
  },
200
200
  {
201
201
  "mimeType": "application/json",
202
202
  "name": "GET /users",
203
- "uri": "http://localhost:3000/users",
203
+ "uri": "http://localhost:4000/users",
204
204
  },
205
205
  ]
206
206
  `)
@@ -220,22 +220,15 @@ describe('MCP Plugin', () => {
220
220
  [
221
221
  {
222
222
  "mimeType": "application/json",
223
- "text": "{
224
- "users": [
225
- {
226
- "id": 1,
227
- "name": "John"
228
- }
229
- ]
230
- }",
231
- "uri": "http://localhost:3000/users",
223
+ "text": "{"users":[{"id":1,"name":"John"}]}",
224
+ "uri": "http://localhost:4000/users",
232
225
  },
233
226
  ]
234
227
  `)
235
228
  })
236
229
  })
237
230
 
238
- async function getAvailablePort(startPort = 3000, maxRetries = 10) {
231
+ async function getAvailablePort(startPort = 4000, maxRetries = 10) {
239
232
  const net = await import('net')
240
233
 
241
234
  return await new Promise<number>((resolve, reject) => {
package/src/mcp.ts CHANGED
@@ -9,6 +9,7 @@ import {
9
9
  import { zodToJsonSchema } from 'zod-to-json-schema'
10
10
  import { SSEServerTransportSpiceflow } from './mcp-transport.js'
11
11
  import { isZodSchema, Spiceflow } from './spiceflow.js'
12
+ import { OpenAPIV3 } from 'openapi-types'
12
13
 
13
14
  function getJsonSchema(schema: any) {
14
15
  if (!schema) return undefined
@@ -358,7 +358,7 @@ test('each middleware and route is called exactly once if an error is thrown', a
358
358
  const res = await app.handle(new Request('http://localhost/test'))
359
359
 
360
360
  expect(res.status).toBe(500)
361
- expect(await res.text()).toBe('Route response')
361
+ expect(await res.text()).toMatchInlineSnapshot(`"{"message":"Route response"}"`)
362
362
  expect(callOrder).toEqual(['middleware1', 'middleware2', 'middleware3', 'route'])
363
363
 
364
364
  // Check that each middleware and route is called exactly once
@@ -159,6 +159,73 @@ test('openapi response', async () => {
159
159
  .then((x) => x.json())
160
160
  expect(openapiSchema).toMatchInlineSnapshot(`
161
161
  {
162
+ "__superjsonMeta": {
163
+ "values": {
164
+ "paths./addBody.patch.responses.200.content.application/json.schema.items": [
165
+ "undefined",
166
+ ],
167
+ "paths./addBody.patch.responses.200.content.application/json.schema.patternProperties": [
168
+ "undefined",
169
+ ],
170
+ "paths./addBody.patch.responses.200.content.application/json.schema.required": [
171
+ "undefined",
172
+ ],
173
+ "paths./formWithSchemaForm.post.responses.200.content.multipart/form-data.schema.items": [
174
+ "undefined",
175
+ ],
176
+ "paths./formWithSchemaForm.post.responses.200.content.multipart/form-data.schema.patternProperties": [
177
+ "undefined",
178
+ ],
179
+ "paths./one/ids/{id}.get.parameters.0.description": [
180
+ "undefined",
181
+ ],
182
+ "paths./one/ids/{id}.get.parameters.0.examples": [
183
+ "undefined",
184
+ ],
185
+ "paths./one/ids/{id}.get.responses.404.content.application/json.schema.items": [
186
+ "undefined",
187
+ ],
188
+ "paths./one/ids/{id}.get.responses.404.content.application/json.schema.patternProperties": [
189
+ "undefined",
190
+ ],
191
+ "paths./queryParams.get.parameters.0.description": [
192
+ "undefined",
193
+ ],
194
+ "paths./queryParams.get.parameters.0.examples": [
195
+ "undefined",
196
+ ],
197
+ "paths./queryParams.get.responses.200.content.application/json.schema.items": [
198
+ "undefined",
199
+ ],
200
+ "paths./queryParams.get.responses.200.content.application/json.schema.patternProperties": [
201
+ "undefined",
202
+ ],
203
+ "paths./queryParams.get.responses.200.content.application/json.schema.required": [
204
+ "undefined",
205
+ ],
206
+ "paths./queryParams.post.responses.200.content.application/json.schema.items": [
207
+ "undefined",
208
+ ],
209
+ "paths./queryParams.post.responses.200.content.application/json.schema.patternProperties": [
210
+ "undefined",
211
+ ],
212
+ "paths./queryParams.post.responses.200.content.application/json.schema.required": [
213
+ "undefined",
214
+ ],
215
+ "paths./streamWithSchema.get.responses.200.content.application/json.schema.items": [
216
+ "undefined",
217
+ ],
218
+ "paths./streamWithSchema.get.responses.200.content.application/json.schema.patternProperties": [
219
+ "undefined",
220
+ ],
221
+ "paths./two/ids/{id}.get.parameters.0.description": [
222
+ "undefined",
223
+ ],
224
+ "paths./two/ids/{id}.get.parameters.0.examples": [
225
+ "undefined",
226
+ ],
227
+ },
228
+ },
162
229
  "components": {
163
230
  "schemas": {},
164
231
  },
@@ -196,11 +263,14 @@ test('openapi response', async () => {
196
263
  "content": {
197
264
  "application/json": {
198
265
  "schema": {
266
+ "items": null,
267
+ "patternProperties": null,
199
268
  "properties": {
200
269
  "name": {
201
270
  "type": "string",
202
271
  },
203
272
  },
273
+ "required": null,
204
274
  "type": "object",
205
275
  },
206
276
  },
@@ -226,6 +296,8 @@ test('openapi response', async () => {
226
296
  "content": {
227
297
  "multipart/form-data": {
228
298
  "schema": {
299
+ "items": null,
300
+ "patternProperties": null,
229
301
  "properties": {
230
302
  "age": {
231
303
  "type": "string",
@@ -259,6 +331,8 @@ test('openapi response', async () => {
259
331
  "get": {
260
332
  "parameters": [
261
333
  {
334
+ "description": null,
335
+ "examples": null,
262
336
  "in": "path",
263
337
  "name": "id",
264
338
  "required": true,
@@ -282,6 +356,8 @@ test('openapi response', async () => {
282
356
  "content": {
283
357
  "application/json": {
284
358
  "schema": {
359
+ "items": null,
360
+ "patternProperties": null,
285
361
  "properties": {
286
362
  "message": {
287
363
  "type": "string",
@@ -333,6 +409,8 @@ test('openapi response', async () => {
333
409
  "get": {
334
410
  "parameters": [
335
411
  {
412
+ "description": null,
413
+ "examples": null,
336
414
  "in": "query",
337
415
  "name": "name",
338
416
  "required": true,
@@ -346,11 +424,14 @@ test('openapi response', async () => {
346
424
  "content": {
347
425
  "application/json": {
348
426
  "schema": {
427
+ "items": null,
428
+ "patternProperties": null,
349
429
  "properties": {
350
430
  "name": {
351
431
  "type": "string",
352
432
  },
353
433
  },
434
+ "required": null,
354
435
  "type": "object",
355
436
  },
356
437
  },
@@ -395,11 +476,14 @@ test('openapi response', async () => {
395
476
  "content": {
396
477
  "application/json": {
397
478
  "schema": {
479
+ "items": null,
480
+ "patternProperties": null,
398
481
  "properties": {
399
482
  "name": {
400
483
  "type": "string",
401
484
  },
402
485
  },
486
+ "required": null,
403
487
  "type": "object",
404
488
  },
405
489
  },
@@ -451,6 +535,8 @@ test('openapi response', async () => {
451
535
  "content": {
452
536
  "application/json": {
453
537
  "schema": {
538
+ "items": null,
539
+ "patternProperties": null,
454
540
  "properties": {
455
541
  "count": {
456
542
  "type": "number",
@@ -483,6 +569,8 @@ test('openapi response', async () => {
483
569
  "get": {
484
570
  "parameters": [
485
571
  {
572
+ "description": null,
573
+ "examples": null,
486
574
  "in": "path",
487
575
  "name": "id",
488
576
  "required": true,