@aircast-4g/mavlink 1.1.5 → 1.1.7

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.
@@ -1,9 +1,16 @@
1
- interface MAVLinkMessage<Content = unknown> {
1
+ interface ParsedMAVLinkMessage$1 {
2
2
  timestamp: number;
3
3
  system_id: number;
4
4
  component_id: number;
5
- type: string;
6
- payload: Content;
5
+ message_id: number;
6
+ message_name: string;
7
+ sequence: number;
8
+ payload: Record<string, unknown>;
9
+ protocol_version: 1 | 2;
10
+ checksum: number;
11
+ crc_ok: boolean;
12
+ signature?: Uint8Array;
13
+ dialect?: string;
7
14
  }
8
15
 
9
16
  interface MessageTestTypes {
@@ -33,9 +40,40 @@ interface MessageTestTypes {
33
40
  interface MessageTypeMap {
34
41
  TEST_TYPES: MessageTestTypes;
35
42
  }
36
- type AnyMessage = MAVLinkMessage<MessageTestTypes>;
37
- declare function isTestTypes(msg: MAVLinkMessage): msg is MAVLinkMessage<MessageTestTypes>;
43
+ type AnyMessage = ParsedMAVLinkMessage$1;
44
+ declare function isTestTypes(msg: ParsedMAVLinkMessage$1): msg is ParsedMAVLinkMessage$1 & {
45
+ payload: MessageTestTypes;
46
+ };
38
47
 
48
+ interface ParsedMAVLinkMessage {
49
+ timestamp: number;
50
+ system_id: number;
51
+ component_id: number;
52
+ message_id: number;
53
+ message_name: string;
54
+ sequence: number;
55
+ payload: Record<string, unknown>;
56
+ protocol_version: 1 | 2;
57
+ checksum: number;
58
+ crc_ok: boolean;
59
+ signature?: Uint8Array;
60
+ dialect?: string;
61
+ }
62
+ interface MAVLinkFrame {
63
+ magic: number;
64
+ length: number;
65
+ incompatible_flags?: number;
66
+ compatible_flags?: number;
67
+ sequence: number;
68
+ system_id: number;
69
+ component_id: number;
70
+ message_id: number;
71
+ payload: Uint8Array;
72
+ checksum: number;
73
+ signature?: Uint8Array;
74
+ crc_ok?: boolean;
75
+ protocol_version?: 1 | 2;
76
+ }
39
77
  interface MessageDefinition {
40
78
  id: number;
41
79
  name: string;
@@ -47,7 +85,30 @@ interface FieldDefinition {
47
85
  arrayLength?: number;
48
86
  extension?: boolean;
49
87
  }
50
- declare const TEST_MESSAGE_DEFINITIONS: MessageDefinition[];
88
+ declare abstract class DialectParser {
89
+ protected messageDefinitions: Map<number, MessageDefinition>;
90
+ protected dialectName: string;
91
+ private buffer;
92
+ constructor(dialectName: string);
93
+ abstract loadDefinitions(): Promise<void>;
94
+ parseBytes(data: Uint8Array): ParsedMAVLinkMessage[];
95
+ private tryParseFrame;
96
+ resetBuffer(): void;
97
+ decode(frame: MAVLinkFrame): ParsedMAVLinkMessage;
98
+ private decodePayload;
99
+ private getDefaultValue;
100
+ private decodeField;
101
+ private decodeSingleValue;
102
+ getMessageDefinition(id: number): MessageDefinition | undefined;
103
+ getSupportedMessageIds(): number[];
104
+ getDialectName(): string;
105
+ supportsMessage(messageId: number): boolean;
106
+ }
107
+ declare class TestParser extends DialectParser {
108
+ constructor();
109
+ loadDefinitions(): Promise<void>;
110
+ private loadDefinitionsSync;
111
+ }
51
112
 
52
- export { TEST_MESSAGE_DEFINITIONS, isTestTypes };
53
- export type { AnyMessage, MAVLinkMessage, MessageTestTypes, MessageTypeMap };
113
+ export { TestParser, isTestTypes };
114
+ export type { AnyMessage, MessageTestTypes, MessageTypeMap, ParsedMAVLinkMessage$1 as ParsedMAVLinkMessage };
@@ -3,12 +3,287 @@
3
3
  // Auto-generated TypeScript message interfaces for test dialect
4
4
  // Type guard functions
5
5
  function isTestTypes(msg) {
6
- return msg.type === 'TEST_TYPES';
6
+ return msg.message_name === 'TEST_TYPES';
7
7
  }
8
8
 
9
- // Auto-generated decoder definitions for test dialect
9
+ // Auto-generated decoder and parser for test dialect
10
10
  // Generated from MAVLink XML definitions
11
- const TEST_MESSAGE_DEFINITIONS = [
11
+ // Base dialect parser class
12
+ class DialectParser {
13
+ constructor(dialectName) {
14
+ this.messageDefinitions = new Map();
15
+ this.buffer = new Uint8Array(0);
16
+ this.dialectName = dialectName;
17
+ }
18
+ parseBytes(data) {
19
+ const results = [];
20
+ if (!data || data.length === 0) {
21
+ return results;
22
+ }
23
+ // Append new data to buffer
24
+ const newBuffer = new Uint8Array(this.buffer.length + data.length);
25
+ newBuffer.set(this.buffer);
26
+ newBuffer.set(data, this.buffer.length);
27
+ this.buffer = newBuffer;
28
+ let offset = 0;
29
+ // Parse MAVLink frames from buffer
30
+ while (offset < this.buffer.length) {
31
+ const frameResult = this.tryParseFrame(this.buffer.slice(offset));
32
+ if (frameResult.frame) {
33
+ const message = this.decode(frameResult.frame);
34
+ results.push(message);
35
+ offset += frameResult.bytesConsumed;
36
+ }
37
+ else if (frameResult.bytesConsumed > 0) {
38
+ // Skip invalid bytes
39
+ offset += frameResult.bytesConsumed;
40
+ }
41
+ else {
42
+ // Not enough data for a complete frame
43
+ break;
44
+ }
45
+ }
46
+ // Keep remaining data in buffer
47
+ this.buffer = this.buffer.slice(offset);
48
+ return results;
49
+ }
50
+ tryParseFrame(data) {
51
+ if (data.length < 8) {
52
+ return { bytesConsumed: 0 };
53
+ }
54
+ let offset = 0;
55
+ // Find magic byte
56
+ while (offset < data.length && data[offset] !== 0xFE && data[offset] !== 0xFD) {
57
+ offset++;
58
+ }
59
+ if (offset === data.length) {
60
+ return { bytesConsumed: data.length };
61
+ }
62
+ const magic = data[offset];
63
+ const isV2 = magic === 0xFD;
64
+ if (data.length - offset < (isV2 ? 12 : 8)) {
65
+ return { bytesConsumed: offset };
66
+ }
67
+ let frameOffset = offset;
68
+ const frame = { magic };
69
+ frameOffset++;
70
+ frame.length = data[frameOffset++];
71
+ if (isV2) {
72
+ frame.incompatible_flags = data[frameOffset++];
73
+ frame.compatible_flags = data[frameOffset++];
74
+ }
75
+ frame.sequence = data[frameOffset++];
76
+ frame.system_id = data[frameOffset++];
77
+ frame.component_id = data[frameOffset++];
78
+ frame.message_id = data[frameOffset++];
79
+ if (isV2 && data.length - frameOffset >= 2) {
80
+ frame.message_id |= (data[frameOffset++] << 8);
81
+ frame.message_id |= (data[frameOffset++] << 16);
82
+ }
83
+ const totalLength = frameOffset - offset + frame.length + 2; // +2 for checksum
84
+ if (data.length - offset < totalLength) {
85
+ return { bytesConsumed: offset };
86
+ }
87
+ frame.payload = data.slice(frameOffset, frameOffset + frame.length);
88
+ frameOffset += frame.length;
89
+ frame.checksum = data[frameOffset] | (data[frameOffset + 1] << 8);
90
+ frameOffset += 2;
91
+ // Handle signature for v2
92
+ if (isV2 && frame.incompatible_flags && (frame.incompatible_flags & 0x01)) {
93
+ if (data.length - frameOffset >= 13) {
94
+ frame.signature = data.slice(frameOffset, frameOffset + 13);
95
+ frameOffset += 13;
96
+ }
97
+ }
98
+ frame.crc_ok = true; // Simplified - not doing CRC validation
99
+ frame.protocol_version = isV2 ? 2 : 1;
100
+ return { frame: frame, bytesConsumed: frameOffset - offset };
101
+ }
102
+ resetBuffer() {
103
+ this.buffer = new Uint8Array(0);
104
+ }
105
+ decode(frame) {
106
+ const messageDef = this.messageDefinitions.get(frame.message_id);
107
+ const protocolVersion = frame.protocol_version || (frame.magic === 0xFD ? 2 : 1);
108
+ if (!messageDef) {
109
+ return {
110
+ timestamp: Date.now(),
111
+ system_id: frame.system_id,
112
+ component_id: frame.component_id,
113
+ message_id: frame.message_id,
114
+ message_name: `UNKNOWN_${frame.message_id}`,
115
+ sequence: frame.sequence,
116
+ payload: {
117
+ raw_payload: Array.from(frame.payload)
118
+ },
119
+ protocol_version: protocolVersion,
120
+ checksum: frame.checksum,
121
+ crc_ok: frame.crc_ok ?? true,
122
+ signature: frame.signature,
123
+ dialect: this.dialectName
124
+ };
125
+ }
126
+ const payload = this.decodePayload(frame.payload, messageDef.fields);
127
+ return {
128
+ timestamp: Date.now(),
129
+ system_id: frame.system_id,
130
+ component_id: frame.component_id,
131
+ message_id: frame.message_id,
132
+ message_name: messageDef.name,
133
+ sequence: frame.sequence,
134
+ payload,
135
+ protocol_version: protocolVersion,
136
+ checksum: frame.checksum,
137
+ crc_ok: frame.crc_ok ?? true,
138
+ signature: frame.signature,
139
+ dialect: this.dialectName
140
+ };
141
+ }
142
+ decodePayload(payload, fields) {
143
+ const result = {};
144
+ const view = new DataView(payload.buffer, payload.byteOffset, payload.byteLength);
145
+ let offset = 0;
146
+ for (const field of fields) {
147
+ if (offset >= payload.length) {
148
+ result[field.name] = this.getDefaultValue(field);
149
+ }
150
+ else {
151
+ const { value, bytesRead } = this.decodeField(view, offset, field);
152
+ result[field.name] = value;
153
+ offset += bytesRead;
154
+ }
155
+ }
156
+ return result;
157
+ }
158
+ getDefaultValue(field) {
159
+ const isArray = field.arrayLength !== undefined && field.arrayLength > 1;
160
+ if (isArray) {
161
+ return [];
162
+ }
163
+ switch (field.type) {
164
+ case 'uint8_t':
165
+ case 'int8_t':
166
+ case 'uint16_t':
167
+ case 'int16_t':
168
+ case 'uint32_t':
169
+ case 'int32_t':
170
+ case 'float':
171
+ case 'double':
172
+ return 0;
173
+ case 'uint64_t':
174
+ case 'int64_t':
175
+ return 0n;
176
+ case 'char':
177
+ return '\0';
178
+ default:
179
+ if (field.type.startsWith('char[') || field.type.includes('[]')) {
180
+ return '';
181
+ }
182
+ return 0;
183
+ }
184
+ }
185
+ decodeField(view, offset, field) {
186
+ const isArray = field.arrayLength !== undefined;
187
+ const arrayLength = field.arrayLength || 1;
188
+ if (isArray && arrayLength > 1) {
189
+ const values = [];
190
+ let totalBytes = 0;
191
+ // Strip array notation from type to avoid double processing
192
+ let baseType = field.type;
193
+ if (baseType.includes('[') && baseType.includes(']')) {
194
+ baseType = baseType.substring(0, baseType.indexOf('['));
195
+ }
196
+ for (let i = 0; i < arrayLength; i++) {
197
+ if (offset + totalBytes >= view.byteLength)
198
+ break;
199
+ const { value, bytesRead } = this.decodeSingleValue(view, offset + totalBytes, baseType);
200
+ if (typeof value === 'string' || typeof value === 'number' || typeof value === 'bigint' || typeof value === 'boolean') {
201
+ values.push(value);
202
+ }
203
+ totalBytes += bytesRead;
204
+ }
205
+ return { value: values, bytesRead: totalBytes };
206
+ }
207
+ else {
208
+ return this.decodeSingleValue(view, offset, field.type);
209
+ }
210
+ }
211
+ decodeSingleValue(view, offset, type) {
212
+ try {
213
+ switch (type) {
214
+ case 'uint8_t':
215
+ return { value: view.getUint8(offset), bytesRead: 1 };
216
+ case 'int8_t':
217
+ return { value: view.getInt8(offset), bytesRead: 1 };
218
+ case 'uint16_t':
219
+ return { value: view.getUint16(offset, true), bytesRead: 2 };
220
+ case 'int16_t':
221
+ return { value: view.getInt16(offset, true), bytesRead: 2 };
222
+ case 'uint32_t':
223
+ return { value: view.getUint32(offset, true), bytesRead: 4 };
224
+ case 'int32_t':
225
+ return { value: view.getInt32(offset, true), bytesRead: 4 };
226
+ case 'uint64_t':
227
+ return { value: view.getBigUint64(offset, true), bytesRead: 8 };
228
+ case 'int64_t':
229
+ return { value: view.getBigInt64(offset, true), bytesRead: 8 };
230
+ case 'float':
231
+ return { value: view.getFloat32(offset, true), bytesRead: 4 };
232
+ case 'double':
233
+ return { value: view.getFloat64(offset, true), bytesRead: 8 };
234
+ case 'char': {
235
+ const charCode = view.getUint8(offset);
236
+ return { value: charCode === 0 ? '\0' : String.fromCharCode(charCode), bytesRead: 1 };
237
+ }
238
+ default:
239
+ if (type.startsWith('char[') && type.endsWith(']')) {
240
+ const length = parseInt(type.slice(5, -1));
241
+ const chars = [];
242
+ for (let i = 0; i < length && offset + i < view.byteLength; i++) {
243
+ const charCode = view.getUint8(offset + i);
244
+ if (charCode === 0)
245
+ break;
246
+ chars.push(String.fromCharCode(charCode));
247
+ }
248
+ return { value: chars.join(''), bytesRead: length };
249
+ }
250
+ else if (type.includes('[') && type.includes(']')) {
251
+ const baseType = type.substring(0, type.indexOf('['));
252
+ const arrayLength = parseInt(type.substring(type.indexOf('[') + 1, type.indexOf(']')));
253
+ const values = [];
254
+ let totalBytes = 0;
255
+ for (let i = 0; i < arrayLength; i++) {
256
+ if (offset + totalBytes >= view.byteLength)
257
+ break;
258
+ const { value, bytesRead } = this.decodeSingleValue(view, offset + totalBytes, baseType);
259
+ if (typeof value === 'string' || typeof value === 'number' || typeof value === 'bigint' || typeof value === 'boolean') {
260
+ values.push(value);
261
+ }
262
+ totalBytes += bytesRead;
263
+ }
264
+ return { value: values, bytesRead: totalBytes };
265
+ }
266
+ return { value: view.getUint8(offset), bytesRead: 1 };
267
+ }
268
+ }
269
+ catch (error) {
270
+ return { value: 0, bytesRead: 1 };
271
+ }
272
+ }
273
+ getMessageDefinition(id) {
274
+ return this.messageDefinitions.get(id);
275
+ }
276
+ getSupportedMessageIds() {
277
+ return Array.from(this.messageDefinitions.keys()).sort((a, b) => a - b);
278
+ }
279
+ getDialectName() {
280
+ return this.dialectName;
281
+ }
282
+ supportsMessage(messageId) {
283
+ return this.messageDefinitions.has(messageId);
284
+ }
285
+ }
286
+ const MESSAGE_DEFINITIONS = [
12
287
  {
13
288
  id: 17000,
14
289
  name: 'TEST_TYPES',
@@ -63,58 +338,76 @@ const TEST_MESSAGE_DEFINITIONS = [
63
338
  type: 'double',
64
339
  },
65
340
  {
66
- name: 'u8_array',
341
+ name: 'u8Array',
67
342
  type: 'uint8_t',
68
343
  arrayLength: 3,
69
344
  },
70
345
  {
71
- name: 'u16_array',
346
+ name: 'u16Array',
72
347
  type: 'uint16_t',
73
348
  arrayLength: 3,
74
349
  },
75
350
  {
76
- name: 'u32_array',
351
+ name: 'u32Array',
77
352
  type: 'uint32_t',
78
353
  arrayLength: 3,
79
354
  },
80
355
  {
81
- name: 'u64_array',
356
+ name: 'u64Array',
82
357
  type: 'uint64_t',
83
358
  arrayLength: 3,
84
359
  },
85
360
  {
86
- name: 's8_array',
361
+ name: 's8Array',
87
362
  type: 'int8_t',
88
363
  arrayLength: 3,
89
364
  },
90
365
  {
91
- name: 's16_array',
366
+ name: 's16Array',
92
367
  type: 'int16_t',
93
368
  arrayLength: 3,
94
369
  },
95
370
  {
96
- name: 's32_array',
371
+ name: 's32Array',
97
372
  type: 'int32_t',
98
373
  arrayLength: 3,
99
374
  },
100
375
  {
101
- name: 's64_array',
376
+ name: 's64Array',
102
377
  type: 'int64_t',
103
378
  arrayLength: 3,
104
379
  },
105
380
  {
106
- name: 'f_array',
381
+ name: 'fArray',
107
382
  type: 'float',
108
383
  arrayLength: 3,
109
384
  },
110
385
  {
111
- name: 'd_array',
386
+ name: 'dArray',
112
387
  type: 'double',
113
388
  arrayLength: 3,
114
389
  },
115
390
  ]
116
391
  },
117
392
  ];
393
+ class TestParser extends DialectParser {
394
+ constructor() {
395
+ super('test');
396
+ this.loadDefinitionsSync();
397
+ }
398
+ async loadDefinitions() {
399
+ this.messageDefinitions.clear();
400
+ for (const def of MESSAGE_DEFINITIONS) {
401
+ this.messageDefinitions.set(def.id, def);
402
+ }
403
+ }
404
+ loadDefinitionsSync() {
405
+ this.messageDefinitions.clear();
406
+ for (const def of MESSAGE_DEFINITIONS) {
407
+ this.messageDefinitions.set(def.id, def);
408
+ }
409
+ }
410
+ }
118
411
 
119
- export { TEST_MESSAGE_DEFINITIONS, isTestTypes };
412
+ export { TestParser, isTestTypes };
120
413
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/generated/dialects/test/messages.ts","../../../src/generated/dialects/test/decoder.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/generated/dialects/test/messages.ts","../../../src/generated/dialects/test/decoder.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aircast-4g/mavlink",
3
- "version": "1.1.5",
3
+ "version": "1.1.7",
4
4
  "description": "TypeScript type generator for MAVLink dialects",
5
5
  "main": "dist/mavlink.cjs.js",
6
6
  "module": "dist/mavlink.esm.js",