circuit-to-svg 0.0.240 → 0.0.242

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
@@ -1,4 +1,4 @@
1
- import { AnyCircuitElement, PcbPort, SchematicComponent } from 'circuit-json';
1
+ import { AnyCircuitElement, PcbPort, SimulationExperiment, SimulationTransientVoltageGraph, SimulationVoltageProbe, SchematicComponent } from 'circuit-json';
2
2
  import { Matrix } from 'transformation-matrix';
3
3
  import { INode } from 'svgson';
4
4
 
@@ -302,37 +302,10 @@ declare function convertCircuitJsonToSchematicSvg(circuitJson: AnyCircuitElement
302
302
  */
303
303
  declare const circuitJsonToSchematicSvg: typeof convertCircuitJsonToSchematicSvg;
304
304
 
305
- type ExperimentType = string;
306
- interface SimulationExperimentElement {
307
- type: "simulation_experiment";
308
- simulation_experiment_id: string;
309
- name: string;
310
- experiment_type: ExperimentType;
311
- }
312
- interface SimulationTransientVoltageGraphElement {
313
- type: "simulation_transient_voltage_graph";
314
- simulation_transient_voltage_graph_id: string;
315
- simulation_experiment_id: string;
316
- timestamps_ms?: number[];
317
- voltage_levels: number[];
318
- schematic_voltage_probe_id?: string;
319
- subcircuit_connecivity_map_key?: string;
320
- time_per_step: number;
321
- start_time_ms: number;
322
- end_time_ms: number;
323
- name?: string;
324
- }
325
- interface SimulationVoltageProbeElement {
326
- type: "simulation_voltage_probe";
327
- simulation_voltage_probe_id: string;
328
- name: string;
329
- source_port_id?: string;
330
- source_net_id?: string;
331
- }
332
- type CircuitJsonWithSimulation = AnyCircuitElement | SimulationExperimentElement | SimulationTransientVoltageGraphElement | SimulationVoltageProbeElement;
333
- declare function isSimulationTransientVoltageGraph(value: CircuitJsonWithSimulation): value is SimulationTransientVoltageGraphElement;
334
- declare function isSimulationExperiment(value: CircuitJsonWithSimulation): value is SimulationExperimentElement;
335
- declare function isSimulationVoltageProbe(value: CircuitJsonWithSimulation): value is SimulationVoltageProbeElement;
305
+ type CircuitJsonWithSimulation = AnyCircuitElement | SimulationExperiment | SimulationTransientVoltageGraph | SimulationVoltageProbe;
306
+ declare function isSimulationTransientVoltageGraph(value: CircuitJsonWithSimulation): value is SimulationTransientVoltageGraph;
307
+ declare function isSimulationExperiment(value: CircuitJsonWithSimulation): value is SimulationExperiment;
308
+ declare function isSimulationVoltageProbe(value: CircuitJsonWithSimulation): value is SimulationVoltageProbe;
336
309
 
337
310
  interface ConvertSchematicSimulationParams {
338
311
  circuitJson: CircuitJsonWithSimulation[];
@@ -374,4 +347,4 @@ declare const createSvgObjectsForSchComponentPortHovers: ({ component, transform
374
347
  circuitJson: AnyCircuitElement[];
375
348
  }) => INode[];
376
349
 
377
- export { type AssemblySvgContext, CIRCUIT_TO_SVG_VERSION, type CircuitJsonWithSimulation, type ColorMap, type ColorOverrides, type ExperimentType, type PcbColorMap, type PcbColorOverrides, type PcbContext, type PinoutLabel, type PinoutSvgContext, type SimulationExperimentElement, type SimulationTransientVoltageGraphElement, type SimulationVoltageProbeElement, circuitJsonToPcbSvg, circuitJsonToSchematicSvg, convertCircuitJsonToAssemblySvg, convertCircuitJsonToPcbSvg, convertCircuitJsonToPinoutSvg, convertCircuitJsonToSchematicSimulationSvg, convertCircuitJsonToSchematicSvg, convertCircuitJsonToSimulationGraphSvg, convertCircuitJsonToSolderPasteMask, createSvgObjectsForSchComponentPortHovers, getSoftwareUsedString, isSimulationExperiment, isSimulationTransientVoltageGraph, isSimulationVoltageProbe };
350
+ export { type AssemblySvgContext, CIRCUIT_TO_SVG_VERSION, type CircuitJsonWithSimulation, type ColorMap, type ColorOverrides, type PcbColorMap, type PcbColorOverrides, type PcbContext, type PinoutLabel, type PinoutSvgContext, circuitJsonToPcbSvg, circuitJsonToSchematicSvg, convertCircuitJsonToAssemblySvg, convertCircuitJsonToPcbSvg, convertCircuitJsonToPinoutSvg, convertCircuitJsonToSchematicSimulationSvg, convertCircuitJsonToSchematicSvg, convertCircuitJsonToSimulationGraphSvg, convertCircuitJsonToSolderPasteMask, createSvgObjectsForSchComponentPortHovers, getSoftwareUsedString, isSimulationExperiment, isSimulationTransientVoltageGraph, isSimulationVoltageProbe };
package/dist/index.js CHANGED
@@ -797,6 +797,247 @@ function createSvgObjectsFromPcbFabricationNoteDimension(dimension, ctx) {
797
797
 
798
798
  // lib/pcb/svg-object-fns/create-svg-objects-from-pcb-note-dimension.ts
799
799
  import { applyToPoint as applyToPoint7 } from "transformation-matrix";
800
+
801
+ // lib/utils/colors.ts
802
+ var colorMap = {
803
+ "3d_viewer": {
804
+ background_bottom: "rgb(102, 102, 128)",
805
+ background_top: "rgb(204, 204, 230)",
806
+ board: "rgb(51, 43, 23)",
807
+ copper: "rgb(179, 156, 0)",
808
+ silkscreen_bottom: "rgb(230, 230, 230)",
809
+ silkscreen_top: "rgb(230, 230, 230)",
810
+ soldermask: "rgb(20, 51, 36)",
811
+ solderpaste: "rgb(128, 128, 128)"
812
+ },
813
+ board: {
814
+ anchor: "rgb(255, 38, 226)",
815
+ aux_items: "rgb(255, 255, 255)",
816
+ b_adhes: "rgb(0, 0, 132)",
817
+ b_crtyd: "rgb(255, 38, 226)",
818
+ b_fab: "rgb(88, 93, 132)",
819
+ b_mask: "rgba(2, 255, 238, 0.400)",
820
+ b_paste: "rgb(0, 194, 194)",
821
+ b_silks: "rgb(232, 178, 167)",
822
+ background: "rgb(0, 16, 35)",
823
+ cmts_user: "rgb(89, 148, 220)",
824
+ copper: {
825
+ b: "rgb(77, 127, 196)",
826
+ f: "rgb(200, 52, 52)",
827
+ in1: "rgb(127, 200, 127)",
828
+ in10: "rgb(237, 124, 51)",
829
+ in11: "rgb(91, 195, 235)",
830
+ in12: "rgb(247, 111, 142)",
831
+ in13: "rgb(167, 165, 198)",
832
+ in14: "rgb(40, 204, 217)",
833
+ in15: "rgb(232, 178, 167)",
834
+ in16: "rgb(242, 237, 161)",
835
+ in17: "rgb(237, 124, 51)",
836
+ in18: "rgb(91, 195, 235)",
837
+ in19: "rgb(247, 111, 142)",
838
+ in2: "rgb(206, 125, 44)",
839
+ in20: "rgb(167, 165, 198)",
840
+ in21: "rgb(40, 204, 217)",
841
+ in22: "rgb(232, 178, 167)",
842
+ in23: "rgb(242, 237, 161)",
843
+ in24: "rgb(237, 124, 51)",
844
+ in25: "rgb(91, 195, 235)",
845
+ in26: "rgb(247, 111, 142)",
846
+ in27: "rgb(167, 165, 198)",
847
+ in28: "rgb(40, 204, 217)",
848
+ in29: "rgb(232, 178, 167)",
849
+ in3: "rgb(79, 203, 203)",
850
+ in30: "rgb(242, 237, 161)",
851
+ in4: "rgb(219, 98, 139)",
852
+ in5: "rgb(167, 165, 198)",
853
+ in6: "rgb(40, 204, 217)",
854
+ in7: "rgb(232, 178, 167)",
855
+ in8: "rgb(242, 237, 161)",
856
+ in9: "rgb(141, 203, 129)"
857
+ },
858
+ cursor: "rgb(255, 255, 255)",
859
+ drc: "rgb(194, 194, 194)",
860
+ drc_error: "rgba(215, 91, 107, 0.800)",
861
+ drc_exclusion: "rgb(255, 255, 255)",
862
+ drc_warning: "rgba(255, 208, 66, 0.902)",
863
+ dwgs_user: "rgb(194, 194, 194)",
864
+ eco1_user: "rgb(180, 219, 210)",
865
+ eco2_user: "rgb(216, 200, 82)",
866
+ edge_cuts: "rgb(208, 210, 205)",
867
+ f_adhes: "rgb(132, 0, 132)",
868
+ f_crtyd: "rgb(255, 0, 245)",
869
+ f_fab: "rgb(175, 175, 175)",
870
+ f_mask: "rgba(216, 100, 255, 0.400)",
871
+ f_paste: "rgba(180, 160, 154, 0.902)",
872
+ f_silks: "rgb(242, 237, 161)",
873
+ footprint_text_back: "rgb(0, 0, 132)",
874
+ footprint_text_front: "rgb(194, 194, 194)",
875
+ footprint_text_invisible: "rgb(132, 132, 132)",
876
+ grid: "rgb(132, 132, 132)",
877
+ grid_axes: "rgb(194, 194, 194)",
878
+ margin: "rgb(255, 38, 226)",
879
+ microvia: "rgb(0, 132, 132)",
880
+ no_connect: "rgb(0, 0, 132)",
881
+ pad_back: "rgb(77, 127, 196)",
882
+ pad_front: "rgb(200, 52, 52)",
883
+ pad_plated_hole: "rgb(194, 194, 0)",
884
+ pad_through_hole: "rgb(227, 183, 46)",
885
+ plated_hole: "rgb(26, 196, 210)",
886
+ ratsnest: "rgba(245, 255, 213, 0.702)",
887
+ select_overlay: "rgb(4, 255, 67)",
888
+ through_via: "rgb(236, 236, 236)",
889
+ user_1: "rgb(194, 194, 194)",
890
+ user_2: "rgb(89, 148, 220)",
891
+ user_3: "rgb(180, 219, 210)",
892
+ user_4: "rgb(216, 200, 82)",
893
+ user_5: "rgb(194, 194, 194)",
894
+ user_6: "rgb(89, 148, 220)",
895
+ user_7: "rgb(180, 219, 210)",
896
+ user_8: "rgb(216, 200, 82)",
897
+ user_9: "rgb(232, 178, 167)",
898
+ via_blind_buried: "rgb(187, 151, 38)",
899
+ via_hole: "rgb(227, 183, 46)",
900
+ via_micro: "rgb(0, 132, 132)",
901
+ via_through: "rgb(236, 236, 236)",
902
+ worksheet: "rgb(200, 114, 171)"
903
+ },
904
+ gerbview: {
905
+ axes: "rgb(0, 0, 132)",
906
+ background: "rgb(0, 0, 0)",
907
+ dcodes: "rgb(255, 255, 255)",
908
+ grid: "rgb(132, 132, 132)",
909
+ layers: [
910
+ "rgb(132, 0, 0)",
911
+ "rgb(194, 194, 0)",
912
+ "rgb(194, 0, 194)",
913
+ "rgb(194, 0, 0)",
914
+ "rgb(0, 132, 132)",
915
+ "rgb(0, 132, 0)",
916
+ "rgb(0, 0, 132)",
917
+ "rgb(132, 132, 132)",
918
+ "rgb(132, 0, 132)",
919
+ "rgb(194, 194, 194)",
920
+ "rgb(132, 0, 132)",
921
+ "rgb(132, 0, 0)",
922
+ "rgb(132, 132, 0)",
923
+ "rgb(194, 194, 194)",
924
+ "rgb(0, 0, 132)",
925
+ "rgb(0, 132, 0)",
926
+ "rgb(132, 0, 0)",
927
+ "rgb(194, 194, 0)",
928
+ "rgb(194, 0, 194)",
929
+ "rgb(194, 0, 0)",
930
+ "rgb(0, 132, 132)",
931
+ "rgb(0, 132, 0)",
932
+ "rgb(0, 0, 132)",
933
+ "rgb(132, 132, 132)",
934
+ "rgb(132, 0, 132)",
935
+ "rgb(194, 194, 194)",
936
+ "rgb(132, 0, 132)",
937
+ "rgb(132, 0, 0)",
938
+ "rgb(132, 132, 0)",
939
+ "rgb(194, 194, 194)",
940
+ "rgb(0, 0, 132)",
941
+ "rgb(0, 132, 0)",
942
+ "rgb(132, 0, 0)",
943
+ "rgb(194, 194, 0)",
944
+ "rgb(194, 0, 194)",
945
+ "rgb(194, 0, 0)",
946
+ "rgb(0, 132, 132)",
947
+ "rgb(0, 132, 0)",
948
+ "rgb(0, 0, 132)",
949
+ "rgb(132, 132, 132)",
950
+ "rgb(132, 0, 132)",
951
+ "rgb(194, 194, 194)",
952
+ "rgb(132, 0, 132)",
953
+ "rgb(132, 0, 0)",
954
+ "rgb(132, 132, 0)",
955
+ "rgb(194, 194, 194)",
956
+ "rgb(0, 0, 132)",
957
+ "rgb(0, 132, 0)",
958
+ "rgb(132, 0, 0)",
959
+ "rgb(194, 194, 0)",
960
+ "rgb(194, 0, 194)",
961
+ "rgb(194, 0, 0)",
962
+ "rgb(0, 132, 132)",
963
+ "rgb(0, 132, 0)",
964
+ "rgb(0, 0, 132)",
965
+ "rgb(132, 132, 132)",
966
+ "rgb(132, 0, 132)",
967
+ "rgb(194, 194, 194)",
968
+ "rgb(132, 0, 132)",
969
+ "rgb(132, 0, 0)"
970
+ ],
971
+ negative_objects: "rgb(132, 132, 132)",
972
+ worksheet: "rgb(0, 0, 132)"
973
+ },
974
+ meta: {
975
+ filename: "kicad_2020",
976
+ name: "KiCad 2020",
977
+ version: 2
978
+ },
979
+ palette: [
980
+ "rgb(132, 0, 0)",
981
+ "rgb(194, 194, 0)",
982
+ "rgb(194, 0, 194)",
983
+ "rgb(194, 0, 0)",
984
+ "rgb(0, 132, 132)",
985
+ "rgb(0, 132, 0)",
986
+ "rgb(0, 0, 132)",
987
+ "rgb(132, 132, 132)",
988
+ "rgb(132, 0, 132)",
989
+ "rgb(194, 194, 194)",
990
+ "rgb(132, 0, 132)",
991
+ "rgb(132, 0, 0)",
992
+ "rgb(132, 132, 0)",
993
+ "rgb(194, 194, 194)",
994
+ "rgb(0, 0, 132)",
995
+ "rgb(0, 132, 0)"
996
+ ],
997
+ schematic: {
998
+ aux_items: "rgb(46, 46, 46)",
999
+ background: "rgb(245, 241, 237)",
1000
+ brightened: "rgb(255, 0, 255)",
1001
+ bus: "rgb(0, 0, 132)",
1002
+ bus_junction: "rgb(0, 0, 132)",
1003
+ component_body: "rgb(255, 255, 194)",
1004
+ component_outline: "rgb(132, 0, 0)",
1005
+ cursor: "rgb(15, 15, 15)",
1006
+ erc_error: "rgba(230, 9, 13, 0.800)",
1007
+ erc_warning: "rgba(209, 146, 0, 0.800)",
1008
+ fields: "rgb(132, 0, 132)",
1009
+ grid: "rgb(181, 181, 181)",
1010
+ grid_axes: "rgb(0, 0, 132)",
1011
+ hidden: "rgb(194, 194, 194)",
1012
+ junction: "rgb(0, 150, 0)",
1013
+ label_global: "rgb(132, 0, 0)",
1014
+ label_background: "rgba(255, 255, 255, 0.6)",
1015
+ label_hier: "rgb(114, 86, 0)",
1016
+ label_local: "rgb(15, 15, 15)",
1017
+ net_name: "rgb(132, 132, 132)",
1018
+ no_connect: "rgb(0, 0, 132)",
1019
+ note: "rgb(0, 0, 194)",
1020
+ override_item_colors: false,
1021
+ pin: "rgb(132, 0, 0)",
1022
+ pin_name: "rgb(0, 100, 100)",
1023
+ pin_number: "rgb(169, 0, 0)",
1024
+ reference: "rgb(0, 100, 100)",
1025
+ shadow: "rgba(102, 179, 255, 0.800)",
1026
+ sheet: "rgb(132, 0, 0)",
1027
+ sheet_background: "rgba(253, 255, 231, 0.000)",
1028
+ sheet_fields: "rgb(132, 0, 132)",
1029
+ sheet_filename: "rgb(114, 86, 0)",
1030
+ sheet_label: "rgb(0, 100, 100)",
1031
+ sheet_name: "rgb(0, 100, 100)",
1032
+ table: "rgb(102, 102, 102)",
1033
+ value: "rgb(0, 100, 100)",
1034
+ wire: "rgb(0, 150, 0)",
1035
+ wire_crossing: "rgb(30, 180, 30)",
1036
+ worksheet: "rgb(132, 0, 0)"
1037
+ }
1038
+ };
1039
+
1040
+ // lib/pcb/svg-object-fns/create-svg-objects-from-pcb-note-dimension.ts
800
1041
  function normalize2(vector) {
801
1042
  const length = Math.hypot(vector.x, vector.y) || 1;
802
1043
  return { x: vector.x / length, y: vector.y / length };
@@ -859,7 +1100,7 @@ function createSvgObjectsFromPcbNoteDimension(dimension, ctx) {
859
1100
  ]);
860
1101
  const [lineEndX, lineEndY] = applyToPoint7(transform, [toBase.x, toBase.y]);
861
1102
  const strokeWidth = arrow_size / 5 * Math.abs(transform.a);
862
- const lineColor = color || "rgba(255,255,255,0.5)";
1103
+ const lineColor = color || colorMap.board.user_2;
863
1104
  const midPoint = {
864
1105
  x: (from.x + to.x) / 2,
865
1106
  y: (from.y + to.y) / 2
@@ -957,7 +1198,7 @@ function createSvgObjectsFromPcbNoteDimension(dimension, ctx) {
957
1198
 
958
1199
  // lib/pcb/svg-object-fns/create-svg-objects-from-pcb-note-text.ts
959
1200
  import { applyToPoint as applyToPoint8 } from "transformation-matrix";
960
- var DEFAULT_OVERLAY_COLOR = "rgba(255,255,255,0.5)";
1201
+ var DEFAULT_OVERLAY_COLOR = colorMap.board.user_2;
961
1202
  function createSvgObjectsFromPcbNoteText(note, ctx) {
962
1203
  const { transform } = ctx;
963
1204
  const {
@@ -1034,8 +1275,8 @@ function createSvgObjectsFromPcbNoteText(note, ctx) {
1034
1275
 
1035
1276
  // lib/pcb/svg-object-fns/create-svg-objects-from-pcb-note-rect.ts
1036
1277
  import { applyToPoint as applyToPoint9 } from "transformation-matrix";
1037
- var DEFAULT_OVERLAY_COLOR2 = "rgba(255,255,255,0.5)";
1038
- var DEFAULT_FILL_COLOR = "rgba(255,255,255,0.2)";
1278
+ var DEFAULT_OVERLAY_COLOR2 = colorMap.board.user_2;
1279
+ var DEFAULT_FILL_COLOR = colorMap.board.user_2;
1039
1280
  function createSvgObjectsFromPcbNoteRect(noteRect, ctx) {
1040
1281
  const { transform } = ctx;
1041
1282
  const {
@@ -1108,7 +1349,7 @@ function createSvgObjectsFromPcbNoteRect(noteRect, ctx) {
1108
1349
 
1109
1350
  // lib/pcb/svg-object-fns/create-svg-objects-from-pcb-note-path.ts
1110
1351
  import { applyToPoint as applyToPoint10 } from "transformation-matrix";
1111
- var DEFAULT_OVERLAY_COLOR3 = "rgba(255,255,255,0.5)";
1352
+ var DEFAULT_OVERLAY_COLOR3 = colorMap.board.user_2;
1112
1353
  function createSvgObjectsFromPcbNotePath(notePath, ctx) {
1113
1354
  const { transform } = ctx;
1114
1355
  if (!Array.isArray(notePath.route) || notePath.route.length === 0) {
@@ -1147,7 +1388,7 @@ function createSvgObjectsFromPcbNotePath(notePath, ctx) {
1147
1388
 
1148
1389
  // lib/pcb/svg-object-fns/create-svg-objects-from-pcb-note-line.ts
1149
1390
  import { applyToPoint as applyToPoint11 } from "transformation-matrix";
1150
- var DEFAULT_OVERLAY_COLOR4 = "rgba(255,255,255,0.5)";
1391
+ var DEFAULT_OVERLAY_COLOR4 = colorMap.board.user_2;
1151
1392
  function createSvgObjectsFromPcbNoteLine(noteLine, ctx) {
1152
1393
  const { transform } = ctx;
1153
1394
  const { x1, y1, x2, y2, stroke_width, color, is_dashed } = noteLine;
@@ -2933,7 +3174,7 @@ function getSoftwareUsedString(circuitJson) {
2933
3174
  var package_default = {
2934
3175
  name: "circuit-to-svg",
2935
3176
  type: "module",
2936
- version: "0.0.239",
3177
+ version: "0.0.241",
2937
3178
  description: "Convert Circuit JSON to SVG",
2938
3179
  main: "dist/index.js",
2939
3180
  files: [
@@ -2957,7 +3198,7 @@ var package_default = {
2957
3198
  "bun-match-svg": "^0.0.12",
2958
3199
  esbuild: "^0.20.2",
2959
3200
  "performance-now": "^2.1.0",
2960
- "circuit-json": "^0.0.278",
3201
+ "circuit-json": "^0.0.280",
2961
3202
  react: "19.1.0",
2962
3203
  "react-cosmos": "7.0.0",
2963
3204
  "react-cosmos-plugin-vite": "7.0.0",
@@ -5643,245 +5884,6 @@ function createSvgObjects3(elm, ctx, soup) {
5643
5884
  }
5644
5885
  }
5645
5886
 
5646
- // lib/utils/colors.ts
5647
- var colorMap = {
5648
- "3d_viewer": {
5649
- background_bottom: "rgb(102, 102, 128)",
5650
- background_top: "rgb(204, 204, 230)",
5651
- board: "rgb(51, 43, 23)",
5652
- copper: "rgb(179, 156, 0)",
5653
- silkscreen_bottom: "rgb(230, 230, 230)",
5654
- silkscreen_top: "rgb(230, 230, 230)",
5655
- soldermask: "rgb(20, 51, 36)",
5656
- solderpaste: "rgb(128, 128, 128)"
5657
- },
5658
- board: {
5659
- anchor: "rgb(255, 38, 226)",
5660
- aux_items: "rgb(255, 255, 255)",
5661
- b_adhes: "rgb(0, 0, 132)",
5662
- b_crtyd: "rgb(255, 38, 226)",
5663
- b_fab: "rgb(88, 93, 132)",
5664
- b_mask: "rgba(2, 255, 238, 0.400)",
5665
- b_paste: "rgb(0, 194, 194)",
5666
- b_silks: "rgb(232, 178, 167)",
5667
- background: "rgb(0, 16, 35)",
5668
- cmts_user: "rgb(89, 148, 220)",
5669
- copper: {
5670
- b: "rgb(77, 127, 196)",
5671
- f: "rgb(200, 52, 52)",
5672
- in1: "rgb(127, 200, 127)",
5673
- in10: "rgb(237, 124, 51)",
5674
- in11: "rgb(91, 195, 235)",
5675
- in12: "rgb(247, 111, 142)",
5676
- in13: "rgb(167, 165, 198)",
5677
- in14: "rgb(40, 204, 217)",
5678
- in15: "rgb(232, 178, 167)",
5679
- in16: "rgb(242, 237, 161)",
5680
- in17: "rgb(237, 124, 51)",
5681
- in18: "rgb(91, 195, 235)",
5682
- in19: "rgb(247, 111, 142)",
5683
- in2: "rgb(206, 125, 44)",
5684
- in20: "rgb(167, 165, 198)",
5685
- in21: "rgb(40, 204, 217)",
5686
- in22: "rgb(232, 178, 167)",
5687
- in23: "rgb(242, 237, 161)",
5688
- in24: "rgb(237, 124, 51)",
5689
- in25: "rgb(91, 195, 235)",
5690
- in26: "rgb(247, 111, 142)",
5691
- in27: "rgb(167, 165, 198)",
5692
- in28: "rgb(40, 204, 217)",
5693
- in29: "rgb(232, 178, 167)",
5694
- in3: "rgb(79, 203, 203)",
5695
- in30: "rgb(242, 237, 161)",
5696
- in4: "rgb(219, 98, 139)",
5697
- in5: "rgb(167, 165, 198)",
5698
- in6: "rgb(40, 204, 217)",
5699
- in7: "rgb(232, 178, 167)",
5700
- in8: "rgb(242, 237, 161)",
5701
- in9: "rgb(141, 203, 129)"
5702
- },
5703
- cursor: "rgb(255, 255, 255)",
5704
- drc: "rgb(194, 194, 194)",
5705
- drc_error: "rgba(215, 91, 107, 0.800)",
5706
- drc_exclusion: "rgb(255, 255, 255)",
5707
- drc_warning: "rgba(255, 208, 66, 0.902)",
5708
- dwgs_user: "rgb(194, 194, 194)",
5709
- eco1_user: "rgb(180, 219, 210)",
5710
- eco2_user: "rgb(216, 200, 82)",
5711
- edge_cuts: "rgb(208, 210, 205)",
5712
- f_adhes: "rgb(132, 0, 132)",
5713
- f_crtyd: "rgb(255, 0, 245)",
5714
- f_fab: "rgb(175, 175, 175)",
5715
- f_mask: "rgba(216, 100, 255, 0.400)",
5716
- f_paste: "rgba(180, 160, 154, 0.902)",
5717
- f_silks: "rgb(242, 237, 161)",
5718
- footprint_text_back: "rgb(0, 0, 132)",
5719
- footprint_text_front: "rgb(194, 194, 194)",
5720
- footprint_text_invisible: "rgb(132, 132, 132)",
5721
- grid: "rgb(132, 132, 132)",
5722
- grid_axes: "rgb(194, 194, 194)",
5723
- margin: "rgb(255, 38, 226)",
5724
- microvia: "rgb(0, 132, 132)",
5725
- no_connect: "rgb(0, 0, 132)",
5726
- pad_back: "rgb(77, 127, 196)",
5727
- pad_front: "rgb(200, 52, 52)",
5728
- pad_plated_hole: "rgb(194, 194, 0)",
5729
- pad_through_hole: "rgb(227, 183, 46)",
5730
- plated_hole: "rgb(26, 196, 210)",
5731
- ratsnest: "rgba(245, 255, 213, 0.702)",
5732
- select_overlay: "rgb(4, 255, 67)",
5733
- through_via: "rgb(236, 236, 236)",
5734
- user_1: "rgb(194, 194, 194)",
5735
- user_2: "rgb(89, 148, 220)",
5736
- user_3: "rgb(180, 219, 210)",
5737
- user_4: "rgb(216, 200, 82)",
5738
- user_5: "rgb(194, 194, 194)",
5739
- user_6: "rgb(89, 148, 220)",
5740
- user_7: "rgb(180, 219, 210)",
5741
- user_8: "rgb(216, 200, 82)",
5742
- user_9: "rgb(232, 178, 167)",
5743
- via_blind_buried: "rgb(187, 151, 38)",
5744
- via_hole: "rgb(227, 183, 46)",
5745
- via_micro: "rgb(0, 132, 132)",
5746
- via_through: "rgb(236, 236, 236)",
5747
- worksheet: "rgb(200, 114, 171)"
5748
- },
5749
- gerbview: {
5750
- axes: "rgb(0, 0, 132)",
5751
- background: "rgb(0, 0, 0)",
5752
- dcodes: "rgb(255, 255, 255)",
5753
- grid: "rgb(132, 132, 132)",
5754
- layers: [
5755
- "rgb(132, 0, 0)",
5756
- "rgb(194, 194, 0)",
5757
- "rgb(194, 0, 194)",
5758
- "rgb(194, 0, 0)",
5759
- "rgb(0, 132, 132)",
5760
- "rgb(0, 132, 0)",
5761
- "rgb(0, 0, 132)",
5762
- "rgb(132, 132, 132)",
5763
- "rgb(132, 0, 132)",
5764
- "rgb(194, 194, 194)",
5765
- "rgb(132, 0, 132)",
5766
- "rgb(132, 0, 0)",
5767
- "rgb(132, 132, 0)",
5768
- "rgb(194, 194, 194)",
5769
- "rgb(0, 0, 132)",
5770
- "rgb(0, 132, 0)",
5771
- "rgb(132, 0, 0)",
5772
- "rgb(194, 194, 0)",
5773
- "rgb(194, 0, 194)",
5774
- "rgb(194, 0, 0)",
5775
- "rgb(0, 132, 132)",
5776
- "rgb(0, 132, 0)",
5777
- "rgb(0, 0, 132)",
5778
- "rgb(132, 132, 132)",
5779
- "rgb(132, 0, 132)",
5780
- "rgb(194, 194, 194)",
5781
- "rgb(132, 0, 132)",
5782
- "rgb(132, 0, 0)",
5783
- "rgb(132, 132, 0)",
5784
- "rgb(194, 194, 194)",
5785
- "rgb(0, 0, 132)",
5786
- "rgb(0, 132, 0)",
5787
- "rgb(132, 0, 0)",
5788
- "rgb(194, 194, 0)",
5789
- "rgb(194, 0, 194)",
5790
- "rgb(194, 0, 0)",
5791
- "rgb(0, 132, 132)",
5792
- "rgb(0, 132, 0)",
5793
- "rgb(0, 0, 132)",
5794
- "rgb(132, 132, 132)",
5795
- "rgb(132, 0, 132)",
5796
- "rgb(194, 194, 194)",
5797
- "rgb(132, 0, 132)",
5798
- "rgb(132, 0, 0)",
5799
- "rgb(132, 132, 0)",
5800
- "rgb(194, 194, 194)",
5801
- "rgb(0, 0, 132)",
5802
- "rgb(0, 132, 0)",
5803
- "rgb(132, 0, 0)",
5804
- "rgb(194, 194, 0)",
5805
- "rgb(194, 0, 194)",
5806
- "rgb(194, 0, 0)",
5807
- "rgb(0, 132, 132)",
5808
- "rgb(0, 132, 0)",
5809
- "rgb(0, 0, 132)",
5810
- "rgb(132, 132, 132)",
5811
- "rgb(132, 0, 132)",
5812
- "rgb(194, 194, 194)",
5813
- "rgb(132, 0, 132)",
5814
- "rgb(132, 0, 0)"
5815
- ],
5816
- negative_objects: "rgb(132, 132, 132)",
5817
- worksheet: "rgb(0, 0, 132)"
5818
- },
5819
- meta: {
5820
- filename: "kicad_2020",
5821
- name: "KiCad 2020",
5822
- version: 2
5823
- },
5824
- palette: [
5825
- "rgb(132, 0, 0)",
5826
- "rgb(194, 194, 0)",
5827
- "rgb(194, 0, 194)",
5828
- "rgb(194, 0, 0)",
5829
- "rgb(0, 132, 132)",
5830
- "rgb(0, 132, 0)",
5831
- "rgb(0, 0, 132)",
5832
- "rgb(132, 132, 132)",
5833
- "rgb(132, 0, 132)",
5834
- "rgb(194, 194, 194)",
5835
- "rgb(132, 0, 132)",
5836
- "rgb(132, 0, 0)",
5837
- "rgb(132, 132, 0)",
5838
- "rgb(194, 194, 194)",
5839
- "rgb(0, 0, 132)",
5840
- "rgb(0, 132, 0)"
5841
- ],
5842
- schematic: {
5843
- aux_items: "rgb(46, 46, 46)",
5844
- background: "rgb(245, 241, 237)",
5845
- brightened: "rgb(255, 0, 255)",
5846
- bus: "rgb(0, 0, 132)",
5847
- bus_junction: "rgb(0, 0, 132)",
5848
- component_body: "rgb(255, 255, 194)",
5849
- component_outline: "rgb(132, 0, 0)",
5850
- cursor: "rgb(15, 15, 15)",
5851
- erc_error: "rgba(230, 9, 13, 0.800)",
5852
- erc_warning: "rgba(209, 146, 0, 0.800)",
5853
- fields: "rgb(132, 0, 132)",
5854
- grid: "rgb(181, 181, 181)",
5855
- grid_axes: "rgb(0, 0, 132)",
5856
- hidden: "rgb(194, 194, 194)",
5857
- junction: "rgb(0, 150, 0)",
5858
- label_global: "rgb(132, 0, 0)",
5859
- label_background: "rgba(255, 255, 255, 0.6)",
5860
- label_hier: "rgb(114, 86, 0)",
5861
- label_local: "rgb(15, 15, 15)",
5862
- net_name: "rgb(132, 132, 132)",
5863
- no_connect: "rgb(0, 0, 132)",
5864
- note: "rgb(0, 0, 194)",
5865
- override_item_colors: false,
5866
- pin: "rgb(132, 0, 0)",
5867
- pin_name: "rgb(0, 100, 100)",
5868
- pin_number: "rgb(169, 0, 0)",
5869
- reference: "rgb(0, 100, 100)",
5870
- shadow: "rgba(102, 179, 255, 0.800)",
5871
- sheet: "rgb(132, 0, 0)",
5872
- sheet_background: "rgba(253, 255, 231, 0.000)",
5873
- sheet_fields: "rgb(132, 0, 132)",
5874
- sheet_filename: "rgb(114, 86, 0)",
5875
- sheet_label: "rgb(0, 100, 100)",
5876
- sheet_name: "rgb(0, 100, 100)",
5877
- table: "rgb(102, 102, 102)",
5878
- value: "rgb(0, 100, 100)",
5879
- wire: "rgb(0, 150, 0)",
5880
- wire_crossing: "rgb(30, 180, 30)",
5881
- worksheet: "rgb(132, 0, 0)"
5882
- }
5883
- };
5884
-
5885
5887
  // lib/sch/convert-circuit-json-to-schematic-svg.ts
5886
5888
  import { stringify as stringify4 } from "svgson";
5887
5889
  import {
@@ -9567,14 +9569,16 @@ function prepareSimulationGraphs(graphs, circuitJson) {
9567
9569
  const voltageProbes = circuitJson.filter(isSimulationVoltageProbe);
9568
9570
  const probeIdToName = /* @__PURE__ */ new Map();
9569
9571
  for (const probe of voltageProbes) {
9570
- probeIdToName.set(probe.simulation_voltage_probe_id, probe.name);
9572
+ if (probe.name && probe.simulation_voltage_probe_id) {
9573
+ probeIdToName.set(probe.simulation_voltage_probe_id, probe.name);
9574
+ }
9571
9575
  }
9572
9576
  return graphs.map((graph, index) => {
9573
9577
  const points = createGraphPoints(graph);
9574
9578
  const paletteColor = palette.length > 0 ? palette[index % palette.length] : FALLBACK_LINE_COLOR;
9575
9579
  const color = paletteColor ?? FALLBACK_LINE_COLOR;
9576
9580
  const probeName = graph.schematic_voltage_probe_id ? probeIdToName.get(graph.schematic_voltage_probe_id) : void 0;
9577
- const label = graph.name || probeName || (graph.schematic_voltage_probe_id ? `Probe ${graph.schematic_voltage_probe_id}` : graph.simulation_transient_voltage_graph_id);
9581
+ const label = probeName ? `V(${probeName})` : graph.name || (graph.schematic_voltage_probe_id ? `Probe ${graph.schematic_voltage_probe_id}` : graph.simulation_transient_voltage_graph_id);
9578
9582
  return { graph, points, color, label };
9579
9583
  }).filter((entry) => entry.points.length > 0);
9580
9584
  }
@@ -9919,8 +9923,8 @@ function createDataGroup(graphs, clipPathId, scaleX, scaleY) {
9919
9923
  if (entry.graph.schematic_voltage_probe_id) {
9920
9924
  baseAttributes["data-schematic-voltage-probe-id"] = entry.graph.schematic_voltage_probe_id;
9921
9925
  }
9922
- if (entry.graph.subcircuit_connecivity_map_key) {
9923
- baseAttributes["data-subcircuit-connectivity-map-key"] = entry.graph.subcircuit_connecivity_map_key;
9926
+ if (entry.graph.subcircuit_connectivity_map_key) {
9927
+ baseAttributes["data-subcircuit-connectivity-map-key"] = entry.graph.subcircuit_connectivity_map_key;
9924
9928
  }
9925
9929
  const pointElements2 = entry.points.map((point) => {
9926
9930
  const cx = formatNumber(scaleX(point.timeMs));