@xyo-network/xl1-rpc-server 1.26.12 → 1.26.13

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/package.json",
3
3
  "name": "@xyo-network/xl1-rpc-server",
4
- "version": "1.26.12",
4
+ "version": "1.26.13",
5
5
  "description": "XYO Layer One RPC HTTP Server",
6
6
  "homepage": "https://xylabs.com",
7
7
  "bugs": {
@@ -23,7 +23,6 @@
23
23
  "exports": {
24
24
  ".": {
25
25
  "types": "./dist/node/index.d.ts",
26
- "source": "./src/index.ts",
27
26
  "default": "./dist/node/index.mjs"
28
27
  },
29
28
  "./package.json": "./package.json"
@@ -33,7 +32,6 @@
33
32
  "types": "./dist/node/index.d.ts",
34
33
  "files": [
35
34
  "dist",
36
- "src",
37
35
  "!**/*.bench.*",
38
36
  "!**/*.spec.*",
39
37
  "!**/*.test.*",
@@ -52,11 +50,16 @@
52
50
  "devDependencies": {
53
51
  "@metamask/utils": "~11.11.0",
54
52
  "@types/node": "^25.5.0",
55
- "@xylabs/ts-scripts-common": "~7.6.2",
56
- "@xylabs/ts-scripts-yarn3": "~7.6.2",
57
- "@xylabs/tsconfig": "~7.6.2",
53
+ "@xylabs/ts-scripts-common": "~7.6.13",
54
+ "@xylabs/ts-scripts-yarn3": "~7.6.13",
55
+ "@xylabs/tsconfig": "~7.6.13",
56
+ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0",
57
+ "cosmiconfig": ">=9",
58
+ "esbuild": ">=0.18",
59
+ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0",
60
+ "rollup": "^3.29.4 || ^4",
58
61
  "typescript": "~5.9.3",
59
- "vite": "^6.0.0 || ^7.0.0 || ^8.0.0",
62
+ "vite": "^8.0.3",
60
63
  "vitest": "~4.1.2",
61
64
  "zod": "~4.3.6"
62
65
  },
@@ -1,72 +0,0 @@
1
- import HTTP from 'node:http'
2
-
3
- import { type JsonRpcEngineV2, JsonRpcServer } from '@metamask/json-rpc-engine/v2'
4
-
5
- /** Result returned by createRpcHttpServer. */
6
- export interface RpcHttpServer {
7
- close: () => Promise<void>
8
- port: number
9
- server: HTTP.Server
10
- }
11
-
12
- /** Creates a standalone Node.js HTTP server that handles JSON-RPC requests at POST /rpc. */
13
- export function createRpcHttpServer(options: { engine: JsonRpcEngineV2; port: number }): Promise<RpcHttpServer> {
14
- const { engine, port } = options
15
- const rpcServer = new JsonRpcServer({ engine })
16
-
17
- return new Promise((resolve, reject) => {
18
- const server = HTTP.createServer((req, res) => {
19
- res.setHeader('Access-Control-Allow-Origin', '*')
20
- res.setHeader('Access-Control-Allow-Methods', 'POST, OPTIONS')
21
- res.setHeader('Access-Control-Allow-Headers', 'Content-Type')
22
-
23
- if (req.method === 'OPTIONS') {
24
- res.writeHead(204)
25
- res.end()
26
- return
27
- }
28
-
29
- if (req.method !== 'POST' || req.url !== '/rpc') {
30
- res.writeHead(404, { 'Content-Type': 'application/json' })
31
- res.end(JSON.stringify({ error: 'Not found' }))
32
- return
33
- }
34
-
35
- let body = ''
36
- req.on('data', (chunk: Buffer) => {
37
- body += chunk.toString()
38
- })
39
-
40
- req.on('end', () => {
41
- const parsed = JSON.parse(body)
42
- rpcServer.handle(parsed)
43
- .then((response) => {
44
- res.writeHead(200, { 'Content-Type': 'application/json' })
45
- res.end(JSON.stringify(response))
46
- })
47
- .catch((error: unknown) => {
48
- res.writeHead(500, { 'Content-Type': 'application/json' })
49
- res.end(JSON.stringify({ error: (error as Error).message }))
50
- })
51
- })
52
- })
53
-
54
- server.on('error', reject)
55
-
56
- server.listen(port, () => {
57
- resolve({
58
- server,
59
- port,
60
- close: () => new Promise<void>((resolveClose, rejectClose) => {
61
- server.close((err) => {
62
- if (err) {
63
- rejectClose(err)
64
- } else {
65
- resolveClose()
66
- }
67
- })
68
- }),
69
- })
70
- })
71
- })
72
- }
@@ -1,20 +0,0 @@
1
- import type { JsonRpcEngineV2, JsonRpcRequest } from '@metamask/json-rpc-engine/v2'
2
-
3
- /** Creates a framework-agnostic RPC request handler from a JSON-RPC engine. */
4
- export function createRpcRequestHandler(engine: JsonRpcEngineV2): (body: unknown) => Promise<unknown> {
5
- return async (body: unknown) => {
6
- const request = body as JsonRpcRequest
7
- try {
8
- const result = await engine.handle(request)
9
- return {
10
- jsonrpc: '2.0', id: request.id, result,
11
- }
12
- } catch (error) {
13
- return {
14
- jsonrpc: '2.0',
15
- id: request.id,
16
- error: { code: -32_603, message: (error as Error).message },
17
- }
18
- }
19
- }
20
- }
package/src/index.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from './createRpcHttpServer.ts'
2
- export * from './createRpcRequestHandler.ts'