1import{r as m}from"./jsx-runtime-CAOzMBF_.js";function C(i){const{uploaderRef:n,currentFileRef:t,perfStatsRef:a,setUploadState:c,setUploadError:U,setSpeedBps:l,setEtaSeconds:u,setBytesUploaded:s,setBytesTotal:d,onUrlClear:p,fileInputRef:o}=i;return{pauseUpload:()=>{const e=n.current;e&&(e.abort(),a.current=null,l(void 0),u(void 0),c("IDLE"))},resumeUpload:()=>{const e=n.current;!e||!t.current||(a.current=null,U(void 0),l(void 0),u(void 0),c("STARTING"),e.start())},cancelUpload:()=>{const e=n.current;e&&e.abort(!0),n.current=null,t.current=null,a.current=null,U(void 0),c("IDLE"),s==null||s(0),d==null||d(void 0),l(void 0),u(void 0),p==null||p(),o!=null&&o.current&&(o.current.value="")},canPauseUpload:e=>n.current!=null&&(e==="UPLOADING"||e==="STARTING"),canResumeUpload:e=>n.current!=null&&t.current!=null&&(e==="IDLE"||e==="FAILED"),canCancelUpload:e=>n.current!=null&&e!=="DONE"&&e!=="CANCELED"}}function I(i){const{uploadState:n,uploaderRef:t,currentFileRef:a,perfStatsRef:c,setUploadState:U,setUploadError:l,setSpeedBps:u,setEtaSeconds:s,setBytesUploaded:d,setBytesTotal:p,onUrlClear:o,fileInputRef:E}=i,r=m.useMemo(()=>C({uploaderRef:t,currentFileRef:a,perfStatsRef:c,setUploadState:U,setUploadError:l,setSpeedBps:u,setEtaSeconds:s,setBytesUploaded:d,setBytesTotal:p,onUrlClear:o,fileInputRef:E}),[]),f=r.canPauseUpload(n),v=r.canResumeUpload(n),R=r.canCancelUpload(n);return{onPause:f?r.pauseUpload:void 0,onResume:v?r.resumeUpload:void 0,onCancel:R?r.cancelUpload:void 0,canPause:f,canResume:v,canCancel:R}}export{I as u};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.