UNPKG

@bngarren/ccsync

Version:

A file sync tool for developing software for CC: Tweaked (ComputerCraft) computers

2 lines (1 loc) 3.14 kB
import{createRequire as A}from"node:module";var Y=(_,y)=>()=>(y||_((y={exports:{}}).exports,y),y.exports);var v=A(import.meta.url);var B=Y((D,q)=>{var b=new Function("modulePath","return import(modulePath)");function m(_){if(typeof __non_webpack__require__==="function")return __non_webpack__require__(_);return v(_)}q.exports={realImport:b,realRequire:m}});var T=Y((k,g)=>{g.exports={WRITE_INDEX:4,READ_INDEX:8}});var P=Y((s,C)=>{function p(_,y,J,V,G){let Z=Date.now()+V,j=Atomics.load(_,y);if(j===J){G(null,"ok");return}let M=j,L=($)=>{if(Date.now()>Z)G(null,"timed-out");else setTimeout(()=>{if(M=j,j=Atomics.load(_,y),j===M)L($>=1000?1000:$*2);else if(j===J)G(null,"ok");else G(null,"not-equal")},$)};L(1)}function N(_,y,J,V,G){let Z=Date.now()+V,j=Atomics.load(_,y);if(j!==J){G(null,"ok");return}let M=(L)=>{if(Date.now()>Z)G(null,"timed-out");else setTimeout(()=>{if(j=Atomics.load(_,y),j!==J)G(null,"ok");else M(L>=1000?1000:L*2)},L)};M(1)}C.exports={wait:p,waitDiff:N}});var w=Y(()=>{var{realImport:X,realRequire:O}=B(),{workerData:l,parentPort:U}=v("worker_threads"),{WRITE_INDEX:S,READ_INDEX:z}=T(),{waitDiff:h}=P(),{dataBuf:I,filename:K,stateBuf:R}=l,H,F=new Int32Array(R),W=Buffer.from(I);async function u(){let _;try{if(K.endsWith(".ts")||K.endsWith(".cts")){if(!process[Symbol.for("ts-node.register.instance")])O("ts-node/register");else if(process.env.TS_NODE_DEV)O("ts-node-dev");_=O(decodeURIComponent(K.replace(process.platform==="win32"?"file:///":"file://","")))}else _=await X(K)}catch(y){if((y.code==="ENOTDIR"||y.code==="ERR_MODULE_NOT_FOUND")&&K.startsWith("file://"))_=O(decodeURIComponent(K.replace("file://","")));else if(y.code===void 0||y.code==="ERR_VM_DYNAMIC_IMPORT_CALLBACK_MISSING")try{_=O(decodeURIComponent(K.replace(process.platform==="win32"?"file:///":"file://","")))}catch{throw y}else throw y}if(typeof _==="object")_=_.default;if(typeof _==="object")_=_.default;H=await _(l.workerData),H.on("error",function(y){Atomics.store(F,S,-2),Atomics.notify(F,S),Atomics.store(F,z,-2),Atomics.notify(F,z),U.postMessage({code:"ERROR",err:y})}),H.on("close",function(){let y=Atomics.load(F,S);Atomics.store(F,z,y),Atomics.notify(F,z),setImmediate(()=>{process.exit(0)})})}u().then(function(){U.postMessage({code:"READY"}),process.nextTick(Q)});function Q(){let _=Atomics.load(F,z),y=Atomics.load(F,S);if(y===_){if(y===W.length)h(F,z,y,1/0,Q);else h(F,S,y,1/0,Q);return}if(y===-1){H.end();return}let J=W.toString("utf8",_,y);if(H.write(J))Atomics.store(F,z,y),Atomics.notify(F,z),setImmediate(Q);else H.once("drain",function(){Atomics.store(F,z,y),Atomics.notify(F,z),Q()})}process.on("unhandledRejection",function(_){U.postMessage({code:"ERROR",err:_}),process.exit(1)});process.on("uncaughtException",function(_){U.postMessage({code:"ERROR",err:_}),process.exit(1)});process.once("exit",(_)=>{if(_!==0){process.exit(_);return}if(H?.writableNeedDrain&&!H?.writableEnded)U.postMessage({code:"WARNING",err:new Error("ThreadStream: process exited before destination stream was drained. this may indicate that the destination stream try to write to a another missing stream")});process.exit(0)})});export default w();