@delta-comic/request 0.0.1 → 0.0.3

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/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import axios, { isAxiosError, isCancel } from "axios";
2
- function mitt_default(e) {
1
+ import e, { isAxiosError as t, isCancel as n } from "axios";
2
+ function r(e) {
3
3
  return {
4
4
  all: e ||= /* @__PURE__ */ new Map(),
5
5
  on: function(t, n) {
@@ -20,9 +20,9 @@ function mitt_default(e) {
20
20
  }
21
21
  };
22
22
  }
23
- var SmartAbortController = class {
23
+ var i = class {
24
24
  _controller = new AbortController();
25
- mitt = mitt_default();
25
+ mitt = r();
26
26
  get signal() {
27
27
  return this._controller.signal;
28
28
  }
@@ -38,32 +38,32 @@ var SmartAbortController = class {
38
38
  };
39
39
  this.mitt.on("abort", t);
40
40
  }
41
- }, AbortError = class extends Error {
41
+ }, a = class extends Error {
42
42
  constructor(e = "The operation was aborted") {
43
43
  super(e), this.name = "AbortError";
44
44
  }
45
45
  };
46
- function delay(e, { signal: t } = {}) {
46
+ function o(e, { signal: t } = {}) {
47
47
  return new Promise((n, r) => {
48
48
  let i = () => {
49
- r(new AbortError());
50
- }, a = () => {
51
- clearTimeout(o), i();
49
+ r(new a());
50
+ }, o = () => {
51
+ clearTimeout(s), i();
52
52
  };
53
53
  if (t?.aborted) return i();
54
- let o = setTimeout(() => {
55
- t?.removeEventListener("abort", a), n();
54
+ let s = setTimeout(() => {
55
+ t?.removeEventListener("abort", o), n();
56
56
  }, e);
57
- t?.addEventListener("abort", a, { once: !0 });
57
+ t?.addEventListener("abort", o, { once: !0 });
58
58
  });
59
59
  }
60
- const checkType = {
60
+ const s = {
61
61
  isPost: (e) => /^post$/i.test(e.config.method ?? ""),
62
62
  isPut: (e) => /^put$/i.test(e.config.method ?? ""),
63
63
  isGet: (e) => /^get$/i.test(e.config.method ?? "")
64
- }, interceptors = {
64
+ }, c = {
65
65
  checkIsAxiosError(e) {
66
- return "__isAxiosError" in e ? e.__isAxiosError : e.__isAxiosError = !isCancel(e) && isAxiosError(e);
66
+ return "__isAxiosError" in e ? e.__isAxiosError : e.__isAxiosError = !n(e) && t(e);
67
67
  },
68
68
  async useUnreadableRetry(e, t = 0) {
69
69
  try {
@@ -90,7 +90,7 @@ const checkType = {
90
90
  createAutoRetry(e, t = 3) {
91
91
  return async (n) => {
92
92
  if (!n.config || n.config.disretry || (n.config.__retryCount ?? 0) >= t) throw Promise.reject(n);
93
- return n.config.__retryCount = (n.config.__retryCount ?? 0) + 1, await delay(500 * n.config.__retryCount), e(n.config);
93
+ return n.config.__retryCount = (n.config.__retryCount ?? 0) + 1, await o(500 * n.config.__retryCount), e(n.config);
94
94
  };
95
95
  },
96
96
  isClientError(e) {
@@ -102,19 +102,19 @@ const checkType = {
102
102
  if (e.code === "ERR_NETWORK" && !e.response) throw Promise.reject(e);
103
103
  return Promise.reject(e);
104
104
  }
105
- }, createAxios = (t, n = {}, r) => {
106
- let i = axios.create(n);
107
- return r?.(i), i.interceptors.request.use(async (e) => (e.baseURL ??= await t(), e)), n.noPassClientError || i.interceptors.response.use(void 0, interceptors.isClientError), i.interceptors.response.use(void 0, interceptors.createAutoRetry(i, 10)), {
108
- get: async (e, t = {}) => interceptors.useUnreadableRetry(() => i.get(e, t)),
109
- post: async (e, t, n = {}) => interceptors.useUnreadableRetry(() => i.post(e, t, n)),
110
- postForm: async (e, t, n = {}) => interceptors.useUnreadableRetry(() => i.postForm(e, t, n)),
111
- put: async (e, t, n = {}) => interceptors.useUnreadableRetry(() => i.put(e, t, n)),
112
- putForm: async (e, t, n = {}) => interceptors.useUnreadableRetry(() => i.putForm(e, t, n)),
113
- delete: async (e, t = {}) => interceptors.useUnreadableRetry(() => i.delete(e, t)),
114
- patch: async (e, t, n = {}) => interceptors.useUnreadableRetry(() => i.patch(e, t, n)),
115
- patchForm: async (e, t, n = {}) => interceptors.useUnreadableRetry(() => i.patchForm(e, t, n))
105
+ }, l = (t, n = {}, r) => {
106
+ let i = e.create(n);
107
+ return r?.(i), i.interceptors.request.use(async (e) => (e.baseURL ??= await t(), e)), n.noPassClientError || i.interceptors.response.use(void 0, c.isClientError), i.interceptors.response.use(void 0, c.createAutoRetry(i, 10)), {
108
+ get: async (e, t = {}) => c.useUnreadableRetry(() => i.get(e, t)),
109
+ post: async (e, t, n = {}) => c.useUnreadableRetry(() => i.post(e, t, n)),
110
+ postForm: async (e, t, n = {}) => c.useUnreadableRetry(() => i.postForm(e, t, n)),
111
+ put: async (e, t, n = {}) => c.useUnreadableRetry(() => i.put(e, t, n)),
112
+ putForm: async (e, t, n = {}) => c.useUnreadableRetry(() => i.putForm(e, t, n)),
113
+ delete: async (e, t = {}) => c.useUnreadableRetry(() => i.delete(e, t)),
114
+ patch: async (e, t, n = {}) => c.useUnreadableRetry(() => i.patch(e, t, n)),
115
+ patchForm: async (e, t, n = {}) => c.useUnreadableRetry(() => i.patchForm(e, t, n))
116
116
  };
117
117
  };
118
- export { SmartAbortController, checkType, createAxios, interceptors };
118
+ export { i as SmartAbortController, s as checkType, l as createAxios, c as interceptors };
119
119
 
120
120
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../node_modules/.pnpm/mitt@3.0.1/node_modules/mitt/dist/mitt.mjs","../lib/abort.ts","../../../node_modules/.pnpm/es-toolkit@1.40.0/node_modules/es-toolkit/dist/error/AbortError.mjs","../../../node_modules/.pnpm/es-toolkit@1.40.0/node_modules/es-toolkit/dist/promise/delay.mjs","../lib/axios.ts"],"sourcesContent":["export default function(n){return{all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e])},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]))},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e)}),(i=n.get(\"*\"))&&i.slice().map(function(n){n(t,e)})}}}\n//# sourceMappingURL=mitt.mjs.map\n","import mitt from 'mitt'\n\nexport class SmartAbortController implements AbortController {\n private _controller = new AbortController()\n private mitt = mitt<{ abort: void }>()\n public get signal() {\n return this._controller.signal\n }\n public abort(reason?: any): void {\n this._controller.abort(reason)\n this._controller = new AbortController()\n this.mitt.emit('abort')\n }\n public onAbort(fn: () => any) {\n this.mitt.on('abort', fn)\n return () => this.mitt.off('abort', fn)\n }\n public onAbortOnce(fn: () => any) {\n const handler = async () => {\n await fn()\n this.mitt.off('abort', handler)\n }\n this.mitt.on('abort', handler)\n }\n}","class AbortError extends Error {\n constructor(message = 'The operation was aborted') {\n super(message);\n this.name = 'AbortError';\n }\n}\n\nexport { AbortError };\n","import { AbortError } from '../error/AbortError.mjs';\n\nfunction delay(ms, { signal } = {}) {\n return new Promise((resolve, reject) => {\n const abortError = () => {\n reject(new AbortError());\n };\n const abortHandler = () => {\n clearTimeout(timeoutId);\n abortError();\n };\n if (signal?.aborted) {\n return abortError();\n }\n const timeoutId = setTimeout(() => {\n signal?.removeEventListener('abort', abortHandler);\n resolve();\n }, ms);\n signal?.addEventListener('abort', abortHandler, { once: true });\n });\n}\n\nexport { delay };\n","import axios, {\n type AxiosError,\n isCancel,\n isAxiosError,\n type AxiosResponse,\n type AxiosInstance,\n type CreateAxiosDefaults,\n type AxiosRequestConfig\n} from 'axios'\nimport { delay } from 'es-toolkit'\n\nexport const checkType = {\n isPost: (v: { config: { method?: string } }) => /^post$/i.test(v.config.method ?? ''),\n isPut: (v: { config: { method?: string } }) => /^put$/i.test(v.config.method ?? ''),\n isGet: (v: { config: { method?: string } }) => /^get$/i.test(v.config.method ?? '')\n}\nexport const interceptors = {\n checkIsAxiosError<T extends object>(err: any): err is AxiosError<T, any> {\n if ('__isAxiosError' in err) return <boolean>err.__isAxiosError\n return (err.__isAxiosError = !isCancel(err) && isAxiosError(err))\n },\n async useUnreadableRetry<T extends () => Promise<AxiosResponse>>(\n fn: T,\n times = 0\n ): Promise<Awaited<ReturnType<T>>['data']> {\n try {\n return (await fn()).data\n } catch (error) {\n if (error instanceof Error && error.message.includes('Illegal invocation')) {\n if (times > 20) {\n throw error\n }\n return await this.useUnreadableRetry(fn, times + 1)\n }\n throw error\n }\n },\n async useForceRetry<T extends () => Promise<AxiosResponse>>(\n fn: T,\n times = 0\n ): Promise<Awaited<ReturnType<T>>['data']> {\n try {\n return (await fn()).data\n } catch (error) {\n if (error instanceof Error) {\n if (times > 20) {\n throw error\n }\n return await this.useForceRetry(fn, times + 1)\n }\n throw error\n }\n },\n createAutoRetry(api: AxiosInstance, times = 3) {\n return async (err: any) => {\n if (!err.config || err.config.disretry || (err.config.__retryCount ?? 0) >= times)\n throw Promise.reject(err)\n err.config.__retryCount = (err.config.__retryCount ?? 0) + 1\n await delay(500 * err.config.__retryCount)\n return api(err.config)\n }\n },\n isClientError(err: any) {\n if (err?.response?.status?.toString().startsWith('4')) throw Promise.reject(err)\n return Promise.reject(err)\n },\n passCorsError(err: any) {\n if (!this.checkIsAxiosError(err)) return Promise.reject(err)\n if (err.code === 'ERR_NETWORK' && !err.response) throw Promise.reject(err)\n return Promise.reject(err)\n }\n}\n\nexport type Requester = ReturnType<typeof createAxios>\nexport const createAxios = (\n fork: () => Promise<string> | string,\n config: CreateAxiosDefaults & Partial<{ noPassClientError: boolean }> = {},\n middle?: (axios: AxiosInstance) => AxiosInstance\n) => {\n const api = axios.create(config)\n middle?.(api)\n\n api.interceptors.request.use(async requestConfig => {\n requestConfig.baseURL ??= await fork()\n return requestConfig\n })\n if (!config.noPassClientError)\n api.interceptors.response.use(undefined, interceptors.isClientError)\n api.interceptors.response.use(undefined, interceptors.createAutoRetry(api, 10))\n return {\n get: async <T>(url: string, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.get<T>(url, config)),\n post: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.post<T>(url, data, config)),\n postForm: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.postForm<T>(url, data, config)),\n put: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.put<T>(url, data, config)),\n putForm: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.putForm<T>(url, data, config)),\n delete: async <T>(url: string, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.delete<T>(url, config)),\n patch: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.patch<T>(url, data, config)),\n patchForm: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.patchForm<T>(url, data, config))\n }\n}"],"x_google_ignoreList":[0,2,3],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../node_modules/.pnpm/mitt@3.0.1/node_modules/mitt/dist/mitt.mjs","../lib/abort.ts","../../../node_modules/.pnpm/es-toolkit@1.40.0/node_modules/es-toolkit/dist/error/AbortError.mjs","../../../node_modules/.pnpm/es-toolkit@1.40.0/node_modules/es-toolkit/dist/promise/delay.mjs","../lib/axios.ts"],"sourcesContent":["export default function(n){return{all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e])},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]))},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e)}),(i=n.get(\"*\"))&&i.slice().map(function(n){n(t,e)})}}}\n//# sourceMappingURL=mitt.mjs.map\n","import mitt from 'mitt'\n\nexport class SmartAbortController implements AbortController {\n private _controller = new AbortController()\n private mitt = mitt<{ abort: void }>()\n public get signal() {\n return this._controller.signal\n }\n public abort(reason?: any): void {\n this._controller.abort(reason)\n this._controller = new AbortController()\n this.mitt.emit('abort')\n }\n public onAbort(fn: () => any) {\n this.mitt.on('abort', fn)\n return () => this.mitt.off('abort', fn)\n }\n public onAbortOnce(fn: () => any) {\n const handler = async () => {\n await fn()\n this.mitt.off('abort', handler)\n }\n this.mitt.on('abort', handler)\n }\n}","class AbortError extends Error {\n constructor(message = 'The operation was aborted') {\n super(message);\n this.name = 'AbortError';\n }\n}\n\nexport { AbortError };\n","import { AbortError } from '../error/AbortError.mjs';\n\nfunction delay(ms, { signal } = {}) {\n return new Promise((resolve, reject) => {\n const abortError = () => {\n reject(new AbortError());\n };\n const abortHandler = () => {\n clearTimeout(timeoutId);\n abortError();\n };\n if (signal?.aborted) {\n return abortError();\n }\n const timeoutId = setTimeout(() => {\n signal?.removeEventListener('abort', abortHandler);\n resolve();\n }, ms);\n signal?.addEventListener('abort', abortHandler, { once: true });\n });\n}\n\nexport { delay };\n","import axios, {\n type AxiosError,\n isCancel,\n isAxiosError,\n type AxiosResponse,\n type AxiosInstance,\n type CreateAxiosDefaults,\n type AxiosRequestConfig\n} from 'axios'\nimport { delay } from 'es-toolkit'\n\nexport const checkType = {\n isPost: (v: { config: { method?: string } }) => /^post$/i.test(v.config.method ?? ''),\n isPut: (v: { config: { method?: string } }) => /^put$/i.test(v.config.method ?? ''),\n isGet: (v: { config: { method?: string } }) => /^get$/i.test(v.config.method ?? '')\n}\nexport const interceptors = {\n checkIsAxiosError<T extends object>(err: any): err is AxiosError<T, any> {\n if ('__isAxiosError' in err) return <boolean>err.__isAxiosError\n return (err.__isAxiosError = !isCancel(err) && isAxiosError(err))\n },\n async useUnreadableRetry<T extends () => Promise<AxiosResponse>>(\n fn: T,\n times = 0\n ): Promise<Awaited<ReturnType<T>>['data']> {\n try {\n return (await fn()).data\n } catch (error) {\n if (error instanceof Error && error.message.includes('Illegal invocation')) {\n if (times > 20) {\n throw error\n }\n return await this.useUnreadableRetry(fn, times + 1)\n }\n throw error\n }\n },\n async useForceRetry<T extends () => Promise<AxiosResponse>>(\n fn: T,\n times = 0\n ): Promise<Awaited<ReturnType<T>>['data']> {\n try {\n return (await fn()).data\n } catch (error) {\n if (error instanceof Error) {\n if (times > 20) {\n throw error\n }\n return await this.useForceRetry(fn, times + 1)\n }\n throw error\n }\n },\n createAutoRetry(api: AxiosInstance, times = 3) {\n return async (err: any) => {\n if (!err.config || err.config.disretry || (err.config.__retryCount ?? 0) >= times)\n throw Promise.reject(err)\n err.config.__retryCount = (err.config.__retryCount ?? 0) + 1\n await delay(500 * err.config.__retryCount)\n return api(err.config)\n }\n },\n isClientError(err: any) {\n if (err?.response?.status?.toString().startsWith('4')) throw Promise.reject(err)\n return Promise.reject(err)\n },\n passCorsError(err: any) {\n if (!this.checkIsAxiosError(err)) return Promise.reject(err)\n if (err.code === 'ERR_NETWORK' && !err.response) throw Promise.reject(err)\n return Promise.reject(err)\n }\n}\n\nexport type Requester = ReturnType<typeof createAxios>\nexport const createAxios = (\n fork: () => Promise<string> | string,\n config: CreateAxiosDefaults & Partial<{ noPassClientError: boolean }> = {},\n middle?: (axios: AxiosInstance) => AxiosInstance\n) => {\n const api = axios.create(config)\n middle?.(api)\n\n api.interceptors.request.use(async requestConfig => {\n requestConfig.baseURL ??= await fork()\n return requestConfig\n })\n if (!config.noPassClientError)\n api.interceptors.response.use(undefined, interceptors.isClientError)\n api.interceptors.response.use(undefined, interceptors.createAutoRetry(api, 10))\n return {\n get: async <T>(url: string, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.get<T>(url, config)),\n post: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.post<T>(url, data, config)),\n postForm: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.postForm<T>(url, data, config)),\n put: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.put<T>(url, data, config)),\n putForm: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.putForm<T>(url, data, config)),\n delete: async <T>(url: string, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.delete<T>(url, config)),\n patch: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.patch<T>(url, data, config)),\n patchForm: async <T>(url: string, data?: any, config: AxiosRequestConfig = {}) =>\n interceptors.useUnreadableRetry(() => api.patchForm<T>(url, data, config))\n }\n}"],"x_google_ignoreList":[0,2,3],"mappings":"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"}
package/dist/pack.tgz CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@delta-comic/request",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "空阙虱楼",
5
5
  "homepage": "https://github.com/delta-comic/delta-comic-core",
6
6
  "license": "AGPL-3.0-only",
@@ -34,11 +34,12 @@
34
34
  "mitt": "^3.0.1"
35
35
  },
36
36
  "devDependencies": {
37
- "axios": "^1.13.5"
37
+ "axios": "^1.13.5",
38
+ "vite": "8.0.0-beta.15"
38
39
  },
39
40
  "peerDependencies": {
40
41
  "axios": "^1.13",
41
- "@delta-comic/utils": "0.0.1"
42
+ "@delta-comic/utils": "0.0.5"
42
43
  },
43
44
  "release": {
44
45
  "tagFormat": "request-${version}"
@@ -49,8 +50,8 @@
49
50
  "readme": "./README.md",
50
51
  "scripts": {
51
52
  "build": "vite build && pnpm pack --out ./dist/pack.tgz",
52
- "version:major": "pnpm version major --no-git-tag-version",
53
- "version:minor": "pnpm version minor --no-git-tag-version",
54
- "version:patch": "pnpm version patch --no-git-tag-version"
53
+ "version:major": "pnpm version major --no-git-tag-version || true",
54
+ "version:minor": "pnpm version minor --no-git-tag-version || true",
55
+ "version:patch": "pnpm version patch --no-git-tag-version || true"
55
56
  }
56
57
  }