orion-design 0.1.55 → 0.1.57
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/Pagetable/hooks/usePagetable.d.ts +2 -2
- package/dist/components/Pagetable/hooks/usePagetable.js +16 -16
- package/dist/components/Pagetable/hooks/usePagetable.js.map +1 -1
- package/dist/request/error/ResponseError403.d.ts +6 -0
- package/dist/request/error/ResponseError403.js +10 -0
- package/dist/request/error/ResponseError403.js.map +1 -0
- package/dist/request/error/ResponseError404.d.ts +0 -1
- package/dist/request/error/ResponseError404.js.map +1 -1
- package/dist/request/error/ResponseErrorSessionException.d.ts +1 -1
- package/dist/request/error/ResponseErrorSessionException.js.map +1 -1
- package/dist/request/index.d.ts +1 -0
- package/dist/request/index.js +6 -4
- package/dist/request/index.js.map +1 -1
- package/dist/request/leaf7/Leaf7ErrorHandler.js +40 -36
- package/dist/request/leaf7/Leaf7ErrorHandler.js.map +1 -1
- package/dist/request/leaf7/index.d.ts +1 -0
- package/dist/request/leaf7/index.js.map +1 -1
- package/dist/version/version.d.ts +1 -1
- package/dist/version/version.js +1 -1
- package/dist/version/version.js.map +1 -1
- package/package.json +1 -1
@@ -19,8 +19,8 @@ interface UsePagetableOptions<Row, Tail> {
|
|
19
19
|
onLoadData: LoadDataFn<Row, Tail>;
|
20
20
|
afterSelectionChange?: (newSelection: Row[]) => void;
|
21
21
|
afterCurrentRowChange?: (currentRow: Row, oldCurrentRow: Row) => void;
|
22
|
-
|
23
|
-
|
22
|
+
defaultData?: Row[];
|
23
|
+
defaultPagination?: PaginationProps;
|
24
24
|
}
|
25
25
|
declare const usePagetable: <Row = any, Tail = any>(options: UsePagetableOptions<Row, Tail>) => {
|
26
26
|
data: Row[];
|
@@ -1,39 +1,39 @@
|
|
1
1
|
import { ref as o, reactive as v } from "vue";
|
2
|
-
import
|
2
|
+
import a from "../../../error/OrionError.js";
|
3
3
|
const z = (C) => {
|
4
|
-
const { tableRef: e, onLoadData: b, afterSelectionChange: l, afterCurrentRowChange: c,
|
4
|
+
const { tableRef: e, onLoadData: b, afterSelectionChange: l, afterCurrentRowChange: c, defaultData: r, defaultPagination: i } = C, s = o(r || []), g = o(
|
5
5
|
i || {
|
6
6
|
currentPage: 1,
|
7
7
|
pageSize: 10
|
8
8
|
}
|
9
|
-
),
|
10
|
-
|
11
|
-
}, p = (t,
|
12
|
-
u.value = t, c && c(t,
|
9
|
+
), f = o(), w = o([]), u = o(), d = (t) => {
|
10
|
+
w.value = t, l && l(t);
|
11
|
+
}, p = (t, n) => {
|
12
|
+
u.value = t, c && c(t, n);
|
13
13
|
}, D = () => {
|
14
14
|
if (!e)
|
15
|
-
throw new
|
15
|
+
throw new a("调用clearSelection失败,tableRef为空");
|
16
16
|
e.value.clearSelection();
|
17
|
-
}, R = (t,
|
17
|
+
}, R = (t, n) => {
|
18
18
|
if (!e)
|
19
|
-
throw new
|
20
|
-
e.value.toggleRowSelection(t,
|
19
|
+
throw new a("调用toggleRowSelection失败,tableRef为空");
|
20
|
+
e.value.toggleRowSelection(t, n);
|
21
21
|
}, S = () => {
|
22
22
|
if (!e)
|
23
|
-
throw new
|
23
|
+
throw new a("调用toggleAllSelection失败,tableRef为空");
|
24
24
|
e.value.toggleAllSelection();
|
25
25
|
}, m = () => {
|
26
26
|
if (!e)
|
27
|
-
throw new
|
27
|
+
throw new a("调用getSelectionRows失败,tableRef为空");
|
28
28
|
return e.value.getSelectionRows();
|
29
29
|
}, h = (t) => {
|
30
30
|
if (!e)
|
31
|
-
throw new
|
31
|
+
throw new a("调用setCurrentRow失败,tableRef为空");
|
32
32
|
e.value.setCurrentRow(t);
|
33
33
|
}, A = v({
|
34
34
|
data: s,
|
35
35
|
pagination: g,
|
36
|
-
tailData:
|
36
|
+
tailData: f,
|
37
37
|
toggleRowSelection: R,
|
38
38
|
toggleAllSelection: S,
|
39
39
|
setCurrentRow: h
|
@@ -41,8 +41,8 @@ const z = (C) => {
|
|
41
41
|
return v({
|
42
42
|
data: s,
|
43
43
|
pagination: g,
|
44
|
-
tailData:
|
45
|
-
selection:
|
44
|
+
tailData: f,
|
45
|
+
selection: w,
|
46
46
|
currentRow: u,
|
47
47
|
onSelectionChange: d,
|
48
48
|
onCurrentRowChange: p,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"usePagetable.js","sources":["../../../../src/components/Pagetable/hooks/usePagetable.ts"],"sourcesContent":["import { reactive, Ref, ref, ShallowRef } from 'vue'\r\nimport { PagetableInstance } from '../Pagetable'\r\nimport OrionError from '../../../error/OrionError'\r\n\r\ninterface PaginationProps {\r\n currentPage: number\r\n pageSize: number\r\n pageSizes?: number[]\r\n total?: number\r\n}\r\n\r\ntype LoadDataFn<Row, Tail> = (self: {\r\n data: Row[]\r\n pagination: PaginationProps\r\n tailData: Tail | undefined\r\n toggleRowSelection: (row: Row, selected?: boolean) => void\r\n toggleAllSelection: () => void\r\n setCurrentRow: (row: Row) => void\r\n}) => Promise<void>\r\n\r\ninterface UsePagetableOptions<Row, Tail> {\r\n tableRef?: Readonly<ShallowRef<PagetableInstance | null>>\r\n onLoadData: LoadDataFn<Row, Tail>\r\n afterSelectionChange?: (newSelection: Row[]) => void\r\n afterCurrentRowChange?: (currentRow: Row, oldCurrentRow: Row) => void\r\n
|
1
|
+
{"version":3,"file":"usePagetable.js","sources":["../../../../src/components/Pagetable/hooks/usePagetable.ts"],"sourcesContent":["import { reactive, Ref, ref, ShallowRef } from 'vue'\r\nimport { PagetableInstance } from '../Pagetable'\r\nimport OrionError from '../../../error/OrionError'\r\n\r\ninterface PaginationProps {\r\n currentPage: number\r\n pageSize: number\r\n pageSizes?: number[]\r\n total?: number\r\n}\r\n\r\ntype LoadDataFn<Row, Tail> = (self: {\r\n data: Row[]\r\n pagination: PaginationProps\r\n tailData: Tail | undefined\r\n toggleRowSelection: (row: Row, selected?: boolean) => void\r\n toggleAllSelection: () => void\r\n setCurrentRow: (row: Row) => void\r\n}) => Promise<void>\r\n\r\ninterface UsePagetableOptions<Row, Tail> {\r\n tableRef?: Readonly<ShallowRef<PagetableInstance | null>>\r\n onLoadData: LoadDataFn<Row, Tail>\r\n afterSelectionChange?: (newSelection: Row[]) => void\r\n afterCurrentRowChange?: (currentRow: Row, oldCurrentRow: Row) => void\r\n defaultData?: Row[]\r\n defaultPagination?: PaginationProps\r\n}\r\n\r\nconst usePagetable = <Row = any, Tail = any>(options: UsePagetableOptions<Row, Tail>) => {\r\n const { tableRef, onLoadData, afterSelectionChange, afterCurrentRowChange, defaultData, defaultPagination } = options\r\n\r\n const data = ref<Row[]>(defaultData ? defaultData : []) as Ref<Row[]>\r\n const pagination = ref<PaginationProps>(\r\n defaultPagination\r\n ? defaultPagination\r\n : {\r\n currentPage: 1,\r\n pageSize: 10,\r\n }\r\n )\r\n const tailData = ref<Tail>()\r\n const selection = ref<Row[]>([]) as Ref<Row[]>\r\n const currentRow = ref<Row>()\r\n\r\n const onSelectionChange = (newSelection: Row[]) => {\r\n selection.value = newSelection\r\n afterSelectionChange && afterSelectionChange(newSelection)\r\n }\r\n const onCurrentRowChange = (newCurrentRow: Row, oldCurrentRow: Row) => {\r\n currentRow.value = newCurrentRow\r\n afterCurrentRowChange && afterCurrentRowChange(newCurrentRow, oldCurrentRow)\r\n }\r\n\r\n const clearSelection = () => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用clearSelection失败,tableRef为空`)\r\n }\r\n tableRef.value!.clearSelection()\r\n }\r\n const toggleRowSelection = (row: Row, selected?: boolean) => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用toggleRowSelection失败,tableRef为空`)\r\n }\r\n tableRef.value!.toggleRowSelection(row, selected)\r\n }\r\n const toggleAllSelection = () => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用toggleAllSelection失败,tableRef为空`)\r\n }\r\n tableRef.value!.toggleAllSelection()\r\n }\r\n const getSelectionRows = () => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用getSelectionRows失败,tableRef为空`)\r\n }\r\n return tableRef.value!.getSelectionRows() as Row[]\r\n }\r\n const setCurrentRow = (row: Row) => {\r\n if (!tableRef) {\r\n throw new OrionError(`调用setCurrentRow失败,tableRef为空`)\r\n }\r\n tableRef.value!.setCurrentRow(row)\r\n }\r\n\r\n const self = reactive({\r\n data,\r\n pagination,\r\n tailData,\r\n toggleRowSelection,\r\n toggleAllSelection,\r\n setCurrentRow,\r\n })\r\n\r\n const loadData = async () => {\r\n await onLoadData(self)\r\n }\r\n\r\n return reactive({\r\n data,\r\n pagination,\r\n tailData,\r\n selection,\r\n currentRow,\r\n onSelectionChange,\r\n onCurrentRowChange,\r\n clearSelection,\r\n toggleRowSelection,\r\n toggleAllSelection,\r\n getSelectionRows,\r\n setCurrentRow,\r\n loadData,\r\n })\r\n}\r\n\r\nexport default usePagetable\r\n"],"names":["usePagetable","options","tableRef","onLoadData","afterSelectionChange","afterCurrentRowChange","defaultData","defaultPagination","data","ref","pagination","tailData","selection","currentRow","onSelectionChange","newSelection","onCurrentRowChange","newCurrentRow","oldCurrentRow","clearSelection","OrionError","toggleRowSelection","row","selected","toggleAllSelection","getSelectionRows","setCurrentRow","self","reactive"],"mappings":";;AA6BM,MAAAA,IAAe,CAAwBC,MAA4C;AACvF,QAAM,EAAE,UAAAC,GAAU,YAAAC,GAAY,sBAAAC,GAAsB,uBAAAC,GAAuB,aAAAC,GAAa,mBAAAC,EAAsB,IAAAN,GAExGO,IAAOC,EAAWH,KAA4B,CAAE,CAAA,GAChDI,IAAaD;AAAA,IACjBF,KAEI;AAAA,MACE,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EAAA,GAEAI,IAAWF,KACXG,IAAYH,EAAW,CAAA,CAAE,GACzBI,IAAaJ,KAEbK,IAAoB,CAACC,MAAwB;AACjD,IAAAH,EAAU,QAAQG,GAClBX,KAAwBA,EAAqBW,CAAY;AAAA,EAAA,GAErDC,IAAqB,CAACC,GAAoBC,MAAuB;AACrE,IAAAL,EAAW,QAAQI,GACMZ,KAAAA,EAAsBY,GAAeC,CAAa;AAAA,EAAA,GAGvEC,IAAiB,MAAM;AAC3B,QAAI,CAACjB;AACG,YAAA,IAAIkB,EAAW,+BAA+B;AAEtD,IAAAlB,EAAS,MAAO;EAAe,GAE3BmB,IAAqB,CAACC,GAAUC,MAAuB;AAC3D,QAAI,CAACrB;AACG,YAAA,IAAIkB,EAAW,mCAAmC;AAEjD,IAAAlB,EAAA,MAAO,mBAAmBoB,GAAKC,CAAQ;AAAA,EAAA,GAE5CC,IAAqB,MAAM;AAC/B,QAAI,CAACtB;AACG,YAAA,IAAIkB,EAAW,mCAAmC;AAE1D,IAAAlB,EAAS,MAAO;EAAmB,GAE/BuB,IAAmB,MAAM;AAC7B,QAAI,CAACvB;AACG,YAAA,IAAIkB,EAAW,iCAAiC;AAEjD,WAAAlB,EAAS,MAAO;EAAiB,GAEpCwB,IAAgB,CAACJ,MAAa;AAClC,QAAI,CAACpB;AACG,YAAA,IAAIkB,EAAW,8BAA8B;AAE5C,IAAAlB,EAAA,MAAO,cAAcoB,CAAG;AAAA,EAAA,GAG7BK,IAAOC,EAAS;AAAA,IACpB,MAAApB;AAAA,IACA,YAAAE;AAAA,IACA,UAAAC;AAAA,IACA,oBAAAU;AAAA,IACA,oBAAAG;AAAA,IACA,eAAAE;AAAA,EAAA,CACD;AAMD,SAAOE,EAAS;AAAA,IACd,MAAApB;AAAA,IACA,YAAAE;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,YAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,oBAAAE;AAAA,IACA,gBAAAG;AAAA,IACA,oBAAAE;AAAA,IACA,oBAAAG;AAAA,IACA,kBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,UAjBe,YAAY;AAC3B,YAAMvB,EAAWwB,CAAI;AAAA,IAAA;AAAA,EAgBrB,CACD;AACH;"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import o from "./ResponseError.js";
|
2
|
+
class e extends o {
|
3
|
+
constructor(s, t, r) {
|
4
|
+
super(s, t, r), Error.captureStackTrace && Error.captureStackTrace(this, e), this.name = "ResponseError403", this.response = r;
|
5
|
+
}
|
6
|
+
}
|
7
|
+
export {
|
8
|
+
e as default
|
9
|
+
};
|
10
|
+
//# sourceMappingURL=ResponseError403.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ResponseError403.js","sources":["../../../src/request/error/ResponseError403.ts"],"sourcesContent":["import type { AxiosResponse } from 'axios'\r\nimport ResponseError from './ResponseError'\r\nexport default class ResponseError403 extends ResponseError {\r\n declare response: AxiosResponse\r\n\r\n constructor(message: string, cause: Error, response: AxiosResponse) {\r\n super(message, cause, response)\r\n\r\n // Maintains proper stack trace for where our error was thrown (only available on V8)\r\n // @ts-ignore\r\n if (Error.captureStackTrace) {\r\n // @ts-ignore\r\n Error.captureStackTrace(this, ResponseError403)\r\n }\r\n\r\n this.name = 'ResponseError403'\r\n\r\n // CustomData\r\n this.response = response\r\n }\r\n}\r\n"],"names":["ResponseError403","ResponseError","message","cause","response"],"mappings":";AAEA,MAAqBA,UAAyBC,EAAc;AAAA,EAG1D,YAAYC,GAAiBC,GAAcC,GAAyB;AAC5D,UAAAF,GAASC,GAAOC,CAAQ,GAI1B,MAAM,qBAEF,MAAA,kBAAkB,MAAMJ,CAAgB,GAGhD,KAAK,OAAO,oBAGZ,KAAK,WAAWI;AAAA,EAClB;AACF;"}
|
@@ -2,6 +2,5 @@ import { AxiosResponse } from 'axios';
|
|
2
2
|
import { default as ResponseError } from './ResponseError';
|
3
3
|
export default class ResponseError404 extends ResponseError {
|
4
4
|
response: AxiosResponse;
|
5
|
-
reponseData: unknown;
|
6
5
|
constructor(message: string, cause: Error, response: AxiosResponse);
|
7
6
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ResponseError404.js","sources":["../../../src/request/error/ResponseError404.ts"],"sourcesContent":["import type { AxiosResponse } from 'axios'\r\nimport ResponseError from './ResponseError'\r\nexport default class ResponseError404 extends ResponseError {\r\n declare response: AxiosResponse\r\n
|
1
|
+
{"version":3,"file":"ResponseError404.js","sources":["../../../src/request/error/ResponseError404.ts"],"sourcesContent":["import type { AxiosResponse } from 'axios'\r\nimport ResponseError from './ResponseError'\r\nexport default class ResponseError404 extends ResponseError {\r\n declare response: AxiosResponse\r\n\r\n constructor(message: string, cause: Error, response: AxiosResponse) {\r\n super(message, cause, response)\r\n\r\n // Maintains proper stack trace for where our error was thrown (only available on V8)\r\n // @ts-ignore\r\n if (Error.captureStackTrace) {\r\n // @ts-ignore\r\n Error.captureStackTrace(this, ResponseError404)\r\n }\r\n\r\n this.name = 'ResponseError404'\r\n\r\n // CustomData\r\n this.response = response\r\n }\r\n}\r\n"],"names":["ResponseError404","ResponseError","message","cause","response"],"mappings":";AAEA,MAAqBA,UAAyBC,EAAc;AAAA,EAG1D,YAAYC,GAAiBC,GAAcC,GAAyB;AAC5D,UAAAF,GAASC,GAAOC,CAAQ,GAI1B,MAAM,qBAEF,MAAA,kBAAkB,MAAMJ,CAAgB,GAGhD,KAAK,OAAO,oBAGZ,KAAK,WAAWI;AAAA,EAClB;AACF;"}
|
@@ -3,5 +3,5 @@ import { default as ResponseError } from './ResponseError';
|
|
3
3
|
export default class ResponseErrorSessionException extends ResponseError {
|
4
4
|
response: AxiosResponse;
|
5
5
|
reponseData: unknown;
|
6
|
-
constructor(message: string, cause: Error, response: AxiosResponse, reponseData
|
6
|
+
constructor(message: string, cause: Error, response: AxiosResponse, reponseData?: unknown);
|
7
7
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ResponseErrorSessionException.js","sources":["../../../src/request/error/ResponseErrorSessionException.ts"],"sourcesContent":["import type { AxiosResponse } from 'axios'\r\nimport ResponseError from './ResponseError'\r\nexport default class ResponseErrorSessionException extends ResponseError {\r\n declare response: AxiosResponse\r\n declare reponseData: unknown\r\n\r\n constructor(message: string, cause: Error, response: AxiosResponse, reponseData
|
1
|
+
{"version":3,"file":"ResponseErrorSessionException.js","sources":["../../../src/request/error/ResponseErrorSessionException.ts"],"sourcesContent":["import type { AxiosResponse } from 'axios'\r\nimport ResponseError from './ResponseError'\r\nexport default class ResponseErrorSessionException extends ResponseError {\r\n declare response: AxiosResponse\r\n declare reponseData: unknown\r\n\r\n constructor(message: string, cause: Error, response: AxiosResponse, reponseData?: unknown) {\r\n super(message, cause, response)\r\n\r\n // Maintains proper stack trace for where our error was thrown (only available on V8)\r\n // @ts-ignore\r\n if (Error.captureStackTrace) {\r\n // @ts-ignore\r\n Error.captureStackTrace(this, ResponseErrorSessionException)\r\n }\r\n\r\n this.name = 'ResponseErrorSessionException'\r\n\r\n // CustomData\r\n this.response = response\r\n this.reponseData = reponseData\r\n }\r\n}\r\n"],"names":["ResponseErrorSessionException","ResponseError","message","cause","response","reponseData"],"mappings":";AAEA,MAAqBA,UAAsCC,EAAc;AAAA,EAIvE,YAAYC,GAAiBC,GAAcC,GAAyBC,GAAuB;AACnF,UAAAH,GAASC,GAAOC,CAAQ,GAI1B,MAAM,qBAEF,MAAA,kBAAkB,MAAMJ,CAA6B,GAG7D,KAAK,OAAO,iCAGZ,KAAK,WAAWI,GAChB,KAAK,cAAcC;AAAA,EACrB;AACF;"}
|
package/dist/request/index.d.ts
CHANGED
@@ -9,5 +9,6 @@ export { default as Leaf7ErrorHandler } from './leaf7/Leaf7ErrorHandler';
|
|
9
9
|
export { default as BizExceptionResponseError, default as ResponseErrorBizException } from './error/ResponseErrorBizException';
|
10
10
|
export { default as SessionExceptionResponseError, default as ResponseErrorSessionException } from './error/ResponseErrorSessionException';
|
11
11
|
export { default as ExceptionResponseError, default as ResponseErrorException } from './error/ResponseErrorException';
|
12
|
+
export { default as ResponseError403 } from './error/ResponseError403';
|
12
13
|
export { default as ResponseError404 } from './error/ResponseError404';
|
13
14
|
export { default as ResponseError500 } from './error/ResponseError500';
|
package/dist/request/index.js
CHANGED
@@ -9,8 +9,9 @@ import { default as D } from "./leaf7/Leaf7ErrorHandler.js";
|
|
9
9
|
import { default as P, default as y } from "./error/ResponseErrorBizException.js";
|
10
10
|
import { default as B, default as C } from "./error/ResponseErrorSessionException.js";
|
11
11
|
import { default as S, default as U } from "./error/ResponseErrorException.js";
|
12
|
-
import { default as h } from "./error/
|
13
|
-
import { default as k } from "./error/
|
12
|
+
import { default as h } from "./error/ResponseError403.js";
|
13
|
+
import { default as k } from "./error/ResponseError404.js";
|
14
|
+
import { default as F } from "./error/ResponseError500.js";
|
14
15
|
export {
|
15
16
|
P as BizExceptionResponseError,
|
16
17
|
i as DivisionErrorHandler,
|
@@ -20,8 +21,9 @@ export {
|
|
20
21
|
v as Leaf7EncryptResponseParser,
|
21
22
|
D as Leaf7ErrorHandler,
|
22
23
|
g as Leaf7ResponseParser,
|
23
|
-
h as
|
24
|
-
k as
|
24
|
+
h as ResponseError403,
|
25
|
+
k as ResponseError404,
|
26
|
+
F as ResponseError500,
|
25
27
|
y as ResponseErrorBizException,
|
26
28
|
U as ResponseErrorException,
|
27
29
|
B as ResponseErrorSessionException,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
|
@@ -1,51 +1,55 @@
|
|
1
|
-
var
|
2
|
-
var
|
3
|
-
var
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
import
|
9
|
-
import
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
1
|
+
var S = Object.defineProperty;
|
2
|
+
var g = (o, t, r) => t in o ? S(o, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : o[t] = r;
|
3
|
+
var f = (o, t, r) => g(o, typeof t != "symbol" ? t + "" : t, r);
|
4
|
+
import x from "./smCrypto/sm2/index.js";
|
5
|
+
import y from "./smCrypto/sm3/index.js";
|
6
|
+
import D from "./smCrypto/sm4/index.js";
|
7
|
+
import c from "../utils/readBlob.js";
|
8
|
+
import b from "../error/ResponseError404.js";
|
9
|
+
import _ from "../error/ResponseError500.js";
|
10
|
+
import O from "../error/ResponseErrorException.js";
|
11
|
+
import $ from "../error/ResponseError.js";
|
12
|
+
import B from "../error/ResponseErrorSessionException.js";
|
13
|
+
import J from "../error/ResponseError403.js";
|
14
|
+
class C {
|
15
|
+
constructor(t) {
|
16
|
+
f(this, "options");
|
17
|
+
this.options = t;
|
14
18
|
}
|
15
|
-
async handle(
|
16
|
-
const { _s1:
|
17
|
-
if (
|
18
|
-
const t = s.
|
19
|
-
if (
|
20
|
-
const a =
|
21
|
-
let
|
19
|
+
async handle(t, r) {
|
20
|
+
const { _s1: l, _s2: w } = this.options;
|
21
|
+
if (t instanceof $) {
|
22
|
+
const s = t.response, n = `'${s.config.url}' ${s.status} ${s.statusText}`;
|
23
|
+
if (s.status == 200) {
|
24
|
+
const a = s.data;
|
25
|
+
let i = s.headers["web-encrypt-sign"], h = s.headers["web-encrypt-timestamp"], e;
|
22
26
|
if (a instanceof Blob)
|
23
|
-
if (a != null &&
|
24
|
-
const
|
25
|
-
let
|
26
|
-
|
27
|
-
const d =
|
27
|
+
if (a != null && i) {
|
28
|
+
const p = await c(a);
|
29
|
+
let m;
|
30
|
+
i = i;
|
31
|
+
const d = h + p, R = y(d);
|
28
32
|
try {
|
29
|
-
|
33
|
+
m = x._s2DOVERSIG(R, i, w, { hash: !0, der: !0 });
|
30
34
|
} catch {
|
31
35
|
throw new Error("电子签名验证失败,接收到的响应无效");
|
32
36
|
}
|
33
|
-
if (!
|
37
|
+
if (!m)
|
34
38
|
throw new Error("电子签名验证失败,接收到的响应无效");
|
35
|
-
|
39
|
+
e = JSON.parse(D._s4DE(p, l));
|
36
40
|
} else
|
37
|
-
|
41
|
+
e = await c(a), e = JSON.parse(e);
|
38
42
|
else
|
39
|
-
|
40
|
-
const { appcode:
|
41
|
-
if (
|
42
|
-
throw new
|
43
|
-
} else throw
|
43
|
+
e = a;
|
44
|
+
const { appcode: u, msg: E } = e;
|
45
|
+
if (u != "0")
|
46
|
+
throw new O(E, t, s, e);
|
47
|
+
} else throw s.status == 401 ? new B(n, t, s) : s.status == 403 ? new J(n, t, s) : s.status == 404 ? new b(n, t, s) : s.status == 500 ? new _(n, t, s) : new Error(n);
|
44
48
|
}
|
45
|
-
throw
|
49
|
+
throw t;
|
46
50
|
}
|
47
51
|
}
|
48
52
|
export {
|
49
|
-
|
53
|
+
C as default
|
50
54
|
};
|
51
55
|
//# sourceMappingURL=Leaf7ErrorHandler.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Leaf7ErrorHandler.js","sources":["../../../src/request/leaf7/Leaf7ErrorHandler.ts"],"sourcesContent":["import { Leaf7DataStruct } from './types'\r\nimport sm2 from './smCrypto/sm2'\r\nimport sm3 from './smCrypto/sm3'\r\nimport sm4 from './smCrypto/sm4'\r\n\r\nimport { Leaf7EncryptOptions } from './types'\r\n\r\nimport readBlob from '../utils/readBlob'\r\n\r\nimport type ErrorHandlerChain from '../ErrorHandlerChain'\r\nimport ResponseError404 from '../error/ResponseError404'\r\nimport ResponseError500 from '../error/ResponseError500'\r\n\r\nexport default class Leaf7ErrorHandler {\r\n options: Leaf7EncryptOptions\r\n constructor(options: Leaf7EncryptOptions) {\r\n this.options = options\r\n }\r\n\r\n async handle(error: Error, chain: ErrorHandlerChain) {\r\n const { _s1, _s2 } = this.options\r\n if (error
|
1
|
+
{"version":3,"file":"Leaf7ErrorHandler.js","sources":["../../../src/request/leaf7/Leaf7ErrorHandler.ts"],"sourcesContent":["import { Leaf7DataStruct } from './types'\r\nimport sm2 from './smCrypto/sm2'\r\nimport sm3 from './smCrypto/sm3'\r\nimport sm4 from './smCrypto/sm4'\r\n\r\nimport { Leaf7EncryptOptions } from './types'\r\n\r\nimport readBlob from '../utils/readBlob'\r\n\r\nimport type ErrorHandlerChain from '../ErrorHandlerChain'\r\nimport ResponseError404 from '../error/ResponseError404'\r\nimport ResponseError500 from '../error/ResponseError500'\r\nimport ResponseErrorException from '../error/ResponseErrorException'\r\nimport ResponseError from '../error/ResponseError'\r\nimport ResponseErrorSessionException from '../error/ResponseErrorSessionException'\r\nimport ResponseError403 from '../error/ResponseError403'\r\n\r\nexport default class Leaf7ErrorHandler {\r\n options: Leaf7EncryptOptions\r\n constructor(options: Leaf7EncryptOptions) {\r\n this.options = options\r\n }\r\n\r\n async handle(error: Error, chain: ErrorHandlerChain) {\r\n const { _s1, _s2 } = this.options\r\n if (error instanceof ResponseError) {\r\n const response = error.response\r\n const errortext = `'${response.config.url}' ${response.status} ${response.statusText}`\r\n if (response.status == 200) {\r\n const rawData = response.data\r\n // 取header中的签名\r\n let signature = response.headers['web-encrypt-sign']\r\n let timestamp = response.headers['web-encrypt-timestamp']\r\n\r\n let jsonData\r\n\r\n if (rawData instanceof Blob) {\r\n // 文件下载抛异常JSON,在Blob里面\r\n if (rawData != null && signature) {\r\n const tempData = await readBlob(rawData)\r\n let verifySignatureResult: boolean\r\n signature = signature\r\n\r\n const mergeStr = timestamp + tempData\r\n const sm3Str = sm3(mergeStr)\r\n // 验签\r\n try {\r\n verifySignatureResult = sm2._s2DOVERSIG(sm3Str, signature, _s2, { hash: true, der: true })\r\n } catch (e) {\r\n throw new Error('电子签名验证失败,接收到的响应无效')\r\n }\r\n if (!verifySignatureResult) {\r\n throw new Error('电子签名验证失败,接收到的响应无效')\r\n }\r\n\r\n const result = JSON.parse(sm4._s4DE(tempData, _s1))\r\n jsonData = result\r\n } else {\r\n jsonData = await readBlob(rawData)\r\n jsonData = JSON.parse(jsonData)\r\n }\r\n } else {\r\n // 普通请求的异常JSON\r\n jsonData = rawData\r\n }\r\n\r\n const { appcode, msg }: Leaf7DataStruct = jsonData\r\n\r\n if (appcode != '0') {\r\n throw new ResponseErrorException(msg, error, response, jsonData)\r\n }\r\n } else if (response.status == 401) {\r\n throw new ResponseErrorSessionException(errortext, error, response)\r\n } else if (response.status == 403) {\r\n throw new ResponseError403(errortext, error, response)\r\n } else if (response.status == 404) {\r\n throw new ResponseError404(errortext, error, response)\r\n } else if (response.status == 500) {\r\n throw new ResponseError500(errortext, error, response)\r\n } else {\r\n throw new Error(errortext)\r\n }\r\n }\r\n\r\n throw error\r\n }\r\n}\r\n"],"names":["Leaf7ErrorHandler","options","__publicField","error","chain","_s1","_s2","ResponseError","response","errortext","rawData","signature","timestamp","jsonData","tempData","readBlob","verifySignatureResult","mergeStr","sm3Str","sm3","sm2","sm4","appcode","msg","ResponseErrorException","ResponseErrorSessionException","ResponseError403","ResponseError404","ResponseError500"],"mappings":";;;;;;;;;;;;;AAiBA,MAAqBA,EAAkB;AAAA,EAErC,YAAYC,GAA8B;AAD1C,IAAAC,EAAA;AAEE,SAAK,UAAUD;AAAA,EACjB;AAAA,EAEA,MAAM,OAAOE,GAAcC,GAA0B;AACnD,UAAM,EAAE,KAAAC,GAAK,KAAAC,MAAQ,KAAK;AAC1B,QAAIH,aAAiBI,GAAe;AAClC,YAAMC,IAAWL,EAAM,UACjBM,IAAY,IAAID,EAAS,OAAO,GAAG,KAAKA,EAAS,MAAM,IAAIA,EAAS,UAAU;AAChF,UAAAA,EAAS,UAAU,KAAK;AAC1B,cAAME,IAAUF,EAAS;AAErB,YAAAG,IAAYH,EAAS,QAAQ,kBAAkB,GAC/CI,IAAYJ,EAAS,QAAQ,uBAAuB,GAEpDK;AAEJ,YAAIH,aAAmB;AAEjB,cAAAA,KAAW,QAAQC,GAAW;AAC1B,kBAAAG,IAAW,MAAMC,EAASL,CAAO;AACnC,gBAAAM;AACQ,YAAAL,IAAAA;AAEZ,kBAAMM,IAAWL,IAAYE,GACvBI,IAASC,EAAIF,CAAQ;AAEvB,gBAAA;AACsB,cAAAD,IAAAI,EAAI,YAAYF,GAAQP,GAAWL,GAAK,EAAE,MAAM,IAAM,KAAK,GAAM,CAAA;AAAA,oBAC/E;AACJ,oBAAA,IAAI,MAAM,mBAAmB;AAAA,YACrC;AACA,gBAAI,CAACU;AACG,oBAAA,IAAI,MAAM,mBAAmB;AAI1B,YAAAH,IADI,KAAK,MAAMQ,EAAI,MAAMP,GAAUT,CAAG,CAAC;AAAA,UACvC;AAEA,YAAAQ,IAAA,MAAME,EAASL,CAAO,GACtBG,IAAA,KAAK,MAAMA,CAAQ;AAAA;AAIrB,UAAAA,IAAAH;AAGP,cAAA,EAAE,SAAAY,GAAS,KAAAC,EAAyB,IAAAV;AAE1C,YAAIS,KAAW;AACb,gBAAM,IAAIE,EAAuBD,GAAKpB,GAAOK,GAAUK,CAAQ;AAAA,MACjE,MACF,OAAWL,EAAS,UAAU,MACtB,IAAIiB,EAA8BhB,GAAWN,GAAOK,CAAQ,IACzDA,EAAS,UAAU,MACtB,IAAIkB,EAAiBjB,GAAWN,GAAOK,CAAQ,IAC5CA,EAAS,UAAU,MACtB,IAAImB,EAAiBlB,GAAWN,GAAOK,CAAQ,IAC5CA,EAAS,UAAU,MACtB,IAAIoB,EAAiBnB,GAAWN,GAAOK,CAAQ,IAE/C,IAAI,MAAMC,CAAS;AAAA,IAE7B;AAEM,UAAAN;AAAA,EACR;AACF;"}
|
@@ -6,6 +6,7 @@ export interface RequestOptionsI {
|
|
6
6
|
loading?: boolean;
|
7
7
|
mask?: boolean;
|
8
8
|
timeout?: number;
|
9
|
+
headers?: Record<string, string>;
|
9
10
|
}
|
10
11
|
export declare function request<T>(url: string, data?: RequestParams | FormData, options?: RequestOptionsI): Promise<T>;
|
11
12
|
export declare function download(url: string, data?: RequestParams, options?: RequestOptionsI): Promise<void>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/request/leaf7/index.ts"],"sourcesContent":["import axios from 'axios'\r\nimport { Base64 } from 'js-base64'\r\nimport { cloneDeep } from '../../utils'\r\nimport ResponseParserChain, { type ResponseParser } from '../ResponseParserChain'\r\nimport ErrorHandlerChain, { type ErrorHandler } from '../ErrorHandlerChain'\r\nimport RequestFilterChain, { type RequestFilter } from '../RequestFilterChain'\r\nimport { ElLoading } from 'element-plus'\r\n\r\nimport ResponseError from '../error/ResponseError'\r\n\r\nexport type RequestParams = Record<string, unknown>\r\n\r\nexport interface RequestOptionsI {\r\n loading?: boolean\r\n mask?: boolean\r\n timeout?: number\r\n}\r\n\r\n//////////////////////////////////// Chain\r\nlet gRequestFilters: RequestFilter[] = []\r\nlet gResponseParsers: ResponseParser[] = []\r\nlet gErrorHandlers: ErrorHandler[] = []\r\n\r\n//////////////////////////////////// GLOBAL VARS\r\n\r\nlet BASE_URL = '/'\r\nlet REQUEST_TIMEOUT = 1000 * 30\r\nconst LOADING_DELAY = 1500\r\nlet RESPONSE_TYPE: 'json' | 'text' = 'json'\r\n\r\n//////////////////////////////////// AXIOS\r\n\r\nconst g_AxiosInstance = axios.create()\r\ng_AxiosInstance.interceptors.request.use(function (config) {\r\n const chain = new RequestFilterChain(gRequestFilters)\r\n chain.doFilter(config, chain)\r\n return config\r\n})\r\ng_AxiosInstance.interceptors.response.use(function (response) {\r\n try {\r\n const chain = new ResponseParserChain(gResponseParsers)\r\n return chain.doParse(response, chain)\r\n } catch (e) {\r\n throw new ResponseError((e as Error).message, { cause: e }, response)\r\n }\r\n})\r\n\r\nexport function request<T>(\r\n url: string,\r\n data: RequestParams | FormData = {},\r\n options: RequestOptionsI = { loading: true, mask: false, timeout: REQUEST_TIMEOUT }\r\n): Promise<T> {\r\n let newData = data\r\n if (!(data instanceof FormData)) {\r\n newData = cloneDeep(data)\r\n }\r\n\r\n // loading\r\n let loading: any\r\n\r\n if (options.loading === true) {\r\n loading = ElLoading.service({ fullscreen: true, background: 'transparent' })\r\n }\r\n\r\n return g_AxiosInstance\r\n .request({\r\n baseURL: BASE_URL,\r\n method: 'POST',\r\n timeout: REQUEST_TIMEOUT,\r\n withCredentials: true,\r\n url,\r\n data: newData,\r\n responseType: RESPONSE_TYPE,\r\n ...options,\r\n })\r\n .then((data) => {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n return data\r\n })\r\n .catch(function (error) {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n const chain = new ErrorHandlerChain(gErrorHandlers)\r\n return chain.handle(error, chain)\r\n }) as Promise<T>\r\n}\r\n\r\nexport function download(url: string, data: RequestParams = {}, options: RequestOptionsI = { loading: true, mask: false, timeout: REQUEST_TIMEOUT }) {\r\n let loading: any\r\n\r\n if (options.loading === true) {\r\n loading = ElLoading.service({ fullscreen: true, background: 'transparent' })\r\n }\r\n\r\n return g_AxiosInstance\r\n .request({\r\n baseURL: BASE_URL,\r\n method: 'POST',\r\n timeout: REQUEST_TIMEOUT,\r\n withCredentials: true,\r\n url,\r\n data,\r\n responseType: 'blob',\r\n ...options,\r\n })\r\n .then((data) => {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n return data\r\n })\r\n .then((response) => {\r\n const contentDisposition = response.headers['content-disposition']\r\n const blob = response.data\r\n\r\n const base64FileName = contentDisposition.match(/attachment; filename=\\\"(.*?)\\\"/)[1]\r\n const decodedFileName = Base64.decode(base64FileName)\r\n // for IE\r\n //@ts-ignore\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n //@ts-ignore\r\n window.navigator.msSaveOrOpenBlob(blob, decodedFileName)\r\n } else {\r\n const a = document.createElement('a')\r\n const url = URL.createObjectURL(blob)\r\n a.href = url\r\n a.download = decodedFileName\r\n document.body.appendChild(a)\r\n a.click()\r\n document.body.removeChild(a)\r\n URL.revokeObjectURL(url)\r\n }\r\n })\r\n .catch(function (error) {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n const chain = new ErrorHandlerChain(gErrorHandlers)\r\n return chain.handle(error, chain)\r\n })\r\n}\r\n\r\nexport function upload(url: string, params: RequestParams, options: RequestOptionsI) {\r\n const formdata = new FormData()\r\n if (params) {\r\n const keys = Object.keys(params)\r\n const normalParams: Record<string, unknown> = {}\r\n\r\n for (let i = 0; i < keys.length; i++) {\r\n const key = keys[i]\r\n const itemValue = params[key]\r\n if (itemValue instanceof File) {\r\n formdata.append(key, itemValue)\r\n } else if (itemValue instanceof Array) {\r\n let isFile = false\r\n for (let j = 0; j < itemValue.length; j++) {\r\n if (itemValue[j] instanceof File) {\r\n isFile = true\r\n break\r\n }\r\n }\r\n if (isFile) {\r\n for (let j = 0; j < itemValue.length; j++) {\r\n formdata.append(key, itemValue[j])\r\n }\r\n } else {\r\n formdata.append(key, JSON.stringify(itemValue))\r\n }\r\n } else {\r\n formdata.append(key, JSON.stringify(itemValue))\r\n }\r\n }\r\n }\r\n\r\n return request(url, formdata, options)\r\n}\r\n\r\n// config\r\nexport const config = {\r\n setBaseUrl: (pBaseUrl: string) => {\r\n if (!pBaseUrl) {\r\n throw new Error(`pBaseUrl is null!`)\r\n }\r\n BASE_URL = pBaseUrl\r\n },\r\n setRequestTimeout: (pTimeout: number) => {\r\n REQUEST_TIMEOUT = pTimeout\r\n },\r\n setResponseType: (pType: 'json' | 'text') => {\r\n RESPONSE_TYPE = pType\r\n },\r\n setRequestFilters: (...filters: RequestFilter[]) => {\r\n if (filters == null) {\r\n throw new Error(`filters is null!`)\r\n }\r\n gRequestFilters = filters\r\n },\r\n setResponseParsers: (...parsers: ResponseParser[]) => {\r\n if (parsers == null) {\r\n throw new Error(`parsers is null!`)\r\n }\r\n gResponseParsers = parsers\r\n },\r\n setErrorHandlers: (...handlers: ErrorHandler[]) => {\r\n if (handlers == null) {\r\n throw new Error(`handlers should not null!`)\r\n }\r\n gErrorHandlers = handlers\r\n },\r\n}\r\n"],"names":["gRequestFilters","gResponseParsers","gErrorHandlers","BASE_URL","REQUEST_TIMEOUT","RESPONSE_TYPE","g_AxiosInstance","axios","config","chain","RequestFilterChain","response","ResponseParserChain","e","ResponseError","request","url","data","options","newData","cloneDeep","loading","ElLoading","error","ErrorHandlerChain","download","contentDisposition","blob","base64FileName","decodedFileName","Base64","a","upload","params","formdata","keys","i","key","itemValue","isFile","j","pBaseUrl","pTimeout","pType","filters","parsers","handlers"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/request/leaf7/index.ts"],"sourcesContent":["import axios from 'axios'\r\nimport { Base64 } from 'js-base64'\r\nimport { cloneDeep } from '../../utils'\r\nimport ResponseParserChain, { type ResponseParser } from '../ResponseParserChain'\r\nimport ErrorHandlerChain, { type ErrorHandler } from '../ErrorHandlerChain'\r\nimport RequestFilterChain, { type RequestFilter } from '../RequestFilterChain'\r\nimport { ElLoading } from 'element-plus'\r\n\r\nimport ResponseError from '../error/ResponseError'\r\n\r\nexport type RequestParams = Record<string, unknown>\r\n\r\nexport interface RequestOptionsI {\r\n loading?: boolean\r\n mask?: boolean\r\n timeout?: number\r\n headers?: Record<string, string>\r\n}\r\n\r\n//////////////////////////////////// Chain\r\nlet gRequestFilters: RequestFilter[] = []\r\nlet gResponseParsers: ResponseParser[] = []\r\nlet gErrorHandlers: ErrorHandler[] = []\r\n\r\n//////////////////////////////////// GLOBAL VARS\r\n\r\nlet BASE_URL = '/'\r\nlet REQUEST_TIMEOUT = 1000 * 30\r\nconst LOADING_DELAY = 1500\r\nlet RESPONSE_TYPE: 'json' | 'text' = 'json'\r\n\r\n//////////////////////////////////// AXIOS\r\n\r\nconst g_AxiosInstance = axios.create()\r\ng_AxiosInstance.interceptors.request.use(function (config) {\r\n const chain = new RequestFilterChain(gRequestFilters)\r\n chain.doFilter(config, chain)\r\n return config\r\n})\r\ng_AxiosInstance.interceptors.response.use(function (response) {\r\n try {\r\n const chain = new ResponseParserChain(gResponseParsers)\r\n return chain.doParse(response, chain)\r\n } catch (e) {\r\n throw new ResponseError((e as Error).message, { cause: e }, response)\r\n }\r\n})\r\n\r\nexport function request<T>(\r\n url: string,\r\n data: RequestParams | FormData = {},\r\n options: RequestOptionsI = { loading: true, mask: false, timeout: REQUEST_TIMEOUT }\r\n): Promise<T> {\r\n let newData = data\r\n if (!(data instanceof FormData)) {\r\n newData = cloneDeep(data)\r\n }\r\n\r\n // loading\r\n let loading: any\r\n\r\n if (options.loading === true) {\r\n loading = ElLoading.service({ fullscreen: true, background: 'transparent' })\r\n }\r\n\r\n return g_AxiosInstance\r\n .request({\r\n baseURL: BASE_URL,\r\n method: 'POST',\r\n timeout: REQUEST_TIMEOUT,\r\n withCredentials: true,\r\n url,\r\n data: newData,\r\n responseType: RESPONSE_TYPE,\r\n ...options,\r\n })\r\n .then((data) => {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n return data\r\n })\r\n .catch(function (error) {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n const chain = new ErrorHandlerChain(gErrorHandlers)\r\n return chain.handle(error, chain)\r\n }) as Promise<T>\r\n}\r\n\r\nexport function download(url: string, data: RequestParams = {}, options: RequestOptionsI = { loading: true, mask: false, timeout: REQUEST_TIMEOUT }) {\r\n let loading: any\r\n\r\n if (options.loading === true) {\r\n loading = ElLoading.service({ fullscreen: true, background: 'transparent' })\r\n }\r\n\r\n return g_AxiosInstance\r\n .request({\r\n baseURL: BASE_URL,\r\n method: 'POST',\r\n timeout: REQUEST_TIMEOUT,\r\n withCredentials: true,\r\n url,\r\n data,\r\n responseType: 'blob',\r\n ...options,\r\n })\r\n .then((data) => {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n return data\r\n })\r\n .then((response) => {\r\n const contentDisposition = response.headers['content-disposition']\r\n const blob = response.data\r\n\r\n const base64FileName = contentDisposition.match(/attachment; filename=\\\"(.*?)\\\"/)[1]\r\n const decodedFileName = Base64.decode(base64FileName)\r\n // for IE\r\n //@ts-ignore\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n //@ts-ignore\r\n window.navigator.msSaveOrOpenBlob(blob, decodedFileName)\r\n } else {\r\n const a = document.createElement('a')\r\n const url = URL.createObjectURL(blob)\r\n a.href = url\r\n a.download = decodedFileName\r\n document.body.appendChild(a)\r\n a.click()\r\n document.body.removeChild(a)\r\n URL.revokeObjectURL(url)\r\n }\r\n })\r\n .catch(function (error) {\r\n if (loading) {\r\n loading.close()\r\n }\r\n\r\n const chain = new ErrorHandlerChain(gErrorHandlers)\r\n return chain.handle(error, chain)\r\n })\r\n}\r\n\r\nexport function upload(url: string, params: RequestParams, options: RequestOptionsI) {\r\n const formdata = new FormData()\r\n if (params) {\r\n const keys = Object.keys(params)\r\n const normalParams: Record<string, unknown> = {}\r\n\r\n for (let i = 0; i < keys.length; i++) {\r\n const key = keys[i]\r\n const itemValue = params[key]\r\n if (itemValue instanceof File) {\r\n formdata.append(key, itemValue)\r\n } else if (itemValue instanceof Array) {\r\n let isFile = false\r\n for (let j = 0; j < itemValue.length; j++) {\r\n if (itemValue[j] instanceof File) {\r\n isFile = true\r\n break\r\n }\r\n }\r\n if (isFile) {\r\n for (let j = 0; j < itemValue.length; j++) {\r\n formdata.append(key, itemValue[j])\r\n }\r\n } else {\r\n formdata.append(key, JSON.stringify(itemValue))\r\n }\r\n } else {\r\n formdata.append(key, JSON.stringify(itemValue))\r\n }\r\n }\r\n }\r\n\r\n return request(url, formdata, options)\r\n}\r\n\r\n// config\r\nexport const config = {\r\n setBaseUrl: (pBaseUrl: string) => {\r\n if (!pBaseUrl) {\r\n throw new Error(`pBaseUrl is null!`)\r\n }\r\n BASE_URL = pBaseUrl\r\n },\r\n setRequestTimeout: (pTimeout: number) => {\r\n REQUEST_TIMEOUT = pTimeout\r\n },\r\n setResponseType: (pType: 'json' | 'text') => {\r\n RESPONSE_TYPE = pType\r\n },\r\n setRequestFilters: (...filters: RequestFilter[]) => {\r\n if (filters == null) {\r\n throw new Error(`filters is null!`)\r\n }\r\n gRequestFilters = filters\r\n },\r\n setResponseParsers: (...parsers: ResponseParser[]) => {\r\n if (parsers == null) {\r\n throw new Error(`parsers is null!`)\r\n }\r\n gResponseParsers = parsers\r\n },\r\n setErrorHandlers: (...handlers: ErrorHandler[]) => {\r\n if (handlers == null) {\r\n throw new Error(`handlers should not null!`)\r\n }\r\n gErrorHandlers = handlers\r\n },\r\n}\r\n"],"names":["gRequestFilters","gResponseParsers","gErrorHandlers","BASE_URL","REQUEST_TIMEOUT","RESPONSE_TYPE","g_AxiosInstance","axios","config","chain","RequestFilterChain","response","ResponseParserChain","e","ResponseError","request","url","data","options","newData","cloneDeep","loading","ElLoading","error","ErrorHandlerChain","download","contentDisposition","blob","base64FileName","decodedFileName","Base64","a","upload","params","formdata","keys","i","key","itemValue","isFile","j","pBaseUrl","pTimeout","pType","filters","parsers","handlers"],"mappings":"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"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: "0.1.
|
1
|
+
declare const _default: "0.1.57";
|
2
2
|
export default _default;
|
package/dist/version/version.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sources":["../../src/version/version.ts"],"sourcesContent":["export default '0.1.
|
1
|
+
{"version":3,"file":"version.js","sources":["../../src/version/version.ts"],"sourcesContent":["export default '0.1.57';"],"names":["version"],"mappings":"AAAA,MAAAA,IAAe;"}
|