@tscircuit/props 0.0.611 → 0.0.613

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
@@ -17383,6 +17383,7 @@ var baseTraceProps = z70.object({
17383
17383
  schStroke: z70.string().optional(),
17384
17384
  highlightColor: z70.string().optional(),
17385
17385
  maxLength: distance18.optional(),
17386
+ maxViaCount: z70.number().int().nonnegative().optional().describe("Maximum number of vias allowed in the PCB trace route"),
17386
17387
  connectsTo: z70.string().or(z70.array(z70.string())).optional()
17387
17388
  });
17388
17389
  var traceProps = z70.union([
@@ -17400,27 +17401,40 @@ var traceProps = z70.union([
17400
17401
  ]);
17401
17402
 
17402
17403
  // lib/components/bus.ts
17404
+ import {
17405
+ distance as distance19,
17406
+ layer_ref as layer_ref6,
17407
+ resistance as resistance3
17408
+ } from "circuit-json";
17403
17409
  import { z as z71 } from "zod";
17404
17410
  var busProps = z71.object({
17405
17411
  name: z71.string().optional(),
17406
17412
  connections: z71.array(z71.string()).min(2),
17407
- routingPhaseIndex: z71.number().nullable().optional()
17413
+ routingPhaseIndex: z71.number().nullable().optional(),
17414
+ maxLengthSkew: distance19.pipe(z71.number().min(0).finite()).optional(),
17415
+ targetImpedance: resistance3.pipe(z71.number().positive().finite()).optional(),
17416
+ pcbTraceWidth: distance19.pipe(z71.number().positive().finite()).optional(),
17417
+ pcbAllowedLayers: z71.array(layer_ref6).min(1).optional()
17408
17418
  });
17409
17419
  expectTypesMatch(true);
17410
17420
 
17411
17421
  // lib/components/differentialpair.ts
17422
+ import { distance as distance20, resistance as resistance4 } from "circuit-json";
17412
17423
  import { z as z72 } from "zod";
17413
17424
  var differentialPairProps = z72.object({
17414
17425
  name: z72.string().optional(),
17415
17426
  positiveConnection: z72.string(),
17416
17427
  negativeConnection: z72.string(),
17417
- maxLengthSkew: z72.number().min(0).finite().optional()
17428
+ maxLengthSkew: distance20.pipe(z72.number().min(0).finite()).optional(),
17429
+ targetDifferentialImpedance: resistance4.pipe(z72.number().positive().finite()).optional(),
17430
+ pcbTraceGap: distance20.pipe(z72.number().positive().finite()).optional(),
17431
+ maxUncoupledLength: distance20.pipe(z72.number().min(0).finite()).optional()
17418
17432
  });
17419
17433
  expectTypesMatch(true);
17420
17434
 
17421
17435
  // lib/components/footprint.ts
17422
17436
  import {
17423
- layer_ref as layer_ref6
17437
+ layer_ref as layer_ref7
17424
17438
  } from "circuit-json";
17425
17439
  import { z as z73 } from "zod";
17426
17440
  var footprintInsertionDirection = z73.enum([
@@ -17444,7 +17458,7 @@ expectTypesMatch(true);
17444
17458
  var footprintProps = z73.object({
17445
17459
  children: z73.any().optional(),
17446
17460
  name: z73.string().optional(),
17447
- originalLayer: layer_ref6.default("top").optional(),
17461
+ originalLayer: layer_ref7.default("top").optional(),
17448
17462
  circuitJson: z73.array(z73.any()).optional(),
17449
17463
  src: footprintProp.describe("Can be a footprint or kicad string").optional(),
17450
17464
  insertionDirection: footprintInsertionDirection.optional().describe(
@@ -17505,7 +17519,7 @@ var mountedboardProps = subcircuitGroupProps.extend({
17505
17519
  expectTypesMatch(true);
17506
17520
 
17507
17521
  // lib/components/pin-header.ts
17508
- import { distance as distance19 } from "circuit-json";
17522
+ import { distance as distance21 } from "circuit-json";
17509
17523
 
17510
17524
  // lib/common/pcbOrientation.ts
17511
17525
  import { z as z77 } from "zod";
@@ -17518,7 +17532,7 @@ expectTypesMatch(true);
17518
17532
  import { z as z78 } from "zod";
17519
17533
  var pinHeaderProps = commonComponentProps.extend({
17520
17534
  pinCount: z78.number(),
17521
- pitch: distance19.optional(),
17535
+ pitch: distance21.optional(),
17522
17536
  schFacingDirection: z78.enum(["up", "down", "left", "right"]).optional(),
17523
17537
  gender: z78.enum(["male", "female", "unpopulated"]).optional().default("male"),
17524
17538
  showSilkscreenPinLabels: z78.boolean().optional(),
@@ -17526,16 +17540,16 @@ var pinHeaderProps = commonComponentProps.extend({
17526
17540
  doubleRow: z78.boolean().optional(),
17527
17541
  rightAngle: z78.boolean().optional(),
17528
17542
  pcbOrientation: pcbOrientation.optional(),
17529
- holeDiameter: distance19.optional(),
17530
- platedDiameter: distance19.optional(),
17543
+ holeDiameter: distance21.optional(),
17544
+ platedDiameter: distance21.optional(),
17531
17545
  pinLabels: z78.record(z78.string(), schematicPinLabel).or(z78.array(schematicPinLabel)).optional(),
17532
17546
  connections: z78.custom().pipe(z78.record(z78.string(), connectionTarget)).optional(),
17533
17547
  facingDirection: z78.enum(["left", "right"]).optional(),
17534
17548
  schPinArrangement: schematicPinArrangement.optional(),
17535
17549
  schPinStyle: schematicPinStyle.optional(),
17536
- schPinSpacing: distance19.optional(),
17537
- schWidth: distance19.optional(),
17538
- schHeight: distance19.optional()
17550
+ schPinSpacing: distance21.optional(),
17551
+ schWidth: distance21.optional(),
17552
+ schHeight: distance21.optional()
17539
17553
  });
17540
17554
  expectTypesMatch(true);
17541
17555
 
@@ -17725,11 +17739,11 @@ import {
17725
17739
  capacitance as capacitance4,
17726
17740
  current as current2,
17727
17741
  inductance,
17728
- resistance as resistance3,
17742
+ resistance as resistance5,
17729
17743
  voltage as voltage4
17730
17744
  } from "circuit-json";
17731
17745
  import { z as z87 } from "zod";
17732
- var resistanceSweepQuantity = resistance3.pipe(z87.number());
17746
+ var resistanceSweepQuantity = resistance5.pipe(z87.number());
17733
17747
  var capacitanceSweepQuantity = capacitance4.pipe(z87.number());
17734
17748
  var inductanceSweepQuantity = inductance.pipe(z87.number());
17735
17749
  var voltageSweepQuantity = voltage4.pipe(z87.number());
@@ -18115,17 +18129,17 @@ var fabricationNoteTextProps = pcbLayoutProps.extend({
18115
18129
  expectTypesMatch(true);
18116
18130
 
18117
18131
  // lib/components/fabrication-note-rect.ts
18118
- import { distance as distance20 } from "circuit-json";
18132
+ import { distance as distance22 } from "circuit-json";
18119
18133
  import { z as z99 } from "zod";
18120
18134
  var fabricationNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18121
- width: distance20,
18122
- height: distance20,
18123
- strokeWidth: distance20.optional(),
18135
+ width: distance22,
18136
+ height: distance22,
18137
+ strokeWidth: distance22.optional(),
18124
18138
  isFilled: z99.boolean().optional(),
18125
18139
  hasStroke: z99.boolean().optional(),
18126
18140
  isStrokeDashed: z99.boolean().optional(),
18127
18141
  color: z99.string().optional(),
18128
- cornerRadius: distance20.optional()
18142
+ cornerRadius: distance22.optional()
18129
18143
  });
18130
18144
 
18131
18145
  // lib/components/fabrication-note-path.ts
@@ -18148,7 +18162,7 @@ var fabricationNotePathProps = pcbLayoutProps.omit({
18148
18162
  });
18149
18163
 
18150
18164
  // lib/components/fabrication-note-dimension.ts
18151
- import { distance as distance21, length as length6 } from "circuit-json";
18165
+ import { distance as distance23, length as length6 } from "circuit-json";
18152
18166
  import { z as z101 } from "zod";
18153
18167
  var dimensionTarget = z101.union([z101.string(), point]);
18154
18168
  var fabricationNoteDimensionProps = pcbLayoutProps.omit({
@@ -18165,11 +18179,11 @@ var fabricationNoteDimensionProps = pcbLayoutProps.omit({
18165
18179
  from: dimensionTarget,
18166
18180
  to: dimensionTarget,
18167
18181
  text: z101.string().optional(),
18168
- offset: distance21.optional(),
18182
+ offset: distance23.optional(),
18169
18183
  font: z101.enum(["tscircuit2024"]).optional(),
18170
18184
  fontSize: length6.optional(),
18171
18185
  color: z101.string().optional(),
18172
- arrowSize: distance21.optional(),
18186
+ arrowSize: distance23.optional(),
18173
18187
  units: z101.enum(["in", "mm"]).optional(),
18174
18188
  outerEdgeToEdge: z101.literal(true).optional(),
18175
18189
  centerToCenter: z101.literal(true).optional(),
@@ -18178,31 +18192,31 @@ var fabricationNoteDimensionProps = pcbLayoutProps.omit({
18178
18192
  expectTypesMatch(true);
18179
18193
 
18180
18194
  // lib/components/pcb-trace.ts
18181
- import { distance as distance22, route_hint_point as route_hint_point4 } from "circuit-json";
18195
+ import { distance as distance24, route_hint_point as route_hint_point4 } from "circuit-json";
18182
18196
  import { z as z102 } from "zod";
18183
18197
  var pcbTraceProps = z102.object({
18184
18198
  layer: z102.string().optional(),
18185
- thickness: distance22.optional(),
18199
+ thickness: distance24.optional(),
18186
18200
  route: z102.array(route_hint_point4)
18187
18201
  });
18188
18202
 
18189
18203
  // lib/components/via.ts
18190
- import { distance as distance23, layer_ref as layer_ref7 } from "circuit-json";
18204
+ import { distance as distance25, layer_ref as layer_ref8 } from "circuit-json";
18191
18205
  import { z as z103 } from "zod";
18192
18206
  var viaProps = commonLayoutProps.extend({
18193
18207
  name: z103.string().optional(),
18194
- fromLayer: layer_ref7.optional(),
18195
- toLayer: layer_ref7.optional(),
18196
- holeDiameter: distance23.optional(),
18197
- outerDiameter: distance23.optional(),
18198
- layers: z103.array(layer_ref7).optional(),
18208
+ fromLayer: layer_ref8.optional(),
18209
+ toLayer: layer_ref8.optional(),
18210
+ holeDiameter: distance25.optional(),
18211
+ outerDiameter: distance25.optional(),
18212
+ layers: z103.array(layer_ref8).optional(),
18199
18213
  connectsTo: z103.string().or(z103.array(z103.string())).optional(),
18200
18214
  netIsAssignable: z103.boolean().optional()
18201
18215
  });
18202
18216
  expectTypesMatch(true);
18203
18217
 
18204
18218
  // lib/components/testpoint.ts
18205
- import { distance as distance24 } from "circuit-json";
18219
+ import { distance as distance26 } from "circuit-json";
18206
18220
  import { z as z104 } from "zod";
18207
18221
  var testpointPins = ["pin1"];
18208
18222
  var testpointConnectionsProp = z104.object({
@@ -18212,10 +18226,10 @@ var testpointProps = commonComponentProps.extend({
18212
18226
  connections: testpointConnectionsProp.optional(),
18213
18227
  footprintVariant: z104.enum(["pad", "through_hole"]).optional(),
18214
18228
  padShape: z104.enum(["rect", "circle"]).optional().default("circle"),
18215
- padDiameter: distance24.optional(),
18216
- holeDiameter: distance24.optional(),
18217
- width: distance24.optional(),
18218
- height: distance24.optional()
18229
+ padDiameter: distance26.optional(),
18230
+ holeDiameter: distance26.optional(),
18231
+ width: distance26.optional(),
18232
+ height: distance26.optional()
18219
18233
  }).refine(
18220
18234
  (props) => props.footprintVariant !== "through_hole" || props.holeDiameter !== void 0,
18221
18235
  { message: "holeDiameter is required for through_hole testpoints" }
@@ -18230,22 +18244,22 @@ var breakoutPointProps = pcbLayoutProps.omit({ pcbRotation: true, layer: true })
18230
18244
  expectTypesMatch(true);
18231
18245
 
18232
18246
  // lib/components/pcb-keepout.ts
18233
- import { distance as distance25, layer_ref as layer_ref8 } from "circuit-json";
18247
+ import { distance as distance27, layer_ref as layer_ref9 } from "circuit-json";
18234
18248
  import { z as z106 } from "zod";
18235
18249
  var pcbKeepoutProps = z106.union([
18236
18250
  pcbLayoutProps.omit({ pcbRotation: true }).extend({
18237
18251
  shape: z106.literal("circle"),
18238
- radius: distance25,
18239
- layers: z106.array(layer_ref8).optional(),
18252
+ radius: distance27,
18253
+ layers: z106.array(layer_ref9).optional(),
18240
18254
  excludeRefs: z106.array(z106.string()).optional().describe(
18241
18255
  'Component selectors excluded from the keepout, such as ".ANT1"'
18242
18256
  )
18243
18257
  }),
18244
18258
  pcbLayoutProps.extend({
18245
18259
  shape: z106.literal("rect"),
18246
- width: distance25,
18247
- height: distance25,
18248
- layers: z106.array(layer_ref8).optional(),
18260
+ width: distance27,
18261
+ height: distance27,
18262
+ layers: z106.array(layer_ref9).optional(),
18249
18263
  excludeRefs: z106.array(z106.string()).optional().describe(
18250
18264
  'Component selectors excluded from the keepout, such as ".ANT1"'
18251
18265
  )
@@ -18253,12 +18267,12 @@ var pcbKeepoutProps = z106.union([
18253
18267
  ]);
18254
18268
 
18255
18269
  // lib/components/courtyard-rect.ts
18256
- import { distance as distance26 } from "circuit-json";
18270
+ import { distance as distance28 } from "circuit-json";
18257
18271
  import { z as z107 } from "zod";
18258
18272
  var courtyardRectProps = pcbLayoutProps.extend({
18259
- width: distance26,
18260
- height: distance26,
18261
- strokeWidth: distance26.optional(),
18273
+ width: distance28,
18274
+ height: distance28,
18275
+ strokeWidth: distance28.optional(),
18262
18276
  isFilled: z107.boolean().optional(),
18263
18277
  hasStroke: z107.boolean().optional(),
18264
18278
  isStrokeDashed: z107.boolean().optional(),
@@ -18287,27 +18301,27 @@ var courtyardOutlineProps = pcbLayoutProps.omit({
18287
18301
  });
18288
18302
 
18289
18303
  // lib/components/courtyard-circle.ts
18290
- import { distance as distance27 } from "circuit-json";
18304
+ import { distance as distance29 } from "circuit-json";
18291
18305
  import "zod";
18292
18306
  var courtyardCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18293
- radius: distance27
18307
+ radius: distance29
18294
18308
  });
18295
18309
 
18296
18310
  // lib/components/courtyard-pill.ts
18297
- import { distance as distance28 } from "circuit-json";
18311
+ import { distance as distance30 } from "circuit-json";
18298
18312
  import "zod";
18299
18313
  var courtyardPillProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18300
- width: distance28,
18301
- height: distance28,
18302
- radius: distance28
18314
+ width: distance30,
18315
+ height: distance30,
18316
+ radius: distance30
18303
18317
  });
18304
18318
 
18305
18319
  // lib/components/copper-pour.ts
18306
18320
  import { z as z111 } from "zod";
18307
- import { layer_ref as layer_ref9 } from "circuit-json";
18321
+ import { layer_ref as layer_ref10 } from "circuit-json";
18308
18322
  var copperPourProps = z111.object({
18309
18323
  name: z111.string().optional(),
18310
- layer: layer_ref9,
18324
+ layer: layer_ref10,
18311
18325
  connectsTo: z111.string(),
18312
18326
  unbroken: z111.boolean().optional(),
18313
18327
  padMargin: distance.optional(),
@@ -18321,10 +18335,10 @@ var copperPourProps = z111.object({
18321
18335
  expectTypesMatch(true);
18322
18336
 
18323
18337
  // lib/components/cadassembly.ts
18324
- import { layer_ref as layer_ref10 } from "circuit-json";
18338
+ import { layer_ref as layer_ref11 } from "circuit-json";
18325
18339
  import { z as z112 } from "zod";
18326
18340
  var cadassemblyProps = z112.object({
18327
- originalLayer: layer_ref10.default("top").optional(),
18341
+ originalLayer: layer_ref11.default("top").optional(),
18328
18342
  children: z112.any().optional()
18329
18343
  });
18330
18344
  expectTypesMatch(true);
@@ -18454,15 +18468,15 @@ var ammeterPins = ammeterPinLabels;
18454
18468
  expectTypesMatch(true);
18455
18469
 
18456
18470
  // lib/components/schematic-arc.ts
18457
- import { distance as distance29, point as point5, rotation as rotation7 } from "circuit-json";
18471
+ import { distance as distance31, point as point5, rotation as rotation7 } from "circuit-json";
18458
18472
  import { z as z118 } from "zod";
18459
18473
  var schematicArcProps = z118.object({
18460
18474
  center: point5,
18461
- radius: distance29,
18475
+ radius: distance31,
18462
18476
  startAngleDegrees: rotation7,
18463
18477
  endAngleDegrees: rotation7,
18464
18478
  direction: z118.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
18465
- strokeWidth: distance29.optional(),
18479
+ strokeWidth: distance31.optional(),
18466
18480
  color: z118.string().optional(),
18467
18481
  isDashed: z118.boolean().optional().default(false)
18468
18482
  });
@@ -18476,29 +18490,29 @@ var toolingrailProps = z119.object({
18476
18490
  expectTypesMatch(true);
18477
18491
 
18478
18492
  // lib/components/schematic-box.ts
18479
- import { distance as distance30 } from "circuit-json";
18493
+ import { distance as distance32 } from "circuit-json";
18480
18494
  import { z as z120 } from "zod";
18481
18495
  var schematicBoxProps = z120.object({
18482
18496
  name: z120.string().optional(),
18483
18497
  chipRef: z120.string().optional(),
18484
18498
  pinLabels: pinLabelsProp.optional(),
18485
18499
  schPinArrangement: schematicPinArrangement.optional(),
18486
- schX: distance30.optional(),
18487
- schY: distance30.optional(),
18500
+ schX: distance32.optional(),
18501
+ schY: distance32.optional(),
18488
18502
  schSectionName: z120.string().optional(),
18489
18503
  schSheetName: z120.string().optional(),
18490
- width: distance30.optional(),
18491
- height: distance30.optional(),
18504
+ width: distance32.optional(),
18505
+ height: distance32.optional(),
18492
18506
  overlay: z120.array(z120.string()).optional(),
18493
- padding: distance30.optional(),
18494
- paddingLeft: distance30.optional(),
18495
- paddingRight: distance30.optional(),
18496
- paddingTop: distance30.optional(),
18497
- paddingBottom: distance30.optional(),
18507
+ padding: distance32.optional(),
18508
+ paddingLeft: distance32.optional(),
18509
+ paddingRight: distance32.optional(),
18510
+ paddingTop: distance32.optional(),
18511
+ paddingBottom: distance32.optional(),
18498
18512
  title: z120.string().optional(),
18499
18513
  titleAlignment: ninePointAnchor.default("top_left"),
18500
18514
  titleColor: z120.string().optional(),
18501
- titleFontSize: distance30.optional(),
18515
+ titleFontSize: distance32.optional(),
18502
18516
  titleInside: z120.boolean().default(false),
18503
18517
  strokeStyle: z120.enum(["solid", "dashed"]).default("solid")
18504
18518
  }).refine(
@@ -18537,12 +18551,12 @@ expectTypesMatch(
18537
18551
  );
18538
18552
 
18539
18553
  // lib/components/schematic-circle.ts
18540
- import { distance as distance31, point as point6 } from "circuit-json";
18554
+ import { distance as distance33, point as point6 } from "circuit-json";
18541
18555
  import { z as z122 } from "zod";
18542
18556
  var schematicCircleProps = z122.object({
18543
18557
  center: point6,
18544
- radius: distance31,
18545
- strokeWidth: distance31.optional(),
18558
+ radius: distance33,
18559
+ strokeWidth: distance33.optional(),
18546
18560
  color: z122.string().optional(),
18547
18561
  isFilled: z122.boolean().optional().default(false),
18548
18562
  fillColor: z122.string().optional(),
@@ -18553,15 +18567,15 @@ expectTypesMatch(
18553
18567
  );
18554
18568
 
18555
18569
  // lib/components/schematic-rect.ts
18556
- import { distance as distance32, rotation as rotation9 } from "circuit-json";
18570
+ import { distance as distance34, rotation as rotation9 } from "circuit-json";
18557
18571
  import { z as z123 } from "zod";
18558
18572
  var schematicRectProps = z123.object({
18559
- schX: distance32.optional(),
18560
- schY: distance32.optional(),
18561
- width: distance32,
18562
- height: distance32,
18573
+ schX: distance34.optional(),
18574
+ schY: distance34.optional(),
18575
+ width: distance34,
18576
+ height: distance34,
18563
18577
  rotation: rotation9.default(0),
18564
- strokeWidth: distance32.optional(),
18578
+ strokeWidth: distance34.optional(),
18565
18579
  color: z123.string().optional(),
18566
18580
  isFilled: z123.boolean().optional().default(false),
18567
18581
  fillColor: z123.string().optional(),
@@ -18570,23 +18584,23 @@ var schematicRectProps = z123.object({
18570
18584
  expectTypesMatch(true);
18571
18585
 
18572
18586
  // lib/components/schematic-line.ts
18573
- import { distance as distance33 } from "circuit-json";
18587
+ import { distance as distance35 } from "circuit-json";
18574
18588
  import { z as z124 } from "zod";
18575
18589
  var schematicLineProps = z124.object({
18576
- x1: distance33,
18577
- y1: distance33,
18578
- x2: distance33,
18579
- y2: distance33,
18580
- strokeWidth: distance33.optional(),
18590
+ x1: distance35,
18591
+ y1: distance35,
18592
+ x2: distance35,
18593
+ y2: distance35,
18594
+ strokeWidth: distance35.optional(),
18581
18595
  color: z124.string().optional(),
18582
18596
  isDashed: z124.boolean().optional().default(false),
18583
- dashLength: distance33.optional(),
18584
- dashGap: distance33.optional()
18597
+ dashLength: distance35.optional(),
18598
+ dashGap: distance35.optional()
18585
18599
  });
18586
18600
  expectTypesMatch(true);
18587
18601
 
18588
18602
  // lib/components/schematic-text.ts
18589
- import { distance as distance34, rotation as rotation10 } from "circuit-json";
18603
+ import { distance as distance36, rotation as rotation10 } from "circuit-json";
18590
18604
  import { z as z126 } from "zod";
18591
18605
 
18592
18606
  // lib/common/fivePointAnchor.ts
@@ -18601,8 +18615,8 @@ var fivePointAnchor = z125.enum([
18601
18615
 
18602
18616
  // lib/components/schematic-text.ts
18603
18617
  var schematicTextProps = z126.object({
18604
- schX: distance34.optional(),
18605
- schY: distance34.optional(),
18618
+ schX: distance36.optional(),
18619
+ schY: distance36.optional(),
18606
18620
  text: z126.string(),
18607
18621
  fontSize: z126.number().default(1),
18608
18622
  anchor: z126.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
@@ -18612,65 +18626,65 @@ var schematicTextProps = z126.object({
18612
18626
  expectTypesMatch(true);
18613
18627
 
18614
18628
  // lib/components/schematic-path.ts
18615
- import { distance as distance35, point as point7 } from "circuit-json";
18629
+ import { distance as distance37, point as point7 } from "circuit-json";
18616
18630
  import { z as z127 } from "zod";
18617
18631
  var schematicPathProps = z127.object({
18618
18632
  points: z127.array(point7).optional(),
18619
18633
  svgPath: z127.string().optional(),
18620
- strokeWidth: distance35.optional(),
18634
+ strokeWidth: distance37.optional(),
18621
18635
  strokeColor: z127.string().optional(),
18622
- dashLength: distance35.optional(),
18623
- dashGap: distance35.optional(),
18636
+ dashLength: distance37.optional(),
18637
+ dashGap: distance37.optional(),
18624
18638
  isFilled: z127.boolean().optional().default(false),
18625
18639
  fillColor: z127.string().optional()
18626
18640
  });
18627
18641
  expectTypesMatch(true);
18628
18642
 
18629
18643
  // lib/components/schematic-table.ts
18630
- import { distance as distance36 } from "circuit-json";
18644
+ import { distance as distance38 } from "circuit-json";
18631
18645
  import { z as z128 } from "zod";
18632
18646
  var schematicTableProps = z128.object({
18633
- schX: distance36.optional(),
18634
- schY: distance36.optional(),
18647
+ schX: distance38.optional(),
18648
+ schY: distance38.optional(),
18635
18649
  children: z128.any().optional(),
18636
- cellPadding: distance36.optional(),
18637
- borderWidth: distance36.optional(),
18650
+ cellPadding: distance38.optional(),
18651
+ borderWidth: distance38.optional(),
18638
18652
  anchor: ninePointAnchor.optional(),
18639
- fontSize: distance36.optional()
18653
+ fontSize: distance38.optional()
18640
18654
  });
18641
18655
  expectTypesMatch(true);
18642
18656
 
18643
18657
  // lib/components/schematic-row.ts
18644
- import { distance as distance37 } from "circuit-json";
18658
+ import { distance as distance39 } from "circuit-json";
18645
18659
  import { z as z129 } from "zod";
18646
18660
  var schematicRowProps = z129.object({
18647
18661
  children: z129.any().optional(),
18648
- height: distance37.optional()
18662
+ height: distance39.optional()
18649
18663
  });
18650
18664
  expectTypesMatch(true);
18651
18665
 
18652
18666
  // lib/components/schematic-cell.ts
18653
- import { distance as distance38 } from "circuit-json";
18667
+ import { distance as distance40 } from "circuit-json";
18654
18668
  import { z as z130 } from "zod";
18655
18669
  var schematicCellProps = z130.object({
18656
18670
  children: z130.string().optional(),
18657
18671
  horizontalAlign: z130.enum(["left", "center", "right"]).optional(),
18658
18672
  verticalAlign: z130.enum(["top", "middle", "bottom"]).optional(),
18659
- fontSize: distance38.optional(),
18673
+ fontSize: distance40.optional(),
18660
18674
  rowSpan: z130.number().optional(),
18661
18675
  colSpan: z130.number().optional(),
18662
- width: distance38.optional(),
18676
+ width: distance40.optional(),
18663
18677
  text: z130.string().optional()
18664
18678
  });
18665
18679
  expectTypesMatch(true);
18666
18680
 
18667
18681
  // lib/components/schematic-section.ts
18668
- import { distance as distance39 } from "circuit-json";
18682
+ import { distance as distance41 } from "circuit-json";
18669
18683
  import { z as z131 } from "zod";
18670
18684
  var schematicSectionProps = z131.object({
18671
18685
  displayName: z131.string().optional(),
18672
18686
  name: z131.string(),
18673
- sectionTitleFontSize: distance39.optional()
18687
+ sectionTitleFontSize: distance41.optional()
18674
18688
  });
18675
18689
  expectTypesMatch(
18676
18690
  true
@@ -18687,20 +18701,20 @@ var schematicSheetProps = z132.object({
18687
18701
  expectTypesMatch(true);
18688
18702
 
18689
18703
  // lib/components/copper-text.ts
18690
- import { layer_ref as layer_ref11, length as length8 } from "circuit-json";
18704
+ import { layer_ref as layer_ref12, length as length8 } from "circuit-json";
18691
18705
  import { z as z133 } from "zod";
18692
18706
  var copperTextProps = pcbLayoutProps.extend({
18693
18707
  text: z133.string(),
18694
18708
  anchorAlignment: ninePointAnchor.default("center"),
18695
18709
  font: z133.enum(["tscircuit2024"]).optional(),
18696
18710
  fontSize: length8.optional(),
18697
- layers: z133.array(layer_ref11).optional(),
18711
+ layers: z133.array(layer_ref12).optional(),
18698
18712
  knockout: z133.boolean().optional(),
18699
18713
  mirrored: z133.boolean().optional()
18700
18714
  });
18701
18715
 
18702
18716
  // lib/components/silkscreen-text.ts
18703
- import { layer_ref as layer_ref12, length as length9 } from "circuit-json";
18717
+ import { layer_ref as layer_ref13, length as length9 } from "circuit-json";
18704
18718
  import { z as z134 } from "zod";
18705
18719
  var silkscreenTextProps = pcbLayoutProps.extend({
18706
18720
  text: z134.string(),
@@ -18716,7 +18730,7 @@ var silkscreenTextProps = pcbLayoutProps.extend({
18716
18730
  knockoutPaddingRight: length9.optional(),
18717
18731
  knockoutPaddingTop: length9.optional(),
18718
18732
  knockoutPaddingBottom: length9.optional(),
18719
- layers: z134.array(layer_ref12).optional()
18733
+ layers: z134.array(layer_ref13).optional()
18720
18734
  });
18721
18735
 
18722
18736
  // lib/components/silkscreen-path.ts
@@ -18738,7 +18752,7 @@ var silkscreenPathProps = pcbLayoutProps.omit({
18738
18752
  });
18739
18753
 
18740
18754
  // lib/components/silkscreen-line.ts
18741
- import { distance as distance40 } from "circuit-json";
18755
+ import { distance as distance42 } from "circuit-json";
18742
18756
  var silkscreenLineProps = pcbLayoutProps.omit({
18743
18757
  pcbX: true,
18744
18758
  pcbY: true,
@@ -18746,33 +18760,33 @@ var silkscreenLineProps = pcbLayoutProps.omit({
18746
18760
  pcbOffsetY: true,
18747
18761
  pcbRotation: true
18748
18762
  }).extend({
18749
- strokeWidth: distance40,
18750
- x1: distance40,
18751
- y1: distance40,
18752
- x2: distance40,
18753
- y2: distance40
18763
+ strokeWidth: distance42,
18764
+ x1: distance42,
18765
+ y1: distance42,
18766
+ x2: distance42,
18767
+ y2: distance42
18754
18768
  });
18755
18769
 
18756
18770
  // lib/components/silkscreen-rect.ts
18757
- import { distance as distance41 } from "circuit-json";
18771
+ import { distance as distance43 } from "circuit-json";
18758
18772
  import { z as z136 } from "zod";
18759
18773
  var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18760
18774
  filled: z136.boolean().default(true).optional(),
18761
18775
  stroke: z136.enum(["dashed", "solid", "none"]).optional(),
18762
- strokeWidth: distance41.optional(),
18763
- width: distance41,
18764
- height: distance41,
18765
- cornerRadius: distance41.optional()
18776
+ strokeWidth: distance43.optional(),
18777
+ width: distance43,
18778
+ height: distance43,
18779
+ cornerRadius: distance43.optional()
18766
18780
  });
18767
18781
 
18768
18782
  // lib/components/silkscreen-circle.ts
18769
- import { distance as distance42 } from "circuit-json";
18783
+ import { distance as distance44 } from "circuit-json";
18770
18784
  import { z as z137 } from "zod";
18771
18785
  var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18772
18786
  isFilled: z137.boolean().optional(),
18773
18787
  isOutline: z137.boolean().optional(),
18774
- strokeWidth: distance42.optional(),
18775
- radius: distance42
18788
+ strokeWidth: distance44.optional(),
18789
+ radius: distance44
18776
18790
  });
18777
18791
 
18778
18792
  // lib/components/silkscreen-graphic.ts
@@ -18787,13 +18801,13 @@ var silkscreenGraphicProps = pcbLayoutProps.omit({ layer: true, pcbStyle: true,
18787
18801
  expectTypesMatch(true);
18788
18802
 
18789
18803
  // lib/components/trace-hint.ts
18790
- import { distance as distance43, layer_ref as layer_ref13, route_hint_point as route_hint_point6 } from "circuit-json";
18804
+ import { distance as distance45, layer_ref as layer_ref14, route_hint_point as route_hint_point6 } from "circuit-json";
18791
18805
  import { z as z139 } from "zod";
18792
18806
  var routeHintPointProps = z139.object({
18793
- x: distance43,
18794
- y: distance43,
18807
+ x: distance45,
18808
+ y: distance45,
18795
18809
  via: z139.boolean().optional(),
18796
- toLayer: layer_ref13.optional()
18810
+ toLayer: layer_ref14.optional()
18797
18811
  });
18798
18812
  var traceHintProps = z139.object({
18799
18813
  for: z139.string().optional().describe(
@@ -18835,17 +18849,17 @@ var pcbNoteTextProps = pcbLayoutProps.extend({
18835
18849
  expectTypesMatch(true);
18836
18850
 
18837
18851
  // lib/components/pcb-note-rect.ts
18838
- import { distance as distance44 } from "circuit-json";
18852
+ import { distance as distance46 } from "circuit-json";
18839
18853
  import { z as z142 } from "zod";
18840
18854
  var pcbNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
18841
- width: distance44,
18842
- height: distance44,
18843
- strokeWidth: distance44.optional(),
18855
+ width: distance46,
18856
+ height: distance46,
18857
+ strokeWidth: distance46.optional(),
18844
18858
  isFilled: z142.boolean().optional(),
18845
18859
  hasStroke: z142.boolean().optional(),
18846
18860
  isStrokeDashed: z142.boolean().optional(),
18847
18861
  color: z142.string().optional(),
18848
- cornerRadius: distance44.optional()
18862
+ cornerRadius: distance46.optional()
18849
18863
  });
18850
18864
  expectTypesMatch(true);
18851
18865
 
@@ -18873,7 +18887,7 @@ var pcbNotePathProps = pcbLayoutProps.omit({
18873
18887
  expectTypesMatch(true);
18874
18888
 
18875
18889
  // lib/components/pcb-note-line.ts
18876
- import { distance as distance45 } from "circuit-json";
18890
+ import { distance as distance47 } from "circuit-json";
18877
18891
  import { z as z144 } from "zod";
18878
18892
  var pcbNoteLineProps = pcbLayoutProps.omit({
18879
18893
  pcbLeftEdgeX: true,
@@ -18886,18 +18900,18 @@ var pcbNoteLineProps = pcbLayoutProps.omit({
18886
18900
  pcbOffsetY: true,
18887
18901
  pcbRotation: true
18888
18902
  }).extend({
18889
- x1: distance45,
18890
- y1: distance45,
18891
- x2: distance45,
18892
- y2: distance45,
18893
- strokeWidth: distance45.optional(),
18903
+ x1: distance47,
18904
+ y1: distance47,
18905
+ x2: distance47,
18906
+ y2: distance47,
18907
+ strokeWidth: distance47.optional(),
18894
18908
  color: z144.string().optional(),
18895
18909
  isDashed: z144.boolean().optional()
18896
18910
  });
18897
18911
  expectTypesMatch(true);
18898
18912
 
18899
18913
  // lib/components/pcb-note-dimension.ts
18900
- import { distance as distance46, length as length13 } from "circuit-json";
18914
+ import { distance as distance48, length as length13 } from "circuit-json";
18901
18915
  import { z as z145 } from "zod";
18902
18916
  var dimensionTarget2 = z145.union([z145.string(), point]);
18903
18917
  var pcbNoteDimensionProps = pcbLayoutProps.omit({
@@ -18914,11 +18928,11 @@ var pcbNoteDimensionProps = pcbLayoutProps.omit({
18914
18928
  from: dimensionTarget2,
18915
18929
  to: dimensionTarget2,
18916
18930
  text: z145.string().optional(),
18917
- offset: distance46.optional(),
18931
+ offset: distance48.optional(),
18918
18932
  font: z145.enum(["tscircuit2024"]).optional(),
18919
18933
  fontSize: length13.optional(),
18920
18934
  color: z145.string().optional(),
18921
- arrowSize: distance46.optional(),
18935
+ arrowSize: distance48.optional(),
18922
18936
  units: z145.enum(["in", "mm"]).optional(),
18923
18937
  outerEdgeToEdge: z145.literal(true).optional(),
18924
18938
  centerToCenter: z145.literal(true).optional(),