@tscircuit/core 0.0.1236 → 0.0.1238
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 +529 -3
- package/dist/index.js +240 -80
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as circuit_json from 'circuit-json';
|
|
2
|
-
import { PcbTraceError, PcbPlacementError, PcbManualEditConflictWarning, PcbViaClearanceError, LayerRef, AnyCircuitElement, Size, PcbTrace as PcbTrace$1, PcbTraceRoutePoint, AnySourceComponent, PcbComponent,
|
|
2
|
+
import { PcbTraceError, PcbPlacementError, PcbManualEditConflictWarning, PcbViaClearanceError, LayerRef, AnyCircuitElement, Size, PcbTrace as PcbTrace$1, PcbVia as PcbVia$1, PcbTraceRoutePoint, AnySourceComponent, PcbComponent, SchematicPort, SchematicComponent, RouteHintPoint, CircuitJson } from 'circuit-json';
|
|
3
3
|
import * as _tscircuit_props from '@tscircuit/props';
|
|
4
4
|
import { PlatformConfig, traceProps, netProps, AutorouterProp, AutoroutingPhaseProps, subcircuitGroupProps, AutorouterConfig, PcbSx, portProps, SupplierPartNumbers, CadModelProp, SchematicPortArrangement, groupProps, boardProps, subcircuitProps, subpanelProps, capacitorProps, chipProps, pinoutProps, diodeProps, fuseProps, jumperProps, interconnectProps, solderjumperProps, ledProps, powerSourceProps, voltageSourceProps, currentSourceProps, resistorProps, constraintProps, autoroutingPhaseProps, fabricationNoteRectProps, fabricationNotePathProps, fabricationNoteTextProps, fabricationNoteDimensionProps, pcbNoteLineProps, pcbNoteRectProps, pcbNoteTextProps, pcbNotePathProps, pcbNoteDimensionProps, footprintProps, breakoutProps, breakoutPointProps, holeProps, pcbKeepoutProps, netLabelProps, cadmodelProps, cadassemblyProps, platedHoleProps, courtyardCircleProps, courtyardOutlineProps, courtyardRectProps, silkscreenCircleProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, silkscreenLineProps, smtPadProps, fiducialProps, traceHintProps, viaProps, copperPourProps, copperTextProps, cutoutProps, batteryProps, pinHeaderProps, resonatorProps, inductorProps, potentiometerProps, pushButtonProps, crystalProps, transistorProps, mosfetProps, opampProps, OpAmpPinLabels, switchProps, SwitchProps, testpointProps, schematicTextProps, schematicLineProps, schematicRectProps, schematicArcProps, schematicCircleProps, schematicPathProps, schematicBoxProps, schematicSectionProps, schematicTableProps, schematicRowProps, schematicCellProps, symbolProps, analogSimulationProps, voltageProbeProps, CapacitorProps, ChipProps, DiodeProps, ResistorProps, ManualEditEvent, ManualEditsFile, ChipConnections, manual_edits_file } from '@tscircuit/props';
|
|
5
5
|
export { kicadFootprintStrings } from '@tscircuit/props';
|
|
@@ -459,6 +459,7 @@ declare class Trace extends PrimitiveComponent<typeof traceProps> implements Tra
|
|
|
459
459
|
pcb_trace_id: string | null;
|
|
460
460
|
schematic_trace_id: string | null;
|
|
461
461
|
_inflatedPcbTrace?: PcbTrace$1;
|
|
462
|
+
_inflatedPcbVias?: PcbVia$1[];
|
|
462
463
|
_portsRoutedOnPcb: Port[];
|
|
463
464
|
subcircuit_connectivity_map_key: string | null;
|
|
464
465
|
_traceConnectionHash: string | null;
|
|
@@ -2301,7 +2302,7 @@ declare class Group<Props extends z.ZodType<any, any, any> = typeof groupProps>
|
|
|
2301
2302
|
getNormalComponentNameMap(): Map<string, NormalComponent[]>;
|
|
2302
2303
|
_asyncAutoroutingResult: {
|
|
2303
2304
|
output_simple_route_json?: SimpleRouteJson;
|
|
2304
|
-
output_pcb_traces?: (PcbTrace$1 | PcbVia)[];
|
|
2305
|
+
output_pcb_traces?: (PcbTrace$1 | PcbVia$1)[];
|
|
2305
2306
|
output_jumpers?: Array<{
|
|
2306
2307
|
jumper_footprint: string;
|
|
2307
2308
|
center: {
|
|
@@ -83244,6 +83245,531 @@ declare class PcbTrace extends PrimitiveComponent<typeof pcbTraceProps> {
|
|
|
83244
83245
|
};
|
|
83245
83246
|
}
|
|
83246
83247
|
|
|
83248
|
+
declare const pcbViaProps: z.ZodObject<{
|
|
83249
|
+
pcbX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83250
|
+
pcbY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83251
|
+
pcbLeftEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83252
|
+
pcbRightEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83253
|
+
pcbTopEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83254
|
+
pcbBottomEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83255
|
+
pcbOffsetX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83256
|
+
pcbOffsetY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83257
|
+
pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83258
|
+
pcbPositionAnchor: z.ZodOptional<z.ZodString>;
|
|
83259
|
+
pcbPositionMode: z.ZodOptional<z.ZodEnum<["relative_to_group_anchor", "auto", "relative_to_board_anchor", "relative_to_component_anchor"]>>;
|
|
83260
|
+
shouldBeOnEdgeOfBoard: z.ZodOptional<z.ZodBoolean>;
|
|
83261
|
+
pcbMarginTop: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83262
|
+
pcbMarginRight: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83263
|
+
pcbMarginBottom: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83264
|
+
pcbMarginLeft: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83265
|
+
pcbMarginX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83266
|
+
pcbMarginY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83267
|
+
pcbStyle: z.ZodOptional<z.ZodObject<{
|
|
83268
|
+
silkscreenFontSize: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83269
|
+
viaPadDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83270
|
+
viaHoleDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83271
|
+
silkscreenTextPosition: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["centered", "outside", "none"]>, z.ZodObject<{
|
|
83272
|
+
offsetX: z.ZodNumber;
|
|
83273
|
+
offsetY: z.ZodNumber;
|
|
83274
|
+
}, "strip", z.ZodTypeAny, {
|
|
83275
|
+
offsetX: number;
|
|
83276
|
+
offsetY: number;
|
|
83277
|
+
}, {
|
|
83278
|
+
offsetX: number;
|
|
83279
|
+
offsetY: number;
|
|
83280
|
+
}>]>>;
|
|
83281
|
+
silkscreenTextVisibility: z.ZodOptional<z.ZodEnum<["hidden", "visible", "inherit"]>>;
|
|
83282
|
+
}, "strip", z.ZodTypeAny, {
|
|
83283
|
+
silkscreenFontSize?: number | undefined;
|
|
83284
|
+
viaPadDiameter?: number | undefined;
|
|
83285
|
+
viaHoleDiameter?: number | undefined;
|
|
83286
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83287
|
+
offsetX: number;
|
|
83288
|
+
offsetY: number;
|
|
83289
|
+
} | undefined;
|
|
83290
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83291
|
+
}, {
|
|
83292
|
+
silkscreenFontSize?: string | number | undefined;
|
|
83293
|
+
viaPadDiameter?: string | number | undefined;
|
|
83294
|
+
viaHoleDiameter?: string | number | undefined;
|
|
83295
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83296
|
+
offsetX: number;
|
|
83297
|
+
offsetY: number;
|
|
83298
|
+
} | undefined;
|
|
83299
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83300
|
+
}>>;
|
|
83301
|
+
pcbSx: z.ZodOptional<z.ZodType<_tscircuit_props.PcbSx, z.ZodTypeDef, _tscircuit_props.PcbSx>>;
|
|
83302
|
+
schMarginTop: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83303
|
+
schMarginRight: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83304
|
+
schMarginBottom: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83305
|
+
schMarginLeft: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83306
|
+
schMarginX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83307
|
+
schMarginY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83308
|
+
schX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83309
|
+
schY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83310
|
+
schRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83311
|
+
layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83312
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83313
|
+
}, "strip", z.ZodTypeAny, {
|
|
83314
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83315
|
+
}, {
|
|
83316
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83317
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83318
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83319
|
+
}>>;
|
|
83320
|
+
footprint: z.ZodOptional<z.ZodType<_tscircuit_props.FootprintProp, z.ZodTypeDef, _tscircuit_props.FootprintProp>>;
|
|
83321
|
+
symbol: z.ZodOptional<z.ZodType<_tscircuit_props.SymbolProp, z.ZodTypeDef, _tscircuit_props.SymbolProp>>;
|
|
83322
|
+
schStyle: z.ZodOptional<z.ZodObject<{
|
|
83323
|
+
defaultPassiveSize: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["xs", "sm", "md"]>, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83324
|
+
defaultCapacitorOrientation: z.ZodOptional<z.ZodEnum<["vertical", "none"]>>;
|
|
83325
|
+
}, "strip", z.ZodTypeAny, {
|
|
83326
|
+
defaultPassiveSize?: number | "xs" | "sm" | "md" | undefined;
|
|
83327
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83328
|
+
}, {
|
|
83329
|
+
defaultPassiveSize?: string | number | undefined;
|
|
83330
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83331
|
+
}>>;
|
|
83332
|
+
relative: z.ZodOptional<z.ZodBoolean>;
|
|
83333
|
+
schRelative: z.ZodOptional<z.ZodBoolean>;
|
|
83334
|
+
pcbRelative: z.ZodOptional<z.ZodBoolean>;
|
|
83335
|
+
} & {
|
|
83336
|
+
holeDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83337
|
+
outerDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83338
|
+
fromLayer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83339
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83340
|
+
}, "strip", z.ZodTypeAny, {
|
|
83341
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83342
|
+
}, {
|
|
83343
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83344
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83345
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83346
|
+
}>>;
|
|
83347
|
+
toLayer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83348
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83349
|
+
}, "strip", z.ZodTypeAny, {
|
|
83350
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83351
|
+
}, {
|
|
83352
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83353
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83354
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83355
|
+
}>>;
|
|
83356
|
+
layers: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83357
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83358
|
+
}, "strip", z.ZodTypeAny, {
|
|
83359
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83360
|
+
}, {
|
|
83361
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83362
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83363
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83364
|
+
}>, "many">>;
|
|
83365
|
+
pcbTraceId: z.ZodOptional<z.ZodString>;
|
|
83366
|
+
netIsAssignable: z.ZodOptional<z.ZodBoolean>;
|
|
83367
|
+
netAssigned: z.ZodOptional<z.ZodBoolean>;
|
|
83368
|
+
isTented: z.ZodOptional<z.ZodBoolean>;
|
|
83369
|
+
}, "strip", z.ZodTypeAny, {
|
|
83370
|
+
symbol?: _tscircuit_props.SymbolProp | undefined;
|
|
83371
|
+
layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
|
|
83372
|
+
layers?: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6")[] | undefined;
|
|
83373
|
+
schX?: number | undefined;
|
|
83374
|
+
schY?: number | undefined;
|
|
83375
|
+
pcbX?: string | number | undefined;
|
|
83376
|
+
pcbY?: string | number | undefined;
|
|
83377
|
+
pcbLeftEdgeX?: string | number | undefined;
|
|
83378
|
+
pcbRightEdgeX?: string | number | undefined;
|
|
83379
|
+
pcbTopEdgeY?: string | number | undefined;
|
|
83380
|
+
pcbBottomEdgeY?: string | number | undefined;
|
|
83381
|
+
relative?: boolean | undefined;
|
|
83382
|
+
pcbOffsetX?: number | undefined;
|
|
83383
|
+
pcbOffsetY?: number | undefined;
|
|
83384
|
+
pcbRotation?: number | undefined;
|
|
83385
|
+
pcbPositionAnchor?: string | undefined;
|
|
83386
|
+
pcbPositionMode?: "auto" | "relative_to_group_anchor" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
|
|
83387
|
+
shouldBeOnEdgeOfBoard?: boolean | undefined;
|
|
83388
|
+
pcbMarginTop?: number | undefined;
|
|
83389
|
+
pcbMarginRight?: number | undefined;
|
|
83390
|
+
pcbMarginBottom?: number | undefined;
|
|
83391
|
+
pcbMarginLeft?: number | undefined;
|
|
83392
|
+
pcbMarginX?: number | undefined;
|
|
83393
|
+
pcbMarginY?: number | undefined;
|
|
83394
|
+
pcbStyle?: {
|
|
83395
|
+
silkscreenFontSize?: number | undefined;
|
|
83396
|
+
viaPadDiameter?: number | undefined;
|
|
83397
|
+
viaHoleDiameter?: number | undefined;
|
|
83398
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83399
|
+
offsetX: number;
|
|
83400
|
+
offsetY: number;
|
|
83401
|
+
} | undefined;
|
|
83402
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83403
|
+
} | undefined;
|
|
83404
|
+
pcbSx?: _tscircuit_props.PcbSx | undefined;
|
|
83405
|
+
schMarginTop?: number | undefined;
|
|
83406
|
+
schMarginRight?: number | undefined;
|
|
83407
|
+
schMarginBottom?: number | undefined;
|
|
83408
|
+
schMarginLeft?: number | undefined;
|
|
83409
|
+
schMarginX?: number | undefined;
|
|
83410
|
+
schMarginY?: number | undefined;
|
|
83411
|
+
schRotation?: number | undefined;
|
|
83412
|
+
footprint?: _tscircuit_props.FootprintProp | undefined;
|
|
83413
|
+
schStyle?: {
|
|
83414
|
+
defaultPassiveSize?: number | "xs" | "sm" | "md" | undefined;
|
|
83415
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83416
|
+
} | undefined;
|
|
83417
|
+
schRelative?: boolean | undefined;
|
|
83418
|
+
pcbRelative?: boolean | undefined;
|
|
83419
|
+
fromLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
|
|
83420
|
+
toLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
|
|
83421
|
+
holeDiameter?: number | undefined;
|
|
83422
|
+
outerDiameter?: number | undefined;
|
|
83423
|
+
pcbTraceId?: string | undefined;
|
|
83424
|
+
netIsAssignable?: boolean | undefined;
|
|
83425
|
+
netAssigned?: boolean | undefined;
|
|
83426
|
+
isTented?: boolean | undefined;
|
|
83427
|
+
}, {
|
|
83428
|
+
symbol?: _tscircuit_props.SymbolProp | undefined;
|
|
83429
|
+
layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83430
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83431
|
+
} | undefined;
|
|
83432
|
+
layers?: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83433
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83434
|
+
})[] | undefined;
|
|
83435
|
+
schX?: string | number | undefined;
|
|
83436
|
+
schY?: string | number | undefined;
|
|
83437
|
+
pcbX?: string | number | undefined;
|
|
83438
|
+
pcbY?: string | number | undefined;
|
|
83439
|
+
pcbLeftEdgeX?: string | number | undefined;
|
|
83440
|
+
pcbRightEdgeX?: string | number | undefined;
|
|
83441
|
+
pcbTopEdgeY?: string | number | undefined;
|
|
83442
|
+
pcbBottomEdgeY?: string | number | undefined;
|
|
83443
|
+
relative?: boolean | undefined;
|
|
83444
|
+
pcbOffsetX?: string | number | undefined;
|
|
83445
|
+
pcbOffsetY?: string | number | undefined;
|
|
83446
|
+
pcbRotation?: string | number | undefined;
|
|
83447
|
+
pcbPositionAnchor?: string | undefined;
|
|
83448
|
+
pcbPositionMode?: "auto" | "relative_to_group_anchor" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
|
|
83449
|
+
shouldBeOnEdgeOfBoard?: boolean | undefined;
|
|
83450
|
+
pcbMarginTop?: string | number | undefined;
|
|
83451
|
+
pcbMarginRight?: string | number | undefined;
|
|
83452
|
+
pcbMarginBottom?: string | number | undefined;
|
|
83453
|
+
pcbMarginLeft?: string | number | undefined;
|
|
83454
|
+
pcbMarginX?: string | number | undefined;
|
|
83455
|
+
pcbMarginY?: string | number | undefined;
|
|
83456
|
+
pcbStyle?: {
|
|
83457
|
+
silkscreenFontSize?: string | number | undefined;
|
|
83458
|
+
viaPadDiameter?: string | number | undefined;
|
|
83459
|
+
viaHoleDiameter?: string | number | undefined;
|
|
83460
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83461
|
+
offsetX: number;
|
|
83462
|
+
offsetY: number;
|
|
83463
|
+
} | undefined;
|
|
83464
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83465
|
+
} | undefined;
|
|
83466
|
+
pcbSx?: _tscircuit_props.PcbSx | undefined;
|
|
83467
|
+
schMarginTop?: string | number | undefined;
|
|
83468
|
+
schMarginRight?: string | number | undefined;
|
|
83469
|
+
schMarginBottom?: string | number | undefined;
|
|
83470
|
+
schMarginLeft?: string | number | undefined;
|
|
83471
|
+
schMarginX?: string | number | undefined;
|
|
83472
|
+
schMarginY?: string | number | undefined;
|
|
83473
|
+
schRotation?: string | number | undefined;
|
|
83474
|
+
footprint?: _tscircuit_props.FootprintProp | undefined;
|
|
83475
|
+
schStyle?: {
|
|
83476
|
+
defaultPassiveSize?: string | number | undefined;
|
|
83477
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83478
|
+
} | undefined;
|
|
83479
|
+
schRelative?: boolean | undefined;
|
|
83480
|
+
pcbRelative?: boolean | undefined;
|
|
83481
|
+
fromLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83482
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83483
|
+
} | undefined;
|
|
83484
|
+
toLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83485
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83486
|
+
} | undefined;
|
|
83487
|
+
holeDiameter?: string | number | undefined;
|
|
83488
|
+
outerDiameter?: string | number | undefined;
|
|
83489
|
+
pcbTraceId?: string | undefined;
|
|
83490
|
+
netIsAssignable?: boolean | undefined;
|
|
83491
|
+
netAssigned?: boolean | undefined;
|
|
83492
|
+
isTented?: boolean | undefined;
|
|
83493
|
+
}>;
|
|
83494
|
+
declare class PcbVia extends PrimitiveComponent<typeof pcbViaProps> {
|
|
83495
|
+
pcb_via_id: string | null;
|
|
83496
|
+
isPcbPrimitive: boolean;
|
|
83497
|
+
get config(): {
|
|
83498
|
+
componentName: string;
|
|
83499
|
+
zodProps: z.ZodObject<{
|
|
83500
|
+
pcbX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83501
|
+
pcbY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83502
|
+
pcbLeftEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83503
|
+
pcbRightEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83504
|
+
pcbTopEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83505
|
+
pcbBottomEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83506
|
+
pcbOffsetX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83507
|
+
pcbOffsetY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83508
|
+
pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83509
|
+
pcbPositionAnchor: z.ZodOptional<z.ZodString>;
|
|
83510
|
+
pcbPositionMode: z.ZodOptional<z.ZodEnum<["relative_to_group_anchor", "auto", "relative_to_board_anchor", "relative_to_component_anchor"]>>;
|
|
83511
|
+
shouldBeOnEdgeOfBoard: z.ZodOptional<z.ZodBoolean>;
|
|
83512
|
+
pcbMarginTop: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83513
|
+
pcbMarginRight: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83514
|
+
pcbMarginBottom: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83515
|
+
pcbMarginLeft: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83516
|
+
pcbMarginX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83517
|
+
pcbMarginY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83518
|
+
pcbStyle: z.ZodOptional<z.ZodObject<{
|
|
83519
|
+
silkscreenFontSize: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83520
|
+
viaPadDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83521
|
+
viaHoleDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83522
|
+
silkscreenTextPosition: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["centered", "outside", "none"]>, z.ZodObject<{
|
|
83523
|
+
offsetX: z.ZodNumber;
|
|
83524
|
+
offsetY: z.ZodNumber;
|
|
83525
|
+
}, "strip", z.ZodTypeAny, {
|
|
83526
|
+
offsetX: number;
|
|
83527
|
+
offsetY: number;
|
|
83528
|
+
}, {
|
|
83529
|
+
offsetX: number;
|
|
83530
|
+
offsetY: number;
|
|
83531
|
+
}>]>>;
|
|
83532
|
+
silkscreenTextVisibility: z.ZodOptional<z.ZodEnum<["hidden", "visible", "inherit"]>>;
|
|
83533
|
+
}, "strip", z.ZodTypeAny, {
|
|
83534
|
+
silkscreenFontSize?: number | undefined;
|
|
83535
|
+
viaPadDiameter?: number | undefined;
|
|
83536
|
+
viaHoleDiameter?: number | undefined;
|
|
83537
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83538
|
+
offsetX: number;
|
|
83539
|
+
offsetY: number;
|
|
83540
|
+
} | undefined;
|
|
83541
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83542
|
+
}, {
|
|
83543
|
+
silkscreenFontSize?: string | number | undefined;
|
|
83544
|
+
viaPadDiameter?: string | number | undefined;
|
|
83545
|
+
viaHoleDiameter?: string | number | undefined;
|
|
83546
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83547
|
+
offsetX: number;
|
|
83548
|
+
offsetY: number;
|
|
83549
|
+
} | undefined;
|
|
83550
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83551
|
+
}>>;
|
|
83552
|
+
pcbSx: z.ZodOptional<z.ZodType<_tscircuit_props.PcbSx, z.ZodTypeDef, _tscircuit_props.PcbSx>>;
|
|
83553
|
+
schMarginTop: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83554
|
+
schMarginRight: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83555
|
+
schMarginBottom: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83556
|
+
schMarginLeft: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83557
|
+
schMarginX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83558
|
+
schMarginY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83559
|
+
schX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83560
|
+
schY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83561
|
+
schRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83562
|
+
layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83563
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83564
|
+
}, "strip", z.ZodTypeAny, {
|
|
83565
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83566
|
+
}, {
|
|
83567
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83568
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83569
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83570
|
+
}>>;
|
|
83571
|
+
footprint: z.ZodOptional<z.ZodType<_tscircuit_props.FootprintProp, z.ZodTypeDef, _tscircuit_props.FootprintProp>>;
|
|
83572
|
+
symbol: z.ZodOptional<z.ZodType<_tscircuit_props.SymbolProp, z.ZodTypeDef, _tscircuit_props.SymbolProp>>;
|
|
83573
|
+
schStyle: z.ZodOptional<z.ZodObject<{
|
|
83574
|
+
defaultPassiveSize: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["xs", "sm", "md"]>, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
|
|
83575
|
+
defaultCapacitorOrientation: z.ZodOptional<z.ZodEnum<["vertical", "none"]>>;
|
|
83576
|
+
}, "strip", z.ZodTypeAny, {
|
|
83577
|
+
defaultPassiveSize?: number | "xs" | "sm" | "md" | undefined;
|
|
83578
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83579
|
+
}, {
|
|
83580
|
+
defaultPassiveSize?: string | number | undefined;
|
|
83581
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83582
|
+
}>>;
|
|
83583
|
+
relative: z.ZodOptional<z.ZodBoolean>;
|
|
83584
|
+
schRelative: z.ZodOptional<z.ZodBoolean>;
|
|
83585
|
+
pcbRelative: z.ZodOptional<z.ZodBoolean>;
|
|
83586
|
+
} & {
|
|
83587
|
+
holeDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83588
|
+
outerDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
|
|
83589
|
+
fromLayer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83590
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83591
|
+
}, "strip", z.ZodTypeAny, {
|
|
83592
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83593
|
+
}, {
|
|
83594
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83595
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83596
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83597
|
+
}>>;
|
|
83598
|
+
toLayer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83599
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83600
|
+
}, "strip", z.ZodTypeAny, {
|
|
83601
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83602
|
+
}, {
|
|
83603
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83604
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83605
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83606
|
+
}>>;
|
|
83607
|
+
layers: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
|
|
83608
|
+
name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
|
|
83609
|
+
}, "strip", z.ZodTypeAny, {
|
|
83610
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83611
|
+
}, {
|
|
83612
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83613
|
+
}>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83614
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83615
|
+
}>, "many">>;
|
|
83616
|
+
pcbTraceId: z.ZodOptional<z.ZodString>;
|
|
83617
|
+
netIsAssignable: z.ZodOptional<z.ZodBoolean>;
|
|
83618
|
+
netAssigned: z.ZodOptional<z.ZodBoolean>;
|
|
83619
|
+
isTented: z.ZodOptional<z.ZodBoolean>;
|
|
83620
|
+
}, "strip", z.ZodTypeAny, {
|
|
83621
|
+
symbol?: _tscircuit_props.SymbolProp | undefined;
|
|
83622
|
+
layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
|
|
83623
|
+
layers?: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6")[] | undefined;
|
|
83624
|
+
schX?: number | undefined;
|
|
83625
|
+
schY?: number | undefined;
|
|
83626
|
+
pcbX?: string | number | undefined;
|
|
83627
|
+
pcbY?: string | number | undefined;
|
|
83628
|
+
pcbLeftEdgeX?: string | number | undefined;
|
|
83629
|
+
pcbRightEdgeX?: string | number | undefined;
|
|
83630
|
+
pcbTopEdgeY?: string | number | undefined;
|
|
83631
|
+
pcbBottomEdgeY?: string | number | undefined;
|
|
83632
|
+
relative?: boolean | undefined;
|
|
83633
|
+
pcbOffsetX?: number | undefined;
|
|
83634
|
+
pcbOffsetY?: number | undefined;
|
|
83635
|
+
pcbRotation?: number | undefined;
|
|
83636
|
+
pcbPositionAnchor?: string | undefined;
|
|
83637
|
+
pcbPositionMode?: "auto" | "relative_to_group_anchor" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
|
|
83638
|
+
shouldBeOnEdgeOfBoard?: boolean | undefined;
|
|
83639
|
+
pcbMarginTop?: number | undefined;
|
|
83640
|
+
pcbMarginRight?: number | undefined;
|
|
83641
|
+
pcbMarginBottom?: number | undefined;
|
|
83642
|
+
pcbMarginLeft?: number | undefined;
|
|
83643
|
+
pcbMarginX?: number | undefined;
|
|
83644
|
+
pcbMarginY?: number | undefined;
|
|
83645
|
+
pcbStyle?: {
|
|
83646
|
+
silkscreenFontSize?: number | undefined;
|
|
83647
|
+
viaPadDiameter?: number | undefined;
|
|
83648
|
+
viaHoleDiameter?: number | undefined;
|
|
83649
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83650
|
+
offsetX: number;
|
|
83651
|
+
offsetY: number;
|
|
83652
|
+
} | undefined;
|
|
83653
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83654
|
+
} | undefined;
|
|
83655
|
+
pcbSx?: _tscircuit_props.PcbSx | undefined;
|
|
83656
|
+
schMarginTop?: number | undefined;
|
|
83657
|
+
schMarginRight?: number | undefined;
|
|
83658
|
+
schMarginBottom?: number | undefined;
|
|
83659
|
+
schMarginLeft?: number | undefined;
|
|
83660
|
+
schMarginX?: number | undefined;
|
|
83661
|
+
schMarginY?: number | undefined;
|
|
83662
|
+
schRotation?: number | undefined;
|
|
83663
|
+
footprint?: _tscircuit_props.FootprintProp | undefined;
|
|
83664
|
+
schStyle?: {
|
|
83665
|
+
defaultPassiveSize?: number | "xs" | "sm" | "md" | undefined;
|
|
83666
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83667
|
+
} | undefined;
|
|
83668
|
+
schRelative?: boolean | undefined;
|
|
83669
|
+
pcbRelative?: boolean | undefined;
|
|
83670
|
+
fromLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
|
|
83671
|
+
toLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
|
|
83672
|
+
holeDiameter?: number | undefined;
|
|
83673
|
+
outerDiameter?: number | undefined;
|
|
83674
|
+
pcbTraceId?: string | undefined;
|
|
83675
|
+
netIsAssignable?: boolean | undefined;
|
|
83676
|
+
netAssigned?: boolean | undefined;
|
|
83677
|
+
isTented?: boolean | undefined;
|
|
83678
|
+
}, {
|
|
83679
|
+
symbol?: _tscircuit_props.SymbolProp | undefined;
|
|
83680
|
+
layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83681
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83682
|
+
} | undefined;
|
|
83683
|
+
layers?: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83684
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83685
|
+
})[] | undefined;
|
|
83686
|
+
schX?: string | number | undefined;
|
|
83687
|
+
schY?: string | number | undefined;
|
|
83688
|
+
pcbX?: string | number | undefined;
|
|
83689
|
+
pcbY?: string | number | undefined;
|
|
83690
|
+
pcbLeftEdgeX?: string | number | undefined;
|
|
83691
|
+
pcbRightEdgeX?: string | number | undefined;
|
|
83692
|
+
pcbTopEdgeY?: string | number | undefined;
|
|
83693
|
+
pcbBottomEdgeY?: string | number | undefined;
|
|
83694
|
+
relative?: boolean | undefined;
|
|
83695
|
+
pcbOffsetX?: string | number | undefined;
|
|
83696
|
+
pcbOffsetY?: string | number | undefined;
|
|
83697
|
+
pcbRotation?: string | number | undefined;
|
|
83698
|
+
pcbPositionAnchor?: string | undefined;
|
|
83699
|
+
pcbPositionMode?: "auto" | "relative_to_group_anchor" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
|
|
83700
|
+
shouldBeOnEdgeOfBoard?: boolean | undefined;
|
|
83701
|
+
pcbMarginTop?: string | number | undefined;
|
|
83702
|
+
pcbMarginRight?: string | number | undefined;
|
|
83703
|
+
pcbMarginBottom?: string | number | undefined;
|
|
83704
|
+
pcbMarginLeft?: string | number | undefined;
|
|
83705
|
+
pcbMarginX?: string | number | undefined;
|
|
83706
|
+
pcbMarginY?: string | number | undefined;
|
|
83707
|
+
pcbStyle?: {
|
|
83708
|
+
silkscreenFontSize?: string | number | undefined;
|
|
83709
|
+
viaPadDiameter?: string | number | undefined;
|
|
83710
|
+
viaHoleDiameter?: string | number | undefined;
|
|
83711
|
+
silkscreenTextPosition?: "centered" | "outside" | "none" | {
|
|
83712
|
+
offsetX: number;
|
|
83713
|
+
offsetY: number;
|
|
83714
|
+
} | undefined;
|
|
83715
|
+
silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
|
|
83716
|
+
} | undefined;
|
|
83717
|
+
pcbSx?: _tscircuit_props.PcbSx | undefined;
|
|
83718
|
+
schMarginTop?: string | number | undefined;
|
|
83719
|
+
schMarginRight?: string | number | undefined;
|
|
83720
|
+
schMarginBottom?: string | number | undefined;
|
|
83721
|
+
schMarginLeft?: string | number | undefined;
|
|
83722
|
+
schMarginX?: string | number | undefined;
|
|
83723
|
+
schMarginY?: string | number | undefined;
|
|
83724
|
+
schRotation?: string | number | undefined;
|
|
83725
|
+
footprint?: _tscircuit_props.FootprintProp | undefined;
|
|
83726
|
+
schStyle?: {
|
|
83727
|
+
defaultPassiveSize?: string | number | undefined;
|
|
83728
|
+
defaultCapacitorOrientation?: "none" | "vertical" | undefined;
|
|
83729
|
+
} | undefined;
|
|
83730
|
+
schRelative?: boolean | undefined;
|
|
83731
|
+
pcbRelative?: boolean | undefined;
|
|
83732
|
+
fromLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83733
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83734
|
+
} | undefined;
|
|
83735
|
+
toLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
|
|
83736
|
+
name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
|
|
83737
|
+
} | undefined;
|
|
83738
|
+
holeDiameter?: string | number | undefined;
|
|
83739
|
+
outerDiameter?: string | number | undefined;
|
|
83740
|
+
pcbTraceId?: string | undefined;
|
|
83741
|
+
netIsAssignable?: boolean | undefined;
|
|
83742
|
+
netAssigned?: boolean | undefined;
|
|
83743
|
+
isTented?: boolean | undefined;
|
|
83744
|
+
}>;
|
|
83745
|
+
};
|
|
83746
|
+
private _getLayers;
|
|
83747
|
+
getAvailablePcbLayers(): string[];
|
|
83748
|
+
getPcbSize(): {
|
|
83749
|
+
width: number;
|
|
83750
|
+
height: number;
|
|
83751
|
+
};
|
|
83752
|
+
_getPcbCircuitJsonBounds(): {
|
|
83753
|
+
center: {
|
|
83754
|
+
x: number;
|
|
83755
|
+
y: number;
|
|
83756
|
+
};
|
|
83757
|
+
bounds: {
|
|
83758
|
+
left: number;
|
|
83759
|
+
top: number;
|
|
83760
|
+
right: number;
|
|
83761
|
+
bottom: number;
|
|
83762
|
+
};
|
|
83763
|
+
width: number;
|
|
83764
|
+
height: number;
|
|
83765
|
+
};
|
|
83766
|
+
_setPositionFromLayout(newCenter: {
|
|
83767
|
+
x: number;
|
|
83768
|
+
y: number;
|
|
83769
|
+
}): void;
|
|
83770
|
+
doInitialPcbPrimitiveRender(): void;
|
|
83771
|
+
}
|
|
83772
|
+
|
|
83247
83773
|
declare class TraceHint extends PrimitiveComponent<typeof traceHintProps> {
|
|
83248
83774
|
matchedPort: Port | null;
|
|
83249
83775
|
get config(): {
|
|
@@ -152997,4 +153523,4 @@ declare module "react/jsx-runtime" {
|
|
|
152997
153523
|
}
|
|
152998
153524
|
}
|
|
152999
153525
|
|
|
153000
|
-
export { AnalogSimulation, type AsyncEffect, type AutorouterCompleteEvent, type AutorouterErrorEvent, type AutorouterEvent, type AutorouterProgressEvent, type AutoroutingEndEvent, type AutoroutingErrorEvent, AutoroutingPhase, type AutoroutingProgressEvent, type AutoroutingStartEvent, Battery, Board, Breakout, BreakoutPoint, CadAssembly, CadModel, Capacitor, Chip, Circuit, type ComponentWithPins, Connector, Constraint, CopperPour, CopperText, CourtyardCircle, CourtyardOutline, CourtyardRect, Crystal, CurrentSource, Cutout, type DebugLogOutputEvent, Diode, FabricationNoteDimension, FabricationNotePath, FabricationNoteRect, FabricationNoteText, Fiducial, Footprint, Fuse, type GenericConnectionsAndSelectorsSel, type GenericLocalAutorouter, Group, Hole, type IIsolatedCircuit, type IRenderable, type IRootCircuit, Inductor, Interconnect, IsolatedCircuit, Jumper, Keepout, Led, type LocalCacheEngine, Mosfet, MountedBoard, Net, NetLabel, NormalComponent, type Obstacle, OpAmp, type PackingEndEvent, type PackingErrorEvent, type PackingStartEvent, Panel, PcbNoteDimension, PcbNoteLine, PcbNotePath, PcbNoteRect, PcbNoteText, PcbTrace, PinHeader, type PinLabelSpec, Pinout, PlatedHole, Port, Potentiometer, PowerSource, PrimitiveComponent, Project, PushButton, type RenderPhase, type RenderPhaseFn, type RenderPhaseFunctions, type RenderPhaseStates, Renderable, Resistor, Resonator, RootCircuit, type RootCircuitEventName, SOLVERS, SchematicArc, SchematicBox, SchematicCell, SchematicCircle, SchematicLine, SchematicPath, SchematicRect, SchematicRow, SchematicSection, SchematicTable, SchematicText, type Sel, SilkscreenCircle, SilkscreenLine, SilkscreenPath, SilkscreenRect, SilkscreenText, type SimpleRouteConnection, type SimpleRouteJson, type SimplifiedPcbTrace, SmtPad, SolderJumper, type SolverName, type SolverStartedEvent, Subcircuit, Subpanel, Switch, SymbolComponent as Symbol, TestPoint, Trace, TraceHint, Transistor, Via, VoltageProbe, VoltageSource, applyEditEvents, applyEditEventsToManualEditsFile, applyPcbEditEventsToManualEditsFile, applySchematicEditEventsToManualEditsFile, createUseComponent, getPhaseTimingsFromRenderEvents, getSimpleRouteJsonFromCircuitJson, normalizePinLabels, orderedRenderPhases, renderPhaseIndexMap, resolveStaticFileImport, sel, unrouteCircuitJson, useCapacitor, useChip, useDiode, useLed, useRenderedCircuit, useResistor };
|
|
153526
|
+
export { AnalogSimulation, type AsyncEffect, type AutorouterCompleteEvent, type AutorouterErrorEvent, type AutorouterEvent, type AutorouterProgressEvent, type AutoroutingEndEvent, type AutoroutingErrorEvent, AutoroutingPhase, type AutoroutingProgressEvent, type AutoroutingStartEvent, Battery, Board, Breakout, BreakoutPoint, CadAssembly, CadModel, Capacitor, Chip, Circuit, type ComponentWithPins, Connector, Constraint, CopperPour, CopperText, CourtyardCircle, CourtyardOutline, CourtyardRect, Crystal, CurrentSource, Cutout, type DebugLogOutputEvent, Diode, FabricationNoteDimension, FabricationNotePath, FabricationNoteRect, FabricationNoteText, Fiducial, Footprint, Fuse, type GenericConnectionsAndSelectorsSel, type GenericLocalAutorouter, Group, Hole, type IIsolatedCircuit, type IRenderable, type IRootCircuit, Inductor, Interconnect, IsolatedCircuit, Jumper, Keepout, Led, type LocalCacheEngine, Mosfet, MountedBoard, Net, NetLabel, NormalComponent, type Obstacle, OpAmp, type PackingEndEvent, type PackingErrorEvent, type PackingStartEvent, Panel, PcbNoteDimension, PcbNoteLine, PcbNotePath, PcbNoteRect, PcbNoteText, PcbTrace, PcbVia, PinHeader, type PinLabelSpec, Pinout, PlatedHole, Port, Potentiometer, PowerSource, PrimitiveComponent, Project, PushButton, type RenderPhase, type RenderPhaseFn, type RenderPhaseFunctions, type RenderPhaseStates, Renderable, Resistor, Resonator, RootCircuit, type RootCircuitEventName, SOLVERS, SchematicArc, SchematicBox, SchematicCell, SchematicCircle, SchematicLine, SchematicPath, SchematicRect, SchematicRow, SchematicSection, SchematicTable, SchematicText, type Sel, SilkscreenCircle, SilkscreenLine, SilkscreenPath, SilkscreenRect, SilkscreenText, type SimpleRouteConnection, type SimpleRouteJson, type SimplifiedPcbTrace, SmtPad, SolderJumper, type SolverName, type SolverStartedEvent, Subcircuit, Subpanel, Switch, SymbolComponent as Symbol, TestPoint, Trace, TraceHint, Transistor, Via, VoltageProbe, VoltageSource, applyEditEvents, applyEditEventsToManualEditsFile, applyPcbEditEventsToManualEditsFile, applySchematicEditEventsToManualEditsFile, createUseComponent, getPhaseTimingsFromRenderEvents, getSimpleRouteJsonFromCircuitJson, normalizePinLabels, orderedRenderPhases, renderPhaseIndexMap, resolveStaticFileImport, sel, unrouteCircuitJson, useCapacitor, useChip, useDiode, useLed, useRenderedCircuit, useResistor };
|
package/dist/index.js
CHANGED
|
@@ -55,6 +55,7 @@ __export(components_exports, {
|
|
|
55
55
|
PcbNoteRect: () => PcbNoteRect,
|
|
56
56
|
PcbNoteText: () => PcbNoteText,
|
|
57
57
|
PcbTrace: () => PcbTrace,
|
|
58
|
+
PcbVia: () => PcbVia,
|
|
58
59
|
PinHeader: () => PinHeader,
|
|
59
60
|
Pinout: () => Pinout,
|
|
60
61
|
PlatedHole: () => PlatedHole,
|
|
@@ -101,7 +102,7 @@ __export(components_exports, {
|
|
|
101
102
|
import { fp } from "@tscircuit/footprinter";
|
|
102
103
|
import { normalizeDegrees as normalizeDegrees2 } from "@tscircuit/math-utils";
|
|
103
104
|
import {
|
|
104
|
-
distance as
|
|
105
|
+
distance as distance9,
|
|
105
106
|
pcb_component_invalid_layer_error,
|
|
106
107
|
pcb_manual_edit_conflict_warning,
|
|
107
108
|
point3 as point32,
|
|
@@ -4534,6 +4535,12 @@ function clipTraceEndAtPad(params) {
|
|
|
4534
4535
|
}
|
|
4535
4536
|
|
|
4536
4537
|
// lib/components/primitive-components/Trace/Trace_doInitialPcbManualTraceRender.ts
|
|
4538
|
+
var findInflatedPcbViaForPoint = (vias, point6) => {
|
|
4539
|
+
if (point6.route_type !== "via") return void 0;
|
|
4540
|
+
return vias?.find(
|
|
4541
|
+
(via) => Math.abs(via.x - point6.x) < 1e-4 && Math.abs(via.y - point6.y) < 1e-4 && (!via.from_layer || via.from_layer === point6.from_layer) && (!via.to_layer || via.to_layer === point6.to_layer)
|
|
4542
|
+
);
|
|
4543
|
+
};
|
|
4537
4544
|
function Trace_doInitialPcbManualTraceRender(trace) {
|
|
4538
4545
|
if (trace.root?.pcbDisabled) return;
|
|
4539
4546
|
const { db } = trace.root;
|
|
@@ -4619,17 +4626,39 @@ function Trace_doInitialPcbManualTraceRender(trace) {
|
|
|
4619
4626
|
});
|
|
4620
4627
|
const pcbStyle2 = trace.getInheritedMergedProperty("pcbStyle");
|
|
4621
4628
|
const { holeDiameter: holeDiameter2, padDiameter: padDiameter2 } = getViaDiameterDefaults(pcbStyle2);
|
|
4622
|
-
for (
|
|
4629
|
+
for (let index = 0; index < transformedRoute.length; index++) {
|
|
4630
|
+
const point6 = transformedRoute[index];
|
|
4623
4631
|
if (point6.route_type === "via") {
|
|
4632
|
+
const originalPoint = inflatedPcbTrace.route[index];
|
|
4633
|
+
const inflatedPcbVia = findInflatedPcbViaForPoint(
|
|
4634
|
+
trace._inflatedPcbVias,
|
|
4635
|
+
originalPoint
|
|
4636
|
+
);
|
|
4637
|
+
const fromLayer = maybeFlipLayer(
|
|
4638
|
+
inflatedPcbVia?.from_layer ?? point6.from_layer
|
|
4639
|
+
);
|
|
4640
|
+
const toLayer = maybeFlipLayer(
|
|
4641
|
+
inflatedPcbVia?.to_layer ?? point6.to_layer
|
|
4642
|
+
);
|
|
4643
|
+
const layers = (inflatedPcbVia?.layers ?? [
|
|
4644
|
+
point6.from_layer,
|
|
4645
|
+
point6.to_layer
|
|
4646
|
+
]).map((layer2) => maybeFlipLayer(layer2));
|
|
4624
4647
|
db.pcb_via.insert({
|
|
4625
4648
|
pcb_trace_id: pcb_trace2.pcb_trace_id,
|
|
4626
4649
|
x: point6.x,
|
|
4627
4650
|
y: point6.y,
|
|
4628
|
-
hole_diameter: holeDiameter2,
|
|
4629
|
-
outer_diameter: padDiameter2,
|
|
4630
|
-
layers
|
|
4631
|
-
from_layer:
|
|
4632
|
-
to_layer:
|
|
4651
|
+
hole_diameter: inflatedPcbVia?.hole_diameter ?? holeDiameter2,
|
|
4652
|
+
outer_diameter: inflatedPcbVia?.outer_diameter ?? padDiameter2,
|
|
4653
|
+
layers,
|
|
4654
|
+
from_layer: fromLayer,
|
|
4655
|
+
to_layer: toLayer,
|
|
4656
|
+
subcircuit_id: subcircuit?.subcircuit_id ?? void 0,
|
|
4657
|
+
pcb_group_id: trace.getGroup()?.pcb_group_id ?? void 0,
|
|
4658
|
+
subcircuit_connectivity_map_key: inflatedPcbVia?.subcircuit_connectivity_map_key,
|
|
4659
|
+
net_is_assignable: inflatedPcbVia?.net_is_assignable,
|
|
4660
|
+
net_assigned: inflatedPcbVia?.net_assigned,
|
|
4661
|
+
is_tented: inflatedPcbVia?.is_tented
|
|
4633
4662
|
});
|
|
4634
4663
|
}
|
|
4635
4664
|
}
|
|
@@ -5005,6 +5034,7 @@ var Trace3 = class extends PrimitiveComponent2 {
|
|
|
5005
5034
|
pcb_trace_id = null;
|
|
5006
5035
|
schematic_trace_id = null;
|
|
5007
5036
|
_inflatedPcbTrace;
|
|
5037
|
+
_inflatedPcbVias;
|
|
5008
5038
|
_portsRoutedOnPcb;
|
|
5009
5039
|
subcircuit_connectivity_map_key = null;
|
|
5010
5040
|
_traceConnectionHash = null;
|
|
@@ -6898,6 +6928,107 @@ var PcbTrace = class extends PrimitiveComponent2 {
|
|
|
6898
6928
|
}
|
|
6899
6929
|
};
|
|
6900
6930
|
|
|
6931
|
+
// lib/components/primitive-components/PcbVia.ts
|
|
6932
|
+
import { commonLayoutProps } from "@tscircuit/props";
|
|
6933
|
+
import {
|
|
6934
|
+
distance as distance4,
|
|
6935
|
+
layer_ref
|
|
6936
|
+
} from "circuit-json";
|
|
6937
|
+
import { z as z6 } from "zod";
|
|
6938
|
+
var pcbViaProps = commonLayoutProps.extend({
|
|
6939
|
+
holeDiameter: distance4.optional(),
|
|
6940
|
+
outerDiameter: distance4.optional(),
|
|
6941
|
+
fromLayer: layer_ref.optional(),
|
|
6942
|
+
toLayer: layer_ref.optional(),
|
|
6943
|
+
layers: z6.array(layer_ref).optional(),
|
|
6944
|
+
pcbTraceId: z6.string().optional(),
|
|
6945
|
+
netIsAssignable: z6.boolean().optional(),
|
|
6946
|
+
netAssigned: z6.boolean().optional(),
|
|
6947
|
+
isTented: z6.boolean().optional()
|
|
6948
|
+
});
|
|
6949
|
+
var PcbVia = class extends PrimitiveComponent2 {
|
|
6950
|
+
pcb_via_id = null;
|
|
6951
|
+
isPcbPrimitive = true;
|
|
6952
|
+
get config() {
|
|
6953
|
+
return {
|
|
6954
|
+
componentName: "PcbVia",
|
|
6955
|
+
zodProps: pcbViaProps
|
|
6956
|
+
};
|
|
6957
|
+
}
|
|
6958
|
+
_getLayers() {
|
|
6959
|
+
const { layers, fromLayer = "top", toLayer = "bottom" } = this._parsedProps;
|
|
6960
|
+
if (layers && layers.length > 0) return layers;
|
|
6961
|
+
if (fromLayer === toLayer) return [fromLayer];
|
|
6962
|
+
return [fromLayer, toLayer];
|
|
6963
|
+
}
|
|
6964
|
+
getAvailablePcbLayers() {
|
|
6965
|
+
return this._getLayers();
|
|
6966
|
+
}
|
|
6967
|
+
getPcbSize() {
|
|
6968
|
+
const outerDiameter = this._parsedProps.outerDiameter ?? 0.6;
|
|
6969
|
+
return { width: outerDiameter, height: outerDiameter };
|
|
6970
|
+
}
|
|
6971
|
+
_getPcbCircuitJsonBounds() {
|
|
6972
|
+
const { db } = this.root;
|
|
6973
|
+
const via = db.pcb_via.get(this.pcb_via_id);
|
|
6974
|
+
const size = this.getPcbSize();
|
|
6975
|
+
return {
|
|
6976
|
+
center: { x: via.x, y: via.y },
|
|
6977
|
+
bounds: {
|
|
6978
|
+
left: via.x - size.width / 2,
|
|
6979
|
+
top: via.y - size.height / 2,
|
|
6980
|
+
right: via.x + size.width / 2,
|
|
6981
|
+
bottom: via.y + size.height / 2
|
|
6982
|
+
},
|
|
6983
|
+
width: size.width,
|
|
6984
|
+
height: size.height
|
|
6985
|
+
};
|
|
6986
|
+
}
|
|
6987
|
+
_setPositionFromLayout(newCenter) {
|
|
6988
|
+
const { db } = this.root;
|
|
6989
|
+
db.pcb_via.update(this.pcb_via_id, {
|
|
6990
|
+
x: newCenter.x,
|
|
6991
|
+
y: newCenter.y
|
|
6992
|
+
});
|
|
6993
|
+
}
|
|
6994
|
+
doInitialPcbPrimitiveRender() {
|
|
6995
|
+
if (this.root?.pcbDisabled) return;
|
|
6996
|
+
const { db } = this.root;
|
|
6997
|
+
const {
|
|
6998
|
+
holeDiameter,
|
|
6999
|
+
outerDiameter,
|
|
7000
|
+
pcbTraceId,
|
|
7001
|
+
netIsAssignable,
|
|
7002
|
+
netAssigned,
|
|
7003
|
+
isTented
|
|
7004
|
+
} = this._parsedProps;
|
|
7005
|
+
const subcircuit = this.getSubcircuit();
|
|
7006
|
+
const position = this._getGlobalPcbPositionBeforeLayout();
|
|
7007
|
+
const { maybeFlipLayer } = this._getPcbPrimitiveFlippedHelpers();
|
|
7008
|
+
const layers = this._getLayers().map(
|
|
7009
|
+
(layer) => maybeFlipLayer(layer)
|
|
7010
|
+
);
|
|
7011
|
+
const fromLayer = this._parsedProps.fromLayer ? maybeFlipLayer(this._parsedProps.fromLayer) : layers[0];
|
|
7012
|
+
const toLayer = this._parsedProps.toLayer ? maybeFlipLayer(this._parsedProps.toLayer) : layers[layers.length - 1] ?? fromLayer;
|
|
7013
|
+
const pcbVia = db.pcb_via.insert({
|
|
7014
|
+
x: position.x,
|
|
7015
|
+
y: position.y,
|
|
7016
|
+
...holeDiameter !== void 0 ? { hole_diameter: holeDiameter } : {},
|
|
7017
|
+
...outerDiameter !== void 0 ? { outer_diameter: outerDiameter } : {},
|
|
7018
|
+
layers,
|
|
7019
|
+
from_layer: fromLayer,
|
|
7020
|
+
to_layer: toLayer,
|
|
7021
|
+
pcb_trace_id: pcbTraceId,
|
|
7022
|
+
subcircuit_id: subcircuit?.subcircuit_id ?? void 0,
|
|
7023
|
+
pcb_group_id: this.getGroup()?.pcb_group_id ?? void 0,
|
|
7024
|
+
net_is_assignable: netIsAssignable,
|
|
7025
|
+
net_assigned: netAssigned,
|
|
7026
|
+
is_tented: isTented
|
|
7027
|
+
});
|
|
7028
|
+
this.pcb_via_id = pcbVia.pcb_via_id;
|
|
7029
|
+
}
|
|
7030
|
+
};
|
|
7031
|
+
|
|
6901
7032
|
// lib/components/primitive-components/PlatedHole.ts
|
|
6902
7033
|
import { platedHoleProps } from "@tscircuit/props";
|
|
6903
7034
|
import "circuit-json";
|
|
@@ -7788,7 +7919,7 @@ var SilkscreenText = class extends PrimitiveComponent2 {
|
|
|
7788
7919
|
// lib/components/primitive-components/SmtPad.ts
|
|
7789
7920
|
import { smtPadProps } from "@tscircuit/props";
|
|
7790
7921
|
import {
|
|
7791
|
-
distance as
|
|
7922
|
+
distance as distance6
|
|
7792
7923
|
} from "circuit-json";
|
|
7793
7924
|
import { applyToPoint as applyToPoint15, decomposeTSR as decomposeTSR6 } from "transformation-matrix";
|
|
7794
7925
|
|
|
@@ -8034,8 +8165,8 @@ var SmtPad = class extends PrimitiveComponent2 {
|
|
|
8034
8165
|
} else if (props.shape === "polygon") {
|
|
8035
8166
|
const transformedPoints = props.points.map((point6) => {
|
|
8036
8167
|
const transformed = applyToPoint15(globalTransform, {
|
|
8037
|
-
x:
|
|
8038
|
-
y:
|
|
8168
|
+
x: distance6.parse(point6.x),
|
|
8169
|
+
y: distance6.parse(point6.y)
|
|
8039
8170
|
});
|
|
8040
8171
|
return {
|
|
8041
8172
|
x: transformed.x,
|
|
@@ -8566,6 +8697,23 @@ var createComponentsFromCircuitJson = ({
|
|
|
8566
8697
|
route: elm.route
|
|
8567
8698
|
})
|
|
8568
8699
|
);
|
|
8700
|
+
} else if (elm.type === "pcb_via") {
|
|
8701
|
+
const layers = elm.layers ?? [];
|
|
8702
|
+
components.push(
|
|
8703
|
+
new PcbVia({
|
|
8704
|
+
pcbX: elm.x,
|
|
8705
|
+
pcbY: elm.y,
|
|
8706
|
+
holeDiameter: elm.hole_diameter,
|
|
8707
|
+
outerDiameter: elm.outer_diameter,
|
|
8708
|
+
fromLayer: elm.from_layer ?? layers[0],
|
|
8709
|
+
toLayer: elm.to_layer ?? layers[layers.length - 1],
|
|
8710
|
+
layers,
|
|
8711
|
+
pcbTraceId: elm.pcb_trace_id,
|
|
8712
|
+
netIsAssignable: elm.net_is_assignable,
|
|
8713
|
+
netAssigned: elm.net_assigned,
|
|
8714
|
+
isTented: elm.is_tented
|
|
8715
|
+
})
|
|
8716
|
+
);
|
|
8569
8717
|
} else if (elm.type === "pcb_silkscreen_rect") {
|
|
8570
8718
|
components.push(
|
|
8571
8719
|
new SilkscreenRect({
|
|
@@ -9884,7 +10032,7 @@ var getAllDimensionsForSchematicBox = (params) => {
|
|
|
9884
10032
|
};
|
|
9885
10033
|
|
|
9886
10034
|
// lib/utils/schematic/getNumericSchPinStyle.ts
|
|
9887
|
-
import { distance as
|
|
10035
|
+
import { distance as distance7 } from "circuit-json";
|
|
9888
10036
|
var getNumericSchPinStyle = (pinStyles, pinLabels) => {
|
|
9889
10037
|
if (!pinStyles) return void 0;
|
|
9890
10038
|
const numericPinStyles = {};
|
|
@@ -9897,13 +10045,13 @@ var getNumericSchPinStyle = (pinStyles, pinLabels) => {
|
|
|
9897
10045
|
const existingStyle = numericPinStyles[`pin${pinNumber}`] ?? {};
|
|
9898
10046
|
const nextStyle = { ...existingStyle };
|
|
9899
10047
|
if (leftMargin !== void 0)
|
|
9900
|
-
nextStyle.leftMargin =
|
|
10048
|
+
nextStyle.leftMargin = distance7.parse(leftMargin);
|
|
9901
10049
|
if (rightMargin !== void 0) {
|
|
9902
|
-
nextStyle.rightMargin =
|
|
10050
|
+
nextStyle.rightMargin = distance7.parse(rightMargin);
|
|
9903
10051
|
}
|
|
9904
|
-
if (topMargin !== void 0) nextStyle.topMargin =
|
|
10052
|
+
if (topMargin !== void 0) nextStyle.topMargin = distance7.parse(topMargin);
|
|
9905
10053
|
if (bottomMargin !== void 0) {
|
|
9906
|
-
nextStyle.bottomMargin =
|
|
10054
|
+
nextStyle.bottomMargin = distance7.parse(bottomMargin);
|
|
9907
10055
|
}
|
|
9908
10056
|
numericPinStyles[`pin${pinNumber}`] = nextStyle;
|
|
9909
10057
|
}
|
|
@@ -9917,7 +10065,7 @@ import {
|
|
|
9917
10065
|
} from "react";
|
|
9918
10066
|
import { symbols as symbols2 } from "schematic-symbols";
|
|
9919
10067
|
import { decomposeTSR as decomposeTSR8 } from "transformation-matrix";
|
|
9920
|
-
import { z as
|
|
10068
|
+
import { z as z9 } from "zod";
|
|
9921
10069
|
|
|
9922
10070
|
// lib/components/primitive-components/CadAssembly.ts
|
|
9923
10071
|
import { cadassemblyProps } from "@tscircuit/props";
|
|
@@ -9933,8 +10081,8 @@ var CadAssembly = class extends PrimitiveComponent2 {
|
|
|
9933
10081
|
|
|
9934
10082
|
// lib/components/primitive-components/CadModel.ts
|
|
9935
10083
|
import { cadmodelProps, point3 } from "@tscircuit/props";
|
|
9936
|
-
import { z as
|
|
9937
|
-
import { distance as
|
|
10084
|
+
import { z as z8 } from "zod";
|
|
10085
|
+
import { distance as distance8 } from "circuit-json";
|
|
9938
10086
|
import { decomposeTSR as decomposeTSR7 } from "transformation-matrix";
|
|
9939
10087
|
|
|
9940
10088
|
// lib/components/base-components/NormalComponent/utils/getFileExtension.ts
|
|
@@ -9975,8 +10123,8 @@ var constructAssetUrl = (targetUrl, baseUrl) => {
|
|
|
9975
10123
|
};
|
|
9976
10124
|
|
|
9977
10125
|
// lib/components/primitive-components/CadModel.ts
|
|
9978
|
-
var rotation =
|
|
9979
|
-
var rotation3 =
|
|
10126
|
+
var rotation = z8.union([z8.number(), z8.string()]);
|
|
10127
|
+
var rotation3 = z8.object({ x: rotation, y: rotation, z: rotation });
|
|
9980
10128
|
var CadModel = class extends PrimitiveComponent2 {
|
|
9981
10129
|
get config() {
|
|
9982
10130
|
return {
|
|
@@ -10015,7 +10163,7 @@ var CadModel = class extends PrimitiveComponent2 {
|
|
|
10015
10163
|
z: props.pcbZ ?? 0,
|
|
10016
10164
|
...typeof props.positionOffset === "object" ? props.positionOffset : {}
|
|
10017
10165
|
});
|
|
10018
|
-
const zOffsetFromSurface = props.zOffsetFromSurface !== void 0 ?
|
|
10166
|
+
const zOffsetFromSurface = props.zOffsetFromSurface !== void 0 ? distance8.parse(props.zOffsetFromSurface) : 0;
|
|
10019
10167
|
const layer = parent.props.layer === "bottom" ? "bottom" : "top";
|
|
10020
10168
|
const ext = props.modelUrl ? getFileExtension(props.modelUrl) : void 0;
|
|
10021
10169
|
const modelUrlWithoutExtFragment = props.modelUrl?.replace(/#ext=\w+$/, "");
|
|
@@ -11154,7 +11302,7 @@ function getPrimaryPortsFromPortHintGroups(portHintGroups, opts) {
|
|
|
11154
11302
|
|
|
11155
11303
|
// lib/components/base-components/NormalComponent/NormalComponent.ts
|
|
11156
11304
|
var debug3 = Debug5("tscircuit:core");
|
|
11157
|
-
var rotation32 =
|
|
11305
|
+
var rotation32 = z9.object({
|
|
11158
11306
|
x: rotation2,
|
|
11159
11307
|
y: rotation2,
|
|
11160
11308
|
z: rotation2
|
|
@@ -12315,7 +12463,7 @@ var NormalComponent3 = class extends PrimitiveComponent2 {
|
|
|
12315
12463
|
z: 0,
|
|
12316
12464
|
...typeof cadModel?.positionOffset === "object" ? cadModel.positionOffset : {}
|
|
12317
12465
|
});
|
|
12318
|
-
const zOffsetFromSurface = cadModel && typeof cadModel === "object" && "zOffsetFromSurface" in cadModel ? cadModel.zOffsetFromSurface !== void 0 ?
|
|
12466
|
+
const zOffsetFromSurface = cadModel && typeof cadModel === "object" && "zOffsetFromSurface" in cadModel ? cadModel.zOffsetFromSurface !== void 0 ? distance9.parse(
|
|
12319
12467
|
cadModel.zOffsetFromSurface
|
|
12320
12468
|
) : 0 : 0;
|
|
12321
12469
|
const computedLayer = this.props.layer === "bottom" ? "bottom" : "top";
|
|
@@ -13285,7 +13433,7 @@ import {
|
|
|
13285
13433
|
groupProps
|
|
13286
13434
|
} from "@tscircuit/props";
|
|
13287
13435
|
import {
|
|
13288
|
-
distance as
|
|
13436
|
+
distance as distance10
|
|
13289
13437
|
} from "circuit-json";
|
|
13290
13438
|
import Debug13 from "debug";
|
|
13291
13439
|
|
|
@@ -19130,8 +19278,8 @@ var Group6 = class extends NormalComponent3 {
|
|
|
19130
19278
|
const groupProps2 = props;
|
|
19131
19279
|
const hasOutline = groupProps2.outline && groupProps2.outline.length > 0;
|
|
19132
19280
|
const numericOutline = hasOutline ? groupProps2.outline.map((point6) => ({
|
|
19133
|
-
x:
|
|
19134
|
-
y:
|
|
19281
|
+
x: distance10.parse(point6.x),
|
|
19282
|
+
y: distance10.parse(point6.y)
|
|
19135
19283
|
})) : void 0;
|
|
19136
19284
|
const ctx = this.props;
|
|
19137
19285
|
const anchorPosition = this._getGlobalPcbPositionBeforeLayout();
|
|
@@ -19169,8 +19317,8 @@ var Group6 = class extends NormalComponent3 {
|
|
|
19169
19317
|
const hasExplicitPositioning = this._parsedProps.pcbX !== void 0 || this._parsedProps.pcbY !== void 0;
|
|
19170
19318
|
if (hasOutline) {
|
|
19171
19319
|
const numericOutline = props.outline.map((point6) => ({
|
|
19172
|
-
x:
|
|
19173
|
-
y:
|
|
19320
|
+
x: distance10.parse(point6.x),
|
|
19321
|
+
y: distance10.parse(point6.y)
|
|
19174
19322
|
}));
|
|
19175
19323
|
const outlineBounds = getBoundsFromPoints4(numericOutline);
|
|
19176
19324
|
if (!outlineBounds) return;
|
|
@@ -20591,6 +20739,7 @@ function inflateSourceTrace(sourceTrace, inflatorContext) {
|
|
|
20591
20739
|
}
|
|
20592
20740
|
const trace = new Trace3(traceProps2);
|
|
20593
20741
|
trace._inflatedPcbTrace = pcbTrace ?? void 0;
|
|
20742
|
+
trace._inflatedPcbVias = pcbTrace ? injectionDb.pcb_via.list().filter((via) => via.pcb_trace_id === pcbTrace.pcb_trace_id) : void 0;
|
|
20594
20743
|
subcircuit.add(trace);
|
|
20595
20744
|
}
|
|
20596
20745
|
|
|
@@ -20696,12 +20845,22 @@ function inflateStandalonePcbPrimitives(inflatorContext) {
|
|
|
20696
20845
|
"pcb_note_text",
|
|
20697
20846
|
"pcb_note_rect",
|
|
20698
20847
|
"pcb_note_path",
|
|
20699
|
-
"pcb_note_line"
|
|
20848
|
+
"pcb_note_line",
|
|
20849
|
+
"pcb_via"
|
|
20700
20850
|
];
|
|
20701
|
-
const standalonePrimitives = injectionDb.toArray().filter(
|
|
20702
|
-
(
|
|
20703
|
-
|
|
20704
|
-
|
|
20851
|
+
const standalonePrimitives = injectionDb.toArray().filter((elm) => {
|
|
20852
|
+
if (!standalonePrimitiveTypes.includes(elm.type)) return false;
|
|
20853
|
+
if (elm.type === "pcb_via") {
|
|
20854
|
+
if (!elm.pcb_trace_id) return true;
|
|
20855
|
+
const pcbTrace = injectionDb.pcb_trace.get(elm.pcb_trace_id);
|
|
20856
|
+
const sourceTraceId = pcbTrace?.source_trace_id;
|
|
20857
|
+
const isHandledByInflatedTrace = sourceTraceId && injectionDb.source_trace.get(sourceTraceId) && pcbTrace?.route.some(
|
|
20858
|
+
(point6) => point6.route_type === "via" && Math.abs(point6.x - elm.x) < 1e-4 && Math.abs(point6.y - elm.y) < 1e-4
|
|
20859
|
+
);
|
|
20860
|
+
return !isHandledByInflatedTrace;
|
|
20861
|
+
}
|
|
20862
|
+
return "pcb_component_id" in elm && (elm.pcb_component_id === null || elm.pcb_component_id === void 0);
|
|
20863
|
+
});
|
|
20705
20864
|
if (standalonePrimitives.length === 0) return;
|
|
20706
20865
|
const components = createComponentsFromCircuitJson(
|
|
20707
20866
|
{
|
|
@@ -20801,7 +20960,7 @@ import { identity as identity5 } from "transformation-matrix";
|
|
|
20801
20960
|
var package_default = {
|
|
20802
20961
|
name: "@tscircuit/core",
|
|
20803
20962
|
type: "module",
|
|
20804
|
-
version: "0.0.
|
|
20963
|
+
version: "0.0.1237",
|
|
20805
20964
|
types: "dist/index.d.ts",
|
|
20806
20965
|
main: "dist/index.js",
|
|
20807
20966
|
module: "dist/index.js",
|
|
@@ -20875,7 +21034,7 @@ var package_default = {
|
|
|
20875
21034
|
flatbush: "^4.5.0",
|
|
20876
21035
|
"graphics-debug": "^0.0.89",
|
|
20877
21036
|
howfat: "^0.3.8",
|
|
20878
|
-
"kicad-to-circuit-json": "^0.0.
|
|
21037
|
+
"kicad-to-circuit-json": "^0.0.59",
|
|
20879
21038
|
kicadts: "^0.0.35",
|
|
20880
21039
|
"live-server": "^1.2.2",
|
|
20881
21040
|
"looks-same": "^9.0.1",
|
|
@@ -21967,11 +22126,11 @@ var MountedBoard = class extends Subcircuit {
|
|
|
21967
22126
|
|
|
21968
22127
|
// lib/components/normal-components/Panel.ts
|
|
21969
22128
|
import { panelProps } from "@tscircuit/props";
|
|
21970
|
-
import { distance as
|
|
22129
|
+
import { distance as distance14 } from "circuit-json";
|
|
21971
22130
|
|
|
21972
22131
|
// lib/components/normal-components/Subpanel.ts
|
|
21973
22132
|
import { subpanelProps } from "@tscircuit/props";
|
|
21974
|
-
import { distance as
|
|
22133
|
+
import { distance as distance13 } from "circuit-json";
|
|
21975
22134
|
import { compose as compose8, identity as identity6, translate as translate8 } from "transformation-matrix";
|
|
21976
22135
|
|
|
21977
22136
|
// lib/utils/panels/generate-panel-tabs-and-mouse-bites.ts
|
|
@@ -22184,15 +22343,15 @@ function generatePanelTabsAndMouseBites(boards, options) {
|
|
|
22184
22343
|
}
|
|
22185
22344
|
|
|
22186
22345
|
// lib/utils/panels/pack-into-grid.ts
|
|
22187
|
-
import { distance as
|
|
22346
|
+
import { distance as distance12 } from "circuit-json";
|
|
22188
22347
|
|
|
22189
22348
|
// lib/utils/panels/get-board-dimensions-from-props.ts
|
|
22190
22349
|
import { getBoundsFromPoints as getBoundsFromPoints6 } from "@tscircuit/math-utils";
|
|
22191
|
-
import { distance as
|
|
22350
|
+
import { distance as distance11 } from "circuit-json";
|
|
22192
22351
|
var getBoardDimensionsFromProps = (board) => {
|
|
22193
22352
|
const props = board._parsedProps;
|
|
22194
|
-
let width = props.width != null ?
|
|
22195
|
-
let height = props.height != null ?
|
|
22353
|
+
let width = props.width != null ? distance11.parse(props.width) : void 0;
|
|
22354
|
+
let height = props.height != null ? distance11.parse(props.height) : void 0;
|
|
22196
22355
|
if ((width === void 0 || height === void 0) && props.outline?.length) {
|
|
22197
22356
|
const outlineBounds = getBoundsFromPoints6(props.outline);
|
|
22198
22357
|
if (outlineBounds) {
|
|
@@ -22236,8 +22395,8 @@ function packIntoGrid({
|
|
|
22236
22395
|
}
|
|
22237
22396
|
let cols;
|
|
22238
22397
|
let rows;
|
|
22239
|
-
const minCellWidth = cellWidth ?
|
|
22240
|
-
const minCellHeight = cellHeight ?
|
|
22398
|
+
const minCellWidth = cellWidth ? distance12.parse(cellWidth) : 0;
|
|
22399
|
+
const minCellHeight = cellHeight ? distance12.parse(cellHeight) : 0;
|
|
22241
22400
|
if (col !== void 0) {
|
|
22242
22401
|
cols = col;
|
|
22243
22402
|
rows = row ?? Math.ceil(itemsWithDims.length / cols);
|
|
@@ -22336,8 +22495,8 @@ function getItemDimensions(item, db) {
|
|
|
22336
22495
|
const props = subpanel._parsedProps;
|
|
22337
22496
|
if (props.width !== void 0 && props.height !== void 0) {
|
|
22338
22497
|
return {
|
|
22339
|
-
width:
|
|
22340
|
-
height:
|
|
22498
|
+
width: distance12.parse(props.width),
|
|
22499
|
+
height: distance12.parse(props.height)
|
|
22341
22500
|
};
|
|
22342
22501
|
}
|
|
22343
22502
|
const directBoards = subpanel._getDirectBoardChildren();
|
|
@@ -22364,7 +22523,7 @@ function getItemDimensions(item, db) {
|
|
|
22364
22523
|
return getBoardDimensionsFromProps(directBoards[0]);
|
|
22365
22524
|
}
|
|
22366
22525
|
if (subpanel._cachedGridWidth > 0 && subpanel._cachedGridHeight > 0) {
|
|
22367
|
-
const edgePadding =
|
|
22526
|
+
const edgePadding = distance12.parse(props.edgePadding ?? 5);
|
|
22368
22527
|
return {
|
|
22369
22528
|
width: subpanel._cachedGridWidth + edgePadding * 2,
|
|
22370
22529
|
height: subpanel._cachedGridHeight + edgePadding * 2
|
|
@@ -22522,17 +22681,17 @@ var Subpanel = class _Subpanel extends Group6 {
|
|
|
22522
22681
|
edgePaddingTop: edgePaddingTopProp,
|
|
22523
22682
|
edgePaddingBottom: edgePaddingBottomProp
|
|
22524
22683
|
} = this._parsedProps;
|
|
22525
|
-
const edgePadding =
|
|
22526
|
-
const edgePaddingLeft =
|
|
22527
|
-
const edgePaddingRight =
|
|
22684
|
+
const edgePadding = distance13.parse(edgePaddingProp ?? 5);
|
|
22685
|
+
const edgePaddingLeft = distance13.parse(edgePaddingLeftProp ?? edgePadding);
|
|
22686
|
+
const edgePaddingRight = distance13.parse(
|
|
22528
22687
|
edgePaddingRightProp ?? edgePadding
|
|
22529
22688
|
);
|
|
22530
|
-
const edgePaddingTop =
|
|
22531
|
-
const edgePaddingBottom =
|
|
22689
|
+
const edgePaddingTop = distance13.parse(edgePaddingTopProp ?? edgePadding);
|
|
22690
|
+
const edgePaddingBottom = distance13.parse(
|
|
22532
22691
|
edgePaddingBottomProp ?? edgePadding
|
|
22533
22692
|
);
|
|
22534
|
-
const panelWidth =
|
|
22535
|
-
const panelHeight =
|
|
22693
|
+
const panelWidth = distance13.parse(this._parsedProps.width);
|
|
22694
|
+
const panelHeight = distance13.parse(this._parsedProps.height);
|
|
22536
22695
|
availablePanelWidth = panelWidth - edgePaddingLeft - edgePaddingRight;
|
|
22537
22696
|
availablePanelHeight = panelHeight - edgePaddingTop - edgePaddingBottom;
|
|
22538
22697
|
}
|
|
@@ -22607,8 +22766,8 @@ var Subpanel = class _Subpanel extends Group6 {
|
|
|
22607
22766
|
if (!this.pcb_group_id) return;
|
|
22608
22767
|
if (hasExplicitWidth && hasExplicitHeight) {
|
|
22609
22768
|
db.pcb_group.update(this.pcb_group_id, {
|
|
22610
|
-
width:
|
|
22611
|
-
height:
|
|
22769
|
+
width: distance13.parse(this._parsedProps.width),
|
|
22770
|
+
height: distance13.parse(this._parsedProps.height)
|
|
22612
22771
|
});
|
|
22613
22772
|
} else if (gridWidth > 0 || gridHeight > 0) {
|
|
22614
22773
|
const {
|
|
@@ -22618,18 +22777,18 @@ var Subpanel = class _Subpanel extends Group6 {
|
|
|
22618
22777
|
edgePaddingTop: edgePaddingTopProp,
|
|
22619
22778
|
edgePaddingBottom: edgePaddingBottomProp
|
|
22620
22779
|
} = this._parsedProps;
|
|
22621
|
-
const edgePadding =
|
|
22622
|
-
const edgePaddingLeft =
|
|
22623
|
-
const edgePaddingRight =
|
|
22780
|
+
const edgePadding = distance13.parse(edgePaddingProp ?? 5);
|
|
22781
|
+
const edgePaddingLeft = distance13.parse(edgePaddingLeftProp ?? edgePadding);
|
|
22782
|
+
const edgePaddingRight = distance13.parse(
|
|
22624
22783
|
edgePaddingRightProp ?? edgePadding
|
|
22625
22784
|
);
|
|
22626
|
-
const edgePaddingTop =
|
|
22627
|
-
const edgePaddingBottom =
|
|
22785
|
+
const edgePaddingTop = distance13.parse(edgePaddingTopProp ?? edgePadding);
|
|
22786
|
+
const edgePaddingBottom = distance13.parse(
|
|
22628
22787
|
edgePaddingBottomProp ?? edgePadding
|
|
22629
22788
|
);
|
|
22630
22789
|
db.pcb_group.update(this.pcb_group_id, {
|
|
22631
|
-
width: hasExplicitWidth ?
|
|
22632
|
-
height: hasExplicitHeight ?
|
|
22790
|
+
width: hasExplicitWidth ? distance13.parse(this._parsedProps.width) : gridWidth + edgePaddingLeft + edgePaddingRight,
|
|
22791
|
+
height: hasExplicitHeight ? distance13.parse(this._parsedProps.height) : gridHeight + edgePaddingTop + edgePaddingBottom
|
|
22633
22792
|
});
|
|
22634
22793
|
}
|
|
22635
22794
|
}
|
|
@@ -22703,8 +22862,8 @@ var Panel = class extends Subpanel {
|
|
|
22703
22862
|
const { db } = this.root;
|
|
22704
22863
|
const props = this._parsedProps;
|
|
22705
22864
|
const inserted = db.pcb_panel.insert({
|
|
22706
|
-
width: props.width !== void 0 ?
|
|
22707
|
-
height: props.height !== void 0 ?
|
|
22865
|
+
width: props.width !== void 0 ? distance14.parse(props.width) : 0,
|
|
22866
|
+
height: props.height !== void 0 ? distance14.parse(props.height) : 0,
|
|
22708
22867
|
thickness: 1.6,
|
|
22709
22868
|
center: this._getGlobalPcbPositionBeforeLayout(),
|
|
22710
22869
|
covered_with_solder_mask: !(props.noSolderMask ?? false)
|
|
@@ -22723,8 +22882,8 @@ var Panel = class extends Subpanel {
|
|
|
22723
22882
|
if (!this.pcb_panel_id) return;
|
|
22724
22883
|
if (hasExplicitWidth && hasExplicitHeight) {
|
|
22725
22884
|
db.pcb_panel.update(this.pcb_panel_id, {
|
|
22726
|
-
width:
|
|
22727
|
-
height:
|
|
22885
|
+
width: distance14.parse(this._parsedProps.width),
|
|
22886
|
+
height: distance14.parse(this._parsedProps.height)
|
|
22728
22887
|
});
|
|
22729
22888
|
} else if (gridWidth > 0 || gridHeight > 0) {
|
|
22730
22889
|
const {
|
|
@@ -22734,18 +22893,18 @@ var Panel = class extends Subpanel {
|
|
|
22734
22893
|
edgePaddingTop: edgePaddingTopProp,
|
|
22735
22894
|
edgePaddingBottom: edgePaddingBottomProp
|
|
22736
22895
|
} = this._parsedProps;
|
|
22737
|
-
const edgePadding =
|
|
22738
|
-
const edgePaddingLeft =
|
|
22739
|
-
const edgePaddingRight =
|
|
22896
|
+
const edgePadding = distance14.parse(edgePaddingProp ?? 5);
|
|
22897
|
+
const edgePaddingLeft = distance14.parse(edgePaddingLeftProp ?? edgePadding);
|
|
22898
|
+
const edgePaddingRight = distance14.parse(
|
|
22740
22899
|
edgePaddingRightProp ?? edgePadding
|
|
22741
22900
|
);
|
|
22742
|
-
const edgePaddingTop =
|
|
22743
|
-
const edgePaddingBottom =
|
|
22901
|
+
const edgePaddingTop = distance14.parse(edgePaddingTopProp ?? edgePadding);
|
|
22902
|
+
const edgePaddingBottom = distance14.parse(
|
|
22744
22903
|
edgePaddingBottomProp ?? edgePadding
|
|
22745
22904
|
);
|
|
22746
22905
|
db.pcb_panel.update(this.pcb_panel_id, {
|
|
22747
|
-
width: hasExplicitWidth ?
|
|
22748
|
-
height: hasExplicitHeight ?
|
|
22906
|
+
width: hasExplicitWidth ? distance14.parse(this._parsedProps.width) : gridWidth + edgePaddingLeft + edgePaddingRight,
|
|
22907
|
+
height: hasExplicitHeight ? distance14.parse(this._parsedProps.height) : gridHeight + edgePaddingTop + edgePaddingBottom
|
|
22749
22908
|
});
|
|
22750
22909
|
}
|
|
22751
22910
|
}
|
|
@@ -22756,8 +22915,8 @@ var Panel = class extends Subpanel {
|
|
|
22756
22915
|
const props = this._parsedProps;
|
|
22757
22916
|
const currentPanel = db.pcb_panel.get(this.pcb_panel_id);
|
|
22758
22917
|
db.pcb_panel.update(this.pcb_panel_id, {
|
|
22759
|
-
width: props.width !== void 0 ?
|
|
22760
|
-
height: props.height !== void 0 ?
|
|
22918
|
+
width: props.width !== void 0 ? distance14.parse(props.width) : currentPanel?.width,
|
|
22919
|
+
height: props.height !== void 0 ? distance14.parse(props.height) : currentPanel?.height,
|
|
22761
22920
|
center: this._getGlobalPcbPositionBeforeLayout(),
|
|
22762
22921
|
covered_with_solder_mask: !(props.noSolderMask ?? false)
|
|
22763
22922
|
});
|
|
@@ -24122,7 +24281,7 @@ var NetLabel = class extends PrimitiveComponent2 {
|
|
|
24122
24281
|
|
|
24123
24282
|
// lib/components/primitive-components/Fiducial.ts
|
|
24124
24283
|
import "zod";
|
|
24125
|
-
import { distance as
|
|
24284
|
+
import { distance as distance15 } from "circuit-json";
|
|
24126
24285
|
import { fiducialProps } from "@tscircuit/props";
|
|
24127
24286
|
var Fiducial = class extends PrimitiveComponent2 {
|
|
24128
24287
|
pcb_smtpad_id = null;
|
|
@@ -24147,15 +24306,15 @@ var Fiducial = class extends PrimitiveComponent2 {
|
|
|
24147
24306
|
shape: "circle",
|
|
24148
24307
|
x: position.x,
|
|
24149
24308
|
y: position.y,
|
|
24150
|
-
radius:
|
|
24151
|
-
soldermask_margin: props.soldermaskPullback ?
|
|
24309
|
+
radius: distance15.parse(props.padDiameter) / 2,
|
|
24310
|
+
soldermask_margin: props.soldermaskPullback ? distance15.parse(props.soldermaskPullback) : distance15.parse(props.padDiameter) / 2,
|
|
24152
24311
|
is_covered_with_solder_mask: true
|
|
24153
24312
|
});
|
|
24154
24313
|
this.pcb_smtpad_id = pcb_smtpad.pcb_smtpad_id;
|
|
24155
24314
|
}
|
|
24156
24315
|
getPcbSize() {
|
|
24157
24316
|
const { _parsedProps: props } = this;
|
|
24158
|
-
const d =
|
|
24317
|
+
const d = distance15.parse(props.padDiameter);
|
|
24159
24318
|
return { width: d, height: d };
|
|
24160
24319
|
}
|
|
24161
24320
|
_setPositionFromLayout(newCenter) {
|
|
@@ -24326,7 +24485,7 @@ var Via = class extends PrimitiveComponent2 {
|
|
|
24326
24485
|
y: position.y,
|
|
24327
24486
|
hole_diameter: holeDiameter,
|
|
24328
24487
|
outer_diameter: padDiameter,
|
|
24329
|
-
layers:
|
|
24488
|
+
layers: this._getLayers(),
|
|
24330
24489
|
from_layer: this._parsedProps.fromLayer || "bottom",
|
|
24331
24490
|
to_layer: this._parsedProps.toLayer || "top",
|
|
24332
24491
|
subcircuit_id: subcircuit?.subcircuit_id ?? void 0,
|
|
@@ -27346,6 +27505,7 @@ export {
|
|
|
27346
27505
|
PcbNoteRect,
|
|
27347
27506
|
PcbNoteText,
|
|
27348
27507
|
PcbTrace,
|
|
27508
|
+
PcbVia,
|
|
27349
27509
|
PinHeader,
|
|
27350
27510
|
Pinout,
|
|
27351
27511
|
PlatedHole,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tscircuit/core",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.1238",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"module": "dist/index.js",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"flatbush": "^4.5.0",
|
|
76
76
|
"graphics-debug": "^0.0.89",
|
|
77
77
|
"howfat": "^0.3.8",
|
|
78
|
-
"kicad-to-circuit-json": "^0.0.
|
|
78
|
+
"kicad-to-circuit-json": "^0.0.59",
|
|
79
79
|
"kicadts": "^0.0.35",
|
|
80
80
|
"live-server": "^1.2.2",
|
|
81
81
|
"looks-same": "^9.0.1",
|