2 lines
1.2 KiB
JavaScript
2 lines
1.2 KiB
JavaScript
"use strict";(()=>{var s=()=>{let e="";for(let t=0;t<32;t+=1)switch(t){case 8:case 20:e+="-",e+=(Math.random()*16|0).toString(16);break;case 12:e+="-",e+="4";break;case 16:e+="-",e+=(Math.random()*4|8).toString(16);break;default:e+=(Math.random()*16|0).toString(16)}return e};function m(){return s()}async function l(e,...t){return new Promise(n=>{let a=m(),r=`${e}:${a}`;emitNet(e,r,...t);let o=c=>{removeEventListener(r,o),n(c)};onNet(r,o)})}var u=new Map;onNet("screencapture:captureScreen",(e,t,n)=>{SendNUIMessage({...t,uploadToken:e,dataType:n,action:"capture",serverEndpoint:`http://${GetCurrentServerEndpoint()}/${GetCurrentResourceName()}/image`})});onNet("screencapture:INTERNAL_uploadComplete",(e,t)=>{let n=u.get(t);n&&(n(e),u.delete(t))});global.exports("requestScreenshotUpload",async(e,t,n,a)=>{let r=typeof n=="object"&&n!==null,o=r?n:{headers:{},encoding:"webp"},c=r?a:n,p=s();u.set(p,c);let i=await l("screencapture:INTERNAL_requestUploadToken",{...o,formField:t,url:e,correlationId:p});return i?d({...o,formField:t,url:e,uploadToken:i,dataType:"blob"}):console.error("Failed to get upload token")});function d(e){SendNUIMessage({...e,action:"capture",serverEndpoint:`http://${GetCurrentServerEndpoint()}/${GetCurrentResourceName()}/image`})}})();
|