@tscircuit/core 0.0.489 → 0.0.491

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 CHANGED
@@ -12,7 +12,7 @@ import * as _tscircuit_layout from '@tscircuit/layout';
12
12
  import { ConnectivityMap } from 'circuit-json-to-connectivity-map';
13
13
  import { GraphicsObject } from 'graphics-debug';
14
14
 
15
- declare const orderedRenderPhases: readonly ["ReactSubtreesRender", "PcbFootprintStringRender", "InitializePortsFromChildren", "CreateNetsFromProps", "CreateTracesFromProps", "CreateTraceHintsFromProps", "SourceRender", "SourceParentAttachment", "PortMatching", "OptimizeSelectorCache", "SourceTraceRender", "SourceAddConnectivityMapKey", "SchematicComponentRender", "SchematicPortRender", "SchematicPrimitiveRender", "SchematicLayout", "SchematicTraceRender", "SchematicReplaceNetLabelsWithSymbols", "PcbComponentRender", "PcbPrimitiveRender", "PcbFootprintLayout", "PcbPortRender", "PcbPortAttachment", "PcbLayout", "PcbComponentSizeCalculation", "PcbBoardAutoSize", "PcbTraceHintRender", "PcbTraceRender", "PcbRouteNetIslands", "PcbDesignRuleChecks", "CadModelRender", "PartsEngineRender"];
15
+ declare const orderedRenderPhases: readonly ["ReactSubtreesRender", "PcbFootprintStringRender", "InitializePortsFromChildren", "CreateNetsFromProps", "CreateTracesFromProps", "CreateTracesFromNetLabels", "CreateTraceHintsFromProps", "SourceRender", "SourceParentAttachment", "PortMatching", "OptimizeSelectorCache", "SourceTraceRender", "SourceAddConnectivityMapKey", "SchematicComponentRender", "SchematicPortRender", "SchematicPrimitiveRender", "SchematicLayout", "SchematicTraceRender", "SchematicReplaceNetLabelsWithSymbols", "PcbComponentRender", "PcbPrimitiveRender", "PcbFootprintLayout", "PcbPortRender", "PcbPortAttachment", "PcbLayout", "PcbComponentSizeCalculation", "PcbBoardAutoSize", "PcbTraceHintRender", "PcbTraceRender", "PcbRouteNetIslands", "PcbDesignRuleChecks", "CadModelRender", "PartsEngineRender"];
16
16
  type RenderPhase = (typeof orderedRenderPhases)[number];
17
17
  type RenderPhaseFn<K extends RenderPhase = RenderPhase> = `doInitial${K}` | `update${K}` | `remove${K}`;
18
18
  type RenderPhaseStates = Record<RenderPhase, {
@@ -1045,6 +1045,12 @@ declare class Group<Props extends z.ZodType<any, any, any> = typeof groupProps>
1045
1045
  doInitialSourceParentAttachment(): void;
1046
1046
  doInitialPcbComponentRender(): void;
1047
1047
  doInitialPcbPrimitiveRender(): void;
1048
+ _resolvePcbPadding(): {
1049
+ padLeft: number;
1050
+ padRight: number;
1051
+ padTop: number;
1052
+ padBottom: number;
1053
+ };
1048
1054
  doInitialCreateTraceHintsFromProps(): void;
1049
1055
  doInitialSourceAddConnectivityMapKey(): void;
1050
1056
  _areChildSubcircuitsRouted(): boolean;
@@ -1117,7 +1123,7 @@ declare class Board extends Group<typeof boardProps> {
1117
1123
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1118
1124
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1119
1125
  }>>;
1120
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
1126
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
1121
1127
  pcbWidth: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1122
1128
  pcbHeight: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1123
1129
  schWidth: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
@@ -1139,6 +1145,13 @@ declare class Board extends Group<typeof boardProps> {
1139
1145
  flexRow: zod.ZodOptional<zod.ZodBoolean>;
1140
1146
  flexColumn: zod.ZodOptional<zod.ZodBoolean>;
1141
1147
  gap: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>>;
1148
+ padding: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1149
+ paddingLeft: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1150
+ paddingRight: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1151
+ paddingTop: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1152
+ paddingBottom: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1153
+ paddingX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1154
+ paddingY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1142
1155
  width: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1143
1156
  height: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1144
1157
  matchAdapt: zod.ZodOptional<zod.ZodBoolean>;
@@ -1160,6 +1173,13 @@ declare class Board extends Group<typeof boardProps> {
1160
1173
  flexRow?: boolean | undefined;
1161
1174
  flexColumn?: boolean | undefined;
1162
1175
  gap?: string | number | undefined;
1176
+ padding?: number | undefined;
1177
+ paddingLeft?: number | undefined;
1178
+ paddingRight?: number | undefined;
1179
+ paddingTop?: number | undefined;
1180
+ paddingBottom?: number | undefined;
1181
+ paddingX?: number | undefined;
1182
+ paddingY?: number | undefined;
1163
1183
  width?: number | undefined;
1164
1184
  height?: number | undefined;
1165
1185
  matchAdapt?: boolean | undefined;
@@ -1181,6 +1201,13 @@ declare class Board extends Group<typeof boardProps> {
1181
1201
  flexRow?: boolean | undefined;
1182
1202
  flexColumn?: boolean | undefined;
1183
1203
  gap?: string | number | undefined;
1204
+ padding?: string | number | undefined;
1205
+ paddingLeft?: string | number | undefined;
1206
+ paddingRight?: string | number | undefined;
1207
+ paddingTop?: string | number | undefined;
1208
+ paddingBottom?: string | number | undefined;
1209
+ paddingX?: string | number | undefined;
1210
+ paddingY?: string | number | undefined;
1184
1211
  width?: string | number | undefined;
1185
1212
  height?: string | number | undefined;
1186
1213
  matchAdapt?: boolean | undefined;
@@ -1203,6 +1230,13 @@ declare class Board extends Group<typeof boardProps> {
1203
1230
  flexRow: zod.ZodOptional<zod.ZodBoolean>;
1204
1231
  flexColumn: zod.ZodOptional<zod.ZodBoolean>;
1205
1232
  gap: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>>;
1233
+ padding: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1234
+ paddingLeft: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1235
+ paddingRight: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1236
+ paddingTop: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1237
+ paddingBottom: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1238
+ paddingX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1239
+ paddingY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1206
1240
  width: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1207
1241
  height: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1208
1242
  matchAdapt: zod.ZodOptional<zod.ZodBoolean>;
@@ -1224,6 +1258,13 @@ declare class Board extends Group<typeof boardProps> {
1224
1258
  flexRow?: boolean | undefined;
1225
1259
  flexColumn?: boolean | undefined;
1226
1260
  gap?: string | number | undefined;
1261
+ padding?: number | undefined;
1262
+ paddingLeft?: number | undefined;
1263
+ paddingRight?: number | undefined;
1264
+ paddingTop?: number | undefined;
1265
+ paddingBottom?: number | undefined;
1266
+ paddingX?: number | undefined;
1267
+ paddingY?: number | undefined;
1227
1268
  width?: number | undefined;
1228
1269
  height?: number | undefined;
1229
1270
  matchAdapt?: boolean | undefined;
@@ -1245,6 +1286,13 @@ declare class Board extends Group<typeof boardProps> {
1245
1286
  flexRow?: boolean | undefined;
1246
1287
  flexColumn?: boolean | undefined;
1247
1288
  gap?: string | number | undefined;
1289
+ padding?: string | number | undefined;
1290
+ paddingLeft?: string | number | undefined;
1291
+ paddingRight?: string | number | undefined;
1292
+ paddingTop?: string | number | undefined;
1293
+ paddingBottom?: string | number | undefined;
1294
+ paddingX?: string | number | undefined;
1295
+ paddingY?: string | number | undefined;
1248
1296
  width?: string | number | undefined;
1249
1297
  height?: string | number | undefined;
1250
1298
  matchAdapt?: boolean | undefined;
@@ -1297,6 +1345,13 @@ declare class Board extends Group<typeof boardProps> {
1297
1345
  flexRow: zod.ZodOptional<zod.ZodBoolean>;
1298
1346
  flexColumn: zod.ZodOptional<zod.ZodBoolean>;
1299
1347
  gap: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>>;
1348
+ padding: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1349
+ paddingLeft: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1350
+ paddingRight: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1351
+ paddingTop: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1352
+ paddingBottom: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1353
+ paddingX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1354
+ paddingY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1300
1355
  matchAdapt: zod.ZodOptional<zod.ZodBoolean>;
1301
1356
  matchAdaptTemplate: zod.ZodOptional<zod.ZodAny>;
1302
1357
  name: zod.ZodOptional<zod.ZodString>;
@@ -1529,7 +1584,7 @@ declare class Board extends Group<typeof boardProps> {
1529
1584
  schX?: number | undefined;
1530
1585
  schY?: number | undefined;
1531
1586
  schRotation?: number | undefined;
1532
- footprint?: _tscircuit_props.Footprint | undefined;
1587
+ footprint?: _tscircuit_props.FootprintProp | undefined;
1533
1588
  key?: any;
1534
1589
  name?: string | undefined;
1535
1590
  children?: any;
@@ -1549,6 +1604,13 @@ declare class Board extends Group<typeof boardProps> {
1549
1604
  flexRow?: boolean | undefined;
1550
1605
  flexColumn?: boolean | undefined;
1551
1606
  gap?: string | number | undefined;
1607
+ padding?: number | undefined;
1608
+ paddingLeft?: number | undefined;
1609
+ paddingRight?: number | undefined;
1610
+ paddingTop?: number | undefined;
1611
+ paddingBottom?: number | undefined;
1612
+ paddingX?: number | undefined;
1613
+ paddingY?: number | undefined;
1552
1614
  width?: number | undefined;
1553
1615
  height?: number | undefined;
1554
1616
  matchAdapt?: boolean | undefined;
@@ -1574,6 +1636,13 @@ declare class Board extends Group<typeof boardProps> {
1574
1636
  flexRow?: boolean | undefined;
1575
1637
  flexColumn?: boolean | undefined;
1576
1638
  gap?: string | number | undefined;
1639
+ padding?: number | undefined;
1640
+ paddingLeft?: number | undefined;
1641
+ paddingRight?: number | undefined;
1642
+ paddingTop?: number | undefined;
1643
+ paddingBottom?: number | undefined;
1644
+ paddingX?: number | undefined;
1645
+ paddingY?: number | undefined;
1577
1646
  width?: number | undefined;
1578
1647
  height?: number | undefined;
1579
1648
  matchAdapt?: boolean | undefined;
@@ -1596,6 +1665,13 @@ declare class Board extends Group<typeof boardProps> {
1596
1665
  flexRow?: boolean | undefined;
1597
1666
  flexColumn?: boolean | undefined;
1598
1667
  gap?: string | number | undefined;
1668
+ padding?: number | undefined;
1669
+ paddingLeft?: number | undefined;
1670
+ paddingRight?: number | undefined;
1671
+ paddingTop?: number | undefined;
1672
+ paddingBottom?: number | undefined;
1673
+ paddingX?: number | undefined;
1674
+ paddingY?: number | undefined;
1599
1675
  width?: number | undefined;
1600
1676
  height?: number | undefined;
1601
1677
  matchAdapt?: boolean | undefined;
@@ -1678,7 +1754,7 @@ declare class Board extends Group<typeof boardProps> {
1678
1754
  schX?: string | number | undefined;
1679
1755
  schY?: string | number | undefined;
1680
1756
  schRotation?: string | number | undefined;
1681
- footprint?: _tscircuit_props.Footprint | undefined;
1757
+ footprint?: _tscircuit_props.FootprintProp | undefined;
1682
1758
  key?: any;
1683
1759
  name?: string | undefined;
1684
1760
  children?: any;
@@ -1698,6 +1774,13 @@ declare class Board extends Group<typeof boardProps> {
1698
1774
  flexRow?: boolean | undefined;
1699
1775
  flexColumn?: boolean | undefined;
1700
1776
  gap?: string | number | undefined;
1777
+ padding?: string | number | undefined;
1778
+ paddingLeft?: string | number | undefined;
1779
+ paddingRight?: string | number | undefined;
1780
+ paddingTop?: string | number | undefined;
1781
+ paddingBottom?: string | number | undefined;
1782
+ paddingX?: string | number | undefined;
1783
+ paddingY?: string | number | undefined;
1701
1784
  width?: string | number | undefined;
1702
1785
  height?: string | number | undefined;
1703
1786
  matchAdapt?: boolean | undefined;
@@ -1723,6 +1806,13 @@ declare class Board extends Group<typeof boardProps> {
1723
1806
  flexRow?: boolean | undefined;
1724
1807
  flexColumn?: boolean | undefined;
1725
1808
  gap?: string | number | undefined;
1809
+ padding?: string | number | undefined;
1810
+ paddingLeft?: string | number | undefined;
1811
+ paddingRight?: string | number | undefined;
1812
+ paddingTop?: string | number | undefined;
1813
+ paddingBottom?: string | number | undefined;
1814
+ paddingX?: string | number | undefined;
1815
+ paddingY?: string | number | undefined;
1726
1816
  width?: string | number | undefined;
1727
1817
  height?: string | number | undefined;
1728
1818
  matchAdapt?: boolean | undefined;
@@ -1745,6 +1835,13 @@ declare class Board extends Group<typeof boardProps> {
1745
1835
  flexRow?: boolean | undefined;
1746
1836
  flexColumn?: boolean | undefined;
1747
1837
  gap?: string | number | undefined;
1838
+ padding?: string | number | undefined;
1839
+ paddingLeft?: string | number | undefined;
1840
+ paddingRight?: string | number | undefined;
1841
+ paddingTop?: string | number | undefined;
1842
+ paddingBottom?: string | number | undefined;
1843
+ paddingX?: string | number | undefined;
1844
+ paddingY?: string | number | undefined;
1748
1845
  width?: string | number | undefined;
1749
1846
  height?: string | number | undefined;
1750
1847
  matchAdapt?: boolean | undefined;
@@ -1856,7 +1953,7 @@ declare class Capacitor extends NormalComponent<typeof capacitorProps, PassivePo
1856
1953
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1857
1954
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1858
1955
  }>>;
1859
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
1956
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
1860
1957
  } & {
1861
1958
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
1862
1959
  } & {
@@ -2120,7 +2217,7 @@ declare class Capacitor extends NormalComponent<typeof capacitorProps, PassivePo
2120
2217
  schX?: number | undefined;
2121
2218
  schY?: number | undefined;
2122
2219
  schRotation?: number | undefined;
2123
- footprint?: _tscircuit_props.Footprint | undefined;
2220
+ footprint?: _tscircuit_props.FootprintProp | undefined;
2124
2221
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
2125
2222
  key?: any;
2126
2223
  cadModel?: string | {
@@ -2198,7 +2295,7 @@ declare class Capacitor extends NormalComponent<typeof capacitorProps, PassivePo
2198
2295
  schX?: string | number | undefined;
2199
2296
  schY?: string | number | undefined;
2200
2297
  schRotation?: string | number | undefined;
2201
- footprint?: _tscircuit_props.Footprint | undefined;
2298
+ footprint?: _tscircuit_props.FootprintProp | undefined;
2202
2299
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
2203
2300
  key?: any;
2204
2301
  cadModel?: string | {
@@ -2295,7 +2392,7 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
2295
2392
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
2296
2393
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
2297
2394
  }>>;
2298
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
2395
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
2299
2396
  } & {
2300
2397
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
2301
2398
  } & {
@@ -2794,7 +2891,7 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
2794
2891
  schX?: number | undefined;
2795
2892
  schY?: number | undefined;
2796
2893
  schRotation?: number | undefined;
2797
- footprint?: _tscircuit_props.Footprint | undefined;
2894
+ footprint?: _tscircuit_props.FootprintProp | undefined;
2798
2895
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
2799
2896
  key?: any;
2800
2897
  cadModel?: string | {
@@ -2940,7 +3037,7 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
2940
3037
  schX?: string | number | undefined;
2941
3038
  schY?: string | number | undefined;
2942
3039
  schRotation?: string | number | undefined;
2943
- footprint?: _tscircuit_props.Footprint | undefined;
3040
+ footprint?: _tscircuit_props.FootprintProp | undefined;
2944
3041
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
2945
3042
  key?: any;
2946
3043
  cadModel?: string | {
@@ -3104,7 +3201,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3104
3201
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
3105
3202
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
3106
3203
  }>>;
3107
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
3204
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
3108
3205
  } & {
3109
3206
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
3110
3207
  } & {
@@ -3363,7 +3460,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3363
3460
  schX?: number | undefined;
3364
3461
  schY?: number | undefined;
3365
3462
  schRotation?: number | undefined;
3366
- footprint?: _tscircuit_props.Footprint | undefined;
3463
+ footprint?: _tscircuit_props.FootprintProp | undefined;
3367
3464
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
3368
3465
  key?: any;
3369
3466
  cadModel?: string | {
@@ -3439,7 +3536,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3439
3536
  schX?: string | number | undefined;
3440
3537
  schY?: string | number | undefined;
3441
3538
  schRotation?: string | number | undefined;
3442
- footprint?: _tscircuit_props.Footprint | undefined;
3539
+ footprint?: _tscircuit_props.FootprintProp | undefined;
3443
3540
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
3444
3541
  key?: any;
3445
3542
  cadModel?: string | {
@@ -3515,7 +3612,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3515
3612
  schX?: number | undefined;
3516
3613
  schY?: number | undefined;
3517
3614
  schRotation?: number | undefined;
3518
- footprint?: _tscircuit_props.Footprint | undefined;
3615
+ footprint?: _tscircuit_props.FootprintProp | undefined;
3519
3616
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
3520
3617
  key?: any;
3521
3618
  cadModel?: string | {
@@ -3591,7 +3688,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3591
3688
  schX?: string | number | undefined;
3592
3689
  schY?: string | number | undefined;
3593
3690
  schRotation?: string | number | undefined;
3594
- footprint?: _tscircuit_props.Footprint | undefined;
3691
+ footprint?: _tscircuit_props.FootprintProp | undefined;
3595
3692
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
3596
3693
  key?: any;
3597
3694
  cadModel?: string | {
@@ -3672,7 +3769,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3672
3769
  schX?: number | undefined;
3673
3770
  schY?: number | undefined;
3674
3771
  schRotation?: number | undefined;
3675
- footprint?: _tscircuit_props.Footprint | undefined;
3772
+ footprint?: _tscircuit_props.FootprintProp | undefined;
3676
3773
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
3677
3774
  key?: any;
3678
3775
  cadModel?: string | {
@@ -3743,7 +3840,7 @@ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassiveP
3743
3840
  schX?: string | number | undefined;
3744
3841
  schY?: string | number | undefined;
3745
3842
  schRotation?: string | number | undefined;
3746
- footprint?: _tscircuit_props.Footprint | undefined;
3843
+ footprint?: _tscircuit_props.FootprintProp | undefined;
3747
3844
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
3748
3845
  key?: any;
3749
3846
  cadModel?: string | {
@@ -3840,7 +3937,7 @@ declare class Fuse extends NormalComponent<typeof fuseProps, PassivePorts> {
3840
3937
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
3841
3938
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
3842
3939
  }>>;
3843
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
3940
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
3844
3941
  } & {
3845
3942
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
3846
3943
  } & {
@@ -4096,7 +4193,7 @@ declare class Fuse extends NormalComponent<typeof fuseProps, PassivePorts> {
4096
4193
  schX?: number | undefined;
4097
4194
  schY?: number | undefined;
4098
4195
  schRotation?: number | undefined;
4099
- footprint?: _tscircuit_props.Footprint | undefined;
4196
+ footprint?: _tscircuit_props.FootprintProp | undefined;
4100
4197
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
4101
4198
  key?: any;
4102
4199
  cadModel?: string | {
@@ -4170,7 +4267,7 @@ declare class Fuse extends NormalComponent<typeof fuseProps, PassivePorts> {
4170
4267
  schX?: string | number | undefined;
4171
4268
  schY?: string | number | undefined;
4172
4269
  schRotation?: string | number | undefined;
4173
- footprint?: _tscircuit_props.Footprint | undefined;
4270
+ footprint?: _tscircuit_props.FootprintProp | undefined;
4174
4271
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
4175
4272
  key?: any;
4176
4273
  cadModel?: string | {
@@ -4260,7 +4357,7 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
4260
4357
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
4261
4358
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
4262
4359
  }>>;
4263
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
4360
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
4264
4361
  } & {
4265
4362
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
4266
4363
  } & {
@@ -4647,7 +4744,7 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
4647
4744
  schX?: number | undefined;
4648
4745
  schY?: number | undefined;
4649
4746
  schRotation?: number | undefined;
4650
- footprint?: _tscircuit_props.Footprint | undefined;
4747
+ footprint?: _tscircuit_props.FootprintProp | undefined;
4651
4748
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
4652
4749
  key?: any;
4653
4750
  cadModel?: string | {
@@ -4761,7 +4858,7 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
4761
4858
  schX?: string | number | undefined;
4762
4859
  schY?: string | number | undefined;
4763
4860
  schRotation?: string | number | undefined;
4764
- footprint?: _tscircuit_props.Footprint | undefined;
4861
+ footprint?: _tscircuit_props.FootprintProp | undefined;
4765
4862
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
4766
4863
  key?: any;
4767
4864
  cadModel?: string | {
@@ -4895,7 +4992,7 @@ declare class SolderJumper<PinLabels extends string = never> extends NormalCompo
4895
4992
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
4896
4993
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
4897
4994
  }>>;
4898
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
4995
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
4899
4996
  } & {
4900
4997
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
4901
4998
  } & {
@@ -5284,7 +5381,7 @@ declare class SolderJumper<PinLabels extends string = never> extends NormalCompo
5284
5381
  schX?: number | undefined;
5285
5382
  schY?: number | undefined;
5286
5383
  schRotation?: number | undefined;
5287
- footprint?: _tscircuit_props.Footprint | undefined;
5384
+ footprint?: _tscircuit_props.FootprintProp | undefined;
5288
5385
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
5289
5386
  key?: any;
5290
5387
  cadModel?: string | {
@@ -5399,7 +5496,7 @@ declare class SolderJumper<PinLabels extends string = never> extends NormalCompo
5399
5496
  schX?: string | number | undefined;
5400
5497
  schY?: string | number | undefined;
5401
5498
  schRotation?: string | number | undefined;
5402
- footprint?: _tscircuit_props.Footprint | undefined;
5499
+ footprint?: _tscircuit_props.FootprintProp | undefined;
5403
5500
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
5404
5501
  key?: any;
5405
5502
  cadModel?: string | {
@@ -5532,7 +5629,7 @@ declare class Led extends NormalComponent<typeof ledProps, PolarizedPassivePorts
5532
5629
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
5533
5630
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
5534
5631
  }>>;
5535
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
5632
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
5536
5633
  } & {
5537
5634
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
5538
5635
  } & {
@@ -5786,7 +5883,7 @@ declare class Led extends NormalComponent<typeof ledProps, PolarizedPassivePorts
5786
5883
  schX?: number | undefined;
5787
5884
  schY?: number | undefined;
5788
5885
  schRotation?: number | undefined;
5789
- footprint?: _tscircuit_props.Footprint | undefined;
5886
+ footprint?: _tscircuit_props.FootprintProp | undefined;
5790
5887
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
5791
5888
  key?: any;
5792
5889
  cadModel?: string | {
@@ -5859,7 +5956,7 @@ declare class Led extends NormalComponent<typeof ledProps, PolarizedPassivePorts
5859
5956
  schX?: string | number | undefined;
5860
5957
  schY?: string | number | undefined;
5861
5958
  schRotation?: string | number | undefined;
5862
- footprint?: _tscircuit_props.Footprint | undefined;
5959
+ footprint?: _tscircuit_props.FootprintProp | undefined;
5863
5960
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
5864
5961
  key?: any;
5865
5962
  cadModel?: string | {
@@ -5953,7 +6050,7 @@ declare class PowerSource extends NormalComponent<typeof powerSourceProps, Polar
5953
6050
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
5954
6051
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
5955
6052
  }>>;
5956
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
6053
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
5957
6054
  } & {
5958
6055
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
5959
6056
  } & {
@@ -6206,7 +6303,7 @@ declare class PowerSource extends NormalComponent<typeof powerSourceProps, Polar
6206
6303
  schX?: number | undefined;
6207
6304
  schY?: number | undefined;
6208
6305
  schRotation?: number | undefined;
6209
- footprint?: _tscircuit_props.Footprint | undefined;
6306
+ footprint?: _tscircuit_props.FootprintProp | undefined;
6210
6307
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
6211
6308
  key?: any;
6212
6309
  cadModel?: string | {
@@ -6277,7 +6374,7 @@ declare class PowerSource extends NormalComponent<typeof powerSourceProps, Polar
6277
6374
  schX?: string | number | undefined;
6278
6375
  schY?: string | number | undefined;
6279
6376
  schRotation?: string | number | undefined;
6280
- footprint?: _tscircuit_props.Footprint | undefined;
6377
+ footprint?: _tscircuit_props.FootprintProp | undefined;
6281
6378
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
6282
6379
  key?: any;
6283
6380
  cadModel?: string | {
@@ -6367,7 +6464,7 @@ declare class Resistor extends NormalComponent<typeof resistorProps, PassivePort
6367
6464
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
6368
6465
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
6369
6466
  }>>;
6370
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
6467
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
6371
6468
  } & {
6372
6469
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
6373
6470
  } & {
@@ -6625,7 +6722,7 @@ declare class Resistor extends NormalComponent<typeof resistorProps, PassivePort
6625
6722
  schX?: number | undefined;
6626
6723
  schY?: number | undefined;
6627
6724
  schRotation?: number | undefined;
6628
- footprint?: _tscircuit_props.Footprint | undefined;
6725
+ footprint?: _tscircuit_props.FootprintProp | undefined;
6629
6726
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
6630
6727
  key?: any;
6631
6728
  cadModel?: string | {
@@ -6701,7 +6798,7 @@ declare class Resistor extends NormalComponent<typeof resistorProps, PassivePort
6701
6798
  schX?: string | number | undefined;
6702
6799
  schY?: string | number | undefined;
6703
6800
  schRotation?: string | number | undefined;
6704
- footprint?: _tscircuit_props.Footprint | undefined;
6801
+ footprint?: _tscircuit_props.FootprintProp | undefined;
6705
6802
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
6706
6803
  key?: any;
6707
6804
  cadModel?: string | {
@@ -7248,27 +7345,34 @@ declare class NetLabel extends PrimitiveComponent<typeof netLabelProps> {
7248
7345
  zodProps: zod.ZodObject<{
7249
7346
  net: zod.ZodOptional<zod.ZodString>;
7250
7347
  connection: zod.ZodOptional<zod.ZodString>;
7348
+ connectsTo: zod.ZodOptional<zod.ZodUnion<[zod.ZodString, zod.ZodArray<zod.ZodString, "many">]>>;
7251
7349
  schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
7252
7350
  schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
7253
7351
  schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
7254
- anchorSide: zod.ZodOptional<zod.ZodEnum<["left", "up", "right", "down"]>>;
7352
+ anchorSide: zod.ZodOptional<zod.ZodEnum<["left", "top", "right", "bottom"]>>;
7255
7353
  }, "strip", zod.ZodTypeAny, {
7256
7354
  schX?: number | undefined;
7257
7355
  schY?: number | undefined;
7258
7356
  schRotation?: number | undefined;
7259
7357
  net?: string | undefined;
7260
7358
  connection?: string | undefined;
7261
- anchorSide?: "up" | "down" | "left" | "right" | undefined;
7359
+ anchorSide?: "left" | "right" | "top" | "bottom" | undefined;
7360
+ connectsTo?: string | string[] | undefined;
7262
7361
  }, {
7263
7362
  schX?: string | number | undefined;
7264
7363
  schY?: string | number | undefined;
7265
7364
  schRotation?: string | number | undefined;
7266
7365
  net?: string | undefined;
7267
7366
  connection?: string | undefined;
7268
- anchorSide?: "up" | "down" | "left" | "right" | undefined;
7367
+ anchorSide?: "left" | "right" | "top" | "bottom" | undefined;
7368
+ connectsTo?: string | string[] | undefined;
7269
7369
  }>;
7270
7370
  };
7271
7371
  doInitialSchematicComponentRender(): void;
7372
+ _resolveConnectsTo(): string[] | undefined;
7373
+ _getNetName(): string;
7374
+ doInitialCreateNetsFromProps(): void;
7375
+ doInitialCreateTracesFromNetLabels(): void;
7272
7376
  }
7273
7377
 
7274
7378
  declare class PlatedHole extends PrimitiveComponent<typeof platedHoleProps> {
@@ -8578,7 +8682,7 @@ declare class Via extends PrimitiveComponent<typeof viaProps> {
8578
8682
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
8579
8683
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
8580
8684
  }>>;
8581
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
8685
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
8582
8686
  } & {
8583
8687
  fromLayer: zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
8584
8688
  name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
@@ -8612,7 +8716,7 @@ declare class Via extends PrimitiveComponent<typeof viaProps> {
8612
8716
  schX?: number | undefined;
8613
8717
  schY?: number | undefined;
8614
8718
  schRotation?: number | undefined;
8615
- footprint?: _tscircuit_props.Footprint | undefined;
8719
+ footprint?: _tscircuit_props.FootprintProp | undefined;
8616
8720
  }, {
8617
8721
  holeDiameter: string | number;
8618
8722
  outerDiameter: string | number;
@@ -8631,7 +8735,7 @@ declare class Via extends PrimitiveComponent<typeof viaProps> {
8631
8735
  schX?: string | number | undefined;
8632
8736
  schY?: string | number | undefined;
8633
8737
  schRotation?: string | number | undefined;
8634
- footprint?: _tscircuit_props.Footprint | undefined;
8738
+ footprint?: _tscircuit_props.FootprintProp | undefined;
8635
8739
  }>;
8636
8740
  };
8637
8741
  getAvailablePcbLayers(): string[];
@@ -8817,7 +8921,7 @@ declare class Battery extends NormalComponent<typeof batteryProps, PassivePorts>
8817
8921
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
8818
8922
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
8819
8923
  }>>;
8820
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
8924
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
8821
8925
  } & {
8822
8926
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
8823
8927
  } & {
@@ -9069,7 +9173,7 @@ declare class Battery extends NormalComponent<typeof batteryProps, PassivePorts>
9069
9173
  schX?: number | undefined;
9070
9174
  schY?: number | undefined;
9071
9175
  schRotation?: number | undefined;
9072
- footprint?: _tscircuit_props.Footprint | undefined;
9176
+ footprint?: _tscircuit_props.FootprintProp | undefined;
9073
9177
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
9074
9178
  key?: any;
9075
9179
  cadModel?: string | {
@@ -9140,7 +9244,7 @@ declare class Battery extends NormalComponent<typeof batteryProps, PassivePorts>
9140
9244
  schX?: string | number | undefined;
9141
9245
  schY?: string | number | undefined;
9142
9246
  schRotation?: string | number | undefined;
9143
- footprint?: _tscircuit_props.Footprint | undefined;
9247
+ footprint?: _tscircuit_props.FootprintProp | undefined;
9144
9248
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
9145
9249
  key?: any;
9146
9250
  cadModel?: string | {
@@ -9226,7 +9330,7 @@ declare class PinHeader extends NormalComponent<typeof pinHeaderProps> {
9226
9330
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
9227
9331
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
9228
9332
  }>>;
9229
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
9333
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
9230
9334
  } & {
9231
9335
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
9232
9336
  } & {
@@ -9590,7 +9694,7 @@ declare class PinHeader extends NormalComponent<typeof pinHeaderProps> {
9590
9694
  schX?: number | undefined;
9591
9695
  schY?: number | undefined;
9592
9696
  schRotation?: number | undefined;
9593
- footprint?: _tscircuit_props.Footprint | undefined;
9697
+ footprint?: _tscircuit_props.FootprintProp | undefined;
9594
9698
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
9595
9699
  key?: any;
9596
9700
  cadModel?: string | {
@@ -9696,7 +9800,7 @@ declare class PinHeader extends NormalComponent<typeof pinHeaderProps> {
9696
9800
  schX?: string | number | undefined;
9697
9801
  schY?: string | number | undefined;
9698
9802
  schRotation?: string | number | undefined;
9699
- footprint?: _tscircuit_props.Footprint | undefined;
9803
+ footprint?: _tscircuit_props.FootprintProp | undefined;
9700
9804
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
9701
9805
  key?: any;
9702
9806
  cadModel?: string | {
@@ -9820,7 +9924,7 @@ declare class Resonator extends NormalComponent<typeof resonatorProps> {
9820
9924
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
9821
9925
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
9822
9926
  }>>;
9823
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
9927
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
9824
9928
  } & {
9825
9929
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
9826
9930
  } & {
@@ -10076,7 +10180,7 @@ declare class Resonator extends NormalComponent<typeof resonatorProps> {
10076
10180
  schX?: number | undefined;
10077
10181
  schY?: number | undefined;
10078
10182
  schRotation?: number | undefined;
10079
- footprint?: _tscircuit_props.Footprint | undefined;
10183
+ footprint?: _tscircuit_props.FootprintProp | undefined;
10080
10184
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
10081
10185
  key?: any;
10082
10186
  cadModel?: string | {
@@ -10149,7 +10253,7 @@ declare class Resonator extends NormalComponent<typeof resonatorProps> {
10149
10253
  schX?: string | number | undefined;
10150
10254
  schY?: string | number | undefined;
10151
10255
  schRotation?: string | number | undefined;
10152
- footprint?: _tscircuit_props.Footprint | undefined;
10256
+ footprint?: _tscircuit_props.FootprintProp | undefined;
10153
10257
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
10154
10258
  key?: any;
10155
10259
  cadModel?: string | {
@@ -10235,7 +10339,7 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
10235
10339
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
10236
10340
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
10237
10341
  }>>;
10238
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
10342
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
10239
10343
  } & {
10240
10344
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
10241
10345
  } & {
@@ -10478,6 +10582,7 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
10478
10582
  doNotPlace: zod.ZodOptional<zod.ZodBoolean>;
10479
10583
  } & {
10480
10584
  inductance: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
10585
+ maxCurrentRating: zod.ZodOptional<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>>;
10481
10586
  }, "strip", zod.ZodTypeAny, {
10482
10587
  name: string;
10483
10588
  inductance: number;
@@ -10488,7 +10593,7 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
10488
10593
  schX?: number | undefined;
10489
10594
  schY?: number | undefined;
10490
10595
  schRotation?: number | undefined;
10491
- footprint?: _tscircuit_props.Footprint | undefined;
10596
+ footprint?: _tscircuit_props.FootprintProp | undefined;
10492
10597
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
10493
10598
  key?: any;
10494
10599
  cadModel?: string | {
@@ -10547,6 +10652,7 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
10547
10652
  children?: any;
10548
10653
  symbolName?: string | undefined;
10549
10654
  doNotPlace?: boolean | undefined;
10655
+ maxCurrentRating?: string | number | undefined;
10550
10656
  }, {
10551
10657
  name: string;
10552
10658
  inductance: string | number;
@@ -10559,7 +10665,7 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
10559
10665
  schX?: string | number | undefined;
10560
10666
  schY?: string | number | undefined;
10561
10667
  schRotation?: string | number | undefined;
10562
- footprint?: _tscircuit_props.Footprint | undefined;
10668
+ footprint?: _tscircuit_props.FootprintProp | undefined;
10563
10669
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
10564
10670
  key?: any;
10565
10671
  cadModel?: string | {
@@ -10618,6 +10724,7 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
10618
10724
  children?: any;
10619
10725
  symbolName?: string | undefined;
10620
10726
  doNotPlace?: boolean | undefined;
10727
+ maxCurrentRating?: string | number | undefined;
10621
10728
  }>;
10622
10729
  sourceFtype: "simple_inductor";
10623
10730
  };
@@ -10646,7 +10753,7 @@ declare class Potentiometer extends NormalComponent<typeof potentiometerProps> {
10646
10753
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
10647
10754
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
10648
10755
  }>>;
10649
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
10756
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
10650
10757
  } & {
10651
10758
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
10652
10759
  } & {
@@ -10900,7 +11007,7 @@ declare class Potentiometer extends NormalComponent<typeof potentiometerProps> {
10900
11007
  schX?: number | undefined;
10901
11008
  schY?: number | undefined;
10902
11009
  schRotation?: number | undefined;
10903
- footprint?: _tscircuit_props.Footprint | undefined;
11010
+ footprint?: _tscircuit_props.FootprintProp | undefined;
10904
11011
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
10905
11012
  key?: any;
10906
11013
  cadModel?: string | {
@@ -10972,7 +11079,7 @@ declare class Potentiometer extends NormalComponent<typeof potentiometerProps> {
10972
11079
  schX?: string | number | undefined;
10973
11080
  schY?: string | number | undefined;
10974
11081
  schRotation?: string | number | undefined;
10975
- footprint?: _tscircuit_props.Footprint | undefined;
11082
+ footprint?: _tscircuit_props.FootprintProp | undefined;
10976
11083
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
10977
11084
  key?: any;
10978
11085
  cadModel?: string | {
@@ -11059,7 +11166,7 @@ declare class PushButton extends NormalComponent<typeof pushButtonProps, Passive
11059
11166
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11060
11167
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11061
11168
  }>>;
11062
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
11169
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
11063
11170
  } & {
11064
11171
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
11065
11172
  } & {
@@ -11558,7 +11665,7 @@ declare class PushButton extends NormalComponent<typeof pushButtonProps, Passive
11558
11665
  schX?: number | undefined;
11559
11666
  schY?: number | undefined;
11560
11667
  schRotation?: number | undefined;
11561
- footprint?: _tscircuit_props.Footprint | undefined;
11668
+ footprint?: _tscircuit_props.FootprintProp | undefined;
11562
11669
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
11563
11670
  key?: any;
11564
11671
  cadModel?: string | {
@@ -11704,7 +11811,7 @@ declare class PushButton extends NormalComponent<typeof pushButtonProps, Passive
11704
11811
  schX?: string | number | undefined;
11705
11812
  schY?: string | number | undefined;
11706
11813
  schRotation?: string | number | undefined;
11707
- footprint?: _tscircuit_props.Footprint | undefined;
11814
+ footprint?: _tscircuit_props.FootprintProp | undefined;
11708
11815
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
11709
11816
  key?: any;
11710
11817
  cadModel?: string | {
@@ -11867,7 +11974,7 @@ declare class Crystal extends NormalComponent<typeof crystalProps, PolarizedPass
11867
11974
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11868
11975
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11869
11976
  }>>;
11870
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
11977
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
11871
11978
  } & {
11872
11979
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
11873
11980
  } & {
@@ -12123,7 +12230,7 @@ declare class Crystal extends NormalComponent<typeof crystalProps, PolarizedPass
12123
12230
  schX?: number | undefined;
12124
12231
  schY?: number | undefined;
12125
12232
  schRotation?: number | undefined;
12126
- footprint?: _tscircuit_props.Footprint | undefined;
12233
+ footprint?: _tscircuit_props.FootprintProp | undefined;
12127
12234
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
12128
12235
  key?: any;
12129
12236
  cadModel?: string | {
@@ -12196,7 +12303,7 @@ declare class Crystal extends NormalComponent<typeof crystalProps, PolarizedPass
12196
12303
  schX?: string | number | undefined;
12197
12304
  schY?: string | number | undefined;
12198
12305
  schRotation?: string | number | undefined;
12199
- footprint?: _tscircuit_props.Footprint | undefined;
12306
+ footprint?: _tscircuit_props.FootprintProp | undefined;
12200
12307
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
12201
12308
  key?: any;
12202
12309
  cadModel?: string | {
@@ -12284,7 +12391,7 @@ declare class Transistor extends NormalComponent<typeof transistorProps, Transis
12284
12391
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
12285
12392
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
12286
12393
  }>>;
12287
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
12394
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
12288
12395
  } & {
12289
12396
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
12290
12397
  } & {
@@ -12526,9 +12633,9 @@ declare class Transistor extends NormalComponent<typeof transistorProps, Transis
12526
12633
  symbolName: zod.ZodOptional<zod.ZodString>;
12527
12634
  doNotPlace: zod.ZodOptional<zod.ZodBoolean>;
12528
12635
  } & {
12529
- type: zod.ZodEnum<["npn", "pnp", "bjt", "jfet", "mosfet"]>;
12636
+ type: zod.ZodEnum<["npn", "pnp", "bjt", "jfet", "mosfet", "igbt"]>;
12530
12637
  }, "strip", zod.ZodTypeAny, {
12531
- type: "npn" | "pnp" | "bjt" | "jfet" | "mosfet";
12638
+ type: "npn" | "pnp" | "bjt" | "jfet" | "mosfet" | "igbt";
12532
12639
  name: string;
12533
12640
  pcbX?: number | undefined;
12534
12641
  pcbY?: number | undefined;
@@ -12537,7 +12644,7 @@ declare class Transistor extends NormalComponent<typeof transistorProps, Transis
12537
12644
  schX?: number | undefined;
12538
12645
  schY?: number | undefined;
12539
12646
  schRotation?: number | undefined;
12540
- footprint?: _tscircuit_props.Footprint | undefined;
12647
+ footprint?: _tscircuit_props.FootprintProp | undefined;
12541
12648
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
12542
12649
  key?: any;
12543
12650
  cadModel?: string | {
@@ -12597,7 +12704,7 @@ declare class Transistor extends NormalComponent<typeof transistorProps, Transis
12597
12704
  symbolName?: string | undefined;
12598
12705
  doNotPlace?: boolean | undefined;
12599
12706
  }, {
12600
- type: "npn" | "pnp" | "bjt" | "jfet" | "mosfet";
12707
+ type: "npn" | "pnp" | "bjt" | "jfet" | "mosfet" | "igbt";
12601
12708
  name: string;
12602
12709
  pcbX?: string | number | undefined;
12603
12710
  pcbY?: string | number | undefined;
@@ -12608,7 +12715,7 @@ declare class Transistor extends NormalComponent<typeof transistorProps, Transis
12608
12715
  schX?: string | number | undefined;
12609
12716
  schY?: string | number | undefined;
12610
12717
  schRotation?: string | number | undefined;
12611
- footprint?: _tscircuit_props.Footprint | undefined;
12718
+ footprint?: _tscircuit_props.FootprintProp | undefined;
12612
12719
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
12613
12720
  key?: any;
12614
12721
  cadModel?: string | {
@@ -12698,7 +12805,7 @@ declare class Mosfet extends NormalComponent<typeof mosfetProps> {
12698
12805
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
12699
12806
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
12700
12807
  }>>;
12701
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
12808
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
12702
12809
  } & {
12703
12810
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
12704
12811
  } & {
@@ -12953,7 +13060,7 @@ declare class Mosfet extends NormalComponent<typeof mosfetProps> {
12953
13060
  schX?: number | undefined;
12954
13061
  schY?: number | undefined;
12955
13062
  schRotation?: number | undefined;
12956
- footprint?: _tscircuit_props.Footprint | undefined;
13063
+ footprint?: _tscircuit_props.FootprintProp | undefined;
12957
13064
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
12958
13065
  key?: any;
12959
13066
  cadModel?: string | {
@@ -13025,7 +13132,7 @@ declare class Mosfet extends NormalComponent<typeof mosfetProps> {
13025
13132
  schX?: string | number | undefined;
13026
13133
  schY?: string | number | undefined;
13027
13134
  schRotation?: string | number | undefined;
13028
- footprint?: _tscircuit_props.Footprint | undefined;
13135
+ footprint?: _tscircuit_props.FootprintProp | undefined;
13029
13136
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
13030
13137
  key?: any;
13031
13138
  cadModel?: string | {
@@ -13111,7 +13218,7 @@ declare class Switch extends NormalComponent<typeof switchProps> {
13111
13218
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
13112
13219
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
13113
13220
  }>>;
13114
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
13221
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
13115
13222
  } & {
13116
13223
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
13117
13224
  } & {
@@ -13370,7 +13477,7 @@ declare class Switch extends NormalComponent<typeof switchProps> {
13370
13477
  schX?: number | undefined;
13371
13478
  schY?: number | undefined;
13372
13479
  schRotation?: number | undefined;
13373
- footprint?: _tscircuit_props.Footprint | undefined;
13480
+ footprint?: _tscircuit_props.FootprintProp | undefined;
13374
13481
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
13375
13482
  key?: any;
13376
13483
  cadModel?: string | {
@@ -13445,7 +13552,7 @@ declare class Switch extends NormalComponent<typeof switchProps> {
13445
13552
  schX?: string | number | undefined;
13446
13553
  schY?: string | number | undefined;
13447
13554
  schRotation?: string | number | undefined;
13448
- footprint?: _tscircuit_props.Footprint | undefined;
13555
+ footprint?: _tscircuit_props.FootprintProp | undefined;
13449
13556
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
13450
13557
  key?: any;
13451
13558
  cadModel?: string | {
@@ -13521,7 +13628,7 @@ declare class Switch extends NormalComponent<typeof switchProps> {
13521
13628
  schX?: string | number | undefined;
13522
13629
  schY?: string | number | undefined;
13523
13630
  schRotation?: string | number | undefined;
13524
- footprint?: _tscircuit_props.Footprint | undefined;
13631
+ footprint?: _tscircuit_props.FootprintProp | undefined;
13525
13632
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
13526
13633
  key?: any;
13527
13634
  cadModel?: string | {
@@ -13611,7 +13718,7 @@ declare class TestPoint extends NormalComponent<typeof testpointProps> {
13611
13718
  }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
13612
13719
  name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
13613
13720
  }>>;
13614
- footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
13721
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.FootprintProp, zod.ZodTypeDef, _tscircuit_props.FootprintProp>>;
13615
13722
  } & {
13616
13723
  supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
13617
13724
  } & {
@@ -13869,7 +13976,7 @@ declare class TestPoint extends NormalComponent<typeof testpointProps> {
13869
13976
  schX?: number | undefined;
13870
13977
  schY?: number | undefined;
13871
13978
  schRotation?: number | undefined;
13872
- footprint?: _tscircuit_props.Footprint | undefined;
13979
+ footprint?: _tscircuit_props.FootprintProp | undefined;
13873
13980
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
13874
13981
  key?: any;
13875
13982
  cadModel?: string | {
@@ -13944,7 +14051,7 @@ declare class TestPoint extends NormalComponent<typeof testpointProps> {
13944
14051
  schX?: string | number | undefined;
13945
14052
  schY?: string | number | undefined;
13946
14053
  schRotation?: string | number | undefined;
13947
- footprint?: _tscircuit_props.Footprint | undefined;
14054
+ footprint?: _tscircuit_props.FootprintProp | undefined;
13948
14055
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
13949
14056
  key?: any;
13950
14057
  cadModel?: string | {
@@ -14019,7 +14126,7 @@ declare class TestPoint extends NormalComponent<typeof testpointProps> {
14019
14126
  schX?: number | undefined;
14020
14127
  schY?: number | undefined;
14021
14128
  schRotation?: number | undefined;
14022
- footprint?: _tscircuit_props.Footprint | undefined;
14129
+ footprint?: _tscircuit_props.FootprintProp | undefined;
14023
14130
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
14024
14131
  key?: any;
14025
14132
  cadModel?: string | {
@@ -14094,7 +14201,7 @@ declare class TestPoint extends NormalComponent<typeof testpointProps> {
14094
14201
  schX?: string | number | undefined;
14095
14202
  schY?: string | number | undefined;
14096
14203
  schRotation?: string | number | undefined;
14097
- footprint?: _tscircuit_props.Footprint | undefined;
14204
+ footprint?: _tscircuit_props.FootprintProp | undefined;
14098
14205
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
14099
14206
  key?: any;
14100
14207
  cadModel?: string | {
@@ -14227,13 +14334,13 @@ declare class SchematicBox extends PrimitiveComponent<typeof schematicBoxProps>
14227
14334
  titleAlignment: "center" | "top_left" | "top_right" | "bottom_left" | "bottom_right" | "top_center" | "center_left" | "center_right" | "bottom_center";
14228
14335
  titleInside: boolean;
14229
14336
  strokeStyle: "dashed" | "solid";
14230
- width?: number | undefined;
14231
- height?: number | undefined;
14232
14337
  padding?: number | undefined;
14233
14338
  paddingLeft?: number | undefined;
14234
14339
  paddingRight?: number | undefined;
14235
14340
  paddingTop?: number | undefined;
14236
14341
  paddingBottom?: number | undefined;
14342
+ width?: number | undefined;
14343
+ height?: number | undefined;
14237
14344
  overlay?: string[] | undefined;
14238
14345
  title?: string | undefined;
14239
14346
  titleColor?: string | undefined;
@@ -14241,13 +14348,13 @@ declare class SchematicBox extends PrimitiveComponent<typeof schematicBoxProps>
14241
14348
  }, {
14242
14349
  schX: string | number;
14243
14350
  schY: string | number;
14244
- width?: string | number | undefined;
14245
- height?: string | number | undefined;
14246
14351
  padding?: string | number | undefined;
14247
14352
  paddingLeft?: string | number | undefined;
14248
14353
  paddingRight?: string | number | undefined;
14249
14354
  paddingTop?: string | number | undefined;
14250
14355
  paddingBottom?: string | number | undefined;
14356
+ width?: string | number | undefined;
14357
+ height?: string | number | undefined;
14251
14358
  overlay?: string[] | undefined;
14252
14359
  title?: string | undefined;
14253
14360
  titleAlignment?: "center" | "top_left" | "top_right" | "bottom_left" | "bottom_right" | "top_center" | "center_left" | "center_right" | "bottom_center" | undefined;
@@ -14261,13 +14368,13 @@ declare class SchematicBox extends PrimitiveComponent<typeof schematicBoxProps>
14261
14368
  titleAlignment: "center" | "top_left" | "top_right" | "bottom_left" | "bottom_right" | "top_center" | "center_left" | "center_right" | "bottom_center";
14262
14369
  titleInside: boolean;
14263
14370
  strokeStyle: "dashed" | "solid";
14264
- width?: number | undefined;
14265
- height?: number | undefined;
14266
14371
  padding?: number | undefined;
14267
14372
  paddingLeft?: number | undefined;
14268
14373
  paddingRight?: number | undefined;
14269
14374
  paddingTop?: number | undefined;
14270
14375
  paddingBottom?: number | undefined;
14376
+ width?: number | undefined;
14377
+ height?: number | undefined;
14271
14378
  overlay?: string[] | undefined;
14272
14379
  title?: string | undefined;
14273
14380
  titleColor?: string | undefined;
@@ -14275,13 +14382,13 @@ declare class SchematicBox extends PrimitiveComponent<typeof schematicBoxProps>
14275
14382
  }, {
14276
14383
  schX: string | number;
14277
14384
  schY: string | number;
14278
- width?: string | number | undefined;
14279
- height?: string | number | undefined;
14280
14385
  padding?: string | number | undefined;
14281
14386
  paddingLeft?: string | number | undefined;
14282
14387
  paddingRight?: string | number | undefined;
14283
14388
  paddingTop?: string | number | undefined;
14284
14389
  paddingBottom?: string | number | undefined;
14390
+ width?: string | number | undefined;
14391
+ height?: string | number | undefined;
14285
14392
  overlay?: string[] | undefined;
14286
14393
  title?: string | undefined;
14287
14394
  titleAlignment?: "center" | "top_left" | "top_right" | "bottom_left" | "bottom_right" | "top_center" | "center_left" | "center_right" | "bottom_center" | undefined;
@@ -14295,13 +14402,13 @@ declare class SchematicBox extends PrimitiveComponent<typeof schematicBoxProps>
14295
14402
  titleAlignment: "center" | "top_left" | "top_right" | "bottom_left" | "bottom_right" | "top_center" | "center_left" | "center_right" | "bottom_center";
14296
14403
  titleInside: boolean;
14297
14404
  strokeStyle: "dashed" | "solid";
14298
- width?: number | undefined;
14299
- height?: number | undefined;
14300
14405
  padding?: number | undefined;
14301
14406
  paddingLeft?: number | undefined;
14302
14407
  paddingRight?: number | undefined;
14303
14408
  paddingTop?: number | undefined;
14304
14409
  paddingBottom?: number | undefined;
14410
+ width?: number | undefined;
14411
+ height?: number | undefined;
14305
14412
  overlay?: string[] | undefined;
14306
14413
  title?: string | undefined;
14307
14414
  titleColor?: string | undefined;
@@ -14309,13 +14416,13 @@ declare class SchematicBox extends PrimitiveComponent<typeof schematicBoxProps>
14309
14416
  }, {
14310
14417
  schX: string | number;
14311
14418
  schY: string | number;
14312
- width?: string | number | undefined;
14313
- height?: string | number | undefined;
14314
14419
  padding?: string | number | undefined;
14315
14420
  paddingLeft?: string | number | undefined;
14316
14421
  paddingRight?: string | number | undefined;
14317
14422
  paddingTop?: string | number | undefined;
14318
14423
  paddingBottom?: string | number | undefined;
14424
+ width?: string | number | undefined;
14425
+ height?: string | number | undefined;
14319
14426
  overlay?: string[] | undefined;
14320
14427
  title?: string | undefined;
14321
14428
  titleAlignment?: "center" | "top_left" | "top_right" | "bottom_left" | "bottom_right" | "top_center" | "center_left" | "center_right" | "bottom_center" | undefined;
@@ -14363,7 +14470,7 @@ declare const useLed: <PropsFromHook extends Omit<{
14363
14470
  schX?: string | number | undefined;
14364
14471
  schY?: string | number | undefined;
14365
14472
  schRotation?: string | number | undefined;
14366
- footprint?: _tscircuit_props.Footprint | undefined;
14473
+ footprint?: _tscircuit_props.FootprintProp | undefined;
14367
14474
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
14368
14475
  key?: any;
14369
14476
  cadModel?: string | {
@@ -14436,7 +14543,7 @@ declare const useLed: <PropsFromHook extends Omit<{
14436
14543
  schX?: string | number | undefined;
14437
14544
  schY?: string | number | undefined;
14438
14545
  schRotation?: string | number | undefined;
14439
- footprint?: _tscircuit_props.Footprint | undefined;
14546
+ footprint?: _tscircuit_props.FootprintProp | undefined;
14440
14547
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
14441
14548
  key?: any;
14442
14549
  cadModel?: string | {
package/dist/index.js CHANGED
@@ -85,6 +85,7 @@ var orderedRenderPhases = [
85
85
  "InitializePortsFromChildren",
86
86
  "CreateNetsFromProps",
87
87
  "CreateTracesFromProps",
88
+ "CreateTracesFromNetLabels",
88
89
  "CreateTraceHintsFromProps",
89
90
  "SourceRender",
90
91
  "SourceParentAttachment",
@@ -6215,7 +6216,6 @@ import { identity as identity3 } from "transformation-matrix";
6215
6216
  import {
6216
6217
  groupProps
6217
6218
  } from "@tscircuit/props";
6218
- import "@tscircuit/schematic-autolayout";
6219
6219
 
6220
6220
  // lib/utils/autorouting/CapacityMeshAutorouter.ts
6221
6221
  import { CapacityMeshSolver } from "@tscircuit/capacity-autorouter";
@@ -6379,7 +6379,6 @@ var CapacityMeshAutorouter = class {
6379
6379
 
6380
6380
  // lib/components/primitive-components/Group/Group.ts
6381
6381
  import "circuit-json";
6382
- import "circuit-json-to-connectivity-map";
6383
6382
  import Debug5 from "debug";
6384
6383
  import "zod";
6385
6384
 
@@ -6967,9 +6966,6 @@ var normalizePinLabels = (inputPinLabels) => {
6967
6966
  return result;
6968
6967
  };
6969
6968
 
6970
- // lib/components/primitive-components/Group/Group.ts
6971
- import "@tscircuit/checks";
6972
-
6973
6969
  // lib/components/primitive-components/Group/Group_doInitialSchematicLayoutMatchAdapt.ts
6974
6970
  import {
6975
6971
  SchematicLayoutPipelineSolver,
@@ -7549,18 +7545,49 @@ var Group = class extends NormalComponent {
7549
7545
  doInitialPcbPrimitiveRender() {
7550
7546
  if (this.root?.pcbDisabled) return;
7551
7547
  const { db } = this.root;
7548
+ const props = this._parsedProps;
7552
7549
  const bounds = getBoundsOfPcbComponents(this.children);
7553
7550
  if (this.pcb_group_id) {
7551
+ let width = bounds.width;
7552
+ let height = bounds.height;
7553
+ let centerX = (bounds.minX + bounds.maxX) / 2;
7554
+ let centerY = (bounds.minY + bounds.maxY) / 2;
7555
+ if (this.isSubcircuit) {
7556
+ const { padLeft, padRight, padTop, padBottom } = this._resolvePcbPadding();
7557
+ width += padLeft + padRight;
7558
+ height += padTop + padBottom;
7559
+ centerX += (padRight - padLeft) / 2;
7560
+ centerY += (padTop - padBottom) / 2;
7561
+ }
7554
7562
  db.pcb_group.update(this.pcb_group_id, {
7555
- width: bounds.width,
7556
- height: bounds.height,
7563
+ width,
7564
+ height,
7557
7565
  center: {
7558
- x: (bounds.minX + bounds.maxX) / 2,
7559
- y: (bounds.minY + bounds.maxY) / 2
7566
+ x: centerX,
7567
+ y: centerY
7560
7568
  }
7561
7569
  });
7562
7570
  }
7563
7571
  }
7572
+ _resolvePcbPadding() {
7573
+ const props = this._parsedProps;
7574
+ const layout = props.pcbLayout;
7575
+ const getPaddingValue = (key) => {
7576
+ const layoutValue = layout?.[key];
7577
+ const propsValue = props[key];
7578
+ if (typeof layoutValue === "number") return layoutValue;
7579
+ if (typeof propsValue === "number") return propsValue;
7580
+ return void 0;
7581
+ };
7582
+ const generalPadding = getPaddingValue("padding") ?? 0;
7583
+ const paddingX = getPaddingValue("paddingX");
7584
+ const paddingY = getPaddingValue("paddingY");
7585
+ const padLeft = getPaddingValue("paddingLeft") ?? paddingX ?? generalPadding;
7586
+ const padRight = getPaddingValue("paddingRight") ?? paddingX ?? generalPadding;
7587
+ const padTop = getPaddingValue("paddingTop") ?? paddingY ?? generalPadding;
7588
+ const padBottom = getPaddingValue("paddingBottom") ?? paddingY ?? generalPadding;
7589
+ return { padLeft, padRight, padTop, padBottom };
7590
+ }
7564
7591
  doInitialCreateTraceHintsFromProps() {
7565
7592
  const { _parsedProps: props } = this;
7566
7593
  const { db } = this.root;
@@ -8154,7 +8181,7 @@ var Group = class extends NormalComponent {
8154
8181
  };
8155
8182
 
8156
8183
  // lib/components/normal-components/Board.ts
8157
- import { checkEachPcbTraceNonOverlapping as checkEachPcbTraceNonOverlapping2 } from "@tscircuit/checks";
8184
+ import { checkEachPcbTraceNonOverlapping } from "@tscircuit/checks";
8158
8185
  var Board = class extends Group {
8159
8186
  pcb_board_id = null;
8160
8187
  _drcChecksComplete = false;
@@ -8271,7 +8298,7 @@ var Board = class extends Group {
8271
8298
  if (!this._areChildSubcircuitsRouted()) return;
8272
8299
  if (this._drcChecksComplete) return;
8273
8300
  this._drcChecksComplete = true;
8274
- const errors = checkEachPcbTraceNonOverlapping2(db.toArray());
8301
+ const errors = checkEachPcbTraceNonOverlapping(db.toArray());
8275
8302
  for (const error of errors) {
8276
8303
  db.pcb_trace_error.insert(error);
8277
8304
  }
@@ -9161,10 +9188,44 @@ var NetLabel = class extends PrimitiveComponent2 {
9161
9188
  anchor_position: anchorPos,
9162
9189
  // TODO compute the center based on the text size
9163
9190
  center: anchorPos,
9164
- anchor_side: "bottom"
9191
+ anchor_side: props.anchorSide ?? "right"
9165
9192
  });
9166
9193
  this.source_net_label_id = netLabel.source_net_id;
9167
9194
  }
9195
+ _resolveConnectsTo() {
9196
+ const { _parsedProps: props } = this;
9197
+ const connectsTo = props.connectsTo ?? props.connection;
9198
+ if (Array.isArray(connectsTo)) {
9199
+ return connectsTo;
9200
+ }
9201
+ if (typeof connectsTo === "string") {
9202
+ return [connectsTo];
9203
+ }
9204
+ return void 0;
9205
+ }
9206
+ _getNetName() {
9207
+ const { _parsedProps: props } = this;
9208
+ return props.net;
9209
+ }
9210
+ doInitialCreateNetsFromProps() {
9211
+ const { _parsedProps: props } = this;
9212
+ if (props.net) {
9213
+ createNetsFromProps(this, [`net.${props.net}`]);
9214
+ }
9215
+ }
9216
+ doInitialCreateTracesFromNetLabels() {
9217
+ if (this.root?.schematicDisabled) return;
9218
+ const connectsTo = this._resolveConnectsTo();
9219
+ if (!connectsTo) return;
9220
+ for (const connection of connectsTo) {
9221
+ this.add(
9222
+ new Trace2({
9223
+ from: connection,
9224
+ to: `net.${this._getNetName()}`
9225
+ })
9226
+ );
9227
+ }
9228
+ }
9168
9229
  };
9169
9230
 
9170
9231
  // lib/components/primitive-components/SilkscreenCircle.ts
@@ -10265,7 +10326,7 @@ import { identity as identity4 } from "transformation-matrix";
10265
10326
  var package_default = {
10266
10327
  name: "@tscircuit/core",
10267
10328
  type: "module",
10268
- version: "0.0.487",
10329
+ version: "0.0.490",
10269
10330
  types: "dist/index.d.ts",
10270
10331
  main: "dist/index.js",
10271
10332
  module: "dist/index.js",
@@ -10297,7 +10358,7 @@ var package_default = {
10297
10358
  "@tscircuit/layout": "^0.0.28",
10298
10359
  "@tscircuit/log-soup": "^1.0.2",
10299
10360
  "@tscircuit/math-utils": "^0.0.18",
10300
- "@tscircuit/props": "^0.0.227",
10361
+ "@tscircuit/props": "^0.0.234",
10301
10362
  "@tscircuit/schematic-autolayout": "^0.0.6",
10302
10363
  "@tscircuit/schematic-match-adapt": "^0.0.16",
10303
10364
  "@tscircuit/simple-3d-svg": "^0.0.6",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.489",
4
+ "version": "0.0.491",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -33,7 +33,7 @@
33
33
  "@tscircuit/layout": "^0.0.28",
34
34
  "@tscircuit/log-soup": "^1.0.2",
35
35
  "@tscircuit/math-utils": "^0.0.18",
36
- "@tscircuit/props": "^0.0.227",
36
+ "@tscircuit/props": "^0.0.234",
37
37
  "@tscircuit/schematic-autolayout": "^0.0.6",
38
38
  "@tscircuit/schematic-match-adapt": "^0.0.16",
39
39
  "@tscircuit/simple-3d-svg": "^0.0.6",