{"_id":"@dtpui/dtp-vscode-ws-jsonrpc","_rev":"3-ac9b4aa7c9bf25c14ed4d354879574d7","name":"@dtpui/dtp-vscode-ws-jsonrpc","dist-tags":{"latest":"3.0.3"},"versions":{"3.0.2":{"name":"@dtpui/dtp-vscode-ws-jsonrpc","version":"3.0.2","author":{"url":"http://www.typefox.io","name":"TypeFox GmbH"},"license":"MIT","_id":"@dtpui/dtp-vscode-ws-jsonrpc@3.0.2","maintainers":[{"name":"rabihaksa1","email":"raksamawati@dtp.ae"}],"homepage":"https://github.com/TypeFox/monaco-languageclient/blob/main/packages/vscode-ws-jsonrpc/README.md","bugs":{"url":"https://github.com/TypeFox/monaco-languageclient/issues"},"dist":{"shasum":"d2e38c4b8d8275db81b8397c37eaccda5d2612c2","tarball":"https://registry.npmjs.org/@dtpui/dtp-vscode-ws-jsonrpc/-/dtp-vscode-ws-jsonrpc-3.0.2.tgz","fileCount":52,"integrity":"sha512-K9T6lhtcjN+HnOaEnjwcbSJ8Mqb3CnCU8nH2Vb9oD8QR2iA5z/Tul5EkUGFehWt5naMWuopSdUOzw2/xs33n6w==","signatures":[{"sig":"MEYCIQDRgFWVqCmfHnljcoTjltmIuaAsPrDgqsN4fueRk1VxjgIhAJio9rZHXMNIyxXcc7dLvk0N2sbg/SU3wJF2jnSDo1Bs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkP75EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoulw/9EllVwiDBX3EbhX9FNy/tTDLbfaHdfwODqXbE0mf+c8P3dIll\r\nFVm0W9aGM0gwsM7ABp7qwX0lU14duYib0zX/F/dlqiWYK1FnWIDdFazFDezW\r\nre17AdAqWB57dKwucnAwtIR7hjOU7ZB4k4mrowfuphAUljgNuDeElXl5LWxv\r\nx2XyYor9cNYEM94gcjggEMTv7UnPETIUSWH7v9/KKfPx1dWOnkgAiVHBVqk+\r\nVw2i8ncW/Lgf2m8gKbo53+w99zPsu2gehW+l1rA1vt/t4AbWRpD+0JITpMBP\r\n7mHonXCnCrdkIy8c9DmiOpHtk7Up+gT4FlxRQHkefMsAKuLfRLsv5GjIgcZm\r\nfRUV8Ztg4BHI+EJfsd5ekcRdpgVXnYbU32cWfe24P6+/mcJTiO+cKVaXcU95\r\naNsuUfYOCqkwZ//dUzLSfRvmSwwGQA8pW5TOQktbTNGBkULE1+eGwXiYjRrp\r\nZH9U5XNMUkD4unX8NzcZz5eYFKdVU05IgcMW0TwY8772dArba+mx4SIfrwL5\r\nffjnIbriZLJNzaqNKW/KfTuYUZsYsg4NhL65NgOa6OmyQWnl7MQKNeqMqbrU\r\nzUDW/eP/e9WFq3ypB8axprxtotWqbDo/jB14tFaspSuYxg4NCh9YO1T2uKBq\r\nJZR5CsGntoyxwwfFA/rzhB8wDeyRUXjYxvA=\r\n=Ir79\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/index.js","type":"module","types":"./lib/index.d.ts","volta":{"npm":"9.6.2","node":"18.15.0"},"module":"./lib/index.js","engines":{"npm":">=8.0.0","node":">=16.11.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./server":{"types":"./lib/server/index.d.ts","default":"./lib/server/index.js"},"./socket":{"types":"./lib/socket/index.d.ts","default":"./lib/socket/index.js"}},"gitHead":"90f7c7f872c261331f687ab663f7579b7102014f","scripts":{"build":"npm run build:msg && npm run clean && npm run compile","clean":"npx shx rm -fr lib *.tsbuildinfo","compile":"tsc --build tsconfig.src.json","build:msg":"echo Building vscode-ws-jsonrpc:","prepublish":"npm run compile"},"_npmUser":{"name":"rabihaksa1","email":"raksamawati@dtp.ae"},"repository":{"url":"git+https://github.com/rabihaksaDTP/vscode-ws-jsonrpc.git","type":"git"},"_npmVersion":"9.5.0","description":"VSCode JSON RPC over WebSocket","directories":{"lib":"lib"},"_nodeVersion":"18.14.2","dependencies":{"vscode-jsonrpc":"~8.1.0"},"typesVersions":{"*":{".":["lib/index"],"server":["lib/server"],"socket":["lib/socket"]}},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/dtp-vscode-ws-jsonrpc_3.0.2_1681899075940_0.3318896669973481","host":"s3://npm-registry-packages"}},"3.0.3":{"name":"@dtpui/dtp-vscode-ws-jsonrpc","version":"3.0.3","author":{"url":"http://www.typefox.io","name":"TypeFox GmbH"},"license":"MIT","_id":"@dtpui/dtp-vscode-ws-jsonrpc@3.0.3","maintainers":[{"name":"rabihaksa1","email":"raksamawati@dtp.ae"}],"homepage":"https://github.com/TypeFox/monaco-languageclient/blob/main/packages/vscode-ws-jsonrpc/README.md","bugs":{"url":"https://github.com/TypeFox/monaco-languageclient/issues"},"dist":{"shasum":"499052ed77486ca5eeffdd6b3f9fff3d9235ad60","tarball":"https://registry.npmjs.org/@dtpui/dtp-vscode-ws-jsonrpc/-/dtp-vscode-ws-jsonrpc-3.0.3.tgz","fileCount":52,"integrity":"sha512-WokwoGkxbzU1psNEaGxH3nCYoxS+7wM+GhVl/8rJA8lSA37xgi+rYmOad7eqxDIjv8O4l8kcyABeHX2ATFo7hA==","signatures":[{"sig":"MEUCIQDP6YNFRTAeN/XpdMMcADhP6g9ADhk3JEdZ6knhAdLgAAIgIxhcpupZtgcSL6c5IYIHMvHMbAq8Ye0Y0KiZrHBnx7c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkP8BUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzKRAAoXyrBjwMkVZG1toKOC2r3ew6fOJe0ruwjIqlRxoz37TYTXCD\r\n6lXt6Kv86x+WPi87kovqXSxwds/BdN34uqPjw1NTmgZx1ri5KD1WKUUjoY5b\r\nJ+ufVYzlcZxq66c4yWdFmfTbV5Vy9xidinRIeZRiEpMVQrIFqoEZSghKuF+t\r\nm4PVDbUDII5SSm93VsWV/eMT3q616nN8nmlig2VOdYn9gSyyTqRKWjjguL8Z\r\n4naCrkKSLOQboIizUlafFtd0+XJlD6PLNIowlIQ8nnuvW9eXJnZnJsVoq2rC\r\n2jfTuVuHYLWs1aaAdpBy/mqWOO0SDeps7Uxt7Efl3VjFCFdmWilUfL8MSlJn\r\n+8q37j/Weveg+2F3gVLjlICBw9wQz/pMgFKBDR919xDX2DAZ7ZDpd3Z8DwSG\r\nOHSZxoM0kAv7SKxC2FzeaJNCbn/Xtl1PcZICFDRbU6MUYPuL/AZ/ZddjCnjx\r\nyXCz1MQYPtsy0HZ7Jo2hR3eMe29yjggYMtOOaUyrUklRpLXKsfpuTDNrjbOf\r\njFfcJzkriIv6+HLKzVgTTAZUsmbeA7NfStIwQBHJvq8Sh+YZ4OHtR5GA6oOC\r\nDiWSUdSN82kIJqTGae2VocdBtwnYkqV0grRjOzi9aEIPZvAy11OjUI4B0GFU\r\njUETuMFQ7y5IOSjAxnRS04xSlLyyvHZRvxE=\r\n=SMKh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/index.js","type":"module","types":"./lib/index.d.ts","volta":{"npm":"9.6.2","node":"18.15.0"},"module":"./lib/index.js","engines":{"npm":">=8.0.0","node":">=16.11.0"},"exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./server":{"types":"./lib/server/index.d.ts","default":"./lib/server/index.js"},"./socket":{"types":"./lib/socket/index.d.ts","default":"./lib/socket/index.js"}},"gitHead":"90f7c7f872c261331f687ab663f7579b7102014f","scripts":{"build":"npm run build:msg && npm run clean && npm run compile","clean":"npx shx rm -fr lib *.tsbuildinfo","compile":"tsc --build tsconfig.src.json","build:msg":"echo Building vscode-ws-jsonrpc:","prepublish":"npm run compile"},"_npmUser":{"name":"rabihaksa1","email":"raksamawati@dtp.ae"},"repository":{"url":"git+https://github.com/rabihaksaDTP/vscode-ws-jsonrpc.git","type":"git"},"_npmVersion":"9.5.0","description":"VSCode JSON RPC over WebSocket","directories":{"lib":"lib"},"_nodeVersion":"18.14.2","dependencies":{"vscode-jsonrpc":"~8.1.0"},"typesVersions":{"*":{".":["lib/index"],"server":["lib/server"],"socket":["lib/socket"]}},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/dtp-vscode-ws-jsonrpc_3.0.3_1681899604536_0.6921111863374416","host":"s3://npm-registry-packages"}}},"time":{"created":"2023-04-19T10:11:15.886Z","modified":"2026-07-27T07:00:08.687Z","3.0.2":"2023-04-19T10:11:16.145Z","3.0.3":"2023-04-19T10:20:04.759Z"},"bugs":{"url":"https://github.com/TypeFox/monaco-languageclient/issues"},"author":{"url":"http://www.typefox.io","name":"TypeFox GmbH"},"license":"MIT","homepage":"https://github.com/TypeFox/monaco-languageclient/blob/main/packages/vscode-ws-jsonrpc/README.md","repository":{"url":"git+https://github.com/rabihaksaDTP/vscode-ws-jsonrpc.git","type":"git"},"description":"VSCode JSON RPC over WebSocket","maintainers":[{"email":"raksamawati@dtp.ae","name":"rabihaksa1"},{"email":"mfenej@dtp.ae","name":"mahmoudfenej"}],"readme":"# VSCode WebSocket JSON RPC\n\nNPM module to implement communication between a jsonrpc client and server over WebSocket.\n\nSee the following example code how to use this library or take a look of the `monaco-languageclient` and `vscode-ws-jsonrpc` examples here:\n\n- [client](/packages/examples/main/src/client)\n- [server](/packages/examples/main/src/server)\n\n## Client side connection handling\n\n```ts\nimport { MessageConnection, NotificationType } from 'vscode-jsonrpc';\nimport { listen } from 'vscode-ws-jsonrpc';\n\nconst webSocket = new WebSocket('ws://www.example.com/socketserver');\nlisten({\n    webSocket,\n    onConnection: (connection: MessageConnection) => {\n        const notification = new rpc.NotificationType<string, void>('testNotification');\n        connection.listen();\n        connection.sendNotification(notification, 'Hello World');\n    }\n});\n```\n\n## Server side connection handling\n\n```ts\nimport { createWebSocketConnection, ConsoleLogger, IWebSocket } from 'vscode-ws-jsonrpc';\nimport { NotificationType } from 'vscode-languageserver';\n\nconst socket: IWebSocket; // open the web socket\nconst logger = new ConsoleLogger();\nconst connection = createWebSocketConnection(socket, logger);\nconst notification = new NotificationType<string, void>('testNotification');\nconnection.onNotification(notification, (param: string) => {\n  console.log(param); // This prints Hello World\n});\n\nconnection.listen();\n```\n\n## Server side connection forwarding\n\n```ts\nimport { IWebSocket, WebSocketMessageReader, WebSocketMessageWriter } from 'vscode-ws-jsonrpc';\nimport { createConnection, createServerProcess, forward } from 'vscode-ws-jsonrpc/server';\nimport { Message } from 'vscode-languageserver';\n\nconst socket: IWebSocket; // open the web socket\nconst reader = new WebSocketMessageReader(socket);\nconst writer = new WebSocketMessageWriter(socket);\nconst socketConnection = createConnection(reader, writer, () => socket.dispose())\nconst serverConnection = createServerProcess('Example', 'node', ['example.js']);\nforward(socketConnection, serverConnection, message => {\n    if (Message.isNotification(message)) {\n        if (message.method === 'testNotification') {\n            // handle the test notification\n        }\n    }\n    return message;\n});\n```\n\n## License\n\n[MIT](https://github.com/TypeFox/monaco-languageclient/blob/main/packages/vscode-ws-jsonrpc/License.txt)\n","readmeFilename":"README.md"}