fets 0.0.5 → 0.0.6

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/Response.d.ts CHANGED
@@ -8,6 +8,7 @@ export interface LazySerializedResponse {
8
8
  init?: ResponseInit;
9
9
  serializerSet: boolean;
10
10
  responsePromise: Promise<Response>;
11
+ jsonObj: any;
11
12
  }
12
13
  export declare function isLazySerializedResponse(response: any): response is LazySerializedResponse;
13
14
  export declare function createLazySerializedResponse(jsonObj: any, init?: ResponseInit): LazySerializedResponse;
package/index.js CHANGED
@@ -22,6 +22,7 @@ function createLazySerializedResponse(jsonObj, init) {
22
22
  });
23
23
  let _serializerSet = false;
24
24
  return {
25
+ jsonObj,
25
26
  responsePromise: promise,
26
27
  [LAZY_SERIALIZED_RESPONSE]: true,
27
28
  init,
@@ -63,10 +64,7 @@ function useAjv() {
63
64
  if ((_a = schemas === null || schemas === void 0 ? void 0 : schemas.request) === null || _a === void 0 ? void 0 : _a.headers) {
64
65
  const validateFn = ajv.compile(schemas.request.headers);
65
66
  validationMiddlewares.set('headers', request => {
66
- const headersObj = {};
67
- request.headers.forEach((value, key) => {
68
- headersObj[key] = value;
69
- });
67
+ const headersObj = server.getHeadersObj(request.headers);
70
68
  const isValid = validateFn(headersObj);
71
69
  if (!isValid) {
72
70
  return validateFn.errors;
@@ -441,12 +439,9 @@ function createRouterBase({ fetchAPI: givenFetchAPI, base: basePath = '/', plugi
441
439
  });
442
440
  }
443
441
  if (!handlerResult.serializerSet) {
444
- handlerResult.resolveWithSerializer(defaultSerializer);
445
- }
446
- const realResponse = await handlerResult.responsePromise;
447
- if (realResponse) {
448
- return realResponse;
442
+ return fetchAPI.Response.json(handlerResult.jsonObj, handlerResult.init);
449
443
  }
444
+ return handlerResult.responsePromise;
450
445
  }
451
446
  else if (handlerResult) {
452
447
  return handlerResult;
package/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as DefaultFetchAPI from '@whatwg-node/fetch';
2
2
  import { Response as Response$1, fetch } from '@whatwg-node/fetch';
3
3
  export { URLPattern } from '@whatwg-node/fetch';
4
- import { createServerAdapter } from '@whatwg-node/server';
4
+ import { getHeadersObj, createServerAdapter } from '@whatwg-node/server';
5
5
  export { HTTPError, useCORS, useErrorHandling } from '@whatwg-node/server';
6
6
  import Ajv from 'ajv';
7
7
  import addFormats from 'ajv-formats';
@@ -19,6 +19,7 @@ function createLazySerializedResponse(jsonObj, init) {
19
19
  });
20
20
  let _serializerSet = false;
21
21
  return {
22
+ jsonObj,
22
23
  responsePromise: promise,
23
24
  [LAZY_SERIALIZED_RESPONSE]: true,
24
25
  init,
@@ -60,10 +61,7 @@ function useAjv() {
60
61
  if ((_a = schemas === null || schemas === void 0 ? void 0 : schemas.request) === null || _a === void 0 ? void 0 : _a.headers) {
61
62
  const validateFn = ajv.compile(schemas.request.headers);
62
63
  validationMiddlewares.set('headers', request => {
63
- const headersObj = {};
64
- request.headers.forEach((value, key) => {
65
- headersObj[key] = value;
66
- });
64
+ const headersObj = getHeadersObj(request.headers);
67
65
  const isValid = validateFn(headersObj);
68
66
  if (!isValid) {
69
67
  return validateFn.errors;
@@ -438,12 +436,9 @@ function createRouterBase({ fetchAPI: givenFetchAPI, base: basePath = '/', plugi
438
436
  });
439
437
  }
440
438
  if (!handlerResult.serializerSet) {
441
- handlerResult.resolveWithSerializer(defaultSerializer);
442
- }
443
- const realResponse = await handlerResult.responsePromise;
444
- if (realResponse) {
445
- return realResponse;
439
+ return fetchAPI.Response.json(handlerResult.jsonObj, handlerResult.init);
446
440
  }
441
+ return handlerResult.responsePromise;
447
442
  }
448
443
  else if (handlerResult) {
449
444
  return handlerResult;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "fets",
3
- "version": "0.0.5",
3
+ "version": "0.0.6",
4
4
  "description": "TypeScript HTTP Framework focusing on e2e type-safety, easy setup, performance & great developer experience",
5
5
  "sideEffects": false,
6
6
  "dependencies": {
7
7
  "@ardatan/fast-json-stringify": "^0.0.3",
8
8
  "@whatwg-node/fetch": "^0.8.2",
9
- "@whatwg-node/server": "^0.7.3",
9
+ "@whatwg-node/server": "^0.7.4",
10
10
  "ajv": "^8.12.0",
11
11
  "ajv-formats": "^2.1.1",
12
12
  "json-schema-to-ts": "2.7.2",