1import{o as n}from"./index-BNPflmqD.js";import{k as f,m as w}from"./traceApi-BoQZsKq1.js";function d(r){return`/agency/roster/${encodeURIComponent(r)}/trace`}const g=8e6;function u(r){var o;const a=(o=r==null?void 0:r.response)==null?void 0:o.status;return a===503||a===501||a===404}function b(r,a){if(r.size>g)throw new Error(`File is too large for multipart fallback (${Math.round(r.size/1e6)}MB). Direct R2 upload is required â check Trace storage status and retry.`)}async function k(){const{data:r}=await n.get("/agency/trace/portfolio");return r}async function A(){const{data:r}=await n.post("/agency/billing/trace-addon/checkout");return r}async function m(){const{data:r}=await n.post("/agency/billing/trace-command/checkout");return r}async function V(){const{data:r}=await n.get("/agency/trace/demand-desk");return r}async function C(r,a){const{data:o}=await n.post(`/agency/roster/${encodeURIComponent(r)}/trace/enable`,{enabled:a});return o}async function S(r){const{data:a}=await n.post("/agency/trace/report-pack",{creator_ids:r,include_exports:!0},{responseType:"blob",timeout:18e4});return a}async function $(r){const{data:a}=await n.get(`${d(r)}/watch-targets`);return a.watch_targets??[]}async function h(r,a){const{data:o}=await n.post(`${d(r)}/watch-targets`,a);return o}async function p(r,a){await n.delete(`${d(r)}/watch-targets/${encodeURIComponent(a)}`)}async function _(r,a,o){const{data:l}=await n.patch(`${d(r)}/watch-targets/${encodeURIComponent(a)}`,o);return l}function D(r){const a=d(r);async function o(e,t){const{data:c}=await n.post(`${a}/presign-upload`,{purpose:t,filename:e.name||(t==="encode"?"source.mp4":"suspect.mp4"),content_type:e.type||"video/mp4"}),s=await fetch(c.upload_url,{method:"PUT",body:e,headers:e.type?{"Content-Type":e.type}:void 0});if(!s.ok)throw new Error(`Direct upload failed (${s.status})`);return c.object_key}async function l(e){const t=new FormData;t.append("file",e.file),t.append("title",e.title||e.file.name),t.append("subscriber_watermark_id",String(e.subscriberWatermarkId)),t.append("content_class",e.contentClass||"default"),t.append("enable_ab",e.enableAb?"true":"false"),t.append("enable_audio",e.enableAudio!==!1?"true":"false"),t.append("enable_visible",e.enableVisible!==!1?"true":"false");const{data:c}=await n.post(`${a}/videos`,t,{timeout:12e4});return c}return{async fetchTraceStatus(){const{data:e}=await n.get(`${a}/status`);return e},async fetchTraceEntitlement(){const{data:e}=await n.get(`${a}/entitlement`);return e},async startTraceSubscription(){const e=window.location.origin,{data:t}=await n.post(`${a}/subscribe`,{success_url:`${e}/agency/settings/billing?billing=trace_success`,cancel_url:`${e}/agency/settings/billing?billing=cancelled`});return t},async fetchValueEquation(e){const{data:t}=await n.get(`${a}/value-equation`,{params:e});return t},async fetchTraceCases(){const{data:e}=await n.get(`${a}/cases`);return e},async fetchTraceCase(e){const{data:t}=await n.get(`${a}/cases/${e}`);return t},async exportTraceCase(e){const{data:t}=await n.get(`${a}/cases/${e}/export`,{responseType:"blob",timeout:12e4});return t},async fetchTraceVideos(e){const{data:t}=await n.get(`${a}/videos`,{params:{...e!=null&&e.trash?{trash:!0}:{},limit:(e==null?void 0:e.limit)??200}});return t},async fetchTraceMasters(){const{data:e}=await n.get(`${a}/videos/masters`);return e},async patchTraceVideo(e,t){const{data:c}=await n.patch(`${a}/videos/${e}`,{title:t});return c},async deleteTraceVideo(e,t){const{data:c}=await n.delete(`${a}/videos/${e}`,{params:t!=null&&t.hard?{hard:!0}:void 0});return c},async restoreTraceVideo(e){const{data:t}=await n.post(`${a}/videos/${e}/restore`);return t},async retryTraceVideo(e){const{data:t}=await n.post(`${a}/videos/${e}/retry`);return t},async reencodeTraceVideo(e,t){const{data:c}=await n.post(`${a}/videos/${e}/reencode`,{subscriber_watermark_id:t.subscriberWatermarkId,title:t.title,enable_visible:t.enableVisible!==!1,visible_text:t.visibleText||null});return c},async fetchTraceVideoPosterBlob(e){const{data:t}=await n.get(`${a}/videos/${e}/poster`,{responseType:"blob",timeout:6e4});return t},async fetchTraceCasePosterBlob(e){const{data:t}=await n.get(`${a}/cases/${e}/poster`,{responseType:"blob",timeout:6e4});return t},async fetchTraceVideoOriginalBlob(e){const{data:t}=await n.get(`${a}/videos/${e}/original`,{responseType:"blob",timeout:12e4});return t}
1,async encodeTraceVideo(e){try{const t=await o(e.file,"encode"),{data:c}=await n.post(`${a}/videos/from-object`,{object_key:t,title:e.title||e.file.name,subscriber_watermark_id:e.subscriberWatermarkId,content_class:e.contentClass||"default",enable_ab:!!e.enableAb,enable_audio:e.enableAudio!==!1,enable_visible:e.enableVisible!==!1});return c}catch(t){if(!u(t))throw t;return b(e.file),l(e)}},async encodeTraceVideoBatch(e){const t=[...new Set(e.subscriberWatermarkIds)];if(!t.length)throw new Error("Pick at least one account");let c=null;try{c=await o(e.file,"encode")}catch(i){if(!u(i))throw i;b(e.file)}const s=[];for(const i of t)if(c){const{data:y}=await n.post(`${a}/videos/from-object`,{object_key:c,title:e.title||e.file.name,subscriber_watermark_id:i,content_class:e.contentClass||"default",enable_ab:!!e.enableAb,enable_audio:e.enableAudio!==!1,enable_visible:e.enableVisible!==!1});s.push(y)}else s.push(await l({file:e.file,title:e.title,subscriberWatermarkId:i,contentClass:e.contentClass,enableAb:e.enableAb,enableAudio:e.enableAudio,enableVisible:e.enableVisible}));return s},async fetchVideoStatus(e){const{data:t}=await n.get(`${a}/videos/${e}/status`);return t},async downloadTraceVideo(e){const t=await n.get(`${a}/videos/${e}/download`,{responseType:"blob",timeout:12e4}),c=t.data,s=String(t.headers["content-disposition"]||""),i=String(t.headers["content-type"]||c.type||"");return{blob:c,filename:f(s,w(e,i))}},async fetchTraceJob(e){const{data:t}=await n.get(`${a}/jobs/${e}`);return t},async fetchTraceSubscribers(){const{data:e}=await n.get(`${a}/subscribers`);return e},async addTraceSubscriber(e){const t={external_ref:e.external_ref??null};e.watermark_id!=null&&(t.watermark_id=e.watermark_id),e.display_name!=null&&(t.display_name=e.display_name),e.platform!=null&&(t.platform=e.platform),e.notes!=null&&(t.notes=e.notes),e.tier&&(t.tier=e.tier);const{data:c}=await n.post(`${a}/subscribers`,t);return c},async bulkAddTraceSubscribers(e){const{data:t}=await n.post(`${a}/subscribers/bulk`,{text:e.text??null,external_refs:e.external_refs??[]});return t},async updateTraceSubscriber(e,t){const c={};t.external_ref!==void 0&&(c.external_ref=t.external_ref),t.display_name!==void 0&&(c.display_name=t.display_name),t.platform!==void 0&&(c.platform=t.platform),t.notes!==void 0&&(c.notes=t.notes),t.tier!==void 0&&(c.tier=t.tier);const{data:s}=await n.patch(`${a}/subscribers/${e}`,c);return s},async deleteTraceSubscriber(e){await n.delete(`${a}/subscribers/${e}`)},async updateTraceCase(e,t){const{data:c}=await n.patch(`${a}/cases/${e}`,t);return c},async deleteTraceCase(e){await n.delete(`${a}/cases/${e}`)},async createTraceManifest(e){const{data:t}=await n.post(`${a}/subscribers/${e.subscriberId}/manifest`,{video_id:e.video_id,watermark_id:e.watermark_id});return t},async submitTraceLead(e,t){const{data:c}=await n.post(`${a}/leads`,{url:e,video_id:t||null});return c},async uploadSuspect(e,t){try{const c=await o(e,"detect"),{data:s}=await n.post(`${a}/detect/from-object`,{object_key:c,video_id:t||null});return s}catch(c){if(!u(c))throw c;b(e);const s=new FormData;s.append("file",e),t&&s.append("video_id",t);const{data:i}=await n.post(`${a}/detect`,s,{timeout:12e4});return i}},async fetchVideoSignedUrl(e){const{data:t}=await n.get(`${a}/videos/${e}/signed-url`);return t},async fetchCaseShareUrl(e){const{data:t}=await n.get(`${a}/cases/${e}/share-url`);return t},async fetchTraceDrops(){const{data:e}=await n.get(`${a}/vault/drops`);return e},async createTraceDrop(e){const{data:t}=await n.post(`${a}/vault/drops`,{title:e.title||"",redemption_window_days:e.redemption_window_days??null,light_confirm:!!e.light_confirm});return t},async fetchTraceDropLinks(e){const{data:t}=await n.get(`${a}/vault/drops/${e}/links`);return t},async issueTraceDropLinks(e,t){const{data:c}=await n.post(`${a}/vault/drops/${e}/links`,{items:t});return c},async closeTraceDrop(e){const{data:t}=await n.post(`${a}/vault/drops/${e}/close`);return t},async patchTraceDrop(e,t){const{data:c}=await n.patch(`${a}/vault/drops/${e}`,t);return c},async deleteTraceDrop(e,t){const{data:c}=await n.delete(`${a}/vault/drops/${e}`,{params:t!=null&&t.hard?{hard:!0}:void 0});return c},async revokeTraceDropLink(e,t){const{data:c}=await n.post(`${a}/vault/drops/${e}/links/${t}/revoke`);return c},async fetchVaultDoorUrl(){const{data:e}=await n.get(`${a}/vault/door-url`);return e},async patchVaultDoorUrl(e){const{data:t}=await n.patch(`${a}/vault/door-url`,{vault_door_base_url:e});return t},async fetchWatchTargets(){return{items:await $(r),configured:!0}},async createWatchTarget(e){return h(r,{target_type:e.target_type||"url",target_value:e.target_value})},async patchWatchTarget(e,t){return _(r,e,t)},async deleteWatchTarget(e){await p(r,e)}}}export{h as a,k as b,D as c,p as d,V as e,$ as f,A as g,S as h,m as i,C as s};
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.