@tscircuit/pcb-viewer 1.11.302 → 1.11.304

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
@@ -7412,64 +7412,6 @@ var convertElementToPrimitives = (element, allElements) => {
7412
7412
  }
7413
7413
  return [];
7414
7414
  }
7415
- case "pcb_hole": {
7416
- if (element.hole_shape === "circle" || !element.hole_shape) {
7417
- const { x, y, hole_diameter } = element;
7418
- return [
7419
- {
7420
- _pcb_drawing_object_id: `circle_${globalPcbDrawingObjectCount++}`,
7421
- pcb_drawing_type: "circle",
7422
- x,
7423
- y,
7424
- r: hole_diameter / 2,
7425
- layer: "drill",
7426
- _element: element,
7427
- _parent_pcb_component,
7428
- _parent_source_component
7429
- }
7430
- ];
7431
- } else if (element.hole_shape === "pill" || element.hole_shape === "rotated_pill") {
7432
- const { x, y, hole_width, hole_height } = element;
7433
- if (typeof hole_width !== "number" || typeof hole_height !== "number") {
7434
- return [];
7435
- }
7436
- return [
7437
- {
7438
- _pcb_drawing_object_id: `pill_${globalPcbDrawingObjectCount++}`,
7439
- pcb_drawing_type: "pill",
7440
- x,
7441
- y,
7442
- w: hole_width,
7443
- h: hole_height,
7444
- layer: "drill",
7445
- _element: element,
7446
- _parent_pcb_component,
7447
- _parent_source_component,
7448
- ccw_rotation: element.ccw_rotation
7449
- }
7450
- ];
7451
- } else if (element.hole_shape === "rect") {
7452
- const { x, y, hole_width, hole_height } = element;
7453
- if (typeof hole_width !== "number" || typeof hole_height !== "number") {
7454
- return [];
7455
- }
7456
- return [
7457
- {
7458
- _pcb_drawing_object_id: `rect_${globalPcbDrawingObjectCount++}`,
7459
- pcb_drawing_type: "rect",
7460
- x,
7461
- y,
7462
- w: hole_width,
7463
- h: hole_height,
7464
- layer: "drill",
7465
- _element: element,
7466
- _parent_pcb_component,
7467
- _parent_source_component
7468
- }
7469
- ];
7470
- }
7471
- return [];
7472
- }
7473
7415
  case "pcb_keepout": {
7474
7416
  if (element.shape === "circle") {
7475
7417
  const { center, radius } = element;
@@ -8970,13 +8912,25 @@ function drawPcbNoteElementsForLayer(canvas, elements, layers, realToCanvasMat)
8970
8912
  drawer.drawElements(pcbNoteElements, { layers });
8971
8913
  }
8972
8914
 
8973
- // src/lib/draw-pcb-board.ts
8915
+ // src/lib/draw-hole.ts
8974
8916
  import { CircuitToCanvasDrawer as CircuitToCanvasDrawer5 } from "circuit-to-canvas";
8917
+ function isPcbHole(element) {
8918
+ return element.type === "pcb_hole";
8919
+ }
8920
+ function drawPcbHoleElementsForLayer(canvas, elements, layers, realToCanvasMat) {
8921
+ const drawer = new CircuitToCanvasDrawer5(canvas);
8922
+ drawer.realToCanvasMat = realToCanvasMat;
8923
+ const holeElements = elements.filter(isPcbHole);
8924
+ drawer.drawElements(holeElements, { layers });
8925
+ }
8926
+
8927
+ // src/lib/draw-pcb-board.ts
8928
+ import { CircuitToCanvasDrawer as CircuitToCanvasDrawer6 } from "circuit-to-canvas";
8975
8929
  function isPcbBoardElement(element) {
8976
8930
  return element.type === "pcb_board";
8977
8931
  }
8978
8932
  function drawPcbBoardElements(canvas, elements, layers, realToCanvasMat) {
8979
- const drawer = new CircuitToCanvasDrawer5(canvas);
8933
+ const drawer = new CircuitToCanvasDrawer6(canvas);
8980
8934
  drawer.realToCanvasMat = realToCanvasMat;
8981
8935
  const pcbBoardElements = elements.filter(isPcbBoardElement);
8982
8936
  drawer.drawElements(pcbBoardElements, { layers });
@@ -9100,6 +9054,10 @@ var CanvasPrimitiveRenderer = ({
9100
9054
  transform
9101
9055
  );
9102
9056
  }
9057
+ const drillCanvas = canvasRefs.current.drill;
9058
+ if (drillCanvas) {
9059
+ drawPcbHoleElementsForLayer(drillCanvas, elements, ["drill"], transform);
9060
+ }
9103
9061
  const boardCanvas = canvasRefs.current.board;
9104
9062
  if (boardCanvas) {
9105
9063
  drawPcbBoardElements(boardCanvas, elements, [], transform);
@@ -13141,7 +13099,7 @@ import { css as css3 } from "@emotion/css";
13141
13099
  // package.json
13142
13100
  var package_default = {
13143
13101
  name: "@tscircuit/pcb-viewer",
13144
- version: "1.11.301",
13102
+ version: "1.11.303",
13145
13103
  main: "dist/index.js",
13146
13104
  type: "module",
13147
13105
  repository: "tscircuit/pcb-viewer",
@@ -13194,8 +13152,8 @@ var package_default = {
13194
13152
  "@tscircuit/alphabet": "^0.0.9",
13195
13153
  "@tscircuit/math-utils": "^0.0.29",
13196
13154
  "@vitejs/plugin-react": "^5.0.2",
13197
- "circuit-json": "^0.0.351",
13198
- "circuit-to-canvas": "^0.0.37",
13155
+ "circuit-json": "^0.0.353",
13156
+ "circuit-to-canvas": "^0.0.41",
13199
13157
  "circuit-to-svg": "^0.0.271",
13200
13158
  color: "^4.2.3",
13201
13159
  "react-supergrid": "^1.0.10",