@tscircuit/pcb-viewer 1.11.404 → 1.11.405

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
@@ -10542,8 +10542,7 @@ var MouseElementTracker = ({
10542
10542
  transform,
10543
10543
  primitives,
10544
10544
  selectedLayer,
10545
- onMouseHoverOverPrimitives,
10546
- disableHoverHighlights = false
10545
+ onMouseHoverOverPrimitives
10547
10546
  }) => {
10548
10547
  const [mousedPrimitives, setMousedPrimitives] = useState8([]);
10549
10548
  const [mousePos, setMousePos] = useState8({ x: 0, y: 0 });
@@ -10551,10 +10550,9 @@ var MouseElementTracker = ({
10551
10550
  useEffect11(() => {
10552
10551
  setMousedPrimitives([]);
10553
10552
  onMouseHoverOverPrimitives([]);
10554
- }, [selectedLayer, onMouseHoverOverPrimitives]);
10553
+ }, [selectedLayer, primitives, onMouseHoverOverPrimitives]);
10555
10554
  const highlightedPrimitives = useMemo7(() => {
10556
10555
  const highlightedPrimitives2 = [];
10557
- if (disableHoverHighlights) return highlightedPrimitives2;
10558
10556
  for (const primitive of mousedPrimitives) {
10559
10557
  if (primitive._element?.type === "pcb_via") continue;
10560
10558
  if (primitive._element?.type === "pcb_component") continue;
@@ -10614,7 +10612,7 @@ var MouseElementTracker = ({
10614
10612
  });
10615
10613
  }
10616
10614
  return highlightedPrimitives2;
10617
- }, [mousedPrimitives, transform, disableHoverHighlights]);
10615
+ }, [mousedPrimitives, transform]);
10618
10616
  const handleInteraction = (x, y, transform2, primitives2) => {
10619
10617
  setMousePos({ x, y });
10620
10618
  const rwPoint = applyToPoint15(inverse5(transform2), { x, y });
@@ -11094,7 +11092,7 @@ import { css as css3 } from "@emotion/css";
11094
11092
  // package.json
11095
11093
  var package_default = {
11096
11094
  name: "@tscircuit/pcb-viewer",
11097
- version: "1.11.403",
11095
+ version: "1.11.404",
11098
11096
  main: "dist/index.js",
11099
11097
  type: "module",
11100
11098
  repository: {
@@ -12961,6 +12959,13 @@ var CanvasElementsRenderer = (props) => {
12961
12959
  ) : void 0,
12962
12960
  [elementsToRender, connectivityMap, xRayNetIds]
12963
12961
  );
12962
+ const hoverPrimitives = useMemo10(() => {
12963
+ if (!xRayElements) return primitivesWithoutInteractionMetadata;
12964
+ const selectedElements = new Set(xRayElements);
12965
+ return primitivesWithoutInteractionMetadata.filter(
12966
+ (primitive) => (primitive._element?.type === "pcb_smtpad" || primitive._element?.type === "pcb_plated_hole") && selectedElements.has(primitive._element)
12967
+ );
12968
+ }, [primitivesWithoutInteractionMetadata, xRayElements]);
12964
12969
  const getNetAtPoint = (point) => {
12965
12970
  if (!transform) return void 0;
12966
12971
  const describeNet = (netId, element) => ({
@@ -13116,9 +13121,8 @@ var CanvasElementsRenderer = (props) => {
13116
13121
  {
13117
13122
  elements: elementsToRender,
13118
13123
  transform,
13119
- primitives: primitivesWithoutInteractionMetadata,
13124
+ primitives: hoverPrimitives,
13120
13125
  selectedLayer,
13121
- disableHoverHighlights: xRayNetIds.length > 0,
13122
13126
  onMouseHoverOverPrimitives: onMouseOverPrimitives,
13123
13127
  children: /* @__PURE__ */ jsx25(
13124
13128
  EditPlacementOverlay,