giime 0.1.1 → 0.1.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.css +42 -34
- package/es/components/index.mjs +2 -0
- package/es/components/index.mjs.map +1 -1
- package/es/components/src/composite/importDialog/ImportDialog.vue.d.ts +75 -0
- package/es/components/src/composite/importDialog/ImportDialog.vue.mjs +7 -0
- package/es/components/src/composite/importDialog/ImportDialog.vue.mjs.map +1 -0
- package/es/components/src/composite/importDialog/ImportDialog.vue2.mjs +166 -0
- package/es/components/src/composite/importDialog/ImportDialog.vue2.mjs.map +1 -0
- package/es/components/src/composite/importDialog/importDialog.d.ts +35 -0
- package/es/components/src/composite/importDialog/importDialog.mjs +17 -0
- package/es/components/src/composite/importDialog/importDialog.mjs.map +1 -0
- package/es/components/src/composite/importDialog/index.d.ts +73 -0
- package/es/components/src/composite/importDialog/index.mjs +9 -0
- package/es/components/src/composite/importDialog/index.mjs.map +1 -0
- package/es/components/src/composite/index.d.ts +1 -0
- package/es/components/src/composite/index.mjs +2 -0
- package/es/components/src/composite/index.mjs.map +1 -1
- package/es/giime/component.mjs +2 -0
- package/es/giime/component.mjs.map +1 -1
- package/es/giime/index.mjs +2 -0
- package/es/giime/index.mjs.map +1 -1
- package/es/giime/version.d.ts +1 -1
- package/es/giime/version.mjs +1 -1
- package/es/giime/version.mjs.map +1 -1
- package/es/hooks/base/useDownload/index.mjs +1 -1
- package/es/hooks/base/useDownload/index.mjs.map +1 -1
- package/es/index.css +42 -34
- package/es/utils/src/http/createAxios.d.ts +4 -2
- package/es/utils/src/http/createAxios.mjs +4 -5
- package/es/utils/src/http/createAxios.mjs.map +1 -1
- package/es/utils/src/http/devProxy.mjs +5 -0
- package/es/utils/src/http/devProxy.mjs.map +1 -1
- package/global.d.ts +1 -0
- package/lib/components/index.js +15 -10
- package/lib/components/index.js.map +1 -1
- package/lib/components/src/composite/importDialog/ImportDialog.vue.d.ts +75 -0
- package/lib/components/src/composite/importDialog/ImportDialog.vue.js +11 -0
- package/lib/components/src/composite/importDialog/ImportDialog.vue.js.map +1 -0
- package/lib/components/src/composite/importDialog/ImportDialog.vue2.js +170 -0
- package/lib/components/src/composite/importDialog/ImportDialog.vue2.js.map +1 -0
- package/lib/components/src/composite/importDialog/importDialog.d.ts +35 -0
- package/lib/components/src/composite/importDialog/importDialog.js +20 -0
- package/lib/components/src/composite/importDialog/importDialog.js.map +1 -0
- package/lib/components/src/composite/importDialog/index.d.ts +73 -0
- package/lib/components/src/composite/importDialog/index.js +16 -0
- package/lib/components/src/composite/importDialog/index.js.map +1 -0
- package/lib/components/src/composite/index.d.ts +1 -0
- package/lib/components/src/composite/index.js +5 -0
- package/lib/components/src/composite/index.js.map +1 -1
- package/lib/giime/component.js +20 -18
- package/lib/giime/component.js.map +1 -1
- package/lib/giime/index.js +43 -38
- package/lib/giime/index.js.map +1 -1
- package/lib/giime/version.d.ts +1 -1
- package/lib/giime/version.js +1 -1
- package/lib/giime/version.js.map +1 -1
- package/lib/hooks/base/useDownload/index.js +1 -1
- package/lib/hooks/base/useDownload/index.js.map +1 -1
- package/lib/index.css +42 -34
- package/lib/utils/src/http/createAxios.d.ts +4 -2
- package/lib/utils/src/http/createAxios.js +4 -5
- package/lib/utils/src/http/createAxios.js.map +1 -1
- package/lib/utils/src/http/devProxy.js +5 -0
- package/lib/utils/src/http/devProxy.js.map +1 -1
- package/package.json +1 -1
package/es/giime/version.mjs
CHANGED
package/es/giime/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.1.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.1.3';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
|
|
@@ -25,7 +25,7 @@ const useDownload = () => {
|
|
|
25
25
|
modalInfo.close();
|
|
26
26
|
};
|
|
27
27
|
const downloadByRes = async (res, options) => {
|
|
28
|
-
const filename = options?.filename || (res
|
|
28
|
+
const filename = options?.filename || (res?.headers?.["content-disposition"] || res?.headers?.["Content-Disposition"])?.split("filename=")[1] || "file";
|
|
29
29
|
const resBlob = await res.data;
|
|
30
30
|
const curId = v4();
|
|
31
31
|
const modalInfo = GmNotification({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useDownload/index.ts"],"sourcesContent":["import { h, ref } from 'vue';\r\nimport FileSaver from 'file-saver';\r\n\r\nimport GmNotification from '@giime/components/src/plugins/notification';\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport JSZip from 'jszip';\r\nimport type { AxiosResponse } from 'axios';\r\n\r\nexport interface DownloadOptions {\r\n filename?: string;\r\n}\r\nexport interface DateownloadZipItem {\r\n url: string;\r\n filename?: string;\r\n}\r\n\r\nexport const useDownload = () => {\r\n const getUrlFilename = (url: string) => {\r\n const filename = url.split('/').pop()?.split('?')[0] || 'file';\r\n return filename;\r\n };\r\n /**\r\n * 通过url下载\r\n * @param url\r\n * @param options\r\n */\r\n const downloadByUrl = async (url: string, options?: DownloadOptions) => {\r\n const filename = options?.filename || getUrlFilename(url);\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n await createDownload({\r\n url,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 通过接口响应结果下载\r\n * @param res\r\n * @param options\r\n */\r\n const downloadByRes = async (res: AxiosResponse<any, any>, options?: DownloadOptions) => {\r\n const filename = options?.filename || (res.headers['content-disposition'] || res.headers['Content-Disposition'])?.split('filename=')[1] || 'file';\r\n const resBlob = await res.data;\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n // 设置type类型\r\n const blob = new Blob([resBlob]);\r\n const fileUrl = window.URL.createObjectURL(blob);\r\n await createDownload({\r\n url: fileUrl,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 下载多文件 转为zip\r\n * @param fileList\r\n * @param filename\r\n */\r\n const downloadToZip = async (fileList: DateownloadZipItem[], filename: string) => {\r\n try {\r\n const currentContentClass = `message${Date.now()}`;\r\n const downloadCount = ref(0);\r\n const len = fileList.length;\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', [h('div', { className: currentContentClass }, [`总下载文件数:${len},已下载文件数:${downloadCount.value}`])]),\r\n duration: 0,\r\n });\r\n // h('div', { className: currentClass }, [`当前下载进度 ${progress.value}%`]),\r\n const zipInstance = new JSZip();\r\n for (let i = 0; i < len; i++) {\r\n const currentItem = fileList[i];\r\n // const fileBlob = await\r\n const downblobOptions = {\r\n url: currentItem.url,\r\n filename: currentItem.filename ?? getUrlFilename(currentItem.url),\r\n isZip: true,\r\n };\r\n createDownload(downblobOptions).then(res => {\r\n zipInstance.file(downblobOptions.filename, res);\r\n downloadCount.value++;\r\n editElementContent(currentContentClass, `总下载文件数:${len},已下载文件数:${downloadCount.value}`);\r\n if (downloadCount.value == len) {\r\n editElementContent(currentContentClass, `正在合并...`);\r\n\r\n zipInstance\r\n .generateAsync({ type: 'blob' })\r\n .then(res => {\r\n modalInfo.close();\r\n\r\n const fileUrl = window.URL.createObjectURL(res);\r\n // FileSaver.saveAs(res, filename);\r\n downloadByUrl(fileUrl, { filename });\r\n })\r\n .catch(error => {\r\n console.error(error);\r\n });\r\n }\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n const createDownload = (options: { url: string; filename: string; uuid?: string; isZip?: boolean }) => {\r\n return new Promise<Blob>((resolve, reject) => {\r\n // 创建一个新的 XMLHttpRequest 对象\r\n const xhr = new XMLHttpRequest();\r\n // 初始化一个GET请求\r\n xhr.open('GET', options.url, true);\r\n xhr.responseType = 'blob'; // 设置响应类型为blob,以便处理二进制文件\r\n\r\n // 监听 progress 事件\r\n xhr.onprogress = function (event) {\r\n if (event.lengthComputable) {\r\n const percentComplete = Math.floor((event.loaded / event.total) * 100);\r\n if (options.uuid) {\r\n editElementContent(options.uuid, `当前下载进度 ${percentComplete}%`);\r\n }\r\n }\r\n };\r\n\r\n // 监听 load 事件,表示下载完成\r\n xhr.onload = function (e) {\r\n const eventTarget = e.target as XMLHttpRequest;\r\n if ([200, 304].includes(eventTarget.status)) {\r\n const blob = eventTarget.response;\r\n // const url = window.URL.createObjectURL(blob);\r\n if (!options.isZip) {\r\n FileSaver.saveAs(blob, options.filename);\r\n GmNotification({\r\n type: 'success',\r\n title: '温馨提示',\r\n message: '下载完成',\r\n duration: 3000,\r\n });\r\n }\r\n\r\n resolve(blob);\r\n }\r\n };\r\n\r\n // 监听 error 事件\r\n xhr.onerror = function (e) {\r\n GmMessage.error('下载异常,请重试');\r\n reject(e);\r\n };\r\n\r\n // 发送请求\r\n xhr.send();\r\n });\r\n };\r\n return { downloadByUrl, downloadByRes, downloadToZip };\r\n};\r\n\r\n// 动态更新 notify 中的message 信息\r\nconst editElementContent = (className: string, content: string) => {\r\n // eslint-disable-next-line unicorn/prefer-query-selector\r\n const currentEle = document.getElementsByClassName(className)[0];\r\n if (currentEle) {\r\n currentEle.innerHTML = content;\r\n }\r\n};\r\n"],"names":["uuidv4","res"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useDownload/index.ts"],"sourcesContent":["import { h, ref } from 'vue';\r\nimport FileSaver from 'file-saver';\r\n\r\nimport GmNotification from '@giime/components/src/plugins/notification';\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport JSZip from 'jszip';\r\nimport type { AxiosResponse } from 'axios';\r\n\r\nexport interface DownloadOptions {\r\n filename?: string;\r\n}\r\nexport interface DateownloadZipItem {\r\n url: string;\r\n filename?: string;\r\n}\r\n\r\nexport const useDownload = () => {\r\n const getUrlFilename = (url: string) => {\r\n const filename = url.split('/').pop()?.split('?')[0] || 'file';\r\n return filename;\r\n };\r\n /**\r\n * 通过url下载\r\n * @param url\r\n * @param options\r\n */\r\n const downloadByUrl = async (url: string, options?: DownloadOptions) => {\r\n const filename = options?.filename || getUrlFilename(url);\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n await createDownload({\r\n url,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 通过接口响应结果下载\r\n * @param res\r\n * @param options\r\n */\r\n const downloadByRes = async (res: AxiosResponse<any, any>, options?: DownloadOptions) => {\r\n const filename =\r\n options?.filename || (res?.headers?.['content-disposition'] || res?.headers?.['Content-Disposition'])?.split('filename=')[1] || 'file';\r\n const resBlob = await res.data;\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n // 设置type类型\r\n const blob = new Blob([resBlob]);\r\n const fileUrl = window.URL.createObjectURL(blob);\r\n await createDownload({\r\n url: fileUrl,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 下载多文件 转为zip\r\n * @param fileList\r\n * @param filename\r\n */\r\n const downloadToZip = async (fileList: DateownloadZipItem[], filename: string) => {\r\n try {\r\n const currentContentClass = `message${Date.now()}`;\r\n const downloadCount = ref(0);\r\n const len = fileList.length;\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', [h('div', { className: currentContentClass }, [`总下载文件数:${len},已下载文件数:${downloadCount.value}`])]),\r\n duration: 0,\r\n });\r\n // h('div', { className: currentClass }, [`当前下载进度 ${progress.value}%`]),\r\n const zipInstance = new JSZip();\r\n for (let i = 0; i < len; i++) {\r\n const currentItem = fileList[i];\r\n // const fileBlob = await\r\n const downblobOptions = {\r\n url: currentItem.url,\r\n filename: currentItem.filename ?? getUrlFilename(currentItem.url),\r\n isZip: true,\r\n };\r\n createDownload(downblobOptions).then(res => {\r\n zipInstance.file(downblobOptions.filename, res);\r\n downloadCount.value++;\r\n editElementContent(currentContentClass, `总下载文件数:${len},已下载文件数:${downloadCount.value}`);\r\n if (downloadCount.value == len) {\r\n editElementContent(currentContentClass, `正在合并...`);\r\n\r\n zipInstance\r\n .generateAsync({ type: 'blob' })\r\n .then(res => {\r\n modalInfo.close();\r\n\r\n const fileUrl = window.URL.createObjectURL(res);\r\n // FileSaver.saveAs(res, filename);\r\n downloadByUrl(fileUrl, { filename });\r\n })\r\n .catch(error => {\r\n console.error(error);\r\n });\r\n }\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n const createDownload = (options: { url: string; filename: string; uuid?: string; isZip?: boolean }) => {\r\n return new Promise<Blob>((resolve, reject) => {\r\n // 创建一个新的 XMLHttpRequest 对象\r\n const xhr = new XMLHttpRequest();\r\n // 初始化一个GET请求\r\n xhr.open('GET', options.url, true);\r\n xhr.responseType = 'blob'; // 设置响应类型为blob,以便处理二进制文件\r\n\r\n // 监听 progress 事件\r\n xhr.onprogress = function (event) {\r\n if (event.lengthComputable) {\r\n const percentComplete = Math.floor((event.loaded / event.total) * 100);\r\n if (options.uuid) {\r\n editElementContent(options.uuid, `当前下载进度 ${percentComplete}%`);\r\n }\r\n }\r\n };\r\n\r\n // 监听 load 事件,表示下载完成\r\n xhr.onload = function (e) {\r\n const eventTarget = e.target as XMLHttpRequest;\r\n if ([200, 304].includes(eventTarget.status)) {\r\n const blob = eventTarget.response;\r\n // const url = window.URL.createObjectURL(blob);\r\n if (!options.isZip) {\r\n FileSaver.saveAs(blob, options.filename);\r\n GmNotification({\r\n type: 'success',\r\n title: '温馨提示',\r\n message: '下载完成',\r\n duration: 3000,\r\n });\r\n }\r\n\r\n resolve(blob);\r\n }\r\n };\r\n\r\n // 监听 error 事件\r\n xhr.onerror = function (e) {\r\n GmMessage.error('下载异常,请重试');\r\n reject(e);\r\n };\r\n\r\n // 发送请求\r\n xhr.send();\r\n });\r\n };\r\n return { downloadByUrl, downloadByRes, downloadToZip };\r\n};\r\n\r\n// 动态更新 notify 中的message 信息\r\nconst editElementContent = (className: string, content: string) => {\r\n // eslint-disable-next-line unicorn/prefer-query-selector\r\n const currentEle = document.getElementsByClassName(className)[0];\r\n if (currentEle) {\r\n currentEle.innerHTML = content;\r\n }\r\n};\r\n"],"names":["uuidv4","res"],"mappings":"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"}
|
package/es/index.css
CHANGED
|
@@ -1,37 +1,3 @@
|
|
|
1
|
-
[data-v-512cf874] .gmSearchForm .el-form-item {
|
|
2
|
-
margin-right: 8px;
|
|
3
|
-
margin-bottom: 8px;
|
|
4
|
-
}
|
|
5
|
-
.gm-flex-center[data-v-d1c6dac0] {
|
|
6
|
-
align-items: center;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
.gm-flex-justify-between[data-v-d1c6dac0] {
|
|
10
|
-
justify-content: space-between;
|
|
11
|
-
}
|
|
12
|
-
[data-v-e38c9d81] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
13
|
-
border-right: none;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
[data-v-e38c9d81] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
17
|
-
height: 0;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
[data-v-e38c9d81] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
21
|
-
height: 0;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
[data-v-e38c9d81] .gmTableNoBorder.el-table--border:after {
|
|
25
|
-
height: 0;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
[data-v-e38c9d81] .gmTableNoBorder.el-table--border:before {
|
|
29
|
-
height: 0;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
[data-v-e38c9d81] .gmTableNoBorder .el-table__border-left-patch {
|
|
33
|
-
height: 0;
|
|
34
|
-
}
|
|
35
1
|
/*
|
|
36
2
|
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
|
|
37
3
|
*//*
|
|
@@ -651,6 +617,10 @@ video {
|
|
|
651
617
|
padding-left: 1rem;
|
|
652
618
|
padding-right: 1rem;
|
|
653
619
|
}
|
|
620
|
+
.gm-px-6 {
|
|
621
|
+
padding-left: 1.5rem;
|
|
622
|
+
padding-right: 1.5rem;
|
|
623
|
+
}
|
|
654
624
|
.gm-px-\[32px\] {
|
|
655
625
|
padding-left: 32px;
|
|
656
626
|
padding-right: 32px;
|
|
@@ -702,6 +672,10 @@ video {
|
|
|
702
672
|
--tw-text-opacity: 1;
|
|
703
673
|
color: rgb(251 146 60 / var(--tw-text-opacity));
|
|
704
674
|
}
|
|
675
|
+
.gm-text-red-500 {
|
|
676
|
+
--tw-text-opacity: 1;
|
|
677
|
+
color: rgb(239 68 68 / var(--tw-text-opacity));
|
|
678
|
+
}
|
|
705
679
|
.hover\:gm-text-red-500:hover {
|
|
706
680
|
--tw-text-opacity: 1;
|
|
707
681
|
color: rgb(239 68 68 / var(--tw-text-opacity));
|
|
@@ -713,6 +687,40 @@ video {
|
|
|
713
687
|
.gm-group:hover .group-hover\:gm-block {
|
|
714
688
|
display: block;
|
|
715
689
|
}
|
|
690
|
+
.gm-flex-center[data-v-d1c6dac0] {
|
|
691
|
+
align-items: center;
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
.gm-flex-justify-between[data-v-d1c6dac0] {
|
|
695
|
+
justify-content: space-between;
|
|
696
|
+
}
|
|
697
|
+
[data-v-512cf874] .gmSearchForm .el-form-item {
|
|
698
|
+
margin-right: 8px;
|
|
699
|
+
margin-bottom: 8px;
|
|
700
|
+
}
|
|
701
|
+
[data-v-e38c9d81] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
702
|
+
border-right: none;
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
[data-v-e38c9d81] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
706
|
+
height: 0;
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
[data-v-e38c9d81] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
710
|
+
height: 0;
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
[data-v-e38c9d81] .gmTableNoBorder.el-table--border:after {
|
|
714
|
+
height: 0;
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
[data-v-e38c9d81] .gmTableNoBorder.el-table--border:before {
|
|
718
|
+
height: 0;
|
|
719
|
+
}
|
|
720
|
+
|
|
721
|
+
[data-v-e38c9d81] .gmTableNoBorder .el-table__border-left-patch {
|
|
722
|
+
height: 0;
|
|
723
|
+
}
|
|
716
724
|
|
|
717
725
|
.pagination-container[data-v-8a95ba6d] {
|
|
718
726
|
background: #fff;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import type { CreateAxiosDefaults } from 'axios';
|
|
1
|
+
import type { CreateAxiosDefaults, InternalAxiosRequestConfig } from 'axios';
|
|
2
2
|
export interface CreateAxiosConfig extends CreateAxiosDefaults {
|
|
3
3
|
baseURL: string;
|
|
4
4
|
/**服务器调用成功的code 一般是 0 或 200 */
|
|
5
5
|
successCode: number;
|
|
6
6
|
}
|
|
7
|
-
export declare const createAxios: (config: CreateAxiosConfig
|
|
7
|
+
export declare const createAxios: (config: CreateAxiosConfig, options?: {
|
|
8
|
+
requestInterceptors?: ((config: InternalAxiosRequestConfig<any>) => any) | undefined;
|
|
9
|
+
} | undefined) => {
|
|
8
10
|
service: import("axios").AxiosInstance;
|
|
9
11
|
};
|
|
@@ -4,7 +4,7 @@ import Cookies from 'js-cookie';
|
|
|
4
4
|
import { res401Interceptors } from './interceptors.mjs';
|
|
5
5
|
import { responseErrorMessage } from './errorMessage.mjs';
|
|
6
6
|
|
|
7
|
-
const createAxios = (config) => {
|
|
7
|
+
const createAxios = (config, options) => {
|
|
8
8
|
const successCode = config.successCode ?? 0;
|
|
9
9
|
const service = axios.create({
|
|
10
10
|
withCredentials: true,
|
|
@@ -17,7 +17,7 @@ const createAxios = (config) => {
|
|
|
17
17
|
...config
|
|
18
18
|
});
|
|
19
19
|
service.interceptors.request.use(
|
|
20
|
-
(config2) => {
|
|
20
|
+
async (config2) => {
|
|
21
21
|
const _token = Cookies.get("token");
|
|
22
22
|
const _user = Cookies.get("sso_user_id");
|
|
23
23
|
if (!config2.params) {
|
|
@@ -29,9 +29,8 @@ const createAxios = (config) => {
|
|
|
29
29
|
if (!config2.params._user) {
|
|
30
30
|
config2.params._user = _user;
|
|
31
31
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
32
|
+
config2.headers.Authorization = `Bearer ${_token}`;
|
|
33
|
+
await options?.requestInterceptors?.(config2);
|
|
35
34
|
return config2;
|
|
36
35
|
},
|
|
37
36
|
(error) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createAxios.mjs","sources":["../../../../../../packages/utils/src/http/createAxios.ts"],"sourcesContent":["import axios from 'axios';\r\nimport { ElMessage } from 'element-plus';\r\nimport Cookies from 'js-cookie';\r\nimport { res401Interceptors } from './interceptors';\r\nimport { responseErrorMessage } from './errorMessage';\r\nimport type { AxiosError, CreateAxiosDefaults } from 'axios';\r\nexport interface CreateAxiosConfig extends CreateAxiosDefaults {\r\n baseURL: string;\r\n /**服务器调用成功的code 一般是 0 或 200 */\r\n successCode: number;\r\n}\r\n\r\nexport const createAxios = (config: CreateAxiosConfig) => {\r\n const successCode = config.successCode ?? 0;\r\n const service = axios.create({\r\n withCredentials: true, // send cookies when cross-domain requests\r\n timeout: 120_000,\r\n headers: {\r\n 'content-type': 'application/json',\r\n Accept: '*/*',\r\n },\r\n ...config,\r\n });\r\n\r\n // 请求拦截器\r\n service.interceptors.request.use(\r\n config => {\r\n const _token = Cookies.get('token');\r\n const _user = Cookies.get('sso_user_id');\r\n if (!config.params) {\r\n config.params = {};\r\n }\r\n if (!config.params._token) {\r\n config.params._token = _token;\r\n }\r\n if (!config.params._user) {\r\n config.params._user = _user;\r\n }\r\n
|
|
1
|
+
{"version":3,"file":"createAxios.mjs","sources":["../../../../../../packages/utils/src/http/createAxios.ts"],"sourcesContent":["import axios from 'axios';\r\nimport { ElMessage } from 'element-plus';\r\nimport Cookies from 'js-cookie';\r\nimport { res401Interceptors } from './interceptors';\r\nimport { responseErrorMessage } from './errorMessage';\r\nimport type { AxiosError, CreateAxiosDefaults, InternalAxiosRequestConfig } from 'axios';\r\nexport interface CreateAxiosConfig extends CreateAxiosDefaults {\r\n baseURL: string;\r\n /**服务器调用成功的code 一般是 0 或 200 */\r\n successCode: number;\r\n}\r\n\r\nexport const createAxios = (\r\n config: CreateAxiosConfig,\r\n options?: {\r\n requestInterceptors?: (config: InternalAxiosRequestConfig<any>) => any;\r\n },\r\n) => {\r\n const successCode = config.successCode ?? 0;\r\n const service = axios.create({\r\n withCredentials: true, // send cookies when cross-domain requests\r\n timeout: 120_000,\r\n headers: {\r\n 'content-type': 'application/json',\r\n Accept: '*/*',\r\n },\r\n ...config,\r\n });\r\n\r\n // 请求拦截器\r\n service.interceptors.request.use(\r\n async config => {\r\n const _token = Cookies.get('token');\r\n const _user = Cookies.get('sso_user_id');\r\n if (!config.params) {\r\n config.params = {};\r\n }\r\n if (!config.params._token) {\r\n config.params._token = _token;\r\n }\r\n if (!config.params._user) {\r\n config.params._user = _user;\r\n }\r\n config.headers.Authorization = `Bearer ${_token}`;\r\n await options?.requestInterceptors?.(config);\r\n return config;\r\n },\r\n error => {\r\n console.error('请求错误', error); // for debug\r\n return Promise.reject(error);\r\n },\r\n );\r\n // 添加响应拦截器\r\n service.interceptors.response.use(\r\n async response => {\r\n // 对响应数据做点什么\r\n const res = response.data;\r\n if (!res?.code) {\r\n return response;\r\n }\r\n if (res.code === 401) {\r\n const res = await res401Interceptors(service, response.config);\r\n return res;\r\n } else if (res.code !== successCode && res.errCode !== successCode) {\r\n ElMessage({\r\n message: res.comment ?? res.message ?? res.errMsg ?? res.msg,\r\n type: 'error',\r\n grouping: true,\r\n duration: 5 * 1000,\r\n });\r\n }\r\n return response;\r\n },\r\n async (err: AxiosError) => {\r\n console.error(err.config);\r\n if (err?.response?.status === 401 && !err.message.includes('timeout')) {\r\n const res = await res401Interceptors(service, err.config!);\r\n return res;\r\n } else {\r\n // 对响应错误做点什么\r\n responseErrorMessage(err);\r\n return Promise.reject(err);\r\n }\r\n },\r\n );\r\n\r\n return {\r\n service,\r\n };\r\n};\r\n"],"names":["config","res"],"mappings":"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"}
|
|
@@ -29,6 +29,11 @@ const giimeDevProxy = {
|
|
|
29
29
|
target: "http://192.168.4.171:9501/",
|
|
30
30
|
changeOrigin: true,
|
|
31
31
|
rewrite: (p) => p.replace(/^\/basic-api/, "")
|
|
32
|
+
},
|
|
33
|
+
"/amazon-agent-api": {
|
|
34
|
+
target: "http://192.168.4.125:10086/amazon-agent",
|
|
35
|
+
changeOrigin: true,
|
|
36
|
+
rewrite: (p) => p.replace(/^\/amazon-agent-api/, "")
|
|
32
37
|
}
|
|
33
38
|
};
|
|
34
39
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devProxy.mjs","sources":["../../../../../../packages/utils/src/http/devProxy.ts"],"sourcesContent":["import type { ProxyOptions } from 'vite';\r\n\r\nexport const giimeDevProxy: Record<string, string | ProxyOptions> = {\r\n // https://cn.vitejs.dev/config/#server-proxy\r\n '/gstore-api': {\r\n target: 'http://192.168.4.125:10086/gstore/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/gstore-api/, ''),\r\n },\r\n '/material-api': {\r\n target: 'http://192.168.4.130:8002',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/material-api/, ''),\r\n },\r\n '/shop-admin-api': {\r\n target: 'http://192.168.4.130:8001',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/shop-admin-api/, ''),\r\n },\r\n '/gateway-api': {\r\n target: 'http://192.168.1.115:8082/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/gateway-api/, ''),\r\n },\r\n '/third-api': {\r\n target: 'https://third-gw.giimall.net/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/third-api/, ''),\r\n },\r\n '/basic-api': {\r\n target: 'http://192.168.4.171:9501/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/basic-api/, ''),\r\n },\r\n};\r\n"],"names":[],"mappings":"AAEO,MAAM,aAAuD,GAAA;AAAA;AAAA,EAElE,aAAe,EAAA;AAAA,IACb,MAAQ,EAAA,oCAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,iBAAiB,EAAE,CAAA;AAAA,GAC7C;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,MAAQ,EAAA,2BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,mBAAmB,EAAE,CAAA;AAAA,GAC/C;AAAA,EACA,iBAAmB,EAAA;AAAA,IACjB,MAAQ,EAAA,2BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,qBAAqB,EAAE,CAAA;AAAA,GACjD;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,MAAQ,EAAA,4BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,kBAAkB,EAAE,CAAA;AAAA,GAC9C;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA,+BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,gBAAgB,EAAE,CAAA;AAAA,GAC5C;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA,4BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,gBAAgB,EAAE,CAAA;AAAA,GAC5C;AACF;;;;"}
|
|
1
|
+
{"version":3,"file":"devProxy.mjs","sources":["../../../../../../packages/utils/src/http/devProxy.ts"],"sourcesContent":["import type { ProxyOptions } from 'vite';\r\n\r\nexport const giimeDevProxy: Record<string, string | ProxyOptions> = {\r\n // https://cn.vitejs.dev/config/#server-proxy\r\n '/gstore-api': {\r\n target: 'http://192.168.4.125:10086/gstore/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/gstore-api/, ''),\r\n },\r\n '/material-api': {\r\n target: 'http://192.168.4.130:8002',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/material-api/, ''),\r\n },\r\n '/shop-admin-api': {\r\n target: 'http://192.168.4.130:8001',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/shop-admin-api/, ''),\r\n },\r\n '/gateway-api': {\r\n target: 'http://192.168.1.115:8082/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/gateway-api/, ''),\r\n },\r\n '/third-api': {\r\n target: 'https://third-gw.giimall.net/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/third-api/, ''),\r\n },\r\n '/basic-api': {\r\n target: 'http://192.168.4.171:9501/',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/basic-api/, ''),\r\n },\r\n '/amazon-agent-api': {\r\n target: 'http://192.168.4.125:10086/amazon-agent',\r\n changeOrigin: true,\r\n rewrite: p => p.replace(/^\\/amazon-agent-api/, ''),\r\n },\r\n};\r\n"],"names":[],"mappings":"AAEO,MAAM,aAAuD,GAAA;AAAA;AAAA,EAElE,aAAe,EAAA;AAAA,IACb,MAAQ,EAAA,oCAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,iBAAiB,EAAE,CAAA;AAAA,GAC7C;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,MAAQ,EAAA,2BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,mBAAmB,EAAE,CAAA;AAAA,GAC/C;AAAA,EACA,iBAAmB,EAAA;AAAA,IACjB,MAAQ,EAAA,2BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,qBAAqB,EAAE,CAAA;AAAA,GACjD;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,MAAQ,EAAA,4BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,kBAAkB,EAAE,CAAA;AAAA,GAC9C;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA,+BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,gBAAgB,EAAE,CAAA;AAAA,GAC5C;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,MAAQ,EAAA,4BAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,gBAAgB,EAAE,CAAA;AAAA,GAC5C;AAAA,EACA,mBAAqB,EAAA;AAAA,IACnB,MAAQ,EAAA,yCAAA;AAAA,IACR,YAAc,EAAA,IAAA;AAAA,IACd,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,CAAQ,uBAAuB,EAAE,CAAA;AAAA,GACnD;AACF;;;;"}
|
package/global.d.ts
CHANGED
|
@@ -116,6 +116,7 @@ declare module '@vue/runtime-core' {
|
|
|
116
116
|
GmDrawerForm: typeof import('giime')['GmDrawerForm']
|
|
117
117
|
GmFormItemModule: typeof import('giime')['GmFormItemModule']
|
|
118
118
|
GmSelectOptions: typeof import('giime')['GmSelectOptions']
|
|
119
|
+
GmImportDialog: typeof import('giime')['GmImportDialog']
|
|
119
120
|
GmTablePro: typeof import('giime')['GmTablePro']
|
|
120
121
|
GmTableColumnPro: typeof import('giime')['GmTableColumnPro']
|
|
121
122
|
GmTableHeaderForm: typeof import('giime')['GmTableHeaderForm']
|
package/lib/components/index.js
CHANGED
|
@@ -253,11 +253,13 @@ var numberInterval = require('./src/composite/numberInterval/numberInterval.js')
|
|
|
253
253
|
var index$1X = require('./src/composite/numberInterval/index.js');
|
|
254
254
|
var selectOptions = require('./src/composite/selectOptions/selectOptions.js');
|
|
255
255
|
var index$1Y = require('./src/composite/selectOptions/index.js');
|
|
256
|
-
var
|
|
257
|
-
var index$
|
|
258
|
-
var index$
|
|
259
|
-
var index$
|
|
260
|
-
var index$
|
|
256
|
+
var importDialog = require('./src/composite/importDialog/importDialog.js');
|
|
257
|
+
var index$1Z = require('./src/composite/importDialog/index.js');
|
|
258
|
+
var index$1_ = require('./src/plugins/message/index.js');
|
|
259
|
+
var index$1$ = require('./src/plugins/loading/index.js');
|
|
260
|
+
var index$20 = require('./src/plugins/messageBox/index.js');
|
|
261
|
+
var index$21 = require('./src/plugins/notification/index.js');
|
|
262
|
+
var index$22 = require('./src/plugins/copy/index.js');
|
|
261
263
|
|
|
262
264
|
|
|
263
265
|
|
|
@@ -622,9 +624,12 @@ exports.GmNumberInterval = index$1X.GmNumberInterval;
|
|
|
622
624
|
exports.selectOptionsEmits = selectOptions.selectOptionsEmits;
|
|
623
625
|
exports.selectOptionsProps = selectOptions.selectOptionsProps;
|
|
624
626
|
exports.GmSelectOptions = index$1Y.GmSelectOptions;
|
|
625
|
-
exports.
|
|
626
|
-
exports.
|
|
627
|
-
exports.
|
|
628
|
-
exports.
|
|
629
|
-
exports.
|
|
627
|
+
exports.importDialogEmits = importDialog.importDialogEmits;
|
|
628
|
+
exports.importDialogProps = importDialog.importDialogProps;
|
|
629
|
+
exports.GmImportDialog = index$1Z.GmImportDialog;
|
|
630
|
+
exports.GmMessage = index$1_.GmMessage;
|
|
631
|
+
exports.GmLoading = index$1$.GmLoading;
|
|
632
|
+
exports.GmMessageBox = index$20.GmMessageBox;
|
|
633
|
+
exports.GmNotification = index$21.GmNotification;
|
|
634
|
+
exports.GmCopy = index$22.GmCopy;
|
|
630
635
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { UploadFile, UploadFiles } from 'element-plus';
|
|
2
|
+
/** 取消按钮 */
|
|
3
|
+
declare function closeDialog(): void;
|
|
4
|
+
/** 表单重置 */
|
|
5
|
+
declare function reset(): void;
|
|
6
|
+
declare const _default: import("vue").DefineComponent<{
|
|
7
|
+
onSuccess: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
8
|
+
(): (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
9
|
+
new (): any;
|
|
10
|
+
readonly prototype: any;
|
|
11
|
+
} | ((new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
12
|
+
(): (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
13
|
+
new (): any;
|
|
14
|
+
readonly prototype: any;
|
|
15
|
+
})[], unknown, unknown, () => void, boolean>;
|
|
16
|
+
onError: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
17
|
+
(): (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
18
|
+
new (): any;
|
|
19
|
+
readonly prototype: any;
|
|
20
|
+
} | ((new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
21
|
+
(): (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
22
|
+
new (): any;
|
|
23
|
+
readonly prototype: any;
|
|
24
|
+
})[], unknown, unknown, () => void, boolean>;
|
|
25
|
+
httpRequest: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("element-plus").UploadRequestHandler) | (() => import("element-plus").UploadRequestHandler) | {
|
|
26
|
+
(): import("element-plus").UploadRequestHandler;
|
|
27
|
+
new (): any;
|
|
28
|
+
readonly prototype: any;
|
|
29
|
+
} | ((new (...args: any[]) => import("element-plus").UploadRequestHandler) | (() => import("element-plus").UploadRequestHandler) | {
|
|
30
|
+
(): import("element-plus").UploadRequestHandler;
|
|
31
|
+
new (): any;
|
|
32
|
+
readonly prototype: any;
|
|
33
|
+
})[], unknown, unknown, import("element-plus").UploadRequestHandler, boolean>;
|
|
34
|
+
}, {
|
|
35
|
+
openDialog: () => void;
|
|
36
|
+
closeDialog: typeof closeDialog;
|
|
37
|
+
reset: typeof reset;
|
|
38
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
39
|
+
downloadTemplate: () => void;
|
|
40
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
41
|
+
onSuccess: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
42
|
+
(): (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
43
|
+
new (): any;
|
|
44
|
+
readonly prototype: any;
|
|
45
|
+
} | ((new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
46
|
+
(): (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
47
|
+
new (): any;
|
|
48
|
+
readonly prototype: any;
|
|
49
|
+
})[], unknown, unknown, () => void, boolean>;
|
|
50
|
+
onError: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
51
|
+
(): (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
52
|
+
new (): any;
|
|
53
|
+
readonly prototype: any;
|
|
54
|
+
} | ((new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void) | {
|
|
55
|
+
(): (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
56
|
+
new (): any;
|
|
57
|
+
readonly prototype: any;
|
|
58
|
+
})[], unknown, unknown, () => void, boolean>;
|
|
59
|
+
httpRequest: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("element-plus").UploadRequestHandler) | (() => import("element-plus").UploadRequestHandler) | {
|
|
60
|
+
(): import("element-plus").UploadRequestHandler;
|
|
61
|
+
new (): any;
|
|
62
|
+
readonly prototype: any;
|
|
63
|
+
} | ((new (...args: any[]) => import("element-plus").UploadRequestHandler) | (() => import("element-plus").UploadRequestHandler) | {
|
|
64
|
+
(): import("element-plus").UploadRequestHandler;
|
|
65
|
+
new (): any;
|
|
66
|
+
readonly prototype: any;
|
|
67
|
+
})[], unknown, unknown, import("element-plus").UploadRequestHandler, boolean>;
|
|
68
|
+
}>> & {
|
|
69
|
+
onDownloadTemplate?: (() => any) | undefined;
|
|
70
|
+
}, {
|
|
71
|
+
onError: (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
72
|
+
onSuccess: (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => void;
|
|
73
|
+
httpRequest: import("element-plus").UploadRequestHandler;
|
|
74
|
+
}, {}>;
|
|
75
|
+
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var ImportDialog_vue_vue_type_script_setup_true_lang = require('./ImportDialog.vue2.js');
|
|
6
|
+
var _pluginVue_exportHelper = require('../../../../_virtual/_plugin-vue_export-helper.js');
|
|
7
|
+
|
|
8
|
+
var ImportDialog = /* @__PURE__ */ _pluginVue_exportHelper.default(ImportDialog_vue_vue_type_script_setup_true_lang.default, [["__file", "ImportDialog.vue"]]);
|
|
9
|
+
|
|
10
|
+
exports.default = ImportDialog;
|
|
11
|
+
//# sourceMappingURL=ImportDialog.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImportDialog.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue = require('vue');
|
|
6
|
+
var elementPlus = require('element-plus');
|
|
7
|
+
var iconsVue = require('@element-plus/icons-vue');
|
|
8
|
+
var importDialog = require('./importDialog.js');
|
|
9
|
+
|
|
10
|
+
const _hoisted_1 = { class: "" };
|
|
11
|
+
const _hoisted_2 = { class: "gm-flex gm-items-center" };
|
|
12
|
+
const _hoisted_3 = /* @__PURE__ */ vue.createElementVNode(
|
|
13
|
+
"div",
|
|
14
|
+
{ class: "el-upload__tip gm-text-red-500" },
|
|
15
|
+
"\u9650\u52361\u4E2A\u6587\u4EF6\uFF0C\u65B0\u6587\u4EF6\u5C06\u8986\u76D6\u65E7\u6587\u4EF6",
|
|
16
|
+
-1
|
|
17
|
+
/* HOISTED */
|
|
18
|
+
);
|
|
19
|
+
const _hoisted_4 = { class: "dialog-footer" };
|
|
20
|
+
var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
21
|
+
...{
|
|
22
|
+
name: "GmImportDialog"
|
|
23
|
+
},
|
|
24
|
+
__name: "ImportDialog",
|
|
25
|
+
props: importDialog.importDialogProps,
|
|
26
|
+
emits: importDialog.importDialogEmits,
|
|
27
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
28
|
+
const props = __props;
|
|
29
|
+
const emit = __emit;
|
|
30
|
+
const fileList = vue.ref([]);
|
|
31
|
+
const uploadRef = vue.ref();
|
|
32
|
+
const handleExceed = (files) => {
|
|
33
|
+
uploadRef.value.clearFiles();
|
|
34
|
+
const file = files[0];
|
|
35
|
+
file.uid = elementPlus.genFileId();
|
|
36
|
+
uploadRef.value.handleStart(file);
|
|
37
|
+
};
|
|
38
|
+
const submitUpload = () => {
|
|
39
|
+
uploadRef.value.submit();
|
|
40
|
+
};
|
|
41
|
+
const dialogVisible = vue.ref(false);
|
|
42
|
+
const openDialog = () => {
|
|
43
|
+
dialogVisible.value = true;
|
|
44
|
+
};
|
|
45
|
+
function closeDialog() {
|
|
46
|
+
dialogVisible.value = false;
|
|
47
|
+
reset();
|
|
48
|
+
}
|
|
49
|
+
function reset() {
|
|
50
|
+
fileList.value = [];
|
|
51
|
+
}
|
|
52
|
+
const uploadLoading = vue.ref(false);
|
|
53
|
+
const httpRequest = (options) => {
|
|
54
|
+
uploadLoading.value = true;
|
|
55
|
+
return props.httpRequest(options);
|
|
56
|
+
};
|
|
57
|
+
function handleSuccess(response, uploadFile, uploadFiles) {
|
|
58
|
+
uploadLoading.value = false;
|
|
59
|
+
return props.onSuccess(response, uploadFile, uploadFiles);
|
|
60
|
+
}
|
|
61
|
+
const handleError = (error, uploadFile, uploadFiles) => {
|
|
62
|
+
uploadLoading.value = false;
|
|
63
|
+
return props.onError(error, uploadFile, uploadFiles);
|
|
64
|
+
};
|
|
65
|
+
__expose({
|
|
66
|
+
openDialog,
|
|
67
|
+
closeDialog,
|
|
68
|
+
reset
|
|
69
|
+
});
|
|
70
|
+
return (_ctx, _cache) => {
|
|
71
|
+
const _component_gm_button = vue.resolveComponent("gm-button");
|
|
72
|
+
const _component_gm_upload = vue.resolveComponent("gm-upload");
|
|
73
|
+
const _component_gm_dialog = vue.resolveComponent("gm-dialog");
|
|
74
|
+
return vue.openBlock(), vue.createElementBlock(
|
|
75
|
+
vue.Fragment,
|
|
76
|
+
null,
|
|
77
|
+
[
|
|
78
|
+
vue.createCommentVNode(" \u5BFC\u5165\u5BF9\u8BDD\u6846 "),
|
|
79
|
+
vue.createVNode(_component_gm_dialog, {
|
|
80
|
+
modelValue: dialogVisible.value,
|
|
81
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => dialogVisible.value = $event),
|
|
82
|
+
title: "\u5BFC\u5165",
|
|
83
|
+
width: "500px",
|
|
84
|
+
"append-to-body": ""
|
|
85
|
+
}, {
|
|
86
|
+
footer: vue.withCtx(() => [
|
|
87
|
+
vue.createElementVNode("div", _hoisted_4, [
|
|
88
|
+
vue.createVNode(_component_gm_button, {
|
|
89
|
+
type: "primary",
|
|
90
|
+
loading: uploadLoading.value,
|
|
91
|
+
onClick: submitUpload
|
|
92
|
+
}, {
|
|
93
|
+
default: vue.withCtx(() => [
|
|
94
|
+
vue.createTextVNode("\u786E \u5B9A")
|
|
95
|
+
]),
|
|
96
|
+
_: 1
|
|
97
|
+
/* STABLE */
|
|
98
|
+
}, 8, ["loading"]),
|
|
99
|
+
vue.createVNode(_component_gm_button, { onClick: closeDialog }, {
|
|
100
|
+
default: vue.withCtx(() => [
|
|
101
|
+
vue.createTextVNode("\u53D6 \u6D88")
|
|
102
|
+
]),
|
|
103
|
+
_: 1
|
|
104
|
+
/* STABLE */
|
|
105
|
+
})
|
|
106
|
+
])
|
|
107
|
+
]),
|
|
108
|
+
default: vue.withCtx(() => [
|
|
109
|
+
vue.createElementVNode("div", _hoisted_1, [
|
|
110
|
+
vue.createVNode(_component_gm_upload, {
|
|
111
|
+
ref_key: "uploadRef",
|
|
112
|
+
ref: uploadRef,
|
|
113
|
+
"file-list": fileList.value,
|
|
114
|
+
"onUpdate:fileList": _cache[1] || (_cache[1] = ($event) => fileList.value = $event),
|
|
115
|
+
action: "",
|
|
116
|
+
limit: 1,
|
|
117
|
+
"http-request": httpRequest,
|
|
118
|
+
"on-exceed": handleExceed,
|
|
119
|
+
"on-success": handleSuccess,
|
|
120
|
+
"on-error": handleError,
|
|
121
|
+
"auto-upload": false,
|
|
122
|
+
class: "gm-px-6"
|
|
123
|
+
}, {
|
|
124
|
+
tip: vue.withCtx(() => [
|
|
125
|
+
_hoisted_3
|
|
126
|
+
]),
|
|
127
|
+
default: vue.withCtx(() => [
|
|
128
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
129
|
+
vue.createVNode(_component_gm_button, {
|
|
130
|
+
type: "primary",
|
|
131
|
+
icon: vue.unref(iconsVue.Download),
|
|
132
|
+
onClick: _cache[0] || (_cache[0] = vue.withModifiers(($event) => emit("downloadTemplate"), ["stop"]))
|
|
133
|
+
}, {
|
|
134
|
+
default: vue.withCtx(() => [
|
|
135
|
+
vue.createTextVNode(" \u4E0B\u8F7D\u5BFC\u5165\u6A21\u677F ")
|
|
136
|
+
]),
|
|
137
|
+
_: 1
|
|
138
|
+
/* STABLE */
|
|
139
|
+
}, 8, ["icon"]),
|
|
140
|
+
vue.createVNode(_component_gm_button, {
|
|
141
|
+
type: "primary",
|
|
142
|
+
icon: vue.unref(iconsVue.Upload),
|
|
143
|
+
style: { "margin-left": "36px" }
|
|
144
|
+
}, {
|
|
145
|
+
default: vue.withCtx(() => [
|
|
146
|
+
vue.createTextVNode("\u9009\u62E9\u6587\u4EF6\u5BFC\u5165")
|
|
147
|
+
]),
|
|
148
|
+
_: 1
|
|
149
|
+
/* STABLE */
|
|
150
|
+
}, 8, ["icon"])
|
|
151
|
+
])
|
|
152
|
+
]),
|
|
153
|
+
_: 1
|
|
154
|
+
/* STABLE */
|
|
155
|
+
}, 8, ["file-list"])
|
|
156
|
+
])
|
|
157
|
+
]),
|
|
158
|
+
_: 1
|
|
159
|
+
/* STABLE */
|
|
160
|
+
}, 8, ["modelValue"])
|
|
161
|
+
],
|
|
162
|
+
2112
|
|
163
|
+
/* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
|
|
164
|
+
);
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
exports.default = _sfc_main;
|
|
170
|
+
//# sourceMappingURL=ImportDialog.vue2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImportDialog.vue2.js","sources":["../../../../../../../packages/components/src/composite/importDialog/ImportDialog.vue"],"sourcesContent":["<template>\r\n <!-- 导入对话框 -->\r\n <gm-dialog v-model=\"dialogVisible\" title=\"导入\" width=\"500px\" append-to-body>\r\n <div class=\" \">\r\n <gm-upload\r\n ref=\"uploadRef\"\r\n v-model:file-list=\"fileList\"\r\n action=\"\"\r\n :limit=\"1\"\r\n :http-request=\"httpRequest\"\r\n :on-exceed=\"handleExceed\"\r\n :on-success=\"handleSuccess\"\r\n :on-error=\"handleError\"\r\n :auto-upload=\"false\"\r\n class=\"gm-px-6\"\r\n >\r\n <div class=\"gm-flex gm-items-center\">\r\n <gm-button type=\"primary\" :icon=\"Download\" @click.stop=\"emit('downloadTemplate')\"> 下载导入模板 </gm-button>\r\n <gm-button type=\"primary\" :icon=\"Upload\" style=\"margin-left: 36px\">选择文件导入</gm-button>\r\n </div>\r\n\r\n <!-- <el-button class=\"ml-3\" type=\"success\" @click=\"submitUpload\"> upload to server </el-button> -->\r\n <template #tip>\r\n <div class=\"el-upload__tip gm-text-red-500\">限制1个文件,新文件将覆盖旧文件</div>\r\n </template>\r\n </gm-upload>\r\n </div>\r\n\r\n <template #footer>\r\n <div class=\"dialog-footer\">\r\n <gm-button type=\"primary\" :loading=\"uploadLoading\" @click=\"submitUpload\">确 定</gm-button>\r\n <gm-button @click=\"closeDialog\">取 消</gm-button>\r\n </div>\r\n </template>\r\n </gm-dialog>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { ref } from 'vue';\r\nimport { genFileId } from 'element-plus';\r\nimport { Download, Upload } from '@element-plus/icons-vue';\r\nimport { importDialogEmits, importDialogProps } from './importDialog';\r\nimport type { UploadInstance } from '../../base/upload';\r\nimport type { UploadFile, UploadFiles, UploadProps, UploadRawFile, UploadRequestOptions, UploadUserFile } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmImportDialog',\r\n});\r\nconst props = defineProps(importDialogProps);\r\nconst emit = defineEmits(importDialogEmits);\r\n\r\nconst fileList = ref<UploadUserFile[]>([]);\r\nconst uploadRef = ref<UploadInstance>();\r\n\r\nconst handleExceed: UploadProps['onExceed'] = files => {\r\n uploadRef.value!.clearFiles();\r\n const file = files[0] as UploadRawFile;\r\n file.uid = genFileId();\r\n uploadRef.value!.handleStart(file);\r\n};\r\n\r\nconst submitUpload = () => {\r\n uploadRef.value!.submit();\r\n};\r\n/**\r\n * 编辑表单\r\n */\r\n// const dialogVisible = defineModel<boolean>('dialogVisible', { required: true });\r\nconst dialogVisible = ref(false);\r\n\r\n/** 新增按钮操作 */\r\nconst openDialog = () => {\r\n dialogVisible.value = true;\r\n};\r\n/** 取消按钮 */\r\nfunction closeDialog() {\r\n dialogVisible.value = false;\r\n reset();\r\n}\r\n/** 表单重置 */\r\nfunction reset() {\r\n fileList.value = [];\r\n}\r\n\r\nconst uploadLoading = ref(false);\r\nconst httpRequest = (options: UploadRequestOptions) => {\r\n uploadLoading.value = true;\r\n return props.httpRequest(options);\r\n};\r\n// 上传成功\r\nfunction handleSuccess(response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) {\r\n uploadLoading.value = false;\r\n return props.onSuccess(response, uploadFile, uploadFiles);\r\n}\r\n// 上传失败\r\nconst handleError = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n uploadLoading.value = false;\r\n return props.onError(error, uploadFile, uploadFiles);\r\n};\r\ndefineExpose({\r\n openDialog,\r\n closeDialog,\r\n reset,\r\n});\r\n</script>\r\n"],"names":["ref","genFileId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAM,MAAA,QAAA,GAAWA,OAAsB,CAAA,EAAE,CAAA,CAAA;AACzC,IAAA,MAAM,YAAYA,OAAoB,EAAA,CAAA;AAEtC,IAAA,MAAM,eAAwC,CAAS,KAAA,KAAA;AACrD,MAAA,SAAA,CAAU,MAAO,UAAW,EAAA,CAAA;AAC5B,MAAM,MAAA,IAAA,GAAO,MAAM,CAAC,CAAA,CAAA;AACpB,MAAA,IAAA,CAAK,MAAMC,qBAAU,EAAA,CAAA;AACrB,MAAU,SAAA,CAAA,KAAA,CAAO,YAAY,IAAI,CAAA,CAAA;AAAA,KACnC,CAAA;AAEA,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,SAAA,CAAU,MAAO,MAAO,EAAA,CAAA;AAAA,KAC1B,CAAA;AAKA,IAAM,MAAA,aAAA,GAAgBD,QAAI,KAAK,CAAA,CAAA;AAG/B,IAAA,MAAM,aAAa,MAAM;AACvB,MAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAA,SAAS,WAAc,GAAA;AACrB,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,MAAM,KAAA,EAAA,CAAA;AAAA,KACR;AAEA,IAAA,SAAS,KAAQ,GAAA;AACf,MAAA,QAAA,CAAS,QAAQ,EAAC,CAAA;AAAA,KACpB;AAEA,IAAM,MAAA,aAAA,GAAgBA,QAAI,KAAK,CAAA,CAAA;AAC/B,IAAM,MAAA,WAAA,GAAc,CAAC,OAAkC,KAAA;AACrD,MAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AACtB,MAAO,OAAA,KAAA,CAAM,YAAY,OAAO,CAAA,CAAA;AAAA,KAClC,CAAA;AAEA,IAAS,SAAA,aAAA,CAAc,QAAe,EAAA,UAAA,EAAwB,WAA0B,EAAA;AACtF,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,MAAA,OAAO,KAAM,CAAA,SAAA,CAAU,QAAU,EAAA,UAAA,EAAY,WAAW,CAAA,CAAA;AAAA,KAC1D;AAEA,IAAA,MAAM,WAAc,GAAA,CAAC,KAAc,EAAA,UAAA,EAAwB,WAA6B,KAAA;AACtF,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,MAAA,OAAO,KAAM,CAAA,OAAA,CAAQ,KAAO,EAAA,UAAA,EAAY,WAAW,CAAA,CAAA;AAAA,KACrD,CAAA;AACA,IAAa,QAAA,CAAA;AAAA,MACX,UAAA;AAAA,MACA,WAAA;AAAA,MACA,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|