@tscircuit/core 0.0.2331 → 0.0.2333

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
@@ -229225,9 +229225,10 @@ type FanoutPourNetMap = Readonly<Record<string, string | readonly string[]>>;
229225
229225
  /**
229226
229226
  * This function can only be called in the PcbTraceRender phase or later
229227
229227
  */
229228
- declare const getSimpleRouteJsonFromCircuitJson: ({ db, circuitJson, subcircuit_id, minTraceWidth, minTraceToPadEdgeClearance, minTraceToHoleEdgeClearance, minViaEdgeToPadEdgeClearance, minViaHoleEdgeToViaHoleEdgeClearance, minPlatedHoleDrillEdgeToDrillEdgeClearance, minPadEdgeToPadEdgeClearance, minBoardEdgeClearance, minViaHoleDiameter, minViaPadDiameter, nominalTraceWidth, subcircuitComponent, routingPcbGroupId, pcb_panel_id, fanoutPourNetMap, ignoreExistingTopLevelPcbRouteState, }: {
229228
+ declare const getSimpleRouteJsonFromCircuitJson: ({ db, circuitJson, allowViaInPad, subcircuit_id, minTraceWidth, minTraceToPadEdgeClearance, minTraceToHoleEdgeClearance, minViaEdgeToPadEdgeClearance, minViaHoleEdgeToViaHoleEdgeClearance, minPlatedHoleDrillEdgeToDrillEdgeClearance, minPadEdgeToPadEdgeClearance, minBoardEdgeClearance, minViaHoleDiameter, minViaPadDiameter, nominalTraceWidth, subcircuitComponent, routingPcbGroupId, pcb_panel_id, fanoutPourNetMap, ignoreExistingTopLevelPcbRouteState, }: {
229229
229229
  db?: CircuitJsonUtilObjects;
229230
229230
  circuitJson?: AnyCircuitElement[];
229231
+ allowViaInPad?: boolean;
229231
229232
  subcircuit_id?: string | null;
229232
229233
  minTraceWidth?: number;
229233
229234
  nominalTraceWidth?: number;
package/dist/index.js CHANGED
@@ -150064,6 +150064,7 @@ var getOwningPcbBoardForSubcircuit = (db2, subcircuitId) => {
150064
150064
  var getSimpleRouteJsonFromCircuitJson = ({
150065
150065
  db: db2,
150066
150066
  circuitJson,
150067
+ allowViaInPad,
150067
150068
  subcircuit_id,
150068
150069
  minTraceWidth,
150069
150070
  minTraceToPadEdgeClearance,
@@ -150711,7 +150712,7 @@ var getSimpleRouteJsonFromCircuitJson = ({
150711
150712
  traces: preservedRoutedSubcircuitTraces.length > 0 ? preservedRoutedSubcircuitTraces : void 0,
150712
150713
  layerCount: board?.num_layers ?? 2,
150713
150714
  allowBlindAndBuriedVias: board?.allow_blind_and_buried_vias ?? false,
150714
- allowViaInPad: board?.is_via_in_pad_allowed ?? false,
150715
+ allowViaInPad: allowViaInPad ?? board?.is_via_in_pad_allowed ?? false,
150715
150716
  minTraceWidth: Math.min(
150716
150717
  defaultTraceWidth,
150717
150718
  ...allConns.map((c2) => c2.width)
@@ -159612,7 +159613,7 @@ var RoutingPhasePreparationError = class extends Error {
159612
159613
  var package_default = {
159613
159614
  name: "@tscircuit/core",
159614
159615
  type: "module",
159615
- version: "0.0.2330",
159616
+ version: "0.0.2332",
159616
159617
  types: "dist/index.d.ts",
159617
159618
  main: "dist/index.js",
159618
159619
  module: "dist/index.js",
@@ -159652,7 +159653,7 @@ var package_default = {
159652
159653
  "@tscircuit/bga-fanout-solver": "github:tscircuit/bga-fanout-solver#247c835cb8d69b65e53891dcf869731079415b39",
159653
159654
  "@tscircuit/bus-lanes-solver": "https://jscdn.tscircuit.com/@tscircuit/bus-lanes-solver/0.0.51.tgz",
159654
159655
  "@tscircuit/cableprinter": "^0.0.6",
159655
- "@tscircuit/capacity-autorouter": "^0.0.1074",
159656
+ "@tscircuit/capacity-autorouter": "^0.0.1075",
159656
159657
  "@tscircuit/checks": "^0.0.273",
159657
159658
  "@tscircuit/circuit-json-util": "^0.0.131",
159658
159659
  "@tscircuit/common": "^0.0.20",
@@ -161401,41 +161402,28 @@ var Group = class extends NormalComponent {
161401
161402
  return element.type.startsWith("source_") || element.type.startsWith("pcb_");
161402
161403
  }
161403
161404
  );
161405
+ const preferredTraceWidth = props.defaultTraceWidth ?? props.nominalTraceWidth;
161406
+ const { simpleRouteJson } = getSimpleRouteJsonFromCircuitJson({
161407
+ pcb_panel_id: getOwningPanel(this)?.pcb_panel_id ?? void 0,
161408
+ db: db2,
161409
+ allowViaInPad: autorouterConfig.allowViaInPad,
161410
+ minTraceWidth: Number(props.minTraceWidth ?? 0.15),
161411
+ nominalTraceWidth: preferredTraceWidth != null ? Number(preferredTraceWidth) : void 0,
161412
+ subcircuit_id: this.subcircuit_id,
161413
+ subcircuitComponent: this
161414
+ });
161415
+ const unbrokenPlaneRouteJson = simpleRouteJson.obstacles.some(
161416
+ (obstacle) => obstacle.isCopperPour
161417
+ ) ? simpleRouteJson : void 0;
161404
161418
  if (serverMode === "solve-endpoint") {
161405
- if (this.props.autorouter?.inputFormat === "simplified") {
161406
- const preferredTraceWidth = props.defaultTraceWidth ?? props.nominalTraceWidth;
161407
- const { simpleRouteJson } = getSimpleRouteJsonFromCircuitJson({
161408
- pcb_panel_id: getOwningPanel(this)?.pcb_panel_id ?? void 0,
161409
- db: db2,
161410
- minTraceWidth: Number(props.minTraceWidth ?? 0.15),
161411
- nominalTraceWidth: preferredTraceWidth != null ? Number(preferredTraceWidth) : void 0,
161412
- subcircuit_id: this.subcircuit_id,
161413
- subcircuitComponent: this
161414
- });
161415
- simpleRouteJson.allowViaInPad = autorouterConfig.allowViaInPad ?? simpleRouteJson.allowViaInPad;
161416
- const { autorouting_result: autorouting_result2 } = await fetchWithDebug(
161417
- `${serverUrl}/autorouting/solve`,
161418
- {
161419
- method: "POST",
161420
- body: JSON.stringify({
161421
- input_simple_route_json: simpleRouteJson,
161422
- subcircuit_id: this.subcircuit_id
161423
- }),
161424
- headers: {
161425
- "Content-Type": "application/json"
161426
- }
161427
- }
161428
- ).then((r2) => r2.json());
161429
- this._asyncAutoroutingResult = autorouting_result2;
161430
- this._markDirty("PcbTraceRender");
161431
- return;
161432
- }
161419
+ const simplifiedInput = this.props.autorouter?.inputFormat === "simplified";
161433
161420
  const { autorouting_result } = await fetchWithDebug(
161434
161421
  `${serverUrl}/autorouting/solve`,
161435
161422
  {
161436
161423
  method: "POST",
161437
161424
  body: JSON.stringify({
161438
- input_circuit_json: pcbAndSourceCircuitJson,
161425
+ input_circuit_json: simplifiedInput ? void 0 : pcbAndSourceCircuitJson,
161426
+ input_simple_route_json: simplifiedInput ? simpleRouteJson : unbrokenPlaneRouteJson,
161439
161427
  subcircuit_id: this.subcircuit_id
161440
161428
  }),
161441
161429
  headers: {
@@ -161453,6 +161441,7 @@ var Group = class extends NormalComponent {
161453
161441
  method: "POST",
161454
161442
  body: JSON.stringify({
161455
161443
  input_circuit_json: pcbAndSourceCircuitJson,
161444
+ input_simple_route_json: unbrokenPlaneRouteJson,
161456
161445
  provider: "freerouting",
161457
161446
  autostart: true,
161458
161447
  display_name: this.root?.name,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.2331",
4
+ "version": "0.0.2333",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -41,7 +41,7 @@
41
41
  "@tscircuit/bga-fanout-solver": "github:tscircuit/bga-fanout-solver#247c835cb8d69b65e53891dcf869731079415b39",
42
42
  "@tscircuit/bus-lanes-solver": "https://jscdn.tscircuit.com/@tscircuit/bus-lanes-solver/0.0.51.tgz",
43
43
  "@tscircuit/cableprinter": "^0.0.6",
44
- "@tscircuit/capacity-autorouter": "^0.0.1074",
44
+ "@tscircuit/capacity-autorouter": "^0.0.1075",
45
45
  "@tscircuit/checks": "^0.0.273",
46
46
  "@tscircuit/circuit-json-util": "^0.0.131",
47
47
  "@tscircuit/common": "^0.0.20",