@foxglove/schemas 0.1.2 → 0.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 (33) hide show
  1. package/dist/cjs/schemas/typescript/PackedElementField.d.ts +1 -1
  2. package/dist/cjs/schemas/typescript/PackedElementField.d.ts.map +1 -1
  3. package/dist/cjs/src/generateRos.d.ts +4 -1
  4. package/dist/cjs/src/generateRos.d.ts.map +1 -1
  5. package/dist/cjs/src/generateRos.js +5 -3
  6. package/dist/cjs/src/generateRos.js.map +1 -1
  7. package/dist/cjs/src/generateRos.test.js +437 -1
  8. package/dist/cjs/src/generateRos.test.js.map +1 -1
  9. package/dist/cjs/src/schemas.d.ts +0 -1
  10. package/dist/cjs/src/schemas.d.ts.map +1 -1
  11. package/dist/cjs/src/schemas.js +4 -4
  12. package/dist/cjs/src/schemas.js.map +1 -1
  13. package/dist/esm/schemas/typescript/PackedElementField.d.ts +1 -1
  14. package/dist/esm/schemas/typescript/PackedElementField.d.ts.map +1 -1
  15. package/dist/esm/src/generateRos.d.ts +4 -1
  16. package/dist/esm/src/generateRos.d.ts.map +1 -1
  17. package/dist/esm/src/generateRos.js +5 -3
  18. package/dist/esm/src/generateRos.js.map +1 -1
  19. package/dist/esm/src/generateRos.test.js +437 -1
  20. package/dist/esm/src/generateRos.test.js.map +1 -1
  21. package/dist/esm/src/schemas.d.ts +0 -1
  22. package/dist/esm/src/schemas.d.ts.map +1 -1
  23. package/dist/esm/src/schemas.js +2 -2
  24. package/dist/esm/src/schemas.js.map +1 -1
  25. package/package.json +1 -1
  26. package/schemas/jsonschema/Grid.json +1 -1
  27. package/schemas/jsonschema/PackedElementField.json +1 -1
  28. package/schemas/jsonschema/PointCloud.json +1 -1
  29. package/schemas/proto/foxglove/PackedElementField.proto +1 -1
  30. package/schemas/typescript/PackedElementField.ts +1 -1
  31. package/src/generateRos.test.ts +438 -1
  32. package/src/generateRos.ts +10 -4
  33. package/src/schemas.ts +2 -2
@@ -1,5 +1,5 @@
1
1
  import { NumericType } from "./NumericType";
2
- /** List of fields for every element in a byte array */
2
+ /** A field present within each element in a byte array of packed elements. */
3
3
  export declare type PackedElementField = {
4
4
  /** Name of the field */
5
5
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"PackedElementField.d.ts","sourceRoot":"","sources":["../../../../schemas/typescript/PackedElementField.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,uDAAuD;AACvD,oBAAY,kBAAkB,GAAG;IAC/B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IAEb,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IAEf,qFAAqF;IACrF,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"PackedElementField.d.ts","sourceRoot":"","sources":["../../../../schemas/typescript/PackedElementField.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,8EAA8E;AAC9E,oBAAY,kBAAkB,GAAG;IAC/B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IAEb,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IAEf,qFAAqF;IACrF,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC"}
@@ -6,7 +6,10 @@ declare type RosMsgFieldWithDescription = RosMsgField & {
6
6
  declare type RosMsgDefinitionWithDescription = {
7
7
  originalName: string;
8
8
  description?: string;
9
- qualifiedRosName: string;
9
+ /** The name of this message type as used in .msg files (foo_msgs/Bar) */
10
+ rosMsgInterfaceName: string;
11
+ /** The name used to refer to this message type in ROS (foo_msgs/Bar for ROS 1, foo_msgs/msg/Bar for ROS 2) */
12
+ rosFullInterfaceName: string;
10
13
  fields: RosMsgFieldWithDescription[];
11
14
  };
12
15
  export declare function generateRosMsg(def: RosMsgDefinitionWithDescription): string;
@@ -1 +1 @@
1
- {"version":3,"file":"generateRos.d.ts","sourceRoot":"","sources":["../../../src/generateRos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,qBAAqB,EAAqB,MAAM,SAAS,CAAC;AAEnE,aAAK,0BAA0B,GAAG,WAAW,GAAG;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AACF,aAAK,+BAA+B,GAAG;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACtC,CAAC;AAoBF,wBAAgB,cAAc,CAAC,GAAG,EAAE,+BAA+B,GAAG,MAAM,CAgC3E;AAmCD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,qBAAqB,EAC7B,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,GACpC,+BAA+B,CAmFjC;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,qBAAqB,EAC7B,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,GACpC,MAAM,CA2BR"}
1
+ {"version":3,"file":"generateRos.d.ts","sourceRoot":"","sources":["../../../src/generateRos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,qBAAqB,EAAqB,MAAM,SAAS,CAAC;AAEnE,aAAK,0BAA0B,GAAG,WAAW,GAAG;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AACF,aAAK,+BAA+B,GAAG;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,8GAA8G;IAC9G,oBAAoB,EAAE,MAAM,CAAC;IAC7B,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACtC,CAAC;AAoBF,wBAAgB,cAAc,CAAC,GAAG,EAAE,+BAA+B,GAAG,MAAM,CAgC3E;AAmCD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,qBAAqB,EAC7B,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,GACpC,+BAA+B,CAqFjC;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,qBAAqB,EAC7B,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,GACpC,MAAM,CA4BR"}
@@ -149,7 +149,8 @@ function generateRosMsgDefinition(schema, { rosVersion }) {
149
149
  }
150
150
  return {
151
151
  originalName: schema.name,
152
- qualifiedRosName: `foxglove_msgs/${schema.name}`,
152
+ rosMsgInterfaceName: `foxglove_msgs/${schema.name}`,
153
+ rosFullInterfaceName: rosVersion === 2 ? `foxglove_msgs/msg/${schema.name}` : `foxglove_msgs/${schema.name}`,
153
154
  fields,
154
155
  };
155
156
  }
@@ -169,13 +170,14 @@ function generateRosMsgMergedSchema(schema, { rosVersion }) {
169
170
  name = dep.name;
170
171
  source = generateRosMsg({
171
172
  originalName: dep.name,
172
- qualifiedRosName: dep.name,
173
+ rosMsgInterfaceName: dep.name,
174
+ rosFullInterfaceName: dep.name,
173
175
  fields: rosmsg_msgs_common_1.definitions[dep.name].definitions,
174
176
  });
175
177
  }
176
178
  else {
177
179
  const definition = generateRosMsgDefinition(dep.schema, { rosVersion });
178
- name = definition.qualifiedRosName;
180
+ name = definition.rosMsgInterfaceName;
179
181
  source = generateRosMsg(definition);
180
182
  }
181
183
  result += `================================================================================\nMSG: ${name}\n${source}`;
@@ -1 +1 @@
1
- {"version":3,"file":"generateRos.js","sourceRoot":"","sources":["../../../src/generateRos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateRos.js","sourceRoot":"","sources":["../../../src/generateRos.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,443 @@ const rosmsg_1 = require("@foxglove/rosmsg");
4
4
  const generateRos_1 = require("./generateRos");
5
5
  const schemas_1 = require("./schemas");
6
6
  const testFixtures_1 = require("./testFixtures");
7
- describe("generateRosMsgFiles", () => {
7
+ describe("generateRosMsgDefinition", () => {
8
+ it("generates msg definition description for ROS 1", () => {
9
+ expect((0, generateRos_1.generateRosMsgDefinition)(testFixtures_1.exampleMessageWithoutArrayOfBytes, { rosVersion: 1 }))
10
+ .toMatchInlineSnapshot(`
11
+ Object {
12
+ "fields": Array [
13
+ Object {
14
+ "arrayLength": undefined,
15
+ "description": "duration field",
16
+ "isArray": false,
17
+ "isComplex": false,
18
+ "name": "field_duration",
19
+ "type": "duration",
20
+ },
21
+ Object {
22
+ "arrayLength": undefined,
23
+ "description": "time field",
24
+ "isArray": false,
25
+ "isComplex": false,
26
+ "name": "field_time",
27
+ "type": "time",
28
+ },
29
+ Object {
30
+ "arrayLength": undefined,
31
+ "description": "boolean field",
32
+ "isArray": false,
33
+ "isComplex": false,
34
+ "name": "field_boolean",
35
+ "type": "bool",
36
+ },
37
+ Object {
38
+ "arrayLength": undefined,
39
+ "description": "bytes field",
40
+ "isArray": true,
41
+ "isComplex": false,
42
+ "name": "field_bytes",
43
+ "type": "uint8",
44
+ },
45
+ Object {
46
+ "arrayLength": undefined,
47
+ "description": "float64 field",
48
+ "isArray": false,
49
+ "isComplex": false,
50
+ "name": "field_float64",
51
+ "type": "float64",
52
+ },
53
+ Object {
54
+ "arrayLength": undefined,
55
+ "description": "uint32 field",
56
+ "isArray": false,
57
+ "isComplex": false,
58
+ "name": "field_uint32",
59
+ "type": "uint32",
60
+ },
61
+ Object {
62
+ "arrayLength": undefined,
63
+ "description": "string field",
64
+ "isArray": false,
65
+ "isComplex": false,
66
+ "name": "field_string",
67
+ "type": "string",
68
+ },
69
+ Object {
70
+ "arrayLength": undefined,
71
+ "description": "duration array field",
72
+ "isArray": true,
73
+ "isComplex": false,
74
+ "name": "field_duration_array",
75
+ "type": "duration",
76
+ },
77
+ Object {
78
+ "arrayLength": undefined,
79
+ "description": "time array field",
80
+ "isArray": true,
81
+ "isComplex": false,
82
+ "name": "field_time_array",
83
+ "type": "time",
84
+ },
85
+ Object {
86
+ "arrayLength": undefined,
87
+ "description": "boolean array field",
88
+ "isArray": true,
89
+ "isComplex": false,
90
+ "name": "field_boolean_array",
91
+ "type": "bool",
92
+ },
93
+ Object {
94
+ "arrayLength": undefined,
95
+ "description": "float64 array field",
96
+ "isArray": true,
97
+ "isComplex": false,
98
+ "name": "field_float64_array",
99
+ "type": "float64",
100
+ },
101
+ Object {
102
+ "arrayLength": undefined,
103
+ "description": "uint32 array field",
104
+ "isArray": true,
105
+ "isComplex": false,
106
+ "name": "field_uint32_array",
107
+ "type": "uint32",
108
+ },
109
+ Object {
110
+ "arrayLength": undefined,
111
+ "description": "string array field",
112
+ "isArray": true,
113
+ "isComplex": false,
114
+ "name": "field_string_array",
115
+ "type": "string",
116
+ },
117
+ Object {
118
+ "arrayLength": 3,
119
+ "description": "duration fixed-length array field",
120
+ "isArray": true,
121
+ "isComplex": false,
122
+ "name": "field_duration_fixed_array",
123
+ "type": "duration",
124
+ },
125
+ Object {
126
+ "arrayLength": 3,
127
+ "description": "time fixed-length array field",
128
+ "isArray": true,
129
+ "isComplex": false,
130
+ "name": "field_time_fixed_array",
131
+ "type": "time",
132
+ },
133
+ Object {
134
+ "arrayLength": 3,
135
+ "description": "boolean fixed-length array field",
136
+ "isArray": true,
137
+ "isComplex": false,
138
+ "name": "field_boolean_fixed_array",
139
+ "type": "bool",
140
+ },
141
+ Object {
142
+ "arrayLength": 3,
143
+ "description": "float64 fixed-length array field",
144
+ "isArray": true,
145
+ "isComplex": false,
146
+ "name": "field_float64_fixed_array",
147
+ "type": "float64",
148
+ },
149
+ Object {
150
+ "arrayLength": 3,
151
+ "description": "uint32 fixed-length array field",
152
+ "isArray": true,
153
+ "isComplex": false,
154
+ "name": "field_uint32_fixed_array",
155
+ "type": "uint32",
156
+ },
157
+ Object {
158
+ "arrayLength": 3,
159
+ "description": "string fixed-length array field",
160
+ "isArray": true,
161
+ "isComplex": false,
162
+ "name": "field_string_fixed_array",
163
+ "type": "string",
164
+ },
165
+ Object {
166
+ "description": "Value A",
167
+ "isConstant": true,
168
+ "name": "A",
169
+ "type": "uint8",
170
+ "value": 1,
171
+ "valueText": "1",
172
+ },
173
+ Object {
174
+ "description": "Value B",
175
+ "isConstant": true,
176
+ "name": "B",
177
+ "type": "uint8",
178
+ "value": 2,
179
+ "valueText": "2",
180
+ },
181
+ Object {
182
+ "arrayLength": undefined,
183
+ "description": "An enum field",
184
+ "isArray": false,
185
+ "isComplex": false,
186
+ "name": "field_enum",
187
+ "type": "uint8",
188
+ },
189
+ Object {
190
+ "arrayLength": undefined,
191
+ "description": "An enum array field",
192
+ "isArray": true,
193
+ "isComplex": false,
194
+ "name": "field_enum_array",
195
+ "type": "uint8",
196
+ },
197
+ Object {
198
+ "arrayLength": undefined,
199
+ "description": "A nested field",
200
+ "isArray": false,
201
+ "isComplex": true,
202
+ "name": "field_nested",
203
+ "type": "foxglove_msgs/NestedMessage",
204
+ },
205
+ Object {
206
+ "arrayLength": undefined,
207
+ "description": "A nested array field
208
+ With
209
+ a
210
+ very
211
+ long
212
+ description",
213
+ "isArray": true,
214
+ "isComplex": true,
215
+ "name": "field_nested_array",
216
+ "type": "foxglove_msgs/NestedMessage",
217
+ },
218
+ ],
219
+ "originalName": "ExampleMessage",
220
+ "rosFullInterfaceName": "foxglove_msgs/ExampleMessage",
221
+ "rosMsgInterfaceName": "foxglove_msgs/ExampleMessage",
222
+ }
223
+ `);
224
+ });
225
+ it("generates msg definition description for ROS 2", () => {
226
+ expect((0, generateRos_1.generateRosMsgDefinition)(testFixtures_1.exampleMessageWithoutArrayOfBytes, { rosVersion: 2 }))
227
+ .toMatchInlineSnapshot(`
228
+ Object {
229
+ "fields": Array [
230
+ Object {
231
+ "arrayLength": undefined,
232
+ "description": "duration field",
233
+ "isArray": false,
234
+ "isComplex": false,
235
+ "name": "field_duration",
236
+ "type": "builtin_interfaces/Duration",
237
+ },
238
+ Object {
239
+ "arrayLength": undefined,
240
+ "description": "time field",
241
+ "isArray": false,
242
+ "isComplex": false,
243
+ "name": "field_time",
244
+ "type": "builtin_interfaces/Time",
245
+ },
246
+ Object {
247
+ "arrayLength": undefined,
248
+ "description": "boolean field",
249
+ "isArray": false,
250
+ "isComplex": false,
251
+ "name": "field_boolean",
252
+ "type": "bool",
253
+ },
254
+ Object {
255
+ "arrayLength": undefined,
256
+ "description": "bytes field",
257
+ "isArray": true,
258
+ "isComplex": false,
259
+ "name": "field_bytes",
260
+ "type": "uint8",
261
+ },
262
+ Object {
263
+ "arrayLength": undefined,
264
+ "description": "float64 field",
265
+ "isArray": false,
266
+ "isComplex": false,
267
+ "name": "field_float64",
268
+ "type": "float64",
269
+ },
270
+ Object {
271
+ "arrayLength": undefined,
272
+ "description": "uint32 field",
273
+ "isArray": false,
274
+ "isComplex": false,
275
+ "name": "field_uint32",
276
+ "type": "uint32",
277
+ },
278
+ Object {
279
+ "arrayLength": undefined,
280
+ "description": "string field",
281
+ "isArray": false,
282
+ "isComplex": false,
283
+ "name": "field_string",
284
+ "type": "string",
285
+ },
286
+ Object {
287
+ "arrayLength": undefined,
288
+ "description": "duration array field",
289
+ "isArray": true,
290
+ "isComplex": false,
291
+ "name": "field_duration_array",
292
+ "type": "builtin_interfaces/Duration",
293
+ },
294
+ Object {
295
+ "arrayLength": undefined,
296
+ "description": "time array field",
297
+ "isArray": true,
298
+ "isComplex": false,
299
+ "name": "field_time_array",
300
+ "type": "builtin_interfaces/Time",
301
+ },
302
+ Object {
303
+ "arrayLength": undefined,
304
+ "description": "boolean array field",
305
+ "isArray": true,
306
+ "isComplex": false,
307
+ "name": "field_boolean_array",
308
+ "type": "bool",
309
+ },
310
+ Object {
311
+ "arrayLength": undefined,
312
+ "description": "float64 array field",
313
+ "isArray": true,
314
+ "isComplex": false,
315
+ "name": "field_float64_array",
316
+ "type": "float64",
317
+ },
318
+ Object {
319
+ "arrayLength": undefined,
320
+ "description": "uint32 array field",
321
+ "isArray": true,
322
+ "isComplex": false,
323
+ "name": "field_uint32_array",
324
+ "type": "uint32",
325
+ },
326
+ Object {
327
+ "arrayLength": undefined,
328
+ "description": "string array field",
329
+ "isArray": true,
330
+ "isComplex": false,
331
+ "name": "field_string_array",
332
+ "type": "string",
333
+ },
334
+ Object {
335
+ "arrayLength": 3,
336
+ "description": "duration fixed-length array field",
337
+ "isArray": true,
338
+ "isComplex": false,
339
+ "name": "field_duration_fixed_array",
340
+ "type": "builtin_interfaces/Duration",
341
+ },
342
+ Object {
343
+ "arrayLength": 3,
344
+ "description": "time fixed-length array field",
345
+ "isArray": true,
346
+ "isComplex": false,
347
+ "name": "field_time_fixed_array",
348
+ "type": "builtin_interfaces/Time",
349
+ },
350
+ Object {
351
+ "arrayLength": 3,
352
+ "description": "boolean fixed-length array field",
353
+ "isArray": true,
354
+ "isComplex": false,
355
+ "name": "field_boolean_fixed_array",
356
+ "type": "bool",
357
+ },
358
+ Object {
359
+ "arrayLength": 3,
360
+ "description": "float64 fixed-length array field",
361
+ "isArray": true,
362
+ "isComplex": false,
363
+ "name": "field_float64_fixed_array",
364
+ "type": "float64",
365
+ },
366
+ Object {
367
+ "arrayLength": 3,
368
+ "description": "uint32 fixed-length array field",
369
+ "isArray": true,
370
+ "isComplex": false,
371
+ "name": "field_uint32_fixed_array",
372
+ "type": "uint32",
373
+ },
374
+ Object {
375
+ "arrayLength": 3,
376
+ "description": "string fixed-length array field",
377
+ "isArray": true,
378
+ "isComplex": false,
379
+ "name": "field_string_fixed_array",
380
+ "type": "string",
381
+ },
382
+ Object {
383
+ "description": "Value A",
384
+ "isConstant": true,
385
+ "name": "A",
386
+ "type": "uint8",
387
+ "value": 1,
388
+ "valueText": "1",
389
+ },
390
+ Object {
391
+ "description": "Value B",
392
+ "isConstant": true,
393
+ "name": "B",
394
+ "type": "uint8",
395
+ "value": 2,
396
+ "valueText": "2",
397
+ },
398
+ Object {
399
+ "arrayLength": undefined,
400
+ "description": "An enum field",
401
+ "isArray": false,
402
+ "isComplex": false,
403
+ "name": "field_enum",
404
+ "type": "uint8",
405
+ },
406
+ Object {
407
+ "arrayLength": undefined,
408
+ "description": "An enum array field",
409
+ "isArray": true,
410
+ "isComplex": false,
411
+ "name": "field_enum_array",
412
+ "type": "uint8",
413
+ },
414
+ Object {
415
+ "arrayLength": undefined,
416
+ "description": "A nested field",
417
+ "isArray": false,
418
+ "isComplex": true,
419
+ "name": "field_nested",
420
+ "type": "foxglove_msgs/NestedMessage",
421
+ },
422
+ Object {
423
+ "arrayLength": undefined,
424
+ "description": "A nested array field
425
+ With
426
+ a
427
+ very
428
+ long
429
+ description",
430
+ "isArray": true,
431
+ "isComplex": true,
432
+ "name": "field_nested_array",
433
+ "type": "foxglove_msgs/NestedMessage",
434
+ },
435
+ ],
436
+ "originalName": "ExampleMessage",
437
+ "rosFullInterfaceName": "foxglove_msgs/msg/ExampleMessage",
438
+ "rosMsgInterfaceName": "foxglove_msgs/ExampleMessage",
439
+ }
440
+ `);
441
+ });
442
+ });
443
+ describe("generateRosMsg", () => {
8
444
  it("generates msg file for ROS 1", () => {
9
445
  expect((0, generateRos_1.generateRosMsg)((0, generateRos_1.generateRosMsgDefinition)(testFixtures_1.exampleMessageWithoutArrayOfBytes, {
10
446
  rosVersion: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"generateRos.test.js","sourceRoot":"","sources":["../../../src/generateRos.test.ts"],"names":[],"mappings":";;AAAA,6CAAmE;AAEnE,+CAIuB;AACvB,uCAAmD;AACnD,iDAAmE;AAEnE,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,CACJ,IAAA,4BAAc,EACZ,IAAA,sCAAwB,EAAC,gDAAiC,EAAE;YAC1D,UAAU,EAAE,CAAC;SACd,CAAC,CACH,CACF,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmFvB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,CACJ,IAAA,4BAAc,EACZ,IAAA,sCAAwB,EAAC,gDAAiC,EAAE;YAC1D,UAAU,EAAE,CAAC;SACd,CAAC,CACH,CACF,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmFvB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,YAAY,GAAG,IAAA,wCAA0B,EAAC,gDAAiC,EAAE;YACjF,UAAU,EAAE,CAAC;SACd,CAAC,CAAC;QACH,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyF1C,CAAC,CAAC;QACH,MAAM,CAAC,IAAA,cAAsB,EAAC,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiLlE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,YAAY,GAAG,IAAA,wCAA0B,EAAC,gDAAiC,EAAE;YACjF,UAAU,EAAE,CAAC;SACd,CAAC,CAAC;QACH,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyF1C,CAAC,CAAC;QACH,MAAM,CAAC,IAAA,cAAsB,EAAC,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+VlF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gCAAsB,CAAC,CAAC,CAAC,oCAAoC,EAAE,CAAC,MAAM,EAAE,EAAE;QAC9F,MAAM,CAAC,GAAG,EAAE,CACV,IAAA,cAAsB,EAAC,IAAA,wCAA0B,EAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAC9E,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,GAAG,EAAE,CACV,IAAA,cAAsB,EAAC,IAAA,wCAA0B,EAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAC9F,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"generateRos.test.js","sourceRoot":"","sources":["../../../src/generateRos.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { FoxgloveEnumSchema, FoxgloveMessageSchema } from "./types";
2
- export declare const foxglove_CameraCalibration: FoxgloveMessageSchema;
3
2
  export declare const foxgloveMessageSchemas: {
4
3
  CameraCalibration: FoxgloveMessageSchema;
5
4
  CircleAnnotation: FoxgloveMessageSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAkKpE,eAAO,MAAM,0BAA0B,EAAE,qBAwFxC,CAAC;AA0jBF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;CAyBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAozBpE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;CAyBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.foxgloveEnumSchemas = exports.foxgloveMessageSchemas = exports.foxglove_CameraCalibration = void 0;
3
+ exports.foxgloveEnumSchemas = exports.foxgloveMessageSchemas = void 0;
4
4
  const foxglove_Color = {
5
5
  type: "message",
6
6
  name: "Color",
@@ -154,7 +154,7 @@ const foxglove_Pose = {
154
154
  },
155
155
  ],
156
156
  };
157
- exports.foxglove_CameraCalibration = {
157
+ const foxglove_CameraCalibration = {
158
158
  type: "message",
159
159
  name: "CameraCalibration",
160
160
  description: "Camera calibration parameters",
@@ -429,7 +429,7 @@ const foxglove_NumericType = {
429
429
  const foxglove_PackedElementField = {
430
430
  type: "message",
431
431
  name: "PackedElementField",
432
- description: "List of fields for every element in a byte array",
432
+ description: "A field present within each element in a byte array of packed elements.",
433
433
  fields: [
434
434
  {
435
435
  name: "name",
@@ -786,7 +786,7 @@ const foxglove_LaserScan = {
786
786
  ],
787
787
  };
788
788
  exports.foxgloveMessageSchemas = {
789
- CameraCalibration: exports.foxglove_CameraCalibration,
789
+ CameraCalibration: foxglove_CameraCalibration,
790
790
  CircleAnnotation: foxglove_CircleAnnotation,
791
791
  Color: foxglove_Color,
792
792
  CompressedImage: foxglove_CompressedImage,