+4
-0
@@ -26,3 +26,7 @@ # ๐ Changelog | ||
| ## [1.0.9] - 2025-03-26 | ||
| ### ๐ Fixed | ||
| - added FexError type. | ||
| <!-- ## [1.0.1] - YYYY-MM-DD | ||
@@ -29,0 +33,0 @@ ### ๐ Fixed |
+10
-2
@@ -0,1 +1,9 @@ | ||
| interface FexError<T = any> extends Error { | ||
| isFexError: boolean; | ||
| response?: FexResponse<T>; | ||
| request?: Response; | ||
| config: FetchConfig; | ||
| cause?: any; | ||
| } | ||
| type FexErrorHandler<T = any> = (error: FexError<T>) => unknown; | ||
| type XOR<T, U> = (T | U) extends object ? (T extends U ? never : T) | (U extends T ? never : U) : T | U; | ||
@@ -33,6 +41,6 @@ type FetchConfig = Omit<RequestInit, "headers" | "signal"> & { | ||
| request: { | ||
| use: (onFulfilled: (config: FetchConfig) => FetchConfig, onRejected?: (error: unknown) => unknown) => void; | ||
| use: (onFulfilled: (config: FetchConfig) => FetchConfig, onRejected?: (error: FexError) => unknown) => void; | ||
| }; | ||
| response: { | ||
| use: (onFulfilled: <T>(response: FexResponse<T>) => FexResponse<T> | Promise<FexResponse<T>>, onRejected?: (error: unknown) => unknown) => void; | ||
| use: (onFulfilled: <T>(response: FexResponse<T>) => FexResponse<T> | Promise<FexResponse<T>>, onRejected?: FexErrorHandler) => void; | ||
| }; | ||
@@ -39,0 +47,0 @@ }; |
+1
-1
@@ -130,3 +130,3 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ | ||
| if (onRejected) { | ||
| return Promise.reject(onRejected(error)); // โ ๋ฐํ๊ฐ์ ๋ฌด์กฐ๊ฑด Promise.reject()๋ก ๋ํ | ||
| return Promise.reject(onRejected(error)); | ||
| } | ||
@@ -133,0 +133,0 @@ throw error; |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"fex.js","sourceRoot":"","sources":["../src/fex.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"fex.js","sourceRoot":"","sources":["../src/fex.ts"],"names":[],"mappings":"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"} |
+1
-1
| { | ||
| "name": "fexjs", | ||
| "version": "1.0.8", | ||
| "version": "1.0.9", | ||
| "description": "A lightweight and powerful Fetch API wrapper with interceptors, cancel tokens, and timeout support.", | ||
@@ -5,0 +5,0 @@ "main": "dist/fex.js", |
+17
-8
| /* eslint-disable @typescript-eslint/no-unused-vars */ | ||
| interface FexError<T = any> extends Error { | ||
| isFexError: boolean | ||
| response?: FexResponse<T> | ||
| request?: Response | ||
| config: FetchConfig | ||
| cause?: any | ||
| } | ||
| type FexErrorHandler<T = any> = (error: FexError<T>) => unknown | ||
| type XOR<T, U> = (T | U) extends object | ||
@@ -53,3 +63,3 @@ ? (T extends U ? never : T) | (U extends T ? never : U) | ||
| onFulfilled: (config: FetchConfig) => FetchConfig, | ||
| onRejected?: (error: unknown) => unknown | ||
| onRejected?: (error: FexError) => unknown | ||
| ) => { | ||
@@ -62,3 +72,3 @@ this.requestInterceptors.push({ onFulfilled, onRejected }); | ||
| onFulfilled: <T>(response: FexResponse<T>) => FexResponse<T> | Promise<FexResponse<T>>, | ||
| onRejected?: (error: unknown) => unknown | ||
| onRejected?: FexErrorHandler | ||
| ) => { | ||
@@ -72,7 +82,7 @@ this.responseInterceptors.push({ onFulfilled, onRejected }); | ||
| onFulfilled: (config: FetchConfig) => FetchConfig; | ||
| onRejected?: (error: unknown) => unknown; | ||
| onRejected?: (error: FexError) => unknown; | ||
| }[] = []; | ||
| private responseInterceptors: { | ||
| onFulfilled: <T>(response: FexResponse<T>) => FexResponse<T> | Promise<FexResponse<T>>; | ||
| onRejected?: (error: unknown) => unknown; | ||
| onRejected?: FexErrorHandler; | ||
| }[] = []; | ||
@@ -111,3 +121,3 @@ | ||
| } catch (error) { | ||
| if (onRejected) return Promise.reject(onRejected(error)); | ||
| if (onRejected) return Promise.reject(onRejected(error as FexError)); | ||
| throw error; | ||
@@ -187,3 +197,3 @@ } | ||
| if (onRejected) { | ||
| return Promise.reject(onRejected(error)); // โ ๋ฐํ๊ฐ์ ๋ฌด์กฐ๊ฑด Promise.reject()๋ก ๋ํ | ||
| return Promise.reject(onRejected(error as FexError)); | ||
| } | ||
@@ -193,3 +203,2 @@ throw error; | ||
| } | ||
@@ -204,3 +213,3 @@ return finalResponse; | ||
| for (const { onRejected } of this.responseInterceptors) { | ||
| if (onRejected) return Promise.reject(onRejected(error)); | ||
| if (onRejected) return Promise.reject(onRejected(error as FexError)); | ||
| } | ||
@@ -207,0 +216,0 @@ throw error; |
32695
1.47%493
3.35%