@tscircuit/props 0.0.574 → 0.0.575

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.js CHANGED
@@ -17253,10 +17253,20 @@ var traceProps = z64.union([
17253
17253
  })
17254
17254
  ]);
17255
17255
 
17256
+ // lib/components/differentialpair.ts
17257
+ import { z as z65 } from "zod";
17258
+ var differentialPairProps = z65.object({
17259
+ name: z65.string().optional(),
17260
+ positiveConnection: z65.string(),
17261
+ negativeConnection: z65.string(),
17262
+ maxLengthSkew: z65.number().min(0).max(1).optional()
17263
+ });
17264
+ expectTypesMatch(true);
17265
+
17256
17266
  // lib/components/footprint.ts
17257
17267
  import { layer_ref as layer_ref5 } from "circuit-json";
17258
- import { z as z65 } from "zod";
17259
- var footprintInsertionDirection = z65.enum([
17268
+ import { z as z66 } from "zod";
17269
+ var footprintInsertionDirection = z66.enum([
17260
17270
  "from_above",
17261
17271
  "from_left",
17262
17272
  "from_right",
@@ -17264,11 +17274,11 @@ var footprintInsertionDirection = z65.enum([
17264
17274
  "from_back"
17265
17275
  ]);
17266
17276
  expectTypesMatch(true);
17267
- var footprintProps = z65.object({
17268
- children: z65.any().optional(),
17269
- name: z65.string().optional(),
17277
+ var footprintProps = z66.object({
17278
+ children: z66.any().optional(),
17279
+ name: z66.string().optional(),
17270
17280
  originalLayer: layer_ref5.default("top").optional(),
17271
- circuitJson: z65.array(z65.any()).optional(),
17281
+ circuitJson: z66.array(z66.any()).optional(),
17272
17282
  src: footprintProp.describe("Can be a footprint or kicad string").optional(),
17273
17283
  insertionDirection: footprintInsertionDirection.optional().describe(
17274
17284
  "Direction a cable or mating part is inserted into this footprint in its unrotated orientation."
@@ -17277,19 +17287,19 @@ var footprintProps = z65.object({
17277
17287
  expectTypesMatch(true);
17278
17288
 
17279
17289
  // lib/components/symbol.ts
17280
- import { z as z66 } from "zod";
17281
- var symbolProps = z66.object({
17282
- originalFacingDirection: z66.enum(["up", "down", "left", "right"]).default("right").optional(),
17290
+ import { z as z67 } from "zod";
17291
+ var symbolProps = z67.object({
17292
+ originalFacingDirection: z67.enum(["up", "down", "left", "right"]).default("right").optional(),
17283
17293
  width: distance.optional(),
17284
17294
  height: distance.optional(),
17285
- name: z66.string().optional()
17295
+ name: z67.string().optional()
17286
17296
  });
17287
17297
  expectTypesMatch(true);
17288
17298
 
17289
17299
  // lib/components/battery.ts
17290
17300
  import { voltage as voltage2 } from "circuit-json";
17291
- import { z as z67 } from "zod";
17292
- var capacity = z67.number().or(z67.string().endsWith("mAh")).transform((v) => {
17301
+ import { z as z68 } from "zod";
17302
+ var capacity = z68.number().or(z68.string().endsWith("mAh")).transform((v) => {
17293
17303
  if (typeof v === "string") {
17294
17304
  const valString = v.replace("mAh", "");
17295
17305
  const num = Number.parseFloat(valString);
@@ -17303,14 +17313,14 @@ var capacity = z67.number().or(z67.string().endsWith("mAh")).transform((v) => {
17303
17313
  var batteryProps = commonComponentProps.extend({
17304
17314
  capacity: capacity.optional(),
17305
17315
  voltage: voltage2.optional(),
17306
- standard: z67.enum(["AA", "AAA", "9V", "CR2032", "18650", "C"]).optional(),
17316
+ standard: z68.enum(["AA", "AAA", "9V", "CR2032", "18650", "C"]).optional(),
17307
17317
  schOrientation: schematicOrientation.optional()
17308
17318
  });
17309
17319
  var batteryPins = lrPolarPins;
17310
17320
  expectTypesMatch(true);
17311
17321
 
17312
17322
  // lib/components/mountedboard.ts
17313
- import { z as z68 } from "zod";
17323
+ import { z as z69 } from "zod";
17314
17324
  var mountedboardProps = subcircuitGroupProps.extend({
17315
17325
  manufacturerPartNumber: chipProps.shape.manufacturerPartNumber,
17316
17326
  pinLabels: chipProps.shape.pinLabels,
@@ -17322,7 +17332,7 @@ var mountedboardProps = subcircuitGroupProps.extend({
17322
17332
  internallyConnectedPins: chipProps.shape.internallyConnectedPins,
17323
17333
  externallyConnectedPins: chipProps.shape.externallyConnectedPins,
17324
17334
  boardToBoardDistance: distance.optional(),
17325
- mountOrientation: z68.enum(["faceDown", "faceUp"]).optional()
17335
+ mountOrientation: z69.enum(["faceDown", "faceUp"]).optional()
17326
17336
  });
17327
17337
  expectTypesMatch(true);
17328
17338
 
@@ -17330,29 +17340,29 @@ expectTypesMatch(true);
17330
17340
  import { distance as distance20 } from "circuit-json";
17331
17341
 
17332
17342
  // lib/common/pcbOrientation.ts
17333
- import { z as z69 } from "zod";
17334
- var pcbOrientation = z69.enum(["vertical", "horizontal"]).describe(
17343
+ import { z as z70 } from "zod";
17344
+ var pcbOrientation = z70.enum(["vertical", "horizontal"]).describe(
17335
17345
  "vertical means pins go 1->2 downward and horizontal means pins go 1->2 rightward"
17336
17346
  );
17337
17347
  expectTypesMatch(true);
17338
17348
 
17339
17349
  // lib/components/pin-header.ts
17340
- import { z as z70 } from "zod";
17350
+ import { z as z71 } from "zod";
17341
17351
  var pinHeaderProps = commonComponentProps.extend({
17342
- pinCount: z70.number(),
17352
+ pinCount: z71.number(),
17343
17353
  pitch: distance20.optional(),
17344
- schFacingDirection: z70.enum(["up", "down", "left", "right"]).optional(),
17345
- gender: z70.enum(["male", "female", "unpopulated"]).optional().default("male"),
17346
- showSilkscreenPinLabels: z70.boolean().optional(),
17347
- pcbPinLabels: z70.record(z70.string(), z70.string()).optional(),
17348
- doubleRow: z70.boolean().optional(),
17349
- rightAngle: z70.boolean().optional(),
17354
+ schFacingDirection: z71.enum(["up", "down", "left", "right"]).optional(),
17355
+ gender: z71.enum(["male", "female", "unpopulated"]).optional().default("male"),
17356
+ showSilkscreenPinLabels: z71.boolean().optional(),
17357
+ pcbPinLabels: z71.record(z71.string(), z71.string()).optional(),
17358
+ doubleRow: z71.boolean().optional(),
17359
+ rightAngle: z71.boolean().optional(),
17350
17360
  pcbOrientation: pcbOrientation.optional(),
17351
17361
  holeDiameter: distance20.optional(),
17352
17362
  platedDiameter: distance20.optional(),
17353
- pinLabels: z70.record(z70.string(), schematicPinLabel).or(z70.array(schematicPinLabel)).optional(),
17354
- connections: z70.custom().pipe(z70.record(z70.string(), connectionTarget)).optional(),
17355
- facingDirection: z70.enum(["left", "right"]).optional(),
17363
+ pinLabels: z71.record(z71.string(), schematicPinLabel).or(z71.array(schematicPinLabel)).optional(),
17364
+ connections: z71.custom().pipe(z71.record(z71.string(), connectionTarget)).optional(),
17365
+ facingDirection: z71.enum(["left", "right"]).optional(),
17356
17366
  schPinArrangement: schematicPinArrangement.optional(),
17357
17367
  schPinStyle: schematicPinStyle.optional(),
17358
17368
  schPinSpacing: distance20.optional(),
@@ -17362,29 +17372,29 @@ var pinHeaderProps = commonComponentProps.extend({
17362
17372
  expectTypesMatch(true);
17363
17373
 
17364
17374
  // lib/components/netalias.ts
17365
- import { z as z71 } from "zod";
17375
+ import { z as z72 } from "zod";
17366
17376
  import { rotation as rotation3 } from "circuit-json";
17367
- var netAliasProps = z71.object({
17368
- net: z71.string().optional(),
17369
- connection: z71.string().optional(),
17377
+ var netAliasProps = z72.object({
17378
+ net: z72.string().optional(),
17379
+ connection: z72.string().optional(),
17370
17380
  schX: distance.optional(),
17371
17381
  schY: distance.optional(),
17372
17382
  schRotation: rotation3.optional(),
17373
- anchorSide: z71.enum(["left", "top", "right", "bottom"]).optional()
17383
+ anchorSide: z72.enum(["left", "top", "right", "bottom"]).optional()
17374
17384
  });
17375
17385
  expectTypesMatch(true);
17376
17386
 
17377
17387
  // lib/components/netlabel.ts
17378
- import { z as z72 } from "zod";
17388
+ import { z as z73 } from "zod";
17379
17389
  import { rotation as rotation4 } from "circuit-json";
17380
- var netLabelProps = z72.object({
17381
- net: z72.string().optional(),
17382
- connection: z72.string().optional(),
17383
- connectsTo: z72.string().or(z72.array(z72.string())).optional(),
17390
+ var netLabelProps = z73.object({
17391
+ net: z73.string().optional(),
17392
+ connection: z73.string().optional(),
17393
+ connectsTo: z73.string().or(z73.array(z73.string())).optional(),
17384
17394
  schX: distance.optional(),
17385
17395
  schY: distance.optional(),
17386
17396
  schRotation: rotation4.optional(),
17387
- anchorSide: z72.enum(["left", "top", "right", "bottom"]).optional()
17397
+ anchorSide: z73.enum(["left", "top", "right", "bottom"]).optional()
17388
17398
  });
17389
17399
  expectTypesMatch(true);
17390
17400
 
@@ -17399,52 +17409,52 @@ expectTypesMatch(true);
17399
17409
 
17400
17410
  // lib/components/analogsimulation.ts
17401
17411
  import { ms } from "circuit-json";
17402
- import { z as z74 } from "zod";
17403
- var spiceEngine = z74.custom(
17412
+ import { z as z75 } from "zod";
17413
+ var spiceEngine = z75.custom(
17404
17414
  (value) => typeof value === "string"
17405
17415
  );
17406
- var spiceOptions = z74.object({
17407
- method: z74.enum(["trap", "gear"]).optional(),
17408
- reltol: z74.union([z74.number(), z74.string()]).optional(),
17409
- abstol: z74.union([z74.number(), z74.string()]).optional(),
17410
- vntol: z74.union([z74.number(), z74.string()]).optional()
17416
+ var spiceOptions = z75.object({
17417
+ method: z75.enum(["trap", "gear"]).optional(),
17418
+ reltol: z75.union([z75.number(), z75.string()]).optional(),
17419
+ abstol: z75.union([z75.number(), z75.string()]).optional(),
17420
+ vntol: z75.union([z75.number(), z75.string()]).optional()
17411
17421
  });
17412
- var analogSimulationProps = z74.object({
17413
- name: z74.string().optional(),
17414
- simulationType: z74.literal("spice_transient_analysis").default("spice_transient_analysis"),
17422
+ var analogSimulationProps = z75.object({
17423
+ name: z75.string().optional(),
17424
+ simulationType: z75.literal("spice_transient_analysis").default("spice_transient_analysis"),
17415
17425
  duration: ms.optional(),
17416
17426
  startTime: ms.optional(),
17417
17427
  timePerStep: ms.optional(),
17418
17428
  spiceEngine: spiceEngine.optional(),
17419
17429
  spiceOptions: spiceOptions.optional(),
17420
- graphIndependentAxes: z74.boolean().optional()
17430
+ graphIndependentAxes: z75.boolean().optional()
17421
17431
  });
17422
17432
  expectTypesMatch(
17423
17433
  true
17424
17434
  );
17425
17435
 
17426
17436
  // lib/components/autoroutingphase.ts
17427
- import { z as z75 } from "zod";
17428
- var autoroutingPhaseProps = z75.object({
17429
- key: z75.any().optional(),
17430
- name: z75.string().optional(),
17437
+ import { z as z76 } from "zod";
17438
+ var autoroutingPhaseProps = z76.object({
17439
+ key: z76.any().optional(),
17440
+ name: z76.string().optional(),
17431
17441
  autorouter: autorouterProp.optional(),
17432
- phaseIndex: z75.number().optional(),
17442
+ phaseIndex: z76.number().optional(),
17433
17443
  ...routingTolerances.shape,
17434
- region: z75.object({
17435
- shape: z75.literal("rect").optional(),
17436
- minX: z75.number(),
17437
- maxX: z75.number(),
17438
- minY: z75.number(),
17439
- maxY: z75.number()
17444
+ region: z76.object({
17445
+ shape: z76.literal("rect").optional(),
17446
+ minX: z76.number(),
17447
+ maxX: z76.number(),
17448
+ minY: z76.number(),
17449
+ maxY: z76.number()
17440
17450
  }).optional(),
17441
- connection: z75.string().optional(),
17442
- connections: z75.array(z75.string()).optional(),
17443
- reroute: z75.boolean().optional()
17451
+ connection: z76.string().optional(),
17452
+ connections: z76.array(z76.string()).optional(),
17453
+ reroute: z76.boolean().optional()
17444
17454
  }).superRefine((value, ctx) => {
17445
17455
  if (value.reroute !== void 0 && value.region === void 0 && value.connection === void 0 && value.connections === void 0) {
17446
17456
  ctx.addIssue({
17447
- code: z75.ZodIssueCode.custom,
17457
+ code: z76.ZodIssueCode.custom,
17448
17458
  message: "region, connection, or connections is required when reroute is provided",
17449
17459
  path: ["region"]
17450
17460
  });
@@ -17453,15 +17463,15 @@ var autoroutingPhaseProps = z75.object({
17453
17463
  expectTypesMatch(true);
17454
17464
 
17455
17465
  // lib/components/spicemodel.ts
17456
- import { z as z76 } from "zod";
17457
- var spicemodelProps = z76.object({
17458
- source: z76.string(),
17459
- spicePinMapping: z76.record(z76.string(), z76.string()).optional()
17466
+ import { z as z77 } from "zod";
17467
+ var spicemodelProps = z77.object({
17468
+ source: z77.string(),
17469
+ spicePinMapping: z77.record(z77.string(), z77.string()).optional()
17460
17470
  });
17461
17471
  expectTypesMatch(true);
17462
17472
 
17463
17473
  // lib/components/transistor.ts
17464
- import { z as z77 } from "zod";
17474
+ import { z as z78 } from "zod";
17465
17475
  var transistorPinsLabels = [
17466
17476
  "pin1",
17467
17477
  "pin2",
@@ -17474,7 +17484,7 @@ var transistorPinsLabels = [
17474
17484
  "drain"
17475
17485
  ];
17476
17486
  var transistorProps = commonComponentProps.extend({
17477
- type: z77.enum(["npn", "pnp", "bjt", "jfet", "mosfet", "igbt"]),
17487
+ type: z78.enum(["npn", "pnp", "bjt", "jfet", "mosfet", "igbt"]),
17478
17488
  connections: createConnectionsProp(transistorPinsLabels).optional()
17479
17489
  });
17480
17490
  var transistorPins = [
@@ -17488,7 +17498,7 @@ var transistorPins = [
17488
17498
  expectTypesMatch(true);
17489
17499
 
17490
17500
  // lib/components/mosfet.ts
17491
- import { z as z78 } from "zod";
17501
+ import { z as z79 } from "zod";
17492
17502
  var mosfetPins = [
17493
17503
  "pin1",
17494
17504
  "drain",
@@ -17498,11 +17508,11 @@ var mosfetPins = [
17498
17508
  "gate"
17499
17509
  ];
17500
17510
  var mosfetProps = commonComponentProps.extend({
17501
- channelType: z78.enum(["n", "p"]),
17502
- mosfetMode: z78.enum(["enhancement", "depletion"]),
17503
- symbolDrainSide: z78.enum(["left", "right", "top", "bottom"]).optional(),
17504
- symbolSourceSide: z78.enum(["left", "right", "top", "bottom"]).optional(),
17505
- symbolGateSide: z78.enum(["left", "right", "top", "bottom"]).optional(),
17511
+ channelType: z79.enum(["n", "p"]),
17512
+ mosfetMode: z79.enum(["enhancement", "depletion"]),
17513
+ symbolDrainSide: z79.enum(["left", "right", "top", "bottom"]).optional(),
17514
+ symbolSourceSide: z79.enum(["left", "right", "top", "bottom"]).optional(),
17515
+ symbolGateSide: z79.enum(["left", "right", "top", "bottom"]).optional(),
17506
17516
  connections: createConnectionsProp(mosfetPins).optional()
17507
17517
  });
17508
17518
  expectTypesMatch(true);
@@ -17524,20 +17534,20 @@ expectTypesMatch(true);
17524
17534
 
17525
17535
  // lib/components/inductor.ts
17526
17536
  import { inductance } from "circuit-json";
17527
- import { z as z80 } from "zod";
17537
+ import { z as z81 } from "zod";
17528
17538
  var inductorPins = lrPins;
17529
17539
  var inductorProps = commonComponentProps.extend({
17530
17540
  inductance,
17531
- maxCurrentRating: z80.union([z80.string(), z80.number()]).optional(),
17541
+ maxCurrentRating: z81.union([z81.string(), z81.number()]).optional(),
17532
17542
  schOrientation: schematicOrientation.optional(),
17533
17543
  connections: createConnectionsProp(inductorPins).optional()
17534
17544
  });
17535
17545
  expectTypesMatch(true);
17536
17546
 
17537
17547
  // lib/components/diode.ts
17538
- import { z as z81 } from "zod";
17548
+ import { z as z82 } from "zod";
17539
17549
  var diodePins = lrPolarPins;
17540
- var diodeConnectionKeys = z81.enum([
17550
+ var diodeConnectionKeys = z82.enum([
17541
17551
  "anode",
17542
17552
  "cathode",
17543
17553
  "pin1",
@@ -17545,13 +17555,13 @@ var diodeConnectionKeys = z81.enum([
17545
17555
  "pos",
17546
17556
  "neg"
17547
17557
  ]);
17548
- var connectionTarget3 = z81.string().or(z81.array(z81.string()).readonly()).or(z81.array(z81.string()));
17549
- var connectionsProp2 = z81.record(diodeConnectionKeys, connectionTarget3);
17550
- var diodePinLabelsProp = z81.record(
17551
- z81.enum(diodePins),
17552
- schematicPinLabel.or(z81.array(schematicPinLabel).readonly()).or(z81.array(schematicPinLabel))
17558
+ var connectionTarget3 = z82.string().or(z82.array(z82.string()).readonly()).or(z82.array(z82.string()));
17559
+ var connectionsProp2 = z82.record(diodeConnectionKeys, connectionTarget3);
17560
+ var diodePinLabelsProp = z82.record(
17561
+ z82.enum(diodePins),
17562
+ schematicPinLabel.or(z82.array(schematicPinLabel).readonly()).or(z82.array(schematicPinLabel))
17553
17563
  );
17554
- var diodeVariant = z81.enum([
17564
+ var diodeVariant = z82.enum([
17555
17565
  "standard",
17556
17566
  "schottky",
17557
17567
  "zener",
@@ -17562,12 +17572,12 @@ var diodeVariant = z81.enum([
17562
17572
  var diodeProps = commonComponentProps.extend({
17563
17573
  connections: connectionsProp2.optional(),
17564
17574
  variant: diodeVariant.optional().default("standard"),
17565
- standard: z81.boolean().optional(),
17566
- schottky: z81.boolean().optional(),
17567
- zener: z81.boolean().optional(),
17568
- avalanche: z81.boolean().optional(),
17569
- photo: z81.boolean().optional(),
17570
- tvs: z81.boolean().optional(),
17575
+ standard: z82.boolean().optional(),
17576
+ schottky: z82.boolean().optional(),
17577
+ zener: z82.boolean().optional(),
17578
+ avalanche: z82.boolean().optional(),
17579
+ photo: z82.boolean().optional(),
17580
+ tvs: z82.boolean().optional(),
17571
17581
  schOrientation: schematicOrientation.optional(),
17572
17582
  pinLabels: diodePinLabelsProp.optional()
17573
17583
  }).superRefine((data, ctx) => {
@@ -17581,11 +17591,11 @@ var diodeProps = commonComponentProps.extend({
17581
17591
  ].filter(Boolean).length;
17582
17592
  if (enabledFlags > 1) {
17583
17593
  ctx.addIssue({
17584
- code: z81.ZodIssueCode.custom,
17594
+ code: z82.ZodIssueCode.custom,
17585
17595
  message: "Exactly one diode variant must be enabled",
17586
17596
  path: []
17587
17597
  });
17588
- return z81.INVALID;
17598
+ return z82.INVALID;
17589
17599
  }
17590
17600
  }).transform((data) => {
17591
17601
  const result = {
@@ -17631,34 +17641,34 @@ var diodeProps = commonComponentProps.extend({
17631
17641
  expectTypesMatch(true);
17632
17642
 
17633
17643
  // lib/components/led.ts
17634
- import { z as z82 } from "zod";
17644
+ import { z as z83 } from "zod";
17635
17645
  var ledProps = commonComponentProps.extend({
17636
- color: z82.string().optional(),
17637
- wavelength: z82.string().optional(),
17638
- schDisplayValue: z82.string().optional(),
17646
+ color: z83.string().optional(),
17647
+ wavelength: z83.string().optional(),
17648
+ schDisplayValue: z83.string().optional(),
17639
17649
  schOrientation: schematicOrientation.optional(),
17640
17650
  connections: createConnectionsProp(lrPolarPins).optional(),
17641
- laser: z82.boolean().optional()
17651
+ laser: z83.boolean().optional()
17642
17652
  });
17643
17653
  var ledPins = lrPolarPins;
17644
17654
 
17645
17655
  // lib/components/switch.ts
17646
17656
  import { ms as ms2, frequency as frequency3 } from "circuit-json";
17647
- import { z as z83 } from "zod";
17657
+ import { z as z84 } from "zod";
17648
17658
  var switchProps = commonComponentProps.extend({
17649
- type: z83.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
17650
- isNormallyClosed: z83.boolean().optional().default(false),
17651
- spst: z83.boolean().optional(),
17652
- spdt: z83.boolean().optional(),
17653
- dpst: z83.boolean().optional(),
17654
- dpdt: z83.boolean().optional(),
17659
+ type: z84.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
17660
+ isNormallyClosed: z84.boolean().optional().default(false),
17661
+ spst: z84.boolean().optional(),
17662
+ spdt: z84.boolean().optional(),
17663
+ dpst: z84.boolean().optional(),
17664
+ dpdt: z84.boolean().optional(),
17655
17665
  pinLabels: pinLabelsProp.optional(),
17656
17666
  simSwitchFrequency: frequency3.optional(),
17657
17667
  simCloseAt: ms2.optional(),
17658
17668
  simOpenAt: ms2.optional(),
17659
- simStartClosed: z83.boolean().optional(),
17660
- simStartOpen: z83.boolean().optional(),
17661
- connections: z83.custom().pipe(z83.record(z83.string(), connectionTarget)).optional()
17669
+ simStartClosed: z84.boolean().optional(),
17670
+ simStartOpen: z84.boolean().optional(),
17671
+ connections: z84.custom().pipe(z84.record(z84.string(), connectionTarget)).optional()
17662
17672
  }).transform((props) => {
17663
17673
  const updatedProps = { ...props };
17664
17674
  if (updatedProps.dpdt) {
@@ -17690,33 +17700,33 @@ expectTypesMatch(true);
17690
17700
 
17691
17701
  // lib/components/fabrication-note-text.ts
17692
17702
  import { length as length4 } from "circuit-json";
17693
- import { z as z84 } from "zod";
17703
+ import { z as z85 } from "zod";
17694
17704
  var fabricationNoteTextProps = pcbLayoutProps.extend({
17695
- text: z84.string(),
17696
- anchorAlignment: z84.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
17697
- font: z84.enum(["tscircuit2024"]).optional(),
17705
+ text: z85.string(),
17706
+ anchorAlignment: z85.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
17707
+ font: z85.enum(["tscircuit2024"]).optional(),
17698
17708
  fontSize: length4.optional(),
17699
- color: z84.string().optional()
17709
+ color: z85.string().optional()
17700
17710
  });
17701
17711
  expectTypesMatch(true);
17702
17712
 
17703
17713
  // lib/components/fabrication-note-rect.ts
17704
17714
  import { distance as distance21 } from "circuit-json";
17705
- import { z as z85 } from "zod";
17715
+ import { z as z86 } from "zod";
17706
17716
  var fabricationNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17707
17717
  width: distance21,
17708
17718
  height: distance21,
17709
17719
  strokeWidth: distance21.optional(),
17710
- isFilled: z85.boolean().optional(),
17711
- hasStroke: z85.boolean().optional(),
17712
- isStrokeDashed: z85.boolean().optional(),
17713
- color: z85.string().optional(),
17720
+ isFilled: z86.boolean().optional(),
17721
+ hasStroke: z86.boolean().optional(),
17722
+ isStrokeDashed: z86.boolean().optional(),
17723
+ color: z86.string().optional(),
17714
17724
  cornerRadius: distance21.optional()
17715
17725
  });
17716
17726
 
17717
17727
  // lib/components/fabrication-note-path.ts
17718
17728
  import { length as length5, route_hint_point as route_hint_point3 } from "circuit-json";
17719
- import { z as z86 } from "zod";
17729
+ import { z as z87 } from "zod";
17720
17730
  var fabricationNotePathProps = pcbLayoutProps.omit({
17721
17731
  pcbLeftEdgeX: true,
17722
17732
  pcbRightEdgeX: true,
@@ -17728,15 +17738,15 @@ var fabricationNotePathProps = pcbLayoutProps.omit({
17728
17738
  pcbOffsetY: true,
17729
17739
  pcbRotation: true
17730
17740
  }).extend({
17731
- route: z86.array(route_hint_point3),
17741
+ route: z87.array(route_hint_point3),
17732
17742
  strokeWidth: length5.optional(),
17733
- color: z86.string().optional()
17743
+ color: z87.string().optional()
17734
17744
  });
17735
17745
 
17736
17746
  // lib/components/fabrication-note-dimension.ts
17737
17747
  import { distance as distance22, length as length6 } from "circuit-json";
17738
- import { z as z87 } from "zod";
17739
- var dimensionTarget = z87.union([z87.string(), point]);
17748
+ import { z as z88 } from "zod";
17749
+ var dimensionTarget = z88.union([z88.string(), point]);
17740
17750
  var fabricationNoteDimensionProps = pcbLayoutProps.omit({
17741
17751
  pcbLeftEdgeX: true,
17742
17752
  pcbRightEdgeX: true,
@@ -17750,54 +17760,54 @@ var fabricationNoteDimensionProps = pcbLayoutProps.omit({
17750
17760
  }).extend({
17751
17761
  from: dimensionTarget,
17752
17762
  to: dimensionTarget,
17753
- text: z87.string().optional(),
17763
+ text: z88.string().optional(),
17754
17764
  offset: distance22.optional(),
17755
- font: z87.enum(["tscircuit2024"]).optional(),
17765
+ font: z88.enum(["tscircuit2024"]).optional(),
17756
17766
  fontSize: length6.optional(),
17757
- color: z87.string().optional(),
17767
+ color: z88.string().optional(),
17758
17768
  arrowSize: distance22.optional(),
17759
- units: z87.enum(["in", "mm"]).optional(),
17760
- outerEdgeToEdge: z87.literal(true).optional(),
17761
- centerToCenter: z87.literal(true).optional(),
17762
- innerEdgeToEdge: z87.literal(true).optional()
17769
+ units: z88.enum(["in", "mm"]).optional(),
17770
+ outerEdgeToEdge: z88.literal(true).optional(),
17771
+ centerToCenter: z88.literal(true).optional(),
17772
+ innerEdgeToEdge: z88.literal(true).optional()
17763
17773
  });
17764
17774
  expectTypesMatch(true);
17765
17775
 
17766
17776
  // lib/components/pcb-trace.ts
17767
17777
  import { distance as distance23, route_hint_point as route_hint_point4 } from "circuit-json";
17768
- import { z as z88 } from "zod";
17769
- var pcbTraceProps = z88.object({
17770
- layer: z88.string().optional(),
17778
+ import { z as z89 } from "zod";
17779
+ var pcbTraceProps = z89.object({
17780
+ layer: z89.string().optional(),
17771
17781
  thickness: distance23.optional(),
17772
- route: z88.array(route_hint_point4)
17782
+ route: z89.array(route_hint_point4)
17773
17783
  });
17774
17784
 
17775
17785
  // lib/components/via.ts
17776
17786
  import { distance as distance24, layer_ref as layer_ref6 } from "circuit-json";
17777
- import { z as z89 } from "zod";
17787
+ import { z as z90 } from "zod";
17778
17788
  var viaProps = commonLayoutProps.extend({
17779
- name: z89.string().optional(),
17789
+ name: z90.string().optional(),
17780
17790
  fromLayer: layer_ref6.optional(),
17781
17791
  toLayer: layer_ref6.optional(),
17782
17792
  holeDiameter: distance24.optional(),
17783
17793
  outerDiameter: distance24.optional(),
17784
- layers: z89.array(layer_ref6).optional(),
17785
- connectsTo: z89.string().or(z89.array(z89.string())).optional(),
17786
- netIsAssignable: z89.boolean().optional()
17794
+ layers: z90.array(layer_ref6).optional(),
17795
+ connectsTo: z90.string().or(z90.array(z90.string())).optional(),
17796
+ netIsAssignable: z90.boolean().optional()
17787
17797
  });
17788
17798
  expectTypesMatch(true);
17789
17799
 
17790
17800
  // lib/components/testpoint.ts
17791
17801
  import { distance as distance25 } from "circuit-json";
17792
- import { z as z90 } from "zod";
17802
+ import { z as z91 } from "zod";
17793
17803
  var testpointPins = ["pin1"];
17794
- var testpointConnectionsProp = z90.object({
17804
+ var testpointConnectionsProp = z91.object({
17795
17805
  pin1: connectionTarget
17796
17806
  }).strict();
17797
17807
  var testpointProps = commonComponentProps.extend({
17798
17808
  connections: testpointConnectionsProp.optional(),
17799
- footprintVariant: z90.enum(["pad", "through_hole"]).optional(),
17800
- padShape: z90.enum(["rect", "circle"]).optional().default("circle"),
17809
+ footprintVariant: z91.enum(["pad", "through_hole"]).optional(),
17810
+ padShape: z91.enum(["rect", "circle"]).optional().default("circle"),
17801
17811
  padDiameter: distance25.optional(),
17802
17812
  holeDiameter: distance25.optional(),
17803
17813
  width: distance25.optional(),
@@ -17809,45 +17819,45 @@ var testpointProps = commonComponentProps.extend({
17809
17819
  expectTypesMatch(true);
17810
17820
 
17811
17821
  // lib/components/breakoutpoint.ts
17812
- import { z as z91 } from "zod";
17822
+ import { z as z92 } from "zod";
17813
17823
  var breakoutPointProps = pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
17814
- connection: z91.string()
17824
+ connection: z92.string()
17815
17825
  });
17816
17826
  expectTypesMatch(true);
17817
17827
 
17818
17828
  // lib/components/pcb-keepout.ts
17819
17829
  import { distance as distance26, layer_ref as layer_ref7 } from "circuit-json";
17820
- import { z as z92 } from "zod";
17821
- var pcbKeepoutProps = z92.union([
17830
+ import { z as z93 } from "zod";
17831
+ var pcbKeepoutProps = z93.union([
17822
17832
  pcbLayoutProps.omit({ pcbRotation: true }).extend({
17823
- shape: z92.literal("circle"),
17833
+ shape: z93.literal("circle"),
17824
17834
  radius: distance26,
17825
- layers: z92.array(layer_ref7).optional()
17835
+ layers: z93.array(layer_ref7).optional()
17826
17836
  }),
17827
17837
  pcbLayoutProps.extend({
17828
- shape: z92.literal("rect"),
17838
+ shape: z93.literal("rect"),
17829
17839
  width: distance26,
17830
17840
  height: distance26,
17831
- layers: z92.array(layer_ref7).optional()
17841
+ layers: z93.array(layer_ref7).optional()
17832
17842
  })
17833
17843
  ]);
17834
17844
 
17835
17845
  // lib/components/courtyard-rect.ts
17836
17846
  import { distance as distance27 } from "circuit-json";
17837
- import { z as z93 } from "zod";
17847
+ import { z as z94 } from "zod";
17838
17848
  var courtyardRectProps = pcbLayoutProps.extend({
17839
17849
  width: distance27,
17840
17850
  height: distance27,
17841
17851
  strokeWidth: distance27.optional(),
17842
- isFilled: z93.boolean().optional(),
17843
- hasStroke: z93.boolean().optional(),
17844
- isStrokeDashed: z93.boolean().optional(),
17845
- color: z93.string().optional()
17852
+ isFilled: z94.boolean().optional(),
17853
+ hasStroke: z94.boolean().optional(),
17854
+ isStrokeDashed: z94.boolean().optional(),
17855
+ color: z94.string().optional()
17846
17856
  });
17847
17857
 
17848
17858
  // lib/components/courtyard-outline.ts
17849
17859
  import { length as length7 } from "circuit-json";
17850
- import { z as z94 } from "zod";
17860
+ import { z as z95 } from "zod";
17851
17861
  var courtyardOutlineProps = pcbLayoutProps.omit({
17852
17862
  pcbLeftEdgeX: true,
17853
17863
  pcbRightEdgeX: true,
@@ -17859,11 +17869,11 @@ var courtyardOutlineProps = pcbLayoutProps.omit({
17859
17869
  pcbOffsetY: true,
17860
17870
  pcbRotation: true
17861
17871
  }).extend({
17862
- outline: z94.array(point),
17872
+ outline: z95.array(point),
17863
17873
  strokeWidth: length7.optional(),
17864
- isClosed: z94.boolean().optional(),
17865
- isStrokeDashed: z94.boolean().optional(),
17866
- color: z94.string().optional()
17874
+ isClosed: z95.boolean().optional(),
17875
+ isStrokeDashed: z95.boolean().optional(),
17876
+ color: z95.string().optional()
17867
17877
  });
17868
17878
 
17869
17879
  // lib/components/courtyard-circle.ts
@@ -17883,35 +17893,35 @@ var courtyardPillProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17883
17893
  });
17884
17894
 
17885
17895
  // lib/components/copper-pour.ts
17886
- import { z as z97 } from "zod";
17896
+ import { z as z98 } from "zod";
17887
17897
  import { layer_ref as layer_ref8 } from "circuit-json";
17888
- var copperPourProps = z97.object({
17889
- name: z97.string().optional(),
17898
+ var copperPourProps = z98.object({
17899
+ name: z98.string().optional(),
17890
17900
  layer: layer_ref8,
17891
- connectsTo: z97.string(),
17892
- unbroken: z97.boolean().optional(),
17901
+ connectsTo: z98.string(),
17902
+ unbroken: z98.boolean().optional(),
17893
17903
  padMargin: distance.optional(),
17894
17904
  traceMargin: distance.optional(),
17895
17905
  clearance: distance.optional(),
17896
17906
  boardEdgeMargin: distance.optional(),
17897
17907
  cutoutMargin: distance.optional(),
17898
- outline: z97.array(point).optional(),
17899
- coveredWithSolderMask: z97.boolean().optional().default(true)
17908
+ outline: z98.array(point).optional(),
17909
+ coveredWithSolderMask: z98.boolean().optional().default(true)
17900
17910
  });
17901
17911
  expectTypesMatch(true);
17902
17912
 
17903
17913
  // lib/components/cadassembly.ts
17904
17914
  import { layer_ref as layer_ref9 } from "circuit-json";
17905
- import { z as z98 } from "zod";
17906
- var cadassemblyProps = z98.object({
17915
+ import { z as z99 } from "zod";
17916
+ var cadassemblyProps = z99.object({
17907
17917
  originalLayer: layer_ref9.default("top").optional(),
17908
- children: z98.any().optional()
17918
+ children: z99.any().optional()
17909
17919
  });
17910
17920
  expectTypesMatch(true);
17911
17921
 
17912
17922
  // lib/components/cadmodel.ts
17913
- import { z as z99 } from "zod";
17914
- var pcbPosition = z99.object({
17923
+ import { z as z100 } from "zod";
17924
+ var pcbPosition = z100.object({
17915
17925
  pcbX: pcbCoordinate.optional(),
17916
17926
  pcbY: pcbCoordinate.optional(),
17917
17927
  pcbLeftEdgeX: pcbCoordinate.optional(),
@@ -17928,7 +17938,7 @@ var cadModelBaseWithUrl = cadModelBase.extend({
17928
17938
  });
17929
17939
  var cadModelObject = cadModelBaseWithUrl.merge(pcbPosition);
17930
17940
  expectTypesMatch(true);
17931
- var cadmodelProps = z99.union([z99.null(), url, cadModelObject]);
17941
+ var cadmodelProps = z100.union([z100.null(), url, cadModelObject]);
17932
17942
 
17933
17943
  // lib/components/power-source.ts
17934
17944
  import { voltage as voltage3 } from "circuit-json";
@@ -17938,9 +17948,9 @@ var powerSourceProps = commonComponentProps.extend({
17938
17948
 
17939
17949
  // lib/components/voltagesource.ts
17940
17950
  import { frequency as frequency4, ms as ms3, rotation as rotation5, voltage as voltage4 } from "circuit-json";
17941
- import { z as z100 } from "zod";
17951
+ import { z as z101 } from "zod";
17942
17952
  var voltageSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
17943
- var percentage = z100.union([z100.string(), z100.number()]).transform((val) => {
17953
+ var percentage = z101.union([z101.string(), z101.number()]).transform((val) => {
17944
17954
  if (typeof val === "string") {
17945
17955
  if (val.endsWith("%")) {
17946
17956
  return parseFloat(val.slice(0, -1)) / 100;
@@ -17949,13 +17959,13 @@ var percentage = z100.union([z100.string(), z100.number()]).transform((val) => {
17949
17959
  }
17950
17960
  return val;
17951
17961
  }).pipe(
17952
- z100.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
17962
+ z101.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
17953
17963
  );
17954
17964
  var voltageSourceProps = commonComponentProps.extend({
17955
17965
  voltage: voltage4.optional(),
17956
17966
  frequency: frequency4.optional(),
17957
17967
  peakToPeakVoltage: voltage4.optional(),
17958
- waveShape: z100.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
17968
+ waveShape: z101.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
17959
17969
  phase: rotation5.optional(),
17960
17970
  dutyCycle: percentage.optional(),
17961
17971
  pulseDelay: ms3.optional(),
@@ -17970,9 +17980,9 @@ expectTypesMatch(true);
17970
17980
 
17971
17981
  // lib/components/currentsource.ts
17972
17982
  import { frequency as frequency5, rotation as rotation6, current } from "circuit-json";
17973
- import { z as z101 } from "zod";
17983
+ import { z as z102 } from "zod";
17974
17984
  var currentSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
17975
- var percentage2 = z101.union([z101.string(), z101.number()]).transform((val) => {
17985
+ var percentage2 = z102.union([z102.string(), z102.number()]).transform((val) => {
17976
17986
  if (typeof val === "string") {
17977
17987
  if (val.endsWith("%")) {
17978
17988
  return parseFloat(val.slice(0, -1)) / 100;
@@ -17981,13 +17991,13 @@ var percentage2 = z101.union([z101.string(), z101.number()]).transform((val) =>
17981
17991
  }
17982
17992
  return val;
17983
17993
  }).pipe(
17984
- z101.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
17994
+ z102.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
17985
17995
  );
17986
17996
  var currentSourceProps = commonComponentProps.extend({
17987
17997
  current: current.optional(),
17988
17998
  frequency: frequency5.optional(),
17989
17999
  peakToPeakCurrent: current.optional(),
17990
- waveShape: z101.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
18000
+ waveShape: z102.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
17991
18001
  phase: rotation6.optional(),
17992
18002
  dutyCycle: percentage2.optional(),
17993
18003
  connections: createConnectionsProp(currentSourcePinLabels).optional()
@@ -17996,21 +18006,21 @@ var currentSourcePins = lrPolarPins;
17996
18006
  expectTypesMatch(true);
17997
18007
 
17998
18008
  // lib/components/voltageprobe.ts
17999
- import { z as z102 } from "zod";
18009
+ import { z as z103 } from "zod";
18000
18010
  var voltageProbeProps = commonComponentProps.omit({ name: true }).extend({
18001
- name: z102.string().optional(),
18002
- connectsTo: z102.string(),
18003
- referenceTo: z102.string().optional(),
18004
- color: z102.string().optional(),
18005
- graphDisplayName: z102.string().optional(),
18006
- graphCenter: z102.number().optional(),
18007
- graphVerticalOffset: z102.number().or(z102.string()).optional(),
18008
- graphVoltagePerDiv: z102.number().or(z102.string()).optional()
18011
+ name: z103.string().optional(),
18012
+ connectsTo: z103.string(),
18013
+ referenceTo: z103.string().optional(),
18014
+ color: z103.string().optional(),
18015
+ graphDisplayName: z103.string().optional(),
18016
+ graphCenter: z103.number().optional(),
18017
+ graphVerticalOffset: z103.number().or(z103.string()).optional(),
18018
+ graphVoltagePerDiv: z103.number().or(z103.string()).optional()
18009
18019
  });
18010
18020
  expectTypesMatch(true);
18011
18021
 
18012
18022
  // lib/components/ammeter.ts
18013
- import { z as z103 } from "zod";
18023
+ import { z as z104 } from "zod";
18014
18024
  var ammeterPinLabels = ["pin1", "pin2", "pos", "neg"];
18015
18025
  var hasAmmeterConnectionPair = (connections) => {
18016
18026
  return connections.pos !== void 0 && connections.neg !== void 0 || connections.pin1 !== void 0 && connections.pin2 !== void 0;
@@ -18020,57 +18030,57 @@ var ammeterProps = commonComponentProps.extend({
18020
18030
  hasAmmeterConnectionPair,
18021
18031
  "Ammeter connections must include either pos/neg or pin1/pin2"
18022
18032
  ),
18023
- color: z103.string().optional(),
18024
- graphDisplayName: z103.string().optional(),
18025
- graphCenter: z103.number().optional(),
18026
- graphVerticalOffset: z103.number().or(z103.string()).optional(),
18027
- graphCurrentPerDiv: z103.number().or(z103.string()).optional()
18033
+ color: z104.string().optional(),
18034
+ graphDisplayName: z104.string().optional(),
18035
+ graphCenter: z104.number().optional(),
18036
+ graphVerticalOffset: z104.number().or(z104.string()).optional(),
18037
+ graphCurrentPerDiv: z104.number().or(z104.string()).optional()
18028
18038
  });
18029
18039
  var ammeterPins = ammeterPinLabels;
18030
18040
  expectTypesMatch(true);
18031
18041
 
18032
18042
  // lib/components/schematic-arc.ts
18033
18043
  import { distance as distance30, point as point5, rotation as rotation7 } from "circuit-json";
18034
- import { z as z104 } from "zod";
18035
- var schematicArcProps = z104.object({
18044
+ import { z as z105 } from "zod";
18045
+ var schematicArcProps = z105.object({
18036
18046
  center: point5,
18037
18047
  radius: distance30,
18038
18048
  startAngleDegrees: rotation7,
18039
18049
  endAngleDegrees: rotation7,
18040
- direction: z104.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
18050
+ direction: z105.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
18041
18051
  strokeWidth: distance30.optional(),
18042
- color: z104.string().optional(),
18043
- isDashed: z104.boolean().optional().default(false)
18052
+ color: z105.string().optional(),
18053
+ isDashed: z105.boolean().optional().default(false)
18044
18054
  });
18045
18055
  expectTypesMatch(true);
18046
18056
 
18047
18057
  // lib/components/toolingrail.ts
18048
- import { z as z105 } from "zod";
18049
- var toolingrailProps = z105.object({
18050
- children: z105.any().optional()
18058
+ import { z as z106 } from "zod";
18059
+ var toolingrailProps = z106.object({
18060
+ children: z106.any().optional()
18051
18061
  });
18052
18062
  expectTypesMatch(true);
18053
18063
 
18054
18064
  // lib/components/schematic-box.ts
18055
18065
  import { distance as distance31 } from "circuit-json";
18056
- import { z as z106 } from "zod";
18057
- var schematicBoxProps = z106.object({
18066
+ import { z as z107 } from "zod";
18067
+ var schematicBoxProps = z107.object({
18058
18068
  schX: distance31.optional(),
18059
18069
  schY: distance31.optional(),
18060
18070
  width: distance31.optional(),
18061
18071
  height: distance31.optional(),
18062
- overlay: z106.array(z106.string()).optional(),
18072
+ overlay: z107.array(z107.string()).optional(),
18063
18073
  padding: distance31.optional(),
18064
18074
  paddingLeft: distance31.optional(),
18065
18075
  paddingRight: distance31.optional(),
18066
18076
  paddingTop: distance31.optional(),
18067
18077
  paddingBottom: distance31.optional(),
18068
- title: z106.string().optional(),
18078
+ title: z107.string().optional(),
18069
18079
  titleAlignment: ninePointAnchor.default("top_left"),
18070
- titleColor: z106.string().optional(),
18080
+ titleColor: z107.string().optional(),
18071
18081
  titleFontSize: distance31.optional(),
18072
- titleInside: z106.boolean().default(false),
18073
- strokeStyle: z106.enum(["solid", "dashed"]).default("solid")
18082
+ titleInside: z107.boolean().default(false),
18083
+ strokeStyle: z107.enum(["solid", "dashed"]).default("solid")
18074
18084
  }).refine(
18075
18085
  (elm) => elm.width !== void 0 && elm.height !== void 0 || Array.isArray(elm.overlay) && elm.overlay.length > 0,
18076
18086
  {
@@ -18086,15 +18096,15 @@ expectTypesMatch(true);
18086
18096
 
18087
18097
  // lib/components/schematic-circle.ts
18088
18098
  import { distance as distance32, point as point6 } from "circuit-json";
18089
- import { z as z107 } from "zod";
18090
- var schematicCircleProps = z107.object({
18099
+ import { z as z108 } from "zod";
18100
+ var schematicCircleProps = z108.object({
18091
18101
  center: point6,
18092
18102
  radius: distance32,
18093
18103
  strokeWidth: distance32.optional(),
18094
- color: z107.string().optional(),
18095
- isFilled: z107.boolean().optional().default(false),
18096
- fillColor: z107.string().optional(),
18097
- isDashed: z107.boolean().optional().default(false)
18104
+ color: z108.string().optional(),
18105
+ isFilled: z108.boolean().optional().default(false),
18106
+ fillColor: z108.string().optional(),
18107
+ isDashed: z108.boolean().optional().default(false)
18098
18108
  });
18099
18109
  expectTypesMatch(
18100
18110
  true
@@ -18102,32 +18112,32 @@ expectTypesMatch(
18102
18112
 
18103
18113
  // lib/components/schematic-rect.ts
18104
18114
  import { distance as distance33, rotation as rotation8 } from "circuit-json";
18105
- import { z as z108 } from "zod";
18106
- var schematicRectProps = z108.object({
18115
+ import { z as z109 } from "zod";
18116
+ var schematicRectProps = z109.object({
18107
18117
  schX: distance33.optional(),
18108
18118
  schY: distance33.optional(),
18109
18119
  width: distance33,
18110
18120
  height: distance33,
18111
18121
  rotation: rotation8.default(0),
18112
18122
  strokeWidth: distance33.optional(),
18113
- color: z108.string().optional(),
18114
- isFilled: z108.boolean().optional().default(false),
18115
- fillColor: z108.string().optional(),
18116
- isDashed: z108.boolean().optional().default(false)
18123
+ color: z109.string().optional(),
18124
+ isFilled: z109.boolean().optional().default(false),
18125
+ fillColor: z109.string().optional(),
18126
+ isDashed: z109.boolean().optional().default(false)
18117
18127
  });
18118
18128
  expectTypesMatch(true);
18119
18129
 
18120
18130
  // lib/components/schematic-line.ts
18121
18131
  import { distance as distance34 } from "circuit-json";
18122
- import { z as z109 } from "zod";
18123
- var schematicLineProps = z109.object({
18132
+ import { z as z110 } from "zod";
18133
+ var schematicLineProps = z110.object({
18124
18134
  x1: distance34,
18125
18135
  y1: distance34,
18126
18136
  x2: distance34,
18127
18137
  y2: distance34,
18128
18138
  strokeWidth: distance34.optional(),
18129
- color: z109.string().optional(),
18130
- isDashed: z109.boolean().optional().default(false),
18139
+ color: z110.string().optional(),
18140
+ isDashed: z110.boolean().optional().default(false),
18131
18141
  dashLength: distance34.optional(),
18132
18142
  dashGap: distance34.optional()
18133
18143
  });
@@ -18135,11 +18145,11 @@ expectTypesMatch(true);
18135
18145
 
18136
18146
  // lib/components/schematic-text.ts
18137
18147
  import { distance as distance35, rotation as rotation9 } from "circuit-json";
18138
- import { z as z111 } from "zod";
18148
+ import { z as z112 } from "zod";
18139
18149
 
18140
18150
  // lib/common/fivePointAnchor.ts
18141
- import { z as z110 } from "zod";
18142
- var fivePointAnchor = z110.enum([
18151
+ import { z as z111 } from "zod";
18152
+ var fivePointAnchor = z111.enum([
18143
18153
  "center",
18144
18154
  "left",
18145
18155
  "right",
@@ -18148,39 +18158,39 @@ var fivePointAnchor = z110.enum([
18148
18158
  ]);
18149
18159
 
18150
18160
  // lib/components/schematic-text.ts
18151
- var schematicTextProps = z111.object({
18161
+ var schematicTextProps = z112.object({
18152
18162
  schX: distance35.optional(),
18153
18163
  schY: distance35.optional(),
18154
- text: z111.string(),
18155
- fontSize: z111.number().default(1),
18156
- anchor: z111.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
18157
- color: z111.string().default("#000000"),
18164
+ text: z112.string(),
18165
+ fontSize: z112.number().default(1),
18166
+ anchor: z112.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
18167
+ color: z112.string().default("#000000"),
18158
18168
  schRotation: rotation9.default(0)
18159
18169
  });
18160
18170
  expectTypesMatch(true);
18161
18171
 
18162
18172
  // lib/components/schematic-path.ts
18163
18173
  import { distance as distance36, point as point7 } from "circuit-json";
18164
- import { z as z112 } from "zod";
18165
- var schematicPathProps = z112.object({
18166
- points: z112.array(point7).optional(),
18167
- svgPath: z112.string().optional(),
18174
+ import { z as z113 } from "zod";
18175
+ var schematicPathProps = z113.object({
18176
+ points: z113.array(point7).optional(),
18177
+ svgPath: z113.string().optional(),
18168
18178
  strokeWidth: distance36.optional(),
18169
- strokeColor: z112.string().optional(),
18179
+ strokeColor: z113.string().optional(),
18170
18180
  dashLength: distance36.optional(),
18171
18181
  dashGap: distance36.optional(),
18172
- isFilled: z112.boolean().optional().default(false),
18173
- fillColor: z112.string().optional()
18182
+ isFilled: z113.boolean().optional().default(false),
18183
+ fillColor: z113.string().optional()
18174
18184
  });
18175
18185
  expectTypesMatch(true);
18176
18186
 
18177
18187
  // lib/components/schematic-table.ts
18178
18188
  import { distance as distance37 } from "circuit-json";
18179
- import { z as z113 } from "zod";
18180
- var schematicTableProps = z113.object({
18189
+ import { z as z114 } from "zod";
18190
+ var schematicTableProps = z114.object({
18181
18191
  schX: distance37.optional(),
18182
18192
  schY: distance37.optional(),
18183
- children: z113.any().optional(),
18193
+ children: z114.any().optional(),
18184
18194
  cellPadding: distance37.optional(),
18185
18195
  borderWidth: distance37.optional(),
18186
18196
  anchor: ninePointAnchor.optional(),
@@ -18190,34 +18200,34 @@ expectTypesMatch(true);
18190
18200
 
18191
18201
  // lib/components/schematic-row.ts
18192
18202
  import { distance as distance38 } from "circuit-json";
18193
- import { z as z114 } from "zod";
18194
- var schematicRowProps = z114.object({
18195
- children: z114.any().optional(),
18203
+ import { z as z115 } from "zod";
18204
+ var schematicRowProps = z115.object({
18205
+ children: z115.any().optional(),
18196
18206
  height: distance38.optional()
18197
18207
  });
18198
18208
  expectTypesMatch(true);
18199
18209
 
18200
18210
  // lib/components/schematic-cell.ts
18201
18211
  import { distance as distance39 } from "circuit-json";
18202
- import { z as z115 } from "zod";
18203
- var schematicCellProps = z115.object({
18204
- children: z115.string().optional(),
18205
- horizontalAlign: z115.enum(["left", "center", "right"]).optional(),
18206
- verticalAlign: z115.enum(["top", "middle", "bottom"]).optional(),
18212
+ import { z as z116 } from "zod";
18213
+ var schematicCellProps = z116.object({
18214
+ children: z116.string().optional(),
18215
+ horizontalAlign: z116.enum(["left", "center", "right"]).optional(),
18216
+ verticalAlign: z116.enum(["top", "middle", "bottom"]).optional(),
18207
18217
  fontSize: distance39.optional(),
18208
- rowSpan: z115.number().optional(),
18209
- colSpan: z115.number().optional(),
18218
+ rowSpan: z116.number().optional(),
18219
+ colSpan: z116.number().optional(),
18210
18220
  width: distance39.optional(),
18211
- text: z115.string().optional()
18221
+ text: z116.string().optional()
18212
18222
  });
18213
18223
  expectTypesMatch(true);
18214
18224
 
18215
18225
  // lib/components/schematic-section.ts
18216
18226
  import { distance as distance40 } from "circuit-json";
18217
- import { z as z116 } from "zod";
18218
- var schematicSectionProps = z116.object({
18219
- displayName: z116.string().optional(),
18220
- name: z116.string(),
18227
+ import { z as z117 } from "zod";
18228
+ var schematicSectionProps = z117.object({
18229
+ displayName: z117.string().optional(),
18230
+ name: z117.string(),
18221
18231
  sectionTitleFontSize: distance40.optional()
18222
18232
  });
18223
18233
  expectTypesMatch(
@@ -18225,51 +18235,51 @@ expectTypesMatch(
18225
18235
  );
18226
18236
 
18227
18237
  // lib/components/schematic-sheet.ts
18228
- import { z as z117 } from "zod";
18229
- var schematicSheetProps = z117.object({
18230
- name: z117.string(),
18231
- displayName: z117.string(),
18232
- sheetIndex: z117.number().optional(),
18233
- children: z117.any().optional()
18238
+ import { z as z118 } from "zod";
18239
+ var schematicSheetProps = z118.object({
18240
+ name: z118.string(),
18241
+ displayName: z118.string(),
18242
+ sheetIndex: z118.number().optional(),
18243
+ children: z118.any().optional()
18234
18244
  });
18235
18245
  expectTypesMatch(true);
18236
18246
 
18237
18247
  // lib/components/copper-text.ts
18238
18248
  import { layer_ref as layer_ref10, length as length8 } from "circuit-json";
18239
- import { z as z118 } from "zod";
18249
+ import { z as z119 } from "zod";
18240
18250
  var copperTextProps = pcbLayoutProps.extend({
18241
- text: z118.string(),
18251
+ text: z119.string(),
18242
18252
  anchorAlignment: ninePointAnchor.default("center"),
18243
- font: z118.enum(["tscircuit2024"]).optional(),
18253
+ font: z119.enum(["tscircuit2024"]).optional(),
18244
18254
  fontSize: length8.optional(),
18245
- layers: z118.array(layer_ref10).optional(),
18246
- knockout: z118.boolean().optional(),
18247
- mirrored: z118.boolean().optional()
18255
+ layers: z119.array(layer_ref10).optional(),
18256
+ knockout: z119.boolean().optional(),
18257
+ mirrored: z119.boolean().optional()
18248
18258
  });
18249
18259
 
18250
18260
  // lib/components/silkscreen-text.ts
18251
18261
  import { layer_ref as layer_ref11, length as length9 } from "circuit-json";
18252
- import { z as z119 } from "zod";
18262
+ import { z as z120 } from "zod";
18253
18263
  var silkscreenTextProps = pcbLayoutProps.extend({
18254
- text: z119.string(),
18264
+ text: z120.string(),
18255
18265
  anchorAlignment: ninePointAnchor.default("center"),
18256
- font: z119.enum(["tscircuit2024"]).optional(),
18266
+ font: z120.enum(["tscircuit2024"]).optional(),
18257
18267
  fontSize: length9.optional(),
18258
18268
  /**
18259
18269
  * If true, text will knock out underlying silkscreen
18260
18270
  */
18261
- isKnockout: z119.boolean().optional(),
18271
+ isKnockout: z120.boolean().optional(),
18262
18272
  knockoutPadding: length9.optional(),
18263
18273
  knockoutPaddingLeft: length9.optional(),
18264
18274
  knockoutPaddingRight: length9.optional(),
18265
18275
  knockoutPaddingTop: length9.optional(),
18266
18276
  knockoutPaddingBottom: length9.optional(),
18267
- layers: z119.array(layer_ref11).optional()
18277
+ layers: z120.array(layer_ref11).optional()
18268
18278
  });
18269
18279
 
18270
18280
  // lib/components/silkscreen-path.ts
18271
18281
  import { length as length10, route_hint_point as route_hint_point5 } from "circuit-json";
18272
- import { z as z120 } from "zod";
18282
+ import { z as z121 } from "zod";
18273
18283
  var silkscreenPathProps = pcbLayoutProps.omit({
18274
18284
  pcbLeftEdgeX: true,
18275
18285
  pcbRightEdgeX: true,
@@ -18281,7 +18291,7 @@ var silkscreenPathProps = pcbLayoutProps.omit({
18281
18291
  pcbOffsetY: true,
18282
18292
  pcbRotation: true
18283
18293
  }).extend({
18284
- route: z120.array(route_hint_point5),
18294
+ route: z121.array(route_hint_point5),
18285
18295
  strokeWidth: length10.optional()
18286
18296
  });
18287
18297
 
@@ -18303,10 +18313,10 @@ var silkscreenLineProps = pcbLayoutProps.omit({
18303
18313
 
18304
18314
  // lib/components/silkscreen-rect.ts
18305
18315
  import { distance as distance42 } from "circuit-json";
18306
- import { z as z121 } from "zod";
18316
+ import { z as z122 } from "zod";
18307
18317
  var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18308
- filled: z121.boolean().default(true).optional(),
18309
- stroke: z121.enum(["dashed", "solid", "none"]).optional(),
18318
+ filled: z122.boolean().default(true).optional(),
18319
+ stroke: z122.enum(["dashed", "solid", "none"]).optional(),
18310
18320
  strokeWidth: distance42.optional(),
18311
18321
  width: distance42,
18312
18322
  height: distance42,
@@ -18315,10 +18325,10 @@ var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18315
18325
 
18316
18326
  // lib/components/silkscreen-circle.ts
18317
18327
  import { distance as distance43 } from "circuit-json";
18318
- import { z as z122 } from "zod";
18328
+ import { z as z123 } from "zod";
18319
18329
  var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18320
- isFilled: z122.boolean().optional(),
18321
- isOutline: z122.boolean().optional(),
18330
+ isFilled: z123.boolean().optional(),
18331
+ isOutline: z123.boolean().optional(),
18322
18332
  strokeWidth: distance43.optional(),
18323
18333
  radius: distance43
18324
18334
  });
@@ -18336,63 +18346,63 @@ expectTypesMatch(true);
18336
18346
 
18337
18347
  // lib/components/trace-hint.ts
18338
18348
  import { distance as distance44, layer_ref as layer_ref12, route_hint_point as route_hint_point6 } from "circuit-json";
18339
- import { z as z124 } from "zod";
18340
- var routeHintPointProps = z124.object({
18349
+ import { z as z125 } from "zod";
18350
+ var routeHintPointProps = z125.object({
18341
18351
  x: distance44,
18342
18352
  y: distance44,
18343
- via: z124.boolean().optional(),
18353
+ via: z125.boolean().optional(),
18344
18354
  toLayer: layer_ref12.optional()
18345
18355
  });
18346
- var traceHintProps = z124.object({
18347
- for: z124.string().optional().describe(
18356
+ var traceHintProps = z125.object({
18357
+ for: z125.string().optional().describe(
18348
18358
  "Selector for the port you're targeting, not required if you're inside a trace"
18349
18359
  ),
18350
- order: z124.number().optional(),
18360
+ order: z125.number().optional(),
18351
18361
  offset: route_hint_point6.or(routeHintPointProps).optional(),
18352
- offsets: z124.array(route_hint_point6).or(z124.array(routeHintPointProps)).optional(),
18353
- traceWidth: z124.number().optional()
18362
+ offsets: z125.array(route_hint_point6).or(z125.array(routeHintPointProps)).optional(),
18363
+ traceWidth: z125.number().optional()
18354
18364
  });
18355
18365
 
18356
18366
  // lib/components/port.ts
18357
- import { z as z125 } from "zod";
18367
+ import { z as z126 } from "zod";
18358
18368
  var portProps = commonLayoutProps.extend({
18359
- name: z125.string().optional(),
18360
- pinNumber: z125.number().optional(),
18361
- schStemLength: z125.number().optional(),
18362
- aliases: z125.array(z125.string()).optional(),
18363
- layer: z125.string().optional(),
18364
- layers: z125.array(z125.string()).optional(),
18365
- schX: z125.number().optional(),
18366
- schY: z125.number().optional(),
18369
+ name: z126.string().optional(),
18370
+ pinNumber: z126.number().optional(),
18371
+ schStemLength: z126.number().optional(),
18372
+ aliases: z126.array(z126.string()).optional(),
18373
+ layer: z126.string().optional(),
18374
+ layers: z126.array(z126.string()).optional(),
18375
+ schX: z126.number().optional(),
18376
+ schY: z126.number().optional(),
18367
18377
  direction: direction.optional(),
18368
- connectsTo: z125.string().or(z125.array(z125.string())).optional(),
18378
+ connectsTo: z126.string().or(z126.array(z126.string())).optional(),
18369
18379
  kicadPinMetadata: kicadPinMetadata.optional(),
18370
- hasInversionCircle: z125.boolean().optional()
18380
+ hasInversionCircle: z126.boolean().optional()
18371
18381
  });
18372
18382
 
18373
18383
  // lib/components/pcb-note-text.ts
18374
18384
  import { length as length11 } from "circuit-json";
18375
- import { z as z126 } from "zod";
18385
+ import { z as z127 } from "zod";
18376
18386
  var pcbNoteTextProps = pcbLayoutProps.extend({
18377
- text: z126.string(),
18378
- anchorAlignment: z126.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
18379
- font: z126.enum(["tscircuit2024"]).optional(),
18387
+ text: z127.string(),
18388
+ anchorAlignment: z127.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
18389
+ font: z127.enum(["tscircuit2024"]).optional(),
18380
18390
  fontSize: length11.optional(),
18381
- color: z126.string().optional()
18391
+ color: z127.string().optional()
18382
18392
  });
18383
18393
  expectTypesMatch(true);
18384
18394
 
18385
18395
  // lib/components/pcb-note-rect.ts
18386
18396
  import { distance as distance45 } from "circuit-json";
18387
- import { z as z127 } from "zod";
18397
+ import { z as z128 } from "zod";
18388
18398
  var pcbNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18389
18399
  width: distance45,
18390
18400
  height: distance45,
18391
18401
  strokeWidth: distance45.optional(),
18392
- isFilled: z127.boolean().optional(),
18393
- hasStroke: z127.boolean().optional(),
18394
- isStrokeDashed: z127.boolean().optional(),
18395
- color: z127.string().optional(),
18402
+ isFilled: z128.boolean().optional(),
18403
+ hasStroke: z128.boolean().optional(),
18404
+ isStrokeDashed: z128.boolean().optional(),
18405
+ color: z128.string().optional(),
18396
18406
  cornerRadius: distance45.optional()
18397
18407
  });
18398
18408
  expectTypesMatch(true);
@@ -18402,7 +18412,7 @@ import {
18402
18412
  length as length12,
18403
18413
  route_hint_point as route_hint_point7
18404
18414
  } from "circuit-json";
18405
- import { z as z128 } from "zod";
18415
+ import { z as z129 } from "zod";
18406
18416
  var pcbNotePathProps = pcbLayoutProps.omit({
18407
18417
  pcbLeftEdgeX: true,
18408
18418
  pcbRightEdgeX: true,
@@ -18414,15 +18424,15 @@ var pcbNotePathProps = pcbLayoutProps.omit({
18414
18424
  pcbOffsetY: true,
18415
18425
  pcbRotation: true
18416
18426
  }).extend({
18417
- route: z128.array(route_hint_point7),
18427
+ route: z129.array(route_hint_point7),
18418
18428
  strokeWidth: length12.optional(),
18419
- color: z128.string().optional()
18429
+ color: z129.string().optional()
18420
18430
  });
18421
18431
  expectTypesMatch(true);
18422
18432
 
18423
18433
  // lib/components/pcb-note-line.ts
18424
18434
  import { distance as distance46 } from "circuit-json";
18425
- import { z as z129 } from "zod";
18435
+ import { z as z130 } from "zod";
18426
18436
  var pcbNoteLineProps = pcbLayoutProps.omit({
18427
18437
  pcbLeftEdgeX: true,
18428
18438
  pcbRightEdgeX: true,
@@ -18439,15 +18449,15 @@ var pcbNoteLineProps = pcbLayoutProps.omit({
18439
18449
  x2: distance46,
18440
18450
  y2: distance46,
18441
18451
  strokeWidth: distance46.optional(),
18442
- color: z129.string().optional(),
18443
- isDashed: z129.boolean().optional()
18452
+ color: z130.string().optional(),
18453
+ isDashed: z130.boolean().optional()
18444
18454
  });
18445
18455
  expectTypesMatch(true);
18446
18456
 
18447
18457
  // lib/components/pcb-note-dimension.ts
18448
18458
  import { distance as distance47, length as length13 } from "circuit-json";
18449
- import { z as z130 } from "zod";
18450
- var dimensionTarget2 = z130.union([z130.string(), point]);
18459
+ import { z as z131 } from "zod";
18460
+ var dimensionTarget2 = z131.union([z131.string(), point]);
18451
18461
  var pcbNoteDimensionProps = pcbLayoutProps.omit({
18452
18462
  pcbLeftEdgeX: true,
18453
18463
  pcbRightEdgeX: true,
@@ -18461,101 +18471,101 @@ var pcbNoteDimensionProps = pcbLayoutProps.omit({
18461
18471
  }).extend({
18462
18472
  from: dimensionTarget2,
18463
18473
  to: dimensionTarget2,
18464
- text: z130.string().optional(),
18474
+ text: z131.string().optional(),
18465
18475
  offset: distance47.optional(),
18466
- font: z130.enum(["tscircuit2024"]).optional(),
18476
+ font: z131.enum(["tscircuit2024"]).optional(),
18467
18477
  fontSize: length13.optional(),
18468
- color: z130.string().optional(),
18478
+ color: z131.string().optional(),
18469
18479
  arrowSize: distance47.optional(),
18470
- units: z130.enum(["in", "mm"]).optional(),
18471
- outerEdgeToEdge: z130.literal(true).optional(),
18472
- centerToCenter: z130.literal(true).optional(),
18473
- innerEdgeToEdge: z130.literal(true).optional()
18480
+ units: z131.enum(["in", "mm"]).optional(),
18481
+ outerEdgeToEdge: z131.literal(true).optional(),
18482
+ centerToCenter: z131.literal(true).optional(),
18483
+ innerEdgeToEdge: z131.literal(true).optional()
18474
18484
  });
18475
18485
  expectTypesMatch(
18476
18486
  true
18477
18487
  );
18478
18488
 
18479
18489
  // lib/platformConfig.ts
18480
- import { z as z131 } from "zod";
18481
- var unvalidatedCircuitJson = z131.array(z131.any()).describe("Circuit JSON");
18482
- var footprintLibraryResult = z131.object({
18483
- footprintCircuitJson: z131.array(z131.any()),
18490
+ import { z as z132 } from "zod";
18491
+ var unvalidatedCircuitJson = z132.array(z132.any()).describe("Circuit JSON");
18492
+ var footprintLibraryResult = z132.object({
18493
+ footprintCircuitJson: z132.array(z132.any()),
18484
18494
  cadModel: cadModelProp.optional()
18485
18495
  });
18486
- var pathToCircuitJsonFn = z131.function().args(z131.string()).returns(z131.promise(footprintLibraryResult)).or(
18487
- z131.function().args(
18488
- z131.string(),
18489
- z131.object({ resolvedPcbStyle: pcbStyle.optional() }).optional()
18490
- ).returns(z131.promise(footprintLibraryResult))
18496
+ var pathToCircuitJsonFn = z132.function().args(z132.string()).returns(z132.promise(footprintLibraryResult)).or(
18497
+ z132.function().args(
18498
+ z132.string(),
18499
+ z132.object({ resolvedPcbStyle: pcbStyle.optional() }).optional()
18500
+ ).returns(z132.promise(footprintLibraryResult))
18491
18501
  ).describe("A function that takes a path and returns Circuit JSON");
18492
- var footprintFileParserEntry = z131.object({
18493
- loadFromUrl: z131.function().args(z131.string()).returns(z131.promise(footprintLibraryResult)).describe(
18502
+ var footprintFileParserEntry = z132.object({
18503
+ loadFromUrl: z132.function().args(z132.string()).returns(z132.promise(footprintLibraryResult)).describe(
18494
18504
  "A function that takes a footprint file URL and returns Circuit JSON"
18495
18505
  )
18496
18506
  });
18497
- var spiceEngineSimulationResult = z131.object({
18498
- engineVersionString: z131.string().optional(),
18507
+ var spiceEngineSimulationResult = z132.object({
18508
+ engineVersionString: z132.string().optional(),
18499
18509
  simulationResultCircuitJson: unvalidatedCircuitJson
18500
18510
  });
18501
- var spiceEngineZod = z131.object({
18502
- simulate: z131.function().args(z131.string()).returns(z131.promise(spiceEngineSimulationResult)).describe(
18511
+ var spiceEngineZod = z132.object({
18512
+ simulate: z132.function().args(z132.string()).returns(z132.promise(spiceEngineSimulationResult)).describe(
18503
18513
  "A function that takes a SPICE string and returns a simulation result"
18504
18514
  )
18505
18515
  });
18506
- var defaultSpiceEngine = z131.custom(
18516
+ var defaultSpiceEngine = z132.custom(
18507
18517
  (value) => typeof value === "string"
18508
18518
  );
18509
- var autorouterInstance = z131.object({
18510
- run: z131.function().args().returns(z131.promise(z131.unknown())).describe("Run the autorouter"),
18511
- getOutputSimpleRouteJson: z131.function().args().returns(z131.promise(z131.any())).describe("Get the resulting SimpleRouteJson")
18519
+ var autorouterInstance = z132.object({
18520
+ run: z132.function().args().returns(z132.promise(z132.unknown())).describe("Run the autorouter"),
18521
+ getOutputSimpleRouteJson: z132.function().args().returns(z132.promise(z132.any())).describe("Get the resulting SimpleRouteJson")
18512
18522
  });
18513
- var autorouterDefinition = z131.object({
18514
- createAutorouter: z131.function().args(z131.any(), z131.any().optional()).returns(z131.union([autorouterInstance, z131.promise(autorouterInstance)])).describe("Create an autorouter instance")
18523
+ var autorouterDefinition = z132.object({
18524
+ createAutorouter: z132.function().args(z132.any(), z132.any().optional()).returns(z132.union([autorouterInstance, z132.promise(autorouterInstance)])).describe("Create an autorouter instance")
18515
18525
  });
18516
- var platformFetch = z131.custom((value) => typeof value === "function").describe("A fetch-like function to use for platform requests");
18517
- var platformConfig = z131.object({
18526
+ var platformFetch = z132.custom((value) => typeof value === "function").describe("A fetch-like function to use for platform requests");
18527
+ var platformConfig = z132.object({
18518
18528
  partsEngine: partsEngine.optional(),
18519
18529
  autorouter: autorouterProp.optional(),
18520
- autorouterMap: z131.record(z131.string(), autorouterDefinition).optional(),
18530
+ autorouterMap: z132.record(z132.string(), autorouterDefinition).optional(),
18521
18531
  registryApiUrl: url.optional(),
18522
18532
  cloudAutorouterUrl: url.optional(),
18523
- projectName: z131.string().optional(),
18533
+ projectName: z132.string().optional(),
18524
18534
  projectBaseUrl: url.optional(),
18525
- version: z131.string().optional(),
18535
+ version: z132.string().optional(),
18526
18536
  url: url.optional(),
18527
- printBoardInformationToSilkscreen: z131.boolean().optional(),
18528
- includeBoardFiles: z131.array(z131.string()).describe(
18537
+ printBoardInformationToSilkscreen: z132.boolean().optional(),
18538
+ includeBoardFiles: z132.array(z132.string()).describe(
18529
18539
  'The board files to automatically build with "tsci build", defaults to ["**/*.circuit.tsx"]. Can be an array of files or globs'
18530
18540
  ).optional(),
18531
- snapshotsDir: z131.string().describe(
18541
+ snapshotsDir: z132.string().describe(
18532
18542
  'The directory where snapshots are stored for "tsci snapshot", defaults to "tests/__snapshots__"'
18533
18543
  ).optional(),
18534
18544
  defaultSpiceEngine: defaultSpiceEngine.optional(),
18535
- unitPreference: z131.enum(["mm", "in", "mil"]).optional(),
18536
- localCacheEngine: z131.any().optional(),
18537
- pcbDisabled: z131.boolean().optional(),
18538
- routingDisabled: z131.boolean().optional(),
18539
- schematicDisabled: z131.boolean().optional(),
18540
- partsEngineDisabled: z131.boolean().optional(),
18541
- drcChecksDisabled: z131.boolean().optional(),
18542
- netlistDrcChecksDisabled: z131.boolean().optional(),
18543
- routingDrcChecksDisabled: z131.boolean().optional(),
18544
- placementDrcChecksDisabled: z131.boolean().optional(),
18545
- pinSpecificationDrcChecksDisabled: z131.boolean().optional(),
18546
- spiceEngineMap: z131.record(z131.string(), spiceEngineZod).optional(),
18547
- footprintLibraryMap: z131.record(
18548
- z131.string(),
18549
- z131.union([
18545
+ unitPreference: z132.enum(["mm", "in", "mil"]).optional(),
18546
+ localCacheEngine: z132.any().optional(),
18547
+ pcbDisabled: z132.boolean().optional(),
18548
+ routingDisabled: z132.boolean().optional(),
18549
+ schematicDisabled: z132.boolean().optional(),
18550
+ partsEngineDisabled: z132.boolean().optional(),
18551
+ drcChecksDisabled: z132.boolean().optional(),
18552
+ netlistDrcChecksDisabled: z132.boolean().optional(),
18553
+ routingDrcChecksDisabled: z132.boolean().optional(),
18554
+ placementDrcChecksDisabled: z132.boolean().optional(),
18555
+ pinSpecificationDrcChecksDisabled: z132.boolean().optional(),
18556
+ spiceEngineMap: z132.record(z132.string(), spiceEngineZod).optional(),
18557
+ footprintLibraryMap: z132.record(
18558
+ z132.string(),
18559
+ z132.union([
18550
18560
  pathToCircuitJsonFn,
18551
- z131.record(
18552
- z131.string(),
18553
- z131.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
18561
+ z132.record(
18562
+ z132.string(),
18563
+ z132.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
18554
18564
  )
18555
18565
  ])
18556
18566
  ).optional(),
18557
- footprintFileParserMap: z131.record(z131.string(), footprintFileParserEntry).optional(),
18558
- resolveProjectStaticFileImportUrl: z131.function().args(z131.string()).returns(z131.promise(z131.string())).describe(
18567
+ footprintFileParserMap: z132.record(z132.string(), footprintFileParserEntry).optional(),
18568
+ resolveProjectStaticFileImportUrl: z132.function().args(z132.string()).returns(z132.promise(z132.string())).describe(
18559
18569
  "A function that returns a string URL for static files for the project"
18560
18570
  ).optional(),
18561
18571
  platformFetch: platformFetch.optional()
@@ -18634,6 +18644,7 @@ export {
18634
18644
  currentSourceProps,
18635
18645
  customDrcCheckFn,
18636
18646
  cutoutProps,
18647
+ differentialPairProps,
18637
18648
  diodePins,
18638
18649
  diodeProps,
18639
18650
  direction,