@tscircuit/pcb-viewer 1.11.380 → 1.11.382

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
@@ -24,6 +24,7 @@ interface State {
24
24
  is_showing_solder_mask: boolean;
25
25
  is_showing_silkscreen: boolean;
26
26
  is_showing_fabrication_notes: boolean;
27
+ is_showing_pcb_notes: boolean;
27
28
  pcb_group_view_mode: "all" | "named_only";
28
29
  hovered_error_id: string | null;
29
30
  focused_error_id: string | null;
@@ -43,6 +44,7 @@ interface State {
43
44
  setIsShowingSolderMask: (is_showing: boolean) => void;
44
45
  setIsShowingSilkscreen: (is_showing: boolean) => void;
45
46
  setIsShowingFabricationNotes: (is_showing: boolean) => void;
47
+ setIsShowingPcbNotes: (is_showing: boolean) => void;
46
48
  setPcbGroupViewMode: (mode: "all" | "named_only") => void;
47
49
  setHoveredErrorId: (errorId: string | null) => void;
48
50
  setFocusedErrorId: (errorId: string | null) => void;
package/dist/index.js CHANGED
@@ -6623,6 +6623,7 @@ var STORAGE_KEYS = {
6623
6623
  IS_SHOWING_GROUP_ANCHOR_OFFSETS: "pcb_viewer_is_showing_group_anchor_offsets",
6624
6624
  IS_SHOWING_SOLDER_MASK: "pcb_viewer_is_showing_solder_mask",
6625
6625
  IS_SHOWING_FABRICATION_NOTES: "pcb_viewer_is_showing_fabrication_notes",
6626
+ IS_SHOWING_PCB_NOTES: "pcb_viewer_is_showing_pcb_notes",
6626
6627
  IS_SHOWING_SILKSCREEN: "pcb_viewer_is_showing_silkscreen"
6627
6628
  };
6628
6629
  var getStoredBoolean = (key, defaultValue) => {
@@ -6699,6 +6700,10 @@ var createStore = (initialState = {}, disablePcbGroups = false) => createZustand
6699
6700
  STORAGE_KEYS.IS_SHOWING_FABRICATION_NOTES,
6700
6701
  false
6701
6702
  ),
6703
+ is_showing_pcb_notes: getStoredBoolean(
6704
+ STORAGE_KEYS.IS_SHOWING_PCB_NOTES,
6705
+ true
6706
+ ),
6702
6707
  pcb_group_view_mode: disablePcbGroups ? "all" : getStoredString(
6703
6708
  STORAGE_KEYS.PCB_GROUP_VIEW_MODE,
6704
6709
  DEFAULT_PCB_GROUP_VIEW_MODE
@@ -6756,6 +6761,10 @@ var createStore = (initialState = {}, disablePcbGroups = false) => createZustand
6756
6761
  );
6757
6762
  set({ is_showing_fabrication_notes: is_showing });
6758
6763
  },
6764
+ setIsShowingPcbNotes: (is_showing) => {
6765
+ setStoredBoolean(STORAGE_KEYS.IS_SHOWING_PCB_NOTES, is_showing);
6766
+ set({ is_showing_pcb_notes: is_showing });
6767
+ },
6759
6768
  setPcbGroupViewMode: (mode) => {
6760
6769
  if (disablePcbGroups) return;
6761
6770
  setStoredString(STORAGE_KEYS.PCB_GROUP_VIEW_MODE, mode);
@@ -9763,6 +9772,7 @@ var showTraceSegmentsInsideHiddenCopperPours = (trace) => ({
9763
9772
  };
9764
9773
  })
9765
9774
  });
9775
+ var getTraceClipContextElements = (elements, showCopperPours) => showCopperPours ? elements : [];
9766
9776
  function drawPcbTraceElementsForLayer({
9767
9777
  canvas,
9768
9778
  elements,
@@ -9793,16 +9803,26 @@ function drawPcbTraceElementsForLayer({
9793
9803
  nonHighlightedElements.push(element);
9794
9804
  }
9795
9805
  }
9806
+ const clipContextElements = getTraceClipContextElements(
9807
+ elements,
9808
+ showCopperPours
9809
+ );
9796
9810
  if (nonHighlightedElements.length > 0) {
9797
9811
  const drawer = new CircuitToCanvasDrawer11(canvas);
9798
9812
  drawer.realToCanvasMat = realToCanvasMat;
9799
- drawer.drawElements(nonHighlightedElements, { layers });
9813
+ drawer.drawElements(nonHighlightedElements, {
9814
+ layers,
9815
+ clipContextElements
9816
+ });
9800
9817
  }
9801
9818
  if (highlightedElements.length > 0) {
9802
9819
  const highlightDrawer = new CircuitToCanvasDrawer11(canvas);
9803
9820
  highlightDrawer.configure({ colorOverrides: HOVER_COLOR_MAP2 });
9804
9821
  highlightDrawer.realToCanvasMat = realToCanvasMat;
9805
- highlightDrawer.drawElements(highlightedElements, { layers });
9822
+ highlightDrawer.drawElements(highlightedElements, {
9823
+ layers,
9824
+ clipContextElements
9825
+ });
9806
9826
  }
9807
9827
  }
9808
9828
 
@@ -10510,6 +10530,7 @@ var CanvasPrimitiveRenderer = ({
10510
10530
  const isShowingFabricationNotes = useGlobalStore(
10511
10531
  (s) => s.is_showing_fabrication_notes
10512
10532
  );
10533
+ const isShowingPcbNotes = useGlobalStore((s) => s.is_showing_pcb_notes);
10513
10534
  const isShowingCourtyards = useGlobalStore((s) => s.is_showing_courtyards);
10514
10535
  const isShowingSilkscreen = useGlobalStore((s) => s.is_showing_silkscreen);
10515
10536
  useEffect5(() => {
@@ -10678,23 +10699,25 @@ var CanvasPrimitiveRenderer = ({
10678
10699
  });
10679
10700
  }
10680
10701
  }
10681
- const bottomNotesCanvas = canvasRefs.current.bottom_notes;
10682
- if (bottomNotesCanvas) {
10683
- drawPcbNoteElementsForLayer({
10684
- canvas: bottomNotesCanvas,
10685
- elements,
10686
- layers: ["bottom_user_note"],
10687
- realToCanvasMat: transform
10688
- });
10689
- }
10690
- const topNotesCanvas = canvasRefs.current.top_notes;
10691
- if (topNotesCanvas) {
10692
- drawPcbNoteElementsForLayer({
10693
- canvas: topNotesCanvas,
10694
- elements,
10695
- layers: ["top_user_note"],
10696
- realToCanvasMat: transform
10697
- });
10702
+ if (isShowingPcbNotes) {
10703
+ const bottomNotesCanvas = canvasRefs.current.bottom_notes;
10704
+ if (bottomNotesCanvas) {
10705
+ drawPcbNoteElementsForLayer({
10706
+ canvas: bottomNotesCanvas,
10707
+ elements,
10708
+ layers: ["bottom_user_note"],
10709
+ realToCanvasMat: transform
10710
+ });
10711
+ }
10712
+ const topNotesCanvas = canvasRefs.current.top_notes;
10713
+ if (topNotesCanvas) {
10714
+ drawPcbNoteElementsForLayer({
10715
+ canvas: topNotesCanvas,
10716
+ elements,
10717
+ layers: ["top_user_note"],
10718
+ realToCanvasMat: transform
10719
+ });
10720
+ }
10698
10721
  }
10699
10722
  if (isShowingCourtyards) {
10700
10723
  const topCourtyardCanvas = canvasRefs.current.top_courtyard;
@@ -10765,6 +10788,7 @@ var CanvasPrimitiveRenderer = ({
10765
10788
  isShowingCopperPours,
10766
10789
  isShowingSolderMask,
10767
10790
  isShowingFabricationNotes,
10791
+ isShowingPcbNotes,
10768
10792
  isShowingCourtyards,
10769
10793
  isShowingSilkscreen
10770
10794
  ]);
@@ -14968,7 +14992,7 @@ import { css as css3 } from "@emotion/css";
14968
14992
  // package.json
14969
14993
  var package_default = {
14970
14994
  name: "@tscircuit/pcb-viewer",
14971
- version: "1.11.379",
14995
+ version: "1.11.381",
14972
14996
  main: "dist/index.js",
14973
14997
  type: "module",
14974
14998
  repository: "tscircuit/pcb-viewer",
@@ -15023,7 +15047,7 @@ var package_default = {
15023
15047
  "@tscircuit/math-utils": "^0.0.36",
15024
15048
  "@vitejs/plugin-react": "^5.0.2",
15025
15049
  "circuit-json": "^0.0.450",
15026
- "circuit-to-canvas": "^0.0.115",
15050
+ "circuit-to-canvas": "^0.0.118",
15027
15051
  color: "^4.2.3",
15028
15052
  "react-supergrid": "^1.0.10",
15029
15053
  "react-toastify": "^10.0.5",
@@ -15734,6 +15758,7 @@ var ToolbarOverlay = ({ children, elements }) => {
15734
15758
  setIsShowingSolderMask,
15735
15759
  setIsShowingSilkscreen,
15736
15760
  setIsShowingFabricationNotes,
15761
+ setIsShowingPcbNotes,
15737
15762
  setPcbGroupViewMode,
15738
15763
  setHoveredErrorId,
15739
15764
  setFocusedErrorId
@@ -15758,6 +15783,7 @@ var ToolbarOverlay = ({ children, elements }) => {
15758
15783
  is_showing_solder_mask: s.is_showing_solder_mask,
15759
15784
  is_showing_silkscreen: s.is_showing_silkscreen,
15760
15785
  is_showing_fabrication_notes: s.is_showing_fabrication_notes,
15786
+ is_showing_pcb_notes: s.is_showing_pcb_notes,
15761
15787
  pcb_group_view_mode: s.pcb_group_view_mode
15762
15788
  },
15763
15789
  setEditMode: s.setEditMode,
@@ -15772,6 +15798,7 @@ var ToolbarOverlay = ({ children, elements }) => {
15772
15798
  setIsShowingSolderMask: s.setIsShowingSolderMask,
15773
15799
  setIsShowingSilkscreen: s.setIsShowingSilkscreen,
15774
15800
  setIsShowingFabricationNotes: s.setIsShowingFabricationNotes,
15801
+ setIsShowingPcbNotes: s.setIsShowingPcbNotes,
15775
15802
  setPcbGroupViewMode: s.setPcbGroupViewMode,
15776
15803
  setHoveredErrorId: s.setHoveredErrorId,
15777
15804
  setFocusedErrorId: s.setFocusedErrorId
@@ -16201,6 +16228,16 @@ var ToolbarOverlay = ({ children, elements }) => {
16201
16228
  }
16202
16229
  }
16203
16230
  ),
16231
+ /* @__PURE__ */ jsx23(
16232
+ CheckboxMenuItem,
16233
+ {
16234
+ label: "Show PCB Notes",
16235
+ checked: viewSettings.is_showing_pcb_notes,
16236
+ onClick: () => {
16237
+ setIsShowingPcbNotes(!viewSettings.is_showing_pcb_notes);
16238
+ }
16239
+ }
16240
+ ),
16204
16241
  /* @__PURE__ */ jsx23(
16205
16242
  CheckboxMenuItem,
16206
16243
  {