@tscircuit/props 0.0.573 → 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,8 +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"]),
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(),
17503
17516
  connections: createConnectionsProp(mosfetPins).optional()
17504
17517
  });
17505
17518
  expectTypesMatch(true);
@@ -17521,20 +17534,20 @@ expectTypesMatch(true);
17521
17534
 
17522
17535
  // lib/components/inductor.ts
17523
17536
  import { inductance } from "circuit-json";
17524
- import { z as z80 } from "zod";
17537
+ import { z as z81 } from "zod";
17525
17538
  var inductorPins = lrPins;
17526
17539
  var inductorProps = commonComponentProps.extend({
17527
17540
  inductance,
17528
- maxCurrentRating: z80.union([z80.string(), z80.number()]).optional(),
17541
+ maxCurrentRating: z81.union([z81.string(), z81.number()]).optional(),
17529
17542
  schOrientation: schematicOrientation.optional(),
17530
17543
  connections: createConnectionsProp(inductorPins).optional()
17531
17544
  });
17532
17545
  expectTypesMatch(true);
17533
17546
 
17534
17547
  // lib/components/diode.ts
17535
- import { z as z81 } from "zod";
17548
+ import { z as z82 } from "zod";
17536
17549
  var diodePins = lrPolarPins;
17537
- var diodeConnectionKeys = z81.enum([
17550
+ var diodeConnectionKeys = z82.enum([
17538
17551
  "anode",
17539
17552
  "cathode",
17540
17553
  "pin1",
@@ -17542,13 +17555,13 @@ var diodeConnectionKeys = z81.enum([
17542
17555
  "pos",
17543
17556
  "neg"
17544
17557
  ]);
17545
- var connectionTarget3 = z81.string().or(z81.array(z81.string()).readonly()).or(z81.array(z81.string()));
17546
- var connectionsProp2 = z81.record(diodeConnectionKeys, connectionTarget3);
17547
- var diodePinLabelsProp = z81.record(
17548
- z81.enum(diodePins),
17549
- 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))
17550
17563
  );
17551
- var diodeVariant = z81.enum([
17564
+ var diodeVariant = z82.enum([
17552
17565
  "standard",
17553
17566
  "schottky",
17554
17567
  "zener",
@@ -17559,12 +17572,12 @@ var diodeVariant = z81.enum([
17559
17572
  var diodeProps = commonComponentProps.extend({
17560
17573
  connections: connectionsProp2.optional(),
17561
17574
  variant: diodeVariant.optional().default("standard"),
17562
- standard: z81.boolean().optional(),
17563
- schottky: z81.boolean().optional(),
17564
- zener: z81.boolean().optional(),
17565
- avalanche: z81.boolean().optional(),
17566
- photo: z81.boolean().optional(),
17567
- 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(),
17568
17581
  schOrientation: schematicOrientation.optional(),
17569
17582
  pinLabels: diodePinLabelsProp.optional()
17570
17583
  }).superRefine((data, ctx) => {
@@ -17578,11 +17591,11 @@ var diodeProps = commonComponentProps.extend({
17578
17591
  ].filter(Boolean).length;
17579
17592
  if (enabledFlags > 1) {
17580
17593
  ctx.addIssue({
17581
- code: z81.ZodIssueCode.custom,
17594
+ code: z82.ZodIssueCode.custom,
17582
17595
  message: "Exactly one diode variant must be enabled",
17583
17596
  path: []
17584
17597
  });
17585
- return z81.INVALID;
17598
+ return z82.INVALID;
17586
17599
  }
17587
17600
  }).transform((data) => {
17588
17601
  const result = {
@@ -17628,34 +17641,34 @@ var diodeProps = commonComponentProps.extend({
17628
17641
  expectTypesMatch(true);
17629
17642
 
17630
17643
  // lib/components/led.ts
17631
- import { z as z82 } from "zod";
17644
+ import { z as z83 } from "zod";
17632
17645
  var ledProps = commonComponentProps.extend({
17633
- color: z82.string().optional(),
17634
- wavelength: z82.string().optional(),
17635
- schDisplayValue: z82.string().optional(),
17646
+ color: z83.string().optional(),
17647
+ wavelength: z83.string().optional(),
17648
+ schDisplayValue: z83.string().optional(),
17636
17649
  schOrientation: schematicOrientation.optional(),
17637
17650
  connections: createConnectionsProp(lrPolarPins).optional(),
17638
- laser: z82.boolean().optional()
17651
+ laser: z83.boolean().optional()
17639
17652
  });
17640
17653
  var ledPins = lrPolarPins;
17641
17654
 
17642
17655
  // lib/components/switch.ts
17643
17656
  import { ms as ms2, frequency as frequency3 } from "circuit-json";
17644
- import { z as z83 } from "zod";
17657
+ import { z as z84 } from "zod";
17645
17658
  var switchProps = commonComponentProps.extend({
17646
- type: z83.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
17647
- isNormallyClosed: z83.boolean().optional().default(false),
17648
- spst: z83.boolean().optional(),
17649
- spdt: z83.boolean().optional(),
17650
- dpst: z83.boolean().optional(),
17651
- 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(),
17652
17665
  pinLabels: pinLabelsProp.optional(),
17653
17666
  simSwitchFrequency: frequency3.optional(),
17654
17667
  simCloseAt: ms2.optional(),
17655
17668
  simOpenAt: ms2.optional(),
17656
- simStartClosed: z83.boolean().optional(),
17657
- simStartOpen: z83.boolean().optional(),
17658
- 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()
17659
17672
  }).transform((props) => {
17660
17673
  const updatedProps = { ...props };
17661
17674
  if (updatedProps.dpdt) {
@@ -17687,33 +17700,33 @@ expectTypesMatch(true);
17687
17700
 
17688
17701
  // lib/components/fabrication-note-text.ts
17689
17702
  import { length as length4 } from "circuit-json";
17690
- import { z as z84 } from "zod";
17703
+ import { z as z85 } from "zod";
17691
17704
  var fabricationNoteTextProps = pcbLayoutProps.extend({
17692
- text: z84.string(),
17693
- anchorAlignment: z84.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
17694
- 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(),
17695
17708
  fontSize: length4.optional(),
17696
- color: z84.string().optional()
17709
+ color: z85.string().optional()
17697
17710
  });
17698
17711
  expectTypesMatch(true);
17699
17712
 
17700
17713
  // lib/components/fabrication-note-rect.ts
17701
17714
  import { distance as distance21 } from "circuit-json";
17702
- import { z as z85 } from "zod";
17715
+ import { z as z86 } from "zod";
17703
17716
  var fabricationNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17704
17717
  width: distance21,
17705
17718
  height: distance21,
17706
17719
  strokeWidth: distance21.optional(),
17707
- isFilled: z85.boolean().optional(),
17708
- hasStroke: z85.boolean().optional(),
17709
- isStrokeDashed: z85.boolean().optional(),
17710
- color: z85.string().optional(),
17720
+ isFilled: z86.boolean().optional(),
17721
+ hasStroke: z86.boolean().optional(),
17722
+ isStrokeDashed: z86.boolean().optional(),
17723
+ color: z86.string().optional(),
17711
17724
  cornerRadius: distance21.optional()
17712
17725
  });
17713
17726
 
17714
17727
  // lib/components/fabrication-note-path.ts
17715
17728
  import { length as length5, route_hint_point as route_hint_point3 } from "circuit-json";
17716
- import { z as z86 } from "zod";
17729
+ import { z as z87 } from "zod";
17717
17730
  var fabricationNotePathProps = pcbLayoutProps.omit({
17718
17731
  pcbLeftEdgeX: true,
17719
17732
  pcbRightEdgeX: true,
@@ -17725,15 +17738,15 @@ var fabricationNotePathProps = pcbLayoutProps.omit({
17725
17738
  pcbOffsetY: true,
17726
17739
  pcbRotation: true
17727
17740
  }).extend({
17728
- route: z86.array(route_hint_point3),
17741
+ route: z87.array(route_hint_point3),
17729
17742
  strokeWidth: length5.optional(),
17730
- color: z86.string().optional()
17743
+ color: z87.string().optional()
17731
17744
  });
17732
17745
 
17733
17746
  // lib/components/fabrication-note-dimension.ts
17734
17747
  import { distance as distance22, length as length6 } from "circuit-json";
17735
- import { z as z87 } from "zod";
17736
- var dimensionTarget = z87.union([z87.string(), point]);
17748
+ import { z as z88 } from "zod";
17749
+ var dimensionTarget = z88.union([z88.string(), point]);
17737
17750
  var fabricationNoteDimensionProps = pcbLayoutProps.omit({
17738
17751
  pcbLeftEdgeX: true,
17739
17752
  pcbRightEdgeX: true,
@@ -17747,54 +17760,54 @@ var fabricationNoteDimensionProps = pcbLayoutProps.omit({
17747
17760
  }).extend({
17748
17761
  from: dimensionTarget,
17749
17762
  to: dimensionTarget,
17750
- text: z87.string().optional(),
17763
+ text: z88.string().optional(),
17751
17764
  offset: distance22.optional(),
17752
- font: z87.enum(["tscircuit2024"]).optional(),
17765
+ font: z88.enum(["tscircuit2024"]).optional(),
17753
17766
  fontSize: length6.optional(),
17754
- color: z87.string().optional(),
17767
+ color: z88.string().optional(),
17755
17768
  arrowSize: distance22.optional(),
17756
- units: z87.enum(["in", "mm"]).optional(),
17757
- outerEdgeToEdge: z87.literal(true).optional(),
17758
- centerToCenter: z87.literal(true).optional(),
17759
- 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()
17760
17773
  });
17761
17774
  expectTypesMatch(true);
17762
17775
 
17763
17776
  // lib/components/pcb-trace.ts
17764
17777
  import { distance as distance23, route_hint_point as route_hint_point4 } from "circuit-json";
17765
- import { z as z88 } from "zod";
17766
- var pcbTraceProps = z88.object({
17767
- layer: z88.string().optional(),
17778
+ import { z as z89 } from "zod";
17779
+ var pcbTraceProps = z89.object({
17780
+ layer: z89.string().optional(),
17768
17781
  thickness: distance23.optional(),
17769
- route: z88.array(route_hint_point4)
17782
+ route: z89.array(route_hint_point4)
17770
17783
  });
17771
17784
 
17772
17785
  // lib/components/via.ts
17773
17786
  import { distance as distance24, layer_ref as layer_ref6 } from "circuit-json";
17774
- import { z as z89 } from "zod";
17787
+ import { z as z90 } from "zod";
17775
17788
  var viaProps = commonLayoutProps.extend({
17776
- name: z89.string().optional(),
17789
+ name: z90.string().optional(),
17777
17790
  fromLayer: layer_ref6.optional(),
17778
17791
  toLayer: layer_ref6.optional(),
17779
17792
  holeDiameter: distance24.optional(),
17780
17793
  outerDiameter: distance24.optional(),
17781
- layers: z89.array(layer_ref6).optional(),
17782
- connectsTo: z89.string().or(z89.array(z89.string())).optional(),
17783
- 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()
17784
17797
  });
17785
17798
  expectTypesMatch(true);
17786
17799
 
17787
17800
  // lib/components/testpoint.ts
17788
17801
  import { distance as distance25 } from "circuit-json";
17789
- import { z as z90 } from "zod";
17802
+ import { z as z91 } from "zod";
17790
17803
  var testpointPins = ["pin1"];
17791
- var testpointConnectionsProp = z90.object({
17804
+ var testpointConnectionsProp = z91.object({
17792
17805
  pin1: connectionTarget
17793
17806
  }).strict();
17794
17807
  var testpointProps = commonComponentProps.extend({
17795
17808
  connections: testpointConnectionsProp.optional(),
17796
- footprintVariant: z90.enum(["pad", "through_hole"]).optional(),
17797
- 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"),
17798
17811
  padDiameter: distance25.optional(),
17799
17812
  holeDiameter: distance25.optional(),
17800
17813
  width: distance25.optional(),
@@ -17806,45 +17819,45 @@ var testpointProps = commonComponentProps.extend({
17806
17819
  expectTypesMatch(true);
17807
17820
 
17808
17821
  // lib/components/breakoutpoint.ts
17809
- import { z as z91 } from "zod";
17822
+ import { z as z92 } from "zod";
17810
17823
  var breakoutPointProps = pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
17811
- connection: z91.string()
17824
+ connection: z92.string()
17812
17825
  });
17813
17826
  expectTypesMatch(true);
17814
17827
 
17815
17828
  // lib/components/pcb-keepout.ts
17816
17829
  import { distance as distance26, layer_ref as layer_ref7 } from "circuit-json";
17817
- import { z as z92 } from "zod";
17818
- var pcbKeepoutProps = z92.union([
17830
+ import { z as z93 } from "zod";
17831
+ var pcbKeepoutProps = z93.union([
17819
17832
  pcbLayoutProps.omit({ pcbRotation: true }).extend({
17820
- shape: z92.literal("circle"),
17833
+ shape: z93.literal("circle"),
17821
17834
  radius: distance26,
17822
- layers: z92.array(layer_ref7).optional()
17835
+ layers: z93.array(layer_ref7).optional()
17823
17836
  }),
17824
17837
  pcbLayoutProps.extend({
17825
- shape: z92.literal("rect"),
17838
+ shape: z93.literal("rect"),
17826
17839
  width: distance26,
17827
17840
  height: distance26,
17828
- layers: z92.array(layer_ref7).optional()
17841
+ layers: z93.array(layer_ref7).optional()
17829
17842
  })
17830
17843
  ]);
17831
17844
 
17832
17845
  // lib/components/courtyard-rect.ts
17833
17846
  import { distance as distance27 } from "circuit-json";
17834
- import { z as z93 } from "zod";
17847
+ import { z as z94 } from "zod";
17835
17848
  var courtyardRectProps = pcbLayoutProps.extend({
17836
17849
  width: distance27,
17837
17850
  height: distance27,
17838
17851
  strokeWidth: distance27.optional(),
17839
- isFilled: z93.boolean().optional(),
17840
- hasStroke: z93.boolean().optional(),
17841
- isStrokeDashed: z93.boolean().optional(),
17842
- color: z93.string().optional()
17852
+ isFilled: z94.boolean().optional(),
17853
+ hasStroke: z94.boolean().optional(),
17854
+ isStrokeDashed: z94.boolean().optional(),
17855
+ color: z94.string().optional()
17843
17856
  });
17844
17857
 
17845
17858
  // lib/components/courtyard-outline.ts
17846
17859
  import { length as length7 } from "circuit-json";
17847
- import { z as z94 } from "zod";
17860
+ import { z as z95 } from "zod";
17848
17861
  var courtyardOutlineProps = pcbLayoutProps.omit({
17849
17862
  pcbLeftEdgeX: true,
17850
17863
  pcbRightEdgeX: true,
@@ -17856,11 +17869,11 @@ var courtyardOutlineProps = pcbLayoutProps.omit({
17856
17869
  pcbOffsetY: true,
17857
17870
  pcbRotation: true
17858
17871
  }).extend({
17859
- outline: z94.array(point),
17872
+ outline: z95.array(point),
17860
17873
  strokeWidth: length7.optional(),
17861
- isClosed: z94.boolean().optional(),
17862
- isStrokeDashed: z94.boolean().optional(),
17863
- color: z94.string().optional()
17874
+ isClosed: z95.boolean().optional(),
17875
+ isStrokeDashed: z95.boolean().optional(),
17876
+ color: z95.string().optional()
17864
17877
  });
17865
17878
 
17866
17879
  // lib/components/courtyard-circle.ts
@@ -17880,35 +17893,35 @@ var courtyardPillProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17880
17893
  });
17881
17894
 
17882
17895
  // lib/components/copper-pour.ts
17883
- import { z as z97 } from "zod";
17896
+ import { z as z98 } from "zod";
17884
17897
  import { layer_ref as layer_ref8 } from "circuit-json";
17885
- var copperPourProps = z97.object({
17886
- name: z97.string().optional(),
17898
+ var copperPourProps = z98.object({
17899
+ name: z98.string().optional(),
17887
17900
  layer: layer_ref8,
17888
- connectsTo: z97.string(),
17889
- unbroken: z97.boolean().optional(),
17901
+ connectsTo: z98.string(),
17902
+ unbroken: z98.boolean().optional(),
17890
17903
  padMargin: distance.optional(),
17891
17904
  traceMargin: distance.optional(),
17892
17905
  clearance: distance.optional(),
17893
17906
  boardEdgeMargin: distance.optional(),
17894
17907
  cutoutMargin: distance.optional(),
17895
- outline: z97.array(point).optional(),
17896
- coveredWithSolderMask: z97.boolean().optional().default(true)
17908
+ outline: z98.array(point).optional(),
17909
+ coveredWithSolderMask: z98.boolean().optional().default(true)
17897
17910
  });
17898
17911
  expectTypesMatch(true);
17899
17912
 
17900
17913
  // lib/components/cadassembly.ts
17901
17914
  import { layer_ref as layer_ref9 } from "circuit-json";
17902
- import { z as z98 } from "zod";
17903
- var cadassemblyProps = z98.object({
17915
+ import { z as z99 } from "zod";
17916
+ var cadassemblyProps = z99.object({
17904
17917
  originalLayer: layer_ref9.default("top").optional(),
17905
- children: z98.any().optional()
17918
+ children: z99.any().optional()
17906
17919
  });
17907
17920
  expectTypesMatch(true);
17908
17921
 
17909
17922
  // lib/components/cadmodel.ts
17910
- import { z as z99 } from "zod";
17911
- var pcbPosition = z99.object({
17923
+ import { z as z100 } from "zod";
17924
+ var pcbPosition = z100.object({
17912
17925
  pcbX: pcbCoordinate.optional(),
17913
17926
  pcbY: pcbCoordinate.optional(),
17914
17927
  pcbLeftEdgeX: pcbCoordinate.optional(),
@@ -17925,7 +17938,7 @@ var cadModelBaseWithUrl = cadModelBase.extend({
17925
17938
  });
17926
17939
  var cadModelObject = cadModelBaseWithUrl.merge(pcbPosition);
17927
17940
  expectTypesMatch(true);
17928
- var cadmodelProps = z99.union([z99.null(), url, cadModelObject]);
17941
+ var cadmodelProps = z100.union([z100.null(), url, cadModelObject]);
17929
17942
 
17930
17943
  // lib/components/power-source.ts
17931
17944
  import { voltage as voltage3 } from "circuit-json";
@@ -17935,9 +17948,9 @@ var powerSourceProps = commonComponentProps.extend({
17935
17948
 
17936
17949
  // lib/components/voltagesource.ts
17937
17950
  import { frequency as frequency4, ms as ms3, rotation as rotation5, voltage as voltage4 } from "circuit-json";
17938
- import { z as z100 } from "zod";
17951
+ import { z as z101 } from "zod";
17939
17952
  var voltageSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
17940
- var percentage = z100.union([z100.string(), z100.number()]).transform((val) => {
17953
+ var percentage = z101.union([z101.string(), z101.number()]).transform((val) => {
17941
17954
  if (typeof val === "string") {
17942
17955
  if (val.endsWith("%")) {
17943
17956
  return parseFloat(val.slice(0, -1)) / 100;
@@ -17946,13 +17959,13 @@ var percentage = z100.union([z100.string(), z100.number()]).transform((val) => {
17946
17959
  }
17947
17960
  return val;
17948
17961
  }).pipe(
17949
- 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%")
17950
17963
  );
17951
17964
  var voltageSourceProps = commonComponentProps.extend({
17952
17965
  voltage: voltage4.optional(),
17953
17966
  frequency: frequency4.optional(),
17954
17967
  peakToPeakVoltage: voltage4.optional(),
17955
- waveShape: z100.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
17968
+ waveShape: z101.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
17956
17969
  phase: rotation5.optional(),
17957
17970
  dutyCycle: percentage.optional(),
17958
17971
  pulseDelay: ms3.optional(),
@@ -17967,9 +17980,9 @@ expectTypesMatch(true);
17967
17980
 
17968
17981
  // lib/components/currentsource.ts
17969
17982
  import { frequency as frequency5, rotation as rotation6, current } from "circuit-json";
17970
- import { z as z101 } from "zod";
17983
+ import { z as z102 } from "zod";
17971
17984
  var currentSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
17972
- var percentage2 = z101.union([z101.string(), z101.number()]).transform((val) => {
17985
+ var percentage2 = z102.union([z102.string(), z102.number()]).transform((val) => {
17973
17986
  if (typeof val === "string") {
17974
17987
  if (val.endsWith("%")) {
17975
17988
  return parseFloat(val.slice(0, -1)) / 100;
@@ -17978,13 +17991,13 @@ var percentage2 = z101.union([z101.string(), z101.number()]).transform((val) =>
17978
17991
  }
17979
17992
  return val;
17980
17993
  }).pipe(
17981
- 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%")
17982
17995
  );
17983
17996
  var currentSourceProps = commonComponentProps.extend({
17984
17997
  current: current.optional(),
17985
17998
  frequency: frequency5.optional(),
17986
17999
  peakToPeakCurrent: current.optional(),
17987
- waveShape: z101.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
18000
+ waveShape: z102.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
17988
18001
  phase: rotation6.optional(),
17989
18002
  dutyCycle: percentage2.optional(),
17990
18003
  connections: createConnectionsProp(currentSourcePinLabels).optional()
@@ -17993,21 +18006,21 @@ var currentSourcePins = lrPolarPins;
17993
18006
  expectTypesMatch(true);
17994
18007
 
17995
18008
  // lib/components/voltageprobe.ts
17996
- import { z as z102 } from "zod";
18009
+ import { z as z103 } from "zod";
17997
18010
  var voltageProbeProps = commonComponentProps.omit({ name: true }).extend({
17998
- name: z102.string().optional(),
17999
- connectsTo: z102.string(),
18000
- referenceTo: z102.string().optional(),
18001
- color: z102.string().optional(),
18002
- graphDisplayName: z102.string().optional(),
18003
- graphCenter: z102.number().optional(),
18004
- graphVerticalOffset: z102.number().or(z102.string()).optional(),
18005
- 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()
18006
18019
  });
18007
18020
  expectTypesMatch(true);
18008
18021
 
18009
18022
  // lib/components/ammeter.ts
18010
- import { z as z103 } from "zod";
18023
+ import { z as z104 } from "zod";
18011
18024
  var ammeterPinLabels = ["pin1", "pin2", "pos", "neg"];
18012
18025
  var hasAmmeterConnectionPair = (connections) => {
18013
18026
  return connections.pos !== void 0 && connections.neg !== void 0 || connections.pin1 !== void 0 && connections.pin2 !== void 0;
@@ -18017,57 +18030,57 @@ var ammeterProps = commonComponentProps.extend({
18017
18030
  hasAmmeterConnectionPair,
18018
18031
  "Ammeter connections must include either pos/neg or pin1/pin2"
18019
18032
  ),
18020
- color: z103.string().optional(),
18021
- graphDisplayName: z103.string().optional(),
18022
- graphCenter: z103.number().optional(),
18023
- graphVerticalOffset: z103.number().or(z103.string()).optional(),
18024
- 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()
18025
18038
  });
18026
18039
  var ammeterPins = ammeterPinLabels;
18027
18040
  expectTypesMatch(true);
18028
18041
 
18029
18042
  // lib/components/schematic-arc.ts
18030
18043
  import { distance as distance30, point as point5, rotation as rotation7 } from "circuit-json";
18031
- import { z as z104 } from "zod";
18032
- var schematicArcProps = z104.object({
18044
+ import { z as z105 } from "zod";
18045
+ var schematicArcProps = z105.object({
18033
18046
  center: point5,
18034
18047
  radius: distance30,
18035
18048
  startAngleDegrees: rotation7,
18036
18049
  endAngleDegrees: rotation7,
18037
- direction: z104.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
18050
+ direction: z105.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
18038
18051
  strokeWidth: distance30.optional(),
18039
- color: z104.string().optional(),
18040
- isDashed: z104.boolean().optional().default(false)
18052
+ color: z105.string().optional(),
18053
+ isDashed: z105.boolean().optional().default(false)
18041
18054
  });
18042
18055
  expectTypesMatch(true);
18043
18056
 
18044
18057
  // lib/components/toolingrail.ts
18045
- import { z as z105 } from "zod";
18046
- var toolingrailProps = z105.object({
18047
- children: z105.any().optional()
18058
+ import { z as z106 } from "zod";
18059
+ var toolingrailProps = z106.object({
18060
+ children: z106.any().optional()
18048
18061
  });
18049
18062
  expectTypesMatch(true);
18050
18063
 
18051
18064
  // lib/components/schematic-box.ts
18052
18065
  import { distance as distance31 } from "circuit-json";
18053
- import { z as z106 } from "zod";
18054
- var schematicBoxProps = z106.object({
18066
+ import { z as z107 } from "zod";
18067
+ var schematicBoxProps = z107.object({
18055
18068
  schX: distance31.optional(),
18056
18069
  schY: distance31.optional(),
18057
18070
  width: distance31.optional(),
18058
18071
  height: distance31.optional(),
18059
- overlay: z106.array(z106.string()).optional(),
18072
+ overlay: z107.array(z107.string()).optional(),
18060
18073
  padding: distance31.optional(),
18061
18074
  paddingLeft: distance31.optional(),
18062
18075
  paddingRight: distance31.optional(),
18063
18076
  paddingTop: distance31.optional(),
18064
18077
  paddingBottom: distance31.optional(),
18065
- title: z106.string().optional(),
18078
+ title: z107.string().optional(),
18066
18079
  titleAlignment: ninePointAnchor.default("top_left"),
18067
- titleColor: z106.string().optional(),
18080
+ titleColor: z107.string().optional(),
18068
18081
  titleFontSize: distance31.optional(),
18069
- titleInside: z106.boolean().default(false),
18070
- strokeStyle: z106.enum(["solid", "dashed"]).default("solid")
18082
+ titleInside: z107.boolean().default(false),
18083
+ strokeStyle: z107.enum(["solid", "dashed"]).default("solid")
18071
18084
  }).refine(
18072
18085
  (elm) => elm.width !== void 0 && elm.height !== void 0 || Array.isArray(elm.overlay) && elm.overlay.length > 0,
18073
18086
  {
@@ -18083,15 +18096,15 @@ expectTypesMatch(true);
18083
18096
 
18084
18097
  // lib/components/schematic-circle.ts
18085
18098
  import { distance as distance32, point as point6 } from "circuit-json";
18086
- import { z as z107 } from "zod";
18087
- var schematicCircleProps = z107.object({
18099
+ import { z as z108 } from "zod";
18100
+ var schematicCircleProps = z108.object({
18088
18101
  center: point6,
18089
18102
  radius: distance32,
18090
18103
  strokeWidth: distance32.optional(),
18091
- color: z107.string().optional(),
18092
- isFilled: z107.boolean().optional().default(false),
18093
- fillColor: z107.string().optional(),
18094
- 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)
18095
18108
  });
18096
18109
  expectTypesMatch(
18097
18110
  true
@@ -18099,32 +18112,32 @@ expectTypesMatch(
18099
18112
 
18100
18113
  // lib/components/schematic-rect.ts
18101
18114
  import { distance as distance33, rotation as rotation8 } from "circuit-json";
18102
- import { z as z108 } from "zod";
18103
- var schematicRectProps = z108.object({
18115
+ import { z as z109 } from "zod";
18116
+ var schematicRectProps = z109.object({
18104
18117
  schX: distance33.optional(),
18105
18118
  schY: distance33.optional(),
18106
18119
  width: distance33,
18107
18120
  height: distance33,
18108
18121
  rotation: rotation8.default(0),
18109
18122
  strokeWidth: distance33.optional(),
18110
- color: z108.string().optional(),
18111
- isFilled: z108.boolean().optional().default(false),
18112
- fillColor: z108.string().optional(),
18113
- 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)
18114
18127
  });
18115
18128
  expectTypesMatch(true);
18116
18129
 
18117
18130
  // lib/components/schematic-line.ts
18118
18131
  import { distance as distance34 } from "circuit-json";
18119
- import { z as z109 } from "zod";
18120
- var schematicLineProps = z109.object({
18132
+ import { z as z110 } from "zod";
18133
+ var schematicLineProps = z110.object({
18121
18134
  x1: distance34,
18122
18135
  y1: distance34,
18123
18136
  x2: distance34,
18124
18137
  y2: distance34,
18125
18138
  strokeWidth: distance34.optional(),
18126
- color: z109.string().optional(),
18127
- isDashed: z109.boolean().optional().default(false),
18139
+ color: z110.string().optional(),
18140
+ isDashed: z110.boolean().optional().default(false),
18128
18141
  dashLength: distance34.optional(),
18129
18142
  dashGap: distance34.optional()
18130
18143
  });
@@ -18132,11 +18145,11 @@ expectTypesMatch(true);
18132
18145
 
18133
18146
  // lib/components/schematic-text.ts
18134
18147
  import { distance as distance35, rotation as rotation9 } from "circuit-json";
18135
- import { z as z111 } from "zod";
18148
+ import { z as z112 } from "zod";
18136
18149
 
18137
18150
  // lib/common/fivePointAnchor.ts
18138
- import { z as z110 } from "zod";
18139
- var fivePointAnchor = z110.enum([
18151
+ import { z as z111 } from "zod";
18152
+ var fivePointAnchor = z111.enum([
18140
18153
  "center",
18141
18154
  "left",
18142
18155
  "right",
@@ -18145,39 +18158,39 @@ var fivePointAnchor = z110.enum([
18145
18158
  ]);
18146
18159
 
18147
18160
  // lib/components/schematic-text.ts
18148
- var schematicTextProps = z111.object({
18161
+ var schematicTextProps = z112.object({
18149
18162
  schX: distance35.optional(),
18150
18163
  schY: distance35.optional(),
18151
- text: z111.string(),
18152
- fontSize: z111.number().default(1),
18153
- anchor: z111.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
18154
- 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"),
18155
18168
  schRotation: rotation9.default(0)
18156
18169
  });
18157
18170
  expectTypesMatch(true);
18158
18171
 
18159
18172
  // lib/components/schematic-path.ts
18160
18173
  import { distance as distance36, point as point7 } from "circuit-json";
18161
- import { z as z112 } from "zod";
18162
- var schematicPathProps = z112.object({
18163
- points: z112.array(point7).optional(),
18164
- 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(),
18165
18178
  strokeWidth: distance36.optional(),
18166
- strokeColor: z112.string().optional(),
18179
+ strokeColor: z113.string().optional(),
18167
18180
  dashLength: distance36.optional(),
18168
18181
  dashGap: distance36.optional(),
18169
- isFilled: z112.boolean().optional().default(false),
18170
- fillColor: z112.string().optional()
18182
+ isFilled: z113.boolean().optional().default(false),
18183
+ fillColor: z113.string().optional()
18171
18184
  });
18172
18185
  expectTypesMatch(true);
18173
18186
 
18174
18187
  // lib/components/schematic-table.ts
18175
18188
  import { distance as distance37 } from "circuit-json";
18176
- import { z as z113 } from "zod";
18177
- var schematicTableProps = z113.object({
18189
+ import { z as z114 } from "zod";
18190
+ var schematicTableProps = z114.object({
18178
18191
  schX: distance37.optional(),
18179
18192
  schY: distance37.optional(),
18180
- children: z113.any().optional(),
18193
+ children: z114.any().optional(),
18181
18194
  cellPadding: distance37.optional(),
18182
18195
  borderWidth: distance37.optional(),
18183
18196
  anchor: ninePointAnchor.optional(),
@@ -18187,34 +18200,34 @@ expectTypesMatch(true);
18187
18200
 
18188
18201
  // lib/components/schematic-row.ts
18189
18202
  import { distance as distance38 } from "circuit-json";
18190
- import { z as z114 } from "zod";
18191
- var schematicRowProps = z114.object({
18192
- children: z114.any().optional(),
18203
+ import { z as z115 } from "zod";
18204
+ var schematicRowProps = z115.object({
18205
+ children: z115.any().optional(),
18193
18206
  height: distance38.optional()
18194
18207
  });
18195
18208
  expectTypesMatch(true);
18196
18209
 
18197
18210
  // lib/components/schematic-cell.ts
18198
18211
  import { distance as distance39 } from "circuit-json";
18199
- import { z as z115 } from "zod";
18200
- var schematicCellProps = z115.object({
18201
- children: z115.string().optional(),
18202
- horizontalAlign: z115.enum(["left", "center", "right"]).optional(),
18203
- 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(),
18204
18217
  fontSize: distance39.optional(),
18205
- rowSpan: z115.number().optional(),
18206
- colSpan: z115.number().optional(),
18218
+ rowSpan: z116.number().optional(),
18219
+ colSpan: z116.number().optional(),
18207
18220
  width: distance39.optional(),
18208
- text: z115.string().optional()
18221
+ text: z116.string().optional()
18209
18222
  });
18210
18223
  expectTypesMatch(true);
18211
18224
 
18212
18225
  // lib/components/schematic-section.ts
18213
18226
  import { distance as distance40 } from "circuit-json";
18214
- import { z as z116 } from "zod";
18215
- var schematicSectionProps = z116.object({
18216
- displayName: z116.string().optional(),
18217
- name: z116.string(),
18227
+ import { z as z117 } from "zod";
18228
+ var schematicSectionProps = z117.object({
18229
+ displayName: z117.string().optional(),
18230
+ name: z117.string(),
18218
18231
  sectionTitleFontSize: distance40.optional()
18219
18232
  });
18220
18233
  expectTypesMatch(
@@ -18222,51 +18235,51 @@ expectTypesMatch(
18222
18235
  );
18223
18236
 
18224
18237
  // lib/components/schematic-sheet.ts
18225
- import { z as z117 } from "zod";
18226
- var schematicSheetProps = z117.object({
18227
- name: z117.string(),
18228
- displayName: z117.string(),
18229
- sheetIndex: z117.number().optional(),
18230
- 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()
18231
18244
  });
18232
18245
  expectTypesMatch(true);
18233
18246
 
18234
18247
  // lib/components/copper-text.ts
18235
18248
  import { layer_ref as layer_ref10, length as length8 } from "circuit-json";
18236
- import { z as z118 } from "zod";
18249
+ import { z as z119 } from "zod";
18237
18250
  var copperTextProps = pcbLayoutProps.extend({
18238
- text: z118.string(),
18251
+ text: z119.string(),
18239
18252
  anchorAlignment: ninePointAnchor.default("center"),
18240
- font: z118.enum(["tscircuit2024"]).optional(),
18253
+ font: z119.enum(["tscircuit2024"]).optional(),
18241
18254
  fontSize: length8.optional(),
18242
- layers: z118.array(layer_ref10).optional(),
18243
- knockout: z118.boolean().optional(),
18244
- mirrored: z118.boolean().optional()
18255
+ layers: z119.array(layer_ref10).optional(),
18256
+ knockout: z119.boolean().optional(),
18257
+ mirrored: z119.boolean().optional()
18245
18258
  });
18246
18259
 
18247
18260
  // lib/components/silkscreen-text.ts
18248
18261
  import { layer_ref as layer_ref11, length as length9 } from "circuit-json";
18249
- import { z as z119 } from "zod";
18262
+ import { z as z120 } from "zod";
18250
18263
  var silkscreenTextProps = pcbLayoutProps.extend({
18251
- text: z119.string(),
18264
+ text: z120.string(),
18252
18265
  anchorAlignment: ninePointAnchor.default("center"),
18253
- font: z119.enum(["tscircuit2024"]).optional(),
18266
+ font: z120.enum(["tscircuit2024"]).optional(),
18254
18267
  fontSize: length9.optional(),
18255
18268
  /**
18256
18269
  * If true, text will knock out underlying silkscreen
18257
18270
  */
18258
- isKnockout: z119.boolean().optional(),
18271
+ isKnockout: z120.boolean().optional(),
18259
18272
  knockoutPadding: length9.optional(),
18260
18273
  knockoutPaddingLeft: length9.optional(),
18261
18274
  knockoutPaddingRight: length9.optional(),
18262
18275
  knockoutPaddingTop: length9.optional(),
18263
18276
  knockoutPaddingBottom: length9.optional(),
18264
- layers: z119.array(layer_ref11).optional()
18277
+ layers: z120.array(layer_ref11).optional()
18265
18278
  });
18266
18279
 
18267
18280
  // lib/components/silkscreen-path.ts
18268
18281
  import { length as length10, route_hint_point as route_hint_point5 } from "circuit-json";
18269
- import { z as z120 } from "zod";
18282
+ import { z as z121 } from "zod";
18270
18283
  var silkscreenPathProps = pcbLayoutProps.omit({
18271
18284
  pcbLeftEdgeX: true,
18272
18285
  pcbRightEdgeX: true,
@@ -18278,7 +18291,7 @@ var silkscreenPathProps = pcbLayoutProps.omit({
18278
18291
  pcbOffsetY: true,
18279
18292
  pcbRotation: true
18280
18293
  }).extend({
18281
- route: z120.array(route_hint_point5),
18294
+ route: z121.array(route_hint_point5),
18282
18295
  strokeWidth: length10.optional()
18283
18296
  });
18284
18297
 
@@ -18300,10 +18313,10 @@ var silkscreenLineProps = pcbLayoutProps.omit({
18300
18313
 
18301
18314
  // lib/components/silkscreen-rect.ts
18302
18315
  import { distance as distance42 } from "circuit-json";
18303
- import { z as z121 } from "zod";
18316
+ import { z as z122 } from "zod";
18304
18317
  var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18305
- filled: z121.boolean().default(true).optional(),
18306
- stroke: z121.enum(["dashed", "solid", "none"]).optional(),
18318
+ filled: z122.boolean().default(true).optional(),
18319
+ stroke: z122.enum(["dashed", "solid", "none"]).optional(),
18307
18320
  strokeWidth: distance42.optional(),
18308
18321
  width: distance42,
18309
18322
  height: distance42,
@@ -18312,10 +18325,10 @@ var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18312
18325
 
18313
18326
  // lib/components/silkscreen-circle.ts
18314
18327
  import { distance as distance43 } from "circuit-json";
18315
- import { z as z122 } from "zod";
18328
+ import { z as z123 } from "zod";
18316
18329
  var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18317
- isFilled: z122.boolean().optional(),
18318
- isOutline: z122.boolean().optional(),
18330
+ isFilled: z123.boolean().optional(),
18331
+ isOutline: z123.boolean().optional(),
18319
18332
  strokeWidth: distance43.optional(),
18320
18333
  radius: distance43
18321
18334
  });
@@ -18333,63 +18346,63 @@ expectTypesMatch(true);
18333
18346
 
18334
18347
  // lib/components/trace-hint.ts
18335
18348
  import { distance as distance44, layer_ref as layer_ref12, route_hint_point as route_hint_point6 } from "circuit-json";
18336
- import { z as z124 } from "zod";
18337
- var routeHintPointProps = z124.object({
18349
+ import { z as z125 } from "zod";
18350
+ var routeHintPointProps = z125.object({
18338
18351
  x: distance44,
18339
18352
  y: distance44,
18340
- via: z124.boolean().optional(),
18353
+ via: z125.boolean().optional(),
18341
18354
  toLayer: layer_ref12.optional()
18342
18355
  });
18343
- var traceHintProps = z124.object({
18344
- for: z124.string().optional().describe(
18356
+ var traceHintProps = z125.object({
18357
+ for: z125.string().optional().describe(
18345
18358
  "Selector for the port you're targeting, not required if you're inside a trace"
18346
18359
  ),
18347
- order: z124.number().optional(),
18360
+ order: z125.number().optional(),
18348
18361
  offset: route_hint_point6.or(routeHintPointProps).optional(),
18349
- offsets: z124.array(route_hint_point6).or(z124.array(routeHintPointProps)).optional(),
18350
- traceWidth: z124.number().optional()
18362
+ offsets: z125.array(route_hint_point6).or(z125.array(routeHintPointProps)).optional(),
18363
+ traceWidth: z125.number().optional()
18351
18364
  });
18352
18365
 
18353
18366
  // lib/components/port.ts
18354
- import { z as z125 } from "zod";
18367
+ import { z as z126 } from "zod";
18355
18368
  var portProps = commonLayoutProps.extend({
18356
- name: z125.string().optional(),
18357
- pinNumber: z125.number().optional(),
18358
- schStemLength: z125.number().optional(),
18359
- aliases: z125.array(z125.string()).optional(),
18360
- layer: z125.string().optional(),
18361
- layers: z125.array(z125.string()).optional(),
18362
- schX: z125.number().optional(),
18363
- 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(),
18364
18377
  direction: direction.optional(),
18365
- connectsTo: z125.string().or(z125.array(z125.string())).optional(),
18378
+ connectsTo: z126.string().or(z126.array(z126.string())).optional(),
18366
18379
  kicadPinMetadata: kicadPinMetadata.optional(),
18367
- hasInversionCircle: z125.boolean().optional()
18380
+ hasInversionCircle: z126.boolean().optional()
18368
18381
  });
18369
18382
 
18370
18383
  // lib/components/pcb-note-text.ts
18371
18384
  import { length as length11 } from "circuit-json";
18372
- import { z as z126 } from "zod";
18385
+ import { z as z127 } from "zod";
18373
18386
  var pcbNoteTextProps = pcbLayoutProps.extend({
18374
- text: z126.string(),
18375
- anchorAlignment: z126.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
18376
- 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(),
18377
18390
  fontSize: length11.optional(),
18378
- color: z126.string().optional()
18391
+ color: z127.string().optional()
18379
18392
  });
18380
18393
  expectTypesMatch(true);
18381
18394
 
18382
18395
  // lib/components/pcb-note-rect.ts
18383
18396
  import { distance as distance45 } from "circuit-json";
18384
- import { z as z127 } from "zod";
18397
+ import { z as z128 } from "zod";
18385
18398
  var pcbNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18386
18399
  width: distance45,
18387
18400
  height: distance45,
18388
18401
  strokeWidth: distance45.optional(),
18389
- isFilled: z127.boolean().optional(),
18390
- hasStroke: z127.boolean().optional(),
18391
- isStrokeDashed: z127.boolean().optional(),
18392
- color: z127.string().optional(),
18402
+ isFilled: z128.boolean().optional(),
18403
+ hasStroke: z128.boolean().optional(),
18404
+ isStrokeDashed: z128.boolean().optional(),
18405
+ color: z128.string().optional(),
18393
18406
  cornerRadius: distance45.optional()
18394
18407
  });
18395
18408
  expectTypesMatch(true);
@@ -18399,7 +18412,7 @@ import {
18399
18412
  length as length12,
18400
18413
  route_hint_point as route_hint_point7
18401
18414
  } from "circuit-json";
18402
- import { z as z128 } from "zod";
18415
+ import { z as z129 } from "zod";
18403
18416
  var pcbNotePathProps = pcbLayoutProps.omit({
18404
18417
  pcbLeftEdgeX: true,
18405
18418
  pcbRightEdgeX: true,
@@ -18411,15 +18424,15 @@ var pcbNotePathProps = pcbLayoutProps.omit({
18411
18424
  pcbOffsetY: true,
18412
18425
  pcbRotation: true
18413
18426
  }).extend({
18414
- route: z128.array(route_hint_point7),
18427
+ route: z129.array(route_hint_point7),
18415
18428
  strokeWidth: length12.optional(),
18416
- color: z128.string().optional()
18429
+ color: z129.string().optional()
18417
18430
  });
18418
18431
  expectTypesMatch(true);
18419
18432
 
18420
18433
  // lib/components/pcb-note-line.ts
18421
18434
  import { distance as distance46 } from "circuit-json";
18422
- import { z as z129 } from "zod";
18435
+ import { z as z130 } from "zod";
18423
18436
  var pcbNoteLineProps = pcbLayoutProps.omit({
18424
18437
  pcbLeftEdgeX: true,
18425
18438
  pcbRightEdgeX: true,
@@ -18436,15 +18449,15 @@ var pcbNoteLineProps = pcbLayoutProps.omit({
18436
18449
  x2: distance46,
18437
18450
  y2: distance46,
18438
18451
  strokeWidth: distance46.optional(),
18439
- color: z129.string().optional(),
18440
- isDashed: z129.boolean().optional()
18452
+ color: z130.string().optional(),
18453
+ isDashed: z130.boolean().optional()
18441
18454
  });
18442
18455
  expectTypesMatch(true);
18443
18456
 
18444
18457
  // lib/components/pcb-note-dimension.ts
18445
18458
  import { distance as distance47, length as length13 } from "circuit-json";
18446
- import { z as z130 } from "zod";
18447
- var dimensionTarget2 = z130.union([z130.string(), point]);
18459
+ import { z as z131 } from "zod";
18460
+ var dimensionTarget2 = z131.union([z131.string(), point]);
18448
18461
  var pcbNoteDimensionProps = pcbLayoutProps.omit({
18449
18462
  pcbLeftEdgeX: true,
18450
18463
  pcbRightEdgeX: true,
@@ -18458,101 +18471,101 @@ var pcbNoteDimensionProps = pcbLayoutProps.omit({
18458
18471
  }).extend({
18459
18472
  from: dimensionTarget2,
18460
18473
  to: dimensionTarget2,
18461
- text: z130.string().optional(),
18474
+ text: z131.string().optional(),
18462
18475
  offset: distance47.optional(),
18463
- font: z130.enum(["tscircuit2024"]).optional(),
18476
+ font: z131.enum(["tscircuit2024"]).optional(),
18464
18477
  fontSize: length13.optional(),
18465
- color: z130.string().optional(),
18478
+ color: z131.string().optional(),
18466
18479
  arrowSize: distance47.optional(),
18467
- units: z130.enum(["in", "mm"]).optional(),
18468
- outerEdgeToEdge: z130.literal(true).optional(),
18469
- centerToCenter: z130.literal(true).optional(),
18470
- 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()
18471
18484
  });
18472
18485
  expectTypesMatch(
18473
18486
  true
18474
18487
  );
18475
18488
 
18476
18489
  // lib/platformConfig.ts
18477
- import { z as z131 } from "zod";
18478
- var unvalidatedCircuitJson = z131.array(z131.any()).describe("Circuit JSON");
18479
- var footprintLibraryResult = z131.object({
18480
- 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()),
18481
18494
  cadModel: cadModelProp.optional()
18482
18495
  });
18483
- var pathToCircuitJsonFn = z131.function().args(z131.string()).returns(z131.promise(footprintLibraryResult)).or(
18484
- z131.function().args(
18485
- z131.string(),
18486
- z131.object({ resolvedPcbStyle: pcbStyle.optional() }).optional()
18487
- ).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))
18488
18501
  ).describe("A function that takes a path and returns Circuit JSON");
18489
- var footprintFileParserEntry = z131.object({
18490
- 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(
18491
18504
  "A function that takes a footprint file URL and returns Circuit JSON"
18492
18505
  )
18493
18506
  });
18494
- var spiceEngineSimulationResult = z131.object({
18495
- engineVersionString: z131.string().optional(),
18507
+ var spiceEngineSimulationResult = z132.object({
18508
+ engineVersionString: z132.string().optional(),
18496
18509
  simulationResultCircuitJson: unvalidatedCircuitJson
18497
18510
  });
18498
- var spiceEngineZod = z131.object({
18499
- 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(
18500
18513
  "A function that takes a SPICE string and returns a simulation result"
18501
18514
  )
18502
18515
  });
18503
- var defaultSpiceEngine = z131.custom(
18516
+ var defaultSpiceEngine = z132.custom(
18504
18517
  (value) => typeof value === "string"
18505
18518
  );
18506
- var autorouterInstance = z131.object({
18507
- run: z131.function().args().returns(z131.promise(z131.unknown())).describe("Run the autorouter"),
18508
- 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")
18509
18522
  });
18510
- var autorouterDefinition = z131.object({
18511
- 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")
18512
18525
  });
18513
- var platformFetch = z131.custom((value) => typeof value === "function").describe("A fetch-like function to use for platform requests");
18514
- 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({
18515
18528
  partsEngine: partsEngine.optional(),
18516
18529
  autorouter: autorouterProp.optional(),
18517
- autorouterMap: z131.record(z131.string(), autorouterDefinition).optional(),
18530
+ autorouterMap: z132.record(z132.string(), autorouterDefinition).optional(),
18518
18531
  registryApiUrl: url.optional(),
18519
18532
  cloudAutorouterUrl: url.optional(),
18520
- projectName: z131.string().optional(),
18533
+ projectName: z132.string().optional(),
18521
18534
  projectBaseUrl: url.optional(),
18522
- version: z131.string().optional(),
18535
+ version: z132.string().optional(),
18523
18536
  url: url.optional(),
18524
- printBoardInformationToSilkscreen: z131.boolean().optional(),
18525
- includeBoardFiles: z131.array(z131.string()).describe(
18537
+ printBoardInformationToSilkscreen: z132.boolean().optional(),
18538
+ includeBoardFiles: z132.array(z132.string()).describe(
18526
18539
  'The board files to automatically build with "tsci build", defaults to ["**/*.circuit.tsx"]. Can be an array of files or globs'
18527
18540
  ).optional(),
18528
- snapshotsDir: z131.string().describe(
18541
+ snapshotsDir: z132.string().describe(
18529
18542
  'The directory where snapshots are stored for "tsci snapshot", defaults to "tests/__snapshots__"'
18530
18543
  ).optional(),
18531
18544
  defaultSpiceEngine: defaultSpiceEngine.optional(),
18532
- unitPreference: z131.enum(["mm", "in", "mil"]).optional(),
18533
- localCacheEngine: z131.any().optional(),
18534
- pcbDisabled: z131.boolean().optional(),
18535
- routingDisabled: z131.boolean().optional(),
18536
- schematicDisabled: z131.boolean().optional(),
18537
- partsEngineDisabled: z131.boolean().optional(),
18538
- drcChecksDisabled: z131.boolean().optional(),
18539
- netlistDrcChecksDisabled: z131.boolean().optional(),
18540
- routingDrcChecksDisabled: z131.boolean().optional(),
18541
- placementDrcChecksDisabled: z131.boolean().optional(),
18542
- pinSpecificationDrcChecksDisabled: z131.boolean().optional(),
18543
- spiceEngineMap: z131.record(z131.string(), spiceEngineZod).optional(),
18544
- footprintLibraryMap: z131.record(
18545
- z131.string(),
18546
- 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([
18547
18560
  pathToCircuitJsonFn,
18548
- z131.record(
18549
- z131.string(),
18550
- z131.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
18561
+ z132.record(
18562
+ z132.string(),
18563
+ z132.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
18551
18564
  )
18552
18565
  ])
18553
18566
  ).optional(),
18554
- footprintFileParserMap: z131.record(z131.string(), footprintFileParserEntry).optional(),
18555
- 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(
18556
18569
  "A function that returns a string URL for static files for the project"
18557
18570
  ).optional(),
18558
18571
  platformFetch: platformFetch.optional()
@@ -18631,6 +18644,7 @@ export {
18631
18644
  currentSourceProps,
18632
18645
  customDrcCheckFn,
18633
18646
  cutoutProps,
18647
+ differentialPairProps,
18634
18648
  diodePins,
18635
18649
  diodeProps,
18636
18650
  direction,