@fkn/lib 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cloud/dgram.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../api-CDb2pv7C.cjs`),require(`../utils-BsNRWMfl.cjs`);const e=require(`../dgram-Cdi6Y7zJ.cjs`);exports.Socket=e.t,exports.createSocket=e.n;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../api-CDb2pv7C.cjs`),require(`../utils-BsNRWMfl.cjs`);const e=require(`../dgram-C5rGcbej.cjs`);exports.Socket=e.t,exports.createSocket=e.n;
package/cloud/dgram.js CHANGED
@@ -1,4 +1,4 @@
1
1
  import "../api-ByfayMm1.js";
2
2
  import "../utils-CNydj3OT.js";
3
- import { n as e, t } from "../dgram-5YUb70O2.js";
3
+ import { n as e, t } from "../dgram-DS5_yPc5.js";
4
4
  export { t as Socket, e as createSocket };
@@ -1 +1 @@
1
- const e=require(`./chunk-B6C_zzib.cjs`),t=require(`./api-CDb2pv7C.cjs`),n=require(`./proxy-A9UvWUaF.cjs`),r=require(`./dns.cjs`),i=require(`./cloud/fs.cjs`),a=require(`./net-C5kWnI4C.cjs`),o=require(`./dgram-Cdi6Y7zJ.cjs`),s=require(`./http.cjs`);var c=async()=>{let e=await t.t.then(e=>e.cloud.quota());return{premium:e.premium,overQuota:e.overQuota,throttled:e.overQuota&&!e.premium,usedBytes:e.usedBytes,limitBytes:e.limitBytes,remainingBytes:e.remaining,bytesPerSecond:e.bytesPerSecond,bitsPerSecond:e.bytesPerSecond*8}},l=e.n({available:()=>u,dgram:()=>o.r,dns:()=>r.t,fetch:()=>n.t,fs:()=>i.t,http:()=>s.t,net:()=>a.s,quota:()=>c}),u=()=>t.n;Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return u}});
1
+ const e=require(`./chunk-B6C_zzib.cjs`),t=require(`./api-CDb2pv7C.cjs`),n=require(`./proxy-A9UvWUaF.cjs`),r=require(`./dns.cjs`),i=require(`./cloud/fs.cjs`),a=require(`./net-C5kWnI4C.cjs`),o=require(`./dgram-C5rGcbej.cjs`),s=require(`./http.cjs`);var c=async()=>{let e=await t.t.then(e=>e.cloud.quota());return{premium:e.premium,overQuota:e.overQuota,throttled:e.overQuota&&!e.premium,usedBytes:e.usedBytes,limitBytes:e.limitBytes,remainingBytes:e.remaining,bytesPerSecond:e.bytesPerSecond,bitsPerSecond:e.bytesPerSecond*8}},l=e.n({available:()=>u,dgram:()=>o.i,dns:()=>r.t,fetch:()=>n.t,fs:()=>i.t,http:()=>s.t,net:()=>a.s,quota:()=>c}),u=()=>t.n;Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return u}});
@@ -4,7 +4,7 @@ import { t as r } from "./proxy-wiZN4eTR.js";
4
4
  import { t as i } from "./dns.js";
5
5
  import { t as a } from "./cloud/fs.js";
6
6
  import { s as o } from "./net-Bl6_W3bd.js";
7
- import { r as s } from "./dgram-5YUb70O2.js";
7
+ import { i as s } from "./dgram-DS5_yPc5.js";
8
8
  import { t as c } from "./http.js";
9
9
  //#region src/lib/quota.ts
10
10
  var l = async () => {
package/cloud.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./api-CDb2pv7C.cjs`);const e=require(`./proxy-A9UvWUaF.cjs`),t=require(`./cloud-DTL2B5pW.cjs`),n=require(`./dns.cjs`);require(`./node-fs-lrlD_zqB.cjs`),require(`./storage-BadvHtv0.cjs`);const r=require(`./cloud/fs.cjs`);require(`./utils-BsNRWMfl.cjs`);const i=require(`./net-C5kWnI4C.cjs`),a=require(`./dgram-Cdi6Y7zJ.cjs`),o=require(`./http.cjs`);exports.available=t.t,Object.defineProperty(exports,`dgram`,{enumerable:!0,get:function(){return a.r}}),Object.defineProperty(exports,`dns`,{enumerable:!0,get:function(){return n.t}}),exports.fetch=e.t,Object.defineProperty(exports,`fs`,{enumerable:!0,get:function(){return r.t}}),Object.defineProperty(exports,`http`,{enumerable:!0,get:function(){return o.t}}),Object.defineProperty(exports,`net`,{enumerable:!0,get:function(){return i.s}}),exports.quota=t.r;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./api-CDb2pv7C.cjs`);const e=require(`./proxy-A9UvWUaF.cjs`),t=require(`./cloud-BrY9dKwV.cjs`),n=require(`./dns.cjs`);require(`./node-fs-lrlD_zqB.cjs`),require(`./storage-BadvHtv0.cjs`);const r=require(`./cloud/fs.cjs`);require(`./utils-BsNRWMfl.cjs`);const i=require(`./net-C5kWnI4C.cjs`),a=require(`./dgram-C5rGcbej.cjs`),o=require(`./http.cjs`);exports.available=t.t,Object.defineProperty(exports,`dgram`,{enumerable:!0,get:function(){return a.i}}),Object.defineProperty(exports,`dns`,{enumerable:!0,get:function(){return n.t}}),exports.fetch=e.t,Object.defineProperty(exports,`fs`,{enumerable:!0,get:function(){return r.t}}),Object.defineProperty(exports,`http`,{enumerable:!0,get:function(){return o.t}}),Object.defineProperty(exports,`net`,{enumerable:!0,get:function(){return i.s}}),exports.quota=t.r;
package/cloud.d.ts CHANGED
@@ -722,7 +722,7 @@ declare const connect: (options: SocketConnectOpts, connectionListener?: () => v
722
722
  declare const createConnection: (options: SocketConnectOpts, connectionListener?: () => void) => Socket$1;
723
723
  declare const createServer$1: (options?: ServerOpts | ((socket: Socket$1) => void), connectionListener?: (socket: Socket$1) => void) => Server$1;
724
724
 
725
- declare const _default$1: {
725
+ declare const _default$2: {
726
726
  Socket: typeof Socket$1;
727
727
  Server: typeof Server$1;
728
728
  connect: (options: SocketConnectOpts, connectionListener?: () => void) => Socket$1;
@@ -742,11 +742,11 @@ declare namespace net {
742
742
  export {
743
743
  Server$1 as Server,
744
744
  Socket$1 as Socket,
745
- _default$1 as _default,
745
+ _default$2 as _default,
746
746
  net_connect as connect,
747
747
  net_createConnection as createConnection,
748
748
  createServer$1 as createServer,
749
- _default$1 as default,
749
+ _default$2 as default,
750
750
  net_isIP as isIP,
751
751
  net_isIPv4 as isIPv4,
752
752
  net_isIPv6 as isIPv6,
@@ -828,6 +828,10 @@ declare class Socket extends EventEmitter implements Socket$3 {
828
828
  [Symbol.asyncDispose](): Promise<void>;
829
829
  }
830
830
  declare const createSocket: (options: SocketType | SocketOptions, callback?: (msg: Buffer$1, rinfo: RemoteInfo) => void) => Socket;
831
+ declare const _default$1: {
832
+ Socket: typeof Socket;
833
+ createSocket: (options: SocketType | SocketOptions, callback?: (msg: Buffer$1, rinfo: RemoteInfo) => void) => Socket;
834
+ };
831
835
 
832
836
  type dgram_Socket = Socket;
833
837
  declare const dgram_Socket: typeof Socket;
@@ -836,6 +840,7 @@ declare namespace dgram {
836
840
  export {
837
841
  dgram_Socket as Socket,
838
842
  dgram_createSocket as createSocket,
843
+ _default$1 as default,
839
844
  };
840
845
  }
841
846
 
package/cloud.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import "./api-ByfayMm1.js";
2
2
  import { t as e } from "./proxy-wiZN4eTR.js";
3
- import { r as t, t as n } from "./cloud-BVnscun4.js";
3
+ import { r as t, t as n } from "./cloud-C-LK4DWa.js";
4
4
  import { t as r } from "./dns.js";
5
5
  import "./node-fs-Bd_UUx1m.js";
6
6
  import "./storage-z0q3iena.js";
7
7
  import { t as i } from "./cloud/fs.js";
8
8
  import "./utils-CNydj3OT.js";
9
9
  import { s as a } from "./net-Bl6_W3bd.js";
10
- import { r as o } from "./dgram-5YUb70O2.js";
10
+ import { i as o } from "./dgram-DS5_yPc5.js";
11
11
  import { t as s } from "./http.js";
12
12
  export { n as available, o as dgram, r as dns, e as fetch, i as fs, s as http, a as net, t as quota };
@@ -0,0 +1 @@
1
+ const e=require(`./chunk-B6C_zzib.cjs`),t=require(`./api-CDb2pv7C.cjs`),n=require(`./utils-BsNRWMfl.cjs`);let r=require(`buffer`),i=require(`events`),a=require(`ip-address`);var o=e.n({Socket:()=>s,createSocket:()=>f,default:()=>p}),s=class extends i.EventEmitter{_type;_localAddress;_remoteAddress;_webVPNUdpSocketPromise;_dataPort;_socketId;_sendQueue=[];_sendQueueBytes=0;_sendFlushScheduled=!1;_peerTailCache=new Map;constructor(e){if(super(e),!e)throw Error(`Missing options`);this._type=e.type}_lastRecvBufferSize=0;_lastSendBufferSize=0;_lastTtl=64;_lastMulticastTtl=1;_lastMulticastLoopback=!0;_setUdpOption(e){if(!this._webVPNUdpSocketPromise){this.emit(`error`,Error(`Cannot set socket option before bind`));return}this._webVPNUdpSocketPromise.then(async t=>{if(t)try{await t.setOption(e)}catch(e){this.emit(`error`,e)}})}_onDataPortBatch(e){let t=new DataView(e),n=0;for(;n+4<=e.byteLength;){let i=t.getUint32(n);n+=4;let a=n+i;if(a>e.byteLength)break;let o=n+4,s=t.getUint8(o);o+=1;let c,l,u;if(s===2){if(!this._remoteAddress){n=a;continue}c=this._remoteAddress.address,l=this._remoteAddress.family,u=this._remoteAddress.port}else{let n=new Uint8Array(e,o,s===0?4:16);if(s===0)l=`IPv4`,c=`${n[0]}.${n[1]}.${n[2]}.${n[3]}`;else{l=`IPv6`;let e=[];for(let t=0;t<16;t+=2)e.push(((n[t]<<8|n[t+1])>>>0).toString(16));c=e.join(`:`)}o+=n.byteLength,u=t.getUint16(o),o+=2}let d=t.getUint32(o);o+=4,this.emit(`message`,r.Buffer.from(e.slice(o,o+d)),{address:c,family:l,port:u,size:d}),n=a}}_peerTail(e,t){if(e===void 0||t===void 0)return c;let n=`${e}|${t}`,r=this._peerTailCache.get(n);if(r)return r;let i=a.Address4.isValid(e)?u(e):d(e),o=new Uint8Array(1+i.byteLength+2);return o[0]=i.byteLength===4?0:1,o.set(i,1),new DataView(o.buffer).setUint16(1+i.byteLength,t),this._peerTailCache.set(n,o),o}_portSend(e,t,n){let r=this._peerTail(t,n),i=new Uint8Array(8+r.byteLength+4+e.byteLength),a=new DataView(i.buffer);a.setUint32(0,i.byteLength-4),a.setUint32(4,this._socketId),i.set(r,8),a.setUint32(8+r.byteLength,e.byteLength),i.set(e,12+r.byteLength),this._sendQueue.push(i),this._sendQueueBytes+=i.byteLength,!this._sendFlushScheduled&&(this._sendFlushScheduled=!0,queueMicrotask(()=>{this._sendFlushScheduled=!1;let e=this._sendQueue,t=this._sendQueueBytes;if(this._sendQueue=[],this._sendQueueBytes=0,!e.length||!this._dataPort)return;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.byteLength;this._dataPort.postMessage(n.buffer,[n.buffer])}))}addMembership(e,t){if(a.Address4.isValid(e)){let n=u(e),r=t&&a.Address4.isValid(t)?u(t):new Uint8Array([0,0,0,0]);this._setUdpOption({type:5,group:n,interface:r})}else if(a.Address6.isValid(e)){let t=d(e);this._setUdpOption({type:7,group:t,ifIndex:0})}else this.emit(`error`,Error(`Invalid multicast address: ${e}`))}address(){if(!this._localAddress)throw Error(`EBADF`);return this._localAddress}bind(...e){let i=n.i(...e),a=this._type===`udp6`?`::`:`0.0.0.0`;return this._webVPNUdpSocketPromise=t.t.then(e=>e.cloud.webvpn.udpSocket({type:this._type,address:i.address??a,port:i.port,dataPort:!0})).then(e=>{if(e.dataPort)this._socketId=e.socketId,this._dataPort=e.dataPort,this._dataPort.onmessage=e=>this._onDataPortBatch(e.data);else{let t=e.dataReadableStream.getReader(),n=async()=>{let{value:e,done:i}=await t.read();i||(this.emit(`message`,r.Buffer.from(e.data),{address:e.address,family:e.family,port:e.port,size:e.size}),n())};n()}return this._localAddress={address:e.localAddress,family:e.localFamily,port:e.localPort},e}).catch(e=>{this.emit(`error`,e)}),this._webVPNUdpSocketPromise.then(e=>{e&&this.emit(`listening`)}),i.callback&&this._webVPNUdpSocketPromise.then(e=>{e&&i.callback.call(this)}),this}close(e){if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);return this._webVPNUdpSocketPromise.then(async t=>{if(!t)throw Error(`Socket not bound`);this._dataPort?.close(),this._dataPort=void 0,await t.close(),e&&e(),this.emit(`close`)}),this}connect(...e){if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);this._webVPNUdpSocketPromise.then(async t=>{if(!t)throw Error(`Socket not bound`);let n=e[0],r=this._type===`udp6`?`::1`:`127.0.0.1`,i=typeof e[1]==`string`?e[1]:r,a=typeof e.at(-1)==`function`?e.at(-1):void 0;await t.connect({remotePort:n,remoteAddress:i}),this._remoteAddress={address:i,family:this._type===`udp6`?`IPv6`:`IPv4`,port:n},a&&a()})}disconnect(){if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);this._webVPNUdpSocketPromise.then(async e=>{if(!e)throw Error(`Socket not bound`);await e.connect({remotePort:0,remoteAddress:this._type===`udp4`?`0.0.0.0`:`::`})})}dropMembership(e,t){if(a.Address4.isValid(e)){let n=u(e),r=t&&a.Address4.isValid(t)?u(t):new Uint8Array([0,0,0,0]);this._setUdpOption({type:6,group:n,interface:r})}else if(a.Address6.isValid(e)){let t=d(e);this._setUdpOption({type:8,group:t,ifIndex:0})}else this.emit(`error`,Error(`Invalid multicast address: ${e}`))}getRecvBufferSize(){return this._lastRecvBufferSize}getSendBufferSize(){return this._lastSendBufferSize}getSendQueueSize(){return 0}getSendQueueCount(){return 0}ref(){return this}remoteAddress(){if(!this._remoteAddress)throw Error(`ERR_SOCKET_DGRAM_NOT_CONNECTED`);return{address:this._remoteAddress.address,family:this._remoteAddress.family,port:this._remoteAddress.port}}send(...e){this._webVPNUdpSocketPromise||this.bind();let t=n.a(...e),r=this._type===`udp6`?`::1`:`127.0.0.1`;if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);this._webVPNUdpSocketPromise.then(e=>{if(!e)throw Error(`Socket not bound`);let n=l(t.message),i=t.callback,o=t.address??r,s=this._remoteAddress!==void 0&&t.address===void 0;if(this._dataPort&&(s||a.Address4.isValid(o)||a.Address6.isValid(o))){this._portSend(n,s?void 0:o,s?void 0:t.port),i?.call(this,null,n.byteLength);return}e.send({...t,address:o,message:n.byteOffset===0&&n.byteLength===n.buffer.byteLength?n.buffer:n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}).then(()=>i?.call(this,null,n.byteLength),e=>i?i.call(this,e,0):this.emit(`error`,e))})}setBroadcast(e){this._setUdpOption({type:0,value:e})}setMulticastInterface(e){}setMulticastLoopback(e){return this._setUdpOption({type:3,value:e}),this._setUdpOption({type:4,value:e}),this._lastMulticastLoopback=e,e}setMulticastTTL(e){return this._setUdpOption({type:2,value:e}),this._lastMulticastTtl=e,e}setRecvBufferSize(e){this._setUdpOption({type:10,value:e}),this._lastRecvBufferSize=e}setSendBufferSize(e){this._setUdpOption({type:9,value:e}),this._lastSendBufferSize=e}setTTL(e){return this._setUdpOption({type:1,value:e}),this._lastTtl=e,e}unref(){return this}addSourceSpecificMembership(e,t,n){}dropSourceSpecificMembership(e,t,n){}async[Symbol.asyncDispose](){await new Promise(e=>{this.close(e)})}},c=new Uint8Array([2]),l=e=>{if(typeof e==`string`)return n.s.encode(e);if(e instanceof Uint8Array)return e;if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);if(Array.isArray(e)){let t=e.map(l),n=new Uint8Array(t.reduce((e,t)=>e+t.byteLength,0)),r=0;for(let e of t)n.set(e,r),r+=e.byteLength;return n}return new Uint8Array(e)},u=e=>{let t=e.split(`.`).map(e=>parseInt(e,10));if(t.length!==4||t.some(e=>Number.isNaN(e)||e<0||e>255))throw Error(`Invalid IPv4 address: ${e}`);return new Uint8Array(t)},d=e=>{let t=new a.Address6(e).getBitsBase16(0,128).match(/.{2}/g);if(!t||t.length!==16)throw Error(`Invalid IPv6 address: ${e}`);return new Uint8Array(t.map(e=>parseInt(e,16)))},f=(e,t)=>{let n=new s(typeof e==`string`?{type:e}:e);return t&&n.on(`message`,t),n},p={Socket:s,createSocket:f};Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
@@ -7,7 +7,8 @@ import { Address4 as s, Address6 as c } from "ip-address";
7
7
  //#region src/lib/webvpn/dgram.ts
8
8
  var l = /* @__PURE__ */ e({
9
9
  Socket: () => u,
10
- createSocket: () => h
10
+ createSocket: () => h,
11
+ default: () => g
11
12
  }), u = class extends o {
12
13
  _type;
13
14
  _localAddress;
@@ -321,6 +322,9 @@ var l = /* @__PURE__ */ e({
321
322
  }, h = (e, t) => {
322
323
  let n = new u(typeof e == "string" ? { type: e } : e);
323
324
  return t && n.on("message", t), n;
325
+ }, g = {
326
+ Socket: u,
327
+ createSocket: h
324
328
  };
325
329
  //#endregion
326
- export { h as n, l as r, u as t };
330
+ export { l as i, h as n, g as r, u as t };
package/dgram.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./api-CDb2pv7C.cjs`),require(`./utils-BsNRWMfl.cjs`);const e=require(`./dgram-Cdi6Y7zJ.cjs`);exports.Socket=e.t,exports.createSocket=e.n;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`./api-CDb2pv7C.cjs`),require(`./utils-BsNRWMfl.cjs`);const e=require(`./dgram-C5rGcbej.cjs`);exports.Socket=e.t,exports.createSocket=e.n,exports.default=e.r;
package/dgram.d.ts CHANGED
@@ -533,5 +533,9 @@ declare class Socket extends EventEmitter implements Socket$1 {
533
533
  [Symbol.asyncDispose](): Promise<void>;
534
534
  }
535
535
  declare const createSocket: (options: SocketType | SocketOptions, callback?: (msg: Buffer, rinfo: RemoteInfo) => void) => Socket;
536
+ declare const _default: {
537
+ Socket: typeof Socket;
538
+ createSocket: (options: SocketType | SocketOptions, callback?: (msg: Buffer, rinfo: RemoteInfo) => void) => Socket;
539
+ };
536
540
 
537
- export { Socket, createSocket };
541
+ export { Socket, createSocket, _default as default };
package/dgram.js CHANGED
@@ -1,4 +1,4 @@
1
1
  import "./api-ByfayMm1.js";
2
2
  import "./utils-CNydj3OT.js";
3
- import { n as e, t } from "./dgram-5YUb70O2.js";
4
- export { t as Socket, e as createSocket };
3
+ import { n as e, r as t, t as n } from "./dgram-DS5_yPc5.js";
4
+ export { n as Socket, e as createSocket, t as default };
package/fs/promises.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../api-CDb2pv7C.cjs`),require(`../node-fs-lrlD_zqB.cjs`),require(`../storage-BadvHtv0.cjs`);var{readFile:e,writeFile:t,appendFile:n,unlink:r,rename:i,readdir:a,mkdir:o,rm:s,rmdir:c,stat:l,lstat:u,access:d}=require(`../fs-DrwvwtqC.cjs`).f;exports.access=d,exports.appendFile=n,exports.lstat=u,exports.mkdir=o,exports.readFile=e,exports.readdir=a,exports.rename=i,exports.rm=s,exports.rmdir=c,exports.stat=l,exports.unlink=r,exports.writeFile=t;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`../api-CDb2pv7C.cjs`),require(`../node-fs-lrlD_zqB.cjs`),require(`../storage-BadvHtv0.cjs`);const e=require(`../fs-CmgWrokB.cjs`);var{readFile:t,writeFile:n,appendFile:r,unlink:i,rename:a,readdir:o,mkdir:s,rm:c,rmdir:l,stat:u,lstat:d,access:f}=e.p,p=e.p;exports.access=f,exports.appendFile=r,exports.default=p,exports.lstat=d,exports.mkdir=s,exports.readFile=t,exports.readdir=o,exports.rename=a,exports.rm=c,exports.rmdir=l,exports.stat=u,exports.unlink=i,exports.writeFile=n;
package/fs/promises.d.ts CHANGED
@@ -26,6 +26,25 @@ type Stats = {
26
26
  isSymbolicLink: () => boolean;
27
27
  };
28
28
 
29
+ declare const promises: {
30
+ readFile: (path: node_fs.PathLike, options?: ReadOptions) => Promise<Buffer | string>;
31
+ writeFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
32
+ appendFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
33
+ stat: (path: node_fs.PathLike) => Promise<Stats>;
34
+ lstat: (path: node_fs.PathLike) => Promise<Stats>;
35
+ readdir: (path: node_fs.PathLike) => Promise<string[]>;
36
+ mkdir: (path: node_fs.PathLike, options?: MakeOptions) => Promise<void>;
37
+ rm: (path: node_fs.PathLike, options?: {
38
+ recursive?: boolean;
39
+ }) => Promise<void>;
40
+ rmdir: (path: node_fs.PathLike, options?: {
41
+ recursive?: boolean;
42
+ }) => Promise<void>;
43
+ unlink: (path: node_fs.PathLike) => Promise<void>;
44
+ rename: (from: node_fs.PathLike, to: node_fs.PathLike) => Promise<void>;
45
+ access: (path: node_fs.PathLike) => Promise<void>;
46
+ };
47
+
29
48
  declare const readFile: (path: node_fs.PathLike, options?: ReadOptions) => Promise<Buffer | string>;
30
49
  declare const writeFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
31
50
  declare const appendFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
@@ -43,4 +62,4 @@ declare const stat: (path: node_fs.PathLike) => Promise<Stats>;
43
62
  declare const lstat: (path: node_fs.PathLike) => Promise<Stats>;
44
63
  declare const access: (path: node_fs.PathLike) => Promise<void>;
45
64
 
46
- export { access, appendFile, lstat, mkdir, readFile, readdir, rename, rm, rmdir, stat, unlink, writeFile };
65
+ export { access, appendFile, promises as default, lstat, mkdir, readFile, readdir, rename, rm, rmdir, stat, unlink, writeFile };
package/fs/promises.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import "../api-ByfayMm1.js";
2
2
  import "../node-fs-Bd_UUx1m.js";
3
3
  import "../storage-z0q3iena.js";
4
- import { f as e } from "../fs-B7JumDCn.js";
4
+ import { p as e } from "../fs-BiS_UsCn.js";
5
5
  //#region src/lib/fs/promises.ts
6
- var { readFile: t, writeFile: n, appendFile: r, unlink: i, rename: a, readdir: o, mkdir: s, rm: c, rmdir: l, stat: u, lstat: d, access: f } = e;
6
+ var { readFile: t, writeFile: n, appendFile: r, unlink: i, rename: a, readdir: o, mkdir: s, rm: c, rmdir: l, stat: u, lstat: d, access: f } = e, p = e;
7
7
  //#endregion
8
- export { f as access, r as appendFile, d as lstat, s as mkdir, t as readFile, o as readdir, a as rename, c as rm, l as rmdir, u as stat, i as unlink, n as writeFile };
8
+ export { f as access, r as appendFile, p as default, d as lstat, s as mkdir, t as readFile, o as readdir, a as rename, c as rm, l as rmdir, u as stat, i as unlink, n as writeFile };
@@ -45,34 +45,38 @@ var f = /* @__PURE__ */ e({
45
45
  let t = await r(e);
46
46
  return await m() && await u(e, t), t;
47
47
  }, S = /* @__PURE__ */ e({
48
- appendFile: () => R,
49
- appendFileSync: () => E,
50
- available: () => C,
51
- exists: () => G,
52
- existsSync: () => D,
53
- flush: () => J,
54
- lstatSync: () => k,
55
- mkdir: () => V,
56
- mkdirSync: () => j,
57
- mount: () => q,
58
- promises: () => K,
59
- pull: () => X,
60
- readFile: () => I,
61
- readFileSync: () => w,
62
- readdir: () => B,
63
- readdirSync: () => A,
64
- remount: () => Y,
65
- rename: () => W,
66
- renameSync: () => F,
67
- rm: () => H,
68
- rmSync: () => M,
69
- rmdirSync: () => N,
70
- stat: () => z,
71
- statSync: () => O,
72
- unlink: () => U,
73
- unlinkSync: () => P,
74
- writeFile: () => L,
75
- writeFileSync: () => T
76
- }), { available: C, readFileSync: w, writeFileSync: T, appendFileSync: E, existsSync: D, statSync: O, lstatSync: k, readdirSync: A, mkdirSync: j, rmSync: M, rmdirSync: N, unlinkSync: P, renameSync: F, readFile: I, writeFile: L, appendFile: R, stat: z, readdir: B, mkdir: V, rm: H, unlink: U, rename: W, exists: G, promises: K, mount: q, flush: J, remount: Y } = t(f, { memfs: !0 }), X = x;
48
+ appendFile: () => z,
49
+ appendFileSync: () => D,
50
+ available: () => w,
51
+ default: () => Q,
52
+ exists: () => K,
53
+ existsSync: () => O,
54
+ flush: () => Y,
55
+ lstatSync: () => A,
56
+ mkdir: () => H,
57
+ mkdirSync: () => M,
58
+ mount: () => J,
59
+ promises: () => q,
60
+ pull: () => Z,
61
+ readFile: () => L,
62
+ readFileSync: () => T,
63
+ readdir: () => V,
64
+ readdirSync: () => j,
65
+ remount: () => X,
66
+ rename: () => G,
67
+ renameSync: () => I,
68
+ rm: () => U,
69
+ rmSync: () => N,
70
+ rmdirSync: () => P,
71
+ stat: () => B,
72
+ statSync: () => k,
73
+ unlink: () => W,
74
+ unlinkSync: () => F,
75
+ writeFile: () => R,
76
+ writeFileSync: () => E
77
+ }), C = t(f, { memfs: !0 }), { available: w, readFileSync: T, writeFileSync: E, appendFileSync: D, existsSync: O, statSync: k, lstatSync: A, readdirSync: j, mkdirSync: M, rmSync: N, rmdirSync: P, unlinkSync: F, renameSync: I, readFile: L, writeFile: R, appendFile: z, stat: B, readdir: V, mkdir: H, rm: U, unlink: W, rename: G, exists: K, promises: q, mount: J, flush: Y, remount: X } = C, Z = x, Q = {
78
+ ...C,
79
+ pull: Z
80
+ };
77
81
  //#endregion
78
- export { N as C, P as D, U as E, L as O, M as S, O as T, A as _, D as a, F as b, k as c, q as d, K as f, B as g, w as h, G as i, T as k, V as l, I as m, E as n, J as o, X as p, C as r, S as s, R as t, j as u, Y as v, z as w, H as x, W as y };
82
+ export { E as A, N as C, W as D, k as E, F as O, U as S, B as T, V as _, O as a, G as b, S as c, M as d, J as f, T as g, L as h, K as i, R as k, A as l, Z as m, D as n, Y as o, q as p, w as r, Q as s, z as t, H as u, j as v, P as w, I as x, X as y };
@@ -0,0 +1 @@
1
+ const e=require(`./chunk-B6C_zzib.cjs`),t=require(`./node-fs-lrlD_zqB.cjs`),n=require(`./storage-BadvHtv0.cjs`),r=require(`./opfs-Dsi4FkJU.cjs`);var i=e.n({available:()=>c,list:()=>l,pull:()=>p,readFile:()=>u,remove:()=>f,writeFile:()=>d}),a,o=async()=>await(a??=r.t().catch(()=>!1))?!0:(a=void 0,!1),s=()=>n.t().catch(()=>!1),c=async()=>await o()||await s(),l=async()=>{let[e,t]=await Promise.all([o().then(e=>e?r.n():[]).catch(()=>[]),s().then(e=>e?n.n():[]).catch(()=>[])]),i=new Map,a=e=>{let t=Date.parse(e.updatedAt??``);return Number.isFinite(t)?t:0},c=e=>{let t=i.get(e.path);(!t||a(e)>=a(t))&&i.set(e.path,e)};for(let t of e)c(t);for(let e of t)c(e);return[...i.values()]},u=async e=>{if(await o())try{return await r.i(e)}catch(e){if(e?.name!==`NotFoundError`)throw e}let t=await n.i(e);return await o()&&r.o(e,t).catch(()=>{}),t},d=async(e,t,i)=>{let a=t instanceof Blob?t:new Blob([t],i?.contentType?{type:i.contentType}:void 0);if(await o()){await r.o(e,a,i),await s()&&n.s(e,a,i).catch(e=>console.warn(`fs: cloud replicate failed`,e));return}if(await s())return n.s(e,a,i);throw Error(`fs: no storage backend available`)},f=async e=>{let t=[];if(await o()&&t.push(r.a(e).catch(()=>{})),await s()&&t.push(n.a(e).catch(()=>{})),!t.length)throw Error(`fs: no storage backend available`);await Promise.all(t)},p=async e=>{let t=await n.i(e);return await o()&&await r.o(e,t),t},m=e.n({appendFile:()=>j,appendFileSync:()=>y,available:()=>g,default:()=>W,exists:()=>R,existsSync:()=>b,flush:()=>V,lstatSync:()=>S,mkdir:()=>P,mkdirSync:()=>w,mount:()=>B,promises:()=>z,pull:()=>U,readFile:()=>k,readFileSync:()=>_,readdir:()=>N,readdirSync:()=>C,remount:()=>H,rename:()=>L,renameSync:()=>O,rm:()=>F,rmSync:()=>T,rmdirSync:()=>E,stat:()=>M,statSync:()=>x,unlink:()=>I,unlinkSync:()=>D,writeFile:()=>A,writeFileSync:()=>v}),h=t.t(i,{memfs:!0}),{available:g,readFileSync:_,writeFileSync:v,appendFileSync:y,existsSync:b,statSync:x,lstatSync:S,readdirSync:C,mkdirSync:w,rmSync:T,rmdirSync:E,unlinkSync:D,renameSync:O,readFile:k,writeFile:A,appendFile:j,stat:M,readdir:N,mkdir:P,rm:F,unlink:I,rename:L,exists:R,promises:z,mount:B,flush:V,remount:H}=h,U=p,W={...h,pull:U};Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return H}});
package/fs.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./api-CDb2pv7C.cjs`),require(`./node-fs-lrlD_zqB.cjs`),require(`./storage-BadvHtv0.cjs`);const e=require(`./fs-DrwvwtqC.cjs`);exports.appendFile=e.t,exports.appendFileSync=e.n,exports.available=e.r,exports.exists=e.i,exports.existsSync=e.a,exports.flush=e.o,exports.lstatSync=e.c,exports.mkdir=e.l,exports.mkdirSync=e.u,exports.mount=e.d,exports.promises=e.f,exports.pull=e.p,exports.readFile=e.m,exports.readFileSync=e.h,exports.readdir=e.g,exports.readdirSync=e._,exports.remount=e.v,exports.rename=e.y,exports.renameSync=e.b,exports.rm=e.x,exports.rmSync=e.S,exports.rmdirSync=e.C,exports.stat=e.w,exports.statSync=e.T,exports.unlink=e.E,exports.unlinkSync=e.D,exports.writeFile=e.O,exports.writeFileSync=e.k;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`./api-CDb2pv7C.cjs`),require(`./node-fs-lrlD_zqB.cjs`),require(`./storage-BadvHtv0.cjs`);const e=require(`./fs-CmgWrokB.cjs`);exports.appendFile=e.t,exports.appendFileSync=e.n,exports.available=e.r,exports.default=e.s,exports.exists=e.i,exports.existsSync=e.a,exports.flush=e.o,exports.lstatSync=e.l,exports.mkdir=e.u,exports.mkdirSync=e.d,exports.mount=e.f,exports.promises=e.p,exports.pull=e.m,exports.readFile=e.h,exports.readFileSync=e.g,exports.readdir=e._,exports.readdirSync=e.v,exports.remount=e.y,exports.rename=e.b,exports.renameSync=e.x,exports.rm=e.S,exports.rmSync=e.C,exports.rmdirSync=e.w,exports.stat=e.T,exports.statSync=e.E,exports.unlink=e.D,exports.unlinkSync=e.O,exports.writeFile=e.k,exports.writeFileSync=e.A;
package/fs.d.ts CHANGED
@@ -79,6 +79,60 @@ declare const mount: () => Promise<void>;
79
79
  declare const flush: () => Promise<void>;
80
80
  declare const remount: () => Promise<void>;
81
81
  declare const pull: (path: string) => Promise<Blob>;
82
+ declare const _default: {
83
+ pull: (path: string) => Promise<Blob>;
84
+ available: () => Promise<boolean>;
85
+ readFileSync: (path: node_fs.PathLike, options?: ReadOptions) => Buffer | string;
86
+ writeFileSync: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => void;
87
+ appendFileSync: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => void;
88
+ existsSync: (path: node_fs.PathLike) => boolean;
89
+ statSync: (path: node_fs.PathLike) => Stats;
90
+ lstatSync: (path: node_fs.PathLike) => Stats;
91
+ readdirSync: (path: node_fs.PathLike) => string[];
92
+ mkdirSync: (path: node_fs.PathLike, options?: MakeOptions) => void;
93
+ rmSync: (path: node_fs.PathLike, options?: {
94
+ recursive?: boolean;
95
+ force?: boolean;
96
+ }) => void;
97
+ rmdirSync: (path: node_fs.PathLike, options?: {
98
+ recursive?: boolean;
99
+ }) => void;
100
+ unlinkSync: (path: node_fs.PathLike) => void;
101
+ renameSync: (from: node_fs.PathLike, to: node_fs.PathLike) => void;
102
+ readFile: (path: node_fs.PathLike, a: ReadOptions | Callback<Buffer | string>, b?: Callback<Buffer | string>) => void;
103
+ writeFile: (path: node_fs.PathLike, data: WriteData, a: WriteOptions | Callback<void>, b?: Callback<void>) => void;
104
+ appendFile: (path: node_fs.PathLike, data: WriteData, a: WriteOptions | Callback<void>, b?: Callback<void>) => void;
105
+ stat: (path: node_fs.PathLike, callback: Callback<Stats>) => void;
106
+ readdir: (path: node_fs.PathLike, a: unknown, b?: Callback<string[]>) => void;
107
+ mkdir: (path: node_fs.PathLike, a: MakeOptions | Callback<void>, b?: Callback<void>) => void;
108
+ rm: (path: node_fs.PathLike, a: {
109
+ recursive?: boolean;
110
+ } | Callback<void>, b?: Callback<void>) => void;
111
+ unlink: (path: node_fs.PathLike, callback: Callback<void>) => void;
112
+ rename: (from: node_fs.PathLike, to: node_fs.PathLike, callback: Callback<void>) => void;
113
+ exists: (path: node_fs.PathLike, callback: (exists: boolean) => void) => void;
114
+ promises: {
115
+ readFile: (path: node_fs.PathLike, options?: ReadOptions) => Promise<Buffer | string>;
116
+ writeFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
117
+ appendFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
118
+ stat: (path: node_fs.PathLike) => Promise<Stats>;
119
+ lstat: (path: node_fs.PathLike) => Promise<Stats>;
120
+ readdir: (path: node_fs.PathLike) => Promise<string[]>;
121
+ mkdir: (path: node_fs.PathLike, options?: MakeOptions) => Promise<void>;
122
+ rm: (path: node_fs.PathLike, options?: {
123
+ recursive?: boolean;
124
+ }) => Promise<void>;
125
+ rmdir: (path: node_fs.PathLike, options?: {
126
+ recursive?: boolean;
127
+ }) => Promise<void>;
128
+ unlink: (path: node_fs.PathLike) => Promise<void>;
129
+ rename: (from: node_fs.PathLike, to: node_fs.PathLike) => Promise<void>;
130
+ access: (path: node_fs.PathLike) => Promise<void>;
131
+ };
132
+ mount: () => Promise<void>;
133
+ flush: () => Promise<void>;
134
+ remount: () => Promise<void>;
135
+ };
82
136
 
83
- export { appendFile, appendFileSync, available, exists, existsSync, flush, lstatSync, mkdir, mkdirSync, mount, promises, pull, readFile, readFileSync, readdir, readdirSync, remount, rename, renameSync, rm, rmSync, rmdirSync, stat, statSync, unlink, unlinkSync, writeFile, writeFileSync };
137
+ export { appendFile, appendFileSync, available, _default as default, exists, existsSync, flush, lstatSync, mkdir, mkdirSync, mount, promises, pull, readFile, readFileSync, readdir, readdirSync, remount, rename, renameSync, rm, rmSync, rmdirSync, stat, statSync, unlink, unlinkSync, writeFile, writeFileSync };
84
138
  export type { Stats };
package/fs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "./api-ByfayMm1.js";
2
2
  import "./node-fs-Bd_UUx1m.js";
3
3
  import "./storage-z0q3iena.js";
4
- import { C as e, D as t, E as n, O as r, S as i, T as a, _ as o, a as s, b as c, c as l, d as u, f as d, g as f, h as p, i as m, k as h, l as g, m as _, n as v, o as y, p as b, r as x, t as S, u as C, v as w, w as T, x as E, y as D } from "./fs-B7JumDCn.js";
5
- export { S as appendFile, v as appendFileSync, x as available, m as exists, s as existsSync, y as flush, l as lstatSync, g as mkdir, C as mkdirSync, u as mount, d as promises, b as pull, _ as readFile, p as readFileSync, f as readdir, o as readdirSync, w as remount, D as rename, c as renameSync, E as rm, i as rmSync, e as rmdirSync, T as stat, a as statSync, n as unlink, t as unlinkSync, r as writeFile, h as writeFileSync };
4
+ import { A as e, C as t, D as n, E as r, O as i, S as a, T as o, _ as s, a as c, b as l, d as u, f as d, g as f, h as p, i as m, k as h, l as g, m as _, n as v, o as y, p as b, r as x, s as S, t as C, u as w, v as T, w as E, x as D, y as O } from "./fs-BiS_UsCn.js";
5
+ export { C as appendFile, v as appendFileSync, x as available, S as default, m as exists, c as existsSync, y as flush, g as lstatSync, w as mkdir, u as mkdirSync, d as mount, b as promises, _ as pull, p as readFile, f as readFileSync, s as readdir, T as readdirSync, O as remount, l as rename, D as renameSync, a as rm, t as rmSync, E as rmdirSync, o as stat, r as statSync, n as unlink, i as unlinkSync, h as writeFile, e as writeFileSync };
package/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./locator-Cf7M3QKN.cjs`),t=require(`./extension-9Uv_0HdS.cjs`),n=require(`./api-CDb2pv7C.cjs`);require(`./proxy-A9UvWUaF.cjs`);const r=require(`./cloud-DTL2B5pW.cjs`),i=require(`./dns.cjs`);require(`./node-fs-lrlD_zqB.cjs`),require(`./storage-BadvHtv0.cjs`),require(`./utils-BsNRWMfl.cjs`);const a=require(`./net-C5kWnI4C.cjs`),o=require(`./dgram-Cdi6Y7zJ.cjs`),s=require(`./http.cjs`),c=require(`./desktop.cjs`),l=require(`./fs-DrwvwtqC.cjs`),u=require(`./opfs.cjs`),d=require(`./account.cjs`);let f=require(`osra`),p=require(`react`);var m=`https://fkn.app`,h=(e,t)=>{if(typeof window>`u`)throw Error(`FKN @fkn/lib: relayWorker must be called from the main thread`);if(!n.r?.contentWindow)throw Error(`FKN @fkn/lib: relayWorker called before the FKN iframe was injected`);(0,f.relay)({receive:window,emit:n.r.contentWindow},e,{key:`fkn-api`,originA:t?.originA??m,originB:t?.originB??`*`,unregisterSignal:t?.unregisterSignal})},g=async()=>typeof window>`u`?!1:(await n.t).connect.prompt(location.origin).catch(()=>!1),_=`https://fkn.app`,v=(e=location.origin)=>`${_}/connect-button?origin=${encodeURIComponent(e)}`,y=({className:e,style:t}={})=>(0,p.createElement)(`iframe`,{src:v(),title:`Connect your FKN account`,className:e,style:{border:`none`,width:150,height:40,background:`transparent`,colorScheme:`normal`,...t}});exports.ATTACH_FRAME_EVENT_KEY=t.o,exports.ConnectButton=y,Object.defineProperty(exports,`account`,{enumerable:!0,get:function(){return d.t}}),exports.assertAttachableFrameUrl=t.s,exports.assertFetchableUrl=t.v,exports.attachFrame=t.c,exports.attachFramePermission=t.l,exports.box=e.u,Object.defineProperty(exports,`cloud`,{enumerable:!0,get:function(){return r.n}}),exports.connect=g,exports.connectButtonUrl=v,exports.cookies=t.g,exports.createVideoElementHandle=e.d,Object.defineProperty(exports,`desktop`,{enumerable:!0,get:function(){return c.t}}),Object.defineProperty(exports,`dgram`,{enumerable:!0,get:function(){return o.r}}),Object.defineProperty(exports,`dns`,{enumerable:!0,get:function(){return i.t}}),exports.evaluatePermission=t.u,Object.defineProperty(exports,`extension`,{enumerable:!0,get:function(){return t.t}}),exports.fetch=t.n,exports.fetchCredentialedPermission=t.b,exports.fetchLocalPermission=t.x,exports.fetchPermission=t.S,Object.defineProperty(exports,`fs`,{enumerable:!0,get:function(){return l.s}}),exports.gotoPermission=t.d,exports.handleRevivableModules=e.l,Object.defineProperty(exports,`http`,{enumerable:!0,get:function(){return s.t}}),exports.isBlockedFetchUrl=t.C,exports.isBlockedFrameUrl=t.f,exports.isExtensionExposed=t.E,exports.isLocalNetworkUrl=t.w,exports.isType=e.f,exports.modifyRequestHeadersPermission=t.p,Object.defineProperty(exports,`net`,{enumerable:!0,get:function(){return a.s}}),Object.defineProperty(exports,`opfs`,{enumerable:!0,get:function(){return u.t}}),exports.permissions=t.a,exports.promptInstall=t.i,exports.readCookiePermission=t._,exports.relayWorker=h,exports.removeRequestHeaderRule=t.m,exports.revive=e.p,exports.setMissingExtensionHandler=t.D,exports.setRequestHeaderRule=t.h,exports.type=e.m,exports.waitForExtensionExposure=t.O;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./locator-Cf7M3QKN.cjs`),t=require(`./extension-9Uv_0HdS.cjs`),n=require(`./api-CDb2pv7C.cjs`);require(`./proxy-A9UvWUaF.cjs`);const r=require(`./cloud-BrY9dKwV.cjs`),i=require(`./dns.cjs`);require(`./node-fs-lrlD_zqB.cjs`),require(`./storage-BadvHtv0.cjs`),require(`./utils-BsNRWMfl.cjs`);const a=require(`./net-C5kWnI4C.cjs`),o=require(`./dgram-C5rGcbej.cjs`),s=require(`./http.cjs`),c=require(`./desktop.cjs`),l=require(`./fs-CmgWrokB.cjs`),u=require(`./opfs.cjs`),d=require(`./account.cjs`);let f=require(`osra`),p=require(`react`);var m=`https://fkn.app`,h=(e,t)=>{if(typeof window>`u`)throw Error(`FKN @fkn/lib: relayWorker must be called from the main thread`);if(!n.r?.contentWindow)throw Error(`FKN @fkn/lib: relayWorker called before the FKN iframe was injected`);(0,f.relay)({receive:window,emit:n.r.contentWindow},e,{key:`fkn-api`,originA:t?.originA??m,originB:t?.originB??`*`,unregisterSignal:t?.unregisterSignal})},g=async()=>typeof window>`u`?!1:(await n.t).connect.prompt(location.origin).catch(()=>!1),_=`https://fkn.app`,v=(e=location.origin)=>`${_}/connect-button?origin=${encodeURIComponent(e)}`,y=({className:e,style:t}={})=>(0,p.createElement)(`iframe`,{src:v(),title:`Connect your FKN account`,className:e,style:{border:`none`,width:150,height:40,background:`transparent`,colorScheme:`normal`,...t}});exports.ATTACH_FRAME_EVENT_KEY=t.o,exports.ConnectButton=y,Object.defineProperty(exports,`account`,{enumerable:!0,get:function(){return d.t}}),exports.assertAttachableFrameUrl=t.s,exports.assertFetchableUrl=t.v,exports.attachFrame=t.c,exports.attachFramePermission=t.l,exports.box=e.u,Object.defineProperty(exports,`cloud`,{enumerable:!0,get:function(){return r.n}}),exports.connect=g,exports.connectButtonUrl=v,exports.cookies=t.g,exports.createVideoElementHandle=e.d,Object.defineProperty(exports,`desktop`,{enumerable:!0,get:function(){return c.t}}),Object.defineProperty(exports,`dgram`,{enumerable:!0,get:function(){return o.i}}),Object.defineProperty(exports,`dns`,{enumerable:!0,get:function(){return i.t}}),exports.evaluatePermission=t.u,Object.defineProperty(exports,`extension`,{enumerable:!0,get:function(){return t.t}}),exports.fetch=t.n,exports.fetchCredentialedPermission=t.b,exports.fetchLocalPermission=t.x,exports.fetchPermission=t.S,Object.defineProperty(exports,`fs`,{enumerable:!0,get:function(){return l.c}}),exports.gotoPermission=t.d,exports.handleRevivableModules=e.l,Object.defineProperty(exports,`http`,{enumerable:!0,get:function(){return s.t}}),exports.isBlockedFetchUrl=t.C,exports.isBlockedFrameUrl=t.f,exports.isExtensionExposed=t.E,exports.isLocalNetworkUrl=t.w,exports.isType=e.f,exports.modifyRequestHeadersPermission=t.p,Object.defineProperty(exports,`net`,{enumerable:!0,get:function(){return a.s}}),Object.defineProperty(exports,`opfs`,{enumerable:!0,get:function(){return u.t}}),exports.permissions=t.a,exports.promptInstall=t.i,exports.readCookiePermission=t._,exports.relayWorker=h,exports.removeRequestHeaderRule=t.m,exports.revive=e.p,exports.setMissingExtensionHandler=t.D,exports.setRequestHeaderRule=t.h,exports.type=e.m,exports.waitForExtensionExposure=t.O;
package/index.d.ts CHANGED
@@ -1560,7 +1560,7 @@ declare const connect$1: (options: SocketConnectOpts, connectionListener?: () =>
1560
1560
  declare const createConnection: (options: SocketConnectOpts, connectionListener?: () => void) => Socket$1;
1561
1561
  declare const createServer$1: (options?: ServerOpts | ((socket: Socket$1) => void), connectionListener?: (socket: Socket$1) => void) => Server$1;
1562
1562
 
1563
- declare const _default$1: {
1563
+ declare const _default$3: {
1564
1564
  Socket: typeof Socket$1;
1565
1565
  Server: typeof Server$1;
1566
1566
  connect: (options: SocketConnectOpts, connectionListener?: () => void) => Socket$1;
@@ -1579,11 +1579,11 @@ declare namespace net$1 {
1579
1579
  export {
1580
1580
  Server$1 as Server,
1581
1581
  Socket$1 as Socket,
1582
- _default$1 as _default,
1582
+ _default$3 as _default,
1583
1583
  connect$1 as connect,
1584
1584
  net$1_createConnection as createConnection,
1585
1585
  createServer$1 as createServer,
1586
- _default$1 as default,
1586
+ _default$3 as default,
1587
1587
  net$1_isIP as isIP,
1588
1588
  net$1_isIPv4 as isIPv4,
1589
1589
  net$1_isIPv6 as isIPv6,
@@ -1665,6 +1665,10 @@ declare class Socket extends EventEmitter implements Socket$3 {
1665
1665
  [Symbol.asyncDispose](): Promise<void>;
1666
1666
  }
1667
1667
  declare const createSocket: (options: SocketType | SocketOptions, callback?: (msg: Buffer$1, rinfo: RemoteInfo) => void) => Socket;
1668
+ declare const _default$2: {
1669
+ Socket: typeof Socket;
1670
+ createSocket: (options: SocketType | SocketOptions, callback?: (msg: Buffer$1, rinfo: RemoteInfo) => void) => Socket;
1671
+ };
1668
1672
 
1669
1673
  type dgram$1_Socket = Socket;
1670
1674
  declare const dgram$1_Socket: typeof Socket;
@@ -1673,6 +1677,7 @@ declare namespace dgram$1 {
1673
1677
  export {
1674
1678
  dgram$1_Socket as Socket,
1675
1679
  dgram$1_createSocket as createSocket,
1680
+ _default$2 as default,
1676
1681
  };
1677
1682
  }
1678
1683
 
@@ -1837,7 +1842,7 @@ declare const globalAgent: Agent;
1837
1842
  declare const request: (...args: [options: string | URL | ClientRequestArgs, callback?: (res: IncomingMessage) => void] | [url: string | URL, options: ClientRequestArgs, callback?: (res: IncomingMessage) => void]) => ClientRequest;
1838
1843
  declare const get: (...args: [options: string | URL | ClientRequestArgs, callback?: (res: IncomingMessage) => void] | [url: string | URL, options: ClientRequestArgs, callback?: (res: IncomingMessage) => void]) => ClientRequest;
1839
1844
  declare const createServer: (options?: object | RequestListener, requestListener?: RequestListener) => Server;
1840
- declare const _default: {
1845
+ declare const _default$1: {
1841
1846
  METHODS: string[];
1842
1847
  STATUS_CODES: Record<number, string>;
1843
1848
  Agent: typeof Agent;
@@ -1869,13 +1874,12 @@ type http_Server = Server;
1869
1874
  type http_ServerResponse = ServerResponse;
1870
1875
  declare const http_ServerResponse: typeof ServerResponse;
1871
1876
  type http_ServerResponseOptions = ServerResponseOptions;
1872
- declare const http__default: typeof _default;
1873
1877
  declare const http_createServer: typeof createServer;
1874
1878
  declare const http_get: typeof get;
1875
1879
  declare const http_globalAgent: typeof globalAgent;
1876
1880
  declare const http_request: typeof request;
1877
1881
  declare namespace http {
1878
- export { http_Agent as Agent, http_ClientRequest as ClientRequest, http_HTTPParser as HTTPParser, http_IncomingMessage as IncomingMessage, http_METHODS as METHODS, http_STATUS_CODES as STATUS_CODES, http_ServerResponse as ServerResponse, http__default as _default, http_createServer as createServer, _default as default, http_get as get, http_globalAgent as globalAgent, http_request as request };
1882
+ export { http_Agent as Agent, http_ClientRequest as ClientRequest, http_HTTPParser as HTTPParser, http_IncomingMessage as IncomingMessage, http_METHODS as METHODS, http_STATUS_CODES as STATUS_CODES, http_ServerResponse as ServerResponse, _default$1 as _default, http_createServer as createServer, _default$1 as default, http_get as get, http_globalAgent as globalAgent, http_request as request };
1879
1883
  export type { http_ClientRequestArgs as ClientRequestArgs, http_ParsedHead as ParsedHead, http_RequestListener as RequestListener, http_Server as Server, http_ServerResponseOptions as ServerResponseOptions };
1880
1884
  }
1881
1885
 
@@ -2060,11 +2064,65 @@ declare const mount$1: () => Promise<void>;
2060
2064
  declare const flush$1: () => Promise<void>;
2061
2065
  declare const remount$1: () => Promise<void>;
2062
2066
  declare const pull: (path: string) => Promise<Blob>;
2067
+ declare const _default: {
2068
+ pull: (path: string) => Promise<Blob>;
2069
+ available: () => Promise<boolean>;
2070
+ readFileSync: (path: node_fs.PathLike, options?: ReadOptions) => Buffer | string;
2071
+ writeFileSync: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => void;
2072
+ appendFileSync: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => void;
2073
+ existsSync: (path: node_fs.PathLike) => boolean;
2074
+ statSync: (path: node_fs.PathLike) => Stats;
2075
+ lstatSync: (path: node_fs.PathLike) => Stats;
2076
+ readdirSync: (path: node_fs.PathLike) => string[];
2077
+ mkdirSync: (path: node_fs.PathLike, options?: MakeOptions) => void;
2078
+ rmSync: (path: node_fs.PathLike, options?: {
2079
+ recursive?: boolean;
2080
+ force?: boolean;
2081
+ }) => void;
2082
+ rmdirSync: (path: node_fs.PathLike, options?: {
2083
+ recursive?: boolean;
2084
+ }) => void;
2085
+ unlinkSync: (path: node_fs.PathLike) => void;
2086
+ renameSync: (from: node_fs.PathLike, to: node_fs.PathLike) => void;
2087
+ readFile: (path: node_fs.PathLike, a: ReadOptions | Callback<Buffer | string>, b?: Callback<Buffer | string>) => void;
2088
+ writeFile: (path: node_fs.PathLike, data: WriteData, a: WriteOptions | Callback<void>, b?: Callback<void>) => void;
2089
+ appendFile: (path: node_fs.PathLike, data: WriteData, a: WriteOptions | Callback<void>, b?: Callback<void>) => void;
2090
+ stat: (path: node_fs.PathLike, callback: Callback<Stats>) => void;
2091
+ readdir: (path: node_fs.PathLike, a: unknown, b?: Callback<string[]>) => void;
2092
+ mkdir: (path: node_fs.PathLike, a: MakeOptions | Callback<void>, b?: Callback<void>) => void;
2093
+ rm: (path: node_fs.PathLike, a: {
2094
+ recursive?: boolean;
2095
+ } | Callback<void>, b?: Callback<void>) => void;
2096
+ unlink: (path: node_fs.PathLike, callback: Callback<void>) => void;
2097
+ rename: (from: node_fs.PathLike, to: node_fs.PathLike, callback: Callback<void>) => void;
2098
+ exists: (path: node_fs.PathLike, callback: (exists: boolean) => void) => void;
2099
+ promises: {
2100
+ readFile: (path: node_fs.PathLike, options?: ReadOptions) => Promise<Buffer | string>;
2101
+ writeFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
2102
+ appendFile: (path: node_fs.PathLike, data: WriteData, options?: WriteOptions) => Promise<void>;
2103
+ stat: (path: node_fs.PathLike) => Promise<Stats>;
2104
+ lstat: (path: node_fs.PathLike) => Promise<Stats>;
2105
+ readdir: (path: node_fs.PathLike) => Promise<string[]>;
2106
+ mkdir: (path: node_fs.PathLike, options?: MakeOptions) => Promise<void>;
2107
+ rm: (path: node_fs.PathLike, options?: {
2108
+ recursive?: boolean;
2109
+ }) => Promise<void>;
2110
+ rmdir: (path: node_fs.PathLike, options?: {
2111
+ recursive?: boolean;
2112
+ }) => Promise<void>;
2113
+ unlink: (path: node_fs.PathLike) => Promise<void>;
2114
+ rename: (from: node_fs.PathLike, to: node_fs.PathLike) => Promise<void>;
2115
+ access: (path: node_fs.PathLike) => Promise<void>;
2116
+ };
2117
+ mount: () => Promise<void>;
2118
+ flush: () => Promise<void>;
2119
+ remount: () => Promise<void>;
2120
+ };
2063
2121
 
2064
2122
  type index$1_Stats = Stats;
2065
2123
  declare const index$1_pull: typeof pull;
2066
2124
  declare namespace index$1 {
2067
- export { appendFile$1 as appendFile, appendFileSync$1 as appendFileSync, available$1 as available, exists$1 as exists, existsSync$1 as existsSync, flush$1 as flush, lstatSync$1 as lstatSync, mkdir$1 as mkdir, mkdirSync$1 as mkdirSync, mount$1 as mount, promises$1 as promises, index$1_pull as pull, readFile$1 as readFile, readFileSync$1 as readFileSync, readdir$1 as readdir, readdirSync$1 as readdirSync, remount$1 as remount, rename$1 as rename, renameSync$1 as renameSync, rm$1 as rm, rmSync$1 as rmSync, rmdirSync$1 as rmdirSync, stat$1 as stat, statSync$1 as statSync, unlink$1 as unlink, unlinkSync$1 as unlinkSync, writeFile$1 as writeFile, writeFileSync$1 as writeFileSync };
2125
+ export { appendFile$1 as appendFile, appendFileSync$1 as appendFileSync, available$1 as available, _default as default, exists$1 as exists, existsSync$1 as existsSync, flush$1 as flush, lstatSync$1 as lstatSync, mkdir$1 as mkdir, mkdirSync$1 as mkdirSync, mount$1 as mount, promises$1 as promises, index$1_pull as pull, readFile$1 as readFile, readFileSync$1 as readFileSync, readdir$1 as readdir, readdirSync$1 as readdirSync, remount$1 as remount, rename$1 as rename, renameSync$1 as renameSync, rm$1 as rm, rmSync$1 as rmSync, rmdirSync$1 as rmdirSync, stat$1 as stat, statSync$1 as statSync, unlink$1 as unlink, unlinkSync$1 as unlinkSync, writeFile$1 as writeFile, writeFileSync$1 as writeFileSync };
2068
2126
  export type { index$1_Stats as Stats };
2069
2127
  }
2070
2128
 
package/index.js CHANGED
@@ -2,16 +2,16 @@ import { d as e, f as t, l as n, m as r, p as i, u as a } from "./locator-DxAsGV
2
2
  import { C as o, D as s, E as c, O as l, S as u, _ as d, a as f, b as p, c as m, d as h, f as g, g as _, h as v, i as y, l as b, m as x, n as S, o as C, p as w, s as T, t as E, u as D, v as O, w as k, x as A } from "./extension-Dgz0UTy0.js";
3
3
  import { r as j, t as M } from "./api-ByfayMm1.js";
4
4
  import "./proxy-wiZN4eTR.js";
5
- import { n as N } from "./cloud-BVnscun4.js";
5
+ import { n as N } from "./cloud-C-LK4DWa.js";
6
6
  import { t as P } from "./dns.js";
7
7
  import "./node-fs-Bd_UUx1m.js";
8
8
  import "./storage-z0q3iena.js";
9
9
  import "./utils-CNydj3OT.js";
10
10
  import { s as F } from "./net-Bl6_W3bd.js";
11
- import { r as I } from "./dgram-5YUb70O2.js";
11
+ import { i as I } from "./dgram-DS5_yPc5.js";
12
12
  import { t as L } from "./http.js";
13
13
  import { t as R } from "./desktop.js";
14
- import { s as z } from "./fs-B7JumDCn.js";
14
+ import { c as z } from "./fs-BiS_UsCn.js";
15
15
  import { t as B } from "./opfs.js";
16
16
  import { t as V } from "./account.js";
17
17
  import { relay as H } from "osra";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fkn/lib",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "type": "module",
@@ -1 +0,0 @@
1
- const e=require(`./chunk-B6C_zzib.cjs`),t=require(`./api-CDb2pv7C.cjs`),n=require(`./utils-BsNRWMfl.cjs`);let r=require(`buffer`),i=require(`events`),a=require(`ip-address`);var o=e.n({Socket:()=>s,createSocket:()=>f}),s=class extends i.EventEmitter{_type;_localAddress;_remoteAddress;_webVPNUdpSocketPromise;_dataPort;_socketId;_sendQueue=[];_sendQueueBytes=0;_sendFlushScheduled=!1;_peerTailCache=new Map;constructor(e){if(super(e),!e)throw Error(`Missing options`);this._type=e.type}_lastRecvBufferSize=0;_lastSendBufferSize=0;_lastTtl=64;_lastMulticastTtl=1;_lastMulticastLoopback=!0;_setUdpOption(e){if(!this._webVPNUdpSocketPromise){this.emit(`error`,Error(`Cannot set socket option before bind`));return}this._webVPNUdpSocketPromise.then(async t=>{if(t)try{await t.setOption(e)}catch(e){this.emit(`error`,e)}})}_onDataPortBatch(e){let t=new DataView(e),n=0;for(;n+4<=e.byteLength;){let i=t.getUint32(n);n+=4;let a=n+i;if(a>e.byteLength)break;let o=n+4,s=t.getUint8(o);o+=1;let c,l,u;if(s===2){if(!this._remoteAddress){n=a;continue}c=this._remoteAddress.address,l=this._remoteAddress.family,u=this._remoteAddress.port}else{let n=new Uint8Array(e,o,s===0?4:16);if(s===0)l=`IPv4`,c=`${n[0]}.${n[1]}.${n[2]}.${n[3]}`;else{l=`IPv6`;let e=[];for(let t=0;t<16;t+=2)e.push(((n[t]<<8|n[t+1])>>>0).toString(16));c=e.join(`:`)}o+=n.byteLength,u=t.getUint16(o),o+=2}let d=t.getUint32(o);o+=4,this.emit(`message`,r.Buffer.from(e.slice(o,o+d)),{address:c,family:l,port:u,size:d}),n=a}}_peerTail(e,t){if(e===void 0||t===void 0)return c;let n=`${e}|${t}`,r=this._peerTailCache.get(n);if(r)return r;let i=a.Address4.isValid(e)?u(e):d(e),o=new Uint8Array(1+i.byteLength+2);return o[0]=i.byteLength===4?0:1,o.set(i,1),new DataView(o.buffer).setUint16(1+i.byteLength,t),this._peerTailCache.set(n,o),o}_portSend(e,t,n){let r=this._peerTail(t,n),i=new Uint8Array(8+r.byteLength+4+e.byteLength),a=new DataView(i.buffer);a.setUint32(0,i.byteLength-4),a.setUint32(4,this._socketId),i.set(r,8),a.setUint32(8+r.byteLength,e.byteLength),i.set(e,12+r.byteLength),this._sendQueue.push(i),this._sendQueueBytes+=i.byteLength,!this._sendFlushScheduled&&(this._sendFlushScheduled=!0,queueMicrotask(()=>{this._sendFlushScheduled=!1;let e=this._sendQueue,t=this._sendQueueBytes;if(this._sendQueue=[],this._sendQueueBytes=0,!e.length||!this._dataPort)return;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.byteLength;this._dataPort.postMessage(n.buffer,[n.buffer])}))}addMembership(e,t){if(a.Address4.isValid(e)){let n=u(e),r=t&&a.Address4.isValid(t)?u(t):new Uint8Array([0,0,0,0]);this._setUdpOption({type:5,group:n,interface:r})}else if(a.Address6.isValid(e)){let t=d(e);this._setUdpOption({type:7,group:t,ifIndex:0})}else this.emit(`error`,Error(`Invalid multicast address: ${e}`))}address(){if(!this._localAddress)throw Error(`EBADF`);return this._localAddress}bind(...e){let i=n.i(...e),a=this._type===`udp6`?`::`:`0.0.0.0`;return this._webVPNUdpSocketPromise=t.t.then(e=>e.cloud.webvpn.udpSocket({type:this._type,address:i.address??a,port:i.port,dataPort:!0})).then(e=>{if(e.dataPort)this._socketId=e.socketId,this._dataPort=e.dataPort,this._dataPort.onmessage=e=>this._onDataPortBatch(e.data);else{let t=e.dataReadableStream.getReader(),n=async()=>{let{value:e,done:i}=await t.read();i||(this.emit(`message`,r.Buffer.from(e.data),{address:e.address,family:e.family,port:e.port,size:e.size}),n())};n()}return this._localAddress={address:e.localAddress,family:e.localFamily,port:e.localPort},e}).catch(e=>{this.emit(`error`,e)}),this._webVPNUdpSocketPromise.then(e=>{e&&this.emit(`listening`)}),i.callback&&this._webVPNUdpSocketPromise.then(e=>{e&&i.callback.call(this)}),this}close(e){if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);return this._webVPNUdpSocketPromise.then(async t=>{if(!t)throw Error(`Socket not bound`);this._dataPort?.close(),this._dataPort=void 0,await t.close(),e&&e(),this.emit(`close`)}),this}connect(...e){if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);this._webVPNUdpSocketPromise.then(async t=>{if(!t)throw Error(`Socket not bound`);let n=e[0],r=this._type===`udp6`?`::1`:`127.0.0.1`,i=typeof e[1]==`string`?e[1]:r,a=typeof e.at(-1)==`function`?e.at(-1):void 0;await t.connect({remotePort:n,remoteAddress:i}),this._remoteAddress={address:i,family:this._type===`udp6`?`IPv6`:`IPv4`,port:n},a&&a()})}disconnect(){if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);this._webVPNUdpSocketPromise.then(async e=>{if(!e)throw Error(`Socket not bound`);await e.connect({remotePort:0,remoteAddress:this._type===`udp4`?`0.0.0.0`:`::`})})}dropMembership(e,t){if(a.Address4.isValid(e)){let n=u(e),r=t&&a.Address4.isValid(t)?u(t):new Uint8Array([0,0,0,0]);this._setUdpOption({type:6,group:n,interface:r})}else if(a.Address6.isValid(e)){let t=d(e);this._setUdpOption({type:8,group:t,ifIndex:0})}else this.emit(`error`,Error(`Invalid multicast address: ${e}`))}getRecvBufferSize(){return this._lastRecvBufferSize}getSendBufferSize(){return this._lastSendBufferSize}getSendQueueSize(){return 0}getSendQueueCount(){return 0}ref(){return this}remoteAddress(){if(!this._remoteAddress)throw Error(`ERR_SOCKET_DGRAM_NOT_CONNECTED`);return{address:this._remoteAddress.address,family:this._remoteAddress.family,port:this._remoteAddress.port}}send(...e){this._webVPNUdpSocketPromise||this.bind();let t=n.a(...e),r=this._type===`udp6`?`::1`:`127.0.0.1`;if(!this._webVPNUdpSocketPromise)throw Error(`Socket not bound`);this._webVPNUdpSocketPromise.then(e=>{if(!e)throw Error(`Socket not bound`);let n=l(t.message),i=t.callback,o=t.address??r,s=this._remoteAddress!==void 0&&t.address===void 0;if(this._dataPort&&(s||a.Address4.isValid(o)||a.Address6.isValid(o))){this._portSend(n,s?void 0:o,s?void 0:t.port),i?.call(this,null,n.byteLength);return}e.send({...t,address:o,message:n.byteOffset===0&&n.byteLength===n.buffer.byteLength?n.buffer:n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}).then(()=>i?.call(this,null,n.byteLength),e=>i?i.call(this,e,0):this.emit(`error`,e))})}setBroadcast(e){this._setUdpOption({type:0,value:e})}setMulticastInterface(e){}setMulticastLoopback(e){return this._setUdpOption({type:3,value:e}),this._setUdpOption({type:4,value:e}),this._lastMulticastLoopback=e,e}setMulticastTTL(e){return this._setUdpOption({type:2,value:e}),this._lastMulticastTtl=e,e}setRecvBufferSize(e){this._setUdpOption({type:10,value:e}),this._lastRecvBufferSize=e}setSendBufferSize(e){this._setUdpOption({type:9,value:e}),this._lastSendBufferSize=e}setTTL(e){return this._setUdpOption({type:1,value:e}),this._lastTtl=e,e}unref(){return this}addSourceSpecificMembership(e,t,n){}dropSourceSpecificMembership(e,t,n){}async[Symbol.asyncDispose](){await new Promise(e=>{this.close(e)})}},c=new Uint8Array([2]),l=e=>{if(typeof e==`string`)return n.s.encode(e);if(e instanceof Uint8Array)return e;if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);if(Array.isArray(e)){let t=e.map(l),n=new Uint8Array(t.reduce((e,t)=>e+t.byteLength,0)),r=0;for(let e of t)n.set(e,r),r+=e.byteLength;return n}return new Uint8Array(e)},u=e=>{let t=e.split(`.`).map(e=>parseInt(e,10));if(t.length!==4||t.some(e=>Number.isNaN(e)||e<0||e>255))throw Error(`Invalid IPv4 address: ${e}`);return new Uint8Array(t)},d=e=>{let t=new a.Address6(e).getBitsBase16(0,128).match(/.{2}/g);if(!t||t.length!==16)throw Error(`Invalid IPv6 address: ${e}`);return new Uint8Array(t.map(e=>parseInt(e,16)))},f=(e,t)=>{let n=new s(typeof e==`string`?{type:e}:e);return t&&n.on(`message`,t),n};Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
package/fs-DrwvwtqC.cjs DELETED
@@ -1 +0,0 @@
1
- const e=require(`./chunk-B6C_zzib.cjs`),t=require(`./node-fs-lrlD_zqB.cjs`),n=require(`./storage-BadvHtv0.cjs`),r=require(`./opfs-Dsi4FkJU.cjs`);var i=e.n({available:()=>c,list:()=>l,pull:()=>p,readFile:()=>u,remove:()=>f,writeFile:()=>d}),a,o=async()=>await(a??=r.t().catch(()=>!1))?!0:(a=void 0,!1),s=()=>n.t().catch(()=>!1),c=async()=>await o()||await s(),l=async()=>{let[e,t]=await Promise.all([o().then(e=>e?r.n():[]).catch(()=>[]),s().then(e=>e?n.n():[]).catch(()=>[])]),i=new Map,a=e=>{let t=Date.parse(e.updatedAt??``);return Number.isFinite(t)?t:0},c=e=>{let t=i.get(e.path);(!t||a(e)>=a(t))&&i.set(e.path,e)};for(let t of e)c(t);for(let e of t)c(e);return[...i.values()]},u=async e=>{if(await o())try{return await r.i(e)}catch(e){if(e?.name!==`NotFoundError`)throw e}let t=await n.i(e);return await o()&&r.o(e,t).catch(()=>{}),t},d=async(e,t,i)=>{let a=t instanceof Blob?t:new Blob([t],i?.contentType?{type:i.contentType}:void 0);if(await o()){await r.o(e,a,i),await s()&&n.s(e,a,i).catch(e=>console.warn(`fs: cloud replicate failed`,e));return}if(await s())return n.s(e,a,i);throw Error(`fs: no storage backend available`)},f=async e=>{let t=[];if(await o()&&t.push(r.a(e).catch(()=>{})),await s()&&t.push(n.a(e).catch(()=>{})),!t.length)throw Error(`fs: no storage backend available`);await Promise.all(t)},p=async e=>{let t=await n.i(e);return await o()&&await r.o(e,t),t},m=e.n({appendFile:()=>A,appendFileSync:()=>v,available:()=>h,exists:()=>L,existsSync:()=>y,flush:()=>B,lstatSync:()=>x,mkdir:()=>N,mkdirSync:()=>C,mount:()=>z,promises:()=>R,pull:()=>H,readFile:()=>O,readFileSync:()=>g,readdir:()=>M,readdirSync:()=>S,remount:()=>V,rename:()=>I,renameSync:()=>D,rm:()=>P,rmSync:()=>w,rmdirSync:()=>T,stat:()=>j,statSync:()=>b,unlink:()=>F,unlinkSync:()=>E,writeFile:()=>k,writeFileSync:()=>_}),{available:h,readFileSync:g,writeFileSync:_,appendFileSync:v,existsSync:y,statSync:b,lstatSync:x,readdirSync:S,mkdirSync:C,rmSync:w,rmdirSync:T,unlinkSync:E,renameSync:D,readFile:O,writeFile:k,appendFile:A,stat:j,readdir:M,mkdir:N,rm:P,unlink:F,rename:I,exists:L,promises:R,mount:z,flush:B,remount:V}=t.t(i,{memfs:!0}),H=p;Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return I}});