@tscircuit/props 0.0.83 → 0.0.85
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.d.ts +109 -109
- package/dist/index.js +126 -124
- package/dist/index.js.map +1 -1
- package/lib/common/distance.ts +1 -1
- package/lib/common/footprintProp.ts +1 -1
- package/lib/common/layout.ts +5 -17
- package/lib/common/point.ts +1 -1
- package/lib/common/point3.ts +1 -1
- package/lib/common/schematicPinDefinitions.ts +2 -2
- package/lib/common/schematicPinStyle.ts +2 -2
- package/lib/components/board.ts +1 -1
- package/lib/components/capacitor.ts +3 -4
- package/lib/components/chip.ts +6 -6
- package/lib/components/footprint.ts +1 -1
- package/lib/components/group.ts +1 -1
- package/lib/components/jumper.ts +8 -8
- package/lib/components/pin-header.ts +3 -3
- package/lib/components/platedhole.ts +4 -4
- package/lib/components/resistor.ts +3 -3
- package/lib/components/trace.ts +1 -1
- package/lib/index.ts +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -102,7 +102,7 @@ __export(lib_exports, {
|
|
|
102
102
|
viaProps: () => viaProps
|
|
103
103
|
});
|
|
104
104
|
module.exports = __toCommonJS(lib_exports);
|
|
105
|
-
var
|
|
105
|
+
var import_circuit_json16 = require("circuit-json");
|
|
106
106
|
var import_zod28 = require("zod");
|
|
107
107
|
|
|
108
108
|
// lib/typecheck.ts
|
|
@@ -127,20 +127,22 @@ var portHints = import_zod2.z.array(import_zod2.z.string().or(import_zod2.z.numb
|
|
|
127
127
|
expectTypesMatch(true);
|
|
128
128
|
|
|
129
129
|
// lib/common/layout.ts
|
|
130
|
+
var import_circuit_json2 = require("circuit-json");
|
|
130
131
|
var import_zod6 = require("zod");
|
|
131
|
-
|
|
132
|
+
|
|
133
|
+
// lib/common/cadModel.ts
|
|
134
|
+
var import_zod4 = require("zod");
|
|
132
135
|
|
|
133
136
|
// lib/common/point3.ts
|
|
134
|
-
var
|
|
137
|
+
var import_circuit_json = require("circuit-json");
|
|
135
138
|
var import_zod3 = require("zod");
|
|
136
139
|
var point3 = import_zod3.z.object({
|
|
137
|
-
x:
|
|
138
|
-
y:
|
|
139
|
-
z:
|
|
140
|
+
x: import_circuit_json.distance,
|
|
141
|
+
y: import_circuit_json.distance,
|
|
142
|
+
z: import_circuit_json.distance
|
|
140
143
|
});
|
|
141
144
|
|
|
142
145
|
// lib/common/cadModel.ts
|
|
143
|
-
var import_zod4 = require("zod");
|
|
144
146
|
var rotationPoint3 = import_zod4.z.object({
|
|
145
147
|
x: import_zod4.z.union([import_zod4.z.number(), import_zod4.z.string()]),
|
|
146
148
|
y: import_zod4.z.union([import_zod4.z.number(), import_zod4.z.string()]),
|
|
@@ -176,25 +178,25 @@ var footprintProp = import_zod5.z.custom((v) => true);
|
|
|
176
178
|
|
|
177
179
|
// lib/common/layout.ts
|
|
178
180
|
var pcbLayoutProps = import_zod6.z.object({
|
|
179
|
-
pcbX:
|
|
180
|
-
pcbY:
|
|
181
|
-
pcbRotation:
|
|
182
|
-
layer:
|
|
181
|
+
pcbX: import_circuit_json2.distance.optional(),
|
|
182
|
+
pcbY: import_circuit_json2.distance.optional(),
|
|
183
|
+
pcbRotation: import_circuit_json2.rotation.optional(),
|
|
184
|
+
layer: import_circuit_json2.layer_ref.optional()
|
|
183
185
|
});
|
|
184
186
|
expectTypesMatch(true);
|
|
185
187
|
var commonLayoutProps = import_zod6.z.object({
|
|
186
|
-
pcbX:
|
|
187
|
-
pcbY:
|
|
188
|
-
pcbRotation:
|
|
189
|
-
schX:
|
|
190
|
-
schY:
|
|
191
|
-
schRotation:
|
|
192
|
-
layer:
|
|
188
|
+
pcbX: import_circuit_json2.distance.optional(),
|
|
189
|
+
pcbY: import_circuit_json2.distance.optional(),
|
|
190
|
+
pcbRotation: import_circuit_json2.rotation.optional(),
|
|
191
|
+
schX: import_circuit_json2.distance.optional(),
|
|
192
|
+
schY: import_circuit_json2.distance.optional(),
|
|
193
|
+
schRotation: import_circuit_json2.rotation.optional(),
|
|
194
|
+
layer: import_circuit_json2.layer_ref.optional(),
|
|
193
195
|
footprint: footprintProp.optional()
|
|
194
196
|
});
|
|
195
197
|
expectTypesMatch(true);
|
|
196
198
|
var supplierProps = import_zod6.z.object({
|
|
197
|
-
supplierPartNumbers: import_zod6.z.record(
|
|
199
|
+
supplierPartNumbers: import_zod6.z.record(import_circuit_json2.supplier_name, import_zod6.z.array(import_zod6.z.string())).optional()
|
|
198
200
|
});
|
|
199
201
|
expectTypesMatch(true);
|
|
200
202
|
var commonComponentProps = commonLayoutProps.merge(supplierProps).extend({
|
|
@@ -216,12 +218,12 @@ var lrPolarPins = [
|
|
|
216
218
|
"cathode",
|
|
217
219
|
"neg"
|
|
218
220
|
];
|
|
219
|
-
var distanceOrMultiplier =
|
|
221
|
+
var distanceOrMultiplier = import_circuit_json2.distance.or(import_zod6.z.enum(["2x", "3x", "4x"]));
|
|
220
222
|
|
|
221
223
|
// lib/common/schematicPinDefinitions.ts
|
|
222
224
|
var import_zod7 = require("zod");
|
|
223
225
|
var explicitPinSideDefinition = import_zod7.z.object({
|
|
224
|
-
pins: import_zod7.z.array(import_zod7.z.number()),
|
|
226
|
+
pins: import_zod7.z.array(import_zod7.z.number()).or(import_zod7.z.array(import_zod7.z.string())),
|
|
225
227
|
direction: import_zod7.z.union([
|
|
226
228
|
import_zod7.z.literal("top-to-bottom"),
|
|
227
229
|
import_zod7.z.literal("left-to-right"),
|
|
@@ -246,113 +248,113 @@ var schematicPortArrangement = import_zod7.z.object({
|
|
|
246
248
|
expectTypesMatch(true);
|
|
247
249
|
|
|
248
250
|
// lib/common/schematicPinStyle.ts
|
|
251
|
+
var import_circuit_json3 = require("circuit-json");
|
|
249
252
|
var import_zod8 = require("zod");
|
|
250
|
-
var import_soup3 = require("@tscircuit/soup");
|
|
251
253
|
var schematicPinStyle = import_zod8.z.record(
|
|
252
254
|
import_zod8.z.object({
|
|
253
|
-
leftMargin:
|
|
254
|
-
rightMargin:
|
|
255
|
-
topMargin:
|
|
256
|
-
bottomMargin:
|
|
255
|
+
leftMargin: import_circuit_json3.distance.optional(),
|
|
256
|
+
rightMargin: import_circuit_json3.distance.optional(),
|
|
257
|
+
topMargin: import_circuit_json3.distance.optional(),
|
|
258
|
+
bottomMargin: import_circuit_json3.distance.optional()
|
|
257
259
|
})
|
|
258
260
|
);
|
|
259
261
|
expectTypesMatch(true);
|
|
260
262
|
|
|
261
263
|
// lib/components/board.ts
|
|
262
|
-
var
|
|
264
|
+
var import_circuit_json5 = require("circuit-json");
|
|
263
265
|
|
|
264
266
|
// lib/common/point.ts
|
|
265
|
-
var
|
|
267
|
+
var import_circuit_json4 = require("circuit-json");
|
|
266
268
|
var import_zod9 = require("zod");
|
|
267
269
|
var point = import_zod9.z.object({
|
|
268
|
-
x:
|
|
269
|
-
y:
|
|
270
|
+
x: import_circuit_json4.distance,
|
|
271
|
+
y: import_circuit_json4.distance
|
|
270
272
|
});
|
|
271
273
|
|
|
272
274
|
// lib/components/board.ts
|
|
273
275
|
var import_zod10 = require("zod");
|
|
274
276
|
var boardProps = import_zod10.z.object({
|
|
275
|
-
width:
|
|
276
|
-
height:
|
|
277
|
+
width: import_circuit_json5.distance.optional(),
|
|
278
|
+
height: import_circuit_json5.distance.optional(),
|
|
277
279
|
outline: import_zod10.z.array(point).optional(),
|
|
278
|
-
pcbX:
|
|
279
|
-
pcbY:
|
|
280
|
+
pcbX: import_circuit_json5.distance.optional().default(0),
|
|
281
|
+
pcbY: import_circuit_json5.distance.optional().default(0),
|
|
280
282
|
layout: import_zod10.z.custom((v) => true).optional(),
|
|
281
283
|
manualEdits: import_zod10.z.custom((v) => true).optional(),
|
|
282
284
|
routingDisabled: import_zod10.z.boolean().optional(),
|
|
283
285
|
children: import_zod10.z.any(),
|
|
284
|
-
defaultTraceWidth:
|
|
286
|
+
defaultTraceWidth: import_circuit_json5.distance.optional(),
|
|
285
287
|
schAutoLayoutEnabled: import_zod10.z.boolean().optional()
|
|
286
288
|
});
|
|
287
289
|
expectTypesMatch(true);
|
|
288
290
|
|
|
289
291
|
// lib/components/chip.ts
|
|
292
|
+
var import_circuit_json6 = require("circuit-json");
|
|
290
293
|
var import_zod11 = require("zod");
|
|
291
|
-
var import_soup6 = require("@tscircuit/soup");
|
|
292
294
|
var chipProps = commonComponentProps.extend({
|
|
293
295
|
manufacturerPartNumber: import_zod11.z.string().optional(),
|
|
294
296
|
pinLabels: import_zod11.z.record(import_zod11.z.number().or(import_zod11.z.string()), import_zod11.z.string().or(import_zod11.z.array(import_zod11.z.string()))).optional(),
|
|
295
297
|
schPortArrangement: schematicPortArrangement.optional(),
|
|
296
298
|
schPinStyle: schematicPinStyle.optional(),
|
|
297
|
-
schPinSpacing:
|
|
298
|
-
schWidth:
|
|
299
|
-
schHeight:
|
|
299
|
+
schPinSpacing: import_circuit_json6.distance.optional(),
|
|
300
|
+
schWidth: import_circuit_json6.distance.optional(),
|
|
301
|
+
schHeight: import_circuit_json6.distance.optional()
|
|
300
302
|
});
|
|
301
303
|
var bugProps = chipProps;
|
|
302
304
|
expectTypesMatch(true);
|
|
303
305
|
|
|
304
306
|
// lib/components/jumper.ts
|
|
307
|
+
var import_circuit_json7 = require("circuit-json");
|
|
305
308
|
var import_zod12 = require("zod");
|
|
306
|
-
var import_soup7 = require("@tscircuit/soup");
|
|
307
309
|
var jumperProps = commonComponentProps.extend({
|
|
308
310
|
manufacturerPartNumber: import_zod12.z.string().optional(),
|
|
309
311
|
pinLabels: import_zod12.z.record(import_zod12.z.number().or(import_zod12.z.string()), import_zod12.z.string()).optional(),
|
|
310
312
|
schPinStyle: schematicPinStyle.optional(),
|
|
311
|
-
schPinSpacing:
|
|
312
|
-
schWidth:
|
|
313
|
-
schHeight:
|
|
313
|
+
schPinSpacing: import_circuit_json7.distance.optional(),
|
|
314
|
+
schWidth: import_circuit_json7.distance.optional(),
|
|
315
|
+
schHeight: import_circuit_json7.distance.optional(),
|
|
314
316
|
schDirection: import_zod12.z.enum(["left", "right"]).optional(),
|
|
315
317
|
schPortArrangement: schematicPortArrangement.optional()
|
|
316
318
|
});
|
|
317
319
|
expectTypesMatch(true);
|
|
318
320
|
|
|
319
321
|
// lib/components/platedhole.ts
|
|
322
|
+
var import_circuit_json8 = require("circuit-json");
|
|
320
323
|
var import_zod13 = require("zod");
|
|
321
|
-
var import_soup8 = require("@tscircuit/soup");
|
|
322
324
|
var platedHoleProps = import_zod13.z.discriminatedUnion("shape", [
|
|
323
325
|
pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
|
|
324
326
|
name: import_zod13.z.string().optional(),
|
|
325
327
|
shape: import_zod13.z.literal("circle"),
|
|
326
|
-
holeDiameter:
|
|
327
|
-
outerDiameter:
|
|
328
|
+
holeDiameter: import_circuit_json8.distance,
|
|
329
|
+
outerDiameter: import_circuit_json8.distance,
|
|
328
330
|
portHints: portHints.optional()
|
|
329
331
|
}),
|
|
330
332
|
pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
|
|
331
333
|
name: import_zod13.z.string().optional(),
|
|
332
334
|
shape: import_zod13.z.literal("oval"),
|
|
333
|
-
outerWidth:
|
|
334
|
-
outerHeight:
|
|
335
|
-
innerWidth:
|
|
336
|
-
innerHeight:
|
|
335
|
+
outerWidth: import_circuit_json8.distance,
|
|
336
|
+
outerHeight: import_circuit_json8.distance,
|
|
337
|
+
innerWidth: import_circuit_json8.distance,
|
|
338
|
+
innerHeight: import_circuit_json8.distance,
|
|
337
339
|
portHints: portHints.optional()
|
|
338
340
|
}),
|
|
339
341
|
pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
|
|
340
342
|
name: import_zod13.z.string().optional(),
|
|
341
343
|
shape: import_zod13.z.literal("pill"),
|
|
342
|
-
outerWidth:
|
|
343
|
-
outerHeight:
|
|
344
|
-
innerWidth:
|
|
345
|
-
innerHeight:
|
|
344
|
+
outerWidth: import_circuit_json8.distance,
|
|
345
|
+
outerHeight: import_circuit_json8.distance,
|
|
346
|
+
innerWidth: import_circuit_json8.distance,
|
|
347
|
+
innerHeight: import_circuit_json8.distance,
|
|
346
348
|
portHints: portHints.optional()
|
|
347
349
|
})
|
|
348
350
|
]);
|
|
349
351
|
expectTypesMatch(true);
|
|
350
352
|
|
|
351
353
|
// lib/components/resistor.ts
|
|
354
|
+
var import_circuit_json9 = require("circuit-json");
|
|
352
355
|
var import_zod14 = require("zod");
|
|
353
|
-
var import_soup9 = require("@tscircuit/soup");
|
|
354
356
|
var resistorProps = commonComponentProps.extend({
|
|
355
|
-
resistance:
|
|
357
|
+
resistance: import_circuit_json9.resistance,
|
|
356
358
|
pullupFor: import_zod14.z.string().optional(),
|
|
357
359
|
pullupTo: import_zod14.z.string().optional(),
|
|
358
360
|
pulldownFor: import_zod14.z.string().optional(),
|
|
@@ -362,10 +364,10 @@ var resistorPins = lrPins;
|
|
|
362
364
|
expectTypesMatch(true);
|
|
363
365
|
|
|
364
366
|
// lib/components/capacitor.ts
|
|
367
|
+
var import_circuit_json10 = require("circuit-json");
|
|
365
368
|
var import_zod15 = require("zod");
|
|
366
|
-
var import_soup10 = require("@tscircuit/soup");
|
|
367
369
|
var capacitorProps = commonComponentProps.extend({
|
|
368
|
-
capacitance:
|
|
370
|
+
capacitance: import_circuit_json10.capacitance,
|
|
369
371
|
decouplingFor: import_zod15.z.string().optional(),
|
|
370
372
|
decouplingTo: import_zod15.z.string().optional(),
|
|
371
373
|
bypassFor: import_zod15.z.string().optional(),
|
|
@@ -375,7 +377,7 @@ var capacitorPins = lrPolarPins;
|
|
|
375
377
|
expectTypesMatch(true);
|
|
376
378
|
|
|
377
379
|
// lib/components/group.ts
|
|
378
|
-
var
|
|
380
|
+
var import_circuit_json11 = require("circuit-json");
|
|
379
381
|
var import_zod16 = require("zod");
|
|
380
382
|
var baseGroupProps = commonLayoutProps.extend({
|
|
381
383
|
name: import_zod16.z.string().optional(),
|
|
@@ -387,7 +389,7 @@ var subcircuitGroupProps = baseGroupProps.extend({
|
|
|
387
389
|
manualEdits: import_zod16.z.custom((v) => true).optional(),
|
|
388
390
|
schAutoLayoutEnabled: import_zod16.z.boolean().optional(),
|
|
389
391
|
routingDisabled: import_zod16.z.boolean().optional(),
|
|
390
|
-
defaultTraceWidth:
|
|
392
|
+
defaultTraceWidth: import_circuit_json11.length.optional()
|
|
391
393
|
});
|
|
392
394
|
var groupProps = import_zod16.z.union([baseGroupProps, subcircuitGroupProps]);
|
|
393
395
|
expectTypesMatch(true);
|
|
@@ -412,13 +414,13 @@ expectTypesMatch(true);
|
|
|
412
414
|
|
|
413
415
|
// lib/common/distance.ts
|
|
414
416
|
var import_zod19 = require("zod");
|
|
415
|
-
var
|
|
417
|
+
var import_circuit_json12 = require("circuit-json");
|
|
416
418
|
|
|
417
419
|
// lib/components/constraint.ts
|
|
418
420
|
var import_zod20 = require("zod");
|
|
419
421
|
var pcbXDistConstraintProps = import_zod20.z.object({
|
|
420
422
|
pcb: import_zod20.z.literal(true).optional(),
|
|
421
|
-
xDist:
|
|
423
|
+
xDist: import_circuit_json12.distance,
|
|
422
424
|
left: import_zod20.z.string(),
|
|
423
425
|
right: import_zod20.z.string(),
|
|
424
426
|
edgeToEdge: import_zod20.z.literal(true).optional(),
|
|
@@ -429,7 +431,7 @@ expectTypesMatch(
|
|
|
429
431
|
);
|
|
430
432
|
var pcbYDistConstraintProps = import_zod20.z.object({
|
|
431
433
|
pcb: import_zod20.z.literal(true).optional(),
|
|
432
|
-
yDist:
|
|
434
|
+
yDist: import_circuit_json12.distance,
|
|
433
435
|
top: import_zod20.z.string(),
|
|
434
436
|
bottom: import_zod20.z.string(),
|
|
435
437
|
edgeToEdge: import_zod20.z.literal(true).optional(),
|
|
@@ -466,14 +468,14 @@ expectTypesMatch(true);
|
|
|
466
468
|
var import_zod21 = require("zod");
|
|
467
469
|
var rectSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
468
470
|
shape: import_zod21.z.literal("rect"),
|
|
469
|
-
width:
|
|
470
|
-
height:
|
|
471
|
+
width: import_circuit_json12.distance,
|
|
472
|
+
height: import_circuit_json12.distance,
|
|
471
473
|
portHints: portHints.optional()
|
|
472
474
|
});
|
|
473
475
|
expectTypesMatch(true);
|
|
474
476
|
var circleSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
475
477
|
shape: import_zod21.z.literal("circle"),
|
|
476
|
-
radius:
|
|
478
|
+
radius: import_circuit_json12.distance,
|
|
477
479
|
portHints: portHints.optional()
|
|
478
480
|
});
|
|
479
481
|
expectTypesMatch(true);
|
|
@@ -484,13 +486,13 @@ expectTypesMatch(true);
|
|
|
484
486
|
var import_zod22 = require("zod");
|
|
485
487
|
var rectSolderPasteProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
486
488
|
shape: import_zod22.z.literal("rect"),
|
|
487
|
-
width:
|
|
488
|
-
height:
|
|
489
|
+
width: import_circuit_json12.distance,
|
|
490
|
+
height: import_circuit_json12.distance
|
|
489
491
|
});
|
|
490
492
|
expectTypesMatch(true);
|
|
491
493
|
var circleSolderPasteProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
492
494
|
shape: import_zod22.z.literal("circle"),
|
|
493
|
-
radius:
|
|
495
|
+
radius: import_circuit_json12.distance
|
|
494
496
|
});
|
|
495
497
|
expectTypesMatch(true);
|
|
496
498
|
var solderPasteProps = import_zod22.z.union([
|
|
@@ -503,8 +505,8 @@ expectTypesMatch(true);
|
|
|
503
505
|
var import_zod23 = require("zod");
|
|
504
506
|
var holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
505
507
|
name: import_zod23.z.string().optional(),
|
|
506
|
-
diameter:
|
|
507
|
-
radius:
|
|
508
|
+
diameter: import_circuit_json12.distance.optional(),
|
|
509
|
+
radius: import_circuit_json12.distance.optional()
|
|
508
510
|
}).transform((d) => ({
|
|
509
511
|
...d,
|
|
510
512
|
diameter: d.diameter ?? 2 * d.radius,
|
|
@@ -513,8 +515,8 @@ var holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
|
513
515
|
expectTypesMatch(true);
|
|
514
516
|
|
|
515
517
|
// lib/components/trace.ts
|
|
518
|
+
var import_circuit_json13 = require("circuit-json");
|
|
516
519
|
var import_zod24 = require("zod");
|
|
517
|
-
var import_soup13 = require("@tscircuit/soup");
|
|
518
520
|
var portRef = import_zod24.z.union([
|
|
519
521
|
import_zod24.z.string(),
|
|
520
522
|
import_zod24.z.custom(
|
|
@@ -523,9 +525,9 @@ var portRef = import_zod24.z.union([
|
|
|
523
525
|
]);
|
|
524
526
|
var baseTraceProps = import_zod24.z.object({
|
|
525
527
|
key: import_zod24.z.string().optional(),
|
|
526
|
-
thickness:
|
|
528
|
+
thickness: import_circuit_json13.distance.optional(),
|
|
527
529
|
schematicRouteHints: import_zod24.z.array(point).optional(),
|
|
528
|
-
pcbRouteHints: import_zod24.z.array(
|
|
530
|
+
pcbRouteHints: import_zod24.z.array(import_circuit_json13.route_hint_point).optional()
|
|
529
531
|
});
|
|
530
532
|
var traceProps = import_zod24.z.union([
|
|
531
533
|
baseTraceProps.extend({
|
|
@@ -538,10 +540,10 @@ var traceProps = import_zod24.z.union([
|
|
|
538
540
|
]);
|
|
539
541
|
|
|
540
542
|
// lib/components/footprint.ts
|
|
541
|
-
var
|
|
543
|
+
var import_circuit_json14 = require("circuit-json");
|
|
542
544
|
var import_zod25 = require("zod");
|
|
543
545
|
var footprintProps = import_zod25.z.object({
|
|
544
|
-
originalLayer:
|
|
546
|
+
originalLayer: import_circuit_json14.layer_ref.default("top").optional()
|
|
545
547
|
});
|
|
546
548
|
expectTypesMatch(true);
|
|
547
549
|
|
|
@@ -565,23 +567,23 @@ var batteryPins = lrPolarPins;
|
|
|
565
567
|
expectTypesMatch(true);
|
|
566
568
|
|
|
567
569
|
// lib/components/pin-header.ts
|
|
570
|
+
var import_circuit_json15 = require("circuit-json");
|
|
568
571
|
var import_zod27 = require("zod");
|
|
569
|
-
var import_soup15 = require("@tscircuit/soup");
|
|
570
572
|
var pinHeaderProps = commonComponentProps.extend({
|
|
571
573
|
pinCount: import_zod27.z.number(),
|
|
572
|
-
pitch:
|
|
574
|
+
pitch: import_circuit_json15.distance.optional(),
|
|
573
575
|
gender: import_zod27.z.enum(["male", "female"]).optional(),
|
|
574
576
|
showSilkscreenPinLabels: import_zod27.z.boolean().optional(),
|
|
575
577
|
doubleRow: import_zod27.z.boolean().optional(),
|
|
576
|
-
holeDiameter:
|
|
577
|
-
platedDiameter:
|
|
578
|
+
holeDiameter: import_circuit_json15.distance.optional(),
|
|
579
|
+
platedDiameter: import_circuit_json15.distance.optional(),
|
|
578
580
|
pinLabels: import_zod27.z.array(import_zod27.z.string()).optional()
|
|
579
581
|
});
|
|
580
582
|
expectTypesMatch(true);
|
|
581
583
|
|
|
582
584
|
// lib/index.ts
|
|
583
585
|
var inductorProps = commonComponentProps.extend({
|
|
584
|
-
inductance:
|
|
586
|
+
inductance: import_circuit_json16.inductance
|
|
585
587
|
});
|
|
586
588
|
var inductorPins = lrPins;
|
|
587
589
|
var diodeProps = commonComponentProps.extend({});
|
|
@@ -595,12 +597,12 @@ var switchProps = commonComponentProps.extend({
|
|
|
595
597
|
switchType: import_zod28.z.enum(["spst"]).default("spst"),
|
|
596
598
|
isNormallyClosed: import_zod28.z.boolean().default(false)
|
|
597
599
|
});
|
|
598
|
-
var distanceOrMultiplier2 =
|
|
600
|
+
var distanceOrMultiplier2 = import_circuit_json16.distance.or(import_zod28.z.enum(["2x", "3x", "4x"]));
|
|
599
601
|
var viaProps = commonLayoutProps.extend({
|
|
600
|
-
fromLayer:
|
|
601
|
-
toLayer:
|
|
602
|
-
holeDiameter:
|
|
603
|
-
outerDiameter:
|
|
602
|
+
fromLayer: import_circuit_json16.layer_ref,
|
|
603
|
+
toLayer: import_circuit_json16.layer_ref,
|
|
604
|
+
holeDiameter: import_circuit_json16.distance,
|
|
605
|
+
outerDiameter: import_circuit_json16.distance
|
|
604
606
|
});
|
|
605
607
|
var netAliasProps = commonLayoutProps.extend({
|
|
606
608
|
net: import_zod28.z.string().optional()
|
|
@@ -608,39 +610,39 @@ var netAliasProps = commonLayoutProps.extend({
|
|
|
608
610
|
var pcbKeepoutProps = import_zod28.z.union([
|
|
609
611
|
pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
610
612
|
shape: import_zod28.z.literal("circle"),
|
|
611
|
-
radius:
|
|
613
|
+
radius: import_circuit_json16.distance
|
|
612
614
|
}),
|
|
613
615
|
pcbLayoutProps.extend({
|
|
614
616
|
shape: import_zod28.z.literal("rect"),
|
|
615
|
-
width:
|
|
616
|
-
height:
|
|
617
|
+
width: import_circuit_json16.distance,
|
|
618
|
+
height: import_circuit_json16.distance
|
|
617
619
|
})
|
|
618
620
|
]);
|
|
619
621
|
var schematicBoxProps = import_zod28.z.object({
|
|
620
|
-
schX:
|
|
621
|
-
schY:
|
|
622
|
-
width:
|
|
623
|
-
height:
|
|
622
|
+
schX: import_circuit_json16.distance,
|
|
623
|
+
schY: import_circuit_json16.distance,
|
|
624
|
+
width: import_circuit_json16.distance,
|
|
625
|
+
height: import_circuit_json16.distance
|
|
624
626
|
});
|
|
625
627
|
var schematicTextProps = import_zod28.z.object({
|
|
626
|
-
schX:
|
|
627
|
-
schY:
|
|
628
|
+
schX: import_circuit_json16.distance,
|
|
629
|
+
schY: import_circuit_json16.distance,
|
|
628
630
|
text: import_zod28.z.string()
|
|
629
631
|
});
|
|
630
632
|
var schematicLineProps = import_zod28.z.object({
|
|
631
|
-
x1:
|
|
632
|
-
y1:
|
|
633
|
-
x2:
|
|
634
|
-
y2:
|
|
633
|
+
x1: import_circuit_json16.distance,
|
|
634
|
+
y1: import_circuit_json16.distance,
|
|
635
|
+
x2: import_circuit_json16.distance,
|
|
636
|
+
y2: import_circuit_json16.distance
|
|
635
637
|
});
|
|
636
638
|
var schematicPathProps = import_zod28.z.object({
|
|
637
|
-
points: import_zod28.z.array(
|
|
639
|
+
points: import_zod28.z.array(import_circuit_json16.point),
|
|
638
640
|
isFilled: import_zod28.z.boolean().optional().default(false),
|
|
639
641
|
fillColor: import_zod28.z.enum(["red", "blue"]).optional()
|
|
640
642
|
});
|
|
641
643
|
var componentProps = commonComponentProps;
|
|
642
644
|
var powerSourceProps = commonComponentProps.extend({
|
|
643
|
-
voltage:
|
|
645
|
+
voltage: import_circuit_json16.voltage
|
|
644
646
|
});
|
|
645
647
|
var portProps = commonLayoutProps.extend({
|
|
646
648
|
name: import_zod28.z.string(),
|
|
@@ -652,62 +654,62 @@ var silkscreenTextProps = pcbLayoutProps.extend({
|
|
|
652
654
|
text: import_zod28.z.string(),
|
|
653
655
|
anchorAlignment: import_zod28.z.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
654
656
|
font: import_zod28.z.enum(["tscircuit2024"]).optional(),
|
|
655
|
-
fontSize:
|
|
657
|
+
fontSize: import_circuit_json16.length.optional()
|
|
656
658
|
});
|
|
657
659
|
var silkscreenPathProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
|
|
658
|
-
route: import_zod28.z.array(
|
|
659
|
-
strokeWidth:
|
|
660
|
+
route: import_zod28.z.array(import_circuit_json16.route_hint_point),
|
|
661
|
+
strokeWidth: import_circuit_json16.length.optional()
|
|
660
662
|
});
|
|
661
663
|
var silkscreenLineProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
|
|
662
|
-
strokeWidth:
|
|
663
|
-
x1:
|
|
664
|
-
y1:
|
|
665
|
-
x2:
|
|
666
|
-
y2:
|
|
664
|
+
strokeWidth: import_circuit_json16.distance,
|
|
665
|
+
x1: import_circuit_json16.distance,
|
|
666
|
+
y1: import_circuit_json16.distance,
|
|
667
|
+
x2: import_circuit_json16.distance,
|
|
668
|
+
y2: import_circuit_json16.distance
|
|
667
669
|
});
|
|
668
670
|
var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
669
671
|
isFilled: import_zod28.z.boolean().optional(),
|
|
670
672
|
isOutline: import_zod28.z.boolean().optional(),
|
|
671
|
-
strokeWidth:
|
|
672
|
-
width:
|
|
673
|
-
height:
|
|
673
|
+
strokeWidth: import_circuit_json16.distance.optional(),
|
|
674
|
+
width: import_circuit_json16.distance,
|
|
675
|
+
height: import_circuit_json16.distance
|
|
674
676
|
});
|
|
675
677
|
var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
676
678
|
isFilled: import_zod28.z.boolean().optional(),
|
|
677
679
|
isOutline: import_zod28.z.boolean().optional(),
|
|
678
|
-
strokeWidth:
|
|
679
|
-
radius:
|
|
680
|
+
strokeWidth: import_circuit_json16.distance.optional(),
|
|
681
|
+
radius: import_circuit_json16.distance
|
|
680
682
|
});
|
|
681
683
|
var routeHintPointProps = import_zod28.z.object({
|
|
682
|
-
x:
|
|
683
|
-
y:
|
|
684
|
+
x: import_circuit_json16.distance,
|
|
685
|
+
y: import_circuit_json16.distance,
|
|
684
686
|
via: import_zod28.z.boolean().optional(),
|
|
685
|
-
toLayer:
|
|
687
|
+
toLayer: import_circuit_json16.layer_ref.optional()
|
|
686
688
|
});
|
|
687
689
|
var traceHintProps = import_zod28.z.object({
|
|
688
690
|
for: import_zod28.z.string().optional().describe(
|
|
689
691
|
"Selector for the port you're targeting, not required if you're inside a trace"
|
|
690
692
|
),
|
|
691
693
|
order: import_zod28.z.number().optional(),
|
|
692
|
-
offset:
|
|
693
|
-
offsets: import_zod28.z.array(
|
|
694
|
+
offset: import_circuit_json16.route_hint_point.or(routeHintPointProps).optional(),
|
|
695
|
+
offsets: import_zod28.z.array(import_circuit_json16.route_hint_point).or(import_zod28.z.array(routeHintPointProps)).optional(),
|
|
694
696
|
traceWidth: import_zod28.z.number().optional()
|
|
695
697
|
});
|
|
696
698
|
var pcbTraceProps = import_zod28.z.object({
|
|
697
699
|
layer: import_zod28.z.string().optional(),
|
|
698
|
-
thickness:
|
|
699
|
-
route: import_zod28.z.array(
|
|
700
|
+
thickness: import_circuit_json16.distance.optional(),
|
|
701
|
+
route: import_zod28.z.array(import_circuit_json16.route_hint_point)
|
|
700
702
|
});
|
|
701
703
|
var fabricationNoteTextProps = pcbLayoutProps.extend({
|
|
702
704
|
text: import_zod28.z.string(),
|
|
703
705
|
anchorAlignment: import_zod28.z.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
704
706
|
font: import_zod28.z.enum(["tscircuit2024"]).optional(),
|
|
705
|
-
fontSize:
|
|
707
|
+
fontSize: import_circuit_json16.length.optional(),
|
|
706
708
|
color: import_zod28.z.string().optional()
|
|
707
709
|
});
|
|
708
710
|
var fabricationNotePathProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
|
|
709
|
-
route: import_zod28.z.array(
|
|
710
|
-
strokeWidth:
|
|
711
|
+
route: import_zod28.z.array(import_circuit_json16.route_hint_point),
|
|
712
|
+
strokeWidth: import_circuit_json16.length.optional(),
|
|
711
713
|
color: import_zod28.z.string().optional()
|
|
712
714
|
});
|
|
713
715
|
// Annotate the CommonJS export names for ESM import in node:
|