jmri-client 3.1.12-debug → 3.2.0
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/dist/browser/jmri-client.js +1960 -0
- package/dist/browser/jmri-client.js.map +7 -0
- package/dist/cjs/client.js +2 -6
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/core/connection-state-manager.js +2 -2
- package/dist/cjs/core/connection-state-manager.js.map +1 -1
- package/dist/cjs/core/heartbeat-manager.js +2 -2
- package/dist/cjs/core/heartbeat-manager.js.map +1 -1
- package/dist/cjs/core/reconnection-manager.js +2 -9
- package/dist/cjs/core/reconnection-manager.js.map +1 -1
- package/dist/cjs/core/websocket-adapter.js +46 -10
- package/dist/cjs/core/websocket-adapter.js.map +1 -1
- package/dist/cjs/core/websocket-client.js +4 -35
- package/dist/cjs/core/websocket-client.js.map +1 -1
- package/dist/cjs/managers/power-manager.js +2 -2
- package/dist/cjs/managers/power-manager.js.map +1 -1
- package/dist/cjs/managers/throttle-manager.js +2 -2
- package/dist/cjs/managers/throttle-manager.js.map +1 -1
- package/dist/esm/client.js +1 -5
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/core/connection-state-manager.js +1 -1
- package/dist/esm/core/connection-state-manager.js.map +1 -1
- package/dist/esm/core/heartbeat-manager.js +1 -1
- package/dist/esm/core/heartbeat-manager.js.map +1 -1
- package/dist/esm/core/reconnection-manager.js +1 -8
- package/dist/esm/core/reconnection-manager.js.map +1 -1
- package/dist/esm/core/websocket-adapter.js +11 -8
- package/dist/esm/core/websocket-adapter.js.map +1 -1
- package/dist/esm/core/websocket-client.js +3 -34
- package/dist/esm/core/websocket-client.js.map +1 -1
- package/dist/esm/managers/power-manager.js +1 -1
- package/dist/esm/managers/power-manager.js.map +1 -1
- package/dist/esm/managers/throttle-manager.js +1 -1
- package/dist/esm/managers/throttle-manager.js.map +1 -1
- package/dist/types/client.d.ts +1 -1
- package/dist/types/core/connection-state-manager.d.ts +1 -1
- package/dist/types/core/heartbeat-manager.d.ts +1 -1
- package/dist/types/core/reconnection-manager.d.ts +1 -1
- package/dist/types/core/websocket-adapter.d.ts +2 -2
- package/dist/types/core/websocket-client.d.ts +1 -1
- package/dist/types/managers/power-manager.d.ts +1 -1
- package/dist/types/managers/throttle-manager.d.ts +1 -1
- package/package.json +9 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"throttle-manager.js","sourceRoot":"","sources":["../../../src/managers/throttle-manager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"throttle-manager.js","sourceRoot":"","sources":["../../../src/managers/throttle-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/types/client.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Main JMRI client class
|
|
3
3
|
*/
|
|
4
|
-
import { EventEmitter } from '
|
|
4
|
+
import { EventEmitter } from 'eventemitter3';
|
|
5
5
|
import { PartialClientOptions } from './types/client-options.js';
|
|
6
6
|
import { PowerState, RosterEntry } from './types/jmri-messages.js';
|
|
7
7
|
import { ConnectionState } from './types/events.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Automatic reconnection management with exponential backoff
|
|
3
3
|
*/
|
|
4
|
-
import { EventEmitter } from '
|
|
4
|
+
import { EventEmitter } from 'eventemitter3';
|
|
5
5
|
import { ReconnectionOptions } from '../types/client-options.js';
|
|
6
6
|
/**
|
|
7
7
|
* Manages automatic reconnection with exponential backoff
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* WebSocket Adapter
|
|
3
3
|
* Provides a unified interface for WebSocket connections in both Node.js and browser environments
|
|
4
4
|
*/
|
|
5
|
-
import { EventEmitter } from '
|
|
5
|
+
import { EventEmitter } from 'eventemitter3';
|
|
6
6
|
/**
|
|
7
7
|
* WebSocket adapter interface
|
|
8
8
|
*/
|
|
@@ -23,4 +23,4 @@ export declare enum ReadyState {
|
|
|
23
23
|
/**
|
|
24
24
|
* Create a WebSocket adapter for the current environment
|
|
25
25
|
*/
|
|
26
|
-
export declare function createWebSocketAdapter(url: string, protocols?: string | string[]): WebSocketAdapter
|
|
26
|
+
export declare function createWebSocketAdapter(url: string, protocols?: string | string[]): Promise<WebSocketAdapter>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Core WebSocket client for JMRI communication
|
|
3
3
|
*/
|
|
4
|
-
import { EventEmitter } from '
|
|
4
|
+
import { EventEmitter } from 'eventemitter3';
|
|
5
5
|
import { JmriClientOptions } from '../types/client-options.js';
|
|
6
6
|
import { JmriMessage } from '../types/jmri-messages.js';
|
|
7
7
|
import { ConnectionState } from '../types/events.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Throttle control manager
|
|
3
3
|
*/
|
|
4
|
-
import { EventEmitter } from '
|
|
4
|
+
import { EventEmitter } from 'eventemitter3';
|
|
5
5
|
import { WebSocketClient } from '../core/websocket-client.js';
|
|
6
6
|
import { ThrottleAcquireOptions, ThrottleFunctionKey, ThrottleState } from '../types/throttle.js';
|
|
7
7
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jmri-client",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "WebSocket client for JMRI with real-time updates and throttle control - works in both Node.js and browsers",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -16,12 +16,16 @@
|
|
|
16
16
|
},
|
|
17
17
|
"scripts": {
|
|
18
18
|
"prepublish": "npm run build",
|
|
19
|
-
"build": "npm run build:cjs && npm run build:esm && npm run build:types",
|
|
19
|
+
"build": "npm run build:cjs && npm run build:esm && npm run build:types && npm run build:browser",
|
|
20
20
|
"build:cjs": "tsc -p tsconfig.json",
|
|
21
21
|
"build:esm": "tsc -p tsconfig.esm.json",
|
|
22
22
|
"build:types": "tsc -p tsconfig.json --declaration --emitDeclarationOnly --outDir dist/types",
|
|
23
|
+
"build:browser": "node build-browser.mjs",
|
|
23
24
|
"test": "jest --no-cache --coverage",
|
|
24
25
|
"test:browser": "node ./tests/integration/serve-test.mjs",
|
|
26
|
+
"test:reconnect": "node ./tests/integration/forced-reconnect.mjs",
|
|
27
|
+
"test:reconnect:browser": "node ./tests/browser/serve.mjs",
|
|
28
|
+
"test:reconnect:browser:headless": "node ./tests/browser/playwright-reconnect-test.mjs",
|
|
25
29
|
"functional": "node ./tests/functional/interactive-test.mjs",
|
|
26
30
|
"demo:mock": "node ./examples/mock-demo.mjs"
|
|
27
31
|
},
|
|
@@ -57,11 +61,14 @@
|
|
|
57
61
|
"@types/jest": "^29.0.3",
|
|
58
62
|
"@types/node": "^18.19.0",
|
|
59
63
|
"@types/ws": "^8.5.10",
|
|
64
|
+
"esbuild": "^0.27.3",
|
|
60
65
|
"jest": "^29.0.3",
|
|
66
|
+
"playwright": "^1.58.2",
|
|
61
67
|
"ts-jest": "^29.4.6",
|
|
62
68
|
"typescript": "^5.3.3"
|
|
63
69
|
},
|
|
64
70
|
"dependencies": {
|
|
71
|
+
"eventemitter3": "^5.0.4",
|
|
65
72
|
"ws": "^8.16.0"
|
|
66
73
|
},
|
|
67
74
|
"files": [
|