@tscircuit/props 0.0.581 → 0.0.583
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/README.md +17 -1
- package/dist/index.d.ts +1499 -1463
- package/dist/index.js +320 -304
- package/dist/index.js.map +1 -1
- package/lib/components/board.ts +2 -1
- package/lib/components/chip.ts +16 -1
- package/lib/components/internal-circuit.ts +19 -0
- package/lib/index.ts +1 -0
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -16542,7 +16542,8 @@ var boardProps = subcircuitGroupProps.omit({ connections: true }).extend({
|
|
|
16542
16542
|
z42.literal(2),
|
|
16543
16543
|
z42.literal(4),
|
|
16544
16544
|
z42.literal(6),
|
|
16545
|
-
z42.literal(8)
|
|
16545
|
+
z42.literal(8),
|
|
16546
|
+
z42.literal(10)
|
|
16546
16547
|
]).default(2),
|
|
16547
16548
|
borderRadius: distance.optional(),
|
|
16548
16549
|
thickness: distance.optional(),
|
|
@@ -16612,6 +16613,7 @@ expectTypesMatch(true);
|
|
|
16612
16613
|
|
|
16613
16614
|
// lib/components/chip.ts
|
|
16614
16615
|
import { distance as distance13, supplier_name as supplier_name2 } from "circuit-json";
|
|
16616
|
+
import { isValidElement } from "react";
|
|
16615
16617
|
import { z as z46 } from "zod";
|
|
16616
16618
|
var connectionTarget2 = z46.string().or(z46.array(z46.string()).readonly()).or(z46.array(z46.string()));
|
|
16617
16619
|
var noConnectProp = z46.array(schematicPinLabel).readonly().or(z46.array(schematicPinLabel));
|
|
@@ -16619,6 +16621,9 @@ var connectionsProp = z46.custom().pipe(z46.record(z46.string(), connectionTarge
|
|
|
16619
16621
|
var spicemodelElement = z46.custom(
|
|
16620
16622
|
(v) => !!v && typeof v === "object" && "type" in v && "props" in v
|
|
16621
16623
|
);
|
|
16624
|
+
var internalCircuitElement = z46.custom(
|
|
16625
|
+
(value) => isValidElement(value) && value.type === "internalcircuit"
|
|
16626
|
+
);
|
|
16622
16627
|
var pinLabelsProp = z46.record(
|
|
16623
16628
|
schematicPinLabel,
|
|
16624
16629
|
schematicPinLabel.or(z46.array(schematicPinLabel).readonly()).or(z46.array(schematicPinLabel))
|
|
@@ -16645,7 +16650,8 @@ var chipProps = commonComponentProps.extend({
|
|
|
16645
16650
|
noSchematicRepresentation: z46.boolean().optional(),
|
|
16646
16651
|
noConnect: noConnectProp.optional(),
|
|
16647
16652
|
connections: connectionsProp.optional(),
|
|
16648
|
-
spiceModel: spicemodelElement.optional()
|
|
16653
|
+
spiceModel: spicemodelElement.optional(),
|
|
16654
|
+
internalCircuit: internalCircuitElement.optional()
|
|
16649
16655
|
});
|
|
16650
16656
|
var bugProps = chipProps;
|
|
16651
16657
|
expectTypesMatch(true);
|
|
@@ -17618,10 +17624,19 @@ var inductorProps = commonComponentProps.extend({
|
|
|
17618
17624
|
});
|
|
17619
17625
|
expectTypesMatch(true);
|
|
17620
17626
|
|
|
17621
|
-
// lib/components/
|
|
17627
|
+
// lib/components/internal-circuit.ts
|
|
17622
17628
|
import { z as z86 } from "zod";
|
|
17629
|
+
var internalCircuitProps = z86.object({
|
|
17630
|
+
children: z86.custom().optional()
|
|
17631
|
+
});
|
|
17632
|
+
expectTypesMatch(
|
|
17633
|
+
true
|
|
17634
|
+
);
|
|
17635
|
+
|
|
17636
|
+
// lib/components/diode.ts
|
|
17637
|
+
import { z as z87 } from "zod";
|
|
17623
17638
|
var diodePins = lrPolarPins;
|
|
17624
|
-
var diodeConnectionKeys =
|
|
17639
|
+
var diodeConnectionKeys = z87.enum([
|
|
17625
17640
|
"anode",
|
|
17626
17641
|
"cathode",
|
|
17627
17642
|
"pin1",
|
|
@@ -17629,13 +17644,13 @@ var diodeConnectionKeys = z86.enum([
|
|
|
17629
17644
|
"pos",
|
|
17630
17645
|
"neg"
|
|
17631
17646
|
]);
|
|
17632
|
-
var connectionTarget3 =
|
|
17633
|
-
var connectionsProp2 =
|
|
17634
|
-
var diodePinLabelsProp =
|
|
17635
|
-
|
|
17636
|
-
schematicPinLabel.or(
|
|
17647
|
+
var connectionTarget3 = z87.string().or(z87.array(z87.string()).readonly()).or(z87.array(z87.string()));
|
|
17648
|
+
var connectionsProp2 = z87.record(diodeConnectionKeys, connectionTarget3);
|
|
17649
|
+
var diodePinLabelsProp = z87.record(
|
|
17650
|
+
z87.enum(diodePins),
|
|
17651
|
+
schematicPinLabel.or(z87.array(schematicPinLabel).readonly()).or(z87.array(schematicPinLabel))
|
|
17637
17652
|
);
|
|
17638
|
-
var diodeVariant =
|
|
17653
|
+
var diodeVariant = z87.enum([
|
|
17639
17654
|
"standard",
|
|
17640
17655
|
"schottky",
|
|
17641
17656
|
"zener",
|
|
@@ -17646,12 +17661,12 @@ var diodeVariant = z86.enum([
|
|
|
17646
17661
|
var diodeProps = commonComponentProps.extend({
|
|
17647
17662
|
connections: connectionsProp2.optional(),
|
|
17648
17663
|
variant: diodeVariant.optional().default("standard"),
|
|
17649
|
-
standard:
|
|
17650
|
-
schottky:
|
|
17651
|
-
zener:
|
|
17652
|
-
avalanche:
|
|
17653
|
-
photo:
|
|
17654
|
-
tvs:
|
|
17664
|
+
standard: z87.boolean().optional(),
|
|
17665
|
+
schottky: z87.boolean().optional(),
|
|
17666
|
+
zener: z87.boolean().optional(),
|
|
17667
|
+
avalanche: z87.boolean().optional(),
|
|
17668
|
+
photo: z87.boolean().optional(),
|
|
17669
|
+
tvs: z87.boolean().optional(),
|
|
17655
17670
|
schOrientation: schematicOrientation.optional(),
|
|
17656
17671
|
pinLabels: diodePinLabelsProp.optional()
|
|
17657
17672
|
}).superRefine((data, ctx) => {
|
|
@@ -17665,11 +17680,11 @@ var diodeProps = commonComponentProps.extend({
|
|
|
17665
17680
|
].filter(Boolean).length;
|
|
17666
17681
|
if (enabledFlags > 1) {
|
|
17667
17682
|
ctx.addIssue({
|
|
17668
|
-
code:
|
|
17683
|
+
code: z87.ZodIssueCode.custom,
|
|
17669
17684
|
message: "Exactly one diode variant must be enabled",
|
|
17670
17685
|
path: []
|
|
17671
17686
|
});
|
|
17672
|
-
return
|
|
17687
|
+
return z87.INVALID;
|
|
17673
17688
|
}
|
|
17674
17689
|
}).transform((data) => {
|
|
17675
17690
|
const result = {
|
|
@@ -17715,34 +17730,34 @@ var diodeProps = commonComponentProps.extend({
|
|
|
17715
17730
|
expectTypesMatch(true);
|
|
17716
17731
|
|
|
17717
17732
|
// lib/components/led.ts
|
|
17718
|
-
import { z as
|
|
17733
|
+
import { z as z88 } from "zod";
|
|
17719
17734
|
var ledProps = commonComponentProps.extend({
|
|
17720
|
-
color:
|
|
17721
|
-
wavelength:
|
|
17722
|
-
schDisplayValue:
|
|
17735
|
+
color: z88.string().optional(),
|
|
17736
|
+
wavelength: z88.string().optional(),
|
|
17737
|
+
schDisplayValue: z88.string().optional(),
|
|
17723
17738
|
schOrientation: schematicOrientation.optional(),
|
|
17724
17739
|
connections: createConnectionsProp(lrPolarPins).optional(),
|
|
17725
|
-
laser:
|
|
17740
|
+
laser: z88.boolean().optional()
|
|
17726
17741
|
});
|
|
17727
17742
|
var ledPins = lrPolarPins;
|
|
17728
17743
|
|
|
17729
17744
|
// lib/components/switch.ts
|
|
17730
17745
|
import { ms as ms2, frequency as frequency3 } from "circuit-json";
|
|
17731
|
-
import { z as
|
|
17746
|
+
import { z as z89 } from "zod";
|
|
17732
17747
|
var switchProps = commonComponentProps.extend({
|
|
17733
|
-
type:
|
|
17734
|
-
isNormallyClosed:
|
|
17735
|
-
spst:
|
|
17736
|
-
spdt:
|
|
17737
|
-
dpst:
|
|
17738
|
-
dpdt:
|
|
17748
|
+
type: z89.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
|
|
17749
|
+
isNormallyClosed: z89.boolean().optional().default(false),
|
|
17750
|
+
spst: z89.boolean().optional(),
|
|
17751
|
+
spdt: z89.boolean().optional(),
|
|
17752
|
+
dpst: z89.boolean().optional(),
|
|
17753
|
+
dpdt: z89.boolean().optional(),
|
|
17739
17754
|
pinLabels: pinLabelsProp.optional(),
|
|
17740
17755
|
simSwitchFrequency: frequency3.optional(),
|
|
17741
17756
|
simCloseAt: ms2.optional(),
|
|
17742
17757
|
simOpenAt: ms2.optional(),
|
|
17743
|
-
simStartClosed:
|
|
17744
|
-
simStartOpen:
|
|
17745
|
-
connections:
|
|
17758
|
+
simStartClosed: z89.boolean().optional(),
|
|
17759
|
+
simStartOpen: z89.boolean().optional(),
|
|
17760
|
+
connections: z89.custom().pipe(z89.record(z89.string(), connectionTarget)).optional()
|
|
17746
17761
|
}).transform((props) => {
|
|
17747
17762
|
const updatedProps = { ...props };
|
|
17748
17763
|
if (updatedProps.dpdt) {
|
|
@@ -17774,33 +17789,33 @@ expectTypesMatch(true);
|
|
|
17774
17789
|
|
|
17775
17790
|
// lib/components/fabrication-note-text.ts
|
|
17776
17791
|
import { length as length4 } from "circuit-json";
|
|
17777
|
-
import { z as
|
|
17792
|
+
import { z as z90 } from "zod";
|
|
17778
17793
|
var fabricationNoteTextProps = pcbLayoutProps.extend({
|
|
17779
|
-
text:
|
|
17780
|
-
anchorAlignment:
|
|
17781
|
-
font:
|
|
17794
|
+
text: z90.string(),
|
|
17795
|
+
anchorAlignment: z90.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
17796
|
+
font: z90.enum(["tscircuit2024"]).optional(),
|
|
17782
17797
|
fontSize: length4.optional(),
|
|
17783
|
-
color:
|
|
17798
|
+
color: z90.string().optional()
|
|
17784
17799
|
});
|
|
17785
17800
|
expectTypesMatch(true);
|
|
17786
17801
|
|
|
17787
17802
|
// lib/components/fabrication-note-rect.ts
|
|
17788
17803
|
import { distance as distance21 } from "circuit-json";
|
|
17789
|
-
import { z as
|
|
17804
|
+
import { z as z91 } from "zod";
|
|
17790
17805
|
var fabricationNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
17791
17806
|
width: distance21,
|
|
17792
17807
|
height: distance21,
|
|
17793
17808
|
strokeWidth: distance21.optional(),
|
|
17794
|
-
isFilled:
|
|
17795
|
-
hasStroke:
|
|
17796
|
-
isStrokeDashed:
|
|
17797
|
-
color:
|
|
17809
|
+
isFilled: z91.boolean().optional(),
|
|
17810
|
+
hasStroke: z91.boolean().optional(),
|
|
17811
|
+
isStrokeDashed: z91.boolean().optional(),
|
|
17812
|
+
color: z91.string().optional(),
|
|
17798
17813
|
cornerRadius: distance21.optional()
|
|
17799
17814
|
});
|
|
17800
17815
|
|
|
17801
17816
|
// lib/components/fabrication-note-path.ts
|
|
17802
17817
|
import { length as length5, route_hint_point as route_hint_point3 } from "circuit-json";
|
|
17803
|
-
import { z as
|
|
17818
|
+
import { z as z92 } from "zod";
|
|
17804
17819
|
var fabricationNotePathProps = pcbLayoutProps.omit({
|
|
17805
17820
|
pcbLeftEdgeX: true,
|
|
17806
17821
|
pcbRightEdgeX: true,
|
|
@@ -17812,15 +17827,15 @@ var fabricationNotePathProps = pcbLayoutProps.omit({
|
|
|
17812
17827
|
pcbOffsetY: true,
|
|
17813
17828
|
pcbRotation: true
|
|
17814
17829
|
}).extend({
|
|
17815
|
-
route:
|
|
17830
|
+
route: z92.array(route_hint_point3),
|
|
17816
17831
|
strokeWidth: length5.optional(),
|
|
17817
|
-
color:
|
|
17832
|
+
color: z92.string().optional()
|
|
17818
17833
|
});
|
|
17819
17834
|
|
|
17820
17835
|
// lib/components/fabrication-note-dimension.ts
|
|
17821
17836
|
import { distance as distance22, length as length6 } from "circuit-json";
|
|
17822
|
-
import { z as
|
|
17823
|
-
var dimensionTarget =
|
|
17837
|
+
import { z as z93 } from "zod";
|
|
17838
|
+
var dimensionTarget = z93.union([z93.string(), point]);
|
|
17824
17839
|
var fabricationNoteDimensionProps = pcbLayoutProps.omit({
|
|
17825
17840
|
pcbLeftEdgeX: true,
|
|
17826
17841
|
pcbRightEdgeX: true,
|
|
@@ -17834,54 +17849,54 @@ var fabricationNoteDimensionProps = pcbLayoutProps.omit({
|
|
|
17834
17849
|
}).extend({
|
|
17835
17850
|
from: dimensionTarget,
|
|
17836
17851
|
to: dimensionTarget,
|
|
17837
|
-
text:
|
|
17852
|
+
text: z93.string().optional(),
|
|
17838
17853
|
offset: distance22.optional(),
|
|
17839
|
-
font:
|
|
17854
|
+
font: z93.enum(["tscircuit2024"]).optional(),
|
|
17840
17855
|
fontSize: length6.optional(),
|
|
17841
|
-
color:
|
|
17856
|
+
color: z93.string().optional(),
|
|
17842
17857
|
arrowSize: distance22.optional(),
|
|
17843
|
-
units:
|
|
17844
|
-
outerEdgeToEdge:
|
|
17845
|
-
centerToCenter:
|
|
17846
|
-
innerEdgeToEdge:
|
|
17858
|
+
units: z93.enum(["in", "mm"]).optional(),
|
|
17859
|
+
outerEdgeToEdge: z93.literal(true).optional(),
|
|
17860
|
+
centerToCenter: z93.literal(true).optional(),
|
|
17861
|
+
innerEdgeToEdge: z93.literal(true).optional()
|
|
17847
17862
|
});
|
|
17848
17863
|
expectTypesMatch(true);
|
|
17849
17864
|
|
|
17850
17865
|
// lib/components/pcb-trace.ts
|
|
17851
17866
|
import { distance as distance23, route_hint_point as route_hint_point4 } from "circuit-json";
|
|
17852
|
-
import { z as
|
|
17853
|
-
var pcbTraceProps =
|
|
17854
|
-
layer:
|
|
17867
|
+
import { z as z94 } from "zod";
|
|
17868
|
+
var pcbTraceProps = z94.object({
|
|
17869
|
+
layer: z94.string().optional(),
|
|
17855
17870
|
thickness: distance23.optional(),
|
|
17856
|
-
route:
|
|
17871
|
+
route: z94.array(route_hint_point4)
|
|
17857
17872
|
});
|
|
17858
17873
|
|
|
17859
17874
|
// lib/components/via.ts
|
|
17860
17875
|
import { distance as distance24, layer_ref as layer_ref6 } from "circuit-json";
|
|
17861
|
-
import { z as
|
|
17876
|
+
import { z as z95 } from "zod";
|
|
17862
17877
|
var viaProps = commonLayoutProps.extend({
|
|
17863
|
-
name:
|
|
17878
|
+
name: z95.string().optional(),
|
|
17864
17879
|
fromLayer: layer_ref6.optional(),
|
|
17865
17880
|
toLayer: layer_ref6.optional(),
|
|
17866
17881
|
holeDiameter: distance24.optional(),
|
|
17867
17882
|
outerDiameter: distance24.optional(),
|
|
17868
|
-
layers:
|
|
17869
|
-
connectsTo:
|
|
17870
|
-
netIsAssignable:
|
|
17883
|
+
layers: z95.array(layer_ref6).optional(),
|
|
17884
|
+
connectsTo: z95.string().or(z95.array(z95.string())).optional(),
|
|
17885
|
+
netIsAssignable: z95.boolean().optional()
|
|
17871
17886
|
});
|
|
17872
17887
|
expectTypesMatch(true);
|
|
17873
17888
|
|
|
17874
17889
|
// lib/components/testpoint.ts
|
|
17875
17890
|
import { distance as distance25 } from "circuit-json";
|
|
17876
|
-
import { z as
|
|
17891
|
+
import { z as z96 } from "zod";
|
|
17877
17892
|
var testpointPins = ["pin1"];
|
|
17878
|
-
var testpointConnectionsProp =
|
|
17893
|
+
var testpointConnectionsProp = z96.object({
|
|
17879
17894
|
pin1: connectionTarget
|
|
17880
17895
|
}).strict();
|
|
17881
17896
|
var testpointProps = commonComponentProps.extend({
|
|
17882
17897
|
connections: testpointConnectionsProp.optional(),
|
|
17883
|
-
footprintVariant:
|
|
17884
|
-
padShape:
|
|
17898
|
+
footprintVariant: z96.enum(["pad", "through_hole"]).optional(),
|
|
17899
|
+
padShape: z96.enum(["rect", "circle"]).optional().default("circle"),
|
|
17885
17900
|
padDiameter: distance25.optional(),
|
|
17886
17901
|
holeDiameter: distance25.optional(),
|
|
17887
17902
|
width: distance25.optional(),
|
|
@@ -17893,45 +17908,45 @@ var testpointProps = commonComponentProps.extend({
|
|
|
17893
17908
|
expectTypesMatch(true);
|
|
17894
17909
|
|
|
17895
17910
|
// lib/components/breakoutpoint.ts
|
|
17896
|
-
import { z as
|
|
17911
|
+
import { z as z97 } from "zod";
|
|
17897
17912
|
var breakoutPointProps = pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({
|
|
17898
|
-
connection:
|
|
17913
|
+
connection: z97.string()
|
|
17899
17914
|
});
|
|
17900
17915
|
expectTypesMatch(true);
|
|
17901
17916
|
|
|
17902
17917
|
// lib/components/pcb-keepout.ts
|
|
17903
17918
|
import { distance as distance26, layer_ref as layer_ref7 } from "circuit-json";
|
|
17904
|
-
import { z as
|
|
17905
|
-
var pcbKeepoutProps =
|
|
17919
|
+
import { z as z98 } from "zod";
|
|
17920
|
+
var pcbKeepoutProps = z98.union([
|
|
17906
17921
|
pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
17907
|
-
shape:
|
|
17922
|
+
shape: z98.literal("circle"),
|
|
17908
17923
|
radius: distance26,
|
|
17909
|
-
layers:
|
|
17924
|
+
layers: z98.array(layer_ref7).optional()
|
|
17910
17925
|
}),
|
|
17911
17926
|
pcbLayoutProps.extend({
|
|
17912
|
-
shape:
|
|
17927
|
+
shape: z98.literal("rect"),
|
|
17913
17928
|
width: distance26,
|
|
17914
17929
|
height: distance26,
|
|
17915
|
-
layers:
|
|
17930
|
+
layers: z98.array(layer_ref7).optional()
|
|
17916
17931
|
})
|
|
17917
17932
|
]);
|
|
17918
17933
|
|
|
17919
17934
|
// lib/components/courtyard-rect.ts
|
|
17920
17935
|
import { distance as distance27 } from "circuit-json";
|
|
17921
|
-
import { z as
|
|
17936
|
+
import { z as z99 } from "zod";
|
|
17922
17937
|
var courtyardRectProps = pcbLayoutProps.extend({
|
|
17923
17938
|
width: distance27,
|
|
17924
17939
|
height: distance27,
|
|
17925
17940
|
strokeWidth: distance27.optional(),
|
|
17926
|
-
isFilled:
|
|
17927
|
-
hasStroke:
|
|
17928
|
-
isStrokeDashed:
|
|
17929
|
-
color:
|
|
17941
|
+
isFilled: z99.boolean().optional(),
|
|
17942
|
+
hasStroke: z99.boolean().optional(),
|
|
17943
|
+
isStrokeDashed: z99.boolean().optional(),
|
|
17944
|
+
color: z99.string().optional()
|
|
17930
17945
|
});
|
|
17931
17946
|
|
|
17932
17947
|
// lib/components/courtyard-outline.ts
|
|
17933
17948
|
import { length as length7 } from "circuit-json";
|
|
17934
|
-
import { z as
|
|
17949
|
+
import { z as z100 } from "zod";
|
|
17935
17950
|
var courtyardOutlineProps = pcbLayoutProps.omit({
|
|
17936
17951
|
pcbLeftEdgeX: true,
|
|
17937
17952
|
pcbRightEdgeX: true,
|
|
@@ -17943,11 +17958,11 @@ var courtyardOutlineProps = pcbLayoutProps.omit({
|
|
|
17943
17958
|
pcbOffsetY: true,
|
|
17944
17959
|
pcbRotation: true
|
|
17945
17960
|
}).extend({
|
|
17946
|
-
outline:
|
|
17961
|
+
outline: z100.array(point),
|
|
17947
17962
|
strokeWidth: length7.optional(),
|
|
17948
|
-
isClosed:
|
|
17949
|
-
isStrokeDashed:
|
|
17950
|
-
color:
|
|
17963
|
+
isClosed: z100.boolean().optional(),
|
|
17964
|
+
isStrokeDashed: z100.boolean().optional(),
|
|
17965
|
+
color: z100.string().optional()
|
|
17951
17966
|
});
|
|
17952
17967
|
|
|
17953
17968
|
// lib/components/courtyard-circle.ts
|
|
@@ -17967,35 +17982,35 @@ var courtyardPillProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
|
17967
17982
|
});
|
|
17968
17983
|
|
|
17969
17984
|
// lib/components/copper-pour.ts
|
|
17970
|
-
import { z as
|
|
17985
|
+
import { z as z103 } from "zod";
|
|
17971
17986
|
import { layer_ref as layer_ref8 } from "circuit-json";
|
|
17972
|
-
var copperPourProps =
|
|
17973
|
-
name:
|
|
17987
|
+
var copperPourProps = z103.object({
|
|
17988
|
+
name: z103.string().optional(),
|
|
17974
17989
|
layer: layer_ref8,
|
|
17975
|
-
connectsTo:
|
|
17976
|
-
unbroken:
|
|
17990
|
+
connectsTo: z103.string(),
|
|
17991
|
+
unbroken: z103.boolean().optional(),
|
|
17977
17992
|
padMargin: distance.optional(),
|
|
17978
17993
|
traceMargin: distance.optional(),
|
|
17979
17994
|
clearance: distance.optional(),
|
|
17980
17995
|
boardEdgeMargin: distance.optional(),
|
|
17981
17996
|
cutoutMargin: distance.optional(),
|
|
17982
|
-
outline:
|
|
17983
|
-
coveredWithSolderMask:
|
|
17997
|
+
outline: z103.array(point).optional(),
|
|
17998
|
+
coveredWithSolderMask: z103.boolean().optional().default(true)
|
|
17984
17999
|
});
|
|
17985
18000
|
expectTypesMatch(true);
|
|
17986
18001
|
|
|
17987
18002
|
// lib/components/cadassembly.ts
|
|
17988
18003
|
import { layer_ref as layer_ref9 } from "circuit-json";
|
|
17989
|
-
import { z as
|
|
17990
|
-
var cadassemblyProps =
|
|
18004
|
+
import { z as z104 } from "zod";
|
|
18005
|
+
var cadassemblyProps = z104.object({
|
|
17991
18006
|
originalLayer: layer_ref9.default("top").optional(),
|
|
17992
|
-
children:
|
|
18007
|
+
children: z104.any().optional()
|
|
17993
18008
|
});
|
|
17994
18009
|
expectTypesMatch(true);
|
|
17995
18010
|
|
|
17996
18011
|
// lib/components/cadmodel.ts
|
|
17997
|
-
import { z as
|
|
17998
|
-
var pcbPosition =
|
|
18012
|
+
import { z as z105 } from "zod";
|
|
18013
|
+
var pcbPosition = z105.object({
|
|
17999
18014
|
pcbX: pcbCoordinate.optional(),
|
|
18000
18015
|
pcbY: pcbCoordinate.optional(),
|
|
18001
18016
|
pcbLeftEdgeX: pcbCoordinate.optional(),
|
|
@@ -18012,7 +18027,7 @@ var cadModelBaseWithUrl = cadModelBase.extend({
|
|
|
18012
18027
|
});
|
|
18013
18028
|
var cadModelObject = cadModelBaseWithUrl.merge(pcbPosition);
|
|
18014
18029
|
expectTypesMatch(true);
|
|
18015
|
-
var cadmodelProps =
|
|
18030
|
+
var cadmodelProps = z105.union([z105.null(), url, cadModelObject]);
|
|
18016
18031
|
|
|
18017
18032
|
// lib/components/power-source.ts
|
|
18018
18033
|
import { voltage as voltage3 } from "circuit-json";
|
|
@@ -18022,9 +18037,9 @@ var powerSourceProps = commonComponentProps.extend({
|
|
|
18022
18037
|
|
|
18023
18038
|
// lib/components/voltagesource.ts
|
|
18024
18039
|
import { frequency as frequency4, ms as ms3, rotation as rotation5, voltage as voltage4 } from "circuit-json";
|
|
18025
|
-
import { z as
|
|
18040
|
+
import { z as z106 } from "zod";
|
|
18026
18041
|
var voltageSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
|
|
18027
|
-
var percentage =
|
|
18042
|
+
var percentage = z106.union([z106.string(), z106.number()]).transform((val) => {
|
|
18028
18043
|
if (typeof val === "string") {
|
|
18029
18044
|
if (val.endsWith("%")) {
|
|
18030
18045
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -18033,13 +18048,13 @@ var percentage = z105.union([z105.string(), z105.number()]).transform((val) => {
|
|
|
18033
18048
|
}
|
|
18034
18049
|
return val;
|
|
18035
18050
|
}).pipe(
|
|
18036
|
-
|
|
18051
|
+
z106.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
18037
18052
|
);
|
|
18038
18053
|
var voltageSourceProps = commonComponentProps.extend({
|
|
18039
18054
|
voltage: voltage4.optional(),
|
|
18040
18055
|
frequency: frequency4.optional(),
|
|
18041
18056
|
peakToPeakVoltage: voltage4.optional(),
|
|
18042
|
-
waveShape:
|
|
18057
|
+
waveShape: z106.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
|
|
18043
18058
|
phase: rotation5.optional(),
|
|
18044
18059
|
dutyCycle: percentage.optional(),
|
|
18045
18060
|
pulseDelay: ms3.optional(),
|
|
@@ -18054,9 +18069,9 @@ expectTypesMatch(true);
|
|
|
18054
18069
|
|
|
18055
18070
|
// lib/components/currentsource.ts
|
|
18056
18071
|
import { frequency as frequency5, rotation as rotation6, current } from "circuit-json";
|
|
18057
|
-
import { z as
|
|
18072
|
+
import { z as z107 } from "zod";
|
|
18058
18073
|
var currentSourcePinLabels = ["pin1", "pin2", "pos", "neg"];
|
|
18059
|
-
var percentage2 =
|
|
18074
|
+
var percentage2 = z107.union([z107.string(), z107.number()]).transform((val) => {
|
|
18060
18075
|
if (typeof val === "string") {
|
|
18061
18076
|
if (val.endsWith("%")) {
|
|
18062
18077
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -18065,13 +18080,13 @@ var percentage2 = z106.union([z106.string(), z106.number()]).transform((val) =>
|
|
|
18065
18080
|
}
|
|
18066
18081
|
return val;
|
|
18067
18082
|
}).pipe(
|
|
18068
|
-
|
|
18083
|
+
z107.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
18069
18084
|
);
|
|
18070
18085
|
var currentSourceProps = commonComponentProps.extend({
|
|
18071
18086
|
current: current.optional(),
|
|
18072
18087
|
frequency: frequency5.optional(),
|
|
18073
18088
|
peakToPeakCurrent: current.optional(),
|
|
18074
|
-
waveShape:
|
|
18089
|
+
waveShape: z107.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
|
|
18075
18090
|
phase: rotation6.optional(),
|
|
18076
18091
|
dutyCycle: percentage2.optional(),
|
|
18077
18092
|
connections: createConnectionsProp(currentSourcePinLabels).optional()
|
|
@@ -18080,21 +18095,21 @@ var currentSourcePins = lrPolarPins;
|
|
|
18080
18095
|
expectTypesMatch(true);
|
|
18081
18096
|
|
|
18082
18097
|
// lib/components/voltageprobe.ts
|
|
18083
|
-
import { z as
|
|
18098
|
+
import { z as z108 } from "zod";
|
|
18084
18099
|
var voltageProbeProps = commonComponentProps.omit({ name: true }).extend({
|
|
18085
|
-
name:
|
|
18086
|
-
connectsTo:
|
|
18087
|
-
referenceTo:
|
|
18088
|
-
color:
|
|
18089
|
-
graphDisplayName:
|
|
18090
|
-
graphCenter:
|
|
18091
|
-
graphVerticalOffset:
|
|
18092
|
-
graphVoltagePerDiv:
|
|
18100
|
+
name: z108.string().optional(),
|
|
18101
|
+
connectsTo: z108.string(),
|
|
18102
|
+
referenceTo: z108.string().optional(),
|
|
18103
|
+
color: z108.string().optional(),
|
|
18104
|
+
graphDisplayName: z108.string().optional(),
|
|
18105
|
+
graphCenter: z108.number().optional(),
|
|
18106
|
+
graphVerticalOffset: z108.number().or(z108.string()).optional(),
|
|
18107
|
+
graphVoltagePerDiv: z108.number().or(z108.string()).optional()
|
|
18093
18108
|
});
|
|
18094
18109
|
expectTypesMatch(true);
|
|
18095
18110
|
|
|
18096
18111
|
// lib/components/ammeter.ts
|
|
18097
|
-
import { z as
|
|
18112
|
+
import { z as z109 } from "zod";
|
|
18098
18113
|
var ammeterPinLabels = ["pin1", "pin2", "pos", "neg"];
|
|
18099
18114
|
var hasAmmeterConnectionPair = (connections) => {
|
|
18100
18115
|
return connections.pos !== void 0 && connections.neg !== void 0 || connections.pin1 !== void 0 && connections.pin2 !== void 0;
|
|
@@ -18104,57 +18119,57 @@ var ammeterProps = commonComponentProps.extend({
|
|
|
18104
18119
|
hasAmmeterConnectionPair,
|
|
18105
18120
|
"Ammeter connections must include either pos/neg or pin1/pin2"
|
|
18106
18121
|
),
|
|
18107
|
-
color:
|
|
18108
|
-
graphDisplayName:
|
|
18109
|
-
graphCenter:
|
|
18110
|
-
graphVerticalOffset:
|
|
18111
|
-
graphCurrentPerDiv:
|
|
18122
|
+
color: z109.string().optional(),
|
|
18123
|
+
graphDisplayName: z109.string().optional(),
|
|
18124
|
+
graphCenter: z109.number().optional(),
|
|
18125
|
+
graphVerticalOffset: z109.number().or(z109.string()).optional(),
|
|
18126
|
+
graphCurrentPerDiv: z109.number().or(z109.string()).optional()
|
|
18112
18127
|
});
|
|
18113
18128
|
var ammeterPins = ammeterPinLabels;
|
|
18114
18129
|
expectTypesMatch(true);
|
|
18115
18130
|
|
|
18116
18131
|
// lib/components/schematic-arc.ts
|
|
18117
18132
|
import { distance as distance30, point as point5, rotation as rotation7 } from "circuit-json";
|
|
18118
|
-
import { z as
|
|
18119
|
-
var schematicArcProps =
|
|
18133
|
+
import { z as z110 } from "zod";
|
|
18134
|
+
var schematicArcProps = z110.object({
|
|
18120
18135
|
center: point5,
|
|
18121
18136
|
radius: distance30,
|
|
18122
18137
|
startAngleDegrees: rotation7,
|
|
18123
18138
|
endAngleDegrees: rotation7,
|
|
18124
|
-
direction:
|
|
18139
|
+
direction: z110.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
|
|
18125
18140
|
strokeWidth: distance30.optional(),
|
|
18126
|
-
color:
|
|
18127
|
-
isDashed:
|
|
18141
|
+
color: z110.string().optional(),
|
|
18142
|
+
isDashed: z110.boolean().optional().default(false)
|
|
18128
18143
|
});
|
|
18129
18144
|
expectTypesMatch(true);
|
|
18130
18145
|
|
|
18131
18146
|
// lib/components/toolingrail.ts
|
|
18132
|
-
import { z as
|
|
18133
|
-
var toolingrailProps =
|
|
18134
|
-
children:
|
|
18147
|
+
import { z as z111 } from "zod";
|
|
18148
|
+
var toolingrailProps = z111.object({
|
|
18149
|
+
children: z111.any().optional()
|
|
18135
18150
|
});
|
|
18136
18151
|
expectTypesMatch(true);
|
|
18137
18152
|
|
|
18138
18153
|
// lib/components/schematic-box.ts
|
|
18139
18154
|
import { distance as distance31 } from "circuit-json";
|
|
18140
|
-
import { z as
|
|
18141
|
-
var schematicBoxProps =
|
|
18155
|
+
import { z as z112 } from "zod";
|
|
18156
|
+
var schematicBoxProps = z112.object({
|
|
18142
18157
|
schX: distance31.optional(),
|
|
18143
18158
|
schY: distance31.optional(),
|
|
18144
18159
|
width: distance31.optional(),
|
|
18145
18160
|
height: distance31.optional(),
|
|
18146
|
-
overlay:
|
|
18161
|
+
overlay: z112.array(z112.string()).optional(),
|
|
18147
18162
|
padding: distance31.optional(),
|
|
18148
18163
|
paddingLeft: distance31.optional(),
|
|
18149
18164
|
paddingRight: distance31.optional(),
|
|
18150
18165
|
paddingTop: distance31.optional(),
|
|
18151
18166
|
paddingBottom: distance31.optional(),
|
|
18152
|
-
title:
|
|
18167
|
+
title: z112.string().optional(),
|
|
18153
18168
|
titleAlignment: ninePointAnchor.default("top_left"),
|
|
18154
|
-
titleColor:
|
|
18169
|
+
titleColor: z112.string().optional(),
|
|
18155
18170
|
titleFontSize: distance31.optional(),
|
|
18156
|
-
titleInside:
|
|
18157
|
-
strokeStyle:
|
|
18171
|
+
titleInside: z112.boolean().default(false),
|
|
18172
|
+
strokeStyle: z112.enum(["solid", "dashed"]).default("solid")
|
|
18158
18173
|
}).refine(
|
|
18159
18174
|
(elm) => elm.width !== void 0 && elm.height !== void 0 || Array.isArray(elm.overlay) && elm.overlay.length > 0,
|
|
18160
18175
|
{
|
|
@@ -18170,15 +18185,15 @@ expectTypesMatch(true);
|
|
|
18170
18185
|
|
|
18171
18186
|
// lib/components/schematic-circle.ts
|
|
18172
18187
|
import { distance as distance32, point as point6 } from "circuit-json";
|
|
18173
|
-
import { z as
|
|
18174
|
-
var schematicCircleProps =
|
|
18188
|
+
import { z as z113 } from "zod";
|
|
18189
|
+
var schematicCircleProps = z113.object({
|
|
18175
18190
|
center: point6,
|
|
18176
18191
|
radius: distance32,
|
|
18177
18192
|
strokeWidth: distance32.optional(),
|
|
18178
|
-
color:
|
|
18179
|
-
isFilled:
|
|
18180
|
-
fillColor:
|
|
18181
|
-
isDashed:
|
|
18193
|
+
color: z113.string().optional(),
|
|
18194
|
+
isFilled: z113.boolean().optional().default(false),
|
|
18195
|
+
fillColor: z113.string().optional(),
|
|
18196
|
+
isDashed: z113.boolean().optional().default(false)
|
|
18182
18197
|
});
|
|
18183
18198
|
expectTypesMatch(
|
|
18184
18199
|
true
|
|
@@ -18186,32 +18201,32 @@ expectTypesMatch(
|
|
|
18186
18201
|
|
|
18187
18202
|
// lib/components/schematic-rect.ts
|
|
18188
18203
|
import { distance as distance33, rotation as rotation8 } from "circuit-json";
|
|
18189
|
-
import { z as
|
|
18190
|
-
var schematicRectProps =
|
|
18204
|
+
import { z as z114 } from "zod";
|
|
18205
|
+
var schematicRectProps = z114.object({
|
|
18191
18206
|
schX: distance33.optional(),
|
|
18192
18207
|
schY: distance33.optional(),
|
|
18193
18208
|
width: distance33,
|
|
18194
18209
|
height: distance33,
|
|
18195
18210
|
rotation: rotation8.default(0),
|
|
18196
18211
|
strokeWidth: distance33.optional(),
|
|
18197
|
-
color:
|
|
18198
|
-
isFilled:
|
|
18199
|
-
fillColor:
|
|
18200
|
-
isDashed:
|
|
18212
|
+
color: z114.string().optional(),
|
|
18213
|
+
isFilled: z114.boolean().optional().default(false),
|
|
18214
|
+
fillColor: z114.string().optional(),
|
|
18215
|
+
isDashed: z114.boolean().optional().default(false)
|
|
18201
18216
|
});
|
|
18202
18217
|
expectTypesMatch(true);
|
|
18203
18218
|
|
|
18204
18219
|
// lib/components/schematic-line.ts
|
|
18205
18220
|
import { distance as distance34 } from "circuit-json";
|
|
18206
|
-
import { z as
|
|
18207
|
-
var schematicLineProps =
|
|
18221
|
+
import { z as z115 } from "zod";
|
|
18222
|
+
var schematicLineProps = z115.object({
|
|
18208
18223
|
x1: distance34,
|
|
18209
18224
|
y1: distance34,
|
|
18210
18225
|
x2: distance34,
|
|
18211
18226
|
y2: distance34,
|
|
18212
18227
|
strokeWidth: distance34.optional(),
|
|
18213
|
-
color:
|
|
18214
|
-
isDashed:
|
|
18228
|
+
color: z115.string().optional(),
|
|
18229
|
+
isDashed: z115.boolean().optional().default(false),
|
|
18215
18230
|
dashLength: distance34.optional(),
|
|
18216
18231
|
dashGap: distance34.optional()
|
|
18217
18232
|
});
|
|
@@ -18219,11 +18234,11 @@ expectTypesMatch(true);
|
|
|
18219
18234
|
|
|
18220
18235
|
// lib/components/schematic-text.ts
|
|
18221
18236
|
import { distance as distance35, rotation as rotation9 } from "circuit-json";
|
|
18222
|
-
import { z as
|
|
18237
|
+
import { z as z117 } from "zod";
|
|
18223
18238
|
|
|
18224
18239
|
// lib/common/fivePointAnchor.ts
|
|
18225
|
-
import { z as
|
|
18226
|
-
var fivePointAnchor =
|
|
18240
|
+
import { z as z116 } from "zod";
|
|
18241
|
+
var fivePointAnchor = z116.enum([
|
|
18227
18242
|
"center",
|
|
18228
18243
|
"left",
|
|
18229
18244
|
"right",
|
|
@@ -18232,39 +18247,39 @@ var fivePointAnchor = z115.enum([
|
|
|
18232
18247
|
]);
|
|
18233
18248
|
|
|
18234
18249
|
// lib/components/schematic-text.ts
|
|
18235
|
-
var schematicTextProps =
|
|
18250
|
+
var schematicTextProps = z117.object({
|
|
18236
18251
|
schX: distance35.optional(),
|
|
18237
18252
|
schY: distance35.optional(),
|
|
18238
|
-
text:
|
|
18239
|
-
fontSize:
|
|
18240
|
-
anchor:
|
|
18241
|
-
color:
|
|
18253
|
+
text: z117.string(),
|
|
18254
|
+
fontSize: z117.number().default(1),
|
|
18255
|
+
anchor: z117.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
|
|
18256
|
+
color: z117.string().default("#000000"),
|
|
18242
18257
|
schRotation: rotation9.default(0)
|
|
18243
18258
|
});
|
|
18244
18259
|
expectTypesMatch(true);
|
|
18245
18260
|
|
|
18246
18261
|
// lib/components/schematic-path.ts
|
|
18247
18262
|
import { distance as distance36, point as point7 } from "circuit-json";
|
|
18248
|
-
import { z as
|
|
18249
|
-
var schematicPathProps =
|
|
18250
|
-
points:
|
|
18251
|
-
svgPath:
|
|
18263
|
+
import { z as z118 } from "zod";
|
|
18264
|
+
var schematicPathProps = z118.object({
|
|
18265
|
+
points: z118.array(point7).optional(),
|
|
18266
|
+
svgPath: z118.string().optional(),
|
|
18252
18267
|
strokeWidth: distance36.optional(),
|
|
18253
|
-
strokeColor:
|
|
18268
|
+
strokeColor: z118.string().optional(),
|
|
18254
18269
|
dashLength: distance36.optional(),
|
|
18255
18270
|
dashGap: distance36.optional(),
|
|
18256
|
-
isFilled:
|
|
18257
|
-
fillColor:
|
|
18271
|
+
isFilled: z118.boolean().optional().default(false),
|
|
18272
|
+
fillColor: z118.string().optional()
|
|
18258
18273
|
});
|
|
18259
18274
|
expectTypesMatch(true);
|
|
18260
18275
|
|
|
18261
18276
|
// lib/components/schematic-table.ts
|
|
18262
18277
|
import { distance as distance37 } from "circuit-json";
|
|
18263
|
-
import { z as
|
|
18264
|
-
var schematicTableProps =
|
|
18278
|
+
import { z as z119 } from "zod";
|
|
18279
|
+
var schematicTableProps = z119.object({
|
|
18265
18280
|
schX: distance37.optional(),
|
|
18266
18281
|
schY: distance37.optional(),
|
|
18267
|
-
children:
|
|
18282
|
+
children: z119.any().optional(),
|
|
18268
18283
|
cellPadding: distance37.optional(),
|
|
18269
18284
|
borderWidth: distance37.optional(),
|
|
18270
18285
|
anchor: ninePointAnchor.optional(),
|
|
@@ -18274,34 +18289,34 @@ expectTypesMatch(true);
|
|
|
18274
18289
|
|
|
18275
18290
|
// lib/components/schematic-row.ts
|
|
18276
18291
|
import { distance as distance38 } from "circuit-json";
|
|
18277
|
-
import { z as
|
|
18278
|
-
var schematicRowProps =
|
|
18279
|
-
children:
|
|
18292
|
+
import { z as z120 } from "zod";
|
|
18293
|
+
var schematicRowProps = z120.object({
|
|
18294
|
+
children: z120.any().optional(),
|
|
18280
18295
|
height: distance38.optional()
|
|
18281
18296
|
});
|
|
18282
18297
|
expectTypesMatch(true);
|
|
18283
18298
|
|
|
18284
18299
|
// lib/components/schematic-cell.ts
|
|
18285
18300
|
import { distance as distance39 } from "circuit-json";
|
|
18286
|
-
import { z as
|
|
18287
|
-
var schematicCellProps =
|
|
18288
|
-
children:
|
|
18289
|
-
horizontalAlign:
|
|
18290
|
-
verticalAlign:
|
|
18301
|
+
import { z as z121 } from "zod";
|
|
18302
|
+
var schematicCellProps = z121.object({
|
|
18303
|
+
children: z121.string().optional(),
|
|
18304
|
+
horizontalAlign: z121.enum(["left", "center", "right"]).optional(),
|
|
18305
|
+
verticalAlign: z121.enum(["top", "middle", "bottom"]).optional(),
|
|
18291
18306
|
fontSize: distance39.optional(),
|
|
18292
|
-
rowSpan:
|
|
18293
|
-
colSpan:
|
|
18307
|
+
rowSpan: z121.number().optional(),
|
|
18308
|
+
colSpan: z121.number().optional(),
|
|
18294
18309
|
width: distance39.optional(),
|
|
18295
|
-
text:
|
|
18310
|
+
text: z121.string().optional()
|
|
18296
18311
|
});
|
|
18297
18312
|
expectTypesMatch(true);
|
|
18298
18313
|
|
|
18299
18314
|
// lib/components/schematic-section.ts
|
|
18300
18315
|
import { distance as distance40 } from "circuit-json";
|
|
18301
|
-
import { z as
|
|
18302
|
-
var schematicSectionProps =
|
|
18303
|
-
displayName:
|
|
18304
|
-
name:
|
|
18316
|
+
import { z as z122 } from "zod";
|
|
18317
|
+
var schematicSectionProps = z122.object({
|
|
18318
|
+
displayName: z122.string().optional(),
|
|
18319
|
+
name: z122.string(),
|
|
18305
18320
|
sectionTitleFontSize: distance40.optional()
|
|
18306
18321
|
});
|
|
18307
18322
|
expectTypesMatch(
|
|
@@ -18309,51 +18324,51 @@ expectTypesMatch(
|
|
|
18309
18324
|
);
|
|
18310
18325
|
|
|
18311
18326
|
// lib/components/schematic-sheet.ts
|
|
18312
|
-
import { z as
|
|
18313
|
-
var schematicSheetProps =
|
|
18314
|
-
name:
|
|
18315
|
-
displayName:
|
|
18316
|
-
sheetIndex:
|
|
18317
|
-
children:
|
|
18327
|
+
import { z as z123 } from "zod";
|
|
18328
|
+
var schematicSheetProps = z123.object({
|
|
18329
|
+
name: z123.string(),
|
|
18330
|
+
displayName: z123.string(),
|
|
18331
|
+
sheetIndex: z123.number().optional(),
|
|
18332
|
+
children: z123.any().optional()
|
|
18318
18333
|
});
|
|
18319
18334
|
expectTypesMatch(true);
|
|
18320
18335
|
|
|
18321
18336
|
// lib/components/copper-text.ts
|
|
18322
18337
|
import { layer_ref as layer_ref10, length as length8 } from "circuit-json";
|
|
18323
|
-
import { z as
|
|
18338
|
+
import { z as z124 } from "zod";
|
|
18324
18339
|
var copperTextProps = pcbLayoutProps.extend({
|
|
18325
|
-
text:
|
|
18340
|
+
text: z124.string(),
|
|
18326
18341
|
anchorAlignment: ninePointAnchor.default("center"),
|
|
18327
|
-
font:
|
|
18342
|
+
font: z124.enum(["tscircuit2024"]).optional(),
|
|
18328
18343
|
fontSize: length8.optional(),
|
|
18329
|
-
layers:
|
|
18330
|
-
knockout:
|
|
18331
|
-
mirrored:
|
|
18344
|
+
layers: z124.array(layer_ref10).optional(),
|
|
18345
|
+
knockout: z124.boolean().optional(),
|
|
18346
|
+
mirrored: z124.boolean().optional()
|
|
18332
18347
|
});
|
|
18333
18348
|
|
|
18334
18349
|
// lib/components/silkscreen-text.ts
|
|
18335
18350
|
import { layer_ref as layer_ref11, length as length9 } from "circuit-json";
|
|
18336
|
-
import { z as
|
|
18351
|
+
import { z as z125 } from "zod";
|
|
18337
18352
|
var silkscreenTextProps = pcbLayoutProps.extend({
|
|
18338
|
-
text:
|
|
18353
|
+
text: z125.string(),
|
|
18339
18354
|
anchorAlignment: ninePointAnchor.default("center"),
|
|
18340
|
-
font:
|
|
18355
|
+
font: z125.enum(["tscircuit2024"]).optional(),
|
|
18341
18356
|
fontSize: length9.optional(),
|
|
18342
18357
|
/**
|
|
18343
18358
|
* If true, text will knock out underlying silkscreen
|
|
18344
18359
|
*/
|
|
18345
|
-
isKnockout:
|
|
18360
|
+
isKnockout: z125.boolean().optional(),
|
|
18346
18361
|
knockoutPadding: length9.optional(),
|
|
18347
18362
|
knockoutPaddingLeft: length9.optional(),
|
|
18348
18363
|
knockoutPaddingRight: length9.optional(),
|
|
18349
18364
|
knockoutPaddingTop: length9.optional(),
|
|
18350
18365
|
knockoutPaddingBottom: length9.optional(),
|
|
18351
|
-
layers:
|
|
18366
|
+
layers: z125.array(layer_ref11).optional()
|
|
18352
18367
|
});
|
|
18353
18368
|
|
|
18354
18369
|
// lib/components/silkscreen-path.ts
|
|
18355
18370
|
import { length as length10, route_hint_point as route_hint_point5 } from "circuit-json";
|
|
18356
|
-
import { z as
|
|
18371
|
+
import { z as z126 } from "zod";
|
|
18357
18372
|
var silkscreenPathProps = pcbLayoutProps.omit({
|
|
18358
18373
|
pcbLeftEdgeX: true,
|
|
18359
18374
|
pcbRightEdgeX: true,
|
|
@@ -18365,7 +18380,7 @@ var silkscreenPathProps = pcbLayoutProps.omit({
|
|
|
18365
18380
|
pcbOffsetY: true,
|
|
18366
18381
|
pcbRotation: true
|
|
18367
18382
|
}).extend({
|
|
18368
|
-
route:
|
|
18383
|
+
route: z126.array(route_hint_point5),
|
|
18369
18384
|
strokeWidth: length10.optional()
|
|
18370
18385
|
});
|
|
18371
18386
|
|
|
@@ -18387,10 +18402,10 @@ var silkscreenLineProps = pcbLayoutProps.omit({
|
|
|
18387
18402
|
|
|
18388
18403
|
// lib/components/silkscreen-rect.ts
|
|
18389
18404
|
import { distance as distance42 } from "circuit-json";
|
|
18390
|
-
import { z as
|
|
18405
|
+
import { z as z127 } from "zod";
|
|
18391
18406
|
var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
18392
|
-
filled:
|
|
18393
|
-
stroke:
|
|
18407
|
+
filled: z127.boolean().default(true).optional(),
|
|
18408
|
+
stroke: z127.enum(["dashed", "solid", "none"]).optional(),
|
|
18394
18409
|
strokeWidth: distance42.optional(),
|
|
18395
18410
|
width: distance42,
|
|
18396
18411
|
height: distance42,
|
|
@@ -18399,10 +18414,10 @@ var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
|
18399
18414
|
|
|
18400
18415
|
// lib/components/silkscreen-circle.ts
|
|
18401
18416
|
import { distance as distance43 } from "circuit-json";
|
|
18402
|
-
import { z as
|
|
18417
|
+
import { z as z128 } from "zod";
|
|
18403
18418
|
var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
18404
|
-
isFilled:
|
|
18405
|
-
isOutline:
|
|
18419
|
+
isFilled: z128.boolean().optional(),
|
|
18420
|
+
isOutline: z128.boolean().optional(),
|
|
18406
18421
|
strokeWidth: distance43.optional(),
|
|
18407
18422
|
radius: distance43
|
|
18408
18423
|
});
|
|
@@ -18420,63 +18435,63 @@ expectTypesMatch(true);
|
|
|
18420
18435
|
|
|
18421
18436
|
// lib/components/trace-hint.ts
|
|
18422
18437
|
import { distance as distance44, layer_ref as layer_ref12, route_hint_point as route_hint_point6 } from "circuit-json";
|
|
18423
|
-
import { z as
|
|
18424
|
-
var routeHintPointProps =
|
|
18438
|
+
import { z as z130 } from "zod";
|
|
18439
|
+
var routeHintPointProps = z130.object({
|
|
18425
18440
|
x: distance44,
|
|
18426
18441
|
y: distance44,
|
|
18427
|
-
via:
|
|
18442
|
+
via: z130.boolean().optional(),
|
|
18428
18443
|
toLayer: layer_ref12.optional()
|
|
18429
18444
|
});
|
|
18430
|
-
var traceHintProps =
|
|
18431
|
-
for:
|
|
18445
|
+
var traceHintProps = z130.object({
|
|
18446
|
+
for: z130.string().optional().describe(
|
|
18432
18447
|
"Selector for the port you're targeting, not required if you're inside a trace"
|
|
18433
18448
|
),
|
|
18434
|
-
order:
|
|
18449
|
+
order: z130.number().optional(),
|
|
18435
18450
|
offset: route_hint_point6.or(routeHintPointProps).optional(),
|
|
18436
|
-
offsets:
|
|
18437
|
-
traceWidth:
|
|
18451
|
+
offsets: z130.array(route_hint_point6).or(z130.array(routeHintPointProps)).optional(),
|
|
18452
|
+
traceWidth: z130.number().optional()
|
|
18438
18453
|
});
|
|
18439
18454
|
|
|
18440
18455
|
// lib/components/port.ts
|
|
18441
|
-
import { z as
|
|
18456
|
+
import { z as z131 } from "zod";
|
|
18442
18457
|
var portProps = commonLayoutProps.extend({
|
|
18443
|
-
name:
|
|
18444
|
-
pinNumber:
|
|
18445
|
-
schStemLength:
|
|
18446
|
-
aliases:
|
|
18447
|
-
layer:
|
|
18448
|
-
layers:
|
|
18449
|
-
schX:
|
|
18450
|
-
schY:
|
|
18458
|
+
name: z131.string().optional(),
|
|
18459
|
+
pinNumber: z131.number().optional(),
|
|
18460
|
+
schStemLength: z131.number().optional(),
|
|
18461
|
+
aliases: z131.array(z131.string()).optional(),
|
|
18462
|
+
layer: z131.string().optional(),
|
|
18463
|
+
layers: z131.array(z131.string()).optional(),
|
|
18464
|
+
schX: z131.number().optional(),
|
|
18465
|
+
schY: z131.number().optional(),
|
|
18451
18466
|
direction: direction.optional(),
|
|
18452
|
-
connectsTo:
|
|
18467
|
+
connectsTo: z131.string().or(z131.array(z131.string())).optional(),
|
|
18453
18468
|
kicadPinMetadata: kicadPinMetadata.optional(),
|
|
18454
|
-
hasInversionCircle:
|
|
18469
|
+
hasInversionCircle: z131.boolean().optional()
|
|
18455
18470
|
});
|
|
18456
18471
|
|
|
18457
18472
|
// lib/components/pcb-note-text.ts
|
|
18458
18473
|
import { length as length11 } from "circuit-json";
|
|
18459
|
-
import { z as
|
|
18474
|
+
import { z as z132 } from "zod";
|
|
18460
18475
|
var pcbNoteTextProps = pcbLayoutProps.extend({
|
|
18461
|
-
text:
|
|
18462
|
-
anchorAlignment:
|
|
18463
|
-
font:
|
|
18476
|
+
text: z132.string(),
|
|
18477
|
+
anchorAlignment: z132.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
18478
|
+
font: z132.enum(["tscircuit2024"]).optional(),
|
|
18464
18479
|
fontSize: length11.optional(),
|
|
18465
|
-
color:
|
|
18480
|
+
color: z132.string().optional()
|
|
18466
18481
|
});
|
|
18467
18482
|
expectTypesMatch(true);
|
|
18468
18483
|
|
|
18469
18484
|
// lib/components/pcb-note-rect.ts
|
|
18470
18485
|
import { distance as distance45 } from "circuit-json";
|
|
18471
|
-
import { z as
|
|
18486
|
+
import { z as z133 } from "zod";
|
|
18472
18487
|
var pcbNoteRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
|
|
18473
18488
|
width: distance45,
|
|
18474
18489
|
height: distance45,
|
|
18475
18490
|
strokeWidth: distance45.optional(),
|
|
18476
|
-
isFilled:
|
|
18477
|
-
hasStroke:
|
|
18478
|
-
isStrokeDashed:
|
|
18479
|
-
color:
|
|
18491
|
+
isFilled: z133.boolean().optional(),
|
|
18492
|
+
hasStroke: z133.boolean().optional(),
|
|
18493
|
+
isStrokeDashed: z133.boolean().optional(),
|
|
18494
|
+
color: z133.string().optional(),
|
|
18480
18495
|
cornerRadius: distance45.optional()
|
|
18481
18496
|
});
|
|
18482
18497
|
expectTypesMatch(true);
|
|
@@ -18486,7 +18501,7 @@ import {
|
|
|
18486
18501
|
length as length12,
|
|
18487
18502
|
route_hint_point as route_hint_point7
|
|
18488
18503
|
} from "circuit-json";
|
|
18489
|
-
import { z as
|
|
18504
|
+
import { z as z134 } from "zod";
|
|
18490
18505
|
var pcbNotePathProps = pcbLayoutProps.omit({
|
|
18491
18506
|
pcbLeftEdgeX: true,
|
|
18492
18507
|
pcbRightEdgeX: true,
|
|
@@ -18498,15 +18513,15 @@ var pcbNotePathProps = pcbLayoutProps.omit({
|
|
|
18498
18513
|
pcbOffsetY: true,
|
|
18499
18514
|
pcbRotation: true
|
|
18500
18515
|
}).extend({
|
|
18501
|
-
route:
|
|
18516
|
+
route: z134.array(route_hint_point7),
|
|
18502
18517
|
strokeWidth: length12.optional(),
|
|
18503
|
-
color:
|
|
18518
|
+
color: z134.string().optional()
|
|
18504
18519
|
});
|
|
18505
18520
|
expectTypesMatch(true);
|
|
18506
18521
|
|
|
18507
18522
|
// lib/components/pcb-note-line.ts
|
|
18508
18523
|
import { distance as distance46 } from "circuit-json";
|
|
18509
|
-
import { z as
|
|
18524
|
+
import { z as z135 } from "zod";
|
|
18510
18525
|
var pcbNoteLineProps = pcbLayoutProps.omit({
|
|
18511
18526
|
pcbLeftEdgeX: true,
|
|
18512
18527
|
pcbRightEdgeX: true,
|
|
@@ -18523,15 +18538,15 @@ var pcbNoteLineProps = pcbLayoutProps.omit({
|
|
|
18523
18538
|
x2: distance46,
|
|
18524
18539
|
y2: distance46,
|
|
18525
18540
|
strokeWidth: distance46.optional(),
|
|
18526
|
-
color:
|
|
18527
|
-
isDashed:
|
|
18541
|
+
color: z135.string().optional(),
|
|
18542
|
+
isDashed: z135.boolean().optional()
|
|
18528
18543
|
});
|
|
18529
18544
|
expectTypesMatch(true);
|
|
18530
18545
|
|
|
18531
18546
|
// lib/components/pcb-note-dimension.ts
|
|
18532
18547
|
import { distance as distance47, length as length13 } from "circuit-json";
|
|
18533
|
-
import { z as
|
|
18534
|
-
var dimensionTarget2 =
|
|
18548
|
+
import { z as z136 } from "zod";
|
|
18549
|
+
var dimensionTarget2 = z136.union([z136.string(), point]);
|
|
18535
18550
|
var pcbNoteDimensionProps = pcbLayoutProps.omit({
|
|
18536
18551
|
pcbLeftEdgeX: true,
|
|
18537
18552
|
pcbRightEdgeX: true,
|
|
@@ -18545,101 +18560,101 @@ var pcbNoteDimensionProps = pcbLayoutProps.omit({
|
|
|
18545
18560
|
}).extend({
|
|
18546
18561
|
from: dimensionTarget2,
|
|
18547
18562
|
to: dimensionTarget2,
|
|
18548
|
-
text:
|
|
18563
|
+
text: z136.string().optional(),
|
|
18549
18564
|
offset: distance47.optional(),
|
|
18550
|
-
font:
|
|
18565
|
+
font: z136.enum(["tscircuit2024"]).optional(),
|
|
18551
18566
|
fontSize: length13.optional(),
|
|
18552
|
-
color:
|
|
18567
|
+
color: z136.string().optional(),
|
|
18553
18568
|
arrowSize: distance47.optional(),
|
|
18554
|
-
units:
|
|
18555
|
-
outerEdgeToEdge:
|
|
18556
|
-
centerToCenter:
|
|
18557
|
-
innerEdgeToEdge:
|
|
18569
|
+
units: z136.enum(["in", "mm"]).optional(),
|
|
18570
|
+
outerEdgeToEdge: z136.literal(true).optional(),
|
|
18571
|
+
centerToCenter: z136.literal(true).optional(),
|
|
18572
|
+
innerEdgeToEdge: z136.literal(true).optional()
|
|
18558
18573
|
});
|
|
18559
18574
|
expectTypesMatch(
|
|
18560
18575
|
true
|
|
18561
18576
|
);
|
|
18562
18577
|
|
|
18563
18578
|
// lib/platformConfig.ts
|
|
18564
|
-
import { z as
|
|
18565
|
-
var unvalidatedCircuitJson =
|
|
18566
|
-
var footprintLibraryResult =
|
|
18567
|
-
footprintCircuitJson:
|
|
18579
|
+
import { z as z137 } from "zod";
|
|
18580
|
+
var unvalidatedCircuitJson = z137.array(z137.any()).describe("Circuit JSON");
|
|
18581
|
+
var footprintLibraryResult = z137.object({
|
|
18582
|
+
footprintCircuitJson: z137.array(z137.any()),
|
|
18568
18583
|
cadModel: cadModelProp.optional()
|
|
18569
18584
|
});
|
|
18570
|
-
var pathToCircuitJsonFn =
|
|
18571
|
-
|
|
18572
|
-
|
|
18573
|
-
|
|
18574
|
-
).returns(
|
|
18585
|
+
var pathToCircuitJsonFn = z137.function().args(z137.string()).returns(z137.promise(footprintLibraryResult)).or(
|
|
18586
|
+
z137.function().args(
|
|
18587
|
+
z137.string(),
|
|
18588
|
+
z137.object({ resolvedPcbStyle: pcbStyle.optional() }).optional()
|
|
18589
|
+
).returns(z137.promise(footprintLibraryResult))
|
|
18575
18590
|
).describe("A function that takes a path and returns Circuit JSON");
|
|
18576
|
-
var footprintFileParserEntry =
|
|
18577
|
-
loadFromUrl:
|
|
18591
|
+
var footprintFileParserEntry = z137.object({
|
|
18592
|
+
loadFromUrl: z137.function().args(z137.string()).returns(z137.promise(footprintLibraryResult)).describe(
|
|
18578
18593
|
"A function that takes a footprint file URL and returns Circuit JSON"
|
|
18579
18594
|
)
|
|
18580
18595
|
});
|
|
18581
|
-
var spiceEngineSimulationResult =
|
|
18582
|
-
engineVersionString:
|
|
18596
|
+
var spiceEngineSimulationResult = z137.object({
|
|
18597
|
+
engineVersionString: z137.string().optional(),
|
|
18583
18598
|
simulationResultCircuitJson: unvalidatedCircuitJson
|
|
18584
18599
|
});
|
|
18585
|
-
var spiceEngineZod =
|
|
18586
|
-
simulate:
|
|
18600
|
+
var spiceEngineZod = z137.object({
|
|
18601
|
+
simulate: z137.function().args(z137.string()).returns(z137.promise(spiceEngineSimulationResult)).describe(
|
|
18587
18602
|
"A function that takes a SPICE string and returns a simulation result"
|
|
18588
18603
|
)
|
|
18589
18604
|
});
|
|
18590
|
-
var defaultSpiceEngine =
|
|
18605
|
+
var defaultSpiceEngine = z137.custom(
|
|
18591
18606
|
(value) => typeof value === "string"
|
|
18592
18607
|
);
|
|
18593
|
-
var autorouterInstance =
|
|
18594
|
-
run:
|
|
18595
|
-
getOutputSimpleRouteJson:
|
|
18608
|
+
var autorouterInstance = z137.object({
|
|
18609
|
+
run: z137.function().args().returns(z137.promise(z137.unknown())).describe("Run the autorouter"),
|
|
18610
|
+
getOutputSimpleRouteJson: z137.function().args().returns(z137.promise(z137.any())).describe("Get the resulting SimpleRouteJson")
|
|
18596
18611
|
});
|
|
18597
|
-
var autorouterDefinition =
|
|
18598
|
-
createAutorouter:
|
|
18612
|
+
var autorouterDefinition = z137.object({
|
|
18613
|
+
createAutorouter: z137.function().args(z137.any(), z137.any().optional()).returns(z137.union([autorouterInstance, z137.promise(autorouterInstance)])).describe("Create an autorouter instance")
|
|
18599
18614
|
});
|
|
18600
|
-
var platformFetch =
|
|
18601
|
-
var platformConfig =
|
|
18615
|
+
var platformFetch = z137.custom((value) => typeof value === "function").describe("A fetch-like function to use for platform requests");
|
|
18616
|
+
var platformConfig = z137.object({
|
|
18602
18617
|
partsEngine: partsEngine.optional(),
|
|
18603
18618
|
autorouter: autorouterProp.optional(),
|
|
18604
|
-
autorouterMap:
|
|
18619
|
+
autorouterMap: z137.record(z137.string(), autorouterDefinition).optional(),
|
|
18605
18620
|
registryApiUrl: url.optional(),
|
|
18606
18621
|
cloudAutorouterUrl: url.optional(),
|
|
18607
|
-
projectName:
|
|
18622
|
+
projectName: z137.string().optional(),
|
|
18608
18623
|
projectBaseUrl: url.optional(),
|
|
18609
|
-
version:
|
|
18624
|
+
version: z137.string().optional(),
|
|
18610
18625
|
url: url.optional(),
|
|
18611
|
-
printBoardInformationToSilkscreen:
|
|
18612
|
-
includeBoardFiles:
|
|
18626
|
+
printBoardInformationToSilkscreen: z137.boolean().optional(),
|
|
18627
|
+
includeBoardFiles: z137.array(z137.string()).describe(
|
|
18613
18628
|
'The board files to automatically build with "tsci build", defaults to ["**/*.circuit.tsx"]. Can be an array of files or globs'
|
|
18614
18629
|
).optional(),
|
|
18615
|
-
snapshotsDir:
|
|
18630
|
+
snapshotsDir: z137.string().describe(
|
|
18616
18631
|
'The directory where snapshots are stored for "tsci snapshot", defaults to "tests/__snapshots__"'
|
|
18617
18632
|
).optional(),
|
|
18618
18633
|
defaultSpiceEngine: defaultSpiceEngine.optional(),
|
|
18619
|
-
unitPreference:
|
|
18620
|
-
localCacheEngine:
|
|
18621
|
-
pcbDisabled:
|
|
18622
|
-
routingDisabled:
|
|
18623
|
-
schematicDisabled:
|
|
18624
|
-
partsEngineDisabled:
|
|
18625
|
-
drcChecksDisabled:
|
|
18626
|
-
netlistDrcChecksDisabled:
|
|
18627
|
-
routingDrcChecksDisabled:
|
|
18628
|
-
placementDrcChecksDisabled:
|
|
18629
|
-
pinSpecificationDrcChecksDisabled:
|
|
18630
|
-
spiceEngineMap:
|
|
18631
|
-
footprintLibraryMap:
|
|
18632
|
-
|
|
18633
|
-
|
|
18634
|
+
unitPreference: z137.enum(["mm", "in", "mil"]).optional(),
|
|
18635
|
+
localCacheEngine: z137.any().optional(),
|
|
18636
|
+
pcbDisabled: z137.boolean().optional(),
|
|
18637
|
+
routingDisabled: z137.boolean().optional(),
|
|
18638
|
+
schematicDisabled: z137.boolean().optional(),
|
|
18639
|
+
partsEngineDisabled: z137.boolean().optional(),
|
|
18640
|
+
drcChecksDisabled: z137.boolean().optional(),
|
|
18641
|
+
netlistDrcChecksDisabled: z137.boolean().optional(),
|
|
18642
|
+
routingDrcChecksDisabled: z137.boolean().optional(),
|
|
18643
|
+
placementDrcChecksDisabled: z137.boolean().optional(),
|
|
18644
|
+
pinSpecificationDrcChecksDisabled: z137.boolean().optional(),
|
|
18645
|
+
spiceEngineMap: z137.record(z137.string(), spiceEngineZod).optional(),
|
|
18646
|
+
footprintLibraryMap: z137.record(
|
|
18647
|
+
z137.string(),
|
|
18648
|
+
z137.union([
|
|
18634
18649
|
pathToCircuitJsonFn,
|
|
18635
|
-
|
|
18636
|
-
|
|
18637
|
-
|
|
18650
|
+
z137.record(
|
|
18651
|
+
z137.string(),
|
|
18652
|
+
z137.union([unvalidatedCircuitJson, pathToCircuitJsonFn])
|
|
18638
18653
|
)
|
|
18639
18654
|
])
|
|
18640
18655
|
).optional(),
|
|
18641
|
-
footprintFileParserMap:
|
|
18642
|
-
resolveProjectStaticFileImportUrl:
|
|
18656
|
+
footprintFileParserMap: z137.record(z137.string(), footprintFileParserEntry).optional(),
|
|
18657
|
+
resolveProjectStaticFileImportUrl: z137.function().args(z137.string()).returns(z137.promise(z137.string())).describe(
|
|
18643
18658
|
"A function that returns a string URL for static files for the project"
|
|
18644
18659
|
).optional(),
|
|
18645
18660
|
platformFetch: platformFetch.optional()
|
|
@@ -18756,6 +18771,7 @@ export {
|
|
|
18756
18771
|
inductorPins,
|
|
18757
18772
|
inductorProps,
|
|
18758
18773
|
interconnectProps,
|
|
18774
|
+
internalCircuitProps,
|
|
18759
18775
|
jumperProps,
|
|
18760
18776
|
kicadAt,
|
|
18761
18777
|
kicadEffects,
|