@tscircuit/core 0.0.874 → 0.0.876

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
@@ -2718,7 +2718,6 @@ declare class Board extends Group<typeof boardProps> {
2718
2718
  doInitialSourceRender(): void;
2719
2719
  doInitialPcbComponentRender(): void;
2720
2720
  removePcbComponentRender(): void;
2721
- _computePcbGlobalTransformBeforeLayout(): Matrix;
2722
2721
  doInitialPcbDesignRuleChecks(): void;
2723
2722
  updatePcbDesignRuleChecks(): void;
2724
2723
  _emitRenderLifecycleEvent(phase: RenderPhase, startOrEnd: "start" | "end"): void;
package/dist/index.js CHANGED
@@ -3902,12 +3902,20 @@ var Port = class extends PrimitiveComponent2 {
3902
3902
  const parentNormalComponent = this.getParentNormalComponent();
3903
3903
  const parentWithSourceId = this.parent?.source_component_id ? this.parent : parentNormalComponent;
3904
3904
  const source_component_id = parentWithSourceId?.source_component_id ?? null;
3905
+ const pinAttributes = this._getMatchingPinAttributes();
3906
+ const portAttributesFromParent = {};
3907
+ for (const attributes of pinAttributes) {
3908
+ if (attributes.mustBeConnected !== void 0) {
3909
+ portAttributesFromParent.must_be_connected = attributes.mustBeConnected;
3910
+ }
3911
+ }
3905
3912
  const source_port = db.source_port.insert({
3906
3913
  name: props.name,
3907
3914
  pin_number: props.pinNumber,
3908
3915
  port_hints,
3909
3916
  source_component_id,
3910
- subcircuit_id: this.getSubcircuit()?.subcircuit_id
3917
+ subcircuit_id: this.getSubcircuit()?.subcircuit_id,
3918
+ ...portAttributesFromParent
3911
3919
  });
3912
3920
  this.source_port_id = source_port.source_port_id;
3913
3921
  }
@@ -9079,7 +9087,7 @@ var getBoardCenterFromAnchor = ({
9079
9087
 
9080
9088
  // lib/components/normal-components/Board.ts
9081
9089
  import { boardProps } from "@tscircuit/props";
9082
- import { identity as identity4 } from "transformation-matrix";
9090
+ import "transformation-matrix";
9083
9091
 
9084
9092
  // lib/components/primitive-components/Group/Group.ts
9085
9093
  import {
@@ -14042,7 +14050,8 @@ import {
14042
14050
  checkPcbTracesOutOfBoard,
14043
14051
  checkDifferentNetViaSpacing,
14044
14052
  checkSameNetViaSpacing,
14045
- checkPcbComponentOverlap
14053
+ checkPcbComponentOverlap,
14054
+ checkPinMustBeConnected
14046
14055
  } from "@tscircuit/checks";
14047
14056
  import { getBoundsFromPoints as getBoundsFromPoints4 } from "@tscircuit/math-utils";
14048
14057
  var MIN_EFFECTIVE_BORDER_RADIUS_MM = 0.01;
@@ -14320,9 +14329,6 @@ var Board = class extends Group6 {
14320
14329
  db.pcb_board.delete(this.pcb_board_id);
14321
14330
  this.pcb_board_id = null;
14322
14331
  }
14323
- _computePcbGlobalTransformBeforeLayout() {
14324
- return identity4();
14325
- }
14326
14332
  doInitialPcbDesignRuleChecks() {
14327
14333
  if (this.root?.pcbDisabled) return;
14328
14334
  if (this.getInheritedProperty("routingDisabled")) return;
@@ -14365,6 +14371,10 @@ var Board = class extends Group6 {
14365
14371
  for (const error of pcbComponentOverlapErrors) {
14366
14372
  db.pcb_footprint_overlap_error.insert(error);
14367
14373
  }
14374
+ const sourcePinMustBeConnectedErrors = checkPinMustBeConnected(db.toArray());
14375
+ for (const error of sourcePinMustBeConnectedErrors) {
14376
+ db.source_pin_must_be_connected_error.insert(error);
14377
+ }
14368
14378
  }
14369
14379
  _emitRenderLifecycleEvent(phase, startOrEnd) {
14370
14380
  super._emitRenderLifecycleEvent(phase, startOrEnd);
@@ -14703,6 +14713,7 @@ var Panel = class extends Group6 {
14703
14713
  if (!pcbBoard || !pcbBoard.width || !pcbBoard.height) return;
14704
14714
  const xPos = colXOffsets[col] + colWidths[col] / 2;
14705
14715
  const yPos = rowYOffsets[row] + rowHeights[row] / 2;
14716
+ board._repositionOnPcb({ x: xPos, y: yPos });
14706
14717
  db.pcb_board.update(board.pcb_board_id, {
14707
14718
  center: { x: xPos, y: yPos }
14708
14719
  });
@@ -18577,7 +18588,7 @@ import { identity as identity6 } from "transformation-matrix";
18577
18588
  var package_default = {
18578
18589
  name: "@tscircuit/core",
18579
18590
  type: "module",
18580
- version: "0.0.873",
18591
+ version: "0.0.875",
18581
18592
  types: "dist/index.d.ts",
18582
18593
  main: "dist/index.js",
18583
18594
  module: "dist/index.js",
@@ -18609,7 +18620,7 @@ var package_default = {
18609
18620
  "@biomejs/biome": "^1.8.3",
18610
18621
  "@resvg/resvg-js": "^2.6.2",
18611
18622
  "@tscircuit/capacity-autorouter": "^0.0.140",
18612
- "@tscircuit/checks": "^0.0.85",
18623
+ "@tscircuit/checks": "^0.0.87",
18613
18624
  "@tscircuit/circuit-json-util": "^0.0.72",
18614
18625
  "@tscircuit/common": "^0.0.20",
18615
18626
  "@tscircuit/copper-pour-solver": "^0.0.14",
@@ -18635,7 +18646,7 @@ var package_default = {
18635
18646
  "bun-match-svg": "0.0.12",
18636
18647
  "calculate-elbow": "^0.0.12",
18637
18648
  "chokidar-cli": "^3.0.0",
18638
- "circuit-json": "^0.0.319",
18649
+ "circuit-json": "^0.0.321",
18639
18650
  "circuit-json-to-bpc": "^0.0.13",
18640
18651
  "circuit-json-to-connectivity-map": "^0.0.22",
18641
18652
  "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.874",
4
+ "version": "0.0.876",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -33,7 +33,7 @@
33
33
  "@biomejs/biome": "^1.8.3",
34
34
  "@resvg/resvg-js": "^2.6.2",
35
35
  "@tscircuit/capacity-autorouter": "^0.0.140",
36
- "@tscircuit/checks": "^0.0.85",
36
+ "@tscircuit/checks": "^0.0.87",
37
37
  "@tscircuit/circuit-json-util": "^0.0.72",
38
38
  "@tscircuit/common": "^0.0.20",
39
39
  "@tscircuit/copper-pour-solver": "^0.0.14",
@@ -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.319",
62
+ "circuit-json": "^0.0.321",
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",