@tscircuit/core 0.0.175 → 0.0.177

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
@@ -1,5 +1,5 @@
1
1
  import * as _tscircuit_props from '@tscircuit/props';
2
- import { subcircuitGroupProps, traceProps, SupplierPartNumbers, SchematicPortArrangement, groupProps, boardProps, capacitorProps, chipProps, diodeProps, jumperProps, ledProps, powerSourceProps, resistorProps, constraintProps, fabricationNotePathProps, fabricationNoteTextProps, footprintProps, holeProps, pcbKeepoutProps, netAliasProps, platedHoleProps, silkscreenCircleProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, smtPadProps, traceHintProps, viaProps, batteryProps, pinHeaderProps, inductorProps, CapacitorProps, ChipProps, ResistorProps } from '@tscircuit/props';
2
+ import { subcircuitGroupProps, traceProps, SupplierPartNumbers, SchematicPortArrangement, groupProps, boardProps, capacitorProps, chipProps, diodeProps, jumperProps, ledProps, powerSourceProps, resistorProps, constraintProps, fabricationNotePathProps, fabricationNoteTextProps, footprintProps, holeProps, pcbKeepoutProps, netAliasProps, platedHoleProps, silkscreenCircleProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, smtPadProps, traceHintProps, viaProps, batteryProps, pinHeaderProps, inductorProps, potentiometerProps, CapacitorProps, ChipProps, ResistorProps } from '@tscircuit/props';
3
3
  import React, { ReactElement } from 'react';
4
4
  import * as zod from 'zod';
5
5
  import { z, ZodType } from 'zod';
@@ -6698,6 +6698,414 @@ declare class Inductor extends NormalComponent<typeof inductorProps, PassivePort
6698
6698
  doInitialSourceRender(): void;
6699
6699
  }
6700
6700
 
6701
+ declare class Potentiometer extends NormalComponent<typeof potentiometerProps, PolarizedPassivePorts> {
6702
+ get config(): {
6703
+ schematicSymbolName: string;
6704
+ componentName: string;
6705
+ zodProps: zod.ZodObject<zod.objectUtil.extendShape<zod.objectUtil.extendShape<zod.objectUtil.extendShape<{
6706
+ pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
6707
+ pcbY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
6708
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
6709
+ schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
6710
+ schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
6711
+ schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
6712
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
6713
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
6714
+ }, "strip", zod.ZodTypeAny, {
6715
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
6716
+ }, {
6717
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
6718
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
6719
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
6720
+ }>>;
6721
+ footprint: zod.ZodOptional<zod.ZodType<_tscircuit_props.Footprint, zod.ZodTypeDef, _tscircuit_props.Footprint>>;
6722
+ }, {
6723
+ supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
6724
+ }>, {
6725
+ key: zod.ZodOptional<zod.ZodAny>;
6726
+ name: zod.ZodString;
6727
+ cadModel: zod.ZodOptional<zod.ZodUnion<[zod.ZodString, zod.ZodObject<zod.objectUtil.extendShape<{
6728
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
6729
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6730
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6731
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6732
+ }, "strip", zod.ZodTypeAny, {
6733
+ x: string | number;
6734
+ y: string | number;
6735
+ z: string | number;
6736
+ }, {
6737
+ x: string | number;
6738
+ y: string | number;
6739
+ z: string | number;
6740
+ }>]>>;
6741
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
6742
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6743
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6744
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6745
+ }, "strip", zod.ZodTypeAny, {
6746
+ x: number;
6747
+ y: number;
6748
+ z: number;
6749
+ }, {
6750
+ x: string | number;
6751
+ y: string | number;
6752
+ z: string | number;
6753
+ }>>;
6754
+ size: zod.ZodOptional<zod.ZodObject<{
6755
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6756
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6757
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6758
+ }, "strip", zod.ZodTypeAny, {
6759
+ x: number;
6760
+ y: number;
6761
+ z: number;
6762
+ }, {
6763
+ x: string | number;
6764
+ y: string | number;
6765
+ z: string | number;
6766
+ }>>;
6767
+ }, {
6768
+ stlUrl: zod.ZodString;
6769
+ }>, "strip", zod.ZodTypeAny, {
6770
+ stlUrl: string;
6771
+ rotationOffset?: number | {
6772
+ x: string | number;
6773
+ y: string | number;
6774
+ z: string | number;
6775
+ } | undefined;
6776
+ positionOffset?: {
6777
+ x: number;
6778
+ y: number;
6779
+ z: number;
6780
+ } | undefined;
6781
+ size?: {
6782
+ x: number;
6783
+ y: number;
6784
+ z: number;
6785
+ } | undefined;
6786
+ }, {
6787
+ stlUrl: string;
6788
+ rotationOffset?: number | {
6789
+ x: string | number;
6790
+ y: string | number;
6791
+ z: string | number;
6792
+ } | undefined;
6793
+ positionOffset?: {
6794
+ x: string | number;
6795
+ y: string | number;
6796
+ z: string | number;
6797
+ } | undefined;
6798
+ size?: {
6799
+ x: string | number;
6800
+ y: string | number;
6801
+ z: string | number;
6802
+ } | undefined;
6803
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
6804
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
6805
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6806
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6807
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6808
+ }, "strip", zod.ZodTypeAny, {
6809
+ x: string | number;
6810
+ y: string | number;
6811
+ z: string | number;
6812
+ }, {
6813
+ x: string | number;
6814
+ y: string | number;
6815
+ z: string | number;
6816
+ }>]>>;
6817
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
6818
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6819
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6820
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6821
+ }, "strip", zod.ZodTypeAny, {
6822
+ x: number;
6823
+ y: number;
6824
+ z: number;
6825
+ }, {
6826
+ x: string | number;
6827
+ y: string | number;
6828
+ z: string | number;
6829
+ }>>;
6830
+ size: zod.ZodOptional<zod.ZodObject<{
6831
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6832
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6833
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6834
+ }, "strip", zod.ZodTypeAny, {
6835
+ x: number;
6836
+ y: number;
6837
+ z: number;
6838
+ }, {
6839
+ x: string | number;
6840
+ y: string | number;
6841
+ z: string | number;
6842
+ }>>;
6843
+ }, {
6844
+ objUrl: zod.ZodString;
6845
+ mtlUrl: zod.ZodOptional<zod.ZodString>;
6846
+ }>, "strip", zod.ZodTypeAny, {
6847
+ objUrl: string;
6848
+ rotationOffset?: number | {
6849
+ x: string | number;
6850
+ y: string | number;
6851
+ z: string | number;
6852
+ } | undefined;
6853
+ positionOffset?: {
6854
+ x: number;
6855
+ y: number;
6856
+ z: number;
6857
+ } | undefined;
6858
+ size?: {
6859
+ x: number;
6860
+ y: number;
6861
+ z: number;
6862
+ } | undefined;
6863
+ mtlUrl?: string | undefined;
6864
+ }, {
6865
+ objUrl: string;
6866
+ rotationOffset?: number | {
6867
+ x: string | number;
6868
+ y: string | number;
6869
+ z: string | number;
6870
+ } | undefined;
6871
+ positionOffset?: {
6872
+ x: string | number;
6873
+ y: string | number;
6874
+ z: string | number;
6875
+ } | undefined;
6876
+ size?: {
6877
+ x: string | number;
6878
+ y: string | number;
6879
+ z: string | number;
6880
+ } | undefined;
6881
+ mtlUrl?: string | undefined;
6882
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
6883
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
6884
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6885
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6886
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
6887
+ }, "strip", zod.ZodTypeAny, {
6888
+ x: string | number;
6889
+ y: string | number;
6890
+ z: string | number;
6891
+ }, {
6892
+ x: string | number;
6893
+ y: string | number;
6894
+ z: string | number;
6895
+ }>]>>;
6896
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
6897
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6898
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6899
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6900
+ }, "strip", zod.ZodTypeAny, {
6901
+ x: number;
6902
+ y: number;
6903
+ z: number;
6904
+ }, {
6905
+ x: string | number;
6906
+ y: string | number;
6907
+ z: string | number;
6908
+ }>>;
6909
+ size: zod.ZodOptional<zod.ZodObject<{
6910
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6911
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6912
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6913
+ }, "strip", zod.ZodTypeAny, {
6914
+ x: number;
6915
+ y: number;
6916
+ z: number;
6917
+ }, {
6918
+ x: string | number;
6919
+ y: string | number;
6920
+ z: string | number;
6921
+ }>>;
6922
+ }, {
6923
+ jscad: zod.ZodRecord<zod.ZodString, zod.ZodAny>;
6924
+ }>, "strip", zod.ZodTypeAny, {
6925
+ jscad: Record<string, any>;
6926
+ rotationOffset?: number | {
6927
+ x: string | number;
6928
+ y: string | number;
6929
+ z: string | number;
6930
+ } | undefined;
6931
+ positionOffset?: {
6932
+ x: number;
6933
+ y: number;
6934
+ z: number;
6935
+ } | undefined;
6936
+ size?: {
6937
+ x: number;
6938
+ y: number;
6939
+ z: number;
6940
+ } | undefined;
6941
+ }, {
6942
+ jscad: Record<string, any>;
6943
+ rotationOffset?: number | {
6944
+ x: string | number;
6945
+ y: string | number;
6946
+ z: string | number;
6947
+ } | undefined;
6948
+ positionOffset?: {
6949
+ x: string | number;
6950
+ y: string | number;
6951
+ z: string | number;
6952
+ } | undefined;
6953
+ size?: {
6954
+ x: string | number;
6955
+ y: string | number;
6956
+ z: string | number;
6957
+ } | undefined;
6958
+ }>]>>;
6959
+ children: zod.ZodOptional<zod.ZodAny>;
6960
+ symbolName: zod.ZodOptional<zod.ZodString>;
6961
+ }>, {
6962
+ maxResistance: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
6963
+ }>, "strip", zod.ZodTypeAny, {
6964
+ name: string;
6965
+ maxResistance: number;
6966
+ pcbX?: number | undefined;
6967
+ pcbY?: number | undefined;
6968
+ pcbRotation?: number | undefined;
6969
+ schX?: number | undefined;
6970
+ schY?: number | undefined;
6971
+ schRotation?: number | undefined;
6972
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
6973
+ footprint?: _tscircuit_props.Footprint | undefined;
6974
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
6975
+ key?: any;
6976
+ cadModel?: string | {
6977
+ stlUrl: string;
6978
+ rotationOffset?: number | {
6979
+ x: string | number;
6980
+ y: string | number;
6981
+ z: string | number;
6982
+ } | undefined;
6983
+ positionOffset?: {
6984
+ x: number;
6985
+ y: number;
6986
+ z: number;
6987
+ } | undefined;
6988
+ size?: {
6989
+ x: number;
6990
+ y: number;
6991
+ z: number;
6992
+ } | undefined;
6993
+ } | {
6994
+ objUrl: string;
6995
+ rotationOffset?: number | {
6996
+ x: string | number;
6997
+ y: string | number;
6998
+ z: string | number;
6999
+ } | undefined;
7000
+ positionOffset?: {
7001
+ x: number;
7002
+ y: number;
7003
+ z: number;
7004
+ } | undefined;
7005
+ size?: {
7006
+ x: number;
7007
+ y: number;
7008
+ z: number;
7009
+ } | undefined;
7010
+ mtlUrl?: string | undefined;
7011
+ } | {
7012
+ jscad: Record<string, any>;
7013
+ rotationOffset?: number | {
7014
+ x: string | number;
7015
+ y: string | number;
7016
+ z: string | number;
7017
+ } | undefined;
7018
+ positionOffset?: {
7019
+ x: number;
7020
+ y: number;
7021
+ z: number;
7022
+ } | undefined;
7023
+ size?: {
7024
+ x: number;
7025
+ y: number;
7026
+ z: number;
7027
+ } | undefined;
7028
+ } | undefined;
7029
+ children?: any;
7030
+ symbolName?: string | undefined;
7031
+ }, {
7032
+ name: string;
7033
+ maxResistance: string | number;
7034
+ pcbX?: string | number | undefined;
7035
+ pcbY?: string | number | undefined;
7036
+ pcbRotation?: string | number | undefined;
7037
+ schX?: string | number | undefined;
7038
+ schY?: string | number | undefined;
7039
+ schRotation?: string | number | undefined;
7040
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
7041
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
7042
+ } | undefined;
7043
+ footprint?: _tscircuit_props.Footprint | undefined;
7044
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
7045
+ key?: any;
7046
+ cadModel?: string | {
7047
+ stlUrl: string;
7048
+ rotationOffset?: number | {
7049
+ x: string | number;
7050
+ y: string | number;
7051
+ z: string | number;
7052
+ } | undefined;
7053
+ positionOffset?: {
7054
+ x: string | number;
7055
+ y: string | number;
7056
+ z: string | number;
7057
+ } | undefined;
7058
+ size?: {
7059
+ x: string | number;
7060
+ y: string | number;
7061
+ z: string | number;
7062
+ } | undefined;
7063
+ } | {
7064
+ objUrl: string;
7065
+ rotationOffset?: number | {
7066
+ x: string | number;
7067
+ y: string | number;
7068
+ z: string | number;
7069
+ } | undefined;
7070
+ positionOffset?: {
7071
+ x: string | number;
7072
+ y: string | number;
7073
+ z: string | number;
7074
+ } | undefined;
7075
+ size?: {
7076
+ x: string | number;
7077
+ y: string | number;
7078
+ z: string | number;
7079
+ } | undefined;
7080
+ mtlUrl?: string | undefined;
7081
+ } | {
7082
+ jscad: Record<string, any>;
7083
+ rotationOffset?: number | {
7084
+ x: string | number;
7085
+ y: string | number;
7086
+ z: string | number;
7087
+ } | undefined;
7088
+ positionOffset?: {
7089
+ x: string | number;
7090
+ y: string | number;
7091
+ z: string | number;
7092
+ } | undefined;
7093
+ size?: {
7094
+ x: string | number;
7095
+ y: string | number;
7096
+ z: string | number;
7097
+ } | undefined;
7098
+ } | undefined;
7099
+ children?: any;
7100
+ symbolName?: string | undefined;
7101
+ }>;
7102
+ sourceFtype: Ftype;
7103
+ };
7104
+ initPorts(): void;
7105
+ _getSchematicSymbolDisplayValue(): string | undefined;
7106
+ doInitialSourceRender(): void;
7107
+ }
7108
+
6701
7109
  declare const useRenderedCircuit: (reactElements: React.ReactElement) => {
6702
7110
  isLoading: boolean;
6703
7111
  error?: Error | null;
@@ -7014,6 +7422,7 @@ declare global {
7014
7422
  board: _tscircuit_props.BoardProps;
7015
7423
  jumper: _tscircuit_props.JumperProps;
7016
7424
  bug: _tscircuit_props.ChipProps;
7425
+ potentiometer: _tscircuit_props.PotentiometerProps;
7017
7426
  chip: _tscircuit_props.ChipProps;
7018
7427
  powersource: _tscircuit_props.PowerSourceProps;
7019
7428
  via: _tscircuit_props.ViaProps;
@@ -7051,4 +7460,4 @@ declare global {
7051
7460
  }
7052
7461
  }
7053
7462
 
7054
- export { Battery, Board, Capacitor, Chip, Circuit, type ComponentWithPins, Constraint, Diode, FabricationNotePath, FabricationNoteText, Footprint, Group, Hole, type IRenderable, Inductor, Jumper, Keepout, Led, Net, NetAlias, NormalComponent, PinHeader, type PinLabelSpec, PlatedHole, Port, PowerSource, PrimitiveComponent, Project, Renderable, Resistor, SilkscreenCircle, SilkscreenPath, SilkscreenRect, SilkscreenText, SmtPad, Trace, TraceHint, Via, createUseComponent, useCapacitor, useChip, useDiode, useLed, useRenderedCircuit, useResistor };
7463
+ export { Battery, Board, Capacitor, Chip, Circuit, type ComponentWithPins, Constraint, Diode, FabricationNotePath, FabricationNoteText, Footprint, Group, Hole, type IRenderable, Inductor, Jumper, Keepout, Led, Net, NetAlias, NormalComponent, PinHeader, type PinLabelSpec, PlatedHole, Port, Potentiometer, PowerSource, PrimitiveComponent, Project, Renderable, Resistor, SilkscreenCircle, SilkscreenPath, SilkscreenRect, SilkscreenText, SmtPad, Trace, TraceHint, Via, createUseComponent, useCapacitor, useChip, useDiode, useLed, useRenderedCircuit, useResistor };
package/dist/index.js CHANGED
@@ -28,6 +28,7 @@ __export(components_exports, {
28
28
  PinHeader: () => PinHeader,
29
29
  PlatedHole: () => PlatedHole,
30
30
  Port: () => Port,
31
+ Potentiometer: () => Potentiometer,
31
32
  PowerSource: () => PowerSource,
32
33
  PrimitiveComponent: () => PrimitiveComponent,
33
34
  Renderable: () => Renderable,
@@ -673,7 +674,7 @@ var PrimitiveComponent = class extends Renderable {
673
674
  if (symbol_name_horz in symbols) {
674
675
  if (props.schRotation === 0 || props.schRotation === void 0)
675
676
  return symbol_name_horz;
676
- if (props.schRotation === 180) return symbol_name_vert;
677
+ if (props.schRotation === 180) return symbol_name_horz;
677
678
  }
678
679
  if (symbol_name_vert in symbols) {
679
680
  if (props.schRotation === 90) return symbol_name_vert;
@@ -3780,6 +3781,7 @@ var createSchematicTraceCrossingSegments = ({
3780
3781
  x: crossingPoint.x + crossingUnitVec.x * crossingSegmentLength / 2,
3781
3782
  y: crossingPoint.y + crossingUnitVec.y * crossingSegmentLength / 2
3782
3783
  };
3784
+ const overshot = distance2(afterCrossing, edge.to) < crossingSegmentLength;
3783
3785
  const newEdges = [
3784
3786
  { from: edge.from, to: beforeCrossing },
3785
3787
  { from: beforeCrossing, to: afterCrossing, is_crossing: true },
@@ -3787,7 +3789,7 @@ var createSchematicTraceCrossingSegments = ({
3787
3789
  ];
3788
3790
  edges.splice(i, 1, ...newEdges);
3789
3791
  i += newEdges.length - 2;
3790
- if (distance2(afterCrossing, edge.to) <= 1) {
3792
+ if (overshot) {
3791
3793
  i++;
3792
3794
  }
3793
3795
  }
@@ -5106,6 +5108,42 @@ var Inductor = class extends NormalComponent {
5106
5108
  }
5107
5109
  };
5108
5110
 
5111
+ // lib/components/normal-components/Potentiometer.ts
5112
+ import { potentiometerProps } from "@tscircuit/props";
5113
+ import { formatSiUnit as formatSiUnit3 } from "format-si-unit";
5114
+ var Potentiometer = class extends NormalComponent {
5115
+ // @ts-ignore
5116
+ get config() {
5117
+ return {
5118
+ schematicSymbolName: this.props.symbolName ?? "potentiometer2",
5119
+ componentName: "Potentiometer",
5120
+ zodProps: potentiometerProps,
5121
+ sourceFtype: "simple_potentiometer"
5122
+ };
5123
+ }
5124
+ initPorts() {
5125
+ super.initPorts({
5126
+ additionalAliases: {
5127
+ pin1: ["pos", "left"],
5128
+ pin2: ["neg", "right"]
5129
+ }
5130
+ });
5131
+ }
5132
+ _getSchematicSymbolDisplayValue() {
5133
+ return `${formatSiUnit3(this._parsedProps.maxResistance)}\u03A9`;
5134
+ }
5135
+ doInitialSourceRender() {
5136
+ const { db } = this.root;
5137
+ const { _parsedProps: props } = this;
5138
+ const source_component = db.source_component.insert({
5139
+ name: props.name,
5140
+ ftype: "simple_potentiometer",
5141
+ max_resistance: props.maxResistance
5142
+ });
5143
+ this.source_component_id = source_component.source_component_id;
5144
+ }
5145
+ };
5146
+
5109
5147
  // lib/Circuit.ts
5110
5148
  import { su } from "@tscircuit/soup-util";
5111
5149
  import { isValidElement as isValidElement2 } from "react";
@@ -5372,6 +5410,7 @@ export {
5372
5410
  PinHeader,
5373
5411
  PlatedHole,
5374
5412
  Port,
5413
+ Potentiometer,
5375
5414
  PowerSource,
5376
5415
  PrimitiveComponent,
5377
5416
  Project,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.175",
4
+ "version": "0.0.177",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -40,10 +40,10 @@
40
40
  "@tscircuit/footprinter": "^0.0.77",
41
41
  "@tscircuit/infgrid-ijump-astar": "^0.0.24",
42
42
  "@tscircuit/math-utils": "^0.0.5",
43
- "@tscircuit/props": "^0.0.94",
43
+ "@tscircuit/props": "^0.0.95",
44
44
  "@tscircuit/schematic-autolayout": "^0.0.6",
45
45
  "@tscircuit/soup-util": "^0.0.40",
46
- "circuit-json": "^0.0.101",
46
+ "circuit-json": "^0.0.104",
47
47
  "circuit-json-to-connectivity-map": "^0.0.17",
48
48
  "circuit-to-svg": "^0.0.74",
49
49
  "format-si-unit": "^0.0.2",