circuit-json 0.0.412 → 0.0.413
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 +340 -2
- package/dist/index.mjs +188 -143
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -3292,73 +3292,114 @@ var pcb_via_clearance_error = base_circuit_json_error.extend({
|
|
|
3292
3292
|
}).describe("Error emitted when vias are closer than the allowed clearance");
|
|
3293
3293
|
expectTypesMatch(true);
|
|
3294
3294
|
|
|
3295
|
-
// src/pcb/
|
|
3295
|
+
// src/pcb/pcb_pad_pad_clearance_error.ts
|
|
3296
3296
|
import { z as z149 } from "zod";
|
|
3297
|
-
var
|
|
3298
|
-
type: z149.literal("
|
|
3297
|
+
var pcb_pad_pad_clearance_error = base_circuit_json_error.extend({
|
|
3298
|
+
type: z149.literal("pcb_pad_pad_clearance_error"),
|
|
3299
|
+
pcb_pad_pad_clearance_error_id: getZodPrefixedIdWithDefault(
|
|
3300
|
+
"pcb_pad_pad_clearance_error"
|
|
3301
|
+
),
|
|
3302
|
+
error_type: z149.literal("pcb_pad_pad_clearance_error").default("pcb_pad_pad_clearance_error"),
|
|
3303
|
+
pcb_pad_ids: z149.array(z149.string()).min(2),
|
|
3304
|
+
minimum_clearance: distance.optional(),
|
|
3305
|
+
actual_clearance: distance.optional(),
|
|
3306
|
+
center: z149.object({
|
|
3307
|
+
x: z149.number().optional(),
|
|
3308
|
+
y: z149.number().optional()
|
|
3309
|
+
}).optional(),
|
|
3310
|
+
subcircuit_id: z149.string().optional()
|
|
3311
|
+
}).describe("Error emitted when pads are closer than the allowed clearance");
|
|
3312
|
+
expectTypesMatch(true);
|
|
3313
|
+
|
|
3314
|
+
// src/pcb/pcb_pad_trace_clearance_error.ts
|
|
3315
|
+
import { z as z150 } from "zod";
|
|
3316
|
+
var pcb_pad_trace_clearance_error = base_circuit_json_error.extend({
|
|
3317
|
+
type: z150.literal("pcb_pad_trace_clearance_error"),
|
|
3318
|
+
pcb_pad_trace_clearance_error_id: getZodPrefixedIdWithDefault(
|
|
3319
|
+
"pcb_pad_trace_clearance_error"
|
|
3320
|
+
),
|
|
3321
|
+
error_type: z150.literal("pcb_pad_trace_clearance_error").default("pcb_pad_trace_clearance_error"),
|
|
3322
|
+
pcb_pad_id: z150.string(),
|
|
3323
|
+
pcb_trace_id: z150.string(),
|
|
3324
|
+
minimum_clearance: distance.optional(),
|
|
3325
|
+
actual_clearance: distance.optional(),
|
|
3326
|
+
center: z150.object({
|
|
3327
|
+
x: z150.number().optional(),
|
|
3328
|
+
y: z150.number().optional()
|
|
3329
|
+
}).optional(),
|
|
3330
|
+
subcircuit_id: z150.string().optional()
|
|
3331
|
+
}).describe("Error emitted when a pad and trace are closer than allowed clearance");
|
|
3332
|
+
expectTypesMatch(
|
|
3333
|
+
true
|
|
3334
|
+
);
|
|
3335
|
+
|
|
3336
|
+
// src/pcb/pcb_courtyard_rect.ts
|
|
3337
|
+
import { z as z151 } from "zod";
|
|
3338
|
+
var pcb_courtyard_rect = z151.object({
|
|
3339
|
+
type: z151.literal("pcb_courtyard_rect"),
|
|
3299
3340
|
pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
|
|
3300
|
-
pcb_component_id:
|
|
3301
|
-
pcb_group_id:
|
|
3302
|
-
subcircuit_id:
|
|
3341
|
+
pcb_component_id: z151.string(),
|
|
3342
|
+
pcb_group_id: z151.string().optional(),
|
|
3343
|
+
subcircuit_id: z151.string().optional(),
|
|
3303
3344
|
center: point,
|
|
3304
3345
|
width: length,
|
|
3305
3346
|
height: length,
|
|
3306
3347
|
layer: visible_layer,
|
|
3307
3348
|
ccw_rotation: rotation.optional(),
|
|
3308
|
-
color:
|
|
3349
|
+
color: z151.string().optional()
|
|
3309
3350
|
}).describe("Defines a courtyard rectangle on the PCB");
|
|
3310
3351
|
expectTypesMatch(true);
|
|
3311
3352
|
|
|
3312
3353
|
// src/pcb/pcb_courtyard_outline.ts
|
|
3313
|
-
import { z as
|
|
3314
|
-
var pcb_courtyard_outline =
|
|
3315
|
-
type:
|
|
3354
|
+
import { z as z152 } from "zod";
|
|
3355
|
+
var pcb_courtyard_outline = z152.object({
|
|
3356
|
+
type: z152.literal("pcb_courtyard_outline"),
|
|
3316
3357
|
pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
|
|
3317
3358
|
"pcb_courtyard_outline"
|
|
3318
3359
|
),
|
|
3319
|
-
pcb_component_id:
|
|
3320
|
-
pcb_group_id:
|
|
3321
|
-
subcircuit_id:
|
|
3360
|
+
pcb_component_id: z152.string(),
|
|
3361
|
+
pcb_group_id: z152.string().optional(),
|
|
3362
|
+
subcircuit_id: z152.string().optional(),
|
|
3322
3363
|
layer: visible_layer,
|
|
3323
|
-
outline:
|
|
3364
|
+
outline: z152.array(point).min(2)
|
|
3324
3365
|
}).describe("Defines a courtyard outline on the PCB");
|
|
3325
3366
|
expectTypesMatch(true);
|
|
3326
3367
|
|
|
3327
3368
|
// src/pcb/pcb_courtyard_polygon.ts
|
|
3328
|
-
import { z as
|
|
3329
|
-
var pcb_courtyard_polygon =
|
|
3330
|
-
type:
|
|
3369
|
+
import { z as z153 } from "zod";
|
|
3370
|
+
var pcb_courtyard_polygon = z153.object({
|
|
3371
|
+
type: z153.literal("pcb_courtyard_polygon"),
|
|
3331
3372
|
pcb_courtyard_polygon_id: getZodPrefixedIdWithDefault(
|
|
3332
3373
|
"pcb_courtyard_polygon"
|
|
3333
3374
|
),
|
|
3334
|
-
pcb_component_id:
|
|
3335
|
-
pcb_group_id:
|
|
3336
|
-
subcircuit_id:
|
|
3375
|
+
pcb_component_id: z153.string(),
|
|
3376
|
+
pcb_group_id: z153.string().optional(),
|
|
3377
|
+
subcircuit_id: z153.string().optional(),
|
|
3337
3378
|
layer: visible_layer,
|
|
3338
|
-
points:
|
|
3339
|
-
color:
|
|
3379
|
+
points: z153.array(point).min(3),
|
|
3380
|
+
color: z153.string().optional()
|
|
3340
3381
|
}).describe("Defines a courtyard polygon on the PCB");
|
|
3341
3382
|
expectTypesMatch(true);
|
|
3342
3383
|
|
|
3343
3384
|
// src/pcb/pcb_courtyard_circle.ts
|
|
3344
|
-
import { z as
|
|
3345
|
-
var pcb_courtyard_circle =
|
|
3346
|
-
type:
|
|
3385
|
+
import { z as z154 } from "zod";
|
|
3386
|
+
var pcb_courtyard_circle = z154.object({
|
|
3387
|
+
type: z154.literal("pcb_courtyard_circle"),
|
|
3347
3388
|
pcb_courtyard_circle_id: getZodPrefixedIdWithDefault(
|
|
3348
3389
|
"pcb_courtyard_circle"
|
|
3349
3390
|
),
|
|
3350
|
-
pcb_component_id:
|
|
3351
|
-
pcb_group_id:
|
|
3352
|
-
subcircuit_id:
|
|
3391
|
+
pcb_component_id: z154.string(),
|
|
3392
|
+
pcb_group_id: z154.string().optional(),
|
|
3393
|
+
subcircuit_id: z154.string().optional(),
|
|
3353
3394
|
center: point,
|
|
3354
3395
|
radius: length,
|
|
3355
3396
|
layer: visible_layer,
|
|
3356
|
-
color:
|
|
3397
|
+
color: z154.string().optional()
|
|
3357
3398
|
}).describe("Defines a courtyard circle on the PCB");
|
|
3358
3399
|
expectTypesMatch(true);
|
|
3359
3400
|
|
|
3360
3401
|
// src/cad/cad_component.ts
|
|
3361
|
-
import { z as
|
|
3402
|
+
import { z as z155 } from "zod";
|
|
3362
3403
|
|
|
3363
3404
|
// src/cad/cad_model_conventions.ts
|
|
3364
3405
|
var cad_model_formats = [
|
|
@@ -3389,48 +3430,48 @@ var cadModelDefaultDirectionMap = {
|
|
|
3389
3430
|
};
|
|
3390
3431
|
|
|
3391
3432
|
// src/cad/cad_component.ts
|
|
3392
|
-
var cad_component =
|
|
3393
|
-
type:
|
|
3394
|
-
cad_component_id:
|
|
3395
|
-
pcb_component_id:
|
|
3396
|
-
source_component_id:
|
|
3433
|
+
var cad_component = z155.object({
|
|
3434
|
+
type: z155.literal("cad_component"),
|
|
3435
|
+
cad_component_id: z155.string(),
|
|
3436
|
+
pcb_component_id: z155.string(),
|
|
3437
|
+
source_component_id: z155.string(),
|
|
3397
3438
|
position: point3,
|
|
3398
3439
|
rotation: point3.optional(),
|
|
3399
3440
|
size: point3.optional(),
|
|
3400
3441
|
layer: layer_ref.optional(),
|
|
3401
|
-
subcircuit_id:
|
|
3442
|
+
subcircuit_id: z155.string().optional(),
|
|
3402
3443
|
// These are all ways to generate/load the 3d model
|
|
3403
|
-
footprinter_string:
|
|
3404
|
-
model_obj_url:
|
|
3405
|
-
model_stl_url:
|
|
3406
|
-
model_3mf_url:
|
|
3407
|
-
model_gltf_url:
|
|
3408
|
-
model_glb_url:
|
|
3409
|
-
model_step_url:
|
|
3410
|
-
model_wrl_url:
|
|
3444
|
+
footprinter_string: z155.string().optional(),
|
|
3445
|
+
model_obj_url: z155.string().optional(),
|
|
3446
|
+
model_stl_url: z155.string().optional(),
|
|
3447
|
+
model_3mf_url: z155.string().optional(),
|
|
3448
|
+
model_gltf_url: z155.string().optional(),
|
|
3449
|
+
model_glb_url: z155.string().optional(),
|
|
3450
|
+
model_step_url: z155.string().optional(),
|
|
3451
|
+
model_wrl_url: z155.string().optional(),
|
|
3411
3452
|
model_asset: asset.optional(),
|
|
3412
|
-
model_unit_to_mm_scale_factor:
|
|
3413
|
-
model_board_normal_direction:
|
|
3453
|
+
model_unit_to_mm_scale_factor: z155.number().optional(),
|
|
3454
|
+
model_board_normal_direction: z155.enum(cad_model_axis_directions).optional().describe(
|
|
3414
3455
|
`The direction in the model's coordinate space that is considered "up" or "coming out of the board surface"`
|
|
3415
3456
|
),
|
|
3416
3457
|
model_origin_position: point3.optional(),
|
|
3417
|
-
model_origin_alignment:
|
|
3458
|
+
model_origin_alignment: z155.enum([
|
|
3418
3459
|
"unknown",
|
|
3419
3460
|
"center",
|
|
3420
3461
|
"center_of_component_on_board_surface",
|
|
3421
3462
|
"bottom_center_of_component"
|
|
3422
3463
|
]).optional(),
|
|
3423
|
-
model_object_fit:
|
|
3424
|
-
model_jscad:
|
|
3425
|
-
show_as_translucent_model:
|
|
3426
|
-
anchor_alignment:
|
|
3464
|
+
model_object_fit: z155.enum(["contain_within_bounds", "fill_bounds"]).optional().default("contain_within_bounds"),
|
|
3465
|
+
model_jscad: z155.any().optional(),
|
|
3466
|
+
show_as_translucent_model: z155.boolean().optional(),
|
|
3467
|
+
anchor_alignment: z155.enum(["center", "center_of_component_on_board_surface"]).optional().default("center")
|
|
3427
3468
|
}).describe("Defines a component on the PCB");
|
|
3428
3469
|
expectTypesMatch(true);
|
|
3429
3470
|
|
|
3430
3471
|
// src/simulation/simulation_voltage_source.ts
|
|
3431
|
-
import { z as
|
|
3432
|
-
var wave_shape =
|
|
3433
|
-
var percentage =
|
|
3472
|
+
import { z as z156 } from "zod";
|
|
3473
|
+
var wave_shape = z156.enum(["sinewave", "square", "triangle", "sawtooth"]);
|
|
3474
|
+
var percentage = z156.union([z156.string(), z156.number()]).transform((val) => {
|
|
3434
3475
|
if (typeof val === "string") {
|
|
3435
3476
|
if (val.endsWith("%")) {
|
|
3436
3477
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -3439,30 +3480,30 @@ var percentage = z154.union([z154.string(), z154.number()]).transform((val) => {
|
|
|
3439
3480
|
}
|
|
3440
3481
|
return val;
|
|
3441
3482
|
}).pipe(
|
|
3442
|
-
|
|
3483
|
+
z156.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
3443
3484
|
);
|
|
3444
|
-
var simulation_dc_voltage_source =
|
|
3445
|
-
type:
|
|
3485
|
+
var simulation_dc_voltage_source = z156.object({
|
|
3486
|
+
type: z156.literal("simulation_voltage_source"),
|
|
3446
3487
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
3447
3488
|
"simulation_voltage_source"
|
|
3448
3489
|
),
|
|
3449
|
-
is_dc_source:
|
|
3450
|
-
positive_source_port_id:
|
|
3451
|
-
negative_source_port_id:
|
|
3452
|
-
positive_source_net_id:
|
|
3453
|
-
negative_source_net_id:
|
|
3490
|
+
is_dc_source: z156.literal(true).optional().default(true),
|
|
3491
|
+
positive_source_port_id: z156.string().optional(),
|
|
3492
|
+
negative_source_port_id: z156.string().optional(),
|
|
3493
|
+
positive_source_net_id: z156.string().optional(),
|
|
3494
|
+
negative_source_net_id: z156.string().optional(),
|
|
3454
3495
|
voltage
|
|
3455
3496
|
}).describe("Defines a DC voltage source for simulation");
|
|
3456
|
-
var simulation_ac_voltage_source =
|
|
3457
|
-
type:
|
|
3497
|
+
var simulation_ac_voltage_source = z156.object({
|
|
3498
|
+
type: z156.literal("simulation_voltage_source"),
|
|
3458
3499
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
3459
3500
|
"simulation_voltage_source"
|
|
3460
3501
|
),
|
|
3461
|
-
is_dc_source:
|
|
3462
|
-
terminal1_source_port_id:
|
|
3463
|
-
terminal2_source_port_id:
|
|
3464
|
-
terminal1_source_net_id:
|
|
3465
|
-
terminal2_source_net_id:
|
|
3502
|
+
is_dc_source: z156.literal(false),
|
|
3503
|
+
terminal1_source_port_id: z156.string().optional(),
|
|
3504
|
+
terminal2_source_port_id: z156.string().optional(),
|
|
3505
|
+
terminal1_source_net_id: z156.string().optional(),
|
|
3506
|
+
terminal2_source_net_id: z156.string().optional(),
|
|
3466
3507
|
voltage: voltage.optional(),
|
|
3467
3508
|
frequency: frequency.optional(),
|
|
3468
3509
|
peak_to_peak_voltage: voltage.optional(),
|
|
@@ -3470,14 +3511,14 @@ var simulation_ac_voltage_source = z154.object({
|
|
|
3470
3511
|
phase: rotation.optional(),
|
|
3471
3512
|
duty_cycle: percentage.optional()
|
|
3472
3513
|
}).describe("Defines an AC voltage source for simulation");
|
|
3473
|
-
var simulation_voltage_source =
|
|
3514
|
+
var simulation_voltage_source = z156.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
|
|
3474
3515
|
expectTypesMatch(true);
|
|
3475
3516
|
expectTypesMatch(true);
|
|
3476
3517
|
expectTypesMatch(true);
|
|
3477
3518
|
|
|
3478
3519
|
// src/simulation/simulation_current_source.ts
|
|
3479
|
-
import { z as
|
|
3480
|
-
var percentage2 =
|
|
3520
|
+
import { z as z157 } from "zod";
|
|
3521
|
+
var percentage2 = z157.union([z157.string(), z157.number()]).transform((val) => {
|
|
3481
3522
|
if (typeof val === "string") {
|
|
3482
3523
|
if (val.endsWith("%")) {
|
|
3483
3524
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -3486,30 +3527,30 @@ var percentage2 = z155.union([z155.string(), z155.number()]).transform((val) =>
|
|
|
3486
3527
|
}
|
|
3487
3528
|
return val;
|
|
3488
3529
|
}).pipe(
|
|
3489
|
-
|
|
3530
|
+
z157.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
3490
3531
|
);
|
|
3491
|
-
var simulation_dc_current_source =
|
|
3492
|
-
type:
|
|
3532
|
+
var simulation_dc_current_source = z157.object({
|
|
3533
|
+
type: z157.literal("simulation_current_source"),
|
|
3493
3534
|
simulation_current_source_id: getZodPrefixedIdWithDefault(
|
|
3494
3535
|
"simulation_current_source"
|
|
3495
3536
|
),
|
|
3496
|
-
is_dc_source:
|
|
3497
|
-
positive_source_port_id:
|
|
3498
|
-
negative_source_port_id:
|
|
3499
|
-
positive_source_net_id:
|
|
3500
|
-
negative_source_net_id:
|
|
3537
|
+
is_dc_source: z157.literal(true).optional().default(true),
|
|
3538
|
+
positive_source_port_id: z157.string().optional(),
|
|
3539
|
+
negative_source_port_id: z157.string().optional(),
|
|
3540
|
+
positive_source_net_id: z157.string().optional(),
|
|
3541
|
+
negative_source_net_id: z157.string().optional(),
|
|
3501
3542
|
current
|
|
3502
3543
|
}).describe("Defines a DC current source for simulation");
|
|
3503
|
-
var simulation_ac_current_source =
|
|
3504
|
-
type:
|
|
3544
|
+
var simulation_ac_current_source = z157.object({
|
|
3545
|
+
type: z157.literal("simulation_current_source"),
|
|
3505
3546
|
simulation_current_source_id: getZodPrefixedIdWithDefault(
|
|
3506
3547
|
"simulation_current_source"
|
|
3507
3548
|
),
|
|
3508
|
-
is_dc_source:
|
|
3509
|
-
terminal1_source_port_id:
|
|
3510
|
-
terminal2_source_port_id:
|
|
3511
|
-
terminal1_source_net_id:
|
|
3512
|
-
terminal2_source_net_id:
|
|
3549
|
+
is_dc_source: z157.literal(false),
|
|
3550
|
+
terminal1_source_port_id: z157.string().optional(),
|
|
3551
|
+
terminal2_source_port_id: z157.string().optional(),
|
|
3552
|
+
terminal1_source_net_id: z157.string().optional(),
|
|
3553
|
+
terminal2_source_net_id: z157.string().optional(),
|
|
3513
3554
|
current: current.optional(),
|
|
3514
3555
|
frequency: frequency.optional(),
|
|
3515
3556
|
peak_to_peak_current: current.optional(),
|
|
@@ -3517,25 +3558,25 @@ var simulation_ac_current_source = z155.object({
|
|
|
3517
3558
|
phase: rotation.optional(),
|
|
3518
3559
|
duty_cycle: percentage2.optional()
|
|
3519
3560
|
}).describe("Defines an AC current source for simulation");
|
|
3520
|
-
var simulation_current_source =
|
|
3561
|
+
var simulation_current_source = z157.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
|
|
3521
3562
|
expectTypesMatch(true);
|
|
3522
3563
|
expectTypesMatch(true);
|
|
3523
3564
|
expectTypesMatch(true);
|
|
3524
3565
|
|
|
3525
3566
|
// src/simulation/simulation_experiment.ts
|
|
3526
|
-
import { z as
|
|
3527
|
-
var experiment_type =
|
|
3528
|
-
|
|
3529
|
-
|
|
3530
|
-
|
|
3531
|
-
|
|
3567
|
+
import { z as z158 } from "zod";
|
|
3568
|
+
var experiment_type = z158.union([
|
|
3569
|
+
z158.literal("spice_dc_sweep"),
|
|
3570
|
+
z158.literal("spice_dc_operating_point"),
|
|
3571
|
+
z158.literal("spice_transient_analysis"),
|
|
3572
|
+
z158.literal("spice_ac_analysis")
|
|
3532
3573
|
]);
|
|
3533
|
-
var simulation_experiment =
|
|
3534
|
-
type:
|
|
3574
|
+
var simulation_experiment = z158.object({
|
|
3575
|
+
type: z158.literal("simulation_experiment"),
|
|
3535
3576
|
simulation_experiment_id: getZodPrefixedIdWithDefault(
|
|
3536
3577
|
"simulation_experiment"
|
|
3537
3578
|
),
|
|
3538
|
-
name:
|
|
3579
|
+
name: z158.string(),
|
|
3539
3580
|
experiment_type,
|
|
3540
3581
|
time_per_step: duration_ms.optional(),
|
|
3541
3582
|
start_time_ms: ms.optional(),
|
|
@@ -3544,53 +3585,53 @@ var simulation_experiment = z156.object({
|
|
|
3544
3585
|
expectTypesMatch(true);
|
|
3545
3586
|
|
|
3546
3587
|
// src/simulation/simulation_transient_voltage_graph.ts
|
|
3547
|
-
import { z as
|
|
3548
|
-
var simulation_transient_voltage_graph =
|
|
3549
|
-
type:
|
|
3588
|
+
import { z as z159 } from "zod";
|
|
3589
|
+
var simulation_transient_voltage_graph = z159.object({
|
|
3590
|
+
type: z159.literal("simulation_transient_voltage_graph"),
|
|
3550
3591
|
simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
3551
3592
|
"simulation_transient_voltage_graph"
|
|
3552
3593
|
),
|
|
3553
|
-
simulation_experiment_id:
|
|
3554
|
-
timestamps_ms:
|
|
3555
|
-
voltage_levels:
|
|
3556
|
-
source_component_id:
|
|
3557
|
-
subcircuit_connectivity_map_key:
|
|
3594
|
+
simulation_experiment_id: z159.string(),
|
|
3595
|
+
timestamps_ms: z159.array(z159.number()).optional(),
|
|
3596
|
+
voltage_levels: z159.array(z159.number()),
|
|
3597
|
+
source_component_id: z159.string().optional(),
|
|
3598
|
+
subcircuit_connectivity_map_key: z159.string().optional(),
|
|
3558
3599
|
time_per_step: duration_ms,
|
|
3559
3600
|
start_time_ms: ms,
|
|
3560
3601
|
end_time_ms: ms,
|
|
3561
|
-
name:
|
|
3562
|
-
color:
|
|
3602
|
+
name: z159.string().optional(),
|
|
3603
|
+
color: z159.string().optional()
|
|
3563
3604
|
}).describe("Stores voltage measurements over time for a simulation");
|
|
3564
3605
|
expectTypesMatch(true);
|
|
3565
3606
|
|
|
3566
3607
|
// src/simulation/simulation_switch.ts
|
|
3567
|
-
import { z as
|
|
3568
|
-
var simulation_switch =
|
|
3569
|
-
type:
|
|
3608
|
+
import { z as z160 } from "zod";
|
|
3609
|
+
var simulation_switch = z160.object({
|
|
3610
|
+
type: z160.literal("simulation_switch"),
|
|
3570
3611
|
simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
|
|
3571
|
-
source_component_id:
|
|
3612
|
+
source_component_id: z160.string().optional(),
|
|
3572
3613
|
closes_at: ms.optional(),
|
|
3573
3614
|
opens_at: ms.optional(),
|
|
3574
|
-
starts_closed:
|
|
3615
|
+
starts_closed: z160.boolean().optional(),
|
|
3575
3616
|
switching_frequency: frequency.optional()
|
|
3576
3617
|
}).describe("Defines a switch for simulation timing control");
|
|
3577
3618
|
expectTypesMatch(true);
|
|
3578
3619
|
|
|
3579
3620
|
// src/simulation/simulation_voltage_probe.ts
|
|
3580
|
-
import { z as
|
|
3581
|
-
var simulation_voltage_probe =
|
|
3582
|
-
type:
|
|
3621
|
+
import { z as z161 } from "zod";
|
|
3622
|
+
var simulation_voltage_probe = z161.object({
|
|
3623
|
+
type: z161.literal("simulation_voltage_probe"),
|
|
3583
3624
|
simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
|
|
3584
3625
|
"simulation_voltage_probe"
|
|
3585
3626
|
),
|
|
3586
|
-
source_component_id:
|
|
3587
|
-
name:
|
|
3588
|
-
signal_input_source_port_id:
|
|
3589
|
-
signal_input_source_net_id:
|
|
3590
|
-
reference_input_source_port_id:
|
|
3591
|
-
reference_input_source_net_id:
|
|
3592
|
-
subcircuit_id:
|
|
3593
|
-
color:
|
|
3627
|
+
source_component_id: z161.string().optional(),
|
|
3628
|
+
name: z161.string().optional(),
|
|
3629
|
+
signal_input_source_port_id: z161.string().optional(),
|
|
3630
|
+
signal_input_source_net_id: z161.string().optional(),
|
|
3631
|
+
reference_input_source_port_id: z161.string().optional(),
|
|
3632
|
+
reference_input_source_net_id: z161.string().optional(),
|
|
3633
|
+
subcircuit_id: z161.string().optional(),
|
|
3634
|
+
color: z161.string().optional()
|
|
3594
3635
|
}).describe(
|
|
3595
3636
|
"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."
|
|
3596
3637
|
).superRefine((data, ctx) => {
|
|
@@ -3600,20 +3641,20 @@ var simulation_voltage_probe = z159.object({
|
|
|
3600
3641
|
const has_nets = !!data.signal_input_source_net_id || !!data.reference_input_source_net_id;
|
|
3601
3642
|
if (has_ports && has_nets) {
|
|
3602
3643
|
ctx.addIssue({
|
|
3603
|
-
code:
|
|
3644
|
+
code: z161.ZodIssueCode.custom,
|
|
3604
3645
|
message: "Cannot mix port and net connections in a differential probe."
|
|
3605
3646
|
});
|
|
3606
3647
|
} else if (has_ports) {
|
|
3607
3648
|
if (!data.signal_input_source_port_id || !data.reference_input_source_port_id) {
|
|
3608
3649
|
ctx.addIssue({
|
|
3609
|
-
code:
|
|
3650
|
+
code: z161.ZodIssueCode.custom,
|
|
3610
3651
|
message: "Differential port probe requires both signal_input_source_port_id and reference_input_source_port_id."
|
|
3611
3652
|
});
|
|
3612
3653
|
}
|
|
3613
3654
|
} else if (has_nets) {
|
|
3614
3655
|
if (!data.signal_input_source_net_id || !data.reference_input_source_net_id) {
|
|
3615
3656
|
ctx.addIssue({
|
|
3616
|
-
code:
|
|
3657
|
+
code: z161.ZodIssueCode.custom,
|
|
3617
3658
|
message: "Differential net probe requires both signal_input_source_net_id and reference_input_source_net_id."
|
|
3618
3659
|
});
|
|
3619
3660
|
}
|
|
@@ -3621,7 +3662,7 @@ var simulation_voltage_probe = z159.object({
|
|
|
3621
3662
|
} else {
|
|
3622
3663
|
if (!!data.signal_input_source_port_id === !!data.signal_input_source_net_id) {
|
|
3623
3664
|
ctx.addIssue({
|
|
3624
|
-
code:
|
|
3665
|
+
code: z161.ZodIssueCode.custom,
|
|
3625
3666
|
message: "A voltage probe must have exactly one of signal_input_source_port_id or signal_input_source_net_id."
|
|
3626
3667
|
});
|
|
3627
3668
|
}
|
|
@@ -3630,35 +3671,35 @@ var simulation_voltage_probe = z159.object({
|
|
|
3630
3671
|
expectTypesMatch(true);
|
|
3631
3672
|
|
|
3632
3673
|
// src/simulation/simulation_unknown_experiment_error.ts
|
|
3633
|
-
import { z as
|
|
3674
|
+
import { z as z162 } from "zod";
|
|
3634
3675
|
var simulation_unknown_experiment_error = base_circuit_json_error.extend({
|
|
3635
|
-
type:
|
|
3676
|
+
type: z162.literal("simulation_unknown_experiment_error"),
|
|
3636
3677
|
simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
|
|
3637
3678
|
"simulation_unknown_experiment_error"
|
|
3638
3679
|
),
|
|
3639
|
-
error_type:
|
|
3640
|
-
simulation_experiment_id:
|
|
3641
|
-
subcircuit_id:
|
|
3680
|
+
error_type: z162.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
|
|
3681
|
+
simulation_experiment_id: z162.string().optional(),
|
|
3682
|
+
subcircuit_id: z162.string().optional()
|
|
3642
3683
|
}).describe("An unknown error occurred during the simulation experiment.");
|
|
3643
3684
|
expectTypesMatch(true);
|
|
3644
3685
|
|
|
3645
3686
|
// src/simulation/simulation_op_amp.ts
|
|
3646
|
-
import { z as
|
|
3647
|
-
var simulation_op_amp =
|
|
3648
|
-
type:
|
|
3687
|
+
import { z as z163 } from "zod";
|
|
3688
|
+
var simulation_op_amp = z163.object({
|
|
3689
|
+
type: z163.literal("simulation_op_amp"),
|
|
3649
3690
|
simulation_op_amp_id: getZodPrefixedIdWithDefault("simulation_op_amp"),
|
|
3650
|
-
source_component_id:
|
|
3651
|
-
inverting_input_source_port_id:
|
|
3652
|
-
non_inverting_input_source_port_id:
|
|
3653
|
-
output_source_port_id:
|
|
3654
|
-
positive_supply_source_port_id:
|
|
3655
|
-
negative_supply_source_port_id:
|
|
3691
|
+
source_component_id: z163.string().optional(),
|
|
3692
|
+
inverting_input_source_port_id: z163.string(),
|
|
3693
|
+
non_inverting_input_source_port_id: z163.string(),
|
|
3694
|
+
output_source_port_id: z163.string(),
|
|
3695
|
+
positive_supply_source_port_id: z163.string(),
|
|
3696
|
+
negative_supply_source_port_id: z163.string()
|
|
3656
3697
|
}).describe("Defines a simple ideal operational amplifier for simulation");
|
|
3657
3698
|
expectTypesMatch(true);
|
|
3658
3699
|
|
|
3659
3700
|
// src/any_circuit_element.ts
|
|
3660
|
-
import { z as
|
|
3661
|
-
var any_circuit_element =
|
|
3701
|
+
import { z as z164 } from "zod";
|
|
3702
|
+
var any_circuit_element = z164.union([
|
|
3662
3703
|
source_trace,
|
|
3663
3704
|
source_port,
|
|
3664
3705
|
source_component_internal_connection,
|
|
@@ -3734,6 +3775,8 @@ var any_circuit_element = z162.union([
|
|
|
3734
3775
|
pcb_port_not_matched_error,
|
|
3735
3776
|
pcb_port_not_connected_error,
|
|
3736
3777
|
pcb_via_clearance_error,
|
|
3778
|
+
pcb_pad_pad_clearance_error,
|
|
3779
|
+
pcb_pad_trace_clearance_error,
|
|
3737
3780
|
pcb_fabrication_note_path,
|
|
3738
3781
|
pcb_fabrication_note_text,
|
|
3739
3782
|
pcb_fabrication_note_rect,
|
|
@@ -3884,6 +3927,8 @@ export {
|
|
|
3884
3927
|
pcb_note_path,
|
|
3885
3928
|
pcb_note_rect,
|
|
3886
3929
|
pcb_note_text,
|
|
3930
|
+
pcb_pad_pad_clearance_error,
|
|
3931
|
+
pcb_pad_trace_clearance_error,
|
|
3887
3932
|
pcb_panel,
|
|
3888
3933
|
pcb_panelization_placement_error,
|
|
3889
3934
|
pcb_placement_error,
|