@tscircuit/core 0.0.64 → 0.0.66

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
@@ -2066,7 +2066,8 @@ var Board = class extends Group {
2066
2066
  const pcb_board = db.pcb_board.insert({
2067
2067
  center: { x: props.pcbX, y: props.pcbY },
2068
2068
  width: props.width,
2069
- height: props.height
2069
+ height: props.height,
2070
+ outline: props.outline
2070
2071
  });
2071
2072
  this.pcb_board_id = pcb_board.pcb_board_id;
2072
2073
  }
@@ -2532,14 +2533,15 @@ searched component ${targetComponent.getString()}, which has ports: ${targetComp
2532
2533
  const bLayer = "layers" in b && b.layers.length === 1 ? b.layers[0] : dominantLayer ?? "top";
2533
2534
  const pcbPortA = "pcb_port_id" in a ? a.pcb_port_id : null;
2534
2535
  const pcbPortB = "pcb_port_id" in b ? b.pcb_port_id : null;
2536
+ const minTraceWidth = this.getSubcircuit()._parsedProps.minTraceWidth ?? 0.16;
2535
2537
  const ijump = new MultilayerIjump({
2536
- OBSTACLE_MARGIN: 0.3,
2538
+ OBSTACLE_MARGIN: minTraceWidth * 2,
2537
2539
  // isRemovePathLoopsEnabled: true,
2538
- optimizeWithGoalBoxes: false,
2539
- // Boolean(pcbPortA && pcbPortB),
2540
+ optimizeWithGoalBoxes: Boolean(pcbPortA && pcbPortB),
2540
2541
  connMap,
2541
2542
  input: {
2542
2543
  obstacles,
2544
+ minTraceWidth,
2543
2545
  connections: [
2544
2546
  {
2545
2547
  name: this.source_trace_id,
@@ -2654,6 +2656,7 @@ searched component ${targetComponent.getString()}, which has ports: ${targetComp
2654
2656
  }
2655
2657
  const bounds = computeObstacleBounds(obstacles);
2656
2658
  const simpleRouteJsonInput = {
2659
+ minTraceWidth: 0.1,
2657
2660
  obstacles,
2658
2661
  connections: [connection],
2659
2662
  bounds,
@@ -30,6 +30,7 @@ export class Board extends Group<typeof boardProps> {
30
30
 
31
31
  width: props.width,
32
32
  height: props.height,
33
+ outline: props.outline,
33
34
  })
34
35
 
35
36
  this.pcb_board_id = pcb_board.pcb_board_id!
@@ -450,13 +450,17 @@ export class Trace extends PrimitiveComponent<typeof traceProps> {
450
450
  const pcbPortA = "pcb_port_id" in a ? a.pcb_port_id : null
451
451
  const pcbPortB = "pcb_port_id" in b ? b.pcb_port_id : null
452
452
 
453
+ const minTraceWidth =
454
+ this.getSubcircuit()._parsedProps.minTraceWidth ?? 0.16
455
+
453
456
  const ijump = new MultilayerIjump({
454
- OBSTACLE_MARGIN: 0.3,
457
+ OBSTACLE_MARGIN: minTraceWidth * 2,
455
458
  // isRemovePathLoopsEnabled: true,
456
- optimizeWithGoalBoxes: false, // Boolean(pcbPortA && pcbPortB),
459
+ optimizeWithGoalBoxes: Boolean(pcbPortA && pcbPortB),
457
460
  connMap,
458
461
  input: {
459
462
  obstacles,
463
+ minTraceWidth,
460
464
  connections: [
461
465
  {
462
466
  name: this.source_trace_id!,
@@ -587,6 +591,7 @@ export class Trace extends PrimitiveComponent<typeof traceProps> {
587
591
  const bounds = computeObstacleBounds(obstacles)
588
592
 
589
593
  const simpleRouteJsonInput: SimpleRouteJson = {
594
+ minTraceWidth: 0.1,
590
595
  obstacles,
591
596
  connections: [connection],
592
597
  bounds,
@@ -35,6 +35,7 @@ export interface SimpleRouteConnection {
35
35
 
36
36
  export interface SimpleRouteJson {
37
37
  layerCount: number
38
+ minTraceWidth: number
38
39
  obstacles: Obstacle[]
39
40
  connections: Array<SimpleRouteConnection>
40
41
  bounds: { minX: number; maxX: number; minY: number; maxY: number }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@tscircuit/core",
3
3
  "module": "index.ts",
4
4
  "type": "module",
5
- "version": "0.0.64",
5
+ "version": "0.0.66",
6
6
  "types": "dist/index.d.ts",
7
7
  "main": "dist/index.js",
8
8
  "files": [
@@ -23,7 +23,7 @@
23
23
  "@types/react": "^18.3.3",
24
24
  "@types/react-reconciler": "^0.28.8",
25
25
  "bun-match-svg": "0.0.2",
26
- "circuit-to-svg": "^0.0.32",
26
+ "circuit-to-svg": "^0.0.33",
27
27
  "debug": "^4.3.6",
28
28
  "howfat": "^0.3.8",
29
29
  "looks-same": "^9.0.1",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "dependencies": {
37
37
  "@lume/kiwi": "^0.4.3",
38
- "@tscircuit/infgrid-ijump-astar": "^0.0.18",
38
+ "@tscircuit/infgrid-ijump-astar": "^0.0.20",
39
39
  "@tscircuit/math-utils": "^0.0.4",
40
40
  "@tscircuit/props": "^0.0.63",
41
41
  "@tscircuit/soup": "^0.0.71",