circuit-json 0.0.121 → 0.0.122
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.
- package/README.md +14 -0
- package/dist/index.d.mts +187 -1
- package/dist/index.mjs +405 -394
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -349,7 +349,7 @@ var source_simple_power_source = source_component_base.extend({
|
|
|
349
349
|
expectTypesMatch(true);
|
|
350
350
|
|
|
351
351
|
// src/source/any_source_component.ts
|
|
352
|
-
import { z as
|
|
352
|
+
import { z as z24 } from "zod";
|
|
353
353
|
|
|
354
354
|
// src/source/source_simple_battery.ts
|
|
355
355
|
import { z as z16 } from "zod";
|
|
@@ -408,8 +408,16 @@ var source_simple_resonator = source_component_base.extend({
|
|
|
408
408
|
});
|
|
409
409
|
expectTypesMatch(true);
|
|
410
410
|
|
|
411
|
+
// src/source/source_simple_transistor.ts
|
|
412
|
+
import { z as z23 } from "zod";
|
|
413
|
+
var source_simple_transistor = source_component_base.extend({
|
|
414
|
+
ftype: z23.literal("simple_transistor"),
|
|
415
|
+
transistor_type: z23.enum(["npn", "pnp"])
|
|
416
|
+
});
|
|
417
|
+
expectTypesMatch(true);
|
|
418
|
+
|
|
411
419
|
// src/source/any_source_component.ts
|
|
412
|
-
var any_source_component =
|
|
420
|
+
var any_source_component = z24.union([
|
|
413
421
|
source_simple_resistor,
|
|
414
422
|
source_simple_capacitor,
|
|
415
423
|
source_simple_diode,
|
|
@@ -424,59 +432,60 @@ var any_source_component = z23.union([
|
|
|
424
432
|
source_simple_potentiometer,
|
|
425
433
|
source_simple_crystal,
|
|
426
434
|
source_simple_pin_header,
|
|
427
|
-
source_simple_resonator
|
|
435
|
+
source_simple_resonator,
|
|
436
|
+
source_simple_transistor
|
|
428
437
|
]);
|
|
429
438
|
|
|
430
439
|
// src/source/source_port.ts
|
|
431
|
-
import { z as
|
|
432
|
-
var source_port =
|
|
433
|
-
type:
|
|
434
|
-
pin_number:
|
|
435
|
-
port_hints:
|
|
436
|
-
name:
|
|
437
|
-
source_port_id:
|
|
438
|
-
source_component_id:
|
|
440
|
+
import { z as z25 } from "zod";
|
|
441
|
+
var source_port = z25.object({
|
|
442
|
+
type: z25.literal("source_port"),
|
|
443
|
+
pin_number: z25.number().optional(),
|
|
444
|
+
port_hints: z25.array(z25.string()).optional(),
|
|
445
|
+
name: z25.string(),
|
|
446
|
+
source_port_id: z25.string(),
|
|
447
|
+
source_component_id: z25.string()
|
|
439
448
|
});
|
|
440
449
|
expectTypesMatch(true);
|
|
441
450
|
|
|
442
451
|
// src/source/source_trace.ts
|
|
443
|
-
import { z as
|
|
444
|
-
var source_trace =
|
|
445
|
-
type:
|
|
446
|
-
source_trace_id:
|
|
447
|
-
connected_source_port_ids:
|
|
448
|
-
connected_source_net_ids:
|
|
449
|
-
subcircuit_connectivity_map_key:
|
|
452
|
+
import { z as z26 } from "zod";
|
|
453
|
+
var source_trace = z26.object({
|
|
454
|
+
type: z26.literal("source_trace"),
|
|
455
|
+
source_trace_id: z26.string(),
|
|
456
|
+
connected_source_port_ids: z26.array(z26.string()),
|
|
457
|
+
connected_source_net_ids: z26.array(z26.string()),
|
|
458
|
+
subcircuit_connectivity_map_key: z26.string().optional()
|
|
450
459
|
});
|
|
451
460
|
expectTypesMatch(true);
|
|
452
461
|
|
|
453
462
|
// src/source/source_group.ts
|
|
454
|
-
import { z as
|
|
455
|
-
var source_group =
|
|
456
|
-
type:
|
|
457
|
-
source_group_id:
|
|
458
|
-
name:
|
|
463
|
+
import { z as z27 } from "zod";
|
|
464
|
+
var source_group = z27.object({
|
|
465
|
+
type: z27.literal("source_group"),
|
|
466
|
+
source_group_id: z27.string(),
|
|
467
|
+
name: z27.string().optional()
|
|
459
468
|
});
|
|
460
469
|
|
|
461
470
|
// src/source/source_net.ts
|
|
462
|
-
import { z as
|
|
463
|
-
var source_net =
|
|
464
|
-
type:
|
|
465
|
-
source_net_id:
|
|
466
|
-
name:
|
|
467
|
-
member_source_group_ids:
|
|
468
|
-
is_power:
|
|
469
|
-
is_ground:
|
|
470
|
-
is_digital_signal:
|
|
471
|
-
is_analog_signal:
|
|
472
|
-
trace_width:
|
|
471
|
+
import { z as z28 } from "zod";
|
|
472
|
+
var source_net = z28.object({
|
|
473
|
+
type: z28.literal("source_net"),
|
|
474
|
+
source_net_id: z28.string(),
|
|
475
|
+
name: z28.string(),
|
|
476
|
+
member_source_group_ids: z28.array(z28.string()),
|
|
477
|
+
is_power: z28.boolean().optional(),
|
|
478
|
+
is_ground: z28.boolean().optional(),
|
|
479
|
+
is_digital_signal: z28.boolean().optional(),
|
|
480
|
+
is_analog_signal: z28.boolean().optional(),
|
|
481
|
+
trace_width: z28.number().optional()
|
|
473
482
|
});
|
|
474
483
|
|
|
475
484
|
// src/schematic/schematic_box.ts
|
|
476
|
-
import { z as
|
|
477
|
-
var schematic_box =
|
|
478
|
-
type:
|
|
479
|
-
schematic_component_id:
|
|
485
|
+
import { z as z29 } from "zod";
|
|
486
|
+
var schematic_box = z29.object({
|
|
487
|
+
type: z29.literal("schematic_box"),
|
|
488
|
+
schematic_component_id: z29.string(),
|
|
480
489
|
width: distance,
|
|
481
490
|
height: distance,
|
|
482
491
|
x: distance,
|
|
@@ -485,82 +494,82 @@ var schematic_box = z28.object({
|
|
|
485
494
|
expectTypesMatch(true);
|
|
486
495
|
|
|
487
496
|
// src/schematic/schematic_path.ts
|
|
488
|
-
import { z as
|
|
489
|
-
var schematic_path =
|
|
490
|
-
type:
|
|
491
|
-
schematic_component_id:
|
|
492
|
-
fill_color:
|
|
493
|
-
is_filled:
|
|
494
|
-
points:
|
|
497
|
+
import { z as z30 } from "zod";
|
|
498
|
+
var schematic_path = z30.object({
|
|
499
|
+
type: z30.literal("schematic_path"),
|
|
500
|
+
schematic_component_id: z30.string(),
|
|
501
|
+
fill_color: z30.enum(["red", "blue"]).optional(),
|
|
502
|
+
is_filled: z30.boolean().optional(),
|
|
503
|
+
points: z30.array(point)
|
|
495
504
|
});
|
|
496
505
|
expectTypesMatch(true);
|
|
497
506
|
|
|
498
507
|
// src/schematic/schematic_component.ts
|
|
499
|
-
import { z as
|
|
500
|
-
var schematic_pin_styles =
|
|
501
|
-
|
|
508
|
+
import { z as z31 } from "zod";
|
|
509
|
+
var schematic_pin_styles = z31.record(
|
|
510
|
+
z31.object({
|
|
502
511
|
left_margin: length.optional(),
|
|
503
512
|
right_margin: length.optional(),
|
|
504
513
|
top_margin: length.optional(),
|
|
505
514
|
bottom_margin: length.optional()
|
|
506
515
|
})
|
|
507
516
|
);
|
|
508
|
-
var schematic_component_port_arrangement_by_size =
|
|
509
|
-
left_size:
|
|
510
|
-
right_size:
|
|
511
|
-
top_size:
|
|
512
|
-
bottom_size:
|
|
517
|
+
var schematic_component_port_arrangement_by_size = z31.object({
|
|
518
|
+
left_size: z31.number(),
|
|
519
|
+
right_size: z31.number(),
|
|
520
|
+
top_size: z31.number().optional(),
|
|
521
|
+
bottom_size: z31.number().optional()
|
|
513
522
|
});
|
|
514
523
|
expectTypesMatch(true);
|
|
515
|
-
var schematic_component_port_arrangement_by_sides =
|
|
516
|
-
left_side:
|
|
517
|
-
pins:
|
|
524
|
+
var schematic_component_port_arrangement_by_sides = z31.object({
|
|
525
|
+
left_side: z31.object({
|
|
526
|
+
pins: z31.array(z31.number()),
|
|
518
527
|
// @ts-ignore
|
|
519
|
-
direction:
|
|
528
|
+
direction: z31.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
520
529
|
}).optional(),
|
|
521
|
-
right_side:
|
|
522
|
-
pins:
|
|
530
|
+
right_side: z31.object({
|
|
531
|
+
pins: z31.array(z31.number()),
|
|
523
532
|
// @ts-ignore
|
|
524
|
-
direction:
|
|
533
|
+
direction: z31.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
525
534
|
}).optional(),
|
|
526
|
-
top_side:
|
|
527
|
-
pins:
|
|
535
|
+
top_side: z31.object({
|
|
536
|
+
pins: z31.array(z31.number()),
|
|
528
537
|
// @ts-ignore
|
|
529
|
-
direction:
|
|
538
|
+
direction: z31.enum(["left-to-right", "right-to-left"]).optional()
|
|
530
539
|
}).optional(),
|
|
531
|
-
bottom_side:
|
|
532
|
-
pins:
|
|
540
|
+
bottom_side: z31.object({
|
|
541
|
+
pins: z31.array(z31.number()),
|
|
533
542
|
// @ts-ignore
|
|
534
|
-
direction:
|
|
543
|
+
direction: z31.enum(["left-to-right", "right-to-left"]).optional()
|
|
535
544
|
}).optional()
|
|
536
545
|
});
|
|
537
546
|
expectTypesMatch(true);
|
|
538
|
-
var port_arrangement =
|
|
547
|
+
var port_arrangement = z31.union([
|
|
539
548
|
schematic_component_port_arrangement_by_size,
|
|
540
549
|
schematic_component_port_arrangement_by_sides
|
|
541
550
|
]);
|
|
542
|
-
var schematic_component =
|
|
543
|
-
type:
|
|
551
|
+
var schematic_component = z31.object({
|
|
552
|
+
type: z31.literal("schematic_component"),
|
|
544
553
|
rotation: rotation.default(0),
|
|
545
554
|
size,
|
|
546
555
|
center: point,
|
|
547
|
-
source_component_id:
|
|
548
|
-
schematic_component_id:
|
|
556
|
+
source_component_id: z31.string(),
|
|
557
|
+
schematic_component_id: z31.string(),
|
|
549
558
|
pin_spacing: length.optional(),
|
|
550
559
|
pin_styles: schematic_pin_styles.optional(),
|
|
551
560
|
box_width: length.optional(),
|
|
552
|
-
symbol_name:
|
|
561
|
+
symbol_name: z31.string().optional(),
|
|
553
562
|
port_arrangement: port_arrangement.optional(),
|
|
554
|
-
port_labels:
|
|
555
|
-
symbol_display_value:
|
|
563
|
+
port_labels: z31.record(z31.string()).optional(),
|
|
564
|
+
symbol_display_value: z31.string().optional()
|
|
556
565
|
});
|
|
557
566
|
expectTypesMatch(true);
|
|
558
567
|
|
|
559
568
|
// src/schematic/schematic_line.ts
|
|
560
|
-
import { z as
|
|
561
|
-
var schematic_line =
|
|
562
|
-
type:
|
|
563
|
-
schematic_component_id:
|
|
569
|
+
import { z as z32 } from "zod";
|
|
570
|
+
var schematic_line = z32.object({
|
|
571
|
+
type: z32.literal("schematic_line"),
|
|
572
|
+
schematic_component_id: z32.string(),
|
|
564
573
|
x1: distance,
|
|
565
574
|
x2: distance,
|
|
566
575
|
y1: distance,
|
|
@@ -569,113 +578,113 @@ var schematic_line = z31.object({
|
|
|
569
578
|
expectTypesMatch(true);
|
|
570
579
|
|
|
571
580
|
// src/schematic/schematic_trace.ts
|
|
572
|
-
import { z as
|
|
573
|
-
var schematic_trace =
|
|
574
|
-
type:
|
|
575
|
-
schematic_trace_id:
|
|
576
|
-
source_trace_id:
|
|
577
|
-
junctions:
|
|
578
|
-
|
|
579
|
-
x:
|
|
580
|
-
y:
|
|
581
|
+
import { z as z33 } from "zod";
|
|
582
|
+
var schematic_trace = z33.object({
|
|
583
|
+
type: z33.literal("schematic_trace"),
|
|
584
|
+
schematic_trace_id: z33.string(),
|
|
585
|
+
source_trace_id: z33.string(),
|
|
586
|
+
junctions: z33.array(
|
|
587
|
+
z33.object({
|
|
588
|
+
x: z33.number(),
|
|
589
|
+
y: z33.number()
|
|
581
590
|
})
|
|
582
591
|
),
|
|
583
|
-
edges:
|
|
584
|
-
|
|
585
|
-
from:
|
|
586
|
-
x:
|
|
587
|
-
y:
|
|
592
|
+
edges: z33.array(
|
|
593
|
+
z33.object({
|
|
594
|
+
from: z33.object({
|
|
595
|
+
x: z33.number(),
|
|
596
|
+
y: z33.number()
|
|
588
597
|
}),
|
|
589
|
-
to:
|
|
590
|
-
x:
|
|
591
|
-
y:
|
|
598
|
+
to: z33.object({
|
|
599
|
+
x: z33.number(),
|
|
600
|
+
y: z33.number()
|
|
592
601
|
}),
|
|
593
|
-
is_crossing:
|
|
594
|
-
from_schematic_port_id:
|
|
595
|
-
to_schematic_port_id:
|
|
602
|
+
is_crossing: z33.boolean().optional(),
|
|
603
|
+
from_schematic_port_id: z33.string().optional(),
|
|
604
|
+
to_schematic_port_id: z33.string().optional()
|
|
596
605
|
})
|
|
597
606
|
)
|
|
598
607
|
});
|
|
599
608
|
expectTypesMatch(true);
|
|
600
609
|
|
|
601
610
|
// src/schematic/schematic_text.ts
|
|
602
|
-
import { z as
|
|
603
|
-
var schematic_text =
|
|
604
|
-
type:
|
|
605
|
-
schematic_component_id:
|
|
606
|
-
schematic_text_id:
|
|
607
|
-
text:
|
|
608
|
-
position:
|
|
611
|
+
import { z as z34 } from "zod";
|
|
612
|
+
var schematic_text = z34.object({
|
|
613
|
+
type: z34.literal("schematic_text"),
|
|
614
|
+
schematic_component_id: z34.string(),
|
|
615
|
+
schematic_text_id: z34.string(),
|
|
616
|
+
text: z34.string(),
|
|
617
|
+
position: z34.object({
|
|
609
618
|
x: distance,
|
|
610
619
|
y: distance
|
|
611
620
|
}),
|
|
612
|
-
rotation:
|
|
613
|
-
anchor:
|
|
614
|
-
color:
|
|
621
|
+
rotation: z34.number().default(0),
|
|
622
|
+
anchor: z34.enum(["center", "left", "right", "top", "bottom"]).default("center"),
|
|
623
|
+
color: z34.string().default("#000000")
|
|
615
624
|
});
|
|
616
625
|
expectTypesMatch(true);
|
|
617
626
|
|
|
618
627
|
// src/schematic/schematic_port.ts
|
|
619
|
-
import { z as
|
|
620
|
-
var schematic_port =
|
|
621
|
-
type:
|
|
622
|
-
schematic_port_id:
|
|
623
|
-
source_port_id:
|
|
624
|
-
schematic_component_id:
|
|
628
|
+
import { z as z35 } from "zod";
|
|
629
|
+
var schematic_port = z35.object({
|
|
630
|
+
type: z35.literal("schematic_port"),
|
|
631
|
+
schematic_port_id: z35.string(),
|
|
632
|
+
source_port_id: z35.string(),
|
|
633
|
+
schematic_component_id: z35.string().optional(),
|
|
625
634
|
center: point,
|
|
626
|
-
facing_direction:
|
|
627
|
-
distance_from_component_edge:
|
|
628
|
-
side_of_component:
|
|
629
|
-
true_ccw_index:
|
|
630
|
-
pin_number:
|
|
631
|
-
display_pin_label:
|
|
635
|
+
facing_direction: z35.enum(["up", "down", "left", "right"]).optional(),
|
|
636
|
+
distance_from_component_edge: z35.number().optional(),
|
|
637
|
+
side_of_component: z35.enum(["top", "bottom", "left", "right"]).optional(),
|
|
638
|
+
true_ccw_index: z35.number().optional(),
|
|
639
|
+
pin_number: z35.number().optional(),
|
|
640
|
+
display_pin_label: z35.string().optional()
|
|
632
641
|
}).describe("Defines a port on a schematic component");
|
|
633
642
|
expectTypesMatch(true);
|
|
634
643
|
|
|
635
644
|
// src/schematic/schematic_net_label.ts
|
|
636
|
-
import { z as
|
|
637
|
-
var schematic_net_label =
|
|
638
|
-
type:
|
|
639
|
-
source_net_id:
|
|
645
|
+
import { z as z36 } from "zod";
|
|
646
|
+
var schematic_net_label = z36.object({
|
|
647
|
+
type: z36.literal("schematic_net_label"),
|
|
648
|
+
source_net_id: z36.string(),
|
|
640
649
|
center: point,
|
|
641
650
|
anchor_position: point.optional(),
|
|
642
|
-
anchor_side:
|
|
643
|
-
text:
|
|
644
|
-
symbol_name:
|
|
651
|
+
anchor_side: z36.enum(["top", "bottom", "left", "right"]),
|
|
652
|
+
text: z36.string(),
|
|
653
|
+
symbol_name: z36.string().optional()
|
|
645
654
|
});
|
|
646
655
|
|
|
647
656
|
// src/schematic/schematic_error.ts
|
|
648
|
-
import { z as
|
|
649
|
-
var schematic_error =
|
|
650
|
-
type:
|
|
651
|
-
schematic_error_id:
|
|
657
|
+
import { z as z37 } from "zod";
|
|
658
|
+
var schematic_error = z37.object({
|
|
659
|
+
type: z37.literal("schematic_error"),
|
|
660
|
+
schematic_error_id: z37.string(),
|
|
652
661
|
// eventually each error type should be broken out into a dir of files
|
|
653
|
-
error_type:
|
|
654
|
-
message:
|
|
662
|
+
error_type: z37.literal("schematic_port_not_found"),
|
|
663
|
+
message: z37.string()
|
|
655
664
|
}).describe("Defines a schematic error on the schematic");
|
|
656
665
|
expectTypesMatch(true);
|
|
657
666
|
|
|
658
667
|
// src/schematic/schematic_debug_object.ts
|
|
659
|
-
import { z as
|
|
660
|
-
var schematic_debug_object_base =
|
|
661
|
-
type:
|
|
662
|
-
label:
|
|
668
|
+
import { z as z38 } from "zod";
|
|
669
|
+
var schematic_debug_object_base = z38.object({
|
|
670
|
+
type: z38.literal("schematic_debug_object"),
|
|
671
|
+
label: z38.string().optional()
|
|
663
672
|
});
|
|
664
673
|
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
665
|
-
shape:
|
|
674
|
+
shape: z38.literal("rect"),
|
|
666
675
|
center: point,
|
|
667
676
|
size
|
|
668
677
|
});
|
|
669
678
|
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
670
|
-
shape:
|
|
679
|
+
shape: z38.literal("line"),
|
|
671
680
|
start: point,
|
|
672
681
|
end: point
|
|
673
682
|
});
|
|
674
683
|
var schematic_debug_point = schematic_debug_object_base.extend({
|
|
675
|
-
shape:
|
|
684
|
+
shape: z38.literal("point"),
|
|
676
685
|
center: point
|
|
677
686
|
});
|
|
678
|
-
var schematic_debug_object =
|
|
687
|
+
var schematic_debug_object = z38.discriminatedUnion("shape", [
|
|
679
688
|
schematic_debug_rect,
|
|
680
689
|
schematic_debug_line,
|
|
681
690
|
schematic_debug_point
|
|
@@ -683,18 +692,18 @@ var schematic_debug_object = z37.discriminatedUnion("shape", [
|
|
|
683
692
|
expectTypesMatch(true);
|
|
684
693
|
|
|
685
694
|
// src/schematic/schematic_voltage_probe.ts
|
|
686
|
-
import { z as
|
|
687
|
-
var schematic_voltage_probe =
|
|
688
|
-
type:
|
|
689
|
-
schematic_voltage_probe_id:
|
|
695
|
+
import { z as z39 } from "zod";
|
|
696
|
+
var schematic_voltage_probe = z39.object({
|
|
697
|
+
type: z39.literal("schematic_voltage_probe"),
|
|
698
|
+
schematic_voltage_probe_id: z39.string(),
|
|
690
699
|
position: point,
|
|
691
|
-
schematic_trace_id:
|
|
700
|
+
schematic_trace_id: z39.string(),
|
|
692
701
|
voltage: voltage.optional()
|
|
693
702
|
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
694
703
|
expectTypesMatch(true);
|
|
695
704
|
|
|
696
705
|
// src/pcb/properties/layer_ref.ts
|
|
697
|
-
import { z as
|
|
706
|
+
import { z as z40 } from "zod";
|
|
698
707
|
var all_layers = [
|
|
699
708
|
"top",
|
|
700
709
|
"bottom",
|
|
@@ -705,9 +714,9 @@ var all_layers = [
|
|
|
705
714
|
"inner5",
|
|
706
715
|
"inner6"
|
|
707
716
|
];
|
|
708
|
-
var layer_string =
|
|
717
|
+
var layer_string = z40.enum(all_layers);
|
|
709
718
|
var layer_ref = layer_string.or(
|
|
710
|
-
|
|
719
|
+
z40.object({
|
|
711
720
|
name: layer_string
|
|
712
721
|
})
|
|
713
722
|
).transform((layer) => {
|
|
@@ -716,34 +725,34 @@ var layer_ref = layer_string.or(
|
|
|
716
725
|
}
|
|
717
726
|
return layer.name;
|
|
718
727
|
});
|
|
719
|
-
var visible_layer =
|
|
728
|
+
var visible_layer = z40.enum(["top", "bottom"]);
|
|
720
729
|
|
|
721
730
|
// src/pcb/properties/pcb_route_hints.ts
|
|
722
|
-
import { z as
|
|
723
|
-
var pcb_route_hint =
|
|
731
|
+
import { z as z41 } from "zod";
|
|
732
|
+
var pcb_route_hint = z41.object({
|
|
724
733
|
x: distance,
|
|
725
734
|
y: distance,
|
|
726
|
-
via:
|
|
735
|
+
via: z41.boolean().optional(),
|
|
727
736
|
via_to_layer: layer_ref.optional()
|
|
728
737
|
});
|
|
729
|
-
var pcb_route_hints =
|
|
738
|
+
var pcb_route_hints = z41.array(pcb_route_hint);
|
|
730
739
|
|
|
731
740
|
// src/pcb/properties/route_hint_point.ts
|
|
732
|
-
import { z as
|
|
733
|
-
var route_hint_point =
|
|
741
|
+
import { z as z42 } from "zod";
|
|
742
|
+
var route_hint_point = z42.object({
|
|
734
743
|
x: distance,
|
|
735
744
|
y: distance,
|
|
736
|
-
via:
|
|
745
|
+
via: z42.boolean().optional(),
|
|
737
746
|
to_layer: layer_ref.optional(),
|
|
738
747
|
trace_width: distance.optional()
|
|
739
748
|
});
|
|
740
749
|
|
|
741
750
|
// src/pcb/pcb_component.ts
|
|
742
|
-
import { z as
|
|
743
|
-
var pcb_component =
|
|
744
|
-
type:
|
|
751
|
+
import { z as z43 } from "zod";
|
|
752
|
+
var pcb_component = z43.object({
|
|
753
|
+
type: z43.literal("pcb_component"),
|
|
745
754
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
746
|
-
source_component_id:
|
|
755
|
+
source_component_id: z43.string(),
|
|
747
756
|
center: point,
|
|
748
757
|
layer: layer_ref,
|
|
749
758
|
rotation,
|
|
@@ -753,12 +762,12 @@ var pcb_component = z42.object({
|
|
|
753
762
|
expectTypesMatch(true);
|
|
754
763
|
|
|
755
764
|
// src/pcb/pcb_hole.ts
|
|
756
|
-
import { z as
|
|
757
|
-
var pcb_hole_circle_or_square =
|
|
758
|
-
type:
|
|
765
|
+
import { z as z44 } from "zod";
|
|
766
|
+
var pcb_hole_circle_or_square = z44.object({
|
|
767
|
+
type: z44.literal("pcb_hole"),
|
|
759
768
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
760
|
-
hole_shape:
|
|
761
|
-
hole_diameter:
|
|
769
|
+
hole_shape: z44.enum(["circle", "square"]),
|
|
770
|
+
hole_diameter: z44.number(),
|
|
762
771
|
x: distance,
|
|
763
772
|
y: distance
|
|
764
773
|
});
|
|
@@ -766,12 +775,12 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
766
775
|
"Defines a circular or square hole on the PCB"
|
|
767
776
|
);
|
|
768
777
|
expectTypesMatch(true);
|
|
769
|
-
var pcb_hole_oval =
|
|
770
|
-
type:
|
|
778
|
+
var pcb_hole_oval = z44.object({
|
|
779
|
+
type: z44.literal("pcb_hole"),
|
|
771
780
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
772
|
-
hole_shape:
|
|
773
|
-
hole_width:
|
|
774
|
-
hole_height:
|
|
781
|
+
hole_shape: z44.literal("oval"),
|
|
782
|
+
hole_width: z44.number(),
|
|
783
|
+
hole_height: z44.number(),
|
|
775
784
|
x: distance,
|
|
776
785
|
y: distance
|
|
777
786
|
});
|
|
@@ -782,36 +791,36 @@ expectTypesMatch(true);
|
|
|
782
791
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
783
792
|
|
|
784
793
|
// src/pcb/pcb_plated_hole.ts
|
|
785
|
-
import { z as
|
|
786
|
-
var pcb_plated_hole_circle =
|
|
787
|
-
type:
|
|
788
|
-
shape:
|
|
789
|
-
outer_diameter:
|
|
790
|
-
hole_diameter:
|
|
794
|
+
import { z as z45 } from "zod";
|
|
795
|
+
var pcb_plated_hole_circle = z45.object({
|
|
796
|
+
type: z45.literal("pcb_plated_hole"),
|
|
797
|
+
shape: z45.literal("circle"),
|
|
798
|
+
outer_diameter: z45.number(),
|
|
799
|
+
hole_diameter: z45.number(),
|
|
791
800
|
x: distance,
|
|
792
801
|
y: distance,
|
|
793
|
-
layers:
|
|
794
|
-
port_hints:
|
|
795
|
-
pcb_component_id:
|
|
796
|
-
pcb_port_id:
|
|
802
|
+
layers: z45.array(layer_ref),
|
|
803
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
804
|
+
pcb_component_id: z45.string().optional(),
|
|
805
|
+
pcb_port_id: z45.string().optional(),
|
|
797
806
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
798
807
|
});
|
|
799
|
-
var pcb_plated_hole_oval =
|
|
800
|
-
type:
|
|
801
|
-
shape:
|
|
802
|
-
outer_width:
|
|
803
|
-
outer_height:
|
|
804
|
-
hole_width:
|
|
805
|
-
hole_height:
|
|
808
|
+
var pcb_plated_hole_oval = z45.object({
|
|
809
|
+
type: z45.literal("pcb_plated_hole"),
|
|
810
|
+
shape: z45.enum(["oval", "pill"]),
|
|
811
|
+
outer_width: z45.number(),
|
|
812
|
+
outer_height: z45.number(),
|
|
813
|
+
hole_width: z45.number(),
|
|
814
|
+
hole_height: z45.number(),
|
|
806
815
|
x: distance,
|
|
807
816
|
y: distance,
|
|
808
|
-
layers:
|
|
809
|
-
port_hints:
|
|
810
|
-
pcb_component_id:
|
|
811
|
-
pcb_port_id:
|
|
817
|
+
layers: z45.array(layer_ref),
|
|
818
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
819
|
+
pcb_component_id: z45.string().optional(),
|
|
820
|
+
pcb_port_id: z45.string().optional(),
|
|
812
821
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
813
822
|
});
|
|
814
|
-
var pcb_plated_hole =
|
|
823
|
+
var pcb_plated_hole = z45.union([
|
|
815
824
|
pcb_plated_hole_circle,
|
|
816
825
|
pcb_plated_hole_oval
|
|
817
826
|
]);
|
|
@@ -821,156 +830,156 @@ expectTypesMatch(
|
|
|
821
830
|
expectTypesMatch(true);
|
|
822
831
|
|
|
823
832
|
// src/pcb/pcb_port.ts
|
|
824
|
-
import { z as
|
|
825
|
-
var pcb_port =
|
|
826
|
-
type:
|
|
833
|
+
import { z as z46 } from "zod";
|
|
834
|
+
var pcb_port = z46.object({
|
|
835
|
+
type: z46.literal("pcb_port"),
|
|
827
836
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
828
|
-
source_port_id:
|
|
829
|
-
pcb_component_id:
|
|
837
|
+
source_port_id: z46.string(),
|
|
838
|
+
pcb_component_id: z46.string(),
|
|
830
839
|
x: distance,
|
|
831
840
|
y: distance,
|
|
832
|
-
layers:
|
|
841
|
+
layers: z46.array(layer_ref)
|
|
833
842
|
}).describe("Defines a port on the PCB");
|
|
834
843
|
expectTypesMatch(true);
|
|
835
844
|
|
|
836
845
|
// src/pcb/pcb_smtpad.ts
|
|
837
|
-
import { z as
|
|
838
|
-
var pcb_smtpad_circle =
|
|
839
|
-
type:
|
|
840
|
-
shape:
|
|
846
|
+
import { z as z47 } from "zod";
|
|
847
|
+
var pcb_smtpad_circle = z47.object({
|
|
848
|
+
type: z47.literal("pcb_smtpad"),
|
|
849
|
+
shape: z47.literal("circle"),
|
|
841
850
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
842
851
|
x: distance,
|
|
843
852
|
y: distance,
|
|
844
|
-
radius:
|
|
853
|
+
radius: z47.number(),
|
|
845
854
|
layer: layer_ref,
|
|
846
|
-
port_hints:
|
|
847
|
-
pcb_component_id:
|
|
848
|
-
pcb_port_id:
|
|
855
|
+
port_hints: z47.array(z47.string()).optional(),
|
|
856
|
+
pcb_component_id: z47.string().optional(),
|
|
857
|
+
pcb_port_id: z47.string().optional()
|
|
849
858
|
});
|
|
850
|
-
var pcb_smtpad_rect =
|
|
851
|
-
type:
|
|
852
|
-
shape:
|
|
859
|
+
var pcb_smtpad_rect = z47.object({
|
|
860
|
+
type: z47.literal("pcb_smtpad"),
|
|
861
|
+
shape: z47.literal("rect"),
|
|
853
862
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
854
863
|
x: distance,
|
|
855
864
|
y: distance,
|
|
856
|
-
width:
|
|
857
|
-
height:
|
|
865
|
+
width: z47.number(),
|
|
866
|
+
height: z47.number(),
|
|
858
867
|
layer: layer_ref,
|
|
859
|
-
port_hints:
|
|
860
|
-
pcb_component_id:
|
|
861
|
-
pcb_port_id:
|
|
868
|
+
port_hints: z47.array(z47.string()).optional(),
|
|
869
|
+
pcb_component_id: z47.string().optional(),
|
|
870
|
+
pcb_port_id: z47.string().optional()
|
|
862
871
|
});
|
|
863
|
-
var pcb_smtpad_rotated_rect =
|
|
864
|
-
type:
|
|
865
|
-
shape:
|
|
872
|
+
var pcb_smtpad_rotated_rect = z47.object({
|
|
873
|
+
type: z47.literal("pcb_smtpad"),
|
|
874
|
+
shape: z47.literal("rotated_rect"),
|
|
866
875
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
867
876
|
x: distance,
|
|
868
877
|
y: distance,
|
|
869
|
-
width:
|
|
870
|
-
height:
|
|
878
|
+
width: z47.number(),
|
|
879
|
+
height: z47.number(),
|
|
871
880
|
ccw_rotation: rotation,
|
|
872
881
|
layer: layer_ref,
|
|
873
|
-
port_hints:
|
|
874
|
-
pcb_component_id:
|
|
875
|
-
pcb_port_id:
|
|
882
|
+
port_hints: z47.array(z47.string()).optional(),
|
|
883
|
+
pcb_component_id: z47.string().optional(),
|
|
884
|
+
pcb_port_id: z47.string().optional()
|
|
876
885
|
});
|
|
877
|
-
var pcb_smtpad =
|
|
886
|
+
var pcb_smtpad = z47.union([pcb_smtpad_circle, pcb_smtpad_rect, pcb_smtpad_rotated_rect]).describe("Defines an SMT pad on the PCB");
|
|
878
887
|
expectTypesMatch(true);
|
|
879
888
|
expectTypesMatch(true);
|
|
880
889
|
expectTypesMatch(true);
|
|
881
890
|
|
|
882
891
|
// src/pcb/pcb_solder_paste.ts
|
|
883
|
-
import { z as
|
|
884
|
-
var pcb_solder_paste_circle =
|
|
885
|
-
type:
|
|
886
|
-
shape:
|
|
892
|
+
import { z as z48 } from "zod";
|
|
893
|
+
var pcb_solder_paste_circle = z48.object({
|
|
894
|
+
type: z48.literal("pcb_solder_paste"),
|
|
895
|
+
shape: z48.literal("circle"),
|
|
887
896
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
888
897
|
x: distance,
|
|
889
898
|
y: distance,
|
|
890
|
-
radius:
|
|
899
|
+
radius: z48.number(),
|
|
891
900
|
layer: layer_ref,
|
|
892
|
-
pcb_component_id:
|
|
893
|
-
pcb_smtpad_id:
|
|
901
|
+
pcb_component_id: z48.string().optional(),
|
|
902
|
+
pcb_smtpad_id: z48.string().optional()
|
|
894
903
|
});
|
|
895
|
-
var pcb_solder_paste_rect =
|
|
896
|
-
type:
|
|
897
|
-
shape:
|
|
904
|
+
var pcb_solder_paste_rect = z48.object({
|
|
905
|
+
type: z48.literal("pcb_solder_paste"),
|
|
906
|
+
shape: z48.literal("rect"),
|
|
898
907
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
899
908
|
x: distance,
|
|
900
909
|
y: distance,
|
|
901
|
-
width:
|
|
902
|
-
height:
|
|
910
|
+
width: z48.number(),
|
|
911
|
+
height: z48.number(),
|
|
903
912
|
layer: layer_ref,
|
|
904
|
-
pcb_component_id:
|
|
905
|
-
pcb_smtpad_id:
|
|
913
|
+
pcb_component_id: z48.string().optional(),
|
|
914
|
+
pcb_smtpad_id: z48.string().optional()
|
|
906
915
|
});
|
|
907
|
-
var pcb_solder_paste =
|
|
916
|
+
var pcb_solder_paste = z48.union([pcb_solder_paste_circle, pcb_solder_paste_rect]).describe("Defines solderpaste on the PCB");
|
|
908
917
|
expectTypesMatch(true);
|
|
909
918
|
expectTypesMatch(true);
|
|
910
919
|
|
|
911
920
|
// src/pcb/pcb_text.ts
|
|
912
|
-
import { z as
|
|
913
|
-
var pcb_text =
|
|
914
|
-
type:
|
|
921
|
+
import { z as z49 } from "zod";
|
|
922
|
+
var pcb_text = z49.object({
|
|
923
|
+
type: z49.literal("pcb_text"),
|
|
915
924
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
916
|
-
text:
|
|
925
|
+
text: z49.string(),
|
|
917
926
|
center: point,
|
|
918
927
|
layer: layer_ref,
|
|
919
928
|
width: length,
|
|
920
929
|
height: length,
|
|
921
|
-
lines:
|
|
930
|
+
lines: z49.number(),
|
|
922
931
|
// @ts-ignore
|
|
923
|
-
align:
|
|
932
|
+
align: z49.enum(["bottom-left"])
|
|
924
933
|
}).describe("Defines text on the PCB");
|
|
925
934
|
expectTypesMatch(true);
|
|
926
935
|
|
|
927
936
|
// src/pcb/pcb_trace.ts
|
|
928
|
-
import { z as
|
|
929
|
-
var pcb_trace_route_point_wire =
|
|
930
|
-
route_type:
|
|
937
|
+
import { z as z50 } from "zod";
|
|
938
|
+
var pcb_trace_route_point_wire = z50.object({
|
|
939
|
+
route_type: z50.literal("wire"),
|
|
931
940
|
x: distance,
|
|
932
941
|
y: distance,
|
|
933
942
|
width: distance,
|
|
934
|
-
start_pcb_port_id:
|
|
935
|
-
end_pcb_port_id:
|
|
943
|
+
start_pcb_port_id: z50.string().optional(),
|
|
944
|
+
end_pcb_port_id: z50.string().optional(),
|
|
936
945
|
layer: layer_ref
|
|
937
946
|
});
|
|
938
|
-
var pcb_trace_route_point_via =
|
|
939
|
-
route_type:
|
|
947
|
+
var pcb_trace_route_point_via = z50.object({
|
|
948
|
+
route_type: z50.literal("via"),
|
|
940
949
|
x: distance,
|
|
941
950
|
y: distance,
|
|
942
|
-
from_layer:
|
|
943
|
-
to_layer:
|
|
951
|
+
from_layer: z50.string(),
|
|
952
|
+
to_layer: z50.string()
|
|
944
953
|
});
|
|
945
|
-
var pcb_trace_route_point =
|
|
954
|
+
var pcb_trace_route_point = z50.union([
|
|
946
955
|
pcb_trace_route_point_wire,
|
|
947
956
|
pcb_trace_route_point_via
|
|
948
957
|
]);
|
|
949
|
-
var pcb_trace =
|
|
950
|
-
type:
|
|
951
|
-
source_trace_id:
|
|
952
|
-
pcb_component_id:
|
|
958
|
+
var pcb_trace = z50.object({
|
|
959
|
+
type: z50.literal("pcb_trace"),
|
|
960
|
+
source_trace_id: z50.string().optional(),
|
|
961
|
+
pcb_component_id: z50.string().optional(),
|
|
953
962
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
954
|
-
route_thickness_mode:
|
|
955
|
-
route_order_index:
|
|
956
|
-
should_round_corners:
|
|
957
|
-
route:
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
route_type:
|
|
963
|
+
route_thickness_mode: z50.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
964
|
+
route_order_index: z50.number().optional(),
|
|
965
|
+
should_round_corners: z50.boolean().optional(),
|
|
966
|
+
route: z50.array(
|
|
967
|
+
z50.union([
|
|
968
|
+
z50.object({
|
|
969
|
+
route_type: z50.literal("wire"),
|
|
961
970
|
x: distance,
|
|
962
971
|
y: distance,
|
|
963
972
|
width: distance,
|
|
964
|
-
start_pcb_port_id:
|
|
965
|
-
end_pcb_port_id:
|
|
973
|
+
start_pcb_port_id: z50.string().optional(),
|
|
974
|
+
end_pcb_port_id: z50.string().optional(),
|
|
966
975
|
layer: layer_ref
|
|
967
976
|
}),
|
|
968
|
-
|
|
969
|
-
route_type:
|
|
977
|
+
z50.object({
|
|
978
|
+
route_type: z50.literal("via"),
|
|
970
979
|
x: distance,
|
|
971
980
|
y: distance,
|
|
972
|
-
from_layer:
|
|
973
|
-
to_layer:
|
|
981
|
+
from_layer: z50.string(),
|
|
982
|
+
to_layer: z50.string()
|
|
974
983
|
})
|
|
975
984
|
])
|
|
976
985
|
)
|
|
@@ -979,34 +988,34 @@ expectTypesMatch(true);
|
|
|
979
988
|
expectTypesMatch(true);
|
|
980
989
|
|
|
981
990
|
// src/pcb/pcb_trace_error.ts
|
|
982
|
-
import { z as
|
|
983
|
-
var pcb_trace_error =
|
|
984
|
-
type:
|
|
991
|
+
import { z as z51 } from "zod";
|
|
992
|
+
var pcb_trace_error = z51.object({
|
|
993
|
+
type: z51.literal("pcb_trace_error"),
|
|
985
994
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
986
|
-
error_type:
|
|
987
|
-
message:
|
|
995
|
+
error_type: z51.literal("pcb_trace_error"),
|
|
996
|
+
message: z51.string(),
|
|
988
997
|
center: point.optional(),
|
|
989
|
-
pcb_trace_id:
|
|
990
|
-
source_trace_id:
|
|
991
|
-
pcb_component_ids:
|
|
992
|
-
pcb_port_ids:
|
|
998
|
+
pcb_trace_id: z51.string(),
|
|
999
|
+
source_trace_id: z51.string(),
|
|
1000
|
+
pcb_component_ids: z51.array(z51.string()),
|
|
1001
|
+
pcb_port_ids: z51.array(z51.string())
|
|
993
1002
|
}).describe("Defines a trace error on the PCB");
|
|
994
1003
|
expectTypesMatch(true);
|
|
995
1004
|
|
|
996
1005
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
997
|
-
import { z as
|
|
998
|
-
var pcb_port_not_matched_error =
|
|
999
|
-
type:
|
|
1006
|
+
import { z as z52 } from "zod";
|
|
1007
|
+
var pcb_port_not_matched_error = z52.object({
|
|
1008
|
+
type: z52.literal("pcb_port_not_matched_error"),
|
|
1000
1009
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1001
|
-
message:
|
|
1002
|
-
pcb_component_ids:
|
|
1010
|
+
message: z52.string(),
|
|
1011
|
+
pcb_component_ids: z52.array(z52.string())
|
|
1003
1012
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1004
1013
|
expectTypesMatch(true);
|
|
1005
1014
|
|
|
1006
1015
|
// src/pcb/pcb_via.ts
|
|
1007
|
-
import { z as
|
|
1008
|
-
var pcb_via =
|
|
1009
|
-
type:
|
|
1016
|
+
import { z as z53 } from "zod";
|
|
1017
|
+
var pcb_via = z53.object({
|
|
1018
|
+
type: z53.literal("pcb_via"),
|
|
1010
1019
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1011
1020
|
x: distance,
|
|
1012
1021
|
y: distance,
|
|
@@ -1016,51 +1025,51 @@ var pcb_via = z52.object({
|
|
|
1016
1025
|
from_layer: layer_ref.optional(),
|
|
1017
1026
|
/** @deprecated */
|
|
1018
1027
|
to_layer: layer_ref.optional(),
|
|
1019
|
-
layers:
|
|
1020
|
-
pcb_trace_id:
|
|
1028
|
+
layers: z53.array(layer_ref),
|
|
1029
|
+
pcb_trace_id: z53.string().optional()
|
|
1021
1030
|
}).describe("Defines a via on the PCB");
|
|
1022
1031
|
expectTypesMatch(true);
|
|
1023
1032
|
|
|
1024
1033
|
// src/pcb/pcb_board.ts
|
|
1025
|
-
import { z as
|
|
1026
|
-
var pcb_board =
|
|
1027
|
-
type:
|
|
1034
|
+
import { z as z54 } from "zod";
|
|
1035
|
+
var pcb_board = z54.object({
|
|
1036
|
+
type: z54.literal("pcb_board"),
|
|
1028
1037
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1029
1038
|
width: length,
|
|
1030
1039
|
height: length,
|
|
1031
1040
|
center: point,
|
|
1032
1041
|
thickness: length.optional().default(1.4),
|
|
1033
|
-
num_layers:
|
|
1034
|
-
outline:
|
|
1042
|
+
num_layers: z54.number().optional().default(4),
|
|
1043
|
+
outline: z54.array(point).optional()
|
|
1035
1044
|
}).describe("Defines the board outline of the PCB");
|
|
1036
1045
|
expectTypesMatch(true);
|
|
1037
1046
|
|
|
1038
1047
|
// src/pcb/pcb_placement_error.ts
|
|
1039
|
-
import { z as
|
|
1040
|
-
var pcb_placement_error =
|
|
1041
|
-
type:
|
|
1048
|
+
import { z as z55 } from "zod";
|
|
1049
|
+
var pcb_placement_error = z55.object({
|
|
1050
|
+
type: z55.literal("pcb_placement_error"),
|
|
1042
1051
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1043
|
-
message:
|
|
1052
|
+
message: z55.string()
|
|
1044
1053
|
}).describe("Defines a placement error on the PCB");
|
|
1045
1054
|
expectTypesMatch(true);
|
|
1046
1055
|
|
|
1047
1056
|
// src/pcb/pcb_trace_hint.ts
|
|
1048
|
-
import { z as
|
|
1049
|
-
var pcb_trace_hint =
|
|
1050
|
-
type:
|
|
1057
|
+
import { z as z56 } from "zod";
|
|
1058
|
+
var pcb_trace_hint = z56.object({
|
|
1059
|
+
type: z56.literal("pcb_trace_hint"),
|
|
1051
1060
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1052
|
-
pcb_port_id:
|
|
1053
|
-
pcb_component_id:
|
|
1054
|
-
route:
|
|
1061
|
+
pcb_port_id: z56.string(),
|
|
1062
|
+
pcb_component_id: z56.string(),
|
|
1063
|
+
route: z56.array(route_hint_point)
|
|
1055
1064
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1056
1065
|
expectTypesMatch(true);
|
|
1057
1066
|
|
|
1058
1067
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1059
|
-
import { z as
|
|
1060
|
-
var pcb_silkscreen_line =
|
|
1061
|
-
type:
|
|
1068
|
+
import { z as z57 } from "zod";
|
|
1069
|
+
var pcb_silkscreen_line = z57.object({
|
|
1070
|
+
type: z57.literal("pcb_silkscreen_line"),
|
|
1062
1071
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1063
|
-
pcb_component_id:
|
|
1072
|
+
pcb_component_id: z57.string(),
|
|
1064
1073
|
stroke_width: distance.default("0.1mm"),
|
|
1065
1074
|
x1: distance,
|
|
1066
1075
|
y1: distance,
|
|
@@ -1071,40 +1080,40 @@ var pcb_silkscreen_line = z56.object({
|
|
|
1071
1080
|
expectTypesMatch(true);
|
|
1072
1081
|
|
|
1073
1082
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1074
|
-
import { z as
|
|
1075
|
-
var pcb_silkscreen_path =
|
|
1076
|
-
type:
|
|
1083
|
+
import { z as z58 } from "zod";
|
|
1084
|
+
var pcb_silkscreen_path = z58.object({
|
|
1085
|
+
type: z58.literal("pcb_silkscreen_path"),
|
|
1077
1086
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1078
|
-
pcb_component_id:
|
|
1087
|
+
pcb_component_id: z58.string(),
|
|
1079
1088
|
layer: visible_layer,
|
|
1080
|
-
route:
|
|
1089
|
+
route: z58.array(point),
|
|
1081
1090
|
stroke_width: length
|
|
1082
1091
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1083
1092
|
expectTypesMatch(true);
|
|
1084
1093
|
|
|
1085
1094
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1086
|
-
import { z as
|
|
1087
|
-
var pcb_silkscreen_text =
|
|
1088
|
-
type:
|
|
1095
|
+
import { z as z59 } from "zod";
|
|
1096
|
+
var pcb_silkscreen_text = z59.object({
|
|
1097
|
+
type: z59.literal("pcb_silkscreen_text"),
|
|
1089
1098
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1090
|
-
font:
|
|
1099
|
+
font: z59.literal("tscircuit2024").default("tscircuit2024"),
|
|
1091
1100
|
font_size: distance.default("0.2mm"),
|
|
1092
|
-
pcb_component_id:
|
|
1093
|
-
text:
|
|
1094
|
-
ccw_rotation:
|
|
1101
|
+
pcb_component_id: z59.string(),
|
|
1102
|
+
text: z59.string(),
|
|
1103
|
+
ccw_rotation: z59.number().optional(),
|
|
1095
1104
|
layer: layer_ref,
|
|
1096
|
-
is_mirrored:
|
|
1105
|
+
is_mirrored: z59.boolean().default(false).optional(),
|
|
1097
1106
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1098
|
-
anchor_alignment:
|
|
1107
|
+
anchor_alignment: z59.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
|
|
1099
1108
|
}).describe("Defines silkscreen text on the PCB");
|
|
1100
1109
|
expectTypesMatch(true);
|
|
1101
1110
|
|
|
1102
1111
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1103
|
-
import { z as
|
|
1104
|
-
var pcb_silkscreen_rect =
|
|
1105
|
-
type:
|
|
1112
|
+
import { z as z60 } from "zod";
|
|
1113
|
+
var pcb_silkscreen_rect = z60.object({
|
|
1114
|
+
type: z60.literal("pcb_silkscreen_rect"),
|
|
1106
1115
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1107
|
-
pcb_component_id:
|
|
1116
|
+
pcb_component_id: z60.string(),
|
|
1108
1117
|
center: point,
|
|
1109
1118
|
width: length,
|
|
1110
1119
|
height: length,
|
|
@@ -1113,13 +1122,13 @@ var pcb_silkscreen_rect = z59.object({
|
|
|
1113
1122
|
expectTypesMatch(true);
|
|
1114
1123
|
|
|
1115
1124
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1116
|
-
import { z as
|
|
1117
|
-
var pcb_silkscreen_circle =
|
|
1118
|
-
type:
|
|
1125
|
+
import { z as z61 } from "zod";
|
|
1126
|
+
var pcb_silkscreen_circle = z61.object({
|
|
1127
|
+
type: z61.literal("pcb_silkscreen_circle"),
|
|
1119
1128
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1120
1129
|
"pcb_silkscreen_circle"
|
|
1121
1130
|
),
|
|
1122
|
-
pcb_component_id:
|
|
1131
|
+
pcb_component_id: z61.string(),
|
|
1123
1132
|
center: point,
|
|
1124
1133
|
radius: length,
|
|
1125
1134
|
layer: visible_layer
|
|
@@ -1127,11 +1136,11 @@ var pcb_silkscreen_circle = z60.object({
|
|
|
1127
1136
|
expectTypesMatch(true);
|
|
1128
1137
|
|
|
1129
1138
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1130
|
-
import { z as
|
|
1131
|
-
var pcb_silkscreen_oval =
|
|
1132
|
-
type:
|
|
1139
|
+
import { z as z62 } from "zod";
|
|
1140
|
+
var pcb_silkscreen_oval = z62.object({
|
|
1141
|
+
type: z62.literal("pcb_silkscreen_oval"),
|
|
1133
1142
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1134
|
-
pcb_component_id:
|
|
1143
|
+
pcb_component_id: z62.string(),
|
|
1135
1144
|
center: point,
|
|
1136
1145
|
radius_x: distance,
|
|
1137
1146
|
radius_y: distance,
|
|
@@ -1140,133 +1149,133 @@ var pcb_silkscreen_oval = z61.object({
|
|
|
1140
1149
|
expectTypesMatch(true);
|
|
1141
1150
|
|
|
1142
1151
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1143
|
-
import { z as
|
|
1144
|
-
var pcb_fabrication_note_text =
|
|
1145
|
-
type:
|
|
1152
|
+
import { z as z63 } from "zod";
|
|
1153
|
+
var pcb_fabrication_note_text = z63.object({
|
|
1154
|
+
type: z63.literal("pcb_fabrication_note_text"),
|
|
1146
1155
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1147
1156
|
"pcb_fabrication_note_text"
|
|
1148
1157
|
),
|
|
1149
|
-
font:
|
|
1158
|
+
font: z63.literal("tscircuit2024").default("tscircuit2024"),
|
|
1150
1159
|
font_size: distance.default("1mm"),
|
|
1151
|
-
pcb_component_id:
|
|
1152
|
-
text:
|
|
1160
|
+
pcb_component_id: z63.string(),
|
|
1161
|
+
text: z63.string(),
|
|
1153
1162
|
layer: visible_layer,
|
|
1154
1163
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1155
|
-
anchor_alignment:
|
|
1156
|
-
color:
|
|
1164
|
+
anchor_alignment: z63.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1165
|
+
color: z63.string().optional()
|
|
1157
1166
|
}).describe(
|
|
1158
1167
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1159
1168
|
);
|
|
1160
1169
|
expectTypesMatch(true);
|
|
1161
1170
|
|
|
1162
1171
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1163
|
-
import { z as
|
|
1164
|
-
var pcb_fabrication_note_path =
|
|
1165
|
-
type:
|
|
1172
|
+
import { z as z64 } from "zod";
|
|
1173
|
+
var pcb_fabrication_note_path = z64.object({
|
|
1174
|
+
type: z64.literal("pcb_fabrication_note_path"),
|
|
1166
1175
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1167
1176
|
"pcb_fabrication_note_path"
|
|
1168
1177
|
),
|
|
1169
|
-
pcb_component_id:
|
|
1178
|
+
pcb_component_id: z64.string(),
|
|
1170
1179
|
layer: layer_ref,
|
|
1171
|
-
route:
|
|
1180
|
+
route: z64.array(point),
|
|
1172
1181
|
stroke_width: length,
|
|
1173
|
-
color:
|
|
1182
|
+
color: z64.string().optional()
|
|
1174
1183
|
}).describe(
|
|
1175
1184
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1176
1185
|
);
|
|
1177
1186
|
expectTypesMatch(true);
|
|
1178
1187
|
|
|
1179
1188
|
// src/pcb/pcb_keepout.ts
|
|
1180
|
-
import { z as
|
|
1181
|
-
var pcb_keepout =
|
|
1182
|
-
type:
|
|
1183
|
-
shape:
|
|
1189
|
+
import { z as z65 } from "zod";
|
|
1190
|
+
var pcb_keepout = z65.object({
|
|
1191
|
+
type: z65.literal("pcb_keepout"),
|
|
1192
|
+
shape: z65.literal("rect"),
|
|
1184
1193
|
center: point,
|
|
1185
1194
|
width: distance,
|
|
1186
1195
|
height: distance,
|
|
1187
|
-
pcb_keepout_id:
|
|
1188
|
-
layers:
|
|
1196
|
+
pcb_keepout_id: z65.string(),
|
|
1197
|
+
layers: z65.array(z65.string()),
|
|
1189
1198
|
// Specify layers where the keepout applies
|
|
1190
|
-
description:
|
|
1199
|
+
description: z65.string().optional()
|
|
1191
1200
|
// Optional description of the keepout
|
|
1192
1201
|
}).or(
|
|
1193
|
-
|
|
1194
|
-
type:
|
|
1195
|
-
shape:
|
|
1202
|
+
z65.object({
|
|
1203
|
+
type: z65.literal("pcb_keepout"),
|
|
1204
|
+
shape: z65.literal("circle"),
|
|
1196
1205
|
center: point,
|
|
1197
1206
|
radius: distance,
|
|
1198
|
-
pcb_keepout_id:
|
|
1199
|
-
layers:
|
|
1207
|
+
pcb_keepout_id: z65.string(),
|
|
1208
|
+
layers: z65.array(z65.string()),
|
|
1200
1209
|
// Specify layers where the keepout applies
|
|
1201
|
-
description:
|
|
1210
|
+
description: z65.string().optional()
|
|
1202
1211
|
// Optional description of the keepout
|
|
1203
1212
|
})
|
|
1204
1213
|
);
|
|
1205
1214
|
|
|
1206
1215
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1207
|
-
import { z as
|
|
1208
|
-
var pcb_missing_footprint_error =
|
|
1209
|
-
type:
|
|
1216
|
+
import { z as z66 } from "zod";
|
|
1217
|
+
var pcb_missing_footprint_error = z66.object({
|
|
1218
|
+
type: z66.literal("pcb_missing_footprint_error"),
|
|
1210
1219
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1211
1220
|
"pcb_missing_footprint_error"
|
|
1212
1221
|
),
|
|
1213
|
-
error_type:
|
|
1214
|
-
source_component_id:
|
|
1215
|
-
message:
|
|
1222
|
+
error_type: z66.literal("pcb_missing_footprint_error"),
|
|
1223
|
+
source_component_id: z66.string(),
|
|
1224
|
+
message: z66.string()
|
|
1216
1225
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1217
1226
|
expectTypesMatch(
|
|
1218
1227
|
true
|
|
1219
1228
|
);
|
|
1220
1229
|
|
|
1221
1230
|
// src/pcb/pcb_manual_edit_conflict_error.ts
|
|
1222
|
-
import { z as
|
|
1223
|
-
var pcb_manual_edit_conflict_error =
|
|
1224
|
-
type:
|
|
1231
|
+
import { z as z67 } from "zod";
|
|
1232
|
+
var pcb_manual_edit_conflict_error = z67.object({
|
|
1233
|
+
type: z67.literal("pcb_manual_edit_conflict_error"),
|
|
1225
1234
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_manual_edit_conflict_error"),
|
|
1226
|
-
message:
|
|
1227
|
-
pcb_component_id:
|
|
1228
|
-
source_component_id:
|
|
1235
|
+
message: z67.string(),
|
|
1236
|
+
pcb_component_id: z67.string(),
|
|
1237
|
+
source_component_id: z67.string()
|
|
1229
1238
|
}).describe(
|
|
1230
1239
|
"Error emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
1231
1240
|
);
|
|
1232
1241
|
expectTypesMatch(true);
|
|
1233
1242
|
|
|
1234
1243
|
// src/pcb/pcb_group.ts
|
|
1235
|
-
import { z as
|
|
1236
|
-
var pcb_group =
|
|
1237
|
-
type:
|
|
1244
|
+
import { z as z68 } from "zod";
|
|
1245
|
+
var pcb_group = z68.object({
|
|
1246
|
+
type: z68.literal("pcb_group"),
|
|
1238
1247
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
1239
1248
|
width: length,
|
|
1240
1249
|
height: length,
|
|
1241
1250
|
center: point,
|
|
1242
|
-
pcb_component_ids:
|
|
1243
|
-
name:
|
|
1244
|
-
description:
|
|
1251
|
+
pcb_component_ids: z68.array(z68.string()),
|
|
1252
|
+
name: z68.string().optional(),
|
|
1253
|
+
description: z68.string().optional()
|
|
1245
1254
|
}).describe("Defines a group of components on the PCB");
|
|
1246
1255
|
expectTypesMatch(true);
|
|
1247
1256
|
|
|
1248
1257
|
// src/cad/cad_component.ts
|
|
1249
|
-
import { z as
|
|
1250
|
-
var cad_component =
|
|
1251
|
-
type:
|
|
1252
|
-
cad_component_id:
|
|
1253
|
-
pcb_component_id:
|
|
1254
|
-
source_component_id:
|
|
1258
|
+
import { z as z69 } from "zod";
|
|
1259
|
+
var cad_component = z69.object({
|
|
1260
|
+
type: z69.literal("cad_component"),
|
|
1261
|
+
cad_component_id: z69.string(),
|
|
1262
|
+
pcb_component_id: z69.string(),
|
|
1263
|
+
source_component_id: z69.string(),
|
|
1255
1264
|
position: point3,
|
|
1256
1265
|
rotation: point3.optional(),
|
|
1257
1266
|
size: point3.optional(),
|
|
1258
1267
|
layer: layer_ref.optional(),
|
|
1259
1268
|
// These are all ways to generate/load the 3d model
|
|
1260
|
-
footprinter_string:
|
|
1261
|
-
model_obj_url:
|
|
1262
|
-
model_stl_url:
|
|
1263
|
-
model_3mf_url:
|
|
1264
|
-
model_jscad:
|
|
1269
|
+
footprinter_string: z69.string().optional(),
|
|
1270
|
+
model_obj_url: z69.string().optional(),
|
|
1271
|
+
model_stl_url: z69.string().optional(),
|
|
1272
|
+
model_3mf_url: z69.string().optional(),
|
|
1273
|
+
model_jscad: z69.any().optional()
|
|
1265
1274
|
}).describe("Defines a component on the PCB");
|
|
1266
1275
|
|
|
1267
1276
|
// src/any_circuit_element.ts
|
|
1268
|
-
import { z as
|
|
1269
|
-
var any_circuit_element =
|
|
1277
|
+
import { z as z70 } from "zod";
|
|
1278
|
+
var any_circuit_element = z70.union([
|
|
1270
1279
|
source_trace,
|
|
1271
1280
|
source_port,
|
|
1272
1281
|
any_source_component,
|
|
@@ -1283,6 +1292,7 @@ var any_circuit_element = z69.union([
|
|
|
1283
1292
|
source_simple_inductor,
|
|
1284
1293
|
source_simple_pin_header,
|
|
1285
1294
|
source_simple_resonator,
|
|
1295
|
+
source_simple_transistor,
|
|
1286
1296
|
source_simple_potentiometer,
|
|
1287
1297
|
source_simple_push_button,
|
|
1288
1298
|
pcb_component,
|
|
@@ -1420,6 +1430,7 @@ export {
|
|
|
1420
1430
|
source_simple_push_button,
|
|
1421
1431
|
source_simple_resistor,
|
|
1422
1432
|
source_simple_resonator,
|
|
1433
|
+
source_simple_transistor,
|
|
1423
1434
|
source_trace,
|
|
1424
1435
|
supplier_name,
|
|
1425
1436
|
time,
|