@modular-circuit/transpiler 0.0.63 → 0.0.65

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 (52) hide show
  1. package/build/builder/graph_to_kicad/do_convert_graph_to_kicad_project.js +109 -25
  2. package/build/builder/graph_to_kicad/index.js +61 -9
  3. package/build/builder/index.js +1 -5
  4. package/build/converter/graph_to_netlist/context.js +0 -2
  5. package/build/converter/graph_to_netlist/graph_converter.js +173 -57
  6. package/build/converter/graph_to_netlist/index.js +2 -18
  7. package/build/converter/index.js +3 -19
  8. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/index.js +4 -7
  9. package/build/converter/kicad_sexpr/eeschema/drawing_sheet/sch_default_drawing_sheet.js +1 -4
  10. package/build/converter/kicad_sexpr/eeschema/index.js +2 -18
  11. package/build/converter/kicad_sexpr/eeschema/printer.js +281 -220
  12. package/build/converter/kicad_sexpr/index.js +2 -18
  13. package/build/converter/kicad_sexpr/pcb/index.js +1 -2
  14. package/build/converter/link_to_netlist/context.js +0 -2
  15. package/build/converter/link_to_netlist/converter.js +138 -84
  16. package/build/converter/link_to_netlist/index.js +2 -18
  17. package/build/converter/link_to_netlist/links/converter_base.d.ts.map +1 -1
  18. package/build/converter/link_to_netlist/links/converter_base.js +133 -44
  19. package/build/converter/link_to_netlist/links/converters.js +556 -333
  20. package/build/converter/link_to_netlist/links/index.js +2 -18
  21. package/build/converter/netlist_to_kicad/context.js +0 -2
  22. package/build/converter/netlist_to_kicad/index.js +3 -19
  23. package/build/converter/netlist_to_kicad/layout.js +25 -26
  24. package/build/converter/netlist_to_kicad/netlist_converter.js +182 -93
  25. package/build/index.js +5 -21
  26. package/build/kicad/constraints/index.js +1 -4
  27. package/build/kicad/label/index.js +2 -18
  28. package/build/kicad/label/net_label.js +6 -10
  29. package/build/kicad/label/sheet_pin.js +23 -19
  30. package/build/kicad/project/index.js +2 -18
  31. package/build/kicad/project/kicad_prl.js +3 -7
  32. package/build/kicad/project/kicad_pro.js +5 -9
  33. package/build/kicad/project/kicad_project_achieve.js +50 -40
  34. package/build/kicad/project/wildcards_and_files_ext.js +61 -65
  35. package/build/kicad/sheet/index.js +1 -17
  36. package/build/kicad/sheet/sheet.js +8 -12
  37. package/build/kicad/symbols/index.js +2 -18
  38. package/build/kicad/symbols/lib_symbol/gnd.js +20 -24
  39. package/build/kicad/symbols/lib_symbol/index.js +2 -18
  40. package/build/kicad/symbols/lib_symbol/vcc.js +21 -25
  41. package/build/kicad/symbols/sch_symbol/gnd.js +19 -23
  42. package/build/kicad/symbols/sch_symbol/index.js +2 -18
  43. package/build/kicad/symbols/sch_symbol/vcc.js +19 -23
  44. package/build/kicad/symbols/symbol_utils.js +1 -5
  45. package/build/utils/collect_sub_sheets.js +146 -35
  46. package/build/utils/constraints.js +6 -9
  47. package/build/utils/filter_null_undefined.d.ts +1 -1
  48. package/build/utils/filter_null_undefined.d.ts.map +1 -1
  49. package/build/utils/filter_null_undefined.js +39 -2
  50. package/build/utils/index.js +4 -20
  51. package/build/utils/string_formatter.js +29 -27
  52. package/package.json +5 -5
@@ -1,10 +1,62 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dvp8LinkTester = exports.UsbCcLinkTester = exports.UsbLinkTester = exports.UartLinkTester = exports.SpeakerLinkTester = exports.SpiLinkTester = exports.I2sLinkTester = exports.I2cLinkTester = exports.SwdLinkTester = exports.CrystalLinkTester = exports.CanDiffLinkTester = exports.CanLogicLinkTester = void 0;
4
- const electronics_model_1 = require("@modular-circuit/electronics-model");
5
- const converter_base_1 = require("./converter_base");
6
- class CanLogicLinkTester extends converter_base_1.CompositePortLinkConverterBase {
7
- get_signals() {
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ var __read = (this && this.__read) || function (o, n) {
17
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
18
+ if (!m) return o;
19
+ var i = m.call(o), r, ar = [], e;
20
+ try {
21
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
22
+ }
23
+ catch (error) { e = { error: error }; }
24
+ finally {
25
+ try {
26
+ if (r && !r.done && (m = i["return"])) m.call(i);
27
+ }
28
+ finally { if (e) throw e.error; }
29
+ }
30
+ return ar;
31
+ };
32
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
33
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
34
+ if (ar || !(i in from)) {
35
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
36
+ ar[i] = from[i];
37
+ }
38
+ }
39
+ return to.concat(ar || Array.prototype.slice.call(from));
40
+ };
41
+ var __values = (this && this.__values) || function(o) {
42
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
43
+ if (m) return m.call(o);
44
+ if (o && typeof o.length === "number") return {
45
+ next: function () {
46
+ if (o && i >= o.length) o = void 0;
47
+ return { value: o && o[i++], done: !o };
48
+ }
49
+ };
50
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
51
+ };
52
+ import { PortType, } from '@modular-circuit/electronics-model';
53
+ import { CompositePortLinkConverterBase } from './converter_base';
54
+ var CanLogicLinkTester = /** @class */ (function (_super) {
55
+ __extends(CanLogicLinkTester, _super);
56
+ function CanLogicLinkTester() {
57
+ return _super !== null && _super.apply(this, arguments) || this;
58
+ }
59
+ CanLogicLinkTester.prototype.get_signals = function () {
8
60
  if (!this.link)
9
61
  return [];
10
62
  // const txd = [this.link.controller.txd, this.link.transceiver.rxd, ...this.link.passive!.map((port) => port.rxd)]
@@ -12,7 +64,7 @@ class CanLogicLinkTester extends converter_base_1.CompositePortLinkConverterBase
12
64
  return [
13
65
  {
14
66
  name: 'txd',
15
- ports: [
67
+ ports: __spreadArray([
16
68
  {
17
69
  parent: this.link.controller,
18
70
  meta_port: this.link.controller.txd,
@@ -20,18 +72,17 @@ class CanLogicLinkTester extends converter_base_1.CompositePortLinkConverterBase
20
72
  {
21
73
  parent: this.link.transceiver,
22
74
  meta_port: this.link.transceiver.rxd,
23
- },
24
- ...this.link.passive.map((port) => {
25
- return {
26
- parent: port,
27
- meta_port: port.rxd,
28
- };
29
- }),
30
- ],
75
+ }
76
+ ], __read(this.link.passive.map(function (port) {
77
+ return {
78
+ parent: port,
79
+ meta_port: port.rxd,
80
+ };
81
+ })), false),
31
82
  },
32
83
  {
33
84
  name: 'rxd',
34
- ports: [
85
+ ports: __spreadArray([
35
86
  {
36
87
  parent: this.link.controller,
37
88
  meta_port: this.link.controller.rxd,
@@ -39,37 +90,47 @@ class CanLogicLinkTester extends converter_base_1.CompositePortLinkConverterBase
39
90
  {
40
91
  parent: this.link.transceiver,
41
92
  meta_port: this.link.transceiver.txd,
42
- },
43
- ...this.link.passive.map((port) => {
44
- return {
45
- parent: port,
46
- meta_port: port.txd,
47
- };
48
- }),
49
- ],
93
+ }
94
+ ], __read(this.link.passive.map(function (port) {
95
+ return {
96
+ parent: port,
97
+ meta_port: port.txd,
98
+ };
99
+ })), false),
50
100
  },
51
101
  ];
52
- }
53
- init_link() {
54
- const controllers = [];
55
- const transceivers = [];
56
- const passive = [];
57
- for (const v of this.ports) {
58
- switch (v.type) {
59
- case electronics_model_1.PortType.CanControllerPort: {
60
- controllers.push(v);
61
- break;
62
- }
63
- case electronics_model_1.PortType.CanTransceiverPort: {
64
- transceivers.push(v);
65
- break;
66
- }
67
- case electronics_model_1.PortType.CanPassivePort: {
68
- passive.push(v);
69
- break;
102
+ };
103
+ CanLogicLinkTester.prototype.init_link = function () {
104
+ var e_1, _a;
105
+ var controllers = [];
106
+ var transceivers = [];
107
+ var passive = [];
108
+ try {
109
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
110
+ var v = _c.value;
111
+ switch (v.type) {
112
+ case PortType.CanControllerPort: {
113
+ controllers.push(v);
114
+ break;
115
+ }
116
+ case PortType.CanTransceiverPort: {
117
+ transceivers.push(v);
118
+ break;
119
+ }
120
+ case PortType.CanPassivePort: {
121
+ passive.push(v);
122
+ break;
123
+ }
70
124
  }
71
125
  }
72
126
  }
127
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
128
+ finally {
129
+ try {
130
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
131
+ }
132
+ finally { if (e_1) throw e_1.error; }
133
+ }
73
134
  if (controllers.length !== 1) {
74
135
  return false;
75
136
  }
@@ -79,14 +140,19 @@ class CanLogicLinkTester extends converter_base_1.CompositePortLinkConverterBase
79
140
  this.link = {
80
141
  controller: controllers[0],
81
142
  transceiver: transceivers[0],
82
- passive,
143
+ passive: passive,
83
144
  };
84
145
  return true;
146
+ };
147
+ return CanLogicLinkTester;
148
+ }(CompositePortLinkConverterBase));
149
+ export { CanLogicLinkTester };
150
+ var CanDiffLinkTester = /** @class */ (function (_super) {
151
+ __extends(CanDiffLinkTester, _super);
152
+ function CanDiffLinkTester() {
153
+ return _super !== null && _super.apply(this, arguments) || this;
85
154
  }
86
- }
87
- exports.CanLogicLinkTester = CanLogicLinkTester;
88
- class CanDiffLinkTester extends converter_base_1.CompositePortLinkConverterBase {
89
- get_signals() {
155
+ CanDiffLinkTester.prototype.get_signals = function () {
90
156
  if (!this.link)
91
157
  return [];
92
158
  // const canh = this.link.nodes.map((node) => node.canh)
@@ -94,51 +160,63 @@ class CanDiffLinkTester extends converter_base_1.CompositePortLinkConverterBase
94
160
  return [
95
161
  {
96
162
  name: 'canh',
97
- ports: [
98
- ...this.link.nodes.map((port) => {
99
- return {
100
- parent: port,
101
- meta_port: port.canh,
102
- };
103
- }),
104
- ],
163
+ ports: __spreadArray([], __read(this.link.nodes.map(function (port) {
164
+ return {
165
+ parent: port,
166
+ meta_port: port.canh,
167
+ };
168
+ })), false),
105
169
  },
106
170
  {
107
171
  name: 'canl',
108
- ports: [
109
- ...this.link.nodes.map((port) => {
110
- return {
111
- parent: port,
112
- meta_port: port.canl,
113
- };
114
- }),
115
- ],
172
+ ports: __spreadArray([], __read(this.link.nodes.map(function (port) {
173
+ return {
174
+ parent: port,
175
+ meta_port: port.canl,
176
+ };
177
+ })), false),
116
178
  },
117
179
  ];
118
- }
119
- init_link() {
120
- const nodes = [];
121
- for (const v of this.ports) {
122
- if (v.type === electronics_model_1.PortType.CanDiffPort) {
123
- nodes.push(v);
180
+ };
181
+ CanDiffLinkTester.prototype.init_link = function () {
182
+ var e_2, _a;
183
+ var nodes = [];
184
+ try {
185
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
186
+ var v = _c.value;
187
+ if (v.type === PortType.CanDiffPort) {
188
+ nodes.push(v);
189
+ }
190
+ }
191
+ }
192
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
193
+ finally {
194
+ try {
195
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
124
196
  }
197
+ finally { if (e_2) throw e_2.error; }
125
198
  }
126
199
  if (nodes.length === 0) {
127
200
  return false;
128
201
  }
129
202
  this.link = {
130
- nodes,
203
+ nodes: nodes,
131
204
  };
132
205
  return true;
206
+ };
207
+ return CanDiffLinkTester;
208
+ }(CompositePortLinkConverterBase));
209
+ export { CanDiffLinkTester };
210
+ var CrystalLinkTester = /** @class */ (function (_super) {
211
+ __extends(CrystalLinkTester, _super);
212
+ function CrystalLinkTester() {
213
+ return _super !== null && _super.apply(this, arguments) || this;
133
214
  }
134
- }
135
- exports.CanDiffLinkTester = CanDiffLinkTester;
136
- class CrystalLinkTester extends converter_base_1.CompositePortLinkConverterBase {
137
- get_signals() {
215
+ CrystalLinkTester.prototype.get_signals = function () {
138
216
  if (!this.link)
139
217
  return [];
140
- const driver = this.link.driver;
141
- const crystal = this.link.crystal;
218
+ var driver = this.link.driver;
219
+ var crystal = this.link.crystal;
142
220
  return [
143
221
  {
144
222
  name: 'xtal',
@@ -167,22 +245,33 @@ class CrystalLinkTester extends converter_base_1.CompositePortLinkConverterBase
167
245
  ],
168
246
  },
169
247
  ];
170
- }
171
- init_link() {
172
- const drivers = [];
173
- const crystals = [];
174
- for (const v of this.ports) {
175
- switch (v.type) {
176
- case electronics_model_1.PortType.CrystalDriver: {
177
- drivers.push(v);
178
- break;
179
- }
180
- case electronics_model_1.PortType.CrystalPort: {
181
- crystals.push(v);
182
- break;
248
+ };
249
+ CrystalLinkTester.prototype.init_link = function () {
250
+ var e_3, _a;
251
+ var drivers = [];
252
+ var crystals = [];
253
+ try {
254
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
255
+ var v = _c.value;
256
+ switch (v.type) {
257
+ case PortType.CrystalDriver: {
258
+ drivers.push(v);
259
+ break;
260
+ }
261
+ case PortType.CrystalPort: {
262
+ crystals.push(v);
263
+ break;
264
+ }
183
265
  }
184
266
  }
185
267
  }
268
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
269
+ finally {
270
+ try {
271
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
272
+ }
273
+ finally { if (e_3) throw e_3.error; }
274
+ }
186
275
  if (drivers.length !== 1) {
187
276
  return false;
188
277
  }
@@ -194,11 +283,16 @@ class CrystalLinkTester extends converter_base_1.CompositePortLinkConverterBase
194
283
  crystal: crystals[0],
195
284
  };
196
285
  return true;
286
+ };
287
+ return CrystalLinkTester;
288
+ }(CompositePortLinkConverterBase));
289
+ export { CrystalLinkTester };
290
+ var SwdLinkTester = /** @class */ (function (_super) {
291
+ __extends(SwdLinkTester, _super);
292
+ function SwdLinkTester() {
293
+ return _super !== null && _super.apply(this, arguments) || this;
197
294
  }
198
- }
199
- exports.CrystalLinkTester = CrystalLinkTester;
200
- class SwdLinkTester extends converter_base_1.CompositePortLinkConverterBase {
201
- get_signals() {
295
+ SwdLinkTester.prototype.get_signals = function () {
202
296
  if (!this.link)
203
297
  return [];
204
298
  // const swdio = [this.link.host.swdio, this.link.device.swdio, ...this.link.pull!.map((port) => port.swdio)]
@@ -206,7 +300,7 @@ class SwdLinkTester extends converter_base_1.CompositePortLinkConverterBase {
206
300
  return [
207
301
  {
208
302
  name: 'swdio',
209
- ports: [
303
+ ports: __spreadArray([
210
304
  {
211
305
  parent: this.link.host,
212
306
  meta_port: this.link.host.swdio,
@@ -214,18 +308,17 @@ class SwdLinkTester extends converter_base_1.CompositePortLinkConverterBase {
214
308
  {
215
309
  parent: this.link.device,
216
310
  meta_port: this.link.device.swdio,
217
- },
218
- ...this.link.pull.map((port) => {
219
- return {
220
- parent: port,
221
- meta_port: port.swdio,
222
- };
223
- }),
224
- ],
311
+ }
312
+ ], __read(this.link.pull.map(function (port) {
313
+ return {
314
+ parent: port,
315
+ meta_port: port.swdio,
316
+ };
317
+ })), false),
225
318
  },
226
319
  {
227
320
  name: 'swclk',
228
- ports: [
321
+ ports: __spreadArray([
229
322
  {
230
323
  parent: this.link.host,
231
324
  meta_port: this.link.host.swclk,
@@ -233,37 +326,47 @@ class SwdLinkTester extends converter_base_1.CompositePortLinkConverterBase {
233
326
  {
234
327
  parent: this.link.device,
235
328
  meta_port: this.link.device.swclk,
236
- },
237
- ...this.link.pull.map((port) => {
238
- return {
239
- parent: port,
240
- meta_port: port.swclk,
241
- };
242
- }),
243
- ],
329
+ }
330
+ ], __read(this.link.pull.map(function (port) {
331
+ return {
332
+ parent: port,
333
+ meta_port: port.swclk,
334
+ };
335
+ })), false),
244
336
  },
245
337
  ];
246
- }
247
- init_link() {
248
- const hosts = [];
249
- const devices = [];
250
- const pull = [];
251
- for (const v of this.ports) {
252
- switch (v.type) {
253
- case electronics_model_1.PortType.SwdHostPort: {
254
- hosts.push(v);
255
- break;
256
- }
257
- case electronics_model_1.PortType.SwdTargetPort: {
258
- devices.push(v);
259
- break;
260
- }
261
- case electronics_model_1.PortType.SwdPullPort: {
262
- pull.push(v);
263
- break;
338
+ };
339
+ SwdLinkTester.prototype.init_link = function () {
340
+ var e_4, _a;
341
+ var hosts = [];
342
+ var devices = [];
343
+ var pull = [];
344
+ try {
345
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
346
+ var v = _c.value;
347
+ switch (v.type) {
348
+ case PortType.SwdHostPort: {
349
+ hosts.push(v);
350
+ break;
351
+ }
352
+ case PortType.SwdTargetPort: {
353
+ devices.push(v);
354
+ break;
355
+ }
356
+ case PortType.SwdPullPort: {
357
+ pull.push(v);
358
+ break;
359
+ }
264
360
  }
265
361
  }
266
362
  }
363
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
364
+ finally {
365
+ try {
366
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
367
+ }
368
+ finally { if (e_4) throw e_4.error; }
369
+ }
267
370
  if (hosts.length !== 1) {
268
371
  return false;
269
372
  }
@@ -273,44 +376,45 @@ class SwdLinkTester extends converter_base_1.CompositePortLinkConverterBase {
273
376
  this.link = {
274
377
  host: hosts[0],
275
378
  device: devices[0],
276
- pull,
379
+ pull: pull,
277
380
  };
278
381
  return true;
382
+ };
383
+ return SwdLinkTester;
384
+ }(CompositePortLinkConverterBase));
385
+ export { SwdLinkTester };
386
+ var I2cLinkTester = /** @class */ (function (_super) {
387
+ __extends(I2cLinkTester, _super);
388
+ function I2cLinkTester() {
389
+ return _super !== null && _super.apply(this, arguments) || this;
279
390
  }
280
- }
281
- exports.SwdLinkTester = SwdLinkTester;
282
- class I2cLinkTester extends converter_base_1.CompositePortLinkConverterBase {
283
- get_signals() {
391
+ I2cLinkTester.prototype.get_signals = function () {
284
392
  if (!this.link)
285
393
  return [];
286
- const scl = [
287
- ...this.link.pull.map((device) => ({
288
- parent: device,
289
- meta_port: device.scl,
290
- })),
394
+ var scl = __spreadArray(__spreadArray(__spreadArray([], __read(this.link.pull.map(function (device) { return ({
395
+ parent: device,
396
+ meta_port: device.scl,
397
+ }); })), false), [
291
398
  {
292
399
  parent: this.link.controller,
293
400
  meta_port: this.link.controller.scl,
294
- },
295
- ...this.link.targets.map((device) => ({
296
- parent: device,
297
- meta_port: device.scl,
298
- })),
299
- ];
300
- const sda = [
301
- ...this.link.pull.map((device) => ({
302
- parent: device,
303
- meta_port: device.sda,
304
- })),
401
+ }
402
+ ], false), __read(this.link.targets.map(function (device) { return ({
403
+ parent: device,
404
+ meta_port: device.scl,
405
+ }); })), false);
406
+ var sda = __spreadArray(__spreadArray(__spreadArray([], __read(this.link.pull.map(function (device) { return ({
407
+ parent: device,
408
+ meta_port: device.sda,
409
+ }); })), false), [
305
410
  {
306
411
  parent: this.link.controller,
307
412
  meta_port: this.link.controller.sda,
308
- },
309
- ...this.link.targets.map((device) => ({
310
- parent: device,
311
- meta_port: device.sda,
312
- })),
313
- ];
413
+ }
414
+ ], false), __read(this.link.targets.map(function (device) { return ({
415
+ parent: device,
416
+ meta_port: device.sda,
417
+ }); })), false);
314
418
  return [
315
419
  {
316
420
  name: 'scl',
@@ -321,27 +425,38 @@ class I2cLinkTester extends converter_base_1.CompositePortLinkConverterBase {
321
425
  ports: sda,
322
426
  },
323
427
  ];
324
- }
325
- init_link() {
326
- const pull = [];
327
- const controllers = [];
328
- const targets = [];
329
- for (const v of this.ports) {
330
- switch (v.type) {
331
- case electronics_model_1.PortType.I2cPullupPort: {
332
- pull.push(v);
333
- break;
334
- }
335
- case electronics_model_1.PortType.I2cController: {
336
- controllers.push(v);
337
- break;
338
- }
339
- case electronics_model_1.PortType.I2cTarget: {
340
- targets.push(v);
341
- break;
428
+ };
429
+ I2cLinkTester.prototype.init_link = function () {
430
+ var e_5, _a;
431
+ var pull = [];
432
+ var controllers = [];
433
+ var targets = [];
434
+ try {
435
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
436
+ var v = _c.value;
437
+ switch (v.type) {
438
+ case PortType.I2cPullupPort: {
439
+ pull.push(v);
440
+ break;
441
+ }
442
+ case PortType.I2cController: {
443
+ controllers.push(v);
444
+ break;
445
+ }
446
+ case PortType.I2cTarget: {
447
+ targets.push(v);
448
+ break;
449
+ }
342
450
  }
343
451
  }
344
452
  }
453
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
454
+ finally {
455
+ try {
456
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
457
+ }
458
+ finally { if (e_5) throw e_5.error; }
459
+ }
345
460
  if (controllers.length !== 1) {
346
461
  return false;
347
462
  }
@@ -349,20 +464,25 @@ class I2cLinkTester extends converter_base_1.CompositePortLinkConverterBase {
349
464
  return false;
350
465
  }
351
466
  this.link = {
352
- pull,
467
+ pull: pull,
353
468
  controller: controllers[0],
354
- targets,
469
+ targets: targets,
355
470
  };
356
471
  return true;
472
+ };
473
+ return I2cLinkTester;
474
+ }(CompositePortLinkConverterBase));
475
+ export { I2cLinkTester };
476
+ var I2sLinkTester = /** @class */ (function (_super) {
477
+ __extends(I2sLinkTester, _super);
478
+ function I2sLinkTester() {
479
+ return _super !== null && _super.apply(this, arguments) || this;
357
480
  }
358
- }
359
- exports.I2cLinkTester = I2cLinkTester;
360
- class I2sLinkTester extends converter_base_1.CompositePortLinkConverterBase {
361
- get_signals() {
481
+ I2sLinkTester.prototype.get_signals = function () {
362
482
  if (!this.link)
363
483
  return [];
364
- const controller = this.link.controller;
365
- const target_receiver = this.link.target_receiver;
484
+ var controller = this.link.controller;
485
+ var target_receiver = this.link.target_receiver;
366
486
  // const sck = [controller.sck, target_receiver.sck]
367
487
  // const ws = [controller.ws, target_receiver.ws]
368
488
  // const sd = [controller.sd, target_receiver.sd]
@@ -407,22 +527,33 @@ class I2sLinkTester extends converter_base_1.CompositePortLinkConverterBase {
407
527
  ],
408
528
  },
409
529
  ];
410
- }
411
- init_link() {
412
- const controllers = [];
413
- const target_receivers = [];
414
- for (const v of this.ports) {
415
- switch (v.type) {
416
- case electronics_model_1.PortType.I2sController: {
417
- controllers.push(v);
418
- break;
419
- }
420
- case electronics_model_1.PortType.I2sTargetReceiver: {
421
- target_receivers.push(v);
422
- break;
530
+ };
531
+ I2sLinkTester.prototype.init_link = function () {
532
+ var e_6, _a;
533
+ var controllers = [];
534
+ var target_receivers = [];
535
+ try {
536
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
537
+ var v = _c.value;
538
+ switch (v.type) {
539
+ case PortType.I2sController: {
540
+ controllers.push(v);
541
+ break;
542
+ }
543
+ case PortType.I2sTargetReceiver: {
544
+ target_receivers.push(v);
545
+ break;
546
+ }
423
547
  }
424
548
  }
425
549
  }
550
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
551
+ finally {
552
+ try {
553
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
554
+ }
555
+ finally { if (e_6) throw e_6.error; }
556
+ }
426
557
  if (controllers.length !== 1) {
427
558
  return false;
428
559
  }
@@ -434,75 +565,88 @@ class I2sLinkTester extends converter_base_1.CompositePortLinkConverterBase {
434
565
  target_receiver: target_receivers[0],
435
566
  };
436
567
  return true;
568
+ };
569
+ return I2sLinkTester;
570
+ }(CompositePortLinkConverterBase));
571
+ export { I2sLinkTester };
572
+ var SpiLinkTester = /** @class */ (function (_super) {
573
+ __extends(SpiLinkTester, _super);
574
+ function SpiLinkTester() {
575
+ return _super !== null && _super.apply(this, arguments) || this;
437
576
  }
438
- }
439
- exports.I2sLinkTester = I2sLinkTester;
440
- class SpiLinkTester extends converter_base_1.CompositePortLinkConverterBase {
441
- get_signals() {
577
+ SpiLinkTester.prototype.get_signals = function () {
442
578
  if (!this.link)
443
579
  return [];
444
- const controller = this.link.controller;
445
- const peripherals = this.link.peripherals;
580
+ var controller = this.link.controller;
581
+ var peripherals = this.link.peripherals;
446
582
  // const sck = [controller.sck, ...peripherals.map((device) => device.sck)]
447
583
  // const miso = [controller.miso, ...peripherals.map((device) => device.miso)]
448
584
  // const mosi = [controller.mosi, ...peripherals.map((device) => device.mosi)]
449
585
  return [
450
586
  {
451
587
  name: 'sck',
452
- ports: [
588
+ ports: __spreadArray([
453
589
  {
454
590
  parent: controller,
455
591
  meta_port: controller.sck,
456
- },
457
- ...peripherals.map((device) => ({
458
- parent: device,
459
- meta_port: device.sck,
460
- })),
461
- ],
592
+ }
593
+ ], __read(peripherals.map(function (device) { return ({
594
+ parent: device,
595
+ meta_port: device.sck,
596
+ }); })), false),
462
597
  },
463
598
  {
464
599
  name: 'miso',
465
- ports: [
600
+ ports: __spreadArray([
466
601
  {
467
602
  parent: controller,
468
603
  meta_port: controller.miso,
469
- },
470
- ...peripherals.map((device) => ({
471
- parent: device,
472
- meta_port: device.miso,
473
- })),
474
- ],
604
+ }
605
+ ], __read(peripherals.map(function (device) { return ({
606
+ parent: device,
607
+ meta_port: device.miso,
608
+ }); })), false),
475
609
  },
476
610
  {
477
611
  name: 'mosi',
478
- ports: [
612
+ ports: __spreadArray([
479
613
  {
480
614
  parent: controller,
481
615
  meta_port: controller.mosi,
482
- },
483
- ...peripherals.map((device) => ({
484
- parent: device,
485
- meta_port: device.mosi,
486
- })),
487
- ],
616
+ }
617
+ ], __read(peripherals.map(function (device) { return ({
618
+ parent: device,
619
+ meta_port: device.mosi,
620
+ }); })), false),
488
621
  },
489
622
  ];
490
- }
491
- init_link() {
492
- const controllers = [];
493
- const peripherals = [];
494
- for (const v of this.ports) {
495
- switch (v.type) {
496
- case electronics_model_1.PortType.SpiController: {
497
- controllers.push(v);
498
- break;
499
- }
500
- case electronics_model_1.PortType.SpiPeripheral: {
501
- peripherals.push(v);
502
- break;
623
+ };
624
+ SpiLinkTester.prototype.init_link = function () {
625
+ var e_7, _a;
626
+ var controllers = [];
627
+ var peripherals = [];
628
+ try {
629
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
630
+ var v = _c.value;
631
+ switch (v.type) {
632
+ case PortType.SpiController: {
633
+ controllers.push(v);
634
+ break;
635
+ }
636
+ case PortType.SpiPeripheral: {
637
+ peripherals.push(v);
638
+ break;
639
+ }
503
640
  }
504
641
  }
505
642
  }
643
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
644
+ finally {
645
+ try {
646
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
647
+ }
648
+ finally { if (e_7) throw e_7.error; }
649
+ }
506
650
  if (controllers.length !== 1) {
507
651
  return false;
508
652
  }
@@ -511,14 +655,19 @@ class SpiLinkTester extends converter_base_1.CompositePortLinkConverterBase {
511
655
  }
512
656
  this.link = {
513
657
  controller: controllers[0],
514
- peripherals,
658
+ peripherals: peripherals,
515
659
  };
516
660
  return true;
661
+ };
662
+ return SpiLinkTester;
663
+ }(CompositePortLinkConverterBase));
664
+ export { SpiLinkTester };
665
+ var SpeakerLinkTester = /** @class */ (function (_super) {
666
+ __extends(SpeakerLinkTester, _super);
667
+ function SpeakerLinkTester() {
668
+ return _super !== null && _super.apply(this, arguments) || this;
517
669
  }
518
- }
519
- exports.SpiLinkTester = SpiLinkTester;
520
- class SpeakerLinkTester extends converter_base_1.CompositePortLinkConverterBase {
521
- get_signals() {
670
+ SpeakerLinkTester.prototype.get_signals = function () {
522
671
  if (!this.link)
523
672
  return [];
524
673
  // const a = [this.link.source.a, this.link.sink.a]
@@ -551,22 +700,33 @@ class SpeakerLinkTester extends converter_base_1.CompositePortLinkConverterBase
551
700
  ],
552
701
  },
553
702
  ];
554
- }
555
- init_link() {
556
- const sources = [];
557
- const sinks = [];
558
- for (const v of this.ports) {
559
- switch (v.type) {
560
- case electronics_model_1.PortType.SpeakerDriverPort: {
561
- sources.push(v);
562
- break;
563
- }
564
- case electronics_model_1.PortType.SpeakerPort: {
565
- sinks.push(v);
566
- break;
703
+ };
704
+ SpeakerLinkTester.prototype.init_link = function () {
705
+ var e_8, _a;
706
+ var sources = [];
707
+ var sinks = [];
708
+ try {
709
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
710
+ var v = _c.value;
711
+ switch (v.type) {
712
+ case PortType.SpeakerDriverPort: {
713
+ sources.push(v);
714
+ break;
715
+ }
716
+ case PortType.SpeakerPort: {
717
+ sinks.push(v);
718
+ break;
719
+ }
567
720
  }
568
721
  }
569
722
  }
723
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
724
+ finally {
725
+ try {
726
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
727
+ }
728
+ finally { if (e_8) throw e_8.error; }
729
+ }
570
730
  if (sources.length !== 1) {
571
731
  return false;
572
732
  }
@@ -578,11 +738,16 @@ class SpeakerLinkTester extends converter_base_1.CompositePortLinkConverterBase
578
738
  sink: sinks[0],
579
739
  };
580
740
  return true;
741
+ };
742
+ return SpeakerLinkTester;
743
+ }(CompositePortLinkConverterBase));
744
+ export { SpeakerLinkTester };
745
+ var UartLinkTester = /** @class */ (function (_super) {
746
+ __extends(UartLinkTester, _super);
747
+ function UartLinkTester() {
748
+ return _super !== null && _super.apply(this, arguments) || this;
581
749
  }
582
- }
583
- exports.SpeakerLinkTester = SpeakerLinkTester;
584
- class UartLinkTester extends converter_base_1.CompositePortLinkConverterBase {
585
- get_signals() {
750
+ UartLinkTester.prototype.get_signals = function () {
586
751
  if (!this.link)
587
752
  return [];
588
753
  // const tx = [this.link.a.tx, this.link.b.rx]
@@ -615,13 +780,24 @@ class UartLinkTester extends converter_base_1.CompositePortLinkConverterBase {
615
780
  ],
616
781
  },
617
782
  ];
618
- }
619
- init_link() {
620
- const ports = [];
621
- for (const v of this.ports) {
622
- if (v.type === electronics_model_1.PortType.UartPort) {
623
- ports.push(v);
783
+ };
784
+ UartLinkTester.prototype.init_link = function () {
785
+ var e_9, _a;
786
+ var ports = [];
787
+ try {
788
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
789
+ var v = _c.value;
790
+ if (v.type === PortType.UartPort) {
791
+ ports.push(v);
792
+ }
793
+ }
794
+ }
795
+ catch (e_9_1) { e_9 = { error: e_9_1 }; }
796
+ finally {
797
+ try {
798
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
624
799
  }
800
+ finally { if (e_9) throw e_9.error; }
625
801
  }
626
802
  if (ports.length !== 2) {
627
803
  return false;
@@ -631,11 +807,16 @@ class UartLinkTester extends converter_base_1.CompositePortLinkConverterBase {
631
807
  b: ports[1],
632
808
  };
633
809
  return true;
810
+ };
811
+ return UartLinkTester;
812
+ }(CompositePortLinkConverterBase));
813
+ export { UartLinkTester };
814
+ var UsbLinkTester = /** @class */ (function (_super) {
815
+ __extends(UsbLinkTester, _super);
816
+ function UsbLinkTester() {
817
+ return _super !== null && _super.apply(this, arguments) || this;
634
818
  }
635
- }
636
- exports.UartLinkTester = UartLinkTester;
637
- class UsbLinkTester extends converter_base_1.CompositePortLinkConverterBase {
638
- get_signals() {
819
+ UsbLinkTester.prototype.get_signals = function () {
639
820
  if (!this.link)
640
821
  return [];
641
822
  // const dp = [this.link.host.dp, this.link.device.dp, ...this.link.passive!.map((port) => port.dp)]
@@ -643,7 +824,7 @@ class UsbLinkTester extends converter_base_1.CompositePortLinkConverterBase {
643
824
  return [
644
825
  {
645
826
  name: 'dp',
646
- ports: [
827
+ ports: __spreadArray([
647
828
  {
648
829
  parent: this.link.host,
649
830
  meta_port: this.link.host.dp,
@@ -651,16 +832,15 @@ class UsbLinkTester extends converter_base_1.CompositePortLinkConverterBase {
651
832
  {
652
833
  parent: this.link.device,
653
834
  meta_port: this.link.device.dp,
654
- },
655
- ...this.link.passive.map((port) => ({
656
- parent: port,
657
- meta_port: port.dp,
658
- })),
659
- ],
835
+ }
836
+ ], __read(this.link.passive.map(function (port) { return ({
837
+ parent: port,
838
+ meta_port: port.dp,
839
+ }); })), false),
660
840
  },
661
841
  {
662
842
  name: 'dm',
663
- ports: [
843
+ ports: __spreadArray([
664
844
  {
665
845
  parent: this.link.host,
666
846
  meta_port: this.link.host.dm,
@@ -668,35 +848,45 @@ class UsbLinkTester extends converter_base_1.CompositePortLinkConverterBase {
668
848
  {
669
849
  parent: this.link.device,
670
850
  meta_port: this.link.device.dm,
671
- },
672
- ...this.link.passive.map((port) => ({
673
- parent: port,
674
- meta_port: port.dm,
675
- })),
676
- ],
851
+ }
852
+ ], __read(this.link.passive.map(function (port) { return ({
853
+ parent: port,
854
+ meta_port: port.dm,
855
+ }); })), false),
677
856
  },
678
857
  ];
679
- }
680
- init_link() {
681
- const hosts = [];
682
- const devices = [];
683
- const passive = [];
684
- for (const v of this.ports) {
685
- switch (v.type) {
686
- case electronics_model_1.PortType.UsbHostPort: {
687
- hosts.push(v);
688
- break;
689
- }
690
- case electronics_model_1.PortType.UsbDevicePort: {
691
- devices.push(v);
692
- break;
693
- }
694
- case electronics_model_1.PortType.UsbPassivePort: {
695
- passive.push(v);
696
- break;
858
+ };
859
+ UsbLinkTester.prototype.init_link = function () {
860
+ var e_10, _a;
861
+ var hosts = [];
862
+ var devices = [];
863
+ var passive = [];
864
+ try {
865
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
866
+ var v = _c.value;
867
+ switch (v.type) {
868
+ case PortType.UsbHostPort: {
869
+ hosts.push(v);
870
+ break;
871
+ }
872
+ case PortType.UsbDevicePort: {
873
+ devices.push(v);
874
+ break;
875
+ }
876
+ case PortType.UsbPassivePort: {
877
+ passive.push(v);
878
+ break;
879
+ }
697
880
  }
698
881
  }
699
882
  }
883
+ catch (e_10_1) { e_10 = { error: e_10_1 }; }
884
+ finally {
885
+ try {
886
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
887
+ }
888
+ finally { if (e_10) throw e_10.error; }
889
+ }
700
890
  if (hosts.length !== 1) {
701
891
  return false;
702
892
  }
@@ -706,14 +896,19 @@ class UsbLinkTester extends converter_base_1.CompositePortLinkConverterBase {
706
896
  this.link = {
707
897
  host: hosts[0],
708
898
  device: devices[0],
709
- passive,
899
+ passive: passive,
710
900
  };
711
901
  return true;
902
+ };
903
+ return UsbLinkTester;
904
+ }(CompositePortLinkConverterBase));
905
+ export { UsbLinkTester };
906
+ var UsbCcLinkTester = /** @class */ (function (_super) {
907
+ __extends(UsbCcLinkTester, _super);
908
+ function UsbCcLinkTester() {
909
+ return _super !== null && _super.apply(this, arguments) || this;
712
910
  }
713
- }
714
- exports.UsbLinkTester = UsbLinkTester;
715
- class UsbCcLinkTester extends converter_base_1.CompositePortLinkConverterBase {
716
- get_signals() {
911
+ UsbCcLinkTester.prototype.get_signals = function () {
717
912
  if (!this.link)
718
913
  return [];
719
914
  // const cc1 = [this.link.a.cc1, this.link.b.cc1]
@@ -746,14 +941,25 @@ class UsbCcLinkTester extends converter_base_1.CompositePortLinkConverterBase {
746
941
  ],
747
942
  },
748
943
  ];
749
- }
750
- init_link() {
751
- const nodes = [];
752
- for (const v of this.ports) {
753
- if (v.type === electronics_model_1.PortType.UsbCcPort) {
754
- nodes.push(v);
944
+ };
945
+ UsbCcLinkTester.prototype.init_link = function () {
946
+ var e_11, _a;
947
+ var nodes = [];
948
+ try {
949
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
950
+ var v = _c.value;
951
+ if (v.type === PortType.UsbCcPort) {
952
+ nodes.push(v);
953
+ }
755
954
  }
756
955
  }
956
+ catch (e_11_1) { e_11 = { error: e_11_1 }; }
957
+ finally {
958
+ try {
959
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
960
+ }
961
+ finally { if (e_11) throw e_11.error; }
962
+ }
757
963
  if (nodes.length !== 2) {
758
964
  return false;
759
965
  }
@@ -762,15 +968,20 @@ class UsbCcLinkTester extends converter_base_1.CompositePortLinkConverterBase {
762
968
  b: nodes[1],
763
969
  };
764
970
  return true;
971
+ };
972
+ return UsbCcLinkTester;
973
+ }(CompositePortLinkConverterBase));
974
+ export { UsbCcLinkTester };
975
+ var Dvp8LinkTester = /** @class */ (function (_super) {
976
+ __extends(Dvp8LinkTester, _super);
977
+ function Dvp8LinkTester() {
978
+ return _super !== null && _super.apply(this, arguments) || this;
765
979
  }
766
- }
767
- exports.UsbCcLinkTester = UsbCcLinkTester;
768
- class Dvp8LinkTester extends converter_base_1.CompositePortLinkConverterBase {
769
- get_signals() {
980
+ Dvp8LinkTester.prototype.get_signals = function () {
770
981
  if (!this.link)
771
982
  return [];
772
- const host = this.link.host;
773
- const cam = this.link.cam;
983
+ var host = this.link.host;
984
+ var cam = this.link.cam;
774
985
  // const digitalLinks = [
775
986
  // [host.xclk, cam.xclk],
776
987
  // [host.pclk, cam.pclk],
@@ -935,22 +1146,33 @@ class Dvp8LinkTester extends converter_base_1.CompositePortLinkConverterBase {
935
1146
  ],
936
1147
  },
937
1148
  ];
938
- }
939
- init_link() {
940
- const hosts = [];
941
- const cams = [];
942
- for (const v of this.ports) {
943
- switch (v.type) {
944
- case electronics_model_1.PortType.Dvp8Host: {
945
- hosts.push(v);
946
- break;
947
- }
948
- case electronics_model_1.PortType.Dvp8Camera: {
949
- cams.push(v);
950
- break;
1149
+ };
1150
+ Dvp8LinkTester.prototype.init_link = function () {
1151
+ var e_12, _a;
1152
+ var hosts = [];
1153
+ var cams = [];
1154
+ try {
1155
+ for (var _b = __values(this.ports), _c = _b.next(); !_c.done; _c = _b.next()) {
1156
+ var v = _c.value;
1157
+ switch (v.type) {
1158
+ case PortType.Dvp8Host: {
1159
+ hosts.push(v);
1160
+ break;
1161
+ }
1162
+ case PortType.Dvp8Camera: {
1163
+ cams.push(v);
1164
+ break;
1165
+ }
951
1166
  }
952
1167
  }
953
1168
  }
1169
+ catch (e_12_1) { e_12 = { error: e_12_1 }; }
1170
+ finally {
1171
+ try {
1172
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
1173
+ }
1174
+ finally { if (e_12) throw e_12.error; }
1175
+ }
954
1176
  if (hosts.length !== 1) {
955
1177
  return false;
956
1178
  }
@@ -962,6 +1184,7 @@ class Dvp8LinkTester extends converter_base_1.CompositePortLinkConverterBase {
962
1184
  cam: cams[0],
963
1185
  };
964
1186
  return true;
965
- }
966
- }
967
- exports.Dvp8LinkTester = Dvp8LinkTester;
1187
+ };
1188
+ return Dvp8LinkTester;
1189
+ }(CompositePortLinkConverterBase));
1190
+ export { Dvp8LinkTester };