@industry-theme/file-city-panel 0.2.45 → 0.2.47

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
@@ -32,7 +32,7 @@ export { COLOR_MODES, DEFAULT_COLOR_MODES, QUALITY_COLOR_MODES, } from './panels
32
32
  */
33
33
  export { ProjectInfoHeader } from './panels/components/ProjectInfoHeader';
34
34
  export type { ProjectInfo } from './panels/components/ProjectInfoHeader';
35
- export { FeedProjectHeader } from './panels/components/FeedProjectHeader';
35
+ export { FeedProjectHeader, FeedProjectHeaderSkeleton } from './panels/components/FeedProjectHeader';
36
36
  export type { GitHubRepoInfo, RootPackageInfo } from './panels/components/FeedProjectHeader';
37
37
  export { FeedCodeCityPanel } from './panels/FeedCodeCityPanel';
38
38
  export type { FeedProjectSliceData } from './panels/FeedCodeCityPanel';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AAGlE;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,eAAe,EAyEnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,qBAGzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAG3B,CAAC;AAEF;;;GAGG;AACH,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,YAAY,EACV,2BAA2B,EAC3B,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,cAAc,EACd,cAAc,GACf,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AAEtC;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,YAAY,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AAGlE;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,eAAe,EAyEnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,qBAGzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAG3B,CAAC;AAEF;;;GAGG;AACH,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,YAAY,EACV,2BAA2B,EAC3B,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,cAAc,EACd,cAAc,GACf,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AAEtC;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,YAAY,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AACrG,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FeedCodeCityPanel.d.ts","sourceRoot":"","sources":["../../src/panels/FeedCodeCityPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAGjF,OAAO,EAAqB,cAAc,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAepG,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,UAAU,CAAC;AAsBpE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,IAAI,EAAE,cAAc,CAAC;IACrB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAsWD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAE3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EA8B5C,CAAC"}
1
+ {"version":3,"file":"FeedCodeCityPanel.d.ts","sourceRoot":"","sources":["../../src/panels/FeedCodeCityPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAGjF,OAAO,EAAgD,cAAc,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAe/H,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,UAAU,CAAC;AAsBpE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,IAAI,EAAE,cAAc,CAAC;IACrB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AA2XD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAE3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EA8B5C,CAAC"}
@@ -70,10 +70,16 @@ interface FeedProjectHeaderProps {
70
70
  compact?: boolean;
71
71
  }
72
72
  /**
73
- * FeedProjectHeader - Displays GitHub repo info and package details for feed view
73
+ * FeedProjectHeaderSkeleton - Shimmer loading state for FeedProjectHeader
74
+ */
75
+ export declare const FeedProjectHeaderSkeleton: React.FC<{
76
+ compact?: boolean;
77
+ }>;
78
+ /**
79
+ * FeedProjectHeader - Displays GitHub repo info for feed view
74
80
  *
75
- * Shows repository metadata (stars, forks, language) and root package info
76
- * (dependencies, license, monorepo status). Designed for feed entry project preview.
81
+ * Shows repository metadata (stars, forks, description, license).
82
+ * Designed for feed entry project preview.
77
83
  */
78
84
  export declare const FeedProjectHeader: React.FC<FeedProjectHeaderProps>;
79
85
  export default FeedProjectHeader;
@@ -1 +1 @@
1
- {"version":3,"file":"FeedProjectHeader.d.ts","sourceRoot":"","sources":["../../../src/panels/components/FeedProjectHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B,2BAA2B;AAC3B,KAAK,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAE1G;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iCAAiC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qCAAqC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,sBAAsB;IAC9B,oCAAoC;IACpC,IAAI,EAAE,cAAc,CAAC;IACrB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAyDD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA6V9D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"FeedProjectHeader.d.ts","sourceRoot":"","sources":["../../../src/panels/components/FeedProjectHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,2BAA2B;AAC3B,KAAK,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAE1G;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iCAAiC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qCAAqC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,sBAAsB;IAC9B,oCAAoC;IACpC,IAAI,EAAE,cAAc,CAAC;IACrB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAqDD;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAkDrE,CAAC;AAaF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA4P9D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -43,4 +43,12 @@ export declare const Interactive: Story;
43
43
  * Side by side comparison of compact vs full
44
44
  */
45
45
  export declare const CompactComparison: Story;
46
+ /**
47
+ * Loading skeleton state
48
+ */
49
+ export declare const Skeleton: Story;
50
+ /**
51
+ * Compact skeleton state
52
+ */
53
+ export declare const SkeletonCompact: Story;
46
54
  //# sourceMappingURL=FeedProjectHeader.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeedProjectHeader.stories.d.ts","sourceRoot":"","sources":["../../../src/panels/components/FeedProjectHeader.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAmC,MAAM,qBAAqB,CAAC;AAEzF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,iBAAiB,CAuBxC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC;AA2EhD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAM/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAKzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAK1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAYzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KA2B3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAyBzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,KA0B/B,CAAC"}
1
+ {"version":3,"file":"FeedProjectHeader.stories.d.ts","sourceRoot":"","sources":["../../../src/panels/components/FeedProjectHeader.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAA8D,MAAM,qBAAqB,CAAC;AAEpH,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,iBAAiB,CAuBxC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC;AA2EhD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAM/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAKzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,KAK1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAYzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KA2B3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAyBzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,KA0B/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,KAItB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAI7B,CAAC"}
@@ -26287,27 +26287,84 @@ const CodeCityPanelContent = ({
26287
26287
  const CodeCityPanel = (props) => {
26288
26288
  return /* @__PURE__ */ jsx(CodeCityPanelContent, { ...props });
26289
26289
  };
26290
- const NpmIcon$1 = ({ size: size2 }) => /* @__PURE__ */ jsx("svg", { width: size2, height: size2, viewBox: "0 0 24 24", fill: "#CB3837", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx("path", { d: "M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z" }) });
26291
- const YarnIcon$1 = ({ size: size2 }) => /* @__PURE__ */ jsx("svg", { width: size2, height: size2, viewBox: "0 0 24 24", fill: "#2C8EBB", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx("path", { d: "M12 0C5.375 0 0 5.375 0 12s5.375 12 12 12 12-5.375 12-12S18.625 0 12 0zm.768 4.105c.183 0 .363.053.525.157.125.083.287.185.755 1.154.31-.088.468-.042.551-.019.204.056.366.19.463.375.477.917.542 2.553.334 3.605-.241 1.232-.755 2.029-1.131 2.576.324.329.778.899 1.117 1.825.278.774.31 1.478.273 2.015a5.51 5.51 0 0 0 .602-.329c.593-.366 1.487-.917 2.553-.931.714-.009 1.269.445 1.353 1.103a1.23 1.23 0 0 1-.945 1.362c-.649.158-.95.278-1.821.843-1.232.797-2.539 1.242-3.012 1.39a1.686 1.686 0 0 1-.704.343c-.737.181-3.266.315-3.466.315h-.046c-.783 0-1.214-.241-1.45-.491-.658.329-1.51.19-2.122-.134a1.078 1.078 0 0 1-.58-1.153 1.243 1.243 0 0 1-.153-.195c-.162-.25-.528-.936-.454-1.946.056-.723.556-1.367.88-1.71a5.522 5.522 0 0 1 .408-2.256c.306-.727.885-1.348 1.32-1.737-.32-.537-.644-1.367-.329-2.21.227-.602.412-.936.82-1.08h-.005c.199-.074.389-.153.486-.259a3.418 3.418 0 0 1 2.298-1.103c.037-.093.079-.185.125-.283.31-.658.639-1.029 1.024-1.168a.94.94 0 0 1 .328-.06z" }) });
26292
- const PnpmIcon$1 = ({ size: size2 }) => /* @__PURE__ */ jsx("svg", { width: size2, height: size2, viewBox: "0 0 24 24", fill: "#F69220", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx("path", { d: "M0 0v7.5h7.5V0zm8.25 0v7.5h7.498V0zm8.25 0v7.5H24V0zM8.25 8.25v7.5h7.498v-7.5zm8.25 0v7.5H24v-7.5zM0 16.5V24h7.5v-7.5zm8.25 0V24h7.498v-7.5zm8.25 0V24H24v-7.5z" }) });
26293
- const BunIcon$1 = ({ size: size2 }) => /* @__PURE__ */ jsx("svg", { width: size2, height: size2, viewBox: "0 0 24 24", fill: "#FBF0DF", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx("path", { d: "M12 22.596c6.628 0 12-4.338 12-9.688 0-3.318-2.057-6.248-5.219-7.986-1.286-.715-2.297-1.357-3.139-1.89C14.058 2.025 13.08 1.404 12 1.404c-1.097 0-2.334.785-3.966 1.821a49.92 49.92 0 0 1-2.816 1.697C2.057 6.66 0 9.59 0 12.908c0 5.35 5.372 9.687 12 9.687v.001Z" }) });
26294
- const PackageManagerIcon$1 = ({
26295
- packageManager,
26296
- size: size2 = 14,
26297
- color: color2
26298
- }) => {
26299
- switch (packageManager) {
26300
- case "npm":
26301
- return /* @__PURE__ */ jsx(NpmIcon$1, { size: size2 });
26302
- case "yarn":
26303
- return /* @__PURE__ */ jsx(YarnIcon$1, { size: size2 });
26304
- case "pnpm":
26305
- return /* @__PURE__ */ jsx(PnpmIcon$1, { size: size2 });
26306
- case "bun":
26307
- return /* @__PURE__ */ jsx(BunIcon$1, { size: size2 });
26308
- default:
26309
- return /* @__PURE__ */ jsx(Package, { size: size2, color: color2 });
26290
+ const shimmerKeyframes = `
26291
+ @keyframes feed-header-shimmer {
26292
+ 0% { background-position: -200% 0; }
26293
+ 100% { background-position: 200% 0; }
26294
+ }
26295
+ `;
26296
+ let shimmerStyleInjected = false;
26297
+ function injectShimmerStyles() {
26298
+ if (shimmerStyleInjected || typeof document === "undefined") return;
26299
+ const style2 = document.createElement("style");
26300
+ style2.textContent = shimmerKeyframes;
26301
+ document.head.appendChild(style2);
26302
+ shimmerStyleInjected = true;
26303
+ }
26304
+ const ShimmerBox = ({ width, height, borderRadius = 4, backgroundColor }) => /* @__PURE__ */ jsx(
26305
+ "div",
26306
+ {
26307
+ style: {
26308
+ width,
26309
+ height,
26310
+ borderRadius,
26311
+ background: `linear-gradient(90deg, ${backgroundColor} 25%, ${adjustBrightness(backgroundColor, 15)} 50%, ${backgroundColor} 75%)`,
26312
+ backgroundSize: "200% 100%",
26313
+ animation: "feed-header-shimmer 1.5s ease-in-out infinite"
26314
+ }
26310
26315
  }
26316
+ );
26317
+ function adjustBrightness(color2, percent) {
26318
+ if (color2.startsWith("#")) {
26319
+ const num = parseInt(color2.slice(1), 16);
26320
+ const r = Math.min(255, (num >> 16 & 255) + percent);
26321
+ const g = Math.min(255, (num >> 8 & 255) + percent);
26322
+ const b = Math.min(255, (num & 255) + percent);
26323
+ return `#${(r << 16 | g << 8 | b).toString(16).padStart(6, "0")}`;
26324
+ }
26325
+ return color2;
26326
+ }
26327
+ const FeedProjectHeaderSkeleton = ({ compact = false }) => {
26328
+ const { theme: theme2 } = useTheme();
26329
+ React.useEffect(() => {
26330
+ injectShimmerStyles();
26331
+ }, []);
26332
+ const shimmerBg = theme2.colors.backgroundLight || "#2a2a2a";
26333
+ return /* @__PURE__ */ jsxs(
26334
+ "div",
26335
+ {
26336
+ style: {
26337
+ display: "flex",
26338
+ flexDirection: "column",
26339
+ gap: compact ? 8 : 12,
26340
+ padding: compact ? "10px 12px" : "14px 16px",
26341
+ backgroundColor: theme2.colors.background,
26342
+ borderBottom: `1px solid ${theme2.colors.border}`
26343
+ },
26344
+ children: [
26345
+ /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between", gap: 12 }, children: [
26346
+ /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: 10 }, children: [
26347
+ /* @__PURE__ */ jsx(ShimmerBox, { width: compact ? 24 : 28, height: compact ? 24 : 28, borderRadius: "50%", backgroundColor: shimmerBg }),
26348
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 120, height: compact ? 16 : 18, backgroundColor: shimmerBg })
26349
+ ] }),
26350
+ /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: 12 }, children: [
26351
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 50, height: 14, backgroundColor: shimmerBg }),
26352
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 70, height: 28, borderRadius: 4, backgroundColor: shimmerBg })
26353
+ ] })
26354
+ ] }),
26355
+ !compact && /* @__PURE__ */ jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 4 }, children: [
26356
+ /* @__PURE__ */ jsx(ShimmerBox, { width: "100%", height: 12, backgroundColor: shimmerBg }),
26357
+ /* @__PURE__ */ jsx(ShimmerBox, { width: "75%", height: 12, backgroundColor: shimmerBg })
26358
+ ] }),
26359
+ /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: compact ? 12 : 16 }, children: [
26360
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 45, height: 14, backgroundColor: shimmerBg }),
26361
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 45, height: 14, backgroundColor: shimmerBg }),
26362
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 45, height: 14, backgroundColor: shimmerBg }),
26363
+ /* @__PURE__ */ jsx(ShimmerBox, { width: 55, height: 14, backgroundColor: shimmerBg })
26364
+ ] })
26365
+ ]
26366
+ }
26367
+ );
26311
26368
  };
26312
26369
  function formatCount(count2) {
26313
26370
  if (count2 >= 1e6) {
@@ -26320,7 +26377,8 @@ function formatCount(count2) {
26320
26377
  }
26321
26378
  const FeedProjectHeader = ({
26322
26379
  repo,
26323
- rootPackage,
26380
+ // rootPackage kept for API compatibility but not rendered
26381
+ rootPackage: _rootPackage,
26324
26382
  onOpen,
26325
26383
  compact = false
26326
26384
  }) => {
@@ -26328,7 +26386,6 @@ const FeedProjectHeader = ({
26328
26386
  const fontSizeSmall = theme2.fontSizes[0];
26329
26387
  const fontSizeMedium = theme2.fontSizes[1];
26330
26388
  const fontSizeLarge = theme2.fontSizes[2] || theme2.fontSizes[1];
26331
- const totalDeps = rootPackage ? (rootPackage.dependencyCount || 0) + (rootPackage.devDependencyCount || 0) : 0;
26332
26389
  return /* @__PURE__ */ jsxs(
26333
26390
  "div",
26334
26391
  {
@@ -26455,9 +26512,9 @@ const FeedProjectHeader = ({
26455
26512
  {
26456
26513
  style: {
26457
26514
  margin: 0,
26458
- fontSize: fontSizeSmall,
26515
+ fontSize: fontSizeMedium,
26459
26516
  color: theme2.colors.textSecondary,
26460
- lineHeight: 1.4,
26517
+ lineHeight: 1.5,
26461
26518
  display: "-webkit-box",
26462
26519
  WebkitLineClamp: 2,
26463
26520
  WebkitBoxOrient: "vertical",
@@ -26568,108 +26625,6 @@ const FeedProjectHeader = ({
26568
26625
  )
26569
26626
  ]
26570
26627
  }
26571
- ),
26572
- rootPackage && /* @__PURE__ */ jsxs(
26573
- "div",
26574
- {
26575
- style: {
26576
- display: "flex",
26577
- alignItems: "center",
26578
- gap: compact ? 12 : 16,
26579
- flexWrap: "wrap",
26580
- paddingTop: compact ? 4 : 8,
26581
- borderTop: `1px solid ${theme2.colors.border}`
26582
- },
26583
- children: [
26584
- rootPackage.packageManager && /* @__PURE__ */ jsxs(
26585
- "div",
26586
- {
26587
- style: {
26588
- display: "flex",
26589
- alignItems: "center",
26590
- gap: 6
26591
- },
26592
- children: [
26593
- /* @__PURE__ */ jsx(
26594
- PackageManagerIcon$1,
26595
- {
26596
- packageManager: rootPackage.packageManager,
26597
- size: 14,
26598
- color: theme2.colors.textSecondary
26599
- }
26600
- ),
26601
- rootPackage.name && /* @__PURE__ */ jsx(
26602
- "span",
26603
- {
26604
- style: {
26605
- fontSize: fontSizeSmall,
26606
- color: theme2.colors.text,
26607
- fontWeight: 500
26608
- },
26609
- children: rootPackage.name
26610
- }
26611
- ),
26612
- rootPackage.version && /* @__PURE__ */ jsxs(
26613
- "span",
26614
- {
26615
- style: {
26616
- fontSize: fontSizeSmall,
26617
- color: theme2.colors.textSecondary,
26618
- backgroundColor: theme2.colors.backgroundLight,
26619
- padding: "1px 5px",
26620
- borderRadius: "3px"
26621
- },
26622
- children: [
26623
- "v",
26624
- rootPackage.version
26625
- ]
26626
- }
26627
- )
26628
- ]
26629
- }
26630
- ),
26631
- rootPackage.isMonorepo && /* @__PURE__ */ jsxs(
26632
- "span",
26633
- {
26634
- style: {
26635
- display: "flex",
26636
- alignItems: "center",
26637
- gap: 4,
26638
- fontSize: fontSizeSmall,
26639
- color: "#8b5cf6",
26640
- backgroundColor: "rgba(139, 92, 246, 0.15)",
26641
- padding: "2px 6px",
26642
- borderRadius: "4px"
26643
- },
26644
- children: [
26645
- /* @__PURE__ */ jsx(GitBranch, { size: 12 }),
26646
- rootPackage.packageCount ? `${rootPackage.packageCount} packages` : "monorepo"
26647
- ]
26648
- }
26649
- ),
26650
- totalDeps > 0 && /* @__PURE__ */ jsxs(
26651
- "div",
26652
- {
26653
- style: {
26654
- display: "flex",
26655
- alignItems: "center",
26656
- gap: 4,
26657
- fontSize: fontSizeSmall,
26658
- color: theme2.colors.textSecondary
26659
- },
26660
- title: `${rootPackage.dependencyCount || 0} prod, ${rootPackage.devDependencyCount || 0} dev dependencies`,
26661
- children: [
26662
- /* @__PURE__ */ jsx(Box, { size: 12 }),
26663
- /* @__PURE__ */ jsxs("span", { children: [
26664
- rootPackage.dependencyCount || 0,
26665
- " deps",
26666
- rootPackage.devDependencyCount ? ` + ${rootPackage.devDependencyCount} dev` : ""
26667
- ] })
26668
- ]
26669
- }
26670
- )
26671
- ]
26672
- }
26673
26628
  )
26674
26629
  ]
26675
26630
  }
@@ -26680,7 +26635,7 @@ const FeedCodeCityPanelContent = ({
26680
26635
  actions: actions2,
26681
26636
  events
26682
26637
  }) => {
26683
- var _a, _b, _c, _d, _e, _f, _g;
26638
+ var _a, _b, _c, _d, _e, _f;
26684
26639
  const { theme: theme2 } = useTheme();
26685
26640
  const [cityData, setCityData] = useState(null);
26686
26641
  const [hoverInfo, setHoverInfo] = useState(null);
@@ -26688,7 +26643,20 @@ const FeedCodeCityPanelContent = ({
26688
26643
  const [loading, setLoading] = useState(false);
26689
26644
  const [containerSize, setContainerSize] = useState(null);
26690
26645
  const contentContainerRef = useRef(null);
26691
- const feedProjectSlice = context.getSlice("feedProject");
26646
+ const [feedProjectData, setFeedProjectData] = useState(null);
26647
+ const [feedProjectLoading, setFeedProjectLoading] = useState(false);
26648
+ useEffect(() => {
26649
+ const syncSlice = () => {
26650
+ const slice = context.getSlice("feedProject");
26651
+ if (slice) {
26652
+ setFeedProjectData(slice.data ?? null);
26653
+ setFeedProjectLoading(slice.loading);
26654
+ }
26655
+ };
26656
+ syncSlice();
26657
+ const interval2 = setInterval(syncSlice, 100);
26658
+ return () => clearInterval(interval2);
26659
+ }, [context]);
26692
26660
  const LEGEND_MIN_SIZE = 200;
26693
26661
  const HOVER_BAR_HEIGHT = 48;
26694
26662
  useEffect(() => {
@@ -26792,19 +26760,18 @@ const FeedCodeCityPanelContent = ({
26792
26760
  [actions2]
26793
26761
  );
26794
26762
  const handleOpen = useCallback(() => {
26795
- var _a2;
26796
- if (((_a2 = feedProjectSlice == null ? void 0 : feedProjectSlice.data) == null ? void 0 : _a2.repo) && events) {
26763
+ if ((feedProjectData == null ? void 0 : feedProjectData.repo) && events) {
26797
26764
  events.emit({
26798
26765
  type: "project:open",
26799
26766
  source: "feed-code-city-panel",
26800
26767
  timestamp: Date.now(),
26801
26768
  payload: {
26802
- repo: feedProjectSlice.data.repo,
26803
- rootPackage: feedProjectSlice.data.rootPackage
26769
+ repo: feedProjectData.repo,
26770
+ rootPackage: feedProjectData.rootPackage
26804
26771
  }
26805
26772
  });
26806
26773
  }
26807
- }, [events, feedProjectSlice == null ? void 0 : feedProjectSlice.data]);
26774
+ }, [events, feedProjectData]);
26808
26775
  return /* @__PURE__ */ jsxs(
26809
26776
  "div",
26810
26777
  {
@@ -26816,14 +26783,14 @@ const FeedCodeCityPanelContent = ({
26816
26783
  backgroundColor: theme2.colors.background
26817
26784
  },
26818
26785
  children: [
26819
- ((_a = feedProjectSlice == null ? void 0 : feedProjectSlice.data) == null ? void 0 : _a.repo) && /* @__PURE__ */ jsx(
26786
+ feedProjectLoading ? /* @__PURE__ */ jsx(FeedProjectHeaderSkeleton, {}) : (feedProjectData == null ? void 0 : feedProjectData.repo) ? /* @__PURE__ */ jsx(
26820
26787
  FeedProjectHeader,
26821
26788
  {
26822
- repo: feedProjectSlice.data.repo,
26823
- rootPackage: feedProjectSlice.data.rootPackage,
26789
+ repo: feedProjectData.repo,
26790
+ rootPackage: feedProjectData.rootPackage,
26824
26791
  onOpen: handleOpen
26825
26792
  }
26826
- ),
26793
+ ) : null,
26827
26794
  /* @__PURE__ */ jsxs(
26828
26795
  "div",
26829
26796
  {
@@ -26936,7 +26903,7 @@ const FeedCodeCityPanelContent = ({
26936
26903
  textOverflow: "ellipsis",
26937
26904
  whiteSpace: "nowrap"
26938
26905
  },
26939
- children: ((_b = hoverInfo.fileTooltip) == null ? void 0 : _b.text) || ((_d = (_c = hoverInfo.hoveredDistrict) == null ? void 0 : _c.path) == null ? void 0 : _d.split("/").pop()) || ((_e = hoverInfo.hoveredDistrict) == null ? void 0 : _e.path) || "Unknown"
26906
+ children: ((_a = hoverInfo.fileTooltip) == null ? void 0 : _a.text) || ((_c = (_b = hoverInfo.hoveredDistrict) == null ? void 0 : _b.path) == null ? void 0 : _c.split("/").pop()) || ((_d = hoverInfo.hoveredDistrict) == null ? void 0 : _d.path) || "Unknown"
26940
26907
  }
26941
26908
  ),
26942
26909
  /* @__PURE__ */ jsx(
@@ -26950,7 +26917,7 @@ const FeedCodeCityPanelContent = ({
26950
26917
  textOverflow: "ellipsis",
26951
26918
  whiteSpace: "nowrap"
26952
26919
  },
26953
- children: ((_f = hoverInfo.hoveredBuilding) == null ? void 0 : _f.path) || ((_g = hoverInfo.hoveredDistrict) == null ? void 0 : _g.path) || "/"
26920
+ children: ((_e = hoverInfo.hoveredBuilding) == null ? void 0 : _e.path) || ((_f = hoverInfo.hoveredDistrict) == null ? void 0 : _f.path) || "/"
26954
26921
  }
26955
26922
  )
26956
26923
  ]
@@ -27404,6 +27371,7 @@ export {
27404
27371
  DEFAULT_COLOR_MODES,
27405
27372
  FeedCodeCityPanel,
27406
27373
  FeedProjectHeader,
27374
+ FeedProjectHeaderSkeleton,
27407
27375
  ProjectInfoHeader,
27408
27376
  QUALITY_COLOR_MODES,
27409
27377
  codeCityPanelTools,