@foxglove/schemas 0.2.0 → 0.3.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 (310) hide show
  1. package/.github/workflows/ci.yml +7 -1
  2. package/README.md +45 -2
  3. package/dist/cjs/schemas/typescript/CameraCalibration.js +1 -1
  4. package/dist/cjs/schemas/typescript/CameraCalibration.js.map +1 -1
  5. package/dist/cjs/schemas/typescript/CircleAnnotation.js +1 -1
  6. package/dist/cjs/schemas/typescript/CircleAnnotation.js.map +1 -1
  7. package/dist/cjs/schemas/typescript/Color.js +1 -1
  8. package/dist/cjs/schemas/typescript/Color.js.map +1 -1
  9. package/dist/cjs/schemas/typescript/CompressedImage.js +1 -1
  10. package/dist/cjs/schemas/typescript/CompressedImage.js.map +1 -1
  11. package/dist/cjs/schemas/typescript/FrameTransform.d.ts +6 -3
  12. package/dist/cjs/schemas/typescript/FrameTransform.d.ts.map +1 -1
  13. package/dist/cjs/schemas/typescript/FrameTransform.js +1 -1
  14. package/dist/cjs/schemas/typescript/FrameTransform.js.map +1 -1
  15. package/dist/cjs/schemas/typescript/GeoJSON.js +1 -1
  16. package/dist/cjs/schemas/typescript/GeoJSON.js.map +1 -1
  17. package/dist/cjs/schemas/typescript/Grid.js +1 -1
  18. package/dist/cjs/schemas/typescript/Grid.js.map +1 -1
  19. package/dist/cjs/schemas/typescript/ImageAnnotations.js +1 -1
  20. package/dist/cjs/schemas/typescript/ImageAnnotations.js.map +1 -1
  21. package/dist/cjs/schemas/typescript/LaserScan.js +1 -1
  22. package/dist/cjs/schemas/typescript/LaserScan.js.map +1 -1
  23. package/dist/cjs/schemas/typescript/LocationFix.js +1 -1
  24. package/dist/cjs/schemas/typescript/LocationFix.js.map +1 -1
  25. package/dist/cjs/schemas/typescript/Log.js +1 -1
  26. package/dist/cjs/schemas/typescript/Log.js.map +1 -1
  27. package/dist/cjs/schemas/typescript/LogLevel.js +1 -1
  28. package/dist/cjs/schemas/typescript/LogLevel.js.map +1 -1
  29. package/dist/cjs/schemas/typescript/NumericType.js +1 -1
  30. package/dist/cjs/schemas/typescript/NumericType.js.map +1 -1
  31. package/dist/cjs/schemas/typescript/PackedElementField.js +1 -1
  32. package/dist/cjs/schemas/typescript/PackedElementField.js.map +1 -1
  33. package/dist/cjs/schemas/typescript/Point2.js +1 -1
  34. package/dist/cjs/schemas/typescript/Point2.js.map +1 -1
  35. package/dist/cjs/schemas/typescript/Point3.js +1 -1
  36. package/dist/cjs/schemas/typescript/Point3.js.map +1 -1
  37. package/dist/cjs/schemas/typescript/PointCloud.js +1 -1
  38. package/dist/cjs/schemas/typescript/PointCloud.js.map +1 -1
  39. package/dist/cjs/schemas/typescript/PointsAnnotation.js +1 -1
  40. package/dist/cjs/schemas/typescript/PointsAnnotation.js.map +1 -1
  41. package/dist/cjs/schemas/typescript/PointsAnnotationType.js +1 -1
  42. package/dist/cjs/schemas/typescript/PointsAnnotationType.js.map +1 -1
  43. package/dist/cjs/schemas/typescript/Pose.js +1 -1
  44. package/dist/cjs/schemas/typescript/Pose.js.map +1 -1
  45. package/dist/cjs/schemas/typescript/PoseInFrame.js +1 -1
  46. package/dist/cjs/schemas/typescript/PoseInFrame.js.map +1 -1
  47. package/dist/cjs/schemas/typescript/PosesInFrame.js +1 -1
  48. package/dist/cjs/schemas/typescript/PositionCovarianceType.js +1 -1
  49. package/dist/cjs/schemas/typescript/PositionCovarianceType.js.map +1 -1
  50. package/dist/cjs/schemas/typescript/Quaternion.js +1 -1
  51. package/dist/cjs/schemas/typescript/Quaternion.js.map +1 -1
  52. package/dist/cjs/schemas/typescript/RawImage.js +1 -1
  53. package/dist/cjs/schemas/typescript/RawImage.js.map +1 -1
  54. package/dist/cjs/schemas/typescript/Vector2.js +1 -1
  55. package/dist/cjs/schemas/typescript/Vector2.js.map +1 -1
  56. package/dist/cjs/schemas/typescript/Vector3.js +1 -1
  57. package/dist/cjs/schemas/typescript/Vector3.js.map +1 -1
  58. package/dist/cjs/schemas/typescript/index.d.ts +0 -1
  59. package/dist/cjs/schemas/typescript/index.d.ts.map +1 -1
  60. package/dist/cjs/schemas/typescript/index.js +0 -1
  61. package/dist/cjs/schemas/typescript/index.js.map +1 -1
  62. package/dist/cjs/scripts/updateGeneratedFiles.js +17 -4
  63. package/dist/cjs/scripts/updateGeneratedFiles.js.map +1 -1
  64. package/dist/cjs/src/generateJsonSchema.d.ts.map +1 -1
  65. package/dist/cjs/src/generateJsonSchema.js +4 -3
  66. package/dist/cjs/src/generateJsonSchema.js.map +1 -1
  67. package/dist/cjs/src/generateJsonSchema.test.js +6 -8
  68. package/dist/cjs/src/generateJsonSchema.test.js.map +1 -1
  69. package/dist/cjs/src/generateMarkdown.d.ts +3 -0
  70. package/dist/cjs/src/generateMarkdown.d.ts.map +1 -0
  71. package/dist/cjs/src/generateMarkdown.js +78 -0
  72. package/dist/cjs/src/generateMarkdown.js.map +1 -0
  73. package/dist/cjs/src/generateProto.js +1 -1
  74. package/dist/cjs/src/generateProto.js.map +1 -1
  75. package/dist/cjs/src/generateProto.test.js +1 -1
  76. package/dist/cjs/src/generateRos.d.ts.map +1 -1
  77. package/dist/cjs/src/generateRos.js +3 -1
  78. package/dist/cjs/src/generateRos.js.map +1 -1
  79. package/dist/cjs/src/generateRos.test.js +451 -431
  80. package/dist/cjs/src/generateRos.test.js.map +1 -1
  81. package/dist/cjs/src/generateTypeScript.js +1 -1
  82. package/dist/cjs/src/generateTypeScript.js.map +1 -1
  83. package/dist/cjs/src/generateTypeScript.test.js +2 -2
  84. package/dist/cjs/src/schemas.d.ts +0 -1
  85. package/dist/cjs/src/schemas.d.ts.map +1 -1
  86. package/dist/cjs/src/schemas.js +8 -26
  87. package/dist/cjs/src/schemas.js.map +1 -1
  88. package/dist/esm/schemas/typescript/CameraCalibration.js +1 -1
  89. package/dist/esm/schemas/typescript/CameraCalibration.js.map +1 -1
  90. package/dist/esm/schemas/typescript/CircleAnnotation.js +1 -1
  91. package/dist/esm/schemas/typescript/CircleAnnotation.js.map +1 -1
  92. package/dist/esm/schemas/typescript/Color.js +1 -1
  93. package/dist/esm/schemas/typescript/Color.js.map +1 -1
  94. package/dist/esm/schemas/typescript/CompressedImage.js +1 -1
  95. package/dist/esm/schemas/typescript/CompressedImage.js.map +1 -1
  96. package/dist/esm/schemas/typescript/FrameTransform.d.ts +6 -3
  97. package/dist/esm/schemas/typescript/FrameTransform.d.ts.map +1 -1
  98. package/dist/esm/schemas/typescript/FrameTransform.js +1 -1
  99. package/dist/esm/schemas/typescript/FrameTransform.js.map +1 -1
  100. package/dist/esm/schemas/typescript/GeoJSON.js +1 -1
  101. package/dist/esm/schemas/typescript/GeoJSON.js.map +1 -1
  102. package/dist/esm/schemas/typescript/Grid.js +1 -1
  103. package/dist/esm/schemas/typescript/Grid.js.map +1 -1
  104. package/dist/esm/schemas/typescript/ImageAnnotations.js +1 -1
  105. package/dist/esm/schemas/typescript/ImageAnnotations.js.map +1 -1
  106. package/dist/esm/schemas/typescript/LaserScan.js +1 -1
  107. package/dist/esm/schemas/typescript/LaserScan.js.map +1 -1
  108. package/dist/esm/schemas/typescript/LocationFix.js +1 -1
  109. package/dist/esm/schemas/typescript/LocationFix.js.map +1 -1
  110. package/dist/esm/schemas/typescript/Log.js +1 -1
  111. package/dist/esm/schemas/typescript/Log.js.map +1 -1
  112. package/dist/esm/schemas/typescript/LogLevel.js +1 -1
  113. package/dist/esm/schemas/typescript/LogLevel.js.map +1 -1
  114. package/dist/esm/schemas/typescript/NumericType.js +1 -1
  115. package/dist/esm/schemas/typescript/NumericType.js.map +1 -1
  116. package/dist/esm/schemas/typescript/PackedElementField.js +1 -1
  117. package/dist/esm/schemas/typescript/PackedElementField.js.map +1 -1
  118. package/dist/esm/schemas/typescript/Point2.js +1 -1
  119. package/dist/esm/schemas/typescript/Point2.js.map +1 -1
  120. package/dist/esm/schemas/typescript/Point3.js +1 -1
  121. package/dist/esm/schemas/typescript/Point3.js.map +1 -1
  122. package/dist/esm/schemas/typescript/PointCloud.js +1 -1
  123. package/dist/esm/schemas/typescript/PointCloud.js.map +1 -1
  124. package/dist/esm/schemas/typescript/PointsAnnotation.js +1 -1
  125. package/dist/esm/schemas/typescript/PointsAnnotation.js.map +1 -1
  126. package/dist/esm/schemas/typescript/PointsAnnotationType.js +1 -1
  127. package/dist/esm/schemas/typescript/PointsAnnotationType.js.map +1 -1
  128. package/dist/esm/schemas/typescript/Pose.js +1 -1
  129. package/dist/esm/schemas/typescript/Pose.js.map +1 -1
  130. package/dist/esm/schemas/typescript/PoseInFrame.js +1 -1
  131. package/dist/esm/schemas/typescript/PoseInFrame.js.map +1 -1
  132. package/dist/esm/schemas/typescript/PosesInFrame.js +1 -1
  133. package/dist/esm/schemas/typescript/PositionCovarianceType.js +1 -1
  134. package/dist/esm/schemas/typescript/PositionCovarianceType.js.map +1 -1
  135. package/dist/esm/schemas/typescript/Quaternion.js +1 -1
  136. package/dist/esm/schemas/typescript/Quaternion.js.map +1 -1
  137. package/dist/esm/schemas/typescript/RawImage.js +1 -1
  138. package/dist/esm/schemas/typescript/RawImage.js.map +1 -1
  139. package/dist/esm/schemas/typescript/Vector2.js +1 -1
  140. package/dist/esm/schemas/typescript/Vector2.js.map +1 -1
  141. package/dist/esm/schemas/typescript/Vector3.js +1 -1
  142. package/dist/esm/schemas/typescript/Vector3.js.map +1 -1
  143. package/dist/esm/schemas/typescript/index.d.ts +0 -1
  144. package/dist/esm/schemas/typescript/index.d.ts.map +1 -1
  145. package/dist/esm/schemas/typescript/index.js +0 -1
  146. package/dist/esm/schemas/typescript/index.js.map +1 -1
  147. package/dist/esm/scripts/updateGeneratedFiles.js +17 -4
  148. package/dist/esm/scripts/updateGeneratedFiles.js.map +1 -1
  149. package/dist/esm/src/generateJsonSchema.d.ts.map +1 -1
  150. package/dist/esm/src/generateJsonSchema.js +4 -3
  151. package/dist/esm/src/generateJsonSchema.js.map +1 -1
  152. package/dist/esm/src/generateJsonSchema.test.js +6 -8
  153. package/dist/esm/src/generateJsonSchema.test.js.map +1 -1
  154. package/dist/esm/src/generateMarkdown.d.ts +3 -0
  155. package/dist/esm/src/generateMarkdown.d.ts.map +1 -0
  156. package/dist/esm/src/generateMarkdown.js +74 -0
  157. package/dist/esm/src/generateMarkdown.js.map +1 -0
  158. package/dist/esm/src/generateProto.js +1 -1
  159. package/dist/esm/src/generateProto.js.map +1 -1
  160. package/dist/esm/src/generateProto.test.js +1 -1
  161. package/dist/esm/src/generateRos.d.ts.map +1 -1
  162. package/dist/esm/src/generateRos.js +3 -1
  163. package/dist/esm/src/generateRos.js.map +1 -1
  164. package/dist/esm/src/generateRos.test.js +451 -431
  165. package/dist/esm/src/generateRos.test.js.map +1 -1
  166. package/dist/esm/src/generateTypeScript.js +1 -1
  167. package/dist/esm/src/generateTypeScript.js.map +1 -1
  168. package/dist/esm/src/generateTypeScript.test.js +2 -2
  169. package/dist/esm/src/schemas.d.ts +0 -1
  170. package/dist/esm/src/schemas.d.ts.map +1 -1
  171. package/dist/esm/src/schemas.js +8 -26
  172. package/dist/esm/src/schemas.js.map +1 -1
  173. package/package.json +2 -2
  174. package/schemas/README.md +1683 -0
  175. package/schemas/jsonschema/CameraCalibration.json +2 -2
  176. package/schemas/jsonschema/CircleAnnotation.json +5 -8
  177. package/schemas/jsonschema/Color.json +2 -2
  178. package/schemas/jsonschema/CompressedImage.json +2 -2
  179. package/schemas/jsonschema/FrameTransform.json +37 -63
  180. package/schemas/jsonschema/GeoJSON.json +2 -2
  181. package/schemas/jsonschema/Grid.json +8 -13
  182. package/schemas/jsonschema/ImageAnnotations.json +11 -19
  183. package/schemas/jsonschema/LaserScan.json +5 -8
  184. package/schemas/jsonschema/LocationFix.json +3 -3
  185. package/schemas/jsonschema/Log.json +3 -3
  186. package/schemas/jsonschema/PackedElementField.json +3 -3
  187. package/schemas/jsonschema/Point2.json +2 -2
  188. package/schemas/jsonschema/Point3.json +2 -2
  189. package/schemas/jsonschema/PointCloud.json +7 -11
  190. package/schemas/jsonschema/PointsAnnotation.json +6 -9
  191. package/schemas/jsonschema/Pose.json +4 -6
  192. package/schemas/jsonschema/PoseInFrame.json +5 -8
  193. package/schemas/jsonschema/PosesInFrame.json +5 -8
  194. package/schemas/jsonschema/Quaternion.json +2 -2
  195. package/schemas/jsonschema/RawImage.json +2 -2
  196. package/schemas/jsonschema/Vector2.json +2 -2
  197. package/schemas/jsonschema/Vector3.json +2 -2
  198. package/schemas/proto/foxglove/CameraCalibration.proto +1 -1
  199. package/schemas/proto/foxglove/CircleAnnotation.proto +1 -1
  200. package/schemas/proto/foxglove/Color.proto +1 -1
  201. package/schemas/proto/foxglove/CompressedImage.proto +1 -1
  202. package/schemas/proto/foxglove/FrameTransform.proto +8 -4
  203. package/schemas/proto/foxglove/GeoJSON.proto +1 -1
  204. package/schemas/proto/foxglove/Grid.proto +1 -1
  205. package/schemas/proto/foxglove/ImageAnnotations.proto +1 -1
  206. package/schemas/proto/foxglove/LaserScan.proto +1 -1
  207. package/schemas/proto/foxglove/LocationFix.proto +1 -1
  208. package/schemas/proto/foxglove/Log.proto +1 -1
  209. package/schemas/proto/foxglove/PackedElementField.proto +1 -1
  210. package/schemas/proto/foxglove/Point2.proto +1 -1
  211. package/schemas/proto/foxglove/Point3.proto +1 -1
  212. package/schemas/proto/foxglove/PointCloud.proto +1 -1
  213. package/schemas/proto/foxglove/PointsAnnotation.proto +1 -1
  214. package/schemas/proto/foxglove/Pose.proto +1 -1
  215. package/schemas/proto/foxglove/PoseInFrame.proto +1 -1
  216. package/schemas/proto/foxglove/PosesInFrame.proto +1 -1
  217. package/schemas/proto/foxglove/Quaternion.proto +1 -1
  218. package/schemas/proto/foxglove/RawImage.proto +1 -1
  219. package/schemas/proto/foxglove/Vector2.proto +1 -1
  220. package/schemas/proto/foxglove/Vector3.proto +1 -1
  221. package/schemas/ros1/CameraCalibration.msg +4 -1
  222. package/schemas/ros1/CircleAnnotation.msg +4 -1
  223. package/schemas/ros1/Color.msg +4 -1
  224. package/schemas/ros1/CompressedImage.msg +4 -1
  225. package/schemas/ros1/FrameTransform.msg +9 -3
  226. package/schemas/ros1/GeoJSON.msg +4 -1
  227. package/schemas/ros1/Grid.msg +4 -1
  228. package/schemas/ros1/ImageAnnotations.msg +4 -1
  229. package/schemas/ros1/LaserScan.msg +4 -1
  230. package/schemas/ros1/LocationFix.msg +4 -1
  231. package/schemas/ros1/Log.msg +4 -1
  232. package/schemas/ros1/PackedElementField.msg +4 -1
  233. package/schemas/ros1/Point2.msg +4 -1
  234. package/schemas/ros1/PointCloud.msg +4 -1
  235. package/schemas/ros1/PointsAnnotation.msg +4 -1
  236. package/schemas/ros1/PoseInFrame.msg +4 -1
  237. package/schemas/ros1/PosesInFrame.msg +4 -1
  238. package/schemas/ros1/RawImage.msg +4 -1
  239. package/schemas/ros1/Vector2.msg +4 -1
  240. package/schemas/ros2/CameraCalibration.msg +4 -1
  241. package/schemas/ros2/CircleAnnotation.msg +4 -1
  242. package/schemas/ros2/Color.msg +4 -1
  243. package/schemas/ros2/CompressedImage.msg +4 -1
  244. package/schemas/ros2/FrameTransform.msg +9 -3
  245. package/schemas/ros2/GeoJSON.msg +4 -1
  246. package/schemas/ros2/Grid.msg +4 -1
  247. package/schemas/ros2/ImageAnnotations.msg +4 -1
  248. package/schemas/ros2/LaserScan.msg +4 -1
  249. package/schemas/ros2/LocationFix.msg +4 -1
  250. package/schemas/ros2/Log.msg +4 -1
  251. package/schemas/ros2/PackedElementField.msg +4 -1
  252. package/schemas/ros2/Point2.msg +4 -1
  253. package/schemas/ros2/PointCloud.msg +4 -1
  254. package/schemas/ros2/PointsAnnotation.msg +4 -1
  255. package/schemas/ros2/PoseInFrame.msg +4 -1
  256. package/schemas/ros2/PosesInFrame.msg +4 -1
  257. package/schemas/ros2/RawImage.msg +4 -1
  258. package/schemas/ros2/Vector2.msg +4 -1
  259. package/schemas/typescript/CameraCalibration.ts +1 -1
  260. package/schemas/typescript/CircleAnnotation.ts +1 -1
  261. package/schemas/typescript/Color.ts +1 -1
  262. package/schemas/typescript/CompressedImage.ts +1 -1
  263. package/schemas/typescript/FrameTransform.ts +8 -4
  264. package/schemas/typescript/GeoJSON.ts +1 -1
  265. package/schemas/typescript/Grid.ts +1 -1
  266. package/schemas/typescript/ImageAnnotations.ts +1 -1
  267. package/schemas/typescript/LaserScan.ts +1 -1
  268. package/schemas/typescript/LocationFix.ts +1 -1
  269. package/schemas/typescript/Log.ts +1 -1
  270. package/schemas/typescript/LogLevel.ts +1 -1
  271. package/schemas/typescript/NumericType.ts +1 -1
  272. package/schemas/typescript/PackedElementField.ts +1 -1
  273. package/schemas/typescript/Point2.ts +1 -1
  274. package/schemas/typescript/Point3.ts +1 -1
  275. package/schemas/typescript/PointCloud.ts +1 -1
  276. package/schemas/typescript/PointsAnnotation.ts +1 -1
  277. package/schemas/typescript/PointsAnnotationType.ts +1 -1
  278. package/schemas/typescript/Pose.ts +1 -1
  279. package/schemas/typescript/PoseInFrame.ts +1 -1
  280. package/schemas/typescript/PosesInFrame.ts +1 -1
  281. package/schemas/typescript/PositionCovarianceType.ts +1 -1
  282. package/schemas/typescript/Quaternion.ts +1 -1
  283. package/schemas/typescript/RawImage.ts +1 -1
  284. package/schemas/typescript/Vector2.ts +1 -1
  285. package/schemas/typescript/Vector3.ts +1 -1
  286. package/schemas/typescript/index.ts +0 -1
  287. package/scripts/updateGeneratedFiles.ts +21 -10
  288. package/src/generateJsonSchema.test.ts +6 -8
  289. package/src/generateJsonSchema.ts +4 -3
  290. package/src/generateMarkdown.ts +86 -0
  291. package/src/generateProto.test.ts +1 -1
  292. package/src/generateProto.ts +1 -1
  293. package/src/generateRos.test.ts +451 -431
  294. package/src/generateRos.ts +4 -1
  295. package/src/generateTypeScript.test.ts +2 -2
  296. package/src/generateTypeScript.ts +1 -1
  297. package/src/schemas.ts +8 -27
  298. package/dist/cjs/schemas/typescript/Transform.d.ts +0 -13
  299. package/dist/cjs/schemas/typescript/Transform.d.ts.map +0 -1
  300. package/dist/cjs/schemas/typescript/Transform.js +0 -4
  301. package/dist/cjs/schemas/typescript/Transform.js.map +0 -1
  302. package/dist/esm/schemas/typescript/Transform.d.ts +0 -13
  303. package/dist/esm/schemas/typescript/Transform.d.ts.map +0 -1
  304. package/dist/esm/schemas/typescript/Transform.js +0 -3
  305. package/dist/esm/schemas/typescript/Transform.js.map +0 -1
  306. package/schemas/jsonschema/Transform.json +0 -68
  307. package/schemas/proto/foxglove/Transform.proto +0 -21
  308. package/schemas/ros1/Transform.msg +0 -10
  309. package/schemas/ros2/Transform.msg +0 -10
  310. package/schemas/typescript/Transform.ts +0 -17
@@ -6,436 +6,438 @@ describe("generateRosMsgDefinition", () => {
6
6
  it("generates msg definition description for ROS 1", () => {
7
7
  expect(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, { rosVersion: 1 }))
8
8
  .toMatchInlineSnapshot(`
9
- Object {
10
- "fields": Array [
11
- Object {
12
- "arrayLength": undefined,
13
- "description": "duration field",
14
- "isArray": false,
15
- "isComplex": false,
16
- "name": "field_duration",
17
- "type": "duration",
18
- },
19
- Object {
20
- "arrayLength": undefined,
21
- "description": "time field",
22
- "isArray": false,
23
- "isComplex": false,
24
- "name": "field_time",
25
- "type": "time",
26
- },
27
- Object {
28
- "arrayLength": undefined,
29
- "description": "boolean field",
30
- "isArray": false,
31
- "isComplex": false,
32
- "name": "field_boolean",
33
- "type": "bool",
34
- },
35
- Object {
36
- "arrayLength": undefined,
37
- "description": "bytes field",
38
- "isArray": true,
39
- "isComplex": false,
40
- "name": "field_bytes",
41
- "type": "uint8",
42
- },
43
- Object {
44
- "arrayLength": undefined,
45
- "description": "float64 field",
46
- "isArray": false,
47
- "isComplex": false,
48
- "name": "field_float64",
49
- "type": "float64",
50
- },
51
- Object {
52
- "arrayLength": undefined,
53
- "description": "uint32 field",
54
- "isArray": false,
55
- "isComplex": false,
56
- "name": "field_uint32",
57
- "type": "uint32",
58
- },
59
- Object {
60
- "arrayLength": undefined,
61
- "description": "string field",
62
- "isArray": false,
63
- "isComplex": false,
64
- "name": "field_string",
65
- "type": "string",
66
- },
67
- Object {
68
- "arrayLength": undefined,
69
- "description": "duration array field",
70
- "isArray": true,
71
- "isComplex": false,
72
- "name": "field_duration_array",
73
- "type": "duration",
74
- },
75
- Object {
76
- "arrayLength": undefined,
77
- "description": "time array field",
78
- "isArray": true,
79
- "isComplex": false,
80
- "name": "field_time_array",
81
- "type": "time",
82
- },
83
- Object {
84
- "arrayLength": undefined,
85
- "description": "boolean array field",
86
- "isArray": true,
87
- "isComplex": false,
88
- "name": "field_boolean_array",
89
- "type": "bool",
90
- },
91
- Object {
92
- "arrayLength": undefined,
93
- "description": "float64 array field",
94
- "isArray": true,
95
- "isComplex": false,
96
- "name": "field_float64_array",
97
- "type": "float64",
98
- },
99
- Object {
100
- "arrayLength": undefined,
101
- "description": "uint32 array field",
102
- "isArray": true,
103
- "isComplex": false,
104
- "name": "field_uint32_array",
105
- "type": "uint32",
106
- },
107
- Object {
108
- "arrayLength": undefined,
109
- "description": "string array field",
110
- "isArray": true,
111
- "isComplex": false,
112
- "name": "field_string_array",
113
- "type": "string",
114
- },
115
- Object {
116
- "arrayLength": 3,
117
- "description": "duration fixed-length array field",
118
- "isArray": true,
119
- "isComplex": false,
120
- "name": "field_duration_fixed_array",
121
- "type": "duration",
122
- },
123
- Object {
124
- "arrayLength": 3,
125
- "description": "time fixed-length array field",
126
- "isArray": true,
127
- "isComplex": false,
128
- "name": "field_time_fixed_array",
129
- "type": "time",
130
- },
131
- Object {
132
- "arrayLength": 3,
133
- "description": "boolean fixed-length array field",
134
- "isArray": true,
135
- "isComplex": false,
136
- "name": "field_boolean_fixed_array",
137
- "type": "bool",
138
- },
139
- Object {
140
- "arrayLength": 3,
141
- "description": "float64 fixed-length array field",
142
- "isArray": true,
143
- "isComplex": false,
144
- "name": "field_float64_fixed_array",
145
- "type": "float64",
146
- },
147
- Object {
148
- "arrayLength": 3,
149
- "description": "uint32 fixed-length array field",
150
- "isArray": true,
151
- "isComplex": false,
152
- "name": "field_uint32_fixed_array",
153
- "type": "uint32",
154
- },
155
- Object {
156
- "arrayLength": 3,
157
- "description": "string fixed-length array field",
158
- "isArray": true,
159
- "isComplex": false,
160
- "name": "field_string_fixed_array",
161
- "type": "string",
162
- },
163
- Object {
164
- "description": "Value A",
165
- "isConstant": true,
166
- "name": "A",
167
- "type": "uint8",
168
- "value": 1,
169
- "valueText": "1",
170
- },
171
- Object {
172
- "description": "Value B",
173
- "isConstant": true,
174
- "name": "B",
175
- "type": "uint8",
176
- "value": 2,
177
- "valueText": "2",
178
- },
179
- Object {
180
- "arrayLength": undefined,
181
- "description": "An enum field",
182
- "isArray": false,
183
- "isComplex": false,
184
- "name": "field_enum",
185
- "type": "uint8",
186
- },
187
- Object {
188
- "arrayLength": undefined,
189
- "description": "An enum array field",
190
- "isArray": true,
191
- "isComplex": false,
192
- "name": "field_enum_array",
193
- "type": "uint8",
194
- },
195
- Object {
196
- "arrayLength": undefined,
197
- "description": "A nested field",
198
- "isArray": false,
199
- "isComplex": true,
200
- "name": "field_nested",
201
- "type": "foxglove_msgs/NestedMessage",
202
- },
203
- Object {
204
- "arrayLength": undefined,
205
- "description": "A nested array field
206
- With
207
- a
208
- very
209
- long
210
- description",
211
- "isArray": true,
212
- "isComplex": true,
213
- "name": "field_nested_array",
214
- "type": "foxglove_msgs/NestedMessage",
215
- },
216
- ],
217
- "originalName": "ExampleMessage",
218
- "rosFullInterfaceName": "foxglove_msgs/ExampleMessage",
219
- "rosMsgInterfaceName": "foxglove_msgs/ExampleMessage",
220
- }
221
- `);
9
+ Object {
10
+ "description": "An example type",
11
+ "fields": Array [
12
+ Object {
13
+ "arrayLength": undefined,
14
+ "description": "duration field",
15
+ "isArray": false,
16
+ "isComplex": false,
17
+ "name": "field_duration",
18
+ "type": "duration",
19
+ },
20
+ Object {
21
+ "arrayLength": undefined,
22
+ "description": "time field",
23
+ "isArray": false,
24
+ "isComplex": false,
25
+ "name": "field_time",
26
+ "type": "time",
27
+ },
28
+ Object {
29
+ "arrayLength": undefined,
30
+ "description": "boolean field",
31
+ "isArray": false,
32
+ "isComplex": false,
33
+ "name": "field_boolean",
34
+ "type": "bool",
35
+ },
36
+ Object {
37
+ "arrayLength": undefined,
38
+ "description": "bytes field",
39
+ "isArray": true,
40
+ "isComplex": false,
41
+ "name": "field_bytes",
42
+ "type": "uint8",
43
+ },
44
+ Object {
45
+ "arrayLength": undefined,
46
+ "description": "float64 field",
47
+ "isArray": false,
48
+ "isComplex": false,
49
+ "name": "field_float64",
50
+ "type": "float64",
51
+ },
52
+ Object {
53
+ "arrayLength": undefined,
54
+ "description": "uint32 field",
55
+ "isArray": false,
56
+ "isComplex": false,
57
+ "name": "field_uint32",
58
+ "type": "uint32",
59
+ },
60
+ Object {
61
+ "arrayLength": undefined,
62
+ "description": "string field",
63
+ "isArray": false,
64
+ "isComplex": false,
65
+ "name": "field_string",
66
+ "type": "string",
67
+ },
68
+ Object {
69
+ "arrayLength": undefined,
70
+ "description": "duration array field",
71
+ "isArray": true,
72
+ "isComplex": false,
73
+ "name": "field_duration_array",
74
+ "type": "duration",
75
+ },
76
+ Object {
77
+ "arrayLength": undefined,
78
+ "description": "time array field",
79
+ "isArray": true,
80
+ "isComplex": false,
81
+ "name": "field_time_array",
82
+ "type": "time",
83
+ },
84
+ Object {
85
+ "arrayLength": undefined,
86
+ "description": "boolean array field",
87
+ "isArray": true,
88
+ "isComplex": false,
89
+ "name": "field_boolean_array",
90
+ "type": "bool",
91
+ },
92
+ Object {
93
+ "arrayLength": undefined,
94
+ "description": "float64 array field",
95
+ "isArray": true,
96
+ "isComplex": false,
97
+ "name": "field_float64_array",
98
+ "type": "float64",
99
+ },
100
+ Object {
101
+ "arrayLength": undefined,
102
+ "description": "uint32 array field",
103
+ "isArray": true,
104
+ "isComplex": false,
105
+ "name": "field_uint32_array",
106
+ "type": "uint32",
107
+ },
108
+ Object {
109
+ "arrayLength": undefined,
110
+ "description": "string array field",
111
+ "isArray": true,
112
+ "isComplex": false,
113
+ "name": "field_string_array",
114
+ "type": "string",
115
+ },
116
+ Object {
117
+ "arrayLength": 3,
118
+ "description": "duration fixed-length array field",
119
+ "isArray": true,
120
+ "isComplex": false,
121
+ "name": "field_duration_fixed_array",
122
+ "type": "duration",
123
+ },
124
+ Object {
125
+ "arrayLength": 3,
126
+ "description": "time fixed-length array field",
127
+ "isArray": true,
128
+ "isComplex": false,
129
+ "name": "field_time_fixed_array",
130
+ "type": "time",
131
+ },
132
+ Object {
133
+ "arrayLength": 3,
134
+ "description": "boolean fixed-length array field",
135
+ "isArray": true,
136
+ "isComplex": false,
137
+ "name": "field_boolean_fixed_array",
138
+ "type": "bool",
139
+ },
140
+ Object {
141
+ "arrayLength": 3,
142
+ "description": "float64 fixed-length array field",
143
+ "isArray": true,
144
+ "isComplex": false,
145
+ "name": "field_float64_fixed_array",
146
+ "type": "float64",
147
+ },
148
+ Object {
149
+ "arrayLength": 3,
150
+ "description": "uint32 fixed-length array field",
151
+ "isArray": true,
152
+ "isComplex": false,
153
+ "name": "field_uint32_fixed_array",
154
+ "type": "uint32",
155
+ },
156
+ Object {
157
+ "arrayLength": 3,
158
+ "description": "string fixed-length array field",
159
+ "isArray": true,
160
+ "isComplex": false,
161
+ "name": "field_string_fixed_array",
162
+ "type": "string",
163
+ },
164
+ Object {
165
+ "description": "Value A",
166
+ "isConstant": true,
167
+ "name": "A",
168
+ "type": "uint8",
169
+ "value": 1,
170
+ "valueText": "1",
171
+ },
172
+ Object {
173
+ "description": "Value B",
174
+ "isConstant": true,
175
+ "name": "B",
176
+ "type": "uint8",
177
+ "value": 2,
178
+ "valueText": "2",
179
+ },
180
+ Object {
181
+ "arrayLength": undefined,
182
+ "description": "An enum field",
183
+ "isArray": false,
184
+ "isComplex": false,
185
+ "name": "field_enum",
186
+ "type": "uint8",
187
+ },
188
+ Object {
189
+ "arrayLength": undefined,
190
+ "description": "An enum array field",
191
+ "isArray": true,
192
+ "isComplex": false,
193
+ "name": "field_enum_array",
194
+ "type": "uint8",
195
+ },
196
+ Object {
197
+ "arrayLength": undefined,
198
+ "description": "A nested field",
199
+ "isArray": false,
200
+ "isComplex": true,
201
+ "name": "field_nested",
202
+ "type": "foxglove_msgs/NestedMessage",
203
+ },
204
+ Object {
205
+ "arrayLength": undefined,
206
+ "description": "A nested array field
207
+ With
208
+ a
209
+ very
210
+ long
211
+ description",
212
+ "isArray": true,
213
+ "isComplex": true,
214
+ "name": "field_nested_array",
215
+ "type": "foxglove_msgs/NestedMessage",
216
+ },
217
+ ],
218
+ "originalName": "ExampleMessage",
219
+ "rosFullInterfaceName": "foxglove_msgs/ExampleMessage",
220
+ "rosMsgInterfaceName": "foxglove_msgs/ExampleMessage",
221
+ }
222
+ `);
222
223
  });
223
224
  it("generates msg definition description for ROS 2", () => {
224
225
  expect(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, { rosVersion: 2 }))
225
226
  .toMatchInlineSnapshot(`
226
- Object {
227
- "fields": Array [
228
- Object {
229
- "arrayLength": undefined,
230
- "description": "duration field",
231
- "isArray": false,
232
- "isComplex": false,
233
- "name": "field_duration",
234
- "type": "builtin_interfaces/Duration",
235
- },
236
- Object {
237
- "arrayLength": undefined,
238
- "description": "time field",
239
- "isArray": false,
240
- "isComplex": false,
241
- "name": "field_time",
242
- "type": "builtin_interfaces/Time",
243
- },
244
- Object {
245
- "arrayLength": undefined,
246
- "description": "boolean field",
247
- "isArray": false,
248
- "isComplex": false,
249
- "name": "field_boolean",
250
- "type": "bool",
251
- },
252
- Object {
253
- "arrayLength": undefined,
254
- "description": "bytes field",
255
- "isArray": true,
256
- "isComplex": false,
257
- "name": "field_bytes",
258
- "type": "uint8",
259
- },
260
- Object {
261
- "arrayLength": undefined,
262
- "description": "float64 field",
263
- "isArray": false,
264
- "isComplex": false,
265
- "name": "field_float64",
266
- "type": "float64",
267
- },
268
- Object {
269
- "arrayLength": undefined,
270
- "description": "uint32 field",
271
- "isArray": false,
272
- "isComplex": false,
273
- "name": "field_uint32",
274
- "type": "uint32",
275
- },
276
- Object {
277
- "arrayLength": undefined,
278
- "description": "string field",
279
- "isArray": false,
280
- "isComplex": false,
281
- "name": "field_string",
282
- "type": "string",
283
- },
284
- Object {
285
- "arrayLength": undefined,
286
- "description": "duration array field",
287
- "isArray": true,
288
- "isComplex": false,
289
- "name": "field_duration_array",
290
- "type": "builtin_interfaces/Duration",
291
- },
292
- Object {
293
- "arrayLength": undefined,
294
- "description": "time array field",
295
- "isArray": true,
296
- "isComplex": false,
297
- "name": "field_time_array",
298
- "type": "builtin_interfaces/Time",
299
- },
300
- Object {
301
- "arrayLength": undefined,
302
- "description": "boolean array field",
303
- "isArray": true,
304
- "isComplex": false,
305
- "name": "field_boolean_array",
306
- "type": "bool",
307
- },
308
- Object {
309
- "arrayLength": undefined,
310
- "description": "float64 array field",
311
- "isArray": true,
312
- "isComplex": false,
313
- "name": "field_float64_array",
314
- "type": "float64",
315
- },
316
227
  Object {
317
- "arrayLength": undefined,
318
- "description": "uint32 array field",
319
- "isArray": true,
320
- "isComplex": false,
321
- "name": "field_uint32_array",
322
- "type": "uint32",
323
- },
324
- Object {
325
- "arrayLength": undefined,
326
- "description": "string array field",
327
- "isArray": true,
328
- "isComplex": false,
329
- "name": "field_string_array",
330
- "type": "string",
331
- },
332
- Object {
333
- "arrayLength": 3,
334
- "description": "duration fixed-length array field",
335
- "isArray": true,
336
- "isComplex": false,
337
- "name": "field_duration_fixed_array",
338
- "type": "builtin_interfaces/Duration",
339
- },
340
- Object {
341
- "arrayLength": 3,
342
- "description": "time fixed-length array field",
343
- "isArray": true,
344
- "isComplex": false,
345
- "name": "field_time_fixed_array",
346
- "type": "builtin_interfaces/Time",
347
- },
348
- Object {
349
- "arrayLength": 3,
350
- "description": "boolean fixed-length array field",
351
- "isArray": true,
352
- "isComplex": false,
353
- "name": "field_boolean_fixed_array",
354
- "type": "bool",
355
- },
356
- Object {
357
- "arrayLength": 3,
358
- "description": "float64 fixed-length array field",
359
- "isArray": true,
360
- "isComplex": false,
361
- "name": "field_float64_fixed_array",
362
- "type": "float64",
363
- },
364
- Object {
365
- "arrayLength": 3,
366
- "description": "uint32 fixed-length array field",
367
- "isArray": true,
368
- "isComplex": false,
369
- "name": "field_uint32_fixed_array",
370
- "type": "uint32",
371
- },
372
- Object {
373
- "arrayLength": 3,
374
- "description": "string fixed-length array field",
375
- "isArray": true,
376
- "isComplex": false,
377
- "name": "field_string_fixed_array",
378
- "type": "string",
379
- },
380
- Object {
381
- "description": "Value A",
382
- "isConstant": true,
383
- "name": "A",
384
- "type": "uint8",
385
- "value": 1,
386
- "valueText": "1",
387
- },
388
- Object {
389
- "description": "Value B",
390
- "isConstant": true,
391
- "name": "B",
392
- "type": "uint8",
393
- "value": 2,
394
- "valueText": "2",
395
- },
396
- Object {
397
- "arrayLength": undefined,
398
- "description": "An enum field",
399
- "isArray": false,
400
- "isComplex": false,
401
- "name": "field_enum",
402
- "type": "uint8",
403
- },
404
- Object {
405
- "arrayLength": undefined,
406
- "description": "An enum array field",
407
- "isArray": true,
408
- "isComplex": false,
409
- "name": "field_enum_array",
410
- "type": "uint8",
411
- },
412
- Object {
413
- "arrayLength": undefined,
414
- "description": "A nested field",
415
- "isArray": false,
416
- "isComplex": true,
417
- "name": "field_nested",
418
- "type": "foxglove_msgs/NestedMessage",
419
- },
420
- Object {
421
- "arrayLength": undefined,
422
- "description": "A nested array field
423
- With
424
- a
425
- very
426
- long
427
- description",
428
- "isArray": true,
429
- "isComplex": true,
430
- "name": "field_nested_array",
431
- "type": "foxglove_msgs/NestedMessage",
432
- },
433
- ],
434
- "originalName": "ExampleMessage",
435
- "rosFullInterfaceName": "foxglove_msgs/msg/ExampleMessage",
436
- "rosMsgInterfaceName": "foxglove_msgs/ExampleMessage",
437
- }
438
- `);
228
+ "description": "An example type",
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
+ `);
439
441
  });
440
442
  });
441
443
  describe("generateRosMsg", () => {
@@ -443,7 +445,10 @@ describe("generateRosMsg", () => {
443
445
  expect(generateRosMsg(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, {
444
446
  rosVersion: 1,
445
447
  }))).toMatchInlineSnapshot(`
446
- "# Generated from ExampleMessage by @foxglove/schemas
448
+ "# foxglove_msgs/ExampleMessage
449
+ # An example type
450
+
451
+ # Generated by https://github.com/foxglove/schemas
447
452
 
448
453
  # duration field
449
454
  duration field_duration
@@ -531,7 +536,10 @@ describe("generateRosMsg", () => {
531
536
  expect(generateRosMsg(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, {
532
537
  rosVersion: 2,
533
538
  }))).toMatchInlineSnapshot(`
534
- "# Generated from ExampleMessage by @foxglove/schemas
539
+ "# foxglove_msgs/msg/ExampleMessage
540
+ # An example type
541
+
542
+ # Generated by https://github.com/foxglove/schemas
535
543
 
536
544
  # duration field
537
545
  builtin_interfaces/Duration field_duration
@@ -622,7 +630,10 @@ describe("generateRosMsgMergedSchema", () => {
622
630
  rosVersion: 1,
623
631
  });
624
632
  expect(mergedSchema).toMatchInlineSnapshot(`
625
- "# Generated from ExampleMessage by @foxglove/schemas
633
+ "# foxglove_msgs/ExampleMessage
634
+ # An example type
635
+
636
+ # Generated by https://github.com/foxglove/schemas
626
637
 
627
638
  # duration field
628
639
  duration field_duration
@@ -705,7 +716,10 @@ describe("generateRosMsgMergedSchema", () => {
705
716
  foxglove_msgs/NestedMessage[] field_nested_array
706
717
  ================================================================================
707
718
  MSG: foxglove_msgs/NestedMessage
708
- # Generated from NestedMessage by @foxglove/schemas
719
+ # foxglove_msgs/NestedMessage
720
+ # An example nested message
721
+
722
+ # Generated by https://github.com/foxglove/schemas
709
723
 
710
724
  # An enum field
711
725
  uint32 field_enum
@@ -895,7 +909,10 @@ describe("generateRosMsgMergedSchema", () => {
895
909
  rosVersion: 2,
896
910
  });
897
911
  expect(mergedSchema).toMatchInlineSnapshot(`
898
- "# Generated from ExampleMessage by @foxglove/schemas
912
+ "# foxglove_msgs/msg/ExampleMessage
913
+ # An example type
914
+
915
+ # Generated by https://github.com/foxglove/schemas
899
916
 
900
917
  # duration field
901
918
  builtin_interfaces/Duration field_duration
@@ -978,7 +995,10 @@ describe("generateRosMsgMergedSchema", () => {
978
995
  foxglove_msgs/NestedMessage[] field_nested_array
979
996
  ================================================================================
980
997
  MSG: foxglove_msgs/NestedMessage
981
- # Generated from NestedMessage by @foxglove/schemas
998
+ # foxglove_msgs/msg/NestedMessage
999
+ # An example nested message
1000
+
1001
+ # Generated by https://github.com/foxglove/schemas
982
1002
 
983
1003
  # An enum field
984
1004
  uint32 field_enum