@illgrenoble/webx-client 0.10.0 → 1.1.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 (158) hide show
  1. package/dist/WebXClient.d.ts +156 -16
  2. package/dist/WebXClient.js +170 -16
  3. package/dist/WebXClient.js.map +1 -1
  4. package/dist/display/WebXCursor.d.ts +65 -0
  5. package/dist/display/WebXCursor.js +65 -0
  6. package/dist/display/WebXCursor.js.map +1 -1
  7. package/dist/display/WebXCursorFactory.d.ts +18 -0
  8. package/dist/display/WebXCursorFactory.js +39 -16
  9. package/dist/display/WebXCursorFactory.js.map +1 -1
  10. package/dist/display/WebXDisplay.d.ts +150 -9
  11. package/dist/display/WebXDisplay.js +154 -9
  12. package/dist/display/WebXDisplay.js.map +1 -1
  13. package/dist/display/WebXSubImage.d.ts +42 -11
  14. package/dist/display/WebXSubImage.js +18 -12
  15. package/dist/display/WebXSubImage.js.map +1 -1
  16. package/dist/display/WebXTextureFactory.d.ts +30 -0
  17. package/dist/display/WebXTextureFactory.js +56 -19
  18. package/dist/display/WebXTextureFactory.js.map +1 -1
  19. package/dist/display/WebXWindow.d.ts +152 -0
  20. package/dist/display/WebXWindow.js +152 -0
  21. package/dist/display/WebXWindow.js.map +1 -1
  22. package/dist/display/WebXWindowProperties.d.ts +31 -6
  23. package/dist/display/WebXWindowProperties.js +16 -9
  24. package/dist/display/WebXWindowProperties.js.map +1 -1
  25. package/dist/input/WebXKeyboard.d.ts +40 -5
  26. package/dist/input/WebXKeyboard.js +52 -14
  27. package/dist/input/WebXKeyboard.js.map +1 -1
  28. package/dist/input/WebXMouse.d.ts +9 -0
  29. package/dist/input/WebXMouse.js +9 -4
  30. package/dist/input/WebXMouse.js.map +1 -1
  31. package/dist/input/keyboard/WebXKeyEvent.d.ts +35 -3
  32. package/dist/input/keyboard/WebXKeyEvent.js +115 -3
  33. package/dist/input/keyboard/WebXKeyEvent.js.map +1 -1
  34. package/dist/input/keyboard/WebXKeyPressEvent.d.ts +25 -8
  35. package/dist/input/keyboard/WebXKeyPressEvent.js +29 -11
  36. package/dist/input/keyboard/WebXKeyPressEvent.js.map +1 -1
  37. package/dist/input/keyboard/WebXKeyUpEvent.d.ts +30 -9
  38. package/dist/input/keyboard/WebXKeyUpEvent.js +19 -16
  39. package/dist/input/keyboard/WebXKeyUpEvent.js.map +1 -1
  40. package/dist/input/keyboard/WebXKeyboardModifierState.d.ts +69 -8
  41. package/dist/input/keyboard/WebXKeyboardModifierState.js +69 -8
  42. package/dist/input/keyboard/WebXKeyboardModifierState.js.map +1 -1
  43. package/dist/input/keyboard/WebXKeyboardUtils.d.ts +18 -2
  44. package/dist/input/keyboard/WebXKeyboardUtils.js +18 -2
  45. package/dist/input/keyboard/WebXKeyboardUtils.js.map +1 -1
  46. package/dist/input/keyboard/WebXKeydownEvent.d.ts +26 -9
  47. package/dist/input/keyboard/WebXKeydownEvent.js +17 -22
  48. package/dist/input/keyboard/WebXKeydownEvent.js.map +1 -1
  49. package/dist/input/mouse/WebXMouseState.d.ts +113 -2
  50. package/dist/input/mouse/WebXMouseState.js +104 -2
  51. package/dist/input/mouse/WebXMouseState.js.map +1 -1
  52. package/dist/instruction/WebXConnectInstruction.d.ts +16 -1
  53. package/dist/instruction/WebXConnectInstruction.js +13 -1
  54. package/dist/instruction/WebXConnectInstruction.js.map +1 -1
  55. package/dist/instruction/WebXCursorImageInstruction.d.ts +15 -3
  56. package/dist/instruction/WebXCursorImageInstruction.js +12 -5
  57. package/dist/instruction/WebXCursorImageInstruction.js.map +1 -1
  58. package/dist/instruction/WebXDataAckInstruction.d.ts +22 -5
  59. package/dist/instruction/WebXDataAckInstruction.js +15 -9
  60. package/dist/instruction/WebXDataAckInstruction.js.map +1 -1
  61. package/dist/instruction/WebXImageInstruction.d.ts +14 -3
  62. package/dist/instruction/WebXImageInstruction.js +11 -7
  63. package/dist/instruction/WebXImageInstruction.js.map +1 -1
  64. package/dist/instruction/WebXInstruction.d.ts +26 -10
  65. package/dist/instruction/WebXInstruction.js +19 -25
  66. package/dist/instruction/WebXInstruction.js.map +1 -1
  67. package/dist/instruction/WebXInstructionResponse.d.ts +55 -2
  68. package/dist/instruction/WebXInstructionResponse.js +40 -2
  69. package/dist/instruction/WebXInstructionResponse.js.map +1 -1
  70. package/dist/instruction/WebXInstructionType.d.ts +40 -0
  71. package/dist/instruction/WebXInstructionType.js +40 -0
  72. package/dist/instruction/WebXInstructionType.js.map +1 -1
  73. package/dist/instruction/WebXKeyboardInstruction.d.ts +19 -6
  74. package/dist/instruction/WebXKeyboardInstruction.js +13 -14
  75. package/dist/instruction/WebXKeyboardInstruction.js.map +1 -1
  76. package/dist/instruction/WebXMouseInstruction.d.ts +24 -9
  77. package/dist/instruction/WebXMouseInstruction.js +15 -21
  78. package/dist/instruction/WebXMouseInstruction.js.map +1 -1
  79. package/dist/instruction/WebXPongInstruction.d.ts +15 -3
  80. package/dist/instruction/WebXPongInstruction.js +12 -5
  81. package/dist/instruction/WebXPongInstruction.js.map +1 -1
  82. package/dist/instruction/WebXQualityInstruction.d.ts +16 -4
  83. package/dist/instruction/WebXQualityInstruction.js +13 -8
  84. package/dist/instruction/WebXQualityInstruction.js.map +1 -1
  85. package/dist/instruction/WebXScreenInstruction.d.ts +8 -0
  86. package/dist/instruction/WebXScreenInstruction.js +8 -0
  87. package/dist/instruction/WebXScreenInstruction.js.map +1 -1
  88. package/dist/instruction/WebXWindowsInstruction.d.ts +9 -0
  89. package/dist/instruction/WebXWindowsInstruction.js +9 -0
  90. package/dist/instruction/WebXWindowsInstruction.js.map +1 -1
  91. package/dist/message/WebXCursorImageMessage.d.ts +42 -13
  92. package/dist/message/WebXCursorImageMessage.js +24 -25
  93. package/dist/message/WebXCursorImageMessage.js.map +1 -1
  94. package/dist/message/WebXImageMessage.d.ts +37 -11
  95. package/dist/message/WebXImageMessage.js +22 -21
  96. package/dist/message/WebXImageMessage.js.map +1 -1
  97. package/dist/message/WebXMessage.d.ts +22 -6
  98. package/dist/message/WebXMessage.js +15 -9
  99. package/dist/message/WebXMessage.js.map +1 -1
  100. package/dist/message/WebXMessageType.d.ts +35 -0
  101. package/dist/message/WebXMessageType.js +35 -0
  102. package/dist/message/WebXMessageType.js.map +1 -1
  103. package/dist/message/WebXMouseMessage.d.ts +27 -7
  104. package/dist/message/WebXMouseMessage.js +18 -13
  105. package/dist/message/WebXMouseMessage.js.map +1 -1
  106. package/dist/message/WebXPingMessage.d.ts +9 -0
  107. package/dist/message/WebXPingMessage.js +9 -0
  108. package/dist/message/WebXPingMessage.js.map +1 -1
  109. package/dist/message/WebXQualityMessage.d.ts +36 -11
  110. package/dist/message/WebXQualityMessage.js +21 -21
  111. package/dist/message/WebXQualityMessage.js.map +1 -1
  112. package/dist/message/WebXScreenMessage.d.ts +17 -3
  113. package/dist/message/WebXScreenMessage.js +14 -5
  114. package/dist/message/WebXScreenMessage.js.map +1 -1
  115. package/dist/message/WebXSubImagesMessage.d.ts +27 -7
  116. package/dist/message/WebXSubImagesMessage.js +18 -13
  117. package/dist/message/WebXSubImagesMessage.js.map +1 -1
  118. package/dist/message/WebXWindowsMessage.d.ts +17 -3
  119. package/dist/message/WebXWindowsMessage.js +14 -5
  120. package/dist/message/WebXWindowsMessage.js.map +1 -1
  121. package/dist/tracer/WebXDebugImageMessageHandler.d.ts +30 -0
  122. package/dist/tracer/WebXDebugImageMessageHandler.js +30 -0
  123. package/dist/tracer/WebXDebugImageMessageHandler.js.map +1 -1
  124. package/dist/tracer/WebXHandler.d.ts +11 -0
  125. package/dist/tracer/WebXInstructionHandler.d.ts +17 -0
  126. package/dist/tracer/WebXInstructionHandler.js +6 -0
  127. package/dist/tracer/WebXInstructionHandler.js.map +1 -1
  128. package/dist/tracer/WebXMessageHandler.d.ts +17 -0
  129. package/dist/tracer/WebXMessageHandler.js +6 -0
  130. package/dist/tracer/WebXMessageHandler.js.map +1 -1
  131. package/dist/tracer/WebXStatsHandler.d.ts +16 -0
  132. package/dist/tracer/WebXStatsHandler.js +6 -0
  133. package/dist/tracer/WebXStatsHandler.js.map +1 -1
  134. package/dist/transport/WebXBinarySerializer.d.ts +20 -0
  135. package/dist/transport/WebXBinarySerializer.js +20 -0
  136. package/dist/transport/WebXBinarySerializer.js.map +1 -1
  137. package/dist/transport/WebXInstructionBuffer.d.ts +19 -0
  138. package/dist/transport/WebXInstructionBuffer.js +19 -0
  139. package/dist/transport/WebXInstructionBuffer.js.map +1 -1
  140. package/dist/transport/WebXInstructionEncoder.d.ts +138 -0
  141. package/dist/transport/WebXInstructionEncoder.js +138 -110
  142. package/dist/transport/WebXInstructionEncoder.js.map +1 -1
  143. package/dist/transport/WebXMessageBuffer.d.ts +63 -8
  144. package/dist/transport/WebXMessageBuffer.js +51 -16
  145. package/dist/transport/WebXMessageBuffer.js.map +1 -1
  146. package/dist/transport/WebXMessageDecoder.d.ts +69 -0
  147. package/dist/transport/WebXMessageDecoder.js +96 -18
  148. package/dist/transport/WebXMessageDecoder.js.map +1 -1
  149. package/dist/tunnel/WebXTunnel.d.ts +71 -0
  150. package/dist/tunnel/WebXTunnel.js +51 -4
  151. package/dist/tunnel/WebXTunnel.js.map +1 -1
  152. package/dist/tunnel/WebXWebSocketTunnel.d.ts +26 -0
  153. package/dist/tunnel/WebXWebSocketTunnel.js +26 -0
  154. package/dist/tunnel/WebXWebSocketTunnel.js.map +1 -1
  155. package/dist/utils/ColorGenerator.d.ts +19 -0
  156. package/dist/utils/ColorGenerator.js +19 -0
  157. package/dist/utils/ColorGenerator.js.map +1 -1
  158. package/package.json +1 -1
@@ -1,11 +1,24 @@
1
1
  import { WebXInstruction } from '../instruction';
2
+ /**
3
+ * Represents a buffer for encoding and decoding WebX instructions.
4
+ *
5
+ * This class provides methods to write and read data in a structured format
6
+ * for communication with the WebX Engine.
7
+ */
2
8
  export declare class WebXInstructionBuffer {
3
9
  private readonly _buffer;
4
10
  private _offset;
11
+ /**
12
+ * Creates a new instance of WebXInstructionBuffer.
13
+ *
14
+ * @param instruction The WebX instruction.
15
+ * @param length The length of the buffer in bytes.
16
+ */
5
17
  constructor(instruction: WebXInstruction, length: number);
6
18
  private _getNextOffset;
7
19
  /**
8
20
  * Write a signed 32 bit integer to the buffer
21
+ * @param value the value to write
9
22
  */
10
23
  putInt32(value: number): WebXInstructionBuffer;
11
24
  /**
@@ -18,6 +31,11 @@ export declare class WebXInstructionBuffer {
18
31
  * @param value the value to write
19
32
  */
20
33
  putUInt32(value: number): WebXInstructionBuffer;
34
+ /**
35
+ * Write an array of unsigned 8 bit integers to the buffer
36
+ * @param array the array to write
37
+ * @param length the length of the array
38
+ */
21
39
  putUInt8Array(array: Uint8Array, length: number): WebXInstructionBuffer;
22
40
  /**
23
41
  * Write a string to the buffer
@@ -31,6 +49,7 @@ export declare class WebXInstructionBuffer {
31
49
  putBoolean(value: boolean): WebXInstructionBuffer;
32
50
  /**
33
51
  * Get the array buffer
52
+ * @returns the array buffer
34
53
  */
35
54
  buffer(): ArrayBuffer;
36
55
  }
@@ -1,7 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WebXInstructionBuffer = void 0;
4
+ /**
5
+ * Represents a buffer for encoding and decoding WebX instructions.
6
+ *
7
+ * This class provides methods to write and read data in a structured format
8
+ * for communication with the WebX Engine.
9
+ */
4
10
  class WebXInstructionBuffer {
11
+ /**
12
+ * Creates a new instance of WebXInstructionBuffer.
13
+ *
14
+ * @param instruction The WebX instruction.
15
+ * @param length The length of the buffer in bytes.
16
+ */
5
17
  constructor(instruction, length) {
6
18
  // 16 for sessionID place holder (set by the relay), 4 for the clientId (set by the relay) and 8 for the instruction type and id, 4 padding
7
19
  // Maintain 8 bit alignment to ensure long values can be written without additional padding
@@ -28,6 +40,7 @@ class WebXInstructionBuffer {
28
40
  }
29
41
  /**
30
42
  * Write a signed 32 bit integer to the buffer
43
+ * @param value the value to write
31
44
  */
32
45
  putInt32(value) {
33
46
  const offset = this._getNextOffset(4);
@@ -55,6 +68,11 @@ class WebXInstructionBuffer {
55
68
  typedArray[0] = value;
56
69
  return this;
57
70
  }
71
+ /**
72
+ * Write an array of unsigned 8 bit integers to the buffer
73
+ * @param array the array to write
74
+ * @param length the length of the array
75
+ */
58
76
  putUInt8Array(array, length) {
59
77
  const offset = this._getNextOffset(8);
60
78
  const typedArray = new Uint8Array(this._buffer, offset, length);
@@ -81,6 +99,7 @@ class WebXInstructionBuffer {
81
99
  }
82
100
  /**
83
101
  * Get the array buffer
102
+ * @returns the array buffer
84
103
  */
85
104
  buffer() {
86
105
  return this._buffer;
@@ -1 +1 @@
1
- {"version":3,"file":"WebXInstructionBuffer.js","sourceRoot":"","sources":["../../src/transport/WebXInstructionBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebXInstructionBuffer.js","sourceRoot":"","sources":["../../src/transport/WebXInstructionBuffer.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,152 @@
1
1
  import { WebXInstruction } from '../instruction';
2
+ /**
3
+ * Encodes WebX instructions into a format suitable for transmission.
4
+ * This class handles various instruction types and ensures they are
5
+ * serialized correctly.
6
+ */
2
7
  export declare class WebXInstructionEncoder {
8
+ /**
9
+ * Convert the given instruction to an array buffer ready to be sent along the wire
10
+ * @param instruction the instruction to encode
11
+ * @returns The encoded instruction as an ArrayBuffer.
12
+ */
3
13
  encode(instruction: WebXInstruction): ArrayBuffer;
14
+ /**
15
+ * Create a new mouse instruction
16
+ * @param instruction the mouse instruction to encode
17
+ * Structure:
18
+ * Header: 32 bytes
19
+ * sessionId: 16 bytes
20
+ * clientId:4 bytes
21
+ * type: 4 bytes
22
+ * id: 4 bytes
23
+ * padding: 4 bytes
24
+ * Content: 4 bytes
25
+ * x: 4 bytes
26
+ * y: 4 bytes
27
+ * buttonMask: 4 bytes
28
+ */
4
29
  private _createMouseInstruction;
30
+ /**
31
+ * Create a new cursor image instruction
32
+ * @param instruction the cursor image instruction to encode
33
+ * Structure:
34
+ * Header: 32 bytes
35
+ * sessionId: 16 bytes
36
+ * clientId:4 bytes
37
+ * type: 4 bytes
38
+ * id: 4 bytes
39
+ * padding: 4 bytes
40
+ * Content: 4 bytes
41
+ * cursorId: 4 bytes
42
+ */
5
43
  private _createCursorImageInstruction;
44
+ /**
45
+ * Create a new image instruction
46
+ * @param instruction the image instruction to encode
47
+ * Structure:
48
+ * Header: 32 bytes
49
+ * sessionId: 16 bytes
50
+ * clientId:4 bytes
51
+ * type: 4 bytes
52
+ * id: 4 bytes
53
+ * padding: 4 bytes
54
+ * Content: 4 bytes
55
+ * windowId: 4 bytes
56
+ */
6
57
  private _createImageInstruction;
58
+ /**
59
+ * Create a keyboard instruction
60
+ * @param instruction the keyboard instruction to encode
61
+ * Structure:
62
+ * Header: 32 bytes
63
+ * sessionId: 16 bytes
64
+ * clientId: 4 bytes
65
+ * type: 4 bytes
66
+ * id: 4 bytes
67
+ * padding: 4 bytes
68
+ * Content: 8 bytes
69
+ * key (the keyboard key code): 4 bytes
70
+ * pressed: 4 bytes
71
+ */
7
72
  private _createKeyboardInstruction;
73
+ /**
74
+ * Create a screen instruction
75
+ * @param instruction the screen instruction to encode
76
+ * Structure:
77
+ * Header: 32 bytes
78
+ * sessionId: 16 bytes
79
+ * clientId: 4 bytes
80
+ * type: 4 bytes
81
+ * id: 4 bytes
82
+ * padding: 4 bytes
83
+ */
8
84
  private _createScreenInstruction;
85
+ /**
86
+ * Create a windows instruction
87
+ * Structure:
88
+ * Header: 32 bytes
89
+ * sessionId: 16 bytes
90
+ * clientId: 4 bytes
91
+ * type: 4 bytes
92
+ * id: 4 bytes
93
+ * padding: 4 bytes
94
+ * @param instruction the windows instruction to encode
95
+ */
9
96
  private _createWindowsInstruction;
97
+ /**
98
+ * Create a connect instruction
99
+ * @param instruction the connect instruction to encode
100
+ * Structure:
101
+ * Header: 32 bytes
102
+ * sessionId: 16 bytes
103
+ * clientId: 4 bytes
104
+ * type: 4 bytes
105
+ * id: 4 bytes
106
+ * padding: 4 bytes
107
+ */
10
108
  private _createConnectInstruction;
109
+ /**
110
+ * Create a new quality instruction
111
+ * @param instruction the quality instruction to encode
112
+ * Structure:
113
+ * Header: 32 bytes
114
+ * sessionId: 16 bytes
115
+ * clientId: 4 bytes
116
+ * type: 4 bytes
117
+ * id: 4 bytes
118
+ * padding: 4 bytes
119
+ * Content: 4 bytes
120
+ * qualityIndex: 4 bytes
121
+ */
11
122
  private _createQualityInstruction;
123
+ /**
124
+ * Create a new pong instruction
125
+ * @param instruction the pong instruction to encode
126
+ * Structure:
127
+ * Header: 32 bytes
128
+ * sessionId: 16 bytes
129
+ * clientId: 4 bytes
130
+ * type: 4 bytes
131
+ * id: 4 bytes
132
+ * padding: 4 bytes
133
+ * Content: 8 bytes
134
+ * timestampMs: 8 bytes
135
+ */
12
136
  private _createPongInstruction;
137
+ /**
138
+ * Create a new data ack instruction
139
+ * @param instruction the data ack instruction to encode
140
+ * Structure:
141
+ * Header: 32 bytes
142
+ * sessionId: 16 bytes
143
+ * clientId: 4 bytes
144
+ * type: 4 bytes
145
+ * id: 4 bytes
146
+ * padding: 4 bytes
147
+ * Content: 8 bytes
148
+ * timestampMs: 8 bytes
149
+ * dataLength: 4 bytes
150
+ */
13
151
  private _createDataAckInstruction;
14
152
  }
@@ -3,9 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WebXInstructionEncoder = void 0;
4
4
  const instruction_1 = require("../instruction");
5
5
  const _1 = require(".");
6
+ /**
7
+ * Encodes WebX instructions into a format suitable for transmission.
8
+ * This class handles various instruction types and ensures they are
9
+ * serialized correctly.
10
+ */
6
11
  class WebXInstructionEncoder {
7
- // Convert the given instruction to an array buffer ready to be sent along the wire
8
- // @param instruction the instruction to encode
12
+ /**
13
+ * Convert the given instruction to an array buffer ready to be sent along the wire
14
+ * @param instruction the instruction to encode
15
+ * @returns The encoded instruction as an ArrayBuffer.
16
+ */
9
17
  encode(instruction) {
10
18
  if (instruction.type === instruction_1.WebXInstructionType.MOUSE) {
11
19
  return this._createMouseInstruction(instruction);
@@ -39,19 +47,21 @@ class WebXInstructionEncoder {
39
47
  }
40
48
  return null;
41
49
  }
42
- // Create a new mouse instruction
43
- // @param instruction the mouse instruction to encode
44
- // Structure:
45
- // Header: 32 bytes
46
- // sessionId: 16 bytes
47
- // clientId:4 bytes
48
- // type: 4 bytes
49
- // id: 4 bytes
50
- // padding: 4 bytes
51
- // Content: 4 bytes
52
- // x: 4 bytes
53
- // y: 4 bytes
54
- // buttonMask: 4 bytes
50
+ /**
51
+ * Create a new mouse instruction
52
+ * @param instruction the mouse instruction to encode
53
+ * Structure:
54
+ * Header: 32 bytes
55
+ * sessionId: 16 bytes
56
+ * clientId:4 bytes
57
+ * type: 4 bytes
58
+ * id: 4 bytes
59
+ * padding: 4 bytes
60
+ * Content: 4 bytes
61
+ * x: 4 bytes
62
+ * y: 4 bytes
63
+ * buttonMask: 4 bytes
64
+ */
55
65
  _createMouseInstruction(instruction) {
56
66
  const encoder = new _1.WebXInstructionBuffer(instruction, 12);
57
67
  return encoder
@@ -61,17 +71,19 @@ class WebXInstructionEncoder {
61
71
  .putUInt32(instruction.buttonMask)
62
72
  .buffer();
63
73
  }
64
- // Create a new cursor image instruction
65
- // @param instruction the cursor image instruction to encode
66
- // Structure:
67
- // Header: 32 bytes
68
- // sessionId: 16 bytes
69
- // clientId:4 bytes
70
- // type: 4 bytes
71
- // id: 4 bytes
72
- // padding: 4 bytes
73
- // Content: 4 bytes
74
- // cursorId: 4 bytes
74
+ /**
75
+ * Create a new cursor image instruction
76
+ * @param instruction the cursor image instruction to encode
77
+ * Structure:
78
+ * Header: 32 bytes
79
+ * sessionId: 16 bytes
80
+ * clientId:4 bytes
81
+ * type: 4 bytes
82
+ * id: 4 bytes
83
+ * padding: 4 bytes
84
+ * Content: 4 bytes
85
+ * cursorId: 4 bytes
86
+ */
75
87
  _createCursorImageInstruction(instruction) {
76
88
  const encoder = new _1.WebXInstructionBuffer(instruction, 4);
77
89
  return encoder
@@ -79,17 +91,19 @@ class WebXInstructionEncoder {
79
91
  .putInt32(instruction.cursorId)
80
92
  .buffer();
81
93
  }
82
- // Create a new image instruction
83
- // @param instruction the image instruction to encode
84
- // Structure:
85
- // Header: 32 bytes
86
- // sessionId: 16 bytes
87
- // clientId:4 bytes
88
- // type: 4 bytes
89
- // id: 4 bytes
90
- // padding: 4 bytes
91
- // Content: 4 bytes
92
- // windowId: 4 bytes
94
+ /**
95
+ * Create a new image instruction
96
+ * @param instruction the image instruction to encode
97
+ * Structure:
98
+ * Header: 32 bytes
99
+ * sessionId: 16 bytes
100
+ * clientId:4 bytes
101
+ * type: 4 bytes
102
+ * id: 4 bytes
103
+ * padding: 4 bytes
104
+ * Content: 4 bytes
105
+ * windowId: 4 bytes
106
+ */
93
107
  _createImageInstruction(instruction) {
94
108
  const encoder = new _1.WebXInstructionBuffer(instruction, 4);
95
109
  return encoder
@@ -97,18 +111,20 @@ class WebXInstructionEncoder {
97
111
  .putUInt32(instruction.windowId)
98
112
  .buffer();
99
113
  }
100
- // Create a keyboard instruction
101
- // @param instruction the keyboard instruction to encode
102
- // Structure:
103
- // Header: 32 bytes
104
- // sessionId: 16 bytes
105
- // clientId: 4 bytes
106
- // type: 4 bytes
107
- // id: 4 bytes
108
- // padding: 4 bytes
109
- // Content: 8 bytes
110
- // key (the keyboard key code): 4 bytes
111
- // pressed: 4 bytes
114
+ /**
115
+ * Create a keyboard instruction
116
+ * @param instruction the keyboard instruction to encode
117
+ * Structure:
118
+ * Header: 32 bytes
119
+ * sessionId: 16 bytes
120
+ * clientId: 4 bytes
121
+ * type: 4 bytes
122
+ * id: 4 bytes
123
+ * padding: 4 bytes
124
+ * Content: 8 bytes
125
+ * key (the keyboard key code): 4 bytes
126
+ * pressed: 4 bytes
127
+ */
112
128
  _createKeyboardInstruction(instruction) {
113
129
  const encoder = new _1.WebXInstructionBuffer(instruction, 8);
114
130
  return encoder
@@ -117,56 +133,64 @@ class WebXInstructionEncoder {
117
133
  .putBoolean(instruction.pressed)
118
134
  .buffer();
119
135
  }
120
- // Create a screen instruction
121
- // @param instruction the screen instruction to encode
122
- // Structure:
123
- // Header: 32 bytes
124
- // sessionId: 16 bytes
125
- // clientId: 4 bytes
126
- // type: 4 bytes
127
- // id: 4 bytes
128
- // padding: 4 bytes
136
+ /**
137
+ * Create a screen instruction
138
+ * @param instruction the screen instruction to encode
139
+ * Structure:
140
+ * Header: 32 bytes
141
+ * sessionId: 16 bytes
142
+ * clientId: 4 bytes
143
+ * type: 4 bytes
144
+ * id: 4 bytes
145
+ * padding: 4 bytes
146
+ */
129
147
  _createScreenInstruction(instruction) {
130
148
  const encoder = new _1.WebXInstructionBuffer(instruction, 0);
131
149
  return encoder.buffer();
132
150
  }
133
- // Create a windows instruction
134
- // Structure:
135
- // Header: 32 bytes
136
- // sessionId: 16 bytes
137
- // clientId: 4 bytes
138
- // type: 4 bytes
139
- // id: 4 bytes
140
- // padding: 4 bytes
141
- // @param instruction the windows instruction to encode
151
+ /**
152
+ * Create a windows instruction
153
+ * Structure:
154
+ * Header: 32 bytes
155
+ * sessionId: 16 bytes
156
+ * clientId: 4 bytes
157
+ * type: 4 bytes
158
+ * id: 4 bytes
159
+ * padding: 4 bytes
160
+ * @param instruction the windows instruction to encode
161
+ */
142
162
  _createWindowsInstruction(instruction) {
143
163
  const encoder = new _1.WebXInstructionBuffer(instruction, 0);
144
164
  return encoder.buffer();
145
165
  }
146
- // Create a connect instruction
147
- // @param instruction the connect instruction to encode
148
- // Structure:
149
- // Header: 32 bytes
150
- // sessionId: 16 bytes
151
- // clientId: 4 bytes
152
- // type: 4 bytes
153
- // id: 4 bytes
154
- // padding: 4 bytes
166
+ /**
167
+ * Create a connect instruction
168
+ * @param instruction the connect instruction to encode
169
+ * Structure:
170
+ * Header: 32 bytes
171
+ * sessionId: 16 bytes
172
+ * clientId: 4 bytes
173
+ * type: 4 bytes
174
+ * id: 4 bytes
175
+ * padding: 4 bytes
176
+ */
155
177
  _createConnectInstruction(instruction) {
156
178
  const encoder = new _1.WebXInstructionBuffer(instruction, 0);
157
179
  return encoder.buffer();
158
180
  }
159
- // Create a new quality instruction
160
- // @param instruction the quality instruction to encode
161
- // Structure:
162
- // Header: 32 bytes
163
- // sessionId: 16 bytes
164
- // clientId: 4 bytes
165
- // type: 4 bytes
166
- // id: 4 bytes
167
- // padding: 4 bytes
168
- // Content: 4 bytes
169
- // qualityIndex: 4 bytes
181
+ /**
182
+ * Create a new quality instruction
183
+ * @param instruction the quality instruction to encode
184
+ * Structure:
185
+ * Header: 32 bytes
186
+ * sessionId: 16 bytes
187
+ * clientId: 4 bytes
188
+ * type: 4 bytes
189
+ * id: 4 bytes
190
+ * padding: 4 bytes
191
+ * Content: 4 bytes
192
+ * qualityIndex: 4 bytes
193
+ */
170
194
  _createQualityInstruction(instruction) {
171
195
  const encoder = new _1.WebXInstructionBuffer(instruction, 4);
172
196
  return encoder
@@ -174,17 +198,19 @@ class WebXInstructionEncoder {
174
198
  .putUInt32(instruction.qualityIndex)
175
199
  .buffer();
176
200
  }
177
- // Create a new pong instruction
178
- // @param instruction the pong instruction to encode
179
- // Structure:
180
- // Header: 32 bytes
181
- // sessionId: 16 bytes
182
- // clientId: 4 bytes
183
- // type: 4 bytes
184
- // id: 4 bytes
185
- // padding: 4 bytes
186
- // Content: 8 bytes
187
- // timestampMs: 8 bytes
201
+ /**
202
+ * Create a new pong instruction
203
+ * @param instruction the pong instruction to encode
204
+ * Structure:
205
+ * Header: 32 bytes
206
+ * sessionId: 16 bytes
207
+ * clientId: 4 bytes
208
+ * type: 4 bytes
209
+ * id: 4 bytes
210
+ * padding: 4 bytes
211
+ * Content: 8 bytes
212
+ * timestampMs: 8 bytes
213
+ */
188
214
  _createPongInstruction(instruction) {
189
215
  const encoder = new _1.WebXInstructionBuffer(instruction, 8);
190
216
  return encoder
@@ -192,18 +218,20 @@ class WebXInstructionEncoder {
192
218
  .putUInt8Array(instruction.timestampMs, 8)
193
219
  .buffer();
194
220
  }
195
- // Create a new data ack instruction
196
- // @param instruction the data ack instruction to encode
197
- // Structure:
198
- // Header: 32 bytes
199
- // sessionId: 16 bytes
200
- // clientId: 4 bytes
201
- // type: 4 bytes
202
- // id: 4 bytes
203
- // padding: 4 bytes
204
- // Content: 8 bytes
205
- // timestampMs: 8 bytes
206
- // dataLength: 4 bytes
221
+ /**
222
+ * Create a new data ack instruction
223
+ * @param instruction the data ack instruction to encode
224
+ * Structure:
225
+ * Header: 32 bytes
226
+ * sessionId: 16 bytes
227
+ * clientId: 4 bytes
228
+ * type: 4 bytes
229
+ * id: 4 bytes
230
+ * padding: 4 bytes
231
+ * Content: 8 bytes
232
+ * timestampMs: 8 bytes
233
+ * dataLength: 4 bytes
234
+ */
207
235
  _createDataAckInstruction(instruction) {
208
236
  const encoder = new _1.WebXInstructionBuffer(instruction, 12);
209
237
  return encoder
@@ -1 +1 @@
1
- {"version":3,"file":"WebXInstructionEncoder.js","sourceRoot":"","sources":["../../src/transport/WebXInstructionEncoder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebXInstructionEncoder.js","sourceRoot":"","sources":["../../src/transport/WebXInstructionEncoder.ts"],"names":[],"mappings":"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"}