@lensmcp/bridge 1.22.2 → 1.22.4
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/lib/server.d.ts +1 -1
- package/lib/server.js +1 -1
- package/package.json +3 -3
package/lib/server.d.ts
CHANGED
package/lib/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var m=Object.defineProperty;var s=(r,e)=>m(r,"name",{value:e,configurable:!0});var v=Object.defineProperty,i=s((r,e)=>v(r,"name",{value:e,configurable:!0}),"o");import{createServer as y}from"node:net";import{WebSocketServer as h}from"ws";import{boundedClone as S,DEFAULT_RAW_BYTE_LIMIT as g,exceedsJsonByteBudget as E}from"@lensmcp/protocol-types";import{DEFAULT_WS_HOST as T,DEFAULT_WS_PORT as w,MAX_BATCH_EVENTS as A,MAX_FRAME_BYTES as _}from"./constants.js";import{resolveEnvSink as k}from"./env-sink.js";import{envelopeToEvent as P}from"./event-mappers.js";export function makePublisher(r){let e;return t=>{if(r.bus){r.bus.publish(t);return}if(r.sink){r.sink(t);return}if(e===void 0&&(e=k()),e){e(t);return}(t.severity==="error"||t.severity==="fatal")&&console.debug(`[lensmcp-bridge] ${t.severity}: ${t.title}`)}}s(makePublisher,"makePublisher"),i(makePublisher,"makePublisher");export function handleClientEnvelope(r,e,t){let o;try{o=JSON.parse(r)}catch{return}if(!(!o||typeof o!="object"||!("kind"in o))){if(o.kind==="batch"){if(!Array.isArray(o.events))return;for(const n of o.events.slice(0,A))!n||typeof n!="object"||!("kind"in n)||n.kind!=="batch"&&d(n,e,t);return}d(o,e,t)}}s(handleClientEnvelope,"handleClientEnvelope"),i(handleClientEnvelope,"handleClientEnvelope");function d(r,e,t){let o;try{o=P(r,t)}catch{return}if(o)try{e(p(o))}catch{}}s(d,"d"),i(d,"mapAndPublish");function p(r){const e=r.raw;return e==null||!E(e,g)?r:{...r,raw:S(e).value}}s(p,"v"),i(p,"boundRaw");export function readTabId(r){try{const e=JSON.parse(r);return typeof e?.tabId=="string"&&e.tabId?e.tabId:void 0}catch{return}}s(readTabId,"readTabId"),i(readTabId,"readTabId");export async function createBridgeServer(r={}){const e=r.host??T,t=r.port??w,o=t===0?await findFreePort():t,n=makePublisher(r),a=new h({host:e,port:o,maxPayload:_});return a.on("error",()=>{}),a.on("connection",c=>{let l;c.on("error",()=>{}),c.on("message",f=>{const u=f.toString();l??=readTabId(u),handleClientEnvelope(u,n,r.sessionId)}),c.on("close",()=>{l&&handleClientEnvelope(JSON.stringify({kind:"gone",at:Date.now(),tabId:l}),n,r.sessionId)})}),await new Promise((c,l)=>{const f=i(b=>{a.off("listening",u),l(b)},"onError"),u=i(()=>{a.off("error",f),c()},"onListening");a.once("error",f),a.once("listening",u)}),{port:o,host:e,close:i(()=>new Promise(c=>{a.close(()=>c())}),"close")}}s(createBridgeServer,"createBridgeServer"),i(createBridgeServer,"createBridgeServer");export function findFreePort(){return new Promise((r,e)=>{const t=y();t.unref(),t.on("error",e),t.listen(0,()=>{const o=t.address();if(!o){t.close(),e(new Error("Could not allocate free port"));return}const n=o.port;t.close(()=>r(n))})})}s(findFreePort,"findFreePort"),i(findFreePort,"findFreePort");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lensmcp/bridge",
|
|
3
|
-
"version": "1.22.
|
|
3
|
+
"version": "1.22.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"module": "./index.js",
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
}
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@lensmcp/core": "1.22.
|
|
23
|
-
"@lensmcp/protocol-types": "1.22.
|
|
22
|
+
"@lensmcp/core": "1.22.4",
|
|
23
|
+
"@lensmcp/protocol-types": "1.22.4",
|
|
24
24
|
"tslib": "^2.3.0",
|
|
25
25
|
"ws": "^8.21.0"
|
|
26
26
|
},
|