@smoregg/sdk 2.0.0 → 2.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.
Files changed (70) hide show
  1. package/dist/cjs/controller.cjs +260 -113
  2. package/dist/cjs/controller.cjs.map +1 -1
  3. package/dist/cjs/errors.cjs +1 -0
  4. package/dist/cjs/errors.cjs.map +1 -1
  5. package/dist/cjs/events.cjs +26 -3
  6. package/dist/cjs/events.cjs.map +1 -1
  7. package/dist/cjs/index.cjs +2 -7
  8. package/dist/cjs/index.cjs.map +1 -1
  9. package/dist/cjs/screen.cjs +244 -128
  10. package/dist/cjs/screen.cjs.map +1 -1
  11. package/dist/cjs/shared.cjs +34 -0
  12. package/dist/cjs/shared.cjs.map +1 -0
  13. package/dist/cjs/testing.cjs +181 -73
  14. package/dist/cjs/testing.cjs.map +1 -1
  15. package/dist/cjs/transport/PostMessageTransport.cjs +12 -0
  16. package/dist/cjs/transport/PostMessageTransport.cjs.map +1 -1
  17. package/dist/cjs/transport/protocol.cjs +2 -0
  18. package/dist/cjs/transport/protocol.cjs.map +1 -1
  19. package/dist/cjs/types.cjs +16 -0
  20. package/dist/cjs/types.cjs.map +1 -0
  21. package/dist/esm/controller.js +262 -115
  22. package/dist/esm/controller.js.map +1 -1
  23. package/dist/esm/errors.js +1 -0
  24. package/dist/esm/errors.js.map +1 -1
  25. package/dist/esm/events.js +25 -4
  26. package/dist/esm/events.js.map +1 -1
  27. package/dist/esm/index.js +1 -3
  28. package/dist/esm/index.js.map +1 -1
  29. package/dist/esm/screen.js +246 -130
  30. package/dist/esm/screen.js.map +1 -1
  31. package/dist/esm/shared.js +30 -0
  32. package/dist/esm/shared.js.map +1 -0
  33. package/dist/esm/testing.js +181 -73
  34. package/dist/esm/testing.js.map +1 -1
  35. package/dist/esm/transport/PostMessageTransport.js +12 -0
  36. package/dist/esm/transport/PostMessageTransport.js.map +1 -1
  37. package/dist/esm/transport/protocol.js +2 -1
  38. package/dist/esm/transport/protocol.js.map +1 -1
  39. package/dist/esm/types.js +14 -0
  40. package/dist/esm/types.js.map +1 -0
  41. package/dist/types/controller.d.ts +1 -1
  42. package/dist/types/controller.d.ts.map +1 -1
  43. package/dist/types/errors.d.ts.map +1 -1
  44. package/dist/types/events.d.ts +14 -1
  45. package/dist/types/events.d.ts.map +1 -1
  46. package/dist/types/index.d.ts +4 -8
  47. package/dist/types/index.d.ts.map +1 -1
  48. package/dist/types/screen.d.ts +3 -3
  49. package/dist/types/screen.d.ts.map +1 -1
  50. package/dist/types/shared.d.ts +21 -0
  51. package/dist/types/shared.d.ts.map +1 -0
  52. package/dist/types/testing.d.ts +65 -4
  53. package/dist/types/testing.d.ts.map +1 -1
  54. package/dist/types/transport/PostMessageTransport.d.ts +1 -0
  55. package/dist/types/transport/PostMessageTransport.d.ts.map +1 -1
  56. package/dist/types/transport/protocol.d.ts +5 -0
  57. package/dist/types/transport/protocol.d.ts.map +1 -1
  58. package/dist/types/types.d.ts +254 -345
  59. package/dist/types/types.d.ts.map +1 -1
  60. package/dist/umd/smore-sdk.umd.js +575 -784
  61. package/dist/umd/smore-sdk.umd.js.map +1 -1
  62. package/dist/umd/smore-sdk.umd.min.js +1 -1
  63. package/dist/umd/smore-sdk.umd.min.js.map +1 -1
  64. package/package.json +7 -1
  65. package/dist/cjs/config.cjs +0 -13
  66. package/dist/cjs/config.cjs.map +0 -1
  67. package/dist/esm/config.js +0 -10
  68. package/dist/esm/config.js.map +0 -1
  69. package/dist/types/config.d.ts +0 -35
  70. package/dist/types/config.d.ts.map +0 -1
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Shared utilities for Screen and Controller implementations.
3
+ * Centralizes common logic to eliminate duplication.
4
+ */
5
+ import type { ControllerInfo } from './types';
6
+ /** Maximum payload size in bytes (64KB). Server silently drops larger payloads. */
7
+ export declare const MAX_PAYLOAD_SIZE = 65536;
8
+ /**
9
+ * Map raw player data from server/bridge to ControllerInfo.
10
+ * Centralizes the name->nickname and character->appearance field mapping.
11
+ *
12
+ * Server sends: { playerIndex, name, connected, character }
13
+ * SDK exposes: { playerIndex, nickname, connected, appearance }
14
+ */
15
+ export declare function mapPlayerDTO(raw: Record<string, unknown>, fallbackIndex: number): ControllerInfo;
16
+ /**
17
+ * Validate that event payload does not exceed the 64KB server limit.
18
+ * Throws PAYLOAD_TOO_LARGE error if exceeded.
19
+ */
20
+ export declare function validatePayloadSize(data: unknown): void;
21
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C,mFAAmF;AACnF,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AAEtC;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,MAAM,GAAG,cAAc,CAOhG;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAiBvD"}
@@ -10,7 +10,69 @@
10
10
  *
11
11
  * @packageDocumentation
12
12
  */
13
- import type { EventMap, MockScreen, MockController, MockOptions } from './types';
13
+ import type { EventMap, EventNames, EventData, CharacterAppearance, ControllerInfo, PlayerIndex, GameResults, Screen, Controller, RoomCode } from './types';
14
+ /**
15
+ * Options for creating mock instances.
16
+ */
17
+ export interface MockOptions {
18
+ /** Initial room code */
19
+ roomCode?: RoomCode;
20
+ /** Initial controllers for Screen mock */
21
+ controllers?: ControllerInfo[];
22
+ /** My index for Controller mock */
23
+ myPlayerIndex?: PlayerIndex;
24
+ /** Auto-trigger ready state */
25
+ autoReady?: boolean;
26
+ }
27
+ /**
28
+ * Mock Screen for testing.
29
+ * Extends Screen with additional test utilities.
30
+ */
31
+ export interface MockScreen<TEvents extends EventMap = EventMap> extends Screen<TEvents> {
32
+ simulateEvent<K extends EventNames<TEvents>>(playerIndex: PlayerIndex, event: K, data: EventData<TEvents, K>): void;
33
+ simulateControllerJoin(info: ControllerInfo): void;
34
+ simulateControllerLeave(playerIndex: PlayerIndex): void;
35
+ simulateControllerDisconnect(playerIndex: PlayerIndex): void;
36
+ simulateControllerReconnect(playerIndex: PlayerIndex): void;
37
+ getBroadcasts(): Array<{
38
+ event: string;
39
+ data: unknown;
40
+ }>;
41
+ getSentToController(playerIndex: PlayerIndex): Array<{
42
+ event: string;
43
+ data: unknown;
44
+ }>;
45
+ clearRecordedEvents(): void;
46
+ triggerReady(): void;
47
+ simulateCharacterUpdate(playerIndex: PlayerIndex, appearance: CharacterAppearance | null): void;
48
+ simulateAllReady(): void;
49
+ simulateError(error: any): void;
50
+ simulateConnectionChange(connected: boolean): void;
51
+ simulateStateChange(playerIndex: number, state: Record<string, any>): void;
52
+ }
53
+ /**
54
+ * Mock Controller for testing.
55
+ * Extends Controller with additional test utilities.
56
+ */
57
+ export interface MockController<TEvents extends EventMap = EventMap> extends Controller<TEvents> {
58
+ simulateEvent<K extends EventNames<TEvents>>(event: K, data: EventData<TEvents, K>): void;
59
+ getSentEvents(): Array<{
60
+ event: string;
61
+ data: unknown;
62
+ }>;
63
+ clearRecordedEvents(): void;
64
+ triggerReady(): void;
65
+ simulatePlayerJoin(playerIndex: PlayerIndex, info: ControllerInfo): void;
66
+ simulatePlayerLeave(playerIndex: PlayerIndex): void;
67
+ simulatePlayerDisconnect(playerIndex: PlayerIndex): void;
68
+ simulatePlayerReconnect(playerIndex: PlayerIndex, info: ControllerInfo): void;
69
+ simulateCharacterUpdate(playerIndex: PlayerIndex, appearance: CharacterAppearance | null): void;
70
+ simulateAllReady(): void;
71
+ simulateError(error: any): void;
72
+ simulateGameOver(results?: GameResults): void;
73
+ simulateConnectionChange(connected: boolean): void;
74
+ simulateStateChange(playerIndex: number, state: Record<string, any>): void;
75
+ }
14
76
  /**
15
77
  * Create a mock Screen for testing game logic.
16
78
  *
@@ -29,7 +91,7 @@ import type { EventMap, MockScreen, MockController, MockOptions } from './types'
29
91
  * ],
30
92
  * });
31
93
  *
32
- * screen.on('tap', (pi, data) => handleTap(pi, data));
94
+ * screen.on('tap', (playerIndex, data) => handleTap(playerIndex, data));
33
95
  * screen.onAllReady(() => startGame());
34
96
  *
35
97
  * // Simulate player input
@@ -55,7 +117,7 @@ export declare function createMockScreen<TEvents extends EventMap = EventMap>(op
55
117
  * @example
56
118
  * ```ts
57
119
  * const controller = createMockController<MyEvents>({
58
- * myIndex: 0,
120
+ * myPlayerIndex: 0,
59
121
  * });
60
122
  *
61
123
  * controller.on('your-turn', (data) => handleTurn(data));
@@ -72,5 +134,4 @@ export declare function createMockScreen<TEvents extends EventMap = EventMap>(op
72
134
  * ```
73
135
  */
74
136
  export declare function createMockController<TEvents extends EventMap = EventMap>(options?: MockOptions): MockController<TEvents>;
75
- export type { MockScreen, MockController, MockOptions };
76
137
  //# sourceMappingURL=testing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,QAAQ,EASR,UAAU,EACV,cAAc,EACd,WAAW,EAEZ,MAAM,SAAS,CAAC;AAkBjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,EAClE,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,OAAO,CAAC,CA+WrB;AAWD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,EACtE,OAAO,GAAE,WAAgB,GACxB,cAAc,CAAC,OAAO,CAAC,CAoSzB;AAMD,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EACV,SAAS,EACT,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,WAAW,EAIX,MAAM,EACN,UAAU,EACV,QAAQ,EACT,MAAM,SAAS,CAAC;AAQjB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,mCAAmC;IACnC,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,+BAA+B;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,CAC7D,SAAQ,MAAM,CAAC,OAAO,CAAC;IACvB,aAAa,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,CAAC,EACzC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAC1B,IAAI,CAAC;IACR,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IACnD,uBAAuB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IACxD,4BAA4B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7D,2BAA2B,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5D,aAAa,IAAI,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACzD,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACvF,mBAAmB,IAAI,IAAI,CAAC;IAC5B,YAAY,IAAI,IAAI,CAAC;IACrB,uBAAuB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAAC;IAChG,gBAAgB,IAAI,IAAI,CAAC;IACzB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IAChC,wBAAwB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IACnD,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;CAC5E;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,CACjE,SAAQ,UAAU,CAAC,OAAO,CAAC;IAC3B,aAAa,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,CAAC,EACzC,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAC1B,IAAI,CAAC;IACR,aAAa,IAAI,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACzD,mBAAmB,IAAI,IAAI,CAAC;IAC5B,YAAY,IAAI,IAAI,CAAC;IACrB,kBAAkB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IACzE,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IACpD,wBAAwB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IACzD,uBAAuB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9E,uBAAuB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAAC;IAChG,gBAAgB,IAAI,IAAI,CAAC;IACzB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC;IAChC,gBAAgB,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9C,wBAAwB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IACnD,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;CAC5E;AAiBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,EAClE,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,OAAO,CAAC,CAuZrB;AAWD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,SAAS,QAAQ,GAAG,QAAQ,EACtE,OAAO,GAAE,WAAgB,GACxB,cAAc,CAAC,OAAO,CAAC,CA2XzB"}
@@ -20,6 +20,7 @@ import type { Transport, TransportEventHandler } from './types';
20
20
  * ```
21
21
  */
22
22
  export declare class PostMessageTransport implements Transport {
23
+ private static readonly ACK_TIMEOUT;
23
24
  private handlers;
24
25
  private ackCallbacks;
25
26
  private ackCounter;
@@ -1 +1 @@
1
- {"version":3,"file":"PostMessageTransport.d.ts","sourceRoot":"","sources":["../../../src/transport/PostMessageTransport.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAIhE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,oBAAqB,YAAW,SAAS;IACpD,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,YAAY,CAAmD;IACvE,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,mBAAmB,CAA4B;gBAE3C,YAAY,GAAE,MAAY;IAMtC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IA4B7C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,IAAI;IASvD,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI;IAQzD,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,aAAa;CA6BtB"}
1
+ {"version":3,"file":"PostMessageTransport.d.ts","sourceRoot":"","sources":["../../../src/transport/PostMessageTransport.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAIhE;;;;;;;;;;;;;;GAcG;AACH,qBAAa,oBAAqB,YAAW,SAAS;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,YAAY,CAAmD;IACvE,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,mBAAmB,CAA4B;gBAE3C,YAAY,GAAE,MAAY;IAMtC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAsC7C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,IAAI;IASvD,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI;IAQzD,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,aAAa;CA6BtB"}
@@ -12,8 +12,11 @@
12
12
  */
13
13
  import type { CharacterAppearance } from '../types';
14
14
  export declare const BRIDGE_MSG_PREFIX: "_bridge:";
15
+ /** Current SDK protocol version. Incremented on breaking protocol changes. */
16
+ export declare const PROTOCOL_VERSION = 1;
15
17
  export interface BridgeReadyMessage {
16
18
  type: '_bridge:ready';
19
+ protocolVersion?: number;
17
20
  }
18
21
  /**
19
22
  * BridgeInitMessage contains player data sent from the platform to the game iframe.
@@ -36,6 +39,8 @@ export interface BridgeInitMessage {
36
39
  character: CharacterAppearance | null;
37
40
  }>;
38
41
  myIndex?: number;
42
+ protocolVersion?: number;
43
+ gameInProgress?: boolean;
39
44
  };
40
45
  }
41
46
  export interface BridgeEmitMessage {
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/transport/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,eAAO,MAAM,iBAAiB,EAAG,UAAmB,CAAC;AAErD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QAEP,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,OAAO,CAAC;YACnB,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAAC;SACvC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,KAAK,CAAC;YACd,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,OAAO,CAAC;YACnB,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAAC;SACvC,CAAC,CAAC;KACJ,CAAC;CACH;AAED,MAAM,MAAM,aAAa,GACrB,kBAAkB,GAClB,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,mBAAmB,CAAC;AAExB,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,aAAa,CAQpE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CA4B7F"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/transport/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,eAAO,MAAM,iBAAiB,EAAG,UAAmB,CAAC;AAErD,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QAEP,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,OAAO,CAAC;YACnB,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAAC;SACvC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,KAAK,CAAC;YACd,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,OAAO,CAAC;YACnB,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAAC;SACvC,CAAC,CAAC;KACJ,CAAC;CACH;AAED,MAAM,MAAM,aAAa,GACrB,kBAAkB,GAClB,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,mBAAmB,CAAC;AAExB,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,aAAa,CAQpE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CA4B7F"}