@foxglove/schemas 0.1.2 → 0.4.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 (320) hide show
  1. package/.github/workflows/ci.yml +7 -1
  2. package/README.md +45 -4
  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.d.ts +1 -1
  32. package/dist/cjs/schemas/typescript/PackedElementField.d.ts.map +1 -1
  33. package/dist/cjs/schemas/typescript/PackedElementField.js +1 -1
  34. package/dist/cjs/schemas/typescript/PackedElementField.js.map +1 -1
  35. package/dist/cjs/schemas/typescript/Point2.js +1 -1
  36. package/dist/cjs/schemas/typescript/Point2.js.map +1 -1
  37. package/dist/cjs/schemas/typescript/Point3.js +1 -1
  38. package/dist/cjs/schemas/typescript/Point3.js.map +1 -1
  39. package/dist/cjs/schemas/typescript/PointCloud.js +1 -1
  40. package/dist/cjs/schemas/typescript/PointCloud.js.map +1 -1
  41. package/dist/cjs/schemas/typescript/PointsAnnotation.d.ts +5 -1
  42. package/dist/cjs/schemas/typescript/PointsAnnotation.d.ts.map +1 -1
  43. package/dist/cjs/schemas/typescript/PointsAnnotation.js +1 -1
  44. package/dist/cjs/schemas/typescript/PointsAnnotation.js.map +1 -1
  45. package/dist/cjs/schemas/typescript/PointsAnnotationType.js +1 -1
  46. package/dist/cjs/schemas/typescript/PointsAnnotationType.js.map +1 -1
  47. package/dist/cjs/schemas/typescript/Pose.js +1 -1
  48. package/dist/cjs/schemas/typescript/Pose.js.map +1 -1
  49. package/dist/cjs/schemas/typescript/PoseInFrame.js +1 -1
  50. package/dist/cjs/schemas/typescript/PoseInFrame.js.map +1 -1
  51. package/dist/cjs/schemas/typescript/PosesInFrame.js +1 -1
  52. package/dist/cjs/schemas/typescript/PositionCovarianceType.js +1 -1
  53. package/dist/cjs/schemas/typescript/PositionCovarianceType.js.map +1 -1
  54. package/dist/cjs/schemas/typescript/Quaternion.js +1 -1
  55. package/dist/cjs/schemas/typescript/Quaternion.js.map +1 -1
  56. package/dist/cjs/schemas/typescript/RawImage.js +1 -1
  57. package/dist/cjs/schemas/typescript/RawImage.js.map +1 -1
  58. package/dist/cjs/schemas/typescript/Vector2.js +1 -1
  59. package/dist/cjs/schemas/typescript/Vector2.js.map +1 -1
  60. package/dist/cjs/schemas/typescript/Vector3.js +1 -1
  61. package/dist/cjs/schemas/typescript/Vector3.js.map +1 -1
  62. package/dist/cjs/schemas/typescript/index.d.ts +0 -1
  63. package/dist/cjs/schemas/typescript/index.d.ts.map +1 -1
  64. package/dist/cjs/schemas/typescript/index.js +0 -1
  65. package/dist/cjs/schemas/typescript/index.js.map +1 -1
  66. package/dist/cjs/scripts/updateGeneratedFiles.js +17 -4
  67. package/dist/cjs/scripts/updateGeneratedFiles.js.map +1 -1
  68. package/dist/cjs/src/generateJsonSchema.d.ts.map +1 -1
  69. package/dist/cjs/src/generateJsonSchema.js +4 -3
  70. package/dist/cjs/src/generateJsonSchema.js.map +1 -1
  71. package/dist/cjs/src/generateJsonSchema.test.js +6 -8
  72. package/dist/cjs/src/generateJsonSchema.test.js.map +1 -1
  73. package/dist/cjs/src/generateMarkdown.d.ts +3 -0
  74. package/dist/cjs/src/generateMarkdown.d.ts.map +1 -0
  75. package/dist/cjs/src/generateMarkdown.js +80 -0
  76. package/dist/cjs/src/generateMarkdown.js.map +1 -0
  77. package/dist/cjs/src/generateProto.js +1 -1
  78. package/dist/cjs/src/generateProto.js.map +1 -1
  79. package/dist/cjs/src/generateProto.test.js +1 -1
  80. package/dist/cjs/src/generateRos.d.ts +4 -1
  81. package/dist/cjs/src/generateRos.d.ts.map +1 -1
  82. package/dist/cjs/src/generateRos.js +8 -4
  83. package/dist/cjs/src/generateRos.js.map +1 -1
  84. package/dist/cjs/src/generateRos.test.js +463 -7
  85. package/dist/cjs/src/generateRos.test.js.map +1 -1
  86. package/dist/cjs/src/generateTypeScript.js +1 -1
  87. package/dist/cjs/src/generateTypeScript.js.map +1 -1
  88. package/dist/cjs/src/generateTypeScript.test.js +2 -2
  89. package/dist/cjs/src/schemas.d.ts +0 -2
  90. package/dist/cjs/src/schemas.d.ts.map +1 -1
  91. package/dist/cjs/src/schemas.js +23 -31
  92. package/dist/cjs/src/schemas.js.map +1 -1
  93. package/dist/esm/schemas/typescript/CameraCalibration.js +1 -1
  94. package/dist/esm/schemas/typescript/CameraCalibration.js.map +1 -1
  95. package/dist/esm/schemas/typescript/CircleAnnotation.js +1 -1
  96. package/dist/esm/schemas/typescript/CircleAnnotation.js.map +1 -1
  97. package/dist/esm/schemas/typescript/Color.js +1 -1
  98. package/dist/esm/schemas/typescript/Color.js.map +1 -1
  99. package/dist/esm/schemas/typescript/CompressedImage.js +1 -1
  100. package/dist/esm/schemas/typescript/CompressedImage.js.map +1 -1
  101. package/dist/esm/schemas/typescript/FrameTransform.d.ts +6 -3
  102. package/dist/esm/schemas/typescript/FrameTransform.d.ts.map +1 -1
  103. package/dist/esm/schemas/typescript/FrameTransform.js +1 -1
  104. package/dist/esm/schemas/typescript/FrameTransform.js.map +1 -1
  105. package/dist/esm/schemas/typescript/GeoJSON.js +1 -1
  106. package/dist/esm/schemas/typescript/GeoJSON.js.map +1 -1
  107. package/dist/esm/schemas/typescript/Grid.js +1 -1
  108. package/dist/esm/schemas/typescript/Grid.js.map +1 -1
  109. package/dist/esm/schemas/typescript/ImageAnnotations.js +1 -1
  110. package/dist/esm/schemas/typescript/ImageAnnotations.js.map +1 -1
  111. package/dist/esm/schemas/typescript/LaserScan.js +1 -1
  112. package/dist/esm/schemas/typescript/LaserScan.js.map +1 -1
  113. package/dist/esm/schemas/typescript/LocationFix.js +1 -1
  114. package/dist/esm/schemas/typescript/LocationFix.js.map +1 -1
  115. package/dist/esm/schemas/typescript/Log.js +1 -1
  116. package/dist/esm/schemas/typescript/Log.js.map +1 -1
  117. package/dist/esm/schemas/typescript/LogLevel.js +1 -1
  118. package/dist/esm/schemas/typescript/LogLevel.js.map +1 -1
  119. package/dist/esm/schemas/typescript/NumericType.js +1 -1
  120. package/dist/esm/schemas/typescript/NumericType.js.map +1 -1
  121. package/dist/esm/schemas/typescript/PackedElementField.d.ts +1 -1
  122. package/dist/esm/schemas/typescript/PackedElementField.d.ts.map +1 -1
  123. package/dist/esm/schemas/typescript/PackedElementField.js +1 -1
  124. package/dist/esm/schemas/typescript/PackedElementField.js.map +1 -1
  125. package/dist/esm/schemas/typescript/Point2.js +1 -1
  126. package/dist/esm/schemas/typescript/Point2.js.map +1 -1
  127. package/dist/esm/schemas/typescript/Point3.js +1 -1
  128. package/dist/esm/schemas/typescript/Point3.js.map +1 -1
  129. package/dist/esm/schemas/typescript/PointCloud.js +1 -1
  130. package/dist/esm/schemas/typescript/PointCloud.js.map +1 -1
  131. package/dist/esm/schemas/typescript/PointsAnnotation.d.ts +5 -1
  132. package/dist/esm/schemas/typescript/PointsAnnotation.d.ts.map +1 -1
  133. package/dist/esm/schemas/typescript/PointsAnnotation.js +1 -1
  134. package/dist/esm/schemas/typescript/PointsAnnotation.js.map +1 -1
  135. package/dist/esm/schemas/typescript/PointsAnnotationType.js +1 -1
  136. package/dist/esm/schemas/typescript/PointsAnnotationType.js.map +1 -1
  137. package/dist/esm/schemas/typescript/Pose.js +1 -1
  138. package/dist/esm/schemas/typescript/Pose.js.map +1 -1
  139. package/dist/esm/schemas/typescript/PoseInFrame.js +1 -1
  140. package/dist/esm/schemas/typescript/PoseInFrame.js.map +1 -1
  141. package/dist/esm/schemas/typescript/PosesInFrame.js +1 -1
  142. package/dist/esm/schemas/typescript/PositionCovarianceType.js +1 -1
  143. package/dist/esm/schemas/typescript/PositionCovarianceType.js.map +1 -1
  144. package/dist/esm/schemas/typescript/Quaternion.js +1 -1
  145. package/dist/esm/schemas/typescript/Quaternion.js.map +1 -1
  146. package/dist/esm/schemas/typescript/RawImage.js +1 -1
  147. package/dist/esm/schemas/typescript/RawImage.js.map +1 -1
  148. package/dist/esm/schemas/typescript/Vector2.js +1 -1
  149. package/dist/esm/schemas/typescript/Vector2.js.map +1 -1
  150. package/dist/esm/schemas/typescript/Vector3.js +1 -1
  151. package/dist/esm/schemas/typescript/Vector3.js.map +1 -1
  152. package/dist/esm/schemas/typescript/index.d.ts +0 -1
  153. package/dist/esm/schemas/typescript/index.d.ts.map +1 -1
  154. package/dist/esm/schemas/typescript/index.js +0 -1
  155. package/dist/esm/schemas/typescript/index.js.map +1 -1
  156. package/dist/esm/scripts/updateGeneratedFiles.js +17 -4
  157. package/dist/esm/scripts/updateGeneratedFiles.js.map +1 -1
  158. package/dist/esm/src/generateJsonSchema.d.ts.map +1 -1
  159. package/dist/esm/src/generateJsonSchema.js +4 -3
  160. package/dist/esm/src/generateJsonSchema.js.map +1 -1
  161. package/dist/esm/src/generateJsonSchema.test.js +6 -8
  162. package/dist/esm/src/generateJsonSchema.test.js.map +1 -1
  163. package/dist/esm/src/generateMarkdown.d.ts +3 -0
  164. package/dist/esm/src/generateMarkdown.d.ts.map +1 -0
  165. package/dist/esm/src/generateMarkdown.js +76 -0
  166. package/dist/esm/src/generateMarkdown.js.map +1 -0
  167. package/dist/esm/src/generateProto.js +1 -1
  168. package/dist/esm/src/generateProto.js.map +1 -1
  169. package/dist/esm/src/generateProto.test.js +1 -1
  170. package/dist/esm/src/generateRos.d.ts +4 -1
  171. package/dist/esm/src/generateRos.d.ts.map +1 -1
  172. package/dist/esm/src/generateRos.js +8 -4
  173. package/dist/esm/src/generateRos.js.map +1 -1
  174. package/dist/esm/src/generateRos.test.js +463 -7
  175. package/dist/esm/src/generateRos.test.js.map +1 -1
  176. package/dist/esm/src/generateTypeScript.js +1 -1
  177. package/dist/esm/src/generateTypeScript.js.map +1 -1
  178. package/dist/esm/src/generateTypeScript.test.js +2 -2
  179. package/dist/esm/src/schemas.d.ts +0 -2
  180. package/dist/esm/src/schemas.d.ts.map +1 -1
  181. package/dist/esm/src/schemas.js +21 -29
  182. package/dist/esm/src/schemas.js.map +1 -1
  183. package/package.json +2 -2
  184. package/schemas/README.md +1711 -0
  185. package/schemas/jsonschema/CameraCalibration.json +2 -2
  186. package/schemas/jsonschema/CircleAnnotation.json +5 -8
  187. package/schemas/jsonschema/Color.json +2 -2
  188. package/schemas/jsonschema/CompressedImage.json +2 -2
  189. package/schemas/jsonschema/FrameTransform.json +37 -63
  190. package/schemas/jsonschema/GeoJSON.json +2 -2
  191. package/schemas/jsonschema/Grid.json +9 -14
  192. package/schemas/jsonschema/ImageAnnotations.json +39 -20
  193. package/schemas/jsonschema/LaserScan.json +5 -8
  194. package/schemas/jsonschema/LocationFix.json +3 -3
  195. package/schemas/jsonschema/Log.json +3 -3
  196. package/schemas/jsonschema/PackedElementField.json +4 -4
  197. package/schemas/jsonschema/Point2.json +2 -2
  198. package/schemas/jsonschema/Point3.json +2 -2
  199. package/schemas/jsonschema/PointCloud.json +8 -12
  200. package/schemas/jsonschema/PointsAnnotation.json +34 -10
  201. package/schemas/jsonschema/Pose.json +4 -6
  202. package/schemas/jsonschema/PoseInFrame.json +5 -8
  203. package/schemas/jsonschema/PosesInFrame.json +5 -8
  204. package/schemas/jsonschema/Quaternion.json +2 -2
  205. package/schemas/jsonschema/RawImage.json +2 -2
  206. package/schemas/jsonschema/Vector2.json +2 -2
  207. package/schemas/jsonschema/Vector3.json +2 -2
  208. package/schemas/proto/foxglove/CameraCalibration.proto +1 -1
  209. package/schemas/proto/foxglove/CircleAnnotation.proto +1 -1
  210. package/schemas/proto/foxglove/Color.proto +1 -1
  211. package/schemas/proto/foxglove/CompressedImage.proto +1 -1
  212. package/schemas/proto/foxglove/FrameTransform.proto +8 -4
  213. package/schemas/proto/foxglove/GeoJSON.proto +1 -1
  214. package/schemas/proto/foxglove/Grid.proto +1 -1
  215. package/schemas/proto/foxglove/ImageAnnotations.proto +1 -1
  216. package/schemas/proto/foxglove/LaserScan.proto +1 -1
  217. package/schemas/proto/foxglove/LocationFix.proto +1 -1
  218. package/schemas/proto/foxglove/Log.proto +1 -1
  219. package/schemas/proto/foxglove/PackedElementField.proto +2 -2
  220. package/schemas/proto/foxglove/Point2.proto +1 -1
  221. package/schemas/proto/foxglove/Point3.proto +1 -1
  222. package/schemas/proto/foxglove/PointCloud.proto +1 -1
  223. package/schemas/proto/foxglove/PointsAnnotation.proto +10 -4
  224. package/schemas/proto/foxglove/Pose.proto +1 -1
  225. package/schemas/proto/foxglove/PoseInFrame.proto +1 -1
  226. package/schemas/proto/foxglove/PosesInFrame.proto +1 -1
  227. package/schemas/proto/foxglove/Quaternion.proto +1 -1
  228. package/schemas/proto/foxglove/RawImage.proto +1 -1
  229. package/schemas/proto/foxglove/Vector2.proto +1 -1
  230. package/schemas/proto/foxglove/Vector3.proto +1 -1
  231. package/schemas/ros1/CameraCalibration.msg +4 -1
  232. package/schemas/ros1/CircleAnnotation.msg +4 -1
  233. package/schemas/ros1/Color.msg +4 -1
  234. package/schemas/ros1/CompressedImage.msg +4 -1
  235. package/schemas/ros1/FrameTransform.msg +9 -3
  236. package/schemas/ros1/GeoJSON.msg +4 -1
  237. package/schemas/ros1/Grid.msg +4 -1
  238. package/schemas/ros1/ImageAnnotations.msg +4 -1
  239. package/schemas/ros1/LaserScan.msg +4 -1
  240. package/schemas/ros1/LocationFix.msg +4 -1
  241. package/schemas/ros1/Log.msg +4 -1
  242. package/schemas/ros1/PackedElementField.msg +4 -1
  243. package/schemas/ros1/Point2.msg +4 -1
  244. package/schemas/ros1/PointCloud.msg +4 -1
  245. package/schemas/ros1/PointsAnnotation.msg +11 -2
  246. package/schemas/ros1/PoseInFrame.msg +4 -1
  247. package/schemas/ros1/PosesInFrame.msg +4 -1
  248. package/schemas/ros1/RawImage.msg +4 -1
  249. package/schemas/ros1/Vector2.msg +4 -1
  250. package/schemas/ros2/CameraCalibration.msg +4 -1
  251. package/schemas/ros2/CircleAnnotation.msg +4 -1
  252. package/schemas/ros2/Color.msg +4 -1
  253. package/schemas/ros2/CompressedImage.msg +4 -1
  254. package/schemas/ros2/FrameTransform.msg +9 -3
  255. package/schemas/ros2/GeoJSON.msg +4 -1
  256. package/schemas/ros2/Grid.msg +4 -1
  257. package/schemas/ros2/ImageAnnotations.msg +4 -1
  258. package/schemas/ros2/LaserScan.msg +4 -1
  259. package/schemas/ros2/LocationFix.msg +4 -1
  260. package/schemas/ros2/Log.msg +4 -1
  261. package/schemas/ros2/PackedElementField.msg +4 -1
  262. package/schemas/ros2/Point2.msg +4 -1
  263. package/schemas/ros2/PointCloud.msg +4 -1
  264. package/schemas/ros2/PointsAnnotation.msg +11 -2
  265. package/schemas/ros2/PoseInFrame.msg +4 -1
  266. package/schemas/ros2/PosesInFrame.msg +4 -1
  267. package/schemas/ros2/RawImage.msg +4 -1
  268. package/schemas/ros2/Vector2.msg +4 -1
  269. package/schemas/typescript/CameraCalibration.ts +1 -1
  270. package/schemas/typescript/CircleAnnotation.ts +1 -1
  271. package/schemas/typescript/Color.ts +1 -1
  272. package/schemas/typescript/CompressedImage.ts +1 -1
  273. package/schemas/typescript/FrameTransform.ts +8 -4
  274. package/schemas/typescript/GeoJSON.ts +1 -1
  275. package/schemas/typescript/Grid.ts +1 -1
  276. package/schemas/typescript/ImageAnnotations.ts +1 -1
  277. package/schemas/typescript/LaserScan.ts +1 -1
  278. package/schemas/typescript/LocationFix.ts +1 -1
  279. package/schemas/typescript/Log.ts +1 -1
  280. package/schemas/typescript/LogLevel.ts +1 -1
  281. package/schemas/typescript/NumericType.ts +1 -1
  282. package/schemas/typescript/PackedElementField.ts +2 -2
  283. package/schemas/typescript/Point2.ts +1 -1
  284. package/schemas/typescript/Point3.ts +1 -1
  285. package/schemas/typescript/PointCloud.ts +1 -1
  286. package/schemas/typescript/PointsAnnotation.ts +8 -2
  287. package/schemas/typescript/PointsAnnotationType.ts +1 -1
  288. package/schemas/typescript/Pose.ts +1 -1
  289. package/schemas/typescript/PoseInFrame.ts +1 -1
  290. package/schemas/typescript/PosesInFrame.ts +1 -1
  291. package/schemas/typescript/PositionCovarianceType.ts +1 -1
  292. package/schemas/typescript/Quaternion.ts +1 -1
  293. package/schemas/typescript/RawImage.ts +1 -1
  294. package/schemas/typescript/Vector2.ts +1 -1
  295. package/schemas/typescript/Vector3.ts +1 -1
  296. package/schemas/typescript/index.ts +0 -1
  297. package/scripts/updateGeneratedFiles.ts +21 -10
  298. package/src/generateJsonSchema.test.ts +6 -8
  299. package/src/generateJsonSchema.ts +4 -3
  300. package/src/generateMarkdown.ts +88 -0
  301. package/src/generateProto.test.ts +1 -1
  302. package/src/generateProto.ts +1 -1
  303. package/src/generateRos.test.ts +464 -7
  304. package/src/generateRos.ts +14 -5
  305. package/src/generateTypeScript.test.ts +2 -2
  306. package/src/generateTypeScript.ts +1 -1
  307. package/src/schemas.ts +22 -30
  308. package/dist/cjs/schemas/typescript/Transform.d.ts +0 -13
  309. package/dist/cjs/schemas/typescript/Transform.d.ts.map +0 -1
  310. package/dist/cjs/schemas/typescript/Transform.js +0 -4
  311. package/dist/cjs/schemas/typescript/Transform.js.map +0 -1
  312. package/dist/esm/schemas/typescript/Transform.d.ts +0 -13
  313. package/dist/esm/schemas/typescript/Transform.d.ts.map +0 -1
  314. package/dist/esm/schemas/typescript/Transform.js +0 -3
  315. package/dist/esm/schemas/typescript/Transform.js.map +0 -1
  316. package/schemas/jsonschema/Transform.json +0 -68
  317. package/schemas/proto/foxglove/Transform.proto +0 -21
  318. package/schemas/ros1/Transform.msg +0 -10
  319. package/schemas/ros2/Transform.msg +0 -10
  320. package/schemas/typescript/Transform.ts +0 -17
@@ -2,12 +2,453 @@ import { parse as parseMessageDefinition } from "@foxglove/rosmsg";
2
2
  import { generateRosMsgMergedSchema, generateRosMsgDefinition, generateRosMsg, } from "./generateRos";
3
3
  import { foxgloveMessageSchemas } from "./schemas";
4
4
  import { exampleMessageWithoutArrayOfBytes } from "./testFixtures";
5
- describe("generateRosMsgFiles", () => {
5
+ describe("generateRosMsgDefinition", () => {
6
+ it("generates msg definition description for ROS 1", () => {
7
+ expect(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, { rosVersion: 1 }))
8
+ .toMatchInlineSnapshot(`
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
+ `);
223
+ });
224
+ it("generates msg definition description for ROS 2", () => {
225
+ expect(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, { rosVersion: 2 }))
226
+ .toMatchInlineSnapshot(`
227
+ Object {
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
+ `);
441
+ });
442
+ });
443
+ describe("generateRosMsg", () => {
6
444
  it("generates msg file for ROS 1", () => {
7
445
  expect(generateRosMsg(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, {
8
446
  rosVersion: 1,
9
447
  }))).toMatchInlineSnapshot(`
10
- "# Generated from ExampleMessage by @foxglove/schemas
448
+ "# foxglove_msgs/ExampleMessage
449
+ # An example type
450
+
451
+ # Generated by https://github.com/foxglove/schemas
11
452
 
12
453
  # duration field
13
454
  duration field_duration
@@ -95,7 +536,10 @@ describe("generateRosMsgFiles", () => {
95
536
  expect(generateRosMsg(generateRosMsgDefinition(exampleMessageWithoutArrayOfBytes, {
96
537
  rosVersion: 2,
97
538
  }))).toMatchInlineSnapshot(`
98
- "# Generated from ExampleMessage by @foxglove/schemas
539
+ "# foxglove_msgs/msg/ExampleMessage
540
+ # An example type
541
+
542
+ # Generated by https://github.com/foxglove/schemas
99
543
 
100
544
  # duration field
101
545
  builtin_interfaces/Duration field_duration
@@ -186,7 +630,10 @@ describe("generateRosMsgMergedSchema", () => {
186
630
  rosVersion: 1,
187
631
  });
188
632
  expect(mergedSchema).toMatchInlineSnapshot(`
189
- "# Generated from ExampleMessage by @foxglove/schemas
633
+ "# foxglove_msgs/ExampleMessage
634
+ # An example type
635
+
636
+ # Generated by https://github.com/foxglove/schemas
190
637
 
191
638
  # duration field
192
639
  duration field_duration
@@ -269,7 +716,10 @@ describe("generateRosMsgMergedSchema", () => {
269
716
  foxglove_msgs/NestedMessage[] field_nested_array
270
717
  ================================================================================
271
718
  MSG: foxglove_msgs/NestedMessage
272
- # Generated from NestedMessage by @foxglove/schemas
719
+ # foxglove_msgs/NestedMessage
720
+ # An example nested message
721
+
722
+ # Generated by https://github.com/foxglove/schemas
273
723
 
274
724
  # An enum field
275
725
  uint32 field_enum
@@ -459,7 +909,10 @@ describe("generateRosMsgMergedSchema", () => {
459
909
  rosVersion: 2,
460
910
  });
461
911
  expect(mergedSchema).toMatchInlineSnapshot(`
462
- "# Generated from ExampleMessage by @foxglove/schemas
912
+ "# foxglove_msgs/msg/ExampleMessage
913
+ # An example type
914
+
915
+ # Generated by https://github.com/foxglove/schemas
463
916
 
464
917
  # duration field
465
918
  builtin_interfaces/Duration field_duration
@@ -542,7 +995,10 @@ describe("generateRosMsgMergedSchema", () => {
542
995
  foxglove_msgs/NestedMessage[] field_nested_array
543
996
  ================================================================================
544
997
  MSG: foxglove_msgs/NestedMessage
545
- # 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
546
1002
 
547
1003
  # An enum field
548
1004
  uint32 field_enum
@@ -1 +1 @@
1
- {"version":3,"file":"generateRos.test.js","sourceRoot":"","sources":["../../../src/generateRos.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateRos.test.js","sourceRoot":"","sources":["../../../src/generateRos.test.ts"],"names":[],"mappings":"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"}
@@ -84,7 +84,7 @@ export function generateTypeScript(schema) {
84
84
  }
85
85
  }
86
86
  const outputSections = [
87
- `// Generated from ${schema.name} by @foxglove/schemas`,
87
+ `// Generated by https://github.com/foxglove/schemas`,
88
88
  Array.from(imports)
89
89
  .sort()
90
90
  .map((name) => `import { ${name} } from "./${name}";`)
@@ -1 +1 @@
1
- {"version":3,"file":"generateTypeScript.js","sourceRoot":"","sources":["../../../src/generateTypeScript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateTypeScript.js","sourceRoot":"","sources":["../../../src/generateTypeScript.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { exampleEnum, exampleMessage } from "./testFixtures";
3
3
  describe("generateTypeScript", () => {
4
4
  it("generates .d.ts files", () => {
5
5
  expect(generateTypeScript(exampleEnum)).toMatchInlineSnapshot(`
6
- "// Generated from ExampleEnum by @foxglove/schemas
6
+ "// Generated by https://github.com/foxglove/schemas
7
7
 
8
8
  /** An example enum */
9
9
  export enum ExampleEnum {
@@ -16,7 +16,7 @@ describe("generateTypeScript", () => {
16
16
  "
17
17
  `);
18
18
  expect(generateTypeScript(exampleMessage)).toMatchInlineSnapshot(`
19
- "// Generated from ExampleMessage by @foxglove/schemas
19
+ "// Generated by https://github.com/foxglove/schemas
20
20
 
21
21
  import { Duration } from \\"./Duration\\";
22
22
  import { ExampleEnum } from \\"./ExampleEnum\\";
@@ -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;
@@ -22,7 +21,6 @@ export declare const foxgloveMessageSchemas: {
22
21
  PosesInFrame: FoxgloveMessageSchema;
23
22
  Quaternion: FoxgloveMessageSchema;
24
23
  RawImage: FoxgloveMessageSchema;
25
- Transform: FoxgloveMessageSchema;
26
24
  Vector2: FoxgloveMessageSchema;
27
25
  Vector3: FoxgloveMessageSchema;
28
26
  };
@@ -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;AA6yBpE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;CAwBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC"}