@foxglove/schemas 0.6.0 → 0.6.1

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.
@@ -43,10 +43,10 @@ describe("generateTypeScript", () => {
43
43
  expect((0, generateTypeScript_1.generateTypeScript)(testFixtures_1.exampleMessage)).toMatchInlineSnapshot(`
44
44
  "// Generated by https://github.com/foxglove/schemas
45
45
 
46
- import { Duration } from \\"./Duration\\";
47
- import { ExampleEnum } from \\"./ExampleEnum\\";
48
- import { NestedMessage } from \\"./NestedMessage\\";
49
- import { Time } from \\"./Time\\";
46
+ import { Duration } from "./Duration";
47
+ import { ExampleEnum } from "./ExampleEnum";
48
+ import { NestedMessage } from "./NestedMessage";
49
+ import { Time } from "./Time";
50
50
 
51
51
  /** An example type */
52
52
  export type ExampleMessage = {
@@ -32,7 +32,7 @@ export declare type FoxgloveMessageSchema = {
32
32
  type: "message";
33
33
  name: string;
34
34
  description: string;
35
- rosEquivalent?: keyof typeof import("@foxglove/rosmsg-msgs-common").definitions;
35
+ rosEquivalent?: keyof typeof import("@foxglove/rosmsg-msgs-common").ros1;
36
36
  fields: ReadonlyArray<FoxgloveMessageField>;
37
37
  };
38
38
  export declare type FoxgloveSchema = FoxgloveMessageSchema | FoxgloveEnumSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB,GACzB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,OAAO,GACP,MAAM,GACN,UAAU,CAAC;AAEf,oBAAY,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;CACJ,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EACA;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,iBAAiB,CAAA;KAAE,GAC9C;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,qBAAqB,CAAA;KAAE,GACjD;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,kBAAkB,CAAA;KAAE,CAAC;IAC/C,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,oBAAY,qBAAqB,GAAG;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,cAAc,8BAA8B,EAAE,WAAW,CAAC;IAChF,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;CAC7C,CAAC;AAEF,oBAAY,cAAc,GAAG,qBAAqB,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB,GACzB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,OAAO,GACP,MAAM,GACN,UAAU,CAAC;AAEf,oBAAY,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;CACJ,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EACA;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,iBAAiB,CAAA;KAAE,GAC9C;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,qBAAqB,CAAA;KAAE,GACjD;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,kBAAkB,CAAA;KAAE,CAAC;IAC/C,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,oBAAY,qBAAqB,GAAG;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,cAAc,8BAA8B,EAAE,IAAI,CAAC;IACzE,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;CAC7C,CAAC;AAEF,oBAAY,cAAc,GAAG,qBAAqB,GAAG,kBAAkB,CAAC"}
@@ -5,46 +5,46 @@ import { exampleMessage } from "./testFixtures";
5
5
  describe("generateJsonSchema", () => {
6
6
  it("generates expected JSON Schema", () => {
7
7
  expect(generateJsonSchema(exampleMessage)).toMatchInlineSnapshot(`
8
- Object {
8
+ {
9
9
  "$comment": "Generated by https://github.com/foxglove/schemas",
10
10
  "description": "An example type",
11
- "properties": Object {
12
- "field_boolean": Object {
11
+ "properties": {
12
+ "field_boolean": {
13
13
  "description": "boolean field",
14
14
  "type": "boolean",
15
15
  },
16
- "field_boolean_array": Object {
16
+ "field_boolean_array": {
17
17
  "description": "boolean array field",
18
- "items": Object {
18
+ "items": {
19
19
  "type": "boolean",
20
20
  },
21
21
  "type": "array",
22
22
  },
23
- "field_boolean_fixed_array": Object {
23
+ "field_boolean_fixed_array": {
24
24
  "description": "boolean fixed-length array field",
25
- "items": Object {
25
+ "items": {
26
26
  "type": "boolean",
27
27
  },
28
28
  "maxItems": 3,
29
29
  "minItems": 3,
30
30
  "type": "array",
31
31
  },
32
- "field_bytes": Object {
32
+ "field_bytes": {
33
33
  "contentEncoding": "base64",
34
34
  "description": "bytes field",
35
35
  "type": "string",
36
36
  },
37
- "field_bytes_array": Object {
37
+ "field_bytes_array": {
38
38
  "description": "bytes array field",
39
- "items": Object {
39
+ "items": {
40
40
  "contentEncoding": "base64",
41
41
  "type": "string",
42
42
  },
43
43
  "type": "array",
44
44
  },
45
- "field_bytes_fixed_array": Object {
45
+ "field_bytes_fixed_array": {
46
46
  "description": "bytes fixed-length array field",
47
- "items": Object {
47
+ "items": {
48
48
  "contentEncoding": "base64",
49
49
  "type": "string",
50
50
  },
@@ -52,31 +52,31 @@ describe("generateJsonSchema", () => {
52
52
  "minItems": 3,
53
53
  "type": "array",
54
54
  },
55
- "field_duration": Object {
55
+ "field_duration": {
56
56
  "description": "duration field",
57
- "properties": Object {
58
- "nsec": Object {
57
+ "properties": {
58
+ "nsec": {
59
59
  "maximum": 999999999,
60
60
  "minimum": 0,
61
61
  "type": "integer",
62
62
  },
63
- "sec": Object {
63
+ "sec": {
64
64
  "type": "integer",
65
65
  },
66
66
  },
67
67
  "title": "duration",
68
68
  "type": "object",
69
69
  },
70
- "field_duration_array": Object {
70
+ "field_duration_array": {
71
71
  "description": "duration array field",
72
- "items": Object {
73
- "properties": Object {
74
- "nsec": Object {
72
+ "items": {
73
+ "properties": {
74
+ "nsec": {
75
75
  "maximum": 999999999,
76
76
  "minimum": 0,
77
77
  "type": "integer",
78
78
  },
79
- "sec": Object {
79
+ "sec": {
80
80
  "type": "integer",
81
81
  },
82
82
  },
@@ -85,16 +85,16 @@ describe("generateJsonSchema", () => {
85
85
  },
86
86
  "type": "array",
87
87
  },
88
- "field_duration_fixed_array": Object {
88
+ "field_duration_fixed_array": {
89
89
  "description": "duration fixed-length array field",
90
- "items": Object {
91
- "properties": Object {
92
- "nsec": Object {
90
+ "items": {
91
+ "properties": {
92
+ "nsec": {
93
93
  "maximum": 999999999,
94
94
  "minimum": 0,
95
95
  "type": "integer",
96
96
  },
97
- "sec": Object {
97
+ "sec": {
98
98
  "type": "integer",
99
99
  },
100
100
  },
@@ -105,15 +105,15 @@ describe("generateJsonSchema", () => {
105
105
  "minItems": 3,
106
106
  "type": "array",
107
107
  },
108
- "field_enum": Object {
108
+ "field_enum": {
109
109
  "description": "An enum field",
110
- "oneOf": Array [
111
- Object {
110
+ "oneOf": [
111
+ {
112
112
  "const": 1,
113
113
  "description": "Value A",
114
114
  "title": "A",
115
115
  },
116
- Object {
116
+ {
117
117
  "const": 2,
118
118
  "description": "Value B",
119
119
  "title": "B",
@@ -121,17 +121,17 @@ describe("generateJsonSchema", () => {
121
121
  ],
122
122
  "title": "foxglove.ExampleEnum",
123
123
  },
124
- "field_enum_array": Object {
124
+ "field_enum_array": {
125
125
  "description": "An enum array field",
126
- "items": Object {
126
+ "items": {
127
127
  "description": "An enum array field",
128
- "oneOf": Array [
129
- Object {
128
+ "oneOf": [
129
+ {
130
130
  "const": 1,
131
131
  "description": "Value A",
132
132
  "title": "A",
133
133
  },
134
- Object {
134
+ {
135
135
  "const": 2,
136
136
  "description": "Value B",
137
137
  "title": "B",
@@ -141,30 +141,30 @@ describe("generateJsonSchema", () => {
141
141
  },
142
142
  "type": "array",
143
143
  },
144
- "field_float64": Object {
144
+ "field_float64": {
145
145
  "description": "float64 field",
146
146
  "type": "number",
147
147
  },
148
- "field_float64_array": Object {
148
+ "field_float64_array": {
149
149
  "description": "float64 array field",
150
- "items": Object {
150
+ "items": {
151
151
  "type": "number",
152
152
  },
153
153
  "type": "array",
154
154
  },
155
- "field_float64_fixed_array": Object {
155
+ "field_float64_fixed_array": {
156
156
  "description": "float64 fixed-length array field",
157
- "items": Object {
157
+ "items": {
158
158
  "type": "number",
159
159
  },
160
160
  "maxItems": 3,
161
161
  "minItems": 3,
162
162
  "type": "array",
163
163
  },
164
- "field_nested": Object {
164
+ "field_nested": {
165
165
  "description": "A nested field",
166
- "properties": Object {
167
- "field_enum": Object {
166
+ "properties": {
167
+ "field_enum": {
168
168
  "description": "An enum field",
169
169
  "minimum": 0,
170
170
  "type": "integer",
@@ -173,17 +173,17 @@ describe("generateJsonSchema", () => {
173
173
  "title": "foxglove.NestedMessage",
174
174
  "type": "object",
175
175
  },
176
- "field_nested_array": Object {
176
+ "field_nested_array": {
177
177
  "description": "A nested array field
178
178
  With
179
179
  a
180
180
  very
181
181
  long
182
182
  description",
183
- "items": Object {
183
+ "items": {
184
184
  "description": "An example nested message",
185
- "properties": Object {
186
- "field_enum": Object {
185
+ "properties": {
186
+ "field_enum": {
187
187
  "description": "An enum field",
188
188
  "minimum": 0,
189
189
  "type": "integer",
@@ -194,35 +194,35 @@ describe("generateJsonSchema", () => {
194
194
  },
195
195
  "type": "array",
196
196
  },
197
- "field_string": Object {
197
+ "field_string": {
198
198
  "description": "string field",
199
199
  "type": "string",
200
200
  },
201
- "field_string_array": Object {
201
+ "field_string_array": {
202
202
  "description": "string array field",
203
- "items": Object {
203
+ "items": {
204
204
  "type": "string",
205
205
  },
206
206
  "type": "array",
207
207
  },
208
- "field_string_fixed_array": Object {
208
+ "field_string_fixed_array": {
209
209
  "description": "string fixed-length array field",
210
- "items": Object {
210
+ "items": {
211
211
  "type": "string",
212
212
  },
213
213
  "maxItems": 3,
214
214
  "minItems": 3,
215
215
  "type": "array",
216
216
  },
217
- "field_time": Object {
217
+ "field_time": {
218
218
  "description": "time field",
219
- "properties": Object {
220
- "nsec": Object {
219
+ "properties": {
220
+ "nsec": {
221
221
  "maximum": 999999999,
222
222
  "minimum": 0,
223
223
  "type": "integer",
224
224
  },
225
- "sec": Object {
225
+ "sec": {
226
226
  "minimum": 0,
227
227
  "type": "integer",
228
228
  },
@@ -230,16 +230,16 @@ describe("generateJsonSchema", () => {
230
230
  "title": "time",
231
231
  "type": "object",
232
232
  },
233
- "field_time_array": Object {
233
+ "field_time_array": {
234
234
  "description": "time array field",
235
- "items": Object {
236
- "properties": Object {
237
- "nsec": Object {
235
+ "items": {
236
+ "properties": {
237
+ "nsec": {
238
238
  "maximum": 999999999,
239
239
  "minimum": 0,
240
240
  "type": "integer",
241
241
  },
242
- "sec": Object {
242
+ "sec": {
243
243
  "minimum": 0,
244
244
  "type": "integer",
245
245
  },
@@ -249,16 +249,16 @@ describe("generateJsonSchema", () => {
249
249
  },
250
250
  "type": "array",
251
251
  },
252
- "field_time_fixed_array": Object {
252
+ "field_time_fixed_array": {
253
253
  "description": "time fixed-length array field",
254
- "items": Object {
255
- "properties": Object {
256
- "nsec": Object {
254
+ "items": {
255
+ "properties": {
256
+ "nsec": {
257
257
  "maximum": 999999999,
258
258
  "minimum": 0,
259
259
  "type": "integer",
260
260
  },
261
- "sec": Object {
261
+ "sec": {
262
262
  "minimum": 0,
263
263
  "type": "integer",
264
264
  },
@@ -270,22 +270,22 @@ describe("generateJsonSchema", () => {
270
270
  "minItems": 3,
271
271
  "type": "array",
272
272
  },
273
- "field_uint32": Object {
273
+ "field_uint32": {
274
274
  "description": "uint32 field",
275
275
  "minimum": 0,
276
276
  "type": "integer",
277
277
  },
278
- "field_uint32_array": Object {
278
+ "field_uint32_array": {
279
279
  "description": "uint32 array field",
280
- "items": Object {
280
+ "items": {
281
281
  "minimum": 0,
282
282
  "type": "integer",
283
283
  },
284
284
  "type": "array",
285
285
  },
286
- "field_uint32_fixed_array": Object {
286
+ "field_uint32_fixed_array": {
287
287
  "description": "uint32 fixed-length array field",
288
- "items": Object {
288
+ "items": {
289
289
  "minimum": 0,
290
290
  "type": "integer",
291
291
  },
@@ -7,11 +7,11 @@ describe("generateProto", () => {
7
7
  expect(generateProto(exampleMessage, [exampleEnum])).toMatchInlineSnapshot(`
8
8
  "// Generated by https://github.com/foxglove/schemas
9
9
 
10
- syntax = \\"proto3\\";
10
+ syntax = "proto3";
11
11
 
12
- import \\"foxglove/NestedMessage.proto\\";
13
- import \\"google/protobuf/duration.proto\\";
14
- import \\"google/protobuf/timestamp.proto\\";
12
+ import "foxglove/NestedMessage.proto";
13
+ import "google/protobuf/duration.proto";
14
+ import "google/protobuf/timestamp.proto";
15
15
 
16
16
  package foxglove;
17
17
 
@@ -1,4 +1,4 @@
1
- import { definitions as rosCommonDefs } from "@foxglove/rosmsg-msgs-common";
1
+ import { ros1 } from "@foxglove/rosmsg-msgs-common";
2
2
  function primitiveToRos(type, { rosVersion }) {
3
3
  switch (type) {
4
4
  case "string":
@@ -54,7 +54,7 @@ function* getSchemaDependencies(schema) {
54
54
  if (field.type.type === "nested") {
55
55
  if (field.type.schema.rosEquivalent != undefined) {
56
56
  yield { type: "ros", name: field.type.schema.rosEquivalent };
57
- yield* getRosDependencies(rosCommonDefs[field.type.schema.rosEquivalent]);
57
+ yield* getRosDependencies(ros1[field.type.schema.rosEquivalent]);
58
58
  }
59
59
  else {
60
60
  yield { type: "foxglove", schema: field.type.schema };
@@ -67,7 +67,7 @@ function* getRosDependencies(schema) {
67
67
  for (const field of schema.definitions) {
68
68
  if (field.isComplex === true) {
69
69
  yield { type: "ros", name: field.type };
70
- yield* getRosDependencies(rosCommonDefs[field.type]);
70
+ yield* getRosDependencies(ros1[field.type]);
71
71
  }
72
72
  }
73
73
  }
@@ -169,7 +169,7 @@ export function generateRosMsgMergedSchema(schema, { rosVersion }) {
169
169
  originalName: dep.name,
170
170
  rosMsgInterfaceName: dep.name,
171
171
  rosFullInterfaceName: dep.name,
172
- fields: rosCommonDefs[dep.name].definitions,
172
+ fields: ros1[dep.name].definitions,
173
173
  });
174
174
  }
175
175
  else {
@@ -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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"}