@tscircuit/core 0.0.2014 → 0.0.2016

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
@@ -110181,15 +110181,20 @@ declare class AssemblyDevice extends PrimitiveComponent<typeof assemblyDevicePro
110181
110181
  componentName: string;
110182
110182
  zodProps: zod.ZodObject<{
110183
110183
  name: zod.ZodOptional<zod.ZodString>;
110184
+ modelUrl: zod.ZodOptional<zod.ZodEffects<zod.ZodType<string, zod.ZodTypeDef, string>, string, string>>;
110184
110185
  }, "strip", zod.ZodTypeAny, {
110185
110186
  name?: string | undefined;
110187
+ modelUrl?: string | undefined;
110186
110188
  }, {
110187
110189
  name?: string | undefined;
110190
+ modelUrl?: string | undefined;
110188
110191
  }>;
110189
110192
  };
110190
110193
  doInitialAssignNameToUnnamedComponents(): void;
110191
110194
  computeSchematicGlobalTransform(): Matrix;
110192
110195
  _computePcbGlobalTransformBeforeLayout(): Matrix;
110196
+ doInitialSourceRender(): void;
110197
+ doInitialCadModelRender(): void;
110193
110198
  }
110194
110199
 
110195
110200
  declare class AssemblyScreen extends PrimitiveComponent<typeof assemblyScreenProps> implements AssemblyDeviceContainer {
@@ -110198,6 +110203,7 @@ declare class AssemblyScreen extends PrimitiveComponent<typeof assemblyScreenPro
110198
110203
  componentName: string;
110199
110204
  zodProps: zod.ZodEffects<zod.ZodObject<{
110200
110205
  name: zod.ZodEffects<zod.ZodString, string, string>;
110206
+ modelUrl: zod.ZodOptional<zod.ZodEffects<zod.ZodType<string, zod.ZodTypeDef, string>, string, string>>;
110201
110207
  connectsTo: zod.ZodEffects<zod.ZodString, string, string>;
110202
110208
  width: zod.ZodOptional<zod.ZodEffects<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>, number, string | number>>;
110203
110209
  height: zod.ZodOptional<zod.ZodEffects<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>, number, string | number>>;
@@ -110207,24 +110213,28 @@ declare class AssemblyScreen extends PrimitiveComponent<typeof assemblyScreenPro
110207
110213
  connectsTo: string;
110208
110214
  width?: number | undefined;
110209
110215
  height?: number | undefined;
110216
+ modelUrl?: string | undefined;
110210
110217
  cadModel?: string | undefined;
110211
110218
  }, {
110212
110219
  name: string;
110213
110220
  connectsTo: string;
110214
110221
  width?: string | number | undefined;
110215
110222
  height?: string | number | undefined;
110223
+ modelUrl?: string | undefined;
110216
110224
  cadModel?: string | undefined;
110217
110225
  }>, {
110218
110226
  name: string;
110219
110227
  connectsTo: string;
110220
110228
  width?: number | undefined;
110221
110229
  height?: number | undefined;
110230
+ modelUrl?: string | undefined;
110222
110231
  cadModel?: string | undefined;
110223
110232
  }, {
110224
110233
  name: string;
110225
110234
  connectsTo: string;
110226
110235
  width?: string | number | undefined;
110227
110236
  height?: string | number | undefined;
110237
+ modelUrl?: string | undefined;
110228
110238
  cadModel?: string | undefined;
110229
110239
  }>;
110230
110240
  };
@@ -110237,9 +110247,10 @@ declare class AssemblySubassembly extends PrimitiveComponent<typeof assemblySuba
110237
110247
  isAssemblyDeviceContainer: true;
110238
110248
  get config(): {
110239
110249
  componentName: string;
110240
- zodProps: zod.ZodObject<{
110250
+ zodProps: zod.ZodEffects<zod.ZodObject<{
110241
110251
  name: zod.ZodEffects<zod.ZodString, string, string>;
110242
110252
  displayName: zod.ZodOptional<zod.ZodString>;
110253
+ modelUrl: zod.ZodOptional<zod.ZodEffects<zod.ZodType<string, zod.ZodTypeDef, string>, string, string>>;
110243
110254
  cadModel: zod.ZodOptional<zod.ZodUnion<[zod.ZodNull, zod.ZodString, zod.ZodType<react.ReactElement<any, string | react.JSXElementConstructor<any>>, zod.ZodTypeDef, react.ReactElement<any, string | react.JSXElementConstructor<any>>>, zod.ZodObject<{
110244
110255
  rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
110245
110256
  x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
@@ -111582,6 +111593,579 @@ declare class AssemblySubassembly extends PrimitiveComponent<typeof assemblySuba
111582
111593
  }, "strip", zod.ZodTypeAny, {
111583
111594
  name: string;
111584
111595
  displayName?: string | undefined;
111596
+ modelUrl?: string | undefined;
111597
+ cadModel?: string | {
111598
+ stlUrl: string;
111599
+ rotationOffset?: number | {
111600
+ x: string | number;
111601
+ y: string | number;
111602
+ z: string | number;
111603
+ } | undefined;
111604
+ positionOffset?: {
111605
+ x: number;
111606
+ y: number;
111607
+ z: number;
111608
+ } | undefined;
111609
+ modelOriginPosition?: {
111610
+ x: number;
111611
+ y: number;
111612
+ z: number;
111613
+ } | undefined;
111614
+ modelBounds?: {
111615
+ min: {
111616
+ x: number;
111617
+ y: number;
111618
+ z: number;
111619
+ };
111620
+ max: {
111621
+ x: number;
111622
+ y: number;
111623
+ z: number;
111624
+ };
111625
+ } | undefined;
111626
+ size?: {
111627
+ x: number;
111628
+ y: number;
111629
+ z: number;
111630
+ } | undefined;
111631
+ modelUnitToMmScale?: number | undefined;
111632
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111633
+ pcbRotationOffset?: number | undefined;
111634
+ zOffsetFromSurface?: number | undefined;
111635
+ showAsTranslucentModel?: boolean | undefined;
111636
+ stepUrl?: string | undefined;
111637
+ } | {
111638
+ objUrl: string;
111639
+ rotationOffset?: number | {
111640
+ x: string | number;
111641
+ y: string | number;
111642
+ z: string | number;
111643
+ } | undefined;
111644
+ positionOffset?: {
111645
+ x: number;
111646
+ y: number;
111647
+ z: number;
111648
+ } | undefined;
111649
+ modelOriginPosition?: {
111650
+ x: number;
111651
+ y: number;
111652
+ z: number;
111653
+ } | undefined;
111654
+ modelBounds?: {
111655
+ min: {
111656
+ x: number;
111657
+ y: number;
111658
+ z: number;
111659
+ };
111660
+ max: {
111661
+ x: number;
111662
+ y: number;
111663
+ z: number;
111664
+ };
111665
+ } | undefined;
111666
+ size?: {
111667
+ x: number;
111668
+ y: number;
111669
+ z: number;
111670
+ } | undefined;
111671
+ modelUnitToMmScale?: number | undefined;
111672
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111673
+ pcbRotationOffset?: number | undefined;
111674
+ zOffsetFromSurface?: number | undefined;
111675
+ showAsTranslucentModel?: boolean | undefined;
111676
+ stepUrl?: string | undefined;
111677
+ mtlUrl?: string | undefined;
111678
+ } | {
111679
+ gltfUrl: string;
111680
+ rotationOffset?: number | {
111681
+ x: string | number;
111682
+ y: string | number;
111683
+ z: string | number;
111684
+ } | undefined;
111685
+ positionOffset?: {
111686
+ x: number;
111687
+ y: number;
111688
+ z: number;
111689
+ } | undefined;
111690
+ modelOriginPosition?: {
111691
+ x: number;
111692
+ y: number;
111693
+ z: number;
111694
+ } | undefined;
111695
+ modelBounds?: {
111696
+ min: {
111697
+ x: number;
111698
+ y: number;
111699
+ z: number;
111700
+ };
111701
+ max: {
111702
+ x: number;
111703
+ y: number;
111704
+ z: number;
111705
+ };
111706
+ } | undefined;
111707
+ size?: {
111708
+ x: number;
111709
+ y: number;
111710
+ z: number;
111711
+ } | undefined;
111712
+ modelUnitToMmScale?: number | undefined;
111713
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111714
+ pcbRotationOffset?: number | undefined;
111715
+ zOffsetFromSurface?: number | undefined;
111716
+ showAsTranslucentModel?: boolean | undefined;
111717
+ stepUrl?: string | undefined;
111718
+ } | {
111719
+ glbUrl: string;
111720
+ rotationOffset?: number | {
111721
+ x: string | number;
111722
+ y: string | number;
111723
+ z: string | number;
111724
+ } | undefined;
111725
+ positionOffset?: {
111726
+ x: number;
111727
+ y: number;
111728
+ z: number;
111729
+ } | undefined;
111730
+ modelOriginPosition?: {
111731
+ x: number;
111732
+ y: number;
111733
+ z: number;
111734
+ } | undefined;
111735
+ modelBounds?: {
111736
+ min: {
111737
+ x: number;
111738
+ y: number;
111739
+ z: number;
111740
+ };
111741
+ max: {
111742
+ x: number;
111743
+ y: number;
111744
+ z: number;
111745
+ };
111746
+ } | undefined;
111747
+ size?: {
111748
+ x: number;
111749
+ y: number;
111750
+ z: number;
111751
+ } | undefined;
111752
+ modelUnitToMmScale?: number | undefined;
111753
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111754
+ pcbRotationOffset?: number | undefined;
111755
+ zOffsetFromSurface?: number | undefined;
111756
+ showAsTranslucentModel?: boolean | undefined;
111757
+ stepUrl?: string | undefined;
111758
+ } | {
111759
+ stepUrl: string;
111760
+ rotationOffset?: number | {
111761
+ x: string | number;
111762
+ y: string | number;
111763
+ z: string | number;
111764
+ } | undefined;
111765
+ positionOffset?: {
111766
+ x: number;
111767
+ y: number;
111768
+ z: number;
111769
+ } | undefined;
111770
+ modelOriginPosition?: {
111771
+ x: number;
111772
+ y: number;
111773
+ z: number;
111774
+ } | undefined;
111775
+ modelBounds?: {
111776
+ min: {
111777
+ x: number;
111778
+ y: number;
111779
+ z: number;
111780
+ };
111781
+ max: {
111782
+ x: number;
111783
+ y: number;
111784
+ z: number;
111785
+ };
111786
+ } | undefined;
111787
+ size?: {
111788
+ x: number;
111789
+ y: number;
111790
+ z: number;
111791
+ } | undefined;
111792
+ modelUnitToMmScale?: number | undefined;
111793
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111794
+ pcbRotationOffset?: number | undefined;
111795
+ zOffsetFromSurface?: number | undefined;
111796
+ showAsTranslucentModel?: boolean | undefined;
111797
+ } | {
111798
+ wrlUrl: string;
111799
+ rotationOffset?: number | {
111800
+ x: string | number;
111801
+ y: string | number;
111802
+ z: string | number;
111803
+ } | undefined;
111804
+ positionOffset?: {
111805
+ x: number;
111806
+ y: number;
111807
+ z: number;
111808
+ } | undefined;
111809
+ modelOriginPosition?: {
111810
+ x: number;
111811
+ y: number;
111812
+ z: number;
111813
+ } | undefined;
111814
+ modelBounds?: {
111815
+ min: {
111816
+ x: number;
111817
+ y: number;
111818
+ z: number;
111819
+ };
111820
+ max: {
111821
+ x: number;
111822
+ y: number;
111823
+ z: number;
111824
+ };
111825
+ } | undefined;
111826
+ size?: {
111827
+ x: number;
111828
+ y: number;
111829
+ z: number;
111830
+ } | undefined;
111831
+ modelUnitToMmScale?: number | undefined;
111832
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111833
+ pcbRotationOffset?: number | undefined;
111834
+ zOffsetFromSurface?: number | undefined;
111835
+ showAsTranslucentModel?: boolean | undefined;
111836
+ stepUrl?: string | undefined;
111837
+ } | {
111838
+ jscad: Record<string, any>;
111839
+ rotationOffset?: number | {
111840
+ x: string | number;
111841
+ y: string | number;
111842
+ z: string | number;
111843
+ } | undefined;
111844
+ positionOffset?: {
111845
+ x: number;
111846
+ y: number;
111847
+ z: number;
111848
+ } | undefined;
111849
+ modelOriginPosition?: {
111850
+ x: number;
111851
+ y: number;
111852
+ z: number;
111853
+ } | undefined;
111854
+ modelBounds?: {
111855
+ min: {
111856
+ x: number;
111857
+ y: number;
111858
+ z: number;
111859
+ };
111860
+ max: {
111861
+ x: number;
111862
+ y: number;
111863
+ z: number;
111864
+ };
111865
+ } | undefined;
111866
+ size?: {
111867
+ x: number;
111868
+ y: number;
111869
+ z: number;
111870
+ } | undefined;
111871
+ modelUnitToMmScale?: number | undefined;
111872
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111873
+ pcbRotationOffset?: number | undefined;
111874
+ zOffsetFromSurface?: number | undefined;
111875
+ showAsTranslucentModel?: boolean | undefined;
111876
+ stepUrl?: string | undefined;
111877
+ } | react.ReactElement<any, string | react.JSXElementConstructor<any>> | null | undefined;
111878
+ children?: react.ReactNode;
111879
+ }, {
111880
+ name: string;
111881
+ displayName?: string | undefined;
111882
+ modelUrl?: string | undefined;
111883
+ cadModel?: string | {
111884
+ stlUrl: string;
111885
+ rotationOffset?: number | {
111886
+ x: string | number;
111887
+ y: string | number;
111888
+ z: string | number;
111889
+ } | undefined;
111890
+ positionOffset?: {
111891
+ x: string | number;
111892
+ y: string | number;
111893
+ z: string | number;
111894
+ } | undefined;
111895
+ modelOriginPosition?: {
111896
+ x: string | number;
111897
+ y: string | number;
111898
+ z: string | number;
111899
+ } | undefined;
111900
+ modelBounds?: {
111901
+ min: {
111902
+ x: string | number;
111903
+ y: string | number;
111904
+ z: string | number;
111905
+ };
111906
+ max: {
111907
+ x: string | number;
111908
+ y: string | number;
111909
+ z: string | number;
111910
+ };
111911
+ } | undefined;
111912
+ size?: {
111913
+ x: string | number;
111914
+ y: string | number;
111915
+ z: string | number;
111916
+ } | undefined;
111917
+ modelUnitToMmScale?: string | number | undefined;
111918
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111919
+ pcbRotationOffset?: number | undefined;
111920
+ zOffsetFromSurface?: string | number | undefined;
111921
+ showAsTranslucentModel?: boolean | undefined;
111922
+ stepUrl?: string | undefined;
111923
+ } | {
111924
+ objUrl: string;
111925
+ rotationOffset?: number | {
111926
+ x: string | number;
111927
+ y: string | number;
111928
+ z: string | number;
111929
+ } | undefined;
111930
+ positionOffset?: {
111931
+ x: string | number;
111932
+ y: string | number;
111933
+ z: string | number;
111934
+ } | undefined;
111935
+ modelOriginPosition?: {
111936
+ x: string | number;
111937
+ y: string | number;
111938
+ z: string | number;
111939
+ } | undefined;
111940
+ modelBounds?: {
111941
+ min: {
111942
+ x: string | number;
111943
+ y: string | number;
111944
+ z: string | number;
111945
+ };
111946
+ max: {
111947
+ x: string | number;
111948
+ y: string | number;
111949
+ z: string | number;
111950
+ };
111951
+ } | undefined;
111952
+ size?: {
111953
+ x: string | number;
111954
+ y: string | number;
111955
+ z: string | number;
111956
+ } | undefined;
111957
+ modelUnitToMmScale?: string | number | undefined;
111958
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
111959
+ pcbRotationOffset?: number | undefined;
111960
+ zOffsetFromSurface?: string | number | undefined;
111961
+ showAsTranslucentModel?: boolean | undefined;
111962
+ stepUrl?: string | undefined;
111963
+ mtlUrl?: string | undefined;
111964
+ } | {
111965
+ gltfUrl: string;
111966
+ rotationOffset?: number | {
111967
+ x: string | number;
111968
+ y: string | number;
111969
+ z: string | number;
111970
+ } | undefined;
111971
+ positionOffset?: {
111972
+ x: string | number;
111973
+ y: string | number;
111974
+ z: string | number;
111975
+ } | undefined;
111976
+ modelOriginPosition?: {
111977
+ x: string | number;
111978
+ y: string | number;
111979
+ z: string | number;
111980
+ } | undefined;
111981
+ modelBounds?: {
111982
+ min: {
111983
+ x: string | number;
111984
+ y: string | number;
111985
+ z: string | number;
111986
+ };
111987
+ max: {
111988
+ x: string | number;
111989
+ y: string | number;
111990
+ z: string | number;
111991
+ };
111992
+ } | undefined;
111993
+ size?: {
111994
+ x: string | number;
111995
+ y: string | number;
111996
+ z: string | number;
111997
+ } | undefined;
111998
+ modelUnitToMmScale?: string | number | undefined;
111999
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
112000
+ pcbRotationOffset?: number | undefined;
112001
+ zOffsetFromSurface?: string | number | undefined;
112002
+ showAsTranslucentModel?: boolean | undefined;
112003
+ stepUrl?: string | undefined;
112004
+ } | {
112005
+ glbUrl: string;
112006
+ rotationOffset?: number | {
112007
+ x: string | number;
112008
+ y: string | number;
112009
+ z: string | number;
112010
+ } | undefined;
112011
+ positionOffset?: {
112012
+ x: string | number;
112013
+ y: string | number;
112014
+ z: string | number;
112015
+ } | undefined;
112016
+ modelOriginPosition?: {
112017
+ x: string | number;
112018
+ y: string | number;
112019
+ z: string | number;
112020
+ } | undefined;
112021
+ modelBounds?: {
112022
+ min: {
112023
+ x: string | number;
112024
+ y: string | number;
112025
+ z: string | number;
112026
+ };
112027
+ max: {
112028
+ x: string | number;
112029
+ y: string | number;
112030
+ z: string | number;
112031
+ };
112032
+ } | undefined;
112033
+ size?: {
112034
+ x: string | number;
112035
+ y: string | number;
112036
+ z: string | number;
112037
+ } | undefined;
112038
+ modelUnitToMmScale?: string | number | undefined;
112039
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
112040
+ pcbRotationOffset?: number | undefined;
112041
+ zOffsetFromSurface?: string | number | undefined;
112042
+ showAsTranslucentModel?: boolean | undefined;
112043
+ stepUrl?: string | undefined;
112044
+ } | {
112045
+ stepUrl: string;
112046
+ rotationOffset?: number | {
112047
+ x: string | number;
112048
+ y: string | number;
112049
+ z: string | number;
112050
+ } | undefined;
112051
+ positionOffset?: {
112052
+ x: string | number;
112053
+ y: string | number;
112054
+ z: string | number;
112055
+ } | undefined;
112056
+ modelOriginPosition?: {
112057
+ x: string | number;
112058
+ y: string | number;
112059
+ z: string | number;
112060
+ } | undefined;
112061
+ modelBounds?: {
112062
+ min: {
112063
+ x: string | number;
112064
+ y: string | number;
112065
+ z: string | number;
112066
+ };
112067
+ max: {
112068
+ x: string | number;
112069
+ y: string | number;
112070
+ z: string | number;
112071
+ };
112072
+ } | undefined;
112073
+ size?: {
112074
+ x: string | number;
112075
+ y: string | number;
112076
+ z: string | number;
112077
+ } | undefined;
112078
+ modelUnitToMmScale?: string | number | undefined;
112079
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
112080
+ pcbRotationOffset?: number | undefined;
112081
+ zOffsetFromSurface?: string | number | undefined;
112082
+ showAsTranslucentModel?: boolean | undefined;
112083
+ } | {
112084
+ wrlUrl: string;
112085
+ rotationOffset?: number | {
112086
+ x: string | number;
112087
+ y: string | number;
112088
+ z: string | number;
112089
+ } | undefined;
112090
+ positionOffset?: {
112091
+ x: string | number;
112092
+ y: string | number;
112093
+ z: string | number;
112094
+ } | undefined;
112095
+ modelOriginPosition?: {
112096
+ x: string | number;
112097
+ y: string | number;
112098
+ z: string | number;
112099
+ } | undefined;
112100
+ modelBounds?: {
112101
+ min: {
112102
+ x: string | number;
112103
+ y: string | number;
112104
+ z: string | number;
112105
+ };
112106
+ max: {
112107
+ x: string | number;
112108
+ y: string | number;
112109
+ z: string | number;
112110
+ };
112111
+ } | undefined;
112112
+ size?: {
112113
+ x: string | number;
112114
+ y: string | number;
112115
+ z: string | number;
112116
+ } | undefined;
112117
+ modelUnitToMmScale?: string | number | undefined;
112118
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
112119
+ pcbRotationOffset?: number | undefined;
112120
+ zOffsetFromSurface?: string | number | undefined;
112121
+ showAsTranslucentModel?: boolean | undefined;
112122
+ stepUrl?: string | undefined;
112123
+ } | {
112124
+ jscad: Record<string, any>;
112125
+ rotationOffset?: number | {
112126
+ x: string | number;
112127
+ y: string | number;
112128
+ z: string | number;
112129
+ } | undefined;
112130
+ positionOffset?: {
112131
+ x: string | number;
112132
+ y: string | number;
112133
+ z: string | number;
112134
+ } | undefined;
112135
+ modelOriginPosition?: {
112136
+ x: string | number;
112137
+ y: string | number;
112138
+ z: string | number;
112139
+ } | undefined;
112140
+ modelBounds?: {
112141
+ min: {
112142
+ x: string | number;
112143
+ y: string | number;
112144
+ z: string | number;
112145
+ };
112146
+ max: {
112147
+ x: string | number;
112148
+ y: string | number;
112149
+ z: string | number;
112150
+ };
112151
+ } | undefined;
112152
+ size?: {
112153
+ x: string | number;
112154
+ y: string | number;
112155
+ z: string | number;
112156
+ } | undefined;
112157
+ modelUnitToMmScale?: string | number | undefined;
112158
+ modelBoardNormalDirection?: "x+" | "x-" | "y+" | "y-" | "z+" | "z-" | undefined;
112159
+ pcbRotationOffset?: number | undefined;
112160
+ zOffsetFromSurface?: string | number | undefined;
112161
+ showAsTranslucentModel?: boolean | undefined;
112162
+ stepUrl?: string | undefined;
112163
+ } | react.ReactElement<any, string | react.JSXElementConstructor<any>> | null | undefined;
112164
+ children?: react.ReactNode;
112165
+ }>, {
112166
+ name: string;
112167
+ displayName?: string | undefined;
112168
+ modelUrl?: string | undefined;
111585
112169
  cadModel?: string | {
111586
112170
  stlUrl: string;
111587
112171
  rotationOffset?: number | {
@@ -111867,6 +112451,7 @@ declare class AssemblySubassembly extends PrimitiveComponent<typeof assemblySuba
111867
112451
  }, {
111868
112452
  name: string;
111869
112453
  displayName?: string | undefined;
112454
+ modelUrl?: string | undefined;
111870
112455
  cadModel?: string | {
111871
112456
  stlUrl: string;
111872
112457
  rotationOffset?: number | {
package/dist/index.js CHANGED
@@ -13919,10 +13919,28 @@ var getFileExtension = (filename) => {
13919
13919
  };
13920
13920
 
13921
13921
  // lib/components/primitive-components/CadModel_renderInAssembly.ts
13922
- import {
13923
- cadModelBase as cadModelBase2,
13924
- point3 as point32
13925
- } from "@tscircuit/props";
13922
+ import { cadModelBase as cadModelBase2, point3 as point32 } from "@tscircuit/props";
13923
+
13924
+ // lib/components/primitive-components/resolve-assembly-model-url.ts
13925
+ var resolveAssemblyModelUrl = (modelUrl) => {
13926
+ const url = modelUrl.replace(/#ext=\w+$/, "");
13927
+ switch (getFileExtension(modelUrl)) {
13928
+ case "obj":
13929
+ return { objUrl: url };
13930
+ case "gltf":
13931
+ return { gltfUrl: url };
13932
+ case "glb":
13933
+ return { glbUrl: url };
13934
+ case "step":
13935
+ case "stp":
13936
+ return { stepUrl: url };
13937
+ case "wrl":
13938
+ case "vrml":
13939
+ return { wrlUrl: url };
13940
+ default:
13941
+ return { stlUrl: url };
13942
+ }
13943
+ };
13926
13944
 
13927
13945
  // lib/components/primitive-components/render-assembly-cad-model.ts
13928
13946
  import { normalizeDegrees as normalizeDegrees3 } from "@tscircuit/math-utils";
@@ -14009,30 +14027,7 @@ var CadModel_renderInAssembly = (component) => {
14009
14027
  z: props.pcbZ ?? 0
14010
14028
  })
14011
14029
  });
14012
- const modelUrl = props.modelUrl.replace(/#ext=\w+$/, "");
14013
- let model;
14014
- switch (getFileExtension(props.modelUrl)) {
14015
- case "obj":
14016
- model = { ...base, objUrl: modelUrl };
14017
- break;
14018
- case "gltf":
14019
- model = { ...base, gltfUrl: modelUrl };
14020
- break;
14021
- case "glb":
14022
- model = { ...base, glbUrl: modelUrl };
14023
- break;
14024
- case "step":
14025
- case "stp":
14026
- model = { ...base, stepUrl: modelUrl };
14027
- break;
14028
- case "wrl":
14029
- case "vrml":
14030
- model = { ...base, wrlUrl: modelUrl };
14031
- break;
14032
- default:
14033
- model = { ...base, stlUrl: modelUrl };
14034
- break;
14035
- }
14030
+ const model = { ...base, ...resolveAssemblyModelUrl(props.modelUrl) };
14036
14031
  component.cad_component_id = renderAssemblyCadModel(owner, model, placement);
14037
14032
  return true;
14038
14033
  };
@@ -64575,7 +64570,7 @@ function Group_getRoutingPhasePlans(group) {
64575
64570
  var package_default = {
64576
64571
  name: "@tscircuit/core",
64577
64572
  type: "module",
64578
- version: "0.0.2013",
64573
+ version: "0.0.2015",
64579
64574
  types: "dist/index.d.ts",
64580
64575
  main: "dist/index.js",
64581
64576
  module: "dist/index.js",
@@ -64611,7 +64606,7 @@ var package_default = {
64611
64606
  "@tscircuit/bga-fanout-solver": "github:tscircuit/bga-fanout-solver#247c835cb8d69b65e53891dcf869731079415b39",
64612
64607
  "@tscircuit/bus-lanes-solver": "github:tscircuit/bus-lanes-solver#0bc8d071241b18a3e7465a878881abe4998f6384",
64613
64608
  "@tscircuit/capacity-autorouter": "^0.0.941",
64614
- "@tscircuit/checks": "^0.0.227",
64609
+ "@tscircuit/checks": "^0.0.228",
64615
64610
  "@tscircuit/circuit-json-util": "^0.0.116",
64616
64611
  "@tscircuit/common": "^0.0.20",
64617
64612
  "@tscircuit/copper-pour-solver": "^0.0.62",
@@ -64630,7 +64625,7 @@ var package_default = {
64630
64625
  "@tscircuit/math-utils": "^0.0.36",
64631
64626
  "@tscircuit/miniflex": "^0.0.4",
64632
64627
  "@tscircuit/ngspice-spice-engine": "^0.0.20",
64633
- "@tscircuit/props": "^0.0.669",
64628
+ "@tscircuit/props": "^0.0.670",
64634
64629
  "@tscircuit/schematic-match-adapt": "^0.0.18",
64635
64630
  "@tscircuit/schematic-trace-solver": "^0.0.212",
64636
64631
  "@tscircuit/solver-utils": "^0.0.16",
@@ -64709,7 +64704,7 @@ var package_default = {
64709
64704
  },
64710
64705
  overrides: {
64711
64706
  "@tscircuit/circuit-json-util": "^0.0.116",
64712
- "@tscircuit/props": "^0.0.669",
64707
+ "@tscircuit/props": "^0.0.670",
64713
64708
  "circuit-json": "^0.0.506"
64714
64709
  }
64715
64710
  };
@@ -76545,9 +76540,22 @@ var AssemblyDevice = class extends PrimitiveComponent2 {
76545
76540
  _computePcbGlobalTransformBeforeLayout() {
76546
76541
  return identity10();
76547
76542
  }
76548
- // Compatibility stage: this is a transparent product-level container and emits no
76549
- // Circuit JSON. The later schema migration adds source_assembly_device without
76550
- // changing the authoring element or its assembly-container semantics.
76543
+ doInitialSourceRender() {
76544
+ if (this._parsedProps.modelUrl === void 0 || !this.root) return;
76545
+ this.source_component_id = this.root.db.source_component.insert({
76546
+ ftype: "simple_chip",
76547
+ name: this.name
76548
+ }).source_component_id;
76549
+ }
76550
+ doInitialCadModelRender() {
76551
+ if (!this.root || this.root.pcbDisabled || !this.source_component_id || this._parsedProps.modelUrl === void 0)
76552
+ return;
76553
+ this.cad_component_id = renderAssemblyCadModel(
76554
+ this,
76555
+ resolveAssemblyModelUrl(this._parsedProps.modelUrl),
76556
+ { position: { x: 0, y: 0, z: 0 }, pcbRotation: 0, layer: "top" }
76557
+ );
76558
+ }
76551
76559
  };
76552
76560
 
76553
76561
  // lib/components/primitive-components/AssemblyScreen.ts
@@ -76570,7 +76578,7 @@ var AssemblyScreen_doInitialCadModelRender = (component) => {
76570
76578
  const placement = resolveAssemblyPlacement(component);
76571
76579
  component.cad_component_id = renderAssemblyCadModel(
76572
76580
  component,
76573
- component._parsedProps.cadModel ?? getDefaultFlexScreenModel(component),
76581
+ component._parsedProps.modelUrl !== void 0 ? resolveAssemblyModelUrl(component._parsedProps.modelUrl) : component._parsedProps.cadModel ?? getDefaultFlexScreenModel(component),
76574
76582
  placement
76575
76583
  );
76576
76584
  };
@@ -76629,7 +76637,7 @@ var AssemblySubassembly = class extends PrimitiveComponent2 {
76629
76637
  doInitialCadModelRender() {
76630
76638
  if (!this.root || this.root.pcbDisabled || !this.source_component_id) return;
76631
76639
  const placement = resolveAssemblyPlacement(this);
76632
- const model = this._parsedProps.cadModel;
76640
+ const model = this._parsedProps.modelUrl !== void 0 ? resolveAssemblyModelUrl(this._parsedProps.modelUrl) : this._parsedProps.cadModel;
76633
76641
  if (model && !(typeof model === "object" && "type" in model)) {
76634
76642
  this.cad_component_id = renderAssemblyCadModel(this, model, placement);
76635
76643
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.2014",
4
+ "version": "0.0.2016",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -37,7 +37,7 @@
37
37
  "@tscircuit/bga-fanout-solver": "github:tscircuit/bga-fanout-solver#247c835cb8d69b65e53891dcf869731079415b39",
38
38
  "@tscircuit/bus-lanes-solver": "github:tscircuit/bus-lanes-solver#0bc8d071241b18a3e7465a878881abe4998f6384",
39
39
  "@tscircuit/capacity-autorouter": "^0.0.941",
40
- "@tscircuit/checks": "^0.0.227",
40
+ "@tscircuit/checks": "^0.0.228",
41
41
  "@tscircuit/circuit-json-util": "^0.0.116",
42
42
  "@tscircuit/common": "^0.0.20",
43
43
  "@tscircuit/copper-pour-solver": "^0.0.62",
@@ -56,7 +56,7 @@
56
56
  "@tscircuit/math-utils": "^0.0.36",
57
57
  "@tscircuit/miniflex": "^0.0.4",
58
58
  "@tscircuit/ngspice-spice-engine": "^0.0.20",
59
- "@tscircuit/props": "^0.0.669",
59
+ "@tscircuit/props": "^0.0.670",
60
60
  "@tscircuit/schematic-match-adapt": "^0.0.18",
61
61
  "@tscircuit/schematic-trace-solver": "^0.0.212",
62
62
  "@tscircuit/solver-utils": "^0.0.16",
@@ -135,7 +135,7 @@
135
135
  },
136
136
  "overrides": {
137
137
  "@tscircuit/circuit-json-util": "^0.0.116",
138
- "@tscircuit/props": "^0.0.669",
138
+ "@tscircuit/props": "^0.0.670",
139
139
  "circuit-json": "^0.0.506"
140
140
  }
141
141
  }