@industry-theme/file-city-panel 0.2.11 → 0.2.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"CodeCityPanel.d.ts","sourceRoot":"","sources":["../../src/panels/CodeCityPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAsBjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAYpD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAotCD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAEvD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EA8BxC,CAAC"}
1
+ {"version":3,"file":"CodeCityPanel.d.ts","sourceRoot":"","sources":["../../src/panels/CodeCityPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAqBjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAYpD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAspCD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAEvD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EA8BxC,CAAC"}
@@ -106,7 +106,7 @@ const createLucideIcon = (iconName, iconNode) => {
106
106
  * This source code is licensed under the ISC license.
107
107
  * See the LICENSE file in the root directory of this source tree.
108
108
  */
109
- const __iconNode$6 = [
109
+ const __iconNode$5 = [
110
110
  [
111
111
  "path",
112
112
  {
@@ -115,14 +115,14 @@ const __iconNode$6 = [
115
115
  }
116
116
  ]
117
117
  ];
118
- const Activity = createLucideIcon("activity", __iconNode$6);
118
+ const Activity = createLucideIcon("activity", __iconNode$5);
119
119
  /**
120
120
  * @license lucide-react v0.552.0 - ISC
121
121
  *
122
122
  * This source code is licensed under the ISC license.
123
123
  * See the LICENSE file in the root directory of this source tree.
124
124
  */
125
- const __iconNode$5 = [
125
+ const __iconNode$4 = [
126
126
  ["path", { d: "M10 12h4", key: "a56b0p" }],
127
127
  ["path", { d: "M10 8h4", key: "1sr2af" }],
128
128
  ["path", { d: "M14 21v-3a2 2 0 0 0-4 0v3", key: "1rgiei" }],
@@ -135,28 +135,20 @@ const __iconNode$5 = [
135
135
  ],
136
136
  ["path", { d: "M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16", key: "16ra0t" }]
137
137
  ];
138
- const Building2 = createLucideIcon("building-2", __iconNode$5);
138
+ const Building2 = createLucideIcon("building-2", __iconNode$4);
139
139
  /**
140
140
  * @license lucide-react v0.552.0 - ISC
141
141
  *
142
142
  * This source code is licensed under the ISC license.
143
143
  * See the LICENSE file in the root directory of this source tree.
144
144
  */
145
- const __iconNode$4 = [
145
+ const __iconNode$3 = [
146
146
  ["path", { d: "M3 3v16a2 2 0 0 0 2 2h16", key: "c24i48" }],
147
147
  ["path", { d: "M18 17V9", key: "2bz60n" }],
148
148
  ["path", { d: "M13 17V5", key: "1frdt8" }],
149
149
  ["path", { d: "M8 17v-3", key: "17ska0" }]
150
150
  ];
151
- const ChartColumn = createLucideIcon("chart-column", __iconNode$4);
152
- /**
153
- * @license lucide-react v0.552.0 - ISC
154
- *
155
- * This source code is licensed under the ISC license.
156
- * See the LICENSE file in the root directory of this source tree.
157
- */
158
- const __iconNode$3 = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
159
- const ChevronDown = createLucideIcon("chevron-down", __iconNode$3);
151
+ const ChartColumn = createLucideIcon("chart-column", __iconNode$3);
160
152
  /**
161
153
  * @license lucide-react v0.552.0 - ISC
162
154
  *
@@ -14582,9 +14574,8 @@ const CodeCityPanelContent = ({
14582
14574
  const [loading, setLoading] = useState(false);
14583
14575
  const [containerSize, setContainerSize] = useState(null);
14584
14576
  const contentContainerRef = useRef(null);
14585
- const [colorMode, setColorMode] = useState("fileTypes");
14586
- const [showColorModeDropdown, setShowColorModeDropdown] = useState(false);
14587
- const colorModeDropdownRef = useRef(null);
14577
+ const sliceSelectedColorMode = (_b = (_a = context.getSlice("fileCityColorModes")) == null ? void 0 : _a.data) == null ? void 0 : _b.selectedColorMode;
14578
+ const colorMode = sliceSelectedColorMode || "fileTypes";
14588
14579
  const [hoveredPackagePath, setHoveredPackagePath] = useState(null);
14589
14580
  const [selectedPackagePath, setSelectedPackagePath] = useState(null);
14590
14581
  useEffect(() => {
@@ -14625,12 +14616,12 @@ const CodeCityPanelContent = ({
14625
14616
  const gitSlice = context.getSlice("git");
14626
14617
  const agentHighlightLayersSlice = context.getSlice("agentHighlightLayers");
14627
14618
  const colorModesSlice = context.getSlice("fileCityColorModes");
14628
- const qualityData = (_a = colorModesSlice == null ? void 0 : colorModesSlice.data) == null ? void 0 : _a.qualityData;
14619
+ const qualityData = (_c = colorModesSlice == null ? void 0 : colorModesSlice.data) == null ? void 0 : _c.qualityData;
14629
14620
  const fileColorLayersRegistered = useRef(false);
14630
14621
  const gitLayersRegistered = useRef(false);
14631
14622
  const agentLayersRegistered = useRef(false);
14632
14623
  const lastHasGitOrAgentLayers = useRef(null);
14633
- const currentRepoPath = (_b = context.currentScope.repository) == null ? void 0 : _b.path;
14624
+ const currentRepoPath = (_d = context.currentScope.repository) == null ? void 0 : _d.path;
14634
14625
  const lastRepoPath = useRef(currentRepoPath);
14635
14626
  useEffect(() => {
14636
14627
  if (lastRepoPath.current !== currentRepoPath) {
@@ -14640,20 +14631,8 @@ const CodeCityPanelContent = ({
14640
14631
  agentLayersRegistered.current = false;
14641
14632
  lastHasGitOrAgentLayers.current = null;
14642
14633
  lastRepoPath.current = currentRepoPath;
14643
- setColorMode("fileTypes");
14644
14634
  }
14645
14635
  }, [currentRepoPath]);
14646
- useEffect(() => {
14647
- const handleClickOutside = (event) => {
14648
- if (colorModeDropdownRef.current && !colorModeDropdownRef.current.contains(event.target)) {
14649
- setShowColorModeDropdown(false);
14650
- }
14651
- };
14652
- if (showColorModeDropdown) {
14653
- document.addEventListener("mousedown", handleClickOutside);
14654
- return () => document.removeEventListener("mousedown", handleClickOutside);
14655
- }
14656
- }, [showColorModeDropdown]);
14657
14636
  useEffect(() => {
14658
14637
  if (!events) return;
14659
14638
  const cleanupHover = events.on("package:hover", (event) => {
@@ -14669,30 +14648,6 @@ const CodeCityPanelContent = ({
14669
14648
  cleanupSelect == null ? void 0 : cleanupSelect();
14670
14649
  };
14671
14650
  }, [events]);
14672
- const sliceSelectedColorMode = (_c = colorModesSlice == null ? void 0 : colorModesSlice.data) == null ? void 0 : _c.selectedColorMode;
14673
- useEffect(() => {
14674
- if (sliceSelectedColorMode) {
14675
- setColorMode(sliceSelectedColorMode);
14676
- }
14677
- }, [sliceSelectedColorMode]);
14678
- const availableColorModes = useMemo(() => {
14679
- var _a2;
14680
- const hasGitData = (gitSlice == null ? void 0 : gitSlice.data) && (gitSlice.data.staged.length > 0 || gitSlice.data.unstaged.length > 0 || gitSlice.data.untracked.length > 0 || gitSlice.data.deleted.length > 0);
14681
- const enabledModes = (_a2 = colorModesSlice == null ? void 0 : colorModesSlice.data) == null ? void 0 : _a2.enabledModes;
14682
- return COLOR_MODES.filter((mode) => {
14683
- if (mode.id === "fileTypes") return true;
14684
- if (mode.id === "git") return hasGitData;
14685
- if (sliceSelectedColorMode === mode.id) return true;
14686
- return (enabledModes == null ? void 0 : enabledModes.includes(mode.id)) ?? false;
14687
- });
14688
- }, [gitSlice == null ? void 0 : gitSlice.data, (_d = colorModesSlice == null ? void 0 : colorModesSlice.data) == null ? void 0 : _d.enabledModes, qualityData, sliceSelectedColorMode]);
14689
- useEffect(() => {
14690
- const currentModeAvailable = availableColorModes.some((m) => m.id === colorMode);
14691
- const selectedModeAvailable = sliceSelectedColorMode && availableColorModes.some((m) => m.id === sliceSelectedColorMode);
14692
- if (!currentModeAvailable && !selectedModeAvailable) {
14693
- setColorMode("fileTypes");
14694
- }
14695
- }, [availableColorModes, colorMode, sliceSelectedColorMode]);
14696
14651
  const currentColorModeConfig = useMemo(() => {
14697
14652
  return COLOR_MODES.find((m) => m.id === colorMode) || COLOR_MODES[0];
14698
14653
  }, [colorMode]);
@@ -14907,30 +14862,39 @@ const CodeCityPanelContent = ({
14907
14862
  groupedByExt.forEach((group, ext) => {
14908
14863
  var _a2;
14909
14864
  if (group.primary) {
14865
+ const highlightLayer = highlightLayers.find(
14866
+ (l) => l.id === `ext-${ext}-primary` || l.id === `ext-${ext}-primary-package-focus`
14867
+ );
14868
+ const isEnabled = (highlightLayer == null ? void 0 : highlightLayer.enabled) ?? group.primary.enabled;
14910
14869
  fileTypes.push({
14911
14870
  id: ext,
14912
14871
  name: group.primary.name,
14913
14872
  fillColor: group.primary.color,
14914
14873
  borderColor: (_a2 = group.secondary) == null ? void 0 : _a2.color,
14915
14874
  count: group.primary.items.length,
14916
- enabled: group.primary.enabled
14875
+ enabled: isEnabled
14917
14876
  });
14918
14877
  }
14919
14878
  });
14920
14879
  return fileTypes.sort((a, b) => b.count - a.count);
14921
- }, [baseLayers]);
14880
+ }, [baseLayers, highlightLayers]);
14922
14881
  const legendGitStatus = useMemo(() => {
14923
14882
  const gitLayers = baseLayers.filter(
14924
14883
  (layer) => layer.id.startsWith("git-highlight-")
14925
14884
  );
14926
- return gitLayers.map((layer) => ({
14927
- id: layer.id,
14928
- name: layer.name,
14929
- color: layer.color,
14930
- count: layer.items.length,
14931
- enabled: layer.enabled
14932
- }));
14933
- }, [baseLayers]);
14885
+ return gitLayers.map((layer) => {
14886
+ const highlightLayer = highlightLayers.find(
14887
+ (l) => l.id === layer.id || l.id === `${layer.id}-package-focus`
14888
+ );
14889
+ return {
14890
+ id: layer.id,
14891
+ name: layer.name,
14892
+ color: layer.color,
14893
+ count: layer.items.length,
14894
+ enabled: (highlightLayer == null ? void 0 : highlightLayer.enabled) ?? layer.enabled
14895
+ };
14896
+ });
14897
+ }, [baseLayers, highlightLayers]);
14934
14898
  const legendAgentLayers = useMemo(() => {
14935
14899
  const agentLayers = highlightLayers.filter(
14936
14900
  (layer) => layer.id.startsWith("event-highlight")
@@ -14961,33 +14925,54 @@ const CodeCityPanelContent = ({
14961
14925
  const relevantLayers = baseLayers.filter(
14962
14926
  (layer) => layer.id.startsWith(prefix)
14963
14927
  );
14964
- return relevantLayers.map((layer) => ({
14965
- id: layer.id,
14966
- name: layer.name,
14967
- color: layer.color,
14968
- count: layer.items.length,
14969
- enabled: layer.enabled
14970
- }));
14971
- }, [baseLayers, colorMode]);
14928
+ return relevantLayers.map((layer) => {
14929
+ const highlightLayer = highlightLayers.find(
14930
+ (l) => l.id === layer.id || l.id === `${layer.id}-package-focus`
14931
+ );
14932
+ return {
14933
+ id: layer.id,
14934
+ name: layer.name,
14935
+ color: layer.color,
14936
+ count: layer.items.length,
14937
+ enabled: (highlightLayer == null ? void 0 : highlightLayer.enabled) ?? layer.enabled
14938
+ };
14939
+ });
14940
+ }, [baseLayers, highlightLayers, colorMode]);
14972
14941
  const toggleGitStatus = useCallback((id2) => {
14973
- setHighlightLayers(
14974
- (prev) => prev.map((layer) => {
14975
- if (layer.id === id2) {
14976
- return { ...layer, enabled: !layer.enabled };
14942
+ setHighlightLayers((prev) => {
14943
+ const gitLayers = prev.filter((l) => l.id.startsWith("git-highlight-"));
14944
+ const clickedLayer = gitLayers.find((l) => l.id === id2);
14945
+ const otherGitLayers = gitLayers.filter((l) => l.id !== id2);
14946
+ const isAlreadyIsolated = (clickedLayer == null ? void 0 : clickedLayer.enabled) && otherGitLayers.every((l) => !l.enabled);
14947
+ return prev.map((layer) => {
14948
+ if (!layer.id.startsWith("git-highlight-")) {
14949
+ return layer;
14977
14950
  }
14978
- return layer;
14979
- })
14980
- );
14951
+ if (isAlreadyIsolated) {
14952
+ return { ...layer, enabled: true };
14953
+ } else {
14954
+ return { ...layer, enabled: layer.id === id2 };
14955
+ }
14956
+ });
14957
+ });
14981
14958
  }, []);
14982
14959
  const toggleAgentLayer = useCallback((id2) => {
14983
- setHighlightLayers(
14984
- (prev) => prev.map((layer) => {
14985
- if (layer.id === id2) {
14986
- return { ...layer, enabled: !layer.enabled };
14960
+ setHighlightLayers((prev) => {
14961
+ const agentLayers = prev.filter((l) => l.id.startsWith("event-highlight"));
14962
+ const clickedLayer = agentLayers.find((l) => l.id === id2);
14963
+ const otherAgentLayers = agentLayers.filter((l) => l.id !== id2);
14964
+ const isAlreadyIsolated = (clickedLayer == null ? void 0 : clickedLayer.enabled) && otherAgentLayers.every((l) => !l.enabled);
14965
+ return prev.map((layer) => {
14966
+ if (!layer.id.startsWith("event-highlight")) {
14967
+ return layer;
14987
14968
  }
14988
- return layer;
14989
- })
14990
- );
14969
+ if (isAlreadyIsolated) {
14970
+ return { ...layer, enabled: true };
14971
+ } else {
14972
+ return { ...layer, enabled: layer.id === id2 };
14973
+ }
14974
+ });
14975
+ });
14991
14976
  }, []);
14992
14977
  const clearAgentLayers = useCallback(() => {
14993
14978
  setHighlightLayers(
@@ -14996,24 +14981,52 @@ const CodeCityPanelContent = ({
14996
14981
  agentLayersRegistered.current = false;
14997
14982
  }, []);
14998
14983
  const toggleQualityMetric = useCallback((id2) => {
14999
- setHighlightLayers(
15000
- (prev) => prev.map((layer) => {
15001
- if (layer.id === id2) {
15002
- return { ...layer, enabled: !layer.enabled };
14984
+ setHighlightLayers((prev) => {
14985
+ const qualityPrefixes = ["coverage-", "eslint-", "typescript-", "prettier-", "knip-", "alexandria-"];
14986
+ const isQualityLayer = (layerId) => qualityPrefixes.some((p) => layerId.startsWith(p));
14987
+ const qualityLayers2 = prev.filter((l) => isQualityLayer(l.id));
14988
+ const clickedLayer = qualityLayers2.find((l) => l.id === id2);
14989
+ const otherQualityLayers = qualityLayers2.filter((l) => l.id !== id2);
14990
+ const isAlreadyIsolated = (clickedLayer == null ? void 0 : clickedLayer.enabled) && otherQualityLayers.every((l) => !l.enabled);
14991
+ return prev.map((layer) => {
14992
+ if (!isQualityLayer(layer.id)) {
14993
+ return layer;
15003
14994
  }
15004
- return layer;
15005
- })
15006
- );
14995
+ if (isAlreadyIsolated) {
14996
+ return { ...layer, enabled: true };
14997
+ } else {
14998
+ return { ...layer, enabled: layer.id === id2 };
14999
+ }
15000
+ });
15001
+ });
15007
15002
  }, []);
15008
15003
  const toggleFileType = useCallback((ext) => {
15009
15004
  setHighlightLayers((prev) => {
15010
- const primaryLayer = prev.find((l) => l.id === `ext-${ext}-primary`);
15011
- const newEnabled = primaryLayer ? !primaryLayer.enabled : true;
15005
+ const isFileTypeLayer = (id2) => id2.startsWith("ext-") && (id2.endsWith("-primary") || id2.endsWith("-secondary"));
15006
+ const fileTypeLayers = prev.filter((l) => isFileTypeLayer(l.id));
15007
+ const extStates = /* @__PURE__ */ new Map();
15008
+ fileTypeLayers.forEach((l) => {
15009
+ const match = l.id.match(/^ext-(\w+)-(primary|secondary)$/);
15010
+ if (match && match[2] === "primary") {
15011
+ extStates.set(match[1], l.enabled);
15012
+ }
15013
+ });
15014
+ const clickedEnabled = extStates.get(ext) ?? false;
15015
+ const otherExts = Array.from(extStates.keys()).filter((e) => e !== ext);
15016
+ const othersAllDisabled = otherExts.every((e) => !extStates.get(e));
15017
+ const isAlreadyIsolated = clickedEnabled && othersAllDisabled;
15012
15018
  return prev.map((layer) => {
15013
- if (layer.id === `ext-${ext}-primary` || layer.id === `ext-${ext}-secondary`) {
15014
- return { ...layer, enabled: newEnabled };
15019
+ if (!isFileTypeLayer(layer.id)) {
15020
+ return layer;
15021
+ }
15022
+ const match = layer.id.match(/^ext-(\w+)-(primary|secondary)$/);
15023
+ if (!match) return layer;
15024
+ const layerExt = match[1];
15025
+ if (isAlreadyIsolated) {
15026
+ return { ...layer, enabled: true };
15027
+ } else {
15028
+ return { ...layer, enabled: layerExt === ext };
15015
15029
  }
15016
- return layer;
15017
15030
  });
15018
15031
  });
15019
15032
  }, []);
@@ -15185,117 +15198,18 @@ const CodeCityPanelContent = ({
15185
15198
  }
15186
15199
  )
15187
15200
  ] }) }),
15188
- availableColorModes.length > 1 && /* @__PURE__ */ jsxs(
15189
- "div",
15201
+ colorMode !== "fileTypes" && /* @__PURE__ */ jsx(
15202
+ "span",
15190
15203
  {
15191
- ref: colorModeDropdownRef,
15192
- style: { position: "relative" },
15193
- children: [
15194
- /* @__PURE__ */ jsxs(
15195
- "button",
15196
- {
15197
- onClick: () => setShowColorModeDropdown(!showColorModeDropdown),
15198
- style: {
15199
- display: "flex",
15200
- alignItems: "center",
15201
- gap: "6px",
15202
- padding: "4px 10px",
15203
- fontSize: theme2.fontSizes[0],
15204
- fontFamily: theme2.fonts.body,
15205
- color: theme2.colors.text,
15206
- backgroundColor: theme2.colors.background,
15207
- border: `1px solid ${theme2.colors.border}`,
15208
- borderRadius: "4px",
15209
- cursor: "pointer",
15210
- transition: "all 0.15s ease",
15211
- minWidth: "120px"
15212
- },
15213
- title: "Change color mode",
15214
- children: [
15215
- /* @__PURE__ */ jsx("span", { style: { flex: 1, textAlign: "left" }, children: currentColorModeConfig.name }),
15216
- /* @__PURE__ */ jsx(
15217
- ChevronDown,
15218
- {
15219
- size: 14,
15220
- style: {
15221
- transform: showColorModeDropdown ? "rotate(180deg)" : "rotate(0deg)",
15222
- transition: "transform 0.15s ease"
15223
- }
15224
- }
15225
- )
15226
- ]
15227
- }
15228
- ),
15229
- showColorModeDropdown && /* @__PURE__ */ jsx(
15230
- "div",
15231
- {
15232
- style: {
15233
- position: "absolute",
15234
- top: "100%",
15235
- left: 0,
15236
- right: 0,
15237
- marginTop: "4px",
15238
- backgroundColor: theme2.colors.background,
15239
- border: `1px solid ${theme2.colors.border}`,
15240
- borderRadius: "4px",
15241
- boxShadow: "0 4px 12px rgba(0, 0, 0, 0.15)",
15242
- zIndex: 100,
15243
- overflow: "hidden",
15244
- minWidth: "160px"
15245
- },
15246
- children: availableColorModes.map((mode) => /* @__PURE__ */ jsxs(
15247
- "button",
15248
- {
15249
- onClick: () => {
15250
- setColorMode(mode.id);
15251
- setShowColorModeDropdown(false);
15252
- },
15253
- style: {
15254
- display: "flex",
15255
- flexDirection: "column",
15256
- alignItems: "flex-start",
15257
- width: "100%",
15258
- padding: "8px 12px",
15259
- fontSize: theme2.fontSizes[0],
15260
- fontFamily: theme2.fonts.body,
15261
- color: mode.id === colorMode ? theme2.colors.primary : theme2.colors.text,
15262
- backgroundColor: mode.id === colorMode ? theme2.colors.primary + "15" : "transparent",
15263
- border: "none",
15264
- cursor: "pointer",
15265
- transition: "background-color 0.15s ease",
15266
- textAlign: "left"
15267
- },
15268
- onMouseEnter: (e) => {
15269
- if (mode.id !== colorMode) {
15270
- e.currentTarget.style.backgroundColor = theme2.colors.backgroundLight;
15271
- }
15272
- },
15273
- onMouseLeave: (e) => {
15274
- if (mode.id !== colorMode) {
15275
- e.currentTarget.style.backgroundColor = "transparent";
15276
- }
15277
- },
15278
- children: [
15279
- /* @__PURE__ */ jsx("span", { style: { fontWeight: mode.id === colorMode ? 600 : 400 }, children: mode.name }),
15280
- /* @__PURE__ */ jsx(
15281
- "span",
15282
- {
15283
- style: {
15284
- fontSize: theme2.fontSizes[0],
15285
- fontFamily: theme2.fonts.body,
15286
- color: theme2.colors.textSecondary,
15287
- marginTop: "2px"
15288
- },
15289
- children: mode.description
15290
- }
15291
- )
15292
- ]
15293
- },
15294
- mode.id
15295
- ))
15296
- }
15297
- )
15298
- ]
15204
+ style: {
15205
+ padding: "4px 10px",
15206
+ fontSize: theme2.fontSizes[0],
15207
+ fontFamily: theme2.fonts.body,
15208
+ color: theme2.colors.primary,
15209
+ backgroundColor: theme2.colors.primary + "15",
15210
+ borderRadius: "4px"
15211
+ },
15212
+ children: currentColorModeConfig.name
15299
15213
  }
15300
15214
  ),
15301
15215
  (legendFileTypes.length > 0 || legendGitStatus.length > 0 || legendQualityMetrics.length > 0) && /* @__PURE__ */ jsx(