tav-ui
Version:
1 lines • 3.43 kB
Source Map (JSON)
{"version":3,"file":"download2.mjs","sources":["../../../../../../../../packages/components/file/src/utils/download.ts"],"sourcesContent":["import { useMessage } from '@tav-ui/hooks/web/useMessage'\nimport { tavI18n } from '@tav-ui/locales'\nimport { type FileActionUploadApiResponseRecord } from '../typings'\n\nconst { createMessage } = useMessage()\n\nexport async function fileSingleDownload(options: {\n file: FileActionUploadApiResponseRecord\n api: (...args: any[]) => Promise<any>\n isWaterMarker?: boolean\n fileName?: string\n}) {\n const { file, api, fileName, isWaterMarker = false } = options\n\n if (!file || !file.id) {\n createMessage.warning(tavI18n('Tav.file.download.1'))\n return\n }\n\n const { data, success } = await api({ id: file.id })\n if (success === true && data) {\n const aEl = window.document.createElement('a') as HTMLAnchorElement\n aEl.setAttribute(\n 'download',\n fileName ||\n // api.name // 打包之后读取到的函数名为混淆代码!\n (isWaterMarker ? decodeURIComponent(data.split('/').at(-1)) : file.fullName)\n )\n aEl.setAttribute('href', data)\n aEl.setAttribute('target', '_blank')\n aEl.click()\n setTimeout(() => {\n aEl.remove()\n }, 5000)\n }\n}\n\nexport async function fileMultipleDownload(options: {\n files: FileActionUploadApiResponseRecord[]\n api: (...args: any[]) => Promise<any>\n fileName?: string\n}) {\n const { files, api, fileName } = options\n\n if (Array.isArray(files) && files.length === 0) {\n createMessage.warning(tavI18n('Tav.file.download.1'))\n return\n }\n\n const ids = files.map((file) => file.id)\n const { success, data } = await api({ fileName: fileName || tavI18n('Tav.file.download.2'), ids })\n if (success === true && data) {\n window.open(data)\n }\n}\n"],"names":[],"mappings":";;;;AAEA,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,CAAC;AAChC,eAAe,kBAAkB,CAAC,OAAO,EAAE;AAClD,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;AACjE,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;AACzB,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAC1D,IAAI,OAAO;AACX,GAAG;AACH,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AACvD,EAAE,IAAI,OAAO,KAAK,IAAI,IAAI,IAAI,EAAE;AAChC,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACnD,IAAI,GAAG,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,KAAK,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC3H,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACnC,IAAI,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACzC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;AAChB,IAAI,UAAU,CAAC,MAAM;AACrB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;AACnB,KAAK,EAAE,GAAG,CAAC,CAAC;AACZ,GAAG;AACH,CAAC;AACM,eAAe,oBAAoB,CAAC,OAAO,EAAE;AACpD,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;AAC3C,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AAClD,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAC1D,IAAI,OAAO;AACX,GAAG;AACH,EAAE,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3C,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,IAAI,OAAO,CAAC,qBAAqB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACrG,EAAE,IAAI,OAAO,KAAK,IAAI,IAAI,IAAI,EAAE;AAChC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtB,GAAG;AACH;;;;"}