@tscircuit/props 0.0.309 → 0.0.310

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
@@ -30,7 +30,7 @@ import {
30
30
  rotation,
31
31
  supplier_name
32
32
  } from "circuit-json";
33
- import { z as z6 } from "zod";
33
+ import { z as z7 } from "zod";
34
34
 
35
35
  // lib/common/cadModel.ts
36
36
  import { z as z4 } from "zod";
@@ -95,12 +95,16 @@ expectTypesMatch(true);
95
95
  import { z as z5 } from "zod";
96
96
  var footprintProp = z5.custom((v) => true);
97
97
 
98
+ // lib/common/symbolProp.ts
99
+ import { z as z6 } from "zod";
100
+ var symbolProp = z6.custom((v) => true);
101
+
98
102
  // lib/common/layout.ts
99
- var pcbLayoutProps = z6.object({
103
+ var pcbLayoutProps = z7.object({
100
104
  pcbX: distance2.optional(),
101
105
  pcbY: distance2.optional(),
102
106
  pcbRotation: rotation.optional(),
103
- pcbPositionAnchor: z6.string().optional(),
107
+ pcbPositionAnchor: z7.string().optional(),
104
108
  layer: layer_ref.optional(),
105
109
  pcbMarginTop: distance2.optional(),
106
110
  pcbMarginRight: distance2.optional(),
@@ -108,15 +112,15 @@ var pcbLayoutProps = z6.object({
108
112
  pcbMarginLeft: distance2.optional(),
109
113
  pcbMarginX: distance2.optional(),
110
114
  pcbMarginY: distance2.optional(),
111
- pcbRelative: z6.boolean().optional(),
112
- relative: z6.boolean().optional()
115
+ pcbRelative: z7.boolean().optional(),
116
+ relative: z7.boolean().optional()
113
117
  });
114
118
  expectTypesMatch(true);
115
- var commonLayoutProps = z6.object({
119
+ var commonLayoutProps = z7.object({
116
120
  pcbX: distance2.optional(),
117
121
  pcbY: distance2.optional(),
118
122
  pcbRotation: rotation.optional(),
119
- pcbPositionAnchor: z6.string().optional(),
123
+ pcbPositionAnchor: z7.string().optional(),
120
124
  pcbMarginTop: distance2.optional(),
121
125
  pcbMarginRight: distance2.optional(),
122
126
  pcbMarginBottom: distance2.optional(),
@@ -134,33 +138,34 @@ var commonLayoutProps = z6.object({
134
138
  schRotation: rotation.optional(),
135
139
  layer: layer_ref.optional(),
136
140
  footprint: footprintProp.optional(),
137
- relative: z6.boolean().optional(),
138
- schRelative: z6.boolean().optional(),
139
- pcbRelative: z6.boolean().optional()
141
+ symbol: symbolProp.optional(),
142
+ relative: z7.boolean().optional(),
143
+ schRelative: z7.boolean().optional(),
144
+ pcbRelative: z7.boolean().optional()
140
145
  });
141
146
  expectTypesMatch(true);
142
- var supplierProps = z6.object({
143
- supplierPartNumbers: z6.record(supplier_name, z6.array(z6.string())).optional()
147
+ var supplierProps = z7.object({
148
+ supplierPartNumbers: z7.record(supplier_name, z7.array(z7.string())).optional()
144
149
  });
145
150
  expectTypesMatch(true);
146
- var pinAttributeMap = z6.object({
147
- providesPower: z6.boolean().optional(),
148
- requiresPower: z6.boolean().optional(),
149
- providesGround: z6.boolean().optional(),
150
- requiresGround: z6.boolean().optional(),
151
- providesVoltage: z6.union([z6.string(), z6.number()]).optional(),
152
- requiresVoltage: z6.union([z6.string(), z6.number()]).optional(),
153
- doNotConnect: z6.boolean().optional()
151
+ var pinAttributeMap = z7.object({
152
+ providesPower: z7.boolean().optional(),
153
+ requiresPower: z7.boolean().optional(),
154
+ providesGround: z7.boolean().optional(),
155
+ requiresGround: z7.boolean().optional(),
156
+ providesVoltage: z7.union([z7.string(), z7.number()]).optional(),
157
+ requiresVoltage: z7.union([z7.string(), z7.number()]).optional(),
158
+ doNotConnect: z7.boolean().optional()
154
159
  });
155
160
  expectTypesMatch(true);
156
161
  var commonComponentProps = commonLayoutProps.merge(supplierProps).extend({
157
- key: z6.any().optional(),
158
- name: z6.string(),
162
+ key: z7.any().optional(),
163
+ name: z7.string(),
159
164
  cadModel: cadModelProp.optional(),
160
- children: z6.any().optional(),
161
- symbolName: z6.string().optional(),
162
- doNotPlace: z6.boolean().optional(),
163
- pinAttributes: z6.record(z6.string(), pinAttributeMap).optional()
165
+ children: z7.any().optional(),
166
+ symbolName: z7.string().optional(),
167
+ doNotPlace: z7.boolean().optional(),
168
+ pinAttributes: z7.record(z7.string(), pinAttributeMap).optional()
164
169
  });
165
170
  expectTypesMatch(true);
166
171
  var componentProps = commonComponentProps;
@@ -175,11 +180,11 @@ var lrPolarPins = [
175
180
  "cathode",
176
181
  "neg"
177
182
  ];
178
- var distanceOrMultiplier = distance2.or(z6.enum(["2x", "3x", "4x"]));
183
+ var distanceOrMultiplier = distance2.or(z7.enum(["2x", "3x", "4x"]));
179
184
 
180
185
  // lib/common/schematicOrientation.ts
181
- import { z as z7 } from "zod";
182
- var schematicOrientation = z7.enum([
186
+ import { z as z8 } from "zod";
187
+ var schematicOrientation = z8.enum([
183
188
  "vertical",
184
189
  "horizontal",
185
190
  "pos_top",
@@ -198,25 +203,25 @@ expectTypesMatch(
198
203
  );
199
204
 
200
205
  // lib/common/schematicPinDefinitions.ts
201
- import { z as z8 } from "zod";
202
- var explicitPinSideDefinition = z8.object({
203
- pins: z8.array(z8.union([z8.number(), z8.string()])),
204
- direction: z8.union([
205
- z8.literal("top-to-bottom"),
206
- z8.literal("left-to-right"),
207
- z8.literal("bottom-to-top"),
208
- z8.literal("right-to-left")
206
+ import { z as z9 } from "zod";
207
+ var explicitPinSideDefinition = z9.object({
208
+ pins: z9.array(z9.union([z9.number(), z9.string()])),
209
+ direction: z9.union([
210
+ z9.literal("top-to-bottom"),
211
+ z9.literal("left-to-right"),
212
+ z9.literal("bottom-to-top"),
213
+ z9.literal("right-to-left")
209
214
  ])
210
215
  });
211
- var schematicPortArrangement = z8.object({
212
- leftSize: z8.number().optional().describe("@deprecated, use leftPinCount"),
213
- topSize: z8.number().optional().describe("@deprecated, use topPinCount"),
214
- rightSize: z8.number().optional().describe("@deprecated, use rightPinCount"),
215
- bottomSize: z8.number().optional().describe("@deprecated, use bottomPinCount"),
216
- leftPinCount: z8.number().optional(),
217
- rightPinCount: z8.number().optional(),
218
- topPinCount: z8.number().optional(),
219
- bottomPinCount: z8.number().optional(),
216
+ var schematicPortArrangement = z9.object({
217
+ leftSize: z9.number().optional().describe("@deprecated, use leftPinCount"),
218
+ topSize: z9.number().optional().describe("@deprecated, use topPinCount"),
219
+ rightSize: z9.number().optional().describe("@deprecated, use rightPinCount"),
220
+ bottomSize: z9.number().optional().describe("@deprecated, use bottomPinCount"),
221
+ leftPinCount: z9.number().optional(),
222
+ rightPinCount: z9.number().optional(),
223
+ topPinCount: z9.number().optional(),
224
+ bottomPinCount: z9.number().optional(),
220
225
  leftSide: explicitPinSideDefinition.optional(),
221
226
  rightSide: explicitPinSideDefinition.optional(),
222
227
  topSide: explicitPinSideDefinition.optional(),
@@ -227,9 +232,9 @@ expectTypesMatch(true);
227
232
 
228
233
  // lib/common/schematicPinStyle.ts
229
234
  import { distance as distance3 } from "circuit-json";
230
- import { z as z9 } from "zod";
231
- var schematicPinStyle = z9.record(
232
- z9.object({
235
+ import { z as z10 } from "zod";
236
+ var schematicPinStyle = z10.record(
237
+ z10.object({
233
238
  marginLeft: distance3.optional(),
234
239
  marginRight: distance3.optional(),
235
240
  marginTop: distance3.optional(),
@@ -243,62 +248,62 @@ var schematicPinStyle = z9.record(
243
248
  expectTypesMatch(true);
244
249
 
245
250
  // lib/common/schematicPinLabel.ts
246
- import { z as z10 } from "zod";
247
- var schematicPinLabel = z10.string().regex(/^[A-Za-z0-9_]+$/);
251
+ import { z as z11 } from "zod";
252
+ var schematicPinLabel = z11.string().regex(/^[A-Za-z0-9_]+$/);
248
253
 
249
254
  // lib/common/distance.ts
250
255
  import "zod";
251
256
  import { distance as distance4, length } from "circuit-json";
252
257
 
253
258
  // lib/components/board.ts
254
- import { z as z25 } from "zod";
259
+ import { z as z26 } from "zod";
255
260
 
256
261
  // lib/components/group.ts
257
262
  import { length as length2, distance as distance6 } from "circuit-json";
258
263
 
259
264
  // lib/common/point.ts
260
265
  import { distance as distance5 } from "circuit-json";
261
- import { z as z12 } from "zod";
262
- var point = z12.object({
266
+ import { z as z13 } from "zod";
267
+ var point = z13.object({
263
268
  x: distance5,
264
269
  y: distance5
265
270
  });
266
271
 
267
272
  // lib/components/group.ts
268
- import { z as z24 } from "zod";
273
+ import { z as z25 } from "zod";
269
274
 
270
275
  // lib/manual-edits/manual-edit-events/base_manual_edit_event.ts
271
- import { z as z13 } from "zod";
272
- var base_manual_edit_event = z13.object({
273
- edit_event_id: z13.string(),
274
- in_progress: z13.boolean().optional(),
275
- created_at: z13.number()
276
+ import { z as z14 } from "zod";
277
+ var base_manual_edit_event = z14.object({
278
+ edit_event_id: z14.string(),
279
+ in_progress: z14.boolean().optional(),
280
+ created_at: z14.number()
276
281
  });
277
282
  expectTypesMatch(
278
283
  true
279
284
  );
280
285
 
281
286
  // lib/manual-edits/manual-edit-events/edit_pcb_component_location_event.ts
282
- import { z as z14 } from "zod";
287
+ import { z as z15 } from "zod";
283
288
  var edit_pcb_component_location_event = base_manual_edit_event.extend({
284
- pcb_edit_event_type: z14.literal("edit_component_location").describe("deprecated"),
285
- edit_event_type: z14.literal("edit_pcb_component_location"),
286
- pcb_component_id: z14.string(),
287
- original_center: z14.object({ x: z14.number(), y: z14.number() }),
288
- new_center: z14.object({ x: z14.number(), y: z14.number() })
289
+ pcb_edit_event_type: z15.literal("edit_component_location").describe("deprecated"),
290
+ edit_event_type: z15.literal("edit_pcb_component_location"),
291
+ pcb_component_id: z15.string(),
292
+ original_center: z15.object({ x: z15.number(), y: z15.number() }),
293
+ new_center: z15.object({ x: z15.number(), y: z15.number() })
289
294
  });
290
295
  var edit_component_location_event = edit_pcb_component_location_event;
291
296
  expectTypesMatch(true);
292
297
 
293
298
  // lib/manual-edits/manual-edit-events/edit_trace_hint_event.ts
294
- import { z as z15 } from "zod";
299
+ import { z as z16 } from "zod";
295
300
  var edit_trace_hint_event = base_manual_edit_event.extend({
296
- pcb_edit_event_type: z15.literal("edit_trace_hint").describe("deprecated"),
297
- edit_event_type: z15.literal("edit_pcb_trace_hint").optional(),
298
- pcb_port_id: z15.string(),
299
- pcb_trace_hint_id: z15.string().optional(),
300
- route: z15.array(
301
- z15.object({ x: z15.number(), y: z15.number(), via: z15.boolean().optional() })
301
+ pcb_edit_event_type: z16.literal("edit_trace_hint").describe("deprecated"),
302
+ edit_event_type: z16.literal("edit_pcb_trace_hint").optional(),
303
+ pcb_port_id: z16.string(),
304
+ pcb_trace_hint_id: z16.string().optional(),
305
+ route: z16.array(
306
+ z16.object({ x: z16.number(), y: z16.number(), via: z16.boolean().optional() })
302
307
  )
303
308
  });
304
309
  expectTypesMatch(
@@ -306,38 +311,38 @@ expectTypesMatch(
306
311
  );
307
312
 
308
313
  // lib/manual-edits/manual-edit-events/edit_schematic_component_location_event.ts
309
- import { z as z16 } from "zod";
314
+ import { z as z17 } from "zod";
310
315
  var edit_schematic_component_location_event = base_manual_edit_event.extend({
311
- edit_event_type: z16.literal("edit_schematic_component_location"),
312
- schematic_component_id: z16.string(),
313
- original_center: z16.object({ x: z16.number(), y: z16.number() }),
314
- new_center: z16.object({ x: z16.number(), y: z16.number() })
316
+ edit_event_type: z17.literal("edit_schematic_component_location"),
317
+ schematic_component_id: z17.string(),
318
+ original_center: z17.object({ x: z17.number(), y: z17.number() }),
319
+ new_center: z17.object({ x: z17.number(), y: z17.number() })
315
320
  });
316
321
  expectTypesMatch(true);
317
322
 
318
323
  // lib/manual-edits/manual-edit-events/edit_pcb_group_location_event.ts
319
- import { z as z17 } from "zod";
324
+ import { z as z18 } from "zod";
320
325
  var edit_pcb_group_location_event = base_manual_edit_event.extend({
321
- edit_event_type: z17.literal("edit_pcb_group_location"),
322
- pcb_group_id: z17.string(),
323
- original_center: z17.object({ x: z17.number(), y: z17.number() }),
324
- new_center: z17.object({ x: z17.number(), y: z17.number() })
326
+ edit_event_type: z18.literal("edit_pcb_group_location"),
327
+ pcb_group_id: z18.string(),
328
+ original_center: z18.object({ x: z18.number(), y: z18.number() }),
329
+ new_center: z18.object({ x: z18.number(), y: z18.number() })
325
330
  });
326
331
  expectTypesMatch(true);
327
332
 
328
333
  // lib/manual-edits/manual-edit-events/edit_schematic_group_location_event.ts
329
- import { z as z18 } from "zod";
334
+ import { z as z19 } from "zod";
330
335
  var edit_schematic_group_location_event = base_manual_edit_event.extend({
331
- edit_event_type: z18.literal("edit_schematic_group_location"),
332
- schematic_group_id: z18.string(),
333
- original_center: z18.object({ x: z18.number(), y: z18.number() }),
334
- new_center: z18.object({ x: z18.number(), y: z18.number() })
336
+ edit_event_type: z19.literal("edit_schematic_group_location"),
337
+ schematic_group_id: z19.string(),
338
+ original_center: z19.object({ x: z19.number(), y: z19.number() }),
339
+ new_center: z19.object({ x: z19.number(), y: z19.number() })
335
340
  });
336
341
  expectTypesMatch(true);
337
342
 
338
343
  // lib/manual-edits/manual_edit_event.ts
339
- import { z as z19 } from "zod";
340
- var manual_edit_event = z19.union([
344
+ import { z as z20 } from "zod";
345
+ var manual_edit_event = z20.union([
341
346
  edit_pcb_component_location_event,
342
347
  edit_trace_hint_event,
343
348
  edit_schematic_component_location_event
@@ -345,33 +350,33 @@ var manual_edit_event = z19.union([
345
350
  expectTypesMatch(true);
346
351
 
347
352
  // lib/manual-edits/manual_edits_file.ts
348
- import { z as z23 } from "zod";
353
+ import { z as z24 } from "zod";
349
354
 
350
355
  // lib/manual-edits/manual_pcb_placement.ts
351
- import { z as z20 } from "zod";
356
+ import { z as z21 } from "zod";
352
357
  import { point as point2 } from "circuit-json";
353
- var manual_pcb_placement = z20.object({
354
- selector: z20.string(),
355
- relative_to: z20.string().optional().default("group_center").describe("Can be a selector or 'group_center'"),
358
+ var manual_pcb_placement = z21.object({
359
+ selector: z21.string(),
360
+ relative_to: z21.string().optional().default("group_center").describe("Can be a selector or 'group_center'"),
356
361
  center: point2
357
362
  });
358
363
  expectTypesMatch(true);
359
364
 
360
365
  // lib/manual-edits/manual_trace_hint.ts
361
- import { z as z21 } from "zod";
366
+ import { z as z22 } from "zod";
362
367
  import { route_hint_point } from "circuit-json";
363
- var manual_trace_hint = z21.object({
364
- pcb_port_selector: z21.string(),
365
- offsets: z21.array(route_hint_point)
368
+ var manual_trace_hint = z22.object({
369
+ pcb_port_selector: z22.string(),
370
+ offsets: z22.array(route_hint_point)
366
371
  });
367
372
  expectTypesMatch(true);
368
373
 
369
374
  // lib/manual-edits/manual_schematic_placement.ts
370
- import { z as z22 } from "zod";
375
+ import { z as z23 } from "zod";
371
376
  import { point as point4 } from "circuit-json";
372
- var manual_schematic_placement = z22.object({
373
- selector: z22.string(),
374
- relative_to: z22.string().optional().default("group_center").describe("Can be a selector or 'group_center'"),
377
+ var manual_schematic_placement = z23.object({
378
+ selector: z23.string(),
379
+ relative_to: z23.string().optional().default("group_center").describe("Can be a selector or 'group_center'"),
375
380
  center: point4
376
381
  });
377
382
  expectTypesMatch(
@@ -379,30 +384,30 @@ expectTypesMatch(
379
384
  );
380
385
 
381
386
  // lib/manual-edits/manual_edits_file.ts
382
- var manual_edits_file = z23.object({
383
- pcb_placements: z23.array(manual_pcb_placement).optional(),
384
- manual_trace_hints: z23.array(manual_trace_hint).optional(),
385
- schematic_placements: z23.array(manual_schematic_placement).optional()
387
+ var manual_edits_file = z24.object({
388
+ pcb_placements: z24.array(manual_pcb_placement).optional(),
389
+ manual_trace_hints: z24.array(manual_trace_hint).optional(),
390
+ schematic_placements: z24.array(manual_schematic_placement).optional()
386
391
  });
387
392
  expectTypesMatch(true);
388
393
 
389
394
  // lib/components/group.ts
390
- var layoutConfig = z24.object({
391
- layoutMode: z24.enum(["grid", "flex", "match-adapt", "relative", "none"]).optional(),
392
- position: z24.enum(["absolute", "relative"]).optional(),
393
- grid: z24.boolean().optional(),
394
- gridCols: z24.number().or(z24.string()).optional(),
395
- gridRows: z24.number().or(z24.string()).optional(),
396
- gridTemplateRows: z24.string().optional(),
397
- gridTemplateColumns: z24.string().optional(),
398
- gridTemplate: z24.string().optional(),
399
- gridGap: z24.number().or(z24.string()).optional(),
400
- gridRowGap: z24.number().or(z24.string()).optional(),
401
- gridColumnGap: z24.number().or(z24.string()).optional(),
402
- flex: z24.boolean().or(z24.string()).optional(),
403
- flexDirection: z24.enum(["row", "column"]).optional(),
404
- alignItems: z24.enum(["start", "center", "end", "stretch"]).optional(),
405
- justifyContent: z24.enum([
395
+ var layoutConfig = z25.object({
396
+ layoutMode: z25.enum(["grid", "flex", "match-adapt", "relative", "none"]).optional(),
397
+ position: z25.enum(["absolute", "relative"]).optional(),
398
+ grid: z25.boolean().optional(),
399
+ gridCols: z25.number().or(z25.string()).optional(),
400
+ gridRows: z25.number().or(z25.string()).optional(),
401
+ gridTemplateRows: z25.string().optional(),
402
+ gridTemplateColumns: z25.string().optional(),
403
+ gridTemplate: z25.string().optional(),
404
+ gridGap: z25.number().or(z25.string()).optional(),
405
+ gridRowGap: z25.number().or(z25.string()).optional(),
406
+ gridColumnGap: z25.number().or(z25.string()).optional(),
407
+ flex: z25.boolean().or(z25.string()).optional(),
408
+ flexDirection: z25.enum(["row", "column"]).optional(),
409
+ alignItems: z25.enum(["start", "center", "end", "stretch"]).optional(),
410
+ justifyContent: z25.enum([
406
411
  "start",
407
412
  "center",
408
413
  "end",
@@ -411,16 +416,16 @@ var layoutConfig = z24.object({
411
416
  "space-around",
412
417
  "space-evenly"
413
418
  ]).optional(),
414
- flexRow: z24.boolean().optional(),
415
- flexColumn: z24.boolean().optional(),
416
- gap: z24.number().or(z24.string()).optional(),
417
- pack: z24.boolean().optional().describe("Pack the contents of this group using a packing strategy"),
418
- packOrderStrategy: z24.enum([
419
+ flexRow: z25.boolean().optional(),
420
+ flexColumn: z25.boolean().optional(),
421
+ gap: z25.number().or(z25.string()).optional(),
422
+ pack: z25.boolean().optional().describe("Pack the contents of this group using a packing strategy"),
423
+ packOrderStrategy: z25.enum([
419
424
  "largest_to_smallest",
420
425
  "first_to_last",
421
426
  "highest_to_lowest_pin_count"
422
427
  ]).optional(),
423
- packPlacementStrategy: z24.enum(["shortest_connection_along_outline"]).optional(),
428
+ packPlacementStrategy: z25.enum(["shortest_connection_along_outline"]).optional(),
424
429
  padding: length2.optional(),
425
430
  paddingLeft: length2.optional(),
426
431
  paddingRight: length2.optional(),
@@ -430,65 +435,65 @@ var layoutConfig = z24.object({
430
435
  paddingY: length2.optional(),
431
436
  width: length2.optional(),
432
437
  height: length2.optional(),
433
- matchAdapt: z24.boolean().optional(),
434
- matchAdaptTemplate: z24.any().optional()
438
+ matchAdapt: z25.boolean().optional(),
439
+ matchAdaptTemplate: z25.any().optional()
435
440
  });
436
441
  expectTypesMatch(true);
437
- var border = z24.object({
442
+ var border = z25.object({
438
443
  strokeWidth: length2.optional(),
439
- dashed: z24.boolean().optional(),
440
- solid: z24.boolean().optional()
441
- });
442
- var autorouterConfig = z24.object({
443
- serverUrl: z24.string().optional(),
444
- inputFormat: z24.enum(["simplified", "circuit-json"]).optional(),
445
- serverMode: z24.enum(["job", "solve-endpoint"]).optional(),
446
- serverCacheEnabled: z24.boolean().optional(),
447
- cache: z24.custom((v) => true).optional(),
444
+ dashed: z25.boolean().optional(),
445
+ solid: z25.boolean().optional()
446
+ });
447
+ var autorouterConfig = z25.object({
448
+ serverUrl: z25.string().optional(),
449
+ inputFormat: z25.enum(["simplified", "circuit-json"]).optional(),
450
+ serverMode: z25.enum(["job", "solve-endpoint"]).optional(),
451
+ serverCacheEnabled: z25.boolean().optional(),
452
+ cache: z25.custom((v) => true).optional(),
448
453
  traceClearance: length2.optional(),
449
- groupMode: z24.enum(["sequential-trace", "subcircuit"]).optional(),
450
- algorithmFn: z24.custom(
454
+ groupMode: z25.enum(["sequential-trace", "subcircuit"]).optional(),
455
+ algorithmFn: z25.custom(
451
456
  (v) => typeof v === "function" || v === void 0
452
457
  ).optional(),
453
- preset: z24.enum([
458
+ preset: z25.enum([
454
459
  "sequential-trace",
455
460
  "subcircuit",
456
461
  "auto",
457
462
  "auto-local",
458
463
  "auto-cloud"
459
464
  ]).optional(),
460
- local: z24.boolean().optional()
465
+ local: z25.boolean().optional()
461
466
  });
462
- var autorouterProp = z24.union([
467
+ var autorouterProp = z25.union([
463
468
  autorouterConfig,
464
- z24.literal("sequential-trace"),
465
- z24.literal("subcircuit"),
466
- z24.literal("auto"),
467
- z24.literal("auto-local"),
468
- z24.literal("auto-cloud")
469
+ z25.literal("sequential-trace"),
470
+ z25.literal("subcircuit"),
471
+ z25.literal("auto"),
472
+ z25.literal("auto-local"),
473
+ z25.literal("auto-cloud")
469
474
  ]);
470
475
  var baseGroupProps = commonLayoutProps.extend({
471
- name: z24.string().optional(),
472
- children: z24.any().optional(),
473
- schTitle: z24.string().optional(),
474
- key: z24.any().optional(),
476
+ name: z25.string().optional(),
477
+ children: z25.any().optional(),
478
+ schTitle: z25.string().optional(),
479
+ key: z25.any().optional(),
475
480
  ...layoutConfig.shape,
476
481
  grid: layoutConfig.shape.grid.describe("@deprecated use pcbGrid"),
477
482
  flex: layoutConfig.shape.flex.describe("@deprecated use pcbFlex"),
478
- pcbGrid: z24.boolean().optional(),
479
- pcbGridCols: z24.number().or(z24.string()).optional(),
480
- pcbGridRows: z24.number().or(z24.string()).optional(),
481
- pcbGridTemplateRows: z24.string().optional(),
482
- pcbGridTemplateColumns: z24.string().optional(),
483
- pcbGridTemplate: z24.string().optional(),
484
- pcbGridGap: z24.number().or(z24.string()).optional(),
485
- pcbGridRowGap: z24.number().or(z24.string()).optional(),
486
- pcbGridColumnGap: z24.number().or(z24.string()).optional(),
487
- pcbFlex: z24.boolean().or(z24.string()).optional(),
488
- pcbFlexGap: z24.number().or(z24.string()).optional(),
489
- pcbFlexDirection: z24.enum(["row", "column"]).optional(),
490
- pcbAlignItems: z24.enum(["start", "center", "end", "stretch"]).optional(),
491
- pcbJustifyContent: z24.enum([
483
+ pcbGrid: z25.boolean().optional(),
484
+ pcbGridCols: z25.number().or(z25.string()).optional(),
485
+ pcbGridRows: z25.number().or(z25.string()).optional(),
486
+ pcbGridTemplateRows: z25.string().optional(),
487
+ pcbGridTemplateColumns: z25.string().optional(),
488
+ pcbGridTemplate: z25.string().optional(),
489
+ pcbGridGap: z25.number().or(z25.string()).optional(),
490
+ pcbGridRowGap: z25.number().or(z25.string()).optional(),
491
+ pcbGridColumnGap: z25.number().or(z25.string()).optional(),
492
+ pcbFlex: z25.boolean().or(z25.string()).optional(),
493
+ pcbFlexGap: z25.number().or(z25.string()).optional(),
494
+ pcbFlexDirection: z25.enum(["row", "column"]).optional(),
495
+ pcbAlignItems: z25.enum(["start", "center", "end", "stretch"]).optional(),
496
+ pcbJustifyContent: z25.enum([
492
497
  "start",
493
498
  "center",
494
499
  "end",
@@ -497,24 +502,24 @@ var baseGroupProps = commonLayoutProps.extend({
497
502
  "space-around",
498
503
  "space-evenly"
499
504
  ]).optional(),
500
- pcbFlexRow: z24.boolean().optional(),
501
- pcbFlexColumn: z24.boolean().optional(),
502
- pcbGap: z24.number().or(z24.string()).optional(),
503
- pcbPack: z24.boolean().optional(),
504
- schGrid: z24.boolean().optional(),
505
- schGridCols: z24.number().or(z24.string()).optional(),
506
- schGridRows: z24.number().or(z24.string()).optional(),
507
- schGridTemplateRows: z24.string().optional(),
508
- schGridTemplateColumns: z24.string().optional(),
509
- schGridTemplate: z24.string().optional(),
510
- schGridGap: z24.number().or(z24.string()).optional(),
511
- schGridRowGap: z24.number().or(z24.string()).optional(),
512
- schGridColumnGap: z24.number().or(z24.string()).optional(),
513
- schFlex: z24.boolean().or(z24.string()).optional(),
514
- schFlexGap: z24.number().or(z24.string()).optional(),
515
- schFlexDirection: z24.enum(["row", "column"]).optional(),
516
- schAlignItems: z24.enum(["start", "center", "end", "stretch"]).optional(),
517
- schJustifyContent: z24.enum([
505
+ pcbFlexRow: z25.boolean().optional(),
506
+ pcbFlexColumn: z25.boolean().optional(),
507
+ pcbGap: z25.number().or(z25.string()).optional(),
508
+ pcbPack: z25.boolean().optional(),
509
+ schGrid: z25.boolean().optional(),
510
+ schGridCols: z25.number().or(z25.string()).optional(),
511
+ schGridRows: z25.number().or(z25.string()).optional(),
512
+ schGridTemplateRows: z25.string().optional(),
513
+ schGridTemplateColumns: z25.string().optional(),
514
+ schGridTemplate: z25.string().optional(),
515
+ schGridGap: z25.number().or(z25.string()).optional(),
516
+ schGridRowGap: z25.number().or(z25.string()).optional(),
517
+ schGridColumnGap: z25.number().or(z25.string()).optional(),
518
+ schFlex: z25.boolean().or(z25.string()).optional(),
519
+ schFlexGap: z25.number().or(z25.string()).optional(),
520
+ schFlexDirection: z25.enum(["row", "column"]).optional(),
521
+ schAlignItems: z25.enum(["start", "center", "end", "stretch"]).optional(),
522
+ schJustifyContent: z25.enum([
518
523
  "start",
519
524
  "center",
520
525
  "end",
@@ -523,11 +528,11 @@ var baseGroupProps = commonLayoutProps.extend({
523
528
  "space-around",
524
529
  "space-evenly"
525
530
  ]).optional(),
526
- schFlexRow: z24.boolean().optional(),
527
- schFlexColumn: z24.boolean().optional(),
528
- schGap: z24.number().or(z24.string()).optional(),
529
- schPack: z24.boolean().optional(),
530
- schMatchAdapt: z24.boolean().optional(),
531
+ schFlexRow: z25.boolean().optional(),
532
+ schFlexColumn: z25.boolean().optional(),
533
+ schGap: z25.number().or(z25.string()).optional(),
534
+ schPack: z25.boolean().optional(),
535
+ schMatchAdapt: z25.boolean().optional(),
531
536
  pcbWidth: length2.optional(),
532
537
  pcbHeight: length2.optional(),
533
538
  schWidth: length2.optional(),
@@ -547,32 +552,32 @@ var baseGroupProps = commonLayoutProps.extend({
547
552
  pcbPaddingTop: length2.optional(),
548
553
  pcbPaddingBottom: length2.optional()
549
554
  });
550
- var partsEngine = z24.custom((v) => "findPart" in v);
555
+ var partsEngine = z25.custom((v) => "findPart" in v);
551
556
  var subcircuitGroupProps = baseGroupProps.extend({
552
557
  manualEdits: manual_edits_file.optional(),
553
- schAutoLayoutEnabled: z24.boolean().optional(),
554
- schTraceAutoLabelEnabled: z24.boolean().optional(),
558
+ schAutoLayoutEnabled: z25.boolean().optional(),
559
+ schTraceAutoLabelEnabled: z25.boolean().optional(),
555
560
  schMaxTraceDistance: distance6.optional(),
556
- routingDisabled: z24.boolean().optional(),
561
+ routingDisabled: z25.boolean().optional(),
557
562
  defaultTraceWidth: length2.optional(),
558
563
  minTraceWidth: length2.optional(),
559
564
  partsEngine: partsEngine.optional(),
560
- pcbRouteCache: z24.custom((v) => true).optional(),
565
+ pcbRouteCache: z25.custom((v) => true).optional(),
561
566
  autorouter: autorouterProp.optional(),
562
- square: z24.boolean().optional(),
563
- emptyArea: z24.string().optional(),
564
- filledArea: z24.string().optional(),
567
+ square: z25.boolean().optional(),
568
+ emptyArea: z25.string().optional(),
569
+ filledArea: z25.string().optional(),
565
570
  width: distance6.optional(),
566
571
  height: distance6.optional(),
567
- outline: z24.array(point).optional(),
572
+ outline: z25.array(point).optional(),
568
573
  outlineOffsetX: distance6.optional(),
569
574
  outlineOffsetY: distance6.optional()
570
575
  });
571
576
  var subcircuitGroupPropsWithBool = subcircuitGroupProps.extend({
572
- subcircuit: z24.literal(true)
577
+ subcircuit: z25.literal(true)
573
578
  });
574
- var groupProps = z24.discriminatedUnion("subcircuit", [
575
- baseGroupProps.extend({ subcircuit: z24.literal(false).optional() }),
579
+ var groupProps = z25.discriminatedUnion("subcircuit", [
580
+ baseGroupProps.extend({ subcircuit: z25.literal(false).optional() }),
576
581
  subcircuitGroupPropsWithBool
577
582
  ]);
578
583
  expectTypesMatch(true);
@@ -581,8 +586,8 @@ expectTypesMatch(true);
581
586
 
582
587
  // lib/components/board.ts
583
588
  var boardProps = subcircuitGroupProps.extend({
584
- material: z25.enum(["fr4", "fr1"]).default("fr4"),
585
- layers: z25.union([z25.literal(2), z25.literal(4)]).default(2),
589
+ material: z26.enum(["fr4", "fr1"]).default("fr4"),
590
+ layers: z26.union([z26.literal(2), z26.literal(4)]).default(2),
586
591
  borderRadius: distance4.optional()
587
592
  });
588
593
  expectTypesMatch(true);
@@ -601,33 +606,33 @@ expectTypesMatch(true);
601
606
 
602
607
  // lib/components/chip.ts
603
608
  import { distance as distance8, supplier_name as supplier_name2 } from "circuit-json";
604
- import { z as z27 } from "zod";
605
- var connectionTarget = z27.string().or(z27.array(z27.string()).readonly()).or(z27.array(z27.string()));
606
- var connectionsProp = z27.custom().pipe(z27.record(z27.string(), connectionTarget));
607
- var pinLabelsProp = z27.record(
609
+ import { z as z28 } from "zod";
610
+ var connectionTarget = z28.string().or(z28.array(z28.string()).readonly()).or(z28.array(z28.string()));
611
+ var connectionsProp = z28.custom().pipe(z28.record(z28.string(), connectionTarget));
612
+ var pinLabelsProp = z28.record(
608
613
  schematicPinLabel,
609
- schematicPinLabel.or(z27.array(schematicPinLabel).readonly()).or(z27.array(schematicPinLabel))
614
+ schematicPinLabel.or(z28.array(schematicPinLabel).readonly()).or(z28.array(schematicPinLabel))
610
615
  );
611
616
  expectTypesMatch(true);
612
- var pinCompatibleVariant = z27.object({
613
- manufacturerPartNumber: z27.string().optional(),
614
- supplierPartNumber: z27.record(supplier_name2, z27.array(z27.string())).optional()
617
+ var pinCompatibleVariant = z28.object({
618
+ manufacturerPartNumber: z28.string().optional(),
619
+ supplierPartNumber: z28.record(supplier_name2, z28.array(z28.string())).optional()
615
620
  });
616
621
  var chipProps = commonComponentProps.extend({
617
- manufacturerPartNumber: z27.string().optional(),
622
+ manufacturerPartNumber: z28.string().optional(),
618
623
  pinLabels: pinLabelsProp.optional(),
619
- showPinAliases: z27.boolean().optional(),
620
- pcbPinLabels: z27.record(z27.string(), z27.string()).optional(),
621
- internallyConnectedPins: z27.array(z27.array(z27.union([z27.string(), z27.number()]))).optional(),
622
- externallyConnectedPins: z27.array(z27.array(z27.string())).optional(),
624
+ showPinAliases: z28.boolean().optional(),
625
+ pcbPinLabels: z28.record(z28.string(), z28.string()).optional(),
626
+ internallyConnectedPins: z28.array(z28.array(z28.union([z28.string(), z28.number()]))).optional(),
627
+ externallyConnectedPins: z28.array(z28.array(z28.string())).optional(),
623
628
  schPinArrangement: schematicPortArrangement.optional(),
624
629
  schPortArrangement: schematicPortArrangement.optional(),
625
- pinCompatibleVariants: z27.array(pinCompatibleVariant).optional(),
630
+ pinCompatibleVariants: z28.array(pinCompatibleVariant).optional(),
626
631
  schPinStyle: schematicPinStyle.optional(),
627
632
  schPinSpacing: distance8.optional(),
628
633
  schWidth: distance8.optional(),
629
634
  schHeight: distance8.optional(),
630
- noSchematicRepresentation: z27.boolean().optional(),
635
+ noSchematicRepresentation: z28.boolean().optional(),
631
636
  connections: connectionsProp.optional()
632
637
  });
633
638
  var bugProps = chipProps;
@@ -641,100 +646,100 @@ expectTypesMatch(true);
641
646
  import { distance as distance9 } from "circuit-json";
642
647
 
643
648
  // lib/common/connectionsProp.ts
644
- import { z as z28 } from "zod";
645
- var connectionTarget2 = z28.string().or(z28.array(z28.string()).readonly()).or(z28.array(z28.string()));
649
+ import { z as z29 } from "zod";
650
+ var connectionTarget2 = z29.string().or(z29.array(z29.string()).readonly()).or(z29.array(z29.string()));
646
651
  var createConnectionsProp = (labels) => {
647
- return z28.record(z28.enum(labels), connectionTarget2);
652
+ return z29.record(z29.enum(labels), connectionTarget2);
648
653
  };
649
654
 
650
655
  // lib/components/jumper.ts
651
- import { z as z29 } from "zod";
656
+ import { z as z30 } from "zod";
652
657
  var jumperProps = commonComponentProps.extend({
653
- manufacturerPartNumber: z29.string().optional(),
654
- pinLabels: z29.record(
655
- z29.number().or(schematicPinLabel),
656
- schematicPinLabel.or(z29.array(schematicPinLabel))
658
+ manufacturerPartNumber: z30.string().optional(),
659
+ pinLabels: z30.record(
660
+ z30.number().or(schematicPinLabel),
661
+ schematicPinLabel.or(z30.array(schematicPinLabel))
657
662
  ).optional(),
658
663
  schPinStyle: schematicPinStyle.optional(),
659
664
  schPinSpacing: distance9.optional(),
660
665
  schWidth: distance9.optional(),
661
666
  schHeight: distance9.optional(),
662
- schDirection: z29.enum(["left", "right"]).optional(),
667
+ schDirection: z30.enum(["left", "right"]).optional(),
663
668
  schPinArrangement: schematicPinArrangement.optional(),
664
669
  schPortArrangement: schematicPortArrangement.optional(),
665
- pcbPinLabels: z29.record(z29.string(), z29.string()).optional(),
666
- pinCount: z29.union([z29.literal(2), z29.literal(3)]).optional(),
667
- internallyConnectedPins: z29.array(z29.array(z29.union([z29.string(), z29.number()]))).optional(),
668
- connections: z29.custom().pipe(z29.record(z29.string(), connectionTarget2)).optional()
670
+ pcbPinLabels: z30.record(z30.string(), z30.string()).optional(),
671
+ pinCount: z30.union([z30.literal(2), z30.literal(3)]).optional(),
672
+ internallyConnectedPins: z30.array(z30.array(z30.union([z30.string(), z30.number()]))).optional(),
673
+ connections: z30.custom().pipe(z30.record(z30.string(), connectionTarget2)).optional()
669
674
  });
670
675
  expectTypesMatch(true);
671
676
 
672
677
  // lib/components/solderjumper.ts
673
- import { z as z30 } from "zod";
678
+ import { z as z31 } from "zod";
674
679
  var solderjumperProps = jumperProps.extend({
675
- bridgedPins: z30.array(z30.array(z30.string())).optional(),
676
- bridged: z30.boolean().optional()
680
+ bridgedPins: z31.array(z31.array(z31.string())).optional(),
681
+ bridged: z31.boolean().optional()
677
682
  });
678
683
  expectTypesMatch(true);
679
684
 
680
685
  // lib/components/connector.ts
681
686
  import { distance as distance10 } from "circuit-json";
682
- import { z as z31 } from "zod";
687
+ import { z as z32 } from "zod";
683
688
  var connectorProps = commonComponentProps.extend({
684
- manufacturerPartNumber: z31.string().optional(),
685
- pinLabels: z31.record(
686
- z31.number().or(schematicPinLabel),
687
- schematicPinLabel.or(z31.array(schematicPinLabel))
689
+ manufacturerPartNumber: z32.string().optional(),
690
+ pinLabels: z32.record(
691
+ z32.number().or(schematicPinLabel),
692
+ schematicPinLabel.or(z32.array(schematicPinLabel))
688
693
  ).optional(),
689
694
  schPinStyle: schematicPinStyle.optional(),
690
695
  schPinSpacing: distance10.optional(),
691
696
  schWidth: distance10.optional(),
692
697
  schHeight: distance10.optional(),
693
- schDirection: z31.enum(["left", "right"]).optional(),
698
+ schDirection: z32.enum(["left", "right"]).optional(),
694
699
  schPortArrangement: schematicPortArrangement.optional(),
695
- internallyConnectedPins: z31.array(z31.array(z31.union([z31.string(), z31.number()]))).optional(),
696
- standard: z31.enum(["usb_c", "m2"]).optional()
700
+ internallyConnectedPins: z32.array(z32.array(z32.union([z32.string(), z32.number()]))).optional(),
701
+ standard: z32.enum(["usb_c", "m2"]).optional()
697
702
  });
698
703
  expectTypesMatch(true);
699
704
 
700
705
  // lib/components/fuse.ts
701
- import { z as z32 } from "zod";
706
+ import { z as z33 } from "zod";
702
707
  var fusePinLabels = ["pin1", "pin2"];
703
708
  var fuseProps = commonComponentProps.extend({
704
- currentRating: z32.union([z32.number(), z32.string()]),
705
- voltageRating: z32.union([z32.number(), z32.string()]).optional(),
706
- schShowRatings: z32.boolean().optional(),
709
+ currentRating: z33.union([z33.number(), z33.string()]),
710
+ voltageRating: z33.union([z33.number(), z33.string()]).optional(),
711
+ schShowRatings: z33.boolean().optional(),
707
712
  schOrientation: schematicOrientation.optional(),
708
- connections: z32.record(
709
- z32.string(),
710
- z32.union([
711
- z32.string(),
712
- z32.array(z32.string()).readonly(),
713
- z32.array(z32.string())
713
+ connections: z33.record(
714
+ z33.string(),
715
+ z33.union([
716
+ z33.string(),
717
+ z33.array(z33.string()).readonly(),
718
+ z33.array(z33.string())
714
719
  ])
715
720
  ).optional()
716
721
  });
717
722
 
718
723
  // lib/components/platedhole.ts
719
724
  import { distance as distance11 } from "circuit-json";
720
- import { z as z33 } from "zod";
721
- var distanceHiddenUndefined = z33.custom().transform((a) => {
725
+ import { z as z34 } from "zod";
726
+ var distanceHiddenUndefined = z34.custom().transform((a) => {
722
727
  if (a === void 0) return void 0;
723
728
  return distance11.parse(a);
724
729
  });
725
- var platedHoleProps = z33.discriminatedUnion("shape", [
730
+ var platedHoleProps = z34.discriminatedUnion("shape", [
726
731
  pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
727
- name: z33.string().optional(),
728
- connectsTo: z33.string().or(z33.array(z33.string())).optional(),
729
- shape: z33.literal("circle"),
732
+ name: z34.string().optional(),
733
+ connectsTo: z34.string().or(z34.array(z34.string())).optional(),
734
+ shape: z34.literal("circle"),
730
735
  holeDiameter: distance11,
731
736
  outerDiameter: distance11,
732
737
  portHints: portHints.optional()
733
738
  }),
734
739
  pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
735
- name: z33.string().optional(),
736
- connectsTo: z33.string().or(z33.array(z33.string())).optional(),
737
- shape: z33.literal("oval"),
740
+ name: z34.string().optional(),
741
+ connectsTo: z34.string().or(z34.array(z34.string())).optional(),
742
+ shape: z34.literal("oval"),
738
743
  outerWidth: distance11,
739
744
  outerHeight: distance11,
740
745
  holeWidth: distanceHiddenUndefined,
@@ -744,10 +749,10 @@ var platedHoleProps = z33.discriminatedUnion("shape", [
744
749
  portHints: portHints.optional()
745
750
  }),
746
751
  pcbLayoutProps.omit({ layer: true }).extend({
747
- name: z33.string().optional(),
748
- connectsTo: z33.string().or(z33.array(z33.string())).optional(),
749
- shape: z33.literal("pill"),
750
- rectPad: z33.boolean().optional(),
752
+ name: z34.string().optional(),
753
+ connectsTo: z34.string().or(z34.array(z34.string())).optional(),
754
+ shape: z34.literal("pill"),
755
+ rectPad: z34.boolean().optional(),
751
756
  outerWidth: distance11,
752
757
  outerHeight: distance11,
753
758
  holeWidth: distanceHiddenUndefined,
@@ -757,22 +762,22 @@ var platedHoleProps = z33.discriminatedUnion("shape", [
757
762
  portHints: portHints.optional()
758
763
  }),
759
764
  pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
760
- name: z33.string().optional(),
761
- connectsTo: z33.string().or(z33.array(z33.string())).optional(),
762
- shape: z33.literal("circular_hole_with_rect_pad"),
765
+ name: z34.string().optional(),
766
+ connectsTo: z34.string().or(z34.array(z34.string())).optional(),
767
+ shape: z34.literal("circular_hole_with_rect_pad"),
763
768
  holeDiameter: distance11,
764
769
  rectPadWidth: distance11,
765
770
  rectPadHeight: distance11,
766
- holeShape: z33.literal("circle").optional(),
767
- padShape: z33.literal("rect").optional(),
771
+ holeShape: z34.literal("circle").optional(),
772
+ padShape: z34.literal("rect").optional(),
768
773
  portHints: portHints.optional()
769
774
  }),
770
775
  pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
771
- name: z33.string().optional(),
772
- connectsTo: z33.string().or(z33.array(z33.string())).optional(),
773
- shape: z33.literal("pill_hole_with_rect_pad"),
774
- holeShape: z33.literal("pill"),
775
- padShape: z33.literal("rect"),
776
+ name: z34.string().optional(),
777
+ connectsTo: z34.string().or(z34.array(z34.string())).optional(),
778
+ shape: z34.literal("pill_hole_with_rect_pad"),
779
+ holeShape: z34.literal("pill"),
780
+ padShape: z34.literal("rect"),
776
781
  holeWidth: distance11,
777
782
  holeHeight: distance11,
778
783
  rectPadWidth: distance11,
@@ -792,14 +797,14 @@ expectTypesMatch(true);
792
797
 
793
798
  // lib/components/resistor.ts
794
799
  import { resistance } from "circuit-json";
795
- import { z as z34 } from "zod";
800
+ import { z as z35 } from "zod";
796
801
  var resistorPinLabels = ["pin1", "pin2", "pos", "neg"];
797
802
  var resistorProps = commonComponentProps.extend({
798
803
  resistance,
799
- pullupFor: z34.string().optional(),
800
- pullupTo: z34.string().optional(),
801
- pulldownFor: z34.string().optional(),
802
- pulldownTo: z34.string().optional(),
804
+ pullupFor: z35.string().optional(),
805
+ pullupTo: z35.string().optional(),
806
+ pulldownFor: z35.string().optional(),
807
+ pulldownTo: z35.string().optional(),
803
808
  schOrientation: schematicOrientation.optional(),
804
809
  connections: createConnectionsProp(resistorPinLabels).optional()
805
810
  });
@@ -808,23 +813,23 @@ expectTypesMatch(true);
808
813
 
809
814
  // lib/components/potentiometer.ts
810
815
  import { resistance as resistance2 } from "circuit-json";
811
- import { z as z35 } from "zod";
816
+ import { z as z36 } from "zod";
812
817
  var potentiometerProps = commonComponentProps.extend({
813
818
  maxResistance: resistance2,
814
- pinVariant: z35.enum(["two_pin", "three_pin"]).optional()
819
+ pinVariant: z36.enum(["two_pin", "three_pin"]).optional()
815
820
  });
816
821
  expectTypesMatch(true);
817
822
 
818
823
  // lib/components/crystal.ts
819
824
  import { frequency, capacitance } from "circuit-json";
820
- import { z as z36 } from "zod";
825
+ import { z as z37 } from "zod";
821
826
  var crystalPins = lrPins;
822
827
  var crystalProps = commonComponentProps.extend({
823
828
  frequency,
824
829
  loadCapacitance: capacitance,
825
- manufacturerPartNumber: z36.string().optional(),
826
- mpn: z36.string().optional(),
827
- pinVariant: z36.enum(["two_pin", "four_pin"]).optional(),
830
+ manufacturerPartNumber: z37.string().optional(),
831
+ mpn: z37.string().optional(),
832
+ pinVariant: z37.enum(["two_pin", "four_pin"]).optional(),
828
833
  schOrientation: schematicOrientation.optional(),
829
834
  connections: createConnectionsProp(crystalPins).optional()
830
835
  });
@@ -832,34 +837,34 @@ expectTypesMatch(true);
832
837
 
833
838
  // lib/components/resonator.ts
834
839
  import { frequency as frequency2, capacitance as capacitance2 } from "circuit-json";
835
- import { z as z37 } from "zod";
840
+ import { z as z38 } from "zod";
836
841
  var resonatorProps = commonComponentProps.extend({
837
842
  frequency: frequency2,
838
843
  loadCapacitance: capacitance2,
839
- pinVariant: z37.enum(["no_ground", "ground_pin", "two_ground_pins"]).optional()
844
+ pinVariant: z38.enum(["no_ground", "ground_pin", "two_ground_pins"]).optional()
840
845
  });
841
846
  expectTypesMatch(true);
842
847
 
843
848
  // lib/components/stampboard.ts
844
849
  import { distance as distance12 } from "circuit-json";
845
- import { z as z38 } from "zod";
850
+ import { z as z39 } from "zod";
846
851
  var stampboardProps = boardProps.extend({
847
- leftPinCount: z38.number().optional(),
848
- rightPinCount: z38.number().optional(),
849
- topPinCount: z38.number().optional(),
850
- bottomPinCount: z38.number().optional(),
851
- leftPins: z38.array(z38.string()).optional(),
852
- rightPins: z38.array(z38.string()).optional(),
853
- topPins: z38.array(z38.string()).optional(),
854
- bottomPins: z38.array(z38.string()).optional(),
852
+ leftPinCount: z39.number().optional(),
853
+ rightPinCount: z39.number().optional(),
854
+ topPinCount: z39.number().optional(),
855
+ bottomPinCount: z39.number().optional(),
856
+ leftPins: z39.array(z39.string()).optional(),
857
+ rightPins: z39.array(z39.string()).optional(),
858
+ topPins: z39.array(z39.string()).optional(),
859
+ bottomPins: z39.array(z39.string()).optional(),
855
860
  pinPitch: distance12.optional(),
856
- innerHoles: z38.boolean().optional()
861
+ innerHoles: z39.boolean().optional()
857
862
  });
858
863
  expectTypesMatch(true);
859
864
 
860
865
  // lib/components/capacitor.ts
861
866
  import { capacitance as capacitance3, voltage } from "circuit-json";
862
- import { z as z39 } from "zod";
867
+ import { z as z40 } from "zod";
863
868
  var capacitorPinLabels = [
864
869
  "pin1",
865
870
  "pin2",
@@ -871,13 +876,13 @@ var capacitorPinLabels = [
871
876
  var capacitorProps = commonComponentProps.extend({
872
877
  capacitance: capacitance3,
873
878
  maxVoltageRating: voltage.optional(),
874
- schShowRatings: z39.boolean().optional().default(false),
875
- polarized: z39.boolean().optional().default(false),
876
- decouplingFor: z39.string().optional(),
877
- decouplingTo: z39.string().optional(),
878
- bypassFor: z39.string().optional(),
879
- bypassTo: z39.string().optional(),
880
- maxDecouplingTraceLength: z39.number().optional(),
879
+ schShowRatings: z40.boolean().optional().default(false),
880
+ polarized: z40.boolean().optional().default(false),
881
+ decouplingFor: z40.string().optional(),
882
+ decouplingTo: z40.string().optional(),
883
+ bypassFor: z40.string().optional(),
884
+ bypassTo: z40.string().optional(),
885
+ maxDecouplingTraceLength: z40.number().optional(),
881
886
  schOrientation: schematicOrientation.optional(),
882
887
  connections: createConnectionsProp(capacitorPinLabels).optional()
883
888
  });
@@ -885,63 +890,63 @@ var capacitorPins = lrPolarPins;
885
890
  expectTypesMatch(true);
886
891
 
887
892
  // lib/components/net.ts
888
- import { z as z40 } from "zod";
889
- var netProps = z40.object({
890
- name: z40.string(),
891
- connectsTo: z40.string().or(z40.array(z40.string())).optional()
893
+ import { z as z41 } from "zod";
894
+ var netProps = z41.object({
895
+ name: z41.string(),
896
+ connectsTo: z41.string().or(z41.array(z41.string())).optional()
892
897
  });
893
898
  expectTypesMatch(true);
894
899
 
895
900
  // lib/components/constrainedlayout.ts
896
- import { z as z41 } from "zod";
897
- var constrainedLayoutProps = z41.object({
898
- name: z41.string().optional(),
899
- pcbOnly: z41.boolean().optional(),
900
- schOnly: z41.boolean().optional()
901
+ import { z as z42 } from "zod";
902
+ var constrainedLayoutProps = z42.object({
903
+ name: z42.string().optional(),
904
+ pcbOnly: z42.boolean().optional(),
905
+ schOnly: z42.boolean().optional()
901
906
  });
902
907
  expectTypesMatch(true);
903
908
 
904
909
  // lib/components/constraint.ts
905
- import { z as z42 } from "zod";
906
- var pcbXDistConstraintProps = z42.object({
907
- pcb: z42.literal(true).optional(),
910
+ import { z as z43 } from "zod";
911
+ var pcbXDistConstraintProps = z43.object({
912
+ pcb: z43.literal(true).optional(),
908
913
  xDist: distance4,
909
- left: z42.string(),
910
- right: z42.string(),
911
- edgeToEdge: z42.literal(true).optional(),
912
- centerToCenter: z42.literal(true).optional()
914
+ left: z43.string(),
915
+ right: z43.string(),
916
+ edgeToEdge: z43.literal(true).optional(),
917
+ centerToCenter: z43.literal(true).optional()
913
918
  });
914
919
  expectTypesMatch(
915
920
  true
916
921
  );
917
- var pcbYDistConstraintProps = z42.object({
918
- pcb: z42.literal(true).optional(),
922
+ var pcbYDistConstraintProps = z43.object({
923
+ pcb: z43.literal(true).optional(),
919
924
  yDist: distance4,
920
- top: z42.string(),
921
- bottom: z42.string(),
922
- edgeToEdge: z42.literal(true).optional(),
923
- centerToCenter: z42.literal(true).optional()
925
+ top: z43.string(),
926
+ bottom: z43.string(),
927
+ edgeToEdge: z43.literal(true).optional(),
928
+ centerToCenter: z43.literal(true).optional()
924
929
  });
925
930
  expectTypesMatch(
926
931
  true
927
932
  );
928
- var pcbSameYConstraintProps = z42.object({
929
- pcb: z42.literal(true).optional(),
930
- sameY: z42.literal(true).optional(),
931
- for: z42.array(z42.string())
933
+ var pcbSameYConstraintProps = z43.object({
934
+ pcb: z43.literal(true).optional(),
935
+ sameY: z43.literal(true).optional(),
936
+ for: z43.array(z43.string())
932
937
  });
933
938
  expectTypesMatch(
934
939
  true
935
940
  );
936
- var pcbSameXConstraintProps = z42.object({
937
- pcb: z42.literal(true).optional(),
938
- sameX: z42.literal(true).optional(),
939
- for: z42.array(z42.string())
941
+ var pcbSameXConstraintProps = z43.object({
942
+ pcb: z43.literal(true).optional(),
943
+ sameX: z43.literal(true).optional(),
944
+ for: z43.array(z43.string())
940
945
  });
941
946
  expectTypesMatch(
942
947
  true
943
948
  );
944
- var constraintProps = z42.union([
949
+ var constraintProps = z43.union([
945
950
  pcbXDistConstraintProps,
946
951
  pcbYDistConstraintProps,
947
952
  pcbSameYConstraintProps,
@@ -950,13 +955,13 @@ var constraintProps = z42.union([
950
955
  expectTypesMatch(true);
951
956
 
952
957
  // lib/components/cutout.ts
953
- import { z as z43 } from "zod";
958
+ import { z as z44 } from "zod";
954
959
  var rectCutoutProps = pcbLayoutProps.omit({
955
960
  layer: true,
956
961
  pcbRotation: true
957
962
  }).extend({
958
- name: z43.string().optional(),
959
- shape: z43.literal("rect"),
963
+ name: z44.string().optional(),
964
+ shape: z44.literal("rect"),
960
965
  width: distance4,
961
966
  height: distance4
962
967
  });
@@ -965,8 +970,8 @@ var circleCutoutProps = pcbLayoutProps.omit({
965
970
  layer: true,
966
971
  pcbRotation: true
967
972
  }).extend({
968
- name: z43.string().optional(),
969
- shape: z43.literal("circle"),
973
+ name: z44.string().optional(),
974
+ shape: z44.literal("circle"),
970
975
  radius: distance4
971
976
  });
972
977
  expectTypesMatch(true);
@@ -974,46 +979,46 @@ var polygonCutoutProps = pcbLayoutProps.omit({
974
979
  layer: true,
975
980
  pcbRotation: true
976
981
  }).extend({
977
- name: z43.string().optional(),
978
- shape: z43.literal("polygon"),
979
- points: z43.array(point)
982
+ name: z44.string().optional(),
983
+ shape: z44.literal("polygon"),
984
+ points: z44.array(point)
980
985
  });
981
986
  expectTypesMatch(true);
982
- var cutoutProps = z43.discriminatedUnion("shape", [
987
+ var cutoutProps = z44.discriminatedUnion("shape", [
983
988
  rectCutoutProps,
984
989
  circleCutoutProps,
985
990
  polygonCutoutProps
986
991
  ]);
987
992
 
988
993
  // lib/components/smtpad.ts
989
- import { z as z44 } from "zod";
994
+ import { z as z45 } from "zod";
990
995
  var rectSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
991
- name: z44.string().optional(),
992
- shape: z44.literal("rect"),
996
+ name: z45.string().optional(),
997
+ shape: z45.literal("rect"),
993
998
  width: distance4,
994
999
  height: distance4,
995
1000
  portHints: portHints.optional()
996
1001
  });
997
1002
  expectTypesMatch(true);
998
1003
  var rotatedRectSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
999
- name: z44.string().optional(),
1000
- shape: z44.literal("rotated_rect"),
1004
+ name: z45.string().optional(),
1005
+ shape: z45.literal("rotated_rect"),
1001
1006
  width: distance4,
1002
1007
  height: distance4,
1003
- ccwRotation: z44.number(),
1008
+ ccwRotation: z45.number(),
1004
1009
  portHints: portHints.optional()
1005
1010
  });
1006
1011
  expectTypesMatch(true);
1007
1012
  var circleSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1008
- name: z44.string().optional(),
1009
- shape: z44.literal("circle"),
1013
+ name: z45.string().optional(),
1014
+ shape: z45.literal("circle"),
1010
1015
  radius: distance4,
1011
1016
  portHints: portHints.optional()
1012
1017
  });
1013
1018
  expectTypesMatch(true);
1014
1019
  var pillSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1015
- name: z44.string().optional(),
1016
- shape: z44.literal("pill"),
1020
+ name: z45.string().optional(),
1021
+ shape: z45.literal("pill"),
1017
1022
  width: distance4,
1018
1023
  height: distance4,
1019
1024
  radius: distance4,
@@ -1021,13 +1026,13 @@ var pillSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1021
1026
  });
1022
1027
  expectTypesMatch(true);
1023
1028
  var polygonSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1024
- name: z44.string().optional(),
1025
- shape: z44.literal("polygon"),
1026
- points: z44.array(point),
1029
+ name: z45.string().optional(),
1030
+ shape: z45.literal("polygon"),
1031
+ points: z45.array(point),
1027
1032
  portHints: portHints.optional()
1028
1033
  });
1029
1034
  expectTypesMatch(true);
1030
- var smtPadProps = z44.discriminatedUnion("shape", [
1035
+ var smtPadProps = z45.discriminatedUnion("shape", [
1031
1036
  circleSmtPadProps,
1032
1037
  rectSmtPadProps,
1033
1038
  rotatedRectSmtPadProps,
@@ -1037,28 +1042,28 @@ var smtPadProps = z44.discriminatedUnion("shape", [
1037
1042
  expectTypesMatch(true);
1038
1043
 
1039
1044
  // lib/components/solderpaste.ts
1040
- import { z as z45 } from "zod";
1045
+ import { z as z46 } from "zod";
1041
1046
  var rectSolderPasteProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1042
- shape: z45.literal("rect"),
1047
+ shape: z46.literal("rect"),
1043
1048
  width: distance4,
1044
1049
  height: distance4
1045
1050
  });
1046
1051
  expectTypesMatch(true);
1047
1052
  var circleSolderPasteProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1048
- shape: z45.literal("circle"),
1053
+ shape: z46.literal("circle"),
1049
1054
  radius: distance4
1050
1055
  });
1051
1056
  expectTypesMatch(true);
1052
- var solderPasteProps = z45.union([
1057
+ var solderPasteProps = z46.union([
1053
1058
  circleSolderPasteProps,
1054
1059
  rectSolderPasteProps
1055
1060
  ]);
1056
1061
  expectTypesMatch(true);
1057
1062
 
1058
1063
  // lib/components/hole.ts
1059
- import { z as z46 } from "zod";
1064
+ import { z as z47 } from "zod";
1060
1065
  var holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1061
- name: z46.string().optional(),
1066
+ name: z47.string().optional(),
1062
1067
  diameter: distance4.optional(),
1063
1068
  radius: distance4.optional()
1064
1069
  }).transform((d) => ({
@@ -1070,27 +1075,27 @@ expectTypesMatch(true);
1070
1075
 
1071
1076
  // lib/components/trace.ts
1072
1077
  import { distance as distance13, route_hint_point as route_hint_point2 } from "circuit-json";
1073
- import { z as z47 } from "zod";
1074
- var portRef = z47.union([
1075
- z47.string(),
1076
- z47.custom(
1078
+ import { z as z48 } from "zod";
1079
+ var portRef = z48.union([
1080
+ z48.string(),
1081
+ z48.custom(
1077
1082
  (v) => Boolean(v.getPortSelector)
1078
1083
  )
1079
1084
  ]);
1080
- var baseTraceProps = z47.object({
1081
- key: z47.string().optional(),
1085
+ var baseTraceProps = z48.object({
1086
+ key: z48.string().optional(),
1082
1087
  thickness: distance13.optional(),
1083
- schematicRouteHints: z47.array(point).optional(),
1084
- pcbRouteHints: z47.array(route_hint_point2).optional(),
1085
- pcbPathRelativeTo: z47.string().optional(),
1086
- pcbPath: z47.array(point).optional(),
1087
- schDisplayLabel: z47.string().optional(),
1088
- schStroke: z47.string().optional(),
1088
+ schematicRouteHints: z48.array(point).optional(),
1089
+ pcbRouteHints: z48.array(route_hint_point2).optional(),
1090
+ pcbPathRelativeTo: z48.string().optional(),
1091
+ pcbPath: z48.array(point).optional(),
1092
+ schDisplayLabel: z48.string().optional(),
1093
+ schStroke: z48.string().optional(),
1089
1094
  maxLength: distance13.optional()
1090
1095
  });
1091
- var traceProps = z47.union([
1096
+ var traceProps = z48.union([
1092
1097
  baseTraceProps.extend({
1093
- path: z47.array(portRef)
1098
+ path: z48.array(portRef)
1094
1099
  }),
1095
1100
  baseTraceProps.extend({
1096
1101
  from: portRef,
@@ -1100,23 +1105,23 @@ var traceProps = z47.union([
1100
1105
 
1101
1106
  // lib/components/footprint.ts
1102
1107
  import { layer_ref as layer_ref4 } from "circuit-json";
1103
- import { z as z48 } from "zod";
1104
- var footprintProps = z48.object({
1108
+ import { z as z49 } from "zod";
1109
+ var footprintProps = z49.object({
1105
1110
  originalLayer: layer_ref4.default("top").optional()
1106
1111
  });
1107
1112
  expectTypesMatch(true);
1108
1113
 
1109
1114
  // lib/components/symbol.ts
1110
- import { z as z49 } from "zod";
1111
- var symbolProps = z49.object({
1112
- originalFacingDirection: z49.enum(["up", "down", "left", "right"]).default("right").optional()
1115
+ import { z as z50 } from "zod";
1116
+ var symbolProps = z50.object({
1117
+ originalFacingDirection: z50.enum(["up", "down", "left", "right"]).default("right").optional()
1113
1118
  });
1114
1119
  expectTypesMatch(true);
1115
1120
 
1116
1121
  // lib/components/battery.ts
1117
1122
  import { voltage as voltage2 } from "circuit-json";
1118
- import { z as z50 } from "zod";
1119
- var capacity = z50.number().or(z50.string().endsWith("mAh")).transform((v) => {
1123
+ import { z as z51 } from "zod";
1124
+ var capacity = z51.number().or(z51.string().endsWith("mAh")).transform((v) => {
1120
1125
  if (typeof v === "string") {
1121
1126
  const valString = v.replace("mAh", "");
1122
1127
  const num = Number.parseFloat(valString);
@@ -1130,7 +1135,7 @@ var capacity = z50.number().or(z50.string().endsWith("mAh")).transform((v) => {
1130
1135
  var batteryProps = commonComponentProps.extend({
1131
1136
  capacity: capacity.optional(),
1132
1137
  voltage: voltage2.optional(),
1133
- standard: z50.enum(["AA", "AAA", "9V", "CR2032", "18650", "C"]).optional(),
1138
+ standard: z51.enum(["AA", "AAA", "9V", "CR2032", "18650", "C"]).optional(),
1134
1139
  schOrientation: schematicOrientation.optional()
1135
1140
  });
1136
1141
  var batteryPins = lrPolarPins;
@@ -1140,29 +1145,29 @@ expectTypesMatch(true);
1140
1145
  import { distance as distance14 } from "circuit-json";
1141
1146
 
1142
1147
  // lib/common/pcbOrientation.ts
1143
- import { z as z51 } from "zod";
1144
- var pcbOrientation = z51.enum(["vertical", "horizontal"]).describe(
1148
+ import { z as z52 } from "zod";
1149
+ var pcbOrientation = z52.enum(["vertical", "horizontal"]).describe(
1145
1150
  "vertical means pins go 1->2 downward and horizontal means pins go 1->2 rightward"
1146
1151
  );
1147
1152
  expectTypesMatch(true);
1148
1153
 
1149
1154
  // lib/components/pin-header.ts
1150
- import { z as z52 } from "zod";
1155
+ import { z as z53 } from "zod";
1151
1156
  var pinHeaderProps = commonComponentProps.extend({
1152
- pinCount: z52.number(),
1157
+ pinCount: z53.number(),
1153
1158
  pitch: distance14.optional(),
1154
- schFacingDirection: z52.enum(["up", "down", "left", "right"]).optional(),
1155
- gender: z52.enum(["male", "female", "unpopulated"]).optional().default("male"),
1156
- showSilkscreenPinLabels: z52.boolean().optional(),
1157
- pcbPinLabels: z52.record(z52.string(), z52.string()).optional(),
1158
- doubleRow: z52.boolean().optional(),
1159
- rightAngle: z52.boolean().optional(),
1159
+ schFacingDirection: z53.enum(["up", "down", "left", "right"]).optional(),
1160
+ gender: z53.enum(["male", "female", "unpopulated"]).optional().default("male"),
1161
+ showSilkscreenPinLabels: z53.boolean().optional(),
1162
+ pcbPinLabels: z53.record(z53.string(), z53.string()).optional(),
1163
+ doubleRow: z53.boolean().optional(),
1164
+ rightAngle: z53.boolean().optional(),
1160
1165
  pcbOrientation: pcbOrientation.optional(),
1161
1166
  holeDiameter: distance14.optional(),
1162
1167
  platedDiameter: distance14.optional(),
1163
- pinLabels: z52.record(z52.string(), schematicPinLabel).or(z52.array(schematicPinLabel)).optional(),
1164
- connections: z52.custom().pipe(z52.record(z52.string(), connectionTarget2)).optional(),
1165
- facingDirection: z52.enum(["left", "right"]).optional(),
1168
+ pinLabels: z53.record(z53.string(), schematicPinLabel).or(z53.array(schematicPinLabel)).optional(),
1169
+ connections: z53.custom().pipe(z53.record(z53.string(), connectionTarget2)).optional(),
1170
+ facingDirection: z53.enum(["left", "right"]).optional(),
1166
1171
  schPinArrangement: schematicPinArrangement.optional(),
1167
1172
  schPinStyle: schematicPinStyle.optional(),
1168
1173
  schPinSpacing: distance14.optional(),
@@ -1172,29 +1177,29 @@ var pinHeaderProps = commonComponentProps.extend({
1172
1177
  expectTypesMatch(true);
1173
1178
 
1174
1179
  // lib/components/netalias.ts
1175
- import { z as z53 } from "zod";
1180
+ import { z as z54 } from "zod";
1176
1181
  import { rotation as rotation2 } from "circuit-json";
1177
- var netAliasProps = z53.object({
1178
- net: z53.string().optional(),
1179
- connection: z53.string().optional(),
1182
+ var netAliasProps = z54.object({
1183
+ net: z54.string().optional(),
1184
+ connection: z54.string().optional(),
1180
1185
  schX: distance4.optional(),
1181
1186
  schY: distance4.optional(),
1182
1187
  schRotation: rotation2.optional(),
1183
- anchorSide: z53.enum(["left", "top", "right", "bottom"]).optional()
1188
+ anchorSide: z54.enum(["left", "top", "right", "bottom"]).optional()
1184
1189
  });
1185
1190
  expectTypesMatch(true);
1186
1191
 
1187
1192
  // lib/components/netlabel.ts
1188
- import { z as z54 } from "zod";
1193
+ import { z as z55 } from "zod";
1189
1194
  import { rotation as rotation3 } from "circuit-json";
1190
- var netLabelProps = z54.object({
1191
- net: z54.string().optional(),
1192
- connection: z54.string().optional(),
1193
- connectsTo: z54.string().or(z54.array(z54.string())).optional(),
1195
+ var netLabelProps = z55.object({
1196
+ net: z55.string().optional(),
1197
+ connection: z55.string().optional(),
1198
+ connectsTo: z55.string().or(z55.array(z55.string())).optional(),
1194
1199
  schX: distance4.optional(),
1195
1200
  schY: distance4.optional(),
1196
1201
  schRotation: rotation3.optional(),
1197
- anchorSide: z54.enum(["left", "top", "right", "bottom"]).optional()
1202
+ anchorSide: z55.enum(["left", "top", "right", "bottom"]).optional()
1198
1203
  });
1199
1204
  expectTypesMatch(true);
1200
1205
 
@@ -1208,7 +1213,7 @@ var subcircuitProps = subcircuitGroupProps;
1208
1213
  expectTypesMatch(true);
1209
1214
 
1210
1215
  // lib/components/transistor.ts
1211
- import { z as z56 } from "zod";
1216
+ import { z as z57 } from "zod";
1212
1217
  var transistorPinsLabels = [
1213
1218
  "pin1",
1214
1219
  "pin2",
@@ -1221,7 +1226,7 @@ var transistorPinsLabels = [
1221
1226
  "drain"
1222
1227
  ];
1223
1228
  var transistorProps = commonComponentProps.extend({
1224
- type: z56.enum(["npn", "pnp", "bjt", "jfet", "mosfet", "igbt"]),
1229
+ type: z57.enum(["npn", "pnp", "bjt", "jfet", "mosfet", "igbt"]),
1225
1230
  connections: createConnectionsProp(transistorPinsLabels).optional()
1226
1231
  });
1227
1232
  var transistorPins = [
@@ -1235,10 +1240,10 @@ var transistorPins = [
1235
1240
  expectTypesMatch(true);
1236
1241
 
1237
1242
  // lib/components/mosfet.ts
1238
- import { z as z57 } from "zod";
1243
+ import { z as z58 } from "zod";
1239
1244
  var mosfetProps = commonComponentProps.extend({
1240
- channelType: z57.enum(["n", "p"]),
1241
- mosfetMode: z57.enum(["enhancement", "depletion"])
1245
+ channelType: z58.enum(["n", "p"]),
1246
+ mosfetMode: z58.enum(["enhancement", "depletion"])
1242
1247
  });
1243
1248
  var mosfetPins = [
1244
1249
  "pin1",
@@ -1252,19 +1257,19 @@ expectTypesMatch(true);
1252
1257
 
1253
1258
  // lib/components/inductor.ts
1254
1259
  import { inductance } from "circuit-json";
1255
- import { z as z58 } from "zod";
1260
+ import { z as z59 } from "zod";
1256
1261
  var inductorPins = lrPins;
1257
1262
  var inductorProps = commonComponentProps.extend({
1258
1263
  inductance,
1259
- maxCurrentRating: z58.union([z58.string(), z58.number()]).optional(),
1264
+ maxCurrentRating: z59.union([z59.string(), z59.number()]).optional(),
1260
1265
  schOrientation: schematicOrientation.optional(),
1261
1266
  connections: createConnectionsProp(inductorPins).optional()
1262
1267
  });
1263
1268
  expectTypesMatch(true);
1264
1269
 
1265
1270
  // lib/components/diode.ts
1266
- import { z as z59 } from "zod";
1267
- var diodeConnectionKeys = z59.enum([
1271
+ import { z as z60 } from "zod";
1272
+ var diodeConnectionKeys = z60.enum([
1268
1273
  "anode",
1269
1274
  "cathode",
1270
1275
  "pin1",
@@ -1272,9 +1277,9 @@ var diodeConnectionKeys = z59.enum([
1272
1277
  "pos",
1273
1278
  "neg"
1274
1279
  ]);
1275
- var connectionTarget3 = z59.string().or(z59.array(z59.string()).readonly()).or(z59.array(z59.string()));
1276
- var connectionsProp2 = z59.record(diodeConnectionKeys, connectionTarget3);
1277
- var diodeVariant = z59.enum([
1280
+ var connectionTarget3 = z60.string().or(z60.array(z60.string()).readonly()).or(z60.array(z60.string()));
1281
+ var connectionsProp2 = z60.record(diodeConnectionKeys, connectionTarget3);
1282
+ var diodeVariant = z60.enum([
1278
1283
  "standard",
1279
1284
  "schottky",
1280
1285
  "zener",
@@ -1285,12 +1290,12 @@ var diodeVariant = z59.enum([
1285
1290
  var diodeProps = commonComponentProps.extend({
1286
1291
  connections: connectionsProp2.optional(),
1287
1292
  variant: diodeVariant.optional().default("standard"),
1288
- standard: z59.boolean().optional(),
1289
- schottky: z59.boolean().optional(),
1290
- zener: z59.boolean().optional(),
1291
- avalanche: z59.boolean().optional(),
1292
- photo: z59.boolean().optional(),
1293
- tvs: z59.boolean().optional(),
1293
+ standard: z60.boolean().optional(),
1294
+ schottky: z60.boolean().optional(),
1295
+ zener: z60.boolean().optional(),
1296
+ avalanche: z60.boolean().optional(),
1297
+ photo: z60.boolean().optional(),
1298
+ tvs: z60.boolean().optional(),
1294
1299
  schOrientation: schematicOrientation.optional()
1295
1300
  }).superRefine((data, ctx) => {
1296
1301
  const enabledFlags = [
@@ -1303,11 +1308,11 @@ var diodeProps = commonComponentProps.extend({
1303
1308
  ].filter(Boolean).length;
1304
1309
  if (enabledFlags > 1) {
1305
1310
  ctx.addIssue({
1306
- code: z59.ZodIssueCode.custom,
1311
+ code: z60.ZodIssueCode.custom,
1307
1312
  message: "Exactly one diode variant must be enabled",
1308
1313
  path: []
1309
1314
  });
1310
- return z59.INVALID;
1315
+ return z60.INVALID;
1311
1316
  }
1312
1317
  }).transform((data) => {
1313
1318
  const result = {
@@ -1354,26 +1359,26 @@ var diodePins = lrPolarPins;
1354
1359
  expectTypesMatch(true);
1355
1360
 
1356
1361
  // lib/components/led.ts
1357
- import { z as z60 } from "zod";
1362
+ import { z as z61 } from "zod";
1358
1363
  var ledProps = commonComponentProps.extend({
1359
- color: z60.string().optional(),
1360
- wavelength: z60.string().optional(),
1361
- schDisplayValue: z60.string().optional(),
1364
+ color: z61.string().optional(),
1365
+ wavelength: z61.string().optional(),
1366
+ schDisplayValue: z61.string().optional(),
1362
1367
  schOrientation: schematicOrientation.optional(),
1363
1368
  connections: createConnectionsProp(lrPolarPins).optional(),
1364
- laser: z60.boolean().optional()
1369
+ laser: z61.boolean().optional()
1365
1370
  });
1366
1371
  var ledPins = lrPolarPins;
1367
1372
 
1368
1373
  // lib/components/switch.ts
1369
- import { z as z61 } from "zod";
1374
+ import { z as z62 } from "zod";
1370
1375
  var switchProps = commonComponentProps.extend({
1371
- type: z61.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
1372
- isNormallyClosed: z61.boolean().optional().default(false),
1373
- spst: z61.boolean().optional(),
1374
- spdt: z61.boolean().optional(),
1375
- dpst: z61.boolean().optional(),
1376
- dpdt: z61.boolean().optional()
1376
+ type: z62.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
1377
+ isNormallyClosed: z62.boolean().optional().default(false),
1378
+ spst: z62.boolean().optional(),
1379
+ spdt: z62.boolean().optional(),
1380
+ dpst: z62.boolean().optional(),
1381
+ dpdt: z62.boolean().optional()
1377
1382
  }).transform((props) => {
1378
1383
  const updatedProps = { ...props };
1379
1384
  if (updatedProps.dpdt) {
@@ -1405,52 +1410,52 @@ expectTypesMatch(true);
1405
1410
 
1406
1411
  // lib/components/fabrication-note-text.ts
1407
1412
  import { length as length3 } from "circuit-json";
1408
- import { z as z62 } from "zod";
1413
+ import { z as z63 } from "zod";
1409
1414
  var fabricationNoteTextProps = pcbLayoutProps.extend({
1410
- text: z62.string(),
1411
- anchorAlignment: z62.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1412
- font: z62.enum(["tscircuit2024"]).optional(),
1415
+ text: z63.string(),
1416
+ anchorAlignment: z63.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1417
+ font: z63.enum(["tscircuit2024"]).optional(),
1413
1418
  fontSize: length3.optional(),
1414
- color: z62.string().optional()
1419
+ color: z63.string().optional()
1415
1420
  });
1416
1421
 
1417
1422
  // lib/components/fabrication-note-path.ts
1418
1423
  import { length as length4, route_hint_point as route_hint_point3 } from "circuit-json";
1419
- import { z as z63 } from "zod";
1424
+ import { z as z64 } from "zod";
1420
1425
  var fabricationNotePathProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
1421
- route: z63.array(route_hint_point3),
1426
+ route: z64.array(route_hint_point3),
1422
1427
  strokeWidth: length4.optional(),
1423
- color: z63.string().optional()
1428
+ color: z64.string().optional()
1424
1429
  });
1425
1430
 
1426
1431
  // lib/components/pcb-trace.ts
1427
1432
  import { distance as distance15, route_hint_point as route_hint_point4 } from "circuit-json";
1428
- import { z as z64 } from "zod";
1429
- var pcbTraceProps = z64.object({
1430
- layer: z64.string().optional(),
1433
+ import { z as z65 } from "zod";
1434
+ var pcbTraceProps = z65.object({
1435
+ layer: z65.string().optional(),
1431
1436
  thickness: distance15.optional(),
1432
- route: z64.array(route_hint_point4)
1437
+ route: z65.array(route_hint_point4)
1433
1438
  });
1434
1439
 
1435
1440
  // lib/components/via.ts
1436
1441
  import { distance as distance16, layer_ref as layer_ref5 } from "circuit-json";
1437
- import { z as z65 } from "zod";
1442
+ import { z as z66 } from "zod";
1438
1443
  var viaProps = commonLayoutProps.extend({
1439
- name: z65.string().optional(),
1444
+ name: z66.string().optional(),
1440
1445
  fromLayer: layer_ref5,
1441
1446
  toLayer: layer_ref5,
1442
1447
  holeDiameter: distance16,
1443
1448
  outerDiameter: distance16,
1444
- connectsTo: z65.string().or(z65.array(z65.string())).optional()
1449
+ connectsTo: z66.string().or(z66.array(z66.string())).optional()
1445
1450
  });
1446
1451
  expectTypesMatch(true);
1447
1452
 
1448
1453
  // lib/components/testpoint.ts
1449
1454
  import { distance as distance17 } from "circuit-json";
1450
- import { z as z66 } from "zod";
1455
+ import { z as z67 } from "zod";
1451
1456
  var testpointProps = commonComponentProps.extend({
1452
- footprintVariant: z66.enum(["pad", "through_hole"]).optional(),
1453
- padShape: z66.enum(["rect", "circle"]).optional().default("circle"),
1457
+ footprintVariant: z67.enum(["pad", "through_hole"]).optional(),
1458
+ padShape: z67.enum(["rect", "circle"]).optional().default("circle"),
1454
1459
  padDiameter: distance17.optional(),
1455
1460
  holeDiameter: distance17.optional(),
1456
1461
  width: distance17.optional(),
@@ -1462,44 +1467,44 @@ var testpointProps = commonComponentProps.extend({
1462
1467
  expectTypesMatch(true);
1463
1468
 
1464
1469
  // lib/components/breakoutpoint.ts
1465
- import { z as z67 } from "zod";
1470
+ import { z as z68 } from "zod";
1466
1471
  var breakoutPointProps = pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
1467
- connection: z67.string()
1472
+ connection: z68.string()
1468
1473
  });
1469
1474
  expectTypesMatch(true);
1470
1475
 
1471
1476
  // lib/components/pcb-keepout.ts
1472
1477
  import { distance as distance18 } from "circuit-json";
1473
- import { z as z68 } from "zod";
1474
- var pcbKeepoutProps = z68.union([
1478
+ import { z as z69 } from "zod";
1479
+ var pcbKeepoutProps = z69.union([
1475
1480
  pcbLayoutProps.omit({ pcbRotation: true }).extend({
1476
- shape: z68.literal("circle"),
1481
+ shape: z69.literal("circle"),
1477
1482
  radius: distance18
1478
1483
  }),
1479
1484
  pcbLayoutProps.extend({
1480
- shape: z68.literal("rect"),
1485
+ shape: z69.literal("rect"),
1481
1486
  width: distance18,
1482
1487
  height: distance18
1483
1488
  })
1484
1489
  ]);
1485
1490
 
1486
1491
  // lib/components/copper-pour.ts
1487
- import { z as z69 } from "zod";
1492
+ import { z as z70 } from "zod";
1488
1493
  var rectCopperPourProps = pcbLayoutProps.omit({
1489
1494
  pcbRotation: true
1490
1495
  }).extend({
1491
- shape: z69.literal("rect"),
1496
+ shape: z70.literal("rect"),
1492
1497
  width: distance4,
1493
1498
  height: distance4,
1494
- connectsTo: z69.string().or(z69.array(z69.string())).optional()
1499
+ connectsTo: z70.string().or(z70.array(z70.string())).optional()
1495
1500
  });
1496
1501
  expectTypesMatch(true);
1497
1502
  var circleCopperPourProps = pcbLayoutProps.omit({
1498
1503
  pcbRotation: true
1499
1504
  }).extend({
1500
- shape: z69.literal("circle"),
1505
+ shape: z70.literal("circle"),
1501
1506
  radius: distance4,
1502
- connectsTo: z69.string().or(z69.array(z69.string())).optional()
1507
+ connectsTo: z70.string().or(z70.array(z70.string())).optional()
1503
1508
  });
1504
1509
  expectTypesMatch(
1505
1510
  true
@@ -1507,12 +1512,12 @@ expectTypesMatch(
1507
1512
  var polygonCopperPourProps = pcbLayoutProps.omit({
1508
1513
  pcbRotation: true
1509
1514
  }).extend({
1510
- shape: z69.literal("polygon"),
1511
- points: z69.array(point),
1512
- connectsTo: z69.string().or(z69.array(z69.string())).optional()
1515
+ shape: z70.literal("polygon"),
1516
+ points: z70.array(point),
1517
+ connectsTo: z70.string().or(z70.array(z70.string())).optional()
1513
1518
  });
1514
1519
  expectTypesMatch(true);
1515
- var copperPourProps = z69.discriminatedUnion("shape", [
1520
+ var copperPourProps = z70.discriminatedUnion("shape", [
1516
1521
  rectCopperPourProps,
1517
1522
  circleCopperPourProps,
1518
1523
  polygonCopperPourProps
@@ -1526,9 +1531,9 @@ var powerSourceProps = commonComponentProps.extend({
1526
1531
 
1527
1532
  // lib/components/voltagesource.ts
1528
1533
  import { frequency as frequency3, rotation as rotation4, voltage as voltage4 } from "circuit-json";
1529
- import { z as z70 } from "zod";
1534
+ import { z as z71 } from "zod";
1530
1535
  var voltageSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
1531
- var percentage = z70.union([z70.string(), z70.number()]).transform((val) => {
1536
+ var percentage = z71.union([z71.string(), z71.number()]).transform((val) => {
1532
1537
  if (typeof val === "string") {
1533
1538
  if (val.endsWith("%")) {
1534
1539
  return parseFloat(val.slice(0, -1)) / 100;
@@ -1537,13 +1542,13 @@ var percentage = z70.union([z70.string(), z70.number()]).transform((val) => {
1537
1542
  }
1538
1543
  return val;
1539
1544
  }).pipe(
1540
- z70.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
1545
+ z71.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
1541
1546
  );
1542
1547
  var voltageSourceProps = commonComponentProps.extend({
1543
1548
  voltage: voltage4.optional(),
1544
1549
  frequency: frequency3.optional(),
1545
1550
  peakToPeakVoltage: voltage4.optional(),
1546
- waveShape: z70.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
1551
+ waveShape: z71.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
1547
1552
  phase: rotation4.optional(),
1548
1553
  dutyCycle: percentage.optional(),
1549
1554
  connections: createConnectionsProp(voltageSourcePinLabels).optional()
@@ -1553,11 +1558,11 @@ expectTypesMatch(true);
1553
1558
 
1554
1559
  // lib/components/schematic-box.ts
1555
1560
  import { distance as distance19 } from "circuit-json";
1556
- import { z as z72 } from "zod";
1561
+ import { z as z73 } from "zod";
1557
1562
 
1558
1563
  // lib/common/ninePointAnchor.ts
1559
- import { z as z71 } from "zod";
1560
- var ninePointAnchor = z71.enum([
1564
+ import { z as z72 } from "zod";
1565
+ var ninePointAnchor = z72.enum([
1561
1566
  "top_left",
1562
1567
  "top_center",
1563
1568
  "top_right",
@@ -1570,23 +1575,23 @@ var ninePointAnchor = z71.enum([
1570
1575
  ]);
1571
1576
 
1572
1577
  // lib/components/schematic-box.ts
1573
- var schematicBoxProps = z72.object({
1578
+ var schematicBoxProps = z73.object({
1574
1579
  schX: distance19.optional(),
1575
1580
  schY: distance19.optional(),
1576
1581
  width: distance19.optional(),
1577
1582
  height: distance19.optional(),
1578
- overlay: z72.array(z72.string()).optional(),
1583
+ overlay: z73.array(z73.string()).optional(),
1579
1584
  padding: distance19.optional(),
1580
1585
  paddingLeft: distance19.optional(),
1581
1586
  paddingRight: distance19.optional(),
1582
1587
  paddingTop: distance19.optional(),
1583
1588
  paddingBottom: distance19.optional(),
1584
- title: z72.string().optional(),
1589
+ title: z73.string().optional(),
1585
1590
  titleAlignment: ninePointAnchor.default("top_left"),
1586
- titleColor: z72.string().optional(),
1591
+ titleColor: z73.string().optional(),
1587
1592
  titleFontSize: distance19.optional(),
1588
- titleInside: z72.boolean().default(false),
1589
- strokeStyle: z72.enum(["solid", "dashed"]).default("solid")
1593
+ titleInside: z73.boolean().default(false),
1594
+ strokeStyle: z73.enum(["solid", "dashed"]).default("solid")
1590
1595
  }).refine(
1591
1596
  (elm) => elm.width !== void 0 && elm.height !== void 0 || Array.isArray(elm.overlay) && elm.overlay.length > 0,
1592
1597
  {
@@ -1601,8 +1606,8 @@ var schematicBoxProps = z72.object({
1601
1606
 
1602
1607
  // lib/components/schematic-line.ts
1603
1608
  import { distance as distance20 } from "circuit-json";
1604
- import { z as z73 } from "zod";
1605
- var schematicLineProps = z73.object({
1609
+ import { z as z74 } from "zod";
1610
+ var schematicLineProps = z74.object({
1606
1611
  x1: distance20,
1607
1612
  y1: distance20,
1608
1613
  x2: distance20,
@@ -1611,11 +1616,11 @@ var schematicLineProps = z73.object({
1611
1616
 
1612
1617
  // lib/components/schematic-text.ts
1613
1618
  import { distance as distance21, rotation as rotation5 } from "circuit-json";
1614
- import { z as z75 } from "zod";
1619
+ import { z as z76 } from "zod";
1615
1620
 
1616
1621
  // lib/common/fivePointAnchor.ts
1617
- import { z as z74 } from "zod";
1618
- var fivePointAnchor = z74.enum([
1622
+ import { z as z75 } from "zod";
1623
+ var fivePointAnchor = z75.enum([
1619
1624
  "center",
1620
1625
  "left",
1621
1626
  "right",
@@ -1624,32 +1629,32 @@ var fivePointAnchor = z74.enum([
1624
1629
  ]);
1625
1630
 
1626
1631
  // lib/components/schematic-text.ts
1627
- var schematicTextProps = z75.object({
1632
+ var schematicTextProps = z76.object({
1628
1633
  schX: distance21.optional(),
1629
1634
  schY: distance21.optional(),
1630
- text: z75.string(),
1631
- fontSize: z75.number().default(1),
1632
- anchor: z75.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
1633
- color: z75.string().default("#000000"),
1635
+ text: z76.string(),
1636
+ fontSize: z76.number().default(1),
1637
+ anchor: z76.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
1638
+ color: z76.string().default("#000000"),
1634
1639
  schRotation: rotation5.default(0)
1635
1640
  });
1636
1641
 
1637
1642
  // lib/components/schematic-path.ts
1638
1643
  import { point as point5 } from "circuit-json";
1639
- import { z as z76 } from "zod";
1640
- var schematicPathProps = z76.object({
1641
- points: z76.array(point5),
1642
- isFilled: z76.boolean().optional().default(false),
1643
- fillColor: z76.enum(["red", "blue"]).optional()
1644
+ import { z as z77 } from "zod";
1645
+ var schematicPathProps = z77.object({
1646
+ points: z77.array(point5),
1647
+ isFilled: z77.boolean().optional().default(false),
1648
+ fillColor: z77.enum(["red", "blue"]).optional()
1644
1649
  });
1645
1650
 
1646
1651
  // lib/components/schematic-table.ts
1647
1652
  import { distance as distance22 } from "circuit-json";
1648
- import { z as z77 } from "zod";
1649
- var schematicTableProps = z77.object({
1653
+ import { z as z78 } from "zod";
1654
+ var schematicTableProps = z78.object({
1650
1655
  schX: distance22.optional(),
1651
1656
  schY: distance22.optional(),
1652
- children: z77.any().optional(),
1657
+ children: z78.any().optional(),
1653
1658
  cellPadding: distance22.optional(),
1654
1659
  borderWidth: distance22.optional(),
1655
1660
  anchor: ninePointAnchor.optional(),
@@ -1659,44 +1664,44 @@ expectTypesMatch(true);
1659
1664
 
1660
1665
  // lib/components/schematic-row.ts
1661
1666
  import { distance as distance23 } from "circuit-json";
1662
- import { z as z78 } from "zod";
1663
- var schematicRowProps = z78.object({
1664
- children: z78.any().optional(),
1667
+ import { z as z79 } from "zod";
1668
+ var schematicRowProps = z79.object({
1669
+ children: z79.any().optional(),
1665
1670
  height: distance23.optional()
1666
1671
  });
1667
1672
  expectTypesMatch(true);
1668
1673
 
1669
1674
  // lib/components/schematic-cell.ts
1670
1675
  import { distance as distance24 } from "circuit-json";
1671
- import { z as z79 } from "zod";
1672
- var schematicCellProps = z79.object({
1673
- children: z79.string().optional(),
1674
- horizontalAlign: z79.enum(["left", "center", "right"]).optional(),
1675
- verticalAlign: z79.enum(["top", "middle", "bottom"]).optional(),
1676
+ import { z as z80 } from "zod";
1677
+ var schematicCellProps = z80.object({
1678
+ children: z80.string().optional(),
1679
+ horizontalAlign: z80.enum(["left", "center", "right"]).optional(),
1680
+ verticalAlign: z80.enum(["top", "middle", "bottom"]).optional(),
1676
1681
  fontSize: distance24.optional(),
1677
- rowSpan: z79.number().optional(),
1678
- colSpan: z79.number().optional(),
1682
+ rowSpan: z80.number().optional(),
1683
+ colSpan: z80.number().optional(),
1679
1684
  width: distance24.optional(),
1680
- text: z79.string().optional()
1685
+ text: z80.string().optional()
1681
1686
  });
1682
1687
  expectTypesMatch(true);
1683
1688
 
1684
1689
  // lib/components/silkscreen-text.ts
1685
1690
  import { layer_ref as layer_ref6, length as length5 } from "circuit-json";
1686
- import { z as z80 } from "zod";
1691
+ import { z as z81 } from "zod";
1687
1692
  var silkscreenTextProps = pcbLayoutProps.extend({
1688
- text: z80.string(),
1693
+ text: z81.string(),
1689
1694
  anchorAlignment: ninePointAnchor.default("center"),
1690
- font: z80.enum(["tscircuit2024"]).optional(),
1695
+ font: z81.enum(["tscircuit2024"]).optional(),
1691
1696
  fontSize: length5.optional(),
1692
- layers: z80.array(layer_ref6).optional()
1697
+ layers: z81.array(layer_ref6).optional()
1693
1698
  });
1694
1699
 
1695
1700
  // lib/components/silkscreen-path.ts
1696
1701
  import { length as length6, route_hint_point as route_hint_point5 } from "circuit-json";
1697
- import { z as z81 } from "zod";
1702
+ import { z as z82 } from "zod";
1698
1703
  var silkscreenPathProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
1699
- route: z81.array(route_hint_point5),
1704
+ route: z82.array(route_hint_point5),
1700
1705
  strokeWidth: length6.optional()
1701
1706
  });
1702
1707
 
@@ -1712,10 +1717,10 @@ var silkscreenLineProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotat
1712
1717
 
1713
1718
  // lib/components/silkscreen-rect.ts
1714
1719
  import { distance as distance26 } from "circuit-json";
1715
- import { z as z82 } from "zod";
1720
+ import { z as z83 } from "zod";
1716
1721
  var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1717
- filled: z82.boolean().default(true).optional(),
1718
- stroke: z82.enum(["dashed", "solid", "none"]).optional(),
1722
+ filled: z83.boolean().default(true).optional(),
1723
+ stroke: z83.enum(["dashed", "solid", "none"]).optional(),
1719
1724
  strokeWidth: distance26.optional(),
1720
1725
  width: distance26,
1721
1726
  height: distance26
@@ -1723,73 +1728,73 @@ var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1723
1728
 
1724
1729
  // lib/components/silkscreen-circle.ts
1725
1730
  import { distance as distance27 } from "circuit-json";
1726
- import { z as z83 } from "zod";
1731
+ import { z as z84 } from "zod";
1727
1732
  var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
1728
- isFilled: z83.boolean().optional(),
1729
- isOutline: z83.boolean().optional(),
1733
+ isFilled: z84.boolean().optional(),
1734
+ isOutline: z84.boolean().optional(),
1730
1735
  strokeWidth: distance27.optional(),
1731
1736
  radius: distance27
1732
1737
  });
1733
1738
 
1734
1739
  // lib/components/trace-hint.ts
1735
1740
  import { distance as distance28, layer_ref as layer_ref7, route_hint_point as route_hint_point6 } from "circuit-json";
1736
- import { z as z84 } from "zod";
1737
- var routeHintPointProps = z84.object({
1741
+ import { z as z85 } from "zod";
1742
+ var routeHintPointProps = z85.object({
1738
1743
  x: distance28,
1739
1744
  y: distance28,
1740
- via: z84.boolean().optional(),
1745
+ via: z85.boolean().optional(),
1741
1746
  toLayer: layer_ref7.optional()
1742
1747
  });
1743
- var traceHintProps = z84.object({
1744
- for: z84.string().optional().describe(
1748
+ var traceHintProps = z85.object({
1749
+ for: z85.string().optional().describe(
1745
1750
  "Selector for the port you're targeting, not required if you're inside a trace"
1746
1751
  ),
1747
- order: z84.number().optional(),
1752
+ order: z85.number().optional(),
1748
1753
  offset: route_hint_point6.or(routeHintPointProps).optional(),
1749
- offsets: z84.array(route_hint_point6).or(z84.array(routeHintPointProps)).optional(),
1750
- traceWidth: z84.number().optional()
1754
+ offsets: z85.array(route_hint_point6).or(z85.array(routeHintPointProps)).optional(),
1755
+ traceWidth: z85.number().optional()
1751
1756
  });
1752
1757
 
1753
1758
  // lib/components/port.ts
1754
- import { z as z85 } from "zod";
1759
+ import { z as z86 } from "zod";
1755
1760
  var portProps = commonLayoutProps.extend({
1756
- name: z85.string(),
1757
- pinNumber: z85.number().optional(),
1758
- aliases: z85.array(z85.string()).optional(),
1761
+ name: z86.string(),
1762
+ pinNumber: z86.number().optional(),
1763
+ aliases: z86.array(z86.string()).optional(),
1759
1764
  direction
1760
1765
  });
1761
1766
 
1762
1767
  // lib/platformConfig.ts
1763
- import { z as z86 } from "zod";
1764
- var unvalidatedCircuitJson = z86.array(z86.any()).describe("Circuit JSON");
1765
- var pathToCircuitJsonFn = z86.function().args(z86.string()).returns(
1766
- z86.promise(
1767
- z86.object({
1768
- footprintCircuitJson: z86.array(z86.any()),
1768
+ import { z as z87 } from "zod";
1769
+ var unvalidatedCircuitJson = z87.array(z87.any()).describe("Circuit JSON");
1770
+ var pathToCircuitJsonFn = z87.function().args(z87.string()).returns(
1771
+ z87.promise(
1772
+ z87.object({
1773
+ footprintCircuitJson: z87.array(z87.any()),
1769
1774
  cadModel: cadModelProp.optional()
1770
1775
  })
1771
1776
  )
1772
1777
  ).describe("A function that takes a path and returns Circuit JSON");
1773
- var platformConfig = z86.object({
1778
+ var platformConfig = z87.object({
1774
1779
  partsEngine: partsEngine.optional(),
1775
1780
  autorouter: autorouterProp.optional(),
1776
- registryApiUrl: z86.string().optional(),
1777
- cloudAutorouterUrl: z86.string().optional(),
1778
- projectName: z86.string().optional(),
1779
- version: z86.string().optional(),
1780
- url: z86.string().optional(),
1781
- printBoardInformationToSilkscreen: z86.boolean().optional(),
1782
- localCacheEngine: z86.any().optional(),
1783
- pcbDisabled: z86.boolean().optional(),
1784
- schematicDisabled: z86.boolean().optional(),
1785
- partsEngineDisabled: z86.boolean().optional(),
1786
- footprintLibraryMap: z86.record(
1787
- z86.string(),
1788
- z86.union([
1781
+ registryApiUrl: z87.string().optional(),
1782
+ cloudAutorouterUrl: z87.string().optional(),
1783
+ projectName: z87.string().optional(),
1784
+ version: z87.string().optional(),
1785
+ url: z87.string().optional(),
1786
+ printBoardInformationToSilkscreen: z87.boolean().optional(),
1787
+ localCacheEngine: z87.any().optional(),
1788
+ pcbDisabled: z87.boolean().optional(),
1789
+ schematicDisabled: z87.boolean().optional(),
1790
+ partsEngineDisabled: z87.boolean().optional(),
1791
+ footprintLibraryMap: z87.record(
1792
+ z87.string(),
1793
+ z87.union([
1789
1794
  pathToCircuitJsonFn,
1790
- z86.record(
1791
- z86.string(),
1792
- z86.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
1795
+ z87.record(
1796
+ z87.string(),
1797
+ z87.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
1793
1798
  )
1794
1799
  ])
1795
1800
  ).optional()
@@ -1936,6 +1941,7 @@ export {
1936
1941
  subcircuitProps,
1937
1942
  supplierProps,
1938
1943
  switchProps,
1944
+ symbolProp,
1939
1945
  symbolProps,
1940
1946
  testpointProps,
1941
1947
  traceHintProps,