@tscircuit/core 0.0.880 → 0.0.882

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.js CHANGED
@@ -6433,6 +6433,35 @@ function getTraceLength(route) {
6433
6433
  return totalLength;
6434
6434
  }
6435
6435
 
6436
+ // lib/utils/pcbStyle/getViaDiameterDefaults.ts
6437
+ var DEFAULT_VIA_HOLE_DIAMETER = 0.3;
6438
+ var DEFAULT_VIA_PAD_DIAMETER = 0.6;
6439
+ var parseDistance = (value, fallback) => {
6440
+ if (value === void 0) return fallback;
6441
+ if (typeof value === "number") return value;
6442
+ const parsed = parseFloat(value);
6443
+ return Number.isFinite(parsed) ? parsed : fallback;
6444
+ };
6445
+ var getViaDiameterDefaults = (pcbStyle) => {
6446
+ return {
6447
+ holeDiameter: parseDistance(
6448
+ pcbStyle?.viaHoleDiameter,
6449
+ DEFAULT_VIA_HOLE_DIAMETER
6450
+ ),
6451
+ padDiameter: parseDistance(
6452
+ pcbStyle?.viaPadDiameter,
6453
+ DEFAULT_VIA_PAD_DIAMETER
6454
+ )
6455
+ };
6456
+ };
6457
+ var getViaDiameterDefaultsWithOverrides = (overrides, pcbStyle) => {
6458
+ const defaults = getViaDiameterDefaults(pcbStyle);
6459
+ return {
6460
+ holeDiameter: overrides.holeDiameter ?? defaults.holeDiameter,
6461
+ padDiameter: overrides.padDiameter ?? defaults.padDiameter
6462
+ };
6463
+ };
6464
+
6436
6465
  // lib/components/primitive-components/Trace/Trace_doInitialPcbTraceRender.ts
6437
6466
  var portToObjective = (port) => {
6438
6467
  const portPosition = port._getGlobalPcbPositionAfterLayout();
@@ -6697,6 +6726,8 @@ function Trace_doInitialPcbTraceRender(trace) {
6697
6726
  }
6698
6727
  const mergedRoute = mergeRoutes(routes);
6699
6728
  const traceLength = getTraceLength(mergedRoute);
6729
+ const pcbStyle = trace.getInheritedMergedProperty("pcbStyle");
6730
+ const { holeDiameter, padDiameter } = getViaDiameterDefaults(pcbStyle);
6700
6731
  const pcb_trace = db.pcb_trace.insert({
6701
6732
  route: mergedRoute,
6702
6733
  source_trace_id: trace.source_trace_id,
@@ -6711,8 +6742,8 @@ function Trace_doInitialPcbTraceRender(trace) {
6711
6742
  pcb_trace_id: pcb_trace.pcb_trace_id,
6712
6743
  x: point.x,
6713
6744
  y: point.y,
6714
- hole_diameter: 0.3,
6715
- outer_diameter: 0.6,
6745
+ hole_diameter: holeDiameter,
6746
+ outer_diameter: padDiameter,
6716
6747
  layers: [point.from_layer, point.to_layer],
6717
6748
  from_layer: point.from_layer,
6718
6749
  to_layer: point.to_layer
@@ -13726,6 +13757,8 @@ var Group6 = class extends NormalComponent3 {
13726
13757
  const { output_pcb_traces } = this._asyncAutoroutingResult;
13727
13758
  if (!output_pcb_traces) return;
13728
13759
  const { db } = this.root;
13760
+ const pcbStyle = this.getInheritedMergedProperty("pcbStyle");
13761
+ const { holeDiameter, padDiameter } = getViaDiameterDefaults(pcbStyle);
13729
13762
  for (const pcb_trace of output_pcb_traces) {
13730
13763
  if (pcb_trace.type !== "pcb_trace") continue;
13731
13764
  pcb_trace.subcircuit_id = this.subcircuit_id;
@@ -13746,8 +13779,8 @@ var Group6 = class extends NormalComponent3 {
13746
13779
  pcb_trace_id: pcb_trace.pcb_trace_id,
13747
13780
  x: point.x,
13748
13781
  y: point.y,
13749
- hole_diameter: 0.3,
13750
- outer_diameter: 0.6,
13782
+ hole_diameter: holeDiameter,
13783
+ outer_diameter: padDiameter,
13751
13784
  layers: [
13752
13785
  point.from_layer,
13753
13786
  point.to_layer
@@ -17201,9 +17234,19 @@ var Via = class extends PrimitiveComponent2 {
17201
17234
  getAvailablePcbLayers() {
17202
17235
  return ["top", "inner1", "inner2", "bottom"];
17203
17236
  }
17237
+ _getResolvedViaDiameters(pcbStyle) {
17238
+ return getViaDiameterDefaultsWithOverrides(
17239
+ {
17240
+ holeDiameter: this._parsedProps.holeDiameter,
17241
+ padDiameter: this._parsedProps.outerDiameter
17242
+ },
17243
+ pcbStyle
17244
+ );
17245
+ }
17204
17246
  getPcbSize() {
17205
- const { _parsedProps: props } = this;
17206
- return { width: props.outerDiameter, height: props.outerDiameter };
17247
+ const pcbStyle = this.getInheritedMergedProperty("pcbStyle");
17248
+ const { padDiameter } = this._getResolvedViaDiameters(pcbStyle);
17249
+ return { width: padDiameter, height: padDiameter };
17207
17250
  }
17208
17251
  _getPcbCircuitJsonBounds() {
17209
17252
  const { db } = this.root;
@@ -17265,14 +17308,15 @@ var Via = class extends PrimitiveComponent2 {
17265
17308
  doInitialPcbComponentRender() {
17266
17309
  if (this.root?.pcbDisabled) return;
17267
17310
  const { db } = this.root;
17268
- const { _parsedProps: props } = this;
17311
+ const pcbStyle = this.getInheritedMergedProperty("pcbStyle");
17312
+ const { padDiameter } = this._getResolvedViaDiameters(pcbStyle);
17269
17313
  const position = this._getGlobalPcbPositionBeforeLayout();
17270
17314
  const subcircuit = this.getSubcircuit();
17271
17315
  const pcb_component = db.pcb_component.insert({
17272
17316
  center: position,
17273
- width: props.outerDiameter,
17274
- height: props.outerDiameter,
17275
- layer: props.fromLayer ?? "top",
17317
+ width: padDiameter,
17318
+ height: padDiameter,
17319
+ layer: this._parsedProps.fromLayer ?? "top",
17276
17320
  rotation: 0,
17277
17321
  source_component_id: this.source_component_id,
17278
17322
  subcircuit_id: subcircuit?.subcircuit_id ?? void 0,
@@ -17295,21 +17339,22 @@ var Via = class extends PrimitiveComponent2 {
17295
17339
  doInitialPcbPrimitiveRender() {
17296
17340
  if (this.root?.pcbDisabled) return;
17297
17341
  const { db } = this.root;
17298
- const { _parsedProps: props } = this;
17342
+ const pcbStyle = this.getInheritedMergedProperty("pcbStyle");
17343
+ const { holeDiameter, padDiameter } = this._getResolvedViaDiameters(pcbStyle);
17299
17344
  const position = this._getGlobalPcbPositionBeforeLayout();
17300
17345
  const subcircuit = this.getSubcircuit();
17301
17346
  const pcb_via = db.pcb_via.insert({
17302
17347
  x: position.x,
17303
17348
  y: position.y,
17304
- hole_diameter: props.holeDiameter,
17305
- outer_diameter: props.outerDiameter,
17349
+ hole_diameter: holeDiameter,
17350
+ outer_diameter: padDiameter,
17306
17351
  layers: ["bottom", "top"],
17307
- from_layer: props.fromLayer || "bottom",
17308
- to_layer: props.toLayer || "top",
17352
+ from_layer: this._parsedProps.fromLayer || "bottom",
17353
+ to_layer: this._parsedProps.toLayer || "top",
17309
17354
  subcircuit_id: subcircuit?.subcircuit_id ?? void 0,
17310
17355
  subcircuit_connectivity_map_key: this.subcircuit_connectivity_map_key ?? void 0,
17311
17356
  pcb_group_id: this.getGroup()?.pcb_group_id ?? void 0,
17312
- net_is_assignable: props.netIsAssignable ?? void 0
17357
+ net_is_assignable: this._parsedProps.netIsAssignable ?? void 0
17313
17358
  });
17314
17359
  this.pcb_via_id = pcb_via.pcb_via_id;
17315
17360
  }
@@ -18525,11 +18570,11 @@ var VoltageProbe = class extends PrimitiveComponent2 {
18525
18570
  if (!finalName) {
18526
18571
  finalName = targets[0].split(" > ").map((s) => s.replace(/^\./, "")).join(".");
18527
18572
  }
18528
- this.finalProbeName = finalName;
18573
+ this.finalProbeName = finalName ?? null;
18529
18574
  const { simulation_voltage_probe_id } = db.simulation_voltage_probe.insert({
18530
18575
  name: finalName,
18531
- source_port_id: port?.source_port_id ?? void 0,
18532
- source_net_id: net?.source_net_id ?? void 0,
18576
+ signal_input_source_port_id: port?.source_port_id ?? void 0,
18577
+ signal_input_source_net_id: net?.source_net_id ?? void 0,
18533
18578
  subcircuit_id: subcircuit.subcircuit_id || void 0,
18534
18579
  color: this.color
18535
18580
  });
@@ -18588,7 +18633,7 @@ import { identity as identity6 } from "transformation-matrix";
18588
18633
  var package_default = {
18589
18634
  name: "@tscircuit/core",
18590
18635
  type: "module",
18591
- version: "0.0.879",
18636
+ version: "0.0.881",
18592
18637
  types: "dist/index.d.ts",
18593
18638
  main: "dist/index.js",
18594
18639
  module: "dist/index.js",
@@ -18632,7 +18677,7 @@ var package_default = {
18632
18677
  "@tscircuit/math-utils": "^0.0.29",
18633
18678
  "@tscircuit/miniflex": "^0.0.4",
18634
18679
  "@tscircuit/ngspice-spice-engine": "^0.0.4",
18635
- "@tscircuit/props": "^0.0.410",
18680
+ "@tscircuit/props": "^0.0.418",
18636
18681
  "@tscircuit/schematic-autolayout": "^0.0.6",
18637
18682
  "@tscircuit/schematic-match-adapt": "^0.0.16",
18638
18683
  "@tscircuit/schematic-trace-solver": "^v0.0.45",
@@ -18646,7 +18691,7 @@ var package_default = {
18646
18691
  "bun-match-svg": "0.0.12",
18647
18692
  "calculate-elbow": "^0.0.12",
18648
18693
  "chokidar-cli": "^3.0.0",
18649
- "circuit-json": "^0.0.321",
18694
+ "circuit-json": "^0.0.325",
18650
18695
  "circuit-json-to-bpc": "^0.0.13",
18651
18696
  "circuit-json-to-connectivity-map": "^0.0.22",
18652
18697
  "circuit-json-to-gltf": "^0.0.31",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.880",
4
+ "version": "0.0.882",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -45,7 +45,7 @@
45
45
  "@tscircuit/math-utils": "^0.0.29",
46
46
  "@tscircuit/miniflex": "^0.0.4",
47
47
  "@tscircuit/ngspice-spice-engine": "^0.0.4",
48
- "@tscircuit/props": "^0.0.410",
48
+ "@tscircuit/props": "^0.0.418",
49
49
  "@tscircuit/schematic-autolayout": "^0.0.6",
50
50
  "@tscircuit/schematic-match-adapt": "^0.0.16",
51
51
  "@tscircuit/schematic-trace-solver": "^v0.0.45",
@@ -59,7 +59,7 @@
59
59
  "bun-match-svg": "0.0.12",
60
60
  "calculate-elbow": "^0.0.12",
61
61
  "chokidar-cli": "^3.0.0",
62
- "circuit-json": "^0.0.321",
62
+ "circuit-json": "^0.0.325",
63
63
  "circuit-json-to-bpc": "^0.0.13",
64
64
  "circuit-json-to-connectivity-map": "^0.0.22",
65
65
  "circuit-json-to-gltf": "^0.0.31",