| 123456789101112131415161718192021222324252627282930313233343536 | 
							- import { upload } from '@/service/base'
 - 
 - type ImageUploadParams = {
 -   file: File
 -   onProgressCallback: (progress: number) => void
 -   onSuccessCallback: (res: { id: string }) => void
 -   onErrorCallback: () => void
 - }
 - type ImageUpload = (v: ImageUploadParams, isPublic?: boolean, url?: string) => void
 - export const imageUpload: ImageUpload = ({
 -   file,
 -   onProgressCallback,
 -   onSuccessCallback,
 -   onErrorCallback,
 - }, isPublic, url) => {
 -   const formData = new FormData()
 -   formData.append('file', file)
 -   const onProgress = (e: ProgressEvent) => {
 -     if (e.lengthComputable) {
 -       const percent = Math.floor(e.loaded / e.total * 100)
 -       onProgressCallback(percent)
 -     }
 -   }
 - 
 -   upload({
 -     xhr: new XMLHttpRequest(),
 -     data: formData,
 -     onprogress: onProgress,
 -   }, isPublic, url)
 -     .then((res: { id: string }) => {
 -       onSuccessCallback(res)
 -     })
 -     .catch(() => {
 -       onErrorCallback()
 -     })
 - }
 
 
  |