@aircast-4g/mavlink 1.1.2 → 1.1.5

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 (95) hide show
  1. package/dist/dialects/ardupilotmega/index.d.ts +6373 -5
  2. package/dist/dialects/ardupilotmega/index.js +17515 -0
  3. package/dist/dialects/ardupilotmega/index.js.map +1 -0
  4. package/dist/dialects/common/index.d.ts +4817 -5
  5. package/dist/dialects/common/index.js +13420 -0
  6. package/dist/dialects/common/index.js.map +1 -0
  7. package/dist/dialects/minimal/index.d.ts +295 -5
  8. package/dist/dialects/minimal/index.js +570 -0
  9. package/dist/dialects/minimal/index.js.map +1 -0
  10. package/dist/dialects/paparazzi/index.d.ts +4851 -0
  11. package/dist/dialects/paparazzi/index.js +13518 -0
  12. package/dist/dialects/paparazzi/index.js.map +1 -0
  13. package/dist/dialects/python_array_test/index.d.ts +4886 -0
  14. package/dist/dialects/python_array_test/index.js +13665 -0
  15. package/dist/dialects/python_array_test/index.js.map +1 -0
  16. package/dist/dialects/standard/index.d.ts +301 -0
  17. package/dist/dialects/standard/index.js +578 -0
  18. package/dist/dialects/standard/index.js.map +1 -0
  19. package/dist/dialects/test/index.d.ts +53 -0
  20. package/dist/dialects/test/index.js +120 -0
  21. package/dist/dialects/test/index.js.map +1 -0
  22. package/dist/index.d.ts +345 -8
  23. package/dist/{index.js → mavlink.cjs.js} +8 -18
  24. package/dist/mavlink.cjs.js.map +1 -0
  25. package/dist/mavlink.esm.js +11 -0
  26. package/dist/mavlink.esm.js.map +1 -0
  27. package/dist/mavlink.iife.js +17 -0
  28. package/dist/mavlink.iife.js.map +1 -0
  29. package/package.json +52 -18
  30. package/dist/cli.d.ts +0 -3
  31. package/dist/cli.d.ts.map +0 -1
  32. package/dist/cli.js +0 -174
  33. package/dist/cli.js.map +0 -1
  34. package/dist/dialects/ardupilotmega/decoder.js +0 -11930
  35. package/dist/dialects/ardupilotmega/enums.d.ts +0 -4631
  36. package/dist/dialects/ardupilotmega/messages.d.ts +0 -8088
  37. package/dist/dialects/ardupilotmega/types.d.ts +0 -2833
  38. package/dist/dialects/common/decoder.js +0 -9098
  39. package/dist/dialects/common/enums.d.ts +0 -3632
  40. package/dist/dialects/common/messages.d.ts +0 -6114
  41. package/dist/dialects/common/types.d.ts +0 -2159
  42. package/dist/dialects/minimal/decoder.js +0 -67
  43. package/dist/dialects/minimal/enums.d.ts +0 -494
  44. package/dist/dialects/minimal/messages.d.ts +0 -62
  45. package/dist/dialects/minimal/types.d.ts +0 -272
  46. package/dist/generator/batch-processor.d.ts +0 -17
  47. package/dist/generator/batch-processor.d.ts.map +0 -1
  48. package/dist/generator/batch-processor.js +0 -141
  49. package/dist/generator/batch-processor.js.map +0 -1
  50. package/dist/generator/generator.d.ts +0 -16
  51. package/dist/generator/generator.d.ts.map +0 -1
  52. package/dist/generator/generator.js +0 -136
  53. package/dist/generator/generator.js.map +0 -1
  54. package/dist/generator/template-engine.d.ts +0 -14
  55. package/dist/generator/template-engine.d.ts.map +0 -1
  56. package/dist/generator/template-engine.js +0 -270
  57. package/dist/generator/template-engine.js.map +0 -1
  58. package/dist/generator/type-converter.d.ts +0 -15
  59. package/dist/generator/type-converter.d.ts.map +0 -1
  60. package/dist/generator/type-converter.js +0 -179
  61. package/dist/generator/type-converter.js.map +0 -1
  62. package/dist/generator/xml-parser.d.ts +0 -13
  63. package/dist/generator/xml-parser.d.ts.map +0 -1
  64. package/dist/generator/xml-parser.js +0 -170
  65. package/dist/generator/xml-parser.js.map +0 -1
  66. package/dist/index.d.ts.map +0 -1
  67. package/dist/index.js.map +0 -1
  68. package/dist/parser/crc.d.ts +0 -7
  69. package/dist/parser/crc.d.ts.map +0 -1
  70. package/dist/parser/crc.js +0 -182
  71. package/dist/parser/crc.js.map +0 -1
  72. package/dist/parser/frame-parser.d.ts +0 -15
  73. package/dist/parser/frame-parser.d.ts.map +0 -1
  74. package/dist/parser/frame-parser.js +0 -82
  75. package/dist/parser/frame-parser.js.map +0 -1
  76. package/dist/parser/index.d.ts +0 -6
  77. package/dist/parser/index.d.ts.map +0 -1
  78. package/dist/parser/index.js +0 -28
  79. package/dist/parser/index.js.map +0 -1
  80. package/dist/parser/mavlink-parser.d.ts +0 -35
  81. package/dist/parser/mavlink-parser.d.ts.map +0 -1
  82. package/dist/parser/mavlink-parser.js +0 -215
  83. package/dist/parser/mavlink-parser.js.map +0 -1
  84. package/dist/parser/message-decoder.d.ts +0 -47
  85. package/dist/parser/message-decoder.d.ts.map +0 -1
  86. package/dist/parser/message-decoder.js +0 -288
  87. package/dist/parser/message-decoder.js.map +0 -1
  88. package/dist/parser/types.d.ts +0 -60
  89. package/dist/parser/types.d.ts.map +0 -1
  90. package/dist/parser/types.js +0 -13
  91. package/dist/parser/types.js.map +0 -1
  92. package/dist/types.d.ts +0 -110
  93. package/dist/types.d.ts.map +0 -1
  94. package/dist/types.js +0 -3
  95. package/dist/types.js.map +0 -1
@@ -1,170 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.XMLParser = void 0;
7
- const xml2js_1 = require("xml2js");
8
- const node_fetch_1 = __importDefault(require("node-fetch"));
9
- const fs_1 = require("fs");
10
- class XMLParser {
11
- constructor() {
12
- this.processedUrls = new Set();
13
- }
14
- async parseFromURL(url) {
15
- const response = await (0, node_fetch_1.default)(url);
16
- if (!response.ok) {
17
- throw new Error(`Failed to fetch ${url}: ${response.statusText}`);
18
- }
19
- const xmlContent = await response.text();
20
- return this.parseXML(xmlContent, url);
21
- }
22
- async parseFromFile(filePath) {
23
- const xmlContent = await fs_1.promises.readFile(filePath, 'utf-8');
24
- return this.parseXML(xmlContent, filePath);
25
- }
26
- async parseXML(xmlContent, source) {
27
- return new Promise((resolve, reject) => {
28
- (0, xml2js_1.parseString)(xmlContent, { explicitArray: false }, async (err, result) => {
29
- if (err) {
30
- reject(new Error(`Failed to parse XML from ${source}: ${err.message}`));
31
- return;
32
- }
33
- try {
34
- const definition = await this.processDefinition(result.mavlink, source);
35
- resolve(definition);
36
- }
37
- catch (error) {
38
- reject(error);
39
- }
40
- });
41
- });
42
- }
43
- async processDefinition(mavlinkData, source) {
44
- const definition = {
45
- version: mavlinkData.version,
46
- dialect: mavlinkData.dialect ? parseInt(mavlinkData.dialect) : undefined,
47
- includes: [],
48
- enums: [],
49
- messages: []
50
- };
51
- // Process includes
52
- if (mavlinkData.include) {
53
- const includes = Array.isArray(mavlinkData.include) ? mavlinkData.include : [mavlinkData.include];
54
- for (const include of includes) {
55
- const includeUrl = this.resolveIncludeUrl(include, source);
56
- if (!this.processedUrls.has(includeUrl)) {
57
- this.processedUrls.add(includeUrl);
58
- try {
59
- const includedDefinition = await this.parseFromURL(includeUrl);
60
- // Merge included definitions
61
- if (includedDefinition.enums) {
62
- definition.enums.push(...includedDefinition.enums);
63
- }
64
- if (includedDefinition.messages) {
65
- definition.messages.push(...includedDefinition.messages);
66
- }
67
- }
68
- catch (error) {
69
- console.warn(`Warning: Failed to process include ${includeUrl}:`, error);
70
- }
71
- }
72
- }
73
- }
74
- // Process enums
75
- if (mavlinkData.enums && mavlinkData.enums.enum) {
76
- const enums = Array.isArray(mavlinkData.enums.enum) ? mavlinkData.enums.enum : [mavlinkData.enums.enum];
77
- for (const enumData of enums) {
78
- const enumDef = this.processEnum(enumData);
79
- if (enumDef) {
80
- definition.enums.push(enumDef);
81
- }
82
- }
83
- }
84
- // Process messages
85
- if (mavlinkData.messages && mavlinkData.messages.message) {
86
- const messages = Array.isArray(mavlinkData.messages.message) ? mavlinkData.messages.message : [mavlinkData.messages.message];
87
- for (const messageData of messages) {
88
- const messageDef = this.processMessage(messageData);
89
- if (messageDef) {
90
- definition.messages.push(messageDef);
91
- }
92
- }
93
- }
94
- return definition;
95
- }
96
- resolveIncludeUrl(include, source) {
97
- if (include.startsWith('http')) {
98
- return include;
99
- }
100
- // If source is a URL, resolve relative to it
101
- if (source.startsWith('http')) {
102
- const url = new URL(source);
103
- url.pathname = url.pathname.replace(/[^/]*$/, include);
104
- return url.toString();
105
- }
106
- // Otherwise, assume it's a file path
107
- return include;
108
- }
109
- processEnum(enumData) {
110
- if (!enumData.$ || !enumData.$.name) {
111
- return null;
112
- }
113
- const enumDef = {
114
- name: enumData.$.name,
115
- description: enumData.description || '',
116
- bitmask: enumData.$.bitmask === 'true',
117
- entries: []
118
- };
119
- if (enumData.entry) {
120
- const entries = Array.isArray(enumData.entry) ? enumData.entry : [enumData.entry];
121
- for (const entry of entries) {
122
- if (entry.$ && entry.$.name && entry.$.value !== undefined) {
123
- enumDef.entries.push({
124
- name: entry.$.name,
125
- value: entry.$.value,
126
- description: entry.description || entry._ || ''
127
- });
128
- }
129
- }
130
- }
131
- return enumDef;
132
- }
133
- processMessage(messageData) {
134
- if (!messageData.$ || !messageData.$.name || !messageData.$.id) {
135
- return null;
136
- }
137
- const messageDef = {
138
- id: parseInt(messageData.$.id),
139
- name: messageData.$.name,
140
- description: messageData.description || '',
141
- fields: []
142
- };
143
- if (messageData.field) {
144
- const fields = Array.isArray(messageData.field) ? messageData.field : [messageData.field];
145
- let inExtensions = false;
146
- for (const field of fields) {
147
- if (typeof field === 'string' && field === 'extensions') {
148
- inExtensions = true;
149
- continue;
150
- }
151
- if (typeof field === 'object' && field.$ && field.$.name && field.$.type) {
152
- const fieldDef = {
153
- name: field.$.name,
154
- type: field.$.type,
155
- enum: field.$.enum,
156
- description: field.description || field._ || '',
157
- extension: inExtensions
158
- };
159
- messageDef.fields.push(fieldDef);
160
- }
161
- }
162
- }
163
- return messageDef;
164
- }
165
- reset() {
166
- this.processedUrls.clear();
167
- }
168
- }
169
- exports.XMLParser = XMLParser;
170
- //# sourceMappingURL=xml-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"xml-parser.js","sourceRoot":"","sources":["../../src/generator/xml-parser.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,0CAA0C;;;;;;;;;;;;;;;;;AAE1C,oBAAoB;AACpB,mDAA+E;AAAtE,6GAAA,gBAAgB,OAAA;AAAE,iHAAA,oBAAoB,OAAA;AAC/C,+DAA6D;AAApD,iHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,uGAAA,SAAS,OAAA;AAClB,6DAA2D;AAAlD,+GAAA,aAAa,OAAA;AACtB,+DAA6D;AAApD,iHAAA,cAAc,OAAA;AAEvB,iBAAiB;AACjB,2CAAyB;AAEzB,aAAa;AACb,0CAAwB;AAExB,6EAA6E;AAC7E,6FAA6F"}
@@ -1,7 +0,0 @@
1
- export declare class CRCCalculator {
2
- private static readonly CRC_INIT;
3
- static calculate(data: Uint8Array, extra?: number): number;
4
- private static crcAccumulate;
5
- static getCRCExtra(messageId: number): number;
6
- }
7
- //# sourceMappingURL=crc.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crc.d.ts","sourceRoot":"","sources":["../../src/parser/crc.ts"],"names":[],"mappings":"AACA,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAU;WAE5B,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,GAAE,MAAU,GAAG,MAAM;IAcpE,OAAO,CAAC,MAAM,CAAC,aAAa;WAOd,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;CA8JrD"}
@@ -1,182 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CRCCalculator = void 0;
4
- // CRC calculation for MAVLink messages
5
- class CRCCalculator {
6
- static calculate(data, extra = 0) {
7
- let crc = CRCCalculator.CRC_INIT;
8
- for (let i = 0; i < data.length; i++) {
9
- crc = CRCCalculator.crcAccumulate(data[i], crc);
10
- }
11
- if (extra !== 0) {
12
- crc = CRCCalculator.crcAccumulate(extra, crc);
13
- }
14
- return crc;
15
- }
16
- static crcAccumulate(byte, crc) {
17
- const tmp = byte ^ (crc & 0xFF);
18
- const tmp2 = (tmp ^ (tmp << 4)) & 0xFF;
19
- return ((crc >> 8) ^ (tmp2 << 8) ^ (tmp2 << 3) ^ (tmp2 >> 4)) & 0xFFFF;
20
- }
21
- // CRC extra values for message validation (subset of common messages)
22
- static getCRCExtra(messageId) {
23
- const crcExtras = {
24
- 0: 50, // HEARTBEAT
25
- 1: 124, // SYS_STATUS
26
- 2: 137, // SYSTEM_TIME
27
- 4: 237, // PING
28
- 5: 217, // CHANGE_OPERATOR_CONTROL
29
- 6: 104, // CHANGE_OPERATOR_CONTROL_ACK
30
- 7: 119, // AUTH_KEY
31
- 11: 89, // SET_MODE
32
- 20: 214, // PARAM_REQUEST_READ
33
- 21: 159, // PARAM_REQUEST_LIST
34
- 22: 220, // PARAM_VALUE
35
- 23: 168, // PARAM_SET
36
- 24: 24, // GPS_RAW_INT
37
- 25: 23, // GPS_STATUS
38
- 26: 170, // SCALED_IMU
39
- 27: 144, // RAW_IMU
40
- 28: 67, // RAW_PRESSURE
41
- 29: 115, // SCALED_PRESSURE
42
- 30: 39, // ATTITUDE
43
- 31: 246, // ATTITUDE_QUATERNION
44
- 32: 185, // LOCAL_POSITION_NED
45
- 33: 104, // GLOBAL_POSITION_INT
46
- 34: 237, // RC_CHANNELS_SCALED
47
- 35: 244, // RC_CHANNELS_RAW
48
- 36: 222, // SERVO_OUTPUT_RAW
49
- 37: 212, // MISSION_REQUEST_PARTIAL_LIST
50
- 38: 9, // MISSION_WRITE_PARTIAL_LIST
51
- 39: 254, // MISSION_ITEM
52
- 40: 230, // MISSION_REQUEST
53
- 41: 28, // MISSION_SET_CURRENT
54
- 42: 28, // MISSION_CURRENT
55
- 43: 132, // MISSION_REQUEST_LIST
56
- 44: 221, // MISSION_COUNT
57
- 45: 232, // MISSION_CLEAR_ALL
58
- 46: 11, // MISSION_ITEM_REACHED
59
- 47: 153, // MISSION_ACK
60
- 48: 41, // SET_GPS_GLOBAL_ORIGIN
61
- 49: 39, // GPS_GLOBAL_ORIGIN
62
- 50: 78, // PARAM_MAP_RC
63
- 51: 196, // MISSION_REQUEST_INT
64
- 54: 15, // SAFETY_SET_ALLOWED_AREA
65
- 55: 3, // SAFETY_ALLOWED_AREA
66
- 61: 167, // ATTITUDE_QUATERNION_COV
67
- 62: 183, // NAV_CONTROLLER_OUTPUT
68
- 63: 51, // GLOBAL_POSITION_INT_COV
69
- 64: 59, // LOCAL_POSITION_NED_COV
70
- 65: 118, // RC_CHANNELS
71
- 66: 148, // REQUEST_DATA_STREAM
72
- 67: 21, // DATA_STREAM
73
- 69: 243, // MANUAL_CONTROL
74
- 70: 124, // RC_CHANNELS_OVERRIDE
75
- 73: 38, // MISSION_ITEM_INT
76
- 74: 20, // VFR_HUD
77
- 75: 158, // COMMAND_INT
78
- 76: 152, // COMMAND_LONG
79
- 77: 143, // COMMAND_ACK
80
- 81: 106, // MANUAL_SETPOINT
81
- 82: 49, // SET_ATTITUDE_TARGET
82
- 83: 22, // ATTITUDE_TARGET
83
- 84: 143, // SET_POSITION_TARGET_LOCAL_NED
84
- 85: 140, // POSITION_TARGET_LOCAL_NED
85
- 86: 5, // SET_POSITION_TARGET_GLOBAL_INT
86
- 87: 150, // POSITION_TARGET_GLOBAL_INT
87
- 89: 231, // LOCAL_POSITION_NED_SYSTEM_GLOBAL_OFFSET
88
- 90: 183, // HIL_STATE
89
- 91: 63, // HIL_CONTROLS
90
- 92: 54, // HIL_RC_INPUTS_RAW
91
- 100: 175, // OPTICAL_FLOW
92
- 101: 102, // GLOBAL_VISION_POSITION_ESTIMATE
93
- 102: 158, // VISION_POSITION_ESTIMATE
94
- 103: 208, // VISION_SPEED_ESTIMATE
95
- 104: 56, // VICON_POSITION_ESTIMATE
96
- 105: 93, // HIGHRES_IMU
97
- 106: 138, // OPTICAL_FLOW_RAD
98
- 107: 108, // HIL_SENSOR
99
- 108: 32, // SIM_STATE
100
- 109: 185, // RADIO_STATUS
101
- 110: 84, // FILE_TRANSFER_PROTOCOL
102
- 111: 34, // TIMESYNC
103
- 112: 174, // CAMERA_TRIGGER
104
- 113: 124, // HIL_GPS
105
- 114: 237, // HIL_OPTICAL_FLOW
106
- 115: 4, // HIL_STATE_QUATERNION
107
- 116: 76, // SCALED_IMU2
108
- 117: 116, // LOG_REQUEST_LIST
109
- 118: 255, // LOG_ENTRY
110
- 119: 116, // LOG_REQUEST_DATA
111
- 120: 134, // LOG_DATA
112
- 121: 237, // LOG_ERASE
113
- 122: 203, // LOG_REQUEST_END
114
- 123: 250, // GPS_INJECT_DATA
115
- 124: 87, // GPS2_RAW
116
- 125: 203, // POWER_STATUS
117
- 126: 79, // SERIAL_CONTROL
118
- 127: 226, // GPS_RTK
119
- 128: 226, // GPS2_RTK
120
- 129: 46, // SCALED_IMU3
121
- 130: 29, // DATA_TRANSMISSION_HANDSHAKE
122
- 131: 223, // ENCAPSULATED_DATA
123
- 132: 85, // DISTANCE_SENSOR
124
- 133: 6, // TERRAIN_REQUEST
125
- 134: 229, // TERRAIN_DATA
126
- 135: 203, // TERRAIN_CHECK
127
- 136: 1, // TERRAIN_REPORT
128
- 137: 195, // SCALED_PRESSURE2
129
- 138: 109, // ATT_POS_MOCAP
130
- 139: 168, // SET_ACTUATOR_CONTROL_TARGET
131
- 140: 181, // ACTUATOR_CONTROL_TARGET
132
- 141: 47, // ALTITUDE
133
- 142: 72, // RESOURCE_REQUEST
134
- 143: 196, // SCALED_PRESSURE3
135
- 144: 127, // FOLLOW_TARGET
136
- 146: 103, // CONTROL_SYSTEM_STATE
137
- 147: 154, // BATTERY_STATUS
138
- 148: 178, // AUTOPILOT_VERSION
139
- 149: 200, // LANDING_TARGET
140
- 230: 163, // ESTIMATOR_STATUS
141
- 231: 105, // WIND_COV
142
- 232: 151, // GPS_INPUT
143
- 233: 35, // GPS_RTCM_DATA
144
- 234: 150, // HIGH_LATENCY
145
- 235: 179, // HIGH_LATENCY2
146
- 241: 90, // VIBRATION
147
- 242: 104, // HOME_POSITION
148
- 243: 85, // SET_HOME_POSITION
149
- 244: 95, // MESSAGE_INTERVAL
150
- 245: 130, // EXTENDED_SYS_STATE
151
- 246: 184, // ADSB_VEHICLE
152
- 247: 81, // COLLISION
153
- 248: 8, // V2_EXTENSION
154
- 249: 204, // MEMORY_VECT
155
- 250: 49, // DEBUG_VECT
156
- 251: 170, // NAMED_VALUE_FLOAT
157
- 252: 44, // NAMED_VALUE_INT
158
- 253: 83, // STATUSTEXT
159
- 254: 46, // DEBUG
160
- 256: 71, // SETUP_SIGNING
161
- 257: 131, // BUTTON_CHANGE
162
- 258: 187, // PLAY_TUNE
163
- 259: 92, // CAMERA_INFORMATION
164
- 260: 146, // CAMERA_SETTINGS
165
- 261: 179, // STORAGE_INFORMATION
166
- 262: 12, // CAMERA_CAPTURE_STATUS
167
- 263: 133, // CAMERA_IMAGE_CAPTURED
168
- 264: 49, // FLIGHT_INFORMATION
169
- 265: 26, // MOUNT_ORIENTATION
170
- 266: 193, // LOGGING_DATA
171
- 267: 35, // LOGGING_DATA_ACKED
172
- 268: 84, // LOGGING_ACK
173
- 269: 109, // VIDEO_STREAM_INFORMATION
174
- 270: 59, // VIDEO_STREAM_STATUS
175
- 299: 19 // WIFI_CONFIG_AP
176
- };
177
- return crcExtras[messageId] || 0;
178
- }
179
- }
180
- exports.CRCCalculator = CRCCalculator;
181
- CRCCalculator.CRC_INIT = 0xFFFF;
182
- //# sourceMappingURL=crc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crc.js","sourceRoot":"","sources":["../../src/parser/crc.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { MAVLinkFrame } from './types';
2
- export declare class MAVLinkFrameParser {
3
- private static readonly MAVLINK_V1_MAGIC;
4
- private static readonly MAVLINK_V2_MAGIC;
5
- private static readonly MAVLINK_V1_HEADER_SIZE;
6
- private static readonly MAVLINK_V2_HEADER_SIZE;
7
- private static readonly MAVLINK_CHECKSUM_SIZE;
8
- private static readonly MAVLINK_V2_SIGNATURE_SIZE;
9
- parseFrame(data: Uint8Array): MAVLinkFrame & {
10
- protocol_version: 1 | 2;
11
- };
12
- private parseV1Frame;
13
- private parseV2Frame;
14
- }
15
- //# sourceMappingURL=frame-parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frame-parser.d.ts","sourceRoot":"","sources":["../../src/parser/frame-parser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAe,MAAM,SAAS,CAAC;AAEpD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAK;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAK;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAM;IAEhD,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG;QAAE,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAA;KAAE;IAoC/E,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,YAAY;CA6BrB"}
@@ -1,82 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MAVLinkFrameParser = void 0;
4
- // MAVLink frame parser for protocol v1 and v2
5
- const types_1 = require("./types");
6
- class MAVLinkFrameParser {
7
- parseFrame(data) {
8
- if (data.length < 8) {
9
- throw new types_1.ParserError('Insufficient data for MAVLink frame');
10
- }
11
- const magic = data[0];
12
- const isV2 = magic === MAVLinkFrameParser.MAVLINK_V2_MAGIC;
13
- const isV1 = magic === MAVLinkFrameParser.MAVLINK_V1_MAGIC;
14
- if (!isV1 && !isV2) {
15
- throw new types_1.ParserError(`Invalid magic byte: 0x${magic.toString(16)}`);
16
- }
17
- const headerSize = isV2 ? MAVLinkFrameParser.MAVLINK_V2_HEADER_SIZE : MAVLinkFrameParser.MAVLINK_V1_HEADER_SIZE;
18
- if (data.length < headerSize) {
19
- throw new types_1.ParserError('Insufficient data for header');
20
- }
21
- const payloadLength = data[1];
22
- let totalSize = headerSize + payloadLength + MAVLinkFrameParser.MAVLINK_CHECKSUM_SIZE;
23
- if (isV2) {
24
- const compatibleFlags = data[3];
25
- if (compatibleFlags & 0x01) {
26
- totalSize += MAVLinkFrameParser.MAVLINK_V2_SIGNATURE_SIZE;
27
- }
28
- }
29
- if (data.length < totalSize) {
30
- throw new types_1.ParserError('Insufficient data for complete frame');
31
- }
32
- return isV2 ? this.parseV2Frame(data, payloadLength) : this.parseV1Frame(data, payloadLength);
33
- }
34
- parseV1Frame(data, payloadLength) {
35
- const payloadStart = MAVLinkFrameParser.MAVLINK_V1_HEADER_SIZE;
36
- const checksumStart = payloadStart + payloadLength;
37
- return {
38
- protocol_version: 1,
39
- magic: data[0],
40
- length: payloadLength,
41
- sequence: data[2],
42
- system_id: data[3],
43
- component_id: data[4],
44
- message_id: data[5],
45
- payload: data.slice(payloadStart, checksumStart),
46
- checksum: (data[checksumStart + 1] << 8) | data[checksumStart]
47
- };
48
- }
49
- parseV2Frame(data, payloadLength) {
50
- const payloadStart = MAVLinkFrameParser.MAVLINK_V2_HEADER_SIZE;
51
- const checksumStart = payloadStart + payloadLength;
52
- const messageId = data[7] | (data[8] << 8) | (data[9] << 16);
53
- const compatibleFlags = data[3];
54
- const hasSignature = (compatibleFlags & 0x01) !== 0;
55
- const frame = {
56
- protocol_version: 2,
57
- magic: data[0],
58
- length: payloadLength,
59
- incompatible_flags: data[2],
60
- compatible_flags: compatibleFlags,
61
- sequence: data[4],
62
- system_id: data[5],
63
- component_id: data[6],
64
- message_id: messageId,
65
- payload: data.slice(payloadStart, checksumStart),
66
- checksum: (data[checksumStart + 1] << 8) | data[checksumStart]
67
- };
68
- if (hasSignature) {
69
- const signatureStart = checksumStart + MAVLinkFrameParser.MAVLINK_CHECKSUM_SIZE;
70
- frame.signature = data.slice(signatureStart, signatureStart + MAVLinkFrameParser.MAVLINK_V2_SIGNATURE_SIZE);
71
- }
72
- return frame;
73
- }
74
- }
75
- exports.MAVLinkFrameParser = MAVLinkFrameParser;
76
- MAVLinkFrameParser.MAVLINK_V1_MAGIC = 0xFE;
77
- MAVLinkFrameParser.MAVLINK_V2_MAGIC = 0xFD;
78
- MAVLinkFrameParser.MAVLINK_V1_HEADER_SIZE = 6;
79
- MAVLinkFrameParser.MAVLINK_V2_HEADER_SIZE = 10;
80
- MAVLinkFrameParser.MAVLINK_CHECKSUM_SIZE = 2;
81
- MAVLinkFrameParser.MAVLINK_V2_SIGNATURE_SIZE = 13;
82
- //# sourceMappingURL=frame-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frame-parser.js","sourceRoot":"","sources":["../../src/parser/frame-parser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export { MAVLinkParser } from './mavlink-parser';
2
- export { MAVLinkFrameParser } from './frame-parser';
3
- export { MAVLinkMessageDecoder } from './message-decoder';
4
- export { CRCCalculator } from './crc';
5
- export * from './types';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,cAAc,SAAS,CAAC"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.CRCCalculator = exports.MAVLinkMessageDecoder = exports.MAVLinkFrameParser = exports.MAVLinkParser = void 0;
18
- // MAVLink Parser exports
19
- var mavlink_parser_1 = require("./mavlink-parser");
20
- Object.defineProperty(exports, "MAVLinkParser", { enumerable: true, get: function () { return mavlink_parser_1.MAVLinkParser; } });
21
- var frame_parser_1 = require("./frame-parser");
22
- Object.defineProperty(exports, "MAVLinkFrameParser", { enumerable: true, get: function () { return frame_parser_1.MAVLinkFrameParser; } });
23
- var message_decoder_1 = require("./message-decoder");
24
- Object.defineProperty(exports, "MAVLinkMessageDecoder", { enumerable: true, get: function () { return message_decoder_1.MAVLinkMessageDecoder; } });
25
- var crc_1 = require("./crc");
26
- Object.defineProperty(exports, "CRCCalculator", { enumerable: true, get: function () { return crc_1.CRCCalculator; } });
27
- __exportStar(require("./types"), exports);
28
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yBAAyB;AACzB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,qDAA0D;AAAjD,wHAAA,qBAAqB,OAAA;AAC9B,6BAAsC;AAA7B,oGAAA,aAAa,OAAA;AACtB,0CAAwB"}
@@ -1,35 +0,0 @@
1
- import { ParsedMAVLinkMessage, ParserOptions } from './types';
2
- export declare class MAVLinkParser {
3
- private frameParser;
4
- private messageDecoder;
5
- private buffer;
6
- private bufferLength;
7
- private options;
8
- constructor(options?: ParserOptions);
9
- /**
10
- * Parse raw bytes from data channel and return JSON messages
11
- * @param data Raw bytes from data channel (WebRTC, WebSocket, etc.)
12
- * @returns Array of parsed MAVLink messages in JSON format
13
- */
14
- parseBytes(data: Uint8Array): ParsedMAVLinkMessage[];
15
- /**
16
- * Parse a single raw message (for testing or when you have complete frames)
17
- */
18
- parseMessage(data: Uint8Array): ParsedMAVLinkMessage | null;
19
- private appendToBuffer;
20
- private tryParseFrame;
21
- private getFrameLength;
22
- private validateFrameCRC;
23
- /**
24
- * Reset parser state (useful when connection is reset)
25
- */
26
- reset(): void;
27
- /**
28
- * Get parser statistics
29
- */
30
- getStats(): {
31
- bufferSize: number;
32
- bufferUsed: number;
33
- };
34
- }
35
- //# sourceMappingURL=mavlink-parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mavlink-parser.d.ts","sourceRoot":"","sources":["../../src/parser/mavlink-parser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oBAAoB,EAAe,aAAa,EAAE,MAAM,SAAS,CAAC;AAE3E,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,OAAO,CAAgB;gBAEnB,OAAO,GAAE,aAAkB;IAavC;;;;OAIG;IACI,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,EAAE;IA4D3D;;OAEG;IACI,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,GAAG,IAAI;IAmBlE,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,aAAa;IAuCrB,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,gBAAgB;IAyCxB;;OAEG;IACI,KAAK,IAAI,IAAI;IAKpB;;OAEG;IACI,QAAQ,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;CAM9D"}