@tscircuit/props 0.0.610 → 0.0.612

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