@tscircuit/props 0.0.46 → 0.0.47

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
@@ -349,6 +349,7 @@ declare const commonComponentProps: z.ZodObject<z.objectUtil.extendShape<z.objec
349
349
  jscad?: any;
350
350
  }>]>>;
351
351
  children: z.ZodOptional<z.ZodAny>;
352
+ symbolName: z.ZodOptional<z.ZodString>;
352
353
  }>, "strip", z.ZodTypeAny, {
353
354
  name: string;
354
355
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
@@ -414,6 +415,7 @@ declare const commonComponentProps: z.ZodObject<z.objectUtil.extendShape<z.objec
414
415
  jscad?: any;
415
416
  } | undefined;
416
417
  children?: any;
418
+ symbolName?: string | undefined;
417
419
  }, {
418
420
  name: string;
419
421
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
@@ -481,6 +483,7 @@ declare const commonComponentProps: z.ZodObject<z.objectUtil.extendShape<z.objec
481
483
  jscad?: any;
482
484
  } | undefined;
483
485
  children?: any;
486
+ symbolName?: string | undefined;
484
487
  }>;
485
488
  type CommonComponentProps = z.input<typeof commonComponentProps>;
486
489
  declare const lrPins: readonly ["pin1", "left", "pin2", "right"];
@@ -930,6 +933,7 @@ declare const chipProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.exten
930
933
  jscad?: any;
931
934
  }>]>>;
932
935
  children: z.ZodOptional<z.ZodAny>;
936
+ symbolName: z.ZodOptional<z.ZodString>;
933
937
  }>, {
934
938
  manufacturerPartNumber: z.ZodOptional<z.ZodString>;
935
939
  pinLabels: z.ZodOptional<z.ZodRecord<z.ZodUnion<[z.ZodNumber, z.ZodString]>, z.ZodString>>;
@@ -1123,6 +1127,7 @@ declare const chipProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.exten
1123
1127
  jscad?: any;
1124
1128
  } | undefined;
1125
1129
  children?: any;
1130
+ symbolName?: string | undefined;
1126
1131
  manufacturerPartNumber?: string | undefined;
1127
1132
  pinLabels?: Record<string | number, string> | undefined;
1128
1133
  schPortArrangement?: {
@@ -1229,6 +1234,7 @@ declare const chipProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.exten
1229
1234
  jscad?: any;
1230
1235
  } | undefined;
1231
1236
  children?: any;
1237
+ symbolName?: string | undefined;
1232
1238
  manufacturerPartNumber?: string | undefined;
1233
1239
  pinLabels?: Record<string | number, string> | undefined;
1234
1240
  schPortArrangement?: {
@@ -1533,6 +1539,7 @@ declare const bugProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extend
1533
1539
  jscad?: any;
1534
1540
  }>]>>;
1535
1541
  children: z.ZodOptional<z.ZodAny>;
1542
+ symbolName: z.ZodOptional<z.ZodString>;
1536
1543
  }>, {
1537
1544
  manufacturerPartNumber: z.ZodOptional<z.ZodString>;
1538
1545
  pinLabels: z.ZodOptional<z.ZodRecord<z.ZodUnion<[z.ZodNumber, z.ZodString]>, z.ZodString>>;
@@ -1726,6 +1733,7 @@ declare const bugProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extend
1726
1733
  jscad?: any;
1727
1734
  } | undefined;
1728
1735
  children?: any;
1736
+ symbolName?: string | undefined;
1729
1737
  manufacturerPartNumber?: string | undefined;
1730
1738
  pinLabels?: Record<string | number, string> | undefined;
1731
1739
  schPortArrangement?: {
@@ -1832,6 +1840,7 @@ declare const bugProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extend
1832
1840
  jscad?: any;
1833
1841
  } | undefined;
1834
1842
  children?: any;
1843
+ symbolName?: string | undefined;
1835
1844
  manufacturerPartNumber?: string | undefined;
1836
1845
  pinLabels?: Record<string | number, string> | undefined;
1837
1846
  schPortArrangement?: {
@@ -2136,6 +2145,7 @@ declare const resistorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.e
2136
2145
  jscad?: any;
2137
2146
  }>]>>;
2138
2147
  children: z.ZodOptional<z.ZodAny>;
2148
+ symbolName: z.ZodOptional<z.ZodString>;
2139
2149
  }>, {
2140
2150
  resistance: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
2141
2151
  }>, "strip", z.ZodTypeAny, {
@@ -2204,6 +2214,7 @@ declare const resistorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.e
2204
2214
  jscad?: any;
2205
2215
  } | undefined;
2206
2216
  children?: any;
2217
+ symbolName?: string | undefined;
2207
2218
  }, {
2208
2219
  name: string;
2209
2220
  resistance: string | number;
@@ -2272,6 +2283,7 @@ declare const resistorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.e
2272
2283
  jscad?: any;
2273
2284
  } | undefined;
2274
2285
  children?: any;
2286
+ symbolName?: string | undefined;
2275
2287
  }>;
2276
2288
  declare const resistorPins: readonly ["pin1", "left", "pin2", "right"];
2277
2289
  type ResistorProps = z.input<typeof resistorProps>;
@@ -2529,6 +2541,7 @@ declare const capacitorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.
2529
2541
  jscad?: any;
2530
2542
  }>]>>;
2531
2543
  children: z.ZodOptional<z.ZodAny>;
2544
+ symbolName: z.ZodOptional<z.ZodString>;
2532
2545
  }>, {
2533
2546
  capacitance: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
2534
2547
  }>, "strip", z.ZodTypeAny, {
@@ -2597,6 +2610,7 @@ declare const capacitorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.
2597
2610
  jscad?: any;
2598
2611
  } | undefined;
2599
2612
  children?: any;
2613
+ symbolName?: string | undefined;
2600
2614
  }, {
2601
2615
  name: string;
2602
2616
  capacitance: string | number;
@@ -2665,6 +2679,7 @@ declare const capacitorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.
2665
2679
  jscad?: any;
2666
2680
  } | undefined;
2667
2681
  children?: any;
2682
+ symbolName?: string | undefined;
2668
2683
  }>;
2669
2684
  declare const capacitorPins: readonly ["pin1", "left", "anode", "pos", "pin2", "right", "cathode", "neg"];
2670
2685
  type CapacitorProps = z.input<typeof capacitorProps>;
@@ -2922,6 +2937,7 @@ declare const inductorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.e
2922
2937
  jscad?: any;
2923
2938
  }>]>>;
2924
2939
  children: z.ZodOptional<z.ZodAny>;
2940
+ symbolName: z.ZodOptional<z.ZodString>;
2925
2941
  }>, {
2926
2942
  inductance: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
2927
2943
  }>, "strip", z.ZodTypeAny, {
@@ -2990,6 +3006,7 @@ declare const inductorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.e
2990
3006
  jscad?: any;
2991
3007
  } | undefined;
2992
3008
  children?: any;
3009
+ symbolName?: string | undefined;
2993
3010
  }, {
2994
3011
  name: string;
2995
3012
  inductance: string | number;
@@ -3058,6 +3075,7 @@ declare const inductorProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.e
3058
3075
  jscad?: any;
3059
3076
  } | undefined;
3060
3077
  children?: any;
3078
+ symbolName?: string | undefined;
3061
3079
  }>;
3062
3080
  declare const inductorPins: readonly ["pin1", "left", "pin2", "right"];
3063
3081
  type InductorProps = z.input<typeof inductorProps>;
@@ -3315,6 +3333,7 @@ declare const diodeProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.exte
3315
3333
  jscad?: any;
3316
3334
  }>]>>;
3317
3335
  children: z.ZodOptional<z.ZodAny>;
3336
+ symbolName: z.ZodOptional<z.ZodString>;
3318
3337
  }>, {}>, "strip", z.ZodTypeAny, {
3319
3338
  name: string;
3320
3339
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
@@ -3380,6 +3399,7 @@ declare const diodeProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.exte
3380
3399
  jscad?: any;
3381
3400
  } | undefined;
3382
3401
  children?: any;
3402
+ symbolName?: string | undefined;
3383
3403
  }, {
3384
3404
  name: string;
3385
3405
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
@@ -3447,6 +3467,7 @@ declare const diodeProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.exte
3447
3467
  jscad?: any;
3448
3468
  } | undefined;
3449
3469
  children?: any;
3470
+ symbolName?: string | undefined;
3450
3471
  }>;
3451
3472
  declare const diodePins: readonly ["pin1", "left", "anode", "pos", "pin2", "right", "cathode", "neg"];
3452
3473
  type DiodeProps = z.input<typeof diodeProps>;
@@ -3704,6 +3725,7 @@ declare const ledProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extend
3704
3725
  jscad?: any;
3705
3726
  }>]>>;
3706
3727
  children: z.ZodOptional<z.ZodAny>;
3728
+ symbolName: z.ZodOptional<z.ZodString>;
3707
3729
  }>, {
3708
3730
  color: z.ZodOptional<z.ZodString>;
3709
3731
  }>, "strip", z.ZodTypeAny, {
@@ -3771,6 +3793,7 @@ declare const ledProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extend
3771
3793
  jscad?: any;
3772
3794
  } | undefined;
3773
3795
  children?: any;
3796
+ symbolName?: string | undefined;
3774
3797
  color?: string | undefined;
3775
3798
  }, {
3776
3799
  name: string;
@@ -3839,6 +3862,7 @@ declare const ledProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extend
3839
3862
  jscad?: any;
3840
3863
  } | undefined;
3841
3864
  children?: any;
3865
+ symbolName?: string | undefined;
3842
3866
  color?: string | undefined;
3843
3867
  }>;
3844
3868
  declare const ledPins: readonly ["pin1", "left", "anode", "pos", "pin2", "right", "cathode", "neg"];
@@ -4097,6 +4121,7 @@ declare const switchProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.ext
4097
4121
  jscad?: any;
4098
4122
  }>]>>;
4099
4123
  children: z.ZodOptional<z.ZodAny>;
4124
+ symbolName: z.ZodOptional<z.ZodString>;
4100
4125
  }>, {
4101
4126
  ftype: z.ZodLiteral<"switch">;
4102
4127
  switchType: z.ZodDefault<z.ZodEnum<["spst"]>>;
@@ -4169,6 +4194,7 @@ declare const switchProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.ext
4169
4194
  jscad?: any;
4170
4195
  } | undefined;
4171
4196
  children?: any;
4197
+ symbolName?: string | undefined;
4172
4198
  }, {
4173
4199
  name: string;
4174
4200
  ftype: "switch";
@@ -4237,6 +4263,7 @@ declare const switchProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.ext
4237
4263
  jscad?: any;
4238
4264
  } | undefined;
4239
4265
  children?: any;
4266
+ symbolName?: string | undefined;
4240
4267
  switchType?: "spst" | undefined;
4241
4268
  isNormallyClosed?: boolean | undefined;
4242
4269
  }>;
@@ -5074,6 +5101,7 @@ declare const componentProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.
5074
5101
  jscad?: any;
5075
5102
  }>]>>;
5076
5103
  children: z.ZodOptional<z.ZodAny>;
5104
+ symbolName: z.ZodOptional<z.ZodString>;
5077
5105
  }>, "strip", z.ZodTypeAny, {
5078
5106
  name: string;
5079
5107
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
@@ -5139,6 +5167,7 @@ declare const componentProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.
5139
5167
  jscad?: any;
5140
5168
  } | undefined;
5141
5169
  children?: any;
5170
+ symbolName?: string | undefined;
5142
5171
  }, {
5143
5172
  name: string;
5144
5173
  supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
@@ -5206,6 +5235,7 @@ declare const componentProps: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.
5206
5235
  jscad?: any;
5207
5236
  } | undefined;
5208
5237
  children?: any;
5238
+ symbolName?: string | undefined;
5209
5239
  }>;
5210
5240
  type ComponentProps = z.input<typeof componentProps>;
5211
5241
  declare const groupProps: z.ZodObject<z.objectUtil.extendShape<{
@@ -5514,6 +5544,7 @@ declare const powerSourceProps: z.ZodObject<z.objectUtil.extendShape<z.objectUti
5514
5544
  jscad?: any;
5515
5545
  }>]>>;
5516
5546
  children: z.ZodOptional<z.ZodAny>;
5547
+ symbolName: z.ZodOptional<z.ZodString>;
5517
5548
  }>, {
5518
5549
  voltage: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
5519
5550
  }>, "strip", z.ZodTypeAny, {
@@ -5582,6 +5613,7 @@ declare const powerSourceProps: z.ZodObject<z.objectUtil.extendShape<z.objectUti
5582
5613
  jscad?: any;
5583
5614
  } | undefined;
5584
5615
  children?: any;
5616
+ symbolName?: string | undefined;
5585
5617
  }, {
5586
5618
  name: string;
5587
5619
  voltage: string | number;
@@ -5650,6 +5682,7 @@ declare const powerSourceProps: z.ZodObject<z.objectUtil.extendShape<z.objectUti
5650
5682
  jscad?: any;
5651
5683
  } | undefined;
5652
5684
  children?: any;
5685
+ symbolName?: string | undefined;
5653
5686
  }>;
5654
5687
  type PowerSourceProps = z.input<typeof powerSourceProps>;
5655
5688
  declare const portProps: z.ZodObject<z.objectUtil.extendShape<{
package/dist/index.js CHANGED
@@ -165,7 +165,8 @@ var supplierProps = import_zod6.z.object({
165
165
  var commonComponentProps = commonLayoutProps.merge(supplierProps).extend({
166
166
  name: import_zod6.z.string(),
167
167
  cadModel: import_zod6.z.union([cadModelStl, cadModelObj, cadModelJscad]).optional(),
168
- children: import_zod6.z.any().optional()
168
+ children: import_zod6.z.any().optional(),
169
+ symbolName: import_zod6.z.string().optional()
169
170
  });
170
171
  var lrPins = ["pin1", "left", "pin2", "right"];
171
172
  var lrPolarPins = [
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/index.ts","../lib/typecheck.ts","../lib/common/direction.ts","../lib/common/portHints.ts","../lib/common/layout.ts","../lib/common/point3.ts","../lib/common/cadModel.ts","../lib/common/footprintProp.ts","../lib/common/schematicPinDefinitions.ts","../lib/components/board.ts","../lib/common/point.ts","../lib/components/chip.ts"],"sourcesContent":["/**\n * THINKING ABOUT ADDING SOMETHING TO THIS FILE?\n *\n * THINK AGAIN!\n *\n * This file is TOO BIG! Create files using the pattern in the surrounding\n * directories, then export from this file.\n */\nimport type { LayoutBuilder } from \"@tscircuit/layout\"\nimport {\n type AnySoupElementInput,\n capacitance,\n distance,\n inductance,\n layer_ref,\n length,\n type PCBPlatedHoleInput,\n type PCBSMTPadInput,\n point,\n resistance,\n rotation,\n route_hint_point,\n supplier_name,\n voltage,\n} from \"@tscircuit/soup\"\nimport type { ReactElement } from \"react\"\nimport { z } from \"zod\"\nimport { direction } from \"./common/direction\"\nimport { portHints } from \"./common/portHints\"\nimport {\n commonComponentProps,\n commonLayoutProps,\n lrPins,\n lrPolarPins,\n pcbLayoutProps,\n} from \"./common/layout\"\nimport { explicitPinSideDefinition } from \"./common/schematicPinDefinitions\"\n\nexport * from \"./common/direction\"\nexport * from \"./common/portHints\"\nexport * from \"./common/layout\"\nexport * from \"./common/point3\"\nexport * from \"./common/portHints\"\nexport * from \"./common/footprintProp\"\nexport * from \"./common/schematicPinDefinitions\"\n\nexport * from \"./components/board\"\nexport * from \"./components/chip\"\n\nexport const supplierProps = z.object({\n supplierPartNumbers: z.record(supplier_name, z.array(z.string())).optional(),\n})\nexport type SupplierProps = z.input<typeof supplierProps>\n\nexport const resistorProps = commonComponentProps.extend({\n resistance,\n})\nexport const resistorPins = lrPins\nexport type ResistorProps = z.input<typeof resistorProps>\n\nexport const capacitorProps = commonComponentProps.extend({\n capacitance,\n})\nexport const capacitorPins = lrPolarPins\nexport type CapacitorProps = z.input<typeof capacitorProps>\n\nexport const inductorProps = commonComponentProps.extend({\n inductance,\n})\nexport const inductorPins = lrPins\nexport type InductorProps = z.input<typeof inductorProps>\n\nexport const diodeProps = commonComponentProps.extend({})\nexport const diodePins = lrPolarPins\nexport type DiodeProps = z.input<typeof diodeProps>\n\nexport const ledProps = commonComponentProps.extend({\n color: z.string().optional(),\n})\nexport const ledPins = lrPolarPins\nexport type LedProps = z.input<typeof ledProps>\n\nexport const switchProps = commonComponentProps.extend({\n ftype: z.literal(\"switch\"),\n switchType: z.enum([\"spst\"]).default(\"spst\"),\n isNormallyClosed: z.boolean().default(false),\n})\nexport type SwitchProps = z.input<typeof switchProps>\n\nexport const distanceOrMultiplier = distance.or(z.enum([\"2x\", \"3x\", \"4x\"]))\n\nexport const viaProps = commonLayoutProps.extend({\n fromLayer: layer_ref,\n toLayer: layer_ref,\n holeDiameter: distance,\n outerDiameter: distance,\n})\nexport type ViaProps = z.input<typeof viaProps>\n\nexport const netAliasProps = commonLayoutProps.extend({\n net: z.string().optional(),\n})\nexport type NetAliasProps = z.input<typeof netAliasProps>\n\nexport const portRef = z.union([\n z.string(),\n z.custom<{ getPortSelector: () => string }>((v) =>\n Boolean(v.getPortSelector),\n ),\n])\n\nexport const traceProps = z\n .object({\n path: z.array(portRef),\n thickness: distance.optional(),\n schematicRouteHints: z.array(point).optional(),\n pcbRouteHints: z.array(route_hint_point).optional(),\n })\n .or(\n z.object({\n from: portRef,\n to: portRef,\n thickness: distance.optional(),\n schematicRouteHints: z.array(point).optional(),\n pcbRouteHints: z.array(route_hint_point).optional(),\n }),\n )\nexport type TraceProps = z.input<typeof traceProps>\n\nexport const smtPadProps = z.union([\n pcbLayoutProps.omit({ pcbRotation: true }).extend({\n shape: z.literal(\"circle\"),\n radius: distance.optional(),\n portHints: portHints.optional(),\n }),\n pcbLayoutProps.omit({ pcbRotation: true }).extend({\n shape: z.literal(\"rect\"),\n width: distance.optional(),\n height: distance.optional(),\n portHints: portHints.optional(),\n }),\n])\nexport type SmtPadProps = z.input<typeof smtPadProps>\n\nexport const platedHoleProps = z.union([\n pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({\n shape: z.literal(\"circle\"),\n holeDiameter: distance,\n outerDiameter: distance,\n portHints: portHints.optional(),\n }),\n pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({\n shape: z.literal(\"oval\"),\n outerWidth: distance,\n outerHeight: distance,\n innerWidth: distance,\n innerHeight: distance,\n portHints: portHints.optional(),\n }),\n])\nexport type PlatedHoleProps = z.input<typeof platedHoleProps>\n\nexport const holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({\n holeDiameter: distance,\n})\nexport type HoleProps = z.input<typeof holeProps>\n\nexport const schematicBoxProps = z.object({\n schX: distance,\n schY: distance,\n width: distance,\n height: distance,\n})\nexport type SchematicBoxProps = z.input<typeof schematicBoxProps>\n\nexport const schematicTextProps = z.object({\n schX: distance,\n schY: distance,\n text: z.string(),\n})\nexport type SchematicTextProps = z.input<typeof schematicTextProps>\n\nexport const schematicLineProps = z.object({\n x1: distance,\n y1: distance,\n x2: distance,\n y2: distance,\n})\nexport type SchematicLineProps = z.input<typeof schematicLineProps>\n\nexport const schematicPathProps = z.object({\n points: z.array(point),\n isFilled: z.boolean().optional().default(false),\n fillColor: z.enum([\"red\", \"blue\"]).optional(),\n})\nexport type SchematicPathProps = z.input<typeof schematicPathProps>\n\nexport const constraintProps = z.union([\n z.object({\n type: z.literal(\"xdist\"),\n dist: distance,\n left: z.string(),\n right: z.string(),\n }),\n z.object({\n type: z.literal(\"ydist\"),\n dist: distance,\n top: z.string(),\n bottom: z.string(),\n }),\n])\nexport type ConstraintProps = z.input<typeof constraintProps>\n\nexport const constrainedLayoutProps = z.object({})\nexport type ConstrainedLayoutProps = z.input<typeof constrainedLayoutProps>\n\nexport const footprintProps = z.object({})\nexport type FootprintProps = z.input<typeof footprintProps>\n\nexport const componentProps = commonComponentProps\nexport type ComponentProps = z.input<typeof componentProps>\n\nexport const groupProps = commonLayoutProps.extend({\n name: z.string().optional(),\n layout: z.custom<LayoutBuilder>((v) => true).optional(),\n children: z.any().optional(),\n routingDisabled: z.boolean().optional(),\n})\nexport type GroupProps = z.input<typeof groupProps>\n\nexport const powerSourceProps = commonComponentProps.extend({\n voltage,\n})\nexport type PowerSourceProps = z.input<typeof powerSourceProps>\n\nexport const portProps = commonLayoutProps.extend({\n name: z.string(),\n pinNumber: z.number().optional(),\n aliases: z.array(z.string()).optional(),\n direction: direction,\n})\nexport type PortProps = z.input<typeof portProps>\n\nexport const silkscreenTextProps = pcbLayoutProps.extend({\n text: z.string(),\n anchorAlignment: z\n .enum([\"center\", \"top_left\", \"top_right\", \"bottom_left\", \"bottom_right\"])\n .default(\"center\"),\n font: z.enum([\"tscircuit2024\"]).optional(),\n fontSize: length.optional(),\n})\nexport type SilkscreenTextProps = z.input<typeof silkscreenTextProps>\n\nexport const silkscreenPathProps = pcbLayoutProps\n .omit({ pcbX: true, pcbY: true, pcbRotation: true })\n .extend({\n route: z.array(route_hint_point),\n strokeWidth: length.optional(),\n })\nexport type SilkscreenPathProps = z.input<typeof silkscreenPathProps>\n\nexport const silkscreenLineProps = pcbLayoutProps\n .omit({ pcbX: true, pcbY: true, pcbRotation: true })\n .extend({\n strokeWidth: distance,\n x1: distance,\n y1: distance,\n x2: distance,\n y2: distance,\n })\nexport type SilkscreenLineProps = z.input<typeof silkscreenLineProps>\n\nexport const silkscreenRectProps = pcbLayoutProps\n .omit({ pcbRotation: true })\n .extend({\n isFilled: z.boolean().optional(),\n isOutline: z.boolean().optional(),\n strokeWidth: distance.optional(),\n width: distance,\n height: distance,\n })\nexport type SilkscreenRectProps = z.input<typeof silkscreenRectProps>\n\nexport const silkscreenCircleProps = pcbLayoutProps\n .omit({ pcbRotation: true })\n .extend({\n isFilled: z.boolean().optional(),\n isOutline: z.boolean().optional(),\n strokeWidth: distance.optional(),\n radius: distance,\n })\nexport type SilkscreenCircleProps = z.input<typeof silkscreenCircleProps>\n\nexport const routeHintPointProps = z.object({\n x: distance,\n y: distance,\n via: z.boolean().optional(),\n toLayer: layer_ref.optional(),\n})\n\nexport const traceHintProps = z.object({\n for: z\n .string()\n .optional()\n .describe(\n \"Selector for the port you're targeting, not required if you're inside a trace\",\n ),\n order: z.number().optional(),\n offset: route_hint_point.or(routeHintPointProps).optional(),\n offsets: z\n .array(route_hint_point)\n .or(z.array(routeHintPointProps))\n .optional(),\n traceWidth: z.number().optional(),\n})\n\nexport type TraceHintProps = z.input<typeof traceHintProps>\n\nexport const pcbTraceProps = z.object({\n layer: z.string().optional(),\n thickness: distance.optional(),\n route: z.array(route_hint_point),\n})\nexport type PcbTraceProps = z.input<typeof pcbTraceProps>\n\nexport const fabricationNoteTextProps = pcbLayoutProps.extend({\n text: z.string(),\n anchorAlignment: z\n .enum([\"center\", \"top_left\", \"top_right\", \"bottom_left\", \"bottom_right\"])\n .default(\"center\"),\n font: z.enum([\"tscircuit2024\"]).optional(),\n fontSize: length.optional(),\n})\nexport type FabricationNoteTextProps = z.input<typeof fabricationNoteTextProps>\n\nexport const fabricationNotePathProps = pcbLayoutProps\n .omit({ pcbX: true, pcbY: true, pcbRotation: true })\n .extend({\n route: z.array(route_hint_point),\n strokeWidth: length.optional(),\n })\nexport type FabricationNotePathProps = z.input<typeof fabricationNotePathProps>\n","export const expectTypesMatch = <T1, T2>(\n shouldBe: T1 extends T2 ? (T2 extends T1 ? true : false) : false,\n): void => {}\n","import { expectTypesMatch } from \"lib/typecheck\"\nimport { z } from \"zod\"\nexport const direction = z.enum([\"up\", \"down\", \"left\", \"right\"])\nexport type Direction = \"up\" | \"down\" | \"left\" | \"right\"\n\nexport type DirectionAlongEdge =\n | \"top-to-bottom\"\n | \"left-to-right\"\n | \"bottom-to-top\"\n | \"right-to-left\"\n\nexport const directionAlongEdge = z.enum([\n \"top-to-bottom\",\n \"left-to-right\",\n \"bottom-to-top\",\n \"right-to-left\",\n])\n\nexpectTypesMatch<Direction, z.infer<typeof direction>>(true)\nexpectTypesMatch<DirectionAlongEdge, z.infer<typeof directionAlongEdge>>(true)\n","import { z } from \"zod\"\nimport { expectTypesMatch } from \"lib/typecheck\"\n\nexport const portHints = z.array(z.string().or(z.number()))\nexport type PortHints = (string | number)[]\n\nexpectTypesMatch<PortHints, z.infer<typeof portHints>>(true)\n","import { z } from \"zod\"\nimport {\n type AnySoupElementInput,\n distance,\n layer_ref,\n rotation,\n supplier_name,\n} from \"@tscircuit/soup\"\nimport { point3 } from \"./point3\"\nimport { cadModelJscad, cadModelObj, cadModelStl } from \"./cadModel\"\nimport { footprintProp } from \"./footprintProp\"\n\nexport const pcbLayoutProps = z.object({\n pcbX: distance,\n pcbY: distance,\n pcbRotation: rotation.optional(),\n layer: layer_ref.optional(),\n})\n\nexport const commonLayoutProps = z.object({\n pcbX: distance.optional(),\n pcbY: distance.optional(),\n pcbRotation: rotation.optional(),\n schX: distance.optional(),\n schY: distance.optional(),\n schRotation: rotation.optional(),\n layer: layer_ref.optional(),\n footprint: footprintProp.optional(),\n})\nexport type CommonLayoutProps = z.input<typeof commonLayoutProps>\n\nexport const supplierProps = z.object({\n supplierPartNumbers: z.record(supplier_name, z.array(z.string())).optional(),\n})\nexport type SupplierProps = z.input<typeof supplierProps>\n\nexport const commonComponentProps = commonLayoutProps\n .merge(supplierProps)\n .extend({\n name: z.string(),\n cadModel: z.union([cadModelStl, cadModelObj, cadModelJscad]).optional(),\n children: z.any().optional(),\n })\nexport type CommonComponentProps = z.input<typeof commonComponentProps>\n\nexport const lrPins = [\"pin1\", \"left\", \"pin2\", \"right\"] as const\nexport const lrPolarPins = [\n \"pin1\",\n \"left\",\n \"anode\",\n \"pos\",\n \"pin2\",\n \"right\",\n \"cathode\",\n \"neg\",\n] as const\n\nexport const distanceOrMultiplier = distance.or(z.enum([\"2x\", \"3x\", \"4x\"]))\n","import { distance } from \"@tscircuit/soup\"\nimport { z } from \"zod\"\n\nexport const point3 = z.object({\n x: distance,\n y: distance,\n z: distance,\n})\n","import { z } from \"zod\"\nimport { point3 } from \"./point3\"\n\nexport const rotationPoint3 = z.object({\n x: z.union([z.number(), z.string()]),\n y: z.union([z.number(), z.string()]),\n z: z.union([z.number(), z.string()]),\n})\n\nexport const cadModelBase = z.object({\n rotationOffset: z.number().or(rotationPoint3).optional(),\n positionOffset: point3.optional(),\n size: point3.optional(),\n})\n\nexport const cadModelStl = cadModelBase.extend({\n stlUrl: z.string(),\n})\n\nexport const cadModelObj = cadModelBase.extend({\n objUrl: z.string(),\n mtlUrl: z.string().optional(),\n})\n\nexport const cadModelJscad = cadModelBase.extend({\n jscad: z.any(),\n})\n","import type { LayerRef } from \"@tscircuit/soup\"\nimport type { ReactElement } from \"react\"\nimport { z } from \"zod\"\n\n/**\n * This is an abbreviated definition of the soup elements that you can find here:\n * https://docs.tscircuit.com/api-reference/advanced/soup#pcb-smtpad\n */\nexport type FootprintSoupElements = {\n type: \"pcb_smtpad\" | \"pcb_plated_hole\"\n x: string | number\n y: string | number\n layer?: LayerRef\n holeDiameter?: string | number\n outerDiameter?: string | number\n shape?: \"circle\" | \"rect\"\n width?: string | number\n height?: string | number\n portHints?: string[]\n}\n\nexport type Footprint = string | ReactElement | FootprintSoupElements[]\nexport const footprintProp = z.custom<Footprint>((v) => true)\n","import { z } from \"zod\"\n\nexport const explicitPinSideDefinition = z.object({\n pins: z.array(z.number()),\n direction: z.union([\n z.literal(\"top-to-bottom\"),\n z.literal(\"left-to-right\"),\n z.literal(\"bottom-to-top\"),\n z.literal(\"right-to-left\"),\n ]),\n})\n\nexport const schematicPortArrangement = z\n .object({\n leftSize: z.number().optional().describe(\"@deprecated, use leftPinCount\"),\n topSize: z.number().optional().describe(\"@deprecated, use topPinCount\"),\n rightSize: z.number().optional().describe(\"@deprecated, use rightPinCount\"),\n bottomSize: z\n .number()\n .optional()\n .describe(\"@deprecated, use bottomPinCount\"),\n })\n .or(\n z.object({\n leftPinCount: z.number().optional(),\n rightPinCount: z.number().optional(),\n topPinCount: z.number().optional(),\n bottomPinCount: z.number().optional(),\n }),\n )\n .or(\n z.object({\n leftSide: explicitPinSideDefinition.optional(),\n rightSide: explicitPinSideDefinition.optional(),\n topSide: explicitPinSideDefinition.optional(),\n bottomSide: explicitPinSideDefinition.optional(),\n }),\n )\n","import { z } from \"zod\"\nimport { distance } from \"@tscircuit/soup\"\nimport { point, type Point } from \"lib/common/point\"\nimport { expectTypesMatch } from \"lib/typecheck\"\n\nexport interface BoardProps {\n width?: number | string\n height?: number | string\n outline?: Point[]\n pcbX?: number | string\n pcbY?: number | string\n layout?: any\n routingDisabled?: boolean\n children?: any\n}\n\nexport const boardProps = z.object({\n width: distance.optional(),\n height: distance.optional(),\n outline: z.array(point).optional(),\n pcbX: distance.optional().default(0),\n pcbY: distance.optional().default(0),\n layout: z.any().optional(),\n routingDisabled: z.boolean().optional(),\n children: z.any(),\n})\n\nexpectTypesMatch<BoardProps, z.input<typeof boardProps>>(true)\n","import { distance } from \"@tscircuit/soup\"\nimport { z } from \"zod\"\n\nexport const point = z.object({\n x: distance,\n y: distance,\n})\n\nexport type Point = { x: number | string; y: number | string }\n","import { z } from \"zod\"\nimport { distance } from \"@tscircuit/soup\"\nimport { commonComponentProps } from \"lib/common/layout\"\nimport { schematicPortArrangement } from \"lib/common/schematicPinDefinitions\"\n\nexport const chipProps = commonComponentProps.extend({\n manufacturerPartNumber: z.string().optional(),\n pinLabels: z.record(z.number().or(z.string()), z.string()).optional(),\n\n schPortArrangement: schematicPortArrangement.optional(),\n schPinStyle: z\n .record(\n z.object({\n leftMargin: distance.optional(),\n rightMargin: distance.optional(),\n topMargin: distance.optional(),\n bottomMargin: distance.optional(),\n }),\n )\n .optional(),\n schPinSpacing: distance.optional(),\n schWidth: distance.optional(),\n schHeight: distance.optional(),\n})\n\nexport type SchematicPinStyle = {\n leftMargin?: number | string\n rightMargin?: number | string\n topMargin?: number | string\n bottomMargin?: number | string\n}\nexport type SchematicPinStyles = Record<string, SchematicPinStyle>\n\n/**\n * @deprecated Use ChipProps instead.\n */\nexport const bugProps = chipProps\nexport type ChipProps = z.input<typeof chipProps>\n"],"mappings":"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","names":["distanceOrMultiplier","supplierProps","import_soup","import_zod","import_zod","import_zod","import_soup","import_zod","import_zod","import_zod","import_zod","import_zod","import_soup","import_soup","import_zod","import_zod","import_soup","supplierProps","distanceOrMultiplier"]}
1
+ {"version":3,"sources":["../lib/index.ts","../lib/typecheck.ts","../lib/common/direction.ts","../lib/common/portHints.ts","../lib/common/layout.ts","../lib/common/point3.ts","../lib/common/cadModel.ts","../lib/common/footprintProp.ts","../lib/common/schematicPinDefinitions.ts","../lib/components/board.ts","../lib/common/point.ts","../lib/components/chip.ts"],"sourcesContent":["/**\n * THINKING ABOUT ADDING SOMETHING TO THIS FILE?\n *\n * THINK AGAIN!\n *\n * This file is TOO BIG! Create files using the pattern in the surrounding\n * directories, then export from this file.\n */\nimport type { LayoutBuilder } from \"@tscircuit/layout\"\nimport {\n type AnySoupElementInput,\n capacitance,\n distance,\n inductance,\n layer_ref,\n length,\n type PCBPlatedHoleInput,\n type PCBSMTPadInput,\n point,\n resistance,\n rotation,\n route_hint_point,\n supplier_name,\n voltage,\n} from \"@tscircuit/soup\"\nimport type { ReactElement } from \"react\"\nimport { z } from \"zod\"\nimport { direction } from \"./common/direction\"\nimport { portHints } from \"./common/portHints\"\nimport {\n commonComponentProps,\n commonLayoutProps,\n lrPins,\n lrPolarPins,\n pcbLayoutProps,\n} from \"./common/layout\"\nimport { explicitPinSideDefinition } from \"./common/schematicPinDefinitions\"\n\nexport * from \"./common/direction\"\nexport * from \"./common/portHints\"\nexport * from \"./common/layout\"\nexport * from \"./common/point3\"\nexport * from \"./common/portHints\"\nexport * from \"./common/footprintProp\"\nexport * from \"./common/schematicPinDefinitions\"\n\nexport * from \"./components/board\"\nexport * from \"./components/chip\"\n\nexport const supplierProps = z.object({\n supplierPartNumbers: z.record(supplier_name, z.array(z.string())).optional(),\n})\nexport type SupplierProps = z.input<typeof supplierProps>\n\nexport const resistorProps = commonComponentProps.extend({\n resistance,\n})\nexport const resistorPins = lrPins\nexport type ResistorProps = z.input<typeof resistorProps>\n\nexport const capacitorProps = commonComponentProps.extend({\n capacitance,\n})\nexport const capacitorPins = lrPolarPins\nexport type CapacitorProps = z.input<typeof capacitorProps>\n\nexport const inductorProps = commonComponentProps.extend({\n inductance,\n})\nexport const inductorPins = lrPins\nexport type InductorProps = z.input<typeof inductorProps>\n\nexport const diodeProps = commonComponentProps.extend({})\nexport const diodePins = lrPolarPins\nexport type DiodeProps = z.input<typeof diodeProps>\n\nexport const ledProps = commonComponentProps.extend({\n color: z.string().optional(),\n})\nexport const ledPins = lrPolarPins\nexport type LedProps = z.input<typeof ledProps>\n\nexport const switchProps = commonComponentProps.extend({\n ftype: z.literal(\"switch\"),\n switchType: z.enum([\"spst\"]).default(\"spst\"),\n isNormallyClosed: z.boolean().default(false),\n})\nexport type SwitchProps = z.input<typeof switchProps>\n\nexport const distanceOrMultiplier = distance.or(z.enum([\"2x\", \"3x\", \"4x\"]))\n\nexport const viaProps = commonLayoutProps.extend({\n fromLayer: layer_ref,\n toLayer: layer_ref,\n holeDiameter: distance,\n outerDiameter: distance,\n})\nexport type ViaProps = z.input<typeof viaProps>\n\nexport const netAliasProps = commonLayoutProps.extend({\n net: z.string().optional(),\n})\nexport type NetAliasProps = z.input<typeof netAliasProps>\n\nexport const portRef = z.union([\n z.string(),\n z.custom<{ getPortSelector: () => string }>((v) =>\n Boolean(v.getPortSelector),\n ),\n])\n\nexport const traceProps = z\n .object({\n path: z.array(portRef),\n thickness: distance.optional(),\n schematicRouteHints: z.array(point).optional(),\n pcbRouteHints: z.array(route_hint_point).optional(),\n })\n .or(\n z.object({\n from: portRef,\n to: portRef,\n thickness: distance.optional(),\n schematicRouteHints: z.array(point).optional(),\n pcbRouteHints: z.array(route_hint_point).optional(),\n }),\n )\nexport type TraceProps = z.input<typeof traceProps>\n\nexport const smtPadProps = z.union([\n pcbLayoutProps.omit({ pcbRotation: true }).extend({\n shape: z.literal(\"circle\"),\n radius: distance.optional(),\n portHints: portHints.optional(),\n }),\n pcbLayoutProps.omit({ pcbRotation: true }).extend({\n shape: z.literal(\"rect\"),\n width: distance.optional(),\n height: distance.optional(),\n portHints: portHints.optional(),\n }),\n])\nexport type SmtPadProps = z.input<typeof smtPadProps>\n\nexport const platedHoleProps = z.union([\n pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({\n shape: z.literal(\"circle\"),\n holeDiameter: distance,\n outerDiameter: distance,\n portHints: portHints.optional(),\n }),\n pcbLayoutProps.omit({ pcbRotation: true, layer: true }).extend({\n shape: z.literal(\"oval\"),\n outerWidth: distance,\n outerHeight: distance,\n innerWidth: distance,\n innerHeight: distance,\n portHints: portHints.optional(),\n }),\n])\nexport type PlatedHoleProps = z.input<typeof platedHoleProps>\n\nexport const holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({\n holeDiameter: distance,\n})\nexport type HoleProps = z.input<typeof holeProps>\n\nexport const schematicBoxProps = z.object({\n schX: distance,\n schY: distance,\n width: distance,\n height: distance,\n})\nexport type SchematicBoxProps = z.input<typeof schematicBoxProps>\n\nexport const schematicTextProps = z.object({\n schX: distance,\n schY: distance,\n text: z.string(),\n})\nexport type SchematicTextProps = z.input<typeof schematicTextProps>\n\nexport const schematicLineProps = z.object({\n x1: distance,\n y1: distance,\n x2: distance,\n y2: distance,\n})\nexport type SchematicLineProps = z.input<typeof schematicLineProps>\n\nexport const schematicPathProps = z.object({\n points: z.array(point),\n isFilled: z.boolean().optional().default(false),\n fillColor: z.enum([\"red\", \"blue\"]).optional(),\n})\nexport type SchematicPathProps = z.input<typeof schematicPathProps>\n\nexport const constraintProps = z.union([\n z.object({\n type: z.literal(\"xdist\"),\n dist: distance,\n left: z.string(),\n right: z.string(),\n }),\n z.object({\n type: z.literal(\"ydist\"),\n dist: distance,\n top: z.string(),\n bottom: z.string(),\n }),\n])\nexport type ConstraintProps = z.input<typeof constraintProps>\n\nexport const constrainedLayoutProps = z.object({})\nexport type ConstrainedLayoutProps = z.input<typeof constrainedLayoutProps>\n\nexport const footprintProps = z.object({})\nexport type FootprintProps = z.input<typeof footprintProps>\n\nexport const componentProps = commonComponentProps\nexport type ComponentProps = z.input<typeof componentProps>\n\nexport const groupProps = commonLayoutProps.extend({\n name: z.string().optional(),\n layout: z.custom<LayoutBuilder>((v) => true).optional(),\n children: z.any().optional(),\n routingDisabled: z.boolean().optional(),\n})\nexport type GroupProps = z.input<typeof groupProps>\n\nexport const powerSourceProps = commonComponentProps.extend({\n voltage,\n})\nexport type PowerSourceProps = z.input<typeof powerSourceProps>\n\nexport const portProps = commonLayoutProps.extend({\n name: z.string(),\n pinNumber: z.number().optional(),\n aliases: z.array(z.string()).optional(),\n direction: direction,\n})\nexport type PortProps = z.input<typeof portProps>\n\nexport const silkscreenTextProps = pcbLayoutProps.extend({\n text: z.string(),\n anchorAlignment: z\n .enum([\"center\", \"top_left\", \"top_right\", \"bottom_left\", \"bottom_right\"])\n .default(\"center\"),\n font: z.enum([\"tscircuit2024\"]).optional(),\n fontSize: length.optional(),\n})\nexport type SilkscreenTextProps = z.input<typeof silkscreenTextProps>\n\nexport const silkscreenPathProps = pcbLayoutProps\n .omit({ pcbX: true, pcbY: true, pcbRotation: true })\n .extend({\n route: z.array(route_hint_point),\n strokeWidth: length.optional(),\n })\nexport type SilkscreenPathProps = z.input<typeof silkscreenPathProps>\n\nexport const silkscreenLineProps = pcbLayoutProps\n .omit({ pcbX: true, pcbY: true, pcbRotation: true })\n .extend({\n strokeWidth: distance,\n x1: distance,\n y1: distance,\n x2: distance,\n y2: distance,\n })\nexport type SilkscreenLineProps = z.input<typeof silkscreenLineProps>\n\nexport const silkscreenRectProps = pcbLayoutProps\n .omit({ pcbRotation: true })\n .extend({\n isFilled: z.boolean().optional(),\n isOutline: z.boolean().optional(),\n strokeWidth: distance.optional(),\n width: distance,\n height: distance,\n })\nexport type SilkscreenRectProps = z.input<typeof silkscreenRectProps>\n\nexport const silkscreenCircleProps = pcbLayoutProps\n .omit({ pcbRotation: true })\n .extend({\n isFilled: z.boolean().optional(),\n isOutline: z.boolean().optional(),\n strokeWidth: distance.optional(),\n radius: distance,\n })\nexport type SilkscreenCircleProps = z.input<typeof silkscreenCircleProps>\n\nexport const routeHintPointProps = z.object({\n x: distance,\n y: distance,\n via: z.boolean().optional(),\n toLayer: layer_ref.optional(),\n})\n\nexport const traceHintProps = z.object({\n for: z\n .string()\n .optional()\n .describe(\n \"Selector for the port you're targeting, not required if you're inside a trace\",\n ),\n order: z.number().optional(),\n offset: route_hint_point.or(routeHintPointProps).optional(),\n offsets: z\n .array(route_hint_point)\n .or(z.array(routeHintPointProps))\n .optional(),\n traceWidth: z.number().optional(),\n})\n\nexport type TraceHintProps = z.input<typeof traceHintProps>\n\nexport const pcbTraceProps = z.object({\n layer: z.string().optional(),\n thickness: distance.optional(),\n route: z.array(route_hint_point),\n})\nexport type PcbTraceProps = z.input<typeof pcbTraceProps>\n\nexport const fabricationNoteTextProps = pcbLayoutProps.extend({\n text: z.string(),\n anchorAlignment: z\n .enum([\"center\", \"top_left\", \"top_right\", \"bottom_left\", \"bottom_right\"])\n .default(\"center\"),\n font: z.enum([\"tscircuit2024\"]).optional(),\n fontSize: length.optional(),\n})\nexport type FabricationNoteTextProps = z.input<typeof fabricationNoteTextProps>\n\nexport const fabricationNotePathProps = pcbLayoutProps\n .omit({ pcbX: true, pcbY: true, pcbRotation: true })\n .extend({\n route: z.array(route_hint_point),\n strokeWidth: length.optional(),\n })\nexport type FabricationNotePathProps = z.input<typeof fabricationNotePathProps>\n","export const expectTypesMatch = <T1, T2>(\n shouldBe: T1 extends T2 ? (T2 extends T1 ? true : false) : false,\n): void => {}\n","import { expectTypesMatch } from \"lib/typecheck\"\nimport { z } from \"zod\"\nexport const direction = z.enum([\"up\", \"down\", \"left\", \"right\"])\nexport type Direction = \"up\" | \"down\" | \"left\" | \"right\"\n\nexport type DirectionAlongEdge =\n | \"top-to-bottom\"\n | \"left-to-right\"\n | \"bottom-to-top\"\n | \"right-to-left\"\n\nexport const directionAlongEdge = z.enum([\n \"top-to-bottom\",\n \"left-to-right\",\n \"bottom-to-top\",\n \"right-to-left\",\n])\n\nexpectTypesMatch<Direction, z.infer<typeof direction>>(true)\nexpectTypesMatch<DirectionAlongEdge, z.infer<typeof directionAlongEdge>>(true)\n","import { z } from \"zod\"\nimport { expectTypesMatch } from \"lib/typecheck\"\n\nexport const portHints = z.array(z.string().or(z.number()))\nexport type PortHints = (string | number)[]\n\nexpectTypesMatch<PortHints, z.infer<typeof portHints>>(true)\n","import { z } from \"zod\"\nimport {\n type AnySoupElementInput,\n distance,\n layer_ref,\n rotation,\n supplier_name,\n} from \"@tscircuit/soup\"\nimport { point3 } from \"./point3\"\nimport { cadModelJscad, cadModelObj, cadModelStl } from \"./cadModel\"\nimport { footprintProp } from \"./footprintProp\"\n\nexport const pcbLayoutProps = z.object({\n pcbX: distance,\n pcbY: distance,\n pcbRotation: rotation.optional(),\n layer: layer_ref.optional(),\n})\n\nexport const commonLayoutProps = z.object({\n pcbX: distance.optional(),\n pcbY: distance.optional(),\n pcbRotation: rotation.optional(),\n schX: distance.optional(),\n schY: distance.optional(),\n schRotation: rotation.optional(),\n layer: layer_ref.optional(),\n footprint: footprintProp.optional(),\n})\nexport type CommonLayoutProps = z.input<typeof commonLayoutProps>\n\nexport const supplierProps = z.object({\n supplierPartNumbers: z.record(supplier_name, z.array(z.string())).optional(),\n})\nexport type SupplierProps = z.input<typeof supplierProps>\n\nexport const commonComponentProps = commonLayoutProps\n .merge(supplierProps)\n .extend({\n name: z.string(),\n cadModel: z.union([cadModelStl, cadModelObj, cadModelJscad]).optional(),\n children: z.any().optional(),\n symbolName: z.string().optional(),\n })\nexport type CommonComponentProps = z.input<typeof commonComponentProps>\n\nexport const lrPins = [\"pin1\", \"left\", \"pin2\", \"right\"] as const\nexport const lrPolarPins = [\n \"pin1\",\n \"left\",\n \"anode\",\n \"pos\",\n \"pin2\",\n \"right\",\n \"cathode\",\n \"neg\",\n] as const\n\nexport const distanceOrMultiplier = distance.or(z.enum([\"2x\", \"3x\", \"4x\"]))\n","import { distance } from \"@tscircuit/soup\"\nimport { z } from \"zod\"\n\nexport const point3 = z.object({\n x: distance,\n y: distance,\n z: distance,\n})\n","import { z } from \"zod\"\nimport { point3 } from \"./point3\"\n\nexport const rotationPoint3 = z.object({\n x: z.union([z.number(), z.string()]),\n y: z.union([z.number(), z.string()]),\n z: z.union([z.number(), z.string()]),\n})\n\nexport const cadModelBase = z.object({\n rotationOffset: z.number().or(rotationPoint3).optional(),\n positionOffset: point3.optional(),\n size: point3.optional(),\n})\n\nexport const cadModelStl = cadModelBase.extend({\n stlUrl: z.string(),\n})\n\nexport const cadModelObj = cadModelBase.extend({\n objUrl: z.string(),\n mtlUrl: z.string().optional(),\n})\n\nexport const cadModelJscad = cadModelBase.extend({\n jscad: z.any(),\n})\n","import type { LayerRef } from \"@tscircuit/soup\"\nimport type { ReactElement } from \"react\"\nimport { z } from \"zod\"\n\n/**\n * This is an abbreviated definition of the soup elements that you can find here:\n * https://docs.tscircuit.com/api-reference/advanced/soup#pcb-smtpad\n */\nexport type FootprintSoupElements = {\n type: \"pcb_smtpad\" | \"pcb_plated_hole\"\n x: string | number\n y: string | number\n layer?: LayerRef\n holeDiameter?: string | number\n outerDiameter?: string | number\n shape?: \"circle\" | \"rect\"\n width?: string | number\n height?: string | number\n portHints?: string[]\n}\n\nexport type Footprint = string | ReactElement | FootprintSoupElements[]\nexport const footprintProp = z.custom<Footprint>((v) => true)\n","import { z } from \"zod\"\n\nexport const explicitPinSideDefinition = z.object({\n pins: z.array(z.number()),\n direction: z.union([\n z.literal(\"top-to-bottom\"),\n z.literal(\"left-to-right\"),\n z.literal(\"bottom-to-top\"),\n z.literal(\"right-to-left\"),\n ]),\n})\n\nexport const schematicPortArrangement = z\n .object({\n leftSize: z.number().optional().describe(\"@deprecated, use leftPinCount\"),\n topSize: z.number().optional().describe(\"@deprecated, use topPinCount\"),\n rightSize: z.number().optional().describe(\"@deprecated, use rightPinCount\"),\n bottomSize: z\n .number()\n .optional()\n .describe(\"@deprecated, use bottomPinCount\"),\n })\n .or(\n z.object({\n leftPinCount: z.number().optional(),\n rightPinCount: z.number().optional(),\n topPinCount: z.number().optional(),\n bottomPinCount: z.number().optional(),\n }),\n )\n .or(\n z.object({\n leftSide: explicitPinSideDefinition.optional(),\n rightSide: explicitPinSideDefinition.optional(),\n topSide: explicitPinSideDefinition.optional(),\n bottomSide: explicitPinSideDefinition.optional(),\n }),\n )\n","import { z } from \"zod\"\nimport { distance } from \"@tscircuit/soup\"\nimport { point, type Point } from \"lib/common/point\"\nimport { expectTypesMatch } from \"lib/typecheck\"\n\nexport interface BoardProps {\n width?: number | string\n height?: number | string\n outline?: Point[]\n pcbX?: number | string\n pcbY?: number | string\n layout?: any\n routingDisabled?: boolean\n children?: any\n}\n\nexport const boardProps = z.object({\n width: distance.optional(),\n height: distance.optional(),\n outline: z.array(point).optional(),\n pcbX: distance.optional().default(0),\n pcbY: distance.optional().default(0),\n layout: z.any().optional(),\n routingDisabled: z.boolean().optional(),\n children: z.any(),\n})\n\nexpectTypesMatch<BoardProps, z.input<typeof boardProps>>(true)\n","import { distance } from \"@tscircuit/soup\"\nimport { z } from \"zod\"\n\nexport const point = z.object({\n x: distance,\n y: distance,\n})\n\nexport type Point = { x: number | string; y: number | string }\n","import { z } from \"zod\"\nimport { distance } from \"@tscircuit/soup\"\nimport { commonComponentProps } from \"lib/common/layout\"\nimport { schematicPortArrangement } from \"lib/common/schematicPinDefinitions\"\n\nexport const chipProps = commonComponentProps.extend({\n manufacturerPartNumber: z.string().optional(),\n pinLabels: z.record(z.number().or(z.string()), z.string()).optional(),\n\n schPortArrangement: schematicPortArrangement.optional(),\n schPinStyle: z\n .record(\n z.object({\n leftMargin: distance.optional(),\n rightMargin: distance.optional(),\n topMargin: distance.optional(),\n bottomMargin: distance.optional(),\n }),\n )\n .optional(),\n schPinSpacing: distance.optional(),\n schWidth: distance.optional(),\n schHeight: distance.optional(),\n})\n\nexport type SchematicPinStyle = {\n leftMargin?: number | string\n rightMargin?: number | string\n topMargin?: number | string\n bottomMargin?: number | string\n}\nexport type SchematicPinStyles = Record<string, SchematicPinStyle>\n\n/**\n * @deprecated Use ChipProps instead.\n */\nexport const bugProps = chipProps\nexport type ChipProps = z.input<typeof chipProps>\n"],"mappings":"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","names":["distanceOrMultiplier","supplierProps","import_soup","import_zod","import_zod","import_zod","import_soup","import_zod","import_zod","import_zod","import_zod","import_zod","import_soup","import_soup","import_zod","import_zod","import_soup","supplierProps","distanceOrMultiplier"]}
@@ -40,6 +40,7 @@ export const commonComponentProps = commonLayoutProps
40
40
  name: z.string(),
41
41
  cadModel: z.union([cadModelStl, cadModelObj, cadModelJscad]).optional(),
42
42
  children: z.any().optional(),
43
+ symbolName: z.string().optional(),
43
44
  })
44
45
  export type CommonComponentProps = z.input<typeof commonComponentProps>
45
46
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tscircuit/props",
3
- "version": "0.0.46",
3
+ "version": "0.0.47",
4
4
  "description": "Props for tscircuit builtin component types",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {