/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/@beisen-phoenix/use-ajax-upload@3.3.55/lib/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import"core-js/modules/es6.array.find-index";import"core-js/modules/es6.object.assign";import upload from"./request";import{msgType,EStatus}from"@beisen-phoenix/upload-intf";import{useCallback,useRef}from"react";import defaultParseResponse from"./parseResponse";export default function useAjaxUpload(e){var r=e.files,a=e.url,t=e.onChange,n=e.onEachComplete,u=e.onError,s=e.parseResponse,l=void 0===s?defaultParseResponse:s,o=useRef({queue:[],callback:t,allFiles:r,errCallback:u,eachCallback:n});o.current=Object.assign(o.current,{allFiles:r,callback:t,eachCallback:n,errCallback:u});var c=useCallback((function(e,r){var a=o.current,t=a.allFiles,n=a.callback,u=a.queue,s=t.findIndex((function(r){return r.lid===e}));-1!==s?n([].concat(_toConsumableArray(t.slice(0,s)),[Object.assign({},t[s],r)],_toConsumableArray(t.slice(s+1)))):o.current.queue=u.filter((function(r){return r!==e}))}),[]),i=useCallback((function(e,r){c(r,{percent:e,status:EStatus.progress})}),[]),f=useCallback((function(e,r){var a=o.current,t=a.queue,n=a.eachCallback,u=Object.assign({status:EStatus.done},l(e));-1!==t.indexOf(r)&&(o.current.queue=t.filter((function(e){return e!==r})),"function"==typeof n&&n(u),c(r,u))}),[]),p=useCallback((function(e,r){var a=o.current.errCallback;c(r,{status:EStatus.error}),"function"==typeof a&&a({type:msgType.networkFail,err:e,lid:r})}),[]);a&&r.forEach((function(e){if(e.status===EStatus.pending){var r=e.lid,t=void 0===r?"":r;if(-1===o.current.queue.indexOf(t)){o.current.queue.push(t);var n="function"==typeof a?a(e.raw):a;upload({file:e.raw,url:n,onError:p,filename:"file",onProgress:i,onSuccess:f,withCredentials:!0},t)}}}))}
//# sourceMappingURL=/sm/36c285a30fd8af46b11330640f82a769825fd184df8c8dc9ef5b4bb97c25736d.map