el-plus 0.0.50 → 0.0.52
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/CHANGELOG.md +12 -0
- package/dist/index.full.js +63 -16
- package/dist/index.full.min.js +1 -1
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +1 -1
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +63 -16
- package/es/components/attachment/src/attachment.d.ts +4 -3
- package/es/components/attachment/src/attachment.mjs +1 -2
- package/es/components/attachment/src/attachment.mjs.map +1 -1
- package/es/components/attachment/src/attachment.vue2.mjs +2 -2
- package/es/components/attachment/src/attachment.vue2.mjs.map +1 -1
- package/es/components/attachment/src/use-attachment.mjs +2 -0
- package/es/components/attachment/src/use-attachment.mjs.map +1 -1
- package/es/components/custom-column/src/custom-column.vue2.mjs +1 -1
- package/es/components/custom-column/src/custom-column.vue2.mjs.map +1 -1
- package/es/components/header/index.d.ts +90 -0
- package/es/components/header/src/header.d.ts +9 -0
- package/es/components/header/src/header.mjs +10 -0
- package/es/components/header/src/header.mjs.map +1 -1
- package/es/components/header/src/header.vue.d.ts +38 -0
- package/es/components/header/src/header.vue2.mjs +4 -3
- package/es/components/header/src/header.vue2.mjs.map +1 -1
- package/es/components/search-list-page/index.d.ts +11 -3
- package/es/components/search-list-page/index.mjs.map +1 -1
- package/es/components/search-list-page/src/search-list-page.vue.d.ts +3 -1
- package/es/components/search-list-page/src/use-search-list-page.d.ts +3 -1
- package/es/components/search-list-page/src/use-search-list-page.mjs +1 -1
- package/es/components/search-list-page/src/use-search-list-page.mjs.map +1 -1
- package/es/components/table/index.d.ts +3 -0
- package/es/components/table/src/table.vue.d.ts +1 -0
- package/es/components/table/src/table.vue2.mjs +2 -0
- package/es/components/table/src/table.vue2.mjs.map +1 -1
- package/es/components/table/src/use-table.d.ts +1 -0
- package/es/components/table/src/use-table.mjs +4 -0
- package/es/components/table/src/use-table.mjs.map +1 -1
- package/es/hooks/dialog/use-choose-dialog.mjs +18 -3
- package/es/hooks/dialog/use-choose-dialog.mjs.map +1 -1
- package/es/hooks/dialog/use-form-dialog.mjs +14 -2
- package/es/hooks/dialog/use-form-dialog.mjs.map +1 -1
- package/es/hooks/use-request.mjs +4 -3
- package/es/hooks/use-request.mjs.map +1 -1
- package/es/package.json.mjs +1 -1
- package/lib/components/attachment/src/attachment.d.ts +4 -3
- package/lib/components/attachment/src/attachment.js +1 -2
- package/lib/components/attachment/src/attachment.js.map +1 -1
- package/lib/components/attachment/src/attachment.vue2.js +2 -2
- package/lib/components/attachment/src/attachment.vue2.js.map +1 -1
- package/lib/components/attachment/src/use-attachment.js +2 -0
- package/lib/components/attachment/src/use-attachment.js.map +1 -1
- package/lib/components/custom-column/src/custom-column.vue2.js +1 -1
- package/lib/components/custom-column/src/custom-column.vue2.js.map +1 -1
- package/lib/components/header/index.d.ts +90 -0
- package/lib/components/header/src/header.d.ts +9 -0
- package/lib/components/header/src/header.js +10 -0
- package/lib/components/header/src/header.js.map +1 -1
- package/lib/components/header/src/header.vue.d.ts +38 -0
- package/lib/components/header/src/header.vue2.js +3 -2
- package/lib/components/header/src/header.vue2.js.map +1 -1
- package/lib/components/search-list-page/index.d.ts +11 -3
- package/lib/components/search-list-page/index.js.map +1 -1
- package/lib/components/search-list-page/src/search-list-page.vue.d.ts +3 -1
- package/lib/components/search-list-page/src/use-search-list-page.d.ts +3 -1
- package/lib/components/search-list-page/src/use-search-list-page.js +1 -1
- package/lib/components/search-list-page/src/use-search-list-page.js.map +1 -1
- package/lib/components/table/index.d.ts +3 -0
- package/lib/components/table/src/table.vue.d.ts +1 -0
- package/lib/components/table/src/table.vue2.js +2 -0
- package/lib/components/table/src/table.vue2.js.map +1 -1
- package/lib/components/table/src/use-table.d.ts +1 -0
- package/lib/components/table/src/use-table.js +4 -0
- package/lib/components/table/src/use-table.js.map +1 -1
- package/lib/hooks/dialog/use-choose-dialog.js +17 -2
- package/lib/hooks/dialog/use-choose-dialog.js.map +1 -1
- package/lib/hooks/dialog/use-form-dialog.js +14 -2
- package/lib/hooks/dialog/use-form-dialog.js.map +1 -1
- package/lib/hooks/use-request.js +4 -3
- package/lib/hooks/use-request.js.map +1 -1
- package/lib/package.json.js +1 -1
- package/package.json +1 -1
|
@@ -27,6 +27,11 @@ const useChooseDialog = (options = {}) => {
|
|
|
27
27
|
}, [t("ep.chooseDialog.selected"), selections.value.length, t("ep.chooseDialog.unit")]);
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
+
const clearSelections = async () => {
|
|
31
|
+
selections.value = [];
|
|
32
|
+
searchListPageRef.value?.tableRef?.clearSelection();
|
|
33
|
+
};
|
|
34
|
+
let searchListPageRef;
|
|
30
35
|
return useDialog.useDialog({
|
|
31
36
|
class: bem.b(),
|
|
32
37
|
width: "80%",
|
|
@@ -35,12 +40,22 @@ const useChooseDialog = (options = {}) => {
|
|
|
35
40
|
title,
|
|
36
41
|
onConfirm: (resolve) => {
|
|
37
42
|
resolve(JSON.parse(JSON.stringify(selections.value)));
|
|
43
|
+
clearSelections();
|
|
44
|
+
},
|
|
45
|
+
onCancel: async (resolve) => {
|
|
46
|
+
clearSelections();
|
|
47
|
+
resolve();
|
|
38
48
|
},
|
|
39
49
|
render: ({
|
|
40
50
|
resolve
|
|
41
51
|
}) => {
|
|
52
|
+
if (!searchListPageRef) {
|
|
53
|
+
searchListPageRef = vue.useTemplateRef("searchListPage");
|
|
54
|
+
}
|
|
42
55
|
const formData = rest.formData || vue.reactive({});
|
|
43
|
-
return vue.createVNode(index.EpSearchListPage, {
|
|
56
|
+
return vue.createVNode(index.EpSearchListPage, vue.mergeProps({
|
|
57
|
+
"ref": "searchListPage"
|
|
58
|
+
}, {
|
|
44
59
|
showSelectionCol: multiple,
|
|
45
60
|
showSingleSelectionCol,
|
|
46
61
|
formData,
|
|
@@ -59,7 +74,7 @@ const useChooseDialog = (options = {}) => {
|
|
|
59
74
|
resolve(vue.toRaw(selections));
|
|
60
75
|
}
|
|
61
76
|
}
|
|
62
|
-
}, null);
|
|
77
|
+
}), null);
|
|
63
78
|
},
|
|
64
79
|
...dialogProps
|
|
65
80
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-choose-dialog.js","sources":["../../../../../packages/hooks/dialog/use-choose-dialog.tsx"],"sourcesContent":["import { useDialog } from './use-dialog'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {
|
|
1
|
+
{"version":3,"file":"use-choose-dialog.js","sources":["../../../../../packages/hooks/dialog/use-choose-dialog.tsx"],"sourcesContent":["import { useDialog } from './use-dialog'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport {\n EpSearchListPage,\n type SearchListPageInstance,\n} from '@el-plus/components/search-list-page'\nimport type { DialogOptions } from './use-dialog'\nimport type { SearchListPageProps } from '@el-plus/components/search-list-page'\nimport { reactive, ref, toRaw, useTemplateRef, nextTick } from 'vue'\nconst bem = createNameSpace('choose-dialog')\nimport { useLocale } from '@el-plus/hooks/use-locale'\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n multiple?: boolean\n} & SearchListPageProps\nexport const useChooseDialog = (options: Options = {}) => {\n const { t } = useLocale()\n const { dialogProps, title, multiple, ...rest } = options\n const selections = ref([])\n const showSingleSelectionCol = !multiple\n const scopedSlots: DialogOptions['scopedSlots'] = {}\n if (!showSingleSelectionCol) {\n scopedSlots.footerPrepend = () => {\n return (\n <span class={bem.e('selected-count')}>\n {t('ep.chooseDialog.selected')}\n {selections.value.length}\n {t('ep.chooseDialog.unit')}\n </span>\n )\n }\n }\n const clearSelections = async () => {\n selections.value = []\n searchListPageRef.value?.tableRef?.clearSelection() // 清理表格选中\n }\n let searchListPageRef\n return useDialog({\n class: bem.b(),\n width: '80%',\n showFooter: !showSingleSelectionCol,\n scopedSlots,\n title,\n onConfirm: (resolve) => {\n resolve(JSON.parse(JSON.stringify(selections.value)))\n clearSelections()\n },\n onCancel: async (resolve) => {\n clearSelections()\n resolve()\n },\n render: ({ resolve }) => {\n if (!searchListPageRef) {\n searchListPageRef =\n useTemplateRef<SearchListPageInstance>('searchListPage')\n }\n\n const formData = rest.formData || reactive({})\n return (\n <EpSearchListPage\n ref=\"searchListPage\"\n {...{\n showSelectionCol: multiple,\n showSingleSelectionCol,\n formData,\n ...rest,\n formProps: {\n col: 3,\n ...rest.formProps,\n },\n tableProps: {\n height: 300,\n onSelectionChange: (newSel) => {\n selections.value = newSel\n },\n onSingleSelectionChange: (newSel) => {\n selections.value = newSel\n resolve(toRaw(selections))\n },\n },\n }}\n />\n )\n },\n ...dialogProps,\n })\n}\n"],"names":["bem","createNameSpace","useChooseDialog","options","t","useLocale","dialogProps","title","multiple","rest","selections","ref","showSingleSelectionCol","scopedSlots","footerPrepend","_createVNode","e","value","length","clearSelections","searchListPageRef","tableRef","clearSelection","useDialog","class","b","width","showFooter","onConfirm","resolve","JSON","parse","stringify","onCancel","render","useTemplateRef","formData","reactive","EpSearchListPage","_mergeProps","showSelectionCol","formProps","col","tableProps","height","onSelectionChange","newSel","onSingleSelectionChange","toRaw"],"mappings":"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"}
|
|
@@ -13,7 +13,14 @@ const useFormDialog = (options = {}) => {
|
|
|
13
13
|
...formProps
|
|
14
14
|
} = options;
|
|
15
15
|
const formRef = vue.ref();
|
|
16
|
-
|
|
16
|
+
const isUseComFormData = !formProps.formData;
|
|
17
|
+
let formData = isUseComFormData ? vue.reactive({}) : formProps.formData;
|
|
18
|
+
const isDestroy = dialogProps?.destroyOnClose;
|
|
19
|
+
const resetForm = async () => {
|
|
20
|
+
if (isDestroy) {
|
|
21
|
+
await formRef.value?.resetFields();
|
|
22
|
+
}
|
|
23
|
+
};
|
|
17
24
|
return useDialog.useDialog({
|
|
18
25
|
class: bem.b(),
|
|
19
26
|
width: "80%",
|
|
@@ -31,7 +38,12 @@ const useFormDialog = (options = {}) => {
|
|
|
31
38
|
},
|
|
32
39
|
onConfirm: async (resolve) => {
|
|
33
40
|
await formRef.value.validate();
|
|
34
|
-
resolve(formData);
|
|
41
|
+
resolve(isUseComFormData ? JSON.parse(JSON.stringify(formData)) : formData);
|
|
42
|
+
resetForm();
|
|
43
|
+
},
|
|
44
|
+
onCancel: async (resolve) => {
|
|
45
|
+
await resetForm();
|
|
46
|
+
resolve("cancel");
|
|
35
47
|
},
|
|
36
48
|
...dialogProps
|
|
37
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-form-dialog.js","sources":["../../../../../packages/hooks/dialog/use-form-dialog.tsx"],"sourcesContent":["import type { DialogOptions } from './use-dialog'\nimport type { FormProps } from '@el-plus/components/form'\nimport EpForm from '@el-plus/components/form'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { useDialog } from './use-dialog'\nimport { reactive, ref } from 'vue'\nconst bem = createNameSpace('form-dialog')\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n formData?: FormProps['model']\n} & FormProps\nexport const useFormDialog = (options: Options = {}) => {\n const { dialogProps, title, ...formProps } = options\n const formRef = ref()\n
|
|
1
|
+
{"version":3,"file":"use-form-dialog.js","sources":["../../../../../packages/hooks/dialog/use-form-dialog.tsx"],"sourcesContent":["import type { DialogOptions } from './use-dialog'\nimport type { FormProps } from '@el-plus/components/form'\nimport EpForm from '@el-plus/components/form'\nimport { createNameSpace } from '@el-plus/utils/bem'\nimport { useDialog } from './use-dialog'\nimport { reactive, ref, toRaw } from 'vue'\nconst bem = createNameSpace('form-dialog')\n\ntype Options = {\n title?: string\n dialogProps?: DialogOptions\n formData?: FormProps['model']\n} & FormProps\nexport const useFormDialog = (options: Options = {}) => {\n const { dialogProps, title, ...formProps } = options\n const formRef = ref()\n const isUseComFormData = !formProps.formData\n let formData = isUseComFormData ? reactive({}) : formProps.formData // eslint-disable-line\n const isDestroy = dialogProps?.destroyOnClose\n const resetForm = async () => {\n if (isDestroy) {\n await formRef.value?.resetFields()\n }\n }\n return useDialog({\n class: bem.b(),\n width: '80%',\n title,\n render: (props) => {\n return (\n <EpForm\n ref={formRef}\n v-model={formData}\n {...{\n col: 1,\n 'label-width': 'auto',\n ...formProps,\n }}\n />\n )\n },\n onConfirm: async (resolve) => {\n await formRef.value.validate()\n resolve(\n isUseComFormData ? JSON.parse(JSON.stringify(formData)) : formData,\n )\n resetForm()\n },\n onCancel: async (resolve) => {\n await resetForm()\n resolve('cancel')\n },\n ...dialogProps,\n })\n}\n"],"names":["bem","createNameSpace","useFormDialog","options","dialogProps","title","formProps","formRef","ref","isUseComFormData","formData","reactive","isDestroy","destroyOnClose","resetForm","value","resetFields","useDialog","class","b","width","render","props","_createVNode","EpForm","_mergeProps","$event","col","onConfirm","resolve","validate","JSON","parse","stringify","onCancel"],"mappings":";;;;;;;AAMA,MAAMA,GAAAA,GAAMC,sBAAgB,aAAa,CAAA;AAOlC,MAAMC,aAAAA,GAAgBA,CAACC,OAAAA,GAAmB,EAAC,KAAM;AACtD,EAAA,MAAM;AAAA,IAAEC,WAAAA;AAAAA,IAAaC,KAAAA;AAAAA,IAAO,GAAGC;AAAAA,GAAU,GAAIH,OAAAA;AAC7C,EAAA,MAAMI,UAAUC,OAAAA,EAAI;AACpB,EAAA,MAAMC,gBAAAA,GAAmB,CAACH,SAAAA,CAAUI,QAAAA;AACpC,EAAA,IAAIA,WAAWD,gBAAAA,GAAmBE,YAAAA,CAAS,EAAE,IAAIL,SAAAA,CAAUI,QAAAA;AAC3D,EAAA,MAAME,YAAYR,WAAAA,EAAaS,cAAAA;AAC/B,EAAA,MAAMC,YAAY,YAAY;AAC5B,IAAA,IAAIF,SAAAA,EAAW;AACb,MAAA,MAAML,OAAAA,CAAQQ,OAAOC,WAAAA,EAAY;AAAA,IACnC;AAAA,EACF,CAAA;AACA,EAAA,OAAOC,mBAAAA,CAAU;AAAA,IACfC,KAAAA,EAAOlB,IAAImB,CAAAA,EAAE;AAAA,IACbC,KAAAA,EAAO,KAAA;AAAA,IACPf,KAAAA;AAAAA,IACAgB,QAASC,CAAAA,KAAAA,KAAU;AACjB,MAAA,OAAAC,eAAAA,CAAAC,cAAAC,cAAAA,CAAA;AAAA,QAAA,KAAA,EAESlB,OAAAA;AAAAA,QAAO,YAAA,EACHG,QAAAA;AAAAA,QAAQ,qBAAA,EAAAgB,YAARhB,QAAAA,GAAQgB;AAAAA,OAAA,EAAA;AAAA,QAEfC,GAAAA,EAAK,CAAA;AAAA,QACL,aAAA,EAAe,MAAA;AAAA,QACf,GAAGrB;AAAAA,OAAS,GAAA,IAAA,CAAA;AAAA,IAIpB,CAAA;AAAA,IACAsB,SAAAA,EAAW,OAAOC,OAAAA,KAAY;AAC5B,MAAA,MAAMtB,OAAAA,CAAQQ,MAAMe,QAAAA,EAAS;AAC7BD,MAAAA,OAAAA,CACEpB,gBAAAA,GAAmBsB,KAAKC,KAAAA,CAAMD,IAAAA,CAAKE,UAAUvB,QAAQ,CAAC,IAAIA,QAC5D,CAAA;AACAI,MAAAA,SAAAA,EAAU;AAAA,IACZ,CAAA;AAAA,IACAoB,QAAAA,EAAU,OAAOL,OAAAA,KAAY;AAC3B,MAAA,MAAMf,SAAAA,EAAU;AAChBe,MAAAA,OAAAA,CAAQ,QAAQ,CAAA;AAAA,IAClB,CAAA;AAAA,IACA,GAAGzB;AAAAA,GACJ,CAAA;AACH;;;;"}
|
package/lib/hooks/use-request.js
CHANGED
|
@@ -41,9 +41,10 @@ const useRequest = ({
|
|
|
41
41
|
...reqParams,
|
|
42
42
|
...config.params
|
|
43
43
|
};
|
|
44
|
-
if (data.$query) {
|
|
45
|
-
config.data[data.$query] = data.$searchValue;
|
|
46
|
-
delete data.$searchValue;
|
|
44
|
+
if (config.data.$query) {
|
|
45
|
+
config.data[config.data.$query] = data.$searchValue;
|
|
46
|
+
delete config.data.$searchValue;
|
|
47
|
+
delete config.data.$query;
|
|
47
48
|
}
|
|
48
49
|
if (reqBefore) {
|
|
49
50
|
reqBefore(config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-request.js","sources":["../../../../packages/hooks/use-request.ts"],"sourcesContent":["import { ref } from 'vue'\nimport { type Ref } from 'vue'\nimport type { Api, ReqAfter, ReqBefore, Method } from '@el-plus/types'\nimport type { Canceler } from 'axios'\nimport { http } from '@el-plus/utils/http'\ntype UseRequest = (config: {\n api?: Api\n method?: Method\n reqData?: Record<string, unknown>\n reqParams?: Record<string, unknown>\n reqBefore?: ReqBefore\n reqAfter?: ReqAfter\n cancelToken?: boolean\n hooks?: {\n success?: (data: unknown) => void\n fail?: (error: unknown) => void\n }\n}) => {\n loading?: Ref<boolean>\n requestFn?: (data?: Record<string, unknown>) => Promise<void>\n}\n\nexport const useRequest: UseRequest = ({\n api,\n method = 'post',\n reqData,\n reqParams,\n reqBefore,\n reqAfter,\n cancelToken,\n hooks,\n}) => {\n if (!api) return {}\n const loading = ref(false)\n let cancelRequest: Canceler\n let apiFn\n if (typeof api === 'string') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const config: Record<string, any> = {\n method,\n }\n if (cancelToken) {\n config.cancelRequest = (cancel: Canceler) => {\n cancelRequest = cancel\n }\n }\n\n apiFn = (data: Record<string, any> = {}, params?: Record<string, any>) => {\n if (config.method === 'get') {\n config.params = data\n } else {\n config.data = data\n config.params = params\n }\n config.data = {\n ...reqData,\n ...config.data,\n }\n config.params = {\n ...reqParams,\n ...config.params,\n }\n // 替换$query为$searchValue\n if (data.$query) {\n config.data[data.$query] = data.$searchValue\n delete data.$searchValue\n }\n\n if (reqBefore) {\n reqBefore(config)\n }\n return http.request(api, config)\n }\n } else {\n apiFn = api\n }\n const requestFn = async (data: Record<string, unknown> = {}) => {\n if (loading.value && !cancelToken) return\n loading.value = true\n try {\n cancelRequest && cancelRequest()\n const res = await apiFn(data)\n if (reqAfter) {\n reqAfter(res)\n }\n if (hooks?.success) {\n hooks.success(res.data)\n }\n } catch (error) {\n if (hooks?.fail) {\n hooks.fail(error)\n }\n } finally {\n loading.value = false\n }\n }\n return {\n loading,\n requestFn,\n }\n}\n"],"names":["ref","http"],"mappings":";;;;;AAsBO,MAAM,aAAyB,CAAC;AAAA,EACrC,GAAA;AAAA,EACA,MAAA,GAAS,MAAA;AAAA,EACT,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA,KAAM;AACJ,EAAA,IAAI,CAAC,GAAA,EAAK,OAAO,EAAC;AAClB,EAAA,MAAM,OAAA,GAAUA,QAAI,KAAK,CAAA;AACzB,EAAA,IAAI,aAAA;AACJ,EAAA,IAAI,KAAA;AACJ,EAAA,IAAI,OAAO,QAAQ,QAAA,EAAU;AAE3B,IAAA,MAAM,MAAA,GAA8B;AAAA,MAClC;AAAA,KACF;AACA,IAAA,IAAI,WAAA,EAAa;AACf,MAAA,MAAA,CAAO,aAAA,GAAgB,CAAC,MAAA,KAAqB;AAC3C,QAAA,aAAA,GAAgB,MAAA;AAAA,MAClB,CAAA;AAAA,IACF;AAEA,IAAA,KAAA,GAAQ,CAAC,IAAA,GAA4B,EAAC,EAAG,MAAA,KAAiC;AACxE,MAAA,IAAI,MAAA,CAAO,WAAW,KAAA,EAAO;AAC3B,QAAA,MAAA,CAAO,MAAA,GAAS,IAAA;AAAA,MAClB,CAAA,MAAO;AACL,QAAA,MAAA,CAAO,IAAA,GAAO,IAAA;AACd,QAAA,MAAA,CAAO,MAAA,GAAS,MAAA;AAAA,MAClB;AACA,MAAA,MAAA,CAAO,IAAA,GAAO;AAAA,QACZ,GAAG,OAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AACA,MAAA,MAAA,CAAO,MAAA,GAAS;AAAA,QACd,GAAG,SAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AAEA,MAAA,IAAI,KAAK,MAAA,EAAQ;
|
|
1
|
+
{"version":3,"file":"use-request.js","sources":["../../../../packages/hooks/use-request.ts"],"sourcesContent":["import { ref } from 'vue'\nimport { type Ref } from 'vue'\nimport type { Api, ReqAfter, ReqBefore, Method } from '@el-plus/types'\nimport type { Canceler } from 'axios'\nimport { http } from '@el-plus/utils/http'\ntype UseRequest = (config: {\n api?: Api\n method?: Method\n reqData?: Record<string, unknown>\n reqParams?: Record<string, unknown>\n reqBefore?: ReqBefore\n reqAfter?: ReqAfter\n cancelToken?: boolean\n hooks?: {\n success?: (data: unknown) => void\n fail?: (error: unknown) => void\n }\n}) => {\n loading?: Ref<boolean>\n requestFn?: (data?: Record<string, unknown>) => Promise<void>\n}\n\nexport const useRequest: UseRequest = ({\n api,\n method = 'post',\n reqData,\n reqParams,\n reqBefore,\n reqAfter,\n cancelToken,\n hooks,\n}) => {\n if (!api) return {}\n const loading = ref(false)\n let cancelRequest: Canceler\n let apiFn\n if (typeof api === 'string') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const config: Record<string, any> = {\n method,\n }\n if (cancelToken) {\n config.cancelRequest = (cancel: Canceler) => {\n cancelRequest = cancel\n }\n }\n\n apiFn = (data: Record<string, any> = {}, params?: Record<string, any>) => {\n if (config.method === 'get') {\n config.params = data\n } else {\n config.data = data\n config.params = params\n }\n config.data = {\n ...reqData,\n ...config.data,\n }\n config.params = {\n ...reqParams,\n ...config.params,\n }\n // 替换$query为$searchValue\n if (config.data.$query) {\n config.data[config.data.$query] = data.$searchValue\n delete config.data.$searchValue\n delete config.data.$query\n }\n\n if (reqBefore) {\n reqBefore(config)\n }\n return http.request(api, config)\n }\n } else {\n apiFn = api\n }\n const requestFn = async (data: Record<string, unknown> = {}) => {\n if (loading.value && !cancelToken) return\n loading.value = true\n try {\n cancelRequest && cancelRequest()\n const res = await apiFn(data)\n if (reqAfter) {\n reqAfter(res)\n }\n if (hooks?.success) {\n hooks.success(res.data)\n }\n } catch (error) {\n if (hooks?.fail) {\n hooks.fail(error)\n }\n } finally {\n loading.value = false\n }\n }\n return {\n loading,\n requestFn,\n }\n}\n"],"names":["ref","http"],"mappings":";;;;;AAsBO,MAAM,aAAyB,CAAC;AAAA,EACrC,GAAA;AAAA,EACA,MAAA,GAAS,MAAA;AAAA,EACT,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA,KAAM;AACJ,EAAA,IAAI,CAAC,GAAA,EAAK,OAAO,EAAC;AAClB,EAAA,MAAM,OAAA,GAAUA,QAAI,KAAK,CAAA;AACzB,EAAA,IAAI,aAAA;AACJ,EAAA,IAAI,KAAA;AACJ,EAAA,IAAI,OAAO,QAAQ,QAAA,EAAU;AAE3B,IAAA,MAAM,MAAA,GAA8B;AAAA,MAClC;AAAA,KACF;AACA,IAAA,IAAI,WAAA,EAAa;AACf,MAAA,MAAA,CAAO,aAAA,GAAgB,CAAC,MAAA,KAAqB;AAC3C,QAAA,aAAA,GAAgB,MAAA;AAAA,MAClB,CAAA;AAAA,IACF;AAEA,IAAA,KAAA,GAAQ,CAAC,IAAA,GAA4B,EAAC,EAAG,MAAA,KAAiC;AACxE,MAAA,IAAI,MAAA,CAAO,WAAW,KAAA,EAAO;AAC3B,QAAA,MAAA,CAAO,MAAA,GAAS,IAAA;AAAA,MAClB,CAAA,MAAO;AACL,QAAA,MAAA,CAAO,IAAA,GAAO,IAAA;AACd,QAAA,MAAA,CAAO,MAAA,GAAS,MAAA;AAAA,MAClB;AACA,MAAA,MAAA,CAAO,IAAA,GAAO;AAAA,QACZ,GAAG,OAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AACA,MAAA,MAAA,CAAO,MAAA,GAAS;AAAA,QACd,GAAG,SAAA;AAAA,QACH,GAAG,MAAA,CAAO;AAAA,OACZ;AAEA,MAAA,IAAI,MAAA,CAAO,KAAK,MAAA,EAAQ;AACtB,QAAA,MAAA,CAAO,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,MAAM,IAAI,IAAA,CAAK,YAAA;AACvC,QAAA,OAAO,OAAO,IAAA,CAAK,YAAA;AACnB,QAAA,OAAO,OAAO,IAAA,CAAK,MAAA;AAAA,MACrB;AAEA,MAAA,IAAI,SAAA,EAAW;AACb,QAAA,SAAA,CAAU,MAAM,CAAA;AAAA,MAClB;AACA,MAAA,OAAOC,UAAA,CAAK,OAAA,CAAQ,GAAA,EAAK,MAAM,CAAA;AAAA,IACjC,CAAA;AAAA,EACF,CAAA,MAAO;AACL,IAAA,KAAA,GAAQ,GAAA;AAAA,EACV;AACA,EAAA,MAAM,SAAA,GAAY,OAAO,IAAA,GAAgC,EAAC,KAAM;AAC9D,IAAA,IAAI,OAAA,CAAQ,KAAA,IAAS,CAAC,WAAA,EAAa;AACnC,IAAA,OAAA,CAAQ,KAAA,GAAQ,IAAA;AAChB,IAAA,IAAI;AACF,MAAA,aAAA,IAAiB,aAAA,EAAc;AAC/B,MAAA,MAAM,GAAA,GAAM,MAAM,KAAA,CAAM,IAAI,CAAA;AAC5B,MAAA,IAAI,QAAA,EAAU;AACZ,QAAA,QAAA,CAAS,GAAG,CAAA;AAAA,MACd;AACA,MAAA,IAAI,OAAO,OAAA,EAAS;AAClB,QAAA,KAAA,CAAM,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,MACxB;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,IAAI,OAAO,IAAA,EAAM;AACf,QAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,MAClB;AAAA,IACF,CAAA,SAAE;AACA,MAAA,OAAA,CAAQ,KAAA,GAAQ,KAAA;AAAA,IAClB;AAAA,EACF,CAAA;AACA,EAAA,OAAO;AAAA,IACL,OAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
|
package/lib/package.json.js
CHANGED