circuit-json 0.0.345 → 0.0.346
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/dist/index.d.mts +4 -1
- package/dist/index.mjs +1367 -1346
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -320,12 +320,32 @@ var ninePointAnchor = z6.enum([
|
|
|
320
320
|
]);
|
|
321
321
|
expectTypesMatch(true);
|
|
322
322
|
|
|
323
|
+
// src/common/PcbRenderLayer.ts
|
|
324
|
+
import { z as z7 } from "zod";
|
|
325
|
+
var pcbRenderLayer = z7.enum([
|
|
326
|
+
"top_silkscreen",
|
|
327
|
+
"bottom_silkscreen",
|
|
328
|
+
"top_copper",
|
|
329
|
+
"bottom_copper",
|
|
330
|
+
"top_soldermask",
|
|
331
|
+
"bottom_soldermask",
|
|
332
|
+
"top_fabrication_note",
|
|
333
|
+
"bottom_fabrication_note",
|
|
334
|
+
"inner1_copper",
|
|
335
|
+
"inner2_copper",
|
|
336
|
+
"inner3_copper",
|
|
337
|
+
"inner4_copper",
|
|
338
|
+
"inner5_copper",
|
|
339
|
+
"inner6_copper"
|
|
340
|
+
]);
|
|
341
|
+
expectTypesMatch(true);
|
|
342
|
+
|
|
323
343
|
// src/source/source_simple_capacitor.ts
|
|
324
|
-
import { z as
|
|
344
|
+
import { z as z10 } from "zod";
|
|
325
345
|
|
|
326
346
|
// src/pcb/properties/supplier_name.ts
|
|
327
|
-
import { z as
|
|
328
|
-
var supplier_name =
|
|
347
|
+
import { z as z8 } from "zod";
|
|
348
|
+
var supplier_name = z8.enum([
|
|
329
349
|
"jlcpcb",
|
|
330
350
|
"macrofab",
|
|
331
351
|
"pcbway",
|
|
@@ -336,126 +356,126 @@ var supplier_name = z7.enum([
|
|
|
336
356
|
expectTypesMatch(true);
|
|
337
357
|
|
|
338
358
|
// src/source/base/source_component_base.ts
|
|
339
|
-
import { z as
|
|
340
|
-
var source_component_base =
|
|
341
|
-
type:
|
|
342
|
-
ftype:
|
|
343
|
-
source_component_id:
|
|
344
|
-
name:
|
|
345
|
-
manufacturer_part_number:
|
|
346
|
-
supplier_part_numbers:
|
|
347
|
-
display_value:
|
|
348
|
-
are_pins_interchangeable:
|
|
349
|
-
internally_connected_source_port_ids:
|
|
350
|
-
source_group_id:
|
|
351
|
-
subcircuit_id:
|
|
359
|
+
import { z as z9 } from "zod";
|
|
360
|
+
var source_component_base = z9.object({
|
|
361
|
+
type: z9.literal("source_component"),
|
|
362
|
+
ftype: z9.string().optional(),
|
|
363
|
+
source_component_id: z9.string(),
|
|
364
|
+
name: z9.string(),
|
|
365
|
+
manufacturer_part_number: z9.string().optional(),
|
|
366
|
+
supplier_part_numbers: z9.record(supplier_name, z9.array(z9.string())).optional(),
|
|
367
|
+
display_value: z9.string().optional(),
|
|
368
|
+
are_pins_interchangeable: z9.boolean().optional(),
|
|
369
|
+
internally_connected_source_port_ids: z9.array(z9.array(z9.string())).optional(),
|
|
370
|
+
source_group_id: z9.string().optional(),
|
|
371
|
+
subcircuit_id: z9.string().optional()
|
|
352
372
|
});
|
|
353
373
|
expectTypesMatch(true);
|
|
354
374
|
|
|
355
375
|
// src/source/source_simple_capacitor.ts
|
|
356
376
|
var source_simple_capacitor = source_component_base.extend({
|
|
357
|
-
ftype:
|
|
377
|
+
ftype: z10.literal("simple_capacitor"),
|
|
358
378
|
capacitance,
|
|
359
379
|
max_voltage_rating: voltage.optional(),
|
|
360
|
-
display_capacitance:
|
|
380
|
+
display_capacitance: z10.string().optional(),
|
|
361
381
|
max_decoupling_trace_length: distance.optional()
|
|
362
382
|
});
|
|
363
383
|
expectTypesMatch(true);
|
|
364
384
|
|
|
365
385
|
// src/source/source_simple_resistor.ts
|
|
366
|
-
import { z as
|
|
386
|
+
import { z as z11 } from "zod";
|
|
367
387
|
var source_simple_resistor = source_component_base.extend({
|
|
368
|
-
ftype:
|
|
388
|
+
ftype: z11.literal("simple_resistor"),
|
|
369
389
|
resistance,
|
|
370
|
-
display_resistance:
|
|
390
|
+
display_resistance: z11.string().optional()
|
|
371
391
|
});
|
|
372
392
|
expectTypesMatch(true);
|
|
373
393
|
|
|
374
394
|
// src/source/source_simple_diode.ts
|
|
375
|
-
import { z as
|
|
395
|
+
import { z as z12 } from "zod";
|
|
376
396
|
var source_simple_diode = source_component_base.extend({
|
|
377
|
-
ftype:
|
|
397
|
+
ftype: z12.literal("simple_diode")
|
|
378
398
|
});
|
|
379
399
|
expectTypesMatch(true);
|
|
380
400
|
|
|
381
401
|
// src/source/source_simple_fiducial.ts
|
|
382
|
-
import { z as
|
|
402
|
+
import { z as z13 } from "zod";
|
|
383
403
|
var source_simple_fiducial = source_component_base.extend({
|
|
384
|
-
ftype:
|
|
404
|
+
ftype: z13.literal("simple_fiducial")
|
|
385
405
|
});
|
|
386
406
|
expectTypesMatch(true);
|
|
387
407
|
|
|
388
408
|
// src/source/source_simple_led.ts
|
|
389
|
-
import { z as
|
|
409
|
+
import { z as z14 } from "zod";
|
|
390
410
|
var source_simple_led = source_simple_diode.extend({
|
|
391
|
-
ftype:
|
|
392
|
-
color:
|
|
393
|
-
wavelength:
|
|
411
|
+
ftype: z14.literal("simple_led"),
|
|
412
|
+
color: z14.string().optional(),
|
|
413
|
+
wavelength: z14.string().optional()
|
|
394
414
|
});
|
|
395
415
|
expectTypesMatch(true);
|
|
396
416
|
|
|
397
417
|
// src/source/source_simple_ground.ts
|
|
398
|
-
import { z as
|
|
418
|
+
import { z as z15 } from "zod";
|
|
399
419
|
var source_simple_ground = source_component_base.extend({
|
|
400
|
-
ftype:
|
|
420
|
+
ftype: z15.literal("simple_ground")
|
|
401
421
|
});
|
|
402
422
|
expectTypesMatch(true);
|
|
403
423
|
|
|
404
424
|
// src/source/source_simple_chip.ts
|
|
405
|
-
import { z as
|
|
425
|
+
import { z as z16 } from "zod";
|
|
406
426
|
var source_simple_chip = source_component_base.extend({
|
|
407
|
-
ftype:
|
|
427
|
+
ftype: z16.literal("simple_chip")
|
|
408
428
|
});
|
|
409
429
|
expectTypesMatch(true);
|
|
410
430
|
|
|
411
431
|
// src/source/source_simple_power_source.ts
|
|
412
|
-
import { z as
|
|
432
|
+
import { z as z17 } from "zod";
|
|
413
433
|
var source_simple_power_source = source_component_base.extend({
|
|
414
|
-
ftype:
|
|
434
|
+
ftype: z17.literal("simple_power_source"),
|
|
415
435
|
voltage
|
|
416
436
|
});
|
|
417
437
|
expectTypesMatch(true);
|
|
418
438
|
|
|
419
439
|
// src/source/any_source_component.ts
|
|
420
|
-
import { z as
|
|
440
|
+
import { z as z39 } from "zod";
|
|
421
441
|
|
|
422
442
|
// src/source/source_simple_fuse.ts
|
|
423
|
-
import { z as
|
|
443
|
+
import { z as z18 } from "zod";
|
|
424
444
|
var source_simple_fuse = source_component_base.extend({
|
|
425
|
-
ftype:
|
|
426
|
-
current_rating_amps:
|
|
427
|
-
voltage_rating_volts:
|
|
445
|
+
ftype: z18.literal("simple_fuse"),
|
|
446
|
+
current_rating_amps: z18.number().describe("Nominal current in amps the fuse is rated for"),
|
|
447
|
+
voltage_rating_volts: z18.number().describe("Voltage rating in volts, e.g. \xB15V would be 5")
|
|
428
448
|
});
|
|
429
449
|
expectTypesMatch(true);
|
|
430
450
|
|
|
431
451
|
// src/source/source_simple_battery.ts
|
|
432
|
-
import { z as
|
|
452
|
+
import { z as z19 } from "zod";
|
|
433
453
|
var source_simple_battery = source_component_base.extend({
|
|
434
|
-
ftype:
|
|
454
|
+
ftype: z19.literal("simple_battery"),
|
|
435
455
|
capacity: battery_capacity
|
|
436
456
|
});
|
|
437
457
|
expectTypesMatch(true);
|
|
438
458
|
|
|
439
459
|
// src/source/source_simple_inductor.ts
|
|
440
|
-
import { z as
|
|
460
|
+
import { z as z20 } from "zod";
|
|
441
461
|
var source_simple_inductor = source_component_base.extend({
|
|
442
|
-
ftype:
|
|
462
|
+
ftype: z20.literal("simple_inductor"),
|
|
443
463
|
inductance,
|
|
444
|
-
max_current_rating:
|
|
464
|
+
max_current_rating: z20.number().optional()
|
|
445
465
|
});
|
|
446
466
|
expectTypesMatch(true);
|
|
447
467
|
|
|
448
468
|
// src/source/source_simple_push_button.ts
|
|
449
|
-
import { z as
|
|
469
|
+
import { z as z21 } from "zod";
|
|
450
470
|
var source_simple_push_button = source_component_base.extend({
|
|
451
|
-
ftype:
|
|
471
|
+
ftype: z21.literal("simple_push_button")
|
|
452
472
|
});
|
|
453
473
|
expectTypesMatch(true);
|
|
454
474
|
|
|
455
475
|
// src/source/source_simple_potentiometer.ts
|
|
456
|
-
import { z as
|
|
476
|
+
import { z as z22 } from "zod";
|
|
457
477
|
var source_simple_potentiometer = source_component_base.extend({
|
|
458
|
-
ftype:
|
|
478
|
+
ftype: z22.literal("simple_potentiometer"),
|
|
459
479
|
max_resistance: resistance
|
|
460
480
|
});
|
|
461
481
|
expectTypesMatch(
|
|
@@ -463,34 +483,34 @@ expectTypesMatch(
|
|
|
463
483
|
);
|
|
464
484
|
|
|
465
485
|
// src/source/source_simple_crystal.ts
|
|
466
|
-
import { z as
|
|
486
|
+
import { z as z23 } from "zod";
|
|
467
487
|
var source_simple_crystal = source_component_base.extend({
|
|
468
|
-
ftype:
|
|
469
|
-
frequency:
|
|
470
|
-
load_capacitance:
|
|
488
|
+
ftype: z23.literal("simple_crystal"),
|
|
489
|
+
frequency: z23.number().describe("Frequency in Hz"),
|
|
490
|
+
load_capacitance: z23.number().optional().describe("Load capacitance in pF")
|
|
471
491
|
});
|
|
472
492
|
expectTypesMatch(true);
|
|
473
493
|
|
|
474
494
|
// src/source/source_simple_pin_header.ts
|
|
475
|
-
import { z as
|
|
495
|
+
import { z as z24 } from "zod";
|
|
476
496
|
var source_simple_pin_header = source_component_base.extend({
|
|
477
|
-
ftype:
|
|
478
|
-
pin_count:
|
|
479
|
-
gender:
|
|
497
|
+
ftype: z24.literal("simple_pin_header"),
|
|
498
|
+
pin_count: z24.number(),
|
|
499
|
+
gender: z24.enum(["male", "female"]).optional().default("male")
|
|
480
500
|
});
|
|
481
501
|
expectTypesMatch(true);
|
|
482
502
|
|
|
483
503
|
// src/source/source_simple_pinout.ts
|
|
484
|
-
import { z as
|
|
504
|
+
import { z as z25 } from "zod";
|
|
485
505
|
var source_simple_pinout = source_component_base.extend({
|
|
486
|
-
ftype:
|
|
506
|
+
ftype: z25.literal("simple_pinout")
|
|
487
507
|
});
|
|
488
508
|
expectTypesMatch(true);
|
|
489
509
|
|
|
490
510
|
// src/source/source_simple_resonator.ts
|
|
491
|
-
import { z as
|
|
511
|
+
import { z as z26 } from "zod";
|
|
492
512
|
var source_simple_resonator = source_component_base.extend({
|
|
493
|
-
ftype:
|
|
513
|
+
ftype: z26.literal("simple_resonator"),
|
|
494
514
|
load_capacitance: capacitance,
|
|
495
515
|
equivalent_series_resistance: resistance.optional(),
|
|
496
516
|
frequency
|
|
@@ -498,158 +518,158 @@ var source_simple_resonator = source_component_base.extend({
|
|
|
498
518
|
expectTypesMatch(true);
|
|
499
519
|
|
|
500
520
|
// src/source/source_simple_transistor.ts
|
|
501
|
-
import { z as
|
|
521
|
+
import { z as z27 } from "zod";
|
|
502
522
|
var source_simple_transistor = source_component_base.extend({
|
|
503
|
-
ftype:
|
|
504
|
-
transistor_type:
|
|
523
|
+
ftype: z27.literal("simple_transistor"),
|
|
524
|
+
transistor_type: z27.enum(["npn", "pnp"])
|
|
505
525
|
});
|
|
506
526
|
expectTypesMatch(true);
|
|
507
527
|
|
|
508
528
|
// src/source/source_simple_test_point.ts
|
|
509
|
-
import { z as
|
|
529
|
+
import { z as z28 } from "zod";
|
|
510
530
|
var source_simple_test_point = source_component_base.extend({
|
|
511
|
-
ftype:
|
|
512
|
-
footprint_variant:
|
|
513
|
-
pad_shape:
|
|
514
|
-
pad_diameter:
|
|
515
|
-
hole_diameter:
|
|
516
|
-
width:
|
|
517
|
-
height:
|
|
531
|
+
ftype: z28.literal("simple_test_point"),
|
|
532
|
+
footprint_variant: z28.enum(["pad", "through_hole"]).optional(),
|
|
533
|
+
pad_shape: z28.enum(["rect", "circle"]).optional(),
|
|
534
|
+
pad_diameter: z28.union([z28.number(), z28.string()]).optional(),
|
|
535
|
+
hole_diameter: z28.union([z28.number(), z28.string()]).optional(),
|
|
536
|
+
width: z28.union([z28.number(), z28.string()]).optional(),
|
|
537
|
+
height: z28.union([z28.number(), z28.string()]).optional()
|
|
518
538
|
});
|
|
519
539
|
expectTypesMatch(true);
|
|
520
540
|
|
|
521
541
|
// src/source/source_simple_mosfet.ts
|
|
522
|
-
import { z as
|
|
542
|
+
import { z as z29 } from "zod";
|
|
523
543
|
var source_simple_mosfet = source_component_base.extend({
|
|
524
|
-
ftype:
|
|
525
|
-
channel_type:
|
|
526
|
-
mosfet_mode:
|
|
544
|
+
ftype: z29.literal("simple_mosfet"),
|
|
545
|
+
channel_type: z29.enum(["n", "p"]),
|
|
546
|
+
mosfet_mode: z29.enum(["enhancement", "depletion"])
|
|
527
547
|
});
|
|
528
548
|
expectTypesMatch(true);
|
|
529
549
|
|
|
530
550
|
// src/source/source_simple_switch.ts
|
|
531
|
-
import { z as
|
|
551
|
+
import { z as z30 } from "zod";
|
|
532
552
|
var source_simple_switch = source_component_base.extend({
|
|
533
|
-
ftype:
|
|
553
|
+
ftype: z30.literal("simple_switch")
|
|
534
554
|
});
|
|
535
555
|
expectTypesMatch(true);
|
|
536
556
|
|
|
537
557
|
// src/source/source_project_metadata.ts
|
|
538
|
-
import { z as
|
|
539
|
-
var source_project_metadata =
|
|
540
|
-
type:
|
|
541
|
-
name:
|
|
542
|
-
software_used_string:
|
|
543
|
-
project_url:
|
|
558
|
+
import { z as z31 } from "zod";
|
|
559
|
+
var source_project_metadata = z31.object({
|
|
560
|
+
type: z31.literal("source_project_metadata"),
|
|
561
|
+
name: z31.string().optional(),
|
|
562
|
+
software_used_string: z31.string().optional(),
|
|
563
|
+
project_url: z31.string().optional(),
|
|
544
564
|
created_at: timestamp.optional()
|
|
545
565
|
});
|
|
546
566
|
expectTypesMatch(true);
|
|
547
567
|
|
|
548
568
|
// src/source/source_missing_property_error.ts
|
|
549
|
-
import { z as
|
|
550
|
-
var source_missing_property_error =
|
|
551
|
-
type:
|
|
569
|
+
import { z as z32 } from "zod";
|
|
570
|
+
var source_missing_property_error = z32.object({
|
|
571
|
+
type: z32.literal("source_missing_property_error"),
|
|
552
572
|
source_missing_property_error_id: getZodPrefixedIdWithDefault(
|
|
553
573
|
"source_missing_property_error"
|
|
554
574
|
),
|
|
555
|
-
source_component_id:
|
|
556
|
-
property_name:
|
|
557
|
-
subcircuit_id:
|
|
558
|
-
error_type:
|
|
559
|
-
message:
|
|
575
|
+
source_component_id: z32.string(),
|
|
576
|
+
property_name: z32.string(),
|
|
577
|
+
subcircuit_id: z32.string().optional(),
|
|
578
|
+
error_type: z32.literal("source_missing_property_error").default("source_missing_property_error"),
|
|
579
|
+
message: z32.string()
|
|
560
580
|
}).describe("The source code is missing a property");
|
|
561
581
|
expectTypesMatch(true);
|
|
562
582
|
|
|
563
583
|
// src/source/source_failed_to_create_component_error.ts
|
|
564
|
-
import { z as
|
|
565
|
-
var source_failed_to_create_component_error =
|
|
566
|
-
type:
|
|
584
|
+
import { z as z33 } from "zod";
|
|
585
|
+
var source_failed_to_create_component_error = z33.object({
|
|
586
|
+
type: z33.literal("source_failed_to_create_component_error"),
|
|
567
587
|
source_failed_to_create_component_error_id: getZodPrefixedIdWithDefault(
|
|
568
588
|
"source_failed_to_create_component_error"
|
|
569
589
|
),
|
|
570
|
-
error_type:
|
|
571
|
-
component_name:
|
|
572
|
-
subcircuit_id:
|
|
573
|
-
parent_source_component_id:
|
|
574
|
-
message:
|
|
575
|
-
pcb_center:
|
|
576
|
-
x:
|
|
577
|
-
y:
|
|
590
|
+
error_type: z33.literal("source_failed_to_create_component_error").default("source_failed_to_create_component_error"),
|
|
591
|
+
component_name: z33.string().optional(),
|
|
592
|
+
subcircuit_id: z33.string().optional(),
|
|
593
|
+
parent_source_component_id: z33.string().optional(),
|
|
594
|
+
message: z33.string(),
|
|
595
|
+
pcb_center: z33.object({
|
|
596
|
+
x: z33.number().optional(),
|
|
597
|
+
y: z33.number().optional()
|
|
578
598
|
}).optional(),
|
|
579
|
-
schematic_center:
|
|
580
|
-
x:
|
|
581
|
-
y:
|
|
599
|
+
schematic_center: z33.object({
|
|
600
|
+
x: z33.number().optional(),
|
|
601
|
+
y: z33.number().optional()
|
|
582
602
|
}).optional()
|
|
583
603
|
}).describe("Error emitted when a component fails to be constructed");
|
|
584
604
|
expectTypesMatch(true);
|
|
585
605
|
|
|
586
606
|
// src/source/source_trace_not_connected_error.ts
|
|
587
|
-
import { z as
|
|
588
|
-
var source_trace_not_connected_error =
|
|
589
|
-
type:
|
|
607
|
+
import { z as z34 } from "zod";
|
|
608
|
+
var source_trace_not_connected_error = z34.object({
|
|
609
|
+
type: z34.literal("source_trace_not_connected_error"),
|
|
590
610
|
source_trace_not_connected_error_id: getZodPrefixedIdWithDefault(
|
|
591
611
|
"source_trace_not_connected_error"
|
|
592
612
|
),
|
|
593
|
-
error_type:
|
|
594
|
-
message:
|
|
595
|
-
subcircuit_id:
|
|
596
|
-
source_group_id:
|
|
597
|
-
source_trace_id:
|
|
598
|
-
connected_source_port_ids:
|
|
599
|
-
selectors_not_found:
|
|
613
|
+
error_type: z34.literal("source_trace_not_connected_error").default("source_trace_not_connected_error"),
|
|
614
|
+
message: z34.string(),
|
|
615
|
+
subcircuit_id: z34.string().optional(),
|
|
616
|
+
source_group_id: z34.string().optional(),
|
|
617
|
+
source_trace_id: z34.string().optional(),
|
|
618
|
+
connected_source_port_ids: z34.array(z34.string()).optional(),
|
|
619
|
+
selectors_not_found: z34.array(z34.string()).optional()
|
|
600
620
|
}).describe("Occurs when a source trace selector does not match any ports");
|
|
601
621
|
expectTypesMatch(true);
|
|
602
622
|
|
|
603
623
|
// src/source/source_property_ignored_warning.ts
|
|
604
|
-
import { z as
|
|
605
|
-
var source_property_ignored_warning =
|
|
606
|
-
type:
|
|
624
|
+
import { z as z35 } from "zod";
|
|
625
|
+
var source_property_ignored_warning = z35.object({
|
|
626
|
+
type: z35.literal("source_property_ignored_warning"),
|
|
607
627
|
source_property_ignored_warning_id: getZodPrefixedIdWithDefault(
|
|
608
628
|
"source_property_ignored_warning"
|
|
609
629
|
),
|
|
610
|
-
source_component_id:
|
|
611
|
-
property_name:
|
|
612
|
-
subcircuit_id:
|
|
613
|
-
error_type:
|
|
614
|
-
message:
|
|
630
|
+
source_component_id: z35.string(),
|
|
631
|
+
property_name: z35.string(),
|
|
632
|
+
subcircuit_id: z35.string().optional(),
|
|
633
|
+
error_type: z35.literal("source_property_ignored_warning").default("source_property_ignored_warning"),
|
|
634
|
+
message: z35.string()
|
|
615
635
|
}).describe("The source property was ignored");
|
|
616
636
|
expectTypesMatch(true);
|
|
617
637
|
|
|
618
638
|
// src/source/source_pin_missing_trace_warning.ts
|
|
619
|
-
import { z as
|
|
620
|
-
var source_pin_missing_trace_warning =
|
|
621
|
-
type:
|
|
639
|
+
import { z as z36 } from "zod";
|
|
640
|
+
var source_pin_missing_trace_warning = z36.object({
|
|
641
|
+
type: z36.literal("source_pin_missing_trace_warning"),
|
|
622
642
|
source_pin_missing_trace_warning_id: getZodPrefixedIdWithDefault(
|
|
623
643
|
"source_pin_missing_trace_warning"
|
|
624
644
|
),
|
|
625
|
-
warning_type:
|
|
626
|
-
message:
|
|
627
|
-
source_component_id:
|
|
628
|
-
source_port_id:
|
|
629
|
-
subcircuit_id:
|
|
645
|
+
warning_type: z36.literal("source_pin_missing_trace_warning").default("source_pin_missing_trace_warning"),
|
|
646
|
+
message: z36.string(),
|
|
647
|
+
source_component_id: z36.string(),
|
|
648
|
+
source_port_id: z36.string(),
|
|
649
|
+
subcircuit_id: z36.string().optional()
|
|
630
650
|
}).describe(
|
|
631
651
|
"Warning emitted when a source component pin is missing a trace connection"
|
|
632
652
|
);
|
|
633
653
|
expectTypesMatch(true);
|
|
634
654
|
|
|
635
655
|
// src/source/source_simple_voltage_probe.ts
|
|
636
|
-
import { z as
|
|
656
|
+
import { z as z37 } from "zod";
|
|
637
657
|
var source_simple_voltage_probe = source_component_base.extend({
|
|
638
|
-
ftype:
|
|
658
|
+
ftype: z37.literal("simple_voltage_probe")
|
|
639
659
|
});
|
|
640
660
|
expectTypesMatch(
|
|
641
661
|
true
|
|
642
662
|
);
|
|
643
663
|
|
|
644
664
|
// src/source/source_interconnect.ts
|
|
645
|
-
import { z as
|
|
665
|
+
import { z as z38 } from "zod";
|
|
646
666
|
var source_interconnect = source_component_base.extend({
|
|
647
|
-
ftype:
|
|
667
|
+
ftype: z38.literal("interconnect")
|
|
648
668
|
});
|
|
649
669
|
expectTypesMatch(true);
|
|
650
670
|
|
|
651
671
|
// src/source/any_source_component.ts
|
|
652
|
-
var any_source_component =
|
|
672
|
+
var any_source_component = z39.union([
|
|
653
673
|
source_simple_resistor,
|
|
654
674
|
source_simple_capacitor,
|
|
655
675
|
source_simple_diode,
|
|
@@ -683,106 +703,106 @@ var any_source_component = z38.union([
|
|
|
683
703
|
expectTypesMatch(true);
|
|
684
704
|
|
|
685
705
|
// src/source/source_port.ts
|
|
686
|
-
import { z as
|
|
687
|
-
var source_port =
|
|
688
|
-
type:
|
|
689
|
-
pin_number:
|
|
690
|
-
port_hints:
|
|
691
|
-
name:
|
|
692
|
-
source_port_id:
|
|
693
|
-
source_component_id:
|
|
694
|
-
source_group_id:
|
|
695
|
-
subcircuit_id:
|
|
696
|
-
subcircuit_connectivity_map_key:
|
|
697
|
-
must_be_connected:
|
|
706
|
+
import { z as z40 } from "zod";
|
|
707
|
+
var source_port = z40.object({
|
|
708
|
+
type: z40.literal("source_port"),
|
|
709
|
+
pin_number: z40.number().optional(),
|
|
710
|
+
port_hints: z40.array(z40.string()).optional(),
|
|
711
|
+
name: z40.string(),
|
|
712
|
+
source_port_id: z40.string(),
|
|
713
|
+
source_component_id: z40.string().optional(),
|
|
714
|
+
source_group_id: z40.string().optional(),
|
|
715
|
+
subcircuit_id: z40.string().optional(),
|
|
716
|
+
subcircuit_connectivity_map_key: z40.string().optional(),
|
|
717
|
+
must_be_connected: z40.boolean().optional()
|
|
698
718
|
});
|
|
699
719
|
expectTypesMatch(true);
|
|
700
720
|
|
|
701
721
|
// src/source/source_component_internal_connection.ts
|
|
702
|
-
import { z as
|
|
703
|
-
var source_component_internal_connection =
|
|
704
|
-
type:
|
|
705
|
-
source_component_internal_connection_id:
|
|
706
|
-
source_component_id:
|
|
707
|
-
source_port_ids:
|
|
708
|
-
subcircuit_id:
|
|
722
|
+
import { z as z41 } from "zod";
|
|
723
|
+
var source_component_internal_connection = z41.object({
|
|
724
|
+
type: z41.literal("source_component_internal_connection"),
|
|
725
|
+
source_component_internal_connection_id: z41.string(),
|
|
726
|
+
source_component_id: z41.string(),
|
|
727
|
+
source_port_ids: z41.array(z41.string()),
|
|
728
|
+
subcircuit_id: z41.string().optional()
|
|
709
729
|
});
|
|
710
730
|
expectTypesMatch(true);
|
|
711
731
|
|
|
712
732
|
// src/source/source_trace.ts
|
|
713
|
-
import { z as
|
|
714
|
-
var source_trace =
|
|
715
|
-
type:
|
|
716
|
-
source_trace_id:
|
|
717
|
-
connected_source_port_ids:
|
|
718
|
-
connected_source_net_ids:
|
|
719
|
-
subcircuit_id:
|
|
720
|
-
subcircuit_connectivity_map_key:
|
|
721
|
-
max_length:
|
|
722
|
-
min_trace_thickness:
|
|
723
|
-
display_name:
|
|
733
|
+
import { z as z42 } from "zod";
|
|
734
|
+
var source_trace = z42.object({
|
|
735
|
+
type: z42.literal("source_trace"),
|
|
736
|
+
source_trace_id: z42.string(),
|
|
737
|
+
connected_source_port_ids: z42.array(z42.string()),
|
|
738
|
+
connected_source_net_ids: z42.array(z42.string()),
|
|
739
|
+
subcircuit_id: z42.string().optional(),
|
|
740
|
+
subcircuit_connectivity_map_key: z42.string().optional(),
|
|
741
|
+
max_length: z42.number().optional(),
|
|
742
|
+
min_trace_thickness: z42.number().optional(),
|
|
743
|
+
display_name: z42.string().optional()
|
|
724
744
|
});
|
|
725
745
|
expectTypesMatch(true);
|
|
726
746
|
|
|
727
747
|
// src/source/source_group.ts
|
|
728
|
-
import { z as
|
|
729
|
-
var source_group =
|
|
730
|
-
type:
|
|
731
|
-
source_group_id:
|
|
732
|
-
subcircuit_id:
|
|
733
|
-
parent_subcircuit_id:
|
|
734
|
-
parent_source_group_id:
|
|
735
|
-
is_subcircuit:
|
|
736
|
-
show_as_schematic_box:
|
|
737
|
-
name:
|
|
738
|
-
was_automatically_named:
|
|
748
|
+
import { z as z43 } from "zod";
|
|
749
|
+
var source_group = z43.object({
|
|
750
|
+
type: z43.literal("source_group"),
|
|
751
|
+
source_group_id: z43.string(),
|
|
752
|
+
subcircuit_id: z43.string().optional(),
|
|
753
|
+
parent_subcircuit_id: z43.string().optional(),
|
|
754
|
+
parent_source_group_id: z43.string().optional(),
|
|
755
|
+
is_subcircuit: z43.boolean().optional(),
|
|
756
|
+
show_as_schematic_box: z43.boolean().optional(),
|
|
757
|
+
name: z43.string().optional(),
|
|
758
|
+
was_automatically_named: z43.boolean().optional()
|
|
739
759
|
});
|
|
740
760
|
expectTypesMatch(true);
|
|
741
761
|
|
|
742
762
|
// src/source/source_net.ts
|
|
743
|
-
import { z as
|
|
744
|
-
var source_net =
|
|
745
|
-
type:
|
|
746
|
-
source_net_id:
|
|
747
|
-
name:
|
|
748
|
-
member_source_group_ids:
|
|
749
|
-
is_power:
|
|
750
|
-
is_ground:
|
|
751
|
-
is_digital_signal:
|
|
752
|
-
is_analog_signal:
|
|
753
|
-
is_positive_voltage_source:
|
|
754
|
-
trace_width:
|
|
755
|
-
subcircuit_id:
|
|
756
|
-
subcircuit_connectivity_map_key:
|
|
763
|
+
import { z as z44 } from "zod";
|
|
764
|
+
var source_net = z44.object({
|
|
765
|
+
type: z44.literal("source_net"),
|
|
766
|
+
source_net_id: z44.string(),
|
|
767
|
+
name: z44.string(),
|
|
768
|
+
member_source_group_ids: z44.array(z44.string()),
|
|
769
|
+
is_power: z44.boolean().optional(),
|
|
770
|
+
is_ground: z44.boolean().optional(),
|
|
771
|
+
is_digital_signal: z44.boolean().optional(),
|
|
772
|
+
is_analog_signal: z44.boolean().optional(),
|
|
773
|
+
is_positive_voltage_source: z44.boolean().optional(),
|
|
774
|
+
trace_width: z44.number().optional(),
|
|
775
|
+
subcircuit_id: z44.string().optional(),
|
|
776
|
+
subcircuit_connectivity_map_key: z44.string().optional()
|
|
757
777
|
});
|
|
758
778
|
expectTypesMatch(true);
|
|
759
779
|
|
|
760
780
|
// src/source/source_board.ts
|
|
761
|
-
import { z as
|
|
762
|
-
var source_board =
|
|
763
|
-
type:
|
|
764
|
-
source_board_id:
|
|
765
|
-
source_group_id:
|
|
766
|
-
title:
|
|
781
|
+
import { z as z45 } from "zod";
|
|
782
|
+
var source_board = z45.object({
|
|
783
|
+
type: z45.literal("source_board"),
|
|
784
|
+
source_board_id: z45.string(),
|
|
785
|
+
source_group_id: z45.string(),
|
|
786
|
+
title: z45.string().optional()
|
|
767
787
|
}).describe("Defines a board in the source domain");
|
|
768
788
|
expectTypesMatch(true);
|
|
769
789
|
|
|
770
790
|
// src/source/source_pcb_ground_plane.ts
|
|
771
|
-
import { z as
|
|
772
|
-
var source_pcb_ground_plane =
|
|
773
|
-
type:
|
|
774
|
-
source_pcb_ground_plane_id:
|
|
775
|
-
source_group_id:
|
|
776
|
-
source_net_id:
|
|
777
|
-
subcircuit_id:
|
|
791
|
+
import { z as z46 } from "zod";
|
|
792
|
+
var source_pcb_ground_plane = z46.object({
|
|
793
|
+
type: z46.literal("source_pcb_ground_plane"),
|
|
794
|
+
source_pcb_ground_plane_id: z46.string(),
|
|
795
|
+
source_group_id: z46.string(),
|
|
796
|
+
source_net_id: z46.string(),
|
|
797
|
+
subcircuit_id: z46.string().optional()
|
|
778
798
|
}).describe("Defines a ground plane in the source domain");
|
|
779
799
|
expectTypesMatch(true);
|
|
780
800
|
|
|
781
801
|
// src/source/source_manually_placed_via.ts
|
|
782
|
-
import { z as
|
|
802
|
+
import { z as z48 } from "zod";
|
|
783
803
|
|
|
784
804
|
// src/pcb/properties/layer_ref.ts
|
|
785
|
-
import { z as
|
|
805
|
+
import { z as z47 } from "zod";
|
|
786
806
|
var all_layers = [
|
|
787
807
|
"top",
|
|
788
808
|
"bottom",
|
|
@@ -793,9 +813,9 @@ var all_layers = [
|
|
|
793
813
|
"inner5",
|
|
794
814
|
"inner6"
|
|
795
815
|
];
|
|
796
|
-
var layer_string =
|
|
816
|
+
var layer_string = z47.enum(all_layers);
|
|
797
817
|
var layer_ref = layer_string.or(
|
|
798
|
-
|
|
818
|
+
z47.object({
|
|
799
819
|
name: layer_string
|
|
800
820
|
})
|
|
801
821
|
).transform((layer) => {
|
|
@@ -805,253 +825,253 @@ var layer_ref = layer_string.or(
|
|
|
805
825
|
return layer.name;
|
|
806
826
|
});
|
|
807
827
|
expectTypesMatch(true);
|
|
808
|
-
var visible_layer =
|
|
828
|
+
var visible_layer = z47.enum(["top", "bottom"]);
|
|
809
829
|
|
|
810
830
|
// src/source/source_manually_placed_via.ts
|
|
811
|
-
var source_manually_placed_via =
|
|
812
|
-
type:
|
|
813
|
-
source_manually_placed_via_id:
|
|
814
|
-
source_group_id:
|
|
815
|
-
source_net_id:
|
|
816
|
-
subcircuit_id:
|
|
817
|
-
source_trace_id:
|
|
831
|
+
var source_manually_placed_via = z48.object({
|
|
832
|
+
type: z48.literal("source_manually_placed_via"),
|
|
833
|
+
source_manually_placed_via_id: z48.string(),
|
|
834
|
+
source_group_id: z48.string(),
|
|
835
|
+
source_net_id: z48.string(),
|
|
836
|
+
subcircuit_id: z48.string().optional(),
|
|
837
|
+
source_trace_id: z48.string().optional()
|
|
818
838
|
}).describe("Defines a via that is manually placed in the source domain");
|
|
819
839
|
expectTypesMatch(true);
|
|
820
840
|
|
|
821
841
|
// src/source/source_pin_must_be_connected_error.ts
|
|
822
|
-
import { z as
|
|
823
|
-
var source_pin_must_be_connected_error =
|
|
824
|
-
type:
|
|
842
|
+
import { z as z49 } from "zod";
|
|
843
|
+
var source_pin_must_be_connected_error = z49.object({
|
|
844
|
+
type: z49.literal("source_pin_must_be_connected_error"),
|
|
825
845
|
source_pin_must_be_connected_error_id: getZodPrefixedIdWithDefault(
|
|
826
846
|
"source_pin_must_be_connected_error"
|
|
827
847
|
),
|
|
828
|
-
error_type:
|
|
829
|
-
message:
|
|
830
|
-
source_component_id:
|
|
831
|
-
source_port_id:
|
|
832
|
-
subcircuit_id:
|
|
848
|
+
error_type: z49.literal("source_pin_must_be_connected_error").default("source_pin_must_be_connected_error"),
|
|
849
|
+
message: z49.string(),
|
|
850
|
+
source_component_id: z49.string(),
|
|
851
|
+
source_port_id: z49.string(),
|
|
852
|
+
subcircuit_id: z49.string().optional()
|
|
833
853
|
}).describe(
|
|
834
854
|
"Error emitted when a pin with mustBeConnected attribute is not connected to any trace"
|
|
835
855
|
);
|
|
836
856
|
expectTypesMatch(true);
|
|
837
857
|
|
|
838
858
|
// src/source/unknown_error_finding_part.ts
|
|
839
|
-
import { z as
|
|
840
|
-
var unknown_error_finding_part =
|
|
841
|
-
type:
|
|
859
|
+
import { z as z50 } from "zod";
|
|
860
|
+
var unknown_error_finding_part = z50.object({
|
|
861
|
+
type: z50.literal("unknown_error_finding_part"),
|
|
842
862
|
unknown_error_finding_part_id: getZodPrefixedIdWithDefault(
|
|
843
863
|
"unknown_error_finding_part"
|
|
844
864
|
),
|
|
845
|
-
error_type:
|
|
846
|
-
message:
|
|
847
|
-
source_component_id:
|
|
848
|
-
subcircuit_id:
|
|
865
|
+
error_type: z50.literal("unknown_error_finding_part").default("unknown_error_finding_part"),
|
|
866
|
+
message: z50.string(),
|
|
867
|
+
source_component_id: z50.string().optional(),
|
|
868
|
+
subcircuit_id: z50.string().optional()
|
|
849
869
|
}).describe(
|
|
850
870
|
"Error emitted when an unexpected error occurs while finding a part"
|
|
851
871
|
);
|
|
852
872
|
expectTypesMatch(true);
|
|
853
873
|
|
|
854
874
|
// src/schematic/schematic_box.ts
|
|
855
|
-
import { z as
|
|
856
|
-
var schematic_box =
|
|
857
|
-
type:
|
|
858
|
-
schematic_component_id:
|
|
875
|
+
import { z as z51 } from "zod";
|
|
876
|
+
var schematic_box = z51.object({
|
|
877
|
+
type: z51.literal("schematic_box"),
|
|
878
|
+
schematic_component_id: z51.string().optional(),
|
|
859
879
|
width: distance,
|
|
860
880
|
height: distance,
|
|
861
|
-
is_dashed:
|
|
881
|
+
is_dashed: z51.boolean().default(false),
|
|
862
882
|
x: distance,
|
|
863
883
|
y: distance,
|
|
864
|
-
subcircuit_id:
|
|
884
|
+
subcircuit_id: z51.string().optional()
|
|
865
885
|
}).describe("Draws a box on the schematic");
|
|
866
886
|
expectTypesMatch(true);
|
|
867
887
|
|
|
868
888
|
// src/schematic/schematic_path.ts
|
|
869
|
-
import { z as
|
|
870
|
-
var schematic_path =
|
|
871
|
-
type:
|
|
872
|
-
schematic_component_id:
|
|
873
|
-
fill_color:
|
|
874
|
-
is_filled:
|
|
875
|
-
points:
|
|
876
|
-
subcircuit_id:
|
|
889
|
+
import { z as z52 } from "zod";
|
|
890
|
+
var schematic_path = z52.object({
|
|
891
|
+
type: z52.literal("schematic_path"),
|
|
892
|
+
schematic_component_id: z52.string(),
|
|
893
|
+
fill_color: z52.enum(["red", "blue"]).optional(),
|
|
894
|
+
is_filled: z52.boolean().optional(),
|
|
895
|
+
points: z52.array(point),
|
|
896
|
+
subcircuit_id: z52.string().optional()
|
|
877
897
|
});
|
|
878
898
|
expectTypesMatch(true);
|
|
879
899
|
|
|
880
900
|
// src/schematic/schematic_component.ts
|
|
881
|
-
import { z as
|
|
882
|
-
var schematic_pin_styles =
|
|
883
|
-
|
|
901
|
+
import { z as z53 } from "zod";
|
|
902
|
+
var schematic_pin_styles = z53.record(
|
|
903
|
+
z53.object({
|
|
884
904
|
left_margin: length.optional(),
|
|
885
905
|
right_margin: length.optional(),
|
|
886
906
|
top_margin: length.optional(),
|
|
887
907
|
bottom_margin: length.optional()
|
|
888
908
|
})
|
|
889
909
|
);
|
|
890
|
-
var schematic_component_port_arrangement_by_size =
|
|
891
|
-
left_size:
|
|
892
|
-
right_size:
|
|
893
|
-
top_size:
|
|
894
|
-
bottom_size:
|
|
910
|
+
var schematic_component_port_arrangement_by_size = z53.object({
|
|
911
|
+
left_size: z53.number(),
|
|
912
|
+
right_size: z53.number(),
|
|
913
|
+
top_size: z53.number().optional(),
|
|
914
|
+
bottom_size: z53.number().optional()
|
|
895
915
|
});
|
|
896
916
|
expectTypesMatch(true);
|
|
897
|
-
var schematic_component_port_arrangement_by_sides =
|
|
898
|
-
left_side:
|
|
899
|
-
pins:
|
|
917
|
+
var schematic_component_port_arrangement_by_sides = z53.object({
|
|
918
|
+
left_side: z53.object({
|
|
919
|
+
pins: z53.array(z53.number()),
|
|
900
920
|
// @ts-ignore
|
|
901
|
-
direction:
|
|
921
|
+
direction: z53.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
902
922
|
}).optional(),
|
|
903
|
-
right_side:
|
|
904
|
-
pins:
|
|
923
|
+
right_side: z53.object({
|
|
924
|
+
pins: z53.array(z53.number()),
|
|
905
925
|
// @ts-ignore
|
|
906
|
-
direction:
|
|
926
|
+
direction: z53.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
907
927
|
}).optional(),
|
|
908
|
-
top_side:
|
|
909
|
-
pins:
|
|
928
|
+
top_side: z53.object({
|
|
929
|
+
pins: z53.array(z53.number()),
|
|
910
930
|
// @ts-ignore
|
|
911
|
-
direction:
|
|
931
|
+
direction: z53.enum(["left-to-right", "right-to-left"]).optional()
|
|
912
932
|
}).optional(),
|
|
913
|
-
bottom_side:
|
|
914
|
-
pins:
|
|
933
|
+
bottom_side: z53.object({
|
|
934
|
+
pins: z53.array(z53.number()),
|
|
915
935
|
// @ts-ignore
|
|
916
|
-
direction:
|
|
936
|
+
direction: z53.enum(["left-to-right", "right-to-left"]).optional()
|
|
917
937
|
}).optional()
|
|
918
938
|
});
|
|
919
939
|
expectTypesMatch(true);
|
|
920
|
-
var port_arrangement =
|
|
940
|
+
var port_arrangement = z53.union([
|
|
921
941
|
schematic_component_port_arrangement_by_size,
|
|
922
942
|
schematic_component_port_arrangement_by_sides
|
|
923
943
|
]);
|
|
924
|
-
var schematic_component =
|
|
925
|
-
type:
|
|
944
|
+
var schematic_component = z53.object({
|
|
945
|
+
type: z53.literal("schematic_component"),
|
|
926
946
|
size,
|
|
927
947
|
center: point,
|
|
928
|
-
source_component_id:
|
|
929
|
-
schematic_component_id:
|
|
948
|
+
source_component_id: z53.string().optional(),
|
|
949
|
+
schematic_component_id: z53.string(),
|
|
930
950
|
pin_spacing: length.optional(),
|
|
931
951
|
pin_styles: schematic_pin_styles.optional(),
|
|
932
952
|
box_width: length.optional(),
|
|
933
|
-
symbol_name:
|
|
953
|
+
symbol_name: z53.string().optional(),
|
|
934
954
|
port_arrangement: port_arrangement.optional(),
|
|
935
|
-
port_labels:
|
|
936
|
-
symbol_display_value:
|
|
937
|
-
subcircuit_id:
|
|
938
|
-
schematic_group_id:
|
|
939
|
-
is_schematic_group:
|
|
940
|
-
source_group_id:
|
|
941
|
-
is_box_with_pins:
|
|
955
|
+
port_labels: z53.record(z53.string()).optional(),
|
|
956
|
+
symbol_display_value: z53.string().optional(),
|
|
957
|
+
subcircuit_id: z53.string().optional(),
|
|
958
|
+
schematic_group_id: z53.string().optional(),
|
|
959
|
+
is_schematic_group: z53.boolean().optional(),
|
|
960
|
+
source_group_id: z53.string().optional(),
|
|
961
|
+
is_box_with_pins: z53.boolean().optional().default(true)
|
|
942
962
|
});
|
|
943
963
|
expectTypesMatch(true);
|
|
944
964
|
|
|
945
965
|
// src/schematic/schematic_line.ts
|
|
946
|
-
import { z as
|
|
947
|
-
var schematic_line =
|
|
948
|
-
type:
|
|
966
|
+
import { z as z54 } from "zod";
|
|
967
|
+
var schematic_line = z54.object({
|
|
968
|
+
type: z54.literal("schematic_line"),
|
|
949
969
|
schematic_line_id: getZodPrefixedIdWithDefault("schematic_line"),
|
|
950
|
-
schematic_component_id:
|
|
970
|
+
schematic_component_id: z54.string(),
|
|
951
971
|
x1: distance,
|
|
952
972
|
y1: distance,
|
|
953
973
|
x2: distance,
|
|
954
974
|
y2: distance,
|
|
955
975
|
stroke_width: distance.nullable().optional(),
|
|
956
|
-
color:
|
|
957
|
-
is_dashed:
|
|
958
|
-
subcircuit_id:
|
|
976
|
+
color: z54.string().default("#000000"),
|
|
977
|
+
is_dashed: z54.boolean().default(false),
|
|
978
|
+
subcircuit_id: z54.string().optional()
|
|
959
979
|
}).describe("Draws a styled line on the schematic");
|
|
960
980
|
expectTypesMatch(true);
|
|
961
981
|
|
|
962
982
|
// src/schematic/schematic_rect.ts
|
|
963
|
-
import { z as
|
|
964
|
-
var schematic_rect =
|
|
965
|
-
type:
|
|
983
|
+
import { z as z55 } from "zod";
|
|
984
|
+
var schematic_rect = z55.object({
|
|
985
|
+
type: z55.literal("schematic_rect"),
|
|
966
986
|
schematic_rect_id: getZodPrefixedIdWithDefault("schematic_rect"),
|
|
967
|
-
schematic_component_id:
|
|
987
|
+
schematic_component_id: z55.string(),
|
|
968
988
|
center: point,
|
|
969
989
|
width: distance,
|
|
970
990
|
height: distance,
|
|
971
991
|
rotation: rotation.default(0),
|
|
972
992
|
stroke_width: distance.nullable().optional(),
|
|
973
|
-
color:
|
|
974
|
-
is_filled:
|
|
975
|
-
fill_color:
|
|
976
|
-
is_dashed:
|
|
977
|
-
subcircuit_id:
|
|
993
|
+
color: z55.string().default("#000000"),
|
|
994
|
+
is_filled: z55.boolean().default(false),
|
|
995
|
+
fill_color: z55.string().optional(),
|
|
996
|
+
is_dashed: z55.boolean().default(false),
|
|
997
|
+
subcircuit_id: z55.string().optional()
|
|
978
998
|
}).describe("Draws a styled rectangle on the schematic");
|
|
979
999
|
expectTypesMatch(true);
|
|
980
1000
|
|
|
981
1001
|
// src/schematic/schematic_circle.ts
|
|
982
|
-
import { z as
|
|
983
|
-
var schematic_circle =
|
|
984
|
-
type:
|
|
1002
|
+
import { z as z56 } from "zod";
|
|
1003
|
+
var schematic_circle = z56.object({
|
|
1004
|
+
type: z56.literal("schematic_circle"),
|
|
985
1005
|
schematic_circle_id: getZodPrefixedIdWithDefault("schematic_circle"),
|
|
986
|
-
schematic_component_id:
|
|
1006
|
+
schematic_component_id: z56.string(),
|
|
987
1007
|
center: point,
|
|
988
1008
|
radius: distance,
|
|
989
1009
|
stroke_width: distance.nullable().optional(),
|
|
990
|
-
color:
|
|
991
|
-
is_filled:
|
|
992
|
-
fill_color:
|
|
993
|
-
is_dashed:
|
|
994
|
-
subcircuit_id:
|
|
1010
|
+
color: z56.string().default("#000000"),
|
|
1011
|
+
is_filled: z56.boolean().default(false),
|
|
1012
|
+
fill_color: z56.string().optional(),
|
|
1013
|
+
is_dashed: z56.boolean().default(false),
|
|
1014
|
+
subcircuit_id: z56.string().optional()
|
|
995
1015
|
}).describe("Draws a styled circle on the schematic");
|
|
996
1016
|
expectTypesMatch(true);
|
|
997
1017
|
|
|
998
1018
|
// src/schematic/schematic_arc.ts
|
|
999
|
-
import { z as
|
|
1000
|
-
var schematic_arc =
|
|
1001
|
-
type:
|
|
1019
|
+
import { z as z57 } from "zod";
|
|
1020
|
+
var schematic_arc = z57.object({
|
|
1021
|
+
type: z57.literal("schematic_arc"),
|
|
1002
1022
|
schematic_arc_id: getZodPrefixedIdWithDefault("schematic_arc"),
|
|
1003
|
-
schematic_component_id:
|
|
1023
|
+
schematic_component_id: z57.string(),
|
|
1004
1024
|
center: point,
|
|
1005
1025
|
radius: distance,
|
|
1006
1026
|
start_angle_degrees: rotation,
|
|
1007
1027
|
end_angle_degrees: rotation,
|
|
1008
|
-
direction:
|
|
1028
|
+
direction: z57.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
|
|
1009
1029
|
stroke_width: distance.nullable().optional(),
|
|
1010
|
-
color:
|
|
1011
|
-
is_dashed:
|
|
1012
|
-
subcircuit_id:
|
|
1030
|
+
color: z57.string().default("#000000"),
|
|
1031
|
+
is_dashed: z57.boolean().default(false),
|
|
1032
|
+
subcircuit_id: z57.string().optional()
|
|
1013
1033
|
}).describe("Draws a styled arc on the schematic");
|
|
1014
1034
|
expectTypesMatch(true);
|
|
1015
1035
|
|
|
1016
1036
|
// src/schematic/schematic_trace.ts
|
|
1017
|
-
import { z as
|
|
1018
|
-
var schematic_trace =
|
|
1019
|
-
type:
|
|
1020
|
-
schematic_trace_id:
|
|
1021
|
-
source_trace_id:
|
|
1022
|
-
junctions:
|
|
1023
|
-
|
|
1024
|
-
x:
|
|
1025
|
-
y:
|
|
1037
|
+
import { z as z58 } from "zod";
|
|
1038
|
+
var schematic_trace = z58.object({
|
|
1039
|
+
type: z58.literal("schematic_trace"),
|
|
1040
|
+
schematic_trace_id: z58.string(),
|
|
1041
|
+
source_trace_id: z58.string().optional(),
|
|
1042
|
+
junctions: z58.array(
|
|
1043
|
+
z58.object({
|
|
1044
|
+
x: z58.number(),
|
|
1045
|
+
y: z58.number()
|
|
1026
1046
|
})
|
|
1027
1047
|
),
|
|
1028
|
-
edges:
|
|
1029
|
-
|
|
1030
|
-
from:
|
|
1031
|
-
x:
|
|
1032
|
-
y:
|
|
1048
|
+
edges: z58.array(
|
|
1049
|
+
z58.object({
|
|
1050
|
+
from: z58.object({
|
|
1051
|
+
x: z58.number(),
|
|
1052
|
+
y: z58.number()
|
|
1033
1053
|
}),
|
|
1034
|
-
to:
|
|
1035
|
-
x:
|
|
1036
|
-
y:
|
|
1054
|
+
to: z58.object({
|
|
1055
|
+
x: z58.number(),
|
|
1056
|
+
y: z58.number()
|
|
1037
1057
|
}),
|
|
1038
|
-
is_crossing:
|
|
1039
|
-
from_schematic_port_id:
|
|
1040
|
-
to_schematic_port_id:
|
|
1058
|
+
is_crossing: z58.boolean().optional(),
|
|
1059
|
+
from_schematic_port_id: z58.string().optional(),
|
|
1060
|
+
to_schematic_port_id: z58.string().optional()
|
|
1041
1061
|
})
|
|
1042
1062
|
),
|
|
1043
|
-
subcircuit_id:
|
|
1063
|
+
subcircuit_id: z58.string().optional(),
|
|
1044
1064
|
// TODO: make required in a future release
|
|
1045
|
-
subcircuit_connectivity_map_key:
|
|
1065
|
+
subcircuit_connectivity_map_key: z58.string().optional()
|
|
1046
1066
|
});
|
|
1047
1067
|
expectTypesMatch(true);
|
|
1048
1068
|
|
|
1049
1069
|
// src/schematic/schematic_text.ts
|
|
1050
|
-
import { z as
|
|
1070
|
+
import { z as z60 } from "zod";
|
|
1051
1071
|
|
|
1052
1072
|
// src/common/FivePointAnchor.ts
|
|
1053
|
-
import { z as
|
|
1054
|
-
var fivePointAnchor =
|
|
1073
|
+
import { z as z59 } from "zod";
|
|
1074
|
+
var fivePointAnchor = z59.enum([
|
|
1055
1075
|
"center",
|
|
1056
1076
|
"left",
|
|
1057
1077
|
"right",
|
|
@@ -1061,111 +1081,111 @@ var fivePointAnchor = z58.enum([
|
|
|
1061
1081
|
expectTypesMatch(true);
|
|
1062
1082
|
|
|
1063
1083
|
// src/schematic/schematic_text.ts
|
|
1064
|
-
var schematic_text =
|
|
1065
|
-
type:
|
|
1066
|
-
schematic_component_id:
|
|
1067
|
-
schematic_text_id:
|
|
1068
|
-
text:
|
|
1069
|
-
font_size:
|
|
1070
|
-
position:
|
|
1084
|
+
var schematic_text = z60.object({
|
|
1085
|
+
type: z60.literal("schematic_text"),
|
|
1086
|
+
schematic_component_id: z60.string().optional(),
|
|
1087
|
+
schematic_text_id: z60.string(),
|
|
1088
|
+
text: z60.string(),
|
|
1089
|
+
font_size: z60.number().default(0.18),
|
|
1090
|
+
position: z60.object({
|
|
1071
1091
|
x: distance,
|
|
1072
1092
|
y: distance
|
|
1073
1093
|
}),
|
|
1074
|
-
rotation:
|
|
1075
|
-
anchor:
|
|
1076
|
-
color:
|
|
1077
|
-
subcircuit_id:
|
|
1094
|
+
rotation: z60.number().default(0),
|
|
1095
|
+
anchor: z60.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
|
|
1096
|
+
color: z60.string().default("#000000"),
|
|
1097
|
+
subcircuit_id: z60.string().optional()
|
|
1078
1098
|
});
|
|
1079
1099
|
expectTypesMatch(true);
|
|
1080
1100
|
|
|
1081
1101
|
// src/schematic/schematic_port.ts
|
|
1082
|
-
import { z as
|
|
1083
|
-
var schematic_port =
|
|
1084
|
-
type:
|
|
1085
|
-
schematic_port_id:
|
|
1086
|
-
source_port_id:
|
|
1087
|
-
schematic_component_id:
|
|
1102
|
+
import { z as z61 } from "zod";
|
|
1103
|
+
var schematic_port = z61.object({
|
|
1104
|
+
type: z61.literal("schematic_port"),
|
|
1105
|
+
schematic_port_id: z61.string(),
|
|
1106
|
+
source_port_id: z61.string(),
|
|
1107
|
+
schematic_component_id: z61.string().optional(),
|
|
1088
1108
|
center: point,
|
|
1089
|
-
facing_direction:
|
|
1090
|
-
distance_from_component_edge:
|
|
1091
|
-
side_of_component:
|
|
1092
|
-
true_ccw_index:
|
|
1093
|
-
pin_number:
|
|
1094
|
-
display_pin_label:
|
|
1095
|
-
subcircuit_id:
|
|
1096
|
-
is_connected:
|
|
1097
|
-
has_input_arrow:
|
|
1098
|
-
has_output_arrow:
|
|
1109
|
+
facing_direction: z61.enum(["up", "down", "left", "right"]).optional(),
|
|
1110
|
+
distance_from_component_edge: z61.number().optional(),
|
|
1111
|
+
side_of_component: z61.enum(["top", "bottom", "left", "right"]).optional(),
|
|
1112
|
+
true_ccw_index: z61.number().optional(),
|
|
1113
|
+
pin_number: z61.number().optional(),
|
|
1114
|
+
display_pin_label: z61.string().optional(),
|
|
1115
|
+
subcircuit_id: z61.string().optional(),
|
|
1116
|
+
is_connected: z61.boolean().optional(),
|
|
1117
|
+
has_input_arrow: z61.boolean().optional(),
|
|
1118
|
+
has_output_arrow: z61.boolean().optional()
|
|
1099
1119
|
}).describe("Defines a port on a schematic component");
|
|
1100
1120
|
expectTypesMatch(true);
|
|
1101
1121
|
|
|
1102
1122
|
// src/schematic/schematic_net_label.ts
|
|
1103
|
-
import { z as
|
|
1104
|
-
var schematic_net_label =
|
|
1105
|
-
type:
|
|
1123
|
+
import { z as z62 } from "zod";
|
|
1124
|
+
var schematic_net_label = z62.object({
|
|
1125
|
+
type: z62.literal("schematic_net_label"),
|
|
1106
1126
|
schematic_net_label_id: getZodPrefixedIdWithDefault("schematic_net_label"),
|
|
1107
|
-
schematic_trace_id:
|
|
1108
|
-
source_trace_id:
|
|
1109
|
-
source_net_id:
|
|
1127
|
+
schematic_trace_id: z62.string().optional(),
|
|
1128
|
+
source_trace_id: z62.string().optional(),
|
|
1129
|
+
source_net_id: z62.string(),
|
|
1110
1130
|
center: point,
|
|
1111
1131
|
anchor_position: point.optional(),
|
|
1112
|
-
anchor_side:
|
|
1113
|
-
text:
|
|
1114
|
-
symbol_name:
|
|
1115
|
-
is_movable:
|
|
1116
|
-
subcircuit_id:
|
|
1132
|
+
anchor_side: z62.enum(["top", "bottom", "left", "right"]),
|
|
1133
|
+
text: z62.string(),
|
|
1134
|
+
symbol_name: z62.string().optional(),
|
|
1135
|
+
is_movable: z62.boolean().optional(),
|
|
1136
|
+
subcircuit_id: z62.string().optional()
|
|
1117
1137
|
});
|
|
1118
1138
|
expectTypesMatch(true);
|
|
1119
1139
|
|
|
1120
1140
|
// src/schematic/schematic_error.ts
|
|
1121
|
-
import { z as
|
|
1122
|
-
var schematic_error =
|
|
1123
|
-
type:
|
|
1124
|
-
schematic_error_id:
|
|
1141
|
+
import { z as z63 } from "zod";
|
|
1142
|
+
var schematic_error = z63.object({
|
|
1143
|
+
type: z63.literal("schematic_error"),
|
|
1144
|
+
schematic_error_id: z63.string(),
|
|
1125
1145
|
// eventually each error type should be broken out into a dir of files
|
|
1126
|
-
error_type:
|
|
1127
|
-
message:
|
|
1128
|
-
subcircuit_id:
|
|
1146
|
+
error_type: z63.literal("schematic_port_not_found").default("schematic_port_not_found"),
|
|
1147
|
+
message: z63.string(),
|
|
1148
|
+
subcircuit_id: z63.string().optional()
|
|
1129
1149
|
}).describe("Defines a schematic error on the schematic");
|
|
1130
1150
|
expectTypesMatch(true);
|
|
1131
1151
|
|
|
1132
1152
|
// src/schematic/schematic_layout_error.ts
|
|
1133
|
-
import { z as
|
|
1134
|
-
var schematic_layout_error =
|
|
1135
|
-
type:
|
|
1153
|
+
import { z as z64 } from "zod";
|
|
1154
|
+
var schematic_layout_error = z64.object({
|
|
1155
|
+
type: z64.literal("schematic_layout_error"),
|
|
1136
1156
|
schematic_layout_error_id: getZodPrefixedIdWithDefault(
|
|
1137
1157
|
"schematic_layout_error"
|
|
1138
1158
|
),
|
|
1139
|
-
error_type:
|
|
1140
|
-
message:
|
|
1141
|
-
source_group_id:
|
|
1142
|
-
schematic_group_id:
|
|
1143
|
-
subcircuit_id:
|
|
1159
|
+
error_type: z64.literal("schematic_layout_error").default("schematic_layout_error"),
|
|
1160
|
+
message: z64.string(),
|
|
1161
|
+
source_group_id: z64.string(),
|
|
1162
|
+
schematic_group_id: z64.string(),
|
|
1163
|
+
subcircuit_id: z64.string().optional()
|
|
1144
1164
|
}).describe("Error emitted when schematic layout fails for a group");
|
|
1145
1165
|
expectTypesMatch(true);
|
|
1146
1166
|
|
|
1147
1167
|
// src/schematic/schematic_debug_object.ts
|
|
1148
|
-
import { z as
|
|
1149
|
-
var schematic_debug_object_base =
|
|
1150
|
-
type:
|
|
1151
|
-
label:
|
|
1152
|
-
subcircuit_id:
|
|
1168
|
+
import { z as z65 } from "zod";
|
|
1169
|
+
var schematic_debug_object_base = z65.object({
|
|
1170
|
+
type: z65.literal("schematic_debug_object"),
|
|
1171
|
+
label: z65.string().optional(),
|
|
1172
|
+
subcircuit_id: z65.string().optional()
|
|
1153
1173
|
});
|
|
1154
1174
|
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
1155
|
-
shape:
|
|
1175
|
+
shape: z65.literal("rect"),
|
|
1156
1176
|
center: point,
|
|
1157
1177
|
size
|
|
1158
1178
|
});
|
|
1159
1179
|
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
1160
|
-
shape:
|
|
1180
|
+
shape: z65.literal("line"),
|
|
1161
1181
|
start: point,
|
|
1162
1182
|
end: point
|
|
1163
1183
|
});
|
|
1164
1184
|
var schematic_debug_point = schematic_debug_object_base.extend({
|
|
1165
|
-
shape:
|
|
1185
|
+
shape: z65.literal("point"),
|
|
1166
1186
|
center: point
|
|
1167
1187
|
});
|
|
1168
|
-
var schematic_debug_object =
|
|
1188
|
+
var schematic_debug_object = z65.discriminatedUnion("shape", [
|
|
1169
1189
|
schematic_debug_rect,
|
|
1170
1190
|
schematic_debug_line,
|
|
1171
1191
|
schematic_debug_point
|
|
@@ -1173,282 +1193,282 @@ var schematic_debug_object = z64.discriminatedUnion("shape", [
|
|
|
1173
1193
|
expectTypesMatch(true);
|
|
1174
1194
|
|
|
1175
1195
|
// src/schematic/schematic_voltage_probe.ts
|
|
1176
|
-
import { z as
|
|
1177
|
-
var schematic_voltage_probe =
|
|
1178
|
-
type:
|
|
1179
|
-
schematic_voltage_probe_id:
|
|
1180
|
-
source_component_id:
|
|
1181
|
-
name:
|
|
1196
|
+
import { z as z66 } from "zod";
|
|
1197
|
+
var schematic_voltage_probe = z66.object({
|
|
1198
|
+
type: z66.literal("schematic_voltage_probe"),
|
|
1199
|
+
schematic_voltage_probe_id: z66.string(),
|
|
1200
|
+
source_component_id: z66.string().optional(),
|
|
1201
|
+
name: z66.string().optional(),
|
|
1182
1202
|
position: point,
|
|
1183
|
-
schematic_trace_id:
|
|
1203
|
+
schematic_trace_id: z66.string(),
|
|
1184
1204
|
voltage: voltage.optional(),
|
|
1185
|
-
subcircuit_id:
|
|
1186
|
-
color:
|
|
1205
|
+
subcircuit_id: z66.string().optional(),
|
|
1206
|
+
color: z66.string().optional(),
|
|
1187
1207
|
label_alignment: ninePointAnchor.optional()
|
|
1188
1208
|
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
1189
1209
|
expectTypesMatch(true);
|
|
1190
1210
|
|
|
1191
1211
|
// src/schematic/schematic_manual_edit_conflict_warning.ts
|
|
1192
|
-
import { z as
|
|
1193
|
-
var schematic_manual_edit_conflict_warning =
|
|
1194
|
-
type:
|
|
1212
|
+
import { z as z67 } from "zod";
|
|
1213
|
+
var schematic_manual_edit_conflict_warning = z67.object({
|
|
1214
|
+
type: z67.literal("schematic_manual_edit_conflict_warning"),
|
|
1195
1215
|
schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1196
1216
|
"schematic_manual_edit_conflict_warning"
|
|
1197
1217
|
),
|
|
1198
|
-
warning_type:
|
|
1199
|
-
message:
|
|
1200
|
-
schematic_component_id:
|
|
1201
|
-
schematic_group_id:
|
|
1202
|
-
subcircuit_id:
|
|
1203
|
-
source_component_id:
|
|
1218
|
+
warning_type: z67.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
|
|
1219
|
+
message: z67.string(),
|
|
1220
|
+
schematic_component_id: z67.string(),
|
|
1221
|
+
schematic_group_id: z67.string().optional(),
|
|
1222
|
+
subcircuit_id: z67.string().optional(),
|
|
1223
|
+
source_component_id: z67.string()
|
|
1204
1224
|
}).describe(
|
|
1205
1225
|
"Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
|
|
1206
1226
|
);
|
|
1207
1227
|
expectTypesMatch(true);
|
|
1208
1228
|
|
|
1209
1229
|
// src/schematic/schematic_group.ts
|
|
1210
|
-
import { z as
|
|
1211
|
-
var schematic_group =
|
|
1212
|
-
type:
|
|
1230
|
+
import { z as z68 } from "zod";
|
|
1231
|
+
var schematic_group = z68.object({
|
|
1232
|
+
type: z68.literal("schematic_group"),
|
|
1213
1233
|
schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
|
|
1214
|
-
source_group_id:
|
|
1215
|
-
is_subcircuit:
|
|
1216
|
-
subcircuit_id:
|
|
1234
|
+
source_group_id: z68.string(),
|
|
1235
|
+
is_subcircuit: z68.boolean().optional(),
|
|
1236
|
+
subcircuit_id: z68.string().optional(),
|
|
1217
1237
|
width: length,
|
|
1218
1238
|
height: length,
|
|
1219
1239
|
center: point,
|
|
1220
|
-
schematic_component_ids:
|
|
1221
|
-
show_as_schematic_box:
|
|
1222
|
-
name:
|
|
1223
|
-
description:
|
|
1240
|
+
schematic_component_ids: z68.array(z68.string()),
|
|
1241
|
+
show_as_schematic_box: z68.boolean().optional(),
|
|
1242
|
+
name: z68.string().optional(),
|
|
1243
|
+
description: z68.string().optional()
|
|
1224
1244
|
}).describe("Defines a group of components on the schematic");
|
|
1225
1245
|
expectTypesMatch(true);
|
|
1226
1246
|
|
|
1227
1247
|
// src/schematic/schematic_table.ts
|
|
1228
|
-
import { z as
|
|
1229
|
-
var schematic_table =
|
|
1230
|
-
type:
|
|
1248
|
+
import { z as z69 } from "zod";
|
|
1249
|
+
var schematic_table = z69.object({
|
|
1250
|
+
type: z69.literal("schematic_table"),
|
|
1231
1251
|
schematic_table_id: getZodPrefixedIdWithDefault("schematic_table"),
|
|
1232
1252
|
anchor_position: point,
|
|
1233
|
-
column_widths:
|
|
1234
|
-
row_heights:
|
|
1253
|
+
column_widths: z69.array(distance),
|
|
1254
|
+
row_heights: z69.array(distance),
|
|
1235
1255
|
cell_padding: distance.optional(),
|
|
1236
1256
|
border_width: distance.optional(),
|
|
1237
|
-
subcircuit_id:
|
|
1238
|
-
schematic_component_id:
|
|
1257
|
+
subcircuit_id: z69.string().optional(),
|
|
1258
|
+
schematic_component_id: z69.string().optional(),
|
|
1239
1259
|
anchor: ninePointAnchor.optional()
|
|
1240
1260
|
}).describe("Defines a table on the schematic");
|
|
1241
1261
|
expectTypesMatch(true);
|
|
1242
1262
|
|
|
1243
1263
|
// src/schematic/schematic_table_cell.ts
|
|
1244
|
-
import { z as
|
|
1245
|
-
var schematic_table_cell =
|
|
1246
|
-
type:
|
|
1264
|
+
import { z as z70 } from "zod";
|
|
1265
|
+
var schematic_table_cell = z70.object({
|
|
1266
|
+
type: z70.literal("schematic_table_cell"),
|
|
1247
1267
|
schematic_table_cell_id: getZodPrefixedIdWithDefault(
|
|
1248
1268
|
"schematic_table_cell"
|
|
1249
1269
|
),
|
|
1250
|
-
schematic_table_id:
|
|
1251
|
-
start_row_index:
|
|
1252
|
-
end_row_index:
|
|
1253
|
-
start_column_index:
|
|
1254
|
-
end_column_index:
|
|
1255
|
-
text:
|
|
1270
|
+
schematic_table_id: z70.string(),
|
|
1271
|
+
start_row_index: z70.number(),
|
|
1272
|
+
end_row_index: z70.number(),
|
|
1273
|
+
start_column_index: z70.number(),
|
|
1274
|
+
end_column_index: z70.number(),
|
|
1275
|
+
text: z70.string().optional(),
|
|
1256
1276
|
center: point,
|
|
1257
1277
|
width: distance,
|
|
1258
1278
|
height: distance,
|
|
1259
|
-
horizontal_align:
|
|
1260
|
-
vertical_align:
|
|
1279
|
+
horizontal_align: z70.enum(["left", "center", "right"]).optional(),
|
|
1280
|
+
vertical_align: z70.enum(["top", "middle", "bottom"]).optional(),
|
|
1261
1281
|
font_size: distance.optional(),
|
|
1262
|
-
subcircuit_id:
|
|
1282
|
+
subcircuit_id: z70.string().optional()
|
|
1263
1283
|
}).describe("Defines a cell within a schematic_table");
|
|
1264
1284
|
expectTypesMatch(true);
|
|
1265
1285
|
|
|
1266
1286
|
// src/schematic/schematic_sheet.ts
|
|
1267
|
-
import { z as
|
|
1268
|
-
var schematic_sheet =
|
|
1269
|
-
type:
|
|
1287
|
+
import { z as z71 } from "zod";
|
|
1288
|
+
var schematic_sheet = z71.object({
|
|
1289
|
+
type: z71.literal("schematic_sheet"),
|
|
1270
1290
|
schematic_sheet_id: getZodPrefixedIdWithDefault("schematic_sheet"),
|
|
1271
|
-
name:
|
|
1272
|
-
subcircuit_id:
|
|
1291
|
+
name: z71.string().optional(),
|
|
1292
|
+
subcircuit_id: z71.string().optional()
|
|
1273
1293
|
}).describe(
|
|
1274
1294
|
"Defines a schematic sheet or page that components can be placed on"
|
|
1275
1295
|
);
|
|
1276
1296
|
expectTypesMatch(true);
|
|
1277
1297
|
|
|
1278
1298
|
// src/pcb/properties/brep.ts
|
|
1279
|
-
import { z as
|
|
1280
|
-
var point_with_bulge =
|
|
1299
|
+
import { z as z72 } from "zod";
|
|
1300
|
+
var point_with_bulge = z72.object({
|
|
1281
1301
|
x: distance,
|
|
1282
1302
|
y: distance,
|
|
1283
|
-
bulge:
|
|
1303
|
+
bulge: z72.number().optional()
|
|
1284
1304
|
});
|
|
1285
1305
|
expectTypesMatch(true);
|
|
1286
|
-
var ring =
|
|
1287
|
-
vertices:
|
|
1306
|
+
var ring = z72.object({
|
|
1307
|
+
vertices: z72.array(point_with_bulge)
|
|
1288
1308
|
});
|
|
1289
1309
|
expectTypesMatch(true);
|
|
1290
|
-
var brep_shape =
|
|
1310
|
+
var brep_shape = z72.object({
|
|
1291
1311
|
outer_ring: ring,
|
|
1292
|
-
inner_rings:
|
|
1312
|
+
inner_rings: z72.array(ring).default([])
|
|
1293
1313
|
});
|
|
1294
1314
|
expectTypesMatch(true);
|
|
1295
1315
|
|
|
1296
1316
|
// src/pcb/properties/pcb_route_hints.ts
|
|
1297
|
-
import { z as
|
|
1298
|
-
var pcb_route_hint =
|
|
1317
|
+
import { z as z73 } from "zod";
|
|
1318
|
+
var pcb_route_hint = z73.object({
|
|
1299
1319
|
x: distance,
|
|
1300
1320
|
y: distance,
|
|
1301
|
-
via:
|
|
1321
|
+
via: z73.boolean().optional(),
|
|
1302
1322
|
via_to_layer: layer_ref.optional()
|
|
1303
1323
|
});
|
|
1304
|
-
var pcb_route_hints =
|
|
1324
|
+
var pcb_route_hints = z73.array(pcb_route_hint);
|
|
1305
1325
|
expectTypesMatch(true);
|
|
1306
1326
|
expectTypesMatch(true);
|
|
1307
1327
|
|
|
1308
1328
|
// src/pcb/properties/route_hint_point.ts
|
|
1309
|
-
import { z as
|
|
1310
|
-
var route_hint_point =
|
|
1329
|
+
import { z as z74 } from "zod";
|
|
1330
|
+
var route_hint_point = z74.object({
|
|
1311
1331
|
x: distance,
|
|
1312
1332
|
y: distance,
|
|
1313
|
-
via:
|
|
1333
|
+
via: z74.boolean().optional(),
|
|
1314
1334
|
to_layer: layer_ref.optional(),
|
|
1315
1335
|
trace_width: distance.optional()
|
|
1316
1336
|
});
|
|
1317
1337
|
expectTypesMatch(true);
|
|
1318
1338
|
|
|
1319
1339
|
// src/pcb/pcb_component.ts
|
|
1320
|
-
import { z as
|
|
1321
|
-
var pcb_component =
|
|
1322
|
-
type:
|
|
1340
|
+
import { z as z75 } from "zod";
|
|
1341
|
+
var pcb_component = z75.object({
|
|
1342
|
+
type: z75.literal("pcb_component"),
|
|
1323
1343
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
1324
|
-
source_component_id:
|
|
1344
|
+
source_component_id: z75.string(),
|
|
1325
1345
|
center: point,
|
|
1326
1346
|
layer: layer_ref,
|
|
1327
1347
|
rotation,
|
|
1328
|
-
display_offset_x:
|
|
1348
|
+
display_offset_x: z75.string().optional().describe(
|
|
1329
1349
|
"How to display the x offset for this part, usually corresponding with how the user specified it"
|
|
1330
1350
|
),
|
|
1331
|
-
display_offset_y:
|
|
1351
|
+
display_offset_y: z75.string().optional().describe(
|
|
1332
1352
|
"How to display the y offset for this part, usually corresponding with how the user specified it"
|
|
1333
1353
|
),
|
|
1334
1354
|
width: length,
|
|
1335
1355
|
height: length,
|
|
1336
|
-
do_not_place:
|
|
1337
|
-
subcircuit_id:
|
|
1338
|
-
pcb_group_id:
|
|
1339
|
-
position_mode:
|
|
1340
|
-
positioned_relative_to_pcb_group_id:
|
|
1341
|
-
positioned_relative_to_pcb_board_id:
|
|
1342
|
-
obstructs_within_bounds:
|
|
1356
|
+
do_not_place: z75.boolean().optional(),
|
|
1357
|
+
subcircuit_id: z75.string().optional(),
|
|
1358
|
+
pcb_group_id: z75.string().optional(),
|
|
1359
|
+
position_mode: z75.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
|
|
1360
|
+
positioned_relative_to_pcb_group_id: z75.string().optional(),
|
|
1361
|
+
positioned_relative_to_pcb_board_id: z75.string().optional(),
|
|
1362
|
+
obstructs_within_bounds: z75.boolean().default(true).describe(
|
|
1343
1363
|
"Does this component take up all the space within its bounds on a layer. This is generally true except for when separated pin headers are being represented by a single component (in which case, chips can be placed between the pin headers) or for tall modules where chips fit underneath"
|
|
1344
1364
|
)
|
|
1345
1365
|
}).describe("Defines a component on the PCB");
|
|
1346
1366
|
expectTypesMatch(true);
|
|
1347
1367
|
|
|
1348
1368
|
// src/pcb/pcb_hole.ts
|
|
1349
|
-
import { z as
|
|
1350
|
-
var pcb_hole_circle =
|
|
1351
|
-
type:
|
|
1369
|
+
import { z as z76 } from "zod";
|
|
1370
|
+
var pcb_hole_circle = z76.object({
|
|
1371
|
+
type: z76.literal("pcb_hole"),
|
|
1352
1372
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1353
|
-
pcb_group_id:
|
|
1354
|
-
subcircuit_id:
|
|
1355
|
-
pcb_component_id:
|
|
1356
|
-
hole_shape:
|
|
1357
|
-
hole_diameter:
|
|
1373
|
+
pcb_group_id: z76.string().optional(),
|
|
1374
|
+
subcircuit_id: z76.string().optional(),
|
|
1375
|
+
pcb_component_id: z76.string().optional(),
|
|
1376
|
+
hole_shape: z76.literal("circle"),
|
|
1377
|
+
hole_diameter: z76.number(),
|
|
1358
1378
|
x: distance,
|
|
1359
1379
|
y: distance,
|
|
1360
|
-
is_covered_with_solder_mask:
|
|
1361
|
-
soldermask_margin:
|
|
1380
|
+
is_covered_with_solder_mask: z76.boolean().optional(),
|
|
1381
|
+
soldermask_margin: z76.number().optional()
|
|
1362
1382
|
});
|
|
1363
1383
|
var pcb_hole_circle_shape = pcb_hole_circle.describe(
|
|
1364
1384
|
"Defines a circular hole on the PCB"
|
|
1365
1385
|
);
|
|
1366
1386
|
expectTypesMatch(true);
|
|
1367
|
-
var pcb_hole_rect =
|
|
1368
|
-
type:
|
|
1387
|
+
var pcb_hole_rect = z76.object({
|
|
1388
|
+
type: z76.literal("pcb_hole"),
|
|
1369
1389
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1370
|
-
pcb_group_id:
|
|
1371
|
-
subcircuit_id:
|
|
1372
|
-
pcb_component_id:
|
|
1373
|
-
hole_shape:
|
|
1374
|
-
hole_width:
|
|
1375
|
-
hole_height:
|
|
1390
|
+
pcb_group_id: z76.string().optional(),
|
|
1391
|
+
subcircuit_id: z76.string().optional(),
|
|
1392
|
+
pcb_component_id: z76.string().optional(),
|
|
1393
|
+
hole_shape: z76.literal("rect"),
|
|
1394
|
+
hole_width: z76.number(),
|
|
1395
|
+
hole_height: z76.number(),
|
|
1376
1396
|
x: distance,
|
|
1377
1397
|
y: distance,
|
|
1378
|
-
is_covered_with_solder_mask:
|
|
1379
|
-
soldermask_margin:
|
|
1398
|
+
is_covered_with_solder_mask: z76.boolean().optional(),
|
|
1399
|
+
soldermask_margin: z76.number().optional()
|
|
1380
1400
|
});
|
|
1381
1401
|
var pcb_hole_rect_shape = pcb_hole_rect.describe(
|
|
1382
1402
|
"Defines a rectangular (square-capable) hole on the PCB. Use equal width/height for square."
|
|
1383
1403
|
);
|
|
1384
1404
|
expectTypesMatch(true);
|
|
1385
|
-
var pcb_hole_circle_or_square =
|
|
1386
|
-
type:
|
|
1405
|
+
var pcb_hole_circle_or_square = z76.object({
|
|
1406
|
+
type: z76.literal("pcb_hole"),
|
|
1387
1407
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1388
|
-
pcb_group_id:
|
|
1389
|
-
subcircuit_id:
|
|
1390
|
-
pcb_component_id:
|
|
1391
|
-
hole_shape:
|
|
1392
|
-
hole_diameter:
|
|
1408
|
+
pcb_group_id: z76.string().optional(),
|
|
1409
|
+
subcircuit_id: z76.string().optional(),
|
|
1410
|
+
pcb_component_id: z76.string().optional(),
|
|
1411
|
+
hole_shape: z76.enum(["circle", "square"]),
|
|
1412
|
+
hole_diameter: z76.number(),
|
|
1393
1413
|
x: distance,
|
|
1394
1414
|
y: distance,
|
|
1395
|
-
is_covered_with_solder_mask:
|
|
1396
|
-
soldermask_margin:
|
|
1415
|
+
is_covered_with_solder_mask: z76.boolean().optional(),
|
|
1416
|
+
soldermask_margin: z76.number().optional()
|
|
1397
1417
|
});
|
|
1398
1418
|
var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
1399
1419
|
"Defines a circular or square hole on the PCB"
|
|
1400
1420
|
);
|
|
1401
1421
|
expectTypesMatch(true);
|
|
1402
|
-
var pcb_hole_oval =
|
|
1403
|
-
type:
|
|
1422
|
+
var pcb_hole_oval = z76.object({
|
|
1423
|
+
type: z76.literal("pcb_hole"),
|
|
1404
1424
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1405
|
-
pcb_group_id:
|
|
1406
|
-
subcircuit_id:
|
|
1407
|
-
pcb_component_id:
|
|
1408
|
-
hole_shape:
|
|
1409
|
-
hole_width:
|
|
1410
|
-
hole_height:
|
|
1425
|
+
pcb_group_id: z76.string().optional(),
|
|
1426
|
+
subcircuit_id: z76.string().optional(),
|
|
1427
|
+
pcb_component_id: z76.string().optional(),
|
|
1428
|
+
hole_shape: z76.literal("oval"),
|
|
1429
|
+
hole_width: z76.number(),
|
|
1430
|
+
hole_height: z76.number(),
|
|
1411
1431
|
x: distance,
|
|
1412
1432
|
y: distance,
|
|
1413
|
-
is_covered_with_solder_mask:
|
|
1414
|
-
soldermask_margin:
|
|
1433
|
+
is_covered_with_solder_mask: z76.boolean().optional(),
|
|
1434
|
+
soldermask_margin: z76.number().optional()
|
|
1415
1435
|
});
|
|
1416
1436
|
var pcb_hole_oval_shape = pcb_hole_oval.describe(
|
|
1417
1437
|
"Defines an oval hole on the PCB"
|
|
1418
1438
|
);
|
|
1419
1439
|
expectTypesMatch(true);
|
|
1420
|
-
var pcb_hole_pill =
|
|
1421
|
-
type:
|
|
1440
|
+
var pcb_hole_pill = z76.object({
|
|
1441
|
+
type: z76.literal("pcb_hole"),
|
|
1422
1442
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1423
|
-
pcb_group_id:
|
|
1424
|
-
subcircuit_id:
|
|
1425
|
-
pcb_component_id:
|
|
1426
|
-
hole_shape:
|
|
1427
|
-
hole_width:
|
|
1428
|
-
hole_height:
|
|
1443
|
+
pcb_group_id: z76.string().optional(),
|
|
1444
|
+
subcircuit_id: z76.string().optional(),
|
|
1445
|
+
pcb_component_id: z76.string().optional(),
|
|
1446
|
+
hole_shape: z76.literal("pill"),
|
|
1447
|
+
hole_width: z76.number(),
|
|
1448
|
+
hole_height: z76.number(),
|
|
1429
1449
|
x: distance,
|
|
1430
1450
|
y: distance,
|
|
1431
|
-
is_covered_with_solder_mask:
|
|
1432
|
-
soldermask_margin:
|
|
1451
|
+
is_covered_with_solder_mask: z76.boolean().optional(),
|
|
1452
|
+
soldermask_margin: z76.number().optional()
|
|
1433
1453
|
});
|
|
1434
1454
|
var pcb_hole_pill_shape = pcb_hole_pill.describe(
|
|
1435
1455
|
"Defines a pill-shaped hole on the PCB"
|
|
1436
1456
|
);
|
|
1437
1457
|
expectTypesMatch(true);
|
|
1438
|
-
var pcb_hole_rotated_pill =
|
|
1439
|
-
type:
|
|
1458
|
+
var pcb_hole_rotated_pill = z76.object({
|
|
1459
|
+
type: z76.literal("pcb_hole"),
|
|
1440
1460
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1441
|
-
pcb_group_id:
|
|
1442
|
-
subcircuit_id:
|
|
1443
|
-
pcb_component_id:
|
|
1444
|
-
hole_shape:
|
|
1445
|
-
hole_width:
|
|
1446
|
-
hole_height:
|
|
1461
|
+
pcb_group_id: z76.string().optional(),
|
|
1462
|
+
subcircuit_id: z76.string().optional(),
|
|
1463
|
+
pcb_component_id: z76.string().optional(),
|
|
1464
|
+
hole_shape: z76.literal("rotated_pill"),
|
|
1465
|
+
hole_width: z76.number(),
|
|
1466
|
+
hole_height: z76.number(),
|
|
1447
1467
|
x: distance,
|
|
1448
1468
|
y: distance,
|
|
1449
1469
|
ccw_rotation: rotation,
|
|
1450
|
-
is_covered_with_solder_mask:
|
|
1451
|
-
soldermask_margin:
|
|
1470
|
+
is_covered_with_solder_mask: z76.boolean().optional(),
|
|
1471
|
+
soldermask_margin: z76.number().optional()
|
|
1452
1472
|
});
|
|
1453
1473
|
var pcb_hole_rotated_pill_shape = pcb_hole_rotated_pill.describe(
|
|
1454
1474
|
"Defines a rotated pill-shaped hole on the PCB"
|
|
@@ -1457,145 +1477,145 @@ expectTypesMatch(true);
|
|
|
1457
1477
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill).or(pcb_hole_circle).or(pcb_hole_rect);
|
|
1458
1478
|
|
|
1459
1479
|
// src/pcb/pcb_plated_hole.ts
|
|
1460
|
-
import { z as
|
|
1461
|
-
var pcb_plated_hole_circle =
|
|
1462
|
-
type:
|
|
1463
|
-
shape:
|
|
1464
|
-
pcb_group_id:
|
|
1465
|
-
subcircuit_id:
|
|
1466
|
-
outer_diameter:
|
|
1467
|
-
hole_diameter:
|
|
1468
|
-
is_covered_with_solder_mask:
|
|
1480
|
+
import { z as z77 } from "zod";
|
|
1481
|
+
var pcb_plated_hole_circle = z77.object({
|
|
1482
|
+
type: z77.literal("pcb_plated_hole"),
|
|
1483
|
+
shape: z77.literal("circle"),
|
|
1484
|
+
pcb_group_id: z77.string().optional(),
|
|
1485
|
+
subcircuit_id: z77.string().optional(),
|
|
1486
|
+
outer_diameter: z77.number(),
|
|
1487
|
+
hole_diameter: z77.number(),
|
|
1488
|
+
is_covered_with_solder_mask: z77.boolean().optional(),
|
|
1469
1489
|
x: distance,
|
|
1470
1490
|
y: distance,
|
|
1471
|
-
layers:
|
|
1472
|
-
port_hints:
|
|
1473
|
-
pcb_component_id:
|
|
1474
|
-
pcb_port_id:
|
|
1491
|
+
layers: z77.array(layer_ref),
|
|
1492
|
+
port_hints: z77.array(z77.string()).optional(),
|
|
1493
|
+
pcb_component_id: z77.string().optional(),
|
|
1494
|
+
pcb_port_id: z77.string().optional(),
|
|
1475
1495
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
|
|
1476
|
-
soldermask_margin:
|
|
1496
|
+
soldermask_margin: z77.number().optional()
|
|
1477
1497
|
});
|
|
1478
|
-
var pcb_plated_hole_oval =
|
|
1479
|
-
type:
|
|
1480
|
-
shape:
|
|
1481
|
-
pcb_group_id:
|
|
1482
|
-
subcircuit_id:
|
|
1483
|
-
outer_width:
|
|
1484
|
-
outer_height:
|
|
1485
|
-
hole_width:
|
|
1486
|
-
hole_height:
|
|
1487
|
-
is_covered_with_solder_mask:
|
|
1498
|
+
var pcb_plated_hole_oval = z77.object({
|
|
1499
|
+
type: z77.literal("pcb_plated_hole"),
|
|
1500
|
+
shape: z77.enum(["oval", "pill"]),
|
|
1501
|
+
pcb_group_id: z77.string().optional(),
|
|
1502
|
+
subcircuit_id: z77.string().optional(),
|
|
1503
|
+
outer_width: z77.number(),
|
|
1504
|
+
outer_height: z77.number(),
|
|
1505
|
+
hole_width: z77.number(),
|
|
1506
|
+
hole_height: z77.number(),
|
|
1507
|
+
is_covered_with_solder_mask: z77.boolean().optional(),
|
|
1488
1508
|
x: distance,
|
|
1489
1509
|
y: distance,
|
|
1490
1510
|
ccw_rotation: rotation,
|
|
1491
|
-
layers:
|
|
1492
|
-
port_hints:
|
|
1493
|
-
pcb_component_id:
|
|
1494
|
-
pcb_port_id:
|
|
1511
|
+
layers: z77.array(layer_ref),
|
|
1512
|
+
port_hints: z77.array(z77.string()).optional(),
|
|
1513
|
+
pcb_component_id: z77.string().optional(),
|
|
1514
|
+
pcb_port_id: z77.string().optional(),
|
|
1495
1515
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
|
|
1496
|
-
soldermask_margin:
|
|
1516
|
+
soldermask_margin: z77.number().optional()
|
|
1497
1517
|
});
|
|
1498
|
-
var pcb_circular_hole_with_rect_pad =
|
|
1499
|
-
type:
|
|
1500
|
-
shape:
|
|
1501
|
-
pcb_group_id:
|
|
1502
|
-
subcircuit_id:
|
|
1503
|
-
hole_shape:
|
|
1504
|
-
pad_shape:
|
|
1505
|
-
hole_diameter:
|
|
1506
|
-
rect_pad_width:
|
|
1507
|
-
rect_pad_height:
|
|
1508
|
-
rect_border_radius:
|
|
1518
|
+
var pcb_circular_hole_with_rect_pad = z77.object({
|
|
1519
|
+
type: z77.literal("pcb_plated_hole"),
|
|
1520
|
+
shape: z77.literal("circular_hole_with_rect_pad"),
|
|
1521
|
+
pcb_group_id: z77.string().optional(),
|
|
1522
|
+
subcircuit_id: z77.string().optional(),
|
|
1523
|
+
hole_shape: z77.literal("circle"),
|
|
1524
|
+
pad_shape: z77.literal("rect"),
|
|
1525
|
+
hole_diameter: z77.number(),
|
|
1526
|
+
rect_pad_width: z77.number(),
|
|
1527
|
+
rect_pad_height: z77.number(),
|
|
1528
|
+
rect_border_radius: z77.number().optional(),
|
|
1509
1529
|
hole_offset_x: distance.default(0),
|
|
1510
1530
|
hole_offset_y: distance.default(0),
|
|
1511
|
-
is_covered_with_solder_mask:
|
|
1531
|
+
is_covered_with_solder_mask: z77.boolean().optional(),
|
|
1512
1532
|
x: distance,
|
|
1513
1533
|
y: distance,
|
|
1514
|
-
layers:
|
|
1515
|
-
port_hints:
|
|
1516
|
-
pcb_component_id:
|
|
1517
|
-
pcb_port_id:
|
|
1534
|
+
layers: z77.array(layer_ref),
|
|
1535
|
+
port_hints: z77.array(z77.string()).optional(),
|
|
1536
|
+
pcb_component_id: z77.string().optional(),
|
|
1537
|
+
pcb_port_id: z77.string().optional(),
|
|
1518
1538
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
|
|
1519
|
-
soldermask_margin:
|
|
1539
|
+
soldermask_margin: z77.number().optional()
|
|
1520
1540
|
});
|
|
1521
|
-
var pcb_pill_hole_with_rect_pad =
|
|
1522
|
-
type:
|
|
1523
|
-
shape:
|
|
1524
|
-
pcb_group_id:
|
|
1525
|
-
subcircuit_id:
|
|
1526
|
-
hole_shape:
|
|
1527
|
-
pad_shape:
|
|
1528
|
-
hole_width:
|
|
1529
|
-
hole_height:
|
|
1530
|
-
rect_pad_width:
|
|
1531
|
-
rect_pad_height:
|
|
1532
|
-
rect_border_radius:
|
|
1541
|
+
var pcb_pill_hole_with_rect_pad = z77.object({
|
|
1542
|
+
type: z77.literal("pcb_plated_hole"),
|
|
1543
|
+
shape: z77.literal("pill_hole_with_rect_pad"),
|
|
1544
|
+
pcb_group_id: z77.string().optional(),
|
|
1545
|
+
subcircuit_id: z77.string().optional(),
|
|
1546
|
+
hole_shape: z77.literal("pill"),
|
|
1547
|
+
pad_shape: z77.literal("rect"),
|
|
1548
|
+
hole_width: z77.number(),
|
|
1549
|
+
hole_height: z77.number(),
|
|
1550
|
+
rect_pad_width: z77.number(),
|
|
1551
|
+
rect_pad_height: z77.number(),
|
|
1552
|
+
rect_border_radius: z77.number().optional(),
|
|
1533
1553
|
hole_offset_x: distance.default(0),
|
|
1534
1554
|
hole_offset_y: distance.default(0),
|
|
1535
|
-
is_covered_with_solder_mask:
|
|
1555
|
+
is_covered_with_solder_mask: z77.boolean().optional(),
|
|
1536
1556
|
x: distance,
|
|
1537
1557
|
y: distance,
|
|
1538
|
-
layers:
|
|
1539
|
-
port_hints:
|
|
1540
|
-
pcb_component_id:
|
|
1541
|
-
pcb_port_id:
|
|
1558
|
+
layers: z77.array(layer_ref),
|
|
1559
|
+
port_hints: z77.array(z77.string()).optional(),
|
|
1560
|
+
pcb_component_id: z77.string().optional(),
|
|
1561
|
+
pcb_port_id: z77.string().optional(),
|
|
1542
1562
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
|
|
1543
|
-
soldermask_margin:
|
|
1563
|
+
soldermask_margin: z77.number().optional()
|
|
1544
1564
|
});
|
|
1545
|
-
var pcb_rotated_pill_hole_with_rect_pad =
|
|
1546
|
-
type:
|
|
1547
|
-
shape:
|
|
1548
|
-
pcb_group_id:
|
|
1549
|
-
subcircuit_id:
|
|
1550
|
-
hole_shape:
|
|
1551
|
-
pad_shape:
|
|
1552
|
-
hole_width:
|
|
1553
|
-
hole_height:
|
|
1565
|
+
var pcb_rotated_pill_hole_with_rect_pad = z77.object({
|
|
1566
|
+
type: z77.literal("pcb_plated_hole"),
|
|
1567
|
+
shape: z77.literal("rotated_pill_hole_with_rect_pad"),
|
|
1568
|
+
pcb_group_id: z77.string().optional(),
|
|
1569
|
+
subcircuit_id: z77.string().optional(),
|
|
1570
|
+
hole_shape: z77.literal("rotated_pill"),
|
|
1571
|
+
pad_shape: z77.literal("rect"),
|
|
1572
|
+
hole_width: z77.number(),
|
|
1573
|
+
hole_height: z77.number(),
|
|
1554
1574
|
hole_ccw_rotation: rotation,
|
|
1555
|
-
rect_pad_width:
|
|
1556
|
-
rect_pad_height:
|
|
1557
|
-
rect_border_radius:
|
|
1575
|
+
rect_pad_width: z77.number(),
|
|
1576
|
+
rect_pad_height: z77.number(),
|
|
1577
|
+
rect_border_radius: z77.number().optional(),
|
|
1558
1578
|
rect_ccw_rotation: rotation,
|
|
1559
1579
|
hole_offset_x: distance.default(0),
|
|
1560
1580
|
hole_offset_y: distance.default(0),
|
|
1561
|
-
is_covered_with_solder_mask:
|
|
1581
|
+
is_covered_with_solder_mask: z77.boolean().optional(),
|
|
1562
1582
|
x: distance,
|
|
1563
1583
|
y: distance,
|
|
1564
|
-
layers:
|
|
1565
|
-
port_hints:
|
|
1566
|
-
pcb_component_id:
|
|
1567
|
-
pcb_port_id:
|
|
1584
|
+
layers: z77.array(layer_ref),
|
|
1585
|
+
port_hints: z77.array(z77.string()).optional(),
|
|
1586
|
+
pcb_component_id: z77.string().optional(),
|
|
1587
|
+
pcb_port_id: z77.string().optional(),
|
|
1568
1588
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
|
|
1569
|
-
soldermask_margin:
|
|
1589
|
+
soldermask_margin: z77.number().optional()
|
|
1570
1590
|
});
|
|
1571
|
-
var pcb_hole_with_polygon_pad =
|
|
1572
|
-
type:
|
|
1573
|
-
shape:
|
|
1574
|
-
pcb_group_id:
|
|
1575
|
-
subcircuit_id:
|
|
1576
|
-
hole_shape:
|
|
1577
|
-
hole_diameter:
|
|
1578
|
-
hole_width:
|
|
1579
|
-
hole_height:
|
|
1580
|
-
pad_outline:
|
|
1581
|
-
|
|
1591
|
+
var pcb_hole_with_polygon_pad = z77.object({
|
|
1592
|
+
type: z77.literal("pcb_plated_hole"),
|
|
1593
|
+
shape: z77.literal("hole_with_polygon_pad"),
|
|
1594
|
+
pcb_group_id: z77.string().optional(),
|
|
1595
|
+
subcircuit_id: z77.string().optional(),
|
|
1596
|
+
hole_shape: z77.enum(["circle", "oval", "pill", "rotated_pill"]),
|
|
1597
|
+
hole_diameter: z77.number().optional(),
|
|
1598
|
+
hole_width: z77.number().optional(),
|
|
1599
|
+
hole_height: z77.number().optional(),
|
|
1600
|
+
pad_outline: z77.array(
|
|
1601
|
+
z77.object({
|
|
1582
1602
|
x: distance,
|
|
1583
1603
|
y: distance
|
|
1584
1604
|
})
|
|
1585
1605
|
).min(3),
|
|
1586
1606
|
hole_offset_x: distance.default(0),
|
|
1587
1607
|
hole_offset_y: distance.default(0),
|
|
1588
|
-
is_covered_with_solder_mask:
|
|
1608
|
+
is_covered_with_solder_mask: z77.boolean().optional(),
|
|
1589
1609
|
x: distance,
|
|
1590
1610
|
y: distance,
|
|
1591
|
-
layers:
|
|
1592
|
-
port_hints:
|
|
1593
|
-
pcb_component_id:
|
|
1594
|
-
pcb_port_id:
|
|
1611
|
+
layers: z77.array(layer_ref),
|
|
1612
|
+
port_hints: z77.array(z77.string()).optional(),
|
|
1613
|
+
pcb_component_id: z77.string().optional(),
|
|
1614
|
+
pcb_port_id: z77.string().optional(),
|
|
1595
1615
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
|
|
1596
|
-
soldermask_margin:
|
|
1616
|
+
soldermask_margin: z77.number().optional()
|
|
1597
1617
|
});
|
|
1598
|
-
var pcb_plated_hole =
|
|
1618
|
+
var pcb_plated_hole = z77.union([
|
|
1599
1619
|
pcb_plated_hole_circle,
|
|
1600
1620
|
pcb_plated_hole_oval,
|
|
1601
1621
|
pcb_circular_hole_with_rect_pad,
|
|
@@ -1613,130 +1633,130 @@ expectTypesMatch(true);
|
|
|
1613
1633
|
expectTypesMatch(true);
|
|
1614
1634
|
|
|
1615
1635
|
// src/pcb/pcb_port.ts
|
|
1616
|
-
import { z as
|
|
1617
|
-
var pcb_port =
|
|
1618
|
-
type:
|
|
1636
|
+
import { z as z78 } from "zod";
|
|
1637
|
+
var pcb_port = z78.object({
|
|
1638
|
+
type: z78.literal("pcb_port"),
|
|
1619
1639
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
1620
|
-
pcb_group_id:
|
|
1621
|
-
subcircuit_id:
|
|
1622
|
-
source_port_id:
|
|
1623
|
-
pcb_component_id:
|
|
1640
|
+
pcb_group_id: z78.string().optional(),
|
|
1641
|
+
subcircuit_id: z78.string().optional(),
|
|
1642
|
+
source_port_id: z78.string(),
|
|
1643
|
+
pcb_component_id: z78.string().optional(),
|
|
1624
1644
|
x: distance,
|
|
1625
1645
|
y: distance,
|
|
1626
|
-
layers:
|
|
1627
|
-
is_board_pinout:
|
|
1646
|
+
layers: z78.array(layer_ref),
|
|
1647
|
+
is_board_pinout: z78.boolean().optional()
|
|
1628
1648
|
}).describe("Defines a port on the PCB");
|
|
1629
1649
|
expectTypesMatch(true);
|
|
1630
1650
|
|
|
1631
1651
|
// src/pcb/pcb_smtpad.ts
|
|
1632
|
-
import { z as
|
|
1633
|
-
var pcb_smtpad_circle =
|
|
1634
|
-
type:
|
|
1635
|
-
shape:
|
|
1652
|
+
import { z as z79 } from "zod";
|
|
1653
|
+
var pcb_smtpad_circle = z79.object({
|
|
1654
|
+
type: z79.literal("pcb_smtpad"),
|
|
1655
|
+
shape: z79.literal("circle"),
|
|
1636
1656
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1637
|
-
pcb_group_id:
|
|
1638
|
-
subcircuit_id:
|
|
1657
|
+
pcb_group_id: z79.string().optional(),
|
|
1658
|
+
subcircuit_id: z79.string().optional(),
|
|
1639
1659
|
x: distance,
|
|
1640
1660
|
y: distance,
|
|
1641
|
-
radius:
|
|
1661
|
+
radius: z79.number(),
|
|
1642
1662
|
layer: layer_ref,
|
|
1643
|
-
port_hints:
|
|
1644
|
-
pcb_component_id:
|
|
1645
|
-
pcb_port_id:
|
|
1646
|
-
is_covered_with_solder_mask:
|
|
1647
|
-
soldermask_margin:
|
|
1663
|
+
port_hints: z79.array(z79.string()).optional(),
|
|
1664
|
+
pcb_component_id: z79.string().optional(),
|
|
1665
|
+
pcb_port_id: z79.string().optional(),
|
|
1666
|
+
is_covered_with_solder_mask: z79.boolean().optional(),
|
|
1667
|
+
soldermask_margin: z79.number().optional()
|
|
1648
1668
|
});
|
|
1649
|
-
var pcb_smtpad_rect =
|
|
1650
|
-
type:
|
|
1651
|
-
shape:
|
|
1669
|
+
var pcb_smtpad_rect = z79.object({
|
|
1670
|
+
type: z79.literal("pcb_smtpad"),
|
|
1671
|
+
shape: z79.literal("rect"),
|
|
1652
1672
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1653
|
-
pcb_group_id:
|
|
1654
|
-
subcircuit_id:
|
|
1673
|
+
pcb_group_id: z79.string().optional(),
|
|
1674
|
+
subcircuit_id: z79.string().optional(),
|
|
1655
1675
|
x: distance,
|
|
1656
1676
|
y: distance,
|
|
1657
|
-
width:
|
|
1658
|
-
height:
|
|
1659
|
-
rect_border_radius:
|
|
1660
|
-
corner_radius:
|
|
1677
|
+
width: z79.number(),
|
|
1678
|
+
height: z79.number(),
|
|
1679
|
+
rect_border_radius: z79.number().optional(),
|
|
1680
|
+
corner_radius: z79.number().optional(),
|
|
1661
1681
|
layer: layer_ref,
|
|
1662
|
-
port_hints:
|
|
1663
|
-
pcb_component_id:
|
|
1664
|
-
pcb_port_id:
|
|
1665
|
-
is_covered_with_solder_mask:
|
|
1666
|
-
soldermask_margin:
|
|
1682
|
+
port_hints: z79.array(z79.string()).optional(),
|
|
1683
|
+
pcb_component_id: z79.string().optional(),
|
|
1684
|
+
pcb_port_id: z79.string().optional(),
|
|
1685
|
+
is_covered_with_solder_mask: z79.boolean().optional(),
|
|
1686
|
+
soldermask_margin: z79.number().optional()
|
|
1667
1687
|
});
|
|
1668
|
-
var pcb_smtpad_rotated_rect =
|
|
1669
|
-
type:
|
|
1670
|
-
shape:
|
|
1688
|
+
var pcb_smtpad_rotated_rect = z79.object({
|
|
1689
|
+
type: z79.literal("pcb_smtpad"),
|
|
1690
|
+
shape: z79.literal("rotated_rect"),
|
|
1671
1691
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1672
|
-
pcb_group_id:
|
|
1673
|
-
subcircuit_id:
|
|
1692
|
+
pcb_group_id: z79.string().optional(),
|
|
1693
|
+
subcircuit_id: z79.string().optional(),
|
|
1674
1694
|
x: distance,
|
|
1675
1695
|
y: distance,
|
|
1676
|
-
width:
|
|
1677
|
-
height:
|
|
1678
|
-
rect_border_radius:
|
|
1679
|
-
corner_radius:
|
|
1696
|
+
width: z79.number(),
|
|
1697
|
+
height: z79.number(),
|
|
1698
|
+
rect_border_radius: z79.number().optional(),
|
|
1699
|
+
corner_radius: z79.number().optional(),
|
|
1680
1700
|
ccw_rotation: rotation,
|
|
1681
1701
|
layer: layer_ref,
|
|
1682
|
-
port_hints:
|
|
1683
|
-
pcb_component_id:
|
|
1684
|
-
pcb_port_id:
|
|
1685
|
-
is_covered_with_solder_mask:
|
|
1686
|
-
soldermask_margin:
|
|
1702
|
+
port_hints: z79.array(z79.string()).optional(),
|
|
1703
|
+
pcb_component_id: z79.string().optional(),
|
|
1704
|
+
pcb_port_id: z79.string().optional(),
|
|
1705
|
+
is_covered_with_solder_mask: z79.boolean().optional(),
|
|
1706
|
+
soldermask_margin: z79.number().optional()
|
|
1687
1707
|
});
|
|
1688
|
-
var pcb_smtpad_pill =
|
|
1689
|
-
type:
|
|
1690
|
-
shape:
|
|
1708
|
+
var pcb_smtpad_pill = z79.object({
|
|
1709
|
+
type: z79.literal("pcb_smtpad"),
|
|
1710
|
+
shape: z79.literal("pill"),
|
|
1691
1711
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1692
|
-
pcb_group_id:
|
|
1693
|
-
subcircuit_id:
|
|
1712
|
+
pcb_group_id: z79.string().optional(),
|
|
1713
|
+
subcircuit_id: z79.string().optional(),
|
|
1694
1714
|
x: distance,
|
|
1695
1715
|
y: distance,
|
|
1696
|
-
width:
|
|
1697
|
-
height:
|
|
1698
|
-
radius:
|
|
1716
|
+
width: z79.number(),
|
|
1717
|
+
height: z79.number(),
|
|
1718
|
+
radius: z79.number(),
|
|
1699
1719
|
layer: layer_ref,
|
|
1700
|
-
port_hints:
|
|
1701
|
-
pcb_component_id:
|
|
1702
|
-
pcb_port_id:
|
|
1703
|
-
is_covered_with_solder_mask:
|
|
1704
|
-
soldermask_margin:
|
|
1720
|
+
port_hints: z79.array(z79.string()).optional(),
|
|
1721
|
+
pcb_component_id: z79.string().optional(),
|
|
1722
|
+
pcb_port_id: z79.string().optional(),
|
|
1723
|
+
is_covered_with_solder_mask: z79.boolean().optional(),
|
|
1724
|
+
soldermask_margin: z79.number().optional()
|
|
1705
1725
|
});
|
|
1706
|
-
var pcb_smtpad_rotated_pill =
|
|
1707
|
-
type:
|
|
1708
|
-
shape:
|
|
1726
|
+
var pcb_smtpad_rotated_pill = z79.object({
|
|
1727
|
+
type: z79.literal("pcb_smtpad"),
|
|
1728
|
+
shape: z79.literal("rotated_pill"),
|
|
1709
1729
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1710
|
-
pcb_group_id:
|
|
1711
|
-
subcircuit_id:
|
|
1730
|
+
pcb_group_id: z79.string().optional(),
|
|
1731
|
+
subcircuit_id: z79.string().optional(),
|
|
1712
1732
|
x: distance,
|
|
1713
1733
|
y: distance,
|
|
1714
|
-
width:
|
|
1715
|
-
height:
|
|
1716
|
-
radius:
|
|
1734
|
+
width: z79.number(),
|
|
1735
|
+
height: z79.number(),
|
|
1736
|
+
radius: z79.number(),
|
|
1717
1737
|
ccw_rotation: rotation,
|
|
1718
1738
|
layer: layer_ref,
|
|
1719
|
-
port_hints:
|
|
1720
|
-
pcb_component_id:
|
|
1721
|
-
pcb_port_id:
|
|
1722
|
-
is_covered_with_solder_mask:
|
|
1723
|
-
soldermask_margin:
|
|
1739
|
+
port_hints: z79.array(z79.string()).optional(),
|
|
1740
|
+
pcb_component_id: z79.string().optional(),
|
|
1741
|
+
pcb_port_id: z79.string().optional(),
|
|
1742
|
+
is_covered_with_solder_mask: z79.boolean().optional(),
|
|
1743
|
+
soldermask_margin: z79.number().optional()
|
|
1724
1744
|
});
|
|
1725
|
-
var pcb_smtpad_polygon =
|
|
1726
|
-
type:
|
|
1727
|
-
shape:
|
|
1745
|
+
var pcb_smtpad_polygon = z79.object({
|
|
1746
|
+
type: z79.literal("pcb_smtpad"),
|
|
1747
|
+
shape: z79.literal("polygon"),
|
|
1728
1748
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1729
|
-
pcb_group_id:
|
|
1730
|
-
subcircuit_id:
|
|
1731
|
-
points:
|
|
1749
|
+
pcb_group_id: z79.string().optional(),
|
|
1750
|
+
subcircuit_id: z79.string().optional(),
|
|
1751
|
+
points: z79.array(point),
|
|
1732
1752
|
layer: layer_ref,
|
|
1733
|
-
port_hints:
|
|
1734
|
-
pcb_component_id:
|
|
1735
|
-
pcb_port_id:
|
|
1736
|
-
is_covered_with_solder_mask:
|
|
1737
|
-
soldermask_margin:
|
|
1753
|
+
port_hints: z79.array(z79.string()).optional(),
|
|
1754
|
+
pcb_component_id: z79.string().optional(),
|
|
1755
|
+
pcb_port_id: z79.string().optional(),
|
|
1756
|
+
is_covered_with_solder_mask: z79.boolean().optional(),
|
|
1757
|
+
soldermask_margin: z79.number().optional()
|
|
1738
1758
|
});
|
|
1739
|
-
var pcb_smtpad =
|
|
1759
|
+
var pcb_smtpad = z79.discriminatedUnion("shape", [
|
|
1740
1760
|
pcb_smtpad_circle,
|
|
1741
1761
|
pcb_smtpad_rect,
|
|
1742
1762
|
pcb_smtpad_rotated_rect,
|
|
@@ -1752,79 +1772,79 @@ expectTypesMatch(true);
|
|
|
1752
1772
|
expectTypesMatch(true);
|
|
1753
1773
|
|
|
1754
1774
|
// src/pcb/pcb_solder_paste.ts
|
|
1755
|
-
import { z as
|
|
1756
|
-
var pcb_solder_paste_circle =
|
|
1757
|
-
type:
|
|
1758
|
-
shape:
|
|
1775
|
+
import { z as z80 } from "zod";
|
|
1776
|
+
var pcb_solder_paste_circle = z80.object({
|
|
1777
|
+
type: z80.literal("pcb_solder_paste"),
|
|
1778
|
+
shape: z80.literal("circle"),
|
|
1759
1779
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1760
|
-
pcb_group_id:
|
|
1761
|
-
subcircuit_id:
|
|
1780
|
+
pcb_group_id: z80.string().optional(),
|
|
1781
|
+
subcircuit_id: z80.string().optional(),
|
|
1762
1782
|
x: distance,
|
|
1763
1783
|
y: distance,
|
|
1764
|
-
radius:
|
|
1784
|
+
radius: z80.number(),
|
|
1765
1785
|
layer: layer_ref,
|
|
1766
|
-
pcb_component_id:
|
|
1767
|
-
pcb_smtpad_id:
|
|
1786
|
+
pcb_component_id: z80.string().optional(),
|
|
1787
|
+
pcb_smtpad_id: z80.string().optional()
|
|
1768
1788
|
});
|
|
1769
|
-
var pcb_solder_paste_rect =
|
|
1770
|
-
type:
|
|
1771
|
-
shape:
|
|
1789
|
+
var pcb_solder_paste_rect = z80.object({
|
|
1790
|
+
type: z80.literal("pcb_solder_paste"),
|
|
1791
|
+
shape: z80.literal("rect"),
|
|
1772
1792
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1773
|
-
pcb_group_id:
|
|
1774
|
-
subcircuit_id:
|
|
1793
|
+
pcb_group_id: z80.string().optional(),
|
|
1794
|
+
subcircuit_id: z80.string().optional(),
|
|
1775
1795
|
x: distance,
|
|
1776
1796
|
y: distance,
|
|
1777
|
-
width:
|
|
1778
|
-
height:
|
|
1797
|
+
width: z80.number(),
|
|
1798
|
+
height: z80.number(),
|
|
1779
1799
|
layer: layer_ref,
|
|
1780
|
-
pcb_component_id:
|
|
1781
|
-
pcb_smtpad_id:
|
|
1800
|
+
pcb_component_id: z80.string().optional(),
|
|
1801
|
+
pcb_smtpad_id: z80.string().optional()
|
|
1782
1802
|
});
|
|
1783
|
-
var pcb_solder_paste_pill =
|
|
1784
|
-
type:
|
|
1785
|
-
shape:
|
|
1803
|
+
var pcb_solder_paste_pill = z80.object({
|
|
1804
|
+
type: z80.literal("pcb_solder_paste"),
|
|
1805
|
+
shape: z80.literal("pill"),
|
|
1786
1806
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1787
|
-
pcb_group_id:
|
|
1788
|
-
subcircuit_id:
|
|
1807
|
+
pcb_group_id: z80.string().optional(),
|
|
1808
|
+
subcircuit_id: z80.string().optional(),
|
|
1789
1809
|
x: distance,
|
|
1790
1810
|
y: distance,
|
|
1791
|
-
width:
|
|
1792
|
-
height:
|
|
1793
|
-
radius:
|
|
1811
|
+
width: z80.number(),
|
|
1812
|
+
height: z80.number(),
|
|
1813
|
+
radius: z80.number(),
|
|
1794
1814
|
layer: layer_ref,
|
|
1795
|
-
pcb_component_id:
|
|
1796
|
-
pcb_smtpad_id:
|
|
1815
|
+
pcb_component_id: z80.string().optional(),
|
|
1816
|
+
pcb_smtpad_id: z80.string().optional()
|
|
1797
1817
|
});
|
|
1798
|
-
var pcb_solder_paste_rotated_rect =
|
|
1799
|
-
type:
|
|
1800
|
-
shape:
|
|
1818
|
+
var pcb_solder_paste_rotated_rect = z80.object({
|
|
1819
|
+
type: z80.literal("pcb_solder_paste"),
|
|
1820
|
+
shape: z80.literal("rotated_rect"),
|
|
1801
1821
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1802
|
-
pcb_group_id:
|
|
1803
|
-
subcircuit_id:
|
|
1822
|
+
pcb_group_id: z80.string().optional(),
|
|
1823
|
+
subcircuit_id: z80.string().optional(),
|
|
1804
1824
|
x: distance,
|
|
1805
1825
|
y: distance,
|
|
1806
|
-
width:
|
|
1807
|
-
height:
|
|
1826
|
+
width: z80.number(),
|
|
1827
|
+
height: z80.number(),
|
|
1808
1828
|
ccw_rotation: distance,
|
|
1809
1829
|
layer: layer_ref,
|
|
1810
|
-
pcb_component_id:
|
|
1811
|
-
pcb_smtpad_id:
|
|
1830
|
+
pcb_component_id: z80.string().optional(),
|
|
1831
|
+
pcb_smtpad_id: z80.string().optional()
|
|
1812
1832
|
});
|
|
1813
|
-
var pcb_solder_paste_oval =
|
|
1814
|
-
type:
|
|
1815
|
-
shape:
|
|
1833
|
+
var pcb_solder_paste_oval = z80.object({
|
|
1834
|
+
type: z80.literal("pcb_solder_paste"),
|
|
1835
|
+
shape: z80.literal("oval"),
|
|
1816
1836
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1817
|
-
pcb_group_id:
|
|
1818
|
-
subcircuit_id:
|
|
1837
|
+
pcb_group_id: z80.string().optional(),
|
|
1838
|
+
subcircuit_id: z80.string().optional(),
|
|
1819
1839
|
x: distance,
|
|
1820
1840
|
y: distance,
|
|
1821
|
-
width:
|
|
1822
|
-
height:
|
|
1841
|
+
width: z80.number(),
|
|
1842
|
+
height: z80.number(),
|
|
1823
1843
|
layer: layer_ref,
|
|
1824
|
-
pcb_component_id:
|
|
1825
|
-
pcb_smtpad_id:
|
|
1844
|
+
pcb_component_id: z80.string().optional(),
|
|
1845
|
+
pcb_smtpad_id: z80.string().optional()
|
|
1826
1846
|
});
|
|
1827
|
-
var pcb_solder_paste =
|
|
1847
|
+
var pcb_solder_paste = z80.union([
|
|
1828
1848
|
pcb_solder_paste_circle,
|
|
1829
1849
|
pcb_solder_paste_rect,
|
|
1830
1850
|
pcb_solder_paste_pill,
|
|
@@ -1840,146 +1860,146 @@ expectTypesMatch(
|
|
|
1840
1860
|
expectTypesMatch(true);
|
|
1841
1861
|
|
|
1842
1862
|
// src/pcb/pcb_text.ts
|
|
1843
|
-
import { z as
|
|
1844
|
-
var pcb_text =
|
|
1845
|
-
type:
|
|
1863
|
+
import { z as z81 } from "zod";
|
|
1864
|
+
var pcb_text = z81.object({
|
|
1865
|
+
type: z81.literal("pcb_text"),
|
|
1846
1866
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1847
|
-
pcb_group_id:
|
|
1848
|
-
subcircuit_id:
|
|
1849
|
-
text:
|
|
1867
|
+
pcb_group_id: z81.string().optional(),
|
|
1868
|
+
subcircuit_id: z81.string().optional(),
|
|
1869
|
+
text: z81.string(),
|
|
1850
1870
|
center: point,
|
|
1851
1871
|
layer: layer_ref,
|
|
1852
1872
|
width: length,
|
|
1853
1873
|
height: length,
|
|
1854
|
-
lines:
|
|
1874
|
+
lines: z81.number(),
|
|
1855
1875
|
// @ts-ignore
|
|
1856
|
-
align:
|
|
1876
|
+
align: z81.enum(["bottom-left"])
|
|
1857
1877
|
}).describe("Defines text on the PCB");
|
|
1858
1878
|
expectTypesMatch(true);
|
|
1859
1879
|
|
|
1860
1880
|
// src/pcb/pcb_trace.ts
|
|
1861
|
-
import { z as
|
|
1862
|
-
var pcb_trace_route_point_wire =
|
|
1863
|
-
route_type:
|
|
1881
|
+
import { z as z82 } from "zod";
|
|
1882
|
+
var pcb_trace_route_point_wire = z82.object({
|
|
1883
|
+
route_type: z82.literal("wire"),
|
|
1864
1884
|
x: distance,
|
|
1865
1885
|
y: distance,
|
|
1866
1886
|
width: distance,
|
|
1867
|
-
start_pcb_port_id:
|
|
1868
|
-
end_pcb_port_id:
|
|
1887
|
+
start_pcb_port_id: z82.string().optional(),
|
|
1888
|
+
end_pcb_port_id: z82.string().optional(),
|
|
1869
1889
|
layer: layer_ref
|
|
1870
1890
|
});
|
|
1871
|
-
var pcb_trace_route_point_via =
|
|
1872
|
-
route_type:
|
|
1891
|
+
var pcb_trace_route_point_via = z82.object({
|
|
1892
|
+
route_type: z82.literal("via"),
|
|
1873
1893
|
x: distance,
|
|
1874
1894
|
y: distance,
|
|
1875
1895
|
hole_diameter: distance.optional(),
|
|
1876
1896
|
outer_diameter: distance.optional(),
|
|
1877
|
-
from_layer:
|
|
1878
|
-
to_layer:
|
|
1897
|
+
from_layer: z82.string(),
|
|
1898
|
+
to_layer: z82.string()
|
|
1879
1899
|
});
|
|
1880
|
-
var pcb_trace_route_point =
|
|
1900
|
+
var pcb_trace_route_point = z82.union([
|
|
1881
1901
|
pcb_trace_route_point_wire,
|
|
1882
1902
|
pcb_trace_route_point_via
|
|
1883
1903
|
]);
|
|
1884
|
-
var pcb_trace =
|
|
1885
|
-
type:
|
|
1886
|
-
source_trace_id:
|
|
1887
|
-
pcb_component_id:
|
|
1904
|
+
var pcb_trace = z82.object({
|
|
1905
|
+
type: z82.literal("pcb_trace"),
|
|
1906
|
+
source_trace_id: z82.string().optional(),
|
|
1907
|
+
pcb_component_id: z82.string().optional(),
|
|
1888
1908
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1889
|
-
pcb_group_id:
|
|
1890
|
-
subcircuit_id:
|
|
1891
|
-
route_thickness_mode:
|
|
1892
|
-
route_order_index:
|
|
1893
|
-
should_round_corners:
|
|
1894
|
-
trace_length:
|
|
1895
|
-
highlight_color:
|
|
1896
|
-
route:
|
|
1909
|
+
pcb_group_id: z82.string().optional(),
|
|
1910
|
+
subcircuit_id: z82.string().optional(),
|
|
1911
|
+
route_thickness_mode: z82.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
1912
|
+
route_order_index: z82.number().optional(),
|
|
1913
|
+
should_round_corners: z82.boolean().optional(),
|
|
1914
|
+
trace_length: z82.number().optional(),
|
|
1915
|
+
highlight_color: z82.string().optional(),
|
|
1916
|
+
route: z82.array(pcb_trace_route_point)
|
|
1897
1917
|
}).describe("Defines a trace on the PCB");
|
|
1898
1918
|
expectTypesMatch(true);
|
|
1899
1919
|
expectTypesMatch(true);
|
|
1900
1920
|
|
|
1901
1921
|
// src/pcb/pcb_trace_error.ts
|
|
1902
|
-
import { z as
|
|
1903
|
-
var pcb_trace_error =
|
|
1904
|
-
type:
|
|
1922
|
+
import { z as z83 } from "zod";
|
|
1923
|
+
var pcb_trace_error = z83.object({
|
|
1924
|
+
type: z83.literal("pcb_trace_error"),
|
|
1905
1925
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1906
|
-
error_type:
|
|
1907
|
-
message:
|
|
1926
|
+
error_type: z83.literal("pcb_trace_error").default("pcb_trace_error"),
|
|
1927
|
+
message: z83.string(),
|
|
1908
1928
|
center: point.optional(),
|
|
1909
|
-
pcb_trace_id:
|
|
1910
|
-
source_trace_id:
|
|
1911
|
-
pcb_component_ids:
|
|
1912
|
-
pcb_port_ids:
|
|
1913
|
-
subcircuit_id:
|
|
1929
|
+
pcb_trace_id: z83.string(),
|
|
1930
|
+
source_trace_id: z83.string(),
|
|
1931
|
+
pcb_component_ids: z83.array(z83.string()),
|
|
1932
|
+
pcb_port_ids: z83.array(z83.string()),
|
|
1933
|
+
subcircuit_id: z83.string().optional()
|
|
1914
1934
|
}).describe("Defines a trace error on the PCB");
|
|
1915
1935
|
expectTypesMatch(true);
|
|
1916
1936
|
|
|
1917
1937
|
// src/pcb/pcb_trace_missing_error.ts
|
|
1918
|
-
import { z as
|
|
1919
|
-
var pcb_trace_missing_error =
|
|
1920
|
-
type:
|
|
1938
|
+
import { z as z84 } from "zod";
|
|
1939
|
+
var pcb_trace_missing_error = z84.object({
|
|
1940
|
+
type: z84.literal("pcb_trace_missing_error"),
|
|
1921
1941
|
pcb_trace_missing_error_id: getZodPrefixedIdWithDefault(
|
|
1922
1942
|
"pcb_trace_missing_error"
|
|
1923
1943
|
),
|
|
1924
|
-
error_type:
|
|
1925
|
-
message:
|
|
1944
|
+
error_type: z84.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
|
|
1945
|
+
message: z84.string(),
|
|
1926
1946
|
center: point.optional(),
|
|
1927
|
-
source_trace_id:
|
|
1928
|
-
pcb_component_ids:
|
|
1929
|
-
pcb_port_ids:
|
|
1930
|
-
subcircuit_id:
|
|
1947
|
+
source_trace_id: z84.string(),
|
|
1948
|
+
pcb_component_ids: z84.array(z84.string()),
|
|
1949
|
+
pcb_port_ids: z84.array(z84.string()),
|
|
1950
|
+
subcircuit_id: z84.string().optional()
|
|
1931
1951
|
}).describe(
|
|
1932
1952
|
"Defines an error when a source trace has no corresponding PCB trace"
|
|
1933
1953
|
);
|
|
1934
1954
|
expectTypesMatch(true);
|
|
1935
1955
|
|
|
1936
1956
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1937
|
-
import { z as
|
|
1938
|
-
var pcb_port_not_matched_error =
|
|
1939
|
-
type:
|
|
1957
|
+
import { z as z85 } from "zod";
|
|
1958
|
+
var pcb_port_not_matched_error = z85.object({
|
|
1959
|
+
type: z85.literal("pcb_port_not_matched_error"),
|
|
1940
1960
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1941
|
-
error_type:
|
|
1942
|
-
message:
|
|
1943
|
-
pcb_component_ids:
|
|
1944
|
-
subcircuit_id:
|
|
1961
|
+
error_type: z85.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
|
|
1962
|
+
message: z85.string(),
|
|
1963
|
+
pcb_component_ids: z85.array(z85.string()),
|
|
1964
|
+
subcircuit_id: z85.string().optional()
|
|
1945
1965
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1946
1966
|
expectTypesMatch(true);
|
|
1947
1967
|
|
|
1948
1968
|
// src/pcb/pcb_port_not_connected_error.ts
|
|
1949
|
-
import { z as
|
|
1950
|
-
var pcb_port_not_connected_error =
|
|
1951
|
-
type:
|
|
1969
|
+
import { z as z86 } from "zod";
|
|
1970
|
+
var pcb_port_not_connected_error = z86.object({
|
|
1971
|
+
type: z86.literal("pcb_port_not_connected_error"),
|
|
1952
1972
|
pcb_port_not_connected_error_id: getZodPrefixedIdWithDefault(
|
|
1953
1973
|
"pcb_port_not_connected_error"
|
|
1954
1974
|
),
|
|
1955
|
-
error_type:
|
|
1956
|
-
message:
|
|
1957
|
-
pcb_port_ids:
|
|
1958
|
-
pcb_component_ids:
|
|
1959
|
-
subcircuit_id:
|
|
1975
|
+
error_type: z86.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
|
|
1976
|
+
message: z86.string(),
|
|
1977
|
+
pcb_port_ids: z86.array(z86.string()),
|
|
1978
|
+
pcb_component_ids: z86.array(z86.string()),
|
|
1979
|
+
subcircuit_id: z86.string().optional()
|
|
1960
1980
|
}).describe("Defines an error when a pcb port is not connected to any trace");
|
|
1961
1981
|
expectTypesMatch(
|
|
1962
1982
|
true
|
|
1963
1983
|
);
|
|
1964
1984
|
|
|
1965
1985
|
// src/pcb/pcb_net.ts
|
|
1966
|
-
import { z as
|
|
1967
|
-
var pcb_net =
|
|
1968
|
-
type:
|
|
1986
|
+
import { z as z87 } from "zod";
|
|
1987
|
+
var pcb_net = z87.object({
|
|
1988
|
+
type: z87.literal("pcb_net"),
|
|
1969
1989
|
pcb_net_id: getZodPrefixedIdWithDefault("pcb_net"),
|
|
1970
|
-
source_net_id:
|
|
1971
|
-
highlight_color:
|
|
1990
|
+
source_net_id: z87.string().optional(),
|
|
1991
|
+
highlight_color: z87.string().optional()
|
|
1972
1992
|
}).describe("Defines a net on the PCB");
|
|
1973
1993
|
expectTypesMatch(true);
|
|
1974
1994
|
|
|
1975
1995
|
// src/pcb/pcb_via.ts
|
|
1976
|
-
import { z as
|
|
1977
|
-
var pcb_via =
|
|
1978
|
-
type:
|
|
1996
|
+
import { z as z88 } from "zod";
|
|
1997
|
+
var pcb_via = z88.object({
|
|
1998
|
+
type: z88.literal("pcb_via"),
|
|
1979
1999
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1980
|
-
pcb_group_id:
|
|
1981
|
-
subcircuit_id:
|
|
1982
|
-
subcircuit_connectivity_map_key:
|
|
2000
|
+
pcb_group_id: z88.string().optional(),
|
|
2001
|
+
subcircuit_id: z88.string().optional(),
|
|
2002
|
+
subcircuit_connectivity_map_key: z88.string().optional(),
|
|
1983
2003
|
x: distance,
|
|
1984
2004
|
y: distance,
|
|
1985
2005
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1988,85 +2008,85 @@ var pcb_via = z87.object({
|
|
|
1988
2008
|
from_layer: layer_ref.optional(),
|
|
1989
2009
|
/** @deprecated */
|
|
1990
2010
|
to_layer: layer_ref.optional(),
|
|
1991
|
-
layers:
|
|
1992
|
-
pcb_trace_id:
|
|
1993
|
-
net_is_assignable:
|
|
1994
|
-
net_assigned:
|
|
1995
|
-
is_tented:
|
|
2011
|
+
layers: z88.array(layer_ref),
|
|
2012
|
+
pcb_trace_id: z88.string().optional(),
|
|
2013
|
+
net_is_assignable: z88.boolean().optional(),
|
|
2014
|
+
net_assigned: z88.boolean().optional(),
|
|
2015
|
+
is_tented: z88.boolean().optional()
|
|
1996
2016
|
}).describe("Defines a via on the PCB");
|
|
1997
2017
|
expectTypesMatch(true);
|
|
1998
2018
|
|
|
1999
2019
|
// src/pcb/pcb_board.ts
|
|
2000
|
-
import { z as
|
|
2001
|
-
var pcb_board =
|
|
2002
|
-
type:
|
|
2020
|
+
import { z as z89 } from "zod";
|
|
2021
|
+
var pcb_board = z89.object({
|
|
2022
|
+
type: z89.literal("pcb_board"),
|
|
2003
2023
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
2004
|
-
pcb_panel_id:
|
|
2005
|
-
is_subcircuit:
|
|
2006
|
-
subcircuit_id:
|
|
2024
|
+
pcb_panel_id: z89.string().optional(),
|
|
2025
|
+
is_subcircuit: z89.boolean().optional(),
|
|
2026
|
+
subcircuit_id: z89.string().optional(),
|
|
2007
2027
|
width: length.optional(),
|
|
2008
2028
|
height: length.optional(),
|
|
2009
2029
|
center: point,
|
|
2010
|
-
display_offset_x:
|
|
2030
|
+
display_offset_x: z89.string().optional().describe(
|
|
2011
2031
|
"How to display the x offset for this board, usually corresponding with how the user specified it"
|
|
2012
2032
|
),
|
|
2013
|
-
display_offset_y:
|
|
2033
|
+
display_offset_y: z89.string().optional().describe(
|
|
2014
2034
|
"How to display the y offset for this board, usually corresponding with how the user specified it"
|
|
2015
2035
|
),
|
|
2016
2036
|
thickness: length.optional().default(1.4),
|
|
2017
|
-
num_layers:
|
|
2018
|
-
outline:
|
|
2019
|
-
shape:
|
|
2020
|
-
material:
|
|
2037
|
+
num_layers: z89.number().optional().default(4),
|
|
2038
|
+
outline: z89.array(point).optional(),
|
|
2039
|
+
shape: z89.enum(["rect", "polygon"]).optional(),
|
|
2040
|
+
material: z89.enum(["fr4", "fr1"]).default("fr4"),
|
|
2021
2041
|
anchor_position: point.optional(),
|
|
2022
2042
|
anchor_alignment: ninePointAnchor.optional(),
|
|
2023
|
-
position_mode:
|
|
2043
|
+
position_mode: z89.enum(["relative_to_panel_anchor", "none"]).optional()
|
|
2024
2044
|
}).describe("Defines the board outline of the PCB");
|
|
2025
2045
|
expectTypesMatch(true);
|
|
2026
2046
|
|
|
2027
2047
|
// src/pcb/pcb_panel.ts
|
|
2028
|
-
import { z as
|
|
2029
|
-
var pcb_panel =
|
|
2030
|
-
type:
|
|
2048
|
+
import { z as z90 } from "zod";
|
|
2049
|
+
var pcb_panel = z90.object({
|
|
2050
|
+
type: z90.literal("pcb_panel"),
|
|
2031
2051
|
pcb_panel_id: getZodPrefixedIdWithDefault("pcb_panel"),
|
|
2032
2052
|
width: length,
|
|
2033
2053
|
height: length,
|
|
2034
2054
|
center: point,
|
|
2035
|
-
covered_with_solder_mask:
|
|
2055
|
+
covered_with_solder_mask: z90.boolean().optional().default(true)
|
|
2036
2056
|
}).describe("Defines a PCB panel that can contain multiple boards");
|
|
2037
2057
|
expectTypesMatch(true);
|
|
2038
2058
|
|
|
2039
2059
|
// src/pcb/pcb_placement_error.ts
|
|
2040
|
-
import { z as
|
|
2041
|
-
var pcb_placement_error =
|
|
2042
|
-
type:
|
|
2060
|
+
import { z as z91 } from "zod";
|
|
2061
|
+
var pcb_placement_error = z91.object({
|
|
2062
|
+
type: z91.literal("pcb_placement_error"),
|
|
2043
2063
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
2044
|
-
error_type:
|
|
2045
|
-
message:
|
|
2046
|
-
subcircuit_id:
|
|
2064
|
+
error_type: z91.literal("pcb_placement_error").default("pcb_placement_error"),
|
|
2065
|
+
message: z91.string(),
|
|
2066
|
+
subcircuit_id: z91.string().optional()
|
|
2047
2067
|
}).describe("Defines a placement error on the PCB");
|
|
2048
2068
|
expectTypesMatch(true);
|
|
2049
2069
|
|
|
2050
2070
|
// src/pcb/pcb_trace_hint.ts
|
|
2051
|
-
import { z as
|
|
2052
|
-
var pcb_trace_hint =
|
|
2053
|
-
type:
|
|
2071
|
+
import { z as z92 } from "zod";
|
|
2072
|
+
var pcb_trace_hint = z92.object({
|
|
2073
|
+
type: z92.literal("pcb_trace_hint"),
|
|
2054
2074
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
2055
|
-
pcb_port_id:
|
|
2056
|
-
pcb_component_id:
|
|
2057
|
-
route:
|
|
2058
|
-
subcircuit_id:
|
|
2075
|
+
pcb_port_id: z92.string(),
|
|
2076
|
+
pcb_component_id: z92.string(),
|
|
2077
|
+
route: z92.array(route_hint_point),
|
|
2078
|
+
subcircuit_id: z92.string().optional()
|
|
2059
2079
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
2060
2080
|
expectTypesMatch(true);
|
|
2061
2081
|
|
|
2062
2082
|
// src/pcb/pcb_silkscreen_line.ts
|
|
2063
|
-
import { z as
|
|
2064
|
-
var pcb_silkscreen_line =
|
|
2065
|
-
type:
|
|
2083
|
+
import { z as z93 } from "zod";
|
|
2084
|
+
var pcb_silkscreen_line = z93.object({
|
|
2085
|
+
type: z93.literal("pcb_silkscreen_line"),
|
|
2066
2086
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
2067
|
-
pcb_component_id:
|
|
2068
|
-
pcb_group_id:
|
|
2069
|
-
subcircuit_id:
|
|
2087
|
+
pcb_component_id: z93.string(),
|
|
2088
|
+
pcb_group_id: z93.string().optional(),
|
|
2089
|
+
subcircuit_id: z93.string().optional(),
|
|
2070
2090
|
stroke_width: distance.default("0.1mm"),
|
|
2071
2091
|
x1: distance,
|
|
2072
2092
|
y1: distance,
|
|
@@ -2077,32 +2097,32 @@ var pcb_silkscreen_line = z92.object({
|
|
|
2077
2097
|
expectTypesMatch(true);
|
|
2078
2098
|
|
|
2079
2099
|
// src/pcb/pcb_silkscreen_path.ts
|
|
2080
|
-
import { z as
|
|
2081
|
-
var pcb_silkscreen_path =
|
|
2082
|
-
type:
|
|
2100
|
+
import { z as z94 } from "zod";
|
|
2101
|
+
var pcb_silkscreen_path = z94.object({
|
|
2102
|
+
type: z94.literal("pcb_silkscreen_path"),
|
|
2083
2103
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
2084
|
-
pcb_component_id:
|
|
2085
|
-
pcb_group_id:
|
|
2086
|
-
subcircuit_id:
|
|
2104
|
+
pcb_component_id: z94.string(),
|
|
2105
|
+
pcb_group_id: z94.string().optional(),
|
|
2106
|
+
subcircuit_id: z94.string().optional(),
|
|
2087
2107
|
layer: visible_layer,
|
|
2088
|
-
route:
|
|
2108
|
+
route: z94.array(point),
|
|
2089
2109
|
stroke_width: length
|
|
2090
2110
|
}).describe("Defines a silkscreen path on the PCB");
|
|
2091
2111
|
expectTypesMatch(true);
|
|
2092
2112
|
|
|
2093
2113
|
// src/pcb/pcb_silkscreen_text.ts
|
|
2094
|
-
import { z as
|
|
2095
|
-
var pcb_silkscreen_text =
|
|
2096
|
-
type:
|
|
2114
|
+
import { z as z95 } from "zod";
|
|
2115
|
+
var pcb_silkscreen_text = z95.object({
|
|
2116
|
+
type: z95.literal("pcb_silkscreen_text"),
|
|
2097
2117
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
2098
|
-
pcb_group_id:
|
|
2099
|
-
subcircuit_id:
|
|
2100
|
-
font:
|
|
2118
|
+
pcb_group_id: z95.string().optional(),
|
|
2119
|
+
subcircuit_id: z95.string().optional(),
|
|
2120
|
+
font: z95.literal("tscircuit2024").default("tscircuit2024"),
|
|
2101
2121
|
font_size: distance.default("0.2mm"),
|
|
2102
|
-
pcb_component_id:
|
|
2103
|
-
text:
|
|
2104
|
-
is_knockout:
|
|
2105
|
-
knockout_padding:
|
|
2122
|
+
pcb_component_id: z95.string(),
|
|
2123
|
+
text: z95.string(),
|
|
2124
|
+
is_knockout: z95.boolean().default(false).optional(),
|
|
2125
|
+
knockout_padding: z95.object({
|
|
2106
2126
|
left: length,
|
|
2107
2127
|
top: length,
|
|
2108
2128
|
bottom: length,
|
|
@@ -2113,27 +2133,27 @@ var pcb_silkscreen_text = z94.object({
|
|
|
2113
2133
|
bottom: "0.2mm",
|
|
2114
2134
|
right: "0.2mm"
|
|
2115
2135
|
}).optional(),
|
|
2116
|
-
ccw_rotation:
|
|
2136
|
+
ccw_rotation: z95.number().optional(),
|
|
2117
2137
|
layer: layer_ref,
|
|
2118
|
-
is_mirrored:
|
|
2138
|
+
is_mirrored: z95.boolean().default(false).optional(),
|
|
2119
2139
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2120
2140
|
anchor_alignment: ninePointAnchor.default("center")
|
|
2121
2141
|
}).describe("Defines silkscreen text on the PCB");
|
|
2122
2142
|
expectTypesMatch(true);
|
|
2123
2143
|
|
|
2124
2144
|
// src/pcb/pcb_copper_text.ts
|
|
2125
|
-
import { z as
|
|
2126
|
-
var pcb_copper_text =
|
|
2127
|
-
type:
|
|
2145
|
+
import { z as z96 } from "zod";
|
|
2146
|
+
var pcb_copper_text = z96.object({
|
|
2147
|
+
type: z96.literal("pcb_copper_text"),
|
|
2128
2148
|
pcb_copper_text_id: getZodPrefixedIdWithDefault("pcb_copper_text"),
|
|
2129
|
-
pcb_group_id:
|
|
2130
|
-
subcircuit_id:
|
|
2131
|
-
font:
|
|
2149
|
+
pcb_group_id: z96.string().optional(),
|
|
2150
|
+
subcircuit_id: z96.string().optional(),
|
|
2151
|
+
font: z96.literal("tscircuit2024").default("tscircuit2024"),
|
|
2132
2152
|
font_size: distance.default("0.2mm"),
|
|
2133
|
-
pcb_component_id:
|
|
2134
|
-
text:
|
|
2135
|
-
is_knockout:
|
|
2136
|
-
knockout_padding:
|
|
2153
|
+
pcb_component_id: z96.string(),
|
|
2154
|
+
text: z96.string(),
|
|
2155
|
+
is_knockout: z96.boolean().default(false).optional(),
|
|
2156
|
+
knockout_padding: z96.object({
|
|
2137
2157
|
left: length,
|
|
2138
2158
|
top: length,
|
|
2139
2159
|
bottom: length,
|
|
@@ -2144,44 +2164,44 @@ var pcb_copper_text = z95.object({
|
|
|
2144
2164
|
bottom: "0.2mm",
|
|
2145
2165
|
right: "0.2mm"
|
|
2146
2166
|
}).optional(),
|
|
2147
|
-
ccw_rotation:
|
|
2167
|
+
ccw_rotation: z96.number().optional(),
|
|
2148
2168
|
layer: layer_ref,
|
|
2149
|
-
is_mirrored:
|
|
2169
|
+
is_mirrored: z96.boolean().default(false).optional(),
|
|
2150
2170
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2151
2171
|
anchor_alignment: ninePointAnchor.default("center")
|
|
2152
2172
|
}).describe("Defines copper text on the PCB");
|
|
2153
2173
|
expectTypesMatch(true);
|
|
2154
2174
|
|
|
2155
2175
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
2156
|
-
import { z as
|
|
2157
|
-
var pcb_silkscreen_rect =
|
|
2158
|
-
type:
|
|
2176
|
+
import { z as z97 } from "zod";
|
|
2177
|
+
var pcb_silkscreen_rect = z97.object({
|
|
2178
|
+
type: z97.literal("pcb_silkscreen_rect"),
|
|
2159
2179
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
2160
|
-
pcb_component_id:
|
|
2161
|
-
pcb_group_id:
|
|
2162
|
-
subcircuit_id:
|
|
2180
|
+
pcb_component_id: z97.string(),
|
|
2181
|
+
pcb_group_id: z97.string().optional(),
|
|
2182
|
+
subcircuit_id: z97.string().optional(),
|
|
2163
2183
|
center: point,
|
|
2164
2184
|
width: length,
|
|
2165
2185
|
height: length,
|
|
2166
2186
|
layer: layer_ref,
|
|
2167
2187
|
stroke_width: length.default("1mm"),
|
|
2168
2188
|
corner_radius: length.optional(),
|
|
2169
|
-
is_filled:
|
|
2170
|
-
has_stroke:
|
|
2171
|
-
is_stroke_dashed:
|
|
2189
|
+
is_filled: z97.boolean().default(true).optional(),
|
|
2190
|
+
has_stroke: z97.boolean().optional(),
|
|
2191
|
+
is_stroke_dashed: z97.boolean().optional()
|
|
2172
2192
|
}).describe("Defines a silkscreen rect on the PCB");
|
|
2173
2193
|
expectTypesMatch(true);
|
|
2174
2194
|
|
|
2175
2195
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
2176
|
-
import { z as
|
|
2177
|
-
var pcb_silkscreen_circle =
|
|
2178
|
-
type:
|
|
2196
|
+
import { z as z98 } from "zod";
|
|
2197
|
+
var pcb_silkscreen_circle = z98.object({
|
|
2198
|
+
type: z98.literal("pcb_silkscreen_circle"),
|
|
2179
2199
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
2180
2200
|
"pcb_silkscreen_circle"
|
|
2181
2201
|
),
|
|
2182
|
-
pcb_component_id:
|
|
2183
|
-
pcb_group_id:
|
|
2184
|
-
subcircuit_id:
|
|
2202
|
+
pcb_component_id: z98.string(),
|
|
2203
|
+
pcb_group_id: z98.string().optional(),
|
|
2204
|
+
subcircuit_id: z98.string().optional(),
|
|
2185
2205
|
center: point,
|
|
2186
2206
|
radius: length,
|
|
2187
2207
|
layer: visible_layer,
|
|
@@ -2190,13 +2210,13 @@ var pcb_silkscreen_circle = z97.object({
|
|
|
2190
2210
|
expectTypesMatch(true);
|
|
2191
2211
|
|
|
2192
2212
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
2193
|
-
import { z as
|
|
2194
|
-
var pcb_silkscreen_oval =
|
|
2195
|
-
type:
|
|
2213
|
+
import { z as z99 } from "zod";
|
|
2214
|
+
var pcb_silkscreen_oval = z99.object({
|
|
2215
|
+
type: z99.literal("pcb_silkscreen_oval"),
|
|
2196
2216
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
2197
|
-
pcb_component_id:
|
|
2198
|
-
pcb_group_id:
|
|
2199
|
-
subcircuit_id:
|
|
2217
|
+
pcb_component_id: z99.string(),
|
|
2218
|
+
pcb_group_id: z99.string().optional(),
|
|
2219
|
+
subcircuit_id: z99.string().optional(),
|
|
2200
2220
|
center: point,
|
|
2201
2221
|
radius_x: distance,
|
|
2202
2222
|
radius_y: distance,
|
|
@@ -2205,13 +2225,13 @@ var pcb_silkscreen_oval = z98.object({
|
|
|
2205
2225
|
expectTypesMatch(true);
|
|
2206
2226
|
|
|
2207
2227
|
// src/pcb/pcb_silkscreen_pill.ts
|
|
2208
|
-
import { z as
|
|
2209
|
-
var pcb_silkscreen_pill =
|
|
2210
|
-
type:
|
|
2228
|
+
import { z as z100 } from "zod";
|
|
2229
|
+
var pcb_silkscreen_pill = z100.object({
|
|
2230
|
+
type: z100.literal("pcb_silkscreen_pill"),
|
|
2211
2231
|
pcb_silkscreen_pill_id: getZodPrefixedIdWithDefault("pcb_silkscreen_pill"),
|
|
2212
|
-
pcb_component_id:
|
|
2213
|
-
pcb_group_id:
|
|
2214
|
-
subcircuit_id:
|
|
2232
|
+
pcb_component_id: z100.string(),
|
|
2233
|
+
pcb_group_id: z100.string().optional(),
|
|
2234
|
+
subcircuit_id: z100.string().optional(),
|
|
2215
2235
|
center: point,
|
|
2216
2236
|
width: length,
|
|
2217
2237
|
height: length,
|
|
@@ -2220,257 +2240,257 @@ var pcb_silkscreen_pill = z99.object({
|
|
|
2220
2240
|
expectTypesMatch(true);
|
|
2221
2241
|
|
|
2222
2242
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
2223
|
-
import { z as
|
|
2224
|
-
var pcb_fabrication_note_text =
|
|
2225
|
-
type:
|
|
2243
|
+
import { z as z101 } from "zod";
|
|
2244
|
+
var pcb_fabrication_note_text = z101.object({
|
|
2245
|
+
type: z101.literal("pcb_fabrication_note_text"),
|
|
2226
2246
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
2227
2247
|
"pcb_fabrication_note_text"
|
|
2228
2248
|
),
|
|
2229
|
-
subcircuit_id:
|
|
2230
|
-
pcb_group_id:
|
|
2231
|
-
font:
|
|
2249
|
+
subcircuit_id: z101.string().optional(),
|
|
2250
|
+
pcb_group_id: z101.string().optional(),
|
|
2251
|
+
font: z101.literal("tscircuit2024").default("tscircuit2024"),
|
|
2232
2252
|
font_size: distance.default("1mm"),
|
|
2233
|
-
pcb_component_id:
|
|
2234
|
-
text:
|
|
2253
|
+
pcb_component_id: z101.string(),
|
|
2254
|
+
text: z101.string(),
|
|
2235
2255
|
layer: visible_layer,
|
|
2236
2256
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2237
|
-
anchor_alignment:
|
|
2238
|
-
color:
|
|
2257
|
+
anchor_alignment: z101.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2258
|
+
color: z101.string().optional()
|
|
2239
2259
|
}).describe(
|
|
2240
2260
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
2241
2261
|
);
|
|
2242
2262
|
expectTypesMatch(true);
|
|
2243
2263
|
|
|
2244
2264
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
2245
|
-
import { z as
|
|
2246
|
-
var pcb_fabrication_note_path =
|
|
2247
|
-
type:
|
|
2265
|
+
import { z as z102 } from "zod";
|
|
2266
|
+
var pcb_fabrication_note_path = z102.object({
|
|
2267
|
+
type: z102.literal("pcb_fabrication_note_path"),
|
|
2248
2268
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
2249
2269
|
"pcb_fabrication_note_path"
|
|
2250
2270
|
),
|
|
2251
|
-
pcb_component_id:
|
|
2252
|
-
subcircuit_id:
|
|
2271
|
+
pcb_component_id: z102.string(),
|
|
2272
|
+
subcircuit_id: z102.string().optional(),
|
|
2253
2273
|
layer: layer_ref,
|
|
2254
|
-
route:
|
|
2274
|
+
route: z102.array(point),
|
|
2255
2275
|
stroke_width: length,
|
|
2256
|
-
color:
|
|
2276
|
+
color: z102.string().optional()
|
|
2257
2277
|
}).describe(
|
|
2258
2278
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
2259
2279
|
);
|
|
2260
2280
|
expectTypesMatch(true);
|
|
2261
2281
|
|
|
2262
2282
|
// src/pcb/pcb_fabrication_note_rect.ts
|
|
2263
|
-
import { z as
|
|
2264
|
-
var pcb_fabrication_note_rect =
|
|
2265
|
-
type:
|
|
2283
|
+
import { z as z103 } from "zod";
|
|
2284
|
+
var pcb_fabrication_note_rect = z103.object({
|
|
2285
|
+
type: z103.literal("pcb_fabrication_note_rect"),
|
|
2266
2286
|
pcb_fabrication_note_rect_id: getZodPrefixedIdWithDefault(
|
|
2267
2287
|
"pcb_fabrication_note_rect"
|
|
2268
2288
|
),
|
|
2269
|
-
pcb_component_id:
|
|
2270
|
-
pcb_group_id:
|
|
2271
|
-
subcircuit_id:
|
|
2289
|
+
pcb_component_id: z103.string(),
|
|
2290
|
+
pcb_group_id: z103.string().optional(),
|
|
2291
|
+
subcircuit_id: z103.string().optional(),
|
|
2272
2292
|
center: point,
|
|
2273
2293
|
width: length,
|
|
2274
2294
|
height: length,
|
|
2275
2295
|
layer: visible_layer,
|
|
2276
2296
|
stroke_width: length.default("0.1mm"),
|
|
2277
2297
|
corner_radius: length.optional(),
|
|
2278
|
-
is_filled:
|
|
2279
|
-
has_stroke:
|
|
2280
|
-
is_stroke_dashed:
|
|
2281
|
-
color:
|
|
2298
|
+
is_filled: z103.boolean().optional(),
|
|
2299
|
+
has_stroke: z103.boolean().optional(),
|
|
2300
|
+
is_stroke_dashed: z103.boolean().optional(),
|
|
2301
|
+
color: z103.string().optional()
|
|
2282
2302
|
}).describe("Defines a fabrication note rectangle on the PCB");
|
|
2283
2303
|
expectTypesMatch(true);
|
|
2284
2304
|
|
|
2285
2305
|
// src/pcb/pcb_fabrication_note_dimension.ts
|
|
2286
|
-
import { z as
|
|
2287
|
-
var pcb_fabrication_note_dimension =
|
|
2288
|
-
type:
|
|
2306
|
+
import { z as z104 } from "zod";
|
|
2307
|
+
var pcb_fabrication_note_dimension = z104.object({
|
|
2308
|
+
type: z104.literal("pcb_fabrication_note_dimension"),
|
|
2289
2309
|
pcb_fabrication_note_dimension_id: getZodPrefixedIdWithDefault(
|
|
2290
2310
|
"pcb_fabrication_note_dimension"
|
|
2291
2311
|
),
|
|
2292
|
-
pcb_component_id:
|
|
2293
|
-
pcb_group_id:
|
|
2294
|
-
subcircuit_id:
|
|
2312
|
+
pcb_component_id: z104.string(),
|
|
2313
|
+
pcb_group_id: z104.string().optional(),
|
|
2314
|
+
subcircuit_id: z104.string().optional(),
|
|
2295
2315
|
layer: visible_layer,
|
|
2296
2316
|
from: point,
|
|
2297
2317
|
to: point,
|
|
2298
|
-
text:
|
|
2299
|
-
text_ccw_rotation:
|
|
2318
|
+
text: z104.string().optional(),
|
|
2319
|
+
text_ccw_rotation: z104.number().optional(),
|
|
2300
2320
|
offset: length.optional(),
|
|
2301
2321
|
offset_distance: length.optional(),
|
|
2302
|
-
offset_direction:
|
|
2303
|
-
x:
|
|
2304
|
-
y:
|
|
2322
|
+
offset_direction: z104.object({
|
|
2323
|
+
x: z104.number(),
|
|
2324
|
+
y: z104.number()
|
|
2305
2325
|
}).optional(),
|
|
2306
|
-
font:
|
|
2326
|
+
font: z104.literal("tscircuit2024").default("tscircuit2024"),
|
|
2307
2327
|
font_size: length.default("1mm"),
|
|
2308
|
-
color:
|
|
2328
|
+
color: z104.string().optional(),
|
|
2309
2329
|
arrow_size: length.default("1mm")
|
|
2310
2330
|
}).describe("Defines a measurement annotation within PCB fabrication notes");
|
|
2311
2331
|
expectTypesMatch(true);
|
|
2312
2332
|
|
|
2313
2333
|
// src/pcb/pcb_note_text.ts
|
|
2314
|
-
import { z as z104 } from "zod";
|
|
2315
|
-
var pcb_note_text = z104.object({
|
|
2316
|
-
type: z104.literal("pcb_note_text"),
|
|
2317
|
-
pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
|
|
2318
|
-
pcb_component_id: z104.string().optional(),
|
|
2319
|
-
pcb_group_id: z104.string().optional(),
|
|
2320
|
-
subcircuit_id: z104.string().optional(),
|
|
2321
|
-
name: z104.string().optional(),
|
|
2322
|
-
font: z104.literal("tscircuit2024").default("tscircuit2024"),
|
|
2323
|
-
font_size: distance.default("1mm"),
|
|
2324
|
-
text: z104.string().optional(),
|
|
2325
|
-
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2326
|
-
anchor_alignment: z104.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2327
|
-
color: z104.string().optional()
|
|
2328
|
-
}).describe("Defines a documentation note in text on the PCB");
|
|
2329
|
-
expectTypesMatch(true);
|
|
2330
|
-
|
|
2331
|
-
// src/pcb/pcb_note_rect.ts
|
|
2332
2334
|
import { z as z105 } from "zod";
|
|
2333
|
-
var
|
|
2334
|
-
type: z105.literal("
|
|
2335
|
-
|
|
2335
|
+
var pcb_note_text = z105.object({
|
|
2336
|
+
type: z105.literal("pcb_note_text"),
|
|
2337
|
+
pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
|
|
2336
2338
|
pcb_component_id: z105.string().optional(),
|
|
2337
2339
|
pcb_group_id: z105.string().optional(),
|
|
2338
2340
|
subcircuit_id: z105.string().optional(),
|
|
2339
2341
|
name: z105.string().optional(),
|
|
2342
|
+
font: z105.literal("tscircuit2024").default("tscircuit2024"),
|
|
2343
|
+
font_size: distance.default("1mm"),
|
|
2340
2344
|
text: z105.string().optional(),
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
|
-
height: length,
|
|
2344
|
-
stroke_width: length.default("0.1mm"),
|
|
2345
|
-
corner_radius: length.optional(),
|
|
2346
|
-
is_filled: z105.boolean().optional(),
|
|
2347
|
-
has_stroke: z105.boolean().optional(),
|
|
2348
|
-
is_stroke_dashed: z105.boolean().optional(),
|
|
2345
|
+
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2346
|
+
anchor_alignment: z105.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2349
2347
|
color: z105.string().optional()
|
|
2350
|
-
}).describe("Defines a
|
|
2348
|
+
}).describe("Defines a documentation note in text on the PCB");
|
|
2351
2349
|
expectTypesMatch(true);
|
|
2352
2350
|
|
|
2353
|
-
// src/pcb/
|
|
2351
|
+
// src/pcb/pcb_note_rect.ts
|
|
2354
2352
|
import { z as z106 } from "zod";
|
|
2355
|
-
var
|
|
2356
|
-
type: z106.literal("
|
|
2357
|
-
|
|
2353
|
+
var pcb_note_rect = z106.object({
|
|
2354
|
+
type: z106.literal("pcb_note_rect"),
|
|
2355
|
+
pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
|
|
2358
2356
|
pcb_component_id: z106.string().optional(),
|
|
2359
2357
|
pcb_group_id: z106.string().optional(),
|
|
2360
2358
|
subcircuit_id: z106.string().optional(),
|
|
2361
2359
|
name: z106.string().optional(),
|
|
2362
2360
|
text: z106.string().optional(),
|
|
2363
|
-
|
|
2361
|
+
center: point,
|
|
2362
|
+
width: length,
|
|
2363
|
+
height: length,
|
|
2364
2364
|
stroke_width: length.default("0.1mm"),
|
|
2365
|
+
corner_radius: length.optional(),
|
|
2366
|
+
is_filled: z106.boolean().optional(),
|
|
2367
|
+
has_stroke: z106.boolean().optional(),
|
|
2368
|
+
is_stroke_dashed: z106.boolean().optional(),
|
|
2365
2369
|
color: z106.string().optional()
|
|
2366
|
-
}).describe("Defines a
|
|
2370
|
+
}).describe("Defines a rectangular documentation note on the PCB");
|
|
2367
2371
|
expectTypesMatch(true);
|
|
2368
2372
|
|
|
2369
|
-
// src/pcb/
|
|
2373
|
+
// src/pcb/pcb_note_path.ts
|
|
2370
2374
|
import { z as z107 } from "zod";
|
|
2371
|
-
var
|
|
2372
|
-
type: z107.literal("
|
|
2373
|
-
|
|
2375
|
+
var pcb_note_path = z107.object({
|
|
2376
|
+
type: z107.literal("pcb_note_path"),
|
|
2377
|
+
pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
|
|
2374
2378
|
pcb_component_id: z107.string().optional(),
|
|
2375
2379
|
pcb_group_id: z107.string().optional(),
|
|
2376
2380
|
subcircuit_id: z107.string().optional(),
|
|
2377
2381
|
name: z107.string().optional(),
|
|
2378
2382
|
text: z107.string().optional(),
|
|
2383
|
+
route: z107.array(point),
|
|
2384
|
+
stroke_width: length.default("0.1mm"),
|
|
2385
|
+
color: z107.string().optional()
|
|
2386
|
+
}).describe("Defines a polyline documentation note on the PCB");
|
|
2387
|
+
expectTypesMatch(true);
|
|
2388
|
+
|
|
2389
|
+
// src/pcb/pcb_note_line.ts
|
|
2390
|
+
import { z as z108 } from "zod";
|
|
2391
|
+
var pcb_note_line = z108.object({
|
|
2392
|
+
type: z108.literal("pcb_note_line"),
|
|
2393
|
+
pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
|
|
2394
|
+
pcb_component_id: z108.string().optional(),
|
|
2395
|
+
pcb_group_id: z108.string().optional(),
|
|
2396
|
+
subcircuit_id: z108.string().optional(),
|
|
2397
|
+
name: z108.string().optional(),
|
|
2398
|
+
text: z108.string().optional(),
|
|
2379
2399
|
x1: distance,
|
|
2380
2400
|
y1: distance,
|
|
2381
2401
|
x2: distance,
|
|
2382
2402
|
y2: distance,
|
|
2383
2403
|
stroke_width: distance.default("0.1mm"),
|
|
2384
|
-
color:
|
|
2385
|
-
is_dashed:
|
|
2404
|
+
color: z108.string().optional(),
|
|
2405
|
+
is_dashed: z108.boolean().optional()
|
|
2386
2406
|
}).describe("Defines a straight documentation note line on the PCB");
|
|
2387
2407
|
expectTypesMatch(true);
|
|
2388
2408
|
|
|
2389
2409
|
// src/pcb/pcb_note_dimension.ts
|
|
2390
|
-
import { z as
|
|
2391
|
-
var pcb_note_dimension =
|
|
2392
|
-
type:
|
|
2410
|
+
import { z as z109 } from "zod";
|
|
2411
|
+
var pcb_note_dimension = z109.object({
|
|
2412
|
+
type: z109.literal("pcb_note_dimension"),
|
|
2393
2413
|
pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
|
|
2394
|
-
pcb_component_id:
|
|
2395
|
-
pcb_group_id:
|
|
2396
|
-
subcircuit_id:
|
|
2397
|
-
name:
|
|
2414
|
+
pcb_component_id: z109.string().optional(),
|
|
2415
|
+
pcb_group_id: z109.string().optional(),
|
|
2416
|
+
subcircuit_id: z109.string().optional(),
|
|
2417
|
+
name: z109.string().optional(),
|
|
2398
2418
|
from: point,
|
|
2399
2419
|
to: point,
|
|
2400
|
-
text:
|
|
2401
|
-
text_ccw_rotation:
|
|
2420
|
+
text: z109.string().optional(),
|
|
2421
|
+
text_ccw_rotation: z109.number().optional(),
|
|
2402
2422
|
offset_distance: length.optional(),
|
|
2403
|
-
offset_direction:
|
|
2404
|
-
x:
|
|
2405
|
-
y:
|
|
2423
|
+
offset_direction: z109.object({
|
|
2424
|
+
x: z109.number(),
|
|
2425
|
+
y: z109.number()
|
|
2406
2426
|
}).optional(),
|
|
2407
|
-
font:
|
|
2427
|
+
font: z109.literal("tscircuit2024").default("tscircuit2024"),
|
|
2408
2428
|
font_size: length.default("1mm"),
|
|
2409
|
-
color:
|
|
2429
|
+
color: z109.string().optional(),
|
|
2410
2430
|
arrow_size: length.default("1mm")
|
|
2411
2431
|
}).describe("Defines a measurement annotation within PCB documentation notes");
|
|
2412
2432
|
expectTypesMatch(true);
|
|
2413
2433
|
|
|
2414
2434
|
// src/pcb/pcb_footprint_overlap_error.ts
|
|
2415
|
-
import { z as
|
|
2416
|
-
var pcb_footprint_overlap_error =
|
|
2417
|
-
type:
|
|
2435
|
+
import { z as z110 } from "zod";
|
|
2436
|
+
var pcb_footprint_overlap_error = z110.object({
|
|
2437
|
+
type: z110.literal("pcb_footprint_overlap_error"),
|
|
2418
2438
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
2419
|
-
error_type:
|
|
2420
|
-
message:
|
|
2421
|
-
pcb_smtpad_ids:
|
|
2422
|
-
pcb_plated_hole_ids:
|
|
2423
|
-
pcb_hole_ids:
|
|
2424
|
-
pcb_keepout_ids:
|
|
2439
|
+
error_type: z110.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
|
|
2440
|
+
message: z110.string(),
|
|
2441
|
+
pcb_smtpad_ids: z110.array(z110.string()).optional(),
|
|
2442
|
+
pcb_plated_hole_ids: z110.array(z110.string()).optional(),
|
|
2443
|
+
pcb_hole_ids: z110.array(z110.string()).optional(),
|
|
2444
|
+
pcb_keepout_ids: z110.array(z110.string()).optional()
|
|
2425
2445
|
}).describe("Error emitted when a pcb footprint overlaps with another element");
|
|
2426
2446
|
expectTypesMatch(
|
|
2427
2447
|
true
|
|
2428
2448
|
);
|
|
2429
2449
|
|
|
2430
2450
|
// src/pcb/pcb_keepout.ts
|
|
2431
|
-
import { z as
|
|
2432
|
-
var pcb_keepout =
|
|
2433
|
-
type:
|
|
2434
|
-
shape:
|
|
2435
|
-
pcb_group_id:
|
|
2436
|
-
subcircuit_id:
|
|
2451
|
+
import { z as z111 } from "zod";
|
|
2452
|
+
var pcb_keepout = z111.object({
|
|
2453
|
+
type: z111.literal("pcb_keepout"),
|
|
2454
|
+
shape: z111.literal("rect"),
|
|
2455
|
+
pcb_group_id: z111.string().optional(),
|
|
2456
|
+
subcircuit_id: z111.string().optional(),
|
|
2437
2457
|
center: point,
|
|
2438
2458
|
width: distance,
|
|
2439
2459
|
height: distance,
|
|
2440
|
-
pcb_keepout_id:
|
|
2441
|
-
layers:
|
|
2460
|
+
pcb_keepout_id: z111.string(),
|
|
2461
|
+
layers: z111.array(z111.string()),
|
|
2442
2462
|
// Specify layers where the keepout applies
|
|
2443
|
-
description:
|
|
2463
|
+
description: z111.string().optional()
|
|
2444
2464
|
// Optional description of the keepout
|
|
2445
2465
|
}).or(
|
|
2446
|
-
|
|
2447
|
-
type:
|
|
2448
|
-
shape:
|
|
2449
|
-
pcb_group_id:
|
|
2450
|
-
subcircuit_id:
|
|
2466
|
+
z111.object({
|
|
2467
|
+
type: z111.literal("pcb_keepout"),
|
|
2468
|
+
shape: z111.literal("circle"),
|
|
2469
|
+
pcb_group_id: z111.string().optional(),
|
|
2470
|
+
subcircuit_id: z111.string().optional(),
|
|
2451
2471
|
center: point,
|
|
2452
2472
|
radius: distance,
|
|
2453
|
-
pcb_keepout_id:
|
|
2454
|
-
layers:
|
|
2473
|
+
pcb_keepout_id: z111.string(),
|
|
2474
|
+
layers: z111.array(z111.string()),
|
|
2455
2475
|
// Specify layers where the keepout applies
|
|
2456
|
-
description:
|
|
2476
|
+
description: z111.string().optional()
|
|
2457
2477
|
// Optional description of the keepout
|
|
2458
2478
|
})
|
|
2459
2479
|
);
|
|
2460
2480
|
expectTypesMatch(true);
|
|
2461
2481
|
|
|
2462
2482
|
// src/pcb/pcb_cutout.ts
|
|
2463
|
-
import { z as
|
|
2464
|
-
var pcb_cutout_base =
|
|
2465
|
-
type:
|
|
2483
|
+
import { z as z112 } from "zod";
|
|
2484
|
+
var pcb_cutout_base = z112.object({
|
|
2485
|
+
type: z112.literal("pcb_cutout"),
|
|
2466
2486
|
pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
|
|
2467
|
-
pcb_group_id:
|
|
2468
|
-
subcircuit_id:
|
|
2469
|
-
pcb_board_id:
|
|
2470
|
-
pcb_panel_id:
|
|
2487
|
+
pcb_group_id: z112.string().optional(),
|
|
2488
|
+
subcircuit_id: z112.string().optional(),
|
|
2489
|
+
pcb_board_id: z112.string().optional(),
|
|
2490
|
+
pcb_panel_id: z112.string().optional()
|
|
2471
2491
|
});
|
|
2472
2492
|
var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
2473
|
-
shape:
|
|
2493
|
+
shape: z112.literal("rect"),
|
|
2474
2494
|
center: point,
|
|
2475
2495
|
width: length,
|
|
2476
2496
|
height: length,
|
|
@@ -2479,26 +2499,26 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
|
2479
2499
|
});
|
|
2480
2500
|
expectTypesMatch(true);
|
|
2481
2501
|
var pcb_cutout_circle = pcb_cutout_base.extend({
|
|
2482
|
-
shape:
|
|
2502
|
+
shape: z112.literal("circle"),
|
|
2483
2503
|
center: point,
|
|
2484
2504
|
radius: length
|
|
2485
2505
|
});
|
|
2486
2506
|
expectTypesMatch(true);
|
|
2487
2507
|
var pcb_cutout_polygon = pcb_cutout_base.extend({
|
|
2488
|
-
shape:
|
|
2489
|
-
points:
|
|
2508
|
+
shape: z112.literal("polygon"),
|
|
2509
|
+
points: z112.array(point)
|
|
2490
2510
|
});
|
|
2491
2511
|
expectTypesMatch(true);
|
|
2492
2512
|
var pcb_cutout_path = pcb_cutout_base.extend({
|
|
2493
|
-
shape:
|
|
2494
|
-
route:
|
|
2513
|
+
shape: z112.literal("path"),
|
|
2514
|
+
route: z112.array(point),
|
|
2495
2515
|
slot_width: length,
|
|
2496
2516
|
slot_length: length.optional(),
|
|
2497
2517
|
space_between_slots: length.optional(),
|
|
2498
2518
|
slot_corner_radius: length.optional()
|
|
2499
2519
|
});
|
|
2500
2520
|
expectTypesMatch(true);
|
|
2501
|
-
var pcb_cutout =
|
|
2521
|
+
var pcb_cutout = z112.discriminatedUnion("shape", [
|
|
2502
2522
|
pcb_cutout_rect,
|
|
2503
2523
|
pcb_cutout_circle,
|
|
2504
2524
|
pcb_cutout_polygon,
|
|
@@ -2507,130 +2527,130 @@ var pcb_cutout = z111.discriminatedUnion("shape", [
|
|
|
2507
2527
|
expectTypesMatch(true);
|
|
2508
2528
|
|
|
2509
2529
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
2510
|
-
import { z as
|
|
2511
|
-
var pcb_missing_footprint_error =
|
|
2512
|
-
type:
|
|
2530
|
+
import { z as z113 } from "zod";
|
|
2531
|
+
var pcb_missing_footprint_error = z113.object({
|
|
2532
|
+
type: z113.literal("pcb_missing_footprint_error"),
|
|
2513
2533
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
2514
2534
|
"pcb_missing_footprint_error"
|
|
2515
2535
|
),
|
|
2516
|
-
pcb_group_id:
|
|
2517
|
-
subcircuit_id:
|
|
2518
|
-
error_type:
|
|
2519
|
-
source_component_id:
|
|
2520
|
-
message:
|
|
2536
|
+
pcb_group_id: z113.string().optional(),
|
|
2537
|
+
subcircuit_id: z113.string().optional(),
|
|
2538
|
+
error_type: z113.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
|
|
2539
|
+
source_component_id: z113.string(),
|
|
2540
|
+
message: z113.string()
|
|
2521
2541
|
}).describe("Defines a missing footprint error on the PCB");
|
|
2522
2542
|
expectTypesMatch(
|
|
2523
2543
|
true
|
|
2524
2544
|
);
|
|
2525
2545
|
|
|
2526
2546
|
// src/pcb/external_footprint_load_error.ts
|
|
2527
|
-
import { z as
|
|
2528
|
-
var external_footprint_load_error =
|
|
2529
|
-
type:
|
|
2547
|
+
import { z as z114 } from "zod";
|
|
2548
|
+
var external_footprint_load_error = z114.object({
|
|
2549
|
+
type: z114.literal("external_footprint_load_error"),
|
|
2530
2550
|
external_footprint_load_error_id: getZodPrefixedIdWithDefault(
|
|
2531
2551
|
"external_footprint_load_error"
|
|
2532
2552
|
),
|
|
2533
|
-
pcb_component_id:
|
|
2534
|
-
source_component_id:
|
|
2535
|
-
pcb_group_id:
|
|
2536
|
-
subcircuit_id:
|
|
2537
|
-
footprinter_string:
|
|
2538
|
-
error_type:
|
|
2539
|
-
message:
|
|
2553
|
+
pcb_component_id: z114.string(),
|
|
2554
|
+
source_component_id: z114.string(),
|
|
2555
|
+
pcb_group_id: z114.string().optional(),
|
|
2556
|
+
subcircuit_id: z114.string().optional(),
|
|
2557
|
+
footprinter_string: z114.string().optional(),
|
|
2558
|
+
error_type: z114.literal("external_footprint_load_error").default("external_footprint_load_error"),
|
|
2559
|
+
message: z114.string()
|
|
2540
2560
|
}).describe("Defines an error when an external footprint fails to load");
|
|
2541
2561
|
expectTypesMatch(true);
|
|
2542
2562
|
|
|
2543
2563
|
// src/pcb/circuit_json_footprint_load_error.ts
|
|
2544
|
-
import { z as
|
|
2545
|
-
var circuit_json_footprint_load_error =
|
|
2546
|
-
type:
|
|
2564
|
+
import { z as z115 } from "zod";
|
|
2565
|
+
var circuit_json_footprint_load_error = z115.object({
|
|
2566
|
+
type: z115.literal("circuit_json_footprint_load_error"),
|
|
2547
2567
|
circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
|
|
2548
2568
|
"circuit_json_footprint_load_error"
|
|
2549
2569
|
),
|
|
2550
|
-
pcb_component_id:
|
|
2551
|
-
source_component_id:
|
|
2552
|
-
pcb_group_id:
|
|
2553
|
-
subcircuit_id:
|
|
2554
|
-
error_type:
|
|
2555
|
-
message:
|
|
2556
|
-
circuit_json:
|
|
2570
|
+
pcb_component_id: z115.string(),
|
|
2571
|
+
source_component_id: z115.string(),
|
|
2572
|
+
pcb_group_id: z115.string().optional(),
|
|
2573
|
+
subcircuit_id: z115.string().optional(),
|
|
2574
|
+
error_type: z115.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
|
|
2575
|
+
message: z115.string(),
|
|
2576
|
+
circuit_json: z115.array(z115.any()).optional()
|
|
2557
2577
|
}).describe("Defines an error when a circuit JSON footprint fails to load");
|
|
2558
2578
|
expectTypesMatch(true);
|
|
2559
2579
|
|
|
2560
2580
|
// src/pcb/pcb_group.ts
|
|
2561
|
-
import { z as
|
|
2562
|
-
var pcb_group =
|
|
2563
|
-
type:
|
|
2581
|
+
import { z as z116 } from "zod";
|
|
2582
|
+
var pcb_group = z116.object({
|
|
2583
|
+
type: z116.literal("pcb_group"),
|
|
2564
2584
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
2565
|
-
source_group_id:
|
|
2566
|
-
is_subcircuit:
|
|
2567
|
-
subcircuit_id:
|
|
2585
|
+
source_group_id: z116.string(),
|
|
2586
|
+
is_subcircuit: z116.boolean().optional(),
|
|
2587
|
+
subcircuit_id: z116.string().optional(),
|
|
2568
2588
|
width: length.optional(),
|
|
2569
2589
|
height: length.optional(),
|
|
2570
2590
|
center: point,
|
|
2571
|
-
display_offset_x:
|
|
2591
|
+
display_offset_x: z116.string().optional().describe(
|
|
2572
2592
|
"How to display the x offset for this group, usually corresponding with how the user specified it"
|
|
2573
2593
|
),
|
|
2574
|
-
display_offset_y:
|
|
2594
|
+
display_offset_y: z116.string().optional().describe(
|
|
2575
2595
|
"How to display the y offset for this group, usually corresponding with how the user specified it"
|
|
2576
2596
|
),
|
|
2577
|
-
outline:
|
|
2597
|
+
outline: z116.array(point).optional(),
|
|
2578
2598
|
anchor_position: point.optional(),
|
|
2579
2599
|
anchor_alignment: ninePointAnchor.default("center"),
|
|
2580
|
-
position_mode:
|
|
2581
|
-
positioned_relative_to_pcb_group_id:
|
|
2582
|
-
positioned_relative_to_pcb_board_id:
|
|
2583
|
-
pcb_component_ids:
|
|
2584
|
-
child_layout_mode:
|
|
2585
|
-
name:
|
|
2586
|
-
description:
|
|
2587
|
-
layout_mode:
|
|
2588
|
-
autorouter_configuration:
|
|
2600
|
+
position_mode: z116.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
|
|
2601
|
+
positioned_relative_to_pcb_group_id: z116.string().optional(),
|
|
2602
|
+
positioned_relative_to_pcb_board_id: z116.string().optional(),
|
|
2603
|
+
pcb_component_ids: z116.array(z116.string()),
|
|
2604
|
+
child_layout_mode: z116.enum(["packed", "none"]).optional(),
|
|
2605
|
+
name: z116.string().optional(),
|
|
2606
|
+
description: z116.string().optional(),
|
|
2607
|
+
layout_mode: z116.string().optional(),
|
|
2608
|
+
autorouter_configuration: z116.object({
|
|
2589
2609
|
trace_clearance: length
|
|
2590
2610
|
}).optional(),
|
|
2591
|
-
autorouter_used_string:
|
|
2611
|
+
autorouter_used_string: z116.string().optional()
|
|
2592
2612
|
}).describe("Defines a group of components on the PCB");
|
|
2593
2613
|
expectTypesMatch(true);
|
|
2594
2614
|
|
|
2595
2615
|
// src/pcb/pcb_autorouting_error.ts
|
|
2596
|
-
import { z as
|
|
2597
|
-
var pcb_autorouting_error =
|
|
2598
|
-
type:
|
|
2616
|
+
import { z as z117 } from "zod";
|
|
2617
|
+
var pcb_autorouting_error = z117.object({
|
|
2618
|
+
type: z117.literal("pcb_autorouting_error"),
|
|
2599
2619
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
2600
|
-
error_type:
|
|
2601
|
-
message:
|
|
2602
|
-
subcircuit_id:
|
|
2620
|
+
error_type: z117.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
|
|
2621
|
+
message: z117.string(),
|
|
2622
|
+
subcircuit_id: z117.string().optional()
|
|
2603
2623
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
2604
2624
|
expectTypesMatch(true);
|
|
2605
2625
|
|
|
2606
2626
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
2607
|
-
import { z as
|
|
2608
|
-
var pcb_manual_edit_conflict_warning =
|
|
2609
|
-
type:
|
|
2627
|
+
import { z as z118 } from "zod";
|
|
2628
|
+
var pcb_manual_edit_conflict_warning = z118.object({
|
|
2629
|
+
type: z118.literal("pcb_manual_edit_conflict_warning"),
|
|
2610
2630
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
2611
2631
|
"pcb_manual_edit_conflict_warning"
|
|
2612
2632
|
),
|
|
2613
|
-
warning_type:
|
|
2614
|
-
message:
|
|
2615
|
-
pcb_component_id:
|
|
2616
|
-
pcb_group_id:
|
|
2617
|
-
subcircuit_id:
|
|
2618
|
-
source_component_id:
|
|
2633
|
+
warning_type: z118.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
|
|
2634
|
+
message: z118.string(),
|
|
2635
|
+
pcb_component_id: z118.string(),
|
|
2636
|
+
pcb_group_id: z118.string().optional(),
|
|
2637
|
+
subcircuit_id: z118.string().optional(),
|
|
2638
|
+
source_component_id: z118.string()
|
|
2619
2639
|
}).describe(
|
|
2620
2640
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
2621
2641
|
);
|
|
2622
2642
|
expectTypesMatch(true);
|
|
2623
2643
|
|
|
2624
2644
|
// src/pcb/pcb_breakout_point.ts
|
|
2625
|
-
import { z as
|
|
2626
|
-
var pcb_breakout_point =
|
|
2627
|
-
type:
|
|
2645
|
+
import { z as z119 } from "zod";
|
|
2646
|
+
var pcb_breakout_point = z119.object({
|
|
2647
|
+
type: z119.literal("pcb_breakout_point"),
|
|
2628
2648
|
pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
|
|
2629
|
-
pcb_group_id:
|
|
2630
|
-
subcircuit_id:
|
|
2631
|
-
source_trace_id:
|
|
2632
|
-
source_port_id:
|
|
2633
|
-
source_net_id:
|
|
2649
|
+
pcb_group_id: z119.string(),
|
|
2650
|
+
subcircuit_id: z119.string().optional(),
|
|
2651
|
+
source_trace_id: z119.string().optional(),
|
|
2652
|
+
source_port_id: z119.string().optional(),
|
|
2653
|
+
source_net_id: z119.string().optional(),
|
|
2634
2654
|
x: distance,
|
|
2635
2655
|
y: distance
|
|
2636
2656
|
}).describe(
|
|
@@ -2639,61 +2659,61 @@ var pcb_breakout_point = z118.object({
|
|
|
2639
2659
|
expectTypesMatch(true);
|
|
2640
2660
|
|
|
2641
2661
|
// src/pcb/pcb_ground_plane.ts
|
|
2642
|
-
import { z as
|
|
2643
|
-
var pcb_ground_plane =
|
|
2644
|
-
type:
|
|
2662
|
+
import { z as z120 } from "zod";
|
|
2663
|
+
var pcb_ground_plane = z120.object({
|
|
2664
|
+
type: z120.literal("pcb_ground_plane"),
|
|
2645
2665
|
pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
|
|
2646
|
-
source_pcb_ground_plane_id:
|
|
2647
|
-
source_net_id:
|
|
2648
|
-
pcb_group_id:
|
|
2649
|
-
subcircuit_id:
|
|
2666
|
+
source_pcb_ground_plane_id: z120.string(),
|
|
2667
|
+
source_net_id: z120.string(),
|
|
2668
|
+
pcb_group_id: z120.string().optional(),
|
|
2669
|
+
subcircuit_id: z120.string().optional()
|
|
2650
2670
|
}).describe("Defines a ground plane on the PCB");
|
|
2651
2671
|
expectTypesMatch(true);
|
|
2652
2672
|
|
|
2653
2673
|
// src/pcb/pcb_ground_plane_region.ts
|
|
2654
|
-
import { z as
|
|
2655
|
-
var pcb_ground_plane_region =
|
|
2656
|
-
type:
|
|
2674
|
+
import { z as z121 } from "zod";
|
|
2675
|
+
var pcb_ground_plane_region = z121.object({
|
|
2676
|
+
type: z121.literal("pcb_ground_plane_region"),
|
|
2657
2677
|
pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
|
|
2658
2678
|
"pcb_ground_plane_region"
|
|
2659
2679
|
),
|
|
2660
|
-
pcb_ground_plane_id:
|
|
2661
|
-
pcb_group_id:
|
|
2662
|
-
subcircuit_id:
|
|
2680
|
+
pcb_ground_plane_id: z121.string(),
|
|
2681
|
+
pcb_group_id: z121.string().optional(),
|
|
2682
|
+
subcircuit_id: z121.string().optional(),
|
|
2663
2683
|
layer: layer_ref,
|
|
2664
|
-
points:
|
|
2684
|
+
points: z121.array(point)
|
|
2665
2685
|
}).describe("Defines a polygon region of a ground plane");
|
|
2666
2686
|
expectTypesMatch(true);
|
|
2667
2687
|
|
|
2668
2688
|
// src/pcb/pcb_thermal_spoke.ts
|
|
2669
|
-
import { z as
|
|
2670
|
-
var pcb_thermal_spoke =
|
|
2671
|
-
type:
|
|
2689
|
+
import { z as z122 } from "zod";
|
|
2690
|
+
var pcb_thermal_spoke = z122.object({
|
|
2691
|
+
type: z122.literal("pcb_thermal_spoke"),
|
|
2672
2692
|
pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
|
|
2673
|
-
pcb_ground_plane_id:
|
|
2674
|
-
shape:
|
|
2675
|
-
spoke_count:
|
|
2693
|
+
pcb_ground_plane_id: z122.string(),
|
|
2694
|
+
shape: z122.string(),
|
|
2695
|
+
spoke_count: z122.number(),
|
|
2676
2696
|
spoke_thickness: distance,
|
|
2677
2697
|
spoke_inner_diameter: distance,
|
|
2678
2698
|
spoke_outer_diameter: distance,
|
|
2679
|
-
pcb_plated_hole_id:
|
|
2680
|
-
subcircuit_id:
|
|
2699
|
+
pcb_plated_hole_id: z122.string().optional(),
|
|
2700
|
+
subcircuit_id: z122.string().optional()
|
|
2681
2701
|
}).describe("Pattern for connecting a ground plane to a plated hole");
|
|
2682
2702
|
expectTypesMatch(true);
|
|
2683
2703
|
|
|
2684
2704
|
// src/pcb/pcb_copper_pour.ts
|
|
2685
|
-
import { z as
|
|
2686
|
-
var pcb_copper_pour_base =
|
|
2687
|
-
type:
|
|
2705
|
+
import { z as z123 } from "zod";
|
|
2706
|
+
var pcb_copper_pour_base = z123.object({
|
|
2707
|
+
type: z123.literal("pcb_copper_pour"),
|
|
2688
2708
|
pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
|
|
2689
|
-
pcb_group_id:
|
|
2690
|
-
subcircuit_id:
|
|
2709
|
+
pcb_group_id: z123.string().optional(),
|
|
2710
|
+
subcircuit_id: z123.string().optional(),
|
|
2691
2711
|
layer: layer_ref,
|
|
2692
|
-
source_net_id:
|
|
2693
|
-
covered_with_solder_mask:
|
|
2712
|
+
source_net_id: z123.string().optional(),
|
|
2713
|
+
covered_with_solder_mask: z123.boolean().optional().default(true)
|
|
2694
2714
|
});
|
|
2695
2715
|
var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
2696
|
-
shape:
|
|
2716
|
+
shape: z123.literal("rect"),
|
|
2697
2717
|
center: point,
|
|
2698
2718
|
width: length,
|
|
2699
2719
|
height: length,
|
|
@@ -2701,16 +2721,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
|
2701
2721
|
});
|
|
2702
2722
|
expectTypesMatch(true);
|
|
2703
2723
|
var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
|
|
2704
|
-
shape:
|
|
2724
|
+
shape: z123.literal("brep"),
|
|
2705
2725
|
brep_shape
|
|
2706
2726
|
});
|
|
2707
2727
|
expectTypesMatch(true);
|
|
2708
2728
|
var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
|
|
2709
|
-
shape:
|
|
2710
|
-
points:
|
|
2729
|
+
shape: z123.literal("polygon"),
|
|
2730
|
+
points: z123.array(point)
|
|
2711
2731
|
});
|
|
2712
2732
|
expectTypesMatch(true);
|
|
2713
|
-
var pcb_copper_pour =
|
|
2733
|
+
var pcb_copper_pour = z123.discriminatedUnion("shape", [
|
|
2714
2734
|
pcb_copper_pour_rect,
|
|
2715
2735
|
pcb_copper_pour_brep,
|
|
2716
2736
|
pcb_copper_pour_polygon
|
|
@@ -2718,148 +2738,148 @@ var pcb_copper_pour = z122.discriminatedUnion("shape", [
|
|
|
2718
2738
|
expectTypesMatch(true);
|
|
2719
2739
|
|
|
2720
2740
|
// src/pcb/pcb_component_outside_board_error.ts
|
|
2721
|
-
import { z as
|
|
2722
|
-
var pcb_component_outside_board_error =
|
|
2723
|
-
type:
|
|
2741
|
+
import { z as z124 } from "zod";
|
|
2742
|
+
var pcb_component_outside_board_error = z124.object({
|
|
2743
|
+
type: z124.literal("pcb_component_outside_board_error"),
|
|
2724
2744
|
pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
|
|
2725
2745
|
"pcb_component_outside_board_error"
|
|
2726
2746
|
),
|
|
2727
|
-
error_type:
|
|
2728
|
-
message:
|
|
2729
|
-
pcb_component_id:
|
|
2730
|
-
pcb_board_id:
|
|
2747
|
+
error_type: z124.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
|
|
2748
|
+
message: z124.string(),
|
|
2749
|
+
pcb_component_id: z124.string(),
|
|
2750
|
+
pcb_board_id: z124.string(),
|
|
2731
2751
|
component_center: point,
|
|
2732
|
-
component_bounds:
|
|
2733
|
-
min_x:
|
|
2734
|
-
max_x:
|
|
2735
|
-
min_y:
|
|
2736
|
-
max_y:
|
|
2752
|
+
component_bounds: z124.object({
|
|
2753
|
+
min_x: z124.number(),
|
|
2754
|
+
max_x: z124.number(),
|
|
2755
|
+
min_y: z124.number(),
|
|
2756
|
+
max_y: z124.number()
|
|
2737
2757
|
}),
|
|
2738
|
-
subcircuit_id:
|
|
2739
|
-
source_component_id:
|
|
2758
|
+
subcircuit_id: z124.string().optional(),
|
|
2759
|
+
source_component_id: z124.string().optional()
|
|
2740
2760
|
}).describe(
|
|
2741
2761
|
"Error emitted when a PCB component is placed outside the board boundaries"
|
|
2742
2762
|
);
|
|
2743
2763
|
expectTypesMatch(true);
|
|
2744
2764
|
|
|
2745
2765
|
// src/pcb/pcb_component_invalid_layer_error.ts
|
|
2746
|
-
import { z as
|
|
2747
|
-
var pcb_component_invalid_layer_error =
|
|
2748
|
-
type:
|
|
2766
|
+
import { z as z125 } from "zod";
|
|
2767
|
+
var pcb_component_invalid_layer_error = z125.object({
|
|
2768
|
+
type: z125.literal("pcb_component_invalid_layer_error"),
|
|
2749
2769
|
pcb_component_invalid_layer_error_id: getZodPrefixedIdWithDefault(
|
|
2750
2770
|
"pcb_component_invalid_layer_error"
|
|
2751
2771
|
),
|
|
2752
|
-
error_type:
|
|
2753
|
-
message:
|
|
2754
|
-
pcb_component_id:
|
|
2755
|
-
source_component_id:
|
|
2772
|
+
error_type: z125.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
|
|
2773
|
+
message: z125.string(),
|
|
2774
|
+
pcb_component_id: z125.string().optional(),
|
|
2775
|
+
source_component_id: z125.string(),
|
|
2756
2776
|
layer: layer_ref,
|
|
2757
|
-
subcircuit_id:
|
|
2777
|
+
subcircuit_id: z125.string().optional()
|
|
2758
2778
|
}).describe(
|
|
2759
2779
|
"Error emitted when a component is placed on an invalid layer (components can only be on 'top' or 'bottom' layers)"
|
|
2760
2780
|
);
|
|
2761
2781
|
expectTypesMatch(true);
|
|
2762
2782
|
|
|
2763
2783
|
// src/pcb/pcb_via_clearance_error.ts
|
|
2764
|
-
import { z as
|
|
2765
|
-
var pcb_via_clearance_error =
|
|
2766
|
-
type:
|
|
2784
|
+
import { z as z126 } from "zod";
|
|
2785
|
+
var pcb_via_clearance_error = z126.object({
|
|
2786
|
+
type: z126.literal("pcb_via_clearance_error"),
|
|
2767
2787
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
2768
|
-
error_type:
|
|
2769
|
-
message:
|
|
2770
|
-
pcb_via_ids:
|
|
2788
|
+
error_type: z126.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
|
|
2789
|
+
message: z126.string(),
|
|
2790
|
+
pcb_via_ids: z126.array(z126.string()).min(2),
|
|
2771
2791
|
minimum_clearance: distance.optional(),
|
|
2772
2792
|
actual_clearance: distance.optional(),
|
|
2773
|
-
pcb_center:
|
|
2774
|
-
x:
|
|
2775
|
-
y:
|
|
2793
|
+
pcb_center: z126.object({
|
|
2794
|
+
x: z126.number().optional(),
|
|
2795
|
+
y: z126.number().optional()
|
|
2776
2796
|
}).optional(),
|
|
2777
|
-
subcircuit_id:
|
|
2797
|
+
subcircuit_id: z126.string().optional()
|
|
2778
2798
|
}).describe("Error emitted when vias are closer than the allowed clearance");
|
|
2779
2799
|
expectTypesMatch(true);
|
|
2780
2800
|
|
|
2781
2801
|
// src/pcb/pcb_courtyard_rect.ts
|
|
2782
|
-
import { z as
|
|
2783
|
-
var pcb_courtyard_rect =
|
|
2784
|
-
type:
|
|
2802
|
+
import { z as z127 } from "zod";
|
|
2803
|
+
var pcb_courtyard_rect = z127.object({
|
|
2804
|
+
type: z127.literal("pcb_courtyard_rect"),
|
|
2785
2805
|
pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
|
|
2786
|
-
pcb_component_id:
|
|
2787
|
-
pcb_group_id:
|
|
2788
|
-
subcircuit_id:
|
|
2806
|
+
pcb_component_id: z127.string(),
|
|
2807
|
+
pcb_group_id: z127.string().optional(),
|
|
2808
|
+
subcircuit_id: z127.string().optional(),
|
|
2789
2809
|
center: point,
|
|
2790
2810
|
width: length,
|
|
2791
2811
|
height: length,
|
|
2792
2812
|
layer: visible_layer,
|
|
2793
|
-
color:
|
|
2813
|
+
color: z127.string().optional()
|
|
2794
2814
|
}).describe("Defines a courtyard rectangle on the PCB");
|
|
2795
2815
|
expectTypesMatch(true);
|
|
2796
2816
|
|
|
2797
2817
|
// src/pcb/pcb_courtyard_outline.ts
|
|
2798
|
-
import { z as
|
|
2799
|
-
var pcb_courtyard_outline =
|
|
2800
|
-
type:
|
|
2818
|
+
import { z as z128 } from "zod";
|
|
2819
|
+
var pcb_courtyard_outline = z128.object({
|
|
2820
|
+
type: z128.literal("pcb_courtyard_outline"),
|
|
2801
2821
|
pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
|
|
2802
2822
|
"pcb_courtyard_outline"
|
|
2803
2823
|
),
|
|
2804
|
-
pcb_component_id:
|
|
2805
|
-
pcb_group_id:
|
|
2806
|
-
subcircuit_id:
|
|
2824
|
+
pcb_component_id: z128.string(),
|
|
2825
|
+
pcb_group_id: z128.string().optional(),
|
|
2826
|
+
subcircuit_id: z128.string().optional(),
|
|
2807
2827
|
layer: visible_layer,
|
|
2808
|
-
outline:
|
|
2828
|
+
outline: z128.array(point).min(2),
|
|
2809
2829
|
stroke_width: length.default("0.1mm"),
|
|
2810
|
-
is_closed:
|
|
2811
|
-
is_stroke_dashed:
|
|
2812
|
-
color:
|
|
2830
|
+
is_closed: z128.boolean().optional(),
|
|
2831
|
+
is_stroke_dashed: z128.boolean().optional(),
|
|
2832
|
+
color: z128.string().optional()
|
|
2813
2833
|
}).describe("Defines a courtyard outline on the PCB");
|
|
2814
2834
|
expectTypesMatch(true);
|
|
2815
2835
|
|
|
2816
2836
|
// src/pcb/pcb_courtyard_polygon.ts
|
|
2817
|
-
import { z as
|
|
2818
|
-
var pcb_courtyard_polygon =
|
|
2819
|
-
type:
|
|
2837
|
+
import { z as z129 } from "zod";
|
|
2838
|
+
var pcb_courtyard_polygon = z129.object({
|
|
2839
|
+
type: z129.literal("pcb_courtyard_polygon"),
|
|
2820
2840
|
pcb_courtyard_polygon_id: getZodPrefixedIdWithDefault(
|
|
2821
2841
|
"pcb_courtyard_polygon"
|
|
2822
2842
|
),
|
|
2823
|
-
pcb_component_id:
|
|
2824
|
-
pcb_group_id:
|
|
2825
|
-
subcircuit_id:
|
|
2843
|
+
pcb_component_id: z129.string(),
|
|
2844
|
+
pcb_group_id: z129.string().optional(),
|
|
2845
|
+
subcircuit_id: z129.string().optional(),
|
|
2826
2846
|
layer: visible_layer,
|
|
2827
|
-
points:
|
|
2828
|
-
color:
|
|
2847
|
+
points: z129.array(point).min(3),
|
|
2848
|
+
color: z129.string().optional()
|
|
2829
2849
|
}).describe("Defines a courtyard polygon on the PCB");
|
|
2830
2850
|
expectTypesMatch(true);
|
|
2831
2851
|
|
|
2832
2852
|
// src/cad/cad_component.ts
|
|
2833
|
-
import { z as
|
|
2834
|
-
var cad_component =
|
|
2835
|
-
type:
|
|
2836
|
-
cad_component_id:
|
|
2837
|
-
pcb_component_id:
|
|
2838
|
-
source_component_id:
|
|
2853
|
+
import { z as z130 } from "zod";
|
|
2854
|
+
var cad_component = z130.object({
|
|
2855
|
+
type: z130.literal("cad_component"),
|
|
2856
|
+
cad_component_id: z130.string(),
|
|
2857
|
+
pcb_component_id: z130.string(),
|
|
2858
|
+
source_component_id: z130.string(),
|
|
2839
2859
|
position: point3,
|
|
2840
2860
|
rotation: point3.optional(),
|
|
2841
2861
|
size: point3.optional(),
|
|
2842
2862
|
layer: layer_ref.optional(),
|
|
2843
|
-
subcircuit_id:
|
|
2863
|
+
subcircuit_id: z130.string().optional(),
|
|
2844
2864
|
// These are all ways to generate/load the 3d model
|
|
2845
|
-
footprinter_string:
|
|
2846
|
-
model_obj_url:
|
|
2847
|
-
model_stl_url:
|
|
2848
|
-
model_3mf_url:
|
|
2849
|
-
model_gltf_url:
|
|
2850
|
-
model_glb_url:
|
|
2851
|
-
model_step_url:
|
|
2852
|
-
model_wrl_url:
|
|
2853
|
-
model_unit_to_mm_scale_factor:
|
|
2854
|
-
model_jscad:
|
|
2855
|
-
show_as_translucent_model:
|
|
2865
|
+
footprinter_string: z130.string().optional(),
|
|
2866
|
+
model_obj_url: z130.string().optional(),
|
|
2867
|
+
model_stl_url: z130.string().optional(),
|
|
2868
|
+
model_3mf_url: z130.string().optional(),
|
|
2869
|
+
model_gltf_url: z130.string().optional(),
|
|
2870
|
+
model_glb_url: z130.string().optional(),
|
|
2871
|
+
model_step_url: z130.string().optional(),
|
|
2872
|
+
model_wrl_url: z130.string().optional(),
|
|
2873
|
+
model_unit_to_mm_scale_factor: z130.number().optional(),
|
|
2874
|
+
model_jscad: z130.any().optional(),
|
|
2875
|
+
show_as_translucent_model: z130.boolean().optional()
|
|
2856
2876
|
}).describe("Defines a component on the PCB");
|
|
2857
2877
|
expectTypesMatch(true);
|
|
2858
2878
|
|
|
2859
2879
|
// src/simulation/simulation_voltage_source.ts
|
|
2860
|
-
import { z as
|
|
2861
|
-
var wave_shape =
|
|
2862
|
-
var percentage =
|
|
2880
|
+
import { z as z131 } from "zod";
|
|
2881
|
+
var wave_shape = z131.enum(["sinewave", "square", "triangle", "sawtooth"]);
|
|
2882
|
+
var percentage = z131.union([z131.string(), z131.number()]).transform((val) => {
|
|
2863
2883
|
if (typeof val === "string") {
|
|
2864
2884
|
if (val.endsWith("%")) {
|
|
2865
2885
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -2868,30 +2888,30 @@ var percentage = z130.union([z130.string(), z130.number()]).transform((val) => {
|
|
|
2868
2888
|
}
|
|
2869
2889
|
return val;
|
|
2870
2890
|
}).pipe(
|
|
2871
|
-
|
|
2891
|
+
z131.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
2872
2892
|
);
|
|
2873
|
-
var simulation_dc_voltage_source =
|
|
2874
|
-
type:
|
|
2893
|
+
var simulation_dc_voltage_source = z131.object({
|
|
2894
|
+
type: z131.literal("simulation_voltage_source"),
|
|
2875
2895
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2876
2896
|
"simulation_voltage_source"
|
|
2877
2897
|
),
|
|
2878
|
-
is_dc_source:
|
|
2879
|
-
positive_source_port_id:
|
|
2880
|
-
negative_source_port_id:
|
|
2881
|
-
positive_source_net_id:
|
|
2882
|
-
negative_source_net_id:
|
|
2898
|
+
is_dc_source: z131.literal(true).optional().default(true),
|
|
2899
|
+
positive_source_port_id: z131.string().optional(),
|
|
2900
|
+
negative_source_port_id: z131.string().optional(),
|
|
2901
|
+
positive_source_net_id: z131.string().optional(),
|
|
2902
|
+
negative_source_net_id: z131.string().optional(),
|
|
2883
2903
|
voltage
|
|
2884
2904
|
}).describe("Defines a DC voltage source for simulation");
|
|
2885
|
-
var simulation_ac_voltage_source =
|
|
2886
|
-
type:
|
|
2905
|
+
var simulation_ac_voltage_source = z131.object({
|
|
2906
|
+
type: z131.literal("simulation_voltage_source"),
|
|
2887
2907
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2888
2908
|
"simulation_voltage_source"
|
|
2889
2909
|
),
|
|
2890
|
-
is_dc_source:
|
|
2891
|
-
terminal1_source_port_id:
|
|
2892
|
-
terminal2_source_port_id:
|
|
2893
|
-
terminal1_source_net_id:
|
|
2894
|
-
terminal2_source_net_id:
|
|
2910
|
+
is_dc_source: z131.literal(false),
|
|
2911
|
+
terminal1_source_port_id: z131.string().optional(),
|
|
2912
|
+
terminal2_source_port_id: z131.string().optional(),
|
|
2913
|
+
terminal1_source_net_id: z131.string().optional(),
|
|
2914
|
+
terminal2_source_net_id: z131.string().optional(),
|
|
2895
2915
|
voltage: voltage.optional(),
|
|
2896
2916
|
frequency: frequency.optional(),
|
|
2897
2917
|
peak_to_peak_voltage: voltage.optional(),
|
|
@@ -2899,14 +2919,14 @@ var simulation_ac_voltage_source = z130.object({
|
|
|
2899
2919
|
phase: rotation.optional(),
|
|
2900
2920
|
duty_cycle: percentage.optional()
|
|
2901
2921
|
}).describe("Defines an AC voltage source for simulation");
|
|
2902
|
-
var simulation_voltage_source =
|
|
2922
|
+
var simulation_voltage_source = z131.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
|
|
2903
2923
|
expectTypesMatch(true);
|
|
2904
2924
|
expectTypesMatch(true);
|
|
2905
2925
|
expectTypesMatch(true);
|
|
2906
2926
|
|
|
2907
2927
|
// src/simulation/simulation_current_source.ts
|
|
2908
|
-
import { z as
|
|
2909
|
-
var percentage2 =
|
|
2928
|
+
import { z as z132 } from "zod";
|
|
2929
|
+
var percentage2 = z132.union([z132.string(), z132.number()]).transform((val) => {
|
|
2910
2930
|
if (typeof val === "string") {
|
|
2911
2931
|
if (val.endsWith("%")) {
|
|
2912
2932
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -2915,30 +2935,30 @@ var percentage2 = z131.union([z131.string(), z131.number()]).transform((val) =>
|
|
|
2915
2935
|
}
|
|
2916
2936
|
return val;
|
|
2917
2937
|
}).pipe(
|
|
2918
|
-
|
|
2938
|
+
z132.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
2919
2939
|
);
|
|
2920
|
-
var simulation_dc_current_source =
|
|
2921
|
-
type:
|
|
2940
|
+
var simulation_dc_current_source = z132.object({
|
|
2941
|
+
type: z132.literal("simulation_current_source"),
|
|
2922
2942
|
simulation_current_source_id: getZodPrefixedIdWithDefault(
|
|
2923
2943
|
"simulation_current_source"
|
|
2924
2944
|
),
|
|
2925
|
-
is_dc_source:
|
|
2926
|
-
positive_source_port_id:
|
|
2927
|
-
negative_source_port_id:
|
|
2928
|
-
positive_source_net_id:
|
|
2929
|
-
negative_source_net_id:
|
|
2945
|
+
is_dc_source: z132.literal(true).optional().default(true),
|
|
2946
|
+
positive_source_port_id: z132.string().optional(),
|
|
2947
|
+
negative_source_port_id: z132.string().optional(),
|
|
2948
|
+
positive_source_net_id: z132.string().optional(),
|
|
2949
|
+
negative_source_net_id: z132.string().optional(),
|
|
2930
2950
|
current
|
|
2931
2951
|
}).describe("Defines a DC current source for simulation");
|
|
2932
|
-
var simulation_ac_current_source =
|
|
2933
|
-
type:
|
|
2952
|
+
var simulation_ac_current_source = z132.object({
|
|
2953
|
+
type: z132.literal("simulation_current_source"),
|
|
2934
2954
|
simulation_current_source_id: getZodPrefixedIdWithDefault(
|
|
2935
2955
|
"simulation_current_source"
|
|
2936
2956
|
),
|
|
2937
|
-
is_dc_source:
|
|
2938
|
-
terminal1_source_port_id:
|
|
2939
|
-
terminal2_source_port_id:
|
|
2940
|
-
terminal1_source_net_id:
|
|
2941
|
-
terminal2_source_net_id:
|
|
2957
|
+
is_dc_source: z132.literal(false),
|
|
2958
|
+
terminal1_source_port_id: z132.string().optional(),
|
|
2959
|
+
terminal2_source_port_id: z132.string().optional(),
|
|
2960
|
+
terminal1_source_net_id: z132.string().optional(),
|
|
2961
|
+
terminal2_source_net_id: z132.string().optional(),
|
|
2942
2962
|
current: current.optional(),
|
|
2943
2963
|
frequency: frequency.optional(),
|
|
2944
2964
|
peak_to_peak_current: current.optional(),
|
|
@@ -2946,25 +2966,25 @@ var simulation_ac_current_source = z131.object({
|
|
|
2946
2966
|
phase: rotation.optional(),
|
|
2947
2967
|
duty_cycle: percentage2.optional()
|
|
2948
2968
|
}).describe("Defines an AC current source for simulation");
|
|
2949
|
-
var simulation_current_source =
|
|
2969
|
+
var simulation_current_source = z132.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
|
|
2950
2970
|
expectTypesMatch(true);
|
|
2951
2971
|
expectTypesMatch(true);
|
|
2952
2972
|
expectTypesMatch(true);
|
|
2953
2973
|
|
|
2954
2974
|
// src/simulation/simulation_experiment.ts
|
|
2955
|
-
import { z as
|
|
2956
|
-
var experiment_type =
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2975
|
+
import { z as z133 } from "zod";
|
|
2976
|
+
var experiment_type = z133.union([
|
|
2977
|
+
z133.literal("spice_dc_sweep"),
|
|
2978
|
+
z133.literal("spice_dc_operating_point"),
|
|
2979
|
+
z133.literal("spice_transient_analysis"),
|
|
2980
|
+
z133.literal("spice_ac_analysis")
|
|
2961
2981
|
]);
|
|
2962
|
-
var simulation_experiment =
|
|
2963
|
-
type:
|
|
2982
|
+
var simulation_experiment = z133.object({
|
|
2983
|
+
type: z133.literal("simulation_experiment"),
|
|
2964
2984
|
simulation_experiment_id: getZodPrefixedIdWithDefault(
|
|
2965
2985
|
"simulation_experiment"
|
|
2966
2986
|
),
|
|
2967
|
-
name:
|
|
2987
|
+
name: z133.string(),
|
|
2968
2988
|
experiment_type,
|
|
2969
2989
|
time_per_step: duration_ms.optional(),
|
|
2970
2990
|
start_time_ms: ms.optional(),
|
|
@@ -2973,53 +2993,53 @@ var simulation_experiment = z132.object({
|
|
|
2973
2993
|
expectTypesMatch(true);
|
|
2974
2994
|
|
|
2975
2995
|
// src/simulation/simulation_transient_voltage_graph.ts
|
|
2976
|
-
import { z as
|
|
2977
|
-
var simulation_transient_voltage_graph =
|
|
2978
|
-
type:
|
|
2996
|
+
import { z as z134 } from "zod";
|
|
2997
|
+
var simulation_transient_voltage_graph = z134.object({
|
|
2998
|
+
type: z134.literal("simulation_transient_voltage_graph"),
|
|
2979
2999
|
simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
2980
3000
|
"simulation_transient_voltage_graph"
|
|
2981
3001
|
),
|
|
2982
|
-
simulation_experiment_id:
|
|
2983
|
-
timestamps_ms:
|
|
2984
|
-
voltage_levels:
|
|
2985
|
-
source_component_id:
|
|
2986
|
-
subcircuit_connectivity_map_key:
|
|
3002
|
+
simulation_experiment_id: z134.string(),
|
|
3003
|
+
timestamps_ms: z134.array(z134.number()).optional(),
|
|
3004
|
+
voltage_levels: z134.array(z134.number()),
|
|
3005
|
+
source_component_id: z134.string().optional(),
|
|
3006
|
+
subcircuit_connectivity_map_key: z134.string().optional(),
|
|
2987
3007
|
time_per_step: duration_ms,
|
|
2988
3008
|
start_time_ms: ms,
|
|
2989
3009
|
end_time_ms: ms,
|
|
2990
|
-
name:
|
|
2991
|
-
color:
|
|
3010
|
+
name: z134.string().optional(),
|
|
3011
|
+
color: z134.string().optional()
|
|
2992
3012
|
}).describe("Stores voltage measurements over time for a simulation");
|
|
2993
3013
|
expectTypesMatch(true);
|
|
2994
3014
|
|
|
2995
3015
|
// src/simulation/simulation_switch.ts
|
|
2996
|
-
import { z as
|
|
2997
|
-
var simulation_switch =
|
|
2998
|
-
type:
|
|
3016
|
+
import { z as z135 } from "zod";
|
|
3017
|
+
var simulation_switch = z135.object({
|
|
3018
|
+
type: z135.literal("simulation_switch"),
|
|
2999
3019
|
simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
|
|
3000
|
-
source_component_id:
|
|
3020
|
+
source_component_id: z135.string().optional(),
|
|
3001
3021
|
closes_at: ms.optional(),
|
|
3002
3022
|
opens_at: ms.optional(),
|
|
3003
|
-
starts_closed:
|
|
3023
|
+
starts_closed: z135.boolean().optional(),
|
|
3004
3024
|
switching_frequency: frequency.optional()
|
|
3005
3025
|
}).describe("Defines a switch for simulation timing control");
|
|
3006
3026
|
expectTypesMatch(true);
|
|
3007
3027
|
|
|
3008
3028
|
// src/simulation/simulation_voltage_probe.ts
|
|
3009
|
-
import { z as
|
|
3010
|
-
var simulation_voltage_probe =
|
|
3011
|
-
type:
|
|
3029
|
+
import { z as z136 } from "zod";
|
|
3030
|
+
var simulation_voltage_probe = z136.object({
|
|
3031
|
+
type: z136.literal("simulation_voltage_probe"),
|
|
3012
3032
|
simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
|
|
3013
3033
|
"simulation_voltage_probe"
|
|
3014
3034
|
),
|
|
3015
|
-
source_component_id:
|
|
3016
|
-
name:
|
|
3017
|
-
signal_input_source_port_id:
|
|
3018
|
-
signal_input_source_net_id:
|
|
3019
|
-
reference_input_source_port_id:
|
|
3020
|
-
reference_input_source_net_id:
|
|
3021
|
-
subcircuit_id:
|
|
3022
|
-
color:
|
|
3035
|
+
source_component_id: z136.string().optional(),
|
|
3036
|
+
name: z136.string().optional(),
|
|
3037
|
+
signal_input_source_port_id: z136.string().optional(),
|
|
3038
|
+
signal_input_source_net_id: z136.string().optional(),
|
|
3039
|
+
reference_input_source_port_id: z136.string().optional(),
|
|
3040
|
+
reference_input_source_net_id: z136.string().optional(),
|
|
3041
|
+
subcircuit_id: z136.string().optional(),
|
|
3042
|
+
color: z136.string().optional()
|
|
3023
3043
|
}).describe(
|
|
3024
3044
|
"Defines a voltage probe for simulation. If a reference input is not provided, it measures against ground. If a reference input is provided, it measures the differential voltage between two points."
|
|
3025
3045
|
).superRefine((data, ctx) => {
|
|
@@ -3029,20 +3049,20 @@ var simulation_voltage_probe = z135.object({
|
|
|
3029
3049
|
const has_nets = !!data.signal_input_source_net_id || !!data.reference_input_source_net_id;
|
|
3030
3050
|
if (has_ports && has_nets) {
|
|
3031
3051
|
ctx.addIssue({
|
|
3032
|
-
code:
|
|
3052
|
+
code: z136.ZodIssueCode.custom,
|
|
3033
3053
|
message: "Cannot mix port and net connections in a differential probe."
|
|
3034
3054
|
});
|
|
3035
3055
|
} else if (has_ports) {
|
|
3036
3056
|
if (!data.signal_input_source_port_id || !data.reference_input_source_port_id) {
|
|
3037
3057
|
ctx.addIssue({
|
|
3038
|
-
code:
|
|
3058
|
+
code: z136.ZodIssueCode.custom,
|
|
3039
3059
|
message: "Differential port probe requires both signal_input_source_port_id and reference_input_source_port_id."
|
|
3040
3060
|
});
|
|
3041
3061
|
}
|
|
3042
3062
|
} else if (has_nets) {
|
|
3043
3063
|
if (!data.signal_input_source_net_id || !data.reference_input_source_net_id) {
|
|
3044
3064
|
ctx.addIssue({
|
|
3045
|
-
code:
|
|
3065
|
+
code: z136.ZodIssueCode.custom,
|
|
3046
3066
|
message: "Differential net probe requires both signal_input_source_net_id and reference_input_source_net_id."
|
|
3047
3067
|
});
|
|
3048
3068
|
}
|
|
@@ -3050,7 +3070,7 @@ var simulation_voltage_probe = z135.object({
|
|
|
3050
3070
|
} else {
|
|
3051
3071
|
if (!!data.signal_input_source_port_id === !!data.signal_input_source_net_id) {
|
|
3052
3072
|
ctx.addIssue({
|
|
3053
|
-
code:
|
|
3073
|
+
code: z136.ZodIssueCode.custom,
|
|
3054
3074
|
message: "A voltage probe must have exactly one of signal_input_source_port_id or signal_input_source_net_id."
|
|
3055
3075
|
});
|
|
3056
3076
|
}
|
|
@@ -3059,22 +3079,22 @@ var simulation_voltage_probe = z135.object({
|
|
|
3059
3079
|
expectTypesMatch(true);
|
|
3060
3080
|
|
|
3061
3081
|
// src/simulation/simulation_unknown_experiment_error.ts
|
|
3062
|
-
import { z as
|
|
3063
|
-
var simulation_unknown_experiment_error =
|
|
3064
|
-
type:
|
|
3082
|
+
import { z as z137 } from "zod";
|
|
3083
|
+
var simulation_unknown_experiment_error = z137.object({
|
|
3084
|
+
type: z137.literal("simulation_unknown_experiment_error"),
|
|
3065
3085
|
simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
|
|
3066
3086
|
"simulation_unknown_experiment_error"
|
|
3067
3087
|
),
|
|
3068
|
-
error_type:
|
|
3069
|
-
message:
|
|
3070
|
-
simulation_experiment_id:
|
|
3071
|
-
subcircuit_id:
|
|
3088
|
+
error_type: z137.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
|
|
3089
|
+
message: z137.string(),
|
|
3090
|
+
simulation_experiment_id: z137.string().optional(),
|
|
3091
|
+
subcircuit_id: z137.string().optional()
|
|
3072
3092
|
}).describe("An unknown error occurred during the simulation experiment.");
|
|
3073
3093
|
expectTypesMatch(true);
|
|
3074
3094
|
|
|
3075
3095
|
// src/any_circuit_element.ts
|
|
3076
|
-
import { z as
|
|
3077
|
-
var any_circuit_element =
|
|
3096
|
+
import { z as z138 } from "zod";
|
|
3097
|
+
var any_circuit_element = z138.union([
|
|
3078
3098
|
source_trace,
|
|
3079
3099
|
source_port,
|
|
3080
3100
|
source_component_internal_connection,
|
|
@@ -3216,6 +3236,7 @@ export {
|
|
|
3216
3236
|
length,
|
|
3217
3237
|
ms,
|
|
3218
3238
|
ninePointAnchor,
|
|
3239
|
+
pcbRenderLayer,
|
|
3219
3240
|
pcb_autorouting_error,
|
|
3220
3241
|
pcb_board,
|
|
3221
3242
|
pcb_breakout_point,
|