@tscircuit/pcb-viewer 1.11.248 → 1.11.250

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
@@ -7596,42 +7596,42 @@ var convertElementToPrimitives = (element, allElements) => {
7596
7596
  // The builder currently outputs these as smtpads and holes, so pcb_via isn't
7597
7597
  // used, but that maybe should be changed
7598
7598
  case "pcb_via": {
7599
- const { x, y, outer_diameter, hole_diameter, from_layer, to_layer } = element;
7600
- return [
7601
- {
7602
- _pcb_drawing_object_id: `circle_${globalPcbDrawingObjectCount++}`,
7603
- pcb_drawing_type: "circle",
7604
- x,
7605
- y,
7606
- r: outer_diameter / 2,
7607
- layer: from_layer,
7608
- _element: element,
7609
- _parent_pcb_component,
7610
- _parent_source_component
7611
- },
7612
- {
7613
- _pcb_drawing_object_id: `circle_${globalPcbDrawingObjectCount++}`,
7614
- _element: element,
7615
- pcb_drawing_type: "circle",
7616
- x,
7617
- y,
7618
- r: hole_diameter / 2,
7619
- layer: "drill",
7620
- _parent_pcb_component,
7621
- _parent_source_component
7622
- },
7623
- {
7599
+ const { x, y, outer_diameter, hole_diameter } = element;
7600
+ const from_layer = element.from_layer;
7601
+ const to_layer = element.to_layer;
7602
+ const layers = element.layers;
7603
+ const copperLayers = [];
7604
+ if (from_layer && to_layer) {
7605
+ copperLayers.push(from_layer, to_layer);
7606
+ } else if (layers && Array.isArray(layers)) {
7607
+ copperLayers.push(...layers);
7608
+ } else {
7609
+ copperLayers.push("top", "bottom");
7610
+ }
7611
+ const primitives = [];
7612
+ for (const layer of copperLayers) {
7613
+ primitives.push({
7624
7614
  _pcb_drawing_object_id: `circle_${globalPcbDrawingObjectCount++}`,
7625
7615
  pcb_drawing_type: "circle",
7626
7616
  x,
7627
7617
  y,
7628
7618
  r: outer_diameter / 2,
7629
- layer: to_layer,
7619
+ layer,
7630
7620
  _element: element,
7631
7621
  _parent_pcb_component,
7632
7622
  _parent_source_component
7633
- }
7634
- ];
7623
+ });
7624
+ }
7625
+ primitives.push({
7626
+ _pcb_drawing_object_id: `circle_${globalPcbDrawingObjectCount++}`,
7627
+ pcb_drawing_type: "circle",
7628
+ x,
7629
+ y,
7630
+ r: hole_diameter / 2,
7631
+ layer: "drill",
7632
+ _element: element
7633
+ });
7634
+ return primitives;
7635
7635
  }
7636
7636
  case "pcb_silkscreen_rect": {
7637
7637
  return [
@@ -7713,6 +7713,34 @@ var convertElementToPrimitives = (element, allElements) => {
7713
7713
  }
7714
7714
  ];
7715
7715
  }
7716
+ case "pcb_fabrication_note_rect": {
7717
+ const rectElement = element;
7718
+ const layer = rectElement.layer === "bottom" ? "bottom_fabrication" : "top_fabrication";
7719
+ const hasStroke = rectElement.has_stroke !== void 0 ? rectElement.has_stroke : typeof rectElement.stroke_width === "number" ? rectElement.stroke_width > 0 : void 0;
7720
+ return [
7721
+ {
7722
+ _pcb_drawing_object_id: getNewPcbDrawingObjectId(
7723
+ "pcb_fabrication_note_rect"
7724
+ ),
7725
+ pcb_drawing_type: "rect",
7726
+ x: rectElement.center.x,
7727
+ y: rectElement.center.y,
7728
+ w: rectElement.width,
7729
+ h: rectElement.height,
7730
+ roundness: rectElement.corner_radius,
7731
+ layer,
7732
+ stroke_width: rectElement.stroke_width,
7733
+ is_filled: rectElement.is_filled,
7734
+ has_stroke: hasStroke,
7735
+ is_stroke_dashed: rectElement.is_stroke_dashed,
7736
+ color: rectElement.color,
7737
+ _element: element,
7738
+ _parent_pcb_component,
7739
+ _parent_source_component,
7740
+ _source_port
7741
+ }
7742
+ ];
7743
+ }
7716
7744
  case "pcb_fabrication_note_path":
7717
7745
  case "pcb_silkscreen_path": {
7718
7746
  const {
@@ -12331,7 +12359,7 @@ import { css as css3 } from "@emotion/css";
12331
12359
  // package.json
12332
12360
  var package_default = {
12333
12361
  name: "@tscircuit/pcb-viewer",
12334
- version: "1.11.247",
12362
+ version: "1.11.249",
12335
12363
  main: "dist/index.js",
12336
12364
  type: "module",
12337
12365
  repository: "tscircuit/pcb-viewer",