@fkn/lib 0.5.5 → 0.6.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.
Files changed (116) hide show
  1. package/account.cjs +1 -1
  2. package/account.d.ts +9 -11
  3. package/account.js +2 -2
  4. package/api-BYUraih6.d.ts +524 -0
  5. package/{api-CDb2pv7C.cjs → api-DD5v1qP9.cjs} +1 -1
  6. package/{background-DvQm1JHR.js → background-BVBbBOmL.js} +41 -68
  7. package/background-B_VgpARk.cjs +1 -0
  8. package/cloud/dgram.cjs +1 -1
  9. package/cloud/dgram.d.ts +2 -541
  10. package/cloud/dgram.js +1 -3
  11. package/cloud/dns.cjs +1 -1
  12. package/cloud/dns.d.ts +3 -12
  13. package/cloud/dns.js +0 -1
  14. package/cloud/fs/promises.cjs +1 -1
  15. package/cloud/fs/promises.d.ts +7 -43
  16. package/cloud/fs/promises.js +0 -3
  17. package/cloud/fs.cjs +1 -1
  18. package/cloud/fs.d.ts +3 -75
  19. package/cloud/fs.js +3 -4
  20. package/cloud/http.cjs +1 -1
  21. package/cloud/http.d.ts +2 -767
  22. package/cloud/http.js +0 -3
  23. package/cloud/net.cjs +1 -1
  24. package/cloud/net.d.ts +2 -606
  25. package/cloud/net.js +2 -3
  26. package/cloud-5o7yJHeX.cjs +1 -0
  27. package/cloud-BFyf2uC7.js +112 -0
  28. package/cloud-gklfa4ZN.d.ts +41 -0
  29. package/cloud.cjs +1 -1
  30. package/cloud.d.ts +7 -1053
  31. package/cloud.js +8 -12
  32. package/{connect-button-poDZVmq2.cjs → connect-button-BBEjXzB3.cjs} +1 -1
  33. package/connect-button-D8KXSL6s.d.ts +4 -0
  34. package/desktop.cjs +1 -1
  35. package/desktop.d.ts +37 -34
  36. package/desktop.js +1 -1
  37. package/dgram-CE43gJq9.cjs +1 -0
  38. package/{dgram-c_Xk7ckJ.js → dgram-wtjARbt0.js} +3 -3
  39. package/dgram.cjs +1 -1
  40. package/dgram.d.ts +83 -533
  41. package/dgram.js +1 -3
  42. package/dns.cjs +1 -1
  43. package/dns.d.ts +9 -9
  44. package/dns.js +2 -2
  45. package/extension-3pxUYwrA.d.ts +16 -0
  46. package/extension-CPj10qwa.js +67 -0
  47. package/extension-D-NUXxzF.cjs +1 -0
  48. package/extension.cjs +1 -1
  49. package/extension.d.ts +3 -859
  50. package/extension.js +3 -5
  51. package/fs/promises.cjs +1 -1
  52. package/fs/promises.d.ts +8 -63
  53. package/fs/promises.js +1 -4
  54. package/fs-BfmfMBiw.cjs +1 -0
  55. package/{fs-BQs-x3_j.js → fs-D6nNf1mR.js} +4 -4
  56. package/fs-K7ROdxDx.d.ts +41 -0
  57. package/fs.cjs +1 -1
  58. package/fs.d.ts +81 -131
  59. package/fs.js +1 -4
  60. package/http.cjs +2 -2
  61. package/http.d.ts +152 -733
  62. package/http.js +7 -7
  63. package/index-BJztAQIP.d.ts +721 -0
  64. package/index-C6ZoDJg8.d.ts +31 -0
  65. package/index.cjs +1 -1
  66. package/index.d.ts +25 -2313
  67. package/index.js +23 -26
  68. package/lookup-BtwWaCZJ.d.ts +7 -0
  69. package/net-BDW1AVX1.d.ts +140 -0
  70. package/net-CpuAhaQC.cjs +1 -0
  71. package/{net-Bl6_W3bd.js → net-DKMWPXb_.js} +3 -3
  72. package/net.cjs +1 -1
  73. package/net.d.ts +2 -606
  74. package/net.js +2 -3
  75. package/{node-fs-DQn1TGJz.cjs → node-fs-C0eKnboT.cjs} +1 -1
  76. package/{node-fs-CdKPXPtW.js → node-fs-Dbf93qP7.js} +1 -1
  77. package/opfs/promises.cjs +1 -1
  78. package/opfs/promises.d.ts +8 -63
  79. package/opfs/promises.js +0 -1
  80. package/{opfs-BfcYLPGb.js → opfs-7_GmzQ93.js} +1 -1
  81. package/opfs-uClkgnb5.cjs +1 -0
  82. package/opfs.cjs +1 -1
  83. package/opfs.d.ts +80 -130
  84. package/opfs.js +3 -3
  85. package/package.json +6 -1
  86. package/packages-D36R2vBv.d.ts +108 -0
  87. package/packages.cjs +1 -0
  88. package/packages.d.ts +2 -0
  89. package/packages.js +150 -0
  90. package/{locator-9s7jNIA2.js → proxy-C8SG1Beo.js} +542 -344
  91. package/proxy-bPaU3-Cz.cjs +53 -0
  92. package/react.cjs +1 -1
  93. package/react.d.ts +11 -9
  94. package/react.js +1 -1
  95. package/{chunk-CPXzm0be.js → rolldown-runtime-DF993M8W.js} +1 -1
  96. package/rolldown-runtime-Doa5O59j.cjs +1 -0
  97. package/storage-OkwsFLN1.cjs +1 -0
  98. package/{storage-BcJfnkm3.js → storage-TmeyhZGt.js} +2 -2
  99. package/{utils-BsNRWMfl.cjs → utils-CoimMjf9.cjs} +1 -1
  100. package/background-CbU8TkWo.cjs +0 -1
  101. package/chunk-B6C_zzib.cjs +0 -1
  102. package/cloud-CWg9zCWm.cjs +0 -1
  103. package/cloud-eLyGYzbA.js +0 -33
  104. package/dgram-B3WC4VdJ.cjs +0 -1
  105. package/extension-BLkZiaAP.js +0 -253
  106. package/extension-DAiRg5ny.cjs +0 -1
  107. package/fs-DI1maxcZ.cjs +0 -1
  108. package/locator-CHfEe3Jv.cjs +0 -53
  109. package/net-C5kWnI4C.cjs +0 -1
  110. package/opfs-Dsi4FkJU.cjs +0 -1
  111. package/proxy-A9UvWUaF.cjs +0 -1
  112. package/proxy-wiZN4eTR.js +0 -14
  113. package/storage-C2-_-bTO.cjs +0 -1
  114. /package/{api-ByfayMm1.js → api--bnCFd4w.js} +0 -0
  115. /package/{connect-button-B_63ldmg.js → connect-button-Ds9KpXHe.js} +0 -0
  116. /package/{utils-CNydj3OT.js → utils-DPtyxGQu.js} +0 -0
package/cloud.js CHANGED
@@ -1,12 +1,8 @@
1
- import "./api-ByfayMm1.js";
2
- import { t as e } from "./proxy-wiZN4eTR.js";
3
- import { r as t, t as n } from "./cloud-eLyGYzbA.js";
4
- import { t as r } from "./dns.js";
5
- import "./node-fs-CdKPXPtW.js";
6
- import "./storage-BcJfnkm3.js";
7
- import { t as i } from "./cloud/fs.js";
8
- import "./utils-CNydj3OT.js";
9
- import { s as a } from "./net-Bl6_W3bd.js";
10
- import { i as o } from "./dgram-c_Xk7ckJ.js";
11
- import { t as s } from "./http.js";
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 };
1
+ import { t as e } from "./proxy-C8SG1Beo.js";
2
+ import { i as t, r as n, t as r } from "./cloud-BFyf2uC7.js";
3
+ import { t as i } from "./dns.js";
4
+ import { t as a } from "./cloud/fs.js";
5
+ import { s as o } from "./net-DKMWPXb_.js";
6
+ import { i as s } from "./dgram-wtjARbt0.js";
7
+ import { t as c } from "./http.js";
8
+ export { t as attachFrame, r as available, s as dgram, i as dns, e as fetch, a as fs, c as http, o as net, n as quota };
@@ -1 +1 @@
1
- var e=`https://fkn.app`,t=t=>{let n=t??(typeof location<`u`?location.origin:void 0);return n?`${e}/connect-button?origin=${encodeURIComponent(n)}`:`${e}/connect-button`};Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return t}});
1
+ var e=`https://fkn.app`,t=t=>{let n=t??(typeof location<`u`?location.origin:void 0);return n?`${e}/connect-button?origin=${encodeURIComponent(n)}`:`${e}/connect-button`};Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return t}});
@@ -0,0 +1,4 @@
1
+ //#region src/lib/connect-button.d.ts
2
+ declare const connectButtonUrl: (origin?: string) => string;
3
+ //#endregion
4
+ export { connectButtonUrl as t };
package/desktop.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=require(`./chunk-B6C_zzib.cjs`).n({available:()=>t,dgram:()=>o,dns:()=>i,fetch:()=>r,fs:()=>s,net:()=>a}),t=()=>!1,n=e=>(...t)=>{throw Error(`The FKN desktop app is not connected, desktop.${e} is unavailable`)},r=n(`fetch`),i={lookup:n(`dns.lookup`)},a={connect:n(`net.connect`),createConnection:n(`net.createConnection`),createServer:n(`net.createServer`)},o={createSocket:n(`dgram.createSocket`)},s={available:async()=>!1,readFile:n(`fs.readFile`),readFileSync:n(`fs.readFileSync`),writeFile:n(`fs.writeFile`),writeFileSync:n(`fs.writeFileSync`),appendFile:n(`fs.appendFile`),appendFileSync:n(`fs.appendFileSync`),existsSync:n(`fs.existsSync`),stat:n(`fs.stat`),statSync:n(`fs.statSync`),readdir:n(`fs.readdir`),readdirSync:n(`fs.readdirSync`),mkdir:n(`fs.mkdir`),mkdirSync:n(`fs.mkdirSync`),rm:n(`fs.rm`),rmSync:n(`fs.rmSync`),unlink:n(`fs.unlink`),unlinkSync:n(`fs.unlinkSync`),rename:n(`fs.rename`),renameSync:n(`fs.renameSync`),mount:n(`fs.mount`),flush:n(`fs.flush`),promises:{readFile:n(`fs.promises.readFile`),writeFile:n(`fs.promises.writeFile`),unlink:n(`fs.promises.unlink`),rename:n(`fs.promises.rename`),readdir:n(`fs.promises.readdir`),mkdir:n(`fs.promises.mkdir`),rm:n(`fs.promises.rm`),stat:n(`fs.promises.stat`)}};exports.available=t,exports.dgram=o,exports.dns=i,exports.fetch=r,exports.fs=s,exports.net=a,Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return e}});
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=require("./rolldown-runtime-Doa5O59j.cjs").n({available:()=>t,dgram:()=>o,dns:()=>i,fetch:()=>r,fs:()=>s,net:()=>a}),t=()=>!1,n=e=>(...t)=>{throw Error(`The FKN desktop app is not connected, desktop.${e} is unavailable`)},r=n(`fetch`),i={lookup:n(`dns.lookup`)},a={connect:n(`net.connect`),createConnection:n(`net.createConnection`),createServer:n(`net.createServer`)},o={createSocket:n(`dgram.createSocket`)},s={available:async()=>!1,readFile:n(`fs.readFile`),readFileSync:n(`fs.readFileSync`),writeFile:n(`fs.writeFile`),writeFileSync:n(`fs.writeFileSync`),appendFile:n(`fs.appendFile`),appendFileSync:n(`fs.appendFileSync`),existsSync:n(`fs.existsSync`),stat:n(`fs.stat`),statSync:n(`fs.statSync`),readdir:n(`fs.readdir`),readdirSync:n(`fs.readdirSync`),mkdir:n(`fs.mkdir`),mkdirSync:n(`fs.mkdirSync`),rm:n(`fs.rm`),rmSync:n(`fs.rmSync`),unlink:n(`fs.unlink`),unlinkSync:n(`fs.unlinkSync`),rename:n(`fs.rename`),renameSync:n(`fs.renameSync`),mount:n(`fs.mount`),flush:n(`fs.flush`),promises:{readFile:n(`fs.promises.readFile`),writeFile:n(`fs.promises.writeFile`),unlink:n(`fs.promises.unlink`),rename:n(`fs.promises.rename`),readdir:n(`fs.promises.readdir`),mkdir:n(`fs.promises.mkdir`),rm:n(`fs.promises.rm`),stat:n(`fs.promises.stat`)}};exports.available=t,exports.dgram=o,exports.dns=i,exports.fetch=r,exports.fs=s,exports.net=a,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return e}});
package/desktop.d.ts CHANGED
@@ -1,49 +1,52 @@
1
+ declare namespace desktop_d_exports {
2
+ export { available, dgram, dns, fetch, fs, net };
3
+ }
1
4
  declare const available: () => boolean;
2
5
  declare const fetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
3
6
  declare const dns: {
4
- lookup: (..._args: unknown[]) => never;
7
+ lookup: (..._args: unknown[]) => never;
5
8
  };
6
9
  declare const net: {
7
- connect: (..._args: unknown[]) => never;
8
- createConnection: (..._args: unknown[]) => never;
9
- createServer: (..._args: unknown[]) => never;
10
+ connect: (..._args: unknown[]) => never;
11
+ createConnection: (..._args: unknown[]) => never;
12
+ createServer: (..._args: unknown[]) => never;
10
13
  };
11
14
  declare const dgram: {
12
- createSocket: (..._args: unknown[]) => never;
15
+ createSocket: (..._args: unknown[]) => never;
13
16
  };
14
17
  declare const fs: {
15
- available: () => Promise<boolean>;
18
+ available: () => Promise<boolean>;
19
+ readFile: (..._args: unknown[]) => never;
20
+ readFileSync: (..._args: unknown[]) => never;
21
+ writeFile: (..._args: unknown[]) => never;
22
+ writeFileSync: (..._args: unknown[]) => never;
23
+ appendFile: (..._args: unknown[]) => never;
24
+ appendFileSync: (..._args: unknown[]) => never;
25
+ existsSync: (..._args: unknown[]) => never;
26
+ stat: (..._args: unknown[]) => never;
27
+ statSync: (..._args: unknown[]) => never;
28
+ readdir: (..._args: unknown[]) => never;
29
+ readdirSync: (..._args: unknown[]) => never;
30
+ mkdir: (..._args: unknown[]) => never;
31
+ mkdirSync: (..._args: unknown[]) => never;
32
+ rm: (..._args: unknown[]) => never;
33
+ rmSync: (..._args: unknown[]) => never;
34
+ unlink: (..._args: unknown[]) => never;
35
+ unlinkSync: (..._args: unknown[]) => never;
36
+ rename: (..._args: unknown[]) => never;
37
+ renameSync: (..._args: unknown[]) => never;
38
+ mount: (..._args: unknown[]) => never;
39
+ flush: (..._args: unknown[]) => never;
40
+ promises: {
16
41
  readFile: (..._args: unknown[]) => never;
17
- readFileSync: (..._args: unknown[]) => never;
18
42
  writeFile: (..._args: unknown[]) => never;
19
- writeFileSync: (..._args: unknown[]) => never;
20
- appendFile: (..._args: unknown[]) => never;
21
- appendFileSync: (..._args: unknown[]) => never;
22
- existsSync: (..._args: unknown[]) => never;
23
- stat: (..._args: unknown[]) => never;
24
- statSync: (..._args: unknown[]) => never;
43
+ unlink: (..._args: unknown[]) => never;
44
+ rename: (..._args: unknown[]) => never;
25
45
  readdir: (..._args: unknown[]) => never;
26
- readdirSync: (..._args: unknown[]) => never;
27
46
  mkdir: (..._args: unknown[]) => never;
28
- mkdirSync: (..._args: unknown[]) => never;
29
47
  rm: (..._args: unknown[]) => never;
30
- rmSync: (..._args: unknown[]) => never;
31
- unlink: (..._args: unknown[]) => never;
32
- unlinkSync: (..._args: unknown[]) => never;
33
- rename: (..._args: unknown[]) => never;
34
- renameSync: (..._args: unknown[]) => never;
35
- mount: (..._args: unknown[]) => never;
36
- flush: (..._args: unknown[]) => never;
37
- promises: {
38
- readFile: (..._args: unknown[]) => never;
39
- writeFile: (..._args: unknown[]) => never;
40
- unlink: (..._args: unknown[]) => never;
41
- rename: (..._args: unknown[]) => never;
42
- readdir: (..._args: unknown[]) => never;
43
- mkdir: (..._args: unknown[]) => never;
44
- rm: (..._args: unknown[]) => never;
45
- stat: (..._args: unknown[]) => never;
46
- };
48
+ stat: (..._args: unknown[]) => never;
49
+ };
47
50
  };
48
-
49
- export { available, dgram, dns, fetch, fs, net };
51
+ //#endregion
52
+ export { available, dgram, dns, fetch, fs, net, desktop_d_exports as t };
package/desktop.js CHANGED
@@ -1,4 +1,4 @@
1
- import { n as e } from "./chunk-CPXzm0be.js";
1
+ import { n as e } from "./rolldown-runtime-DF993M8W.js";
2
2
  //#region src/lib/desktop.ts
3
3
  var t = /* @__PURE__ */ e({
4
4
  available: () => n,
@@ -0,0 +1 @@
1
+ const e=require("./rolldown-runtime-Doa5O59j.cjs"),t=require("./api-DD5v1qP9.cjs"),n=require("./utils-CoimMjf9.cjs");let r=require("buffer"),i=require("events"),a=require("ip-address");var o=e.n({Socket:()=>s,createSocket:()=>p,default:()=>m}),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);s===0?(l=`IPv4`,c=`${n[0]}.${n[1]}.${n[2]}.${n[3]}`):(l=`IPv6`,c=d(n)),o+=n.byteLength,u=t.getUint16(o),o+=2}let f=t.getUint32(o);o+=4,this.emit(`message`,r.Buffer.from(e.slice(o,o+f)),{address:c,family:l,port:u,size:f}),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):f(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.size>=4096&&this._peerTailCache.clear(),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=f(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`);if(!this._remoteAddress)throw Error(`ERR_SOCKET_DGRAM_NOT_CONNECTED`);this._remoteAddress=void 0,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=f(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=[];for(let n=0;n<16;n+=2)t.push(e[n]<<8|e[n+1]);let n=-1,r=1;for(let e=0;e<8;){if(t[e]!==0){e++;continue}let i=e;for(;i<8&&t[i]===0;)i++;i-e>r&&(n=e,r=i-e),e=i}return n===-1?t.map(e=>e.toString(16)).join(`:`):`${t.slice(0,n).map(e=>e.toString(16)).join(`:`)}::${t.slice(n+r).map(e=>e.toString(16)).join(`:`)}`},f=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)))},p=(e,t)=>{let n=new s(typeof e==`string`?{type:e}:e);return t&&n.on(`message`,t),n},m={Socket:s,createSocket:p};Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return s}});
@@ -1,6 +1,6 @@
1
- import { n as e } from "./chunk-CPXzm0be.js";
2
- import { t } from "./api-ByfayMm1.js";
3
- import { a as n, i as r, s as i } from "./utils-CNydj3OT.js";
1
+ import { n as e } from "./rolldown-runtime-DF993M8W.js";
2
+ import { t } from "./api--bnCFd4w.js";
3
+ import { a as n, i as r, s as i } from "./utils-DPtyxGQu.js";
4
4
  import { Buffer as a } from "buffer";
5
5
  import { EventEmitter as o } from "events";
6
6
  import { Address4 as s, Address6 as c } from "ip-address";
package/dgram.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`./api-CDb2pv7C.cjs`),require(`./utils-BsNRWMfl.cjs`);const e=require(`./dgram-B3WC4VdJ.cjs`);exports.Socket=e.t,exports.createSocket=e.n,exports.default=e.r;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./dgram-CE43gJq9.cjs");exports.Socket=e.t,exports.createSocket=e.n,exports.default=e.r;