{"_id":"@obsidion/bridge","_rev":"27-8e11d4c10fd4fa86c79610b1718dd0a3","name":"@obsidion/bridge","dist-tags":{"beta":"0.12.0","latest":"0.12.2"},"versions":{"0.1.0":{"name":"@obsidion/bridge","version":"0.1.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.1.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"bfce98f3037d9a5724a62a7196c964b9a3d9f6d4","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.1.0.tgz","fileCount":27,"integrity":"sha512-13k5/u8IjvsKRjRQ+TO542lmm+r25NP4Uzo0uWK885aO0myIfRsMTbt8PESBgN37tKAyEQq4SYEb55xiQfUb1w==","signatures":[{"sig":"MEUCIDY6ARhf0vJuSxMRxdJx8o5TYO9WnE4TtPQi28cNxUlbAiEA3WKuUxPMzhxOnwISPpHguqDvsVNGb33FzUrlom9woOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95398},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"ed9e7bb2ca4ba0dc5442154b049b033f555e0121","scripts":{"lint":"eslint src tests examples --ext .ts","test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:cjs && bun run build:esm","format":"prettier . --write","coverage":"bun test tests/*.test.ts --coverage","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","prepublishOnly":"bun run lint && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","ts-node":"^10.9.2","prettier":"^3.4.2","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.1.0_1744110293483_0.6037152990940782","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@obsidion/bridge","version":"0.2.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.2.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"e60d2d1d6690fbee5b6c1000c011859c680222be","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.2.0.tgz","fileCount":27,"integrity":"sha512-BW1jmN3jIWSAMI99LvEf46ESAuVLRyCAkh5XAeL5esbY80B5qzL8qrw6GlXlSFLRMvojSO1Dn6PW+Z6kEnKSVw==","signatures":[{"sig":"MEQCIC2cPB6z5DPV8Ygqavnb3lwxnw5WeZe0chfbTRXdJEz2AiAFcYMVINvykud5r5at02Z9GRrINOVfCJtabtZmJTaC8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99827},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"268e548547696537f1c6cd134d4e4b1bae4ae437","scripts":{"lint":"eslint src tests examples --ext .ts","test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:cjs && bun run build:esm","format":"prettier . --write","coverage":"bun test tests/*.test.ts --coverage","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","build:watch":"rimraf ./dist && tsc -p tsconfig.esm.json --watch","prepublishOnly":"bun run lint && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","ts-node":"^10.9.2","prettier":"^3.4.2","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.2.0_1744292032640_0.6550216829949222","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@obsidion/bridge","version":"0.3.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.3.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"f05f3809cee355958d8b832fab42f6aa75c9c172","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.3.0.tgz","fileCount":27,"integrity":"sha512-s86JXR+zkgAfgh7qozlVasupgDHN7PcLBnb+CZUTS/Wfa0/8BFnCP/4kOeafSOS99RYKyPB4XOT2d3GpqDjwsA==","signatures":[{"sig":"MEUCIECU9CL3IUTzth1nW6PQYOGg+ijwADmq5R+/q2gUoI98AiEAplsUZ9GA92iaUUoBKPmWg7ggSDbeTJraECHms/m0BhQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100005},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"1584bab8cafec08b9882df049ed812306f027c58","scripts":{"lint":"eslint src tests examples --ext .ts","test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:cjs && bun run build:esm","format":"prettier . --write","coverage":"bun test tests/*.test.ts --coverage","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","build:watch":"rimraf ./dist && tsc -p tsconfig.esm.json --watch","prepublishOnly":"bun run lint && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","ts-node":"^10.9.2","prettier":"^3.4.2","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.3.0_1744603589383_0.8875789964646095","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@obsidion/bridge","version":"0.4.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.4.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"cc488bbe84ae9b20867efc188107ce67ee3aceb2","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.4.0.tgz","fileCount":27,"integrity":"sha512-/sBYobEba8uLRT9e9TdPdXAT6BsGH2gKpj24zeWo85M9L4Na+fZ4W67OeN0u55v43717skCPxfWxVm2xWFK2Ug==","signatures":[{"sig":"MEQCIETHU02B/n6645jLxGieQuCbFjCzi/QlDyIqd5MKopKNAiBNFiTz8IDE1fmwXC7I/1HpcAbjOKoBT8WVLjrptkXEbg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100101},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"b216a765cc477b10e658e3ca21f4573aa7898784","scripts":{"lint":"eslint src tests examples --ext .ts","test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:cjs && bun run build:esm","format":"prettier . --write","coverage":"bun test tests/*.test.ts --coverage","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","build:watch":"rimraf ./dist && tsc -p tsconfig.esm.json --watch","prepublishOnly":"bun run lint && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","ts-node":"^10.9.2","prettier":"^3.4.2","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.4.0_1744604118951_0.25685870530488764","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@obsidion/bridge","version":"0.4.1","license":"Apache-2.0","_id":"@obsidion/bridge@0.4.1","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"6930f95f40b71c760302cdee4d5c3fff2e2695b4","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.4.1.tgz","fileCount":27,"integrity":"sha512-nthqI4eBY4enta7kQuN5qaixoyrti5ZvP/QH+49H+X0LLZFKWzpXmBOwn+RiiqXC6QpX0WA55N+Q861OBMs4Ew==","signatures":[{"sig":"MEUCIQD1ZxNXGmr/Ya7goAYOBxPMp761lE86RJv9wdBcaNOdiAIgJDHq1Squ/wptdXoAsMtQtxKsIJlsKBSeXoA//+GF9+4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100801},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"efda9ddd458dcef139813c1f5b954ccc2acf5f25","scripts":{"lint":"eslint src tests examples --ext .ts","test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:cjs && bun run build:esm","format":"prettier . --write","coverage":"bun test tests/*.test.ts --coverage","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","build:watch":"rimraf ./dist && tsc -p tsconfig.esm.json --watch","prepublishOnly":"bun run lint && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","ts-node":"^10.9.2","prettier":"^3.4.2","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.4.1_1744629211953_0.17767843128195682","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@obsidion/bridge","version":"0.4.2","license":"Apache-2.0","_id":"@obsidion/bridge@0.4.2","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"31ca96ed5fddcbfbd93529191fe324872acee23f","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.4.2.tgz","fileCount":27,"integrity":"sha512-1ABoakjbNtFvowH6UaxeZCJd2IzaOivvSbnzlEZALOkPDBOJuTL02vPq7NfaOY/Z90e/Nr386RtAth5196xZrA==","signatures":[{"sig":"MEUCIQDy3sElrLP5uZbSqEM5O0zli2Z6lj4z4bYsYDobu9rskQIgCNN9nSh3NB/GrA4+gaTOc6x7p1S9YsMZaIwNLJOZaTQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100825},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"bd42ec67c89016a6d6cb2dc862ed57a04cd992e5","scripts":{"lint":"eslint src tests examples --ext .ts","test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:cjs && bun run build:esm","format":"prettier . --write","coverage":"bun test tests/*.test.ts --coverage","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","build:watch":"rimraf ./dist && tsc -p tsconfig.esm.json --watch","prepublishOnly":"bun run lint && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","ts-node":"^10.9.2","prettier":"^3.4.2","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.4.2_1744688902844_0.3696565330652313","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@obsidion/bridge","version":"0.5.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.5.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"2327f32cdbe9e54398d2299ab7e6e3638b7bda8e","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.5.0.tgz","fileCount":13,"integrity":"sha512-27EJKgyRFOhE1HOzvRVksAa0tQXZe9kd0nBTEkRwogcbvDVE8wdCtMK5s3kicNpzf+9u0g+suyJZQJOn9iQZtg==","signatures":[{"sig":"MEUCIQC5E7ZS63Po0PrGg7DTPPlVOFXmNfQeOtg07niGscxp0wIgKd4W/dRqoA4H1BeuD9H5jAkNXMDJWc6PcpU6yRqLjFQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":177693},"main":"./dist/cjs/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/esm/index.js","shasum":"2327f32cdbe9e54398d2299ab7e6e3638b7bda8e","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/esm/index.js","default":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:bundle && bun run build:types","check":"tsc --noEmit && eslint src tests examples --ext .ts","format":"prettier . --write","publish":"bun publish --access public","coverage":"bun test tests/*.test.ts --coverage","build:types":"node scripts/gen-types.mjs","build:watch":"rimraf ./dist && concurrently \"node scripts/esbuild.mjs --watch\" \"node scripts/gen-types.mjs --watch\"","build:bundle":"node scripts/esbuild.mjs","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_integrity":"sha512-27EJKgyRFOhE1HOzvRVksAa0tQXZe9kd0nBTEkRwogcbvDVE8wdCtMK5s3kicNpzf+9u0g+suyJZQJOn9iQZtg==","_npmVersion":"10.8.3","description":"Obsidion Bridge: a reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"22.6.0","dependencies":{"ws":"^8.16.0","debug":"^4.3.4","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","esbuild":"^0.25.2","ts-node":"^10.9.2","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","concurrently":"^8.2.2","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.5.0_1745382092462_0.7086687730951886","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@obsidion/bridge","version":"0.6.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.6.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"783541b2f76c9491a6f7bebe8e2ef451bfd0fce9","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.6.0.tgz","fileCount":14,"integrity":"sha512-eYIi4bOD5RAJNUgzIfsJZRhXhEzwqwWHfCI2lTo7wNOpAxRJYF7sGhNtbJeBB9P6bHjmPN7irW/VjkFEmMtvHg==","signatures":[{"sig":"MEUCIQC5rmcMysyl0eU80DaIWYcsQt0ZvbcJOdh6pxi94t5khgIgBNfjXSGuJOPjws///nfz07nVmSyWkzPnTlqe3l3KDNE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":187620},"main":"./dist/cjs/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/esm/index.js","browser":"./dist/esm/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/esm/index.js","browser":"./dist/esm/index.js","default":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"2d502482d6b741e919f5ca739ccc29afda86f948","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:bundle && bun run build:types","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","publish":"bun publish --access public","coverage":"bun test tests/*.test.ts --coverage","build:types":"node scripts/gen-types.mjs","build:watch":"rimraf ./dist && concurrently \"node scripts/esbuild.mjs --watch\" \"node scripts/gen-types.mjs --watch\"","build:bundle":"node scripts/esbuild.mjs","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"ws":"^8.16.0","debug":"^4.3.4","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","esbuild":"^0.25.2","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","concurrently":"^8.2.2","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.6.0_1745647970148_0.2862902868851771","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@obsidion/bridge","version":"0.7.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.7.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"}],"dist":{"shasum":"1a7b80cd5a4d31da516037e386cea2d49ff06a6f","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.7.0.tgz","fileCount":14,"integrity":"sha512-task2Sit5mDbLHrVSGx54WNx+0uhtT1CgjAYyL8t1wG/u6M8EhHYqdumT4TximfjG3Gj+vtvHWzGqwYoBmeePw==","signatures":[{"sig":"MEQCIHKK8QZ87x9uJsYrb9WDZbwvJDyxA9ak+WO0sGwivpWhAiAG7xOQQ63Q8Y1EBwkXT+UJv+e5NOoPZnSWv7dMTYjQjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1070274},"main":"./dist/cjs/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/esm/index.js","browser":"./dist/esm/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/esm/index.js","browser":"./dist/esm/index.js","default":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"22584d95b37388245c574755b99fc6ed675b17e1","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:bundle && bun run build:types","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:types":"node scripts/gen-types.mjs","build:watch":"rimraf ./dist && concurrently \"node scripts/esbuild.mjs --watch\" \"node scripts/gen-types.mjs --watch\"","build:bundle":"node scripts/esbuild.mjs","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","esbuild":"^0.25.2","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","concurrently":"^8.2.2","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.7.0_1746087505182_0.5591420637340923","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@obsidion/bridge","version":"0.8.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.8.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"e6ba457a2de1cf208dbdca8da69d6c93738c59e3","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.8.0.tgz","fileCount":14,"integrity":"sha512-CZ4sPPtw3d2ToaZ/S5d9ClNCf94M04MkZPoNwUwsG5hF6f1P6ye9AjgVmlxYPK8aLxj+7sXXv6gla2U6lO7w/A==","signatures":[{"sig":"MEYCIQDb/AMTx1RP5zDJAfR4US7upcr7AanpTHrtvINwG2MIpwIhAPG0oThpqV+WBAYN/M3TkBuxRiYciNzX0Nxh0pB0Srgf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1176234},"main":"./dist/cjs/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/esm/index.js","browser":"./dist/esm/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/esm/index.js","browser":"./dist/esm/index.js","default":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"f68dde72d2fe1bbdc291d314ce22d105b9b3c7d7","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && bun run build:bundle && bun run build:types","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:types":"node scripts/gen-types.mjs","build:watch":"rimraf ./dist && concurrently \"node scripts/esbuild.mjs --watch\" \"node scripts/gen-types.mjs --watch\"","build:bundle":"node scripts/esbuild.mjs","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"madztheo","email":"theo@zkpassport.id"},"_npmVersion":"10.2.4","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"21.6.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","esbuild":"^0.25.2","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","concurrently":"^8.2.2","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.8.0_1746725689270_0.5013023429896011","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@obsidion/bridge","version":"0.9.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.9.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"3da59b6d729d8d8d89cc04580ad6812ff20143d5","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.9.0.tgz","fileCount":24,"integrity":"sha512-gQVY4uspWy/lbD7APWTUE1XSLQwrlEzkgrDpc/cv6ExC+6IrxC1D4efN1q1s0DRxOt4ozyFk/CU4m1RTfUVsxQ==","signatures":[{"sig":"MEUCIFVdOMGYB12t6Vkr4YcU1Kpkv57SN1Gwk44vUnxr5FYdAiEAx8aTr7hKTJ1Oy+GQ4hopHDxFVKCyUmccZSRcgPwnYGI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":115610},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"e24de5606438f12399fb39160df91db20a742f03","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsc && tsc -p tsconfig.cjs.json && bun run build:fix-aliases","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:watch":"rimraf ./dist && tsc -w","prepublishOnly":"bun run format && bun run check && bun run test && bun run build","build:fix-aliases":"bun run scripts/fix-aliases.mjs"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.5.2","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"20.13.1","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","tsc-alias":"^1.8.16","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.9.0_1747277962529_0.5006439354497301","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@obsidion/bridge","version":"0.10.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"a062898ae74303aaace6ed8883fe4466c71da59f","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.0.tgz","fileCount":24,"integrity":"sha512-oOCy87TV52FVYlz9ep8EKChaVOUkF2ge9LmSa232WFW8eFRMtcvi+kmYwTKysBYyMdnp93basgmZmkgImISR0Q==","signatures":[{"sig":"MEUCIQC56H5OJABV7/nL9r7Q5A5VRPOYpo3fQUVGdg/afyZ3DQIgaVT2zYauWXxlIf40qhAiAM90ntHjC1LMjbhAE9dTlZY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116003},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"5c7d940927a22f326fac1bf3683d64d0a0295ab5","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsc && tsc -p tsconfig.cjs.json && bun run build:fix-aliases","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:watch":"rimraf ./dist && tsc -w","prepublishOnly":"bun run format && bun run check && bun run test && bun run build","build:fix-aliases":"bun run scripts/fix-aliases.mjs"},"_npmUser":{"name":"madztheo","email":"theo@zkpassport.id"},"_npmVersion":"10.2.4","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"21.6.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","tsc-alias":"^1.8.16","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.0_1747903679004_0.42484939844788516","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@obsidion/bridge","version":"0.10.1","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.1","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"8f6e898e205ee187b0bf74d87dc9a126256f1c14","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.1.tgz","fileCount":24,"integrity":"sha512-W2xLQKmDCecfjEAuroD/oNLMPI6nJyyzKxJacvzNASWaF2T4mdd4FUthpiaPrFVp7g1hpLZtXi9641KUL74lkA==","signatures":[{"sig":"MEYCIQDWO8EvxoH6aCpzR/rv/ZJ4+4f2rTOaCfmh0hMxPnpCLwIhAOVn/EU1LCIYYD2vm3A3fKbcAQS0W54d4P4sw0n+o9zM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116235},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"f348d699a65150c58a63cfded4d269c4f2e71a55","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsc && tsc -p tsconfig.cjs.json && bun run build:fix-aliases","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:watch":"rimraf ./dist && tsc -w","prepublishOnly":"bun run format && bun run check && bun run test && bun run build","build:fix-aliases":"bun run scripts/fix-aliases.mjs"},"_npmUser":{"name":"madztheo","email":"theo@zkpassport.id"},"_npmVersion":"10.2.4","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"21.6.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","tsc-alias":"^1.8.16","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.1_1748008569690_0.7716784518656541","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"@obsidion/bridge","version":"0.10.2","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.2","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"202dcadf44d00af4ea695aa79984a0e9d47ccae9","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.2.tgz","fileCount":24,"integrity":"sha512-BxFehLeJuvPkbemXYBv+X4Y+72URzsc8SYvG1FVi9yiGZLC4D8gc42M2JVBqdSBnxCDi3dJkQTqy9L7qBHsSLQ==","signatures":[{"sig":"MEQCIGtHeJ4YdJ3AlpJt/GbyxVFQmdGO1LZh6RAvFASm4ubsAiB2Q7YKQPhAE5OJs65gNKiqvktiLOFH93yLmfnmpCQzNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116641},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"gitHead":"07d1afa9d7a5d16da924c41c83e0d9293d1ac90c","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsc && tsc -p tsconfig.cjs.json && bun run build:fix-aliases","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:watch":"rimraf ./dist && tsc -w","prepublishOnly":"bun run format && bun run check && bun run test && bun run build","build:fix-aliases":"bun run scripts/fix-aliases.mjs"},"_npmUser":{"name":"madztheo","email":"theo@zkpassport.id"},"_npmVersion":"10.2.4","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"21.6.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","tsc-alias":"^1.8.16","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.2_1749118120156_0.7901179175287079","host":"s3://npm-registry-packages-npm-production"}},"0.10.3-beta.1":{"name":"@obsidion/bridge","version":"0.10.3-beta.1","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.3-beta.1","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"9941bbee9c5e879fd61752fd2e49b0e29461b9b8","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.3-beta.1.tgz","fileCount":45,"integrity":"sha512-ZLxoQbuOtvGqdGPHL4pONJeH8D4KcXSQaBLuHmA5CCSflduia589gfA8u7ryx7bV8DaXk8xGmW+rgalzHY/9Eg==","signatures":[{"sig":"MEUCIFwcJawompW0BnNJq6XXX8FNdWat2Q6gr327uewZd0NwAiEAyOLniaByCSooYkk9Y04+kt35SsTvjkR+MNCz4cAAi7s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220405},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","shasum":"9941bbee9c5e879fd61752fd2e49b0e29461b9b8","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","actor":{"name":"michaelelliot","type":"user","email":"michael@digital.com.au"},"email":"michael@digital.com.au"},"_integrity":"sha512-ZLxoQbuOtvGqdGPHL4pONJeH8D4KcXSQaBLuHmA5CCSflduia589gfA8u7ryx7bV8DaXk8xGmW+rgalzHY/9Eg==","_npmVersion":"10.8.3","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"22.6.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","tsc-alias":"^1.8.16","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.3-beta.1_1751726899680_0.948570011686287","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"@obsidion/bridge","version":"0.10.3","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.3","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"7c69f9cca210616df6146b78ff9c21ad15eec17d","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.3.tgz","fileCount":24,"integrity":"sha512-6saG6BjWUO26ljmjVXImJDjCSnxQpV6kfbRHDtoLg5UmVktF1xSFibwhCTdyfGXMAReH0ifM9fAk86/ywbtNyg==","signatures":[{"sig":"MEUCICqrqkUXIig4j3VhqTEZcPPd/sNhB5ekf/4jTsNK/5UiAiEAoFbw+M4zvUVf0QJ6WZtA/Ybc8nlZAeZEasUq8PqLPVY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":116641},"main":"./dist/cjs/index.js","type":"module","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","shasum":"7c69f9cca210616df6146b78ff9c21ad15eec17d","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsc && tsc -p tsconfig.cjs.json && bun run build:fix-aliases","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","build:watch":"rimraf ./dist && tsc -w","prepublishOnly":"bun run format && bun run check && bun run test && bun run build","build:fix-aliases":"bun run scripts/fix-aliases.mjs"},"_npmUser":{"name":"michaelelliot","actor":{"name":"michaelelliot","type":"user","email":"michael@digital.com.au"},"email":"michael@digital.com.au"},"_integrity":"sha512-6saG6BjWUO26ljmjVXImJDjCSnxQpV6kfbRHDtoLg5UmVktF1xSFibwhCTdyfGXMAReH0ifM9fAk86/ywbtNyg==","_npmVersion":"10.8.3","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","tsc-alias":"^1.8.16","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.3_1752023281784_0.6238323107944117","host":"s3://npm-registry-packages-npm-production"}},"0.10.4":{"name":"@obsidion/bridge","version":"0.10.4","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.4","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"25e2ddf12755d848dadae92126373216d7372c80","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.4.tgz","fileCount":45,"integrity":"sha512-V5lTAIJ4lchodcwLJoXTtEllbpqy7GFx+IGXTPeRRNdRc4HeNEewbj2QDONWYUJiuqcahkDnxngWS3TSnBC5IQ==","signatures":[{"sig":"MEUCIAS1HaG48a3zqONAjcm7+1fhpA8UuzTr9hAOpoF29rnLAiEA+AR24yeo9CVJhkUqFW5tlxte2u65VQIYuDDDNoPTBGI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220370},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","shasum":"25e2ddf12755d848dadae92126373216d7372c80","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","actor":{"name":"michaelelliot","type":"user","email":"michael@digital.com.au"},"email":"michael@digital.com.au"},"_integrity":"sha512-V5lTAIJ4lchodcwLJoXTtEllbpqy7GFx+IGXTPeRRNdRc4HeNEewbj2QDONWYUJiuqcahkDnxngWS3TSnBC5IQ==","_npmVersion":"10.8.3","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.4_1752023383441_0.7730151552879647","host":"s3://npm-registry-packages-npm-production"}},"0.10.5":{"name":"@obsidion/bridge","version":"0.10.5","license":"Apache-2.0","_id":"@obsidion/bridge@0.10.5","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"9cf464f71b011d6131e9d0d1656d983664dfd1f0","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.10.5.tgz","fileCount":45,"integrity":"sha512-9uMD7v1zBsVmosmfR+oz1dWnicUs2zXBDCtQQKY0VA5UfBWoWZ28mZYuVLjbPT6FtAKdVgr3TmTcRdI4+2zRmg==","signatures":[{"sig":"MEUCIBYvOwCH9o78sZSYczbYNTjWFGfuxzZooxBI5AIcfGXTAiEAlnqDjbB27ySbkeYpYUaMH0zDRqkcASl8i0CvWzxvOOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":221076},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"gitHead":"9aeaae381580da2dd9d374ed4dbf51d55d224bea","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c . && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"madztheo","email":"theo@zkpassport.id"},"_npmVersion":"10.2.4","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"21.6.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.10.5_1756132696024_0.2889593555385439","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@obsidion/bridge","version":"0.11.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.11.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"4f361757b766c46bb911141ead25749e67ad7c2f","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.11.0.tgz","fileCount":63,"integrity":"sha512-twVAZvLJVoAz9/UuyKVrMLET6hgSLL8jIkqXlaciUSVkUeWJVPIxJO3FWwYLouYAG1Zn6c7v6LxaxK/cYJuWIg==","signatures":[{"sig":"MEUCIHbi6l/As1AIf1fiYH5rF2Ltbw1v0TNvSNmjur4YTYoJAiEA6ld3KRX3VAJ/DgW+CuZ8hLHWkaXVQfiqivDsWa+fm5Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":260875},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"gitHead":"7a62763a6c4373d6f50772a65507fdafd06d234e","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c src tests && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"11.6.2","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.11.0_1761575928374_0.7700841671484817","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"@obsidion/bridge","version":"0.11.1","license":"Apache-2.0","_id":"@obsidion/bridge@0.11.1","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"0ed415eb95f59694bf751ae700a3ed4bf59a6ad6","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.11.1.tgz","fileCount":63,"integrity":"sha512-sZqRclzLehWODtsFgyg4W3L+ojW+DQl1YcPq/Vq4O7RlW0w5ZWtqq9yTRN6zjWhOo1hIA6xkeanjqZ3z6Rfn2Q==","signatures":[{"sig":"MEQCIHBF9qMxxzjw2CWzwmdXTvcgAKLWlhG0v3mnJZ2NzluLAiAcyoonzdKj7l7o9McixY73YvqQsPFUBtR8Rw8ZBV4s6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":262219},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"gitHead":"7d8717efe9eb8cc63837a7afc84034dd9665db5a","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c src tests && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"11.6.2","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.11.1_1761620720415_0.7886003761201359","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"@obsidion/bridge","version":"0.11.2","license":"Apache-2.0","_id":"@obsidion/bridge@0.11.2","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"b6cf147f5026e47795250588437f05fb757ff5e3","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.11.2.tgz","fileCount":63,"integrity":"sha512-IX5g2c6TF9xKGFgnQBAq4TJLns+W2SfDgndE1orsLIQCRJ8UKsu5Mt+RwbI6sDu7PxVveZvmLEaiXhJl7NhJaQ==","signatures":[{"sig":"MEQCIGRt/8XiFgnVLFjhFSj8/YjfzFdoRZHkcWiWFF39BpIwAiA1a85glEsM8f18OXFMY0H2rG2MHGFREy8AK4gtDB/QkQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":263008},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","shasum":"b6cf147f5026e47795250588437f05fb757ff5e3","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c src tests && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_integrity":"sha512-IX5g2c6TF9xKGFgnQBAq4TJLns+W2SfDgndE1orsLIQCRJ8UKsu5Mt+RwbI6sDu7PxVveZvmLEaiXhJl7NhJaQ==","_npmVersion":"10.8.3","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.11.2_1762404036278_0.8615663279712571","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@obsidion/bridge","version":"0.12.0","license":"Apache-2.0","_id":"@obsidion/bridge@0.12.0","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"8043bd724913219c8bd82fcfe6c1e32f96747f35","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.12.0.tgz","fileCount":63,"integrity":"sha512-saf1DCAIZG7EYjbURn+o4SJiBF+PWq1Z6zPjA5sLnjG3tv7xQI7QV0w/qQorfhVq89ih9TuHmfwnylPgOC65xw==","signatures":[{"sig":"MEQCIActXwYqlO17A+Yin2XcCKzXLXHpUaFTmcdBIp+8SPe1AiBChemnh96BTuWYUgXqGV149Vgn9VslgMX/lP1sUy0X8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273593},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"gitHead":"9c1002619866c6b77ddf9938757affdad1d98202","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c src tests && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_npmVersion":"10.9.2","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.12.0_1768467840470_0.895746748811967","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@obsidion/bridge","version":"0.12.1","license":"Apache-2.0","_id":"@obsidion/bridge@0.12.1","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"dist":{"shasum":"6995b5696138ad5c754adc567136f5f41a641e8a","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.12.1.tgz","fileCount":63,"integrity":"sha512-xP/H9dHF6OIuebms7FHf7xlL5eB4sBHa1uImjtKF3jz6mOThcEyfwfxgYciL1nyoNja58cV/OVbIGokUSjFnRw==","signatures":[{"sig":"MEUCIGuifyHG9QQ68h5M9splsZFEmu0F1fJzuFe35Bm5nbO+AiEAnyGceMw/eo8yfqccCnK5cgXHmrLLZgUI1+P2D4W6vu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":276876},"main":"./dist/esm/index.js","type":"module","types":"./dist/esm/index.d.ts","shasum":"6995b5696138ad5c754adc567136f5f41a641e8a","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c src tests && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"_npmUser":{"name":"madztheo","email":"theo@zkpassport.id"},"_integrity":"sha512-xP/H9dHF6OIuebms7FHf7xlL5eB4sBHa1uImjtKF3jz6mOThcEyfwfxgYciL1nyoNja58cV/OVbIGokUSjFnRw==","_npmVersion":"10.8.3","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/bridge_0.12.1_1783431881618_0.5301381632634845","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"_id":"@obsidion/bridge@0.12.2","dist":{"shasum":"394fb726ee5bb284d220a8cd5211f545da7e7fcc","tarball":"https://registry.npmjs.org/@obsidion/bridge/-/bridge-0.12.2.tgz","fileCount":63,"integrity":"sha512-3swoUCqf+Z06qFYW9fOG5EoETA1lnqbXpmn+LjKT1FqOdgy51Q6gWxyNn99ZMKQcMkk/vbWV11DLpDQAH7YYsg==","signatures":[{"sig":"MEUCIDVqiILaiCxyxo9GvKZuT7Ul5M+w9TtgOJuurzPd0jPaAiEA1g4hivupkcnhIVfQ8xX3RXyWs44QXHSYfT6JPX+v7F4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDPFtXD1LqrFvDnDdGvXMgOp+YYRCaUeJ9DnA2HG4peOAiEA+V/1Nkv/8d5cLyyXswGw91WzMkAJKI5zvuhAqvrQ4kw="}],"unpackedSize":291536},"main":"./dist/esm/index.js","name":"@obsidion/bridge","type":"module","types":"./dist/esm/index.d.ts","shasum":"394fb726ee5bb284d220a8cd5211f545da7e7fcc","exports":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.cjs"},"license":"Apache-2.0","scripts":{"test":"bun test tests/*.test.ts","build":"rimraf ./dist && tsup","check":"tsc --noEmit && prettier -c src tests && eslint src tests examples --ext .ts","format":"prettier -c -w .","coverage":"bun test tests/*.test.ts --coverage","prepublishOnly":"bun run format && bun run check && bun run test && bun run build"},"version":"0.12.2","_npmUser":{"name":"michaelelliot","email":"michael@digital.com.au"},"_integrity":"sha512-3swoUCqf+Z06qFYW9fOG5EoETA1lnqbXpmn+LjKT1FqOdgy51Q6gWxyNn99ZMKQcMkk/vbWV11DLpDQAH7YYsg==","_npmVersion":"10.8.3","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","directories":{},"maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"_nodeVersion":"26.3.0","dependencies":{"ws":"^8.16.0","pako":"^2.1.0","debug":"^4.3.4","@types/pako":"^2.0.3","@noble/hashes":"^1.8.0","@noble/ciphers":"^1.2.1","@noble/secp256k1":"^2.2.3"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.13","devDependencies":{"jest":"^29.7.0","tsup":"^8.5.0","eslint":"^8.57.1","rimraf":"^6.0.1","prettier":"^3.4.2","@types/ws":"^8.5.10","@types/bun":"^1.2.2","@types/jest":"^29.5.14","@types/node":"^22.13.1","@types/debug":"^4.1.12","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/eslint-plugin":"^8.23.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/bridge_0.12.2_1789573738717_0.5491414347760091"}}},"time":{"created":"2025-04-08T11:04:53.408Z","modified":"2026-09-16T15:48:59.109Z","0.1.0":"2025-04-08T11:04:53.671Z","0.2.0":"2025-04-10T13:33:52.857Z","0.3.0":"2025-04-14T04:06:29.567Z","0.4.0":"2025-04-14T04:15:19.134Z","0.4.1":"2025-04-14T11:13:32.137Z","0.4.2":"2025-04-15T03:48:23.021Z","0.5.0":"2025-04-23T04:21:32.652Z","0.6.0":"2025-04-26T06:12:50.379Z","0.7.0":"2025-05-01T08:18:25.494Z","0.8.0":"2025-05-08T17:34:49.526Z","0.9.0":"2025-05-15T02:59:22.727Z","0.10.0":"2025-05-22T08:47:59.195Z","0.10.1":"2025-05-23T13:56:09.876Z","0.10.2":"2025-06-05T10:08:40.347Z","0.10.3-beta.1":"2025-07-05T14:48:19.862Z","0.10.3":"2025-07-09T01:08:02.011Z","0.10.4":"2025-07-09T01:09:43.650Z","0.10.5":"2025-08-25T14:38:16.218Z","0.11.0":"2025-10-27T14:38:48.585Z","0.11.1":"2025-10-28T03:05:20.622Z","0.11.2":"2025-11-06T04:40:36.506Z","0.12.0":"2026-01-15T09:04:00.632Z","0.12.1":"2026-07-07T13:44:41.765Z","0.12.2":"2026-09-16T15:48:58.818Z"},"license":"Apache-2.0","description":"Obsidion Bridge: A reliable end-to-end encrypted websocket bridge","maintainers":[{"name":"michaelelliot","email":"michael@digital.com.au"},{"name":"madztheo","email":"theo@zkpassport.id"}],"readme":"# Obsidion Bridge\n\nObsidion Bridge provides a secure websocket connection between two parties using end-to-end encryption.\n\n## Installation\n\n```bash\nbun install @obsidion/bridge\n```\n\n## Usage\n\nThe bridge creates a secure encrypted communication channel via ECDH between two parties:\n\n1. **Creator** - The party that creates the bridge connection and shares the connection string. This will typically be a frontend web app.\n2. **Joiner** - The party that joins the bridge using the connection string. This will typically be a mobile app.\n\n### Bridge Creator\n\n```typescript\nimport { Bridge } from \"@obsidion/bridge\"\n\n// Create a bridge\nconst bridge = await Bridge.create()\n\n// The connection string URI to share with the joiner (can be encoded as a QR code)\nconsole.log(\"Bridge connection string:\", bridge.connectionString)\n\n// Set up event handlers\nbridge.onConnect((reconnection: boolean) => {\n  console.log(`${reconnection ? \"Reconnected\" : \"Connected\"} to bridge`)\n})\n\nbridge.onFailedToConnect((event: FailedToConnectEvent) => {\n  console.error(\"Failed to connect\", event)\n})\n\nbridge.onSecureChannelEstablished(() => {\n  console.log(\"Secure channel established with joiner\")\n  // Now we can send secure messages\n  bridge.sendMessage(\"greeting\", { message: \"Hello from creator!\" })\n})\n\nbridge.onSecureMessage((message) => {\n  console.log(\"Received message:\", message)\n})\n\nbridge.onRawMessage((raw: string) => {\n  logMessage(`Raw message received: ${raw}`)\n})\n\nbridge.onDisconnect((event: BridgeDisconnectedEvent) => {\n  console.log(\"Disconnected from bridge\", event)\n})\n\nbridge.onError((error) => {\n  console.error(\"Error:\", error)\n})\n\n// Cleanup the bridge when done\nbridge.cleanup()\n```\n\n### Bridge Joiner\n\n```typescript\nimport { Bridge } from \"@obsidion/bridge\"\n\n// Join using the connection string shared by the creator\n// This is typically obtained from scanning a QR code\nconst cs = \"obsidion:02d3ff5e5db7c48c34880bc11e8b457a4b9a6bf2a2f545cf575eb941b08f04adc4?d=localhost\"\nconst bridge = await Bridge.join(cs)\n\n// Set up event handlers\nbridge.onConnect((reconnection: boolean) => {\n  console.log(`${reconnection ? \"Reconnected\" : \"Connected\"} to bridge`)\n})\n\nbridge.onFailedToConnect((event: FailedToConnectEvent) => {\n  console.error(\"Failed to connect\", event)\n})\n\nbridge.onSecureChannelEstablished(() => {\n  console.log(\"Secure channel established with creator\")\n  // Now we can send secure messages\n  bridge.sendMessage(\"greeting\", { message: \"Hello from joiner!\" })\n})\n\nbridge.onSecureMessage((message) => {\n  console.log(\"Received message:\", message)\n})\n\nbridge.onRawMessage((raw: string) => {\n  logMessage(`Raw message received: ${raw}`)\n})\n\nbridge.onDisconnect((event: BridgeDisconnectedEvent) => {\n  console.log(\"Disconnected from bridge\", event)\n})\n\nbridge.onError((error) => {\n  console.error(\"Error:\", error)\n})\n\n// Cleanup the bridge when done\nbridge.cleanup()\n```\n\n### Reconnection\n\nWhen a connection drops, the bridge reconnects on its own: the first attempt is immediate and the\nfollowing ones back off (1s, 2s, 4s, ...) for up to 10 attempts. After reconnecting it asks the server to\nreplay the messages it missed.\n\nIn browsers the bridge also reconnects right away when the page becomes visible again or the browser goes\nback online, even during a backoff delay or after the attempts ran out. The same can be triggered\nmanually:\n\n```typescript\nbridge.connection.reconnectIfDisconnected()\n```\n\nOnce the attempts run out, `onDisconnect` fires a second time with `willReconnect: false`. Nothing more\nhappens on its own after that, but a wake-up or a manual `reconnectIfDisconnected()` still reconnects.\n\nPass `reconnect: false` to `Bridge.create()` or `Bridge.join()` to disable automatic reconnection.\n","readmeFilename":"README.md"}